hard fork

When researching and learning about blockchain technology, you in all likelihood will come across the word ‘fork’ being tossed around. There’s a considerable amount of intricacy to the topic of forks. So, we’ve created this informational guide to help explain what forks are and what purposes they serve.

You may have noticed that there are two types of forks: ‘hard’ and ‘soft.’ While you might assume that there’s not much of a difference between the two, they actually possess many qualities that set both of them apart from each other.

This article will go over the broad spectrum of forks. It will primarily focus on the more notable one of the two, which is ‘hard forks.’

What’s the difference between the two types?

A hard fork is a serious change in a protocol. This change transforms blocks/transactions that were previously invalid into something legitimate, and vice versa. For this to work, all of the nodes or users must update to the latest version of the protocol software.

A hard fork is essentially a permanent divergence from the previous version of the chain, and any nodes who are still running the previous versions will not be accepted by the newest version of the blockchain.

This system of “nodes running older versions will not be accepted by the new one” is what basically creates a fork within the blockchain. One path follows the brand new and upgraded blockchain. The other path continues down the older and outdated path. After a certain period of time, it will get to a point where those who are still on the old chain will soon come to the realization that their version of the chain has become irrelevant. Thus, they will inevitably upgrade to the latest version.

What is the purpose of a hard fork?

A hard fork is often put into action for a variety of reasons. It could be as a means to correct dire security risks that are found in older versions of the software. Or, it could be to add functionality. Sometimes a fork happnes in order to reverse transactions. This was the case of the infamous DAO hack back in 2016, which you can read more about in an article I previously wrote called, “How to Audit a Smart Contract.”

Investopedia editor, Jake Frankenfield, drew on this incident to further explain how hard forks are implemented:

A hard fork involves splitting the path of a blockchain by invalidating transactions confirmed by nodes that have not been upgraded to the new version of the protocol software. Following the hack on the DAO, the Ethereum community almost unanimously voted in favor of a hard fork in order to roll back transactions that siphoned off tens of millions of dollars worth of digital currency by an anonymous hacker. The hard fork also allowed DAO token holders to get their ether funds returned to them.”

hard fork

What is a soft fork?

A soft fork is a change in the protocol wherein only blocks/transactions that were deemed valid are made invalid. Because the older nodes will identify the newer blocks as conclusive, a soft fork is fundamentally backward-compatible. Unlike a hard fork, the requirement for this particular fork is that only a majority of the miners must upgrade to enforce the new rules set by the protocol.

Reasons for a soft fork include when periodically adding new transaction types. These kinds of forks really need only the miners and the participants to understand the new transaction types. Soft forks can also happen during times of temporary deflection in the blockchain. This happens when miners utilize non-upgraded nodes, which in turn violates a new consensus rule that they were probably unaware of.

Frankenfield explains that:

Soft forks don’t require any nodes to upgrade to maintain consensus since all blocks with the new softforked in rules also follow the old rules, therefore old clients accept them. Soft forks cannot be reversed without a hard fork since a soft fork by definition only allows the set of valid blocks to be a proper subset of what was valid pre-fork. If users upgrade to a post-soft fork client and for some reason a majority of miners switch back to the pre-softfork client, the post-softfork client users would break consensus as soon as a block came along that didn’t follow their clients new rules. In order for a softfork to work, a majority of the mining power needs to be running a client recognizing the fork.

Summing up the differences between hard and soft forks

To sum up the differences, in a hard fork, the two versions of the software – the old and the new – are incompatible. In a soft fork, the two versions end up being compatible. So while both fork types conjure up two different versions of the software, the main differences lie with whether or not these versions are harmonious.

If you want an example of each fork, look no further than SegWit and Bitcoin Cash.

SegWit (Segregated Witness) serves as an example of a soft fork. It has actually already seen implementation on some of the bigger cryptocurrencies, such as Litecoin. The idea of it was to create a scaling solution for Bitcoin’s issue with blockchain size limitations. The answer was to allow more transactions per block so that it would increase the transaction speed.

The SegWit blockchain follows rules pertaining to non-SegWit. So this way, the non-SegWit software still recognizes transactions that show up with SegWit-activated software. As a whole, this particular soft fork is backward-compatible, as it should be given its fork type.

hard fork

Hard fork example – BitcoinCash

Bitcoin Cash is an example of a hard fork. The intent was to construct two different assets with value, in addition to wanting to have quicker transactions than Bitcoin. Following the occurrence of this fork, Bitcoin and Bitcoin Cash became two completely different cryptocurrencies and the chains are not compatible.

Not every hard fork for creating a new coin containing value. For example, the Byzantium hard fork belonging to Ethereum was a necessary upgrade to the software. With this specific hard fork, the older software (which includes both the blockchain and the token associated with it) should not be used following the activation block. In this sense, any Ethereum users that were running their own nodes had to update to the new software before the fork. That way, they could guarantee that they were accessing the newer chain.

The results you should expect

Now, let’s go over the conventional outcome of each fork. The results would generally be the following:

  1. One of the blockchains becomes the more dominant of the two. This will lead to the other blockchain possessing a low level of community adoption and/or value (as a side note, the use of “and/or” ties into the fact that some forks like SegWit and Byzantium do not result in two differing tokens, hence there only being a divergence in the overall adoption).
  2. Adoption of both blockchains. This is when the chains are co-existing and are operating as independent units alongside each other with a roughly equal amount of community adoption and/or value (SegWit is very much like this, as many users in the past year still run non-SegWit nodes).
  3. Adoption of both blockchains, but one is more popular than the other. This is when one of the two chains winds up becoming or even remaining the leading chain in regards to both the adoption and the value, but the second chain preserves a reasonable level of support from the community and value (Bitcoin Cash and Ethereum are notable examples of this).

The most common outcome

While any of these three cases can occur with a given fork, the third result has become the most common and has led to it being the more expected result of the bunch, especially with hard forks that create new digital currencies. Again, we bring up Bitcoin Cash and Ethereum (a fork of what we now know as Ethereum Classic) as prime examples of hard fork outcomes when we create two assets that contain a market value. Both chains do exist, but one is vastly more popular than the other and generally retains a higher value.

Likewise, a soft fork such as SegWit is customarily meant to be the second type of result. Comparatively, a hard fork like Byzantium is frequently set up to be the first type of result.

In conclusion, if at any point you find out that a coin is “forking,” it would be a wise idea to educate yourself so that you properly understand what the fork type is. If you are a casual user, you will not have to do a thing unless it is a hard fork that conjures up two different and incompatible blockchains/coins with value, not unlike the Bitcoin Cash fork. Now, if you are a miner or if you operate your very own crypto software, then you will need to make sure you stay up to date on announcements and changes to ensure that you are running the correct version of the software.

Free coins

Here is an interesting tidbit of information about hard forks: you can receive free coins from them. Anyone who had coins in their possession before a fork, and also during a fork, will technically have coins on both of the chains following the occurrence of the fork.

With the hard forks that create new assets, there is usually a snapshot date which is where a snapshot of the ledger is captured. The snapshot transpires at a specified block number, with that block number being a vital component when it comes to forks and the calendar date is only significant for understanding when the block number initially occurred.

What if someone wishes to “be in for the fork,” and thus receive ‘free coins’? In that case, it’s imperative that they have their transaction added to the blockchain (i.e. the distributed ledger) before the ‘snapshot block’ takes place. It it is not necessarily required to hold onto the original coin once the snapshot has transpired.

hard fork

Regarding cryptocurrency

If you want to look into forks through a more technical perspective, then they are essentially a change in code. In a way, it is kind of similar to the all too familiar “fork in the road,” but in this case, it’s for the code.

In relation to cryptocurrency, a soft fork is a minuscule change in the software. Not all of the nodes will need to update. By contrast, a hard fork describes a major modification to the blockchain protocol. This type of fork can change the way in which a crypto network operates. For example, it may include changes such as rolling back transactions, changing the way mining carries out, and many others. This often applies when we want to keep the same coin with sizable changes made to the blockchain. Alternatively, it could help to build a brand new coin.

Hard forks need all of the nodes to upgrade to the most recent versions of the software if they wish to:

  • Use the new coin or chain
  • Preserve the currently running protocol if they want to still use the old coin or chain
  • Run two disconnected versions of the software if they want to conduct both

As you probably already know by now, hard forks are what make the old and the new chains incompatible.

Branching off

The inevitable conclusion that comes from a coin “forking off” in order to form its own blockchain or currency is that there are two of everything. This means that there are two different coins with two different ledgers (starting from X block and proceeding onward) and two different sets of code, both initially produced from the exact same platform and blockchain.

In the cases of forks like SegWit, every user (ideally) updates to the most recent software, and despite the fact that some may not like the system, it still functions properly. With Bitcoin, it remains the same and the update is largely optional. In regards to forks like Bitcoin Cash, two differing coins and chains (from X block onward) run, beginning at any given block, and the two chains are incompatible.

HODL

Let’s first briefly dig deeper into the term ‘HODL’ and the concept behind it. Because it ties into what is going on in relation to forks.

HODL is a phrase that first came into existence in 2013 on a Bitcoin forum. A member by the name of ‘GameKyuubi’ wrote in a thread, “I AM HODLING.” It initially started off as nothing more than a typo. But over time the misspelled word garnered more attention. Eventually, it went on to become the acronym – or rather a ‘backronym’ – for “Hold on for dear life.”

Since the original posting, the term has become increasingly popular throughout both the Bitcoin community and in the cryptocurrency world altogether. You might see the term in situations where an individual mentions in a conversation that they are ‘hodling’ or suggests to ‘hodl’. What they mean by this is that they think that their coin will one day be deemed profitable. Even if it’s not profitable right away.

Anyhow, when a cryptocurrency forks, it is definitely an ideal move for you to be holding that particular cryptocurrency in a digital wallet. The reasoning behind this is that those exchanges and wallets belonging to a third party have to go through a great amount of work in order to credit their users, whereas an individual who possesses their private keys can easily do the work all on their own.

To put simply, YOUR keys equate to handling YOUR coins. But employ a third party platform and you are then completely dependent on them to credit you for the fork.

Third parties

If you do decide to utilize a third party service, here are some things to note. Some exchanges and third party wallets are more competent than others when it comes to the subject of forks. Each functions a little differently. However, the Binance cryptocurrency exchange is among the more solid examples of a platform that has a strong history of crediting users for forks.

hard fork

Many people consider Binance the idea choice for forks. On this platform, services include giving credit for forks while also enabling crypto-to-crypto trading. They supply users with these options plus extremely low trading fee. Although this platform is still in its infancy, it has fortunately been rapidly growing over time. In fact, it already holds a huge selection of altcoins with Bitcoin, Ethereum, and Tether pairings.

Moreover, Binance provides its own coin – known as BNB – and because this is a centralized exchange, you are able to get decent discounts while overseeing trade with their token. It is an overall cheap system and it has an omnipresent platform that can be used worldwide.

How to create forks

With the topic of crediting users for forks still fresh in our minds, let’s transition into explaining how to create hard forks and other forks.

To start off, any update on a coin’s software (or at the very least, those that are controlled in a democratic manner like Bitcoin) generally requires some form of consensus.

When it comes to developing a fork that updates the existing software that everyone is using, it will require majority support (the consensus) from the coin holders (technically the ‘nodes’) linked to the network of the coin. Those nodes will have to collectively agree to the update and then revise their software accordingly. It is possible for this consensus to come principally from miners and mining pools. This is because in relation to most users, they tend to command many nodes.

With that in mind, forks really only require consensus in terms of an update. Now in terms of merely creating a fork rather than adopting it, pretty much anyone can copy and paste the code belonging to a coin and alter it. In essence, they would be creating either type of fork for users to potentially embrace. Strictly speaking, any developer who is in possession of the necessary skills have the chance to decide whether to fork Bitcoin or conceive a unique copy of Bitcoin.

Getting support from miners

Making that decision is the easy part, however, the tricky part is garnering the proper support from miners, exchanges, and users who download and set up a wallet and also both use and trade the coin. Without the much-needed support from miners and users, a functioning blockchain would cease to exist, hence the birth of the term, “User Activated Fork.” Moreover, without the support from exchanges, this means that there will likely be little to no value for the new token.

In this sense, a single cryptocurrency consisting of a single blockchain (much like Bitcoin) can experience a proper ‘hard fork’ (like Bitcoin Gold and Bitcoin Cash) when the code is either…

  1. …modified to create a brand new coin.
  2. …fully embraced by enough miners, users, and exchanges for there to be a feasible and functioning alternative.

A fork of this fashion can occur for pretty much any reason. It may be to produce and innovate (which is the case of Bitcoin Cash). Or maybe it’s for repairing the damage that a hack causes (the case of this being Ether). Another reason is that it’s because a consensus was unattainable for a soft fork (which was, to a certain extent, the case with Bitcoin Cash and also sort of the case with SegWit2x).

Conclusion

Forks are a recurring aspect in blockchain technology and cryptocurrency. For that reason, it’s important to understand their purpose. Moreover, it helps to know how to recognize what makes a hard fork a separate entity from its soft fork counterpart.

hedge fund