Che cos'è il “Proof-of-Work” - come funziona l’algoritmo di consenso di Bitcoin?
Proof-of-Work (PoW) è un algoritmo di consenso che richiede ai membri della rete di validare le transazioni al fine di mantenere il sistema sicuro.
Indice dei contenuti:
Supponi che in un certo momento tu stia cercando di capire come funziona la tecnologia blockchain.
Probabilmente ti sei chiesto chi assicura che le transazioni siano sicure, dato che non ci sono enti centralizzati a farlo.
La spiegazione sintetica sarebbe che reti blockchain come Bitcoin o Ethereum dispongono di algoritmi di consenso che garantiscono l'elaborazione, la conferma e l'archiviazione sicura di ogni transazione.
Ci sono due algoritmi principali utilizzati dalle reti blockchain per ottenere ciò:
- Proof-of-Work (PoW)
- Proof-of-Stake (PoS)
Per un principiante, comprendere come la blockchain funzioni senza intermediari può essere difficile, specialmente perché molte spiegazioni presenti su internet sono ancora cariche di terminologia tecnica.
Se ti capitasse di aprire un articolo che afferma: "le reti blockchain utilizzano Proof-of-Work o Proof-of-Stake come algoritmo per verificare le transazioni", probabilmente resteresti confuso.
Per questo motivo, ci prenderemo il tempo di spiegare in dettaglio come le reti blockchain assicurano che le transazioni siano verificate e memorizzate in modo sicuro senza la necessità di una banca, un contabile o qualsiasi altro intermediario.
In questo articolo, ci concentreremo esclusivamente sul concetto di Proof-of-Work.
Per comprendere meglio questo algoritmo, dobbiamo prima spiegare cosa si intende per algoritmo di consenso.
Questo algoritmo è il concetto chiave utilizzato da Proof-of-Work e Proof-of-Stake per eliminare la figura dell'intermediario.
Cos'è l'algoritmo di consenso?
Il termine "consenso" indica l'accordo di un gruppo di persone su un certo argomento o questione. Ad esempio, se stai uscendo con i tuoi amici, devi raggiungere un consenso su dove andare (cinema, cena, ecc.).
Quando si parla di tecnologia blockchain, esistono diversi modi o modelli in cui un gruppo di persone può raggiungere un consenso.
Su cosa devono accordarsi le persone in una rete blockchain? In breve, le persone che utilizzano la rete blockchain devono concordare che ogni transazione abbia dettagli corretti e che non ci siano tentativi di frode.
Come può ogni utente della rete blockchain sapere che la transazione è valida?
Ogni utente ha una copia digitale dell'elenco di tutte le transazioni nella storia della blockchain (il registro) che rende l'intero processo trasparente.
Perché le reti blockchain utilizzano l'algoritmo di consenso in primo luogo?
La decentralizzazione è una delle caratteristiche chiave della tecnologia blockchain. La tecnologia promette un modo più trasparente di fare le cose di tutti i giorni senza la necessità di intermediari.
Il concetto di algoritmo di consenso si basa sull'idea che il consenso di ogni utente della rete blockchain sia l'unico modo giusto, trasparente e sicuro per condurre transazioni senza parti terze (come banche, notai o altre istituzioni).
Confrontiamo il flusso di transazione in una banca e nella rete blockchain per spiegare come gli utenti mantengono le operazioni di rete attraverso un algoritmo di consenso.
Una transazione tramite una banca come intermediario di solito si presenta così:
D'altra parte, una transazione attraverso una rete blockchain di solito si presenta in questo modo:
Molte persone si chiedono cosa impedisca a un utente casuale della rete blockchain di fare qualcosa contro le regole e per guadagno personale.
L'algoritmo di consenso è progettato per rilevare automaticamente i tentativi di frode ed escludere quel tipo di utente dalla partecipazione nella rete blockchain.
Come è possibile?
Come abbiamo menzionato in precedenza, la blockchain e altri progetti Web 3 usano due modelli per mantenere sicurezza e trasparenza, Proof-of-Work e Proof-of-Stake.
Cos'è il Proof-of-Work?
Il Proof-of-Work è un algoritmo sviluppato nel 1993.
Il suo scopo era la protezione da potenziali spam sui server e attacchi DoS (Denial of Service), un attacco informatico attuato per rendere un computer o rete non disponibile al suo utente.
Il concetto è riapparso nel 2009 grazie a Bitcoin. Questa volta il Proof-of-Work aveva un nuovo scopo. È stato progettato come un algoritmo di consenso che:
- aiuterà a confermare ogni transazione nella rete Bitcoin
- aggiungerà nuovi blocchi di transazioni sulla blockchain
- preverrà il "double spending" (inviare la stessa quantità di monete più volte a persone diverse)
La rete Bitcoin utilizza ancora il algoritmo Proof-of-Work. Oltre al Bitcoin, ci sono altre criptovalute che lo usano, come Dogecoin e Litecoin.
Come funziona il Proof-of-Work?
Il motivo per cui il meccanismo è chiamato "Proof-of-Work" è che gli utenti della blockchain (nodi) devono investire del lavoro per verificare le transazioni.
Useremo esempi visivi per spiegarlo.
Diciamo che la Persona A invia 100€ alla Persona B tramite una rete blockchain.
Una volta che l'importo è inviato, ogni utente nella rete blockchain (nodo) esaminerà la transazione. Usando il registro distribuito, noteranno che si tratta di una nuova transazione con l'importo di 100€.
Una volta stabilito ciò, gli utenti si assicureranno che la Persona A non abbia inviato contemporaneamente gli stessi 100€ alla Persona C, D ed E (in una situazione in cui la Persona A ha solo 100€ sul suo conto e prova ad inviarli ad altri).
Se la transazione soddisfa tutti i requisiti, sarà confermata e memorizzata in un blocco.
Questo è il punto in cui entra in gioco il Proof-of-Work.
Ogni blocco ha un puzzle crittografico unico.
Una volta che lo spazio di archiviazione del blocco raggiunge il suo limite (un blocco in Bitcoin può memorizzare 100 transazioni), deve collegarsi al blocco precedente sulla blockchain.
Ogni nodo userà la potenza dei suoi computer per risolvere il puzzle crittografico.
L'utente che risolve il puzzle crittografico condividerà la soluzione con gli altri utenti. Tutti concorderanno che il blocco della transazione può essere memorizzato sulla blockchain (dopo di che non potrà mai essere alterato o cambiato).
Inoltre, l'utente riceverà una ricompensa per aver risolto il puzzle crittografico.
La ricompensa per aver risolto il puzzle crittografico e memorizzato il blocco di transazioni nella rete Bitcoin è di 6,25 BTC (per blocco).
Nel prossimo processo di halving di Bitcoin (Aprile 2024), la ricompensa sarà ridotta a 3,125 Bitcoin per blocco.
3 vantaggi chiave dell’algoritmo Proof-of-Work
1. Sicurezza
L'algoritmo di consenso Proof-of-Work abilita un sistema efficiente che risulterà completamente trasparente e sicuro.
Elimina qualsiasi possibilità di manipolazione della rete, come il double spending (spendere denaro che non si possiede).
Gli utenti possono tentare di aggiungere transazioni fittizie alla blockchain, ma altri nodi saranno in grado di rilevare facilmente i tentativi di frode.
Di conseguenza, i nodi impediranno automaticamente all'utente di partecipare ed escluderanno lui o lei dalla rete.
Aggiungere un numero elevato di transazioni fittizie alla blockchain è praticamente impossibile.
Questo significa che sarebbe necessario avere il controllo della maggioranza dei nodi nella rete (il controllo del 51%), il che richiederebbe un'ingente quantità di denaro e potenza di calcolo.
Secondo varie stime, tentare di prendere il controllo della rete blockchain costerebbe centinaia di miliardi di dollari.
Anche se un'entità riuscisse a ottenere il controllo del 51% della rete blockchain, è meno probabile che riuscirebbe a manipolare la rete.
2. Sistema decentralizzato
Oltre alla sicurezza, l'algoritmo Proof-of-Work promette un elevato livello di decentralizzazione.
Offre l'opportunità a ogni utente di far parte della rete. Ogni utente può aggiornare le modifiche e i record ed avere accesso al registro pubblico.
Ciò è praticamente impossibile nel sistema finanziario tradizionale, dove le istituzioni mantengono per sé registri e informazioni.
3. Incentivi alla ricompensa
La blockchain permette a chiunque di partecipare alla rete e ricevere ricompense per il proprio impegno.
Come abbiamo già menzionato, ogni nodo che risolve il puzzle crittografico e conferma il nuovo blocco nella blockchain può ricevere una compensazione sotto forma di tassa di transazione.
Questa funzionalità motiva molti utenti a unirsi alla rete e diventare un nodo. Avere molti nodi significa che la rete sarà più forte e più stabile, rendendo le transazioni molto più rapide.
Svantaggi del Proof-of-Work
Le caratteristiche che rendono il Proof-of-Work un meccanismo sicuro e affidabile hanno anche alcuni impatti negativi, principalmente sugli utenti quotidiani.
La possibilità di guadagnare "criptovalute gratuite" attraverso il mining ha attirato molte persone in questo settore.
Con il passare del tempo e l'aumentare della popolarità delle criptovalute, molti hanno investito più denaro per aggiornare le loro attrezzature di mining e avere una posizione di partenza migliore nel risolvere un puzzle crittografico.
Oggi, i minatori si trovano su un livello completamente diverso. Ci sono compagnie di mining con fattorie minerarie che contengono centinaia di computer.
Questo è qualcosa con cui gli utenti quotidiani non possono competere, il che ha portato alla creazione di un "monopolio del mining".
Inoltre, l'avere strutture minerarie estese ha portato a un altro problema, ovvero un maggiore consumo energetico.
La conseguenza dell'alto consumo energetico è un impatto negativo sull'ambiente.
Anche se molte compagnie stanno cercando di trovare soluzioni per un mining sostenibile, la percezione pubblica del concetto di Proof-of-Work è per lo più negativa, motivo per cui preferiscono maggiormente l’algoritmo Proof-of-Stake.