Blockchain forks are essentially a split in the blockchain network. The network is an open source software, and the code is freely available. This means that anyone can propose improvements and change the code. The option to experiment on open source software is a fundamental part of cryptocurrencies, and also facilitates software updates to the blockchain.
Forks occur when the software of different miners become misaligned. It’s up to miners to decide which blockchain to continue using. If there isn’t a unanimous decision, then this can result in the creation of two versions of the blockchain. There can be periods of increased price volatility around such events.
How do forks work?
Forks work by introducing changes to the software protocol of the blockchain. They are often associated with the creation of new tokens. The main ways of creating new cryptocurrencies are to create them from scratch. Or, to ‘fork’ the existing cryptocurrency blockchain.
Creating new tokens from scratch is the most common method. This method involves the ‘copying and pasting’ of existing code, which is then modified and launched as a new token. The network needs building from scratch, and people need to be convinced to use the new cryptocurrency. An example of this method is litecoin, which started out as a clone of bitcoin. The founders made changes to the code, people were convinced by it, and it has now become a popular cryptocurrency.
The alternative method is to fork the existing blockchain. With this method, changes are made to the existing blockchain rather than starting from scratch. In this case, two versions of the blockchain are created as the network splits. An example of this can be seen with the creation of bitcoin cash. Differing opinions around the future of bitcoin led to the creation of a new cryptocurrency (bitcoin cash) from the original cryptocurrency (bitcoin).
Hard forks v soft forks
The creation of bitcoin cash from bitcoin is an example of a hard fork. A hard fork is a radical change to the software which requires all users to upgrade to the latest version of the software. Nodes running on the previous version of the software will no longer be accepted on the new version. A hard fork is a permanent divergence from the previous version of the blockchain. If there isn’t unanimous consent for the new version, this can result in two blockchains using a variant of the same software.
Comparatively, a soft fork is backwards-compatible. The upgraded blockchain is responsible for validating transactions. But, nodes which don’t get updated will still see the new blocks as valid. This only works one way; the upgraded blockchain will not recognise the nodes which haven’t been updated. In order for a soft fork to work the majority of miners need to upgrade. The more miners who accept the new rules, the more secure the network will be post-fork. Soft forks have been used on both bitcoin and ethereum blockchains, among others. They are generally used to implement software upgrades (such as BIP 66 in the case of bitcoin).