ERC-20: O que É e Como Funciona | Ethereum IA

Entenda o padrão ERC-20 no Ethereum, como funcionam os tokens fungíveis, suas funções técnicas e por que ele é tão relevante.

Por Equipe Ethereum IA 7 min de leitura Atualizado em 23/03/2026

O que é ERC-20?

ERC-20 é o padrão técnico mais utilizado para a criação de tokens fungíveis na blockchain do Ethereum. A sigla “ERC” significa Ethereum Request for Comments, um processo formal pelo qual a comunidade Ethereum propõe melhorias e padrões técnicos. O número “20” refere-se ao identificador da proposta original, submetida por Fabian Vogelsteller e Vitalik Buterin em novembro de 2015. Esse padrão define um conjunto de regras e interfaces que todos os tokens compatíveis devem implementar, garantindo interoperabilidade entre carteiras, exchanges, contratos inteligentes e aplicações descentralizadas.

A palavra “fungível” é essencial para entender o ERC-20. Um token fungível é aquele em que cada unidade é idêntica e intercambiável com qualquer outra unidade do mesmo tipo — da mesma forma que uma nota de R$ 50 tem o mesmo valor que qualquer outra nota de R$ 50. Isso diferencia o ERC-20 do padrão ERC-721, usado para tokens não fungíveis (NFTs), onde cada unidade é única.

Como funciona o padrão ERC-20

O ERC-20 específica uma interface de contrato inteligente em Solidity que define seis funções obrigatórias e dois eventos que todo token deve implementar:

Funções obrigatórias:

  • totalSupply(): retorna a quantidade total de tokens existentes. Esse valor pode ser fixo (definido na criação) ou variável (se o contrato permitir emissão ou queima de tokens)
  • balanceOf(address): retorna o saldo de tokens de um endereço específico. É a função consultada quando você abre sua carteira e vê a quantidade de determinado token
  • transfer(address, uint256): permite que o detentor dos tokens envie uma quantidade específica para outro endereço. É a função mais básica de movimentação de valor
  • transferFrom(address, address, uint256): permite que um endereço autorizado transfira tokens em nome do proprietário. Essa função é fundamental para o funcionamento de DEXs e protocolos DeFi
  • approve(address, uint256): autoriza um endereço (geralmente um contrato inteligente) a gastar até uma quantidade definida de tokens em nome do proprietário
  • allowance(address, address): consulta quanto um endereço autorizado ainda pode gastar em nome do proprietário

Eventos obrigatórios:

  • Transfer: emitido sempre que tokens são transferidos, incluindo criação (mint) e destruição (burn)
  • Approval: emitido quando um endereço recebe autorização para gastar tokens

Essa padronização aparentemente simples foi revolucionária. Antes do ERC-20, cada projeto criava sua própria implementação de token com funções, nomes e comportamentos diferentes, tornando impossível a interação automatizada entre diferentes tokens e aplicações.

Por que o ERC-20 é tão importante

A importância do ERC-20 vai muito além de uma especificação técnica. Ele criou as bases para todo o ecossistema de finanças descentralizadas (DeFi) e da economia de tokens no Ethereum. Com o padrão, qualquer token ERC-20 funciona automaticamente com:

  • Carteiras: MetaMask, Trust Wallet, Rabby, Rainbow e qualquer carteira compatível com Ethereum podem exibir e transacionar tokens ERC-20 sem configuração especial
  • Exchanges descentralizadas (DEXs): Uniswap, Curve, SushiSwap e outras DEXs podem listar e negociar qualquer token ERC-20 automaticamente, sem necessidade de integração individual
  • Protocolos DeFi: Aave, Compound, MakerDAO e outros protocolos de empréstimo e rendimento operam com qualquer token ERC-20
  • Ferramentas de análise: Etherscan, Dune Analytics e outras plataformas podem rastrear e exibir dados de qualquer token ERC-20
  • Exchanges centralizadas: a padronização facilita a listagem de novos tokens em exchanges como Binance e Coinbase

Essa composabilidade — a capacidade de diferentes protocolos se integrarem como peças de Lego — é frequentemente citada como uma das maiores forças do ecossistema Ethereum, e o ERC-20 é o alicerce dessa composabilidade.

Exemplos de tokens ERC-20

O padrão ERC-20 abrange uma enorme variedade de casos de uso:

Stablecoins: USDT (Tether), USDC (Circle) e DAI (MakerDAO) são tokens ERC-20 pareados ao dólar americano. São amplamente utilizados por brasileiros como forma de proteção cambial e para transações internacionais. Juntas, essas stablecoins representam centenas de bilhões de dólares em valor de mercado.

Tokens de governança: UNI (Uniswap), AAVE (Aave), COMP (Compound) e MKR (MakerDAO) conferem poder de voto nas decisões dos respectivos protocolos.

Tokens de utilidade: LINK (Chainlink) é usado para pagar serviços de oráculos descentralizados. GRT (The Graph) é utilizado para consultas de dados indexados em blockchains.

Wrapped tokens: WETH (Wrapped Ether) é uma versão ERC-20 do próprio ETH, necessária porque o Ether nativo foi criado antes do padrão ERC-20 e não é nativamente compatível com ele. WBTC (Wrapped Bitcoin) representa Bitcoin na rede Ethereum.

Memecoins: SHIB (Shiba Inu) e PEPE são memecoins que, apesar de seu caráter especulativo, são tecnicamente tokens ERC-20 totalmente funcionais.

Contexto histórico

A proposta do ERC-20 foi formalizada em novembro de 2015, mas só se tornou um padrão amplamente adotado em 2017, durante o boom das ICOs (Initial Coin Offerings). Naquele período, centenas de projetos lançaram tokens ERC-20 para captar investimentos, levantando bilhões de dólares. A facilidade de criar um token ERC-20 foi um dos fatores que alimentou essa onda — e também seus abusos, com projetos fraudulentos que captaram fundos e desapareceram.

O padrão foi oficialmente finalizado como EIP-20 (Ethereum Improvement Proposal 20) e permanece essencialmente inalterado desde então, uma prova de sua robustez de design. Variações posteriores, como o ERC-777, tentaram corrigir limitações do ERC-20 (como o problema do approve/transferFrom, que pode levar à perda de tokens se enviados diretamente a contratos não preparados), mas nenhuma alcançou a mesma adoção.

Criando um token ERC-20

Tecnicamente, qualquer desenvolvedor com conhecimento básico de Solidity pode criar um token ERC-20 com poucas dezenas de linhas de código. Bibliotecas como a OpenZeppelin fornecem implementações auditadas e prontas para uso, reduzindo o código necessário a poucas linhas de configuração.

Essa acessibilidade é uma faca de dois gumes. Por um lado, democratiza a criação de ativos digitais, permitindo que qualquer projeto lance seu token. Por outro, facilita a criação de tokens fraudulentos, rug pulls (quando desenvolvedores abandonam o projeto após captar recursos) e esquemas de pump-and-dump.

Para brasileiros interessados em desenvolvimento, a documentação da OpenZeppelin e os tutoriais da Ethereum Foundation são pontos de partida recomendados, ambos gratuitos e disponíveis em inglês.

Limitações conhecidas do ERC-20

Apesar de sua importância histórica, o ERC-20 possui limitações técnicas conhecidas:

  • Problema do double-approve: ao alterar o valor de uma aprovação existente, existe uma condição de corrida que pode permitir ao spender gastar mais do que o pretendido. A solução recomendada é zerar a aprovação antes de definir um novo valor
  • Tokens perdidos em contratos: se um usuário enviar tokens ERC-20 diretamente para um contrato que não foi programado para lidar com eles, os tokens ficam permanentemente travados. Estima-se que milhões de dólares em tokens foram perdidos dessa forma
  • Ausência de callback: diferente do ERC-721, o ERC-20 não possui mecanismo nativo para notificar contratos sobre recebimento de tokens

O padrão ERC-223 foi proposto para resolver o problema de tokens perdidos em contratos, e o ERC-777 adicionou funcionalidades como callbacks e operadores. No entanto, o ERC-20 continua dominante pela inércia de sua adoção massiva e pela vasta infraestrutura já construída ao seu redor.

Relevância para brasileiros

Para o público brasileiro, tokens ERC-20 são a porta de entrada mais comum no ecossistema Ethereum. Stablecoins como USDT e USDC são amplamente utilizadas para remessas internacionais, proteção contra a desvalorização do real e acesso a serviços financeiros descentralizados.

Ao adquirir tokens ERC-20 em exchanges brasileiras, é importante verificar em qual rede o token está sendo transferido. O mesmo token (por exemplo, USDT) pode existir em múltiplas redes (Ethereum, Arbitrum, Polygon, Tron), e enviar para a rede errada pode resultar em perda dos fundos. Sempre confirme a rede de destino antes de realizar saques.

Termos relacionados

  • ERC-721: padrão para tokens não fungíveis (NFTs)
  • ERC-1155: padrão multi-token que combina características do ERC-20 e ERC-721
  • Solidity: linguagem de programação usada para criar contratos ERC-20
  • Smart contract: contrato inteligente que implementa as funções do padrão
  • DeFi: ecossistema de finanças descentralizadas construído sobre tokens ERC-20
  • DEX: exchanges descentralizadas que negociam tokens ERC-20

Aviso importante: este conteúdo tem caráter exclusivamente educacional e informativo. A existência de um token no padrão ERC-20 não garante sua legitimidade ou valor. Muitos tokens são criados com fins fraudulentos. Não constitui recomendação de investimento. Faça sua própria pesquisa antes de adquirir qualquer token.

Aviso Legal: Este conteúdo é apenas informativo e não constitui aconselhamento financeiro ou recomendação de investimento. Criptomoedas são ativos de alto risco. Faça sua própria pesquisa (DYOR) antes de tomar qualquer decisão de investimento. Rentabilidade passada não garante resultados futuros.

Nossos Sites