SwapSpace – Scambi crypto cross-chain

Algoritmi di consenso nella blockchain

Academy Author

,

,6 min

Le reti di criptovalute differiscono tra loro nell’organizzazione del lavoro. Poiché esiste la decentralizzazione, è necessario implementare un registro distribuito. Questo è necessario per riconciliare le transazioni evitando costi aggiuntivi.

In questo articolo ci concentreremo sui popolari algoritmi blockchain per scoprirne le funzioni e i fattori che incidono su prestazioni e sicurezza.

Che cos’è un algoritmo di consenso blockchain?

Un meccanismo di consenso è una procedura mediante la quale tutti i peer di una rete raggiungono un accordo generale sullo stato attuale del registro distribuito. In questo modo, gli algoritmi di consenso garantiscono l’affidabilità della rete blockchain e instaurano relazioni di fiducia tra partner sconosciuti in un ambiente di calcolo distribuito. Un protocollo negoziato assicura che ogni nuovo blocco aggiunto a una catena di blocchi sia l’unica versione della verità concordata da tutti i nodi di quella catena. I modelli di consenso della blockchain consistono in alcuni obiettivi specifici, come raggiungere un accordo, la cooperazione, l’uguaglianza dei nodi e la partecipazione obbligatoria di ciascun nodo al processo di negoziazione. Pertanto, l’algoritmo di consenso mira a trovare un accordo comune che sia vantaggioso per l’intera rete. Inoltre, questo algoritmo implementa:

  • frequenza di generazione dei blocchi;
  • evitare il rischio di addebiti aggiuntivi di fondi;
  • verifica dei dati nel blocco.

In poche parole, l’algoritmo di consenso evita errori nelle reti decentralizzate. Inoltre, il compito del meccanismo è implementare condizioni reciprocamente vantaggiose per tutti i partecipanti.

Algoritmi di consenso: panoramica

Le monete digitali sono sviluppate su diverse blockchain. Anche gli algoritmi di consenso variano su tali blockchain.

Più del 90% del mercato delle criptovalute si basa su tre principali algoritmi armonizzati:

Proof of Work (PoW)

Proof of Stake (PoS)

Delegated Proof of Stake (DPoS)

Tuttavia, prenderemo in considerazione non solo i meccanismi di base, ma anche altri che, pur non essendo adottati da molti progetti, sono molto interessanti da esplorare e potrebbero svolgere un ruolo importante nel nostro futuro.

1. Proof of Work (PoW)

Questo algoritmo di consenso viene utilizzato per selezionare il miner che genererà il blocco successivo nella catena. Bitcoin, Litecoin e molti altri colossi dell’industria blockchain utilizzano il PoW nel loro funzionamento. L’idea principale di questo algoritmo è risolvere un complesso problema matematico casuale generato dalla blockchain e diffondere la soluzione. Una caratteristica di questo algoritmo è la complessità della risoluzione del problema, ma può essere facilmente ricontrollato. Questo rompicapo matematico richiede molta potenza di calcolo e quindi il nodo che lo risolve prima degli altri ottiene il diritto di produrre il blocco successivo. Il PoW mira a garantire che un attacco alla rete sia eccessivamente costoso e richieda elevati costi energetici, poiché i miner consumano energia per fornire servizi di misurazione e sicurezza della rete. Gli svantaggi di questo meccanismo sono considerati la limitata scalabilità e il basso throughput.

2. Proof of Stake (PoS)

Forse questa è l’alternativa più comune al PoW: persino Ethereum è recentemente passato dal consenso PoW al PoS. In questo tipo di algoritmo di consenso, invece di investire in costose attrezzature per risolvere un complesso rompicapo, i cosiddetti validatori investono nelle monete della rete, bloccando parte delle loro monete come scommessa (staking). Dopodiché, tutti i validatori iniziano a verificare i blocchi, puntando sul blocco che ritengono possa essere aggiunto alla catena. In base ai blocchi effettivamente aggiunti alla blockchain, tutti i validatori ricevono una ricompensa proporzionale alle loro quote, e la loro quota aumenta di conseguenza. Alla fine, per generare un nuovo blocco, il validatore viene selezionato in base alla sua partecipazione economica nella rete. Pertanto, l’algoritmo PoS incoraggia i validatori, tramite un meccanismo di incentivi, a raggiungere il consenso. I vantaggi di questo meccanismo sono considerati la maggiore scalabilità a livello di base e il potenziale risparmio energetico rispetto al PoW. Gli svantaggi includono il rischio di centralizzazione, che a sua volta porta a una diminuzione della sicurezza. Ethereum, Peercoin, Lisk, PIVX e altre blockchain operano su PoS.

3. Delegated Proof Of Stake (DPoS)

Il meccanismo DPoS è uno sviluppo del PoS, ma è un diverso tipo di algoritmo di consenso basato su sistemi di voto. Invece di selezionare casualmente i singoli nodi per eseguire un controllo, la community dei detentori di token utilizza la propria quota (scommessa) per votare un numero selezionato di nodi affidabili, spesso chiamati delegati. Essi sono responsabili della verifica delle transazioni e della manutenzione della rete, e vengono ricompensati in exchange con una parte delle commissioni di transazione. Il DPoS può essere paragonato a una democrazia rappresentativa: i partecipanti votano per un rappresentante fidato che protegga la rete per loro conto. Gli elettori possono sostituire i delegati se agiscono contro gli interessi della maggioranza delle parti interessate. L’algoritmo DPoS è stato inventato da Dan Larimer ed è utilizzato in progetti di cui è stato all’origine, come BitShares, Steem e EOS, ma è richiesto anche in altre reti, come Tezos e Ark. I vantaggi del DPoS sono l’elevata scalabilità e una distribuzione più ampia dell’inflazione (ripartizione più uniforme dei token appena emessi tra i validatori), mentre gli svantaggi sono una sicurezza insufficiente e una tendenza costante alla centralizzazione della rete.

4. Proof of Elapsed Time (PoET)

PoET è uno degli algoritmi di consenso più equi, che seleziona il blocco successivo utilizzando solo mezzi onesti. È ampiamente utilizzato in molte blockchain private e aziendali, in particolare Hyperledger. In questo algoritmo, ogni validatore della rete ottiene una reale possibilità di creare il proprio blocco. Tutti i nodi lo fanno attendendo un intervallo di tempo casuale e aggiungendo al blocco un attestato della propria attesa. I blocchi creati vengono trasferiti alla rete per la valutazione da parte degli altri partecipanti. Il vincitore è il validatore che ha il valore del timer più basso nella parte di prova. Il blocco del nodo validatore vincente viene aggiunto alla blockchain. Nell’algoritmo sono previsti controlli aggiuntivi per impedire che un nodo specifico vinca sempre l’elezione, generando il valore di timer più basso. Per quanto riguarda i vantaggi, si possono distinguere elevata efficienza e basso consumo di risorse; gli svantaggi — un basso livello di sicurezza e la dipendenza da una terza parte che sviluppa un insieme di istruzioni per il processore.

5. Proof of Authority (PoA)

PoA è un algoritmo di consenso basato sulla reputazione che utilizza il valore dell’identità e della reputazione dei validatori dei blocchi. Nel marzo 2017, il team di sviluppo di Ethereum guidato da Gavin Wood ha proposto il PoA come soluzione agli attacchi spam sulla rete di test Ropstein di Ethereum. Il PoA assomiglia al PoS, tranne per il fatto che i validatori, invece delle monete, mettono in gioco la propria reputazione. I nodi/validatori fidati vengono scelti dai leader della rete, rendendo il PoA utile solo per blockchain private. Utilizzato in VeChain Thor, Microsoft Azure e altri. Vantaggi: elevata velocità delle transazioni, scalabilità e bassi costi di manutenzione della rete. Svantaggi: rinuncia alla decentralizzazione e possibile comportamento malevolo dei partecipanti alla rete, quasi impossibile da prevenire.

6. Proof of Capacity (PoC)

Nel consenso Proof of Capacity, i validatori investono spazio del proprio hard disk invece di investire in costose attrezzature o bruciare monete. Più mezzi hanno per verificare lo spazio sul disco rigido, maggiori sono le possibilità di arrivare al mining del blocco successivo e ricevere una ricompensa per il blocco. Utilizzando lo storage invece del calcolo con ASIC, le blockchain basate su PoC sono molto più efficienti dal punto di vista energetico. Il PoC ha progetti come Filecoin, Storj e Burstcoin. Il vantaggio evidente di questo approccio è l’efficienza energetica, mentre gli svantaggi risiedono in una sicurezza insufficiente a causa dell’esposizione agli attacchi.

Esistono anche altri algoritmi di consenso, come:

  • Proof of Activity;
  • Proof of Space and Time;
  • Proof of Weight;
  • Proof of Storage;
  • Proof of Importance;
  • Proof of Participation;
  • Proof of History;
  • Leased Proof of Stake;
  • Proof of Burn;
  • Practical Byzantine Fault Tolerance.

Ma il loro utilizzo al momento può essere attribuito più a casi privati e innovazioni, che possono costituire l’argomento di un articolo separato.

Riassunto

Ciascuno degli algoritmi presentati ha i propri punti di forza e di debolezza, oltre a possibili usi. Considerati in quest’ottica, è ragionevole supporre che non competano tra loro. È importante sceglierne uno in modo ragionevole in base ai requisiti della rete aziendale. 

L’implementazione del PoW è sicura e decentralizzata. Il PoW è un eccellente meccanismo di consenso per le criptovalute. Tuttavia, è del tutto inappropriato per i social network e i giochi blockchain. 

Nel settore blockchain agli inizi, è importante continuare la ricerca per scoprire nuove architetture blockchain. Nuovi meccanismi di consenso apriranno nuove possibilità per l’uso della tecnologia blockchain e, in particolare, delle criptovalute.

Condividi:

Articoli correlati

Curioso di saperne di più?

Iscriviti alla nostra newsletter — rimani informato e consapevole.