The Bitcoin Cash Roadmap

It has been exactly once month since Bitcoin Cash split away from Bitcoin Core and by any reasonable standard it should be considered a success. At the time there was a huge amount of uncertainty. Would anyone support the new fork? Would it trade on any exchanges? Would it survive the initial difficulty adjustment? Would anyone mine it? The answer to all these questions turns out to be yes. And while some of the loud voices in the Bitcoin community went on the record predicting that Bitcoin Cash would be worth “not even a dollar each”, it’s currently trading around $622 and has a $10 billion market cap making it the third most popular cryptocurrency.

So where does Bitcoin Cash go from here? While I’m personally not affiliated with Bitcoin Cash per se, though I did write a Bitcoin Cash wallet, I’ve been following it closely enough to report on what seems to be a growing consensus around it’s long term roadmap. And I have to say, while the roadmap is probably more risky than Bitcoin Core’s, it’s certainly much more ambitious and much more capable of delivering meaningful scaling if successful.

Before we dive in let’s review Bitcoin Core’s roadmap so we have something to compare it to. Now that segwit is active on the network, what’s left? For the most part it’s just Schnorr signatures and MAST. While both technologies would represent and improvement over the status quo, neither delivers any meaningful additional capacity. How much capacity they deliver depends on usage patterns but you’re probably looking in the 15-25% range ― which is maybe only enough reduce fees by a few pennies, if at all. Besides that Core has basically bet the house on the lightning network in hopes that it will live up to the hype. Only time will tell.

Even if it is successful it still needs dramatically more on-chain capacity if it’s going to become widely used.

The following are a list of items that appear to me to be more or less on the Bitcoin Cash roadmap. I say appear to me because there isn’t any formal roadmap (as of yet), just a bunch of ideas thrown around on the mailing list and in slack that seems to have a rough high level consensus (implementation details spur much more debate).

New difficulty adjustment algorithm
The altcoin community very familiar with what happens when more than one coin competes for mining hardware ― wild swings in difficulty as miners switch to the most profitable-to-mine coins and unreliable block times. Bitcoin hasn’t had to deal with this during its lifetime since it’s the only cryptocurrency using double SHA256 as its mining algorithm. That has now changed with the Bitcoin Cash fork. The difficulty adjustment algorithm designed by Satoshi is pretty naive and not well suited for multiple coins competing for the same hash power and both Bitcoin Cash and Bitcoin are suffering because of it; Bitcoin Cash more so.

So it makes sense to change the algorithm. Fortunately a good deal of research has been done on this topic over the years so it’s really just a matter of implementing the best solution. The result is that Bitcoin Cash will have a modern adjustment algorithm that prevents wild swings in block times. Bitcoin, on the other hand, will have to continue to muddle through the relative changes in mining profitability.

Fix transaction malleability the right way
The primary complaint people had with segregated witness was not related to what it was trying to achieve ― fixing malleability, but rather how it was implemented. We were told the reason the Bitcoin community needed to accept such a cumbersome and ugly hack on a multi-billion dollar protocol was that to do it any other way was to risk a chain split. Ironically, that hack ended up being a primary driver of the Bitcoin Cash chain split. Bitcoin Cash is probably better off for forking off when it did because now it can fix malleability the correct way. Whether that is through a minimal malleability fix, with the transaction format remaining largely unchanged, or by changing the format to be more extensible is TBD.

In either case this change isn’t likely a high priority in the short term. It should be obvious to everyone that the primary use case for a malleability fix, the lightning network, is not ready right now. Even when it finally becomes ready it will take time for the technology to mature. And even more time to gain consumer acceptance, if it ever does. This could easily take several years to happen. If Bitcoin Cash takes 12 or 18 months to get a malleability fix out the door I doubt it will miss anything.

Parallel transaction validation / New merkle tree format
Today each transaction in a block must be validated in sequential order since later transactions might depend on prior ones. This prevents the validation from being done in parallel, increasing the time it takes to validate a block and creating a scalability bottleneck. By validating in parallel the work can be split across multiple cores or even multiple machines speeding up validation time. Since the ordering is no longer important, the merkle tree can be redefined to allow for things like proof-of-absence which would been needed for fraud proofs or sharding down the road.

UTXO comittments
Committing the root of the UTXO set to each block would improve light client security, support a fast sync mode, and help with sharding down the road. At this point in time it’s not clear if there is an efficient enough way to do this that wont itself become a scalability bottleneck. Ethereum does this with its Patricia tree, so there is at least some precedent but more research into how best to do so is probably still needed.

Short of the Patricia Tree, Bitcoin Cash could benefit from something like ECMH (Elliptic Curve Multiset Hash) proposed by Core developer Pieter Wuille. It doesn’t allow for the proofs we would like to create, but it’s very efficient and would probably be sufficient for checkpointing the UTXO set for fast sync. This could even be done without committing anything to the blocks and could be replaced by something better later. This would allow a new node to get fully bootstrapped in like five minutes rather than a couple days and allow all but archival nodes to prune transaction data older than six months or a year.

Bitcoin-ng / Weak blocks
Bitcoin-ng and Weak blocks are two different approaches to solving some scaling issues. The first has to do with larger blocks artificially benefiting larger miners at the expense of smaller miners potentially creating mining centralization pressures. The second is the need to validate blocks all at once rather than over time. Bitcoin-ng goes quite a bit further to fixing these issues than does weak blocks but it’s a pretty dramatic change to the consensus rules and one that has never run in a production environment. Weak blocks is just an addition to the wire protocol and doesn’t touch the consensus rules and is therefore more conservative.

If I had a vote I would probably do weak blocks now, see how it works, and then consider ng later on down the road.

Both bitcoin-ng and weak blocks would have the side benefit of improving zero confirmation security (though it still wouldn’t be perfect). Bitcoin-ng more so because it changes how transactions are mined and confirmed. Weak blocks, not being a consensus rule, would still permit miners to mine double spends, but it would give us a historical record of every double spend on the network. Merchants could use the blockchain data to calculate the percentage of transactions that received a weak confirmation but did not make it into the blockchain due to a double spend (likely to be very low) and use that to manage risk appropriately.

The holy grail of blockchain scalability is not pushing all transactions off onto centralized or quasi-centralized layer 2 platforms, but rather removing the need for all nodes to download and validate all transactions for the system to work. Two of the changes mentioned above, restructuring the merkle tree and UTXO commitments, can possibly introduce a new partially-validating operating mode. Users could still run a fully validating node if they want to (a node that validates all shards), but they would have the option tell it to only download and validate some lesser number of shards and still have the same security as a full node. In theory, the network should still be able to function if all nodes, including miners, are running partially validating nodes. If it works you basically get unlimited on-chain scaling without introducing any centralization.

Sharding is still very researchy and so this is rightfully last on the roadmap, but it’s still an ideal to work towards. Ethereum has sharding on its roadmap, so hopefully we’ll get to see how it works for them and learn from what they do.

So that’s it. Like I said, it’s pretty ambitious. It will definitely require several hardforks to realize this roadmap, but one the benefits of doing changes by hardfork is that you can be somewhat bold when not constrained by backwards compatibility requirements. Some of this stuff might not work out but at least Bitcoin Cash is rejecting the notion that cryptocurrency aught to be nothing more than a corporate settlement system and pushing forward as spendable electronic cash.

13 thoughts on “The Bitcoin Cash Roadmap

  1. Bitcoin Cash was wrong about its difficulty algorithm and that puts a big trust issue in the devs. We cannot trust anything this roadmap says because Bitcoin Cash devs have demonstrated incompetence already. With that being said i wish you the best of luck.

  2. 3rd market cap does not make it 3rd most popular… most cannot even access their coins as they are tied up. You also didn’t mention that Bitcoin Cash is currently controlled by centralized hashpower, centralized developers, and centralized (fake) nodes.

    • Hopefully as soon as the exchanges are ready for senile old Bitcoin to be pushed off the throne the Chinese miners will switch their 70% hashing power advantage to the new King, Bitcoin Cash, and cause the dreaded Chain Death Spiral to happen to BTC. Bitcoin’s fate is entirely in the hands of the Chinese miners, some of whom are leaving money on the table to mine Bitcoin Cash, thereby keeping it alive. The only thing I’m worried about is: what will the central bankers do to defeat Bitcoin Cash?

  3. Well Bitcoin is dead as money. You can’t buy coffee or anything with it because the transaction costs are stupid. They have had all the time in the world to fix this but chose not too. Bitcoin is being hoarded like gold now in the expectation it will be used as money in the future. Bitcoin Cash is what Bitcoin originally was and can be used right now as money because of very low transaction costs.

    • Where can you buy something with BCash?
      If your country financial system was collapsing right now and had to hide $400k would you put it in BCash or Bitcoin?

  4. Many of us, entered the space because we believed in the concept of freedom regarding our own money, to escape the tricks and controls of the corrupted banking elite, with their quantitative easing tricks, AML restrictions (when actually money laundering just means that you are not using their cartel system, and have not paid a ‘licence’ for entering their private banking club). Many of us, recognising the smug, arrogant, destructive, selfish behaviours of those in control of the old money structures, were heartily sick of it, really sick of it. You only have to watch the documentary movie ‘Inside Job’ to see the sickening levels of corruption and bare faced lies, arrogance, and sheer criminality. Even those trying to escape this mockery, trying to escape into precious metals, found themselves locked again into a totally corrupted manipulated system, where even the government agencies tasked with guarding against manipulation, deliberately and wantonly turned their heads, and ignored direct evidence laid before their eyes in real time as the manipulations were happening, and they were being talked through it. See:

    Realizing that even the supposedly safe haven of previous metals were little more than a totally corrupted and manipulated arm of the same totally corrupted money structures and controls, many of us, libertarians, voluntaryists etc, found a deep interest and passion in the cryptos, and our first exposure to them, namely Bitcoin.

    However, once again, as time went by, it became apparent that the bitcoin project had been hijacked by a group, financed by the bankers, and the financial elites (even to the extent of the bilderbergers chief, also the ceo of axa insurance, financing this ‘bitcoin project hijack team’ to the tune of some 76 or so million dollars. The consequent and ensuing propaganda, censorship, personal attacks, smear campaigns, the forcing out of good developers and anyone who disagreed, the ‘dragons den’ co-ordinated attacks channel, – did we mention ‘toxicity’? …..well over time, anyone who had eyes to see, could clearly see what was happening.

    That is why, when the split happened, and Bitcoin Cash sprang into life, it was a case of rejoicing, and renewed hope for many of us. There is a dream, that some great heroes in the space, men such as Roger Ver, have espoused, of personal freedom for our own personal money, without the control of ‘ a stranger in a building which has a flag in front’, and for which they have suffered extreme villification and smear campaigns. To my mind, the guy is not just the Jesus, but the damn Saviour. And Craig Wright – another great hero. When I saw the vid on youtube of him speaking at the conference on the future of bitcoin, he was ‘on fire’. Such a contrast to the sickening smears and snide backstabbing attacks of the core set. Truly, now we can move on and upwards. I want to say a personal thank you to Amaury Sechet and to all the other current Bitcoin Cash developers. To many of us, you are heros, carrying the flag, lighting the way, opening the roads, ushering in a new era for crypto and financial freedom, and our beloved bitcoin – not the corrupted hijacked project that the bankers $76M bought, but the REAL bitcoin, bitcoin cash, the real project, which has been rescued, and which we love, and which we all want once again to see rising, growing, being adopted all over the world, more and more. Thank you so much guys, for all your efforts and work! Thank you to the heroes, even all the redditors who have taken the fight on daily to fight the paid shills and their misinformation campaigns, and especially to those named above, some of whom have taken on and fought against monstrous personal attacks and smear campaigns, in order to fight against those hijacking our project. Thank you guys! and there are many many of us, who recognise your sacrifices, efforts and hard work, and one day, when Bitcoin Cash stands at the forefront of finance, your place and stature will be widely recognised and known. Thank you Guys! and please carry on the good fight!

  5. Pingback: 오늘의 트위터와 커뮤니티 코인 동향 – 2017/09/07 – cointoday

  6. BCrash trading at $330, not $600.
    Difficulty Adjustment = CHEATS.
    Actually Higher fees than BTC.
    BTC MemPool almost empty since a week or 2, 20sat/b tx can confirm in almost every block.
    Super-centralized mining and devs.
    Fixes stripped away by the 2 KiddieDevs team.
    BCrash is just an egocentrist ScamCoin.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s