Le blockchain si prefiggono notoriamente la decentralizzazione, ovvero l’assenza di un’autorità centrale che prenda decisioni sul loro funzionamento. Ciò non vuol dire, naturalmente, che i processi decisionali non avvengano. Hanno però luogo in un altro modo, facendo cioè leva sui meccanismi di consenso.
Il consenso che viene conseguito per questa via indica in pratica i modi attraverso i quali la rete deve conseguire un livello sufficiente di stabilità e corrispondere alla fiducia degli utenti. In questa ottica, i meccanismi di consenso rappresentano la vera e propria spina dorsale di ogni blockchain.
Il consenso nelle blockchain: cos’è e a cosa serve
Per blockchain si intende un registro digitale decentralizzato, distribuito e solitamente pubblico che viene utilizzato al fine di registrare delle transazioni. Ognuna di queste operazioni viene registrata sul libro mastro alla stregua di un blocco di dati, il quale deve essere verificato dalla rete di computer peer-to-peer prima di poter essere aggiunto alla catena. Tale sistema è stato impostato nel preciso intento di fornire la necessaria protezione alla blockchain da attività fraudolente. Un ambito in cui l’insidia maggiore è rappresentata dalla cosiddetta “doppia spesa”.
In questo processo, però, occorre considerare la presenza dei nodi, delegati a gestire i processi all’interno della blockchain. Per fare in modo che agiscano in modo da rendere il sistema in grado di sopportare eventuali guasti (Byzantine Fault Tolerance) occorre che sia raggiunto il consenso della maggioranza di loro.
Il consenso è in pratica il processo che consente ad un gruppo di nodi di indicare quali transazioni siano da considerare valide e quali, al contrario, non lo siano. Per riuscirci e risolvere il cosiddetto Problema dei generali bizantini, le reti implementano i meccanismi di consenso (indicati anche come algoritmi o protocolli di consenso).
In parole povere, sono metodologie utilizzate per riuscire a conseguire tale accordo. L’insieme di regole in questione è in grado di aiutare le blockchain a proteggersi da comportamenti dannosi e attacchi malevoli da parte degli hacker. Ce ne sono molti e tra di loro i più noti, e usati, sono il Proof-of-Work e il Proof-of-Stake. Se si differenziano per efficienza energetica, livelli di sicurezza e scalabilità, sono unificati dalla missione che si prefiggono: fare in modo che le transazioni siano regolari.
Quali sono i meccanismi di consenso più noti?
Se inizialmente il meccanismo di consenso Proof-of-Work era largamente maggioritario, proprio perché adottato da Bitcoin, con il passare del tempo ha evidenziato notevoli problemi in termini di scalabilità. Lacune che hanno spinto molti progetti ad adottare il meno energivoro e più performante Proof-of-Stake.
In un caso e nell’altro, però, la tanto decantata decentralizzazione si è rivelata nulla più che un’esca. Nel Proof-of-Work, infatti, il mining comporta costi proibitivi, che possono essere affrontati solo da poche e grandi aziende. Mentre nel Proof-of-Stake possono essere stabilite barriere d’ingresso, come nel caso di Ethereum, che hanno lo stesso esito.
Per ovviare a questo problema si è perciò inizialmente fatto ricorso al Delegated Proof-of-Stake, adottato da Tron. In questo caso, per diventare validatori occorre avere una buona reputazione. Il problema che si voleva eliminare è però rientrato dalla finestra, in quanto il numero dei validatori resta stabile e contenuto, limitando il reale tasso di democrazia del sistema.
Per ovviare, si è quindi proceduto al varo di un nuovo algoritmo di consenso, noto come Pure Proof-of-Stake, su cui si regge la blockchain di Algorand. In questo caso, infatti, tutti possono diventare validatori, a patto di possedere almeno un token nativo della catena. Non ci sono soglie di ingresso o investimenti da sostenere. Chi ha più token ha maggiori possibilità di essere scelto, ma la casualità del sistema può sfociare nella scelta di utenti con pochi token. Secondo gli esperti di blockchain, nonostante qualche limite, come l’aleatorietà, il Pure Proof-of-Stake riesce a garantire un buon mix tra decentralizzazione, sicurezza e scalabilità.