When I first started working on Bitcoin applications nearly six years ago, I worked under the assumption that even though the Bitcoin software itself might evolve, the consensus rules that allow the system to converge to a single ledger state were essentially immutable. At the time I didn’t own a lot of bitcoins — I mostly thought of it as a cool new technology, but I did understand the value of a network that prevented malicious actors from being able to easily alter the ledger or its rules.
In the early days, I thought the technology held great promise — but I was realistic in acknowledging that even though it was tremendously useful for storing significant amounts of money very cheaply (i.e. you can store over $1 million pretty securely with just a relatively tiny transaction fee and a couple pieces of paper), significant technological innovation would be required to allow the system to scale to compete with existing payment systems such as credit cards, PayPal, or cash.
A little over two years ago, the scaling issue was brought to the bitcoin-dev mailing list. Specifically, a 20MB hard fork proposal that had been sold behind closed doors to industry had been leaked to the mailing list. This was the first time since I had started working on Bitcoin that I feared the single property I most cherished about Bitcoin was at risk — that the rules underlying how the ledger converges might be altered arbitrarily just because a few people got together in a room and agreed on something in private. (If you see people cringing at these sorts of things now, there’s good precedent for it. No matter how well-intended, a significant chunk of Bitcoin users will oppose no matter what.)
Since then, I worked diligently to try to listen to industry concerns and meet with stakeholders. I tried to listen to all points of view and to seek a solution that would best satisfy all interests with as little disruption to the network and without sacrificing that most cherished property mentioned earlier. And to ensure that the discussion take place in full public view with participation from the entire community.
I spoke to all the best protocol developers I knew and asked them what could be realistically done. We spent months discussing things in public chats and mailing lists. I also participated in the three Scaling Bitcoin conferences, as a sponsor and a speaker. The result of all this was what came to be known as Segregated Witness (SegWit), a protocol upgrade that retains backward compatibility, doubles block size for typical transactions, and fixes a host of issues that had been plaguing protocol development and key innovations required to allow Bitcoin to achieve massive scale.
There was a concerted effort at a disinformation campaign along with social attacks on social media sites such as reddit which sought to disrupt development. Many different interests seemed to be battling it out — but one thing that cannot escape notice is that the only activity that the Bitcoin protocol intrinsically rewards is mining. And the advent of professional mining pools coupled with ASICs meant that all direct acquisition of rewards from running the protocol were going to these people — not to developers, not to merchants, not to regular users.
Several of us tried to meet directly with the top mining pool operators and ASIC manufacturers in an attempt to find a way to continue to work together to keep advancing the protocol. It was always my deep conviction that, while there’s nothing intrinsically wrong with having private meetings, decisions affecting the consensus rules of the Bitcoin protocol must always be made via a public process with opportunity for anyone with concerns to weigh in. I strongly oppose private agreements on consensus rules. Perhaps the process needs a little revamping — but it must be kept public and include rigorous peer review.
I believe it is everyone’s fundamental right to run whatever code they want on their computers, whether it be Bitcoin Core or Bcoin or BTCD or some custom branch of these or something entirely different. If the economic incentives of the network can’t keep us all in consensus without requiring coercive means, something seems to be fundamentally broken about Bitcoin. These economic incentives are the ties that bind us even when faced with attackers — not signed agreements made by self-styled elites behind closed doors.
Last summer, top Bitcoin protocol developers and mining pool operators had a meeting in Palo Alto. It was meant to be an ice breaker, a way for different people to get to know one another and hear each other’s concerns — but ultimate decisions on consensus rule changes would still be left up to the community at large after public discussion and by ensuring users retain the ability to run the software of their choosing and no agreement placing any restrictions on such things was to be signed.
In this meeting, it was agreed that more hard fork research was desired — such research was made and some of it published: https://bitcoinhardforkresearch.github.io
Mining pool operators, and in particular, Jihan Wu and Micree Zhan agreed they would signal SegWit using BIP9 upon the release of the production-ready code which occurred later in the fall, after the third Scaling Bitcoin conference. However, soon after this meeting, Bitmain ceased responding to all my attempts at communication and instead began supporting a fork of the Bitcoin Core codebase that deliberately breaks with consensus rules.
Not being someone to give up so easily, I continued to attempt reestablishing communications. Finally, months later through the help of someone who had contacts in Bitmain, I was able to get in touch with Jihan Wu and arrange for a meeting with all the top mining pools which took place in Beijing in March. In my opening remarks I explicitly stated that I was not there to try to force any decisions on them — that it was entirely in their right to run whatever software they wanted, whether Bitcoin Core or something else. I was there to listen to their concerns and see if we might be able to find some common ground. I also made clear that nothing was to be signed. Any proposals would have to go through public scrutiny and review before any commitments could be made by anyone.
At first I was very optimistic that we had made good progress. And indeed, with a few of the miners present I did forge good bonds and made some great new friends. But almost immediately upon leaving, Jihan Wu reverted to his taunting tweets and bullying tactics. It was as if *nothing* had gotten through to him…he was only interested in playing his game. And this was hardly the first time he had completely reneged on a handshake.
At this point I have zero trust left for Jihan Wu and Bitmain. I do not believe they have the best interests of the Bitcoin community in mind. They continue to collect substantial fees from everyone, yet try to deflect blame on others who get none of those fees whatsoever. They continue to block progress on protocol development, fail to follow through, and keep on upping their demands, never satisfied with anything we deliver. They never come through on anything they’ve promised me. Perhaps others have had a different experience — just relating what I’ve witnessed myself.
Therefore, I believe the time has come to take a more aggressive stance against this sort of behavior. Nothing short of might seems to rattle Jihan Wu very much — and the Bitcoin markets are far mightier than Bitmain or Jihan Wu. This means it is in the hands of users to demand their freedom from Bitmain’s oppression and to punish them if they do not comply.
Therefore, I am done with attempts at negotiating with Bitmain. Perhaps some still want to give it a shot — I can’t stop them from trying, but I only predict major disappointment. I tried my best — I do not believe there are any positive results to be gained at this point from this diplomatic approach. Therefore I encourage everyone to support BIP148 as a way to get past this impasse as quickly as possible.
I am happy to talk to anyone in the Bitcoin industry with sincere concerns about the risks involved in BIP148 or any other issue and help them assess options and see what I might be able to do to help. I also think Barry Silbert means well and would love to help him find a way forward. Unfortunately, I do not see progress coming from the NY agreement and will continue to seek new approaches. I still look forward to collaborating with Barry Silbert and DCG and am willing to work with anyone sincere in their quest for solutions to problems Bitcoin is facing.