Devo essere sincero: Su Internet, in italiano, non ho trovato nessun articolo che spiega in modo semplice come funzionano i Bitcoin a livello tecnico. Ci sono articoli che spiegano la parte pratica ma nessuno che spiega varie nozioni importanti ma tecniche.
Mi sono letto la documentazione, quella noiosa, e proverò a fare un articolo in cui ti spiegherò i concetti base del Bitcoin.
Nozioni base
Queste sono probabilmente le cose che hai già letto su tutti gli altri siti ma conviene fare un ripassino:
- Il Bitcoin è decentrato, non c’è dunque un’autorità di controllo che può bloccare gli scambi
- Il Bitcoin è controllato dagli utenti
- Il Bitcoin viene salvato su dei portafogli detti “wallet”
- Il Bitcoin è tutto tracciato dentro una Blockchain che salva permanentemente ogni scambio
Ora cominciamo con la teoria… Ti assicuro, sarà interessante!
Cos’è la blockchain
Come dice la parola stessa in inglese è una catena di blocchi.
Ogni blocco Bitcoin contiene infatti la firma del blocco precedente, cosa che permette di ricostruire la catena fino al primo blocco esistente, creato da Satoshi Nakamoto, il creatore dei Bitcoin.
Cos’è un Bitcoin?
Un Bitcoin è una scritta dentro la blockchain che certifica che all’utente X appartengono tot Bitcoin, divisibili fino all’ottavo decimale. Non esiste dunque il corrispettivo di una banconota, nel tuo PC sono salvate semplicemente le chiavi che servono a “firmare” il Bitcoin e certificare che è tuo.
Come si creano i Bitcoin?
I Bitcoin vengono creati durante il mining come ricompensa. Quando un utente crea un blocco valido riceve una ricompensa che dimezza ogni 210’000 blocchi. Oggi questa ricompensa è di 12.5 Bitcoin. In origine era di 50 Bitcoin, come potete vedere qui ad esempio. In ogni blocco troverai dunque dei Bitcoin appena generati che sono la ricompensa del creatore del blocco.
Come funzionano gli scambi?
Quando invii dei Bitcoin ad un utente la tua richiesta entra in una lista e qualcuno prende in carico la tua richiesta che contiene dei dati, l’indirizzo di input, quello di output e la quantità data. Ogni transazione può contenere più transazioni, quindi potete mandare nella stessa richiesta X Bitcoin a Y e Z Bitcoin ad A.
Un utente, ossia il miner, raccoglierà la tua richiesta e la metterà insieme ad altre in un limite di tempo di circa 10 minuti e con massimo 1 MB per blocco.
Le elaborerà e, una volta fatto, creerà un blocco. Quando il blocco ha abbastanza fiducia, cioè viene preso come base da un altro blocco che a sua volta viene preso come base per dirla semplice, la tua transazione sarà ultimata.
Fiducia?
Ogni blocco ha una sorta di firma generata in base al contenuto che viene inclusa poi nel blocco successivo. In base a questo si crea la fiducia, quando un blocco include la firma di un altro blocco questo blocco verrà considerato più fidato.
Questa firma si chiama hash e ha un ruolo importante che ti spiegherò nel prossimo paragrafo.
Cos’è il mining?
Mining vuol dire mettere insieme un numero di transazioni adeguato, trovare una firma adatta e notificarlo agli altri nodi.
Questa elaborazione include anche un controllo nella blockchain per evitare che vengano spesi due volte gli stessi soldi.
Ma il vero punto del mining è trovare la firma adatta.
Tra i vari campi di un blocco c’è il Nonce, ossia un numero casuale. La firma di un Bitcoin deve avere un buon numero di zeri all’inizio per essere accettata dagli altri nodi.
La sfida è dunque trovare questo Nonce che crea una firma con un alto numero di zeri. Finché non lo si trova il blocco non è minato e non verrà accettato dalla rete.
È un lavoro che si può fare solo a forza bruta, cioè provando ogni numero finché non se ne trova uno che crea tale firma. Ciò rende questo lavoro molto oneroso.
Si può sbagliare?
È possibile minare un blocco per niente quando viene minato quasi contemporaneamente un altro blocco che viene adottato più rapidamente dagli altri nodi. In tal caso non viene pagata nessuna ricompensa e il blocco è detto orfano.
Dopo un po’ i nodi si rendono conto di stare lavorando su un blocco superato, seppur valido, dunque lo abbandonano per passare al blocco più moderno della catena principale.
Si può restare bloccati?
È possibile che una transazione impieghi ore o giorni ad essere ultimata.
Infatti esistono due “liste” nel Bitcoin:
- Una viene compilata ogni 10 minuti ed è il blocco delle transazioni
- Una è in continuo aggiornamento ed include tutte le richieste da soddisfare.
Con gli attuali limiti si possono trattare circa sette transazioni al secondo. Quando vengono superate vengono avvantaggiate dai nodi miner le transazioni che pagano una commissione. Le altre vengono invece lasciate in attesa di uno spazio libero.
Se dunque la tua transazione non paga una commissione o questa è più bassa di quella altrui è possibile che la tua transazione resti bloccata in attesa che qualcuno abbia uno spazio libero.
Si può falsificare?
Domanda molto spinosa.
Come ti spiegavo prima la rete Bitcoin controlla ogni spesa per evitare che un Bitcoin sia speso due volte.
Questo controllo però potrebbe essere eluso se l’attaccante possedesse la maggior parte della potenza di calcolo della rete: Potrebbe infatti impostare il suo software per accettare una doppia transazione e poi per confermarla, inserendo dunque nella blockchain una spesa doppia.
È chiamato anche “attacco del 51%”, dalla percentuale minima richiesta perché abbia successo.
Si tratta di una potenza di calcolo abnorme, per questo il Bitcoin è ritenuto sostanzialmente infalsificabile.
Si può dividere?
Avrai capito che il Bitcoin si basa sostanzialmente sulla collaborazione tra utenti. E se alcuni utenti decidessero di cambiare le regole?
In tal caso la blockchain verrebbe sdoppiata: Fino al punto della scissione sarebbe identica, poi i blocchi fatti da una rete non saranno accettati dall’altra e viceversa.
È successo ad esempio con il Bitcoin Cash che ha modificato la dimensione del blocco per rendere più veloci le transazioni: Fino ad un punto hanno la stessa blockchain, da quel punto in poi si dividono.
Come forse avrai capito ciò vuol dire che tutte le monete generate prima della scissione restano valide anche nella nuova rete.
Chi aveva dunque 1 Bitcoin il giorno prima della scissione il giorno dopo si è trovato con 1 Bitcoin e 1 Bitcoin Cash.
Se invece il Bitcoin venisse acquistato il giorno della scissione non porterebbe ad un Bitcoin Cash, perché la blockchain è già divisa.
I Bitcoin finiranno?
Certamente! Il numero massimo di Bitcoin è di circa 21 milioni, dovuto al calo della ricompensa che un giorno, tra più di 50 anni, diventerà zero. Dunque da quel momento esisteranno tutti i Bitcoin fattibili e i miner saranno ricompensati solo dalle commissioni.
Altro?
Hai altre domande? Falle nei commenti e proverò a risponderti!
Sarà che ho dormito 5 ore, ma non ci ho capito una cippa 😀
Forse è quello, l’ho fatta leggere a un paio di persone prima di pubblicarlo e hanno capito 🙂
Se hai dubbi specifici commenta che proviamo a risolverli.