Se hai letto le ultime notizie di tecnologia, potresti aver sentito di qualcosa chiamato blockchain. È un concetto che rende le transazioni ultra-sicure per usi specifici. Probabilmente ne hai sentito parlare in associazione con i Bitcoin, ma ha applicazioni ben oltre le criptovalute preferite da tutti in questo momento. Ecco una rapida spiegazione di come funziona un blockchain.
Tutto inizia con la crittografia
Per capire le blockchain, devi capire la crittografia. L'idea della crittografia è molto più antica dei computer: significa semplicemente riorganizzare le informazioni in modo tale che è necessario avere una chiave specifica per comprenderle. Il gadget che a volte si trova dentro le scatole di cereali, il Secret ring è una forma di crittografia di base: crea una chiave (nota anche come cifra) che sostituisce una lettera con un numero, scrivi il tuo messaggio attraverso la chiave e poi la chiave viene data al solo ricevente. Chiunque trovi il messaggio senza la chiave non può leggerlo, a meno che non riesca a decifrarlo (molto, molto difficilmente...). I militari hanno usato la crittografia più complessa molto prima dei computer (ad esempio, i messaggi codificati e decodificati della macchina Enigma durante la seconda guerra mondiale).La crittografia moderna, tuttavia, è interamente digitale. I computer di oggi usano metodi di crittografia così complessi e così sicuri che sarebbe impossibile decifrarli con dei semplici calcoli matematici fatti dagli umani. La tecnologia di crittografia computerizzata non è perfetta, però; può ancora essere "crackata" se persone abbastanza intelligenti attaccano l'algoritmo, e i dati sono ancora vulnerabili se qualcuno, oltre al proprietario, trova la chiave. Ma anche la crittografia a livello di utente, come la crittografia AES a 128 bit, ora standard su iPhone e Android, è sufficiente per tenere lontani i dati bloccati dall'FBI.
Blockchain è un archivio di dati sicuro e collaborativo
La crittografia viene normalmente utilizzata per bloccare i file in modo che possano essere accessibili solo da persone specifiche. Ma cosa succede se si dispone di informazioni che devono essere viste da tutti, come ad esempio le informazioni contabili di un'agenzia governativa che deve essere pubblica per legge e devono comunque essere sicure? Lì, hai un problema: più persone possono vedere e modificare le informazioni, meno sicure.I blockchain sono stati sviluppati per soddisfare le esigenze di sicurezza di queste situazioni specifiche. In una blockchain, ogni volta che si accede e si aggiorna l'informazione, la modifica viene registrata e verificata, quindi sigillata con la crittografia, non più editabile. Il set di modifiche viene quindi salvato e aggiunto al record totale (quello invece totalmente pubblico). La prossima volta che qualcuno apporta delle modifiche, ricomincia da capo (il controllo a blocchi), conservando le informazioni in un nuovo "blocco" che è crittografato e collegato al blocco precedente (da qui "catena di blocchi"). Questo processo ripetuto collega la prima versione del set di informazioni con l'ultima, in modo che tutti possano vedere tutte le modifiche apportate, ma possono solo contribuire e modificare la versione più recente.
Questo esempio è lontano da ogni possibile metafora: immagina di essere in un gruppo di dieci persone che assemblano un set LEGO. È possibile aggiungere un solo pezzo alla volta e non è possibile rimuovere alcun pezzo. Ogni membro del gruppo deve concordare specificamente dove andrà il prossimo pezzo. In questo modo, puoi vedere tutti i pezzi in qualsiasi momento, proprio nel primo pezzo del progetto, ma puoi modificare solo l'ultimo pezzo.
Un altro esempio un pò più realistico e concreto: immagina un documento collaborativo, come un foglio di calcolo su Google Docs o Office 365. Chiunque abbia accesso al documento può modificarlo e ogni volta che lo fa, la modifica viene salvata e registrata come un nuovo foglio di calcolo, quindi bloccato nella cronologia del documento. Quindi puoi tornare indietro, passo dopo passo, attraverso le modifiche apportate, ma puoi solo aggiungere informazioni alla versione più recente, non modificare le versioni precedenti del foglio di lavoro che sono già state "bloccate".
Come probabilmente avete compreso, questa idea di un "libro mastro" sicuro e costantemente aggiornato viene per lo più applicata ai dati finanziari, dove ha più senso. Le valute digitali distribuite come i Bitcoin sono l'uso più comune delle blockchain: infatti, il primo blockchain è stato creato per Bitcoin e l'idea si è diffusa da lì.
La parte tecnica spegata passo passo , blcco a blocco
Come funziona tutto questo su un computer? È una combinazione di crittografia e networking peer-to-peer.Potresti avere familiarità con la condivisione di file peer-to-peer: servizi come BitTorrent che consentono agli utenti di caricare e scaricare file digitali da più postazioni in modo più efficiente rispetto a una singola connessione. Immagina i "file" come i dati principali in una blockchain e il processo di download come la crittografia che lo mantiene aggiornato e sicuro.
Oppure, per tornare al nostro esempio di Google Docs sopra: immagina che il documento collaborativo su cui stai lavorando non sia memorizzato su un server. Invece, è sul computer di ogni individuo, che sono costantemente controllati e aggiornati tra loro per assicurarsi che nessuno abbia modificato i record precedenti. Questo lo rende "decentralizzato".
Questa è l'idea alla base della blockchain: i dati crittografici sono continuamente accessibili e protetti allo stesso tempo, senza server o storage centralizzati, con un record di modifiche che si incorpora in ogni nuova versione dei dati.
Quindi abbiamo tre elementi da considerare in questa relazione. Uno, la rete di utenti peer-to-peer che memorizzano tutte le copie del record blockchain. Due, i dati che questi utenti aggiungono all'ultimo "blocco" di informazioni, consentendone l'aggiornamento e l'aggiunta al record totale. Tre, le sequenze crittografiche che gli utenti generano per concordare sull'ultimo blocco, bloccandolo in posizione nella sequenza di dati che forma il record.
Utilizzando la crittografia digitale, ogni utente contribuisce con la potenza di calcolo del proprio computer al fine di aiutare a risolvere alcuni di questi problemi matematici super-complessi che mantengono il record sicuro. Queste soluzioni estremamente complesse, note come "hash", risolvono parti fondamentali dei dati nel record, come ad esempio l'account che ha aggiunto o sottratto denaro in un libro mastro contabile e dove sono andati o provengono i soldi. Più i dati sono densi, più complessa è la crittografia e più potenza di elaborazione è necessaria per risolverli. (Questo è il punto in cui l'idea di "mining" in Bitcoin entra in gioco, tra l'altro....ma ne parleremo in un altro articoli.)
Quindi, per riassumere, possiamo pensare che una blockchain sia un dato che è:
- Costantemente aggiornato. Gli utenti Blockchain possono accedere ai dati in qualsiasi momento e aggiungere informazioni al nuovo blocco.
- Distribuito. Le copie dei dati blockchain sono archiviate e protette da ciascun utente e tutte devono concordare sulle nuove aggiunte.
- Verificato. Entrambe le modifiche a nuovi blocchi e copie di vecchi blocchi devono essere concordate da tutti gli utenti tramite la verifica crittografica.
- Sicuro. La manomissione dei vecchi dati e l'alterazione del metodo di protezione dei nuovi dati sono impediti sia dal metodo crittografico che dall'archiviazione non centralizzata dei dati stessi.
I Blockchain in azione: Fammi vedere i soldi (digitali)!
Consideriamo un esempio di come il blockchain si applica ad una criptovaluta come il Bitcoin. Ammettiamo che hai un Bitcoin e vuoi spenderlo su una nuova macchina. (O una bici, o una casa, o su una piccola isola - comunque un Bitcoin vale circa 14.000 euro questa settimana.) Ti colleghi alla blockchain decentralizzata di Bitcoin con il tuo software (io uso BitCoin Core), e invii la tua richiesta per trasferire il tuo Bitcoin al venditore dell'auto. La transazione viene quindi trasmessa al sistema.Ogni persona sul sistema può vederlo, ma la tua identità e l'identità del venditore sono solo firme temporanee, piccoli elementi degli enormi problemi di matematica che costituiscono il cuore della crittografia digitale. Questi valori sono inseriti nell'equazione blockchain e il problema stesso viene "risolto" dai membri della rete peer-to-peer che genera hash di crittografia.
Una volta verificata la transazione, un Bitcoin viene trasferito da te al venditore e registrato nell'ultimo blocco della catena. Il blocco è finito, sigillato e protetto con crittografia. Inizia la serie successiva di transazioni e la blockchain aumenta di lunghezza e contiene un record completo di tutte le transazioni ogni volta che viene aggiornata.
Ora, quando pensi a un blockchain come "sicuro", è importante capire il contesto. Le transazioni individuali sono sicure e il record totale è sicuro, a patto che i metodi utilizzati per proteggere la crittografia rimangano "senza incrinature". (E ricorda, questa roba è davvero difficile da decodificare - anche l'FBI non può farlo con il semplice calcolo e l'uso di molte risrse.) Ma l'anello più debole nella blockchain è: l'utente stesso (tu).
Se permetti a qualcun altro di usare la tua chiave personale per accedere alla catena, o se la trova semplicemente hackerando sul tuo computer, può fare aggiunte alla blockchain con le tue informazioni, e non c'è modo di fermarle. È così che Bitcoin viene "rubato" in attacchi altamente pubblicizzati sui mercati principali: sono le società che gestiscono i mercati, non i blockchain di Bitcoin, che sono stati compromessi. E poiché i Bitcoin rubati vengono trasferiti ad utenti anonimi, attraverso un processo verificato dalla blockchain e registrato per sempre, non c'è modo di trovare l'attaccante o recuperare il Bitcoin.
Che altro possono fare i blockchain?
La tecnologia Blockchain è iniziata con Bitcoin, ma è un'idea così importante che non è rimasta a lungo. Un sistema costantemente aggiornato, accessibile a chiunque, verificato da una rete non centralizzata e incredibilmente sicuro, ha molte applicazioni diverse. Le istituzioni finanziarie come JP Morgan Chase e Australian Stock Exchange stanno sviluppando sistemi di blockchain per proteggere e distribuire dati finanziari (per denaro convenzionale, non criptovaluta come Bitcoin). La fondazione Bill & Melinda Gates spera di utilizzare sistemi di blockchain per fornire servizi bancari gratuiti e distribuiti a miliardi di persone che non possono permettersi un regolare conto bancario.Gli strumenti open source come Hyperledger (traducibile in italiano come Iperregistro o Iper libro mastro) stanno cercando di rendere le tecniche blockchain disponibili per una gamma più ampia di persone, in alcuni casi lo fanno senza la quantità mostruosa di potenza di elaborazione necessaria per proteggere altri progetti. I sistemi di lavoro collaborativi possono essere verificati e registrati con tecniche blockchain. Praticamente tutto ciò che deve essere costantemente registrato, accessibile e aggiornato può essere utilizzato allo stesso modo.