O que é ERC-20
Nota: Este documento é uma tradução automática da versão original em inglês.
O que é ERC-20
ERC-20 é o padrão de token mais amplamente adotado na blockchain Ethereum. Ele define uma interface comum -- um conjunto de funções e eventos -- que um contrato inteligente deve implementar para criar um token fungível. "Fungível" significa que cada unidade do token é idêntica e intercambiável, assim como qualquer nota de um dólar é equivalente a qualquer outra nota de um dólar.
ERC significa Ethereum Request for Comments, e 20 é o número da proposta. O padrão foi proposto em 2015 e tornou-se o modelo de fato para a criação de tokens no Ethereum e em cadeias compatíveis com EVM. Quando um projeto diz que seu token é "ERC-20", isso significa que o contrato do token segue essa interface padrão, o que garante compatibilidade com carteiras, exchanges descentralizadas, rastreadores de portfólio e outros contratos inteligentes em todo o ecossistema Ethereum.
Em resumo: o ERC-20 é um padrão técnico que define como os tokens fungíveis funcionam no Ethereum -- garantindo que qualquer token ERC-20 possa ser enviado, recebido e gerenciado por qualquer carteira ou aplicação que suporte o padrão.
Como o ERC-20 funciona
A interface padrão
Em sua essência, o ERC-20 especifica um conjunto de funções que todo contrato de token compatível deve implementar. Essas funções fornecem uma linguagem comum que aplicações externas (carteiras, exchanges, outros contratos) podem usar para interagir com o token sem precisar saber nada sobre a lógica interna do token.
As funções-chave são:
| Função | O que ela faz |
|---|---|
totalSupply() |
Retorna o número total de tokens existentes |
balanceOf(address) |
Retorna quantos tokens um endereço específico possui |
transfer(to, amount) |
Envia tokens do endereço do chamador para outro endereço |
approve(spender, amount) |
Autoriza outro endereço (um contrato inteligente ou usuário) a gastar até uma quantidade especificada dos tokens do chamador |
transferFrom(from, to, amount) |
Permite que um gastador previamente aprovado transfira tokens em nome do proprietário do token |
allowance(owner, spender) |
Retorna quantos tokens o gastador ainda está autorizado a transferir em nome do proprietário |
O padrão também define dois eventos -- Transfer e Approval -- que são emitidos quando tokens são movidos ou quando as permissões de gasto mudam. Esses eventos permitem que sistemas externos (exploradores de blocos, indexadores, ferramentas de análise) rastreiem a atividade do token sem consultar o contrato diretamente.
Por que um padrão importa
Antes de o ERC-20 ser amplamente adotado, cada projeto de token criava sua própria interface personalizada. Isso significava que carteiras, exchanges e outras aplicações tinham que escrever código personalizado para cada novo token. O ERC-20 resolveu esse problema criando uma interface de contrato universal: qualquer aplicação que suporte ERC-20 automaticamente suporta todos os tokens ERC-20, sejam eles criados ontem ou anos atrás.
Essa composabilidade é uma das bases do ecossistema Ethereum. Uma exchange descentralizada não precisa saber o que um token específico representa ou quem o criou -- se o token implementa a interface ERC-20, a exchange pode listá-lo, negociá-lo e liquidar transações com ele.
Implantando um token ERC-20
Criar um token ERC-20 envolve implantar um contrato inteligente na rede Ethereum (ou em uma cadeia compatível com EVM) que implemente as funções necessárias. O implantador especifica o nome do token, o símbolo, a precisão decimal e o suprimento inicial. Uma vez implantado, o contrato é imutável -- a interface central do token não pode ser alterada, embora algumas implementações incluam recursos adicionais como cunhagem, queima ou pausa por meio de mecanismos de governança.
A baixa barreira técnica para implantar um token ERC-20 é tanto uma força quanto um risco. Ela permite inovação e experimentação rápidas, mas também significa que qualquer pessoa pode criar um token com qualquer nome e qualquer propósito declarado. A existência de um token ERC-20 não implica qualidade, legitimidade ou valor.
ERC-20 e cadeias compatíveis com EVM
Embora o ERC-20 tenha sido criado para o Ethereum, o padrão funciona em qualquer blockchain compatível com EVM. Cadeias como BNB Smart Chain, Polygon, Arbitrum One, Base e Avalanche suportam tokens ERC-20 nativamente porque implementam a Ethereum Virtual Machine. Em algumas dessas cadeias, o padrão pode ter um nome formal diferente (BEP-20 na BNB Smart Chain, por exemplo), mas a interface é funcionalmente idêntica.
Isso significa que o token de um projeto pode ser descrito como "ERC-20" mesmo que seja implantado em uma cadeia diferente do Ethereum. O padrão é uma interface técnica, não uma designação específica de cadeia. O que importa é se o contrato do token implementa o conjunto de funções ERC-20, não em qual rede ele é executado.
ERC-20 comparado a outros tipos de token
| Dimensão | ERC-20 | ERC-721 (NFT) | ERC-1155 (Multi-token) | Token nativo (ETH, SOL) |
|---|---|---|---|---|
| Fungibilidade | Fungível (todas as unidades idênticas) | Não fungível (cada token único) | Tanto fungível quanto não fungível | Fungível |
| Implantado como | Contrato inteligente | Contrato inteligente | Contrato inteligente | Embutido no protocolo |
| Interface padrão | transfer, approve, balanceOf |
ownerOf, safeTransferFrom |
Operações em lote | Nenhuma interface de contrato padrão |
| Caso de uso | Moedas, tokens de utilidade, tokens de governança | Arte digital, ativos únicos, identidade | Itens de jogos, coleções mistas | Taxas de gás, staking, moeda base |
Os tokens ERC-20 são distintos dos tokens nativos como o ETH. Enquanto o ETH é construído diretamente no protocolo Ethereum e existe sem um contrato inteligente, os tokens ERC-20 são criados implantando um contrato que segue o padrão. Ambos podem ser mantidos e transferidos, mas têm propriedades técnicas diferentes e papéis diferentes na rede.
Limitações e extensões do ERC-20
Embora o ERC-20 seja o padrão de token mais amplamente utilizado, ele tem limitações conhecidas que levaram a extensões e melhorias:
- Sem notificação ao receber. Quando tokens são enviados a um contrato inteligente, o contrato receptor não tem uma maneira automática de reagir. Isso levou a tokens ficarem permanentemente travados em contratos que não tratam transferências ERC-20. Os padrões ERC-223 e ERC-777 foram propostos para resolver isso, embora o ERC-20 continue dominante.
- Padrão de aprovação em duas etapas. Transferir tokens em nome de outro endereço exige duas transações: primeiro
approve, depoistransferFrom. Isso adiciona atrito e custo de gás. A extensão ERC-2612 (Permit) permite aprovações sem gás por meio de assinaturas off-chain. - Sem metadados integrados. Os tokens ERC-20 têm nome e símbolo, mas nenhuma maneira padronizada de incluir metadados adicionais (descrição, ícone, link de documentação). Extensões e registros off-chain preenchem essa lacuna.
Essas limitações não diminuem a utilidade prática do ERC-20. A simplicidade e o suporte universal do padrão superam suas imperfeições técnicas para a grande maioria dos casos de uso.
Por que o ERC-20 importa para projetos de IA cripto
A maioria dos projetos de IA cripto que emitem um token no Ethereum ou em uma cadeia compatível com EVM usa o padrão ERC-20. O token pode servir como um token de utilidade (pagando por computação, acessando serviços de IA), um token de governança (votando em parâmetros do protocolo) ou um mecanismo de taxa (pagando pelo uso da rede). Independentemente de seu papel pretendido, usar o ERC-20 garante que o token seja compatível com o ecossistema mais amplo: os usuários podem mantê-lo em carteiras padrão, negociá-lo em exchanges descentralizadas e interagir com ele por meio de interfaces bem conhecidas.
Para leitores que avaliam um projeto de IA cripto, saber que um token é ERC-20 informa sobre seu formato técnico -- não sobre sua utilidade, necessidade ou valor. O padrão de token responde "como o token funciona tecnicamente?", mas não "por que o projeto precisa de um token?" ou "o token realmente cumpre um propósito no pipeline de IA?".
Onde aparece nos cartões de projeto do DecAIHub
Em um cartão de projeto do DecAIHub, o ERC-20 aparece no campo Token standard. Quando um cartão mostra Token standard: ERC-20, isso significa que o token do projeto é implementado como um contrato inteligente ERC-20.
O campo de padrão de token é puramente descritivo: informa aos leitores o formato técnico do token. Ele deve ser lido junto com o campo Token model (que descreve o papel do token: utility, governance, fee mechanism) e o campo Main chain (que informa aos leitores em qual rede o token é implantado).
Um projeto pode ter tokens em várias cadeias -- por exemplo, um token ERC-20 no Ethereum e uma versão em ponte em uma L2 como o Arbitrum. O campo de padrão de token normalmente reflete a implantação principal.
O que o ERC-20 por si só não comprova
- O ERC-20 não comprova a utilidade do token. Qualquer contrato inteligente pode implementar a interface ERC-20. O padrão define o comportamento técnico do token, não seu papel econômico ou necessidade. Um projeto pode ter um token ERC-20 que não cumpre nenhum propósito em seu pipeline de IA ou aplicação.
- O ERC-20 não comprova legitimidade. Criar e implantar um token ERC-20 exige esforço e custo técnicos mínimos. A existência de um token não é evidência de que o projeto por trás dele seja real, funcional ou confiável.
- O ERC-20 não comprova que o projeto está no Ethereum. Tokens ERC-20 existem em muitas cadeias compatíveis com EVM. O padrão de token não indica em qual cadeia o token é implantado -- verifique o campo Main chain para essa informação.
- O ERC-20 não comprova capacidade de IA. O padrão técnico de um token não tem conexão com o fato de o projeto ter um componente de IA real, inferência funcional ou modelos verificáveis.
- O ERC-20 não comprova descentralização. O próprio contrato do token pode incluir controles centralizados: chaves de admin para cunhagem ou queima, funções de pausa, proxies de atualização controlados por um único endereço. O padrão define a interface, não o modelo de governança.
Não confundir com
- Token standard -- o conceito guarda-chuva. O ERC-20 é um padrão de token específico. Outros incluem ERC-721 (NFTs), ERC-1155 (multi-tokens), BEP-20 (BNB Smart Chain), SPL (Solana) e tokens nativos.
- Token nativo -- o ETH é o token nativo do Ethereum, construído no próprio protocolo. Os tokens ERC-20 são criados implantando contratos inteligentes sobre o protocolo. Eles coexistem, mas são tecnicamente diferentes.
- Token model -- o modelo de token descreve o papel do token (utility, governance, fee mechanism). O padrão de token descreve o formato técnico. Um token pode ser ERC-20 (padrão) e um token de utilidade (modelo) ao mesmo tempo.
- BEP-20 -- o padrão de token na BNB Smart Chain. O BEP-20 é funcionalmente idêntico ao ERC-20, mas é a convenção de nomenclatura usada em uma cadeia diferente.
- ERC-721 -- o padrão para tokens não fungíveis (NFTs) no Ethereum. Os tokens ERC-721 são únicos; os tokens ERC-20 são intercambiáveis.
Perguntas frequentes
O que significa "fungível" no contexto do ERC-20?
Fungível significa que cada unidade do token é idêntica em valor e função a cada outra unidade. Se você possui 100 unidades de um token ERC-20, qualquer uma dessas unidades é intercambiável com qualquer outra unidade do mesmo token. Esse é o mesmo princípio que torna uma nota de um dólar equivalente a qualquer outra nota de um dólar. Em contraste, os tokens não fungíveis (ERC-721) são cada um único -- um NFT não é intercambiável com outro.
Um token ERC-20 pode ser criado em cadeias diferentes do Ethereum?
Sim. Qualquer blockchain que implemente a Ethereum Virtual Machine (EVM) suporta tokens ERC-20. Isso inclui cadeias como Polygon, Arbitrum One, Base, BNB Smart Chain, Avalanche e muitas outras. Na BNB Smart Chain, o padrão equivalente é chamado de BEP-20, mas ele implementa a mesma interface. Um token que segue o conjunto de funções ERC-20 funciona com qualquer carteira, exchange ou contrato inteligente compatível com EVM, independentemente da cadeia específica.
Qual é a diferença entre o ERC-20 e um token nativo como o ETH?
O ETH é o token nativo do Ethereum -- ele é construído no próprio protocolo e existe sem um contrato inteligente. O ETH é usado para pagar taxas de gás e para participar do staking. Os tokens ERC-20, por outro lado, são criados implantando contratos inteligentes sobre o Ethereum. Eles exigem ETH para pagar taxas de gás por transferências e interações. Ambos os tipos de tokens podem ser mantidos na mesma carteira, mas sua implementação técnica é fundamentalmente diferente.
Implantar um token ERC-20 exige muita expertise técnica?
Implantar um token ERC-20 básico exige conhecimento moderado de desenvolvimento de contratos inteligentes. Bibliotecas padrão (como a OpenZeppelin) fornecem implementações ERC-20 auditadas e prontas para uso que podem ser implantadas com customização mínima. A baixa barreira de implantação é tanto um recurso (permitindo experimentação e inovação rápidas) quanto um risco (permitindo que qualquer pessoa crie um token para qualquer propósito). A existência de um token implantado não é, por si só, evidência de capacidade técnica.
Referências externas
- EIP-20: Token Standard -- Ethereum Improvement Proposals -- a especificação formal original do padrão ERC-20, definindo as funções e os eventos necessários.
- OpenZeppelin -- ERC-20 Documentation -- implementação amplamente utilizada do padrão ERC-20 com explicações e melhores práticas para desenvolvedores.
- Ethereum.org -- ERC-20 Token Standard -- documentação oficial do Ethereum explicando os tokens ERC-20 para desenvolvedores e leitores.
No comments to display
No comments to display