BLOCKCHAIN:
COS'È UN BLOCCO E COM'È FATTO?

Ecco una delle domande fondamentali per comprendere la tecnologia blockchain e i suoi meccanismi: cos’è e com’è fatto il singolo blocco di una catena?

Beh…il blocco di una catena blockchain è fatto…come un taxi!

Possiamo quindi immaginare la blockchain come una fila di taxi gialli!

Cosa vuol dire? 

Dunque, in questo post del blog di KNOBS abbiamo provato a descrivere la blockchain come una specie di Twitter. 

È un esempio che illustra bene la sua struttura.

Una catena di blocchi può essere immaginata come una serie di messaggi consecutivi tra loro che contengono transazioni, ovvero trasferimenti di valore o di dati da un account ad un altro in maniera anonima o pseudonima.

In questo post, vediamo meglio cos’è un blocco, com’è fatto e quali informazioni contiene e come questi messaggi consecutivi vengono raggruppati e resi pubblici su blockchain. 

Come sempre, prima di utilizzare termini tecnici ed espressioni difficili, spieghiamo i concetti in parole semplici, ricorrendo ad esempi e immagini concrete.

Indice argomenti

1) Come avviene la validazione di un blocco?

Cos'è un blocco?...un taxi giallo!

…Se il blocco di una catena blockchain fosse un taxi giallo!

Immagina 50 persone nel piazzale davanti ad una stazione ferroviaria. 

Sono tutte appena arrivate in città e hanno bisogno di raggiungere tutte lo stesso posto. 

Ma ognuna con uno scopo diverso. 

Alcune hanno un semplice messaggio da trasportare, altre devono consegnare un assegno, altre ancora un contratto.

Fuori dalla stazione ci sono 10 Taxi ed ognuno può portare 5 persone (non chiedermi perché ma i tassisti dell’esempio hanno tutti una Multipla). Questo significa che prima o poi, tutte le 50 persone arriveranno a destinazione. 

Quale blocco della catena viene validato per primo?

C’è un unico problema: i tassisti devono decidere quali passeggeri far salire per primi, sul primo taxi in partenza e poi sul successivo e così via.

Ti viene in mente come potrebbero fare? 

Come in molte situazioni (forse è poco romantico ma a volte succede proprio così), si potrebbe decidere che il miglior offerente vince il primo giro

Ti sembra strano che qualcuno sia disposto ad offrire più soldi degli altri per arrivare per primo nello stesso posto? Se ci pensi, in realtà, è un meccanismo molto diffuso: si verifica, ad esempio, nei parchi divertimenti, in aeroporto, alla posta!

All’ingresso di un parco divertimenti puoi scegliere se comprare il biglietto normale o il fast pass, che costa di più ma ti permette di saltare la coda nelle attrazioni.
Quando compri il biglietto di un volo easyJet o Ryanair, puoi scegliere di pagare di più per avere l’imbarco prioritario. Se vai in posta per spedire qualcosa, puoi scegliere la spedizione standard o quella veloce, che ti costa di più ma arriva prima.

Come vedi esistono molti esempi.

Tornando al nostro, da cosa dipende la scelta di pagare di più pur di arrivare a destinazione prima degli altri?

2. Blocchi, miners e fee

Tutto dipende da cosa trasportano i blocchi

Ciò che fa la differenza, in questo caso, è quello che i passeggeri stanno trasportando e l’urgenza che hanno di recapitare ognuno il proprio messaggio/assegno/contratto a destinazione. 

Probabilmente, se devi consegnare un contratto le cui clausole prevedono la firma entro una certa data ed ora, pena l’invalidità del contratto stesso, avrai molta urgenza e sarai disposto a pagare di più per salire sul primo taxi.

Se invece hai un semplice messaggio da lasciare a qualcuno, ma non hai nessuna particolare fretta, potresti essere disposto ad aspettare anche uno degli ultimi taxi in partenza, pur di pagare qualcosa in meno degli altri. Fai smaltire la fila e poi con calma sali anche tu su un taxi.

Le persone con il loro carico di messaggi/soldi/contratti sono come i nostri messaggi di Twitter nell’esempio che abbiamo descritto qui.

I taxi sono i blocchi della catena blockchain e i tassisti sono i minatori o miners, di cui avrai sicuramente già sentito parlare, ovvero coloro che creano i blocchi della blockchain. Coloro che guidano i taxi. Ti racconteremo di loro in uno dei prossimi post del nostro blog.

…e dalla fee riconosciuta ai miners per la creazione di un blocco

Il concetto fondamentale è che, continuando l’analogia con Twitter, una volta che hai scritto ed inviato un messaggio non lo vedrai comparire subito nel registro pubblico distribuito che è la blockchain.

Fin quando non è pubblicato sul registro, il tuo messaggio è come una di quelle persone fuori dalla stazione in attesa di un taxi che lo porti a destinazione.

E per farlo arrivare a destinazione, devi pagare.

Per prendere un taxi, devi pagare

Niente di strano, giusto? 

Vale esattamente lo stesso per la blockchain.

Se ci pensi, anzi, è un meccanismo che in un certo senso preserva il sistema da attori malevoli.

Perché? Perché per evitare di inondare la blockchain di messaggi inutili (di SPAM), le persone che vogliono prendere parte al sistema devono pagare coloro che si occuperanno di rendere pubblica la transazione. 

Il limbo in cui vengono lasciati i messaggi in attesa di essere minati viene chiamato mempool. Nel nostro esempio dei taxi, la mempool corrisponde alla piazza di fronte alla stazione ferroviaria dove le persone sono in attesa di prendere un taxi. 

Per far partire la vettura e pubblicare il messaggio, cioè per validare il blocco e farlo entrare sulla blockchain devi pagare.

Qui ti potrebbe giustamente sorgere una domanda.

Nel post dove abbiamo introdotto in modo semplice la blockchain e i suoi strumenti, abbiamo detto che non solo gli account, ma anche gli smart contract, cioè i contratti digitali, possono twittare sul nostro Twitter speciale, che abbiamo paragonato ad una blockchain.

Ma questo cosa vuol dire?

Che qualcuno paga anche quando uno smart contract genera un messaggio?

Si, esatto.

Ogni volta che una transazione lascia la stazione del treno, che si tratti di un tweet scritto da un account o generato da uno smart contract, il tassista ha bisogno di mettere della benzina (del gas) nella macchina.

3. Come funziona la catena di blocchi della blockchain?

Usiamo ancora il nostro esempio dei taxi.

Ovviamente i nostri taxi sono tutti gialli. E sono straordinariamente disciplinati.

I tassisti non vogliono litigare tra loro. Vogliono rispettare l’ordine di partenza.

E una volta per strada si mettono in fila uno dietro all’altro in base all’ordine che è stato stabilito. 

Per fare questo e assicurarsi che nessuno imbrogli, si attengono a regole ben precise, perché vogliono che chiunque possa verificare la bontà del loro servizio.

Trasparenza e tracciabilità

Seguono i principi di trasparenza e tracciabilità che sono propri della blockchain

Come?

Hanno deciso di registrare tutti in modo rigoroso sul computer di bordo 5 informazioni fondamentali, che, una volta inserite, diventano pubbliche:

  1. Ordine di partenza – Quando lascia la stazione, ogni taxi riceve un numero in base all’ordine di partenza: in questo modo, avremo sempre la posizione del taxi numero 1, numero 2 e così via. I taxi saranno, cioè, sempre tracciabili durante la carovana che formeranno per strada in base al numero loro assegnato in partenza.
  1. Orario di partenza – Quando parte, ogni taxi segna l’orario di partenza spaccando il millisecondo.
  1. Registrazione del valore trasportato Viene registrato ogni singolo passeggero, in forma anonima o pseudonima, e ciò che sta trasportando.
  1. Targa del taxi che lo precede – Ogni volta che un taxi parte, registra sul computer di bordo la targa del taxi che è partito prima di lui. Così per strada, starà ben attento a mettersi dietro quella targa specifica.
  1. La propria “targa speciale” – Non appena i passeggeri e il valore che trasportano sono saliti a bordo e il tassista ha scritto tutti i dati precedenti sul computer, allora e soltanto allora, sulla base di questi, il computer genera la targa del taxi.

Come puoi approfondire nel nostro post dedicato proprio all’HASH, la targa del taxi è “speciale”: viene costruita secondo regole precise e se viene modificata anche di un solo elemento cambia completamente!

4. Com'è fatto un blocco e cosa contiene

Bene, ora abbiamo tutti gli elementi per uscire dall’esempio e spiegare in dettaglio com’è fatto un blocco

I taxi dell’esempio sono come i blocchi della nostra blockchain. 

Così come i taxi, ogni blocco ha:

  1. Index, cioè il numero che rappresenta la posizione assoluta del blocco all’interno della blockchain. Ovvero il numero di partenza del taxi. 
  2. Timestamp cioè l’orario di partenza in termini informatici
  3. Tutti i dati delle transazioni contenuti all’interno del blocco
  4. Previous HASH ovvero, in termini informatici, la “targa speciale” del taxi che è partito prima di lui
  5. HASH ossia la targa del taxi stesso, generata in base a tutte le informazioni elencate sopra, come abbiamo appena visto

Il concetto di HASH è molto importante. 

Il blocco, quindi, sarebbe rappresentato così:

La carovana dei taxi lungo la strada sarebbe rappresentata in questo modo:

5. Cosa abbiamo imparato sulla struttura della blockchain

In questo post, abbiamo visto insieme, attraverso l’analogia con i taxi, cos’è e com’è fatto un blocco e quali elementi lo compongono

  • Index, il numero assoluto del blocco, ovvero la sua posizione all’interno della catena
  • Timestamp, l’orario in cui il blocco viene generato
  • Previous HASH, cioè l’HASH del blocco precedente
  • Tutte le informazioni legate al valore trasportato dal blocco
  • HASH del blocco stesso, cioè il suo codice identificativo, che dipende da tutti i dati precedentemente descritti (a dire il vero ci sarebbe un ulteriore elemento: il NONCE

Se ti stai appassionando e vuoi approfondire con noi componenti, natura e strumenti della tecnologia blockchain, iscriviti alla nostra Newsletter!

Riceverai aggiornamenti, approfondimenti e case study, raccontati in modo semplice e divertente.

Vuoi scoprire di più sulla tecnologia blockchain
e su come puo' far crescere il tuo business?

|   Chi siamo

KNOBS è una società di sviluppo software specializzata in tecnologia blockchain. Dal 2014.

|   KNOBS srl

Bastioni di Porta Volta, 9
20121 Milano (MI) – Italia
info@knobs.it
knobs@legalmail.it
P. IVA 08560240965
SDI X2PH38J

|   Orari di apertura

Dal lunedì al venerdì 9.00 – 18.00

|   Seguici

|   Newsletter

Iscriviti alla newsletter e ricevi subito il nostro PDF
Blockchain in parole semplici