PoW, PoS, PoA, PoB, PoET…facciamo chiarezza

di | 30 Giugno 2019

Ormai ti sarai accorto come il crypto-mondo stia difatto diventando sempre più criptico. Numerose sono le sigle con cui ogni giorno, addetti o no, hanno a che fare. In questo articolo ti spiegherò, senza entrare troppo nei particolari, le diverse “Proof of…” che sono alla base della sicurezza e della solidità di una blockchain.

In generale, come anche già accennato, la “Proof” di una blockchain è l’algoritmo mediante il quale vengono generati o validati i blocchi della blockchain stessa (per capire cos’è un blocco clicca qui. Questi algoritmi devono, quindi, garantire un elevato grado di sicurezza in modo da rendere complicata la vita a chi volesse “corrompere” la blockchain.

Come da titolo esistono diverse “Proof of…” che ora ti spiegherò, elencandone alcune delle più note senza escluderne altre di nicchia o in via di sviluppo.


Proof of Work (PoW)

Questa è la Prova più nota di tutte essendo quella alla base del protocollo Bitcoin. Essa si basa sul lavoro computazionale necessario per trovare un numero (nonce) tale da creare un hash del blocco valido. L’hash è ritenuto valido se sta al di sotto di un altro numero che rappresenta il target di difficoltà. Detta così può sembrarti facile, ma il lavoro necessario per fare tali calcoli è molto dispendioso sia dal punto di vista hardware (il tuo PC di casa non ci riuscirebbe mai!!) che dal punto di vista elettrico.

Una volta trovato un nonce potenzialmente valido, si invia il tutto alla blockchain in cui gli altri nodi verificano la correttezza dell’hash trovato e validano il blocco. Al miner, per tale lavoro, viene riconosciuta una ricompensa determinata dal protocollo utilizzato (per Bitcoin la ricompensa è di 12.5 BTC attualmente). Chi dà la ricompensa al miner?? In realtà sè stesso. Sempre nel caso di Bitcoin ogni miner, durante il calcolo, aggiunge al blocco una transazione verso il suo wallet di 12.5 BTC che verranno quindi creati dal nulla, in gergo tecnico “minati”.

Vantaggi e Svantaggi della PoW

Il punto di forza della PoW è sicuramente la difficoltà per un hacker di riuscire a corrompere la blockchain. Al giorno d’oggi la PoW è garanzia di massima sicurezza: cosa non da poco in questo ambito

Gli svantaggi della Proof of Work sono certamente gli alti costi sia in termini di hardware che in termini di elettricità. Non possiamo certo affermare che Bitcoin sia “eco-friendly”.
Un secondo punto a sfavore è la potenziale minaccia di un attacco al 51%. E’ sufficiente che un grosso investitore o più investitori si mettano d’accordo e prendano il controllo del 51% del potere di calcolo dell’intera rete. In questo caso possono validare i blocchi che vogliono minando l’integrità e la sicurezza della blockchain.
Infine, essendo necessari grossi investimenti per il mining, si potrebbe mettere in dubbio il concetto base su cui si ergono le criptovalute, ossia la decentralizzazione: il mining non è accessibile a tutti.

Proof of Stake (PoS)

Il secondo algoritmo più famoso è la Proof of Stake. La parola stake in inglese significa “puntata, scommessa” ed è nata proprio per risolvere la scarsa accessibilità alla PoW.

La PoS si differenzia dalla PoW anche per quanto riguarda la terminologia. Non ci sono più miner, ma validator e i blocchi non vengono più minati, bensì forgiati.
Il meccanismo alla base della PoS prevede che un utente detenga una quantità di criptovaluta all’interno della blockchain (come una sorta di puntata…da qui il termine stake) per essere selezionato come validator del blocco successivo.

Come avviene la scelta?? In un sistema democratico e paritario come la Blockchain, puoi immaginare che la scelta sia puramente casuale. Io, però, la definirei pseudocasuale in quanto può variare in base a diversi fattori come la coinage ossia da quanto tempo l’utente ha congelato lo stake oppure in base alla quantità dello stake: maggiore è lo stake e maggiore sarà la probabilità di essere scelto. Questi sono i due metodi più frequenti.

Una volta scelto il validator esso deve verificare che il blocco non sia corrotto e che le transazioni al suo interno siano corrette. Dopodichè metterà la propria firma sul blocco che verrà aggiunto alla blockchain.

E la ricompensa?? Un’altra differenza con la PoW è che la ricompensa non viene creata dal validator stesso sotto forma di auto-accredito, ma riceverà le commissioni delle transazioni all’interno del blocco da lui validato.

Vantaggi e Svantaggi della PoS

Il primo e immediato punto a favore della PoS è la sua eco-sostenibilità: è necessario solo un PC normale. Questo comporta anche una maggior accessibilità per i piccoli e medi investitori con una conseguente maggior decentralizzazione del sistema.

La principale critica mossa verso la PoS è quella di una mancata uguaglianza all’interno del sistema: i ricchi diventano sempre più ricchi a discapito dei più poveri. Tralasciando il fattore ideologico la PoS ha sollevato molti dubbi riguardo la sicurezza. Se la PoW con l’elevata difficoltà nel minare un blocco fa stare tutti abbastanza tranquilli, la PoS non ha la stessa fiducia in quanto il costo è minimo (solo l’ammontare dello stake e il tenere un PC acceso).

Il pericolo deriva dal comportamento dei validator che possono validare transazioni non corrette, oppure cercare di creare diverse catene sulla blockchain per avere maggior probabilità di essere scelto per validare il blocco successivo (se si creano tre catene, la probabilità è tre volte maggiore).
Tutto ciò è stato risolto sempre con la solita formula “se imbrogli paghi più di quello che guadagni”. Infatti se il network si accorge di comportamenti strani da parte di un validator, alcuni protocolli prevedono il sequestro di una certa quantità dello stake.

E l’attacco al 51%?? In molti sostengono che nella PoS questo attacco non sia possibile. Tuttavia è teoricamente possibile in quanto sarebbe necessario possedere il 51% della criptovaluta. Tutto ciò è molto difficile da realizzarsi in quanto sarebbe necessario un grosso investimento. Per farti rendere conto delle cifre nel caso di PIVX servirebbero, ad oggi 28 giugno 2019, più di 20 milioni di dollari. Con Ethereum ecco che la cifra diventa superiore ai 14 miliardi di dollari senza tener conto del fatto che se un investitore inizia a comprare così tanti Ether toglie offerta al mercato e il prezzo salirebbe sempre più.

Delegated Proof of Stake (DPoS)

A differenza della PoS classica, il lavoro di generazione e validazione dei blocchi viene delegata a terze parti. Questi delegati, detti anche witnesses (testimoni) o block producers, sono scelti tramite un sistema di voto. Generalmente per ottenere voti i block producers devono avere una buona reputazione e portare delle innovazioni al progetto stesso. Le ricompense ottenute da un block producer verranno poi distribuite in modo proporzionale ai suoi elettori.

Tutto ciò rende molto più snella la blockchain garantendo una maggior scalabilità e velocità delle transazioni. Esempi di criptovalute basate su DPoS sono EOS, Lisk, Ark e Steem.

Proof of Authority (PoA)

La PoA si può definire come una Proof of Stake particolare in cui al posto delle criptovalute viene messa in stake l’identità stessa dei validatori. A differenza della PoS, nella PoA diventare un validatore può risultare più difficile in quanto il sistema, per funzionare correttamente, necessita di figure affidabili e che credano nel progetto a lungo termine. Per garantire questi due requisiti fondamentali sono necessarie delle selezioni ferree e un investimento abbastanza cospicuo da parte dei candidati.

Vantaggi e Svantaggi della PoA

I vantaggi della PoA riguardano soprattutto l’alta efficienza e scalabilità del sistema. Di solito nella PoA vi sono molti meno validator rispetto ad una qualsiasi Proof of Stake e ciò rende il sistema più snello e veloce.
La PoA si adatta bene soprattutto per blockchain private o aziendali in cui la fiducia verso alcune (poche) persone è fondamentale.

Passiamo ora agli svantaggi. Se da un lato la presenza di pochi validator garantisce velocità e scalabilità, dall’altro si va a perdere un concetto base delle criptovalute: la decentralizzazione.
Un altro fattore che può avere risvolti negativi è che la reputazione di un validator può essere minata da fattori esterni (corruttori, manipolatori, ecc).

Proof of Burn (PoB)

La Proof of Burn, ideata dal bitcoin researcher Iain Stewart, è l’analogo eco-friendly della Proof of Work in quanto non sono richiesti nè hardware costosi nè elevati consumi di corrente elettrica per avere una potenza di calcolo tale da validare i nuovi blocchi.

Nella PoB la potenza di calcolo è virtuale e viene acquistata da un nodo “bruciando” una certa quantità di criptovaluta che può essere la stessa oppure un’altra (es. bitcoin).

Il “bruciare” (dall’inglese to burn) una criptovaluta consiste nell’inviare una quantità cripto ad un indirizzo, chiamato eater address, a cui non è associata nessuna chiave privata rendendo questo ammontare di cripto non più utilizzabile (spendibile).

Ovviamente più cripto un nodo brucia e più alta è la probabilità che venga scelto come validator. E’ altrettanto scontato dire che la ricompensa deve essere superiore all’investimento altrimenti nessun investitore sarebbe incentivato nel diventare un nodo di quella blockchain.

Vantaggi e Svantaggi della PoB

Il primo vantaggio, come già accennato, è sicuramente l’ecosostenibilità; tuttavia anche su questo vi sono critiche in quanto se il protocollo prevede un burn di bitcoin, questi stessi bitcoin sono stati minati da una PoW non ecosostenibile.

Il secondo vantaggio è la deflazione. Se la criptovaluta da bruciare è la stessa del progetto ecco che la Total Supply di tale cripto andrà a diminuire, aumentandone il valore.

Lo svantaggio principale sta nell’essere un protocollo ancora alle prime armi. Non sono stati sviluppati molti progetti basati su PoB: attualmente se ne contano principalmente tre (Factom, Slimcoin e Counterparty).

Altri punti negativi sono la lentezza rispetto alla PoW e la scarsa trasparenza per quanto riguarda il burning della moneta: viene davvero bruciata o se la intasca qualcun altro??

Proof fo Elapsed Time (PoET)

In italiano si traduce come “prova del tempo trascorso” ed è un protocollo di validazione dei blocchi basato su un tempo di attesa casuale che i partecipanti alla blockchain devono aspettare prima di poter essere scelti come validator.

Questo algoritmo è stato ideato da Intel, la nota azienda che produce i processori, schede di rete ecc., la quale ha realizzato un codice di istruzioni CPU chiamato SGX (Software Guard Extensions) mediante il quale gestisce e rende affidabile la PoET. E come??

Nel caso tu voglia partecipare alla PoEt, ti connetti alla blockchain tramite un programma che ti fornirà due chiavi (una pubblica e una privata). Successivamente invierai una richiesta di partecipazione alla rete mediante un attestato GSX che contiene la chiave pubblica del codice eseguito su GSX.
Una volta accettata la richiesta ti verrà consegnato un timer certificato dal codice attendibile. Non devi fare altro che aspettare il tempo specificato dal timer e, una volta trascorso questo tempo, otterrai un certificato (firmato dalla chiave privata del codice) che dovrai inoltrare alla rete per dimostrare di avere diritto ad essere il prossimo validator.

Vantaggi e Svantaggi della PoET

Il vantaggio, oltre alla solita ecosostenibilità rispetto alla PoW, è il principio di uguaglianza molto più marcato rispetto agli altri meccanismi in quanto non vige la regola nascosta “chi ha di più guadagna di più”.

Inoltre la sicurezza è garantita da un codice affidabile costruito da una terza parte (Intel) e non permette a persone esterne di corrompere il codice stesso.

Gli svantaggi principali sono due: come per la PoB, questo meccanismo è molto giovane e richiede ulteriori implementazioni e aggiornamenti. Il secondo svantaggio è di carattere “filosofico”: le criptovalute e la blockchain prevedono l’esclusione di terze parti intermediarie, mentre con la PoET ciò non avviene essendoci la presenza di Intel che fornisce il codice GSX fungendo da garante sulla sicurezza della blockchain stessa: se cade Intel, cade anche l’intero network.

Ti ringrazio per la lettura
Un saluto!!

Luca
https://steemit.com/@lucadema

Please follow and like us: