Bitcoin Cash was born as a result of a long standing and often contentious disagreement within the Bitcoin community over how to scale the blockchain. Scaling, in the context of Bitcoin, means increasing the maximum number of transactions the network can handle. The debate centered around finding the best way to do so. After years of deliberation the differences between the different camps proved to be irreconcilable.
The history behind the eventual split in the Bitcoin community is highly complex and contentious. The arguments are long, the characters are many, and the events are rife with a multitude of interpretations. As a wallet who services users of both chains we don’t take a definitive side. Many of us in the company have differing opinions on the topic and have had great internal discussions over the years about this very issue. This post is intended to illuminate, as concisely as possible, for our users the key differences between the two communities’ perspectives and approaches.
The source of the disagreement stems from a single number known as the block size limit. The limit constricts the amount of transactions that can fit in to each new block on the Bitcoin blockchain. At its inception Bitcoin didn’t have a block size limit but Satoshi Nakamoto quickly added one due to security concerns brought up by fellow cypherpunk and the first recipient of Bitcoin, Hal Finney. The limit chosen, 1 MB (megabyte), was somewhat arbitrary and was chosen at a time when there was very limited activity on the Bitcoin blockchain and Bitcoin had very little to no market value.
Satoshi and Finney knew the cap placed on the blocksize would limit Bitcoin’s scalability. The blocksize limit was put in place to ensure the security of a young, vulnerable, and revolutionary open source software project. The tradeoff for this added security was limited transaction throughput.
Over time there were more and more calls by developers and others involved in Bitcoin to raise the 1 MB limit, but achieving consensus on the efficacy of the change or even consensus on how the change should be implemented proved to be extremely difficult.
Bitcoin is hard to change by design. Those who propose changes have an overwhelmingly uphill battle even if they have majority support, which in and of itself is hard to measure. The status quo of 1 MB blocks in Bitcoin has remained intact, resisting the many attempts to increase the blocksize limit.
One of the key reasons for the resistance to an increase in the blocksize were concerns about the adverse effects on non-mining full nodes. These nodes keep a full copy of the Bitcoin blockchain and check that every new block and transaction follows Bitcoin’s consensus rules. Increasing the blocksize would increase the resources and thus the costs of running a full node. This would theoretically push off node operators with less economic resources, something many in the Bitcoin community wanted to avoid.
Here, at the level of the non-mining full node, we can see the tradeoff many in the Bitcoin community are willing to make and the differences in priorities between the two camps. The Bitcoin community wants to make sure as many users as possible can run a full node, allowing them to validate their own transactions and participate in the governance of the network. Bigger block-sizes allow for greater transaction throughput but would raise the barrier of entry for users who would like to keep a record of the Bitcoin blockchain and validate blocks and transactions.
The Bitcoin community actively encourages users to run their own full node and want to keep the resource barrier of running a full node as low as possible for as long as possible. The current community believes full nodes add to Bitcoin’s ethos of peer to peer decentralization which is often associated with increased security and trustlessness. Many in Bitcoin argue that non-mining full nodes act as a powerful check on the power of miners and developers who might behave in ways perceived as deleterious to the network.
The Bitcoin community has its own answers for increasing transaction throughput without increasing the block size directly. Their preferred approach has been optimization of the space already available in each block, with solutions like segregated witness and signature aggregation, as well as“off-chain” scaling solutions like the Lightning Network which act as a separate layer that anchors to the main Bitcoin blockchain.
After years of unsuccessfully pushing for a blocksize increase within Bitcoin prominent early adopters, investors, miners, and developers hard-forked away from the legacy Bitcoin blockchain with a 8 MB blocksize limit creating an entirely separate blockchain. This immediately gave Bitcoin Cash a substantial increase in potential transaction throughput over the legacy Bitcoin blockchain.
The Bitcoin Cash community has an entirely different perspective on the usefulness of non-mining full nodes which can be said to be the main source of tension between the two groups. Many in the BCH community think these full nodes add very little value to a cryptocurrency network and the increased throughput of the base layer is worth the increased cost to the individuals validating it. In addition many in the BCH camp argue that many of these full nodes are not working at full capacity on the Bitcoin network and can easily handle bigger blocks without being pushed off the network. The general critique is that the Bitcoin community is being too conservative.
During periods of heavy use, blocks can fill up and transaction fees can become quite expensive due to high demand for block-space and limited supply of that space. The current Bitcoin community wasn’t as worried about high transaction fees as those that now make up the Bitcoin Cash community. During periods of high transaction fees, something Bitcoin experienced in 2017, we can see the difference in priorities and consequently the tradeoffs willing to be made by either camp. The BCH camp was willing to raise the barrier to entry to run a full node in order to keep the cost of sending a payment as low as possible. Bitcoin Cash proponents want to make sure there is plenty of blockspace available for transactions reducing the probability of high fees for users of their network.
The Bitcoin Cash community promotes the approach of “on-chain” scaling given the continued observance of Moore’s Law and don’t see as much of a need for non-mining full nodes in the governance or security of their blockchain. There are even calls from within the Bitcoin Cash community to raise the blocksize limit again as many think the blocksize can be increased substantially more without any adverse effects to the network.
The difference in approaches to scaling and the trade-offs made by each group seemed to be informed by their differing visions of what the project Satoshi Nakamoto launched in 2009 actually “is”.
Those in the Bitcoin community see their project as digital gold. They stress security, radical decentralization, and want to retain the ability of individuals to act as a check on some of the more powerful actors in the project. They have been less concerned about the potentiality for high fees and the very real limits of its use in payments. They don’t think Bitcoin can compete in payments, at least in the short term, with some of the current payment systems already available in the market-place. Rather they see the market niche of the project started by Satoshi Nakamoto as an uncensorable non-sovereign money that can be used with as little reliance on trusted third parties as possible.
Those in Bitcoin Cash see their project primarily as digital cash often citing the title of Satoshi’s famous white paper “Bitcoin: A Peer to Peer Electronic Cash System”. BCH supporters believe their project can meaningfully compete in payments without sacrificing some of the system’s core properties or principles. They are more focused on its utility as a low cost, non-government means of payment and less concerned about individuals being able to verify their own transactions. In their view, the ability for many people to actively use the network contributes significantly to the decentralization of the currency.
In many of these discussions there is no clear right and wrong but rather tradeoffs willing to be made given the vision and goals of the person or group. We’ll continue to learn a lot from each side experimenting and competing in parallel pushing their blockchain to be the best it can possibly be. We’ll continue to support both chains as long as our users and the market find a use for them. Whether you support Bitcoin or Bitcoin Cash we’ll be there to help you get the most out of your magic internet money.