top of page

Bitcoin forks: Upgrades and radical blockchain changes



Learn how Bitcoin forks can lead to code improvements and create new blockchains like Bitcoin Cash.



SUMMARY


A fork occurs when a blockchain is split into two blockchains. This type of split in a blockchain network occurs when an update is made to the blockchain protocol, but not all network participants, called nodes, agree to it. There are two main types of forks on blockchains: soft forks and hard forks. In this article, we will learn why forks occur and what the difference is between a Bitcoin soft fork and a Bitcoin hard fork.



CONTENT

  • What is a blockchain fork?

  • What is a Bitcoin fork?

  • Why are there Bitcoin forks?


WHAT IS A BLOCKCHAIN FORK?


To understand blockchain forks, it is helpful to first discuss the structure and function of blockchains. Cryptocurrencies are based on a revolutionary technology called the blockchain, which acts as a decentralised, public ledger for transactions. When cryptocurrency transactions take place, they are grouped in what is called a block. Then one new block after another is processed or verified and added to the blockchain sequence - creating a chain of blocks.


In traditional banking, when you transfer money from your account to your friend's account, the bank acts as a central authority, debiting the money from one account and crediting it to another account to ensure that the sender has enough money to complete the transaction. With the blockchain, the administrative authority is decentralised. The network participants, called nodes, have to review new transaction blocks individually and reach a network consensus on the new distribution of funds.


Nodes play an important role in verifying new transactions and ensuring that the funds end up where they belong without being spent twice, also known as double-spending. The nodes of a blockchain network are responsible for carrying out this particular verification process, which is governed by the network protocol. In other words, the Bitcoin network is the sum of all decentralised nodes running the Bitcoin protocol.


When a protocol is updated, the individual nodes update and accept the new changes. If some of the nodes reject the changes, a crypto fork occurs. Sometimes the update in question is more or less optional, sometimes it is mandatory. The optional fork is called a soft fork, the mandatory fork is called a hard fork.



WHAT IS A BITCOIN FORK?


Network scalability issues are a good opportunity to clarify the difference between a Bitcoin soft fork and a Bitcoin hard fork. Around 2015, Bitcoin was struggling to scale its transaction capacity to keep up with the rapid growth of its user base. As more and more users exchanged Bitcoin (BTC), the network became overloaded with larger and larger transaction volumes, which ultimately slowed down the overall processing time. There were fears that it could take days or weeks for Bitcoin transactions to be settled if nothing was done to speed up the process. This slowness of the network could also lead to users having to pay higher fees to speed up transactions. Neither scenario was ideal, and this became known as Bitcoin's scalability problem.


One of the proposed solutions to the scalability problem was called Segregated Witness (SegWit). SegWit works by decoupling the signature data - the proof of ownership for a particular cryptocurrency - from the Bitcoin transactions and arranging this data more efficiently in each block, thus increasing the transaction speed. SegWit is a so-called soft fork and not a hard fork. Soft forks occur when a change to the protocol software does not disrupt the core operation of the network.


Since a soft fork is a non-mandatory update, each node in the network can decide whether or not to update its copy of the protocol, and in either case, all nodes in the network can continue to interact with each other. For example, Bitcoin's rejection of the SegWit update did not result in a new blockchain or a new cryptocurrency (unlike the hard fork that produced Bitcoin Cash, which we will discuss later). The nodes that accepted the SegWit protocol update continue to use Bitcoin software that is compatible with the nodes that did not accept the update. A soft fork is backwards compatible.


In contrast, a hard fork occurs when the update is so fundamentally different from the previous version that the protocol is no longer backwards compatible. A notable example is the Bitcoin Cash (BCH) hard fork that occurred in August 2017. The BCH Hard Fork aimed to solve Bitcoin's scalability problem but took a very different approach to SegWit. In 2017, some of Bitcoin's core developers wanted to increase Bitcoin's maximum block size from 1 MB to 8 MB. The 8MB update meant that most nodes configured and equipped to mine a 1MB block size could not quickly and cheaply upgrade to 8MB blocks. This discrepancy led to a philosophical split in the Bitcoin community. Instead of trying to force an upgrade of the existing protocol, a hard fork was performed and a new cryptocurrency - Bitcoin Cash - was introduced.


In a hard fork, the nodes that accept the update are migrated to a new blockchain. The coins on the new blockchain that are awarded to successful miners are separate and unique from the original coins. When Bitcoin Cash was created, a separate Bitcoin Cash blockchain was created with its own cryptocurrency, BCH.


In a hard fork, the blockchain is completely duplicated before the fork event, which means that everyone who owns the original cryptocurrency receives the same amount of the new cryptocurrency. In the case of the Bitcoin Cash hard fork, this is exactly what happened.



WHY ARE THERE BITCOIN FORKS?


Forks can occur accidentally, but it rarely happens. An accidental fork occurs when two miners mine a block at almost the same time. This type of fork is resolved by adding more blocks. When one of the two blockchains becomes longer than the other, the network abandons the shorter chain, whose blocks are then called orphan blocks.


Sometimes an intentional fork is performed to repair or resolve the history of a protocol in response to a catastrophic bug or hack. In 2016, for example, a third-party application on the Ethereum blockchain (known as DAO) was hacked and millions of Ether (ETH) were stolen. To erase the hack from the Ethereum ledger - and thus return the money to the original owners - Ethereum developers introduced a hard fork. The newly created ledger that removed the hack and returned the stolen Ether became Ethereum's "main" blockchain, and a version of the ledger that contained the hack became the Ethereum Classic (ETC) blockchain. While the majority of users, e.g. those affected by the hack, preferred the version of Ethereum that deleted the hack, some users preferred to continue using the original ledger in the form of ETC - in many cases out of a strong belief that blockchains should remain immutable.


Most often, intentional forks arise from a community's proactive desire to add a new feature or drastically change or improve the functionality of an existing blockchain. In the case of the Bitcoin Cash hard fork, the desire to drastically increase the network's ability to verify transactions faster was the main driver. This concern is reflected in the structure of BCH: the block size was increased and the transaction speed accelerated. Everything else about the Bitcoin protocol was still considered desirable. So instead of creating a new blockchain from scratch, BCH's creators instigated a hard fork that made the desired changes to the block size but left everything else in BTC's original structure. Similarly, many other cryptocurrency projects have emerged as hard forks from the code base of major cryptocurrencies such as Bitcoin, Ethereum, Dash (itself a Bitcoin fork) and others.

Comentários


bottom of page