Halve Time: In principio era il codice

Christian Trummer

Da Christian Trummer

Bentornato alla terza parte della nostra serie Halve Time.

Se non l'hai ancora fatto, puoi leggere qui il post introduttivo di Eric e qui quello di Paul sui principi economici alla base dell'Halving. Se questo è il primo articolo su cui hai fatto clic, sappi che stiamo scrivendo una serie di articoli che celebrano ed esplorano l'Halving. 

Tutti noi ci siamo interessati alle criptovalute per motivi diversi, tutti abbiamo apportato competenze e passioni diverse e l'Halving è un buon momento per celebrare tutto questo. In fondo, l'Halving riguarda il funzionamento di un bellissimo modo di controllare l'offerta nonché un momento per analizzare l'evoluzione di questa tecnologia. Ma non si tratta solo di un evento tecnico, bensì di una celebrazione del design duraturo di Bitcoin e del suo percorso per diventare una pietra miliare decentralizzata dell'economia digitale. 

Prima di tutto, diamo un'occhiata al codice. Attenzione, stiamo per entrare nel tecnico, ma questo è uno dei fondamenti non solo dell'evento di Halving, ma anche del mondo delle criptovalute in generale. Questa è la parte della tecnologia che sta alla base del futuro, quindi non lasciarti sfuggire l'occasione. È anche la prova assoluta per tutti i critici che ritengono che 21 milioni di bitcoin non costituiscano un limite massimo.

Capire il codice

Il cuore dell'evento Halving è un semplice ma bellissimo pezzo di codice all'interno del protocollo Bitcoin. Questo codice prevede che ogni 210.000 blocchi la ricompensa di mining di nuovi blocchi si dimezzi. 

Ecco un frammento del codice responsabile:


Scendendo nel dettaglio, la parte superiore del codice calcola quanti Halving ci sono già stati.


int halvings = nHeight / consensusParams.nSubsidyHalvingInterval;


Questa linea indica che il numero di blocchi necessari per un evento di Halving è fissato a 210.000.

Poiché il valore intHalving può essere sempre e solo un numero intero e viene arrotondato per difetto, ciò significa che la rete deve estrarre 840.000 blocchi per attivare il quarto Halving. 

La seconda metà di questa parte del codice riguarda le ricompense. 


CAmount nSubsidy = 50 * COIN;

nSubsidy >>= halvings;

return nSubsidy;


Ciò significa che le ricompense dei blocchi partono da un valore fisso di 50 BTC. Tuttavia, un BTC non è un elemento indivisibile all'interno del codice. Ogni BTC è composto da 100.000.000 "pezzi" più piccoli, quindi i miner venivano ricompensati con 50 x 100.000.000 di pezzi di BTC. Essenzialmente sono la stessa cosa ma, quando si parla di codice, la differenza è importante. 

Se prendiamo la ricompensa originale di 5.000.000.000 (50 x 100.000.000) e la scriviamo in binario (non scappare! Questo concetto è importante) otteniamo 


100101010000001011111001000000000


Ora è il momento della parte davvero interessante e bella del codice:


nSubsidy >>= halvings;


Arriviamo al quarto halving (che in inglese significa appunto dimezzamento), utilizzando il numero che otteniamo. 


nSubsidy >>= 4 


Ciò significa: sposta i numeri di 4 posizioni a destra.


10010101000000101111100100000


Se prendiamo questo numero binario e lo convertiamo in decimale, otteniamo 312500000. Dividendo questo numero per i 100.000.000 "pezzi" di BTC che riceviamo come ricompensa, ci rimangono 3,125 BTC. Esattamente il numero di cui tutti parlano.

Perché il codice è importante

L'Halving, sebbene si basi solo su poche righe di codice, è fondamentale per la promessa di un'offerta fissa per Bitcoin. 

Poiché ci sono solo 33 cifre in totale, sappiamo che è possibile che ci siano solo 33 Halving. Sappiamo quale sarà l'altezza del blocco, sappiamo che non supereremo mai i 21 milioni di BTC in circolazione e possiamo prevedere (sulla base del tempo medio di 10 minuti per estrarre un blocco), con una certa sicurezza, che raggiungeremo questo punto nell'anno 2140. 

Poche righe di codice sono riuscite a ricreare gli stessi rendimenti decrescenti dell'estrazione "vera" di metalli preziosi come l'oro. Penso che sia davvero straordinario. 

Evoluzione tecnologica Post-Halving

Per concludere questo articolo, ho voluto ripercorrere uno dei principali sviluppi che abbiamo visto nella rete dall'ultimo Halving e guardare avanti ai due che ritengo saranno i protagonisti del prossimo ciclo di Halving. 

Guardando al passato: La Soft Fork di Taproot e i contratti intelligenti 

L'aggiornamento Taproot, attivato sulla rete Bitcoin nel novembre 2021, è stato uno dei miglioramenti più significativi della rete. Taproot ha segnato un significativo passo avanti, introducendo miglioramenti in termini di privacy, scalabilità ed efficienza. Consentendo condizioni più complesse per le transazioni e migliorando la loro privacy, Taproot ha gettato le basi per una rete Bitcoin più versatile, che stiamo ancora esplorando. 

Una delle aggiunte più interessanti è stata l'espansione delle funzionalità relative ai contratti intelligenti sulla rete Bitcoin. I contratti intelligenti sono contratti auto-esecutivi con i termini dell'accordo scritti direttamente nel codice. Prima di Taproot, l'implementazione di complessi contratti intelligenti su Bitcoin era possibile, ma goffa e inefficiente. Ora sono più pratici e offrono un altro solido caso d'uso potenziale per il Bitcoin, al di là delle semplici transazioni e degli strumenti finanziari più complessi.

Si parla già della possibilità di creare una Macchina virtuale Bitcoin (BitVM), che consentirebbe la creazione di livelli superiori per la rete Bitcoin. Questa macchina virtuale aprirebbe le porte ai contratti intelligenti e alle applicazioni decentralizzate, permettendole di competere con le offerte delle blockchain più recenti come Ethereum. 

Guardando al futuro:

Rollup: 

Il fermento intorno ai rollup suggerisce che potrebbero essere la prossima grande novità per migliorare la velocità e l'efficienza delle transazioni. Elaborando le transazioni off-chain per poi registrarle sulla catena, i rollup potrebbero ridurre significativamente la congestione e le commissioni, rendendo Bitcoin un'opzione ancora più interessante per le transazioni quotidiane. Questo aiuterà a integrare ulteriormente Bitcoin nell'ecosistema finanziario e a porre fine all'ennesimo dibattito sul "valore" che apporta all'economia. 

L'adozione mainstream della rete Lightning: 

La Lightning Network ha registrato una crescita notevole dall'ultimo Halving, emergendo come soluzione mainstream per le sfide di scalabilità di Bitcoin. Il suo obiettivo principale è quello di facilitare le transazioni istantanee e a basso costo, rendendo il Bitcoin un'opzione più pratica per l'uso quotidiano e per i piccoli pagamenti, spesso definiti microtransazioni. La cosa più entusiasmante è che sta già funzionando. Da quando è stata lanciata, abbiamo assistito a un enorme incremento delle transazioni lightning e credo che stiamo assistendo all'inizio di un'adozione più diffusa e forse a una moneta veramente funzionale utilizzata da milioni di persone in tutto il mondo per un'ampia varietà di transazioni...

Per concludere

In sintesi, l'Halving non è altro che un codice, ma ciò che questo codice rappresenta è più eccitante ora di quanto non lo sia mai stato. Siamo all'inizio di una nuova ondata di interesse, in un momento di adozione e integrazione e in un momento di significativo progresso tecnologico. Non vedo l'ora di vedere cosa ne farà la community di Bitcoin di questo futuro.

Christian Trummer

Christian Trummer