06 Ago La struttura di una blockchain: definizione e ruolo delle principali componenti
La transazione
Le transazione è quel bene, valore o informazione che viene scambiato tra due o più soggetti su una piattaforma blockchain e che necessita di essere approvato e verificato e archiviato. E’ costituita dalle informazioni relative all’oggetto della transazione (nel caso di un immobile ad esempio le informazioni saranno il prezzo, l’effettiva proprietà dell’immobile, i dati catastali etc…) e da una Cryptographic Key, ovvero un insieme di crittografie a chiave pubblica che permettono la verifica dell’identità degli utenti.
I nodi
I nodi sono i server della rete attraverso i quali vengono gestite le transazioni. I nodi hanno il compito di conservare una copia aggiornata di tutta la catena.
Il codice di Hash
L’ Hash di un blocco rappresenta il suo codice di autenticazione. Possiamo considerarla come una impronta digitale che determina l’unicità e assicura l’inviolabilità del blocco. Si ricava partendo da una serie di dati variabile (input) che vengono processati attraverso la funzione di hash. Questa procedura rilascia (output) un codice alfanumerico irreversibile che non consente in alcun modo di risalire ai dati dell’input esattamente come da una impronta digitale di una persona non è possibile risalire al suo DNA.
Il miner e il mining
Il miner è colui che mette a disposizione la potenza di calcolo del proprio computer per validare le transazione e consentire al blocco di essere inserito nella catena blockchain. Il processo di certificazione effettuato dai miner è definito mining.
La validazione si ottiene attraverso la ricerca da parte del miner di un numero (nonce) che, se processato insieme ad altri dati tramite funzione di hash, restituisce l’hash corretto. Una volta trovata la soluzione gli altri miner devono verificarne la correttezza. In caso affermativo il miner che ha validato il blocco otterrà una ricompensa, meccanismo della Proof of Work. Il blocco validato verrà poi aggiunto alla catena. I miner quindi sono contemporaneamente creatori di blocchi e validatori.
Il blocco
Il blocco è un insieme di transazioni verificate. E’ una delle unità che compongono l’insieme della blockchain. Un blocco è composto da due parti principali: l’header e il body. Le transazioni sono racchiuse nel body del blocco e nell’header sono presenti i campi di gestione del blocco stesso. Nella risoluzione dei blocchi è possibile che due miner riescano a trovare una soluzione per lo stesso blocco a distanza di pochi secondi. In questo caso si genererà una biforcazione con l’inserimento di due blocchi non perfettamente identici ma che rispettano entrambi la verifica matematica del blocco precedente. Il blocco che formerà la catena più lunga sarà ritenuto valido mentre l’altro, il blocco orfano, verrà eliminato.
La Proof of Work e la Proof of Stake
La Proof of Work (PoW) è la prova che consente al miner di dimostrare agli altri nodi la validazione del blocco e che permette di ottenere la ricompensa.
Nella Blockchain Bitcoin la ricompensa viene rilasciata in automatico e consiste nell’emissione di una nuova criptovaluta. I sistemi di Proof of Work richiedono una grande potenza di calcolo e un enorme dispendio di energia elettrica. Inoltre, la competizione tra i miner tipica dei sistemi PoW causa con maggiore facilità la generazione di una biforcazione della catena.
I sistemi di Proof of Stake (PoS) hanno, invece, blocchi più semplici da risolvere, sono più vantaggiosi in termini di scalabilità, necessitano di una potenza di calcolo inferiore e di meno energia. In questi sistemi il miner che avrà la possibilità di risolvere il blocco viene scelto sulla base di precisi parametri.
I nodi che fanno maggiormente girare l’economia del sistema si qualificano ad essere i prescelti. Non esistono ricompense per la validazione delle transazioni. La PoS è un sistema non competitivo dove ciò che conta è l’efficienza del sistema.
I Fork
Con Fork si intende una biforcazione della blockchain originaria che genera una catena che mantiene tutte le caratteristiche della blockchain precedente. Spesso si generano a seguito della creazione di nuovi token. Creare token da zero è il metodo più comune e prevede un copia e incolla del codice esistente che poi viene modificato e lanciato come nuovo token. Un metodo alternativo è invece quello di biforcare.
In questo caso le modifiche vengono applicate alla blockchain esistente che si divide. Esistono due tipologia e fork: hard e soft.
Con la prima si fa riferimento a una scissione incompatibile con la blockchain precedente, scissione che porta a una netta divisione dei due codici tra i quali non potrà più esserci scambio di dati. Gli hard fork possono essere usati per modificare o migliorare un protocollo esistente, oppure per creare un nuovo protocollo e una nuova blockchain indipendente.
E’ il caso del Bitcoin Cash nato da un fork su Bitcoin risalente all’agosto 2017. I soft fork indicano invece una scissione capace di mantenere un collegamento con la catena precedente. Questo significa che i nodi non aggiornati sono ancora in grado di elaborare transazioni e aggiungere nuovi blocchi alla blockchain, a condizione che non vadano in contrasto con le regole del nuovo protocollo.
Sorry, the comment form is closed at this time.