Hard Fork vs Soft Fork

Advanced

6 mins read July 28, 2023

Over the years, various proposals have been made to strengthen the Bitcoin network. Although Bitcoin remains a revolutionary technology, there are still a few modifications that need to be made to make it more suitable for its ever-increasing users. In simpler terms, just like your mobile applications may need an update, Bitcoin may also require a few "bug fixes." 

However, Bitcoin is a decentralised network, and as such, updates aren't from one source. The Bitcoin network does not have a centralised governing authority, which can make pushing an update a challenging task. In order to make this process easier, a Bitcoin fork is used as a mechanism.

What is a Bitcoin Fork?

Forking occurs when an open-source project, such as Bitcoin, wishes to make technical changes to its codebase or protocol. A Bitcoin fork refers to a copy of the original version of the Bitcoin blockchain that has been modified. These changes can be for several reasons, such as increased security, scalability, and more.

However, the main reason for this is to make changes to the Bitcoin blockchain without affecting the original version. It is a new alternative to the previous version to create modifications to a feature the original version may be lacking. 

A fork centres on modifying a protocol that is different from the initial version on the blockchain. The initial version continues to exist while the copy (that is, the one that has been modified) takes on a different path. Although the original and the copy share a common purpose and history, the split is done to solve an issue considered a problem in the original version.

How does the Bitcoin Fork work?

Three distinct parties are largely responsible for modifications within the bitcoin network. An individual may fall between the category of two or more of these parties depending on their specialization. These participants include the developers, miners, and full-node users. These people are well-versed in how the system works and suggest solutions to modify and improve the blockchain. 

However, for a modification to be made to the bitcoin network, these parties must reach a consensus about it. This is why these parties often use a Bitcoin Improvement Proposal (BIP) to suggest changes to the network. When one of these parties decides to modify the blockchain, they would need to "fork it," that is, modify a change in the protocol. When these modifications have proven to be effective other parties can then migrate to the use of this fork by updating their software to reflect the new changes. It is through "forks" that modifications are made to the network.

A fork can either be a hard or soft fork.

Hard forks

A hard fork is a radical change in the bitcoin network that renders previous blocks and transactions valid or invalid. Often this upgrade has a new set of rules that contradicts the older version, resulting in a split from the old version. This results in two versions, the original (old version) and the new upgraded version. A hard fork requires the bitcoin community's consensus, as they would all be required to upgrade to the latest version.  This fork is initiated when there is a need to modify the functionalities within an existing blockchain. When the hard fork is activated, the nodes within the newest version would no longer accept the previous blocks within the older version causing a permanent divergence. 

Hard forks are often initiated to correct critical threats (security risks) within the software. They may also be undertaken to add new functionality to the blockchain. When an update is made to the blockchain, the nodes turn blue. The older yellow nodes are unable to recognise the blue nodes and reject them as a result. The blue nodes remain connected to each other and can continue transactions. 

These two new networks run parallel to each other within the blockchain. They share the same history (an identical blockchain), but they would run separate blocks and transactions after the split.

This means that you may end up having coins on both networks if you had bitcoins on the initial network before the split. However, you would have the coins reflecting on the old network because you are yet to spend them on the new network. However, this is dependent on if modifications have been made to cryptography. If there hasn't been a change in the cryptography, your private keys would still hold your coins on the forked network. 

An example of an instance where the hard fork was initiated was in 2017. The hard fork resulted in Bitcoin being split into two chains: Bitcoin (BTC), the original version, and Bitcoin Cash (BCH), the new updated copy. The hard fork resulted from the difficulty in reaching a consensus on the best way to scale bitcoin. The proponents of Bitcoin Cash wanted to scale Bitcoin by increasing the block size. The proponents of the older version, BTC, were opposed to this change, thus resulting in a split. After the split, only the blocks in which their blocks exceeded 1MB in size (the initial block size) could communicate on the new fork. The new version was incompatible with the older version. 

Hard forks can either be contentious/unplanned or planned.

Planned hard forks take place when the community agrees to upgrade the blockchain and create a new blockchain. The community abandons the old blockchain and moves on to the latest updated version. Contentious/Unplanned fork takes place when the community disagrees about the feature and updates of a blockchain. The community then splits in two: the older and newer versions. The members of the community can then stick to the version they prefer. This split may lead to the creation of a new currency, such as the split in 2017 that produced Bitcoin Cash.

Read also: Bitcoin Halving

Soft fork

Unlike the hard fork, a soft fork doesn't result in a split or division of the blockchain. The soft fork only renders previous transactions and blocks invalid. Although the older transactions are considered invalid, it recognizes new transactions as valid. Users do not need to upgrade all their systems because the old nodes remain functional.

There are two types of soft fork:

i. the miner-activated soft fork (MASF), and

ii. the user-activated soft fork (UASF).

The miner-activated soft fork (MASF) is only implemented when there is a consensus among the miners for an upgrade. The user-activated soft fork (UASF) occurs when the new rules implemented are done without the miners' support.

The soft fork is a backwards-compatible upgrade. This means that the upgraded version remains compatible with the older version.  Users who prefer not to upgrade can still validate and verify transactions. Soft forks are easier to implement because they require only the majority of the users to upgrade, not all users. Participants of either the old or the upgraded version can still maintain communication and transact with ease between versions.

However, users that run the older version may experience problems with the functionality of their software. For instance, the new modification implemented by the recent upgrade may change the block size. Users who run the older version would continue to read the transactions from the upgraded version as valid. However, they may be experiencing an issue when trying to mine new blocks. Their blocks, when mined, would be considered invalid or rejected by the network. 

A soft fork is a gradual mechanism for upgrading the software of the network. Users have the option to run the older version, although they are at the risk of having limited functionalities. In essence, blockchain allows the upgraded version to run the new software while still honouring the older version. It is almost like an update on a mobile app, you can still run the older app and communicate with users running the upgraded app but you would have fewer functionalities than the upgraded version. In essence, the soft fork adds new rules or features to the older versions that do not clash with it. 

The Segregated Witness (SegWit) is an excellent example of a soft fork. This soft fork was implemented shortly after the 2017 split that resulted in Bitcoin Cash. The SegWit is an update that aimed to change the format of bitcoin blocks and transactions. However, the new modification did not clash with the existing rules. Although they might not be able to understand the new rules, the older nodes would still validate new blocks and transactions. Interestingly, years after the upgrade, not all users have upgraded to the latest software.

In conclusion...

Due to the nature of Bitcoin, more forks are likely to take place in the future. As bitcoin continues to evolve to accommodate its new users, more forking may occur to modify the network. Forking would allow changes to the protocol and codebase. It has the potential to help solve the limitations of bitcoin, such as Bitcoin scalability, mining cost, and ultimately improve the Bitcoin network. The world is continuously evolving. For Bitcoin to remain the preeminent currency, forking would be utilized to keep the foremost cryptocurrency relevant.

Disclaimer: This article is meant to provide general guidance and understanding of cryptocurrency and the Blockchain network. It’s not an exhaustive list and should not be taken as financial advice. Yellow Card Academy is not responsible for your investment decisions.

Crypto scoop

Sign up for our weekly newsletter

Stay informed with the latest updates to buy, sell, and store your crypto on the go.

phone

Download the Yellow Card app

Start trading crypto with ease

Get the Yellow Card app to buy, sell, and store your crypto on the go.