If you are interested in cryptocurrencies, you have surely heard these two terms – hard fork and soft fork – more than once. But do you know what they mean? In this article, we will explain what hard forks and soft forks are and what context relates to them.
What is a fork?
In explaining what a fork is, we will start by giving an example related to Github. Git is a software version control system well known to developers, while Github is a portal where developers upload source code files. We say version control system here because as the software develops, the code grows. New lines are added, resulting in more functionality. With Git version control, we are able to see who edited the code and when, and who made which changes. We should also mention a situation in which a fork is created. Let’s assume that two developers are working on the same code, but both aim to introduce two different functionalities. In this case, these programmers use the fork function. This means that they create a copy of the code. From this point, the code which has a common history is forked into two disconnected versions.
Hard fork and soft fork
A fork, understood in the context of Bitcoin (BTC), works similarly. The Bitcoin network is created from a single blockchain that is constantly growing, and all of its users collectively set the rules by which the network will operate. These rules are called consensus. If the aforementioned chain gets forked, we call it a fork. There are two types of forks: hard forks and soft forks.
The term hard fork is used to describe a situation where there is an update to the software after which it is not compatible with its older version. This usually involves a rule change, such as changing the size of a single block.
Soft fork is also a situation where a fork in the network occurs. The software is updated, but unlike a hard fork, it works with its older version.
How are forks created? And what is a BIP?
Now that you know what forks are and what the difference is between a soft fork and a hard fork, you’re surely wondering how changes are proposed to the chain. In the case of Bitcoin (BTC), a chain improvement proposal is called a BIP, or Bitcoin Improvement Proposal. This is the standard for proposing changes to the Bitcoin protocol. BIP proposals can include consensus-critical changes (such as soft fork and hard fork protocol updates), but also other changes that need to be coordinated against different implementations of Bitcoin software.