EIP7702 : percée majeure dans l'abstraction de compte Ethereum et perspectives d'avenir

Analyse approfondie du passé et de l'avenir de l'abstraction des comptes Ethereum

Cet article est divisé en deux grandes parties :

La première partie commence avec la première proposition AA de 2015, le système a organisé le contenu principal des propositions EIP jusqu'à présent, a exploré le développement historique des propositions AA et a effectué une évaluation globale des différentes solutions.

La deuxième partie se concentre sur la comparaison des retours de marché moroses après la proposition de l'EIP4337, et analyse en profondeur l'EIP7702 qui sera inclus dans la prochaine mise à niveau d'Ethereum. Une fois cette proposition fusionnée, elle changera complètement la forme des applications sur la chaîne.

EIP-7702 a une signification révolutionnaire, examinons cela en détail.

1. Contexte de l'abstraction du compte

1.1 Signification et positionnement de l'abstraction du compte

Le fondateur d'Ethereum, Vitalik, a de nouveau mis à jour la feuille de route de développement d'ETH à la fin de 2023, mais n'a apporté aucune modification à la définition de l'abstraction de compte. Le modèle dominant passe actuellement de l'EIP-4337 à la prochaine étape "conversion volontaire de comptes EOA".

Plus d'un an après le lancement de l'EIP4337, les utilisateurs l'acceptent généralement mais ne l'utilisent pas largement. Cet environnement de marché contradictoire a accéléré le processus de l'EIP-7702, cette proposition ayant été confirmée pour être intégrée lors de la prochaine mise à niveau.

1.2 État actuel du marché abstrait des comptes

Après un an et demi de développement, l'EIP4337 ne compte que 12 millions d'adresses sur les chaînes principales, dont seulement 6 764 adresses actives sur le réseau principal Ethereum, bien en dessous du nombre d'adresses EOA et CA. Le nombre d'adresses indépendantes sur le réseau principal Ethereum a atteint 270 millions, ce qui montre que l'EIP4337 n'a presque pas de développement substantiel sur le réseau principal.

Cependant, cela n'affecte pas la valeur fondamentale d'AA. La conception de l'EIP4337 est vouée à ne pas résoudre le problème de compatibilité ascendante du réseau principal. Avec l'intégration native d'AA sur divers L2, le nombre d'adresses EIP4337 connaît une croissance explosive sur L2, avec des utilisateurs actifs mensuels atteignant respectivement 1 million et 3 millions sur les chaînes Base et Polygon en juillet.

Par conséquent, le design de l'EIP4337 n'est pas problématique, la situation actuelle provient des différences entre la chaîne principale et le L2, qui nécessitent des solutions adaptées différentes.

Analyse approfondie du parcours passé et futur de l'abstraction des comptes Ethereum

2. Qu'est-ce que l'abstraction de compte ?

L'abstraction de compte résout essentiellement le problème de la séparation des droits de propriété.

Dans l'architecture EVM, il existe deux types de comptes : le compte externe ( EOA ) et le compte de contrat ( CA ). La propriété et le droit de signature de l'EOA sont en réalité détenus par le même sujet. La personne qui possède la clé privée détient non seulement la "propriété du compte", mais peut également "signer le transfert de tous les actifs".

Ceci est déterminé par la structure des transactions du compte Ethereum. Dans les transactions standard, il n'y a pas de champ From, le transfert de fonds est réalisé grâce aux paramètres VRS ( signés par l'utilisateur ) pour déduire l'adresse From. Cette sécurité garantie par la cryptographie conduit à la situation actuelle de fusion des droits de propriété des adresses EOA.

L'effet principal de l'EIP4337 est d'ajouter l'adresse de l'expéditeur dans le champ de transaction, permettant ainsi de séparer la clé privée de l'adresse opérée.

La séparation des droits de propriété est si importante, car la conception de l'EOA a engendré de nombreux problèmes :

  1. Difficulté à protéger la clé privée : perdre la clé privée signifie perdre tous les actifs.
  2. Algorithme de signature unique : le protocole natif ne peut utiliser que l'algorithme ECDSA.
  3. Autorisation de signature trop élevée : pas de multi-signature natif, une seule signature suffit pour exécuter n'importe quelle opération
  4. Les frais de transaction ne peuvent être payés qu'en Éther, les transactions en masse ne sont pas prises en charge.
  5. La confidentialité des transactions est facilement compromise : le trading en face à face permet d'analyser facilement les informations des comptes.

Ces contraintes rendent difficile l'utilisation d'Ethereum pour les utilisateurs ordinaires :

Tout d'abord, l'utilisateur doit détenir de l'ETH et assumer le risque de volatilité des prix. Deuxièmement, l'utilisateur doit gérer une logique complexe de frais. Enfin, bien que de nombreux portefeuilles tentent d'optimiser l'expérience, les résultats sont limités.

Ainsi, la clé réside dans la réalisation de l'abstraction de compte, déconnectant la propriété (Owner) et le droit de signature (Signer), afin de résoudre progressivement les problèmes mentionnés ci-dessus.

Il existe plusieurs solutions dans l'histoire, qui se résument finalement à deux voies.

Analyse approfondie de la voie d'abstraction des comptes Ethereum : passé et avenir

3. Historique des propositions AA

La solution au problème semble avoir plusieurs propositions EIP, mais en fin de compte, il n'y a que deux approches centrales. Chaque EIP non adopté a intégré les problèmes soulevés dans les solutions existantes.

3.1 Première option : convertir l'adresse EOA en adresse CA

Le 15 novembre 2015, Vitalik a proposé une nouvelle structure de compte basé sur des contrats dans l'EIP-101. L'adresse a été modifiée pour ne contenir que du code et de l'espace de stockage, changeant ainsi le mode de paiement des frais de transaction, en transformant les jetons natifs en solde de type ERC20 via des contrats précompilés, simplifiant ainsi les champs de transaction.

Cette transformation de type grand bond en avant modifiera considérablement la conception sous-jacente, permettant à chaque adresse de compte d'avoir sa propre logique de "code". ( est également l'effet que l'EIP-7702 vise à réaliser. ).

Les fonctionnalités dérivées incluent :

  1. Les transactions utilisent davantage d'algorithmes cryptographiques
  2. Possède des caractéristiques de résistance aux attaques quantiques
  3. L'Éther possède des caractéristiques fonctionnelles identiques à celles de l'ERC20.
  4. Améliorer l'espace personnalisé du compte

Le manque de progrès est dû à des pas trop grands, à un manque de considération pour les conflits de hachage de transaction actuels et la sécurité, mais chaque principe d'avantage est devenu une fonctionnalité clé des EIP4337 et EIP7702 suivants.

Par la suite, une série d'EIP tentera de parfaire cette logique :

EIP-859(2018-01-30): abstraction de compte sur la chaîne principale Résoudre les problèmes de déploiement de code, proposer un nouveau code d'opération PAYGAS.

EIP-7702(2024-05-07): configurer le code de compte EOA En tant qu'alternative à l'EIP-3074, cela sera intégré dans le prochain hard fork ETH Prague/Electra.

3.2 Deuxième itinéraire : laisser l'adresse EOA piloter l'adresse CA

EIP-3074(2020-10-15): ajouter les codes d'opération AUTH et AUTHCALL Ajout de deux nouveaux codes d'opération pour permettre à un EOA d'autoriser un contrat à appeler d'autres contrats en son nom.

EIP-4337(2021-09-29) : Implémentation de l'abstraction de compte via le pool de mémoire des transactions Conçu sous l'inspiration de MEV, il peut éviter complètement les modifications des protocoles de couche de consensus. Un nouvel objet UserOperation est proposé, qui est emballé et livré en masse par des bundlers pour exécuter des transactions de contrat.

EIP-5189(2022-06-29): Opération de compte abstrait par un endosseur Optimiser la logique de l'EIP4337, en empêchant les attaques DoS par un mécanisme de pénalité financière.

3.3 Autres propositions soutenant AA

EIP-2718(2020-06-13): enveloppe de paquet de nouveau type de transaction Définir un nouveau type de transaction, en tant qu'enveloppe pour les futurs types de transactions ajoutés.

EIP-3607(2021-06-10): Interdiction de déployer des contrats par des adresses EOA Empêcher le conflit entre l'adresse de déploiement de contrat et l'adresse EOA.

3.4 interprétation de l'évolution du développement du compte abstrait

Tout d'abord, il faut comprendre la valeur après la conversion en CA, qui est essentiellement l'effet réel de l'EIP-4337.

Mais le principal inconvénient de l'EIP-4337 est qu'il va à l'encontre du principe de motivation humaine. Bien qu'il semble meilleur, il se retrouve piégé dans un cercle vicieux de développement du marché. L'incompatibilité des Dapps est insuffisante, les utilisateurs ne souhaitent pas utiliser d'adresses CA, le coût d'utilisation des CA est plus élevé, et il dépend trop de l'incompatibilité des Dapps.

Ainsi, cela n'a jamais pu se généraliser sur le réseau principal d'Ethereum. Le coût est le critère d'évaluation le plus important pour les utilisateurs, il est donc nécessaire de réduire les coûts.

Pour vraiment réduire le GAS, il est nécessaire de faire une mise à niveau à travers un soft fork d'Ethereum lui-même, en modifiant le calcul du GAS ou la consommation de GAS des codes d'opération. Puisqu'il s'agit d'un soft fork, pourquoi ne pas envisager directement l'EIP-7702.

Analyse approfondie du parcours d'abstraction des comptes Ethereum : passé et futur

4. Analyse complète de l'EIP-7702

4.1 Introduction à l'EIP-7702

Grâce à un nouveau type de transaction, il est permis aux EOA de disposer temporairement de fonctionnalités de contrat intelligent dans une seule transaction, prenant en charge les transactions en lot, les transactions sans Gas et la gestion des autorisations personnalisées, sans avoir besoin d'introduire de nouveaux opCodes EVM.

Les utilisateurs peuvent bénéficier de la plupart des fonctionnalités AA sans déployer de contrats intelligents, et même un tiers peut initier des transactions au nom de l'utilisateur, il suffit de signer les informations d'autorisation.

4.2 structure des données

Définir un nouveau type de transaction 0x04, TransactionPayload est le résultat de la sérialisation RLP du contenu suivant :

[chain_id, nonce, max_priority_fee_per_gas, max_fee_per_gas, gas_limit, destination, value, data, access_list, authorization_list, signature_y_parity, signature_r, signature_s]

Ajout de l'objet authorization_list, qui stocke le code que le signataire souhaite exécuter dans l'EOA. L'utilisateur signe la transaction tout en signant le code du contrat à exécuter, sous forme de liste bidimensionnelle, pouvant stocker plusieurs informations d'opération en lot.

authorization_list = [[chain_id, address, nonce, y_parity, r, s], ...]

4.3 cycle de vie de la transaction

4.3.1 Phase de validation

Au début de l'exécution de la transaction, pour chaque tuple de authorization_list :

  1. Récupérer l'adresse du signataire à partir de la signature
  2. Vérifier l'ID de chaîne
  3. Vérifiez si le code du signataire est vide ou délégué.
  4. Vérifier le nonce du signataire
  5. Configurer le code du signataire
  6. Augmenter le nonce du signataire
  7. Ajouter le compte du signataire à la liste des adresses visitées

4.3.2 Phase d'exécution des opérations

La nouvelle version a modifié le comportement de déploiement du code. Le code est chargé à partir du champ d'adresse de authorization_list et exécuté dans le contexte du compte du signataire.

Le code du contrat utilisateur est stocké à une adresse spécifique sur la chaîne, et non directement inclus dans la transaction. Les instructions d'opération et les paramètres associés sont stockés dans le champ data de la charge utile de la transaction.

4.4 La valeur de l'EIP-7702

Des changements ont été apportés à l'ensemble de la chaîne pour les portefeuilles Web3, améliorant l'expérience utilisateur. Les transactions ordinaires initiées par un compte EOA peuvent exécuter diverses logiques, telles que le transfert en masse. Cela affecte l'identification des transactions dans les scénarios CeFi et les frais de retrait et de dépôt.

Briser plusieurs préjugés établis :

  1. Le solde du compte peut diminuer en raison de transactions non provenant de ce compte.
  2. Après le début de l'exécution de la transaction, le nonce EOA peut augmenter de plusieurs.
  3. La logique de protection de la comparaison entre tx.origin et msg.sender est inefficace.
  4. EOA peut émettre des événements
  5. La réception d'actifs ERC20/721/1155 par un EOA peut échouer

4.5 Comparaison entre EIP-7702 et EIP-4337

  1. Avantages d'EIP-7702:
  • gas plus bas, pas besoin de passer par le module entrypoint
  • Le coût de migration des utilisateurs est plus bas, sans besoin de déployer des contrats sur la chaîne à l'avance.
  • Prend également en charge l'exécution des ordres de code : ordre complet et ordre protégé
  1. Inconvénients de l'EIP-7702 :
  • Il s'agit d'une mise à niveau par soft fork, nécessitant un consensus pour être mise en œuvre, avec des modifications importantes.
  • Grande liberté, difficile à auditer, les utilisateurs ont besoin d'une protection de portefeuille fiable.
  • Les changements dans l'architecture d'origine sont importants, de nombreuses infrastructures ne peuvent pas être adaptées directement.
  • EOA obtient la capacité de contrat, mais l'espace de stockage ne peut pas être conservé.
  • Le coût de transaction individuel est légèrement plus élevé, augmentant la partie Calldata.
  • La signature par le destinataire d'un code sans fonction de réception peut entraîner un DoS.
  • La logique de dépôt et de retrait sur la chaîne peut être incohérente
  • Un événement émis par un EOA peut provoquer des problèmes.

Ces inconvénients sont basés sur le résumé actuel du contenu de la proposition EIP7702, la réalisation finale pourrait varier.

Analyse approfondie du parcours d'abstraction de compte Ethereum : passé et futur

5. Résumé

L'abstraction de compte ne peut actuellement être mise en œuvre qu'à la fin du module "Réparer tout". Accélérer le progrès de l'EIP7702 pose principalement des défis en matière de sécurité du système. Bien que le changement soit énorme, il vaut la peine que tous les Dapp étudient l'adaptation car cela réduit les coûts pour les utilisateurs. Les utilisateurs finiront par se ranger du côté de l'EIP7702.

Analyse approfondie du passé et de l'avenir des comptes abstraits d'Ethereum

ETH7.64%
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
  • 5
  • Reposter
  • Partager
Commentaire
0/400
ColdWalletGuardianvip
· Il y a 5h
4337 ne s'est pas tous fait Rug Pull, 7702, ça peut encore se discuter.
Voir l'originalRépondre0
ContractFreelancervip
· Il y a 8h
4337 ce couteau de cuisine ne peut même pas rouler, le prochain plat copieux n'est pas encore arrivé.
Voir l'originalRépondre0
AirdropworkerZhangvip
· Il y a 8h
Oh là là, quand est-ce que Vitalik va améliorer l'expérience utilisateur ? Ce code est vraiment trop compliqué.
Voir l'originalRépondre0
WalletAnxietyPatientvip
· Il y a 8h
Vitalik persiste dans sa petite obsession...
Voir l'originalRépondre0
LadderToolGuyvip
· Il y a 8h
Est-ce que 4337 est nul ou est-ce que je n'ai pas suivi les dernières rumeurs ?
Voir l'originalRépondre0
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)