On the upcoming Bitcoin split in October

in #bitcoin7 years ago (edited)

This article assumes you have some knowledge to the Bitcoin scaling debate, SegWit, UASF, etc

danger - slippery road ahead

Summary first

There was expected to be a chain split following the "user activated soft fork" (BIP-148 aka UASF) at the 1st of August. Due to SegWit2X this didn't happen - but we did get a quite clean chain split between Bitcoin Cash and Bitcoin.

The SegWit2X-proposal is still somewhat controversial, and may cause a major chain split in October. It may be nasty.

In the article below I'm trying to describe the situation as well as consider some scenarios. Please follow up with comments if you can think of other scenarios, or if you have a strong hunch on which direction Bitcoin will be heading.

The schism, as of 2017-08

just an image of a wall with BTC written on it

During the last year or so, the Bitcoin schism can briefly be described as one camp fanatically rejecting the SegWit protocol extension, while the other camp fanatically would be rejecting bigger blocks. Not any more - after the SegWit2X compromise agreement, we now we have three camps:

  • The crazier big-blockers have their full attention on the Bitcoin Cash altcoin. They fully recognize that Bitcoin Cash is an altcoin, and there is good two-way replay barriers making sure Bitcoin Cash and Bitcoin are two separate entities. Some of those - probably most of them - have a hope that Bitcoin Cash will replace Bitcoin - implicitly that Bitcoin will fail - I find this a bit scary actually.

  • The more "moderate" folks support SegWit2X. More than 90% of the miners (by hashing power) has flagged support for the SegWit2X compromise. Many of the exchanges have also promised to support SegWit2X .

  • The craziest small-blockers still refuse any kind of increase on the block size limit. The typical small-blocker pretends to be ignorant towards the SegWit2X-proposal, bragging about the successful BIP-148 activation on the 1st of August was a big success. In reality BIP-148 was uneventful due to the SegWit2X initiative.

I consider myself to be "moderate", but more sympathic towards the big-blockers than the small-blockers.

SegWit activation - BIP-91, BIP-148 and BIP-141

It was predicted that there would be a lot of chaos at the 1st of August, as BIP-148 was to activate. Any node supporting BIP-148 would then be rejecting any block not flagging support (voting) for the SegWit extension. With around 20-25% of the miners supporting SegWit (and unknown amount of them supporting BIP-148) the "Bitcoin" being mined by most of the miners would efficiently be another Bitcoin than the Bitcoin accepted by the BIP-148-supporting nodes - and the BIP-148-supporters would hope that they would be able to force the miners to support SegWit.

We were rescued from disruptions by the SegWit2X initiative (BIP-91). There were overwhelming mining support for SegWit2X. After the activation, BIP-91 does the same as BIP-148 - it also rejects any block not voting for SegWit. Since BIP-91 was activated, blocks not voting for SegWit would not be included in the blockchain. This makes the BIP-148 activation into a non-event.

Now people are also celebrating that the SegWit BIP itself (BIP-141) has locked in. It's also a non-event, it was 100% predictable when BIP-91 locked in and changes nothing. SegWit is not active yet, SegWit will become active around the 21st of August. Mark the date - I predict a small jump in the Bitcoin price when people celebrate the activation of SegWit.

One of the selling-points for getting SegWit activated was that it will increase the capacity (and hence reduce the bitcoin network fees). The increase will come gradually, we won't see any fee reduction on the 21st of August.

Bitcoin Cash

Bitmain announced "Bitcoin ABC" as a continuity plan, should SegWit2X fail. Bitcoin ABC would feature bigger blocks and no SegWit. Balancing out the "User Activated Soft Fork", there would be a "User Activated Hard Fork" at the 1st of August, where the bigblockers would go for bigger blocks. It was supposed to remain shelved as SegWit2X got locked in. Apparently Bigblockers ran away with it and forced it through anyway, making the "Bitcoin Cash" altcoin. From my perspective, the only value proposition is the hope that Bitcoin Cash would become the proper Bitcoin should Bitcoin fail.

Bitcoin Cash features strong two-way replay barriers. This means a transaction signed for Bitcoin Cash will never be valid on the Bitcoin network and vice versa, giving the end-user full control of their two different coins. Also, there is no confusion out there, Bitcoin Cash is an altcoin and Bitcoin (with SegWit soon activated) is Bitcoin.

In adverse conditions, there will be no replay barriers. If a wallet holder wants to transact on one of the two chains but not the other, he'll have to go through special hoops to make sure his coins are split. In adverse conditions there will be no agreement on which one of the chains is the real "Bitcoin" and what is an alt-coin. Proponents of both chains will claim their chain is the only true Bitcoin. Even though the end-result will be that there are two incompatible coins and networks, people at both sides of the chism will deny using other labels than "Bitcoin", "BTC" or "XBT" on their coin.

Block size increase

The BIP-148-dragon was pivotal for getting BIP-91 fast-tracked through - but the 2X-part of the Segwit2X agreement is very important. In October we're supposed to see the first >1MB block. The very most of the miners want a block size increase, and I think most of the ecosystem is also ready for it. I do believe that without BIP-91, we would have had a very nasty chain split by now - probably 75% of the miners would still be mining on a BIP-148-incompatible chain. It would be very bad for both sides and for Bitcoin in general.

SegWit2X is actually an old compromise that has been taken up again. In 2016 there was the Roundtable Consensus where the miners promised to support SegWit and continue mining with the Core software, and in return the developers promised a 2X blocksize increase. Sadly, the only result from the roundtable consensus was yet another year of status quo.

The block size increase has been discussed since 2010, in 2015 it wasn't really a question if it should be increased or not - the question was when, how and with how much. The discussions back then wasn't so much about lifting or keeping the 1 MB limit, it was BIP-101 vs BIP-100 vs BIP-102. Many people considered BIP-101 (and it's implementation, Bitcoin XT) as an attack against Bitcoin - it was deemed so controversial that it was declared an "altcoin" at the Reddit sub and hence anyone supporting XT was subject for moderation - aka censorship. After that the we got a really bad schism in the Bitcoin community. (Ironically, the XT folks was rejecting BIP-100 because it gave too much power to the miners. We'd probably have 8 MB block size limit now if the XT folks had just thrown away BIP-101 as soon as they encountered that much resistance and supported BIP-100 instead).

The BIP-141'ers will reject a block size increase

The maintainers of Bitcoin Core is very clearly stating that they won't support a block size increase. The latest version of Bitcoin Core even denies talking to other nodes flagging support for SegWit2X! The current trajectory is towards a chain split of the very worst sort. Users running the latest Bitcoin Core software will find themselves at a different chain than users running other software. The hard-line small-blockers will insist that their version is the only true bitcoin. In the very worst case, we'll have confusion and chaos for weeks after the split, and value at both chains will plummet. I believe there are too much money at stake, so it's hard to imagine this disaster not being averted in the last moment.

Let me be clear - by now I see no valid reasons whatsoever not to double the block size increase - despite others firmly rejecting it. One of the major arguments brought up early in the debate was that a "contentious block size increase" could cause a very harmful chain split. Since BIP-148 was introduced, the very same people using this argument are now fully intent to ram through a harmful chain split if they don't get their will (SegWit, and no block size increase). I find it very ironic.

Another argument brought forth is that "decentralization" is directly at odds with increasing the block size. This is partly true. Big mining pools would traditionally benefit quite much from bigger blocks due to the block-relay latency - but this has become quite insignificant by now. Running a fully validating bitcoin node is more expensive the bigger the blocks are - but the small-blockers fail to define "centralization", and big fees (caused by small blocks) also causes quite some centralization risks.

Yet another argument brought forth is that we don't need a block size increase. That's just not true - we do need a block size increase. The Lightning Network is being hailed as a silver bullet - I have great hopes for the lightning network, but it ain't a silver bullet. Critics have also pointed out that the Lightning Network introduces big centralization risks as most transactions very likely will go through some very few "mega-hubs" rather than through a decentralized network.

The narrative on the small-blocker side is that the evil miners have been denying them the right to use SegWit, that the SegWit lock-in now shows that they do have power, and that the high fees we've been witnessing was due to SegWit failing to be adopted in due time. The narrative from the big-blocker perspective is that the consistent failure to raise the block size limit all since the debate started in 2010 has caused artificially high fees, that SegWit is an ugly/flawed/harmful construct, and that Lightning will be a disaster. Personally I think it's reasonable to allow both SegWit and a modest block size increase (and SegWit2X is a compromise, from both sides - from a technical point of view I still do believe the "FlexTrans" proposal is better than SegWit). Hence, I find it totally unreasonable to celebrate the SegWit lock-in, but still deny the 2X-part of the SegWit2X.

Scenarioes

The very best scenario would be if Core adopted the block size increase, but due to all the lunatic fanatics out there I don't see this happening.

Scenario 1 - Core-users gets marooned

This is my best-case scenario. Users of Bitcoin Core will reject the block size increase, and they will find themselves marooned on a desolate island. Hopefully all rational actors will upgrade to other software (i.e. btc1, which is a clean fork of Bitcoin Core, only deviating by implementing the SegWit2X-logic).

More than 90% of the miners stick to their agreement and honors the block size increase. Most of the rest of the miners will move after - there is no profit in mining on a dead chain. This will cause extremely long confirmation times for anyone using Core - basically, Bitcoin stops functioning for the Core users. With the difficulty adjustment algorithm in Bitcoin, Bitcoin is basically dead once the miners leave. Core will hard-fork with a PoW-change and difficulty readjustment change, but by doing this they have effectively defined themselves as an alt-coin (and also it is ironic as their narrative for three years now has been that we must do "whatever we can" to avoid a hard-fork; SegWit in particular was constructed to allow for some more capacity through a soft fork).

All the exchanges does the rational thing - they define Bitcoin to be the SegWit2X-coin. Core users will not be able to deposit to the exchanges anymore.

The very most of the wallet maintainers will ensure their wallets are on the working bitcoin chain - hence laymen will experience bitcoin working as it should. Only cause of confusion will be that they are unable to transact with some few crazy hard-liners.

Scenario 2 - some miners defect the SegWit2X-compromise

Some of the mining gear controlled by the big-blockers will be directed towards Bitcoin Cash. As the difficulty falls there, probably more gear will be directed towards Bitcoin Cash. This will cause the difficulty of Bitcoin mining to shrink, and it will possibly cause the small-blockers to gain more mining control.

Probably quite some of the 25% of the miners signalling SegWit prior to the SegWit2X agreement is sympathetic towards the small-blockers - and if quite some hashing power has already defected to Bitcoin Cash, it may be used as an excuse to break the deal. Totally there may be enough hash power to support the Core chain.

Scenario 2a: The exchanges will possibly force through a clean split of the two chains and some clean branding (i.e. Bitcoin2X vs Bitcoin Core). Including Bitcoin Cash, we'll end up with three different flavors of Bitcoin - and they won't have any advantages compared to the jungle of alt-coins that we already have out there. This fragmentation is not good at all, probably ordinary folks will prefer to be locked into some banking-backed solutions than to figure out of the jungle of cryptos.

Scenario 2b - the worst-case scenario - is that there will be total confusion for months with Bitcoin. Bitcoin Cash, Ethereum or some other worthy competitor may eventually end up as the winner - but for crypto currency totally it will be a disaster, investors will be fleeing with their funds.

Scenario 3 - miners are forced to stick to the 1MB-limit.

The exchanges really hold the key on this one. If the exchanges define Core as bitcoin, the miners will efficiently not be able to sell their 2X-bitcoins, and they will probably be forced to drop the 2X-part of the deal.

For those truly believing the 1MB-limit is important to stick to, this is the dream scenario. If they are right that all the SegWit-depending inventions really are silver bullets for the scalability-issue, then this may be the best scenario for Bitcoin as well. It should be very clear by now that I don't share this belief. The big winner of this scenario may be Ethereum. (A side note: Bitcoin has proven to be quite so centralized on the developer side if this is allowed to happen).

Sort:  

Thanks for the info. What would also be cool however is a post on what we should do to prepare for this split. i.e. what exchanges or wallets to use etc. Thanks.

As with any split, the general recommendation is to keep your funds in your own wallet, and not on some exchange, Localbitcoins, etc - if you have control of the private keys, then you will own coins at both sides of the split - if you own coins at some exchange, then it's totally up to the exchange to define what kind of bitcoins you have after the split.

That said, if an exchange promises to honor both branches, then it's most likely safe to keep funds at that exchange - like with the Bitcoin Cash split, those who kept their bitcoins at ViaBTC had a window of opportunity to trade Bitcoin Cash very early.

This split probably won't come with replay barriers. This means one has to actively split the coins to be able to control the Bitcoin Core coins and SegWit2X-coins separately. If having the coins at the right exchange, it's no need to worry about it, the exchange will take care of it.

It's a bit too early to give advises on what exchanges and wallets to use, or how to split the coins. The split will happen in November, not October, and still much is unknown.

Nice post
Thank you - @tobixen

Nice article.Thanks for the info @tobixen