Software libero per la blockchain

Forse non tutti sanno che la piattaforma su cui funziona la prima grande applicazione della tecnologia blockchain, cioè il sistema Bitcoin, è software libero.
Già dietro il nome del fantomatico creatore di questa tecnologia, Satoshi Nakamoto, molto probabilmente si cela una pluralità di persone. Fin dalla metà del 2010, comunque, cioè da quando è stata resa pubblica la prima versione del software e Nakamoto è sparito, il sorgente è open e al progetto lavorano più persone, attualmente almeno un centinaio nella comunità Github, dove dal 5 giugno del 2015 si è collocato lo sviluppo della piattaforma Bitcoin.
Per chiunque volesse mettere il naso per vedere come è fatta questa tecnologia dal punto di vista informatico, questo è l’indirizzo: https://github.com/bitcoin/bitcoin. Vi si trova il sorgente.
Per chi, invece, fosse interessato a caricare il software sul proprio computer, software che si chiama Bitcoin Core, l’indirizzo è: https://bitcoin.org/it/scarica oppure, in sede più aggiornata, https://bitcoincore.org/en/download/. Il software è disponibile per Linux, Windows e OS X. La versione corrente è la 0.15.1, rilasciata l’11 novembre del 2017.
Il computer con installato questo software diventa un nodo (full node) della rete blockchain, cioè diventa uno dei tanti computer dove è presente il database della blockchain e diventa uno dei computer che partecipa alla validazione delle transazioni ed alla loro trasmissione ad altri nodi.
Basta un normale computer con almeno 2 GB di RAM in quanto, a partire dalla versione 0.13, Bitcoin Core non ha più abilitata la funzione per il mining (costruzione di nuovi blocchi), per la quale necessiterebbero potenze di calcolo non alla portata di computer casalinghi. Ciò che importa è avere un collegamento Internet superveloce e spazio sufficiente per ospitare il database, attualmente quasi 200 GB, destinato, dati i ritmi di espansione, ad assorbire ulteriormente tra i 5 e i 10 GB al mese. Il tutto può essere ospitato su disco esterno collegato via USB.
Ovviamente è necessario rendere disponibile il computer per la rete almeno sei ore al giorno, sapendo che la piena collaborazione richiederebbe 24 ore su 24 (la disponibilità del computer per la blockchain consente di utilizzare altrimenti il computer stesso per i propri lavori).
All’indirizzo http://btc-news.it/utility/nodo bitcoin.html troviamo una descrizione di cosa significhi essere un full node della blockchain con un fervorino tendente al reclutamento (la blockchain senza nodi non esisterebbe).
Nella sostanza lo svantaggio sta nel rendere disponibile il computer, con relativo costo di energia elettrica, senza alcun compenso. I compensi li percepisce solo il miner e si sono ormai ridotti al lumicino in forza della progressione geometrica con cui diminuiscono. Cosa assolutamente non proporzionata ai costi che comporta allestire e mantenere la capacità elaborativa richiesta dall’attività di mining (per fortuna ci sono i cinesi).
C’è però il grande vantaggio di poter gestire in proprio il bitcoin wallet senza delegarne la gestione ad altri, affidando loro le nostre credenziali, come avviene quando apriamo il bitcoin wallet su uno degli ormai numerosi intermediari di criptomonete: sul piano della sicurezza si tratta di una cosa impagabile.
A livello di hackeraggio brutto ci sarebbe anche un modo per avere il vantaggio senza lo svantaggio, ma tutto ciò è diseducativo. Chi voglia essere diseducato guardi https://www.youtube.com/watch?v=7X0KgtpvSGA.
Prescindendo comunque dall’applicazione Bitcoin, che, nonostante tutto, possiamo ancora considerare qualche cosa di sperimentale, ciò che conta è che la tecnologia blockchain, con la valanga di novità che potrà portare nei più svariati campi applicativi, sia appannaggio del software libero.
Mancherebbe altro! Una tecnologia destinata alla democratizzazione della conoscenza e della custodia dei dati non sarebbe certamente coerente fosse fatta funzionare da software proprietario.