Basics of a blockchain fork

Cryptocurrencies and their open-source networks like Bitcoin and Ethereum rely on maintenance and development by their communities. If the community decides to adjust some of the blockchain’s network protocols in a way that is not backward-compatible with the current protocol, a hard fork will take place. This results in a chain split, with one chain following the new, upgraded protocol and the other continuing along its original path. Typically, the chain with the most hash (mining) power is considered the dominant side of the fork, and most users will migrate to this.

blockchain-fork

Source: Digital Asset Research

Reasons to fork a blockchain 

  • To add functionality.
  • To address security risks.
  • To resolve community disagreements regarding the cryptocurrency’s direction.

Types of blockchain forks

What is a hard fork?

Hard forks bring forth comprehensive protocol changes that make the new version no longer backward-compatible with earlier blocks. The chain split, consisting of the original blockchain and the second chain with updated rules, can both coexist.

To avoid a chain split when you have non-backward compatible changes to the protocol, the network requires all nodes or users to upgrade to the latest version of the protocol software. Nodes of the newest blockchain version will no longer accept the old version, so if a significant number of nodes and miners do not upgrade, they will create a permanent divergence. 

Hard forks have also birthed entirely new cryptocurrency ecosystems. Bitcoin Cash is an example of a cryptocurrency that hard forked from the Bitcoin blockchain.

What is a soft fork?

 A soft fork, on the other hand, does not split the blockchain, as all changes made to the protocol are fully backward-compatible. Miners and nodes can run both old and new versions of the software, without worrying about breaking rules and forking. There are pros and cons to protocol changes that cause a soft fork.

Pros:

  • The main one – the blockchain does not get split in two.  This is very important in many people’s eyes as a contentious hard fork scenario will often split the community and make it weaker overall
  • Nodes and miners are not required to update their software by a certain date. Soft forks can proceed with less community organisation required.

Cons:

  • Developers are more limited in what they can achieve with soft forks, as anything that changes must still abide by the old rules
  • Some argue that soft forks don’t force people to pay attention, which means changes can be made without the majority of the community giving it the thought it deserves

Does it happen often?

Bitcoin (BTC) historically heavily favours soft forks, and while many hard forks have happened on the Bitcoin network, in all cases the change in rules forked to a blockchain network with significantly less hash power, and is considered a separate cryptocurrency (if it even still exists).

Ethereum on the other hand has regularly scheduled hard forks. In general, the more centralised a project, the easier it is to make protocol changes that result in a hard fork, as the central body can dictate the update, and everyone falls in line.  In a more decentralised project like Bitcoin, hard forks can be much more contentious as a large majority of participants must be corralled to agree with a change.

What is a User Activated Soft Fork (UASF)?

A UASF is a soft fork activated by full nodes and not a protocol’s network miners. Generally, blockchain forks are signalled and set in motion by miners leveraging their hash-power to vote. Proposals conducted this way hold the possibility of disagreement amongst the broader community or blockchain economy (i,e individual users, wallet providers, exchanges and other entities). The nature of a soft fork upgrade aims to be backwards-compatible with existing protocol rules. To minimise the authority of miners interfering with these updates, full nodes would signal and activate these upgrades instead – theoretically forcing miners to accept new protocols.