Optimistic Rollup e layer 2: limiti e opportunità

Di Matteo Bertonazzi

Parliamo di layer2 soffermandoci su funzionamento, limiti e opportunità che li caratterizzano

Optimistic Rollup e layer 2: limiti e opportunità

Introduzione al focus on di oggi

Questo focus on è stato pubblicato in esclusiva sulla nostra newsletter Whale Weekend del 6 settembre 2024. Iscriviti per non perdere articoli inediti, analisi, news della settimana e tanto altro ancora!

Chi vuole utilizzare le Crypto a livello commerciale, per transazioni semplici o per speculazione non informata, non ha bisogno di conoscere il funzionamento delle infrastrutture. L’adozione di massa è in parte frenata dalle barriere di ingresso tecnologiche: reti, layer, seed, firme sono tutti concetti ben noti a chi è cresciuto con coin e token negli ultimi anni, ma scogli insormontabili per i “pigroni” della moneta FIAT.

Non vuole essere un giudizio qualitativo, nessuno obbliga ad aggiornarsi o ad approcciare questo specifico campo; scegliere quali tecnologie utilizzare e in che modo rimane un diritto di ogni cittadino. Questo preambolo non giustifica invece chi vuole utilizzare attivamente la Defi o diversificare i suoi investimenti nel mondo Web3.0.

Il funzionamento delle diverse infrastrutture, l’avanzamento tecnologico e le criticità delle nuove applicazioni devono essere chiare ad ogni Crypto Investitore per ponderare il rischio del proprio portafoglio e scegliere le giuste allocazioni.

Oggi affrontiamo nel dettaglio una delle frontiere innovative più utilizzate, andando oltre i commenti superficiali e analizzando un articolo scritto da esperti in materia.
Parleremo di layer 2, in particolare di Optimistic Rollup e di quali sono i rischi di questa tecnologia apparentemente obsoleta. Ci aiuteremo con un articolo di Luca Donno, researcher di L2BEAT, uno dei siti di ricerca e analisi più approfonditi nel settore layer 2.

Meme Simpsons bitcoin

Quale problema vogliamo risolvere?

Il passaggio di stato di una blockchain è garantito da una funzione deterministica tramite cui tutti i full nodes possono raggiungere lo stesso risultato e concordare sull’evoluzione della rete.

In parole povere, il software che fa girare questi nodi integra una funzione interna grazie alla quale, date delle transazioni, produce un risultato certo. Quindi, se tutti i nodi inseriscono le stesse transazioni, lo stato finale dei saldi degli operatori sarà uguale. Se qualcuno provasse a cambiare il contenuto e imbrogliare, la sua versione sarà diversa dalle altre.

Per quanto riguarda i Layer 2, questi affidano la verifica finale dei passaggi di stato al Layer 1, detto Base Layer, risolvendo le operazioni offchain in maniera indipendente. Se un utente volesse spostare fondi dal L1 al L2 dovrà fare affidamento sulla comunicazione tra le parti, le quali concordano sul passaggio di stato comune.

Se l’utente X sul base layer vuole portare dei fondi sul L2 dovrà comunicare di aver bloccato dei fondi sul L1 e di crearli sul L2. Viceversa, se volesse ritornare sul base layer, dovrà comunicare al L1 di aver bruciato fondi sul L2 e di sbloccarli sul L1. Per fare questa verifica dei saldi sulle due reti e permettere così la creazione/distruzione di fondi a somma 0, bisogna fare affidamento al passaggio di stato pubblicato sul Base Layer.

Questo passaggio di stato si chiama state root ed è una prova crittografica sintetica che riassume ciò che è avvenuto offchain. Per far sì che il Base Layer accetti solo state root corretti, dando per assunto che non è possibile rieseguire tutte le transazioni su L1, bisogna utilizzare degli stratagemmi; ad oggi i più discussi sono quelli utilizzati dagli Optimistic rollup e dagli Zero Knowledge rollup.

La differenza tra i due è semplice: gli Optimistic rollup assumono in maniera ottimistica che tutte le state root siano valide fintantoché qualcuno non dimostra il contrario, mentre gli ZK forniscono prove sintetiche che il risultato finale sia corretto.

Per fare ciò i primi producono le c.d. Fraud Proof e i secondi le c.d. ZK Proof; affronteremo ora qual è il problema legato alla creazione delle Fraud Proof.

L’obiettivo delle Fraud Proof è quello di permettere una costante interazione tra coloro che propongono il passaggio di stato e coloro che verificano il passaggio di stato. In questo dialogo, finché ognuno è d’accordo sul risultato finale, la rete prosegue senza intoppi; mentre quando qualcuno si trova in disaccordo dovrà avviare una challenge che servirà a stabilire dove si trova l’errore (se sussiste).

Esempio Optimistic Rollup

Ricordiamoci che i sistemi blockchain si basano su un principio di assenza di fiducia, o almeno a questo dovrebbero ambire. Perciò, così come il proponente del passaggio di stato può provare a contraffare il contenuto per ottenere un vantaggio, allo stesso modo chi verifica i passaggi di stato potrebbe ostacolare la normale operatività della rete continuando a proporre challenge con l’intento di censurare determinate operazioni.

I modelli di sfida sono diversi e tutti cercano di creare una situazione in cui basterà sempre un solo verificatore onesto su N verificatori per far sì che un passaggio di stato contraffatto venga individuato e corretto.

Esistono diversi modelli di sfida, quelli a round singolo e multi round, in funzione di quante interazioni ci sono tra proponente e sfidante; quelli on-chain e off-chain, per poi arrivare a dettagli più specifici come la concurrency completa o parziale. Vi rimando all’articolo chiamato Fraud Proof Wars direttamente su L2BEAT per gli approfondimenti tecnici.

Il trilemma che affligge questo metodo di verifica è simile a quello che abbiamo nelle blockchain, ma in questo caso, trattandosi di prove di frode, i parametri saranno tra sicurezza, tempestività e decentralizzazione.

Come possiamo rendere certo il passaggio da L1 a L2 senza intoppi e senza rischi di attacco? Questo è il grande problema su cui si stanno concentrando i principali attori e protocolli nel mondo Infra Blockchain e ciò che oggi cercheremo di spiegare in termini semplici.

L’obiettivo è pubblicare il passaggio di stato su L1. Perciò dal Sequencer ottengo le transazioni, procedo con la funzione deterministica per ottenere lo state root e tramite Proposer e Fraud Proof pubblico il passaggio di stato su L1.

Questi attori coinvolti – Sequencer, Proposer, sistemi di verifica on chain e tutte le altre figure intermedie che per motivi di semplificazione non abbiamo inserito – devono rispettare rigidi canoni per puntare non solo alla sicurezza e all’utilizzabilità della rete, ma soprattutto all’ethos del mondo Crypto.

Solo studiando e approfondendo ognuno di questi passaggi sarà possibile individuare quale tecnologia viene utilizzata dal nostro Layer 2 preferito e se gli attori che coinvolge garantiscono livelli di sicurezza adeguati.

Ad oggi infatti non esistono Rollup che permettono il deposito e il prelievo da L1 a L2 e viceversa completamente permissionless: la maggior parte dei Rollup guadagnano e preferiscono avere un completo controllo sul passaggio di fondi in ingresso e in uscita, sia a livello economico (guadagnano dalle fees) sia a livello politico e di sicurezza; possono intervenire tempestivamente per salvare situazioni drastiche, ma anche censurare attori che a loro non vanno a genio.

Per questo molti sostengono che i L2 non siano altro che dei MultiSig, ossia indirizzi controllati da un numero ristretto di attori e quindi diametralmente opposti rispetto all’etica di cui parlavamo finora. La strada è lunga e la stiamo percorrendo a gran velocità; quello che non si pensava possibile 3/4 anni fa ora è realtà e basterà continuare per questa strada di concorrenza e ambiente di sviluppo non censurato per vedere nuove applicazioni e tecnologie prendere il sopravvento.

Quale problema vogliamo risolvere?

Chi sono gli attori coinvolti?

I principali attori sono chiaramente gli Optimistic Rollup e gli Zero Knowledge Rollup di cui abbiamo precedentemente spiegato le differenze, ma ormai non si piò trascurare la presenza di alternative come i Based Rollup, i Validium e i Sovereign Rollup.

In questo contesto poi si deve porre l’attenzione su come viene gestita la Data Availability e sulla metodologia di prelievo dei fondi da L2 a L1.

Insomma la modularità apre un mondo di dettagli tecnici, ruoli, matematica e teoria dei giochi, inizialmente può spaventare ma affrontando un argomento alla volta si può creare il proprio scheletro di competenze che può poi essere nutrito con i nuovi risvolti della tecnologia.

Cerchiamo quindi di dare una definizione degli attori coinvolti in questo processo, quale ruolo ricoprono e quali sono le cinque fette della torta dei rischi che L2BEAT usa per aiutarci a navigare in questo mare di tecnicismi:

Sequencer: responsabile dell’ordine e dell’esecuzione delle transazioni sul rollup. Il sequencer verifica le transazioni, comprime i dati in un blocco e invia i dati ad esso relativi per consentire la ricostruzione dello stato al L1.

È colui che si occupa di prendere tutte le transazioni avvenute sul L2, ordinarle ed inviarle alla funzione deterministica di cui parlavamo prima che poi fornirà la state root. La centralizzazione in questo attore può portare ad alti livelli di censura e impossibilità di prelevare i propri fondi dal L2. Per questo molti stanno lavorando a Sequencer decentralizzati o metodi di Self Sequence.

Proposer: attore che propone una radice di stato su L1 e che garantisce la fluidità dei prelievi tra le due reti; proporre un passaggio di stato non corretto potrebbe causare problemi a tutti i partecipanti al L2 e congelare i fondi.

Metodologie di pubblicazione autonoma sono in stato di sviluppo, ad oggi la maggior parte dei rollup richiede una importante componente di fiducia verso questo attore.

Data Availability: letteralmente la disponibilità dei dati di un rollup di essere raggiungibili da qualsiasi nodo.

La disponibilità dei dati (DA), in particolare la sua separazione dai nodi del rollup, è uno dei fattori principali che consente a un rollup di scalare in modo sicuro. Un rollup deve decidere cosa utilizzare come DA Layer per garantire che qualsiasi nodo possa recuperare i dati, senza alcuna autorizzazione e in qualsiasi circostanza.

Per questo motivo, l’utilizzo di Ethereum per la DA fornisce attualmente le più solide garanzie di sicurezza. Se i dati vengono memorizzati in un luogo diverso da un L1 permissionless, il progetto non è un rollup, ma piuttosto un validium.

State Validation: è ciò di cui abbiamo trattato prima in relazione alle Fraud Proof, chi è preposto alla verifica degli errori nei vari passaggi di stato? Prima abbiamo parlato del metodo usato dagli Optimistic Rollup e in futuro approfondiremo sicuramente anche quello legato agli ZK.

Importante comprendere chi può partecipare a queste operazioni nel Rollup che stiamo studiando: è una serie di operatori whitelisted? È permissionless? È necessario un minimo di stake per poter partecipare? Tutti aspetti fondamentali legati alla verifica degli errori del L2.

Exit Window: ossia il tempo che gli utenti hanno a disposizione per uscire da un sistema prima di un aggiornamento indesiderato. Tiene conto dei ritardi nell’aggiornamento, dei ritardi nelle transazioni forzate e di altri fattori temporali. Tipicamente vengono suddivisi in Stage, dove maggiore è il tempo per cui posso uscire dalla rete a seguito di un aggiornamento indesiderato, più tempo ho a disposizione meglio è.

Questi sono alcuni dei termini utilizzati all’interno delle classificazioni dei rollup e degli attori coinvolti negli Optimistic Rollup che ci aiutano a comprendere meglio quali sono i punti critici, nonché come classificarli in base alle tecnologie che utilizzano.

La torta di L2BEAT rappresenta lo stato in cui si trova ogni rollup nell’ottenimento delle caratteristiche di “Rollup Supremo” in termini di sicurezza e possibilità di uscita indipendente, di seguito un esempio della torta di Arbitrum.

Chi sono gli attori coinvolti?

Quali orizzonti per il futuro?

Luca Donno conclude la sua valutazione sulle differenze tra Optimistic e Zero Knowledge con questa frase:

“Abbiamo iniziato a sviluppare rollup ottimistici anni fa pensando che sarebbero stati una soluzione a medio termine fino a quando la tecnologia ZK non sarebbe stata sufficientemente matura per costruire una zkEVM, cosa che era prevista per molti anni nel futuro. Pensavamo che i protocolli di sfida fossero più veloci e facili da implementare rispetto ai rollup ZK, ma il tempo ha dimostrato che questa opinione era sbagliata: il primo rollup ZK universale, cioè Starknet, è stato rilasciato nel maggio 2022, mentre il primo zkEVM, cioè ZKsync Era, nel febbraio 2023, e possiamo contare almeno altre 3 implementazioni zkEVM indipendenti con Linea, Scroll e Polygon zkEVM. Il primo sistema a prova di frode permissionless, ovvero OPFP, è stato rilasciato solo nel giugno 2024 e non ne sono stati ancora implementati altri. Sebbene questo sia vero, è anche importante notare che, al momento in cui scriviamo, nessun rollup ZK è abbastanza maturo da funzionare in un contesto permissionless, ma probabilmente ci si avvicina molto.”

Poi subentrano elevati costi, scarsa scalabilità e ritardo nell’avanzamento tecnologico, siamo in una situazione in cui a causa del disallineamento degli incentivi tra utilizzatori e protocolli, alcuni team, nonostante abbiamo le risorse per migliorare alcuni aspetti, guadagnano ancora troppo dalla centralizzazione dei comparti per muoversi verso innovazioni più etiche. Infine la tecnologia ZK è ancora poco distribuita e accessibile, il che limita la scalabilità dei rollup ZK e scoraggia la migrazione dei progetti per le momentanee barriere d’ingresso.

Per tutte queste incertezze è fondamentale oggi per i Crypto Investitori e utilizzatori della Defi conoscere queste differenze e finanziare direttamente, con le proprie azioni, quei protocolli che integrano le tecnologie più sicure e che hanno il maggior allineamento di incentivi tra gli sviluppatori e gli utilizzatori.

Sposiamo il mondo delle crypto perché togliamo potere di censura ai governi e alle banche sui nostri fondi, non siamo qui per traslare quel potere a team di sviluppatori e pochi nodi eletti.


X

Vuoi essere sempre sul pezzo?

Iscriviti alla newsletter per ricevere approfondimenti esclusivi e analisi ogni settimana.

Se ti iscrivi c’è un regalo per te!

bitcoin
Bitcoin (BTC) $ 98,387.36
ethereum
Ethereum (ETH) $ 3,855.45
tether
Tether (USDT) $ 0.999812
xrp
XRP (XRP) $ 2.39
solana
Solana (SOL) $ 226.77
bnb
BNB (BNB) $ 722.58
dogecoin
Dogecoin (DOGE) $ 0.431517
usd-coin
USDC (USDC) $ 1.00
cardano
Cardano (ADA) $ 1.11
staked-ether
Lido Staked Ether (STETH) $ 3,852.41
tron
TRON (TRX) $ 0.294890
avalanche-2
Avalanche (AVAX) $ 49.52
shiba-inu
Shiba Inu (SHIB) $ 0.000030
wrapped-steth
Wrapped stETH (WSTETH) $ 4,588.85
the-open-network
Toncoin (TON) $ 6.43
chainlink
Chainlink (LINK) $ 24.80
polkadot
Polkadot (DOT) $ 9.52
stellar
Stellar (XLM) $ 0.454848
wrapped-bitcoin
Wrapped Bitcoin (WBTC) $ 97,998.26
bitcoin-cash
Bitcoin Cash (BCH) $ 596.85
hedera-hashgraph
Hedera (HBAR) $ 0.307001
sui
Sui (SUI) $ 3.95
weth
WETH (WETH) $ 3,854.76
pepe
Pepe (PEPE) $ 0.000025
uniswap
Uniswap (UNI) $ 17.02
litecoin
Litecoin (LTC) $ 122.61
near
NEAR Protocol (NEAR) $ 7.12
leo-token
LEO Token (LEO) $ 9.36
wrapped-eeth
Wrapped eETH (WEETH) $ 4,078.63
aptos
Aptos (APT) $ 13.27
internet-computer
Internet Computer (ICP) $ 13.28
ethena-usde
Ethena USDe (USDE) $ 1.00
polygon-ecosystem-token
POL (ex-MATIC) (POL) $ 0.636590
usds
USDS (USDS) $ 0.999528
ethereum-classic
Ethereum Classic (ETC) $ 34.32
crypto-com-chain
Cronos (CRO) $ 0.186180
vechain
VeChain (VET) $ 0.061083
render-token
Render (RENDER) $ 9.46
bittensor
Bittensor (TAO) $ 656.45
fetch-ai
Artificial Superintelligence Alliance (FET) $ 1.84
kaspa
Kaspa (KAS) $ 0.173544
arbitrum
Arbitrum (ARB) $ 1.06
filecoin
Filecoin (FIL) $ 7.07
hyperliquid
Hyperliquid (HYPE) $ 12.61
aave
Aave (AAVE) $ 265.09
algorand
Algorand (ALGO) $ 0.467481
mantle
Mantle (MNT) $ 1.16
blockstack
Stacks (STX) $ 2.47
mantra-dao
MANTRA (OM) $ 3.94
monero
Monero (XMR) $ 197.89