XT, Classic, BU: Escaping the Cycle of Hardfork Contention (with Trustless Governance)

David Vorick
The Sia Blog
Published in
7 min readMar 28, 2017

--

A Skirmish Between Brothers

We’ve seen a story play out three times now. Bitcoin hits a roadbump, a portion of the community panics, and then a bloodbath war occurs over Bitcoin’s future. Bitcoin chooses not to hardfork, and then there’s some breathing room. Then another roadbump, more panic, another bloodbath. To date, the bloodbaths have been far worse than the roadbumps, so we must ask: how do we stop the cycle?

It really boils down to governance. When there’s a crisis, how do we address the crisis? If there is a problem, how do we solve it? Bitcoin is a consensus system, which means that if everyone doesn’t arrive at the same solution, the network is going to rip apart. The community needs a method of governance by which everyone can come up with the same solution to every problem, or otherwise organize a split such that every faction can be both successful and happy.

The problem is that this governance structure has to match the core philosophies of Bitcoin. And these core philosophies completely reject the notion of trust. The idea that a user should do something because some group (developers, miners, governments, etc.) have dictated it is antithetical. Users should do something because it makes sense to them, and they should be immune to the influence of potentially malicious actors. The user should not be forced into anything unless it is obvious to the user that it is in their best interest. Bitcoin needs trustless governance.

We can achieve trustless governance. We can achieve a governance structure where there are no votes, no governing bodies, and no priesthood that serves as the source of truth. And we can achieve this using game theory, specifically a device called a Schelling Point.

A Schelling Point is a single idea, action, or location that a group of people can converge on knowing nothing more than that other people are looking for a similar Schelling Point. A classic example has two people dropped in random locations in New York City. Their job is to find eachother, and they are not allowed to communicate in any way (no signs, no asking other people for help, no phones, etc.). Each person wants to go to the place that they think the other person is going to go to. The Schelling Point is the place that both of them have a chance at picking together. In this case, something like the Statue of Liberty is a really good choice.

The Statue of Liberty

A currency requires a community and a network effect. And governance over that currency means coordinating actions and upgrades in ways that leave the community and network effect as healthy as possible. If you make a change that segregates you from the larger community, you can be left with a system that is anemic or useless. The community must act as one, even during a split. If one faction of the community decides to split to support big blocks, that whole faction must split together, and therefore still require governance and coordination. In the absence of a trusted party or voting group, you can coordinate via Schelling Points.

I want to start with a clean example. Let’s say that a state actor buys enough ASICs to 51% attack the network, and they enforce a new rule: all blocks must be empty. They institute a worldwide blanket ban on Bitcoin. There’s a clear Schelling Point here: hardfork the network to invalidate the state actor’s ASICs. If your choice is between ‘death’ and ‘not death’, it’s pretty easy to pick ‘not death’. A PoW hardfork will be coded up, presented, and adopted by the community. Everybody switching to the PoW hardfork can have high confidence that a critical mass of others will be joining them.

If multiple potential hardforks are presented, the Schelling Point is the hardfork that everybody is most likely to prefer. This needs to take into account all biases, hatred, etc. The Schelling Point here is the hardfork that is the simplest, cleanest, least controversial change being presented. And it’s also going to be the hardfork that’s already gaining critical mass. You really want a situation where there is no hesitation for anyone, everybody knows what everybody else is going to do, and so everyone can all do it together.

You need broad consensus, and that can only happen in the absence of doubt. And there will only be an absence of doubt when there’s a clear solution that everybody can get behind. It doesn’t need to be your personal favorite solution, it just needs to be something that you know everyone is going to agree with, and something that you prefer over doing nothing.

‘Everyone’ doesn’t necessarily mean the whole entire ecosystem, either. In the event of a contentious split, ‘everyone’ might just mean ‘those who are ideologically aligned with me’. A Schelling Point may involve splitting the community, where one faction separates entirely from another faction. As long as the separating faction can all find the same Schelling Point, they’ll be able to separate without chaos and follow the ideology that they prefer.

There’s one final Schelling Point which is active most of the time. It’s the ‘do nothing’ Schelling Point. If there isn’t an obvious change for everybody to get behind together, then the obvious thing for everybody to do is to wait for a more obvious Schelling Point, and in the meantime make do with the system that is already in place.

Applying this to Bitcoin and the Blocksize Debate

Any significant change to the Bitcoin network is only going to be successful in the presence of an obvious Schelling Point. And historically, that’s really only existed in an obvious upgrade-or-die situation, and I suspect this will continue to be true. (Other coins have been able to pull off successful hardforks through a trusted leadership — which is completely fine, but Bitcoin does not have a trusted leadership, and does not even want one).

It’s entirely possible that two factions of the Bitcoin community at one point in time are able to converge onto two separate Schelling Points. One faction may, for example, converge onto a specific block size increase, while the other faction remains fully focused on the do-nothing Schelling Point. When that happens, the network is going to split, and if both sides really do have powerful Schelling Points, the split is going to be relatively painless. Both sides will end up with coins on each side of the fork, so as long as the network as a whole doesn’t lose value, all sides should be able to recover their funds in full.

So if there’s a change you’re really hoping to see (this is directed at the big blockers), you should be looking for an upgrade Schelling Point that seems to be an obvious choice for anyone wanting a similar change. A competent upgrade with few extra features besides what’s strictly necessary and little controversy around it. And if you are looking to promote such upgrades, you should be promoting the upgrades that are as simple, as obvious, and as low controversy as possible.

And if you’re really hoping that there isn’t a change, you actually don’t really need to do anything at all, because not doing anything is already the obvious Schelling Point, and if there is an upgrade that clearly aligns with only one ideological faction (and not yours), you can be confident that everybody outside of that faction will reject the upgrade. Which means that after the split, there will be a full community on your side of the fork, including exchanges, payment processors, miners, and everyday people.

I should mention that all of this is meaningless if you aren’t actually running your own full node. If you aren’t running a full node, you have neither the ability to support nor reject a Schelling Point. You only have that power if you have the ability to decide which transactions you are accepting and rejecting, and you can only achieve that for yourself if you are running a full node.

The cycle isn’t over. Bitcoin is going to have more growth, more growing pains, more roadbumps, and more frenzied community members (new or otherwise) who convince themselves that the sky is falling, or otherwise try to hijack Bitcoin. The good news is, we’re starting to get better at this. The recent pressure from BU and Bitmain clearly demonstrated that the economy has the power in Bitcoin. And it’s pretty clear to me as well (from things like the ETH / ETC split) that a coin split is not a death sentence for the losing side.

Though I’ve focused this article mostly on how to upgrade the network successfully, the real takeaway is for the people who don’t want to see an upgrade. You aren’t alone, and even if something crazy happens, your preferred chain will survive and you’ll be able to keep using the same Bitcoin that you’ve always been using (even if it’s suddenly called ‘Bitcoin Traditional’).

Bitcoin is a really impressive system. And, as long you retain your ability to run a full node, you’ll be able to get through any chaos in one piece, with a currency that still has a strong community behind it. It’s true decentralization and freedom that is unparalleled in any government or governance that we’ve seen before. And that means that when the contentious hardforks start flying around, you can just chill out and let the storm blow past you.

Hobbits Bonding at a Pub

--

--