Cosa sono gli ZK rollup e come funzionano?

Cos’è uno ZK rollup?
Uno ZK rollup (anche chiamato Zero-Knowledge rollup) è una soluzione ai problemi di scalabilità per blockchain come Ethereum. È una soluzione Layer 2 che funziona sopra la blockchain esistente (Layer 1). Gli ZK rollup servono per elaborare più transazioni al secondo e ridurre i costi. A seconda dell’implementazione, possono anche migliorare la privacy, poiché i dati non devono sempre essere completamente pubblici. Tutto questo senza compromettere la sicurezza della rete.
Il termine ZK significa Zero-Knowledge ed è una tecnologia che permette di dimostrare la veridicità di un’affermazione usando prove crittografiche, senza rivelarne il contenuto effettivo. In altre parole, le transazioni possono essere validate senza che tutti i dati siano visibili pubblicamente. ZK quindi migliora la privacy e rende la blockchain più efficiente.
Invece di elaborare tutte le transazioni direttamente sulla blockchain, più transazioni vengono raggruppate in un unico grande rollup. Solo la prova (la Zero-Knowledge proof) viene poi registrata sulla blockchain.
In breve
- Gli ZK rollup sono una soluzione per blockchain come Ethereum che raggruppa più transazioni in una sola e aiuta la blockchain a scalare.
- Funzionano elaborando le transazioni off-chain e aggiungendo poi una Zero-Knowledge proof sulla chain principale per verificarne la validità.
- Forme note di ZK rollup includono zkSync, Starknet e Polygon zkEVM.
Come funzionano gli ZK rollup?
Gli ZK rollup spostano le transazioni su un secondo livello, riducendo così il carico computazionale sulla blockchain. Il loro funzionamento avviene in tre passaggi:
- Batch Processing: Gli utenti creano transazioni e le inviano al Layer 2 Rollup.
- Elaborazione off-chain: Tutte le transazioni inviate vengono elaborate off-chain e raggruppate in un batch.
- Zero-Knowledge Proof: Dopo aver creato il batch, viene generata una prova crittografica che ne conferma la correttezza. Questa prova viene verificata da uno smart contract sulla blockchain Layer 1.
In questo modo, migliaia di transazioni possono essere riassunte in una sola sulla blockchain, migliorando la scalabilità. Il rollup non registra ogni transazione singolarmente, ma invia sulla Layer 1 solo i dati riassuntivi o la ZK proof.
Esempio: 1.000 utenti vogliono effettuare una transazione su Ethereum contemporaneamente. Invece di elaborare 1.000 transazioni separate, lo ZK rollup le raggruppa e genera una prova crittografica che viene registrata su Ethereum. Questo riduce notevolmente il consumo di potenza e le gas fee.
Perché gli ZK rollup sono importanti?
Gli ZK rollup risolvono uno dei maggiori problemi della blockchain: la scalabilità. Quando una rete come Ethereum diventa popolare, può sovraccaricarsi, causando lentezza e alte commissioni.
Gli ZK rollup permettono di elaborare molte più transazioni al secondo. Con essi, Ethereum può teoricamente passare da 15 a oltre 1.000 transazioni al secondo. Inoltre, meno dati vengono registrati sulla blockchain, riducendo le gas fee.
Grazie alle Zero-Knowledge proof, i dettagli delle singole transazioni restano nascosti, pur potendone provare la validità. Non serve una parte centrale per approvarle: la crittografia garantisce la correttezza del batch, mantenendo la decentralizzazione. Anche se l’elaborazione avviene off-chain, la sicurezza resta quella della chain principale.
Differenza tra ZK rollup e Optimistic rollup
Entrambi sono soluzioni Layer 2, ma con approcci diversi. Gli Optimistic rollup raggruppano e processano transazioni su Layer 2 assumendo che siano corrette, con un meccanismo di contestazione tramite fraud-proof.
Differenze principali:
Caratteristica | ZK Rollup | Optimistic Rollup |
---|---|---|
Validazione | Prova crittografica (zero-knowledge) | Presunzione di correttezza con finestra di contestazione |
Velocità | Finalità rapida grazie alla validazione diretta | Ritardo dovuto alla finestra di contestazione |
Privacy | Alta privacy (contenuto transazioni nascosto) | Meno privacy, transazioni visibili |
Gas Cost | Più basse, grazie alle ZK proof | Più alte, per via dei meccanismi di verifica |
Complessità | Più complessi da sviluppare | Più semplici e rapidi da implementare |
Esempi di progetti ZK rollup
Ecco alcune implementazioni note di ZK rollup:
zkSync
Sviluppato da Matter Labs, supporta smart contract e si concentra su pagamenti, DeFi e NFT, offrendo un Layer 2 user-friendly.
Starknet
Punta su dApp scalabili e smart contract complessi. Usa le STARK proof, una particolare forma di crittografia ZK. La società dietro Starknet, StarkWare, ha sviluppato anche StarkEx, motore di dYdX e ImmutableX.
Polygon zkEVM
Un ZK rollup compatibile con l’Ethereum Virtual Machine, che permette alle dApp di Ethereum di migrare facilmente mantenendo smart contract e strumenti.
In conclusione
Gli ZK rollup sono una potente risposta ai problemi di scalabilità della blockchain. Raggruppando e processando transazioni off-chain, offrono un mix di efficienza, privacy e sicurezza. Anche se la tecnologia è ancora in sviluppo, stanno già avendo un impatto significativo e promettono di diventare ancora più centrali per Ethereum e altre blockchain in futuro.