Commencer gratuitement
Français

Réseaux EVM

Comment les chaînes EVM servent de rails de paiement

La plupart des réseaux de ce site sont des chaînes EVM : Ethereum et les réseaux qui ont repris sa mécanique. Ils partagent un format d’adresse, un modèle de frais et une norme de jetons, ce qui explique qu’un seul portefeuille les atteigne tous — et aussi pourquoi l’erreur la plus coûteuse des paiements en cryptomonnaie se produit entre eux plutôt que vers eux.

Une adresse, toutes les chaînes — et le piège que cela crée

Une adresse EVM se calcule à partir d’une clé et de rien d’autre : on prend la clé publique, on la hache, on garde les vingt derniers octets, on ajoute 0x devant. Aucun réseau n’intervient dans ce calcul. La même adresse existe donc sur Ethereum, sur Base, sur Polygon, sur BNB Chain — sur toutes les chaînes EVM existantes et sur toutes celles qui existeront. Elle n’a besoin d’être ni créée, ni approvisionnée, ni enregistrée. Elle est, tout simplement.

C’est à la fois une vraie commodité et un vrai danger. Comme l’adresse est valable partout, envoyer à la bonne adresse sur la mauvaise chaîne ne rebondit pas, n’avertit personne et n’échoue pas. Cela réussit — ailleurs.

C’est ici que la plupart des guides affirment que l’argent est perdu à jamais, et dans ce cas précis c’est tout simplement faux. Celui qui détient la clé contrôle cette adresse sur toutes les chaînes EVM : les fonds envoyés sur le mauvais réseau EVM restent accessibles à la personne qui possède l’adresse — ils se trouvent sur une autre chaîne, ils ne sont pas détruits. Ce qui est perdu, c’est la commande, pas l’argent : la facture surveillait un réseau et le paiement est arrivé sur un autre, donc rien n’est crédité et les deux parties doivent régler cela à la main.

  • Les cas véritablement irrécupérables sont différents et méritent d’être distingués. Envoyer un actif EVM vers une chaîne non-EVM — une adresse Bitcoin, Tron ou Solana — est irréversible, car la clé qui contrôle une adresse EVM n’y contrôle rien. De même pour un jeton envoyé à un contrat qui n’a aucun moyen de le ressortir.
  • Le protocole protège tout de même d’un danger voisin. Chaque chaîne EVM possède son propre identifiant de chaîne, intégré à la signature : une transaction signée pour un réseau ne peut pas être rejouée sur un autre par quelqu’un qui la recopierait. Votre signature est propre à une chaîne alors que votre adresse ne l’est pas — et c’est exactement cette asymétrie qui rend l’erreur si facile à commettre.

Le gas : ce qu’il paie, et qui le paie

Toutes les chaînes EVM facturent du calcul, pas de la valeur. Le gas mesure le travail qu’une opération demande, et les frais sont ce travail multiplié par un prix unitaire — déplacer un gros montant coûte donc autant qu’un petit, et un simple transfert de la monnaie native de la chaîne est l’opération la moins chère possible. Un transfert standard est fixé à 21 000 unités de gas sur toutes les chaînes de cette famille.

Ce qui varie, c’est le prix unitaire, et il suit la demande. Le protocole fixe des frais de base que tout le monde paie, et l’expéditeur peut ajouter un pourboire pour être inclus plus tôt. C’est pourquoi le même transfert peut coûter une fraction de centime sur une chaîne calme et une somme réelle sur une chaîne chargée : le travail n’a pas changé, le prix de l’espace de bloc si.

Déplacer un jeton coûte nettement plus que déplacer la monnaie native, car un transfert de jeton est un appel de contrat et non un simple envoi. Les deux montent ensemble quand une chaîne est congestionnée. Votre client paie les frais en plus de votre montant ; vous recevez ce que vous avez facturé.

Les jetons sont des contrats, pas de la monnaie

La monnaie propre à la chaîne est intégrée au protocole. Tout le reste — USDC, USDT et les autres — est un contrat qui tient son propre registre de qui possède quoi. En pratique, un jeton n’existe que sur la chaîne où son contrat a été déployé, et le même nom sur deux chaînes désigne deux contrats différents qui ne se parlent jamais.

Cela signifie aussi qu’on ne peut pas deviner la façon dont un jeton compte. La norme rend le champ des décimales facultatif et déclare explicitement que les appelants ne doivent pas s’attendre à le trouver : le nombre de décimales est donc une propriété de chaque contrat, pas de l’actif. USDT en est l’exemple vivant : six décimales sur Ethereum, dix-huit sur BNB Chain. Tout code qui fige un chiffre et rencontre l’autre se trompe d’un facteur mille milliards.

La bonne habitude est de lire les décimales depuis le contrat, sur la chaîne où l’on se trouve réellement, à chaque fois, et de ne jamais reporter un chiffre venu d’ailleurs.

Choisir entre elles

Elles diffèrent par le coût d’un transfert, le temps de règlement et les actifs transportés — pas par leur fonctionnement. Voici les réseaux EVM sur lesquels ce produit règle, affichés depuis le catalogue en service plutôt qu’écrits ici.

Ethereum Mainnet
ETH · USDC · USDT
Base
ETH · USDC
Polygon PoS
POL · USDC
BNB Chain
BNB · USDT
Lisk
ETH

La règle pratique est d’aller chercher l’argent là où il se trouve déjà. Un client détenant des USDC sur une chaîne paiera depuis cette chaîne, et lui demander de faire un pont d’abord revient à lui demander de payer des frais, d’attendre et peut-être de renoncer. Si vous pouvez accepter sur plusieurs, la question ne se pose plus.

Certaines d’entre elles sont des réseaux de couche 2 : elles exécutent les transactions elles-mêmes et renvoient les données vers Ethereum, où le registre se règle en dernier ressort. Pour un paiement, cette différence se traduit par des frais plus bas et par rien que vous ayez à gérer : l’argent arrive à votre adresse sur ce réseau, comme partout ailleurs.

Ce qu’il faut anticiper

L’erreur de réseau est celle contre laquelle il faut concevoir, car rien dans le protocole ne l’empêchera. La page de paiement nomme le réseau et affiche l’adresse exacte précisément pour cette raison, et il vaut la peine de répéter le réseau à un client qui paie depuis une plateforme d’échange.

  • Un payeur qui envoie un jeton a aussi besoin de la monnaie propre à la chaîne, car les frais se règlent avec elle. Un portefeuille ne contenant que des USDC et pas de monnaie native ne peut rien envoyer avant d’être approvisionné — cause fréquente d’un client signalant qu’un transfert ne passe pas.
  • Les frais et les délais de confirmation suivent la demande d’espace de bloc, et non quoi que ce soit que nous contrôlions. Un jour calme et un jour chargé sont deux produits différents du point de vue de votre client, et l’écart est le plus grand sur les chaînes les plus fréquentées.
  • Une fois confirmé, un paiement ne peut être annulé par personne, nous compris. C’est la protection contre les impayés, et c’est pourquoi un envoi erroné doit se régler entre les deux personnes concernées plutôt que par le réseau.

Questions

Pourquoi mon adresse est-elle la même sur Ethereum, Base et Polygon ?

Parce qu’une adresse EVM se calcule à partir de votre seule clé — les vingt derniers octets du hachage de votre clé publique — et qu’aucun réseau ne participe à ce calcul. L’adresse existe donc sur toutes les chaînes EVM à la fois, sans avoir été créée sur aucune. Une clé, une adresse, toutes les chaînes de la famille.

Que se passe-t-il si un paiement part sur le mauvais réseau EVM ?

Il arrive — à la même adresse, sur l’autre chaîne. Comme l’adresse y est valable aussi, rien ne rebondit et personne n’est averti. L’argent n’est pas détruit et celui qui détient la clé peut toujours l’atteindre, mais la facture surveillait un autre réseau : elle n’est pas créditée et vous devez régler cela directement entre vous.

L’argent envoyé sur la mauvaise chaîne est-il perdu à jamais ?

Pas entre chaînes EVM, contrairement à ce qu’affirment la plupart des guides : la clé qui contrôle l’adresse la contrôle partout dans la famille, donc les fonds restent accessibles. C’est en revanche irrécupérable si un actif EVM part vers une adresse Bitcoin, Tron ou Solana, où votre clé ne signifie rien — ou si un jeton atterrit sur un contrat incapable de le restituer.

Pourquoi envoyer un jeton coûte-t-il plus cher que la monnaie native ?

Parce qu’un transfert de jeton exécute un contrat, contrairement à un transfert simple. Le gas facture le calcul, donc le travail supplémentaire coûte davantage. Un transfert natif standard est fixé à 21 000 gas ; un transfert de jeton en consomme plusieurs fois plus, et les deux montent quand la chaîne est chargée.

Tous les jetons utilisent-ils 18 décimales ?

Non, et le supposer est une vraie source de bugs coûteux. La norme des jetons rend les décimales facultatives et dit explicitement que les appelants ne doivent pas s’attendre à trouver ce champ : il appartient donc à chaque contrat. USDT utilise six décimales sur Ethereum et dix-huit sur BNB Chain. Lisez la valeur depuis le contrat, sur la chaîne où vous êtes.

Si mon adresse fonctionne partout, peut-on rejouer ma transaction sur une autre chaîne ?

Non. Chaque chaîne EVM a son propre identifiant de chaîne, inclus dans ce que vous signez : une signature valable sur un réseau est invalide sur les autres. Votre adresse est partagée entre les chaînes, votre signature ne l’est pas — c’est la protection dont vous disposez, et aussi la raison pour laquelle l’erreur de réseau est si facile.

Être payé sur une couche 2 est-il différent d’être payé sur Ethereum ?

Pas dans ce que vous avez à faire. Une couche 2 exécute elle-même les transactions et renvoie les données vers Ethereum, où tout se règle en dernier ressort ; l’effet pratique pour un paiement est des frais plus bas. L’argent arrive toujours à votre adresse sur ce réseau, et c’est ce réseau que vous surveillez.

Sources

Chaque chiffre de cette page provient de l’un de ces documents. Chacun a été consulté à la date indiquée, et non cité de mémoire.

  1. Ethereum accounts

    ethereum.orgConsulté le

  2. EIP-155: Simple replay attack protection

    Ethereum Improvement ProposalsConsulté le

  3. Gas and fees

    ethereum.orgConsulté le

  4. ERC-20: Token Standard

    Ethereum Improvement ProposalsConsulté le

  5. Scaling

    ethereum.orgConsulté le

Essayez d’abord avec de l’argent de test

Créez une facture sur un réseau de test, payez-la avec des fonds de robinet, et observez la détection et la confirmation arriver comme deux événements distincts — la même paire que vous traiterez en production.

Commencer gratuitement

Réseaux · Réseaux · Tarifs · Réponses claires.