Analyse approfondie des jetons ERC-20

Avant-propos

Ethereum, en tant que plateforme open source pour les applications décentralisées ( DApp ), a été fondée en 2014 par Vitalik Buterin. La motivation de Buterin pour créer cette toute nouvelle blockchain était en grande partie due au manque de flexibilité du protocole Bitcoin.

Depuis son lancement, la blockchain Ethereum a attiré de nombreux développeurs, entreprises et entrepreneurs, donnant naissance à une nouvelle industrie permettant aux utilisateurs de déployer des contrats intelligents et des applications décentralisées.

Cet article explorera en profondeur la norme ERC-20, qui est un cadre clé pour la création de jetons. Bien qu'elle soit uniquement applicable au réseau Ethereum, elle a inspiré la naissance d'autres normes de blockchain, comme le GEP-2 de la chaîne Gate.

Analyse de la norme ERC-20

Dans l'écosystème Ethereum, ERC signifie "Ethereum Request for Comments"(Ethereum Request for Comments). Ces documents techniques décrivent les normes de programmation d'Ethereum. Il est important de noter que l'ERC est différent des propositions d'amélioration d'Ethereum(EIP), qui ressemblent aux BIP de Bitcoin et concernent principalement des recommandations d'amélioration du protocole lui-même. L'objectif de l'ERC est d'établir des protocoles facilitant l'interopérabilité entre les applications et les contrats.

ERC-20 a été co-développé par Vitalik Buterin et Fabian Vogelsteller en 2015, fournissant un format standard relativement simple pour les jetons basés sur Ethereum. En suivant cette norme, les développeurs n'ont pas besoin de redessiner, ils peuvent construire directement sur la base de l'industrie existante.

Une fois que de nouveaux jetons ERC-20 sont créés, ils peuvent automatiquement interopérer avec divers services et logiciels prenant en charge la norme ERC-20, tels que des portefeuilles logiciels, des portefeuilles matériels et des plateformes d'échange, etc. (.

Il convient de noter que la norme ERC-20 a maintenant évolué vers EIP), en particulier EIP-20(. Bien que de nombreuses années se soient écoulées depuis la proposition initialement largement diffusée, et qu'elle ait depuis connu plusieurs années de développement, le nom "ERC-20" reste largement utilisé.

Aperçu des jetons Ethereum

Contrairement à la cryptomonnaie native d'Ethereum ), les jetons ERC-20 ne sont pas stockés directement sur le compte, mais existent uniquement à l'intérieur du contrat, comme une base de données indépendante. Il définit les règles du jeton ( telles que le nom, le symbole, la divisibilité ), et maintient une liste d'adresses Ethereum mappant les soldes des utilisateurs.

Pour transférer des jetons, l'utilisateur doit envoyer une transaction au contrat intelligent, demandant au contrat de redistribuer une partie du solde. Par exemple, si Alice souhaite envoyer 5 000 Gate Academy Tokens (GateAcademyTokens) à Bob, elle appellera la fonction correspondante dans le contrat intelligent pour exécuter cette instruction.

Son appel de commande est inclus dans une transaction Ethereum apparemment ordinaire, qui a payé 0 ETH au contrat de token. Cet appel est inclus dans d'autres champs de la transaction, indiquant l'intention d'Alice - dans cet exemple, elle souhaite transférer des tokens à Bob.

Même si elle n'envoie pas d'Ethereum, Alice doit tout de même payer des frais pour s'assurer que la transaction soit incluse dans un bloc. Si elle n'a pas d'ETH, elle devrait d'abord recharger un peu d'ETH avant de transférer des jetons.

Voici un cas pratique sur Etherscan : un utilisateur a appelé un contrat BUSD. On peut voir que le jeton a été transféré et que des frais ont été payés, même si la colonne de valeur indique qu'aucun ETH n'a été envoyé.

Nous allons maintenant examiner en profondeur la structure d'un contrat ERC-20 typique.

Le processus de création des tokens ERC-20

Selon la norme ERC-20, votre contrat doit implémenter six fonctions nécessaires : totalSupply, balanceOf, transfer, transferFrom, approve et allowance. De plus, vous pouvez définir certaines fonctions optionnelles, telles que name, symbol et decimal. Les noms de ces fonctions reflètent essentiellement leur fonctionnalité, mais même si vous ne comprenez pas très bien, ne vous inquiétez pas, nous les expliquerons une par une dans le contenu suivant.

Voici une fonction présentée dans le langage Solidity, spécifiquement utilisé pour Ethereum.

Analyse de la fonction totalSupply pour (

ETH2.35%
Voir l'original
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
  • Récompense
  • Commentaire
  • Reposter
  • Partager
Commentaire
0/400
Aucun commentaire
  • Épingler
Trader les cryptos partout et à tout moment
qrCode
Scan pour télécharger Gate app
Communauté
Français (Afrique)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)