Bitcoin vs. Bitcoin Cash: One Year On
It’s been a year since the two-year schism in the community over Bitcoin’s scaling approach culminated in the blockchain’s fork and creation of a new cryptocurrency, Bitcoin Cash. Two months after that I made my decision about which fork’s approach I believed and sold all I had in the other one. A year and many Twitter and personal debates later, I would like to explain that decision and perhaps help others to navigate the schism.
Note: Those who know the events and basic details of what happened can skip this intro and go straight to the arguments.
Bitcoin stores all the transactions happening in the network in blocks, which are signed by miners before being appended to the existing chain of blocks (hence blockchain). Miners receive a reward for this work in the form of transaction fees and a fixed amount of “new” bitcoins. That creates a monetary incentive and a competition for the ability to sign those blocks. The consensus protocol makes the mining more difficult as more computing power joins the competition to maintain an average frequency of “discovering” new blocks at 10 minutes.
What makes Bitcoin so trustworthy without any trusted third party is, that any user can go back and look, how much of a competition was there to create any particular block, and how much would it cost for anyone to manipulate the process. Instead of having to trust someone to maintain the ledger, the users merely need to trust the consensus and because the access to mining is open and permissionless and the rules are transparent and open source, the protocol becomes trustless. And finally, because the block reward is pre-determined within the rules (and continuously declining), the inflation rate is part of the consensus too. That means, there is no central issuer who can manipulate the rate at which new units can enter the economy the way that central banks can.
The blocks had been however capped in size at 1MB for many years before the fork, and because all of the transactions need to fit into those blocks, that limited the number of transactions to about 5 per second. As Bitcoin usage grew, that limit was hit, which created a competition between users to fit their transaction in the next block by paying higher fees than others. That resulted in average fees shooting up to more than 10 dollars per transaction at one point (I paid $75 for one transaction myself, and $400 - yes, four hundred dollars - for a transaction made on behalf of friends who wanted to liquidate their bitcoins days before the price peaked in December).
To address this, there were two competing approaches. One was to keep the limit and move the transactions to a layer of payment channels, which would route the small payments between themselves and settle on the blockchain once in a while per rules they would agree on. The channels would have to be “charged” to be able to absorb a reasonable amount of transactions before being settled and the protocol was designed for each transaction to find the most optimal route to get to its intended destination. This layer is called the Lightning Network. The other approach was to increase, or remove the limit and allow more transactions to be stored in the blockchain, while not ruling out to allow other solutions later down the road.
Nature of the schism
Above was (hopefully) objective and dispassionate summary of the challenges and approaches. What follows is a perhaps one-sided explanation why I chose one of those approaches and sold all coins of the other.
The schism between these two approaches as I see it is happening on a few axes.
1. Store of value vs. medium of exchange
People in the small block camp argue, that Bitcoin should be an equivalent of gold bullions and bars stored in vaults, while its smaller denomination certificates used to get transferred physically as notes during the gold standard. It should be a store of value, not a medium of exchange.
Some even called those who believed in the medium of exchange first approach, crypto-Keynesians, which is ironic, because it was, in fact, Mises himself who clearly explained, that the definition of money is primarily a universally accepted medium of exchange. Only when it achieves that function it becomes the store of value and a unit of account. It is a false dichotomy between those two.
The argument, that Bitcoin is already a store of value is not true, because it doesn’t meet the very meaning of that phrase. It doesn’t store the value because its value still fluctuates quite widely. Gold used to store value during the gold standard because its price (as measured in goods people were able to purchase for it) was stable, as is the case with most fiat moneys these days. While it is true, that the former was subject to a very slow value increase and the latter is decreasing in value over time, they both have been as stable as it gets as compared to other goods and assets.
2. Geeks vs. users and businesses
I’m a geek and a software developer, so I know the mindset: leave us alone and we will deliver the amazing architecture, which will sort everything out at once. While the user wants to use the product, and the business wants to deliver value to the user as quickly as possible, the geek wants to build the perfect architecture before letting anyone else touch it. The problem is, that the competition doesn’t sleep and the user - especially early adopter - is often happy with the imperfect solution, as long as it solves their immediate problem.
When the blocks hit their 1MB limit, users were told LN is only months away and they should remain patient while the transaction fees and confirmation times went up. Two years later, the LN user experience makes it still virtually impossible for the average person to use it. If Uber limited the number of drivers in New York to 1,000 and watched the price and waiting time for rides to shoot through the roof while waiting for driverless cars, they’d be gone by now. It is no coincidence, that Bitcoin’s dominance went from nearly 100% to less than 50% since the blocks became full and I would argue, that it would be even less if it wasn’t for larger opportunity costs in switching between cryptocurrencies than switching between shared ride services.
3. Nodes vs. miners
Another axis is in what does provide security to the network - miners who sign the blocks or nodes, which store them? The biggest reason why a part of the community wants to keep the blocks small is to make it possible to store the whole blockchain on as many and as affordable devices as possible so that any user can validate their own transactions through the whole blockchain instead of having to rely on someone else.
While this is a valid concern, it comes with trade-offs. The most obvious trade-off is in limiting the throughput of the blockchain and inadvertently forcing high fees, long waiting times, and worse user experience. The less obvious is however in compromising the security of the network because of incentives it creates - or rather removes. As the block reward goes down over time, the dependency of miners’ profit on transaction fees goes up. Even with high fees per transaction, if LN moves the transactions to the second layer, it will lower the overall amount of fees in the network. That will lower the incentive for miners to invest in securing the network, which over a longer period might make it more susceptible to a 51% attack.
Some argue, that the players in the second layer would have an incentive to maintain the first layer. While that is true, it is also the blueprint for central banking where commercial banks have an incentive to maintain the central bank. How long before one of those at the second layer will be a victim of a massive hack and in need of a bailout? What will stop its peers to organize a bailout similar to the one in Ethereum, which followed DAO hack? Or how long before they will start collectively asking whether the predetermined inflation rate is the right one and whether the 21 million bitcoins is enough?
I would even go as far as to suspect a part of the small block camp of xenophobia and racism because they think the mining is controlled by Chinese entrepreneurs. I’ve seen the phrase “that’s good only for Chinese miners” too many times to shrug that suspicion off.
The average user couldn’t care less about running a full node. They want to trust that their money will not get debased and they want to transact them seamlessly, cheaply and quickly. I am much more worried about consensus rules being manipulated rather than about blockchain storage not being decentralized sufficiently or my transactions not being broadcasted. It’s a big topic, which I don’t need to go into details of thanks to Juraj’s piece “Who would run full nodes? Who would build the roads?”
4. Centralization vs permissionless competition
The first question, that anyone should ask is, why one megabyte in particular? Why not 0.5? Why not 5? Why not 3.14159265? Why is it A-OK to have 0.999 MB, but 1.001 is a no-go (I’m omitting SegWit for the sake of simplicity here)? How is this not central planning we wanted to dismantle when we joined this movement? Why do we expect to decide this fundamental parameter arbitrarily and not expect all sorts of unintended consequences that we see in any other form of central planning as a result?
If we believe in free market, why don’t we allow competing solutions on an unhindered network and let users, miners and service providers to continuously find the right balance between what should happen on the blockchain, and what should be settled elsewhere? The big guys should be able to develop and use solutions, which will allow them to settle without having to pay a fee for every transaction while the upstarts should not be left standing at the gate, asking for permission. What the small blocks are causing is, that almost everyone, in the long run, will be outpriced from transacting on the blockchain and will have to go through gatekeepers.
I made my mind a long time ago and put my money where my mouth is by selling all my bitcoins for Bitcoin Cash. What saddens me is, that despite arriving at my conclusions with my own analysis (having friends on both sides of the debate, I couldn’t comfortably appeal to authority :-), my otherwise intelligent and civilized friends would throw mud at me and boil the arguments to “you got your brainwashed over there in Asia”.
I wouldn’t rule the future of Bitcoin Core out altogether. In this everlasting tug-of-war between state oppression, of which fiat money is the governments’ biggest tool, and human liberty and prosperity, which Bitcoin promised to accelerate, governments always manage to co-opt the technology we hoped would finally set us free. Think internet, which enabled more independent news coverage, a rallying of people against oppressive states, and private communication amongst citizens, but also omnipresent intelligence apparatus and election propaganda.
Bitcoin Core with LN and its susceptibility to long-term centralized control could still become hugely valuable as a payment settlement scheme for the transformed legacy financial institutions endorsed by the state. However, that is not the vision I and many others joined Bitcoin for. We joined to stop funding police states and deadly wars, to accelerate prosperity through free commerce and globalization, and to prevent human tragedies caused by hyperinflation. And I believe Bitcoin Cash, not Bitcoin Core continues to carry that vision.