Brian Armstrong, co-founder and CEO of Coinbase, left the Satoshi Roundtable very concerned about bitcoin’s scaling challenge and is urging everyone to upgrade to Bitcoin Classic to buy time to address the scaling issue and prevent serious problems.
Writing on Medium, Armstrong summed up the scaling divide evident at the Satoshi Roundtable. On one side are the core developers concerned about how on-chain scaling will impact decentralization. On the other side are most bitcoin companies that want growth. The miners are split.
Conference organizers were hoping for a consensus, but it was clear by the end that the divide was too great.
The conversations first focused on compromises to delay what needs to be done about scalability. As the conversations progressed, Armstrong became less concerned about what short-term solution gets picked since a much bigger problem exists: the systemic risk to bitcoin if Bitcoin Core becomes the only team working on bitcoin.
Armstrong has the following concerns after spending some time with the Bitcoin Core team last weekend.
1. Some have poor communication skills or lack maturity. This has compromised bitcoin’s ability to attract new protocol developers.
2. They prefer a perfect solution to an acceptable one. And if no such solution exists, they are okay with inaction, even if it puts bitcoin at risk.
3. They believe bitcoin will not scale long-term, and any block size increase is a path they are unwilling to allow.
While Core approves of a hard fork to 2MB (it is on their own roadmap, though far in the future), they won’t prioritize it. They want to withhold something that could help the network in the short term since they don’t trust the community to make educated decisions in the future. They consider themselves the network’s central planners. They are okay watching bitcoin fail, providing they don’t compromise on their principles.
Being intelligent is not enough for a team to succeed, Armstrong noted. It is necessary to make reasonable trade-offs, communicate and collaborate. A team that doesn’t do this will not attract top talent and will struggle long-term.
The biggest risk to bitcoin right now is the very group that has helped it the most in the past: the Bitcoin Core developers.
A failure scenario described at the conference demonstrates the extent of the problem.
The next block reward halving arrives in July. If miners can mine a coin for $250 (hypothetically), their cost to mine a coin will double to $500 after halving in July. If the price stays near $425, it will not be profitable for some miners to continue mining.
The implication is that hashing power on the network will fall at the July halving date. It could decline 10% to 50% (Armstrong admits to having no way to estimate this and is open to suggestions).
A worst-case scenario would be having half the hashing power turn off at the block halving since it is no longer profitable for those miners. Blocks will get mined every 20 minutes on average instead of 10 minutes. Considering blocks are already 70% full today, if the average confirmation time goes to 20 minutes, blocks will be at 140% of capacity and will start accumulating a backlog.
Bitcoin has a mechanism to adjust the proof-of-work difficulty when hashing power changes. This occurs every 2,016 blocks, which normally takes about two weeks. But mining a block every 20 minutes means then the adjustment will take four weeks.
But it gets worse. Even after four weeks of overcapacity waiting for adjustment, there will be as much as another two weeks of backlog to churn through before getting back to “normal” (70% capacity and occasional delays). There will be about a six-week period of around two-week confirmation times or significantly higher transaction fees.
In addition, with so many pending transactions, the mempools of most nodes will fill. This means it is likely most bitcoin transactions will not even relay, much less confirm. This could prevent wallets and merchants from getting a transaction notification for weeks.
The scenario described could cause the bitcoin price to fall, making mining less profitable, causing a negative spiral.
The scenario described is the worst case, Armstrong admitted, and the likelihood of it is unclear.
Bitcoin halving could drive the price up. And it’s hard to estimate what percent of hashing power would turn off at the halving. It could be far less than 50%. But Armstrong argues there is no reason to risk it and it’s highly irresponsible to act so close to the edge. Today’s network, with 70% of blocks full, is already having backlogs. Any hashing power reduction will exacerbate the problem.
The fact that Bitcoin Core has permitted the network to reach this point is very negligent, according to Armstrong. It says a lot about their competency as a team and their motives. There is no reason to gamble and see if this failure scenario comes to fruition.
Fortunately, voices of reason going back as far as two years have called for prudent capacity planning and have even left the Bitcoin Core to write the code to make it happen.
Armstrong proposes the following:
1. There needs to be an immediate upgrade to 2MB blocks. This is the most realistic short-term scaling solution to buy time. This block upgrade either take place in the near term (giving sufficient time to prepare), or in the midst of an emergency in the future. It is not a matter of if, but when. There is code available to do this today. The code is high quality, written by former Core developers, and already being run in production by a bitcoin companies (including Coinbase). Upgrading to Bitcoin Classic does not mean staying with the Classic team forever. It is simply the best option to mitigate risk right now. Code from any team can be used in the future.
2. Chinese miners must be informed about this upgrade. They have been led to think only four or five people can work safely on the bitcoin protocol when this group is actually posing the greatest risk to the Chinese miners’ businesses. A better relationship is needed with Chinese miners.
3. A new team is needed to work on the bitcoin protocol. That team has to welcome new developers and make reasonable trade-offs.
Bitcoin Core has proposed a solution called Segregated Witness. It is a well-done piece of technology, Armstrong said, but it would be risky to use as a scaling solution given the situation mentioned above. One of the biggest risks is that obtaining the scaling benefit will require not only new Bitcoin Core code, but new code written by each of the major wallet providers.
This is unlikely to be done in time to avoid the scaling issue.
The number of lines of code that have to be written across the entire industry will be several orders of magnitude more than a scaling solution of extending 1MB blocks to 2MB blocks.
Supporters of this solution explained it to Core developers at the conference, but it didn’t seem to change their opinion on the best short-term solution.
With the block halving in July, and the fact that network delays are already occurring, it would be dangerous and irresponsible to follow the scaling roadmap proposed in Hong Kong that includes Segregated Witness.
Bitcoin will be more successful with a multi-party system working on protocol development than one team with the limitations mentioned.
To ensure bitcoin’s success, Armstrong urged people to upgrade to Bitcoin Classic in the short term and work to support the three-step plan outlined above.
It will be necessary to create a new team to work on the bitcoin protocol and help bitcoin become a multi-party system to prevent the systemic risk of core being the only team working on the protocol.
Arguments against Armstrong’s position at the conference are provided below, along with his responses:
• The market is uncertain since everyone is disagreeing. Would it not be better if everyone put aside differences and worked together?
Once a community gets to 50 or hundreds of people, getting them to agree doesn’t make sense. But this is okay. Mechanisms exist to resolve disagreement amongs large groups of people (like voting). Waiting for everyone to agree is the same as saying nothing will be done.
Consider the example of web browsers. The Chrome and Safari teams compete, but also attend the same conferences and collaborate on standards. Competing companies were present at the conference as well.
The market is uncertain now like a country going through its first election. Once the first hard fork occurs successfully and different teams emerge, it will create confidence in the market since it shows bitcoin’s built-in governance system works (miner voting).
• Bitcoin is different as it requires consensus rules — it won’t work with multiple teams.
This is not correct. Different teams can each work on software that is interoperable and use the same protocol (this is already true in bitcoin). Upgrades can be proposed by any team, but they won’t take effect until a majority threshold is reached. Bitcoin has a mechanism to resolve such disagreements: miner voting.
• A 75% threshold is not enough to trigger an upgrade since the network will split.
This is also false. The economic incentives are set up to have the vast majority of wallets, miners, and exchanges end up on one fork. There is a big difference between the trigger threshold and what the majority will end up on.
Some people suggested that if Armstrong was sure about this, why not make the threshold 95% to be safe. There are a few problems with this.
When deciding a threshold, one is balancing two things: upsetting a minority and risking deadlock. If you put it at 51%, then it is easier to resolve indecision among multiple parties. The risk is that a large percent get dragged along with something they don’t like. If you make a 95% threshold, very few get dragged along. But you risk never resolving conflict since it’s hard to get 95% to agree on anything. It gives a 5% minority the right to veto any change 95% of people want. Setting a 95% threshold is like saying “we’ll never change anything.”
There are probably a couple dozen qualified computer scientists working on crypto-currency research right now, but there are tens of thousands of qualified software engineers capable of developing bitcoin protocol software. Coinbase has been able to build teams of engineers who can build scalable bitcoin node software, as have several other companies.
• The Bitcoin Classic team is not good enough to do it now.
Bitcoin Classic is not being asked to take over. The community should merely upgrade to the most reliable piece of software to solve bitcoin’s current scaling challenge out of necessity. Then it can upgrade to software written by any team in the space.
Bitcoin Classic code has been written and reviewed by former core developers. Their current scaling code is high quality.
Armstrong noted that there continues to be rampant censorship on https://www.reddit.com/r/bitcoin regarding this debate, which is unfortunate. I continue to encourage everyone to move to https://www.reddit.com/r/btc as an alternative that is censorship-free.
Featured image from Shutterstock.
Last modified: March 19, 2016 11:56 UTC