A hard fork is a divergence in a blockchain that occurs when changing the validation rules specified in that blockchain’s protocol.

The phrase hard fork is mainly used when upgrading virtual currencies (crypto assets). Virtual currency networks are decentralized by nature and these networks are created by various types of nodes. A hard fork requires each of these nodes to upgrade to the latest version of the protocol software.

Consequently, this creates a virtual currency which has been upgraded and one which has not been upgraded, resulting in a “fork” into two different currencies. The incompatibility between the two virtual currencies is called a hard fork.

For large-scale rule changes to virtual currencies in particular, maintaining backward and forward compatibility is technically difficult, which makes a hard fork necessary. If backward and forward compatibility can be maintained, a soft fork is performed instead.

Hard forks when a consensus is reached

There are two major types of hard fork.

The first type of hard fork occurs when one of the two virtual currencies resulting from a hard fork virtually disappears.

If a consensus is reached on the virtual currency’s development policy, almost all nodes will support the upgraded virtual currency. As a result, the other virtual currency that lost support will virtually disappear.

It can be said that this type of hard fork occurs with a high degree of consensus from the whole community (network participants). For example, Ethereum (ETH) has a development roadmap with planned hard forks. In October 2017, Ethereum had hard fork called Byzantium which occurred with a majority consensus from the Ethereum community.

Hard forks when a consensus is not reached

The other type of hard fork occurs where the hard fork causes divergent virtual currencies to exist.

If there is a disagreement within the community about the development policy of a virtual currency, the community may split based on the pros and cons of that virtual currency’s upgrades. If a hard fork is implemented in this situation, the communities will split with each one supporting their own divergent virtual currency.

In such case, a new virtual currency will appear. This occurs when the entire community is unable to reach a consensus.

The hard fork that resulted in the divergence of Ethereum and Ethereum Classic (ETC) that occurred in July 2016 is an example of this kind of hard fork. In addition, Bitcoin Cash (BCH) originated as a hard fork of Bitcoin in August 2017 since the Bitcoin community was unable to reach a consensus.