Che cos’è la Blockchain?
Dal problema dei generali bizantini al consenso, questo articolo spiega cos’è e come funziona la blockchain.
In parole povere, una blockchain è un gruppo di computer che lavora insieme per elaborare e registrare i dati, garantendo l’autenticità e la sicurezza delle transazioni. Da una prospettiva più astratta e lungimirante, si tratta del potenziale futuro delle transazioni finanziarie, che non è vincolato dalla localizzazione globale o dipendente da intermediari terzi.
Che cos’è la Blockchain?
Una delle caratteristiche principali della blockchain è il modo in cui registra i dati, che sono:
- Immutabile
- Trasparente
- Decentrato
Immutabile significa che nessuna entità può modificare i record della transazione.
Trasparente significa che chiunque può vedere e verificare le transazioni su una blockchain tramite Internet.
Decentrato significa che nessuna singola entità può governare l’intera rete.
Bitcoin è stata la prima applicazione che ha utilizzato la tecnologia blockchain (ironia della sorte, il termine “blockchain” è stato introdotto dopo Bitcoin). La tecnologia viene ora utilizzata in altri progetti di criptovaluta e applicazioni commerciali, come la finanza commerciale, le rimesse e l’e-commerce.
Sistemi distribuiti
La blockchain è un sistema distribuito, in cui i componenti hardware o software situati in computer collegati in rete comunicano e coordinano le loro azioni attraverso il passaggio di messaggi. Molti problemi che la blockchain incontra sono già stati discussi o risolti in un sistema distribuito.
Le caratteristiche principali di un sistema distribuito sono:
- Concorrenza
- Nessun orologio globale
- Fallimento indipendente
Concorrenza
Concorrenza significa che più calcoli vengono eseguiti contemporaneamente su macchine diverse. Può sembrare intuitivo, ma la complessità è data dal modo in cui numerose macchine devono lavorare insieme (vedi sotto).
Nessun orologio globale
In un sistema distribuito, ogni partecipante, o macchina, ha lo stesso peso nel decidere cosa è giusto o sbagliato. In un sistema distribuito non esiste un’unica fonte di verità. Ad esempio, la macchina A potrebbe credere che siano le 11:13, mentre la macchina B potrebbe credere che siano le 11:14.
Poiché il ritardo della rete può complicare ulteriormente la situazione, anche se due macchine hanno localmente lo stesso orario, non sapranno quanto tempo la rete ha impiegato per trasferire i dati. Quando una macchina deve confermare l’ora del suo vicino, c’è sempre un potenziale rumore.
Fallimento indipendente
Il fallimento indipendente è spiegato meglio come una situazione ipotetica. Ad esempio, la macchina A può avere bisogno di dati dalla macchina B per continuare il suo lavoro, quindi deve comunicare con la macchina B e attendere una risposta.
Tuttavia, la macchina B può guastarsi (ad esempio, spegnersi per surriscaldamento) e la rete può arbitrariamente ritardare o addirittura disconnettersi. Il progettista del sistema deve tenere conto della comunicazione e delle risposte ai guasti per garantire che il sistema rimanga intatto.
Blockchain e il problema dei generali bizantini
La Blockchain è stata inventata per risolvere il Problema dei Generali Bizantini, che rappresenta un problema soprattutto per i sistemi informatici distribuiti, dove i componenti possono guastarsi e le informazioni sul guasto di un componente sono imperfette.
Per illustrare chiaramente il problema, iniziamo con una storia:
Un gruppo di generali, ciascuno al comando di una parte dell’esercito bizantino, circonda una città. Devono decidere se attaccare o ritirarsi. Ma qualunque cosa decidano, la cosa più importante è che raggiungano un consenso. Ma il consenso è difficile da raggiungere perché i generali non conoscono le decisioni degli altri generali.
Considerate quanto segue:
- Ci sono tre generali: A, B e C.
- I generali devono attaccare il nemico nello stesso momento, altrimenti rischiano di fallire.
- I generali non hanno un modo efficace per comunicare istantaneamente.
- Pertanto, hanno bisogno di inviare un corriere ad altri per trasmettere il loro messaggio.
- Devono confermare che gli altri generali attaccheranno nello stesso momento.
- Pertanto, i generali devono trasmettere messaggi e conferme tra loro prima di lanciare un attacco.
Il problema si complica se consideriamo che possono esistere dei traditori. Non abbiamo modo di garantire che tutti i messaggeri siano affidabili; inoltre, un messaggero potrebbe essere catturato e costretto a consegnare un messaggio falsificato.
Dalla storia di cui sopra, in relazione alla blockchain, possiamo dedurre che:
I generali bizantini rappresentano i nodi di una catena.
Ogni consenso è formato da un gruppo di generali che rappresentano un blocco (cioè un insieme di transazioni valide). Tutti i generali devono confermare la decisione dell’altro per raggiungere un consenso prima di lanciare un attacco coordinato. Allo stesso modo, su una blockchain, tutti i nodi devono concordare il blocco successivo da confermare.
I nodi sono soggetti a guasti.
Se uno dei nodi, ad esempio, condivide informazioni incoerenti (noto come nodo maligno) o non risponde, la rete potrebbe avere problemi.
Ecco perché ognuno deve riconoscere le informazioni che gli altri conoscono. Allo stesso tempo, tutti devono essere consapevoli delle informazioni di cui dispongono gli altri; si crea uno scenario in cui le informazioni riconosciute e conosciute dalla maggioranza rappresentano la decisione finale (cioè il consenso).
Il consenso nella Blockchain
Il problema dei generali bizantini rappresenta un ottimo esempio di comprensione del consenso. Richiede un accordo tra diversi processi (o agenti) per un singolo valore di dati. I protocolli di consenso devono essere tolleranti ai guasti o resilienti, poiché alcuni processi (agenti) possono fallire o essere inaffidabili in altri modi. I processi devono in qualche modo proporre i loro valori candidati, comunicare tra loro e concordare un unico valore di consenso.
Chi partecipa a una rete decentralizzata lo fa utilizzando server decentralizzati (nodi). Ogni nodo deve concordare un insieme di regole preconcette (chiamate“meccanismi di consenso“) per poter partecipare alla rete blockchain e raggiungere un accordo. Utilizzando questi meccanismi, possiamo risolvere il problema dei generali bizantini.
Per saperne di più sul consenso su blockchain: Come si fa il consenso: Diversi tipi di consenso per la Blockchain .
Sistemi centralizzati, decentralizzati e distribuiti
Mentre un sistema centralizzato è facile da capire, distinguere un sistema decentralizzato da uno distribuito è spesso fonte di confusione.
Un sistema distribuito memorizza ed elabora i dati in luoghi o computer diversi; i dati vengono solitamente replicati. Un sistema decentralizzato significa che nessun singolo partecipante può decidere il comportamento del sistema. Deve aggregare le risposte di più parti prima di prendere una decisione.
Un sistema decentrato deve essere distribuito, mentre un sistema distribuito può essere o meno decentrato. In altre parole, un sistema decentralizzato è un sottoinsieme del sistema distribuito.
Per un’immersione più profonda, questo articolo di Vitalik Buterin può aiutare a comprendere la decentralizzazione .
Alternative alla blockchain
Dall’invenzione del Bitcoin, molti hanno generalizzato la sua tecnologia chiamandola “blockchain”. Tuttavia, il design originale di Bitcoin non è l’unico che funziona.
Tecnologia Ledger distribuita
La Distributed Ledger Technology (DLT), come i Directed Acyclic Graphs (DAG) o i Block Lattice, è una struttura di dati alternativa al Bitcoin. La DLT realizza la visione di un sistema decentralizzato come originariamente auspicato, ma non possiamo più chiamare queste alternative “blockchain”. Il termine DLT è stato quindi inventato per generalizzare tutti i sistemi simili che mirano a risolvere i problemi di consenso in modo decentralizzato.
Parole finali sulla Blockchain
I meccanismi alla base della blockchain (o di sistemi simili) – e l’integrazione dei meccanismi di sicurezza nel suo processo – ci hanno permesso di passare da un sistema di sicurezza centralizzato, come le istituzioni finanziarie tradizionali, al mondo delle criptovalute. Questo è solo l’inizio e il sistema è destinato a migliorare ulteriormente con l’evoluzione.
Leggete come la blockchain sta contribuendo a migliorare i programmi di IA.
Due diligence e ricerca personale
Tutti gli esempi elencati in questo articolo sono solo a scopo informativo. L’utente non deve interpretare tali informazioni o altro materiale come consulenza legale, fiscale, di investimento, finanziaria o di altro tipo. Nulla di quanto contenuto nel presente documento costituisce una sollecitazione, una raccomandazione, un’approvazione o un’offerta da parte di Crypto.com di investire, acquistare o vendere monete, token o altri asset crittografici. I rendimenti derivanti dall’acquisto e dalla vendita di criptovalute possono essere soggetti a imposte, compresa l’imposta sulle plusvalenze, nella vostra giurisdizione.
Le performance passate non sono una garanzia o una previsione di quelle future. Il valore delle criptovalute può aumentare o diminuire e voi potreste perdere tutto o una parte consistente del vostro prezzo di acquisto. Quando valutate un asset crittografico, è essenziale che facciate le vostre ricerche e la vostra due diligence per esprimere il miglior giudizio possibile, poiché ogni acquisto sarà di vostra esclusiva responsabilità.
Condividi con gli amici
Sei pronto per avventurarti nel mondo delle criptovalute?
Ottieni subito la guida per configurare
il tuo account Crypto.com
Cliccando sul pulsante Invia, riconosci di aver letto l' Informativa sulla privacy di Crypto.com dove illustriamo come usiamo e proteggiamo i tuoi dati personali.