Pionieri della blockchain
Accedi

Optimistic RollupTempo di lettura: 7 min.

menu categorie articoli

Ethereum resta ottimista! Le fee su Ethereum hanno recentemente raggiunto livelli record. Sebbene questo fenomeno si sia al momento attenuato, la necessità di rendere Ethereum scalabile persiste. La soluzione Optimistic Rollup è tra i principali candidati per far decollare le dApp sul layer 2.

Optimistic Rollup è un progetto riguardante Ethereum, che ha l’obiettivo di creare una soluzione di scalabilità di secondo livello basata sulle tecnologie cosiddette di “roll-up”.

Come meglio specificato in un recente articolo, l’imminente avvento di Ethereum 2.0 non porterà alcun effetto sulla scalabilità di Ethereum nel breve termine.

Lo stesso Vitalik spinge apertamente per il perfezionamento delle soluzioni di secondo livello, al fine di far decollare le performance di Ethereum già nel più breve termine.

Optimistic Rollup è una di queste soluzioni.

Sta riscontrando buona adozione, almeno in fase di test, per via delle sue caratteristiche che consentono l’esecuzione di smart contract anche sul layer 2.

Alla fine di settembre è stata lanciata una prima testnet. Tale episodio ha alimentato ulteriormente l’attenzione sul potenziale di questa tecnologia di scaling.

Attraverso la testnet si sta testando l’integrazione di varie dApp, le quali verranno man mano aggiunte gradualmente per isolare al meglio i bug.

La prima dApp ad essere integrata è Synthetix, la piattaforma per la creazione e lo scambio di asset sintetici. Più in avanti, anche altri progetti come Uniswap o Chainlink dovrebbero essere lanciati sulla testnet.

Anche il wallet “Coinbase Wallet” ha di recente integrato un supporto nativo per la testnet di Optimistic Rollup. In questo modo gli utenti sono in grado di provare la tecnologia Optimistic Rollup anche collegandosi alle dApp con il wallet non custodiale di Coinbase.

Ma vediamo come funziona questa soluzione layer 2 e in cosa differisce dalle altre.

Cos’è Optimistic Rollup?

Optimistic Rollup è una tecnologia di livello due per la scalabilità degli smart contract fino a 100-2000 transazioni al secondo (TPS).

La sua peculiarità rispetto ad altre soluzioni simili, risiede nella capacità di consentire l’esecuzione di smart contract turing-complete sul livello 2 utilizzando la Optimistic Virtual Machine (OVM), riducendo grandemente il costo delle transazioni per gli utenti.

Optimistic scala Ethereum spostando le transazioni off chain, su una chain di livello 2 la cui sicurezza viene mantenuta attraverso la mainnet (cioè il layer 1).

Sulla blockchain di Ethereum (cioè sul layer 1) viene deployato uno smart contract che contiene tutti i fondi depositati nella chain di livello 2 e la prova dello stato attuale del secondo livello.

Gli utenti e gli operatori della chain di secondo livello fanno sì che le transizioni di stato valide siano rimesse allo smart contract sulla mainnet.

Chiunque può diventare un “aggregatore”, e iniziare a creare i blocchi rollup, depositando una sorta di cauzione (bond) nello smart contract sulla mainnet.

Gli aggregatori raggruppano in blocchi rollup le transazioni inviate dagli utenti sul livello 2. Gli utenti pagano le fee agli aggregatori, i quali inviano alla mainnet le transazioni degli utenti e la nuova radice di stato (state root) della chain di secondo livello.

Chiunque può scaricare i blocchi rollup e guadagnare una ricompensa dimostrando l’invalidità di una transizione di stato.

Quando un utente invalida correttamente un blocco, determina lo “slashing” dell’aggregatore – cioè gli fa perdere la somma che aveva vincolato inizialmente a garanzia – e di qualsiasi aggregatore che abbia costruito sopra il blocco non valido.

In questo caso l’utente “sfidante” guadagna una parte della cauzione sottratta all’aggregatore, ciò che costituisce da incentivo per chiunque nel dimostrare la non validità di un blocco.

Come funziona Optimistic Rollup

Il nome Optimistic Rollup deriva dal modo in cui opera la soluzione.

Viene utilizzato il termine “Optimistic” (ottimista/fiducioso) perché gli aggregatori pubblicano solo le informazioni minime necessarie senza prove, laddove le prove sono richieste solo in caso di dimostrazione della frode.

Si  utilizza invece il termine “roll-up” perché le transazioni vengono affidate alla chain principale raggruppandole in bundle.

A livello strutturale Optimistic è simile a Plasma. Rinuncia però a una certa scalabilità per consentire l’esecuzione di smart contract general purpose sul livello 2.

Semplificando per ragioni di comprensione, Optimistic Rollup opera nel seguente modo:

  • Viene scritto uno smart contract e inviata una transazione off chain a un aggregatore (un block producer di livello 2), il quale deve occuparsi del deploy del contratto;
  • Le fee vengono pagate come vuole l’aggregatore, anche in un token diverso da ether (“account abstraction”);
  • L’aggregatore esegue localmente la transazione e calcola la nuova radice dello stato (state root);
  • L’aggregatore invia una transazione sulla mainnet di Ethereum (pagando il gas), che contiene le transazioni fatte sul livello 2 e la radice dello stato;
  • Se qualcuno scarica il blocco e ritiene che non sia valido, può dimostrarlo. L’invalidità del blocco determina lo slashing dell’aggregatore malevolo e di qualsiasi altro aggregatore che abbia costruito sopra il blocco non valido. L’utente “sfidante” ottiene una parte della cauzione sottratta all’aggregatore;
  • A seguito della finalizzazione della procedura di prova di invalidità di un blocco, la chain sul livello 2 può subire il processo di roll back e riprendere dal precedente blocco non fraudolento.

Conclusioni

In un articolo di qualche tempo fa, avevamo parlato di ZKRollup. Si tratta di una altra soluzione di scaling di livello due che è già stata adottata da alcuni importanti progetti, come ad esempio Loopring.

Con ZKRollup vengono inviate delle prove ZK-SNARK allo smart contract rollup della mainnet.

Lo smart contract verifica attraverso le prove “zero knowledge” e accetta qualsiasi prova valida. Questo processo avviene quasi istantaneamente, favorendo un’immensa scalabilità.

Al contrario, Optimistic Rollup sacrifica una certa scalabilità per accogliere gli smart contract sul livello 2. Inoltre richiede un leggero ritardo nel rendere finale la transazione, al fine di concedere agli utenti il tempo di invalidare i blocchi non regolari proposti dagli aggregatori.

Queste ed altre soluzioni di secondo livello si rendono necessarie per alleggerire il peso della blockchain e consentire alle dApp di funzionare adeguatamente, senza limiti dovuti alla lentezza delle transazioni.

Resta però ancora molta strada da fare per far sì che queste tecnologie possano rasentare la perfezione.

Serve innanzitutto renderle più user friendly di quanto non siano adesso. C’è inoltre da capire come potranno inter-operare le diverse dApp tra di loro, per non rompere una caratteristica fondamentale della DeFi, cioè la componibilità.

Intanto, se vuoi, puoi provare Unipig. È una demo di Uniswap che utilizza Optimistic Rollup su layer 2.

Non perdere le ultime notizie

Se questo articolo ti è piaciuto e vuoi rimanere sempre aggiornato sul mondo cripto e blockchain iscriviti alla nostra Newsletter

Picture of Guest

Guest

Picture of Guest

Guest

Commenti

Una risposta

  1. Grazie, ottima spiegazione. Cercavo un articolo che mi chiarisse le idee su questa tecnologia che sta prendendo piede.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *