Proof of Work (PoW)
pow.png
La blockchain è comunemente percepita attraverso il prisma del Nakamoto Consensus di Bitcoin. Ma per sapere cos'è Proof of Work, è essenziale esaminare da vicino l'implementazione sostenibile del PoW.
Proof of Work (comunemente abbreviato in PoW) è un algoritmo di consenso utilizzato per prevenire l'attacco del 51% della rete o il double spending (doppia spesa). La criptovaluta come Bitcoin utilizza il consenso PoW per confermare le transazioni e produrre nuovi blocchi da aggiungere alla catena. Con PoW, i minatori competono per completare le transazioni sulla rete in cambio di un premio per la loro velocità e precisione.
I punti chiave :
  • Comprendere il concetto di Proof of Work e come viene utilizzato per proteggere la rete blockchain.
  • Scoprire quali sono i problemi matematici che i minatori stanno effettivamente risolvendo e quanto questi calcoli contribuiscono all'intera società.
  • Scopri chi è coinvolto nel processo di mining utilizzando il consenso Proof of Work.
  • Sapere quali criptovalute si affidano ancora a Proof of Work e perché Ethereum sceglie di effettuare un hard fork su Ethereum 2.0.
  • Ottieni una visione olistica del motivo per cui il consenso Proof of Stake è più sicuro ed equo rispetto a Proof of Work.
Come viene applicata la Proof of Work su Blockchain?
L'algoritmo di consenso blockchain Proof-of-Work è il meccanismo di consenso più antico e l'algoritmo più popolare. Naturalmente, ci sono molte ragioni che possono aver contribuito alla sua popolarità. Ma la motivazione principale della sua reputazione è la sua capacità di promuovere l'onestà nell'ecosistema decentralizzato. Sebbene possano esistere altri algoritmi, PoW è ancora sostenibile per raggiungere l' obiettivo di Bizantine Fault Tolerance (BFT). 
Per comprendere appieno cosa sia il BFT, è un sistema in grado di resistere ai fallimenti associati al problema dei generali bizantini. Ciò significa che una rete può evitare situazioni in cui alcuni nodi (o minatori) tentano di agire contro il consenso. Con l'aiuto delle caratteristiche BFT, l'algoritmo PoW funziona in modo tale che i nodi possano convalidare un blocco all'interno di una rete risolvendo un problema matematico complesso.
Mentre il primo ad ottenere la soluzione al problema matematico riceve il permesso di consenso per scegliere un blocco da aggiungere alla blockchain. Come scambio, il nodo di successo ottiene i token come ricompensa. Ad esempio, nella rete Bitcoin, la ricompensa è in BTC.
Alla fine, il consenso PoW crea un'economia chiusa relativamente sana e trasparente. Principalmente per incoraggiare gli utenti a continuare a sostenere l'ecosistema.
Quali problemi matematici sono coinvolti in PoW?
Questi complessi problemi matematici si riferiscono a una varietà di complicazioni aritmetiche non comuni. Inoltre, questi problemi richiedono molta potenza di calcolo per essere risolti.
Si va dai problemi generici bizantini all'intricata funzione di hashing. Ad esempio:
  • Una  funzione hash  implica un processo per generare un output randomizzato con una lunghezza specifica attraverso un input. Mentre un hash è un valore numerico (o target) che decide chi estrae il blocco in modo accurato.
  • Risolvere una  fattorizzazione di interi che  comprende la scomposizione di un numero composto in interi più piccoli in combinazione con le restrizioni e le moltiplicazioni dei numeri primi.
  • Serve come  protocollo puzzle di emergenza  per proteggere la rete in un attacco DoS che richiede un ordine definito. Invece di risolvere una funzione, si tratta più di individuare la causa principale.
Quindi, per ogni validazione di successo di un blocco, viene data una ricompensa per compensare lo sforzo. Tuttavia, la scalabilità e la sicurezza sono la sfida principale man mano che una rete cresce. E il potere dell'hash cresce parallelamente alla complessità dei puzzle. Di conseguenza, è stato introdotto Proof of Stake per contrastare i difetti che possiede Proof of Work.
Chi ha fondato la PoW?
Il consenso PoW è stato fondato prima dell'invenzione della rete Bitcoin. L'algoritmo PoW è stato introdotto nel 1993, quando Moni Naor e Cynthia Dwork hanno pubblicato un articolo per scoraggiare gli attacchi DoS. L'articolo discute principalmente il potenziale dell'algoritmo per prevenire le frodi e la sua sostenibilità a lungo termine.
E prima che Satoshi Nakamoto parlasse notoriamente dell'algoritmo PoW nella blockchain di Bitcoin, lo scienziato informatico e attivista crittografico Hal Finney (Harold Thomas Finney II) ha introdotto un altro sistema chiamato RPoW, Reusable Proof Of Work nel 2004. Il sistema funzionava ricevendo un non scambiabile o un token Proof of Work basato su Hashcash non fungibile. In cambio, ha creato un token firmato RSA che potrebbe quindi essere trasferito da persona a persona. 
Un altro primo esempio di algoritmo Proof of Work è stato HashCash di Adam Back. Richiede ai mittenti di eseguire una piccola quantità di elaborazione prima di inviare un'e-mail. Di conseguenza, i destinatari potrebbero mitigare lo spam. 
In che modo PoW era correlato al consenso Nakamoto di Bitcoin?
PoW utilizza un modello in cui i nodi risolvono un puzzle matematico per produrre il blocco successivo aggiunto alla rete. I leader di blocco, che producono il blocco successivo, vengono selezionati in un formato simile a una lotteria che corrisponde direttamente alla loro potenza di calcolo (cioè hash) fornita al processo. Ci sono due partecipanti principali nel modello di consenso PoW:  minatori e operatori full node.
Miner
I nodi che partecipano al calcolo sono chiamati minatori e il processo di risoluzione del problema è chiamato mining. La comunità dei minatori è tenuta a svolgere un lavoro significativo per risolvere ogni successivo problema. PoW rende facile una volta che un nodo crea un blocco per consentire ad altri di verificare il processo che ha portato alla soluzione.
Nodi
I nodi devono dedicare tempo a calcoli ingombranti. In quanto tale, il processo consuma una quantità colossale di energia elettrica, che è dannosa per l'ambiente. I nodi decentralizzati nella rete devono verificare la criptovaluta della blockchain che viene "estratta" per una ricompensa utilizzando il meccanismo Proof-of-Work dei singoli minatori.
Validatori
Sulla base delle prove crittografiche e delle regole di consenso di Bitcoin, gli operatori full node fungono da validatori finali dello stato della rete. I client full node possono anche essere minatori e rifiutare blocchi e transazioni non validi sulla rete. Occorrono in media 40 e 60 minuti affinché i validatori approvino le transazioni in una rete blockchain nell'ambito del meccanismo di consenso Proof of Work.
Quanto è sicuro il PoW?
L'algoritmo Proof of Work è molto sicuro poiché può resistere al BFT. Inoltre, il modo in cui funziona lo rende ancora più sicuro. Inoltre, l'hash di ogni blocco contiene l'hash del precedente; questo aumenta la sicurezza e previene qualsiasi violazione di blocco su una blockchain di prova del lavoro. 
Per modificare un blocco, i minatori devono creare un nuovo blocco con lo stesso predecessore. In cui, richiede la rigenerazione di tutti i successori e il rifacimento del lavoro che detengono. Quindi, la blockchain può eludere la manomissione della sicurezza.
I pro e i contro di PoW 
Pro
  • Allontanati dagli attacchi DDoS.
  • Equo e trasparente.
  • Impatti di basse porzioni di criptovalute detenute dai minatori in un limite.
  • Incoraggia l'interesse del pubblico a mantenere una rete sana.
Contro
  • Costoso per l'acquisizione di componenti per computer di apparecchiature professionali, periferiche ed energia elettrica.
  • Sono enigmi molto complessi che non aggiungono valore all'istruzione o alle attività quotidiane, ma sono utili solo per convalidare un blocco.
  • Rende la blockchain più centralizzata rispetto a quella decentralizzata.
  • L'attività mineraria svanirà poiché le ricompense non sono più attraenti.
Quali monete usano la prova di lavoro?
Bitcoin rimane la moneta più popolare per utilizzare il consenso PoW. Tuttavia, ci sono molte altre monete che utilizzano questo algoritmo. Sebbene prima del periodo di dimezzamento, Bitcoin rimane redditizio. Ma molti minatori ora stanno cercando un'alternativa, poiché diventa più costoso e difficile estrarre un blocco.
Naturalmente, tutti iniziano a chiedersi qual è la migliore criptovaluta da estrarre. Per citarne alcuni, ecco i nostri risultati: 
Litecoin:  Analogamente a Bitcoin, Litecoin dispone anche di SegWit in cui il limite della dimensione del blocco aumenta rimuovendo i dati dalla rete. Ciò che distingue Litecoin da Bitcoin sono i suoi tempi di transazione fulminei a un costo molto più basso.
DASH:  Vanta transazioni più veloci e private nello spazio crittografico. Le transazioni istantanee fungono da punto in più per i minatori per investire il loro tempo in DASH.
Monero:  questo è un altro altcoin popolare che utilizza il consenso PoW. Come criptovaluta open source, Monero si concentra su fungibilità, privacy, trasparenza e decentralizzazione attraverso un registro pubblico.
Bitcoin Cash:  è uno spin-off altcoin dall'hard fork della rete Bitcoin. Sebbene utilizzi PoW, che può sembrare un consenso sicuro, Bitcoin Cash è una delle vittime gravemente danneggiate dell'attacco del 51% .  
ZCash: mira a fornire privacy attraverso l'anonimato, a differenza di qualsiasi criptovaluta. La rete Zcash utilizza le stesse funzioni hash Proof-of-Work SHA-256 di Bitcoin.
Ethereum Classic: nonostante Ethereum 2.0 sia passato a PoS. Ethereum Classic sta ancora utilizzando il consenso PoW per proteggere la sua rete. Tuttavia, poiché è solo una catena di minoranza, Ethereum Classic è più vulnerabile agli attacchi del 51% e causa una doppia spesa di monete.
Proof of Stake è migliore di Proof of Work? 
Negli ultimi anni c'è stato un crescente dibattito a favore del Proof of Stake (PoS) nello spazio crittografico. Quando si confrontano PoS e PoW , molti esperti ritengono che PoS sia senza dubbio migliore di PoW. E uno dei principali argomenti contro PoW è che richiede molta potenza di calcolo, che è molto energivora e influisce negativamente sull'ambiente. Prendi Bitcoin per esempio; la quantità media di energia necessaria per mantenere la rete Bitcoin è superiore a quella utilizzata dall'intera nazione svizzera. 
Inoltre, il consenso PoW è ad alto rischio di centralizzazione. Questo consenso è stato esaminato per la sua capacità a basse prestazioni e scalabilità per l'esecuzione delle transazioni on-chain.
In generale, l'algoritmo PoS fornisce anche migliori vantaggi economici (dividendi) per i suoi utenti, consentendo loro di eseguire un nodo principale o inserire monete in una piattaforma per scommesse e codici principali. È più giusto e più sostenibile a lungo termine. 
Conclusione
Come meccanismo di consenso originale, PoW rappresenta una confluenza di incentivi della teoria dei giochi, calcolo distribuito, consenso sociale, economia di mercato e prove crittografiche. Ha creato la tecnologia blockchain, consentendo alle reti di funzionare con un consenso sicuro, sostenibile e distribuito.
Indipendentemente dal fatto che più blockchain passeranno o meno a PoS in futuro, PoW PoW segna un'innovazione significativa nella progettazione computazionale e della teoria dei giochi.