Che cos’è il Fork?

Un fork è una modifica a un protocollo o a un pezzo di codice che viene introdotta per aggiornare un progetto. In particolare, nella comunità open source, le fork diventano necessarie quando molte persone scelgono di scaricare ed eseguire lo stesso software in momenti diversi e non sempre aggiornati. Per comprendere meglio il concetto di fork, prendiamo ad esempio uno scenario ipotetico. Supponiamo che due utenti scarichino ed eseguano la versione 1 di un software, ma solo uno di loro decida di effettuare l’aggiornamento quando viene rilasciata la versione 2. In questo caso, l’utente che ha effettuato l’aggiornamento esegue una fork della versione 1.

Tuttavia, nel contesto di Bitcoin, le fork possono diventare problematiche poiché il consenso è fondamentale per determinare l’ammontare di denaro posseduto. Se i nodi eseguono software diversi con regole diverse, potrebbero verificarsi situazioni in cui alcuni nodi approvano transazioni o blocchi mentre altri no. Ciò potrebbe causare una frattura nella rete e compromettere la stabilità della blockchain decentralizzata di Bitcoin. Pertanto, è fondamentale che lo sviluppo di Bitcoin rimanga cauto e conservatore.

Esistono due tipi principali di fork: le soft fork e le hard fork. Le soft fork non rompono la compatibilità tra la vecchia e la nuova versione del software e, pertanto, non richiedono l’aggiornamento di tutti i nodi. Al contrario, le hard fork non sono compatibili all’indietro e richiedono l’aggiornamento di tutti i nodi. All’interno della comunità Bitcoin, si tende ad evitare le hard fork, mentre le soft fork sono preferibili.

Quando un progetto subisce una hard fork e alcuni membri scelgono di aderire alla nuova versione, mentre altri no, è possibile che la rete si separi in due. Questa situazione è già accaduta diverse volte quando alcuni progetti hanno tentato di modificare le regole di consenso di Bitcoin o di espandere il loro ambito. Questi progetti che si staccano dalla versione originale di Bitcoin vengono chiamati fork, ma non fanno più parte del progetto o della rete Bitcoin originale. Sebbene le forchette possano causare attriti sociali e confusione, non danneggiano il protocollo della rete Bitcoin.