Questo articolo fa parte del 'Programma Esperti' di Cointelegraph Italia, che mira ad offrire alla community italiana contenuti di alta qualità realizzati dai più autorevoli esperti italiani di blockchain e criptovalute.

Nel mio lavoro, spesso mi trovo a dire che ho dedicato gli ultimi sette anni a studiare e costruire modi per creare valore da protocolli distribuiti e blockchain pubbliche.

Purtroppo è un riflesso incondizionato: aprire una conversazione in modo più preciso, sostenendo che Bitcoin è l’unico protocollo tecnicamente capace di offrire quello che la buzzword “blockchain” promette, provoca nell’ottanta per cento delle volte una reazione di sdegno, rifiuto o scetticismo.

Questo accade perché, per anni, il Bitcoin ha subito campagne negative e male informate su tutti gli organi di stampa. Inoltre, il Bitcoin è un protocollo privo di una “incorporated” che paga avvocati e si difende nei tribunali da queste attività diffamatorie.

Ma se questo spiega perché devo utilizzare il termine meno specifico di “blockchain”, non sono per niente preoccupato dal Bitcoin in quanto tale: quello che stampa disinformata (e i manager più attenti) stanno imparando in fretta è che questa avversità non lo rallenta, ma anzi ne fortifica ulteriormente il protocollo, aumentando il distacco con quello che le altre “piattaforme blockchain” continuano a promettere, senza mai concretizzare.

Le ragioni per cui ritengo che la frase “blockchain non Bitcoin” sia destinata a scomparire rapidamente sono tre:

  • decentralizzazione
  • immutabilità
  • effetto rete (network effect)

Decentralizzazione

Sul piano della decentralizzazione, chi è totalmente a digiuno può leggere il famoso articolo di Vitalik Buterin, dal quale prendo in prestito la suddivisione nei tre macro-domini: decentralizzazione architetturale, politica, logica. Assumendo che la parte logica ed architetturale è uguale per tutte le piattaforme blockchain (almeno su carta!), quello che cambia è la questione politica, alla quale associamo la governance per onore di semplicità.

Se quindi accettiamo la definizione di blockchain come “infrastruttura” per leggere e scrivere dati verificabili senza intermediari (nel caso del Bitcoin il quantitativo di denaro spendibile), l’intromissione di politiche e dinamiche di governance, per esempio una “permissioned ledger” con sistemi di identificazione per antiriciclaggio, azzera i vantaggi tecnologici dello strumento.

Spiegato in termini pratici, questa presunta blockchain governabile non può raggiungere un equilibrio economicamente sostenibile per nessuna delle controparti: l’utilizzatore deve superare il dubbio che politica e governance gestiti dal proprietario dell’infrastruttura non prendano prima o poi strade contrarie ai suoi interessi. Viceversa, la società proprietaria di questo ipotetico servizio blockchain deve spendere risorse per controllare che le regole vengano rispettate uniformemente da ogni nodo in funzione, intervenendo con blocchi o penalità sui nodi che non le rispettano (nell’esempio di cui sopra se si rimuovono o manomettono i controlli antiriciclaggio).

Nessuno degli esperimenti di blockchain governata che conosco è durato più di diciotto mesi, in quanto costruire e controllare una rete distribuita di nodi blockchain (sincronizzati con le regole decise centralmente) costa molto più di un servizio centralizzato. Da un lato i fornitori del servizio devono gestire l’applicazione e intervenire in caso di infrazioni; dall’altro i fruitori devono farla funzionare sui propri dispositivi e infrastrutture anziché (come tradizionalmente offerto) aprire un indirizzo Internet e “consumare” normali app, siti web o API.

A questo problema va sommato quello di tenere d’accordo le persone che devono governare ed evolvere il sistema, sforzo che nella migliore delle ipotesi costa tanto quanto software centralizzati più tradizionali (esempi virtuosi sono le numerose iniziative open-source come Linux, Apache o Mozilla Firefox).

Per farla breve, se una blockchain impone la presenza di una governance, specialmente per gestirne l’accesso ai dati o l’evoluzione del suo software, i tradizionali database con “software as a service” sono ordini di grandezza più efficaci - in quanto riducono gli sforzi di distribuzione ed esecuzione del software per tutte le parti coinvolte.

Viceversa, anche se qualche miracolo tecnologico porterà una blockchain governata a pareggiare l’efficienza di un sistema centralizzato, la politica rappresenterà sempre un rischio che l’utilizzatore dovrà valutare prima di poterne adottare i servigi. La domanda che sorge spontanea sarà sempre “chi controlla i controllori?”

Viceversa, la blockchain del Bitcoin è priva di governance su chi la vuole utilizzare (è “unpermissioned”) e offre l’intera infrastruttura al costo delle fee che i minatori richiedono per scrivere una transazione in un blocco, ovvero pochi centesimi di dollaro (anche quando i blocchi sono pieni, se si ha la pazienza di aspettare).

In altre parole, il protocollo decentralizzato del Bitcoin rinuncia a capire se la transazione di denaro è lecita o meno, lasciando agli umani e i loro strumenti politici/sociali l’onere di preoccuparsene.

Immutabilità

L’immutabilità, beneficio offerto da piattaforme blockchain di ogni tipo, è da considerarsi una conseguenza e non una proprietà di marketing (che nei casi più audaci ho visto essere revocabile a piacimento).

Il paper di Nakamoto, al punto 4, spiega che la proof-of-work viene utilizzata per misurare la catena di blocchi dove è stata investita più potenza di calcolo - la quale indica in termini matematici dove la maggioranza dei nodi condivide l’interesse economico. In questo modo, un nodo che si collega all’ultimo minuto riconosce solo la catena dei blocchi che hanno più proof of work, misurandone l’autenticità tramite una semplice operazione matematica (chiamata hashcash).

Al crescere del numero di nodi che mantengono memoria di questi blocchi aumenta la difficoltà di attacchi alla blockchain. Analogamente, maggiore è il numero di nodi che genera proof-of-work e partecipa alla scrittura di nuovi blocchi, maggiore sarà la difficoltà per il singolo che vuole riscrivere un blocco che lo riguarda (per esempio eliminando una transazione nella quale ha speso denaro).

La carenza di nodi, viceversa, rende ogni blockchain vulnerabile ad attacchi sulla catena di blocchi vincitori, generando ambiguità tra chi sono gli utilizzatori onesti e quelli che vogliono spendere più volte lo stesso denaro (riscrivendo come già detto i blocchi che li riguardano).

Pertanto, la carenza di nodi e di proof-of-work può comportare dubbi fondamentali sull’integrità della blockchain (pochi disonesti potrebbero manometterla), mentre una loro “abbondanza” aumenta credibilità e sicurezza dell’intero sistema, producendo come conseguenza quella che impropriamente viene chiamata immutabilità*.

Il problema è tanto più importante quanto più giovane è una blockchain, in quanto all’inizio il numero di nodi è esiguo. Nessuno dei rimedi visti finora è stato in grado di risolverlo senza utilizzare governance centralizzata, violando quindi il principio di decentralizzazione politica introdotto al primo punto. (“Chi controlla i controllori?”)

Le soluzioni che adottano meccanismi di voto meno trasparenti, come la proof-of-stake o nodi “coordinatori” scelti casualmente, non riescono ad eliminare la proof-of-work senza rinunciare alla sicurezza dell’intero sistema: in assenza di una funzione matematica come hashcash, non è possibile verificare matematicamente se la catena di blocchi scaricata dal nodo non sia manomessa, in quanto le risorse energetiche necessarie per ricostruirla a piacimento sono irrisorie se paragonate a quanto ideato da Nakamoto.

Il Bitcoin offre la più grande rete di nodi e di proof-of-work al mondo, al costo delle fee che i minatori richiedono per scrivere una transazione in un blocco (pochi centesimi di dollaro per byte, vedi sopra). Perché costruirne una daccapo, quando già esiste un’infrastruttura ottimale che offre questo servizio?

*Lo stesso paper spiega che l’immutabilità non è assoluta ma probabilistica (e tecnicamente il rischio viene abbassato utilizzando i cosiddetti “checkpoint”).

Effetto rete

L’effetto rete, o network effect, è una dinamica che arricchisce l’utilità di un prodotto al crescere della sua adozione, senza che esso cambi. Ci si è spinti a trovare ben tredici tipi di effetto rete, di cui alcuni tecnici, alcuni psicologici e alcuni sociali (chi vuole approfondire può leggere questo post di Nfx, un noto Venture Capital della Silicon Valley).

Per comprendere l’effetto rete, dobbiamo mettere mano ad un po’ di matematica e visualizzare la Legge di Metcalfe, resa famosa dall’adozione del telefono e applicabile alle numerose app di successo che usiamo tutti i giorni.

L’esempio di Whatsapp è emblematico: quando venne introdotto, da un lato si aveva il sistema tradizionale di messaggistica SMS (incluso con tutti i telefoni cellulari, ma a pagamento), dall’altro l’opportunità di inviare messaggi gratuitamente, ma solo a chi aveva installato l’app. In questo modo se il numero di persone che utilizza Whatsapp aumenta, diminuiscono le volte in cui, volendo inviare il messaggio, si dovrà pagare. In pratica, l’app in sé rimane invariata, ma all’aumentare della sua diffusione il servizio diventa sempre più conveniente e quindi ulteriormente richiesto.

Sistemi di questo tipo (come il defunto Napster, l’attualissimo Bit-Torrent e la blockchain del Bitcoin) utilizzano un robusto effetto rete per diffondersi: le ragioni sono tecniche, economiche e sociali.

Un effetto rete tecnologico può offrire dei miglioramenti funzionalmente tangibili (per esempio maggiore sicurezza o velocità di download) e quindi incentiva la sua adozione indipendentemente dalle difficoltà incontrate. Applicare questo principio alla blockchain è molto rischioso: una rete distribuita è più difficile da aggiornare ed evolvere rispetto ad un sistema centralizzato, in quanto ciascuno degli utilizzatori è responsabile del proprio nodo. Pertanto, tornando all’ipotesi di una blockchain governata, i tempi, le modalità e le probabilità di aggiornamento sono imprevedibili e fuori controllo dal creatore del sistema. 

Economicamente e psicologicamente, l’effetto rete garantisce che ci siano incentivi sia per chi promuove uno strumento, sia per chi si lascia convincere: nel caso di Whatsapp è stato inviare brevi messaggi gratis e quindi un forte passaparola, lo stesso che sta spingendo Bitcoin nelle economie in difficoltà. Se il protocollo è peer-to-peer (come il Bitcoin), l’incentivo economico giova anche all’aspetto tecnologico, in quanto attrae le risorse per tenere il nodo funzionante e aggiornato, permettendo alla rete di evolversi continuamente.

Infine, l’effetto rete di tipo sociale è associabile al linguaggio: nel caso delle persone, la lingua inglese è la più diffusa per gli affari, in quello delle macchine il TCP/IP è il protocollo standard per trasmettere informazioni digitalmente su Internet. In ambito blockchain, la costruzione di nuovi linguaggi, piattaforme e protocolli deve affrontare il costo di educare e portare a bordo programmatori software che già hanno scelto altre piattaforme.

Pertanto, una “blockchain senza Bitcoin” (anche se dotata di un robusto effetto rete economico e tecnologico) deve fornire al singolo un valore che superi il costo e il rischio di abbandonare una rete già diffusa e utilizzata, e lo incentivi ad affrontare l’isolamento di uno nuovo e in crescita.

Oggi il linguaggio blockchain più diffuso sembra essere Ethereum (Solidity), e il sito Dapp Radar può fornire alcuni dati sull’effettivo utilizzo di queste applicazioni. I numeri di questi servizi e giochi, se paragonati alle alternative centralizzate, sono estremamente deludenti. Perché?

La mia ipotesi è che l’effetto rete sociale, abbinato a quello tecnologico, perde efficacia in presenza di una cosiddetta “blockchain per”.
Utilizzando l’equazione di Drake, diventata famosa per stimare le probabilità di vita aliena nell’universo, possiamo ipotizzare quanti umani, tra i 7 miliardi disponibili, hanno bisogno di risolvere un determinato problema (esempio totalmente casuale: la catena del freddo di un alimento deperibile) e, applicando via via dei correttivi che frazionano il totale assoluto, stimare quanti hanno accesso ad uno smartphone, quanti ad Internet e quanti infine al tempo necessario per utilizzare un’applicazione che dia una risposta al problema in questione.

Il risultato (una frazione del totale di 7 miliardi) offre nella migliore delle ipotesi numeri in linea con quello che si vede su Dapp Radar.
Applicando lo stesso principio al Bitcoin, possiamo sostenere che la sicurezza del proprio denaro (il caso d’uso che vuole risolvere) è il problema tecnologico, psicologico e sociale con la più vasta rilevanza in assoluto - almeno laddove non si sia rimasti al baratto o alle banconote sotto al materasso.

Altri tipi di problemi (dall’intrattenimento, alla privacy, alla certificazione degli ortaggi) sono meno prioritari e quindi, applicando l’equazione di Drake, hanno un più basso potenziale di diffusione. Questa inferiorità si riflette su un effetto rete insufficiente, compromettendo la portata di una blockchain specifica rispetto a quella più largamente utilizzata e quindi ritenuta come valida e sicura.

Infine, la necessità di utilizzare una blockchain senza ragioni pratiche sufficienti rimane controproducente: l’effetto rete tecnologico sarà sempre più difficile da innescare e mettere a punto se il sistema non è centralizzato.

Appare chiaro, pertanto, che gli sforzi necessari per lanciare una “blockchain senza Bitcoin” diventano difficilmente giustificabili se paragonati alla semplicità con cui le piattaforme centralizzate, dotate di tradizionali e robusti database, possono offrire un servizio indistinguibile dall’utente finale.

In breve, la narrativa di una “blockchain senza Bitcoin”, capace di offrire analoghi livelli di decentralizzazione, immutabilità ed effetto rete, non sopravvive alla logica dei numeri: decentralizzazione politica e costi d’esercizio, misurabilità economica dell’immutabilità e legge di Metcalfe corretta con l'equazione di Drake.

Niente paura: se il tuo lavoro non è convincere il mondo che useremo decine di blockchain per tutto, il Bitcoin già offre la sua infrastruttura per gestire il tuo denaro in sicurezza. Ci sono probabilità che possa evolvere verso ulteriori casi d’uso (si pensi alle LAPP o OpenTimeStamps) - ma soltanto se governance, immutabilità ed effetto rete saranno capaci di giustificarne la creazione, mentre i benefici non saranno ottenibili da sistemi centralizzati tradizionali.

Se invece ancora non sei convinto e vuoi una blockchain anche a colazione, occhio: l’effetto rete (tecnologico, economico e sociale) funziona anche al contrario, accelerando l’abbandono da parte di chi ha già capito di cosa stiamo parlando!

Addendum sulla terminologia

Il termine “protocollo” lo intendo anche nella sua accezione pre-informatica, quando le cerimonie e i processi ripetibili erano prevalentemente umani.

Il termine “blockchain” lo utilizzo viceversa nella sua accezione tecnologica, quindi una struttura dati su cui leggere e scrivere informazioni in modo irreversibile, disintermediato e non censurabile, garantito dalla proof-of-work.

Il termine “distribuito” ha due accezioni: un software che viene “distribuito” equivale a dire che viene “offerto/venduto agli utenti per il suo utilizzo”. Viceversa rete distribuita (identificata dal corsivo) diventa l’aggettivo per connotare un insieme di computer (“rete”) che non condividono la stessa area fisica e/o logica (la rete dei nodi del Bitcoin è distribuita).

I punti di vista e le opinioni presenti all'interno di questo articolo appartengono esclusivamente all'autore, e non rappresentano necessariamente i pareri di Cointelegraph.