L’algoritmo di consenso Proof of Stake è stato introdotto nel 2011 sul forum Bitcointalk per risolvere i problemi dell’algoritmo attualmente più popolare in uso: Proof of Work. Sebbene entrambi condividano lo stesso obiettivo di raggiungere il consenso nella blockchain, il processo per raggiungere l’obiettivo è abbastanza diverso.
Come funziona il Proof of Stake
L’algoritmo Proof Of Stake utilizza un processo di elezione pseudo-casuale per selezionare un nodo come validatore del blocco successivo, in base a una combinazione di fattori che potrebbero includere l’età di picchettamento, la casualità e la ricchezza del nodo.
È bene notare che nei sistemi Proof of Stake, si dice che i blocchi vengono “forgiati” piuttosto che estratti. Le criptovalute che utilizzano Proof of Stake spesso iniziano vendendo monete pre-minate o vengono lanciate con l’algoritmo Proof of Work e successivamente passano a Proof of Stake.
Laddove nei sistemi basati su Proof of Work vengono create sempre più criptovalute come ricompensa per i minatori, il sistema Proof-of-Stake di solito utilizza le commissioni di transazione come ricompensa.
Gli utenti che desiderano partecipare al processo di falsificazione, sono tenuti a bloccare una certa quantità di monete nella rete, come fossero una “puntata”. La dimensione della puntata determina le possibilità che un nodo venga selezionato come validatore successivo per creare il blocco successivo: maggiore è la puntata, maggiori sono le possibilità. Affinché il processo non favorisca solo i nodi più ricchi della rete, al processo di selezione vengono aggiunti metodi più esclusivi. I due metodi più comunemente usati sono “Selezione casuale dei blocchi”(Randomized Block Selection) e “Selezione dell’età della moneta”(Coin Age Selection).
Nel metodo Randomized Block Selection i validatori vengono selezionati cercando i nodi con una combinazione del valore hash più basso e della puntata più alta e, poiché le dimensioni delle puntate sono pubbliche, il baro (falsario) successivo può solitamente essere previsto da altri nodi.
Il metodo di selezione del Coin Age Selection sceglie i nodi in base al tempo per cui i loro gettoni sono stati puntati. L’età delle monete viene calcolata moltiplicando il numero di giorni in cui le monete sono state mantenute come puntate per il numero di monete che sono state puntate. Una volta che un nodo ha forgiato un blocco, la sua età della moneta viene azzerata e si deve attendere un certo periodo di tempo per poter forgiare un altro blocco; questo impedisce ai nodi di stake di grandi dimensioni di dominare la blockchain.
Ogni criptovaluta che utilizza l’algoritmo Proof of Stake ha il proprio set di regole e metodi combinati per quella che pensano sia la migliore combinazione possibile per loro e per i loro utenti.
Quando un nodo viene scelto per forgiare il blocco successivo, controllerà se le transazioni nel blocco sono valide, dopodichè firma il blocco e lo aggiunge alla blockchain. Come ricompensa, il nodo riceve le commissioni di transazione associate alle transazioni nel blocco.
Se un nodo vuole smettere di essere un falsario, la sua puntata insieme ai premi guadagnati verrà rilasciata dopo un certo periodo di tempo, dando alla rete il tempo di verificare che non ci siano blocchi fraudolenti aggiunti alla blockchain dal nodo.
Sicurezza
Lo Staking funziona come motivazione finanziaria un nodo falso non possa convalidare o creare transazioni fraudolente. Se la rete rileva una transazione fraudolenta, il nodo contraffatto perderà una parte della sua partecipazione e il diritto di partecipare in futuro alla blockchain. Quindi, finché lo stake è superiore alla ricompensa, il validatore perderà più monete di quante ne guadagnerebbe in caso di tentativo di frode.
Per controllare efficacemente la rete e approvare transazioni fraudolente, un nodo dovrebbe possedere una quota di maggioranza nella rete, possibilità nota anche come “attacco del 51%“. A seconda del valore di una criptovaluta, questo sarebbe molto poco pratico in quanto per ottenere il controllo della rete sarebbe necessario acquisire il 51% dell’offerta circolante.
I principali vantaggi dell’algoritmo Proof of Stake sono l’efficienza energetica e la sicurezza.
Un numero maggiore di utenti è incoraggiato a eseguire i nodi poiché è facile e conveniente. Questo, insieme al processo di randomizzazione, rende anche la rete più decentralizzata, poiché i pool di mining non sono più necessari per estrarre i blocchi. E poiché c’è meno bisogno di rilasciare molte nuove monete per una ricompensa, questo aiuta il prezzo di una particolare moneta a rimanere più stabile.
È bene ricordare che l’industria delle criptovalute sta cambiando ed evolvendosi rapidamente e ci sono anche molti altri algoritmi e metodi in fase di sviluppo e sperimentazione.