Che cos’è una blockchain?

Che cos’è la Blockchain?

Se ne sente parlare tantissimo, spesso a sproposito quando non in modo fumoso. Eppure i concetti non sono complicati. Può essere un po’ ostica e complessa (non complicata) la tecnologia che supporta la blockchain ma nella sostanza, la questione è abbastanza semplice. Vorrei aiutarvi a fare chiarezza. La mia è una spiegazione NON TECNICA, da non esperto in materia o meglio da chi comprende il processo ma non entra nel dettaglio tecnico perché per quello ci sono persone più preparate di me. Lo scopo qui è quello di rendere chiari i concetti di massima e farvi comprendere quanto potente, versatile e universale è questo strumento e come può essere sfruttato a nostro vantaggio. Se siete interessati ad entrare nel dettaglio della questione, dopo aver letto anche il mio post relativo ai Token vi consiglio di contattare Michele Gandolfi che proprio su questi argomenti prepara e tiene webinar e corsi specializzati. Interessantissima anche la rivista online The Cryptonomist che contiene moltissime informazioni a riguardo comprese le criptovalute, su cosa sono e come gestirle: a tal prposito, ne approfitto per mandare un saluto ad Amelia Tomasicchio, CEO di Cryptonomist.

Indice per argomenti:

  1. Che cos’è la blockchain?
  2. Come funziona la blockchain?
  3. Blockchain è privata?
  4. Blockchain è sicura?
  5. Applicazioni pratiche di Blockchain

1. Che cos’è la blockchain?

Diciamo che: la tecnologia Blockchain consente la distribuzione di “registri” pubblici che contengono dati immutabili in modo sicuro e crittografato e garantisce che gli scambi di informazioni non possano mai essere alterate.

Entro nel dettaglio.

Se questa tecnologia è così complessa, in effetti perché chiamarla “blockchain”? Al suo livello più elementare, la catena di blocchi (blockchain vuol dire catena dei blocchi) è in effetti solo una catena di blocchi, ma non nel senso tradizionale di queste parole. Quando esprimiamo i concetti di “blocco” e “catena” in questo contesto, in realtà stiamo parlando di informazioni digitali (il “blocco”) memorizzate in un database pubblico (la “catena”).

Provate ad immaginare il registro delle imprese di una camera di commercio. Le informazioni contenute nel registro corrispondono al “blocco” mentre il registro stesso è la “catena”. Le informazioni contenute nella catena, sono la Blockchain.

Quindi, I “blocchi” sulla catena dei blocchi sono costituiti da informazioni digitali. In particolare, hanno tre parti:

  1. I blocchi che memorizzano informazioni sulle transazioni come la data, l’ora e l’importo in valuta del vostro ultimo acquisto su ad esempio su Amazon. (NOTA: Questo esempio di Amazon è per gli acquisti illustrativi; il commercio al dettaglio di Amazon non funziona secondo il principio della catena di blocco come illustrato qua)
  2. I blocchi che memorizzano informazioni su chi partecipa alle transazioni. Un blocco per l’acquisto di un pacchetto su Amazon registrerebbe il tuo nome insieme ad Amazon.com, Inc. (AMZN). Invece di utilizzare il vostro nome reale, il vostro acquisto viene registrato senza alcuna informazione identificativa utilizzando una “firma digitale” univoca, una sorta di nome utente.
  3. I blocchi che memorizzano informazioni che li distinguono dagli altri blocchi. Proprio come io e te abbiamo dei nomi per distinguerci l’un l’altro, ogni blocco memorizza un codice univoco chiamato “hash” che ci permette di distinguerlo da ogni altro blocco.

Gli hash sono codici crittografici creati da speciali algoritmi. Diciamo che avete fatto il vostro acquisto sfrenato su Amazon, ma mentre è in transito, decidete che non potete resistere e avete bisogno di un secondo acquisto. Anche se i dettagli della vostra nuova transazione sarebbero quasi identici al vostro precedente acquisto, possiamo comunque distinguere i blocchi a causa dei loro codici unici.
Mentre il blocco dell’esempio precedente viene utilizzato per memorizzare un singolo acquisto su Amazon, la realtà è un po’ diversa. Un singolo blocco della catena di blocco Bitcoin ad esempio, può effettivamente memorizzare fino a 1 MB di dati. Questo comporta che a seconda delle dimensioni delle transazioni,  un singolo blocco può ospitare poche migliaia di transazioni “sotto lo stesso tetto”.

Ok fin qua? Mi seguite? Ora spiego in parole più semplici come funziona una Blockchain.

2. Come funziona Blockchain

Quando un blocco memorizza nuovi dati viene aggiunto alla catena di blocchi. La catena a blocchi, come suggerisce il nome, è composta da più blocchi legati insieme. Affinché un blocco possa essere aggiunto alla catena di blocchi, tuttavia, devono accadere quattro cose:

2.1 Deve avvenire una transazione.

Continuiamo con l’esempio del vostro acquisto impulsivo su Amazon. Dopo aver cliccato frettolosamente attraverso il prompt di checkout multipli con la lingua di fuori, dovete  comunque procedere al check-out e fare vostro malgrado l’acquisto. Come abbiamo visto in precedenza, in molti casi un blocco raggrupperà potenzialmente migliaia di transazioni, quindi il vostro acquisto su Amazon sarà impacchettato nel blocco insieme alle informazioni sulle transazioni degli altri utenti.

2.2 Verifica della transazione

Dopo aver effettuato l’acquisto, la transazione deve essere ovviamente verificata. Con altri registri pubblici di informazioni, come la Securities Exchange Commission, le banche stesse, gli istituti finanziari che emettono le carte di credito, i carrier per i pagamenti online, c’è qualcuno che si occupa di verificare le nuove voci dei dati. Con blockchain, invece, quel lavoro viene lasciato ad una rete di computer. Quando si effettua l’acquisto presso Amazon, quella rete di computer si impegna a verificare che la transazione sia avvenuta nel modo da voi indicato. Cioè, confermano i dettagli dell’acquisto, compresi il tempo della transazione, l’importo in valuta e le parti contraenti.

2.3 Memorizzazione della transazione

Dopo che la transazione è stata verificata come accurata, questa ottiene il via libera. L’importo in valuta della transazione, la vostra firma digitale e la firma digitale di Amazon sono tutti dati memorizzati in un blocco. In quel blocco la vostra transazione si accumulerà con centinaia o migliaia di altre transazioni come la vostra.

2.4 Attribuzione di un “hash” al blocco.

Non diversamente da un angelo che si guadagna le ali, una volta che tutte le transazioni di un blocco sono state verificate, gli verrà fornito un codice identificativo unico, chiamato “hash”. Al blocco viene anche dato l’hash del blocco più recente aggiunto alla blockchain. Una volta che il blocco viene definito hashed, esso può essere aggiunto alla blockchain “raggiungendo l’eternità” oserei aggiungere per fare un po’ lo spiritoso.

Quando quel nuovo blocco viene aggiunto alla catena di blocchi, esso diventa pubblicamente disponibile per chiunque, anche per te. Se si dà un’occhiata alla blockchain di Bitcoin ad esempio, si vedrà che si ha accesso ai dati delle transazioni, insieme alle informazioni su quando , dove, e da chi il blocco è stato aggiunto alla blockchain.

3. Blockchain è privata?

Ecco una domanda che sento fare. Spesso questa domanda nasce dalla diffidenza ad affidare propri dati ad “enti” o “istituzioni” di cui non si conosce nome e luogo. Ma la realtà è diversa e nessuno deve preoccuparsi di nulla. Se si comprende bene il meccanismo con cui viene generata una blockchain, la domanda diventa superflua questo perché chiunque può visualizzare il contenuto della blockchain, ma gli utenti possono anche scegliere di collegare i loro computer alla rete di blockchain come nodi. Così facendo, il loro computer riceve una copia della catena di blocchi che viene aggiornata automaticamente ogni volta che viene aggiunto un nuovo blocco, un po’ come un Facebook News Feed che fornisce un aggiornamento in tempo reale ogni volta che viene pubblicato un nuovo stato. E’ la potenza di internet ed è il motivo per cui le criptovalute sono considerate così “pericolose”, perché non possono soggiacere al controllo di enti superiori a loro insindacabile giudizio.

Infatti, ogni computer della rete a catena di blocchi ha la propria copia della catena di blocchi, il che significa che esistono migliaia, o addirittura, milioni di copie della stessa catena di blocchi. Sebbene ogni copia della catena di blocco sia identica, la diffusione di tali informazioni attraverso una rete di computer rende le informazioni più difficili da manipolare. Con la catena di blocchi, non esiste un unico resoconto definitivo degli eventi che possono essere manipolati. Un hacker dovrebbe invece manipolare ogni copia della catena di blocco della rete. Questo è ciò che si intende quando si afferma che blockchain che è un libro mastro “distribuito” e realmente “democratico”.

Osservando perciò la catena di blocco di Bitcoin ad esempio, tuttavia, si noterà che non si ha accesso alle informazioni di identificazione degli utenti che effettuano transazioni. Sebbene le transazioni sulla catena di blocco non siano completamente anonime, le informazioni personali degli utenti sono limitate alla loro firma digitale o al loro nome utente.

Questo solleva una domanda importante: se non si può sapere chi sta aggiungendo blocchi alla blockchain, come ci si può fidare della blockchain o della rete di computer che la sostiene?

4. Blockchain è sicura?

La tecnologia Blockchain si occupa di sicurezza e fiducia in diversi modi. In primo luogo, i nuovi blocchi vengono sempre memorizzati in modo lineare e cronologico. Ovvero, si aggiungono sempre alla “fine” della catena di blocchi. Se date un’occhiata alla catena di blocchi Bitcoin, vedrete che ogni blocco ha una posizione sulla catena, chiamata “altezza”. A tal riguardo si può constatare che a gennaio 2020, l’altezza del blocco aveva superato i 615.400 metri!!!

Quindi, dopo che un blocco è stato aggiunto alla fine della catena di blocchi, è pressoché impossibile tornare indietro per modificare il contenuto del blocco. Questo perché ogni blocco contiene il proprio hash, insieme all’hash del blocco che lo precede. Esiste una catena appunto o un principio di concatenazione! I codici hash sono creati da una funzione matematica che trasforma le informazioni digitali in una stringa di numeri e lettere. Se queste informazioni vengono modificate in qualche modo, cambia anche il codice hash.

Ecco perché è importante per la sicurezza. Supponiamo che un hacker tenti di modificare la vostra transazione su Amazon in modo che dobbiate effettivamente pagare il vostro acquisto due volte. Non appena l’hacker modifica l’importo in valutai della vostra transazione, l’hashi del blocco cambierà. Il prossimo blocco della catena conterrà ancora il vecchio hash, e l’hacker dovrebbe aggiornare quel blocco per coprire le proprie tracce. Tuttavia, farlo cambierebbe l’hash di quel blocco. E il successivo, e così via. Dovrebbe avere 100 mani su 100 tastiere e non basterebbe.

Per cambiare un singolo blocco, quindi, un hacker dovrebbe cambiare ogni singolo blocco dopo di esso sulla catena di blocchi. Ricalcolare tutti questi hash richiederebbe un’abnorme e impossibile quantità di potenza di calcolo forse disponibile per una civiltà aliena a tal punto che nemmeno l’immaginazione degli sceneggiatori di Star Trek potrebbe prevedere. In altre parole, una volta che un blocco viene aggiunto alla blockchain diventa molto difficile da modificare e impossibile da cancellare.

Per risolvere il problema della fiducia, le reti a catena di blocchi hanno implementato dei test per i computer che vogliono unirsi e aggiungere blocchi alla catena. I test, chiamati “modelli di consenso”, richiedono agli utenti di “dimostrare” se stessi prima di poter partecipare a una rete a catena di blocco. Uno degli esempi più comuni utilizzati dalla Bitcoin è chiamato “prova del lavoro”.

Nel sistema di prova del lavoro, i computer devono “dimostrare” di aver fatto “lavoro” risolvendo un complesso problema di matematica computazionale. Se un computer risolve uno di questi problemi, diventa idoneo ad aggiungere un blocco alla catena di blocchi. Ma il processo di aggiungere blocchi alla catena di blocchi, quello che il mondo delle criptovalute chiama “estrazione mineraria”, o mining, non è facile. Infatti, le probabilità di risolvere uno di questi problemi sulla rete Bitcoin erano circa una su 15,5 trilioni nel gennaio 2020.1 Per risolvere complessi problemi matematici a queste probabilità, i computer devono eseguire programmi che costano loro una quantità significativa di energia.

Quindi, per concludere, la prova del lavoro non rende impossibili gli attacchi degli hacker, ma li rende in qualche modo inutili. Se un hacker volesse coordinare un attacco alla blockchain, dovrebbe controllare più del 50% di tutta la potenza di calcolo sulla blockchain in modo da poter sopraffare tutti gli altri partecipanti alla rete. Date le enormi dimensioni della catena di blocco Bitcoin, un cosiddetto attacco del 51% non vale quasi certamente la pena e probabilmente è impossibile e richiederebbe una tale disposizione di risorse da non avere nessun valore interessante in un rapporto costi/benefici.

5. Applicazioni pratiche della Blockchain

I blocchi sulla catena di blocco memorizzano i dati sulle transazioni monetarie, e di questo abbiamo parlato fino ad ora per praticità e semplicità. Ma sappiamo molto bene, avendo sviluppato applicazioni pratiche che la blockchain è in realtà un modo molto affidabile per memorizzare dati anche su altri tipi di transazioni. Infatti, la tecnologia blockchain può essere utilizzata per memorizzare i dati relativi agli scambi di proprietà, le fermate in una catena di approvvigionamento e persino la gestione di una tornata elettorale politica.

La rete di servizi professionali Deloitte ha recentemente intervistato 1.000 aziende in sette paesi sull’integrazione della blockchain nelle loro attività commerciali. Il loro sondaggio ha rilevato che il 34% aveva già un sistema a catena di blocco in produzione oggi, mentre un altro 41% prevedeva di implementare un’applicazione a catena di blocco entro i prossimi 12 mesi. Inoltre, quasi il 40% delle aziende intervistate ha dichiarato che l’anno prossimo investirà 5 milioni di dollari o più in blockchain. Ecco alcune delle più popolari applicazioni di blockchain oggi esplorate.

5.1 Banche e istituzioni finanziarie

Forse nessun settore può trarre vantaggio dall’integrazione della blockchain nelle sue operazioni commerciali più delle banche. Gli istituti finanziari operano solo durante l’orario di lavoro, cinque giorni alla settimana. Ciò significa che se cercate di depositare un assegno il venerdì alle 18:00, probabilmente dovrete aspettare fino a lunedì mattina per vedere che il denaro arrivi sul vostro conto. Anche se si effettua il deposito durante l’orario di lavoro, la transazione può comunque richiedere da uno a tre giorni per la verifica a causa del volume di transazioni che le banche devono regolare. Blockchain, invece, non dorme mai.

Integrando la blockchain nei processi bancari, i consumatori possono vedere le loro transazioni elaborate in soli 10 minuti, in pratica il tempo necessario per aggiungere un blocco alla blockchain, indipendentemente dall’ora o dal giorno della settimana. Con blockchain, le banche hanno anche la possibilità di scambiare fondi tra istituti in modo più rapido e sicuro. Nel commercio di azioni, ad esempio, il processo di liquidazione e compensazione può richiedere fino a tre giorni (o più a lungo, se le banche operano a livello internazionale), il che significa che il denaro e le azioni vengono congelati per quel periodo.

Data l’entità delle somme in gioco, anche i pochi giorni in cui il denaro è in transito possono comportare costi e rischi significativi per le banche. Santander, una banca europea, ha messo il potenziale di risparmio a 20 miliardi di dollari all’anno. Capgemini, una società di consulenza francese, stima che i consumatori potrebbero risparmiare fino a 16 miliardi di dollari di commissioni bancarie e assicurative ogni anno attraverso applicazioni basate su blockchain. Questo per dare una idea di cosa stiamo effettivamente parlando.

5.2 Cryptovalute

La catena a blocchi costituisce la base per le criptovalute come Bitcoin. Come ho  ampiamente spiegato in precedenza, le valute sono regolamentate e verificate da un’autorità centrale, di solito una banca o un governo. Nel sistema di autorità centrale, i dati e la valuta di un utente sono tecnicamente a discrezione della sua banca o del suo governo. Se la banca di un utente crolla o vive in un paese con un governo instabile, il valore della sua valuta può essere a rischio. Queste sono i motivi per cui è nata Bitcoin ad esempio.

Diffondendo le sue operazioni su una rete di computer, blockchain permette a Bitcoin e ad altre valute crittografiche di operare senza la necessità di un’autorità centrale. Questo non solo riduce il rischio, ma elimina anche molte delle spese di elaborazione e di transazione. Inoltre, offre a coloro che si trovano in paesi con valute instabili una valuta più stabile con un maggior numero di applicazioni e una rete più ampia di individui e istituzioni con cui possono fare affari, sia a livello nazionale che internazionale.

5.3 Operatori sanitari

Gli operatori sanitari possono sfruttare la catena di blocco per conservare in modo sicuro le cartelle cliniche dei loro pazienti. Quando una cartella clinica viene generata e firmata, può essere scritta nella catena di blocchi, che fornisce ai pazienti la prova e la sicurezza che la cartella non può essere modificata. Queste cartelle cliniche personali potrebbero essere codificate e memorizzate sul portablocchi con una chiave privata, in modo che siano accessibili solo a determinati individui, garantendo così la privacy

5.4 Registri pubblici

Se avete mai perso tempo presso un pubblico registro di qualsiasi natura, saprete che il processo di registrazione degli atti è sia oneroso che inefficiente. Oggi, un atto fisico deve essere consegnato a un impiegato statale presso l’ufficio di pubblico registro locale, dove viene inserito manualmente nel database centrale ed eventualmente nell’indice pubblico.

Questo processo non è solo costoso e dispendioso in termini di tempo ma è anche pieno di errori umani, dove ogni imprecisione rende meno efficiente il tracciamento dei dati, spesso disordinati, poco granulari, non coincidenti con altri dati e basati su tecniche di archiviazione diverse e non compatibili tra loro. Blockchain elimina la necessità di “processare” i documenti e di rintracciare i file fisici in un pubblico registro. Se il dato è memorizzato (immaginate ad esempio il catasto) e verificata sulla catena di blocco, il cittadino può fidarsi ciecamente dei dati che gli vengono messi a disposizione.

5.5 Smart Contracts (Contratti intelligenti)

Un contratto intelligente è un codice informatico che può essere integrato nella blockchain per facilitare, verificare o negoziare un accordo contrattuale. I contratti intelligenti operano in base a una serie di condizioni che gli utenti accettano. Quando tali condizioni sono soddisfatte, i termini del contratto vengono automaticamente eseguiti.

Diciamo, per esempio, che vi affitterò il mio appartamento con un contratto intelligente. Accetto di darvi il codice della porta dell’appartamento non appena mi pagherete il vostro deposito cauzionale. Entrambi invieremmo la nostra parte dell’accordo allo smart contract che viene posto in essere e scambierebbe automaticamente il mio codice della porta per il vostro deposito cauzionale alla data del noleggio. Se non fornisco il codice della porta entro la data di noleggio, il contratto smart rimborsa il vostro deposito cauzionale. In questo modo si eliminano gli onorari che di solito accompagnano l’utilizzo di un notaio o di un mediatore terzo.

5.6 Catene di fornitura

I fornitori possono utilizzare blockchain per registrare le origini dei materiali che hanno acquistato. Questo permetterebbe alle aziende di verificare l’autenticità dei loro prodotti, insieme a etichette sanitarie ed etiche come “Biologico”, “Locale” e “Commercio equo e solidale”.

Come riportato da Forbes, l’industria alimentare si sta orientando verso l’uso di catene di blocco per tracciare sempre più il percorso e la sicurezza degli alimenti durante tutto il viaggio dall’azienda agricola all’utente.

5.7 Sistemi di voto

Il voto a catena ha la peculiarità di riuscire ad eliminare i brogli elettorali e aumentare l’affluenza alle urne. Ogni voto verrebbe memorizzato come un blocco sulla catena di blocco, rendendolo quasi impossibile da manomettere. Il protocollo di blocco manterrebbe anche la trasparenza nel processo elettorale, riducendo il personale necessario per condurre un’elezione e fornendo ai funzionari risultati immediati.

Ecco, direi di avervi dato una panoramica piuttosto precisa e semplice di ciò che si intende per Blockchain. Ritorneremo sull’argomento, in altre circostanze. Se avete dubbi, domande o richieste in merito, siamo qui a vostra disposizione.