Inom blockchain-teknik är hårda gafflar och mjuka gafflar två olika sätt att uppgradera och uppdatera nätverksprotokoll. De skiljer sig markant i hur de implementeras, och dessa skillnader kan direkt påverka strukturen och driften av ett blockkedjenätverk.
Hård gaffel
En hård gaffel är en regeländring där den nya versionen av nätverket inte längre är kompatibel med den gamla versionen. Som ett resultat delas blockkedjan i två separata grenar som löper parallellt och inte påverkar varandra.
Mjuk gaffel
En soft fork är en regeländring där noder som antar de nya reglerna fortfarande kan interagera med noder som inte har uppgraderats. I det här fallet förblir den nya versionen av nätverket kompatibel med den gamla versionen.
Jämförelse
Hård gaffel
Exempel: 2016 DAO
Den gamla versionen är inte kompatibel med det nya nätverket
Körs under olika protokoll
Soft Fork
Exempel: 2017 SegWit
Det nya nätverket förblir kompatibelt med den gamla versionen
Fungerar under samma övergripande protokollramverk
Situationsanalys
Hård gaffel
Anta till exempel att hälften av nätverksnoderna vill öka blockstorleken från 2MB till 3MB. Om ett 3MB-block skickas till noder i gammal version, kommer dessa noder att avvisa det eftersom deras regler fortfarande definierar 2MB som den maximala blockstorleken. I det här fallet delas nätverket i två separata protokoll, och varje filial kan använda en annan valuta. Alla kontosaldon kopieras från den ursprungliga kedjan till den nya kedjan. Till exempel, om en användare hade 20 BTC före gaffeln, skulle den användaren hålla 20 BTC på den ursprungliga kedjan och 20 nya BTC på den nya kedjan.
Mjuk gaffel
Till exempel, om den ursprungliga blockstorleken är 2MB och hälften av nätverksnoderna inför en striktare regel som begränsar blockstorleken till 1MB, kommer block större än 1MB att behandlas som ogiltiga av de uppgraderade noderna. Men noder i gammal version kan fortfarande ta emot och sända block. I den här situationen kan det nya nätverket fortfarande täcka alla noder utan att begränsas av olika regelversioner. Bitcoins Segregated Witness (SegWit) är ett typiskt exempel på en mjuk gaffel. Denna uppgradering introducerade ett nytt block- och transaktionsformat på ett smart sätt. Noder som inte har uppgraderats kan fortfarande ta emot blockinformation, men de deltar inte i valideringen av det nya transaktionsformatet.
