Norme de jeton ERC-777
Introduction ?
ERC-777 est un type de jeton fongible améliorant le standard ERC-20 existant.
Pré-requis
Pour mieux comprendre cette page, nous vous recommandons de lire en premier lieu la page ERC-20.
Quelles améliorations l'ERC-777 propose-t-elle par rapport à l'ERC-20 ?
L’ERC-777 apporte les améliorations suivantes par rapport à l’ERC-20 :
Crochets
Le crochet (hook) est une fonction décrite dans le code d'un contrat intelligent. Les crochets sont appelés lorsque des jetons sont envoyés ou reçus par le biais du contrat. Cela permet à un contrat intelligent de réagir aux jetons entrants ou sortants.
Les crochets sont enregistrés et accessibles en utilisant la norme ERC-1820(opens in a new tab).
Pourquoi les crochets sont-ils exceptionnels ?
- Les crochets permettent d'envoyer des jetons à un contrat et de notifier le contrat en une seule transaction, contrairement à ERC-20(opens in a new tab), qui nécessite un double appel (
approve
/transferFrom
) pour y parvenir. - Les contrats qui n'ont pas implémenté les crochets sont incompatibles avec l'ERC-777. Le contrat envoyé annulera la transaction lorsque le contrat de réception n'a pas implémenté de crochet. Cela empêche les transferts accidentels vers des contrats intelligents non ERC-777.
- Les crochets peuvent rejeter les transactions.
Décimales
La norme résout également la confusion relative aux decimals
générée par ERC-20. Cette clarification améliore l'expérience développeurs.
Rétro-compatibilité avec ERC-20
Les contrats ERC-777 peuvent interagir comme s'il s'agissait de contrats ERC-20.
Complément d'information
Norme de jeton EIP-777(opens in a new tab)