La proof of work (PoW) è un algoritmo di consenso che serve per creare nuovi blocchi su una blockchain e di fatto sbloccare le transazioni fra due utenti.
All’interno della blockchain, solitamente gli utenti inviano beni digitali l’uno all’altro e un registro decentralizzato raccoglie ogni singola transazione. Tuttavia, per poter essere considerate valide, queste devono essere prima approvate e organizzate in blocchi.
Tale responsabilità ricade su speciali nodi chiamati miner, mentre l’intero processo viene definito mining.
La PoW incentiva i miner a competere tra loro nell’elaborazione degli scambi, ricevendo in cambio una ricompensa, che solitamente consiste in una quantità di token associati alla blockchain presa in considerazione.
Alla base di questo sistema troviamo complessi problemi matematici e la necessità di dimostrare semplicemente la soluzione.
Come funziona la proof of work
Come già accennato, quando avviene uno scambio di valute digitali tra due utenti, questa transazione viene registrata in maniera immutabile sulla blockchain.
Questo processo non è immediato, infatti l’operazione eseguita dev’essere prima validata e poi inserita in un blocco che a sua volta sarà inserito nella blockchain, una volta pieno.
Lo sblocco delle transazioni fra due utenti può essere eseguito grazie a dei computer con un’alta potenza di calcolo che, lavorando, risolvono dei problemi matematici.
I problemi matematici sono una sorta di enigma e ne esistono di varie tipologie:
- funzione di hash, ovvero dover trovare un input partendo da un output;
- scomposizione in numeri primi, vale a dire rappresentare un numero come moltiplicazione di altri due numeri;
- guided tour puzzle protocol, che in caso di attacco DoS richiede, ad alcuni nodi e in un certo ordine, il calcolo di una funzione di hash. In questo caso, bisogna riuscire a trovare una catena partendo da una stringa alfanumerica.
Con il termine hash solitamente s’intende sia il problema matematico che la sua soluzione, e la hash di ogni blocco contiene la hash del blocco precedente.
La complessità dei problemi dipende dal numero di utenti, dalla potenza di calcolo disponibile e dal carico della rete, mentre la velocità e l’esattezza di un sistema blockchain dipendono dalla difficoltà dei problemi.
Per questo i problemi non dovrebbero essere eccessivamente complessi, poiché in tal caso la generazione di nuovi blocchi richiederebbe troppo tempo, le transazioni non verrebbero elaborate e il flusso della rete si bloccherebbe.
Al contrario, se il problema fosse troppo semplice, la rete diverrebbe estremamente vulnerabile ad attacchi esterni.
Vantaggi della proof of work
La proof of work presenta due principali vantaggi, ovvero un’ottima difesa contro gli attacchi DoS, Denial of Service, e l’impatto marginale delle quote nel mining.
La PoW impone parecchi limiti alle azioni che è possibile intraprendere sulla rete, e un attacco efficiente richiederebbe moltissimo tempo e una potenza di calcolo elevata.
Questo significa che gli attacchi sono in realtà possibili, ma sono anche molto difficili e potrebbero non valerne la pena. In questo senso si può dire che l’algoritmo di consenso PoW scoraggia gli hacker a compiere attacchi.
Inoltre, con un sistema che prevede il mining non è importante quanto è alta la percentuale delle quote nel proprio portafoglio. In un sistema proof of work l’unica cosa che conta è la potenza di calcolo utilizzata per risolvere i problemi matematici e generare nuovi blocchi.
Svantaggi della proof of work
Un sistema come la proof of work non presenta solo vantaggi.
Per esempio, recentemente, sono state molte le polemiche sorte sull’utilizzo della PoW, che hanno portato anche alla nascita della proof of stake, sul fatto che i computer messi a servizio del sistema consumano molta energia elettrica.
Senza contare che il processo di mining richiede macchine altamente specializzate, capaci di risolvere in tempi brevi algoritmi estremamente complessi, molto costose e che non tutti si possono permettere, minacciando in un certo senso l’idea di decentralizzazione del sistema.
Infatti, un altro svantaggio della PoW potrebbe essere l’assenza teorica di decentralizzazione. Se il 51% del mining fosse in mano a un singolo miner o a una mining pool, questa potrebbe controllare la blockchain.
Si tratta di un evento del tutto improbabile, soprattutto su blockchain grandi, come per esempio quella di Bitcoin.
Infine, un altro svantaggio è l’inutilità dei calcoli. I miner impiegano molto tempo ed energia per generare nuovi blocchi eseguendo calcoli fini a sé stessi e non applicabili a nessun altro settore.
I problemi garantiscono quindi la sicurezza della rete, ma non possono essere utilizzati in campo economico o scientifico, per esempio.
Proof of work e proof of stake
La proof of stake nasce nel 2011, perché già si intravedevano alcuni problemi relativi alla proof of work, come la necessità di computer con un’elevata potenza di calcolo e il consumo di energia elettrica.
La proof of stake supera il concetto di mining, infatti per creare nuovi blocchi e quindi consentire nuove transazioni, basta tenere le criptovalute ferme nel proprio wallet, in quello che viene definito staking.
Il sistema, casualmente, selezionerà alcuni utenti che possiedono la criptovaluta basata su algoritmo proof of stake, i quali saranno compensati con nuovi token della valuta digitale stessa.
Rispetto, però, alla proof of work, con la proof of stake più alta è la percentuale delle quote nel proprio portafoglio, e più sarà alta la possibilità di essere ricompensati.
Ad oggi non si può dire se un algoritmo è migliore dell’altro, ma è comunque molto importante capire che tipo di meccanismo utilizza una moneta digitale, perché può aiutare anche a capire l’interesse che c’è da parte delle persone verso una determinata criptovaluta.
Se ti interessa approfondire ulteriormente l’argomento delle criptovalute o ti interessa il mondo degli investimenti in generale, allora entra nella community di Investhero, dove potrai trovare altri investitori del settore e non.
Add a Comment