DEV Community

Cover image for Bonus : Règles du standard ERC-20
Amel In Tech
Amel In Tech

Posted on

Bonus : Règles du standard ERC-20

Un token ERC-20 est une valeur gérée par un smart contract qui doit respecter un ensemble précis de règles fonctionnelles afin d’être reconnu et utilisable par l’écosystème Ethereum.


Liste des Règles :

  • Identifier le token : Permet d’identifier clairement le token.

    • Rôle
      • Afficher correctement le token dans les wallets et interfaces.
      • Distinguer un token d’un autre.
    • Fonctions associées

      • name() → nom lisible du token
      • symbol() → version courte du nom
      • decimals() → nombre de décimales utilisées

      Aucune logique métier, uniquement de l’information.


  • Connaître la quantité totale de tokens (total supply) : Indique le nombre total de tokens qui existent pour un token donné.
    • Rôle
      • Garantir la cohérence globale du token.
      • Permettre l’audit et la transparence.
    • Fonction associée
      • totalSupply()

  • Gérer les soldes : Associe chaque adresse à un solde et permet de le consulter

    • Rôle
      • Répondre à la question : « Qui possède combien de tokens ? »
    • Fonction associée

      • balanceOf(address)

      Fonction de lecture uniquement, aucun changement d’état.


  • Transfert direct de tokens : Permet d’envoyer des tokens d’une adresse vers une autre.

    • Rôle
      • Assurer la circulation des tokens.
      • Empêcher les soldes négatifs.
    • Fonction associée

      • transfer(address to, uint256 amount)

        Ici le smart contract :

        • vérifie que l’expéditeur a un solde suffisant,
        • met à jour les soldes dans l’état global.

  • Autoriser un tiers à utiliser des tokens (allowance) : permettre à un propriétaire de tokens d’autoriser un tiers (souvent un smart contract) à utiliser une quantité limitée de ses tokens

    • Rôle

      • Permettre aux smart contracts, exchanges et applications DeFi d’agir pour l’utilisateur.

        💡Les exchanges et les applications DeFi sont des smart contracts qui automatisent des opérations financières, et ils ont besoin d’autorisations pour utiliser les tokens des utilisateurs à leur place.

        • Exchange = échanger un token contre un autre
        • DeFi = faire de la finance avec des smart contracts
      • Sans donner accès à la clé privée.

    • Fonction associée

      • approve(address spender, uint256 amount)

  • Lire une autorisation : Permet de consulter le montant qu’un tiers est autorisé à utiliser.

    • Rôle
      • Vérifier les autorisations accordées.
      • Permettre aux wallets, explorateurs et applications décentralisées de lire et afficher les données du token.
    • Fonction associée

      • allowance(address owner, address spender)

      Fonction de lecture.


  • Transfert par un tiers autorisé : Permet à un tiers autorisé de transférer des tokens pour le compte d’un autre utilisateur.

    • Rôle
      • Rendre possibles les échanges automatisés.
      • Cœur du fonctionnement des exchanges et de la DeFi.
    • Fonction associée

      • transferFrom(address from, address to, uint256 amount)

        Ici le smart contract :

        • vérifie l’autorisation,
        • met à jour les soldes,
        • réduit l’autorisation restante.

  • Traçabilité des actions : Signale les actions importantes liées au token.

    • Rôle

      • Permettre aux wallets et explorers de suivre l’activité.

        💡Un explorer est un site web qui permet de voir et vérifier tout ce qui est écrit sur une blockchain.

      • Rendre le token observable et transparent.

    • Événements associés

      • Transfer
      • Approval

  • Cohérence et sécurité globale : Garantit que toutes les règles précédentes sont respectées en permanence.

    • Rôle

      • Empêcher les incohérences.

        exemple : Alice possède 5 tokens, mais essaie d’en envoyer 10 à Bob.

      • Garantir l’intégrité de l’état global.

    • Implémentation

      • Vérifications internes dans toutes les fonctions du smart contract.

En résumé, le standard BEP-20 définit comment un token est identifié, les soldes sont gérés, les tokens sont transférés, des tiers peuvent être autorisés, et comment ces actions sont rendues visibles à l’écosystème.

Top comments (0)