Le standard de token ERC20
Le standard de token ERC20 : lisez l'article complet sur le blog Chaingateway — infos sur les API blockchain, les paiements et les intégrations crypto.
On le lit partout, même sur notre site : les tokens ERC20 sont là pour durer et constituent actuellement le standard de token fongible le plus populaire. Mais qu’est-ce qui définit réellement un token ERC20 ? Et comment fonctionne-t-il techniquement ?
Qu’est-ce que l’ERC20 ?
ERC20 est un standard technique pour l’implémentation de tokens sur Ethereum. Les fonctions du standard ERC20 définissent comment les tokens ERC20 peuvent être envoyés, comment vérifier les soldes, et les détails généraux du token comme le nom, le symbole et l’offre maximale.
Comment créer un token ERC20 ?
Pour créer un token ERC20, il faut créer et personnaliser le smart contract ERC20. S’agissant d’un standard ouvert et défini, diverses fonctions et événements doivent être pris en compte lors du développement du smart contract d’un token ERC20. Après création et personnalisation, le smart contract peut être compilé, par exemple avec le compilateur web Remix. Le bytecode retourné après la compilation doit être diffusé sur la blockchain Ethereum. Félicitations ! Le token ERC20 est maintenant sur la blockchain !
Existe-t-il des exemples de code pour créer des smart contracts de tokens ERC20 ?
Le standard officiel, ses fonctions et événements sont décrits dans l’EIP-20 officiel, Fabian Vogelsteller, Vitalik Buterin, « EIP-20 : ERC-20 Token Standard », Ethereum Improvement Proposals, n° 20, novembre 2015. [Online serial]. Disponible sur : https://eips.ethereum.org/EIPS/eip-20. Des implémentations d’exemple se trouvent également sur les pages Github d’OpenZeppelin et de ConsenSys.
Quelle est la différence entre les tokens ERC20 et Ethereum ?
Ethereum est la monnaie native de la blockchain Ethereum. Les tokens ERC20 reposent sur des smart contracts qui s’exécutent sur l’Ethereum Virtual Machine (EVM). La standardisation des tokens permet une utilisation universelle au sein d’autres applications comme les wallets et les exchanges.
Peut-on payer les frais de gas avec des tokens ERC20 au lieu d’Ethereum ?
Les frais de gas doivent toujours être payés en Ethereum. Même si seuls des tokens ERC20 sont transférés, un peu d’Ethereum reste nécessaire sur l’adresse expéditrice pour couvrir les frais de gas côté blockchain.
Combien coûte la création d’un token ERC20 ?
Il y a 2 réponses à cette question :
- Si vous créez le smart contract vous-même et le déployez, vous n’aurez à payer que les frais de gas pour « sauvegarder » le smart contract sur la blockchain. Le gas exact du déploiement dépend de la taille et de la complexité de votre contrat, multiplié par le prix du gas actuel. Le dernier prix du gas est disponible par exemple sur ETH Gas Station.
- Si vous faites créer votre smart contract par un développeur ou une agence de développement, demandez un devis qui distingue les honoraires de développement des frais de gas mentionnés ci-dessus.
Les tokens ERC20 sont-ils légaux ?
Cela dépend beaucoup de l’usage réel du token et du pays du propriétaire. Dans la plupart des pays, les tokens ERC20 sont légaux en eux-mêmes, mais dès qu’il s’agit de les vendre, de les échanger, de les utiliser comme moyen de paiement ou comme parts d’entreprise, des réglementations et licences supplémentaires sont nécessaires. Les tokens ERC20 peuvent aussi être soumis à des taxes dans de nombreux pays. Dans tous les cas, il est recommandé de consulter un avocat pour vérifier si des licences sont nécessaires pour un usage ou un modèle économique spécifique. Les règles de connaissance du client (KYC) et de lutte contre le blanchiment d’argent (AML) s’appliquent également lors de la vente de tokens ERC20.
Comment envoyer des tokens ERC20 automatiquement ?
Habituellement, les gens envoient des cryptomonnaies via leur wallet : ils saisissent le destinataire et le montant à envoyer. Mais que faire si vous voulez envoyer des tokens ERC20 à des dizaines de milliers de personnes ? Le faire manuellement vous prendra au moins 7 jours de travail 24h/24, ce qui n’est pas une bonne option. C’est l’une des raisons pour lesquelles nous avons créé Chaingateway.io. Grâce à l’API REST simple d’utilisation de notre solution, il est possible d’envoyer des tokens ERC20 à des millions de personnes avec un simple script. Et le meilleur : cela fonctionne avec n’importe quel token ERC20 et ne nécessite aucun listing (contrairement à la plupart des exchanges).
Comment obtenir le solde de token ERC20 d’une adresse spécifique ?
Pour obtenir le solde de token ERC20 d’une adresse, vous pouvez utiliser des explorateurs de blocs comme Etherscan. Ouvrez simplement le site, saisissez l’adresse Ethereum dont vous voulez vérifier le solde, et Etherscan vous donnera un aperçu complet des tokens détenus par cette adresse. Vous vous demandez peut-être comment automatiser ce travail, par exemple pour intégrer votre propre token ERC20 comme moyen de paiement sur votre site. La réponse est à nouveau Chaingateway.io. Avec notre solution, vous pouvez même mettre en place un script de notification qui vous permet de recevoir et de traiter les dépôts de façon entièrement automatisée.
Qu’est-ce qu’une adresse de contrat ?
Lors du déploiement d’un smart contract de token ERC20, vous recevez un hash, qui sert d’identifiant unique permettant à Ethereum de savoir où trouver le smart contract déployé sur la blockchain Ethereum. C’est aussi ce qu’on appelle l’adresse de contrat, car c’est l’adresse où se trouve le smart contract. L’adresse de contrat est la seule partie d’un token qui vous permet d’identifier que vous avez bien affaire au bon token ERC20. Bien sûr, chaque token ERC20 a un nom et un symbole, mais ceux-ci n’ont pas à être uniques. En théorie, vous pouvez créer dix mille tokens ERC20 ayant tous le même nom et le même symbole — seule l’adresse de contrat différera.
Existe-t-il d’autres standards de token populaires ?
Parmi les autres standards de token populaires figurent l’ERC721 — un standard de smart contract pour les tokens non fongibles. Et l’ERC1155 — un standard de smart contract multi-token. D’autres articles sur ces standards et leurs particularités pourraient bientôt voir le jour. En attendant, vous pouvez vous référer à leurs EIP officielles :
William Entriken, Dieter Shirley, Jacob Evans, Nastassia Sachs, « EIP-721 : ERC-721 Non-Fungible Token Standard », Ethereum Improvement Proposals, n° 721, janvier 2018. [Online serial]. Disponible sur : https://eips.ethereum.org/EIPS/eip-721.
Witek Radomski, Andrew Cooke, Philippe Castonguay, James Therien, Eric Binet, Ronan Sandford, « EIP-1155 : ERC-1155 Multi Token Standard », Ethereum Improvement Proposals, n° 1155, juin 2018. [Online serial]. Disponible sur : https://eips.ethereum.org/EIPS/eip-1155.
Prêt à le construire vous-même ? Obtenir votre clé API — essai de 7 jours, sans carte bancaire — ou consultez API Ethereum pour la référence complète des endpoints.