Il Bitcoin e le nuove miniere d’oro
5 min readAl giorno d’oggi il commercio online si affida quasi esclusivamente alle istituzioni finanziarie, che fungono da terza parte fidata, per processare i pagamenti elettronici.
Nonostante abbia i suoi benefici, il costo della mediazione incrementa il costo della singola transazione. Questo disincentiva le “transazioni casuali”, come ad esempio l’invio di denaro tra amici per saldare i debiti di una cena.
Con i Bitcoin e le criptovalute si è introdotto un pagamento elettronico basato su una “prova crittografica” invece che nella fiducia di un garante, in modo da permettere a due parti di svolgere una transazione in maniera autonoma.
Un po’ di gergo computazionale
Per capire cosa sono i Bitcoin e come possono essere generati dobbiamo prima chiarire alcuni termini del gergo computazionale:
Innanzitutto con CPU power si intende la potenza totale dei computer, che partecipano in una rete (network), quantificata in potenza di elaborazione (CPU).
Una rete (network) è costituita da vari nodi, ovvero tutti i computer che lavorano all’estrazione (mining) delle criptovalute.
Altri concetti da conoscere sono quello di firma digitale, con cui si indica una stringa che permette di identificare l’autore di un oggetto digitale e l’hash, una stringa di bit ottenuta come risultato di un’operazione crittografica (i.e SHA-256).
Un hash in parole povere è come un “sigillo univoco” (non ne esistono altri uguali), che ogni volta deve essere nuovamente creato, ed è utile a garantire l’autenticità di un dato.
Bitcoin in pratica
Transazione
Una moneta elettronica può essere definita come una catena di firme digitali.
Quando avviene un trasferimento di queste monete ad un nuovo proprietario, il proprietario originario pone il suo hash e la public key (identificativo pubblico) del nuovo proprietario, alla fine della moneta.
Questo serve a dire che Alice invia a Bob del denaro e siamo sicuri che lo sta facendo perchè c’è il sigillo (hash) di Alice e l’identificativo (public key) di Bob.
La catena a mano a mano si allunga di transazione in transazione.
Ora se Alice ha dato a Bob dei soldi come fa Charlie a saperlo? La transazione deve essere annunciata pubblicamente, come se fosse pubblicata su un giornale, così che tutti i nodi in ascolto possano prenderne nota.
Ad esempio consideriamo la transizione: Alice invia a Bob 10-4 Bitcoin, che al momento in cui scrivo sono circa 36€, Charlie che è in ascolto segna nel suo “taccuino virtuale” la transazione.
Ogni nodo inizia così a redigere una propria lista in cui tiene conto di tutte le transazioni avvenute. Tutte le liste devono infine coincidere tra loro, almeno quelle dei nodi che vengono chiamati “honest node”.
Proof-of-work
Compilare una lista è quello che in gergo si definisce: minare un Bitcoin. Questo richiede una prova di lavoro (proof-of-work), esprimibile in CPU power, in quanto, se fosse gratis, tutti potrebbero generare una moneta e questo ne azzererebbe il valore.
Il lavoro necessario per compilare la lista è legato alla difficoltà di creare un “sigillo” ovvero l’hash.
Questo consiste nel “cercare” un valore che sottoposto ad una funzione crittografica restituisca un hash con particolari caratteristiche (deve avere i primi N bit della stringa nulli con N un numero variabile)
Una volta compiuto il lavoro che soddisfi il proof-of-work il blocco realizzato non può essere cambiato, a meno che tutto il lavoro non venga compiuto nuovamente!
Network
Riassumiamo il procedimento per minare i Bitcoin così diviso in fasi:
- La nuova transazione è diffusa ai nodi in ascolto;
- I nodi trascrivono la transazione nel loro blocco;
- Il singolo nodo lavora per soddisfare il proof-of-work per il proprio blocco;
- Una volta trovato il proof-of-work, il nodo diffonde il suo blocco;
- Gli altri nodi accettano il blocco solo se le transazioni descritte sono valide;
- I nodi mostrano che hanno accettato l’ultimo blocco continuando a lavorare sulla catena implementata.
Tutti i nodi lavorano in contemporanea e indipendentemente l’uno dall’altro in una gara a chi crea prima il blocco. Questo può causare discrepanze.
Se due nodi diffondono due versioni diverse dello stesso blocco contemporaneamente gli altri nodi lavorano sul blocco che ricevono prima, ma salvano anche il blocco che arriva per secondo.
I nodi lavoreranno poi solo sulla catena più lunga. Questa corrisponde alla catena sulla quale è stata impiegata più CPU power e quindi statisticamente più affidabile. Facendo questo si evita che nodi malintenzionati possano alterare la catena.
Incentivi
Dopo tutto questo lavoro e il consumo di elettricità: cosa spinge i “minatori” a creare criptovalute?
La prima transazione in un blocco è una transazione speciale. Questa inizializza una nuova moneta che appartiene al creatore del blocco e ne guadagna il valore di mercato.
Un ulteriore incentivo è dato dalla “tassa di transazione”.
Questa è stata introdotta perché il numero di Bitcoin è limitato e più monete si producono e più queste perdono valore.
La “tassa di transazione” permette ai minatori di avere un guadagno anche quando il consumo di energia per produrre la moneta è maggiore del suo valore di mercato.
Con l’aumento del numero di criptomonete il guadagno si sposta dal valore di mercato alla “tassa di transizione”, così da incentivare i nodi a continuare a minare i Bitcoin.
Garantendo sempre un valore alle criptomonete si vuole rendere più appetibile il giocare secondo le regole invece che cercare modi per infrangerle.
E se?
Nonostante sia più conveniente essere degli “honest node”, nulla vieta a dei malintenzionati di provare ad alterare queste catene.
Ad esempio un malintenzionato, Eve, potrebbe scrivere nel suo “taccuino” di aver pagato con lo stesso denaro più persone creando così dei blocchi alternativi nella catena.
Supponiamo di trovarci di fronte ad un bivio tra una “honest chain” e una “attacker chain”. Dobbiamo ricordare che solo la catena più lunga viene ritenuta affidabile.
Se Eve vuole “farla franca” deve poter creare tanti più blocchi possibili così da stare dietro alla lunghezza della “honest chain” e superarla. Perchè altrimenti gli altri nodi si accorgeranno dell’inganno.
Questo richiederebbe tantissima energia e corrente elettrica.
Inoltre la probabilità è altamente a suo sfavore; infatti questa diminuisce esponenzialmente con il numero di blocchi della “honest chain” da recuperare.
Per poter capire meglio: con due blocchi da recuperare, la probabilità di un malintenzionato di “ingannare” una catena è del 5%, mentre già dopo 10 blocchi la probabilità scende allo 0.00012%!!
In conclusione
I Bitcoin non sono l’unica moneta virtuale nel mercato, ma ve ne sono molte. Negli ultimi anni sono state create tra le tante: Ether, Litecoin, Stellar. Ognuna ha un proprio valore in un mercato che assomiglia alla più nota borsa in cui i titoli però sono sostituiti dalle singole criptovalute.
Le criptovalute stanno sempre più entrando nella vita di tutti i giorni. Ancora non siamo arrivati al punto di poterci pagare un caffè al bar, ma la loro introduzione massiva nel tessuto economico pone dei quesiti importanti nella politica dei singoli Paesi.
Laureato in Fisica e attualmente studente alla Magistrale in Physics a Camerino. Sono costantemente in cerca di nuovi stimoli e sempre in prima linea quando si tratta di imparare qualcosa di nuovo. Avvicinare le persone al mondo della Fisica e della Matematica è uno dei miei obbietivi, così che tutti possano capire meglio il mondo che li circonda e il linguaggio con cui esso è descritto.