Paradigma blockchain modulare

In fisica, l'accoppiamento è il fenomeno per cui due forme di movimento si influenzano a vicenda attraverso l'interazione. Il disaccoppiamento, invece, è la separazione matematica di due forme di movimento per affrontare il problema.

Nel campo della programmazione, l'idea di modularità è molto simile: una tecnica di progettazione del software chiamata programmazione modulare, enfatizza la separazione delle funzionalità di un programma in moduli indipendenti e intercambiabili, in modo tale che ciascuno contenga tutto il necessario per eseguire solo un aspetto della funzionalità desiderata. .

Anche le blockchain sono programmi per computer. Fondamentalmente, quando applichiamo l’idea di modularità a una blockchain pubblica, possiamo scomporla in tre componenti principali:

  1. Esecuzione: questo è il calcolo richiesto per aggiornare la catena, che implica ottenere lo stato corrente, aggiungere una serie di nuove transazioni e passare al nuovo stato.

  2. Consenso o regolamento o sicurezza: fornisce sicurezza e accordo per le transazioni e il loro ordine.

  3. Disponibilità dei dati (DA): per garantire che i dati delle transazioni dietro l'intestazione del blocco siano pubblicati e disponibili in modo che chiunque possa facilmente calcolare lo stato e controllare le transizioni di stato.

Invece di riunire tutti questi tre componenti in un’unica catena monolitica come fanno le attuali principali blockchain, possiamo dividerli in catene o strati specializzati, ciascuno dei quali svolge il ruolo di un modulo, per implementare in modo più efficiente la funzionalità di una blockchain. Questo è il paradigma della blockchain modulare.

I vantaggi delle blockchain modulari

Come affermato in precedenza, le blockchain modulari sono il risultato della separazione dei componenti principali di una singola blockchain e della loro esecuzione su livelli separati. Quindi, quali sono i vantaggi delle blockchain modulari rispetto a quelle non modulari? Di seguito sono elencati i vantaggi.

Scalabilità

I livelli specializzati in un paio di funzionalità principali consentiranno una scalabilità molto maggiore senza la limitazione di fare compromessi derivanti da una blockchain monolitica. Ad esempio, un livello di disponibilità dei dati modulare con campionamento DA può scalare linearmente con il numero di utenti.

Interoperabilità

Le blockchain possono utilizzare un livello di sicurezza condiviso modulare per consentire un bridging con fiducia ridotta al minimo tra blockchain nello stesso cluster. Ciò migliora sia la sicurezza che il livello al quale diverse blockchain possono comunicare tra loro.

Bootstrap

È possibile creare nuove blockchain con costi e tempi minimi. Cose come i kit di sviluppo software rollup non solo aiuteranno questo, ma forniranno un modo per eseguire il bootstrap senza bisogno di meccanismi di consenso, validatori o meccanismi di distribuzione dei token.

Sperimentazione

Le blockchain possono essere facilmente create e utilizzate per testare nuove tecnologie innovative che apportano ulteriore scalabilità e ottimizzazioni all’intero stack di catene. Ciò consente alle nuove catene di concentrarsi direttamente sugli elementi su cui desiderano innovare, cosa che può poi essere diffusa al resto delle catene.

Lo strato DA nei rollup

Anche i rollup, che è la soluzione di livello 2 di Ethereum che mira a scalare in modo efficace, sono fondamentalmente un approccio modulare. Il rollup rimuove il livello di esecuzione dal livello 1 di Ethereum e forma un secondo livello esclusivo di esecuzione incentrato sull'elaborazione delle transazioni il più velocemente possibile. D’altra parte, il livello 1 di Ethereum è ancora responsabile dell’impegnativo lavoro sia di sicurezza che di disponibilità dei dati.

Quindi, ci sono due domande qui. Innanzitutto, perché la disponibilità dei dati è così importante? In secondo luogo, possiamo utilizzare nuovamente l'idea di modularità per disaccoppiare DA dal livello 1? Per favore, lasciami prendere del tempo per spiegare.

Per la prima domanda, devo discutere la situazione separatamente. Nel caso del Rollup Ottimistico, quando il sequenziatore fa del male e stabilisce uno stato di saldo del conto errato, chiunque può recuperare i dati della transazione originale dal livello 1 e ricostruire lo stato corretto del conto per eseguire una sfida. Quindi, il ruolo del DA è come un ufficio di archivio che fornisce prove originali in caso di contestazione, garantendo che la contestazione sia corretta e valida.

Per quanto riguarda Zero Knowledge (ZK) Rollup, il sequenziatore non può fare del male a causa della prova crittografica di zero knowledge. Ma nei casi estremi in cui il sequenziatore si guasta o non è disponibile per qualsiasi motivo, gli utenti devono sfuggire alla catena del livello 2 e riportare i loro soldi al livello 1, quando DA è essenziale per garantire che chiunque possa ricostruire lo stato finale in base ai dati. . Pertanto, il ruolo di DA è come una porta di sicurezza per garantire una fuga agevole agli utenti in caso di situazione estrema.

Per la seconda domanda, la risposta breve è sì. Sebbene DA sia così vitale che il posto migliore per archiviarlo è il livello 1 di Ethereum, la catena più sicura è anche quella più costosa: il costo del gas per le transazioni di regolamento e l'archiviazione dei dati è molto più elevato di quello di qualsiasi altra catena. Questo è il motivo per cui sia Matter Labs che Starkware forniscono agli utenti una versione economica di ZK Rollup, vale a dire ZK-Porter e Validium, compromettendo di non archiviare DA sul livello 1.

Di conseguenza, uno strato DA specializzato e modulare sta cominciando a entrare nel quadro.

Progetti di strato DA specializzato

Celestia

Precedentemente denominata LazyLedger, Celestia è una rete di consenso e dati modulare, costruita per consentire a chiunque di implementare facilmente la propria blockchain con un sovraccarico minimo. Disaccoppiando i livelli di consenso e DA con l'esecuzione dell'applicazione, Celestia modularizza lo stack tecnologico blockchain e sblocca nuove possibilità per i costruttori di applicazioni decentralizzate.

Grazie all'architettura modulare abilitata per Celestia, gli sviluppatori possono definire facilmente i propri ambienti di esecuzione virtuale. Ogni applicazione ottiene il proprio spazio di esecuzione sovrano e può essere aggiornata senza hard fork della catena principale.

Il punto forte di Celestia sta nell’affrontare uno dei vincoli fondamentali della scalabilità della blockchain: il “problema di disponibilità dei dati”. Questo problema chiede: come possono i nodi essere sicuri che quando viene prodotto un nuovo blocco, tutti i dati in quel blocco siano stati effettivamente pubblicati sulla rete? Il dilemma è che se un sequenziatore o un produttore di blocchi non rilascia tutti i dati in un blocco, nessuno potrebbe rilevare se c'è una transazione dannosa nascosta all'interno di quel blocco.

Come risolve Celestia questo problema? Utilizza codici di cancellazione per creare prove di disponibilità dei dati che garantiscano, con alta probabilità, che tutti i dati siano stati pubblicati sulla catena.

Nello specifico, Celestia utilizza uno schema di codifica reed-solomon bidimensionale per codificare i dati del blocco quando il sequenziatore crea un nuovo blocco. Questo schema garantisce che solo un piccolo campione di dati sia sufficiente per verificare con certezza statistica che l’intero blocco sia stato pubblicato. Sono necessari solo client leggeri per eseguire un'operazione chiamata Data Availability Sampling (DAS), ovvero scaricare in modo casuale una piccola porzione di dati dal blocco per rilevare se il sequenziatore si comporta in modo anomalo e trattiene i dati. Questo metodo è molto efficace dal punto di vista delle statistiche probabilistiche. Infatti, alla settima volta che un light client tenta di controllare casualmente una porzione di dati, la probabilità che non riesca a rilevare che il sequenziatore si comporta in modo anomalo diventerebbe inferiore all'1%. E una volta scoperto che anche un piccolo dato è codificato in modo errato, la rete viene informata tramite una prova di frode. Ciò garantisce che il throughput non venga ostacolato dall’esecuzione statale come le blockchain tradizionali, consentendo al throughput di Celestia di adattarsi al numero di utenti coinvolti.

Concentrandosi inizialmente su EVM e Cosmos SDK, Celestia non esclude l'integrazione negli ecosistemi di Ethereum e Cosmos. Celestia ha rilasciato un piano chiamato Celestium, che consente a qualsiasi catena Ethereum L2 di utilizzare Celestia per la disponibilità dei dati ed Ethereum per la risoluzione delle controversie. Celestium fornirà una disponibilità dei dati ad alto rendimento per Ethereum L2, con un livello di sicurezza più elevato rispetto ad altre tecniche di disponibilità dei dati fuori catena.

Inoltre, Celestia sta collaborando con Evmos per creare un livello di regolamento per i rollup EVM chiamato Cevmos. La catena di regolamento sarà implementata come un rollup Celestia utilizzando Optimint e sfrutta Celestia come livello DA per fornire uno stack completamente equivalente a EVM ottimizzato esclusivamente per i rollup, con conseguenti commissioni inferiori e una migliore scalabilità dei rollup.

Poligono disponibile

Avail, una delle soluzioni di ridimensionamento nel toolkit di Polygon, è una blockchain generica e scalabile incentrata sulla disponibilità dei dati, destinata a catene autonome, catene laterali e soluzioni di ridimensionamento off-chain.

Avail fornisce un solido livello di disponibilità dei dati utilizzando una primitiva matematica estremamente sicura: controlli della disponibilità dei dati utilizzando codici di cancellazione con un'innovazione chiave: utilizzano gli impegni polinomiali di Kate per creare uno schema di disponibilità dei dati 2D che evita prove di frode, non richiede ipotesi di maggioranza onesta, e non fa affidamento su peer onesti a nodo intero per avere la certezza che i dati siano disponibili.

L’approccio di Avail per risolvere il problema della disponibilità dei dati è simile al DAS di Celestia ma differisce solo in piccoli punti. Avail utilizza impegni polinomiali KZG invece di prove di frode per evitare comportamenti anomali dei sequenziatori. Gli impegni KZG, noti anche come impegni di Kate, sono stati introdotti da Aniket Kate, Gregory M. Zaverucha e Ian Goldberg nel 2010, fornendo un modo per impegnarsi sui polinomi in modo conciso.

In termini semplici, tutti i dati in un blocco sono organizzati come una matrice bidimensionale. La ridondanza dei dati viene ottenuta codificando per cancellazione ciascuna colonna della matrice in modo da raddoppiare la dimensione di quella originale. Gli impegni di Kate vengono utilizzati per impegnarsi su ciascuna riga e l'impegno è incluso nell'intestazione del blocco. Lo schema semplifica l'individuazione di un tentativo di occultamento dei dati poiché qualsiasi client leggero con accesso solo alle intestazioni di blocco può interrogare celle casuali della matrice e ottenere brevi prove che possono essere verificate rispetto alle intestazioni di blocco. La ridondanza dei dati costringe il sequenziatore a nascondere gran parte del blocco anche se vuole nascondere solo una singola transazione, rendendolo suscettibile di essere catturato dal campionamento casuale. Pertanto, la necessità di prove di frode viene evitata poiché la natura vincolante degli impegni Kate rende computazionalmente impossibile per i sequenziatori costruire impegni errati e non essere scoperti.

Riepilogo

Il livello specializzato di disponibilità dei dati, come prototipo di blockchain modulari, mira a facilitare un cambiamento completo nel modo in cui affrontiamo la progettazione dei sistemi blockchain, abilitando il paradigma blockchain modulare in cui vari ambienti di esecuzione possono utilizzare questo livello specializzato per l'ordinamento e la disponibilità dei dati. Sebbene possa sorgere una piccola preoccupazione sul fatto che i rollup che utilizzano il livello DA specializzato potrebbero non essere sicuri come quelli con la rete principale di Ethereum, si tratta di un compromesso essenziale poiché le blockchain modulari possono portare una rete più flessibile, scalabile, personalizzabile e interoperabile. Nel lungo periodo, il livello DA specializzato diventerà la pietra angolare del paradigma blockchain modulare, aprendo la strada verso il gioco finale del ridimensionamento della blockchain.

Dichiarazione di non responsabilità: questa ricerca è solo a scopo informativo. Non costituisce un consiglio di investimento o una raccomandazione ad acquistare o vendere qualsiasi investimento e non deve essere utilizzato nella valutazione del merito di qualsiasi decisione di investimento.

🐦 @chestersigned

📅 18 aprile 2022

Collegamento:

https://medium.com/blockchain-capital-blog/wtf-is-data-availability-80c2c95ded0f

https://polynya.medium.com/the-lay-of-the-modular-blockchain-land-d937f7df4884

https://rileygmi.substack.com/p/celestia?s=r&utm_campaign=post&utm_medium=web

https://coinyuppie.com/focus-on-the-data-availability-layer-to-understand-the-new-public-chain-celestia/

https://polygon.technology/blog/introducing-avail-by-polygon-a-robust-general-scopo-scalable-data-availability-layer-98bc9814c048

https://polygon.technology/solutions/polygon-avail/