Chargement des prix…

Qu'est-ce que l'abstraction de compte ERC-4337 ? Guide en langage clair

L'ERC-4337 est un standard Ethereum qui transforme chaque portefeuille en smart contract programmable, élimine les phrases de récupération et permet à quelqu'un d'autre de payer vos gas. Voici comment cela fonctionne vraiment.

Qu'est-ce que l'abstraction de compte ERC-4337 ? Guide en langage clair

Quel problème ERC-4337 essaie-t-elle vraiment de résoudre ?

Si vous avez déjà utilisé un portefeuille crypto, vous avez probablement vécu la même expérience frustrante qui a poussé les développeurs Ethereum vers l'abstraction de compte. Vous notez douze ou vingt-quatre mots sur un bout de papier, vous perdez le papier, et vous perdez définitivement l'accès à vos fonds. Vous essayez d'envoyer une transaction et vous découvrez qu'il vous faut de l'ETH pour payer le « gaz », alors même que le token que vous voulez échanger est juste là. Vous signez une transaction malveillante et votre portefeuille est vidé avant que vous ne compreniez ce qui s'est passé. Aucune de ces situations ne serait acceptable dans une application normale, et aucune n'est inhérente à la cryptographie. Ce sont les conséquences d'un choix de conception fait en 2013 : un compte Ethereum n'est qu'une clé privée, et une clé privée est sans pitié.

L'abstraction de compte est l'idée ancienne de faire du compte lui-même l'élément intelligent, et non la signature. Au lieu d'un portefeuille qui n'est qu'une clé passive qui signe ou refuse, le portefeuille devient un petit programme avec des règles : combien peut être dépensé par jour, qui peut co-signer une transaction, quels tokens comptent comme paiement, et ce qui se passe si le propriétaire est indisponible. ERC-4337 est la norme qui a enfin déployé cette idée sur le mainnet Ethereum, en 2023, sans nécessiter de hard fork ni de nouvelle couche de consensus.

La promesse est simple. Si vous pouvez décrire une fonctionnalité en code, votre portefeuille peut l'avoir. Vous avez perdu votre téléphone ? Trois amis peuvent voter pour vous réintégrer. Vous voulez accueillir un ami qui n'a pas d'ETH ? L'application paie son gaz en USDC. Vous voulez jouer à un jeu qui signe automatiquement les coups ? Vous pouvez émettre une clé de session qui expire dans une heure et ne fonctionne que sur un seul contrat. Le piège, et nous y viendrons, c'est que chaque nouvelle fonctionnalité est une nouvelle ligne de code que quelqu'un pourrait exploiter.

En quoi les EOA diffèrent des comptes intelligents

Aujourd'hui, la plupart des utilisateurs d'Ethereum détiennent un compte détenu externement, ou EOA. Un EOA est une clé privée qui contrôle une adresse. La clé produit une signature, la signature prouve que vous possédez l'adresse, et le réseau débite votre solde. C'est tout le modèle. Vous ne pouvez ajouter aucune règle, il n'y a aucun chemin de récupération, et il n'y a aucun moyen de changer le schéma de signature. Perdre la clé, c'est perdre le compte. Il n'y a pas de service client, parce qu'il n'y a pas d'entreprise. La mathématique est honnête ; l'expérience utilisateur est brutale.

Un compte intelligent, dans le monde ERC-4337, inverse ce modèle. Le compte est un smart contract déployé sur Ethereum. Au lieu d'une clé privée qui soit le seul moyen d'autoriser une action, le contrat vérifie la logique que son propriétaire a programmée : peut-être qu'une seule signature suffit pour les petits paiements, peut-être qu'un portefeuille matériel et un téléphone sont tous deux requis au-delà d'un certain seuil, peut-être que le compte refuse d'interagir avec un contrat connu comme malveillant. Le propriétaire a toujours besoin d'une clé pour signer, mais la clé n'est qu'une entrée parmi d'autres dans un processus de décision plus riche.

Cela peut sembler être un petit changement, mais les conséquences sont importantes. Un compte intelligent peut être mis à jour (avec prudence) si un bug est découvert. Il peut être contrôlé par plusieurs appareils à la fois. Il peut se récupérer lui-même. Il peut payer le gaz dans n'importe quel token, ou laisser quelqu'un d'autre payer entièrement son gaz. Rien de tout cela n'est possible avec un simple EOA, et c'est cet écart qui explique pourquoi la communauté Ethereum a passé des années à débattre de la façon de déployer l'abstraction de compte.

Comment fonctionne ERC-4337 : UserOperation, EntryPoint et bundlers

L'astuce élégante d'ERC-4337 est qu'elle ne modifie pas le format des transactions Ethereum. Elle introduit plutôt un mempool parallèle de plus haut niveau, rempli d'objets appelés UserOperations. Voyez une UserOperation comme un « souhait de transaction » qui contient tout ce qu'une transaction Ethereum normale contiendrait, plus des champs supplémentaires pour les fonctionnalités de smart account : l'adresse du smart account, la logique de signature, le mode de paiement du gaz, et ainsi de suite.

Lorsque vous souhaitez effectuer une action avec un smart account, votre portefeuille construit une UserOperation et l'envoie à une nouvelle brique d'infrastructure : un bundler. Un bundler est un opérateur de nœud, semblable à un mineur ou un validateur, qui surveille ce mempool dédié. Le bundler collecte les UserOperations, les regroupe dans une seule transaction Ethereum standard, puis appelle le contrat EntryPoint. L'EntryPoint est un contrat singleton (une seule adresse pour tout le réseau) qui sait comment valider chaque UserOperation, exécuter la logique du compte, prélever le gaz et régler l'ensemble du lot de manière atomique.

Du point de vue de l'utilisateur, l'expérience est inchangée : on clique sur confirmer, on attend quelques secondes, on voit le résultat. Sous le capot, votre intention est devenue une UserOperation, a été récupérée par un bundler en concurrence avec d'autres bundlers, a été enveloppée dans une vraie transaction, puis exécutée par l'EntryPoint pour le compte de votre smart account. Et tout cela sans exiger la moindre action des détenteurs d'ETH, et sans hard fork. C'est là toute l'élégance d'ERC-4337 : une pure mise à niveau par smart contract, construite par-dessus une couche de base inchangée.

Paymasters : comment fonctionne réellement le sponsoring du gaz

L'un des avantages phares de l'abstraction de compte est que les utilisateurs n'ont plus besoin de détenir des ETH uniquement pour payer le gaz. Le mécanisme qui rend cela possible est le paymaster. Un paymaster est un autre smart contract qui accepte de payer l'EntryPoint à la place de l'utilisateur, en échange de quelque chose : des frais en USDC, un abonnement, la visualisation d'une publicité, ou simplement comme coût marketing absorbé par la dApp pour attirer des utilisateurs.

Lorsque votre portefeuille construit une UserOperation, il peut éventuellement la faire pointer vers un contrat paymaster. L'EntryPoint appellera le paymaster pendant l'exécution et lui demandera : « Voulez-vous payer pour cela ? » Le paymaster vérifie ses propres règles : peut-être l'utilisateur dispose-t-il d'un abonnement API valide, peut-être la transaction est-elle destinée à une dApp sur liste blanche, peut-être l'utilisateur s'est-il inscrit pour un essai gratuit. Si le paymaster accepte, le gaz est prélevé sur la balance d'ETH du paymaster, pas sur la vôtre. S'il refuse, la transaction est révoquée et vous n'êtes pas débité.

Cela ouvre la voie à un parcours d'onboarding standard du web2 depuis des décennies, mais impossible on-chain jusqu'ici. Un jeu peut permettre à de nouveaux joueurs de s'inscrire avec un e-mail, de mint un NFT et de commencer à jouer, sans jamais demander à l'utilisateur d'acheter des ETH sur un exchange au préalable. Un DEX peut subventionner les dix premiers swaps de chaque nouveau portefeuille. Un éditeur de portefeuille peut inclure du gaz gratuit dans son offre premium. Le compromis, c'est que vous faites désormais confiance au code du contrat paymaster, ce qui nous amène aux risques.

La récupération sociale et autres fonctionnalités des smart accounts

Parmi toutes les améliorations rendues possibles par l'abstraction de compte, la récupération sociale est celle qui a le plus de chances de transformer la manière dont le grand public utilise la crypto. L'idée est simple : au lieu d'une seed phrase, vous désignez un ensemble de contacts de confiance, appelés « gardiens », qui peuvent approuver collectivement une récupération si vous perdez l'accès. Les gardiens peuvent être des amis, des membres de votre famille, d'autres portefeuilles que vous possédez, ou même des services institutionnels. Une configuration courante exige que « 3 gardiens sur 5 » se mettent d'accord, de sorte qu'aucun contact compromis seul ne puisse vous vider.

Lorsque la récupération se déclenche, il y a généralement une période d'attente (quelques jours ou quelques semaines) afin que le propriétaire légitime puisse annuler si la récupération était frauduleuse. Pendant cette fenêtre, aucune transaction ne peut être envoyée. Une fois la période écoulée, le nouveau signataire prend le contrôle. Comparé au monde binaire des EOA — « vous avez la seed phrase ou vous ne l'avez pas » — c'est un progrès majeur en termes d'ergonomie. Cela signifie aussi qu'un ordinateur portable volé n'est plus une urgence absolue : un voleur devrait compromettre plusieurs gardiens avant l'expiration du délai.

Au-delà de la récupération, les smart accounts peuvent proposer des session keys (clés à durée limitée qui ne fonctionnent que pour une dApp spécifique), des plafonds de dépenses quotidiennes, des contrats sur liste blanche, des retraits verrouillés dans le temps, des politiques de signature multi-facteurs, et même des abonnements automatiques. Autrement dit, le type même de garde-fous qu'un compte bancaire offre depuis un siècle. Aucune de ces fonctionnalités n'est gratuite : elles ajoutent toutes de la surface de contrat, et chaque ligne de code est un bug potentiel. Mais l'espace de conception est enfin ouvert.

Les risques à comprendre avant de migrer

L'abstraction de compte est une vraie amélioration, mais elle n'est ni magique ni exempte de risques. Le premier risque est l'EntryPoint lui-même. C'est un contrat singleton, ce qui signifie qu'une seule adresse traite chaque transaction d'abstraction de compte sur Ethereum. Si un bug y était découvert, le rayon d'impact serait immense. L'EntryPoint a été audité à plusieurs reprises et est volontairement minimaliste, mais l'histoire de la DeFi regorge de contrats audités qui ont quand même perdu de l'argent. Traitez le risque lié à l'EntryPoint comme un risque de couche de base pour les smart accounts.

Le deuxième risque concerne les abus et les bugs des paymasters. Un paymaster est un contrat que d'autres personnes peuvent appeler, et tout code accessible à des entrées non fiables est une cible. Il y a déjà eu de véritables exploits où des paymasters mal écrits ont été vidés ou utilisés comme armes de déni de service. Si une dApp vous propose de sponsoriser votre gaz, vous faites confiance à l'implémentation de son paymaster. Si le sponsor du paymaster n'a plus d'ETH, vos transactions échoueront tout simplement, ce qui est ennuyeux mais pas catastrophique.

Le troisième risque est la compromission du signataire. La récupération sociale résout le risque de perte de seed phrase, mais elle ne règle pas le problème, bien plus courant, de quelqu'un qui vous pousse à signer une transaction malveillante. Un smart account exigeant une signature 2 sur 3 pour envoyer des fonds reste vulnérable à une attaque de phishing qui obtient les deux signatures. La fonctionnalité de récupération sociale n'est utile que si vous l'utilisez avec précaution, avec des gardiens indépendants et qui comprennent leur rôle. Choisissez des gardiens techniquement compétents, géographiquement分散és et peu susceptibles d'être piégés par la même arnaque que celle qui vous a trompé.

Enfin, il y a le risque opérationnel. Les bundlers sont une nouvelle brique d'infrastructure exploitée par des opérateurs indépendants, et le réseau est aujourd'hui plus décentralisé qu'il y a un an, mais reste moins mature que la couche de base Ethereum sous-jacente. Si le bundler sur lequel vous comptez tombe hors ligne, votre transaction sera simplement redirigée vers un autre, mais il est bon de savoir que l'expérience utilisateur dont vous bénéficiez dépend de la santé de cette nouvelle couche.

Portefeuilles concrets et infrastructures utilisant ERC-4337

Quelques équipes déploient des comptes intelligents en production depuis la sortie d'ERC-4337 en mars 2023. Safe, anciennement Gnosis Safe, a été le premier compte intelligent multi-signature et reste l'une des infrastructures Ethereum les plus auditées. Les modules Safe permettent désormais aux utilisateurs ordinaires d'ajouter des fonctionnalités d'abstraction de compte par-dessus, notamment les clés de session et la récupération, sans perdre le modèle de sécurité éprouvé de Safe.

Stackup est un fournisseur orienté développeurs qui propose un SDK de compte intelligent ainsi qu'un service de bundler et de paymaster hébergé, ce qui permet à de nombreuses équipes de livrer leur première fonctionnalité d'abstraction de compte sans avoir à construire une infrastructure à partir de zéro. Biconomy est un autre fournisseur d'abstraction de compte de longue date, populaire auprès des dApps qui souhaitent sponsoriser les frais en stablecoins plutôt qu'en ETH. Parmi les autres noms notables, citons ZeroDev, Account Kit d'Alchemy, Pimlico pour l'infrastructure de bundler, et Etherspot. Côté portefeuille, l'écosystème comprend Ambire, Braavos sur Starknet (une chaîne différente mais la même idée), ainsi que les fonctionnalités expérimentales de compte intelligent de MetaMask.

Pour les utilisateurs, l'expérience pratique varie aujourd'hui. Certains portefeuilles masquent entièrement la complexité du compte intelligent : vous vous connectez avec une passkey ou un identifiant social, et la gestion des clés sous-jacente est abstraite. D'autres exposent directement la configuration du gardien. Le marché est encore en consolidation, et le portefeuille que vous choisissez aujourd'hui n'est peut-être pas celui que vous utiliserez dans deux ans, ce qui est en soi une raison de comprendre la mécanique sous-jacente plutôt que de faire aveuglément confiance à un fournisseur.

Ce que cela signifie pour l'utilisateur crypto moyen

Si vous utilisez actuellement un portefeuille EOA classique, vous n'avez pas besoin de migrer demain. Votre adresse et votre solde existants continueront de fonctionner exactement comme avant, et la couche de base d'Ethereum n'a pas changé. Ce qui évolue, c'est l'ensemble des fonctionnalités auxquelles vous pouvez adhérer, et la vitesse à laquelle ces fonctionnalités deviennent utilisables pour les utilisateurs non techniques.

Le parcours de migration réaliste pour la plupart des gens se présente ainsi : conservez vos avoirs principaux à long terme dans un EOA adossé à un portefeuille matériel auquel vous faites confiance, et expérimentez les comptes intelligents pour les interactions avec les dApps, les jeux, ou des soldes plus modestes où les gains d'UX justifient le risque contractuel supplémentaire. Au cours des prochaines années, à mesure que les audits s'accumulent et que les standards mûrissent, attendez-vous à ce que davantage de portefeuilles fassent des comptes intelligents le réglage par défaut, et que les EOA deviennent le cas particulier. La transition est progressive par conception ; rien dans ERC-4337 ne vous oblige à migrer, et cette liberté de choix est en soi une fonctionnalité.

Comment suivre l'abstraction de compte de manière intelligente

L'abstraction de compte évolue rapidement : de nouveaux fournisseurs de portefeuilles, des designs de paymaster et des propositions de standards arrivent chaque mois, et les voix les plus bruyantes sur Crypto Twitter ne sont pas toujours les plus fiables. Suivre quelles équipes attirent de vrais utilisateurs, quels audits résistent et quelles failles apparaissent est un travail à temps plein, et la plupart des gens ont mieux à faire. Zippfeed met en avant les actualités de l'abstraction de compte avec un score de sentiment (bullish, neutral, ou bearish) et une note d'importance, pour vous permettre de distinguer les véritables avancées de protocole du battage médiatique et de décider par vous-même quand, ou si, vous devez migrer vos propres fonds.

Questions fréquemment posées

L'ERC-4337 est-il sûr à utiliser ?
L'ERC-4337 lui-même est un standard, pas un produit, donc la sécurité dépend du smart account, du bundler et du paymaster que vous choisissez. Le contrat EntryPoint a été audité à plusieurs reprises, mais les smart accounts restent plus récents et moins éprouvés que les hardware wallets, et les exploits passés dans la DeFi montrent qu'un code audité n'est pas forcément un code sûr. Considérez toute migration comme une expérimentation délibérée et à faibles risques dans un premier temps.
Comment l'abstraction de compte supprime-t-elle les phrases de récupération ?
Les smart accounts remplacent la phrase de récupération unique par une récupération programmable, le plus souvent via un modèle de « social recovery » où des contacts de confiance appelés guardians peuvent approuver collectivement un nouveau signataire si vous perdez l'accès. La phrase de récupération existe toujours en dessous, mais elle peut être stockée dans un coffre matériel ou répartie entre les guardians, pour qu'aucun point unique de défaillance ne puisse tout compromettre. Ce n'est pas « aucune clé du tout » ; c'est une redistribution de la confiance.
Devrais-je migrer mon portefeuille ETH principal vers un smart account ?
La plupart des utilisateurs soucieux de sécurité conservent leurs avoirs principaux et à long terme dans un EOA backed par un hardware wallet et utilisent les smart accounts pour les interactions avec les dApps, les tests et les soldes plus modestes. Les smart accounts apportent de la flexibilité mais ajoutent aussi de la surface de contrat, une dépendance à l'EntryPoint et un risque lié au paymaster, donc le compromis dépend de l'importance que vous accordez aux gains d'UX par rapport à la surface d'attaque supplémentaire. Ceci est une vulgarisation, pas un conseil financier ; faites vos propres recherches avant de déplacer des fonds importants.
Quelle est la différence entre ERC-4337 et EIP-3074 ?
L'ERC-4337 ajoute un mempool parallèle d'UserOperations et un contrat EntryPoint au-dessus d'Ethereum, donc les smart accounts fonctionnent sans modifier le protocole de base. L'EIP-3074, en revanche, aurait changé le format des transactions Ethereum pour permettre aux EOA de déléguer le contrôle à un smart contract, ce qui nécessitait une mise à jour du réseau et soulevait des préoccupations de sécurité plus invasives. La communauté s'est largement ralliée à l'ERC-4337 parce qu'il se déploie sans hard fork, bien que l'EIP-7702 dans la mise à jour Pectra ait ensuite ajouté certaines idées du 3074 sous une forme différente.
Tokens associés
$ETH