Come funzionano Blockchain e Criptovalute?

| |

Cos’è la blockchain

La definizione formale della blockchain, definisce la blockchain come un libro mastro distribuito e decentralizzato che contiene dei dati (come transazioni, ecc) tramite una serie di blocchi che sono condivisi pubblicamente con tutti i nodi del network di cui fanno parte.

La blockchain consiste in una serie di blocchi e ogni blocco funge da contenitore di dati. Ad ogni blocco viene assegnato un campo di dati che consente di contenere le informazioni all’interno del blocco stesso.

Data: ['transazione1', 'transazione2', ...]

Ad ogni blocco viene dato un valore univoco (un stringa randomica di caratteri alfanumerici). Questo valore univoco viene chiamato hash perché è generato da una funzione crittografica di hash che genera un output univoco per ogni input univoco.

L’input per la generazione dell’hash del blocco include i dati che deve contenere e altri metadati in merito al blocco, come quando è stato creato e l’ultimo hash (chiamato lastHash). L’ulimo hash ha un valore per ogni nuovo blocco, infatti rappresenta il collegamento con il blocco che è stato creato in precedenza, creando così una sequenza ordinata di blocchi.

Catena di blocchi collegati tra loro dal lastHash
Catena di blocchi collegati tra loro dal lastHash

Proprio grazie al collegamento generato dall’ultimo hash, viene formata la catena di blocchi, ovvero la cosiddetta blockchain.

Il significato della blockchain come “libro mastro” (ledger)

Il ledger è una sorta di “libro mastro” che registra tutte le transazioni economiche di un’organizzazione, ovvero registra i contratti di pagamento, le movimenti monetari, ecc. La blockchain considerata come un “libro mastro” ha lo scopo di memorizzare tutti i dati transazionali.

Perciò possiamo considerare la blockchain come un “libro mastro” distribuito.

Ma cosa significa distribuito?

La blockchain è distribuita perché il ledger stesso è condiviso con tutti quelli che utilizzano la rete, detta anche network, della blockchain. In questo network vi sono più nodi, ovvero più individui, che attraverso i loro computer si connettono alla rete della blockchain.

Nodi che compongono il network di una blockchain
Nodi che compongono il network della blockchain

Connettendosi alla rete della blockchain, ogni individuo ottiene una copia completa del “libro mastro” della blockchain, con lo storico di tutti i blocchi generati nel corso della vita di questa catena di blocchi e di tutti i dati in essi contenuti.

Una volta che tutti gli individui hanno una copia del ledger della blockchain, ogni singolo individuo verrà aggiornato ogni qual volta sarà aggiunto un nuovo blocco, aprendo la strada al concetto di blockchain decentralizzata.

Infatti per blockchain decentralizzata si intende la mancanza di un’ente centralizzato che ha il pieno controllo sul ledger. In un sistema centralizzato, è una singola organizzazione che aggiorna il “libro mastro” e che valida o meno le transazioni.

Nella rete centralizzata, tutti hanno accesso allo storico delle transazioni e hanno la possibilità di partecipare alla registrazione alla validazione delle transazioni.

Perché usare la blockchain?

Perché utilizzare la blockchain invece di un sistema centralizzato? Perché la blockchain è:

  • equa
  • democratica
  • completamente pubblica

Inoltre la blockchain risulta essere molto sicura, grazie proprio alla sua natura decentralizzata.

Se pensiamo a un sistema centralizzato, un hacker dovrà attaccare solo un ente se vuole violare o manipolare i dati contenuti al suo interno. Invece nella blockchain, l’hacker dovrà colpire tutti i nodi della rete per riuscire a manipolare il “libro mastro” e i nodi potrebbero essere centinaia se non migliaia di computer.

La tecnologia delle criptovalute

Dato che il principale utilizzo della tecnologia della blockchain è impiegata nella criptovaluta, si sente spesso parlare di criptovaluta come sinonimo di blockchain.

Tuttavia questo accostamento non è corretto, in quanto la criptovaluta ha la propria tecnologia che è più ampia rispetto alla sola blockchain, infatti la blockchain è solo uno dei tre aspetti che compongono la criptovaluta.

I tre concetti chiave delle criptovalute

  1. La criptovaluta utilizza la blockchain per sfruttare il ledger distribuito e decentralizzato.
  2. La criptovaluta è un mezzo per lo scambio digitale.
  3. La criptovaluta sfrutta il mining.

1. Blockchain e crittografia per le criptovalute

Per il primo concetto visto in precedenza, la criptovaluta sfrutta effettivamente la tecnologia della blockchain. Lo fa per creare un database delle transazioni: pubblico e consultabile da tutti.

Ma se questo database è pubblico, non c’è il rischio che qualche malintenzionato possa manipolare i dati per trarne vantaggi personali come un grande profitto?

Per prevenire questo tipo di comportamenti, la criptovaluta utilizza la crittografia proteggendo la blockchain, ovvero vengono sfruttati complessi algoritmi per oscurare i dati (sostanzialmente vengono creati dei messaggi criptati).

La crittografia viene utilizzata principalmente per dare la possibilità agli individui di generare la loro firma digitale univoca. Immaginala come la tua firma che viene verificata dalla banca quando emetti un assegno. Tuttavia grazie alla crittografia, viene superato il problema delle firme falsificate.

2. Scambio digitale e wallets delle criptovalute

Il secondo concetto riguarda lo scambio digitale delle criptovalute.

Ogni individuo che vuole registrare una transazione nella blockchain, deve “firmare” i dati transazionali con la sua firma digitale univoca, proprio come quando viene emesso un assegno dove ci sono i dati transazionali (data, importo, beneficiario) e la firma di chi lo emette.

Per spiegarla a grandi linee, la firma digitale si basa su una coppia di chiavi crittografiche: una chiave pubblica e una chiave privata.

Le chiavi crittografiche ci portano quindi all’introduzione dei wallets, o portafogli.

I wallets fungono da portafoglio, ovvero possono custodire il tuo saldo nella criptovaluta, tracciarne quanta te ne spetta e il tuo valore netto nell’intero sistema. Ogni wallet “custodisce” e viene associato a una chiave pubblica e a una chiave privata, entrambe univoche.

Chiave pubblica e chiave privata wallet
Chiave pubblica e chiave privata wallet

La chiave pubblica (public key) è usata come indirizzo del tuo wallet. Si tratta di un indirizzo univoco che viene utilizzato dagli altri individui per inviarti la criptovaluta. Sostanzialmente per farti pagare, devi condividere la tua chiave pubblica con gli altri.

Mentre la chiave privata (private key) viene usata per convalidare la transazione. Praticamente chi paga dovrà indicare da quale chiave pubblica (ovvero da quale wallet) avviene il pagamento e “firmare” il pagamento con la sua chiave privata.

Se proverà a utilizzare una chiave pubblica diversa (per esempio la tua) per effettuare il pagamento, il sistema non lo confermerà. Perché la chiave privata (la firma) risulterà sbagliata.

3. Mining

Come vengono registrate le transazioni di una criptovaluta all’interno della rete della sua blockchain? Attraverso il terzo aspetto fondamentale delle critpovalute: il mining.

Il mining è l’attività che aggiunge le transazioni alla blockchain di una determinata criptovaluta.

All’interno di una determinata rete, la transazione viene aggiunta a un pool di transazioni (transaction pool). Infatti quando una transazione viene inviata alla rete, è temporaneamente non confermata anche se chiave pubblica e chiave privata sono corrette.

La transazione viene verificata quando il miner prenderà in carico un gruppo di transazioni non confermate, che verranno validate e i cui dati verranno registrati all’interno di un nuovo blocco della blockchain.

Tuttavia per aver il diritto di aggiungere un nuovo blocco nella blockchain, il “minatore” dovrà risolvere un puzzle computazionale, chiamato proof of work, ovvero un algoritmo.

Schema riassuntivo verifica transazione nella blockchain
Schema riassuntivo verifica transazione nella blockchain

Risolvere questo algoritmo non è facile. Ci sono basse probabilità di riuscire a risolverlo in maniera casuale. Perciò saranno necessari moltissimi tentativi che comportano moltissimi errori per trovare la risposta corretta. Si tratta quindi di un’operazione che richiede tempo e che risulta computazionalmente costosa.

Quando un miner risolve il puzzle computazionale, ottiene il diritto di creare il blocco nel quale sono registrati i dati delle transazioni e di inviarlo al network della blockchain.

Per confermare l’inserimento, gli altri miners dovranno riconoscere la soluzione della proof of work (conosciuta la soluzione, è molto più semplice la verifica) e validare i dati transazionali contenuti all’interno del blocco. Dopo aver ricevuto un prestabilito numero di conferme, il blocco verrà definitivamente aggiunto al network della blockchain.

Perché un miner dovrebbe svolgere questa attività?

Abbiamo appena visto che aggiungere un nuovo blocco alla rete della blockchain non è semplice e risulta abbastanza dispendioso. Quindi perché un miner dovrebbe svolgere questa attività?

Ovviamente perché in cambio della sua attività di mining, il minatore riceve una ricompensa in criptovaluta. Perciò i miners cercano costantemente di risolvere la proof of work nella speranza di guadagnare la ricompensa per la soluzione.

Grazie a questo sistema, le transazioni vengono aggiunte ai blocchi, che a loro volta vengono registrati all’interno della rete della blockchain.

A grandi linee è questo il funzionamento delle criptovalute, che grazie alla tecnologia della blockchain, possono trovare un ampissimo ambito di applicazioni.

Previous

Come comprare Dogecoin e avere 10€ in regalo su Bitpanda

Come e dove comprare Cardano (Ada)

Next

Lascia un commento