EIP-7702: Opening the Door to Account Abstraction

È passato un anno e mezzo da quando è stata pubblicata una delle più famose Request for Comment di Ethereum, ERC-4337. Si può dire che ha riacceso gli sforzi di astrazione degli account, ha ricordato alla comunità i suoi vantaggi e ha portato a una miriade di miglioramenti in termini di risparmio di carburante, esperienza utente, ecc. Gli Smart Account (portafogli smart contract) hanno guadagnato terreno e i portafogli Externally Owned Account (EOA) hanno intensificato il loro gioco: il futuro sembrava luminoso!

Ma l'adozione ha rallentato di recente nonostante l'hype per l'astrazione degli account? Sembrerebbe di sì, ma la speranza non è ancora persa: dopo il piuttosto controverso ERC-3074 di inizio anno, entra in gioco l'EIP-7702! Incluso nel prossimo aggiornamento di Pectra Ethereum, questo è (in breve) un cambiamento di protocollo che consentirà agli EOA di beneficiare degli sviluppi dell'astrazione degli account. In questo articolo, esaminiamo questo EIP in dettaglio, quali sono le sfide attuali e come può aprire le porte all'astrazione degli account alle masse!

L'astrazione dell'account è in stallo, ma perché?

Nonostante i grandi progressi nello spazio di astrazione degli account, e in particolare per gli Smart Account, non siamo riusciti a vedere il prossimo miliardo di utenti entrare nello spazio delle criptovalute. Le persone che già vi sono sono o bloccate nei loro fidati wallet EOA o stanno ancora gestendo più wallet su più dispositivi. Perché mai?

Compatibilità

Riteniamo che uno dei motivi principali per cui l'adozione di AA sta rallentando sia che gli utenti non possono migrare/importare i loro account esistenti. Come pionieri nello spazio dei portafogli AA, siamo attivi dalla fine del 2021 e gli utenti ci hanno chiesto più volte "Perché non posso usare lo stesso indirizzo/account" da quando abbiamo lanciato il portafoglio.

Inoltre, fino ad oggi, non tutte le dApp e/o i protocolli supportano le firme di smart contract o accettano la firma di messaggi da account non distribuiti (prima che vengano effettuate transazioni su una rete). Il co-fondatore e CEO di Ambire, Ivo, è l'autore di ERC-6492, una proposta per un modo standard per le dApp di verificare le firme da contratti che non sono ancora stati distribuiti (contratti controfattuali).

Forza dell'abitudine e/o dell'eredità

Le persone tendono a essere creature abitudinarie. Stiamo costruendo nello spazio AA dal 2018 e vediamo una naturale resistenza al cambiamento e al provare cose nuove. Gli utenti si lamentano del loro attuale portafoglio ma sarebbero comunque riluttanti a migrare tutti i loro fondi su un nuovo portafoglio. Le ragioni dietro questo sono varie: ad esempio, hanno posizioni di staking attive, token soul-bound, perché aggiungere un altro portafoglio al loro portafoglio quando sono abituati a quello vecchio, hanno sentito parlare di varie truffe e non si fidano più al 100% di nulla, non sono ancora convinti che gli account AA/Smart siano migliori degli EOA, ecc.

La soluzione: convertire gli EOA in Smart Account o abilitare le funzionalità AA per gli EOA

Bene, cosa succederebbe se il tuo vecchio e fidato portafoglio EOA potesse essere convertito in uno Smart Account o se alcune funzionalità dello Smart Account potessero essere abilitate per esso?

Il primo tentativo: ERC-3074

Avevamo tutti grandi speranze per ERC-3074. In teoria, era la soluzione che stavamo cercando e, da un giorno all'altro, ha ottenuto un'enorme popolarità. Proponeva di delegare il controllo di un EOA esistente a uno smart contract (che sarebbe stato in grado di controllare questo EOA ed effettuare chiamate dal suo indirizzo ma non di avviare transazioni). È stato pubblicato con il suo sidekick ERC-5003, che ha consentito di convertire completamente un EOA in un account smart contract revocando la chiave privata originale.

Sebbene tutto ciò sembrasse molto promettente, c'erano ancora una serie di problemi che causavano reazioni negative da parte della comunità per ERC-3074, ad esempio la mancanza di compatibilità con 4337. Si tornava al punto di partenza e non era esattamente ciò di cui avevamo bisogno.

Qualche settimana fa, l'EIP-3074 ha gettato il mondo degli AA nel caos.

Inizialmente sembrava che fosse sinergico con ERC-4337, poiché fanno cose diverse. Uno abilita la migrazione EOA, un altro abilita i mempool decentralizzati.

Tuttavia, i dettagli concreti non sembravano ottimali: è difficile...

— Ivo e/acc (@Ivshti) 7 maggio 2024

La soluzione attuale: EIP-7702

È chiaro che c'è bisogno di miglioramenti della funzionalità per gli EOA. Le persone vogliono raggruppare le operazioni in un'unica transazione, c'è richiesta di meta-transazioni e gli utenti EOA non sono pronti a convertire completamente i loro EOA in Smart Account e vogliono dare loro autorizzazioni specifiche anziché il controllo globale dell'account.

È qui che entra in gioco EIP-7702, suggerendo di aggiungere un nuovo tipo di transazione che imposta il codice per un EOA durante l'esecuzione. In sostanza, questo tipo di transazione proposto consente agli EOA di agire come Smart Account. Ciò significa che l'EOA ha solo il codice Smart Account durante la transazione e diventa un EOA normale dopo la transazione.

Il co-fondatore di Ethereum Vitalik Buterin ha co-scritto questa proposta in un giorno. A differenza del suo predecessore 3074, sblocca l'intera gamma di funzionalità di astrazione dell'account, è compatibile con l'infrastruttura ERC-4337 esistente (e futura), è basato sulle funzioni per un'integrazione più fluida e richiede solo un'unica autorizzazione, che abilita i vantaggi di Smart Account per gli EOA senza la necessità di hard fork.

EIP-7702 non "converte" gli EOA di per sé: gli account sono ancora alimentati da una singola chiave privata e, sebbene sia possibile abilitare il recupero dell'account, non è possibile revocare la chiave "root". Tuttavia, pensiamo che questa sia la soluzione più sensata da una prospettiva tecnica e anche in termini di UX, poiché la maggior parte dei nativi crittografici è già abituata a questo modello di sicurezza. Una volta che hai messo piede negli Smart Account, puoi creare un nuovissimo Smart Account che non ha una chiave root ed è, ad esempio, un multisig.

EIP-7702 è un enorme passo avanti per l'astrazione degli account. Sostituisce EIP-3074 e risolve molti dei suoi svantaggi.

Inoltre, calmò le tensioni tra gli schieramenti 4337 e 3074.

Non ho mai visto la comunità degli AA così unita 😍😍

Non ci sono praticamente lati negativi. Una piccola cosa è...

— Ivo e/acc (@Ivshti) 8 maggio 2024

Il futuro: astrazione dell'account ibrido

Quindi, come si presenta il futuro? È sicuramente luminoso, con così tanti sforzi per rimuovere l'attrito dall'ecosistema delle criptovalute, renderlo più semplice e intuitivo e unire la vecchia e la nuova tecnologia. La cosa bella è che non solo la Ethereum Foundation, ma anche molti progetti nello spazio stanno lavorando per un AA più nativo, più compatibile e più diffuso.

Diamo un'occhiata all'astrazione dell'account ibrido, ad esempio un approccio innovativo introdotto da Ambire Wallet che si basa sull'astrazione dell'account per riunire EOA e Smart Contract e offrire agli utenti un'esperienza più completa, flessibile e sicura. Integrando le migliori funzionalità degli account di proprietà esterna (EOA), o ciò che chiamiamo account di base e account intelligenti, l'astrazione dell'account ibrido affronta molte delle attuali sfide dell'autocustodia delle criptovalute (ad esempio, onboarding complicato, mancanza di recupero dell'account, ecc.). Ambire consente agli utenti di passare facilmente da un tipo di account all'altro e di sfruttare al meglio sia gli account di base (EOA) che gli account intelligenti all'interno dello stesso portafoglio, cosa che al momento non è possibile fare con nessun altro portafoglio.

Come funziona in pratica l'astrazione dell'account ibrido

Ambire Wallet supporta gli EOA esistenti (ad esempio Metamask, Rabby, Zerion, Rainbow, ecc.) insieme agli Smart Account. Puoi importare un account con la sua frase seed o collegare un portafoglio hardware in un paio di semplici passaggi e continuare a usarlo come faresti sul portafoglio su cui è stato creato, ma con un'esperienza utente molto migliore. Ma non è tutto: durante questo processo, ti verrà data la possibilità di derivare uno o più Smart Account dal tuo Account di base esistente. Immagina questo come un account alias che ne aggiorna la funzionalità e migliora la sicurezza. Viene fatto aggiungendo un sottile strato di astrazione dell'account in cima agli account già associati al tuo portafoglio, che stai importando, e finisci con un nuovo set di indirizzi (che erano già lì ma dovevano essere sbloccati e rivelati).

Inoltre, Ambire Wallet supporta già nativamente ERC-4337 e supporterà anche EIP-7702 quando diventerà parte del protocollo Ethereum.

Ambire è posizionato perfettamente per EIP-7702 perché è l'unico portafoglio a mettere EOA e Smart Account su un livello "uguale", senza gerarchia o dipendenza tra loro. Inoltre, gli Smart Account di Ambire seguono già il modello di sicurezza semplice, collaudato e sicuro di EOA e portafogli hardware.

Il nostro team ha introdotto l'astrazione ibrida dell'account, un approccio innovativo che si basa sull'astrazione dell'account per offrire agli utenti un'esperienza più completa, flessibile e sicura.

In sostanza, puoi sfruttare al meglio sia gli EOA che gli Smart Account all'interno dello stesso portafoglio. pic.twitter.com/pLeCoYULAM

— Ambire Wallet (@AmbireWallet) August 15, 2024

Parole finali

Ogni nuovo EIP o ERC porta con sé una nuova serie di entusiasmo, speranza e a volte anche delusione: essere coinvolti nell'ecosistema Ethereum è come essere sulle montagne russe. Ma non dovremmo perdere di vista l'obiettivo: rendere l'autocustodia facile e sicura senza ulteriori complicazioni o nuovi ostacoli per i partecipanti. EIP-7702 è un ottimo inizio, anche se non risolve tutti i problemi di AA: non vediamo l'ora di vedere quali altri miglioramenti riserva il futuro di Ethereum e siamo onorati di far parte dello sforzo congiunto!

Interessato ad Ambire? Seguici:
Discord | X (Twitter) | Reddit | Github | Telegramma | Facebook‌