Open In App

Blockchain Forks

Prerequisites – Blockchain Technology Introduction, How Blockchain technology works, Introduction to Blockchain 

The decentralized nature of public blockchains (for example, Bitcoin and Ethereum) means that participants on the network must be able to come to an agreement as to the shared state of the blockchain(shared public ledger and blocks and the blockchain protocol). Unanimous consensus amongst the network nodes results in a single blockchain that contains verified data(transactions) that the network asserts to be correct. However, many times, the nodes in the network can’t come in a unanimous consensus regarding the future state of the blockchain. This event leads to forks (like a tuning fork used in experimental science), meaning that point in which the ideal ‘single’ chain of blocks is split into two or more chains which are all valid. 



FORKS IN BLOCKCHAIN:

In simple terms, Forks in blockchain means copying the code and modifying it to create a new software or product. In open-source projects Forks are very common and used widely. So, cryptocurrencies like Ethereum and Bitcoin are decentralized and open software so that anyone can contribute. As they are open-sources they rely on their communities to make the software more secure and reliable. Also open source with the help of fork can make user interface more interactive and look good, helping in gaining more users worldwide. In open source the code is visible to everyone, anyone can modify, edit, access there is no copyright claims for such actions. 

For example: Tor browser is an open source software, Linux one of the most widely use Operating system is an open source system, in similar way Bitcoin and Ethereum protocol are also open sourced.

An example GeeksforGeeks blockchain fork

Moving Ahead:

Lets us see the different types of FORKS one by one:

TYPES OF FORKS

Basically forks are divided into two categories i.e. Codebase Fork and Live Blockchain Fork. And then Live Blockchain Fork is divided into further two parts i.e. Intentional Fork and Accidental Fork, as you can see in the above mentioned figure the Intentional fork is then further divided into two parts i.e. Soft Fork and Hard Fork.



TYPES OF FORKS:

CODEBASE FORK: In codebase blockchain fork you can copy the entire code of a particular software. Let us take BITCOIN as an example, so suppose you copied the whole blockchain code and modified it according to your need, say that you decreased the block creation time, made some crucial changes and created a faster software than BITCOIN and publish / launch it has a new whole software named against you, by completing the whole white paper work process. So in these way a new BLOCKCHAIN will be created from an empty blank ledger. It’s a fact that many of these ALT COINS which are now running on the blockchain are been made in these way only by using the codebase fork i.e. they have made little up and down changes in the code of BITCOIN and created their whole new ALT COIN.

LIVE BLOCKCHAIN FORK: Live Blockchain fork means a running blockchain is been divided further into two parts or two ways. So in live blockchain at a specific page the software is same and from that specific point the chain is divided into two parts. So in context to this fork the Live Blockchain Fork can occur because of two reasons :

  1. SOFT FORK: When the blockchain protocol is altered in a backwards-compatible way. In soft fork you tend to add new rules such that they do not clash with the old rules. That means there is no connection between the old rules and new rules. Rules in soft fork are tightened. When there is a change in the software that runs on the nodes (better called as ‘full nodes’) to function as a network participant, the change is such that the new blocks mined on the basis of new rules (in the Blockchain protocol) are also considered valid by the old version of the software. This feature is also called as backwards-compatibility. Example (SOFT FORK): The Bitcoin network’s SegWit update added a new class of addresses (Bech32). However, this didn’t invalidate the existing P2SH addresses. A full node with a P2SH type address could do a valid transaction with a node of Bech32 type address.
     
  2. HARD FORK: When the blockchain protocol is altered in a non backwards-compatible way. Hard fork is opposite of Soft fork, here the rules are loosened. When there is a change in the software that runs on the full nodes to function as a network participant, the change is such that the new blocks mined on the basis of new rules (in the Blockchain protocol) are not considered valid by the old version of the software. When hard forks occur, new currency come into existence (with valid original currency) like in the case of Ethereum (original : Ethereum, new : Ethereum Classic) and Bitcoin (original : Bitcoin, new : Bitcoin cash). Equivalent quantity of currency is distributed to the full nodes who choose to upgrade their software so that no material loss occurs. Such hard forks are often contentious (generating conflicts in the community). The final decision to join a particular chain rests with the full node. If chosen to join the new chain, the software has to be upgraded to make newer transactions valid while the nodes who do not choose to upgrade their software continue working the same. Example (HARD FORK): The new Casper update in the Ethereum Blockchain in which the consensus protocol will change from a type of Proof of Work (PoS) to a type of Proof of Stake (PoS). The nodes which install the Casper update will use the new consensus protocol. Full nodes that do not choose to install the Casper update will become incompatible with the full nodes that do.

Reasons for the occurrence of a blockchain fork:

Future of the Blockchain Fork:

The future of blockchain forks is an area of great interest to many blockchain enthusiasts and experts. While it is difficult to predict with certainty what will happen in the future, there are some trends and developments that may give us an idea of what to expect.


Article Tags :