Portefeuilles de contacts intelligents normalisés EIP-4337 et infrastructure associée. Mais l'abstraction de compte en est encore à ses débuts et son adoption est faible. Par exemple, de nombreux Layer2 ne le supportent pas encore. Ces contraintes signifient que les utilisateurs sont toujours confrontés à une courbe d'apprentissage en profondeur et à un coût d'utilisation énorme.
En introduisant une couche proxy, les portefeuilles Account Abstraction (« AA ») visent à réduire les barrières à l'entrée des portefeuilles personnels et à offrir aux utilisateurs des systèmes de compte plus faciles à utiliser. En particulier, les portefeuilles AA utilisent des contrats intelligents comme comptes et ont introduit une couche proxy entre les contrats intelligents et les utilisateurs, permettant au proxy d'interagir avec la blockchain au nom des utilisateurs. En conséquence, les portefeuilles AA libèrent les utilisateurs finaux du fardeau de la gestion de concepts complexes de blockchain tels que les clés privées et peuvent être facilement gérés via des e-mails ou des téléphones.
Les portefeuilles AA sont programmables et offrent une plus grande flexibilité dans la gestion et les comportements des comptes. Ils sont également évolutifs et hautement personnalisables, ce qui permet d'introduire de nouvelles fonctionnalités et améliorations sans mettre à niveau l'ensemble du mécanisme de consensus d'Ethereum.
Cela dit, nous pensons que la sécurité est primordiale pour Account Abstraction. Étant donné que les transactions sur la blockchain sont infalsifiables et irréversibles, si le compte d'un utilisateur est compromis, des pertes irréparables peuvent survenir. Par conséquent, lors de la conception des portefeuilles AA, les différents aspects de la sécurité doivent être pris en compte, notamment ceux liés à la gestion et à l'utilisation des comptes, au stockage et à la protection des clés privées, à la confirmation et à l'autorisation des transactions, etc.
Dans cet article, nous examinerons les fonctionnalités de sécurité et les vulnérabilités des portefeuilles AA, discuterons de la manière de trouver un équilibre entre l'expérience utilisateur et la sécurité, et explorerons comment les solutions AA évolueront ensuite.
De nombreuses propositions ont été faites pour améliorer et standardiser l'abstraction de compte sur Ethereum, EIP-4337 étant la dernière avancée, qui deviendra plus tard ERC-4337. ERC-4337 offre une approche innovante qui permet aux transactions d'être initiées par des contrats intelligents plutôt que par des comptes externes (EOA) sans apporter de modifications à la couche de consensus du protocole.
ERC-4337 crée un mempool alternatif pour traiter les transactions séparément du mempool principal du réseau Ethereum. Les actions des comptes et leurs champs de données associés sont regroupés et acheminés vers le mempool, à partir duquel les validateurs les rassemblent et les traitent, créent une « transaction groupée » et les incluent dans les blocs Ethereum.
L'objectif d'EIP-4337 est de rendre les portefeuilles plus flexibles et évolutifs, permettant l'introduction de fonctionnalités telles que la multi-signature et la récupération sociale, ainsi que des algorithmes de signature plus simples et plus efficaces et des signatures sécurisées post-quantiques. Les portefeuilles ERC-4337 bénéficient également d'une flexibilité accrue dans la logique de vérification du portefeuille, prenant en charge les schémas de signature arbitraires et la logique de vérification nonce.
Ces fonctionnalités apportent des avantages importants en matière de sécurité. En particulier, la sécurité des portefeuilles AA est renforcée dans les aspects suivants :
AA améliore la sécurité et la décentralisation des portefeuilles. En ajoutant la prise en charge de fonctionnalités telles que les mécanismes de stockage et de protection multi-sig et de clé privée, les portefeuilles AA peuvent mieux protéger la sécurité des actifs des utilisateurs et assurer la fiabilité des transactions. Cependant, ces mesures de sécurité n'offrent pas une sécurité à 100 % contre les attaques et les failles. Il y a encore de la place pour des recherches et des améliorations continues. Actuellement, le marché se concentre davantage sur le paradigme technologique que sur les besoins et l'expérience des utilisateurs.
Le stockage des clés privées est le maillon le plus vulnérable d'un portefeuille. Il est impératif que les portefeuilles AA garantissent que les clés privées des utilisateurs sont stockées dans des emplacements sécurisés et que de nombreuses mesures sont en place pour empêcher tout accès non autorisé. Les attaques en ligne sont une autre menace majeure pour la sécurité des portefeuilles AA. Les clés privées des utilisateurs peuvent être obtenues par des attaquants par hameçonnage, logiciels malveillants et autres moyens, entraînant le vol de leurs actifs numériques.
Comme mentionné précédemment, dans un portefeuille AA, la fonctionnalité du mempool de transaction d'Ethereum est répliquée dans un système de niveau supérieur. Au lieu de soumettre directement des transactions à la blockchain, les utilisateurs envoient des objets UserOperation au mempool alternatif, à partir duquel les validateurs ou Bundlers les regroupent en une seule « transaction groupée » et l'envoient au contrat Entry Point. Le contrat Entry Point orchestre l'exécution des comptes contractuels et s'assure que le validateur/Bundler est correctement indemnisé pour les frais de transaction.
Ce schéma garantit la sécurité d'un portefeuille en autorisant uniquement le point d'entrée de confiance à amener un portefeuille à effectuer une transaction ou une action telle que le paiement des frais ou l'incrémentation du nonce. Cela rend également les comptes d'utilisateurs plus "programmables".
Par rapport à d'autres propositions telles que EIP-2938 et EIP-3074, EIP-4337 se rapproche le plus de l'abstraction complète du compte sans aucune modification de la couche de consensus. Cependant, il divise le processus de transaction en plusieurs étapes, ce qui entraîne une complexité accrue et plus de frais généraux de gaz que les transactions régulières. Et cela donne également lieu à des failles potentielles. De plus, comme il est incompatible avec le flux de travail des protocoles de portefeuille existants, son adoption pourrait être affectée.
Pour résoudre les problèmes de sécurité susmentionnés, les solutions de portefeuille AA peuvent utiliser diverses mesures pour améliorer encore la sécurité tout en maintenant une bonne expérience utilisateur. Multi-sig est l'un d'entre eux. À savoir, la confirmation de plusieurs utilisateurs est requise pour exécuter une transaction. Cela réduira considérablement la probabilité d'attaques réussies. L'utilisation de portefeuilles matériels pour stocker les clés privées des utilisateurs peut également améliorer la sécurité, car les portefeuilles matériels protègent les clés privées contre le vol en les gardant isolées des appareils connectés à Internet.
Dans la conception des portefeuilles AA, la sécurité doit être une considération primordiale. Bien qu'il soit important de fournir une bonne expérience utilisateur, les défauts de sécurité peuvent exposer les actifs des utilisateurs à des dangers et à des risques, entraînant de graves conséquences. Comment les développeurs doivent-ils trouver un équilibre entre sécurité et expérience utilisateur ? Nous pensons qu'il est nécessaire de considérer au moins les quatre aspects suivants.
Compte tenu de facteurs tels que l'expérience utilisateur et la sécurité, nous pensons que les solutions de portefeuille AA sur Ethereum ont le plus grand potentiel de croissance et de traction. Les solutions AA de l'écosystème Ethereum, telles que zkSync, Fuse Network et zkSafe, sont généralement flexibles, sûres et faciles à utiliser dans leur conception, offrant une bonne expérience utilisateur. Mais ils sont également confrontés à des défis de sécurité et à des problèmes d'évolutivité, y compris les risques de sécurité associés aux contrats intelligents et les défis liés à leur capacité à gérer des charges de travail de transaction élevées. En outre, il convient de noter que Account Abstract en est encore à ses débuts avec un faible taux d'adoption, et d'autres innovations et développements sont nécessaires pour favoriser son adoption et sa maturation.
Les portefeuilles AA créent un marché ouvert en introduisant un réseau sans autorisation de nœuds publics, notamment des Bundlers, des Paymasters et des Signature Aggregators, permettant aux utilisateurs d'obtenir des services de haute qualité avec les frais les plus bas. Dans une perspective à court et moyen terme, la capacité des fournisseurs d'infrastructure à déployer rapidement et de manière personnalisée les Bundlers, Paymasters et Signature Aggregators sera mise à l'épreuve. La concurrence qui en résultera encouragera l'innovation et conduira finalement à l'optimisation de la sécurité et de l'expérience utilisateur.
Pendant ce temps, les fournisseurs d'infrastructure tels que StackUp développeront probablement des services modulaires Bundler et Paymaster et les rendront progressivement sans autorisation. En outre, il existe un besoin pressant d'outils d'échafaudage pour accélérer les développements frontaux afin que les développeurs puissent se concentrer davantage sur la logique métier. Des bibliothèques associées pour le développement de dapp comme ether.js sont également nécessaires. Ils pourraient encapsuler des fonctions telles que la création de portefeuilles avec les réseaux sociaux Web2 ou les e-mails, le déploiement rapide de Paymasters et d'agrégateurs de signature, ainsi que la création, la signature et l'envoi d'UserOperations et la surveillance des événements associés, etc. Ces outils simplifieront l'intégration des dapps avec différents portefeuilles.
Dans une perspective à moyen et long terme, de nouvelles normes de compte émergeront et certaines d'entre elles pourraient même être en mesure de séparer l'authentification de compte des portefeuilles de contrats intelligents, permettant aux utilisateurs de transporter leurs données de compte d'un portefeuille à un autre. Et à mesure que les barrières technologiques s'abaisseront et que les nouveaux produits deviendront de plus en plus homogènes, la concurrence pour les portefeuilles AA s'intensifiera. Des innovations plus progressives, y compris, par exemple, des services d'infrastructure sans autorisation et modulaires, l'intégration avec des services existants, des SDK dapp et des couches de compte indépendantes, seront nécessaires pour améliorer la flexibilité et l'expérience utilisateur au niveau supérieur.
Également publié ici .