Introduzione – Che cosa è la Blockchain

Essenzialmente, la Blockchain è un

  • archivio distribuito

  • basato su reti peer-to-peer

  • implementato mediante crittografia

In qualità di archivio distribuito e decentralizzato, finalizzato alla gestione dei trasferimenti di assets digitali, la Blockchain consente agli utenti di scambiarsi reciprocamente valori digitali sotto forma di transazioni.

In questo modo non è necessario ricorrere a terze parti in funzioni di garanzia delle transazioni.

Obiettivi della Blockchain

La tecnologia Blockchain è stata originariamente introdotta a supporto di Bitcoin.

Il fine principale era quello di prevenire il fenomeno del double spending delle criptovalute, vale a dire la possibilità di spendere più volte la stessa moneta.

Tuttavia, il ruolo della Blockchain non è limitato al settore delle transazioni finanziarie.

In generale, ogni transazione di valori digitali può essere oggetto di registrazione all’interno di un ledger distribuito.

La Blockchain come tecnologia

La tecnologia Blockchain può assumere forme e implementazioni differenti.

Pertanto, essa rappresenta più un concetto di natura architetturale, che una tecnologia specifica e ben definita.

Ogni implementazione differente è inoltre in grado di fornire caratteristiche e funzionalità specifiche, come ad esempio l’esecuzione di smart contracts.

Elementi essenziali della Blockchain sono:

  • le transazioni;

  • i blocchi;

  • il ledger;

Vediamone adesso nel dettaglio le caratteristiche.

Le Transazioni

Lo scambio di valori tra le controparti all’interno della Blockchain avviene mediante la realizzazione di transazioni.

Le transazioni vengono validate dalla rete dei nodi della blockchain, prima di essere inserite all’interno del ledger.

Una volta accodate alle transazioni preesistenti all’interno del ledger, esse divengono inalterabili e immodificabili.

I blocchi della Blockchain

Per sua natura, la Blockchain non è altro che una catena di blocchi.

Ogni blocco al suo interno contiene una o più transazioni.

L’aggiunta di nuovi blocchi alla Blockchain avviene sulla base di prefissate frequenze temporali.

In questo modo, è possibile mantenere lo storico delle transazioni tracciando la sequenza delle registrazioni effettuate sui blocchi.

Il ledger distribuito

Contabilmente, la blockchain può essere considerata un libro mastro distribuito e decentralizzato, noto appunto come ledger distribuito.

La gestione del ledger avviene mediante l’impiego di consensus protocols, che sono progettati per conseguire il consenso della rete sulle transazioni registrate all’interno del ledger.

I consensus protocols sono molteplici, e caratterizzano le differenti implementazioni della blockchain.

Tra i consensus protocols più comuni possiamo ricordare il Proof of Work (PoW), il Proof of Stake (PoS) e il Proof of Authority (PoA).

Blockchain – I principi basilari

Introduciamo adesso i principi basilari su cui si fonda la tecnologia blockchain.

Archiviazione Distribuita

La possibilità di archiviare i dati all’interno di un database distribuito permette ad ogni partecipante di accedere alla cronologia completa delle transazioni.

Inoltre l’archiviazione distribuita impedisce che una singola entità possa assumere pieno controllo sulle informazioni archiviate.

L’archiviazione distribuita consente ai singoli nodi la possibilità di verificare direttamente e in autonomia l’integrità delle informazioni archiviate.

Non è quindi necessario ricorrere ad intermediari per effettuare la verifica.

La verifica dell’integrità delle informazioni viene infatti implementata mediante le funzioni di hashing.

Reti di comunicazione Peer-to-Peer

Per implementare l’archiviazione distribuita la blockchain fa ricorso alle reti peer to peer.

In questa tipologia di reti nessun nodo assume il ruolo di server centrale.

Al contrario, in una rete P2P ogni nodo assume di volta in volta il ruolo di client e di server.

Peer-to-peer network

L’archiviazione distribuita consente di conseguire la trasparenza nonchè la irreversibilità delle transazioni.

Vediamo ora in che modo è possibile ottenere tali risultati.

Trasparenza delle transazioni

Ogni transazione e il valore ad essa associata sono visibili pubblicamente a tutti i partecipanti alla rete.

Le controparti di una transazione sono individuati dai loro rispettivi indirizzi, costituiti da sequenze alfanumeriche.

Ogni transazione viene sottoposta ad un numero di conferme da parte dei nodi miners, prima di essere validata ed essere inserita all’interno del ledger.

Irreversibilità delle transazioni

Dopo essere state inserite all’interno di un blocco e aggiunte nella blockchain, le transazioni non sono più modificabili.

Tale risultato è ottenuto proprio concatenando tra di loro i diversi blocchi che compongono la blockchain.

Una eventuale modifica alle transazioni già archiviate comporterebbe infatti l’alterazione degli hash calcolati in precedenza.

Tale alterazione sarebbe immediatamente evidente a tutti i nodi della rete che ne impedirebbero la conferma.