Ci possiamo fidare di blockchain?

0

Blockchain: se ne parla tanto, ed in tanti ambienti, come di una tecnologia in grado di rivoluzionare il mondo. E’ realmente la panacea di tutti i mali, le fondamenta tecnologiche di una nuova società, o è invece una grossa bolla, destinata prima o poi ad esplodere fragorosamente?

Blockchain nasce sul finire del 2008, quando una persona tutt’ora avvolta nell’ombra pubblica sotto lo pseudonimo di Satoshi Nakamoto un saggio intitolato “Bitcoin: un sistema di pagamento elettronico peer-to-peer“, in cui descrive un sistema di transazioni digitali prive di un sistema centrale di controllo. Lo scopo di Nakamoto era ambizioso: liberare il mondo dai vincoli del sistema bancario, dando la possibilità a chiunque – anche a chi non fosse nella condizione di avere un conto – di effettuare e ricevere pagamenti. La sua soluzione, sicuramente elegante, è stata quella di fondare la sua creatura, il bitcoin,  su un sofisticato registro elettronico per gestire le transazioni, e di memorizzarlo su una rete cooperativa composta da un numero significativamente grande di singoli computer. Ogni elemento della rete, o nodo, contiene una copia privata dell’intero archivio, e delle regole stabiliscono le procedure per aggiornare i dati mantenendo tutte le copie in uno stato coerente, comportandosi quindi come un unico grande archivio digitale.

Il cuore del sistema è nell’archivio, chiamato appunto blockchain. Semplificando al massimo, l’archivio è strutturato in una serie blocchi, che possiamo considerare come una sorta di pagine su cui annotare le transazioni. Questi blocchi sono interconnessi fra di loro in modo da prevenire che dati già scritti possano essere successivamente modificati, utilizzando metodi crittografici. E’ quello che viene definito un archivio immutabile, che può essere scritto ma non alterato. Per modificare anche un solo bit di un blocco già scritto sarebbe necessario riscrivere tutti i blocchi ad esso successivi, ma questo è impedito dalle regole a cui è sottoposta la rete di nodi. Tutte queste operazioni sono eseguite senza un server centrale di coordinamento, da cui il termine di peer-to-peer, che significa proprio da pari a pari. Una struttura di questo tipo per funzionare correttamente deve essere rigorosamente pubblica, visto che tutte le transazioni devono essere verificabili da chiunque, ma deve garantire nello stesso tempo un buon livello di riservatezza. E’ un obiettivo che blockchain raggiunge usando la tecnica della pseudo anonimicità: ogni accesso viene garantito esclusivamente da un nome utente cifrato e relativa password, senza alcun tipo di anagrafica associata. E’ però una soluzione pericolosa: se si smarriscono le credenziali, non vi è modo alternativo per recuperare il proprio portafoglio.

La struttura funziona egregiamente sia per bitcoin, che per altre valute alternative da essa derivate – come Ethereum. Ma, come tutte le cose umane, non è perfetta. Il limite principale è intrinseco alla natura digitale dell’informazione, che in quanto tale può essere duplicata all’infinito e senza che sia possibile distinguere l’originale dalla copia. Dato che lo scopo del progetto era quello di fare a meno di una autorità centrale di controllo a cui affidare il compito della contabilizzazione, era necessario progettare anche un meccanismo per scongiurare modifiche illegittime alle registrazioni, così come che – per caso o per dolo – sia possibile spendere la valuta digitale più volte, il cosiddetto double-spending.

La soluzione di Nakamoto al problema è fondata proprio nella struttura distribuita della blockchain. Fino a quando la rete è composta da un numero rilevante di nodi indipendenti, le regole che la gestiscono rendono inalterabile la blockchain. Il sistema, però, non è in grado di resistere ad una scalata: se qualcuno dovesse assumere il controllo di più del 50% della rete, sarebbe in grado di manipolarne le registrazioni.

Era qualcosa che sembrava un rischio ipotetico, al più lontano ed irrealizzabile, ma come spesso accade in informatica questo non è mai vero in assoluto. Tant’è che il 7 gennaio di quest’anno Ethereum ha dovuto fronteggiare il primo evento di double spending.

La realtà è che blockchain, come tante tecnologie emergenti, funziona correttamente solo se si rispettano i limiti progettuali, che sono, nello specifico, tre.

Il primo è che la struttura sia una (ed una sola), pubblica, e distribuita (cioè duplicata su molti computer) in modo diffuso – che è il presupposto necessario a garantire l’immutabilità dei dati.

Il secondo è che abbia un sistema di validazione delle transazioni, chiamato algoritmo di consenso – che ha lo scopo di evitare modifiche illegittime ai dati – e che questo operi in modo efficace e funzionale. L’algoritmo di consenso è un punto delicato di ogni tipo di blockchain. Quello usato da bitcoin, ad esempio, è basato su operazioni matematiche molto complesse (chiamate mining) che richiedono l’uso di una grande potenza di calcolo e che, quindi consumano quantità enormi di energia elettrica. Si parla di alcune decine di TWh/anno, che è pari al consumo totale di un intero stato tecmologicamente avanzato. E’ un particolare non trascurabile, che produce effetti significativi anche in ambito ambientale.

Il terzo è che l’oggetto delle transazioni, che nel caso del bitcoin sono i cosiddetti token, sia interno alla struttura (on-chain) e non esterno (off-chain). Un esempio può chierire il problema. Effettuando un pagamento in bitcoin, tutto il movimento avviene all’interno della blockchain: il mio conto viene addebitato, il controvalore trasferito e addebitato sul conto di destinazione. Utilizzando blockchain per tracciare un pagamento effettuato con un bonifico bancario (quindi off-chain) avrei una registrazione immutabile di un evento mutabile, visto che il bonifico potrebbe non andare a buon fine per un qualsiasi motivo, e la registrazione perdere quindi qualsiasi tipo di validità.

Oggi la tecnologia blockchain viene prospettata come la soluzione ideale per risolvere le problematiche più disparate e disomogenee. Ma cosa può succedere quando usiamo blockchain per qualcosa di diverso dallo scopo originario, cioè quello di gestire le transazioni di valute virtuali?

Ci sono sicuramente alcuni casi in cui blockhain può essere utilizzata in maniera proficua. E’ altrettanto vero, però, che uscendo dai paletti del progetto senza una attenta analisi del contesto di uso,  si rischia di ottenere risultati completamente diversi da quelli che ci si potrebbe attendere da una struttura considerata, a priori, ma non necessariamente a ragione, immutabile.

Questo è vero particolarmente per le blockchain private e/o proprietarie. In questi ambiti blockchain non può garantire da sola alcuna immutabilità, visto che dei tre vincoli di progetto ne sono sono disattesi quanto meno i primi due. Una blockchain privata, che quindi è totalmente sotto un controllo individuale, può essere tranquillamente riorganizzata o anche riscritta ex-novo senza alcun problema.
Ma potrebbe avere anche effetti negativi. Pensiamo ad un sistema di voto elettronico, una applicazione in cui il rischio di alterazioni nel processo di registrazione del voto è sempre dietro l’angolo. Registrare il dato su blockchain, quando questa è sotto il diretto controllo di chi gestisce le operazioni di voto, non rende certo il voto più sicuro. Ha però sicuramente l’effetto psicologico di fare percepire, erroneamente, il sistema di voto come più sicuro.

Altra cosa da tenere presente è che le tecnologie di base usate da blockchain non sono certo delle novità. I sistemi distribuiti sono presenti sulla scena informatica dagli anni ’60. Così come ben consolidate sono varie tecnologie in grado di garantire l’immutabilità degli archivi: sono definite WORM (write once read many)  e la più diffusa e nota è sicuramente costituita dal Compact Disc Recordable (CDR).

E’ quindi molto probabile che la maggioranza dei problemi per cui si oggi prospetta una soluzione basata su blockchain, possa invece trovare una risposta naturale con tecnologie tradizionali, sicuramente più mature, consolidate e sperimentate. Allo stesso modo, non ci sarebbe nemmeno da meravigliare più di tanto se soluzioni pubblicizzate come basate su tecnologia blockchain utilizzino, ijn realtà, strumenti tradizionali, e che espongano la parolina magica – blockchain – giusto per cavalcale l’onda di notorietà del termine.

Per approfondire l’argomento suggerirei una lettura dell’esaustivo rapporto del National Institute of Standards and Technology statunitense

la foto del titolo è di Marco Verch

Condividi:

L'autore

Consulente Informatico, blogger, problem solver, radioamatore. Ho iniziato la mia attività nel 1977 sviluppando sistemi di calcolo nell'area energie alternative e rinnovabili e da allora mi sono sempre interressato delle frontiere della tecnologia. Nel 1984 sono stato fra i pionieri delle BBS, i primi servizi telematici pubblici, e l'anno successivo ho portato in Italia Fidonet, la prima rete pubblica mondiale, che ho coordinato sino al 1994. Sono attivamente su Internet agli inizi degli anni 90, Nel 1998 sono stato fra i primi a credere nella convergenza digitale, arricchendo internet con materiale multimediale, come audio e video, anni prima del Web 2.0. Continuo da sempre ad occuparmi di informatica e di tecnologia con un occhio attento al futuro che ci attende. Continuo a lavorare come consulente informatico, con una specifica competenza in sicurezza, reti di comunicazione, sistemi operativi e tecnologie di virtualizzazione.

Lascia un commento