Major cryptocurrencies like Bitcoin (BTC) and Ethereum (ETH) are powered by a decentralized software called a blockchain. A fork is either a radical or minor change to the blockchain’s underlying protocol. A blockchain fork is an essential upgrade to the network. It can be initiated by either the community members or the developers.
A fork requires certain machines connected to the blockchain to help validate transactions on it. These machines are called node operators and help upgrade the fork to the latest protocol version. Every node has its copy of the blockchain, so it ensures that new transactions made on the blockchain do not affect or contradict its history.
A hard fork is a radical upgrade made to the blockchain’s protocol. This type of fork can make previous transactions and blocks either valid or invalid and requires that all validators in a network upgrade to a new version. A hard fork is not backwards-compatible. On the other hand, soft work is backwards-compatible and allows for validators in an older blockchain version.
With the hard fork, there is a permanent chain separation. This is because the old version is no longer compatible with the new version. This means that those holding tokens on the old chain are now given tokens on the new one because the history is the same. There are many reasons for a hard fork.
Hard Forks
To have a firm grasp of what a hard fork is, it is very important to first understand blockchain technology. A blockchain is a chain of data blocks that functions as a digital ledger. Each new block is valid in this chain only after the network’s validators have confirmed the previous one.
Essentially, a hard fork is a permanent separation from the latest version of a blockchain, which leads to a separation of the blockchain because some nodes are no longer in unison, and there are now two separate versions of the network.
This means that a fork is created when one path keeps following a set of rules while the second path follows a new set of rules on the blockchain. Because a hard fork is not backward comparable, the old version will not see the new one as valid.
As a result of the chain split that occurs when hard forks happen, they are seen as dangerous.
This is because a split between the miners who secure the network and the nodes that help validate transactions will cause the network to be less secure and vulnerable to attacks from every side.
A popular way to cause a hostile action against a blockchain is to perform a 51% attack. This is when a group of miners has over 51% of the computing power that secures a network, so they use it to alter the blockchain’s history. Many networks created because of hard forks have suffered this attack.
Hard forks also cause replay attacks. These attacks happen a hostile entity interrupts a transaction occurring on a forked network and repeats that data on another chain entirely.
Hard forks that do not have replay attack protection will see both transactions as valid. This eventually means someone can move another user’s fund without controlling them.
Causes of Hard Fork
If hard forks can cause insecurity to the blockchain, why do they happen at all? Hard forks are necessary upgrades to improve the network as blockchain technology evolves. There are many reasons for a hard fork; not all are negative. They include:
- To correct security risks
- To add functionality
- To reverse transactions that occur on the blockchain
- To resolve disagreements that may happen within a cryptocurrency community.
Hard forks could also happen by accident, although these incidents are resolved as soon as possible.
Accidental Hard Forks
Most accidental hard forks happen when two miners find the same block at about the same time. As consensus is being disturbed, the two miners originally see the block as valid. So, keep mining on different chains before they or another miner adds a subsequent block.
The added block automatically dictates which champion becomes the longer one, causing the other one to be abandoned. Miners move on to the longest chain because the abandoned one is no longer profitable because they would be mining a network fork.
The miner that found the abandoned block then loses coinbase and transaction fee rewards. Other accidental hard forks in the past were part of code issues that led to short-chain splits. These issues were resolved quickly before they became noteworthy.
Difference Between Hard Forks and Soft Forks
Soft forks are safer alternatives to hard forks because they are backwards compatible. This means that the nodes that do not upgrade to newer versions will still see the chain as valid.
A soft fork can be used to add new functions and features that will not change the rules that a blockchain must follow.
See the difference between hard forks and soft forks as a basic operating system upgrade on a mobile device or computer. In the case of a soft fork, all the applications on the device work with the new version.
In this scenario, a hard fork will imply a complete change to a new operating system.
Notable Hard Fork Examples
There are so many examples of hard forks in the cryptocurrency world. Not all of them happened with the Bitcoin blockchain. Here are some of them and their impact on the industry:
SegWit2x and BItcoin Cash
On May 23, 2017, SegWit2x was proposed to help upgrade the Bitcoin scale by implementing Segregated Witness and increasing the block size limit from one MB to two MB on the network. This was done through a soft fork, while the block size limit will be implemented through a hard fork later.
Small block proponents did not approve, saying that the larger blocks would make it difficult to host a full node that could centralize the cryptocurrency. Large block proponents argued that the rising transaction fees of BTC will affect its growth negatively.
User-activated soft forks are possible on Bitcoin’s network. Wallet operators, businesses, and exchanges that run in full nodes move to a new version of the blockchain, causing miners to fall in lime and activate the new rules. If they do not, the network could split.
Bitcoin users wanted a user-activated network. They wanted the implementation of the Bitcoin Improvement Proposal 148, which wanted to implement the SegWit on the Bitcoin network and claimed that it was a very contentious hard fork that would make the bitcoin network vulnerable to replay attacks.
It was released in March 2017 and was to be implemented on August 1, 2017.
The large block supporters feared that the SegWit2x pan would not be fulfilled and so decided to fork the Bitcoin blockchain on August 1, 2017. This resulted in the creation of Bitcoin Cash (BCH). These supporters did not see the split as a new creation but as the original version’s continuation.
The Bitcoin Cash hard fork made it possible for numerous other Bitcoin hard forks to be created. Examples are Bitcoin Gold (BTG), Bitcoin Diamond (BTCD), and others.
Hash rate Wars: ABC vs. SV
Bitcoin Cash, created in August 2017, led to the splitting into two networks. On the one hand, there was Bitcoin Cash ABC (BCHA), a development team that wanted to improve the technology behind it.
On the other hand, there was Bitcoin Cash SV (BSV), a team trying to raise the block size from 32 MB to 128 MB.
At block 556,767, the blockchain split in two, and the battle for the BCH ticker symbol started. Miners on both sides did their best to have a hash-rate advantage over the other. Some called for a 51% attack on the other network so its proponents would move to the other side.
Eventually, the Bitcoin Cash ABC came on top, having the majority of the hash rate and blocking the 51% attack attempts.
In conclusion, hard forks and soft forks are fundamentally the same in that when a platform’s existing code is altered, an old version remains on the network while the new one is created.
Only one blockchain will remain valid with a soft fork, while with the hard fork, the old and new exist side by side, meaning that the software will be updated to work by new rules. Both forks cause splits, but a hard fork creates two blockchains, and the soft fork creates one.
Furthermore, because of the differences in security between the two forks, most developers call for a hard fork, even if the soft work seems capable enough. This is because of the privacy that is to be gained from using a hard fork.