Hard Fork e Soft Fork: cosa sono e quali differenze

In questa guida parliamo di due concetti che sentiamo spesso quando si parla di Blockchain ovvero Hard Fork e Soft Fork.

Si tratta di due termini sui quali si fa spesso confusione, ma che sono fondamentali per capire meglio le dinamiche di consenso di una rete distribuita.

Come sapete le criptovalute esistono grazie alla tecnologia blockchain, un meccanismo che consente di memorizzare le informazioni in blocchi di dati collegati tra loro.

Da un blocco è possibile risalire al genitore fino al primo blocco in quanto questi sono collegati tra loro. La blockchain è un registro pubblico e distribuito dunque consultabile da tutti.

Molte criptovalute come Bitcoin ed Ethereum sono open source ed il loro codice viene gestito e sviluppato da una comunità di sviluppatori. Questi periodicamente possono decidere di apportare delle modifiche al protocollo sottostante o decidere delle modifiche alla regole di base.

Quando si verifica una di queste modifiche ecco che nella blockchain si determina un fork o una biforcazione. La blockchain può in questo caso rimanere la stessa con nuove regole o dividersi in una seconda catena prendendo una nuova “direzione”. Ecco come si origina un fork.

In questo articolo cercheremo di fare chiarezza sui tipi di fork e quali implicazioni comportano per sviluppatori e utenti finali.

Se volete investire sulle criptovalute, la soluzione più conveniente è quella dei contratti CFD. Con i broker regolamentati si può, infatti, negoziare sull'andamento del prezzo. Ad esempio eToro (trovi qui il sito ufficiale) permette di negoziare sulle migliori critptovalute.

Per saperne di più su questa piattaforma ti consiglio di visitare il sito ufficiale.

Gli investimenti in criptoasset sono altamente volatili e non regolamentati in alcuni Paesi dell'UE. Non c'è protezione per i consumatori. Possono essere applicate imposte sui profitti.
51% dei conti degli investitori al dettaglio perde denaro quando opera con questo fornitore di CFD. Dovreste valutare se potete permettervi di correre il rischio elevato di perdere il vostro denaro.

Che cos’è la Blockchain ?

La blockchain è un enorme database o registro (ledger) distribuito su più nodi (o computer) in rete, in cui vengono archiviate delle transazioni.

I dati contenuti in questo registro, sono memorizzati su più macchine (nodi) collegate tra loro via Internet.

Una Blockchain, traducibile in “catena di blocchi”, è un elenco in continua crescita di record, chiamati blocchi, che sono collegati e protetti mediante crittografia.

Aspetti fondamentali di una Blockchain

Ma a cosa serve una blockchain? La blockchain risolve un problema fondamentale.

Consente di trasferire un qualunque oggetto in forma digitale che abbia un valore in modo sicuro garantendone l’unicità.

Se pensiamo alle criptovalute come monete digitali, quindi unità di valore digitale, queste hanno bisogno di una infrastruttura per essere inviate e scambiate.

La blockchain è l’infrastruttura che consente di effettuare queste operazioni in modo sicuro.

Si pone dunque come alternativa ai tradizionali sistemi centralizzati che usano ad esempio i database.

Gli aspetti importanti che ha introdotto la tecnologia blockchain sono:

  • Sicurezza (poiché ogni nodo ha una copia della blockchain, questa diventa difficile da attaccare)
  • Trasparenza (possiamo conoscere tutta la storia di un wallet ad esempio. La blockchain è una rete pubblica.)
  • Immutabilità (nessuno può modificare le transazioni una volta un blocco è stato convalidato)
  • Decentralizzazione (nessuno ha il pieno controllo ed ogni nodo deve rispettare delle regole)

Blockchain: nodi e blocchi

Abbiamo detto che la blockchain è un insieme di blocchi distribuita su più nodi.

Un blocco è l’unità atomica della blockchain.

Ogni blocco:

  • contiene una porzione di dati (e cioè una collezione di record o transazioni). Es: Luca paga 0,15 BTC a Chiara, Chiara paga 1 BTC a Maria)
  • ha un intestazione o header che contiene alcune informazioni o metadati del blocco
  • ha una dimensione (size). Un blocco ha una dimensione in megabyte e le transazioni occupano dei byte dunque ad un certo punto si riempie e bisogna passare al blocco successivo.
  • contiene un identificatore univoco del blocco (come se fosse una impronta digitale). In genere una funzione che calcola un Hash
  • contiene identificatore del blocco precedente. In genere avremo un Hash del blocco precedente. Questo determina il fatto che si crei la catena.

Le transazioni non sono modificabili e questo garantisce l’immutabilità della blockchain.

Una volta che un blocco ovvero un elenco di transazioni, è pieno e viene validato, questo viene propagato a tutti i nodi della rete.

Il blocco viene accettato da tutti attraverso un meccanismo di consenso ovvero tutti sono d’accordo che quel blocco sia valido.

Può capitare il caso in cui due blocchi vengano validati contemporaneamente. Come si fa in questi casi? Si genera una situazione di Fork temporaneo (una biforcazione) che viene risolta portando solo un blocco a proseguire nella catena. Questo avviene perché un blocco può avere solo un blocco genitore determinato dall’hash precedente.

Abbiamo appena visto il caso di un primo tipo di Fork.

Per approfondimenti vi segnalo questo video che abbiamo realizzato che spiega tutti gli aspetti principali di una Blockchain:

Blockchain: cos’è e come funziona [Funzionamento ed con esempi pratici]
Cos’è la Blockchain? Una Blockchain, traducibile in “catena di blocchi”, è un elenco in continua crescita di record, chiamati blocchi, che sono collegati e p…
Blockchain: cos'è e come funziona [Funzionamento ed con esempi pratici]

The video was uploaded on 3/3/2022.

You can view the video here.

The video lasts for 26 minutes and 43 seconds.

Cos’è un Fork di una blockchain?

Abbiamo capito che una blockchain è di fatto una struttura decentralizzata dunque è possibile che in alcuni momenti ci siano diverse copie che non sono perfettamente identiche.

Un fork è dunque una ramificazione o biforcazione che si crea a causa di una modifica al codice e dunque al protocollo. Può avvenire anche spontaneamente se si verificano dei ritardi nella rete.

In questo caso entra in gioco il processo di mining che i occupa di validare le transazioni. I miners sono dei nodi speciali che cercano di risolvere calcoli complessi trovando l’hash del blocco da aggiungere alla blockchain e ricevendo in cambio una ricompensa,

Il primo miner che riesce a risolvere questo calcolo può confermare il blocco e ricevere una ricompensa data dalle fees delle transazioni.

In caso di fork in genere i miners tendono ad aggiungere i blocchi alla catena più lunga e in cui c’è più difficoltà, in questo modo la blockchain converge verso uno stato unico e consistente.

Ci sono però dei casi in cui un fork può essere “indotto”, vediamo quali sono i principali e poi alcuni esempi.

Hard Fork: come funziona

Abbiamo visto che nella blockchain per validare le transazioni c’è bisogno di un consenso distribuito tra tutti i nodi. Le regole del consenso sono fondamentali e devono essere condivise per garantire la validità e la consistenza della rete.

Spesso sorge, però, la necessità di cambiare queste regole sia per introdurre nuove funzionalità, correggere errori o bug o per apportare miglioramenti ad un protocollo. Ed è qui che nasce l’Hard Fork.

Per Hard Fork si intende un cambiamento nelle regole o nell’algoritmo di consenso

👍 Hard ForkCambiamento nelle regole o nell’algoritmo di consenso.
✅ CaratteristicheCambio di regole / Due blockchain indipendenti e con regole differenti.
✅ EsempiLitecoin / Ethereum Classic / Bitcoin Cash
🥇Migliore piattaforma per fare trading sulle criptovaluteeToro
🥇Miglior exchange per comprare e vendere criptovaluteBinance

Un hard fork è un cambiamento radicale delle regole, da qui il termine “hard” o forzato, che di fatto crea due chain indipendenti. Chi opera sulla rete in questo caso come i nodi o gli utenti devono “forzatamente” aggiornare software e protocolli per poter operare sul protocollo.

L’aggiunta di nuove regole crea essenzialmente una biforcazione della blockchain. Un percorso segue segue la nuova blockchain aggiornata, mentre l’altro percorso continua a seguire il vecchio percorso.

Hard Fork

Generalmente un fork di questo tipo si verifica quando si vogliono introdurre delle funzionalità in un protocollo ma non tutti sono d’accordo. A volte si fanno quando si verificano dei problemi sulla rete o per nuove tecnologie.

I nodi che non si aggiornano alle nuove le regole di consenso vengono su una chain separata al momento del fork. Da quel momento in poi i blocchi procedono in maniera indipendente.

Esempi storici di Hard Fork sono Litecoin che venne introdotto da un fork di Bitcoin per cercare di renderlo più scalabile o Ethereum Classic che si separò da Ethereum.

Riepilogando un Hard Fork:

  1. Introduce forti cambiamenti sulle regole di un protocollo
  2. Causa una biforcazione della rete in due chain differenti con regole e blocchi differenti
  3. Richiede l’aggiornamento di software e meccanismi anche agli utenti e dunque il coordinamento di tutti i partecipanti alla rete
  4. Genera due coin indipendenti tra loro con propri protocolli
  5. I miners possono decidere di continuare su una chain o su un’altra

Un Hard fork può verificarsi in qualsiasi blockchain in quanto tutte le criptovalute più o meno utilizzano questa tecnologia e meccanismi simili.

Perchè avviene un Hard Fork

Abbiamo visto che un hard fork può avvenire per molti ragioni, prima di tutto per risolvere eventuali problemi di sicurezza che potrebbero compromettere l’intera stabilità della rete.

Ovviamente fare queste modifiche in un contesto distribuito come la blockchain richiede:

  • che ci sia l’accordo di tutti i nodi tramite voto e meccanismi di governance
  • che ci sia una fase di test prima del rilascio della fork
  • che i nodi aggiornino tutte le procedure e protocolli

Un fork può avvenire anche quando la community non è d’accordo ad introdurre le modifiche. Nel caso di Litecoin molti sviluppatori credevano che le modifiche introdotte potevano minare la sicurezza di Bitcoin, ecco perché si arrivò alla divisione.

Anche nel caso di Ethereum come abbiamo visto ci fu un hack sul procollo che causò perdita di fondi agli utenti. In quel caso Vitalik Buterin che non era d’accordo creò quello che oggi è conosciuto come Ethereum.

Rischi di un Hard Fork

Un fork non è un evento sempre positivo e viene visto come un potenziale rischio sopratutto per la comunità di sviluppatori.

Generalmente un hard fork richiede sempre il consenso al 100% della comunità altrimenti viene visto come un rischio e una modifica che pochi vogliono apportare il sistema. In questi casi una minoranza costringerebbe tutti i nodi della rete a cambiare software e regole per operare su una blockchain non supportata da tutti.

E’ per questo motivo che si preferisce fare queste modifiche rilevanti col consenso unanime. Ad esempio nella comunità di Bitcoin si discute sempre sul futuro di questa criptovaluta.

Cosa vuole diventare? Una riserva di valore? Uno strumento di pagamento. Ecco che il dibattito è sempre più acceso su temi quali la scalabilità, la dimensione del blocco e la sicurezza.

E tutti questi cambiamenti comportano sempre dei rischi inevitabili.

Esempi di Hard Fork

Litecoin

Litecoin è uno dei fork storici di Bitcoin ed un esempio perfetto di Hard Fork.

La storia di Litecoin parte il 7 ottobre 2011, quando venne rilasciato tramite un client open-source su GitHub da Charlie Lee, un ex dipendente di Google. Si tratta di una fork del client Bitcoin Core, che differisce soprattutto per:

  • un tempo di generazione del blocco d(2,5 minuti),
  • un maggior numero di monete emesso,
  • un algoritmo di hashing diverso (scrypt, invece di SHA-256) e una GUI leggermente modificata.

Per maggiori approfondimenti potete consultare la nostra guida su Litecoin.

Ethereum Classic

Un altro esempio di fork è quello di Ethereum Classic? La storia inizia col progetto DAO, tra i più famosi di Ethereum.

La DAO era un’organizzazione distribuita e autonoma che aveva guadagnato $150m in ether, la valuta che circola su Ethereum. L’idea iniziale alla sua base era molto semplice: gli investitori potevano inviare denaro alla DAO e ricevere token di votazione.

Una volta acquistati i token e votato, gli investitori potevano decidere in maniera democratica come esso avrebbe dovuto spendere questi fondi. Tuttavia, qualcosa andò storto: partite le votazioni, la DAO fu colpito da un attacco hacker e quindi compromesso.

La comunità di Ethereum ha così votato a maggioranza di cambiare il codice di Ethereum, al fine di restituire i fondi agli investitori ed ovviare all’attacco hacker.

Cosa ha comportato ciò? Ethereum ha creato una nuova blockchain, la minoranza ha continuato a minare sulla vecchia versione della blockchain. Pertanto, Ethereum Classic è risultata essere una versione parallela della blockchain e quindi per effetto di ciò i fondi inizialmente investiti non sono mai stati restituiti agli investitori. I quali hanno pertanto perso i propri investimenti iniziali per colpa dell’attacco hacker al progetto DAO.

Cosa che invece non è successa ad Ethereum, in quanto la sua blockchain ha restituito i fondi ai legittimi proprietari.

Soft Fork: come funziona

Un altro tipo di fork che esiste è il Soft Fork. Non si tratta di un vero e proprio fork in quando non causa nessuna biforcazione o ramificazione nella rete.

Un soft fork introduce delle modifiche al protocollo senza creare una nuova blockchain. I nodi non aggiornati possono continuare ad operare seguendo le nuove regole di consenso. Da qui il termine soft o morbido.

👍 Soft ForkCambiamento nelle regole o nell’algoritmo di consenso che consente ai nodi di continuare ad operare sulla blockchain.
✅ CaratteristicheCambio di regole / La blockchain non cambia / I nodi non devono aggiornarsi.
🥇Migliore piattaforma per fare trading sulle criptovaluteeToro
🥇Miglior exchange per comprare e vendere criptovaluteBinance

Rispetto ad un hard fork in questo caso la blockchain rimane valida anche dopo l’aggiornamento delle regole di consenso. I nodi aggiornano il proprio software ed i meccanismi per funzionare secondo le nuove regole.

E’ un tipo di Fork retrocompatibile. Ovvero accetta le transazioni con il vecchio software. Ma non è comunque possibile fare il contrario: le transazione eseguite con il nuovo software non verranno interpretate con il modello precedente.

Soft Fork

In generale molti sviluppatori non sono convinti sulla sicurezza dei soft fork. Molti ritengono che, il fatto che sia più semplice da attuare, comporti un rischio per la sicurezza introducendo spesso modifiche non necessarie o compromessi.

Un soft fork richiede infatti che la maggioranza dei nodi miners si aggiornino alle nuove regole e non la totalità della rete come avviene nell’hard fork.

Un soft fork può anche verificarsi a volte a causa di una divergenza temporanea nella blockchain e non richiede non richiedono l’aggiornamento dei nodi per mantenere il consenso

La sicurezza dunque aumenterà ma mano mano che più nodi passeranno alla nuova versione.

Rischi della Soft Fork

Molti sviluppatori delle comunità crypto sono convinti che le soft fork siano molto più dannose delle hard fork.

Anche Vitalik Buterin si è espresso in passato sulla questione affermando che una Soft Fork è molto più pericolosa per gli utenti e per la sicurezza.

Con pochi soft forks infatti è possibile introdurre modifiche sostanziali al software e questo può causare problemi inevitabili di sicurezza.

Esempi di Soft Fork

Segregated Witness (Segwit)

Uno degli esempi più famosi di Soft Fork è Segregated Witness (Segwit), un aggiornamento delle regole di consenso del protocollo Bitcoin avvenuto nel 2017.

Esso venne presentato per la prima durante l’evento di scaling dei Bitcoin che si tenne a Hong Kong durante il dicembre del 2015. Ebbe una enorme popolarità ed è stato proposto con il BIP 141 alcune settimane dopo. Si tratta di una modifica capace di ridurre le dimensioni di ogni transazione Bitcoin, un passo in avanti verso la scalabilità .

Una transazione Bitcoin è composta da svariati elementi, tra cui anche una firma crittografica, in generale la possiamo sintetizzare come:

  • un ricevente (output)
  • una firma
  • un sender (input)

Per ridurre le dimensioni della transazione, SegWit rimuove quelle firme che, secondo il suo creatore, rappresentano circa il 60% dell’intera blockchain Bitcoin. La firma viene separata e memorizzata in un’altra struttura dati denominata extended block o blocco esteso.

Anche Segwit è di fatto un soft fork. Necessitava di ricevere il 95% di approvazione da parte dei miner del Bitcoin per essere attivato. Il sistema Segwit è stato così attivato il 24 agosto 2017. Tuttavia, la sua introduzione non ha impedito la nascita di un altro Fork: Bitcoin Cash.

Exchange per comprare e vendere criptovalute

Prima di conclusdere con questa guida vi segnaliamo un elenco di piattaforme per comprare criptovalute:

BROKER
CARATTERISTICHE
VANTAGGI
ISCRIZIONE
Broker consigliato
Valutazione
commissioni basse
Copy trading e conto demo
Trading Bitcoin, criptovalute

Gli investimenti in criptoasset sono altamente volatili e non regolamentati in alcuni Paesi dell'UE. Non c'è protezione per i consumatori. Possono essere applicate imposte sui profitti.
Forex, azioni, criptovaluteEbook / Trading automatico

CFD su Bitcoin e CriptovaluteSocial trading e Autotrading
broker premiato
demo gratuita
Migliori spread del mercato
CFD trading su BitcoinPiattaforma di qualità

Hard Fork e Soft Fork: video

Abbiamo preparato per concludere questa guida un nuovo video del nostro “Corso base sulle criptovalute” che spiega come si origina un Fork e quali sono le differenze tra Soft Fork e Hard Fork:

Hard Fork e Soft Fork: ecco le differenze e gli esempi
Un fork è una ramificazione o biforcazione che si crea a causa di una modifica al codice e dunque al protocollo. Per Hard Fork si intende un cambiamento “for…
Hard Fork e Soft Fork: ecco le differenze e gli esempi

The video was uploaded on 6/6/2022.

You can view the video here.

The video lasts for 17 minutes and 7 seconds.

Hard Fork e Soft Fork: le domande frequenti

Cos’è un Hard Fork?

Chi opera sulla rete in questo caso come i nodi o gli utenti devono “forzatamente” aggiornare software e protocolli per poter operare sul protocollo.

Cos’è un Soft Fork?

Un soft fork introduce delle modifiche al protocollo senza creare una nuova blockchain. I nodi non aggiornati possono continuare ad operare seguendo le nuove regole di consenso. Da qui il termine soft o morbido.
E’ un tipo di Fork retrocompatibile.

Quali sono gli esempi di Fork nel mondo crypto?

Esempi storici sono Litecoin e Bitcoin Cash, due fork di Bitcoin ed Ethereum Classic, un fork di Ethereum.

Fork: riepilogo

Conclusioni

Abbiamo visto in questa guida cos’è un fork e come funzionano le principali ramificazioni nel mondo crypto: Hard Fork e Soft Fork.

Si tratta di modifiche alle regole di consenso di un protocollo che possono avvenire in modo forzato o più morbido ma che devono incontrare il parere favorevole della community. Dalle modifiche di proposta forzata ad alcuni protocolli sono nati dei nuovi progetti nel corso degli anni come Bitcoin Cash, Litecoin ed Ethereum Classic.

Tra le modifiche più note a Bitcoin invece ricordiamo Segregated Witness che ormai è supportato da tutti i principali wallet ed exchange. Prima di investire in criptovalute vi ricordiamo di fare le vostre analisi e ricerche personali. E’ possibile per esempio partire dai broker regolamentati per investire in criptovalute o rivolgersi agli exchange centralizzati.

Per iniziare è fondamentale partire a fare pratica con le demo. Vi lasciamo con i link ufficiali che sono mediati dal server di WebEconomia in modo da garantire l’accesso sicuro:

Sono le migliori piattaforme con conti demo illimitati e sopratutto gratuiti per sempre.

Marco Giordano
Esperto di trading e mercati finanziari, mi occupo di strategie di investimento da 8 anni.