One of the key features that make blockchain technology attractive is its decentralized nature. Since the data on a blockchain is encrypted and stored on a network of computers (nodes) it is difficult for bad actors to interfere with the information and manipulate the data.
Editing data on a blockchain requires some sort of consensus, which is defined by the network’s rules. Blockchains are therefore immutable. On Bitcoin for instance, information cannot be changed without consensus or control over the blockchain.
Problems arise when these blockchains require an upgrade to their protocol or any kind of alteration. Consensus can go against a minority of users, or there can be a lack of consensus altogether. In these cases, users might choose to break-off the main chain to implement a change that there is no consensus for, or users who do not agree with a change that has achieved consensus, can refuse to accept the changes and keep on running the chain according to the original protocol.
Cryptocurrencies that have Forked
Prominent cryptocurrencies have gone through either one of these conundrums. Network protocols have been changed on Ethereum for instance, to reimburse people who lost funds with the DAO debacle. In this case, around 85% of the relevant actors on the blockchain agreed with the fork that would reimburse DAO investors. A minority of the network refused to accept the changes, creating Ethereum Classic. Bitcoin has also been forked, notoriously due to SegWit and the block size debate.
What is a Blockchain Fork?
These forks have created “dividends”, since users automatically get the same amount of coins on the forked chain once it takes place. But to understand this phenomenon, it is necessary to understand what is a blockchain fork.
In simple terms, a blockchain fork occurs when a single blockchain splits into two. There are two main causes of forks; namely a split in consensus and or an alteration in the blockchain’s existing protocols.
A split consensus only really applies to PoW blockchains, whereby two branch-chains are inadvertently created when two miners solve a block at the same time. This is resolved when the nodes on the network choose to recognize one block over the other abandoning the alternative branch chain. This often occurs within Bitcoin mining.
When a group of developers want to implement a change to the blockchain’s protocols either for the reasons stated in the introduction or for other functionality or structural improvements, they require the consensus and cooperation of all nodes in the network to simultaneously update the new software. This will then cause the blockchain to alter its current functioning and course from the existing blockchain. In this way, two branches come to extend from the original chain; namely, the new one and the old branch that still operates according to the original protocols.
What is the Difference Between a Soft and Hard Fork?
A soft fork utilizes a protocol that is backward-compatible with the existing blockchain protocol. This means that protocol rules are tightened, such that the new rules fit within the old rules. This effectively allows people to keep running the old protocol on their nodes, while the new protocol is deployed on the same chain. The legacy blockchain is forward compatible with the new soft-fork rules, which means users do not have to adopt the new features of the fork and can remain on the same network. This also means that nodes running the older version of the protocol can accept blocks mined just as nodes using the newer version of the protocol.
A hard fork is the opposite of a soft fork insofar as it loosens rules to the point at which the older protocol cannot operate within them. Previous protocol rules are incompatible with the new ones – the new rules are not backward compatible – forcing users to adopt the new rules. Those who do not like the new rules, effectively remain outside of the forked chain, which means that this type of fork generally results in the generation of a new coin through the split. This happens because a large enough consensus for such a drastic change of rules, is very difficult to achieve. This leaves enough nodes running the older protocol, which means they will not be able to accept blocks mined under looser rules.
Hard Fork Dividend
When a hard fork occurs, and a significant number of nodes remain on the old chain, the old coin effectively remains alive. Both the legacy chain and the fork must then secure enough mining resources to avoid problems like a 51% attack or the collapse of the system due to a transaction overload. Nevertheless, given that the legacy blockchain and the forked version share the same origins, all the transactions recorded by the legacy chain up until the hard fork occurs are recorded on the forked chain. This means that holders of coins on the legacy chain can “split” their coins and get the same amount of legacy coins they held up until the hard fork, on the newly forked chain. This is how individuals who owned Bitcoin at the time of the UASF were able to claim BCH once those who opposed SegWit forked the chain.
Further Ramifications of Divergent Chains from a Hard Fork
The hard fork that created BCH resulted in the same kind of ‘dividend’ that Ethereum holders got when Ethereum implemented its own hard fork and Ethereum Classic was created. This process involves a great deal of politics, and often it makes it hard for users to know which chain is the ‘real’ one. Roger Ver has used this confusion to promote BCH as the ‘real Bitcoin’ which is a deeply dishonest approach. This approach has led many to inquire about the possibility of launching a lawsuit against Roger Ver for misleading new users.
Another problem that arises from hard forks stems from the fact that these new branch-chains are being created in parallel, as they share the same parent-chain. This means that it is possible for them generate similar wallet-addresses. Accidentally inputting the wrong wallet address for the wrong cryptocurrency, can result in the loss of coins. These kinds of Bitcoin losses have been known to happen with BTC and BTH holders.
Not all forks are as contentious. Some might even occur without most people ever noticing. This is the case of inadvertent forks. During the Bitcoin mining process, miners are competing to resolve the algorithm in the current block to enjoy the Bitcoin rewards upon its completion. However, it is possible for two miners to solve the algorithm simultaneously. When this happens, a brief split occurs in the blockchain, with a byproduct of two new branch-chains in which some nodes accept the block mined by one miner and other nodes accept the block mined by the other miner.
To avoid the rabbit-hole of never-ending new blockchain branches with conflicting records and data-shares, Satoshi Nakamoto programmed a solution into the Bitcoin Blockchain’s base protocol. Nakamoto’s solution is for the longest chain after the contentious block to be taken as the legitimate blockchain, while the other one dies. The other branch-chain and the tokens created with the original block on that chain, would be invalidated, in a process through which the longest chain after the contentious block is mined, survives.