Proof of Work

06.12.2018

Cos’è la Proof-of-Work?

Il concetto originale di Proof-of-Work risale al 1993, anno in cui è stato sviluppato per prevenire attacchi denial of service e altre violazioni come network spam. Sostanzialmente questa soluzione richiedeva un po’ di lavoro all’utente del servizio, solitamente inteso come tempo di lavorazione di un computer.

Nel 2009, Bitcoin ha introdotto un metodo innovativo per utilizzare la Proof-of-Work come algoritmo di consenso per convalidare transazioni e trasmettere nuovi blocchi alla blockchain. 

Da allora si è diffuso fino a diventare un algoritmo di consenso ampiamente utilizzato in diverse criptovalute.


Come funziona?

In breve, i miner all’interno di un network competono tra di loro per risolvere enigmi computazionali complessi. E’ difficile trovare la soluzione di questi enigmi, ma allo stesso tempo è facile verificare se questa è corretta. Quando un miner trova la soluzione a un enigma, può trasmettere il blocco al network e tutti gli altri miner verificano che la soluzione sia effettivamente corretta.


Facciamo un esempio. 

Bitcoin è un sistema basato sulla blockchain, mantenuto dal lavoro collettivo di nodi decentralizzati. Alcuni di questi nodi sono conosciuti come miner e hanno il compito di aggiungere nuovi blocchi alla blockchain. Per far ciò, i miner devono indovinare un numero pseudo-casuale (conosciuto come nonce). Questo numero, una volta combinato con i dati forniti nel blocco e inserito in una funzione hash, deve produrre un risultato che corrisponda a determinate condizioni, per esempio, una hash con quattro zero iniziali. Quando viene trovato un risultato adeguato, gli altri nodi ne verificano la validità e il nodo miner viene premiato con la ricompensa per il blocco.

Quindi, è impossibile aggiungere un nuovo blocco alla main chain senza prima aver trovato una nonce valida, che a sua volta genera la soluzione di un blocco specifico (chiamata block hash). Ciascun blocco convalidato contiene una block hash che rappresenta il lavoro svolto dal miner, e per questo motivo viene chiamato Proof of Work.

La Proof-of-Work aiuta a proteggere il network da diversi tipi di attacchi. Per riuscire nel suo intento, un attacco richiederebbe una notevole potenza di calcolo e un bel po’ di tempo per eseguire i calcoli, quindi sarebbe inefficiente in quanto i costi sostenuti per l’attacco al network sarebbero ben maggiori dei potenziali profitti.

Il sistema Proof-of-Work presenta alcuni problemi, il mining richiede hardware costoso che consuma una grande quantità di energia. Inoltre, i complicati calcoli svolti garantiscono la sicurezza del network ma non possono essere utilizzati per altri scopi.

Anche se la Proof-of-Work potrebbe non essere la soluzione più efficiente, rimane uno dei metodi più diffusi per raggiungere il consenso all’interno delle blockchain. Esistono già sistemi e approcci alternativi che cercano di risolverne i problemi, ma solo il tempo ci dirà quale di questi sarà il successore della Proof-of-Work.

Resta connesso per nuovi contenuti e dai un’occhiata agli altri video della Binance Academy!

Loading