Cosa sono gli hard fork e i soft fork?

29.11.2018

Qualsiasi software ha bisogno di aggiornamenti costanti per risolvere problemi o migliorare le prestazioni. Nel mondo delle crypto, questi aggiornamenti vengono chiamati “forks.”

Dato che le criptovalute sono network decentralizzati, tutti i partecipanti alla rete - conosciuti come nodi - devono seguire le stesse regole per poter collaborare opportunamente. Questo insieme di regole è definito come un “protocollo.”

Le regole più comuni in un protocollo includono le dimensioni di un blocco su una blockchain, le ricompense distribuite ai miner per ogni nuovo blocco, e tanto altro.

Ci sono due tipologie di fork nel mondo delle crypto: soft fork e hard fork. Nonostante questa distinzione, entrambi cambiano radicalmente il modo in cui il protocollo di una criptovaluta opera.


Soft Fork

Un Soft Fork è una modifica retro-compatibile apportata al protocollo di una criptovaluta. Questo significa che i nodi non aggiornati sono ancora in grado di elaborare transazioni e aggiungere nuovi blocchi alla blockchain, a condizione che non infrangano le regole del nuovo protocollo.

Immagina un soft fork che introduce una nuova regola che riduce la dimensione dei blocchi da 3mb a 2mb. I nodi più vecchi possono ancora elaborare transazioni e aggiungere nuovi blocchi che non superano il limite di 2mb. Tuttavia, se un vecchio nodo cerca di aggiungere al network un blocco di dimensioni maggiori a 2mb, i nuovi nodi, ovvero quelli aggiornati, respingeranno il blocco in quanto infrange le nuove regole. Questo incoraggia i vecchi nodi ad aggiornarsi al nuovo protocollo, dato che non sono efficienti quanto i nodi aggiornati.


Hard Fork

Un Hard Fork è una modifica al protocollo di una criptovaluta che risulta incompatibile con le versioni precedenti, quindi i nodi che non si aggiornano alla nuova versione non saranno in grado di elaborare transazioni o aggiungere nuovi blocchi alla blockchain. Gli hard fork possono essere usati per modificare o migliorare un protocollo esistente, oppure per creare un nuovo protocollo e una nuova blockchain indipendenti.

Immagina una modifica in un protocollo che aumenta la dimensione dei blocchi da 2mb a 4mb. Se un nodo aggiornato prova ad aggiungere un blocco da 3mb alla blockchain, i nodi più vecchi, non aggiornati, vedranno questo blocco come non valido, e lo respingeranno.

A seconda della situazione, gli hard fork possono essere programmati o controversi.

In un fork programmato, i partecipanti aggiorneranno volontariamente il proprio software per seguire le nuove regole, lasciandosi alle spalle la vecchia versione. I nodi non aggiornati continuano a operare sulla vecchia chain, la quale verrà usata da pochissime persone.

Tuttavia, se il fork è controverso, ovvero se c’è un disaccordo all’interno della comunità riguardo all’aggiornamento, il protocollo viene solitamente separato in 2 blockchain incompatibili - 2 differenti criptovalute. Entrambe le blockchain avranno la propria comunità, e gli sviluppatori seguiranno il fork che ritengono migliore.

Dato che un fork si basa sulla blockchain originale, tutte le transazioni contenute in essa vengono copiate nel nuovo fork. Per esempio, se possiedi 100 monete di una criptovaluta chiamata Moneta A, e un hard fork basato su tale criptovaluta ne crea una nuova chiamata Moneta B, riceverai anche 100 monete della Moneta B.

A causa della loro natura open source, e con l’arrivo nel campo delle crypto di un maggior numero di individui e organizzazioni con obiettivi divergenti, i fork continueranno ad essere parte integrante dello sviluppo delle criptovalute.

Loading