Cos’è una blockchain?

Come suggerisce il nome, a blockchain è un tipo di struttura dati che consiste in una catena di blocchi che contengono informazioni. Questo metodo di raggruppamento dei dati è stato originariamente concepito e descritto nel 1991 da ricercatori che avevano inizialmente pianificato di utilizzare una blockchain per contrassegnare i documenti digitali..

Il ricerca il team aveva utilizzato una blockchain per timestamp “Documenti digitali in modo che non fosse possibile retrodatarli o manometterli.” Questo processo di gestione dei documenti è in qualche modo simile a come viene eseguita l’autenticazione dei file importanti.

Sebbene la struttura dei dati blockchain sia stata inventata all’inizio degli anni ’90 dal dottor Stuart Haber e dai suoi colleghi, non è stato fino al 2008 che Satoshi Nakamoto, lo pseudonimo inventore di Bitcoin (BTC), ha fatto riferimento alla blockchain nel White paper sui bitcoin. Questo seminale white paper ha specificato come blockchain, un registro pubblico immutabile e distribuito, sarebbe stato utilizzato per implementare il protocollo Bitcoin, il primo “sistema di cassa elettronica” peer-to-peer (P2P) al mondo.

I dati della blockchain sono immutabili

Una delle principali proprietà di una blockchain consente di registrare, o registrare, i dati in un modo che ne rende molto difficile la modifica. Ogni blocco in una blockchain è costituito da un set di dati, l’hash di quel particolare blocco e il valore hash del blocco precedente. Il tipo di dati memorizzati in ciascun blocco dipende dal tipo di rete blockchain che è stata implementata.  

Ad esempio, la blockchain di Bitcoin memorizza i dettagli sulle transazioni (TX) che vengono trasmesse sulla rete della criptovaluta. Questi dettagli TX includono informazioni importanti come la quantità di monete da trasferire e gli indirizzi del destinatario e del mittente. Inoltre, la data e l’ora in cui il TX è stato finalizzato vengono registrate con altre informazioni associate a ciascun pagamento BTC.

I blocchi sono associati a valori hash univoci

Ogni blocco su una rete basata sulla tecnologia di registro distribuito (DLT) contiene anche un valore hash univoco paragonabile all’impronta digitale di una persona. Questo perché tutti gli hash associati ai blocchi identificano in modo univoco un particolare blocco e il suo contenuto. Dopo che un blocco è stato generato su una rete basata su DLT, l’algoritmo della piattaforma richiama un file funzione hash per calcolare il valore hash univoco del nuovo blocco.

Se i dati all’interno di un blocco vengono alterati o sostituiti, anche il valore hash associato cambierà automaticamente o in modo algoritmico. Questa funzione rende gli hash molto utili quando si cerca di determinare se il contenuto di un blocco è stato modificato. Se il valore hash associato a un blocco cambia, non può più essere considerato (dal sistema) lo stesso blocco.

Un blocco su una rete DLT contiene anche il valore hash del blocco precedente e questo crea un collegamento o una catena di blocchi. È questa particolare organizzazione dei dati e la tecnica di gestione che aiuta a mantenere l’integrità e sicurezza di dati su una rete blockchain.

Cos’è un Genesis Block?

Tutti i blocchi che formano una blockchain puntano al blocco precedente, tuttavia il file blocco genesi non punta a un blocco precedente perché è il primo che viene prodotto su una blockchain.

Nel caso in cui un utente modifichi il contenuto di un blocco, cambierà anche l’hash di quel blocco, per notificare agli altri utenti che i dati in quel particolare blocco sono stati modificati. Poiché tutti i blocchi sono collegati tra loro su un file DLT-basata sulla rete, anche i dati in tutti gli altri blocchi che vengono dopo il blocco danneggiato saranno considerati non validi.

I blocchi diventano non validi perché non contengono più un valore hash valido dopo che i blocchi precedenti su una piattaforma abilitata DLT sono stati danneggiati. Tuttavia, utilizzando rigorosamente hash crittografici per proteggere il file integrità dei dati non è più sufficiente a causa dei progressi nei moderni algoritmi di calcolo. Ad esempio, un’entità dannosa potrebbe potenzialmente manomettere un blocco ricalcolando tutti i valori hash su una rete alimentata da DLT. Ciò consentirebbe effettivamente a un cattivo attore di far sembrare nuovamente validi tutti i blocchi su una blockchain.

Algoritmi di prova di lavoro Ulteriori blockchain sicuri

Per impedire agli utenti malintenzionati di sfruttare una piattaforma basata su DLT in questo modo, le reti blockchain utilizzano algoritmi di proof-of-work (PoW). Questi agiscono come meccanismi che aiutano a rallentare il processo, o alla velocità con cui vengono generati nuovi blocchi su una rete abilitata DLT, oltre a rendere difficile per i cattivi attori prendere il controllo di una rete blockchain.

Ad esempio, ci vuole un file media di 10 minuti sulla rete Bitcoin per eseguire la “prova di lavoro” richiesta per aggiungere un nuovo blocco alla catena della criptovaluta. Supponendo che una piattaforma blockchain sia in grado di mantenersi adeguata potere di hashing, diventa praticamente difficile manomettere i blocchi sulla sua rete. Questo perché se un utente tenta di alterare il contenuto di un blocco su una catena, dovrà ricalcolare la “prova di lavoro” per tutti i blocchi successivi.

Pertanto, si può affermare che la sicurezza di una blockchain è mantenuta dal suo algoritmo di hashing e dal suo protocollo PoW. Inoltre, le blockchain sono ulteriormente protette a causa della loro natura distribuita o implementazione. Invece di fare affidamento su un sistema di gestione centrale, una blockchain si basa su una rete tecnologica peer-to-peer (P2P) accessibile (pubblica) a tutti.

Coloro che partecipano a una piattaforma blockchain pubblica possono accedere alla cronologia completa delle transazioni di quella particolare rete. I nodi, o partecipanti alla rete, su una piattaforma alimentata da DLT possono utilizzare i log delle transazioni per verificare l’integrità dei dati di una blockchain.

Cosa succede quando viene creato un nuovo blocco?

Quando un nuovo blocco viene prodotto su una piattaforma blockchain, quel particolare blocco viene inviato o trasmesso a tutti i partecipanti alla rete. Ogni utente sulla rete DLT può verificare in modo indipendente se le informazioni contenute in quel blocco sono accurate e se sono state danneggiate. Se un blocco contiene dati di transazione validi, ogni partecipante su una blockchain aggiunge quel nuovo blocco alla blockchain di quella particolare rete.

Quando tutti i nodi su una blockchain raggiungono un accordo, comunemente indicato come consenso, riguardo a quali blocchi sono validi e idonei per l’elaborazione, allora quei blocchi vengono convalidati dagli operatori full-node o minatori. I blocchi corrotti vengono rifiutati dai partecipanti onesti alla rete ed è anche molto difficile manomettere i dati della blockchain. Questo perché un utente dovrebbe manomettere tutti i blocchi su una rete DLT ricalcolando la prova di lavoro per ogni blocco della catena.

Inoltre, un utente dovrebbe assumere il controllo di oltre il 50% del potere di hashing di una rete blockchain, prima di poter modificare in modo permanente i dati sulla piattaforma distribuita. Quando un utente malintenzionato è effettivamente in grado di lanciare quelli che vengono definiti attacchi del 51%, è allora che i loro blocchi manomessi possono essere aggiunti al registro delle transazioni della blockchain interessata.

Funzionalità aggiuntive costantemente aggiunte alle Blockchain

Poiché nella maggior parte dei casi è praticamente impossibile lanciare tali attacchi su blockchain che hanno un forte effetto di rete come Bitcoin (BTC) ed Ethereum (ETH), non c’è quasi alcuna possibilità che i dati degli utenti e altre risorse digitali possano essere rubati o compromessi.

Il settore blockchain è uno dei settori in più rapida crescita al mondo e vengono costantemente sviluppati nuovi protocolli di sicurezza. Gli architetti di software di tutto il mondo continuano a lavorare sull’implementazione di funzionalità aggiuntive su blockchain, inclusa l’implementazione di contratti intelligenti. Si tratta di programmi di logica aziendale automatizzati che prendono decisioni per conto degli utenti o dei loro proprietari in base a un insieme specifico di condizioni.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me