Cos’è una blockchain e come funziona? Spiegheremo perché la blockchain è così speciale nel modo più semplice possibile.
Come indica il nome, una blockchain è una catena di blocchi che contiene informazioni. Questa tecnica è stata originariamente descritta nel 1991 da un gruppo di ricercatori; era originariamente intesa per tenere traccia nel tempo di documenti digitali in modo che non fosse possibile cambiarne la data a ritroso, o comunque modificarli. Praticamente come se fosse un notaio elettronico.
In ogni caso, è stata inutilizzata fino al 2009, quando Satoshi Nakamoto utilizzò la tecnologia per creare la prima e la più famosa delle criptovalute, il bitcoin.
Una blockchain è un libro mastro distribuito, completamente aperto a chiunque. Hanno una proprietà interessante: una volta che dei dati sono stati registrati dentro una blockchain, diventa molto difficile modificarli. Quindi, come funziona la cosa nella pratica
Esaminiamo più da vicino un blocco. Ogni blocco contiene alcuni dati, l’autorizzazione (o impronta) di quel blocco e quella del blocco precedente. Quali dati siano contenuti nel blocco dipende dal tipo di blockchain usata.
Quella del bitcoin, per esempio, immagazzina i dettagli della transazione, cioè chi invia i soldi, chi li riceve e l’ammontare del denaro scambiato. Un blocco ha anche un’autorizzazione, come detto; questa è paragonabile ad un’impronta digitale. Essa identifica un blocco ed i suoi contenuti, ed è sempre unica, come appunto un’impronta digitale.
Ogni volta che viene creato un blocco, è calcolata anche la sua impronta. Cambiare qualcosa nel blocco significa cambiare l’impronta, quindi. In altre parole: le impronte sono molto utili quando si vogliano individuare cambiamenti ai blocchi. se l’impronta di un blocco cambia, non si tratta più dello stesso blocco.
Il terzo elemento di ogni blocco è l’impronta del blocco precedente. Ciò crea quindi una catena di blocchi, ed è questa tecnica che fa sì che la blockchain sia così sicura.
Prendiamo una catena di 3 blocchi. Ogni blocco ha una sua impronta e quella del blocco precedente. Quindi il blocco numero 3 fa riferimento al numero 2, ed il numero 2 al numero 1. Il primo blocco è particolarmente speciale. Ovviamente, non può puntare a nessun blocco precedente, perché questo non esiste. Questo blocco si chiama il “blocco delle genesi”.
Poniamo il caso di fare dei pasticci col secondo blocco; anche l’impronta del secondo blocco cambierebbe. Proseguendo, anche il blocco 3 ed i seguenti cambierebbe. E non sarebbero più validi, perché non immagazzinerebbero più un’impronta valida del blocco precedente. Quindi, cambiare anche un solo blocco renderebbe tutti i seguenti blocchi non più validi.
Utilizzare le impronte non è però sufficiente ad impedire delle manomissioni. I computer, oggigiorno, sono molto veloci, e possono calcolare centinaia di migliaia di impronte al secondo. Si potrebbe effettivamente manomettere un blocco e ricalcolare tutte le impronte possibili di altri blocchi per rendere nuovamente valida la blockchain.
Per abbattere questo pericolo, le blockchain hanno una caratteristica, chiamata “proof-of-work” (traducibile, male, con prova di lavoro). E’ un meccanismo che rallenta la creazione di nuovi blocchi. Nel caso del Bitcoin, ci vogliono 10 minuti per calcolare una proof-of-work richiesta ed aggiungere un nuovo blocco alla catena. Ciò rende la manomissione molto difficile, perché se si prova a fare qualcosa ad un blocco, poi bisogna ricalcolare la proof-of-work di tutti i blocchi seguenti.
Essa proviene, quindi, dall’uso creativo delle impronte e dalla proof-of-work.
Ma c’è un’ulteriore maniera nella quale le blockchain si rendono sicure, ed è il fatto che sono distribuite. Invece di utilizzare un’entità centrale per gestire la catena, la blockchain usa una rete da utente da utente (P2P), ed è permesso a chiunque di aggiungersi. Quando qualcuno si aggiunge, riceve una copia completa della blockchain. Il nodo può utilizzare questa aggiunta per verificare che tutto sia ancora in ordine.
Cosa succede in questo caso? Il nuovo blocco è inviato a chiunque sulla rete. Ogni nodo verifica il blocco, per essere sicuri che non sia stato manomesso. Se è tutto a posto, ogni nodo aggiunge questo blocco alla propria blockchain. Tutti i nodi in questa rete, quindi, creano un consenso. Essi si accordano su quali blocchi siano validi, e quali non lo siano. I blocchi che sono stati manipolati saranno rigettati da altri nodi nella rete.
Perciò, per manipolare con successo una blockchain, bisogna manipolare tutti i blocchi sulla catena, rifare la proof-of-work per ogni blocco e prendere il controllo di più del 50% della rete P2P. Solo in questo caso il blocco manipolato verrà accettato da tutti. Come è evidente, è praticamente impossibile riuscire a fare una cosa così.
Le blockchain evolvono costantemente. Uno degli sviluppi più recenti è la creazione di “contratti intelligenti” (smart contracts). Si tratta di semplici programmi che sono immagazzinati sulla blockchain, e che possono essere utilizzati per scambiare automaticamente denaro, se sono raggiunte certe condizioni
La creazione della blockchain ha attratto una grossa attenzione da parte della gente. Molto velocemente ci si è resi conto che questa tecnologia potrebbe essere utilizzata per altre cose, come immagazzinare dati medici; creare un notaio digitale, e persino riscuotere le tasse.
You can see how this popup was set up in our step-by-step guide: https://wppopupmaker.com/guides/auto-opening-announcement-popups/
You can see how this popup was set up in our step-by-step guide: https://wppopupmaker.com/guides/auto-opening-announcement-popups/