Se non fosse per i miglioramenti apportati al software, sincronizzare i nodi Bitcoin (BTC) sarebbe impossibile: lo rivela una ricerca dell'exchange di criptovalute BitMex.
BitMex Research, divisione di ricerca e analisi del noto exchange, ha misurato il tempo necessario per effettuare un IBD (Initial Block Download) della blockchain (completo di verifica) nelle diverse versioni del software Bitcoin Core rilasciate dal 2012 al 2019, condividendo i risultati in un post pubblicato il 29 novembre.
Il team di ricerca afferma che ora potrebbe essere impossibile sincronizzare alcune versioni precedente di Bitcoin Core, e che i miglioramenti della scalabilità apportati al software sono stati essenziali per il funzionamento della rete:
“Le versioni precedenti di Bitcoin hanno faticato a superare la ripresa del volume delle transazioni registrata nel periodo 2015-2016. Pertanto concludiamo che, senza i miglioramenti apportati al software, oggi effettuare una sincronizzazione iniziale potrebbe essere quasi impossibile."
Giorni necessari per fare un Initial block download di Bitcoin — media di tre tentativi. Fonte: BitMex
Il team ha anche provato delle versioni di Bitcoin Core precedenti alla 0.8.6, che non sono però riuscite a sincronizzare i dati dopo il periodo 2015-2016. Anche l'utilizzo di hardware decisamente potente non ha aiutato:
"Abbiamo anche provato a eseguire Bitcoin Core 0.7.0 sul nostro nuovissimo computer locale, con 64 GB di RAM e 8 processori Intel i9, tuttavia il nodo non è stato ancora in grado di superare il 2016. [...] Le grandi riduzioni in termini di IBD e il fatto che i vecchi nodi non riescano a sincronizzarsi completamente indicano che se non fosse per questi miglioramenti della scalabilità, ormai Bitcoin sarebbe sostanzialmente morto, anche se gli utenti avessero a disposizione l'hardware con le specifiche più elevate in commercio."
Miglioramento sempre più lento
Il miglioramento più significativo della velocità è avvenuto dopo la versione 0.12.0 di Bitcoin Core, quando gli sviluppatori hanno adottato una libreria di verifica delle firme creata appositamente per Bitcoin.
Questa particolare versione del software non convalida inoltre le firme delle transazioni Segregated Witness (SegWit), poiché non le supportava, il che riduce ulteriormente i tempi di sincronizzazione.
IBD fino al giorno di rilascio di ogni versione. Fonte: BitMex
È interessante notare come, fino alla versione 0.14.0, i miglioramenti della scalabilità hanno mantenuto relativamente bassi i tempi di sincronizzazione. Dopo queste versioni iniziali, la popolarità della rete Bitcoin e le sue dimensioni è cresciuta molto più rapidamente rispetto ai miglioramenti della scalabilità apportati al software, causando tempi di sincronizzazione più lunghi. Il team di ricerca BitMex conclude:
"I dati mostrano anche che è improbabile che in futuro l'innovazione tecnologica tenga il passo con la crescita della blockchain e che i tempi di IBD aumenteranno."
Gran parte dell'attenzione nello sviluppo di Bitcoin è stata dedicata alla conservazione della decentralizzazione, il che significa anche cercare di mantenere relativamente modesti i requisiti hardware per la gestione di un nodo.
Per ridurre tali requisiti, gli sviluppatori hanno anche mantenuto un block weight limit (con SegWit) di quattro megabyte e un block time di 10 minuti, tenendo così sotto controllo la crescita delle dimensioni della blockchain.
Attualmente, la dimensione della blockchain Bitcoin è 293,37 GB, mentre la dimensione media dei blocchi è poco più di 1 megabyte. Oggi ci sono oltre 9.500 nodi raggiungibili in tutto il mondo, secondo il sito Bitnodes.