Telegram (FREE): t.me/CoinEducation
Help me get rich by giving me 50 claps every time you give me applause on Medium. It’s entirely free and all you have to do is hold down the clap button. Thanks!
— — — — — — — — —
If you’ve been a member of the cryptocommunity for more than a couple of weeks, you’ve probably heard the term ‘hard fork’ thrown around. A lot of people may be wondering, what does that mean exactly? Perhaps you’ve heard of the most popular hard fork, Bitcoin Cash, and you’ve gotten a brief idea of its meaning. The goal of this article will be to simply the concept of a ‘hard fork’ in an easy to understand manner and help you dissect and digest the different hard forks that exist, what they mean, and how they happen. It will also attempt to provide at least a part of the history of how Bitcoin Cash came to be. Please keep in mind, there are no saints in this story.
This article will also do its best to present the definition of a hard fork in the most nonbiased manner possible.
Hard Fork Definition
The formal definition of a hard fork in blockchain is, “…a permanent divergence from the previous version of the blockchain, and nodes running previous versions will no longer be accepted by the newest chain.” (Source: https://www.investopedia.com/terms/h/hard-fork.asp )
Unfortunately, it’s not quite that simple.
So, let’s take it back to the basics for a moment:
The fundamental concept of blockchain technology as created by Satoshi Nakamoto when he was making Bitcoin is that decentralization would occur via a distributed ledger. So, in other words, everyone on the network would have a copy of all the transactions that were made. If Jim sent 10 coins to Sarah yesterday, everyone would possess this information.
People obtained these copies by running a node. A node is a connection point. Basically, to set up a node, one would just download the necessary software and connect to the Bitcoin network. Once connected, nodes receive an updated version of the ledger with ALL of the payments ever made. All of these transactions are stored on something called a blockchain.
The rules of the chain are enforced by full nodes. This is an important fact to remember when examining and studying hard/soft forks and their occurrences. Miners are free to mine any type of blocks that they want, it is up to the full nodes to validate those blocks. However, if there is just one full nodes or even a small percentage of full nodes that validate blocks that a majority of miners are mining on, then there is an imminent risk of a chain split.
Another critical piece of information one must understand to really ‘get’ how hard/soft forks are created is the fact that full nodes are needed to enforce consensus rules on the blockchain. If miners choose to mine blocks that do not abide to these rules, then the full nodes will reject the block.
There is also a difference between consensus and consensus rules. Consensus merely refers to the adherence of nearly-all full nodes to the consensus rules of the network.
Below are some of the consensus rules on the Bitcoin network:
· Block Size
· Proof of Work
· Bitcoin Reward per block
And many more…
So How Do Hard Forks Occur?
The concept of a hard fork is somewhat similar to that of a software fork. However, the implications for Bitcoin are a bit more pronounced. Check out the graphic posted below:
This is a good, basic example of what a blockchain should look like conceptually. It is linear, so order is extremely important here.
Bitcoin was designed with a specific code by Satoshi (founder of Bitcoin) and others, which dictated the consensus rules that were discussed above. Every block that is added to this ‘chain’ abides by said rules.
A hard fork occurs when these consensus rules are expanded through different software. For example, when Bitcoin Cash was created, it loosened the rules on block size, making it a hard fork. SegWit is an example of the rules being constricted. So, a restriction of the block size would represent a soft fork.
See below to get a better visual conception of how this process manifests itself:
As stated in the definition in the beginning, this divergence is permanent and there is no longer any compatibility between the two.
Generally, there are two different ways which a hard fork can occur. It can either be:
As their names suggest, both entail entirely different things. A planned hard fork means that the creators/developers were all in agreement as to how the coin would be forked. When this occurs, there is no split in the chain. This is because all of the nodes have agreed to upgrade to the latest version of the coin’s client that possesses the rule change. There will be a split in the chain if all nodes do not adhere to the new rules set by the hard fork implementation. This chain will more than likely die off without enough economic support. Therefore, planned hard forks are usually under little to no threat unless there is an invisible negative sentiment, which is an unrealistic scenario.
If there was disagreement in the community about the path of a coin, like Bitcoin, for example, then a contentious hard fork would occur. The most notable example of this is the creation of Bitcoin Cash, which we will cover in greater depth within this article. Given the nature of blockchains, hashing power, and hard forks, there must be a fair amount of support for the hard fork for it to be economically viable in the long-term.
Hard-forks, by definition, are always incompatible with the original chain. Thus, a hard fork will always be irrevocable and permanent. However, it is worth noting that the original chain will always be compatible with the hard fork chain by definition.
Typically, when a contentious hard fork occurs, there is a split within the community that takes place where some of the nodes on the network that were mining on the previous chain decide to mine on the new chain.
Below, is a great graphic that gives a visual of what this would look like:
Hard Forks Pose a Systemic Risk to Bitcoin
As you can see in the graphics above, when a contentious hard fork is created, there are two running versions of the blockchain. Ultimately, this is something that any coin would inherently want to prevent at any and all costs for the following reasons:
· Blockchain reorganization
· TX being confirmed by the wrong chains
· Political/Social Turmoil Within the Community Regarding the “Real” and the “Fake”
And many others…
Another facet of hard forks, which is a bit more complex to explain, is that users will receive “free” coins. However, since everything is digital in nature, this is a phenomenon that’s hard to create an analogy for in an accurate way. Essentially, when a hard fork occurs, all previous TX made on that chain are considered legitimate. Even future blocks that are created with legacy rules would still be considered legitimate, technically (unless otherwise coded to not accept any of the legacy blocks). Therefore, money that one prior could be spent on the hard fork ledger as well as the original ledger simultaneously — effectively, giving one “free” coins.
What’s the Current Status of Previous/Impending Hard Forks for Bitcoin?
Technically, the earliest Bitcoin hard fork occurred in 2013. However, this was a planned hard fork and not meant to be contentious.
However, our goal in this section will be to give an overview of all contentious hard forks that occurred, cover their proposed changes, provide the logic behind said changes, and explore their resulting impact, if any.
#1 — Bitcoin XT (2015) — BIP101
In many ways, Bitcoin XT served as the prelude/buildup to the eventual Bitcoin Cash hard fork. The manifestation of the Bitcoin XT hard fork was borne out of the age-old debate in the Bitcoin community regarding scalability. As many in the community had noted as early as 2010, the usability of Bitcoin would be threatened without some tangible change to the consensus rules.
Philosophically and technically, this argument elicited a variety of different viewpoints, arguments, and criticisms. Some individuals felt that the best way to increase the scalability and usability of Bitcoin would be to increase the block size. If you used Bitcoin in December of 2017, you probably noticed that the fees were exorbitantly high. The reason for this was because there was not enough room within the blocks for miners to include all the TX that were being sent to the network. This meant that increasingly higher fees had to be paid in order to incentivize the miners to include one’s TX to be included. In some cases, TX fees needed to be in excess of $20 if one wanted a realistic opportunity to have their TX confirmed.
Many in the Bitcoin community saw the inevitability of this fate years prior. Thus, many had advocated for an increase in the block size. However, there were was a stronger segment of the community that was against such increases. This increase, they argued, would harm the stability of the network because it would reduce the # of full nodes on the network.
Why Would They Think That?
This criticism was actually noted directly in the BIP101 through the statement:
As noted earlier, only full nodes can validate blocks. By increasing the block size, one must also increase their computer/device’s memory and technical capacity. Opponents to the increase of Bitcoin’s block size argued that this increase in capacity would reduce the number of full nodes on the network, subsequently making the network less secure.
Below is an image detailing the requirements necessary to run a full node:
Proponents of the increase in block size argued that the increase in technology over time would mitigate these necessary increases in computing power and network capabilities of those who wished to run a full node.
Bitcoin XT was launched before the Bitcoin network had truly reached a boiling point on this issue.
Mike Hearn, the most outspoken advocate for the increase in block size at that time, spearheaded the Bitcoin XT movement. However, Gavin Andresen also joined forces with Mike Hearn later on and they both partnered up to develop Bitcoin XT.
Who Are Mike Hearn and Gavin Andresen?
For those unfamiliar with those two names, both Mike Hearn and Gavin Andresen were instrumental in assisting the development of Bitcoin from its earliest stages. Gavin Andresen, whom is noted for a number of things, is perhaps most famous for being the last person that Satoshi ever talked to. Before Satoshi’s departure, Gavin, in many respects was the ‘point person’ for Satoshi in the weeks prior to his eventual disappearance. After Satoshi died, Gavin also took up the torch as the de facto ‘leader’ and ended up assembling individuals that would make the first incarnation of the ‘Core’ team.
Hard Fork Rules
According to another Howtotoken article that covered this issue briefly, the hard fork rules established by Bitcoin XT was an increase in the block size from the limit (still in effect) of 1 MB to 8 MB. However there are many other notable changes were introduced within the BIP101 as well. Namely:
· “The maximum size shall be 8,000,000 bytes at a timestamp of 2016–01–11 00:00:00 UTC (timestamp 1452470400), and shall double every 63,072,000 seconds (two years, ignoring leap years), until 2036–01–06 00:00:00 UTC (timestamp 2083190400).”
· “Deployment shall be controlled by hash-power supermajority vote (similar to the technique used in BIP34), but the earliest possible activation time is 2016–01–11 00:00:00 UTC.”
· “This BIP proposes replacing the fixed one megabyte maximum block size with a maximum size that grows over time at a predictable rate.”
According to Mike Hearn in his exit article from the Bitcoin world (which had a monumental impact on the community and signaled the “blowing up” point of this argument), he initiated the Bitcoin XT hard fork for the following reasons:
The reception from the community was poor at best. Mike Hearn summarized some of this community reaction in his exit article:
Brief research provides some strong evidence that any and all dissension against any block size increasing alternatives to Bitcoin was fiercely and aggressively attacked/shunned/condemned/ridiculed/excommunicated in the community. The vast majority of these measures were implemented by Theymos (longtime member of the community since 2010, runs the Bitcoin reddit, Bitcointalk as well as bitcoin.org). Here are some examples of this censorship below:
· Theymos threatens to remove Coinbase entirely from /r/Bitcoin on Reddit as well as the bitcointalk forums if it dares support Bitcoin XT (alternative chain created by Gavin+Mike with bigger blocks to test community support for the idea).
Ironically, at the time of writing, Vitalik issued a statement approximately 10–12 hours ago denouncing the censorship of different internet hubs that host Bitcoin as ‘deplorable’.
There were also multiple publications around the time of the hard fork release that reported that Bitcoin XT nodes and users were attacked en masse to disrupt the project.
However, to state that the community was devoid of support for Bitcoin XT would be inaccurate. There are numerous reports that attest to the relatively strong support behind the concept. Several corporations signaled their support for the project and many developers+miners were on board as well, in addition to Coinbase.
Without digging too much into unsupported theory, one could at least conclude that there was a segment of the Bitcoin community that not only strongly disliked the Bitcoin XT project, but possessed enough power to effectively impede the progress of Bitcoin XT.
As you probably guessed from everything that was stated above, Bitcoin XT was effectively destroyed. At the time of writing, there are only 11 Bitcoin XT Nodes in service.
If you look closely, you can see that there was very solid momentum at its onset, then the number of operating nodes crashed down by 60% before eventually being all but defunct by the middle of 2016, less than a year from implementation.
Despite the failure of Bitcoin XT, this did not discourage the community from attempting yet another hard fork of Bitcoin.
Mike Hearn actually alluded to this in his farewell piece:
Born in 2016, much of the same sentiment that manifested Bitcoin XT was also prevalent in Bitcoin Classic, as Mike Hearn noted above.
The website itself, www.bitcoinclassic.com, still possesses the coin’s original initiative. See the screenshot from the homepage below:
In terms of the developers, the site states:
· In terms of changes to the consensus rules, Bitcoin Classic introduced a more tempered block size increase of 2MB rather than the initial 8 MB proposed by Bitcoin XT.
· ‘Xthin-blocks’ was a new implementation that was designed to address the ‘block propagation’ issue still present in Bitcoin today.
Bitcoin Classic eventually introduced the idea of block-size voting, which relies on the principle of variable block size.
However, in the end, the project was shut down voluntarily in favor of advocating for the Bitcoin Cash project, which the development team states that it believes will fulfill Satoshi’s original vision as expressed in his whitepaper release.
Perhaps the most contentious fork in Bitcoin history is Bitcoin Cash. There are many different stories/legends/propaganda surrounding its release, so we’ll try to keep this as brief and factual as possible.
During 2017, the impending launch of SegWit (before August), had created a great deal of ire and resentment in the community overall among those that felt that the block size should be adjusted. This friction in the community led to the ‘New York Agreement’. This agreement, which would’ve been a hard fork to ‘SegWit2x’, was supposed to be a compromise between the two opposing sides of Bitcoin. The miners on the network agreed to cooperate with the SegWit implementation under the condition that the block size would at least be increased to 2 MB.
However, this did not happen. One reason is due to the fact that the Core team rejected the New York proposal. Also, two huge mining pools, ViaBTC and Bitmain, felt that it would be in their best interest to help propel the creation of a hard fork that would have the bigger block sizes already built within it and would not contain any SegWit implemtation.
Here is a press release from Bitmain on the hard fork.
Profits vs. Bitcoin
For miners, the profits between Bitcoin Cash and Bitcoin oscillate. At first, Bitcoin Cash was substantially more profitable due to a flaw in its Proof of Work difficulty-adjustment algorithm. However, that was changed in November 2017, and the profitability between the two cryptocurrencies are now largely negligible most of the time.
Overall, the contention that was described within this article still exists to this day. As stated in the introduction to this article, there are definitely no saints in this war.
Also, yes, I understand that there are aspects about the development of this warfare that were not covered. This is because I simply don’t have the drive to write an entire novel on this ‘crips vs. bloods’ war going on in crypto at this point.
I know that there’s bound to be criticism on both sides of the issue. I embrace it. Go ahead and let me know what you think at the bottom of the article where the responses go!