Blockchain such as Bitcoin works on a decentralized system, which means that those participating on the network should arrive on an agreement on the shared state of the blockchain. When participants form a complete consensus, it forms a distinct blockchain with verified data which is considered correct by everyone. However, when there is a withdrawal from the consensus, it results in a blockchain fork. It can occur in three states:
- Temporary Fork
- Soft Fork
- Hard Fork
These are the forks where miners on cryptocurrency systems find a block at the same time. It results in two splitting blockchain, competing with each other. Temporary forks are resolved when miners choose the chain on which the ensuing blocks will be created. The longest blockchain would be regarded as the ‘true’ blockchain, and it will win the competition. Shorter chains would be left out.
Soft Fork and Hard Fork
Hard forks and Soft forks are different from temporary forks as they show a permanent change in the primary rules of the protocol instead of temporary. These changes can occur due to adding upgrades, increasing in the size of the block, changing basic protocols, and more.
Difference Between Hard Forks And Soft Forks
- A soft fork includes a software upgrade which would be compatible with the previous versions of the system. It means that the new rules can be incorporated and used with the fundamental protocols. In contrast, a hard fork software upgrade allows the rules to change, but they are not compatible with older versions.
- Soft Forks are much less restrictive as compared to Hard Forks. As hard fork is a permanent split, any nodes that are still operating using an older version will not be recognized by the newer one. The older versions will continue to run on a different protocol and with different data. With Soft Forks, nodes running in older versions would be acceptable in the newer versions as well, but only if users have upgraded their software with new updates.
- Hard forks can divide a project’s community, with one group using newer version and other group using the older version, and it can lead to a negative impact on the price of both the chains formed after the split. On the other hand, Soft Forks are optional upgrades. They also involve two versions. But the users who did not upgrade their software would still be able to take part in authenticating and verifying the transactions.
Users can take some time to determine whether they want to upgrade or not. During that time, both the older and newer updated chain deliver parallel performance. If a user updates the software in a given period of time, the soft fork is executed and the new chain becomes the official chain. It can improve the price of the chain and its asset.
- As compared to Hard Fork, Soft Fork is easy to execute since it requires only a majority of users to upgrade, not everyone has to do it. Whether or not all participants have updated their software, they will be able to recognize the new blocks and stay compatible with the network. While Hard Fork creates two blockchains, soft fork’s main objective is to create one official blockchain, not two.
- Bitcoin Improvement Proposal (BIP) 66, which led to a soft fork on Bitcoin’s signature validation.
- P2SH aka Pay to Script Hash, a soft fork resulting in multi-signature addresses on the Bitcoin network
They can be split into two categories, planned and contentious.
- Planned – Users are already informed about the upgrade in advance by the project developers. For example, the addition of new privacy feature, Ring Confidential Transactions, in Monero in January 2017.
- Contentious – When a severe disagreement occurs between various participants of the project pertaining to bringing major changes in the chain. For example, Bitcoin Cash hard fork, where a part of the community wanted to change the block size from 1 MB to 8 MB.