Il problema della scalabilità è molto avvertito in ambito crypto. Molte blockchain, infatti, sin dal loro debutto hanno evidenziato notevole difficoltà a processare un gran numero di transazioni, tanto da rendere impossibile un confronto alla pari con le soluzioni di pagamento già esistenti.

Per cercare di risolverli sono state introdotte nuove tecnologie, che hanno fornito spesso buoni risultati. Tra quelle più performanti un ruolo di rilievo è stato assunto dagli Optimistic Rollup, su cui si basano blockchain in grande evidenza, come Optimistic e Arbitrum. Andiamo a vedere quindi di cosa si trattino e come funzionino questi meccanismi.

Optimistic Rollup: di cosa si tratta?

Gli Optimistic Rollup sono una classe di layer 2 che si propongono di elevare in maniera significativa il throughput di una blockchain. Per riuscire nell’intento vanno in pratica ad affidare al secondo livello alcune delle operazioni che nelle blockchain di prima generazione sono invece eseguite insieme alle altre sul livello superiore.

In pratica, riescono a raggruppare i dati e ad impacchettarli con presupposti “ottimistici”. Cosa vuol dire? Che in pratica non è prevista alcuna verifica sull’effettiva validità dei dati, presumendo che lo siano comunque. Nel caso in cui questo presupposto non andasse a buon fine sul livello 2, su quello 1 i proprietari dei fondi se li vedranno restituire senza alcun intoppo.

In questo processo è anche prevista una finestra temporale, denominata challenge period, all’interno della quale chiunque è abilitato a contestare il risultato. Per farlo deve naturalmente presentare gli estremi del reclamo, ovvero le prove di frode, che possono essere verificate tramite crittografia.

Se la fraud proof trova un riscontro reale, la transazione viene rieseguita dal protocollo di rollup, il quale si incarica di ripristinare il corretto stato precedente. Nel caso in cui sia dimostrato che una transazione è fraudolenta, il nodo che ne è responsabile viene sanzionato.

L’architettura degli Optimistic Rollup

La gestione degli Optimistic Rollup prevede una vera e propria architettura, che viene incardinata in questo modo:

  • Smart Contract, cui è affidato il compito di memorizzare i blocchi del rollup e tenere traccia del loro stato;
  • OVM (Optimistic Virtual Machine), che è chiamata a sua volta ad occuparsi non solo solo dell’effettiva esecuzione, ma anche dell’archiviazione del loro stato fuori dalla catena principale.

Occorre sottolineare come gli Optimistic Rollup siano perfettamente compatibili con l’ecosistema di Ethereum. Nonostante si incarichino di eseguire i calcoli all’esterno di ETH, vanno infatti a sfruttarne i livelli di sicurezza. In pratica danno vita ad una soluzione ibrida che fa leva sulla sicurezza della blockchain di Ethereum e ne risolve un punto di debolezza, la possibile congestione di rete derivante dall’accumulo di lavoro.

Comclusione

L’esecuzione delle transazioni con l’impiego degli Optimistic Rollup è quindi abbastanza semplice. Il primo passo è rappresentato dall’invio delle stesse ai nodi validatori, i quali provvedono ad elaborare e impacchettare i dati ad esse riferiti in un rollup che viene inviato a Ethereum.

A questo punto avviene la verifica, che può riscontrare uno stato finale differente da quello proposto. Ove ciò avvenga, inizia una nuova fase in cui dovranno essere individuate le mancanze, tramite tecniche di crittografia.

Questo modo di procedere conferisce sicurezza al sistema, nonostante appaia ad un primo esame molto permeabile a raggiri, proprio in quanto si prende inizialmente per buona l’asserzione che i dati siano validi.

A conferirla è un semplice accorgimento: chiunque intenda produrre un blocco deve vincolare prima dei token in un bond, una vera e propria cauzione. Nel caso in cui sia verificato un suo comportamento inappropriato tale cauzione sarà sequestrata. Anche chi presenta un ricorso, però, non può farlo per un semplice capriccio. Per impedire quelle che in gergo giuridico si chiamano cause temerarie, è previsto anche in questo caso un bond, che può essere confiscato in caso di esito negativo del ricorso.