Panoramica delle soluzioni di scalabilità per Ethereum
Punti Chiave
Nonostante Ethereum sia una delle più grandi blockchain in assoluto, la sua rete presenta diversi problemi legati al costo delle transazioni e alla scalabilità;
col passare degli anni, il prezzo delle transazioni “gas fees” su Ethereum è aumentato esponenzialmente, e la rete ha sperimentato diverse controversie legate alla capacità di elaborazione delle transazioni;
con lo sviluppo di nuove tecnologie, sono nate le cosiddette soluzioni di scaling e, in particolare, le soluzioni di scaling Layer 2, che consentono di ridurre i costi e aumentare notevolmente il numero di transazioni al secondo;
esistono diversi tipi di soluzioni di scaling Layer 2, ma le più famose sono le Sidechain, le Parachain, gli State Channels, le Nested Blockchain, e i più recenti Rollups, tra i quali Optimistic Rollups e ZK-Rollups.
Negli ultimi anni la blockchain Ethereum è cresciuta rapidamente, affermandosi come principale piattaforma decentralizzata per lo sviluppo di dApps, smart-contracts e asset digitali come gli NFT. Tuttavia, uno dei principali limiti di Ethereum è legato alla scalabilità della rete e alla sua limitata capacità di elaborare le transazioni. Per tale motivo, sono state sviluppate soluzioni di scalabilità per migliorarne velocità ed efficienza: Layer 2 e i Rollup. In questa guida vedremo di cosa si tratta, con un focus su Optimistic Rollups e Rollup Zero-Knowledge.
Ethereum rappresenta una delle blockchain più utilizzate in circolazione, seconda solamente a Bitcoin in termini di capitalizzazione e famosa per essere la principale piattaforma decentralizzata su cui poter costruire applicazioni e utilizzare smart-contracts.
Ethereum, però, ha da sempre avuto un problema: il costo elevato delle transazioni e la limitata capacità di elaborazione delle transazioni. Difatti, numerosi utenti non utilizzano Ethereum per via del prezzo delle gas fees, molto più alto della media richiesta da altre blockchain come BNB Chain.
Inoltre, avendo una capacità di elaborazione delle transazioni più bassa rispetto ad altre reti, risulta difficile raggiungere un buon livello di scalabilità. Attualmente, le soluzioni per mantenere alto il livello di TPS su Ethereum sono le soluzioni di scaling come le Layer 2, che hanno consentito di aumentare l’adozione della rete negli ultimi anni.
A queste soluzioni si sono uniti di recente i Rollups, strumenti divenuti popolari per essere utilizzabili come soluzioni di scaling L2 ma che consentono di ottenere risultati molto più soddisfacenti.
In questa guida vedremo nel dettaglio quali sono le soluzioni di scaling Ethereum disponibili, con una particolare attenzione sugli Optimistic Rollups e i Rollup ZK.
Soluzioni di scaling Layer 2 su Ethereum: cosa sono?
Con il continuo aumento del numero di utenti su Ethereum, la blockchain ha raggiunto dei limiti che devono essere superati al fine di evitare un continuo aumento dei costi di transazione.
Sono quindi state sviluppate numerose soluzioni, chiamate appunto soluzioni di scaling, con l’obiettivo di aumentare la scalabilità e la velocità delle transazioni senza sacrificare decentralizzazione e sicurezza.
D’altronde, se non viene rispettato il blockchain trilemma (sicurezza, scalabilità, decentralizzazione), la blockchain non potrebbe mai raggiungere la mass-adoption.
Le soluzioni di scaling possono essere sia di Layer 1, ovvero sviluppate direttamente sulla Mainnet di Ethereum, sia di Layer 2, ovvero create su uno strato secondario costruito sulla Layer 1.
Nello specifico, quando si parla di soluzioni di Layer 2 ci si riferisce a tutte le soluzioni create per migliorare la scalabilità di una blockchain, gestendo le transazioni fuori dalla Mainnet, ma mantenendo comunque un ottimo grado di decentralizzazione e sicurezza.
Questo è possibile in quanto, dopo un certo numero di transazioni eseguite fuori dalla Mainnet o, comunque, dopo un certo numero di blocchi convalidati, le transazioni vengono salvate ed archiviate sulla Layer 1.
Le soluzioni Layer 2 appartengono quindi alla categoria delle soluzioni off-chain, ed ereditano il loro livello di sicurezza dalla Mainnet di Ethereum. In sintesi, le attività computazionali vengono eseguite fuori dalla blockchain per evitare che questa si congestioni, elemento che renderebbe l’esperienza utente macchinosa e aumenterebbe i costi di transazione.
Come funzionano le Layer 2 e come risolvono i problemi di scalabilità per Ethereum
Come già anticipato, una soluzione Layer 2 su Ethereum rappresenta una blockchain separata alla Mainnet che eredita i livelli di sicurezza e decentralizzazione dalla rete principale.
Il funzionamento è abbastanza semplice: la blockchain L2 comunica con Ethereum inviando blocchi di transazioni e assicurandosi che siano rispettate le garanzie di sicurezza e decentralizzazione.
In questo modo si evita di dover eseguire modifiche alla Layer 1, che richiederebbero molta più energia e costi, col rischio di congestionare la rete.
Utilizzando questo approccio, la Layer 1 si occuperà solamente di gestire la sicurezza e di dare la disponibilità dei dati, mentre la Layer 2 si occuperà dell’elaborazione delle transazioni alla massima velocità. Una volta elaborate, quindi, le transazioni verranno mandate alla Layer 1, che dovrà solamente confermarle.
In generale, le soluzioni di scaling Layer 2 sono basate su server o cluster di server. Questi vengono indicati di solito come nodi o validatori, e possono essere gestiti da singoli individui o da società che vogliono partecipare allo sviluppo della rete. In poche parole, il loro compito è quello di ricevere le transazioni, elaborarle e inviarle alla Layer 1.
Applicando questo semplice ma efficace sistema, gli effetti sono notevoli:
viene aumentato il numero di transazioni al secondo (TPS), migliorando l’esperienza del utente e riducendo la congestione della rete Ethereum principale;
Il costo delle transazioni “gas fee” viene ridotto drasticamente, elaborando le transazioni in gruppi e facilitando l’accesso all’utente medio;
eventuali aggiornamenti sulla Layer 2 non vanno ad intaccare la sicurezza o la decentralizzazione di Ethereum.
Questi benefici hanno reso le Layer 2 uno degli argomenti più discussi negli ultimi anni, tant’è che sono state sviluppate numerose soluzioni di scaling particolarmente efficienti.
Quanti tipi di Layer 2 esistono?
Come avrai intuito, le Layer 2 hanno alla base un determinato funzionamento, che però può differire a seconda della specifica soluzione adottata. Ad oggi, le soluzioni di scaling più utilizzate sono le Sidechain, le Parachain, gli State Channels e le Nested Blockchain.
Ognuna di queste soluzioni ha alla base i principi di una Layer 2, ma differiscono in alcuni punti fondamentali. Vediamole una ad una in modo da capire quali sono le analogie e le differenze tra loro.
Sidechain
Le Sidechain, come suggerisce il nome, sono delle blockchain separate dalla blockchain principale che funzionano in maniera indipendente da Ethereum.
Si tratta di una delle prime soluzioni di scaling sviluppate negli anni, e sono collegate a Ethereum Mainnet tramite un “bridge” che funziona in entrambe le direzioni, con algoritmi di consenso a loro volta separati per ottimizzare al meglio l’elaborazione delle transazioni, evitando di congestionare la rete principale.
Una delle Sidechains più rinomate è Polygon. Polygon si basa su un'implementazione adattata del framework Plasma, e ha un token nativo chiamato MATIC. Il token MATIC è stato creato su blockchain Ethereum: si tratta quindi di un token ERC-20 usato per interagire con l’ecosistema e pagare delle gas fees, drasticamente ridotte rispetto alla mainnet di Ethereum.
Lato compatibilità, Polygon è una soluzione cosiddetta EVM, cioè Ethereum Virtual Machine compatible, e presenta uno strato di convalida separato da vari ambienti di esecuzione. Di conseguenza, essendo compatibile con EVM, è possibile distribuire uno smart contract Ethereum sulla rete Polygon stessa.
Per quanto possa essere efficiente questa soluzione, anche l'utilizzo delle Sidechain comporta degli svantaggi, in particolare legati alla sicurezza.
A differenza delle soluzioni di scaling di Layer 2 più avanzate, infatti, le Sidechain non pubblicano i cambiamenti di stato e i dati delle transazioni su Ethereum mainnet, sacrificando in parte anche la decentralizzazione in cambio di un elevato throughput dei dati.
Ciò è dovuto principalmente alla presenza di un meccanismo di consenso separato, che richiede un livello di fiducia diverso rispetto a quello riposto sulla Mainnet.
Parachain
Le Parachain sono delle soluzioni di scaling non adottate su Ethereum ma comunque molto efficienti dal punto di vista tecnico. In poche parole, si tratta di una struttura che funziona in modo parallelo rispetto alla struttura principale, che assume tutte le caratteristiche di una blockchain anche se non si tratta di una rete vera e propria.
La loro natura consente quindi di elaborare le transazioni in parallelo rispetto alla Mainnet, ereditando i livelli di sicurezza e aumentando notevolmente la scalabilità. Inoltre, le Parachain non hanno criteri specifici per la loro progettazione, ma devono solamente essere in grado di dimostrare ai validatori che ogni blocco sia elaborato correttamente.
Di conseguenza, una Parachain può essere sia pubblica che privata, e può essere costruita per un uso specifico a patto che aiuti il sistema a migliorare la sua scalabilità mantenendo alto il livello di sicurezza e decentralizzazione. In più, le Parachain possono comunicare tra loro per l’elaborazione e l’invio delle transazioni.
Ad oggi, uno dei progetti più famosi che sfrutta le Parachain è Polkadot. A causa della sua natura, Polkadot viene definito come protocollo Layer 0, in quanto utilizza una blockchain principale, la Polkadot Relay Chain, su cui possono essere costruite appunto le Parachain come soluzione di scaling.
La Relay Chain funge quindi da ponte tra le Parachain per farle comunicare tra loro, sfruttando lo Sharding al fine di rendere più efficiente l'elaborazione delle transazioni.
State Channels
Come le soluzioni di scaling Ethereum citate sopra, anche gli State Channels rappresentano delle soluzioni off-chain. In sintesi, tramite questi canali è possibile per i partecipanti eseguire le transazioni al di fuori della blockchain.
Il numero di transazioni eseguite off-chain è arbitrario, con l’unico obbligo di presentare on-chain solamente due transazioni. In questo modo si riduce al minimo l’interazione con la Mainnet Ethereum, evitando di congestionare la rete ed aumentando la velocità delle transazioni, con una conseguente riduzione dei costi.
Di seguito un breve riassunto del funzionamento degli State Channels:
una parte dello stato della blockchain viene bloccata tramite la firma di un contratto multisig, in modo che tutti i partecipanti siano d'accordo tra loro;
i partecipanti eseguono le loro transazioni off-chain;
i partecipanti inviano il nuovo stato alla blockchain, chiudendo lo State Channel.
Gli unici step in cui si interagisce con la blockchain, quindi, sono il primo e l’ultimo, ovvero le fasi di apertura e chiusura del canale.
Tuttavia, gli State Channels possono presentare alcuni svantaggi, come la necessità per tutti i partecipanti di essere disponibili e d’accordo tra loro.
Inoltre, l’uso degli State Channels risulta conveniente solamente se previsto per specifiche applicazioni con un numero determinato di partecipanti, in quanto aggiungere e rimuovere utenti rappresenterebbe un cambio continuo del contratto.
Infine, se non si devono effettuare numerose operazioni all’interno di un certo lasso temporale, l’uso degli State Channels potrebbe risultare macchinoso e costoso.
Nested Blockchain
Questa soluzione di scaling funziona in maniera abbastanza semplice. In poche parole, vengono create delle blockchain “child”, ovvero figlie, che vengono collegate alla Mainnet Ethereum, che rappresenta la blockchain madre.
Le blockchain child si occuperanno di gestire le transazioni, offrendo quindi una maggiore capacità di throughput dei dati ed evitando di far congestionare la blockchain principale.
I parametri e le regole da rispettare vengono stabilite dalla blockchain madre, che si limiterà solamente alla risoluzione di eventuali problemi legati alle transazioni. Una volta elaborate le transazioni, le blockchain child le restituiranno alla Mainnet.
Un esempio di progetti che usano le Nested Blockchain è OmiseGO (adesso OMG Network), ovvero una soluzione di scaling Ethereum pienamente compatibile con i token ERC-20 e ETH.
Rollups: cosa sono?
In generale, la Mainnet di Ethereum elabora le transazioni dando priorità a coloro che pagano più gas fees, col rischio di lasciare tutti gli altri utenti indietro.
Tuttavia, sapendo che su Ethereum è possibile pubblicare sia dati che transazioni, sono stati elaborati dei nuovi sistemi per ottimizzare i processi. A tal proposito, gli sviluppatori hanno riscontrato che l'archiviazione dei dati on-chain può risultare pesante per la Mainnet, mentre i dati di una transazione sono notevolmente più leggeri.
Quindi, memorizzando gruppi di transazioni elaborate fuori dalla blockchain, ed inviando poi solo i dati finali alla Mainnet in un unico processo, consente da un lato di ridurre il carico di lavoro sulla Mainnet elaborando i dati off-chain, e dall’altro di lavorare più transazioni sfruttando blocchi di transazioni.
A tal proposito, i blockchain Rollups "arrotolano", o compilano, un grande gruppo di transazioni trasformando il tutto in un unico dato, che sarà poi inviato alla Mainnet. Questo sistema ha dato vita, come vedremo più avanti, agli Optimistic Rollups e ai ZK-Rollups.
Come funzionano i Rollups e come risolvono i problemi di scalabilità per Ethereum?
Il funzionamento dei Rollups non è così diverso dalle altre soluzioni di scaling Layer 2. Tuttavia, ci sono alcune differenze che consentono di garantire un maggior livello di sicurezza, scalabilità e decentralizzazione.
In poche parole, i Rollups prendono le transazioni dalla mainnet e le elaborano off-chain, convertendole in un blocco unico di dati che verrà poi rispedito alla Mainnet.
Elaborando tutto al di fuori della blockchain ma estrapolando le transazioni dalla Mainnet stessa, e inviando più transazioni in un unico blocco di dati, i Rollups svolgono un ruolo importante nel migliorare la scalabilità di Ethereum.
Difatti, finora sono state adottate soluzioni che presentano però alcuni svantaggi. Da un lato, soluzioni come gli State Channels rappresentano un sistema sicuro ma funzionante solo per alcuni tipi di applicazioni; dall’altro, le Sidechain risultano pienamente compatibili con EVM e molto scalabili, ma sacrificano la sicurezza a causa del loro modello di consenso.
I Rollups uniscono tutti i vantaggi di queste due soluzioni, garantendo sicurezza grazie all’uso di smart-contracts Ethereum non modificati, e scalabilità grazie alla possibilità di inviare gruppi di transazioni in un unico pacchetto di dati.
Quali tipi di Rollups esistono?
Attualmente le soluzioni di scaling Layer 2 sono necessarie per raggiungere un'adozione di massa della blockchain Ethereum, in quanto sono l’unico metodo per ridurre le gas fees e per aumentare notevolmente il numero di transazioni per secondo (TPS).
Ad oggi una delle soluzioni di scaling L2 più popolari su Ethereum è Polygon, capace di eseguire fino a 7000 TPS contro le 27 TPS di Ethereum, ma è anche vero che i Rollup sono diventati una soluzione molto ricercata in grado di competere con le alternative già presenti.
I tipi di Rollups pienamente sviluppati e utilizzabili, al momento, sono due: Optimistic Rollups e ZK-Rollups.
Vediamo insieme il loro funzionamento!
Optimistic Rollups
Gli Optimistic Rollups sono progettati per aumentare il throughput dei dati su Ethereum, riducendo l’attività computazionale sulla Mainnet ed elaborando i dati off-chain.
A differenza di altre soluzioni come le Sidechain, gli Optimistic Rollups ereditano la sicurezza della Mainnet pubblicando l’esito delle transazioni on-chain, consentendo di elaborare un numero di transazioni circa 10-100 volte superiore alla norma e riducendo al contempo il prezzo delle gas fees.
Inoltre, le transazioni vengono organizzate in gruppi e compresse al massimo per ridurre la quantità di dati on-chain. Tuttavia, la loro peculiarità deriva dal loro essere “ottimisti”, aggettivo da cui deriva appunto il nome Optimistic.
Difatti, vengono definiti con questo termine in quanto si presuppone che tutte le transazioni off-chain siano valide. Cioè, il sistema dà per scontata la validità delle transazioni, controllando solamente quelle non valide a posteriori.
Ciò consente un'elaborazione estremamente rapida delle transazioni, garantendo al contempo un ottimo livello di sicurezza. Ad oggi gli Optimistic Rollups più popolari sono Arbitrum e Optimism, di recente hanno rilasciato entrambi il loro token nativo, rispettivamente $ARB e $OP, i quali sono già disponibili presso Binance.
Optimism è un protocollo L2 veloce, stabile e scalabile, costruito come estensione minima del software Ethereum e con un'architettura EVM-equivalente che consente di scalare le app di Ethereum abbattendo i costi.
Arbitrum, invece, è diventato in poco tempo il Layer 2 più grande in assoluto, con circa 2 miliardi di dollari in TVL e un funzionamento che si basa sugli Optimistic Rollups appena descritti. Tuttavia, gli Optimistic Rollups hanno di solito una finestra di contestazione di 7 giorni per revocare le attività dal Layer 2 al Layer 1.
Durante questo periodo, i validatori hanno quindi la possibilità di contestare le transazioni, ma si tratta di un’operazione solitamente costosa. Arbitrum mette invece a disposizione una prova di frode a più giri, chiamata interactive proving, che consente alla rete di risolvere in modo più efficiente le controversie dopo l’elaborazione delle transazioni.
Negli ultimi mesi Arbitrum ha registrato anche ottime performance legate al volume di transazioni, con picchi di quasi 700.000 transazioni eseguite in 24 ore.
Inoltre, Arbitrum ha rilasciato il suo token $ARB sotto forma di Airdrop il 23 Marzo 2023, token che è già stato listato su Binance!
ZK-Rollups
I rollup Zero-Knowledge (ZK) raggruppano le transazioni in blocchi proprio come gli Optimistic Rollups. I validatori invieranno quindi un riepilogo delle modifiche necessarie relative alle transazioni all’interno di un blocco, anziché inviare ogni singola transazione.
In più, a differenza di ciò che accade nei modelli Optimistic, nei ZK vengono prodotte prove di validità che dimostrano con certezza crittografica la correttezza delle modifiche effettuate.
Lo stato delle transazioni è mantenuto da uno smart-contract distribuito sulla Mainnet Ethereum e, per aggiornarlo, i nodi dovranno presentare una prova di validità per la verifica. Come accennato, la prova di validità ha garanzia crittografica, quindi si dovranno solo fornire prove di validità per finalizzare le transazioni.
Ciò differisce dai Rollups Optimistic, che hanno la necessità di pubblicare tutti i dati on-chain. Questo meccanismo aumenta quindi la scalabilità, in quanto le transazioni in uscita vengono eseguite quando lo smart-contract verifica la prova di validità. Su un modello Optimistic, invece, ci possono essere ritardi a causa di eventuali contestazioni.
In sintesi, i ZK-Rollups risultano più sicuri grazie alle loro prove di verifica, anche se la loro implementazione è un po’ più macchinosa rispetto ad un Rollup Optimistic. Ad oggi, i ZK-Rollups più famosi sono Immutable X e zkSync, di cui soltanto Immutable X ha un token nativo ($IMX), anch’esso disponibile presso Binance.
Tuttavia, zkSync ha di recente lanciato la sua Public Mainnet ERA, e secondo alcuni rumors è possibile che abbiano intenzione di lanciare un token nativo prossimamente, un po’ come hanno fatto Arbitrum e Optimism con i loro token $ARB e $OP, ma al momento non c’è alcuna conferma ufficiale da parte del team Matter Labs.
Dall’altro lato, Polygon ha di recente annunciato il lancio della sua soluzione Zero Knowledge “zkEVM Mainnet Beta” il 27 marzo. Inoltre,Polygon e Immutable X hanno stretto una nuova partnership dando vita a Immutable zkEVM, un nuovo ZK-Rollup compatibile con EVM, alimentato da Polygon e supportato dalla piattaforma Immutable.
L’obiettivo principale di questa partnership sarà quello di rendere lo sviluppo di giochi Web 3.0 più facile e meno rischioso.
Conclusioni
Nonostante Ethereum sia uno dei progetti più rilevanti nel mondo crypto e la sua roadmap sia davvero ambiziosa, ad oggi il problema della scalabilità è un elemento da non sottovalutare. Difatti, l’elevato costo delle commissioni di transazione e le alte probabilità di congestione della rete hanno da sempre limitato l’accesso agli utenti.
Tuttavia, con le nuove soluzioni di scaling Layer 2, i Rollups e tutte le nuove soluzioni in continua via di sviluppo, la blockchain Ethereum potrebbe risolvere i suoi problemi di scalabilità diventando una rete migliore, più accessibile e più economica. Non è un caso, quindi, che i token nativi L2 come Arbitrum e Optimism abbiano colto l’interesse di tantissimi investitori negli ultimi tempi.
Se anche tu sei interessato a partecipare a questa rivoluzione, ricorda che trovi la maggior parte dei token L2 su Binance Exchange!
Avvertenza sui Rischi: i prezzi degli Asset Digitali sono soggetti a un elevato rischio di mercato e alla volatilità dei prezzi. Il loro valore potrebbe diminuire o aumentare e l'Utente potrebbe non recuperare l'importo investito. Binance non può in alcun modo controllare tali oscillazioni e non fornisce consulenza in materia di investimenti, fiscale, giuridica o di altro tipo e non è responsabile dell'uso o dell'interpretazione delle informazioni disponibili su Binance o su qualsiasi altro mezzo di comunicazione. Gli Utenti dei Servizi Binance sono tenuti a comprendere i rischi connessi al trading di Asset Digitali e si raccomanda loro di agire con prudenza e in maniera responsabile al meglio delle proprie capacità e conoscenze. In particolare, l’Utente deve tenere presente che qualsiasi utilizzo dei Servizi Binance comporta dei rischi e che i rendimenti passati non sono indicativi dei risultati futuri. Tali rischi includono, a titolo esemplificativo, il rischio di mercato, il rischio di liquidità, il rischio di volatilità, il rischio di perdita totale di capitali, il rischio informatico, il rischio di responsabilità di natura legale e il rischio fiscale. Binance non è responsabile delle decisioni adottate dall'Utente in merito all'acquisto, alla vendita o alla detenzione di Asset Digitali o valute fiat sulla base delle informazioni in suo possesso, comprese le informazioni fornite Binance Italia. Per ulteriori informazioni, consultare le nostre Condizioni d'uso e avvertenze sui rischi.