EIP-4337 : Comment l'abstraction de compte redéfinit les transactions Ethereum

Aperçus de recherche pour comprendre la prochaine génération de gestion des comptes Ethereum

L'abstraction de compte (AA) représente un changement fondamental dans notre interaction avec Ethereum. En découplant la validation des transactions de l'exécution et en réimaginant l'architecture des portefeuilles, cette proposition aborde des points de friction critiques qui ont historiquement empêché l'adoption généralisée. L'introduction de l'EIP-4337 rend cette vision pratique sans nécessiter de modifications au protocole de base d'Ethereum.

La Fondation : Comprendre le Modèle de Compte d'Ethereum

Pour comprendre pourquoi l'abstraction des comptes est importante, nous devons d'abord examiner les deux types de comptes qui existent actuellement sur Ethereum. Les comptes externes (EOAs) sont contrôlés par des clés privées et des phrases de récupération - l'approche traditionnelle utilisée par la plupart des utilisateurs. Les comptes de contrat (CAs), en revanche, fonctionnent selon les règles définies par des contrats intelligents.

Ce système binaire crée des limitations inhérentes. Les comptes externes (EOA) ne peuvent pas exécuter automatiquement une logique de transaction sophistiquée, tandis que les portefeuilles de contrats intelligents nécessitent des frais de gaz et des coûts de déploiement. L'abstraction de compte comble cette lacune en permettant à la logique des contrats intelligents de gouverner les EOAs, créant ce que nous appelons des portefeuilles programmables. Cela ouvre des possibilités comme les transactions en lot, les schémas de signature personnalisés et les transactions sponsorisées - des fonctionnalités qui semblent standard dans la finance traditionnelle mais restent insaisissables dans la crypto.

Pourquoi la communauté Ethereum a adopté cette solution

Les points de douleur que l'AA aborde sont concrets et répandus. Considérez les frictions auxquelles les utilisateurs sont confrontés : gérer les phrases de récupération, payer des frais de gaz pour des opérations de base, récupérer des comptes perdus ou autoriser des actions par lots une transaction à la fois. L'abstraction de compte rationalise ces expériences en introduisant des modèles de sécurité de compte personnalisables et des mécanismes de paiement de gaz flexibles.

Au-delà de l'expérience utilisateur, les développeurs obtiennent quelque chose d'aussi précieux : un cadre programmable. Plutôt que de se construire sur des contraintes on-chain rigides, ils peuvent maintenant concevoir une logique de vérification et d'exécution des transactions adaptée à des cas d'utilisation spécifiques. Cette flexibilité représente une expansion fondamentale de ce qui est possible sur Ethereum.

L'évolution : De l'EIP-2938 à l'EIP-4337

Le chemin vers l'abstraction de compte n'était pas simple. En 2020, deux propositions concurrentes ont émergé :

EIP-2938 propose d'élever les comptes de contrat au statut de “niveau supérieur”, leur permettant de payer des frais et d'exécuter des transactions directement. Cela aurait nécessité des changements au niveau du protocole, rendant cela techniquement ambitieux mais opérationnellement risqué.

EIP-3074 a introduit deux nouveaux codes d'opération—AUTH et AUTHCALL—permettant aux EOAs de déléguer l'autorité des transactions à des contrats intelligents. Bien que novateur, cette approche a également nécessité des modifications du protocole de base et a suscité des préoccupations au sein de la communauté concernant la complexité de l'implémentation.

Les deux propositions ont été suspendues en raison du travail considérable requis par la couche de consensus d'Ethereum. Tout bug introduit à ce niveau nécessiterait un hard fork pour être résolu, ce qui représente un risque inacceptable.

La percée est survenue avec EIP-4337, qui réalise l'abstraction de compte sans modifier la couche de base d'Ethereum. Au lieu de cela, elle introduit une infrastructure parallèle pour le traitement des transactions, changeant fondamentalement la façon dont l'écosystème aborde le problème.

EIP-4337 : L'architecture qui fonctionne

L'éclat de l'EIP-4337 réside dans son implémentation au niveau de l'application. Plutôt que de modifier les règles fondamentales du protocole, il introduit de nouveaux acteurs et processus qui coexistent avec le traitement traditionnel des transactions :

UserOperation objets représentent des intentions de transaction des titulaires de compte. Contrairement aux transactions standard, ils sont créés avant d'être signés, offrant au système une flexibilité quant à la manière dont les signatures sont validées et exécutées.

Les Bundlers agissent comme des nœuds spécialisés qui collectent plusieurs UserOperations, les agrégant en transactions de bundle uniques. Pensez à eux comme des agrégateurs de transactions qui regroupent les opérations pour plus d'efficacité.

Le contrat de point d'entrée sert de hub d'exécution. Il reçoit des UserOperations groupées, valide leurs signatures en utilisant une logique spécifique au compte, et déclenche l'exécution via la fonction ExecuteUserOp.

Les portefeuilles de contrats intelligents remplacent les EOA traditionnels en tant qu'interface principale du compte. Ceux-ci sont contrôlés par une logique programmable plutôt que par la cryptographie à clé privée seule.

Les contrats Paymaster introduisent une flexibilité révolutionnaire dans le paiement des frais de gaz. Les utilisateurs peuvent désormais payer les frais de transaction en utilisant n'importe quel jeton, faire sponsoriser les frais par des applications, ou utiliser une logique de frais entièrement personnalisée. Cela élimine l'ETH comme prérequis pour chaque interaction.

Les usines de portefeuilles permettent une création efficace de nouveaux portefeuilles de contrats intelligents, réduisant les frais généraux pour les utilisateurs rejoignant l'écosystème.

Les agrégateurs valident des ensembles de signatures, permettant des optimisations cryptographiques qui réduisent les coûts de vérification en chaîne.

Comment les transactions circulent dans un Ethereum activé par AA

Traçons un exemple concret de la façon dont une transaction fonctionne sous EIP-4337 :

Étape 1 : Exprimer l'intention L'utilisateur crée une UserOperation spécifiant les détails de sa transaction, y compris les frais maximaux (maxFeePerGas, maxPriorityFee), l'interaction avec le contrat cible et les données de signature. Il est important de noter que la signature n'a pas encore été appliquée : le système détermine comment l'interpréter en fonction des règles du contrat de portefeuille.

Étape 2 : Diffusion dans le Mempool L'UserOperation entre dans un pool de mémoire dédié, distinct des transactions Ethereum standard. Ce mempool spécialisé permet aux bundlers d'appliquer une logique personnalisée pour l'ordre et la sélection.

Étape 3 : Regroupement Les regroupements analysent le mempool des UserOperation, sélectionnent des opérations et les agrègent. Ils appellent ensuite la fonction handleOps du contrat d'entrée avec le regroupement. Si le regroupement fonctionne également comme constructeur de blocs, il peut l'inclure directement dans le prochain bloc. Sinon, ils passent par des infrastructures telles que MEV-Boost ou des protocoles de séparation des proposeurs et des constructeurs pour garantir l'inclusion.

Étape 4 : Validation Le contrat d'entrée utilise validateUserOp pour vérifier la signature de chaque opération selon les règles du contrat de portefeuille. Après validation, les bundlers ajoutent le contrat d'entrée à la liste blanche, établissant une relation de confiance.

Étape 5 : Exécution La fonction ExecuteUserOp du contrat de portefeuille se déclenche, effectuant la logique de transaction réelle. Le bundle est maintenant complet et inclus dans la blockchain Ethereum.

Comparaison des architectures de portefeuille : EOA vs. MPC vs. AA

Fonctionnalité Portefeuilles EOA Portefeuilles MPC Portefeuilles AA
Type de compte Possédé de manière externe Possédé de manière externe Contrat intelligent
Coût de création Faible Faible Plus élevé
Frais de transaction Standard Standard Variable (sponsor-able)
Paiement des frais ÉTH uniquement ÉTH uniquement Plusieurs tokens, tiers
Opérations par lots Aucun Aucun Supporté
Méthode de signature ECDSA uniquement ECDSA uniquement Personnalisable
Gestion des clés Manuel Manuel Basé sur contrat
Récupération de compte Non disponible Possible (hors ligne) Mécanismes intégrés
Modèle de sécurité Pas de norme Option de récupération hors ligne Règles imposées par la chaîne
Intégration de l'écosystème Excellent Limité En croissance

Pourquoi l'EIP-3074 a été mis de côté

Avant que l'EIP-4337 ne prenne de l'ampleur, l'EIP-3074 représentait l'alternative principale pour l'abstraction de compte. Il a introduit les mêmes codes d'opération AUTH et AUTHCALL que nous avons mentionnés précédemment. Voici pourquoi il n'a pas progressé :

Le problème de changement de protocole : L'EIP-3074 nécessitait des modifications au niveau du consensus, ce qui signifie que les nœuds principaux d'Ethereum devraient adopter un nouveau comportement. Si des bugs de mise en œuvre apparaissaient, le seul recours serait un hard fork disruptif affectant l'ensemble du réseau.

Flexibilité limitée : Bien que l'EIP-3074 ait permis aux EOA d'agir comme des contrats intelligents, il a préservé l'ECDSA comme mécanisme de signature fixe. Cela a empêché les développeurs d'expérimenter avec des approches cryptographiques novatrices ou de mettre en œuvre une logique de vérification plus sophistiquée.

L'Avantage : La force principale de l'EIP-3074 était son élégance : tout EOA pouvait acquérir des capacités similaires à celles des contrats intelligents sans déployer de contrats. Cependant, cette simplicité se payait par une personnalisation limitée.

En revanche, l'EIP-4337 accepte des processus on-chain plus complexes pour éviter le risque au niveau du protocole, un compromis que la communauté jugeait valable.

Le Pont : EIP-5003 et Évolution des Portefeuilles

Bien que l'EIP-3074 soit toujours en attente, la conversation n'est pas terminée. L'EIP-5003 introduit le code opération AUTHUSURP, qui fonctionne aux côtés de l'EIP-3074 pour permettre aux EOA existants d'évoluer vers des comptes de contrats intelligents.

Voici un scénario pratique : le compte d'Alice autorise l'adresse de Bob à agir en son nom conformément à l'EIP-3074. En utilisant AUTHUSURP, l'adresse de Bob peut alors déployer du code à l'adresse d'Alice, transformant ainsi son compte d'un EOA en un CA. Cette migration permet à Alice d'accéder à des schémas de signature personnalisés et à une sécurité renforcée sans abandonner son adresse ou sa clé privée d'origine.

Ce modèle de conception suggère un chemin de migration progressif pour l'écosystème plutôt qu'une transition abrupte.

L'impact pratique : des barrières plus basses, une sécurité renforcée

Alors qu'Ethereum continue de viser l'adoption grand public, l'abstraction de compte EIP-4337 s'attaque à des obstacles tangibles. Les utilisateurs n'ont plus besoin de conserver de l'ETH pour les paiements de gaz ou de mémoriser des phrases de récupération comme principal mécanisme de sécurité. Les développeurs peuvent concevoir des portefeuilles qui intègrent des mécanismes de récupération, des opérations par lots et une logique d'autorisation personnalisée. Les applications peuvent parrainer les transactions des utilisateurs, réduisant ainsi les frictions lors de l'intégration.

La sécurité s'améliore également. Les portefeuilles de contrats intelligents peuvent mettre en œuvre une validation multi-signature, des opérations verrouillées dans le temps, des limites de dépenses et d'autres mesures de protection au-delà de la cryptographie clé publique de base.

L'évolution de l'écosystème Ethereum vers l'abstraction des comptes représente non pas une simple mise à niveau technique, mais une réinvention fondamentale de la façon dont les comptes fonctionnent, rapprochant ainsi les interactions crypto de l'expérience fluide que les utilisateurs attendent des applications modernes.

ETH-0.35%
Voir l'original
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
  • Récompense
  • Commentaire
  • Reposter
  • Partager
Commentaire
0/400
Aucun commentaire
  • Épingler
Trader les cryptos partout et à tout moment
qrCode
Scan pour télécharger Gate app
Communauté
Français (Afrique)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)