Cos'è ERC-4337, o account abstraction per Ethereum?
Home
Articoli
Cos'è ERC-4337, o account abstraction per Ethereum?

Cos'è ERC-4337, o account abstraction per Ethereum?

Intermedio
Pubblicato Mar 17, 2023Aggiornato Dec 11, 2023
7m

TL;DR

ERC-4337 è uno standard di Ethereum che consente di ottenere un account abstraction sul protocollo senza alcuna modifica al livello di consenso. Implementato sulla mainnet di Ethereum a marzo 2023, ERC-4337 rende possibile le transazioni e la creazione di smart contract in un unico account. Apre la porta a design di crypto wallet facili da usare che potrebbero potenzialmente facilitare un'adozione più ampia.

Introduzione 

Le proposte di miglioramento di Ethereum (EIP) descrivono standard come le specifiche del protocollo principale e gli standard dei contratti per la piattaforma Ethereum. L'Ethereum Request for Comment (ERC) è un tipo di EIP che stabilisce standard a livello di applicazione, come gli standard dei contratti e dei token. Un EIP può diventare un ERC solo quando la governance della catena autorizza la modifica.

ERC-4337 è il più recente standard ERC implementato sulla mainnet di Ethereum per raggiungere il tanto atteso obiettivo di account abstraction. Alcuni si riferiscono ancora all'ERC-4337 usando il suo termine originale, EIP-4337. Tuttavia, l'EIP-4337 è stato inizialmente proposto nel 2021 ed è stato autorizzato a diventare ERC-4337 nel 2023.

Cos'è l'ERC-4337? 

ERC-4337 è stato proposto dal cofondatore di Ethereum, Vitalik Buterin e da altri sviluppatori nel 2021 per stabilire l'account abstraction. È stato implementato sulla mainnet di Ethereum a marzo 2023 e si prevede che porterà a nuovi design user-friendly per i crypto wallet

Su Ethereum, l'account abstraction mira a combinare le caratteristiche dei due tipi di conti esistenti nel protocollo: account di proprietà esterna (Externally owned account - EOA) e account smart contract. Il risultato è un unico account in grado di effettuare transazioni con i token e allo stesso tempo creare dei contratti. Questo cambiamento rende possibile la creazione di wallet innovativi che permettono il social recovery, la personalizzazione e l'aggiornabilità.

Un altro modo di vedere l'ERC-4337 è che porta la funzionalità smart contract sui wallet, in un unico account. In questo modo è più facile impostare servizi come l'autenticazione a più fattori e i pagamenti automatici.

Perché è necessario l'ERC-4337? 

Per capire perché l'ERC-4337 è necessario, è importante comprendere il motivo per cui è stato proposto e implementato. A differenza del modulo Unspent Transaction Output (UTXO) della rete Bitcoin, il protocollo Ethereum utilizza un modello basato su account. Ciò significa che il protocollo Ethereum tiene traccia e aggiorna i saldi disponibili degli account man mano che le transazioni vengono confermate.

I due tipi di account su Ethereum hanno funzionalità proprie. Gli account EOA sono di proprietà e controllati dagli utenti, mentre gli account smart contract sono smart contract distribuiti sulla rete. Entrambi gli account possono ricevere, detenere e inviare ether o token.

La maggior parte dei crypto wallet esistenti su Ethereum, come MetaMask, sono EOA, ovvero sono limitati in base alle regole stabilite per gli EOA. Queste limitazioni includono il ricorso esclusivo alle chiavi private per accedere agli account e la necessità di firmare tutte le transazioni. Per questo motivo, le procedure di configurazione dei wallet e le misure di sicurezza della chiave privata sono generalmente complesse e non user-friendly. Se gli utenti perdono la frase seed, di solito perdono l'accesso al wallet.

L'ERC-4337 elimina tali limitazioni. I wallet smart contract, come UniPass e Safe, sono wallet gestiti da account smart contract invece che EOA e possono raggiungere lo stesso obiettivo. Tuttavia, gli utenti devono gestire i loro ether in due account per pagare gas o affidarsi a un sistema di relay centralizzato. L'ERC-4337 elimina queste limitazioni perché combina le funzionalità dei due account in uno solo, rendendo più facile l'implementazione di alcune caratteristiche legate ai wallet.

Come funziona l'ERC-4337?

La comunità di Ethereum sta lavorando da tempo a come ottenere l'account abstraction. Prima dell'EIP-4337, la comunità ha presentato un'altra proposta per ottenere tale funzionalità, chiamata EIP-2938. L'EIP-2938 era simile all'ERC-4337, ma richiedeva modifiche al livello di consenso. L'ERC-4337 aggira questo problema.

Lo fa introducendo uno pseudo-oggetto di transazione di livello superiore, chiamato UserOperation, che presenta analogie con i rollup in quanto entrambi implicano versioni diverse del concetto di bundling. Grazie all'ERC-4337, utenti diversi inviano oggetti UserOperation in una mempool separata.

I bundler impacchettano questi oggetti in una transazione, che viene inclusa in un blocco. I bundler pagano gas per le transazioni raggruppate e ricevono le commissioni dalle singole esecuzioni di UserOperation. I bundler lavorano in modo simile a un validatore, scegliendo gli oggetti da includere in base a una logica di priorità delle commissioni.

Vengono inoltre aggiunte nuove funzioni, tra cui validateUserOp, per consentire a un wallet di essere allo stesso tempo uno smart contract. Viene inoltre introdotto un nuovo contratto chiamato EntryPoint, che funge da gate di sicurezza per l'esecuzione di queste nuove funzioni.

Quali obiettivi raggiunge l'ERC-4337? 

Gli obiettivi che l'ERC-4337 si propone di raggiungere sono i seguenti: 

Account abstraction: Consente agli utenti di usufruire di un unico account con funzionalità di smart contract e EOA. 

Decentralizzazione: Consente a tutti i cosiddetti "bundler" di partecipare al processo. 

Evitare le modifiche al consenso: Rende possibile un'adozione più rapida, poiché il livello di consenso di Ethereum si concentra sugli aggiornamenti orientati alla scalabilità.

Abilita casi d'uso innovativi: Le applicazioni innovative potrebbero includere la firma aggregata, l'impostazione di un limite giornaliero di transazioni, il congelamento di emergenza dell'account, il whitelisting e le applicazioni che preservano la privacy.

Risparmiare tempo e gas: Poiché i bundler possono impacchettare gli oggetti UserOperation in un'unica transazione, possono far risparmiare tempo e gas.  

Perchè è importante l'ERC-4337 per gli utenti? 

L'ERC-4337 potrebbe segnare la fine della complicata user experience legata ai crypto wallet, così facendo, si potrebbe arrivare ad un aumento dell'adozione. Ecco alcuni punti salienti di ciò che l'ERC-4337 potrebbe consentire: 

Impostazione del wallet: Non è necessario prendere nota della frase seed. La configurazione può essere semplice e veloce.

Recupero dell'account senza preoccupazioni: Gli utenti non devono più preoccuparsi di perdere le loro frasi seed, perché l'autenticazione a più fattori e il recupero dell'account sono ora possibili. 

Funzionalità user-friendly: Gli utenti possono usufruire di un'ampia gamma di servizi personalizzati, tra cui il pagamento automatico, la pre-approvazione delle transazioni e le transazioni in bundle. Non ci sono limiti alle possibili innovazioni. 

Maggiore sicurezza: i wallet potrebbero essere potenzialmente più sicuri in quanto si riduce la possibilità di errore umano - non dovrai più nascondere le frasi seed sotto il materasso! L'ERC-4337 dovrebbe, in teoria, portare a una user experience più agevole per gli utenti, eliminando così un ostacolo importante per l'adozione di massa.

Flessibilità gas: i wallet basati sull'ERC-4337 possono ora pagare le commissioni gas con qualsiasi token ERC-20 e molti altri. Gli sviluppatori possono sviluppare dei wallet che rendono possibile il pagamento delle commissioni gas in qualsiasi token e persino in fiat. 

In chiusura 

Le terminologie dei crypto wallet - come seed phrase, chiavi private e chiavi pubbliche - possono essere scoraggianti per i nuovi utenti. Per alcuni, il processo di utilizzo dei crypto wallet è ancora impegnativo. Molti concordano sul fatto che l'interfaccia crypto dell'utente medio debba essere il più semplice possibile così da accelerarne l'adozione.  

ERC-4337 pone le basi tecniche per supportare crypto wallet con caratteristiche innovative. Gli sviluppatori possono sfruttare questo cambiamento per sviluppare nuove funzionalità per avvicinare sempre più utenti all'ecosistema crypto. Indipendentemente da ciò, l'impatto che l'ERC-4337 avrà sull'esperienza utente e sul mondo crypto nel suo complesso, è un aspetto da tenere d'occhio nei prossimi anni. 

Letture consigliate:

Un'introduzione ai token ERC-20

Cos'è Ethereum?

Cos'è l'aggiornamento Shanghai di Ethereum e che effetto avrà?

Cos'è l'EIP-4844 su Ethereum e come può essere utile agli utenti?

Disclaimer e Avvertenza sui rischi: questo contenuto viene presentato all'utente "così com'è" solo a scopo informativo e didattico, senza rappresentazioni o garanzie di alcun tipo. Non deve essere interpretato come una consulenza finanziaria, legale o di altro tipo professionale, né intende raccomandare l'acquisto di prodotti o servizi specifici. Dovresti chiedere una consulenza a consulenti professionali appropriati. Laddove l'articolo sia fornito da un collaboratore terzo, tieni presente che le opinioni espresse appartengono al collaboratore terzo e non riflettono necessariamente quelle di Binance Academy. Leggi il nostro disclaimer completo qui per ulteriori dettagli. I prezzi degli asset digitali possono essere volatili. Il valore del tuo investimento potrebbe aumentare o diminuire e potresti non recuperare l'importo investito. Sei l'unico responsabile delle tue decisioni di investimento e Binance Academy non è responsabile per eventuali perdite che potresti subire. Questo materiale non deve essere interpretato come consulenza finanziaria, legale o di altro tipo professionale. Per ulteriori informazioni, consulta i nostri Termini di utilizzo e l'Avvertenza sui rischi.