Qu'est-ce que l'ERC-20
Remarque : Ce document est une traduction automatique de la version originale anglaise.
Qu'est-ce que l'ERC-20
L'ERC-20 est le standard de token le plus largement adopté sur la blockchain Ethereum. Il définit une interface commune — un ensemble de fonctions et d'événements — qu'un smart contract doit implémenter pour créer un token fongible. « Fongible » signifie que chaque unité du token est identique et interchangeable, tout comme n'importe quel billet d'un dollar est équivalent à n'importe quel autre billet d'un dollar.
ERC signifie Ethereum Request for Comments, et 20 est le numéro de la proposition. Le standard a été proposé en 2015 et est devenu le modèle de facto pour créer des tokens sur Ethereum et sur les chaînes compatibles EVM. Quand un projet dit que son token est « ERC-20 », cela signifie que le contrat du token suit cette interface standard, ce qui garantit la compatibilité avec les portefeuilles, les exchanges décentralisés, les trackers de portefeuille et les autres smart contracts de l'écosystème Ethereum.
En bref : l'ERC-20 est un standard technique qui définit comment fonctionnent les tokens fongibles sur Ethereum — garantissant que tout token ERC-20 peut être envoyé, reçu et géré par tout portefeuille ou application qui prend en charge le standard.
Comment fonctionne l'ERC-20
L'interface standard
Fondamentalement, l'ERC-20 spécifie un ensemble de fonctions que chaque contrat de token conforme doit implémenter. Ces fonctions fournissent un langage commun que les applications externes (portefeuilles, exchanges, autres contrats) peuvent utiliser pour interagir avec le token sans avoir besoin de connaître quoi que ce soit de la logique interne du token.
Les fonctions clés sont :
| Fonction | Ce qu'elle fait |
|---|---|
totalSupply() |
Retourne le nombre total de tokens existants |
balanceOf(address) |
Retourne combien de tokens une adresse spécifique détient |
transfer(to, amount) |
Envoie des tokens de l'adresse de l'appelant vers une autre adresse |
approve(spender, amount) |
Autorise une autre adresse (un smart contract ou un utilisateur) à dépenser jusqu'à un montant spécifié des tokens de l'appelant |
transferFrom(from, to, amount) |
Permet à un dépensier pré-approuvé de transférer des tokens au nom du propriétaire du token |
allowance(owner, spender) |
Retourne combien de tokens le dépensier est encore autorisé à transférer au nom du propriétaire |
Le standard définit aussi deux événements — Transfer et Approval — émis lorsque des tokens se déplacent ou lorsque les permissions de dépense changent. Ces événements permettent aux systèmes externes (explorateurs de blocs, indexeurs, outils d'analyse) de suivre l'activité du token sans interroger directement le contrat.
Pourquoi un standard compte
Avant l'adoption généralisée de l'ERC-20, chaque projet de token créait sa propre interface personnalisée. Cela signifiait que les portefeuilles, exchanges et autres applications devaient écrire du code spécifique pour chaque nouveau token. L'ERC-20 a résolu ce problème en créant une interface de contrat universelle : toute application prenant en charge l'ERC-20 prend automatiquement en charge chaque token ERC-20, qu'il ait été créé hier ou il y a des années.
Cette composabilité est l'un des fondements de l'écosystème Ethereum. Un exchange décentralisé n'a pas besoin de savoir ce qu'un token spécifique représente ni qui l'a créé — si le token implémente l'interface ERC-20, l'exchange peut le lister, l'échanger et régler des transactions avec lui.
Déployer un token ERC-20
Créer un token ERC-20 consiste à déployer sur le réseau Ethereum (ou une chaîne compatible EVM) un smart contract qui implémente les fonctions requises. Le déployeur spécifie le nom du token, son symbole, sa précision décimale et son offre initiale. Une fois déployé, le contrat est immuable — l'interface centrale du token ne peut pas être modifiée, bien que certaines implémentations incluent des fonctionnalités supplémentaires comme le mint, le burn ou la mise en pause via des mécanismes de gouvernance.
La faible barrière technique au déploiement d'un token ERC-20 est à la fois une force et un risque. Elle permet une innovation et une expérimentation rapides, mais elle signifie aussi que n'importe qui peut créer un token avec n'importe quel nom et n'importe quel objectif déclaré. L'existence d'un token ERC-20 n'implique ni qualité, ni légitimité, ni valeur.
L'ERC-20 et les chaînes compatibles EVM
Bien que l'ERC-20 ait été créé pour Ethereum, le standard fonctionne sur toute blockchain compatible EVM. Des chaînes comme BNB Smart Chain, Polygon, Arbitrum One, Base et Avalanche prennent toutes en charge nativement les tokens ERC-20 parce qu'elles implémentent la machine virtuelle Ethereum. Sur certaines de ces chaînes, le standard peut avoir un nom formel différent (BEP-20 sur BNB Smart Chain, par exemple), mais l'interface est fonctionnellement identique.
Cela signifie que le token d'un projet peut être décrit comme « ERC-20 » même s'il est déployé sur une chaîne autre qu'Ethereum. Le standard est une interface technique, pas une désignation propre à une chaîne. Ce qui compte, c'est de savoir si le contrat du token implémente l'ensemble de fonctions ERC-20, pas sur quel réseau il fonctionne.
L'ERC-20 comparé à d'autres types de tokens
| Dimension | ERC-20 | ERC-721 (NFT) | ERC-1155 (Multi-token) | Token natif (ETH, SOL) |
|---|---|---|---|---|
| Fongibilité | Fongible (toutes les unités identiques) | Non fongible (chaque token unique) | À la fois fongible et non fongible | Fongible |
| Déployé comme | Smart contract | Smart contract | Smart contract | Intégré au protocole |
| Interface standard | transfer, approve, balanceOf |
ownerOf, safeTransferFrom |
Opérations par lots | Pas d'interface de contrat standard |
| Cas d'usage | Monnaies, utility tokens, tokens de gouvernance | Art numérique, actifs uniques, identité | Objets de jeu, collections mixtes | Frais de gas, staking, monnaie de base |
Les tokens ERC-20 sont distincts des tokens natifs comme l'ETH. Alors que l'ETH est intégré directement au protocole Ethereum et existe sans smart contract, les tokens ERC-20 sont créés en déployant un contrat qui suit le standard. Les deux peuvent être détenus et transférés, mais ils ont des propriétés techniques différentes et des rôles différents dans le réseau.
Limitations et extensions de l'ERC-20
Bien que l'ERC-20 soit le standard de token le plus utilisé, il présente des limitations connues qui ont conduit à des extensions et des améliorations :
- Pas de notification à la réception. Lorsque des tokens sont envoyés à un smart contract, le contrat destinataire n'a aucun moyen automatique de réagir. Cela a conduit à des tokens verrouillés définitivement dans des contrats qui ne gèrent pas les transferts ERC-20. Les standards ERC-223 et ERC-777 ont été proposés pour y remédier, mais l'ERC-20 reste dominant.
- Schéma d'approbation en deux étapes. Transférer des tokens au nom d'une autre adresse nécessite deux transactions : d'abord
approve, puistransferFrom. Cela ajoute de la friction et des coûts de gas. L'extension ERC-2612 (Permit) permet des approbations sans gas via des signatures off-chain. - Pas de métadonnées intégrées. Les tokens ERC-20 ont un nom et un symbole, mais aucun moyen standardisé d'inclure des métadonnées supplémentaires (description, icône, lien de documentation). Des extensions et des registres off-chain comblent cette lacune.
Ces limitations ne diminuent pas l'utilité pratique de l'ERC-20. La simplicité du standard et sa prise en charge universelle l'emportent sur ses imperfections techniques pour la grande majorité des cas d'usage.
Pourquoi l'ERC-20 compte pour les projets crypto IA
La plupart des projets crypto IA qui émettent un token sur Ethereum ou une chaîne compatible EVM utilisent le standard ERC-20. Le token peut servir d'utility token (payer le calcul, accéder aux services IA), de token de gouvernance (voter sur les paramètres du protocole), ou de mécanisme de frais (payer l'utilisation du réseau). Quel que soit son rôle prévu, utiliser l'ERC-20 garantit que le token est compatible avec l'écosystème au sens large : les utilisateurs peuvent le détenir dans des portefeuilles standards, l'échanger sur des exchanges décentralisés et interagir avec lui via des interfaces bien connues.
Pour les lecteurs qui évaluent un projet crypto IA, savoir qu'un token est ERC-20 vous renseigne sur son format technique — pas sur son utilité, sa nécessité ou sa valeur. Le standard de token répond à « comment le token fonctionne-t-il techniquement ? » mais pas à « pourquoi le projet a-t-il besoin d'un token ? » ni à « le token sert-il réellement un objectif dans le pipeline IA ? »
Où cela apparaît dans les fiches projets DecAIHub
Dans une fiche projet DecAIHub, l'ERC-20 apparaît dans le champ Token standard. Lorsqu'une fiche affiche Token standard: ERC-20, cela signifie que le token du projet est implémenté sous forme de smart contract ERC-20.
Le champ standard de token est purement descriptif : il indique aux lecteurs le format technique du token. Il doit être lu conjointement avec le champ Token model (qui décrit le rôle du token : utilité, gouvernance, mécanisme de frais) et le champ Main chain (qui indique aux lecteurs sur quel réseau le token est déployé).
Un projet peut avoir des tokens sur plusieurs chaînes — par exemple, un token ERC-20 sur Ethereum et une version bridgée sur un L2 comme Arbitrum. Le champ standard de token reflète généralement le déploiement principal.
Ce que l'ERC-20 seul ne prouve pas
- L'ERC-20 ne prouve pas l'utilité du token. N'importe quel smart contract peut implémenter l'interface ERC-20. Le standard définit le comportement technique du token, pas son rôle économique ni sa nécessité. Un projet peut avoir un token ERC-20 qui ne sert à rien dans son pipeline IA ou applicatif.
- L'ERC-20 ne prouve pas la légitimité. Créer et déployer un token ERC-20 demande un effort technique et un coût minimes. L'existence d'un token n'est pas une preuve que le projet derrière lui est réel, fonctionnel ou digne de confiance.
- L'ERC-20 ne prouve pas que le projet est sur Ethereum. Les tokens ERC-20 existent sur de nombreuses chaînes compatibles EVM. Le standard de token n'indique pas sur quelle chaîne le token est déployé — consultez le champ Main chain pour cette information.
- L'ERC-20 ne prouve pas une capacité IA. Le standard technique d'un token n'a aucun lien avec le fait que le projet dispose d'un composant IA réel, d'une inférence fonctionnelle ou de modèles vérifiables.
- L'ERC-20 ne prouve pas la décentralisation. Le contrat du token lui-même peut inclure des contrôles centralisés : des admin keys pour le mint ou le burn, des fonctions de pause, des proxys de mise à niveau contrôlés par une seule adresse. Le standard définit l'interface, pas le modèle de gouvernance.
Ne pas confondre avec
- Standard de token — le concept parapluie. L'ERC-20 est un standard de token spécifique. Les autres incluent l'ERC-721 (NFT), l'ERC-1155 (multi-tokens), le BEP-20 (BNB Smart Chain), le SPL (Solana) et les tokens natifs.
- Token natif — l'ETH est le token natif d'Ethereum, intégré au protocole lui-même. Les tokens ERC-20 sont créés en déployant des smart contracts par-dessus le protocole. Ils coexistent mais sont techniquement différents.
- Modèle de token — le modèle de token décrit le rôle du token (utilité, gouvernance, mécanisme de frais). Le standard de token décrit le format technique. Un token peut être ERC-20 (standard) et utility token (modèle) en même temps.
- BEP-20 — le standard de token sur BNB Smart Chain. Le BEP-20 est fonctionnellement identique à l'ERC-20 mais correspond à la convention de nommage utilisée sur une autre chaîne.
- ERC-721 — le standard des tokens non fongibles (NFT) sur Ethereum. Les tokens ERC-721 sont uniques ; les tokens ERC-20 sont interchangeables.
Questions fréquentes
Que signifie « fongible » dans le contexte de l'ERC-20 ?
Fongible signifie que chaque unité du token est identique en valeur et en fonction à toute autre unité. Si vous détenez 100 unités d'un token ERC-20, chacune de ces unités est interchangeable avec toute autre unité du même token. C'est le même principe qui rend un billet d'un dollar équivalent à tout autre billet d'un dollar. À l'inverse, les tokens non fongibles (ERC-721) sont chacun uniques — un NFT n'est pas interchangeable avec un autre.
Un token ERC-20 peut-il être créé sur des chaînes autres qu'Ethereum ?
Oui. Toute blockchain qui implémente la machine virtuelle Ethereum (EVM) prend en charge les tokens ERC-20. Cela inclut des chaînes comme Polygon, Arbitrum One, Base, BNB Smart Chain, Avalanche et bien d'autres. Sur BNB Smart Chain, le standard équivalent s'appelle BEP-20, mais il implémente la même interface. Un token qui suit l'ensemble de fonctions ERC-20 fonctionne avec tout portefeuille, exchange ou smart contract compatible EVM, quelle que soit la chaîne concernée.
Quelle est la différence entre l'ERC-20 et un token natif comme l'ETH ?
L'ETH est le token natif d'Ethereum — il est intégré au protocole lui-même et existe sans smart contract. L'ETH sert à payer les frais de gas et à participer au staking. Les tokens ERC-20, en revanche, sont créés en déployant des smart contracts par-dessus Ethereum. Ils nécessitent de l'ETH pour payer les frais de gas des transferts et interactions. Les deux types de tokens peuvent être détenus dans le même portefeuille, mais leur implémentation technique est fondamentalement différente.
Déployer un token ERC-20 demande-t-il beaucoup d'expertise technique ?
Déployer un token ERC-20 basique demande des connaissances modérées en développement de smart contracts. Des bibliothèques standards (comme OpenZeppelin) fournissent des implémentations ERC-20 auditées et prêtes à l'emploi, déployables avec une personnalisation minimale. La faible barrière au déploiement est à la fois un atout (permettant expérimentation et innovation rapides) et un risque (permettant à quiconque de créer un token pour n'importe quel objectif). L'existence d'un token déployé n'est pas, en soi, une preuve de capacité technique.
Références externes
- EIP-20: Token Standard — Ethereum Improvement Proposals — la spécification formelle originale du standard ERC-20, définissant les fonctions et événements requis.
- OpenZeppelin — ERC-20 Documentation — implémentation largement utilisée du standard ERC-20 avec explications et bonnes pratiques pour les développeurs.
- Ethereum.org — ERC-20 Token Standard — documentation officielle d'Ethereum expliquant les tokens ERC-20 pour les développeurs et les lecteurs.
No comments to display
No comments to display