Nuovo Standard ERC-4337 ( Account Abstraction ): Guida Completa

2023-04-17

Punti chiave

  • L’Account Abstraction è una nuova implementazione su Ethereum che permette di unire le caratteristiche degli account di proprietà esterna (EOA) e account smart contract, apportando tanti benefici sia agli utenti che agli sviluppatori;

  • L’implementazione dell’Account Abstraction ha dato vita al concetto di Smart Account, ovvero wallet smart-contract completamente personalizzabili e più semplici da configurare;

  • Tramite gli Smart Account, l’utente può accedere a funzioni innovative in modo intuitivo, mentre gli sviluppatori possono migliorare la User Experience senza modificare i livelli di consenso;

  • Questi sviluppi hanno un forte impatto sul mondo Web3, in quanto contribuiscono all’adozione di massa e consentono di ridurre il costo delle gas fees, garantendo più flessibilità e sicurezza.

L’Account Abstraction, conosciuto anche come standard ERC-4337, è una nuova implementazione disponibile su Ethereum che ha lo scopo di contribuire al raggiungimento della mass-adoption migliorando l’utilizzabilità dell’intero ecosistema, e rendendo la rete facilmente accessibile anche a chi non ha mai interagito con la blockchain Ethereum.

L’annuncio è stato fatto a sorpresa durante l’evento WalletCon a Denver da Yoav Weiss, ricercatore in ambito sicurezza della Ethereum Foundation. Prima del lancio, il team si è assicurato che i contratti per ERC-4337 superassero la verifica da parte di Open Zeppelin, rendendoli poi disponibili sia su Ethereum che su tutte le reti EVM Compatible come BNB Chain, Polygon, Arbitrum, Optimism,  Avalanche e Gnosis Chain.

Tramite il processo di Account Abstraction, inoltre, sono nati i cosiddetti Smart Account. Il concetto è molto semplice: in poche parole, gli Smart Account consentono agli utenti di creare un wallet ed entrare nel mondo DeFi senza dover trascrivere una seed phrase o effettuare lunghi processi di configurazione.

Tramite l’Account Abstraction, infatti, le chiavi di sicurezza vengono memorizzate nei moduli di sicurezza standard degli smartphone, trasformando quindi il cellulare in un vero e proprio hardware wallet

Il concetto di Smart Account era già stato introdotto da Vitalik Buterin ben 9 anni fa, ancor prima che fosse possibile fare investimenti su Ethereum e su tantissime altre criptovalute che conosciamo oggi. 

In questa guida faremo una panoramica generale del funzionamento degli Smart Account e dell’Account Abstraction, concentrandoci sul loro impatto nel mondo del Web3 e sui benefici che apporteranno alla blockchain Ethereum.

Smart Accounts: come funzionano e perché sono importanti per il Web3

Se volessimo spiegare il funzionamento degli Smart Accounts nel modo più semplice possibile, potremmo dire che viene firmata un’operazione che viene poi inviata ad un mempool speciale, all’interno del quale si genera una fila organizzata di transazioni.

Sono poi presenti i cosiddetti bundler, che funzionano alla stregua dei miners e dei validatori, prendendo le operazioni dalla mempool e restituendo il risultato al wallet. Come accade nei sistemi attuali, il bundler paga le gas fees necessarie per la transazione, e viene ricompensato dal contratto dell’account utente, o da una terza parte definita paymaster, ad esempio una dApp o un wallet provider.

Al momento, però, gli utenti interagiscono con Ethereum tramite account esterni, chiamati anche EOA (Externally owned account). Questi hanno dei limiti come la necessità dell’utilizzo di chiavi private per l’accesso, e l’obbligo di firmare tutte le transazioni, risultando poco intuitivi per i principianti.

Con l’utilizzo dell’Account Abstraction grazie al nuovo standard ERC-4337, invece, è possibile dar vita a smart-contract wallet distribuiti sulla rete, capaci di effettuare transazioni e di creare smart-contract, ampliando notevolmente il livello di sicurezza e di personalizzazione. 

Inoltre, la cosiddetta “astrazione dell'account” libera gli sviluppatori dai vincoli degli attuali EOA, permettendo loro di portare tutti i punti di forza del web2 all’interno del web3, senza però sacrificare l’autonomia e l’indipendenza dell’utente finale. Questo è possibile in quanto viene sostanzialmente aggiunto il supporto per i wallet smart-contract a livello di protocollo, senza la necessità di affidarsi a terze parti. 

Di conseguenza, gli Smart Accounts rappresentano un tema di fondamentale importanza per lo sviluppo del Web 3.0, motivo per cui sono già stati implementati nativamente nelle soluzioni di scaling L2 ZK-Rollups e zkSync.

D’altronde, una soluzione di questo tipo avrebbe anche un forte impatto positivo in vista dell’adozione di massa della blockchain. 

Potenziali impatti degli Smart Accounts sull’adozione della blockchain

Il potenziale impatto che potrebbero avere gli Smart Accounts sull’adozione della blockchain è veramente elevato in quanto l’esperienza utente viene ottimizzata notevolmente rispetto a quella attuale.

Difatti, al momento i crypto wallet sono protetti da chiavi private e seed phrase, ovvero frasi composte casualmente da 12 o 24 parole che, tra l’altro, risultano difficili da ricordare e conservare in un luogo sicuro. Inoltre, chi ha accesso ad una seed phrase può facilmente risalire alla chiave privata del wallet, accedendo a tutti i fondi disponibili al suo interno. 

Allo stesso tempo, se si perdono sia la chiave privata che la seed phrase, risulta praticamente impossibile recuperare l’account, con una conseguente perdita degli asset. Non è neanche difficile assistere ad episodi di phishing, ovvero trappole attuate da malintenzionati con lo scopo finale di rubare seed phrase e chiavi private ad utenti principianti. 

In questo senso, l’Account Abstraction e gli Smart Accounts potrebbero risolvere il problema grazie all’uso di smart-contract che consentono la detenzione di crypto asset e l’autorizzazione delle transazioni, con logiche personalizzabili dall’utente per un miglioramento dell’usabilità

Tra le varie funzionalità, è possibile per esempio aggiungere chiavi di backup in caso di smarrimento, con la facoltà di condividerle con utenti fidati. Allo stesso modo, si possono aggiungere regole specifiche per transazioni di basso/alto valore, un po’ come accade con le carte di credito che richiedono il PIN a seconda dell’importo da pagare.

Peraltro, si possono creare whitelist per bloccare determinati tipi di transazione o determinati indirizzi indesiderati. A ciò si aggiunge il fatto che la configurazione sarebbe talmente semplice che il livello di adozione potrebbe crescere in maniera esponenziale.

Difatti, per aprire uno Smart Account basta usare un'app per smartphone e identificarsi tramite l'impronta digitale o Face ID.

Cos’è l’ERC-4337 e quale il suo ruolo nella diffusione degli Smart Accounts?

Prima di capire cos’è l’ERC-4337, cerchiamo di definire il significato di ERC. Su Ethereum, con ERC ci si riferisce ad una “Richiesta di Commenti di Ethereum” (Ethereum Request for Comments), ovvero dei documenti tecnici che definiscono gli standard di programmazione

Sono diversi dalle Ethereum Implementation Proposal (EIP), che si riferiscono invece a proposte di miglioramento a livello di protocollo. In termini semplici, infatti, le ERC hanno lo scopo di semplificare l'interazione tra applicazioni e contratti.

Sono ormai anni che la community di Ethereum lavora su Smart Account e Account Abstraction, tant’è che l’ERC-4337 era già stata presentata da Vitalik Buterin nel 2021. Prima di questa proposta era stata presentata l’EIP-2938, la quale necessitava di modifiche anche a livello di consenso. 

Al contrario, con la nuova ERC-4337 è possibile implementare l’Account Abstraction introducendo l’UserOperation ad un livello superiore, in maniera abbastanza simile a quello che accade con i Rollups che elaborano le transazioni off-chain

Di conseguenza, gli utenti inviano i dati in una mempool separata, con i bundler che creano gruppi di dati per eseguire una transazione unica. 

Tramite questi meccanismi innovativi, l’ERC-4337 contribuisce alla diffusione degli Smart Account, consentendo agli utenti di non dipendere dalle seed phrase e di configurare più facilmente il wallet.

Inoltre, permette di recuperare l’account in maniera abbastanza immediata migliorando al contempo la User Experience, che diventa completamente personalizzata a seconda delle varie esigenze. 

Anche la flessibilità e la sicurezza aumentano, in quanto si riduce il margine di errore con la possibilità di pagare le gas fees tramite qualsiasi token ERC-20. Ma non finisce qui, perché gli Smart Account apportano anche tanti altri benefici.

Vantaggi degli Smart Account per utenti e sviluppatori

Abbiamo già anticipato diversi vantaggi apportati dagli Smart Account, come il miglioramento della User Experience e la facilitazione dell’accesso al mondo del Web 3.0. 

Questi vantaggi si estendono anche agli sviluppatori, che potranno lavorare senza dover modificare il livello di consenso risparmiando tempo e fatica.

Ecco un elenco completo di tutti i benefici apportati dagli Smart Account:

  • Account Abstraction: gli utenti possono utilizzare un account unico che unisce le funzioni degli smart-contract e degli EOA;

  • Decentralizzazione: i bundler possono partecipare all’elaborazione delle transazioni garantendo il massimo livello di sicurezza e decentralizzazione; 

  • Nuovi casi d’uso e funzioni personalizzate: gli utenti possono accedere a funzioni innovative come l’impostazione di limiti sulle transazioni e il whitelisting degli indirizzi;

  • Mass-adoption: non necessitando di modifiche a livello di consenso, l’accesso al mondo Web 3.0 diventa molto più semplice, con la possibilità di concentrarsi sulla scalabilità della rete;

  • Ottimizzazione dei processi: grazie ai bundler che possono creare pacchetti di transazioni da inviare in un unico blocco, i processi vengono ottimizzati riducendo i tempi d’attesa;

  • Meno gas fees: l’ottimizzazione dell’elaborazione delle transazioni consente di ridurre il costo delle gas fees, ampliando ulteriormente l’accesso alla blockchain;

  • Autorizzazione multisig: l’utente può condividere le proprie credenziali, con la possibilità di configurare l’account in modo che le transazioni di un certo valore richiedano l'autorizzazione di una certa percentuale delle parti fidate;

  • Account freezing e recupero dell’account: diversamente da ciò che accade con gli EOA, se si perde un dispositivo o si subisce un furto, si può congelare l’account da un altro dispositivo autorizzato. Allo stesso tempo, in caso di smarrimento delle credenziali, si può recuperare l’account utilizzando un altro device preautorizzato;

  • Whitelist: grazie alle whitelist si possono effettuare transazioni solo verso determinati indirizzi che si ritengono sicuri, evitando di inviare fondi ad account sconosciuti e prevenendo le interazioni con indirizzi malevoli. 

Inoltre, l’utente può liberamente:

  • definire le proprie regole di sicurezza;

  • pagare le gas fees a qualcun altro o far sì che qualcun altro paghi le proprie;

  • raggruppare le operazioni, ad esempio eseguendo uno swap e un’approvazione in un'unica soluzione.

Tutto ciò dà vita ad una vasta gamma di opportunità per gli sviluppatori di migliorare l’esperienza utente e di creare funzioni innovative all’interno delle loro dApps. 

Conclusioni

Come abbiamo potuto appurare, gli investimenti in cripto e l’accesso al mondo Web 3.0 e alle dApp diventano molto più semplici grazie all’utilizzo degli Smart Account Ethereum e dell’implementazione di ERC-4337.

In particolare, essendo gli Smart Account compatibili con le diverse reti EVM tra cui BNB Chain, anche gli sviluppatori di Binance potranno lavorare per offrire agli utenti la miglior esperienza possibile, proponendo funzioni innovative e totalmente personalizzate.

Inoltre, con la riduzione delle gas fees e la semplificazione dei processi di configurazione dell’account, l’accesso al mondo Web3 diventerà senza ombra di dubbio più semplice ed immediato. 
Dai anche un’occhiata alla nostra guida su ERC-4337 per saperne di più!


Avvertenza sui Rischi: i prezzi degli Asset Digitali sono soggetti a un elevato rischio di mercato e alla volatilità dei prezzi. Il loro valore potrebbe diminuire o aumentare e l'Utente potrebbe non recuperare l'importo investito. Binance non può in alcun modo controllare tali oscillazioni e non fornisce consulenza in materia di investimenti, fiscale, giuridica o di altro tipo e non è responsabile dell'uso o dell'interpretazione delle informazioni disponibili su Binance o su qualsiasi altro mezzo di comunicazione. Gli Utenti dei Servizi Binance sono tenuti a comprendere i rischi connessi al trading di Asset Digitali e si raccomanda loro di agire con prudenza e in maniera responsabile al meglio delle proprie capacità e conoscenze. In particolare, l’Utente deve tenere presente che qualsiasi utilizzo dei Servizi Binance comporta dei rischi e che i rendimenti passati non sono indicativi dei risultati futuri. Tali rischi includono, a titolo esemplificativo, il rischio di mercato, il rischio di liquidità, il rischio di volatilità, il rischio di perdita totale di capitali, il rischio informatico, il rischio di responsabilità di natura legale e il rischio fiscale. Binance non è responsabile delle decisioni adottate dall'Utente in merito all'acquisto, alla vendita o alla detenzione di Asset Digitali o valute fiat sulla base delle informazioni in suo possesso, comprese le informazioni fornite  Binance Italia. Per ulteriori informazioni, consultare le nostre Condizioni d'uso e avvertenze sui rischi.

241,375,448 utenti ci hanno scelto. Scopri perché.
Registrati ora