Capire Bitcoin – che cos’è il mining

Nel capitolo precedente Capire Bitcoin – che cos’è un hash, abbiamo visto che la funzione SHA-256 serve principalmente a generare un codice che offusca un particolare testo. Inoltre, abbiamo compreso che da un codice offuscato è letteralmente impossibile recuperare il testo di partenza. Tutto questo gioca un ruolo chiave nella generazione degli indirizzi bitcoin e nel mining. Non mi addentrerò nei dettagli tecnici, ma cercherò di spiegare il meccanismo di come il bitcoin utilizza gli hash nel suo sistema.

Fingiamo che io vi chieda di fornirmi un hash che deve iniziare con 0000 e che venga generato con una frase che contenga all’interno la parola “Bitcoin”. La prima persona che riesce a trovare una risposta avrà una ricompensa.

Qual è la vostra strategia? Ricordiamo che non c’è modo di iniziare con l’hash e capire i dati di input. L’unico modo di indovinare è effettuare un processo che viene chiamato “brute force“, cioè cercheremo tutti i casi e combinazioni possibili dei dati di input.

Procediamo in questo modo: torniamo sul sito web https://xorbin.com/tools/sha256-hash-calculator e calcoliamo l’hash di “Bitcoin-1” e vediamo se inizia con 0000. Calcoliamo l’hash di “Bitcoin-2” e vediamo se inizia con 0000. Quindi proviamo “Bitcoin-3”, “Bitcoin-4”, ecc. In effetti, l’unico modo che abbiamo per trovare la risposta è quello di continuare a provare e controllare finché non ne troviamo uno.

Dopo molti tentativi, se continuiamo questo processo, arriveremo al numero 1918 e… proviamo a dare un’occhiata: l’hash di “Bitcoin-1918” è 00007eb7d15a7f52aabb6bece4b1b3be3e606cc93d020c6f703bf7ff9bd2ac9e
ed inizia proprio con “0000”. EUREKA! L’abbiamo trovato!

Cosa ci insegna questo? Che abbiamo eseguito del lavoro per effettuare questo controllo ed adesso ci meritiamo un premio. In effetti ciò che abbiamo fatto è dimostrare che abbiamo eseguito del lavoro, cioè mostrare il codice è una “Prova del nostro lavoro”. In inglese si dice “Proof of work“, abbreviato POW. Ma il Proof-of-work è proprio l’algoritmo di consenso per generare la blockchain di bitcoin. Tramite quest’algoritmo possiamo quindi aggiungere nuovi blocchi alla blockchain.

In parole povere, modificando adeguatamente la ricerca dell’hash e sostituendo la parola “Bitcoin-1” con un elenco di transazioni bitcoin, abbiamo adesso più chiaro il concetto di come funziona il processo di mining del bitcoin.

I miner (minatori) sono tutti impegnati a cercare un elenco di transazioni valide che abbiano un hash che inizia con una serie di 0 iniziali. Tanti più zeri iniziali vengono richiesti, tanto più elevata sarà la difficoltà per trovare effettivamente la risposta adatta. Quando uno di loro, infine, trova un hash valido, può aggiungere un blocco alla blockchain e richiedere la sua ricompensa. Si genera, pertanto, una vera e propria competizione tra i minatori, perché ad ogni blocco aggiunto spetta una ricompensa in bitcoin.

Anche questa mini lezione è conclusa. Se avete domande o altre richieste particolari, scrivetemi o commentate.

Grazie


Vai al capitolo precedente: Capire Bitcoin – Che cos’è un hash

Vai al prossimo articolo: Capire Bitcoin: che cos’è la blockchain

3 Risposte a “Capire Bitcoin – che cos’è il mining”

I commenti sono chiusi.