Pronti per la Quantum resistant e la minaccia all'intera crittografia.

22.01.20

La PoW, ha dimostrato nel corso di questi anni di essere senza ombra di dubbio un protocollo sicuro ed affidabile, non si hanno notizie di attacchi riusciti sulla catena bitcoin e fintantoché ci saranno abbastanza partecipanti onesti, l’aggressione al potere di hash sarà sostanzialmente limitata a zero. Tuttavia la PoW, a fronte di un elevato grado di sicurezza, presenta alcuni potenziali svantaggi, che possiamo riassumere nei seguenti punti di criticità:

  • Un uso eccessivo di energia per supportare la necessaria potenza di calcolo delle macchine di mining

  • Un possibile accentramento

  • Una governance della rete che è in mano alle grandi corporation di mining

All’orizzonte si affacciano sempre piu’ prepotentemente sistemi di consenso, a basso consumo di energia ed ad alta efficienza di transazioni, che tentano di migliorare le criticità della PoW e nel contempo offrire il medesimo livello di sicurezza: le PoS.

Se nella PoW, i partecipanti mettono il denaro in gioco per acquistare hardware potenti e pagare la corrente elettrica, nella PoS i partecipanti utilizzano i token della blockchain per dimostrare di far parte del network e quindi di aver diritto alla governance.
 

Di fatto il potere economico è concentrato più sulla Stake, per confermare il protocollo, piuttosto che sull’hardware ed energia di utilizzo.
 

Tuttavia questo aspetto, sebbene più economico ed ecologico, apre il fianco ad un ampio ventaglio di possibilità di attacco, tale per cui attori malevoli potrebbero agire sul network per costruire una storia alternativa a quella principale e/o creare una o più catene concorrenti, minando di fatto la stabilità e l’integrità economica delle blockchain PoS.

Ma sebbene siano stati introdotti meccanismi di correzione, come per esempio Casper, protocollo migliorativo suggerito da Ethereum, dove il problema viene risolto congelando i token e punendo i nodi che si manifestano in comportamenti malevoli, di contro, questa migliorìa limita la partecipazione degli holder onesti, che potrebbero vedersi tagliate le stake nel wallet, in caso di attacco di nodi disonesti sulla stessa blockchain.
 

La regola della catena piu’ lunga
 

Se rapportiamo l’esperienza della PoW alla PoS, possiamo affermare per esempio, che nella PoW vale la regola che la storia “vera“ è sempre quella più lunga, ossia quella che ha più blocchi con transazioni confermate e quella che, in condizioni normali, è la più difficile da creare e da mantenere.

Quando un nuovo nodo vuole aggregarsi alla blockchain per minare i blocchi, di norma sceglie sempre la catena con più storia e su questa inizia ad agire per risolvere complessi calcoli computazionali necessari a confermare transazioni sul network.

Tuttavia in talune PoS questo non è sempre vero, perché di fatto quando i nodi si riuniscono alla chain, si fidano delle informazioni che ricevono dagli altri nodi, aumentando notevolmente la vulnerabilità della catena, a causa di attacchi chiamati a lungo raggio.

Gli attacchi a lungo raggio, avvengono quando i nodi che si (ri)uniscono alla rete per la prima volta o dopo essere stati offline per un certo tempo, devono fidarsi delle informazioni che ricevono da altri nodi, per ricostruire la storia corretta della blockchain ma di fatto aumentando, per certi aspetti, la vulnerabilità.

 

Takamaka, nuovo algoritmo di consenso (T-PoS)
 

Per prima cosa lasciami dire che Takamaka è un protocollo verificato e analizzato con garanzie di sicurezza matematicamente provate, migliorate ed implementate, grazie al lavoro e alla tenacia delle menti più brillanti nell’ambito della matematica e dei sistemi complessi presenti nelle università italiane.

La maggior parte della descrizione, dei modelli, dei protocolli Takamaka, saranno resi pubblici a stretto giro, non appena la società e gli ingegneri impegnati nel consolidare e sviluppare il protocollo, avrà ultimato la fase brevettuale di alcuni ambiti migliorativi dell’algoritmo di T-PoS (Takamaka Proof-Of-Stake).

 

DETTAGLI
 

In takamaka, un periodo ben definito chiamato EPOCH, è diviso in 24.000 SLOT ciascuno della durata di 30 secondi; all’interno di ogni SLOT è creato un blocco che ospita un massimo di 10.000 transazioni ed un volume di dati pari almeno a 5.6 Mbyte. Ogni EPOCH ha una durata di 8 giorni e 8 ore.

I validatori del network vengono scelti casualmente, attraverso un algoritmo che seleziona preventivamente (molto prima che l’attuale EPOCH abbia termine) i nodi che saranno incaricati di validare le transazioni sulla blockchain dell’ EPOCH successiva.

Ouroboros per esempio, che è il protocollo a cui più si avvicina e si ispira l’algoritmo di Takamaka e che più di tutti è impegnato a migliorare le criticità dell’algoritmo di PoS, utilizza il metodo “Follow-the-Satoshi” per selezionare i validatori della blockchain. In sostanza chiunque, sia possessore anche di una piccolissima quantità di token, può venire selezionato per votare il delegato a cui affidare la convalida delle transazioni e guadagnare un premio.

Al contrario di Ouroboros, Takamaka assegna solo a chi ha Stake sufficiente, la possibilità di partecipare alla “lotteria”, ed eleggere un delegato per validare il network; tale assegnazione avviene attraverso un calcolo che estrae un numero (chiave pubblica) pseudocasuale deterministico, elaborato attraverso VRF.

La VRF, ossia Verifiable Random Function, inventata da Silvio Micali, attualmente professore al MIT e vincitore del premio Turing Award, è l'algoritmo che in Takamaka calcola ed assegna la distribuzione degli SLOT tra i nodi, per una data EPOCH.

In sostanza grazie all'algoritmo viene assegnato ad ogni nodo un definito numero di SLOT da validare e tali SLOT non sono mai necessariamente continui, ma riflettono il valore delle puntate totali su un singolo nodo e le modifiche di importo dei singoli scommettitori, che possono variare nel corso del tempo.

Come ti accennavo poco fa, il problema principale delle reti PoS è dettato dall’attacco a lungo raggio, ossia l’impossibilità da parte di un nodo, che è stato per un certo periodo di tempo fuori dalla rete, di fidarsi delle informazioni fornite da altri nodi riguardo la storia esatta della blockchain, fino al punto di accesso.
 

ANALOGIE
 

Come abbiamo detto, la Proof-of-Work permette di stabilire qual è la storia vera, semplicemente utilizzando la regola della catena più lunga, mentre nelle PoS in generale, sono le regole PBFT ed i checkpoint, che limitano gli attacchi fraudolenti da parte di attori malevoli, ma necessitano che tutti i nodi del network siano costantemente on line e ciò oltre che impossibile può rendere la blockchain meno performante.

In una fase di attacco compiuta da attori malevoli, la chain di un nodo impegnato a costruire una storia tarocca, conterrà meno blocchi nel periodo di tempo che avviene immediatamente dopo il punto di divergenza.

Sebbene tale storia risultasse la più lunga, questa certamente non sarà quella vera, ma per capire se si tratta davvero della storia vera, sarà necessario guardare sempre quella più densa di blocchi.

Grazie a questa che è a tutti gli effetti una regola, i nuovi nodi che cercano di (ri)sincronizzarsi alla rete perchè spenti oppure offline, possono (ri)unirsi ed essere certi di scaricare la versione corretta della catena, purché ci siano abbastanza parti oneste.

In Takamaka ciò avviene attraverso un meccanismo chiamato bootstrap from Genesis, molto simile a quello adottato da Ouroboros, dove il nodo che riprende il suo spazio nel network, viene avviato alla sincronizzazione con  la storia dal suo inizio, ed una volta avviato, non ha necessità di comunicare con tutto il network in modo sincrono, perchè non trasmette messaggi di coordinamento tra i nodi, ma solo transazioni e blocchi.

 

CONCLUSIONI

 

Il protocollo Takamaka ha introdotto miglioramenti sostanziali per rendere l'algoritmo di PoS affidabile e simile per caratteristiche a quello di PoW.

Attraverso accorgimenti ed implementazioni nell’algoritmo, come il bootstrap from genesis per esempio, è sostanzialmente assicurato che l'irreversibilità di un blocco aumenti gradualmente con il numero dei blocchi aggiunti su di esso, questo in sostanza significa che la possibilità di ripristinare o modificare una transazione in funzione della forza di un attaccante malevolo, è a tutti gli effetti inversamente proporzionale al tempo trascorso e all'aggiunta dei blocchi nella chain contenenti transazioni.

Ecco il cuore pulsante di Takamaka, simile a Proof-of-Work per sicurezza e robustezza del protocollo, ma proof-of-stake a tutti gli effetti, per velocità, scalabilità delle transazioni ed economia di risorse impegnate.

Stay tuned.