Blockchain Layer 2: cosa sono e perché sono così promettenti

Un’analisi approfondita delle diverse soluzioni di scalabilità per blockchain, i Layer 2: vediamo cosa sono e perché sono promettenti.

Analizziamo le soluzioni di scaling Layer 2 attualmente presenti sul mercato.

Attualmente, Bitcoin può supportare in media ~7 transazioni al secondo (TPS), Ethereum ~10 TPS, mentre la rete di pagamento globale VISA elabora oltre 1.700 TPS.

blockchan layer 2
Adobe Stock

Gli utenti pagano delle tariffe per l’utilizzo delle infrastrutture blockchain e queste tariffe servono a pagare ogni validatore che lavora per incorporare nuove informazioni nella blockchain. Di conseguenza, le reti con un grado di decentralizzazione più elevato fanno pagare di più il gas perché richiedono più validatori.

D’altra parte, le reti con un TPS più elevato addebiteranno meno commissioni per il gas per ogni transazione, perché le commissioni sono suddivise tra più utenti. Pertanto, le nuove blockchain devono avere un TPS più elevato se si vuole mantenere la decentralizzazione e allo stesso tempo consentire tariffe per il gas più economiche, per renderle più accessibili a una base di utenti globale, ed è qui che entrano in gioco le soluzioni di scaling di livello 2 (L2).

Un’organizzazione autonoma decentralizzata (DAO) su Ethereum, ad esempio, può consentire ai suoi membri di votare su L2 per risparmiare denaro, mentre elabora transazioni di grandi dimensioni su L1 per utilizzare tutta la sicurezza e la liquidità del mercato.

Vediamo quindi perché queste soluzioni sono importanti.

Soluzioni Layer 2: cosa sono e perché sono importanti

Attualmente, su Ethereum esistono tre tipi di soluzioni di scaling mainstream: state channel, plasma e rollup.

State Channel

La struttura

Nel mondo delle soluzioni di scaling, gli state channel sono i primi e strutturalmente i più semplici. Uno stato si riferisce al contenuto del database, come le transazioni registrate nei blocchi. In questo progetto, le modifiche intermedie dello stato, come le nuove transazioni, sono bloccate in “state channel” esterni alla catena, che poi rimettono online solo lo stato finale. Gli state channel risparmiano così le spese di gas perché spostano il calcolo e i dati irrilevanti dello stato intermedio fuori dalla L1.

woo 1
(credits: coinmarketcap.com)

Immaginate due giocatori che giocano a dadi e scommettono un bene sulla blockchain. Questo è il modo in cui potrebbero utilizzare lo state channel per risparmiare su una partita a più turni:

1. Una parte dello stato della blockchain è bloccata:

Le attività rilevanti (=stato) sono bloccate tra i due giocatori, in modo che entrambi debbano concordare la transazione successiva affinché questa avvenga su tali attività. Inoltre, lo smart contract deve avere una sorta di meccanismo per proteggere l’asset di un giocatore dal congelamento se l’altra parte cade offline per un lungo periodo di tempo.

2. I partecipanti aggiornano lo stato tra loro:

I due giocatori giocano a dadi e firmano transazioni che potrebbero essere inviate alla blockchain, ma inviano solo le transazioni firmate l’uno all’altro, ritardando il regolamento on-chain. In questo caso, si potrebbero implementare alcuni meccanismi per assicurarsi che una terza parte possa eseguire le transazioni se uno dei due giocatori va offline.

Inoltre, un meccanismo on-chain deve consentire alle transazioni firmate successivamente di annullare le transazioni precedenti, in modo che se il giocatore A stava vincendo ma inizia a perdere, non può inviare una transazione intermedia per guadagnare. Questo potrebbe essere fatto con un contratto Hash Time-Locked (HTLC), in cui i pagamenti inviati sono aperti per una sfida per un periodo di tempo prima di essere regolati, in modo che il giocatore B possa sfidare con una transazione successiva.

3. I partecipanti concordano e inviano lo stato finale alla blockchain:

Infine, quando il gioco termina, entrambi i giocatori si accordano sullo stato finale dei loro beni e inviano una transazione on-chain, chiudendo lo state channel e sbloccando i beni (=stato, ma probabilmente in una distribuzione diversa rispetto a quando è iniziato).

Tutte le regole coinvolte in ogni fase descritta sopra potrebbero essere applicate da smart contract on-chain. Proprio come qualsiasi meccanismo di sicurezza sulla blockchain, il punto è che se il meccanismo è progettato in modo robusto, non dovrebbe essere sfruttato a meno che non ci sia un’emergenza inaspettata.

Pro e contro

Dall’implementazione di cui sopra, possiamo vedere che gli state channel hanno chiari vantaggi e svantaggi. Da un lato, possono scalare all’infinito e supportare micropagamenti per qualsiasi DApp che voglia implementare un servizio pay-as-you-go. Inoltre, fornisce un regolamento soggettivo istantaneo, poiché le transazioni possono essere inviate in qualsiasi momento. I partecipanti non devono aspettare la conferma del blocco e sono limitati solo dalla velocità con cui possono firmare e scambiare messaggi. Infine, offrono anche una certa privacy intrinseca.

D’altra parte, poiché tutte le parti devono concordare uno stato bloccato e aprire un canale insieme, gli state channel non possono supportare una partecipazione aperta. Per esempio, gli utenti non possono inviare fondi a persone che non sono “nel” canale; inoltre non possono supportare attività che coinvolgono oggetti senza un chiaro proprietario logico, come Uniswap.

Inoltre, l’apertura di canali richiede il bloccaggio di molto capitale, soprattutto se dovessimo condurre attività complesse offline senza chiare aspettative sull’importo della transazione, rendendole inefficienti dal punto di vista del capitale. Richiede anche vivacità, il che significa che i partecipanti devono controllare costantemente L1 per vedere se qualcuno ha presentato una transazione intermedia, da soli o con una terza parte.

Anche i canali richiedono vivacità, magari sotto forma di una torre di controllo di terzi, per monitorare L1 e/o inviare transazioni a L1. Infine, a causa della partecipazione chiusa e del blocco degli asset, di solito rimangono aperti solo per un breve periodo di tempo prima del regolamento.

woo 2
(credits: coinmarketcap.com)

Caso d’uso

Il progetto più popolare che utilizza gli state channel è la Lightning Network su Bitcoin. Con un whitepaper scritto da Joseph Poon e Thaddeus Dryja nel 2016, la prima transazione è avvenuta sulla mainnet nel maggio 2017. I laboratori Lightning, fondati nel 2016 da Elizabeth Stark e Olaoluwa Osuntokun, stanno sviluppando il software che alimenta la Lightning Network, rendendola più accessibile.

L’idea di base di Lightning Network è quella di formare una rete di canali di pagamento bidirezionali, un sottoinsieme di state channel con funzionalità limitate, dove ogni nodo può essere collegato a più canali di pagamento. E poiché i nodi stessi possono “spingere” la liquidità da una parte all’altra, o “attraverso i canali”, senza perdere valore, la rete può instradare il pagamento attraverso i nodi/canali.

I nodi lungo il percorso non sono fidati, ma il pagamento viene eseguito con uno script che impone l’atomicità (l’intero pagamento riesce o fallisce) tramite blocchi temporali. Sebbene i router intermedi non perdano valore nel fungere da connessione, potrebbero rendersi meno flessibili man mano che la liquidità viene spostata. Di conseguenza, potrebbero applicare delle commissioni di instradamento. Illustriamo di seguito una transazione attraverso una semplice rete di 3 nodi e 2 canali.

Vediamolo con un esempio

Immaginiamo che A voglia inviare a C 4 BTC attraverso una rete di pagamento. A non è connesso a C, ma entrambi sono connessi a B. A può quindi inviare a B 4 BTC e B invia a C 4 BTC attraverso un altro canale. Dopo la transazione B ha ancora 15 BTC in totale, ma ora ha una capacità limitata di indirizzare i pagamenti verso C.

Possono scegliere di accettare i pagamenti instradati da C, oppure di chiudere e riaprire un canale quando la liquidità è esaurita, il che ha un costo, quindi possono addebitare questa transazione. Si noti che in questo scenario, l’importo della transazione è già limitato dalla liquidità minima nei canali, che è di 5 BTC.

woo 3
(credits: coinmarketcap.com)

Secondo 1ML, la Lightning Network ha attualmente 4.652 BTC (0,02% del totale) bloccati sulla rete, 17.820 nodi e 86.634 canali. La capacità media dei nodi è di 0,263 BTC, con una capacità media dei canali di 0,052 BTC (al 03/09/22).

Nonostante la presenza di molti nodi, la rete è ancora centralizzata se guardiamo alla sua distribuzione della liquidità. Attualmente, i cinque nodi più grandi sono gestiti da Bitfinex Node #1 (552 BTC), ACINQ (364 BTC), Bitfinex Node #2 (352 BTC), River Financial (223 BTC) e Kraken (198 BTC), che insieme controllano il 36% della liquidità. Zabka et al. hanno misurato la centralità della rete Lightning in base alla betweenness centrality, ovvero la centralità del nodo in base al numero di percorsi più brevi che lo attraversano, in un articolo pubblicato nel 2022. Hanno osservato un aumento del coefficiente Gini dall’81,5% al 91,9% dal 2019 al 2021. Ciò indica che i percorsi di routing possono effettivamente essere concentrati su un piccolo sottoinsieme di nodi.

Caratteristiche

D’altra parte, Lightning Network ha commissioni molto basse: attualmente, la commissione di base mediana è di ~1 satoshi (~$0,0002), con un tasso di commissione mediano dello 0,0027%. Questo potrebbe essere positivo per gli utenti, ma le persone che gestiscono nodi più piccoli con meno traffico potrebbero non guadagnare, a causa degli alti costi di gestione di un nodo e delle commissioni di apertura/chiusura del canale. Un altro motivo per cui Lightning Network potrebbe essere centralizzato.

La centralità non è solo un problema perché speriamo che gli L2 possano ereditare la proprietà decentralizzata degli L1, ma può anche influenzare l’efficienza della rete e renderla più vulnerabile agli attacchi con punti di guasto centrali. Questo problema potrebbe essere risolto solo rendendo la partecipazione alla rete più accessibile e incentivata.

Ora possiamo esaminare l’adozione della rete Lightning: l’utilizzo della rete è in costante crescita da quando è entrata in funzione. In termini di BTC, la rete ha registrato un aumento dell’800% in TVL nel febbraio 2019, raggiungendo 1.000 BTC nel marzo dello stesso anno.

Un altro aumento del 400% della capacità si è verificato nel terzo trimestre del 2021, portando il TVL a quasi 4.000 BTC. Oltre all’aumento causato dai capitali attratti durante i mercati toro delle criptovalute, il numero di utenti è aumentato anche con l’adozione di Chivo, Paxful, Cashapp e molti altri portafogli.

Queste applicazioni hanno permesso agli utenti di creare e interagire con altri portafogli Lightning, rendendo più facile l’utilizzo della rete Lightning. Il numero di utenti è cresciuto fino a oltre 80 milioni nel marzo 2022, secondo Arcane Research. Il numero di pagamenti è raddoppiato rispetto al 2021 e il valore dei pagamenti è aumentato di oltre il 400% (misurato in USD).

Plasma

La struttura

Simile agli state channel, il plasma si scala consentendo agli utenti di supervisionare solo i cambiamenti di stato rilevanti. L’idea di base di plasma è una sidechain non custodial.

Possiamo pensare a una sidechain come a una blockchain separata che utilizza meno validatori, quindi le spese di transazione sono più economiche, e comunica a L1. Rispetto alle blockchain con più validatori, le sidechain rappresentano un compromesso diretto tra costi e sicurezza.

Tuttavia, le sidechain sono “custodial”, il che significa che i validatori possono decidere collettivamente di commettere una frode, effettuando una transazione per trasferire i fondi degli utenti al loro portafoglio su L1.

Tornando ai plasma, essi eseguono transazioni fuori dalla chain e pubblicano periodicamente alcuni dati on-chain, il che li rende non custodiali. Secondo il whitepaper originale di Plasma di Joseph Poon e Vitalik Buterin, una catena plasma forma una struttura ad albero, come mostrato di seguito.

plasma ok
(credits: coinmarketcap.com)

Le transazioni vengono calcolate in una catena figlia (immaginate una sidechain), e lo stato viene merkleizzato e impegnato nella blockchain madre, merkleizzato di nuovo e impegnato nella sua genitrice, e così via. Le prove Merkle presentate dalle catene figlie non consentono di ricostruire completamente lo stato della catena figlia, ma permettono una verifica efficiente e sicura delle transazioni.

Per garantire la sicurezza in modo economico, queste piccole chain non verificano la validità dei dati impegnati; al contrario, gli utenti possono contestare la transizione di stato non valida con un blocco, e il perdente nella disputa viene tagliato.

Controversie

Se il blocco inviato era effettivamente non valido, il blocco viene annullato e il creatore del blocco viene penalizzato. In termini di controversie, la struttura ad albero può essere vista come un “sistema di tribunali”, con la catena radice come “corte suprema”. In questo modo si massimizza la disponibilità dei dati e si riducono al minimo i costi di caricamento delle prove di frode.

Il problema è che, per poter contestare un blocco non valido, un utente ha bisogno dei dati della catena madre, che i validatori possono evitare trattenendo i blocchi non validi. In questo caso è necessaria un’uscita di massa: tutti i partecipanti alla catena figlia devono uscire dalla catena entro una certa data.

L’uscita di massa garantisce che il comportamento bizantino della catena Plasma non abbia un impatto sui propri asset al di là di un significativo ritardo temporale e dell’arresto della chain; è anche più economica di una disputa gettando tutti i dati dello stato corrente sul Layer 1.

In conclusione, Plasma utilizza le prove di frode per arbitrare le dispute sulla validità delle transizioni di stato e penalizzare i comportamenti scorretti, grazie alla disponibilità dei dati su L1. E quando i validatori commettono frodi trattenendo i dati, gli utenti possono spostare in modo sicuro i fondi su L1 in un’uscita di massa. Tuttavia, il progetto originale di plasma era troppo complesso da implementare, quindi sono state progettate diverse versioni semplificate per scopi diversi, tra cui Plasma MVP, More Viable Plasma, Plasma cash e molte altre.

Pro e contro

Il vantaggio principale di plasma rispetto agli state channel è che ora supporta la partecipazione aperta, il che significa che gli utenti possono inviare beni a partecipanti che non hanno mai fatto parte del sistema. Inoltre, ha requisiti di capitale più bassi e non può essere interrotto da partecipanti che non collaborano.

Tuttavia, fornendo alcuni dati disponibili con ogni transazione, Plasma ha un’impronta L1 più grande. Inoltre, il meccanismo a prova di frode comporta un tempo di attesa per la finalizzazione per monitorare eventuali blocchi non validi inviati. In caso di uscita di massa, gli utenti devono fornire i propri dati per dimostrare la proprietà e una grande quantità di fondi sarà bloccata per il periodo di sfida prima di essere rilasciata su L1. Inoltre, l’implementazione dell’EVM sul plasma è difficile a causa delle sfumature nell’implementazione della logica dell’uscita di massa.

pro e contro plasma
(credits: coinmarketcap.com)

Sebbene all’epoca si pensasse che questa fosse la soluzione al problema della scalabilità della blockchain, la tecnologia di scalabilità è stata presto sostituita da altre. La rete OMG, che stava costruendo un livello di scaling Plasma, sta ora costruendo Boba, un L2 che utilizza il rollup ottimistico. La rete di rollup ottimistico Optimism era in precedenza il gruppo Plasma.

Al momento, l’unico progetto ampiamente adottato che utilizza Plasma è Polygon.

Tuttavia, Plasma ha fatto pensare a “modelli di calcolo parallelo” su una blockchain, dove chiunque può creare una chain personalizzata per diversi casi d’uso, e le loro attività potrebbero essere calcolate in parallelo, utilizzando L1 come livello di disponibilità dei dati di base.

Caso d’uso

Polygon è stata fondata nel 2017 e la sua mainnet è stata lanciata nel 2019. Il team ha appena concluso un round di finanziamento da 450 milioni di dollari lo scorso febbraio, guidato da Sequoia Capital India, con una valutazione di 2 miliardi di dollari. Ci sono più di 37k dApp distribuite sulla rete. La sua market cap di token è di oltre 10 miliardi di dollari (CMC, al 20/3/2023).

plasma pos
(credits: coinmarketcap.com)

Polygon ha un’architettura a tre livelli: contratti intelligenti su Ethereum, un livello di Proof-of-Stake per il consenso della rete principale (Heimdall) e un livello di produzione di blocchi (Bor). Il livello Bor aggrega le transazioni in blocchi, il livello Heimdall li convalida, aggrega i blocchi prodotti da Bor in un albero di Merkle e pubblica periodicamente la radice di Merkle nella catena principale. Un validatore che blocca MATIC partecipa alla rete eseguendo sia un validatore Heimdall che un produttore di blocchi Bor.

I contratti intelligenti su Ethereum forniscono la finalità e la gestione dei validatori. Poiché Polygon utilizza una sidechain Plasma sostenuta dal consenso Proof-of-Stake, può fornire sicurezza PoS, sicurezza Plasma (garanzia di uscita di massa, gli sviluppatori dovranno scrivere il proprio set di condizioni di disputa) o sicurezza ibrida.

La rete è a partecipazione aperta, ogni partecipante può diventare un validatore puntando un token MATIC, ma il numero di validatori è limitato a 100, che è quello che hanno al momento. Guardando ai dati delle transazioni, Polygon ha elaborato oltre 2.000 milioni di transazioni, con una velocità media di 23,6 TPS e un prezzo mediano del gas di 51,9 Gwei (< 0,01 dollari). La rete ospita attualmente oltre 220 M di indirizzi unici, dopo la crescita esponenziale dello scorso anno (Polyscan, al 19/02/2023).

Fonti

Impostazioni privacy