Comment l'abstraction des comptes EIP-4337 améliorera-t-elle l'expérience utilisateur (UX) d'Ethereum ?
TechFlow SélectionTechFlow Sélection
Comment l'abstraction des comptes EIP-4337 améliorera-t-elle l'expérience utilisateur (UX) d'Ethereum ?
Comment l'EIP-4337 tente-t-il de résoudre la complexité d'expérience utilisateur sur Ethereum grâce à l'abstraction des comptes (Account Abstraction) ?
Auteur original : Nishil, chercheur chez Biconomy
Traduit par : DeFi 之道
L'un des principaux inconvénients d'Ethereum est sa complexité d'utilisation. Voyons comment la proposition EIP-4337, élaborée par les chercheurs de Nethermind et OpenGSN, tente de résoudre ce problème grâce à l'abstraction des comptes (Account Abstraction).
Commençons donc par le sens de l'abstraction des comptes (AA).
I. Définition de l'abstraction des comptes (AA)
L'abstraction des comptes permet aux utilisateurs d'utiliser leurs comptes de manière simplifiée, en réduisant les exigences de compréhension des processus sous-jacents.
Tout comme nous utilisons un compte Gmail sans savoir comment il fonctionne.
Grâce à l'abstraction des comptes, nous pouvons nous éloigner du monde effrayant des phrases secrètes (mnémoniques).
Nous pouvons activer différentes options de signature, les frais de gaz peuvent être pris en charge par une application décentralisée (Dapp) ou payés via monnaie fiduciaire, etc.
Maintenant que nous savons ce qu'est l'abstraction des comptes (AA), voyons comment l'implémenter sur Ethereum.
II. Comment implémenter l'abstraction des comptes sur Ethereum
Actuellement, il existe deux types de comptes sur Ethereum : les comptes contrôlés par des clés externes (EOA) et les comptes de contrats intelligents.
-
Les comptes contrôlés par des clés externes (EOA) sont contrôlés par une paire de clés (publique et privée) de l'utilisateur. C’est la méthode la plus couramment utilisée par les utilisateurs pour interagir avec Ethereum. Des services comme Metamask (portefeuille) servent d’interface pour interagir avec ces comptes.
-
Les comptes de contrats intelligents ne sont pas contrôlés par une clé privée, mais par leur propre code. Par exemple, tous les protocoles DeFi sont gérés par des comptes de contrats intelligents.
Le problème avec Ethereum est que les comptes contrôlés par des clés externes (EOA) bénéficient de privilèges que n'ont pas les comptes de contrats intelligents. L'exemple le plus marquant est la capacité à initier des transactions. Actuellement, seuls les EOA peuvent le faire.
Ceci pose problème car les fonctionnalités des EOA sont codées en dur dans le protocole Ethereum, sans possibilité de personnalisation.
Par exemple : Gmail vous permet d’activer l’authentification à deux facteurs (2FA) sur votre compte. Aujourd’hui, une telle personnalisation n’est pas possible sur Ethereum.
Les EOA sur Ethereum présentent les limitations suivantes :
-
Les utilisateurs ne peuvent pas utiliser de schémas de signature personnalisés. ECDSA est le schéma de signature typique utilisé par Ethereum pour générer les paires de clés publiques et privées.
-
Les frais de gaz doivent être payés en cryptomonnaie native ($ETH).
-
Puisque votre clé privée est votre compte, perdre cette clé signifie perdre votre compte.
Tous ces problèmes peuvent être facilement résolus par des portefeuilles intelligents, car ils autorisent une logique personnalisée.
Mais comme mentionné précédemment, les transactions sur Ethereum ne peuvent être initiées que par des comptes contrôlés par des clés externes (EOA) sécurisés par ECDSA, et non par des portefeuilles intelligents.
Vous vous demandez peut-être maintenant — pourquoi ne pas simplement modifier cela ?
Eh bien, l'EIP-2938 est une voie proposée pour résoudre ce problème. Il introduit des modifications au protocole Ethereum permettant d’initier des transactions depuis des contrats intelligents plutôt que depuis des EOA.
Mais le problème est qu’il nécessite des changements majeurs au protocole.
C’est pourquoi les chercheurs de Nethermind et OpenGSN, aidés par Vitalik Buterin, ont proposé l'EIP-4337.
Cette proposition présente une solution permettant d’apporter « l’abstraction des comptes » à Ethereum sans aucune modification du protocole de couche consensus.
Plutôt que de modifier la logique même de la couche consensus, elle reproduit la fonctionnalité actuelle du pool de transactions (mempool) dans un système de niveau supérieur.
Le processus comporte plusieurs composants actifs, notamment :
-
Les opérations utilisateur (User operations)
-
Les bundlers (assembleurs)
-
Le paymaster (facultatif)
Examinons maintenant chacun de ces concepts un par un.
La proposition introduit le concept d’« opérations utilisateur », qui nous permettent d’intégrer des fonctionnalités personnalisées dans nos portefeuilles intelligents.
Les opérations utilisateur regroupent l'intention de l'utilisateur, la signature et d'autres données destinées à la validation.
Image illustrative :
Voici le flux général pour initier une transaction via un portefeuille intelligent :
1. Alice (l’utilisateur) lance une « opération utilisateur » contenant la transaction qu’elle souhaite exécuter ;
2. Elle envoie cette opération vers un « pool d’opérations utilisateur » de haut niveau.
3. L’opération est partiellement validée, puis diffusée sur un réseau de nœuds P2P.
4 — L’opération est sélectionnée pour exécution par un « bundler ». Tout le monde peut devenir bundler : un chercheur MEV, un validateur, vous ou moi, etc.
5 — Le bundler regroupe ensuite toutes les opérations en une seule grande transaction.
6 — Le bundler inclut ce bloc, avec d’autres transactions, dans un bloc Ethereum.
Analysons maintenant la fonction du bundler pour comprendre comment les transactions sont exécutées et validées.
1 — Le bundler achemine la transaction vers un contrat intelligent global appelé « point d’entrée » (entry point).
2 — Ce contrat global parcourt chaque opération utilisateur et appelle la « fonction de vérification » située dans le portefeuille intelligent.
3 — Le portefeuille exécute cette fonction pour valider la signature de l’opération utilisateur et rémunérer le bundler pour avoir assemblé les transactions.
4 — Le portefeuille exécute ensuite une opération pour réaliser la transaction spécifiée dans l’opération utilisateur.
5 — Après exécution, le gaz restant est remboursé au portefeuille.
Cette EIP propose également le concept de « paymaster » (payeur).
Les utilisateurs peuvent désormais, au lieu de dépendre de leur portefeuille, faire en sorte qu’un paymaster prenne en charge leurs frais de transaction.
La fonction de prise en charge des frais de transaction offre de nombreux cas d’usage. Les plus fréquemment cités sont :
-
Permettre aux développeurs d’applications de payer les frais pour leurs utilisateurs ;
-
Permettre aux utilisateurs de payer les frais en jetons ERC20, le contrat agissant comme intermédiaire pour collecter ces jetons ;
III. Qu’est-ce que l’abstraction des comptes signifie pour nous ?
Tout ceci est extrêmement excitant, mais pourquoi devrions-nous nous en soucier ? Eh bien, pour plusieurs raisons.
La proposition permet l’utilisation de schémas de signature personnalisés. Les utilisateurs peuvent désormais utiliser les schémas intégrés des appareils iOS et Android, transformant chaque téléphone en un portefeuille matériel.
Elle permet un support natif des signatures multiples sur Ethereum. Désormais, deux utilisateurs ou plus peuvent approuver une même transaction, renforçant ainsi la sécurité.
La récupération sociale devient possible. Si un utilisateur perd sa clé, il peut demander à ses amis ou à sa famille de l’aider à restaurer son compte.
Voilà, c’est tout pour cette proposition.
Ce document introduit plusieurs voies innovantes, et j’espère les avoir expliquées clairement. Il sera passionnant de voir les cas d’usage développés par les équipes afin d’offrir aux utilisateurs une meilleure expérience.
Bienvenue dans la communauté officielle TechFlow
Groupe Telegram :https://t.me/TechFlowDaily
Compte Twitter officiel :https://x.com/TechFlowPost
Compte Twitter anglais :https://x.com/BlockFlow_News













