ICT systems must be continuously updated. This is done to add new functionalities, to fix bugs or to fix security problems. A blockchain also needs an update from time to time. A soft fork is used for updating blockchain. Hard fork is used to create a new blockchian from the old one.
What Is A Fork?
When you think of a fork, you soon think of a fork that you use to eat. That’s not what we mean in this case. We are talking about a fork in the blockchain world when a blockchain gets a second version from the original blockchain or existing version gets updated.
Blockchains are open source. This means that anyone can view and modify the code. In this way, the blockchain can continue to develop continuously. That is precisely the purpose of open-source software. Everyone can contribute to the software, resulting in different versions. One version may be better for your situation than the other.
For example, a group of developers can decide to start a new, different version of a blockchain that runs simultaneously with the original blockchain. In most cases, a blockchain that arises from a fork does not survive because there is too little support for such a blockchain. There must be enough nodes (computers) to migrate to the new blockchain to reach consensus in the blockchain network.
There are two versions of a fork, hard fork and the soft fork. The chances are that you will read more about a hard fork because you will see it around you more often. A soft fork is generally a lot less visible, as it is only an upgrade to the existing blockchain.
What Is A Soft Fork?
In the introduction, we talked about updating IT systems. Blockchain also needs to be updated now and then. The moment a group of developers decides to perform an update, they can start a soft fork. The updated blockchain is then copied and runs alongside the original blockchain.
Subsequently, the original blockchain will be transferred to the new blockchain. Nodes are constantly communicating continuously to reach a consensus. When a node sees that other nodes are using the latest blockchain protocol, they will adapt themselves and update their protocol. In this way, a blockchain switches from the old version to the new version.
But it can also go wrong. It has happened that not all nodes switch to the new version. In that case, they will continue to work together according to the old version. A hard fork is then created.
What Is A Hard Fork?
With a hard fork, you create a new cryptocurrency with certain similarities or differences from the old blockchain.
In hard fork there is always a difference between the original version and the newly formed version of the software. It’s not that the new version is always better than the old one.
An example of Bitcoin hard fork is Bitcoin Cash (BCH). Launched in August 2017, this BCH stands out with the benefits of faster transaction speeds and less decentralized. All Bitcoin holders received the same amount of BCH as they had BTC in their wallets.
The Bitcoin Cash fork arose because there was disagreement about the future of the Bitcoin. A group then decided to hard fork the Bitcoin to generate Bitcoin Cash.
How Does A Hard Fork Arise?
A hard fork can arise in different ways. One of these ways is the way Bitcoin Cash came to be. Blockchain developers are always discussing the future of the blockchain with each other and it can happen that they do not agree with each other about the future outcomes for a certain blockchain.
Often people vote on the future of a blockchain. Participants of blockchain community can vote on what should happen with the blockchain. There voting power is normally determined by the number of coins they hold of a particular blockchain. For example a in Vechain community a member holding 100,000 VET will have more voting power than a member holding 10,000 VET.
Even after voting, disagreements can still arise. A group could then decide to hard fork and implement their idea on their original blockchain version. That’s when the roads apart.
But there is also another way in which a hard fork could arise. And that’s from a soft fork. With a soft fork, there is a temporary separation from the existing blockchain so that developers can perform an update. The intention is that all nodes transfer to the new version of the blockchain after the update has been completed. Yet, it can all turn out differently.
Not everyone may switch to the new version. At that point, two versions of the blockchain remain, and without intentions a hard fork comes out from a soft fork because people refuse to switch to new updated blockchain.
The Difference Between A Soft Fork And A Hard Fork
A hard fork is a separation from the original blockchain. The most significant difference of Hard fork from a soft fork is that the newly created blockchain does not work together with the old blockchain. The old version continues itself without switching, and a new blockchain created works independently.
In a hard fork, two different versions of a blockchain are deliberately created. For example, blockchain developers can disagree with each other and decide to make their version and continue with it.
This is how Bitcoin Cash resulted from Bitcoin Hard fork, and Ethereum Classic were created after Ethereum Hard fork. Due to disagreements about the original blockchain’s future, developers decided to create their version and continue with it. Nodes could then choose in which blockchain they wanted to continue working.
Is A Soft Fork Better Than A Hard Fork?
It is impossible to say which variant is better. When an update is carried out or arguments arise within the blockchain about the future, a soft fork or hard fork can arise.
Can A Hard Fork Always Arise From A Soft Fork?
Even though blockchain is open source, it is not always possible that a hard fork will arise from a soft fork. There are enough private blockchains, which a company, government or institution control. They, therefore, determine the future of the blockchain, and thus the chance that a hard fork will arise from a soft fork in private blockchains is nil.
Who Decides Whether There Will Be A Soft Fork?
Blockchain is open source, so nobody owns the blockchain. Who then decides whether a soft fork is made? The answer to this is pretty apparent, given blockchain is open-source software. Anyone can make a soft fork. However, the support must be large enough. If there are not enough nodes that want to participate, the soft fork’s execution cannot be initiated.
Often votes are cast within the blockchain network about the future of the blockchain. Participants of the network can then vote on the plans, after which the program with the most votes will be executed. This also makes it immediately clear whether there is enough support for the projects of the blockchain.
However, events differs per blockchain because each blockchain has its consensus algorithm and stands for a different vision. There is no general plan for soft forks that is the same for every blockchain.