Il concetto di Account Abstraction in parole semplici

Account Abstraction in parole semplici. Scopri il concetto di Account Abstraction e come questa tecnologia rivoluzionaria rende la gestione degli account blockchain più sicura e flessibile.

Indice argomenti

Se hai già interagito con la tecnologia blockchain, hai sicuramente avuto bisogno di creare un account, un wallet. Solitamente si utilizzano strumenti come Metamask (qui ti spieghiamo come si fa). Durante la creazione di un account su blockchain, vengono fornite la seed phrase e la chiave privata.  La seed phrase è un insieme di parole da cui deriveranno crittograficamente le nostre chiavi private, mentre la chiave privata è un numero (a volte espresso tramite una sequenza di numeri e lettere) che permette al proprietario di accedere ai propri asset e firmare digitalmente le transazioni. Quando si crea un account su blockchain, è essenziale procedere con molta attenzione e compiere alcune azioni non scontate per chi è abituato al Web2, come ad esempio la conservazione delle chiavi private.

La custodia delle chiavi private è un argomento molto delicato, in quanto se vengono perse, l’account è perso per sempre e nessuno potrà mai aiutarti a recuperarlo. Quindi, se da una parte la blockchain offre un indubbio vantaggio di poter custodire in autonomia le proprie chiavi, senza affidamento a terze parti, dall’altra implica anche una delicata gestione delle chiavi private. Approfondisci il concetto e il funzionamento delle chiavi private e pubbliche nel nostro articolo dedicato.

1. La flessibilità degli smart wallet

Ma quindi, se perdo le chiavi private, ho perso definitivamente l’accesso a tutti i miei asset?

Con un wallet tradizionale (chiamato EOA), . Tuttavia, non è così con uno smart wallet, noto come “abstracted account”, che utilizza la tecnologia dell’Account Abstraction.

Per comprendere questo articolo, ti basterà sapere che gli EOAs (Externally Owned Accounts) sono account accessibili da una coppia di chiavi (pubblica e privata) e che permettono di operare sulla blockchain. Gli Smart Accounts invece, sono smart contracts, dunque programmi che vengono eseguiti su blockchain che possono essere sviluppati con la massima flessibilità (se vuoi approfondire, ecco il nostro articolo sugli smart contract). La differenza principale tra queste due tipologie di account risiede nella loro programmabilità: gli EOAs non sono programmabili e permettono solo operazioni di base come inviare e ricevere fondi. Gli Smart Accounts, invece, essendo smart contracts, sono altamente programmabili. Questo significa che possono eseguire una vasta gamma di operazioni complesse e automatizzate, offrendo una flessibilità di sviluppo e personalizzazione senza precedenti.

Se vuoi approfondire che cosa sia e come funziona un wallet EOA, dai un’occhiata al nostro articolo dedicato, mentre per approfondire il tema degli smart contract puoi leggere quest’altra nostra pubblicazione.

I benefici dell'Account Abstraction

Nel Web2, la gestione, il recupero e l’autenticazione delle nostre credenziali sono affidate alle piattaforme. Ad esempio, accediamo frequentemente ai servizi online tramite il nostro account Google, delegando a Google la gestione dell’autenticazione. Questo significa che il nostro account Google, un profilo centralizzato le cui credenziali sono custodite da un’azienda, è indispensabile per accedere a diversi prodotti e piattaforme. Come sappiamo, questo meccanismo presenta vari rischi, poiché comporta il passaggio attraverso un’entità centralizzata, un problema che la blockchain risolve.

Con i wallet EOAs (Externally Owned Accounts), possiamo creare e gestire autonomamente le nostre credenziali, permettendoci di autenticare noi stessi su ogni piattaforma senza bisogno di terzi. Tuttavia, questa autonomia comporta alcune sfide significative, come la gestione delle chiavi private. La loro perdita comporta la perdita definitiva dell’account e, di conseguenza, l’impossibilità di accedere ai servizi.

L’Account Abstraction ci permette di combinare i benefici della blockchain con una gestione più semplice e sicura del nostro account. Per quanto riguarda la semplicità, poter creare un wallet con il proprio account Google è uno dei modi per semplificare l’accesso. Per quanto riguarda la sicurezza, invece, possiamo introdurre diverse funzionalità di recupero dell’account Web3. Possiamo impostare un periodo di attesa di una settimana prima di poter trasferire una certa quantità di fondi. Oppure, possiamo stabilire che un gruppo di attori esterni (ad esempio, tre wallet fidati, noti come “guardian”) possa approvare il recupero del nostro account in caso di perdita delle chiavi di accesso.

La differenza fra owner e guardian è che gli owner sono i titolari principali che controllano gli asset di un account su blockchain, mentre i guardian sono figure di supporto che aiutano a proteggere l’account e a recuperare l’accesso in caso di problemi.

In sintesi, l’Account Abstraction consente una gestione personalizzata del proprio account onchain, permettendo di trovare un equilibrio tra la completa autonomia e la possibilità di assistenza esterna. In altre parole, consente di adattarsi alle diverse esigenze di sicurezza e praticità con massima flessibilità e personalizzazione, in quanto il codice di uno smart wallet può essere sviluppato su misura. Tutto ciò non preclude la possibilità di scegliere anche gli estremi della gestione, ovvero affidarsi esclusivamente a terze parti (come nel caso di Google e Facebook) oppure essere gli unici responsabili e custodi delle chiavi (come nel caso dei tradizionali wallet EOAs). Tutto dipende da come viene programmato lo smart wallet. La rivoluzione dell’account abstraction è che introduce un ventaglio infinito di opportunità nel mezzo. 

2. Il problema delle gas fee

Le “gas fee” su una blockchain sono commissioni pagate dagli user per compensare il lavoro computazionale effettuato dai miners. Il ruolo dei miners nelle blockchain è fondamentale per processare e validare ogni transazione sulla rete, garantendo nel contempo un adeguato livello di sicurezza. Le gas fee variano in base alla complessità dell’operazione e alla congestione della rete. Se ti interessa sapere come funzionano gas fee, miners e blocchi dai un’occhiata a questo articolo.
Un altro ostacolo che spesso allontana chi si approccia alla blockchain per la prima volta è proprio il pagamento di queste gas fee per ogni operazione effettuata su blockchain.

Prima di approfondire questo tema, è importante fare una precisazione: anche nella vita quotidiana paghiamo per ogni operazione. Ad esempio, usare una calcolatrice richiede l’acquisto di batterie, aprire un’applicazione sul computer consuma corrente, navigare su internet si paga attraverso un abbonamento mensile e così via. Sebbene queste spese siano spesso minime (anche se il costo dell’elettricità può essere significativo), le paghiamo comunque, solo che non ce ne accorgiamo perché sono “nascoste”. La realtà è che tutto ha un costo, anche oggi! Se dovessimo inserire qualche centesimo ogni volta che accendiamo il computer sarebbe molto fastidioso, ma le modalità di pagamento al giorno d’oggi ci permettono di pagare tutti i consumi una volta ogni tanto. È come se tanti pagamenti che facciamo oggi siano già “abstracted”, perché li paghiamo senza sapere precisamente cosa succede dietro le quinte. La blockchain, invece, si sta sviluppando in questi anni e sta subendo questo grande cambiamento solo ora.

L'elegante soluzione dell'Account Abstraction

Immagina di poter pagare le gas fee all’inizio o alla fine del mese, continuando nel frattempo a effettuare operazioni sulla blockchain. Questo è possibile grazie alla “sponsorizzazione” delle gas fee, dove qualcun altro le paga per noi, e noi rimborsiamo questa entità invece di pagare direttamente i nodi della blockchain.

Con questo metodo, è anche possibile pagare le gas fee con un token diverso da quello nativo della blockchain, poiché è lo sponsor ad effettuare il pagamento e decide lui quali token accettare da noi clienti finali. Ad esempio, uno sponsor potrebbe accettare 30 centesimi di USDC per pagare un pari valore di ETH, il token nativo della blockchain Ethereum, in gas fee.

Per comprendere meglio, immaginiamo un esempio pratico. Prima di tutto, ricordiamo che WBTC è un tipo di criptovaluta che rappresenta bitcoin sulla blockchain di Ethereum. Il suo valore è sempre uguale a quello di bitcoin e può essere scambiato esattamente in rapporto 1:1 con bitcoin. Mario sta effettuando transazioni e vuole ottenere ETH. Ha WBTC nel suo wallet, ma nessun ETH per pagare le gas fee. Con un account tradizionale (EOA), Mario sarebbe bloccato e dovrebbe trasferire ETH da una fonte esterna. Tuttavia, grazie all’Account Abstraction può pagare le fee in WBTC.

Anche qui, ciò che emerge è la varietà di soluzioni possibili, l’Account Abstraction offre totale programmabilità degli account, permettendo quindi infinite possibilità anche nella gestione delle gas fee. Vediamo qualche altro esempio:

  • Gli smart wallet possono essere programmati per permettere allo user di pagare le gas fee periodicamente (così come una bolletta della luce) e in qualsiasi valuta lo user preferisca.
  • Gli smart wallet possono essere programmati per permettere allo user di non pagare le gas fee a condizione di comportamenti virtuosi, come rispondere a un sondaggio o partecipare a webinar sponsorizzati.
  • È possibile che la community paghi le gas fee ai cittadini che compiono azioni sostenibili.
  • Un ristoratore potrebbe offrirsi di pagare le gas fee dei clienti a condizione che consumino nel suo locale almeno due volte al mese.

Questa flessibilità è incredibile perché permette di sviluppare qualunque business tu possa immaginare.

3. Web3 come il Web2

Con l’insieme di tutti questi vantaggi, un account Web3, dal punto di vista dell’usabilità, diventa sempre più simile ad un account Web2, fino a consentire ad un utente di operare su blockchain senza nemmeno accorgersene, ma intercettandone tutti i benefici. Questo ha un impatto enorme sulle possibilità di una mass adoption, sulla semplicità di utilizzo, sulla scelta di aziende ed utenti di usare il Web3 al posto del Web2. Insomma, l’account abstraction consente di sfruttare tutti i vantaggi del Web3, ma con la semplicità di utilizzo del Web2.
È essenziale che per gli utenti non sia una fatica usare applicazioni su blockchain ma sia un vantaggio oggettivo. È necessario, per un’ampia adozione, che siano gli utenti stessi a voler scegliere il Web3 al posto del Web2 perchè ne colgono le superiori potenzialità rispetto ad applicazioni tradizionali.

Una soluzione di Account Abstraction innovativa: INDID

Per gli sviluppatori desiderosi di sfruttare l’Account Abstraction nei loro progetti, esistono soluzioni come INDID, una application development platform nata per supportare la costruzione di progetti blockchain. INDID permette di lanciare e gestire applicazione Web3 senza detenere criptovaluta, fornendo agli utenti degli smart account facili da usare e recuperare. Tramite le transazioni sponsorizzate, è possibile dunque rendere l’intera esperienza fluida sfruttando a pieno la trasparenza e le potenzialità che la blockchain offre.

Quindi, cos'è l'Account Abstraction e come nasce?

L’account abstraction è un concetto introdotto dall’EIP (Ethereum Improvement Proposal) 4337. Questo miglioramento del protocollo ha introdotto un nuovo standard di token, l’ERC-4337 per l’appunto, che consente una programmabilità totale di una nuova tipologia di wallet, chiamati appunto Smart Wallet.
Dal punto di vista tecnico, ERC-4337 consente agli account tradizionali controllati esternamente (EOA) di ereditare tutte le caratteristiche di flessibilità e programmabilità tipiche degli smart contract (CA).
Questo processo permette la creazione di un nuovo wallet, smart, ovvero programmabile e personalizzabile.
Per utilizzare uno smart wallet, non è possibile trasformare un EOA in un Abstracted Account. Quindi non si può “migrare” un wallet tradizionale ad uno smart, ma è possibile in modo semplice creare uno smart wallet e spostare i propri fondi e asset da un wallet EOA ad uno abstracted.

Se sei curioso di scoprire come questo grande passo avanti tecnologico può essere applicato nel tuo settore o nel tuo business, contattaci per sfruttare le nostre competenze. Con KNOBS, leader in Italia nelle soluzioni blockchain e web3, potrai rendere la gestione dei tuoi account su blockchain più sicura e semplice, massimizzare l’efficienza operativa e aprire nuove opportunità di crescita. Avrai un partner affidabile al tuo fianco, pronto a guidarti attraverso le sfide e le opportunità offerte da questa rivoluzionaria tecnologia.

Vuoi scoprire di più sulla tecnologia blockchain
e su come puo' far crescere il tuo business?

Oppure iscriviti alla newsletter qui sotto!

|   Chi siamo

KNOBS è una società di sviluppo software specializzata in tecnologia blockchain. Dal 2014.

|   KNOBS srl

Bastioni di Porta Volta, 9
20121 Milano (MI) – Italia
info@knobs.it
knobs@legalmail.it
P. IVA 08560240965
SDI X2PH38J

|   Orari di apertura

Dal lunedì al venerdì 9.00 – 18.00

|   Seguici

|   Newsletter

Iscriviti alla newsletter e ricevi subito il nostro PDF
Blockchain in parole semplici