Blockchain — What, Why, And How The Fork

How a decentralized cryptocurrency upgrades its protocol and the potential risks, benefits, and controversy that comes with it.

--

Whether you’re just starting to research cryptocurrencies or have been involved in the space for awhile, the topic of forking and how projects update their code-base is often misunderstood or very confusing. This article will break the process up into 3 parts.

  1. Forking defined and explained
  2. Types of Forks (Hard vs. Soft Forks)
  3. Chain splits as a result of a fork with examples

1. Forking Defined And Explained

A fork is essentially cloning or copying a project, making changes to the code-base, and then pushing those changes back to the main project source. This might sound a bit complex but in simple terms, a fork is a not-so-fancy name for an update to an open sourced project.

In the case of cryptocurrency, some examples of a fork include:

  • Changing Block-size / Transaction efficiency
  • Adjusting Mining Algorithms
  • Roll-backs after a catastrophic event

2. Hard vs. Soft Forks

There are two major classifications of forks — Soft & Hard.

Soft Forks: Backwards compatibility, fewer risks, and easier to implement

  • Soft forks are used for smaller and less-critical updates and can be activated by miners without front-facing users like me and you from even knowing that it happened. Soft forks don’t require a mandatory software update, therefore, wallets and nodes running before the soft fork will still work after the chain is updated.

Hard Forks: Not Backwards Compatible, more risks, harder to implement

  • Hard Forks are required for changing core “rules” and are often long debated and argued. Hard forks are not backward compatible and will require nodes and wallets to upgrade in order to access the “upgraded” chain. Hard forks open the door for double spending attacks, loss of trust, and confusion from the general public.
  • At the block the hard fork is activated there will be two parallel chains, the old (non-upgraded legacy chain) and the new (upgraded) chain. Each of these chains will have the same transaction & block history at the time of the hard fork. After the hard fork, users and miners can continue interacting with EITHER the old chain or the new chain, at this point, the two chains will “split” and any new transactions on the old chain will NOT be visible on the new chain and vise versa.

3. Chain Splits As A Result Of A Fork (How They Work, What Causes Them)

A chain split is always caused by a hard fork and can, in rare cases, be caused by a soft fork. The easiest way to explain chain splits is by giving an example for each case.

3.1. The Result Of A Perfect Hard Fork

Let’s assume, for the sake of a perfect scenario, that the community and miners unanimously agree Bitcoin should increase the block-size limit to 8MB.

  • Developers fork Bitcoins current code-base and adjust the block-size limit to 8MB.
  • Nodes and wallets would be required to upgrade their software so that they can recognize the new 8MB blocks.
  • Since this upgrade was unanimously agreed, everyone follows the upgraded chain and there would be little to no disruptions in the network
  • There technically would still be a chain split but it is irrelevant since all the hashrate and the rest of the network is following the upgraded chain.

3.2. Hard Fork With A Chain Split

Not everyone will agree on a hard-fork. Here is one realistic possibility of what an 8MB block-size limit fork could look like.

  • Developers fork Bitcoins current code-base and adjust the block-size limit to 8MB.
  • Most nodes and wallets upgrade their software so they can recognize the new 8MB blocks
  • Any nodes/wallets that DO NOT upgrade the software will not recognize the new 8MB blocks since that would invalidate the block-size rule on the non-updated code.
  • If there are enough nodes and miners that don’t update they can continue interacting with the old legacy chain
  • The community will be faced with a decision, they can interact with the old legacy chain, the new upgraded chain, or both chains (individually).
  • Looking at Ethereum and Ethereum classic: users can buy, interact, and make transactions with ETH, ETC, or both.

Conclusion

There is no limit as to how many times a cryptocurrency can fork or split, and although this may seem like a scary thought, it shows the power of decentralization.

The strength of a chain split is measured by the people who follow it, a fork or split will never be unanimous but it is important to understand the reasons they happen and the risks that come with it.

--

--