What is a Hard Fork?
A hard fork is an extreme break from a previous protocol on a blockchain that renders invalid blocks valid, or valid blocks invalid. Because of this, all nodes need to upgrade to the newer version of the protocol software, or else mining will be impossible. Hard forks mark a dramatic split from one blockchain to two – the ‘legacy’ chain, and a brand new one, often leaving one branch of the chain ‘orphaned,’ or unable to continue.
What are Blockchain Forks and Why Do They Happen?
Blockchain forks usually occur for one of two reasons. First, there are accidental forks. These typically occur when miners use different versions of the same mining software, thereby creating two separate ledgers. Thus one node is running an old protocol and another node is using the newer protocol.
In an accidental hard fork, one node verifies a block of invalid transactions, and other nodes try to build on top of this one when they shouldn’t. Two chains are created–one based on the old rules, the other on the new rules. When this happens, developers need to find a way to fix the bugs and patch the chains.
The second reason blockchain forks occur is because one party wants to make changes to the blockchain’s infrastructure or code. This usually relates to its transaction history or wanting to create new rules for determining what constitutes a valid transaction.
In this case, one group decides to create a new rule, thereby creating a new blockchain. The second group is left with the original blockchain and its original protocol.
What is the Difference Between a Hard Fork and a Soft Fork?
Blockchain forks can be classified as soft forks or hard forks. The difference lies in the nature of the split. In a soft fork, the update is backwards compatible. This means older versions of the software can still recognize new blocks. Soft forks typically have a much smaller effect on the network, because users with older versions can still operate as is.
Hard forks are updates that are not backwards compatible. As a result, all users must update their software, or else they won’t be able to participate in the blockchain. Users with old versions of the software simply won’t be able to recognize and mine new blocks.
A Brief History of Bitcoin Hard Forks
To date, Bitcoin has had five hard forks, each derived from Bitcoin Core, the original software published by Satoshi Nakamoto. When the word “Bitcoin” is thrown around, the reference is to the original coin, not the forks described below.
The first fork, Bitcoin XT, was initially released on August 15, 2015. The fork was supposed to increase the block size to eight megabytes, then double it every two years. It didn’t gain the support it needed by early 2016, and its use has been slowing dramatically since then.
The second fork, Bitcoin Classic, had its stable release on January 5, 2017, about ten months after the initial release. Like Bitcoin XT, Bitcoin Classic was an attempt to scale the blockchain, though less aggressively. The fork eventually morphed its objectives and was terminated on November 10, 2017.
The third fork, Bitcoin Unlimited, went live on May 11, 2017 and allows users to determine a suitable block size limit. This limit must have a majority consensus to set a block size value.
The fourth fork, Bitcoin Cash, is the most popular fork. It went live on August 1, 2017 and has caused a small civil war among Bitcoin enthusiasts. The key feature of the update is that it implements a block size increase to eight megabytes versus Bitcoin’s one. This fork represents a segment of the cryptocurrency community that wants to see digital coins compete primarily as mainstream currencies and payment mediums rather than digital gold (though they believe Bitcoin has value as an investment as well).
The fifth fork was a unique fork called a ‘soft fork’, which increased the capacity of each block of transactions by dividing the transaction details from the ‘witness’ of the transaction, and packaging the witnesses together into more space-conservative bundles. This fork was called ‘SegWit’ by Bitcoin insiders, and was activated August 24, 2017.
The last and most recent fork, Bitcoin Gold, took place on October 23, 2017. The goal of this fork is to allow people with less powerful machines to mine, thereby further decentralizing the network and expanding the blockchain’s user base.
Fork Name | Fork Date | Fork Type | Description and Outcome |
---|---|---|---|
Bitcoin XT | August 15, 2015 | Hard | Attempted to increase block size, didn’t reach consensus. |
Bitcoin Classic | January 5, 2017 | Hard | Attempted to scale the blockchain, but changed its objectives and was closed on 11/10/2017 |
Bitcoin Unlimited | May 11, 2017 | Hard | Allows users to determine a suitable block size limit. Required majority consensus. |
Bitcoin Cash | August 1, 2017 | Hard | Implements a block size increase to eight megabytes versus Bitcoin’s one. Increased transaction speed. |
SegWit Implementation | August 24, 2017 | Soft | Segregated Witness (SegWit) divides each transaction between the data and the witness for it. |
Bitcoin Gold | October 23, 2017 | Hard | Allows people with less powerful machines to mine, thereby further decentralizing the network and expanding the blockchain’s user base. |
A Brief History of Ethereum Hard Forks
Like Bitcoin, Ethereum has had five hard forks to date.
Homestead was the second major version of the Ethereum platform and its first production release. It provided the ability to do further network upgrades. Homestead launched on March 14, 2016.
The DAO hard fork had one primary function–to return all the Ethereum taken from The DAO (the Decentralized Autonomous Organization) to a refund smart contract. The hard fork took effect on July 20, 2016.
The Tangerine Whistle fork was in response to a denial of service (DoS) attack that hit the Ethereum blockchain. The goal was to fix urgent network health issues caused by the attack. This hard fork launched on October 18, 2016.
The Spurious Dragon fork can be thought of as the “Part Two” of the Tangerine Whistle fork. The Spurious Dragon fork addresses less important security measures like further tuning operation code pricing to stop DoS-like attacks from happening again. The fork occurred on November 22, 2016.
The fifth and most recent fork, Byzantium, implemented a batch of Ethereum improvement protocols to help the network run smoother. Most of the changes are minor; however, more prominent upgrades include better handling of faulty codes within smart contracts, stabilizing blocks times, and decreasing the reward miners receive to make the process faster and cheaper. This fork took place on October 16, 2017.
Fork Name | Fork Date | Fork Type | Description and Outcome |
---|---|---|---|
Homestead | March 14, 2016 | Hard | Ethereum’s first production release; provided the ability to do further network upgrades |
DAO | July 20, 2016 | Hard | Returned all the Ethereum taken from The DAO (the Decentralized Autonomous Organization) to a refund smart contract. |
Tangerine Whistle | October 18, 2016 | Hard | Launched in response to a denial of service (DoS) attack that hit the blockchain; fixed urgent network health issues caused by the attack. |
Spurious Dragon | November 22, 2016 | Hard | “Part Two” of the Tangerine Whistle fork. This one addressed less important security measures. |
Byzantium | October 16, 2017 | Hard | Implemented a batch of improvement protocols to help the network run smoother |