Cos’è una blockchain – principi e applicazioni

Home » Blog » Cos’è una blockchain – principi e applicazioni
Blockchain, principi e applicazioni.

L’obiettivo di questo post è introdurre ad una tematica molto importante che sta rivoluzionando letteralmente la nostra società. La blockchain, infatti, continua a ricoprire un ruolo sempre più importante nello scenario odierno, non solo per via delle criptovalute, ma anche grazie ai numerosi progetti associati, uno tra tutti il Web3.

Ecco quindi un’introduzione semplice – ma non semplicistica! – alla blockchain.

TL;DR

La blockchain altro non è che un registro, o database, di transazioni decentralizzato. Ogni partecipante detiene l’intero registro costantemente aggiornato. L’aggiunta di una nuova transazione, chiamata blocco, viene registrata tramite un sistema di consenso comune. Ogni blocco è strettamente correlato a quello precedente.

Questo sistema coniuga principi importanti, quali l’immutabilità delle informazioni, l’assenza di organi centrali che detengano i dati delle persone, la sicurezza e la trasparenza degli scambi e la possibilità di sviluppare software in grado di automatizzare gli scambi in base a condizioni definite.

La blockchain è alla base delle nuove opportunità economiche e sociali: Web3 e NFT sono solo quelli più conosciuti al grande pubblico. Esistono altre applicazioni delle blockchain, di cui esistono già studi in merito. Grazie ad una crescente curiosità da parte delle aziende e dei governi, questa tecnologia sarà in grado di arrivare a sostenere diversi settori, dal pubblico all’agricoltura.

I principi della blockchain

Il nome stesso, in inglese, è estremamente esaustivo: catena di blocchi. Una blockchain, infatti, è un registro elettronico formato da una sequenza di blocchi ognuno contenenti delle informazioni. Il registro è condiviso simultaneamente tra tutti i “partecipanti”, detti nodi; il contenuto di ogni blocco è strettamente correlato a quello del blocco precedente e rende l’intera catena immutabile.

Questa definizione può sembrare banale, ma apre la strada ai principi portanti che rendono la blockchain una tecnologia tanto importante quanto rivoluzionaria:

  1. Decentramento
  2. Immutabilità
  3. Sicurezza
  4. Trasparenza
  5. Programmabilità

Andiamo quindi ad approfondire ognuno di questi cinque punti per avere, alla fine, una visione di insieme più chiara.

Decentramento

Il registro elettronico (detto ledger) è distribuito verso tutti i partecipanti della blockchain. Non esiste un’autorità centrale che detiene le informazioni, ovvero tutti i nodi autorizzati – vedremo in seguito come – sono tenuti a validare le informazioni inserite.

Ogni nuova informazione viene rappresentata da un blocco collegato al precedente. Il blocco è registrato e distribuito simultaneamente a tutti i partecipanti. Tuttavia, se questa informazione venisse manipolata all’interno di uno o più nodi, la maggioranza di essi la rifiuterebbe immediatamente a causa dell’incoerenza.

Il beneficio del decentramento è costituito dalla necessità di un consenso comune da parte di tutti i partecipanti che inseriscono nuovi blocchi della catena. Questo consenso è raggiunto tramite diversi algoritmi, come il Proof of Work o il Proof of Stake, due dei più largamente diffusi.

Di seguito, una piccola illustrazione per chiarire il concetto base.

Nell’immagine vengono rappresentati i nodi A, B e C, già contenenti i blocchi 1, 2 e 3. Nel momento in cui il blocco 4 viene distribuito a tutti i nodi, questi validano tra loro il blocco nuovo per verificare che sia uguale per tutti. Tuttavia, il nodo C altera il blocco 4. La difformità delle informazioni contenute nel blocco alterato viene subito rilevato da tutti i nodi della rete, impedendogli di inserirlo nella blockchain e preservando così l’integrità dell’informazione distribuita.

Il decentramento di una struttura dati non è una innovazione recente, tuttavia ha delle implicazioni che vanno aldilà della semplice sicurezza del dato. È un vero e proprio cambio di paradigma culturale che sposa il principio di sussidiarietà.

Immutabilità

Nel nostro modello di società attuale è necessario eleggere una o più autorità attraverso cui garantire lo stato immutato di un’informazione, con tutte le conseguenze annesse. Una sola autorità, o un gruppo ristretto di esse, conserva in maniera centralizzata le informazioni che le vengono affidate e verso la quale gli interlocutori devono riporre fiducia.

La blockchain, in modo completamente opposto, ci porta verso un sistema in cui tutte le informazioni sono allo stesso momento condivise con tutti, in modo tale da renderle definitivamente immutabili una volta introdotte nel registro. Dunque, la necessità di avere una terza parte a garantirne lo stato immutato e veritiero viene meno, in quanto l’informazione viene conservata in tutta la blockchain e da tutti nodi della rete.

Lo stato di immutabilità di un blocco non si applica fin da subito. Per comprendere il perché bisogna aver chiaro come un blocco viene generato.

La blockchain utilizza principalmente l’hashing e la crittografia per salvare e autenticare le informazioni all’interno del blocco. Ogni blocco può contenere informazioni di qualsiasi tipo, ad esempio un atto di proprietà, un video, una semplice immagine. Oltre a queste informazioni, viene aggiunto l’hash del blocco precedente.

Quest’ultimo passaggio è molto importante, perché significa che ogni blocco nuovo che viene aggiunto “contiene” le informazioni del blocco precedente. Di seguito una semplice illustrazione esplicativa.

Illustrazione del funzionamento, semplificato, di hashing per ogni nuovo blocco inserito in una blockchain.
Illustrazione del funzionamento semplificato di hashing per ogni nuovo blocco inserito in una blockchain. L’hash della nuova informazione da inserire nel registro viene unito all’hash del blocco precedente e ad altre informazioni come il time stamp. In alcuni sistemi di consenso, come il Proof of Work usato da Bitcoin, si aggiunge il nonce, ovvero un numero univoco che rappresenta l’effettivo lavoro di validazione compiuto dal nodo.

Infine, una volta raggiunto un numero sufficiente di blocchi, i nodi validatori aggiornano la blockchain.

Per assicurare lo stato di immutabilità di un blocco è quindi necessario che sia incluso in uno o più blocchi prima di essere registrato, dai nodi validatori, all’interno della blockchain.

Sicurezza

La sicurezza di una blockchain è intrinsecamente fornita dalla decentralizzazione, dalla crittografia e, come accennato pocanzi, dal consenso raggiunto dei nodi validatori. É proprio sulla gestione dei nodi validatori che incide il fattore sicurezza di una blockchain.

Uno nodo validatore ha il compito di “concordare”, insieme agli altri nodi, le versioni dei blocchi inseriti in una blockchain e aggiornarne di conseguenza la versione. Come avviene però la scelta dei nodi validatori? Chiunque può esserlo?

In base alla tipologia di blockchain le risposte a queste due domande possono variare. Infatti, queste possono essere:

  • Pubbliche, tutti possono accedervi e validare le transazioni;
  • Private, di appartenenza ad una singola entità che decide chi e come può partecipare alla blockchain;
  • Senza autorizzazione, ossia senza limitazioni di accesso;
  • Con autorizzazione, al quale solo un gruppo di nodi in possesso di certificati regolarmente rilasciati possono accedere.

Inoltre i nodi validatori devono possedere requisiti tecnici in grado di supportare i processi di validazione e in alcuni sistemi di consenso è richiesta la disponibilità di un certo numero di token, ossia una specie di gettone virtuale di ricompensa per l’inserimento di blocchi in una blockchain.

Trasparenza

La trasparenza all’interno di una blockchain è un altro enorme vantaggio. Essendo il registro distribuito su tutta la rete, tutti i partecipanti autorizzati di una blockchain possono vedere gli stessi dati.

Poniamo di voler tracciare una serie di transazioni dal partecipante “A” al partecipante “D”, passando per i partecipanti “B” e “C”. Nel ledger tutti i partecipanti potranno prendere visione delle singole transazioni:

  • da “A” verso “B”
  • da “B” verso “C”, infine
  • da “C” a “D”

Nessuno potrà apportare delle modifiche una volta concordate le transazioni registrate in ogni singolo blocco immesso nella rete. Nel nostro esempio, il partecipante “D” potrà quindi risalire facilmente a tutti i passaggi intercorsi, così come potranno farlo i partecipanti “A”, “B” e “C”.

Programmabilità

Le transazioni su una blockchain possono essere programmate, attraverso l’uso degli smart contracts.

Semplificando il concetto, gli smart contracts permettono di automatizzare l’esecuzione delle transazioni al raggiungimento di un determinato obiettivo.

Programmare l’esecuzione di una transazione implica generare automaticamente un cambio di stato della blockchain. Quando questo avviene, si genera un nuovo blocco che viene automaticamente inviato ai nodi validatori.

Le implicazioni sono molteplici e coinvolgono i beneficiari degli smart contracts, i validatori e i partecipanti della blockchain che supportano il processo di validazione. Provo a semplificare alcuni dei vantaggi per ognuna delle categorie di attori, senza addentrarmi nello specifico:

  • I diretti utilizzatori degli smart contracts, ovvero coloro che li utilizzano per scambiare beni o servizi, digitali e non, potranno avere la sicurezza che lo scambio sia possibile solo quando tutte le condizioni vengono rispettate (un bonifico effettuato, un’azione compiuta e registrata, ecc.). Colui che riceve il bene o servizio avrà la prova inequivocabile e immutabile di esserne a tutti gli effetti il proprietario o beneficiario.
  • I validatori chiamati in causa elaboreranno gli smart contracts e una volta validati e inseriti i blocchi riceveranno un compenso in token. In molti casi questi token hanno un valore sul mercato, si pensi a Ethereum.
  • Tutti gli altri partecipanti della blockchain hanno la possibilità di “prestare” i propri token ai validatori per aiutarli nella conclusione del processo di validazione ricevendo, in cambio, un piccolo compenso. Questo meccanismo, conosciuto come staking, permette di ricevere compensi, in token, vincolandone una quota di quelli già in possesso. I token prestati non vengono “spesi” ma utilizzati per supportare i nodi validatori nelle blockchain con consenso Proof of Stake.

Questi sono solo alcuni dei benefici che si possono ottenere grazie alla programmabilità di una blockchain. Gli smart contracts sono un argomento in grado di diventare tanto complesso quanto più a fondo si vuole comprendere, per questo scriverò dei post dedicati.

Diffusione e applicazioni della blockchain

Per illustrarvi la diffusione e le applicazioni che può avere la blockchain nella nostra società, prendo spunto da un interessante paper datato luglio 2019 sulla diffusione della blockchain, a cura del International Management Institute di Nuova Delhi, della Delft University of Technology in Olanda e del Indian Institute of Technology di Delhi. Per chi volesse, ecco il link:

Diffusion of blockchain technology – Insights from academic literature and social media analytics – Researchgate.net

Lo studio incrocia i dati disponibili dalla letteratura accademica e dalle informazioni raccolte sui social media (Twitter, in particolare) per costruire un prospetto di come questa tecnologia viene accolta dalla società e i contesti economici dove può trovare integrazione.

Di seguito vi riassumo le analisi sugli studi accademici e sulle discussioni pubbliche raccolte sui social.

Pubblicazioni accademiche

Per quanto riguarda le pubblicazioni accademiche, le blockchain compaiono in studi:

  • nel settore manifatturiero, per l’integrazione nella comunicazione tra macchine;
  • nel settore trasporti, per l’integrazione nei sistemi definiti nel Piano Industria 4.0, o sulla gestione dei trasporti in contesti come le smart city;
  • nel settore finanziario;
  • nel terziario, facendo leva sulla decentralizzazione, la sicurezza e l’immutabilità per supportare processi di autenticazione, diritti di opere d’arte e protezione dei dati personali – per citare alcune applicazioni;
  • nel settore pubblico, con progetti come la e-residency, ossia la residenza digitale. Questa applicazione della blockchain si è concretizzata grazie al governo dell’Estonia, primo paese ad adottare una soluzione simile per garantire servizi digitali sicuri al cittadino. Ecco il link alla pagina del progetto pubblico: https://e-estonia.com/solutions/cyber-security/ksi-blockchain/

Altri settori non presentano segni di studi a riguardo se non l’agricoltura anche se, a distanza di qualche anno dalla pubblicazione della ricerca si possono trovare tentativi di integrazione con progetti come l’italiano SmartAgriFood.

Dal punto di vista dei social media

Come già citato, la ricerca usa Twitter come fonte social poiché è quello con il grado più alto di diffusione volontaria di informazioni di valore. Alcuni studi hanno mostrato come effettivamente, i dati di Twitter permettano di effettuare previsioni sull’utilizzo di una tecnologia durante tutto il suo ciclo vitale.

Sono stati presi 340.000 e più tweet con hashtag #blockchain, anche se gran parte sono stati scartati perché fornivano informazioni di bassa qualità. Il risultato è stato che la blockchain ha trovato numerosi spunti di applicazioni in contesti finanziari, nel settore terziario e nel settore pubblico.

In ultima analisi, tuttavia, solo il settore terziario e finanziario hanno trovato applicazione in contesti reali, mentre tutti gli altri settori sono in fase esplorativa e decisionale.

Conclusioni

La blockchain è una tecnologia con già parecchi anni alle spalle, ma solo la diffusione delle criptovalute ha potuto farla conoscere al grande pubblico. Ancora oggi si sta lavorando all’integrazione in numerosi campi e per scopi differenti da quelli speculativi del mercato finanziario a cui siamo abituati a pensare.

Le sue caratteristiche uniche sono alla base di migliaia di progetti e non c’è dubbio che prenderà una posizione di rilievo in tutte le nostre attività, portando (si spera) quel grado di sicurezza e protezione necessario per un cambiamento culturale profondo.

Ad oggi già si parla di Web3 e alcune blockchain come Solana si sono già spinte oltre, promuovendo dispositivi mobili e negozi fisici per permettere la diffusione di applicazioni, servizi e scambi di beni basati su blockchain.

Spero di avervi fornito un buon approfondimento sulla tematica e vi invito a scrivermi, o commentare l’articolo, per domande o suggerimenti per ulteriori approfondimenti.



Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Cerchi qualcosa in particolare?

iubenda Certified Bronze Partner