When the Fork Forks: What You Need to Know as Bitcoin Cash Goes to War

51

Around 16:40 UTC tomorrow, November 15, 2018, the Bitcoin Cash network is set to undergo another hard fork upgrade. But contention about this upgrade has left the Bitcoin Cash ecosystem divided, which could once again lead to a split into multiple projects and coins.

Here’s what you need to know to get up to speed.

As a quick reminder, what is Bitcoin Cash again?

Bitcoin Cash (sometimes referred to as “Bcash” or “BCH”) is a cryptocurrency that split off from the main Bitcoin blockchain in August 2017. Culminating from Bitcoin’s years-long scaling dispute, the spinoff project most notably increased its block size limit through a contentious hard fork upgrade, “forking off” to become its own coin — though some of its proponents see it as the “real Bitcoin.” While currently trading at a fraction of bitcoin’s value — around $480 at the time of writing — Bitcoin Cash is the fourth biggest cryptocurrency by market cap and has garnered support from big names in the cryptocurrency space like bitcoin.com CEO Roger Ver and Bitmain co-founder Jihan Wu.

What is this dispute about?

The Bitcoin Cash dispute is really between two competing factions, represented by their respective software implementations.

In one corner stands Bitcoin ABC, the “original” Bitcoin Cash client that caused the split away from the Bitcoin blockchain a little over a year ago. Led by Amaury Séchet, and with close (though unofficial) ties to major mining hardware producer Bitmain, Bitcoin ABC has a policy of hard forking about once every six months to upgrade the protocol.

This time, Bitcoin ABC will introduce several changes. The first and probably main one is called “Canonical Transaction Ordering” (CTOR). While transactions can currently be included in a block in almost any order, under CTOR, transactions must be included in a specific order. The Bitcoin ABC development team believes this offersa couple of technical benefits, in part related to (future) scaling improvements.

A second change is a new piece of script (an “OP code”) called OP_CHECKDATASIG (DSV). This extends Bitcoin Cash’s features, most notably by enabling oracles (which allow for a class of smart contracts). Bitcoin ABC also introduced some smaller technical fixes, like a minimum size for transactions.

In the other corner stands nChain and its chief scientist Craig Steven Wright, who claims to be the man behind the monicker Satoshi Nakamoto, but has publicly only been able to produce fake evidence. Having released a relatively new software implementation named “Bitcoin Satoshi’s Vision” (Bitcoin SV), Wright says he wants to restore Bitcoin to its original protocol: the 0.1.0 version launched in 2009. After that, he’d take a rather conservative approach with few or no further protocol upgrades.

To achieve this, Bitcoin SV makes a few changes relative to Bitcoin ABC right now. First, it rejects CTOR, as nChain believes the potential benefits are insufficiently proven and the risks are too high. Second, it increases the default block size limit to 128 megabytes (versus Bitcoin ABC’s 32 megabytes). And third, it reinstalls several old OP codes (with names as OP_MUL, OP_LSHIFT, OP_RSHIFT and OP_INVERT). It also removes the size limit on scripts.

Down the road, Wright promises to make more changes to bring Bitcoin SV closer to the 0.1.0 version of the Bitcoin protocol. The block size limit will eventually be increased a lot more or even removed entirely. DSV will be dismantled. (Wright goes so far as to claim DSV would make Bitcoin ABC and its miners illegal. On Bitcoin SV, coins held in “DSV addresses” will likely be turned into donations to miners.) P2SH transactions (which allows for much transaction flexibility and was introduced in 2012) will be depreciated. More old OP codes will be restored. And the nChain chief scientist alluded to bringing “lost” coins back into circulation. (Where “lost” presumably refers to coins that haven’t moved in a long time.)

Who supports what?

With Bitcoin ABC and Bitcoin SV as the two main competing factions, most of the Bitcoin Cash ecosystem has, by now, picked a side in the dispute.

Though in some cases reluctantly, most other Bitcoin Cash implementations have sided with Bitcoin ABC. The biggest of these, Bitcoin Unlimited, has made its latest release compatible with the Bitcoin ABC hard fork by default — though users can configure their software to be compatible with Bitcoin SV instead. Other Bitcoin Cash implementations, such as Bitprim and Bcash, are also compatible with Bitcoin ABC.

Most of the biggest Bitcoin Cash service providers have indicatedthat they will support the Bitcoin ABC hard fork as well. Besides Bitmain’s wallet and block explorer BTC.com, this includes cryptocurrency exchanges Coinbase, Binance and Kraken, payment processor Bitpay and API-provider BitGo. Besides nChain, the companies that expressed support for the Bitcoin SV hard fork are generally smaller. Of those, media outlet CoinGeek is probably the best-known example.

CoinGeek owner (and online gambling tycoon) Calvin Ayre is probably also the most well-known individual supporting the Bitcoin SV hard fork — besides Craig Steven Wright, of course. Most “big name” Bitcoin Cash proponents instead appear supportive of the Bitcoin ABC hard fork — or at least dismissive of Wright and Bitcoin SV. This includes bitcoin.com CEO Roger Ver, Bitmain co-founderJihan Wu, Pirate Party founder Rick Falkvinge, Cornell professorEmin Gün Sirer, but also Ethereum founder Vitalik Buterin and others.

At the time of writing, most users seem to favor Bitcoin ABC as well. On futures markets, such as those offered by cryptocurrency exchange Poloniex, BCH ABC futures are trading at around $260, while BCH SV futures are trading at around $220. (Though the difference was much bigger only few days ago.) General sentiment on social media like Reddit and Twitter also appears to favor the Bitcoin ABC hard fork — though this is considered irrelevant “proof of social media” by Bitcoin SV proponents. What matters, they say, is proof of work.

Which brings us to Bitcoin SV’s main “weapon” — perhaps literally. At the time of writing, all the biggest Bitcoin Cash mining pools are supportive of Bitcoin SV. Calvin Ayre’s private CoinGeek pool, Wright and nChain’s public SVPool, nChain’s private BMG Pool as well as Okminer and Mempool all favor Bitcoin SV, representing up to 60 or 70 percent of hash power. The rest of the pools — a minority — are either neutral (for example planning to follow majority hash power) or in favor of Bitcoin ABC.

Does this mean the chain will split? And what is all this talk about a “hash war”?

It’s complicated.

Technically, Bitcoin Cash will indeed experience another coin-split as soon as either Bitcoin ABC or Bitcoin SV mines a block that’s invalid on the opposing chain (for example, because transactions in the block are ordered incompatibly). This also means that all BCH holders get coins on both sides of the split. In principle, all users should be able to mine, send and receive both coins.

If this were a “clean split,” the two coins would be separated through a technical trick called “replay protection.” Transactions on one chain are invalid on the other, so (regular) users would be affected as little as possible.

But this will not be a clean split. While Bitcoin ABC implemented replay protection, Bitcoin SV copied this “protection” to cancel it out.

As such, transactions will look identical on both chains. This means that a Bitcoin ABC transaction can be re-transmitted (“replayed”) on the Bitcoin SV chain, having users accidentally spend both. And the other way around: Bitcoin SV transactions can be replayed on Bitcoin ABC. When Ethereum Classic and Ethereum split without replay protection in 2016, this caused significant losses to unprepared exchanges, like Coinbase. Therefore, this time many exchanges and other service providers will halt withdrawals and/or deposits for some time.

But that’s not all. The split could unleash what has by now come to be known as a “hash war.”

Craig Steven Wright has explicitly stated that, in an attempt to ensure only “his” chain survives, he and others will use any hash power under their control to 51%-attack the Bitcoin ABC chain. Such attacks, first speculated about during Bitcoin’s scaling dispute in 2017, could, for example, consist of mining only empty blocks on Bitcoin ABC and “orphaning” (rejecting) any blocks mined by “honest” Bitcoin ABC miners. This would have the effect that no transactions will confirm on the Bitcoin ABC chain at all, and that “honest” miners will be strongly discouraged from mining on it: their hash power would go to waste. If Wright and others successfully take this (rather unprecedented) step, there would not be a meaningful chain-split after all: only the Bitcoin SV chain would survive.

While all this is very speculative, Bitcoin ABC could defend itself against such an attack in several ways, too. For one, Bitcoin ABC users could simply wait out the attack, as it costs the attackers money every hour, and this cannot last forever. Alternatively, (Bitcoin) miners could opt to draw more hash power from the Bitcoin blockchain to mine on the Bitcoin ABC chain, or deploy more hash power altogether. (Some news sources claim Bitmain is indeed doing this.) Or, in what is typically considered the “nuclear option,” Bitcoin ABC could choose to deploy another hard fork to change the proof-of-work algorithm, rendering the attacking mining hardware incompatible with its blockchain. (Bitcoin ABC lead developer Amaury Séchet has already acknowledged this option is on the table.) There may be other countermeasures too, like less radical protocol changes.

Or, perhaps all this talk of a hash war will soon prove to have been nothing but a bluff. Bitcoin Unlimited chief scientist Peter Rizun, for example, doubts that the Bitcoin SV development team will be capable of pulling off a successful attack in the first place.

Do I need to do anything? Will I get both coins in case of a split?

Once again, it’s complicated. But here’s the important part: If you own BCH, control your private keys and don’t transact during the fork, you’ll own any post-split coins.

With that out of the way, there are roughly three scenarios to take into account.

Maybe only one coin survives the split. In that case, wallets and other service providers will presumably support this coin, either right away or later on. If you hold your private keys and your wallet supports the coin, you will be able to transact. If your wallet does not, you’ll need to extract your wallet seed or private keys and insert them in a wallet that does. (There’s no rush to do any of this.)

Second, two coins could survive the split, both with their own name and ticker. (In this case Bitcoin ABC seems most likely to get the name “Bitcoin Cash” and “BCH,” but this could differ from one service to the next.) This is where you need to be particularly careful, as there’s no replay protection. When you send one coin you may unintentionally send the other along with it — or vice versa. To avoid this, you need to first split your coins by using a splitting tool, for example, or by sending your coins to an exchange or other type of service that will split the coins and send both back independently. (Again, there’s no rush to do any of this. Until you know what you’re doing, it’s best to do nothing at all.)

Third, we can’t ignore the possibility that a hash war could escalate to the point that no coin is left standing — at least, not in a meaningful way. Whether it will be due to the 51%-attacks themselves or a loss of confidence or otherwise, cryptocurrencies can fail, and given the circumstances described in this article, Bitcoin Cash is certainly no exception.

There are more potential scenarios, some of which would result in even more coins. This includes a coin that ignores both Bitcoin ABC and Bitcoin SV’s upgrades or a “coin” that is compatible with both. But these scenarios seem quite unlikely or temporary at best and are probably not something worth worrying about for the time being.

Finally, and obviously, none of this affects users of bitcoin or any other cryptocurrency right now. (Though if hash power does move over from Bitcoin to Bitcoin Cash, it could slightly slow down transaction confirmation times on the Bitcoin network.)

This article will be updated as the events of the fork unfold.

Update, November 14th, 22:05 UTC: Roger Ver’s mining pool bitcoin.com announced it will redirect hash power from Bitcoin to Bitcoin Cash ABC for one day.

Update, November 14th, 23:00 UTC: While it may of course be unrelated to the upcoming hard fork, BCH prices tumbled from about $530 to about $440 today. This is more than most other cryptocurrencies, most of which are down significantly.