Spearheaded by Barry Silbert’s Digital Currency Group (DCG), this week over 50 companies signed and published a “Bitcoin Scaling Agreement” on Medium. The agreement intends to put an end to Bitcoin’s long-lasting scaling debate.
Whether it actually will is a another question.
Here’s what the agreement entails, how it compares to existing scaling proposals and what it requires to succeed …
What the Agreement Entails
The DCG agreement is based on the “SegWit2MB” proposal, originally floated by RSK Founder and Chief Scientist Sergio Demian Lerner. This proposal couples activation of Segregated Witness (SegWit), the centrepiece of Bitcoin Core’s scaling roadmap, with an added block-size-increase hard fork down the road. While SegWit itself offers an increase to two to four megabytes, the added hard fork should double this to a maximum of eight megabytes.
According to the Medium post, the soft fork will be activated “at an 80% threshold,” (presumably) referring to hash power. And the hard fork will be activated “within six months.”
However, it seems that different signatories have different interpretations of what this actually means. Some claim that SegWit will be activated as a soft fork first, followed by a separate block-size-increase hard fork later. Others suggest that the soft fork will come first, but in such a way that it would trigger hard fork code, which still activates later. Yet others suggest that both the soft fork and the hard fork will be activated at the same time. And some even think the hard fork will come first, followed by SegWit activation later.
While these kinds of details may still need to be worked out, over 50 companies signed the agreement. Combined, they currently represent more than 80 percent of hash power on the network and, according to these companies, $5.1 billion USD in transaction volume as well as 20.5 million Bitcoin wallets.
But there are telling omissions, too. Perhaps most notably, no Bitcoin Core developer is party to the agreement, nor were any of them even present at the meeting. Similarly, none of the entities that fund Bitcoin Core developers — like Chaincode Labs, Blockstream or MIT’s Digital Currency Initiative — signed on. And of course, some 50 companies are only a segment of the Bitcoin industry in the first place; several big players are still missing.
Last but not least, Bitcoin’s broader user base is not involved with the agreement either, nor is the agreement in any way tied to community support.
How the Agreement Compares to Existing Scaling Solutions
Like the DCG agreement, Bitcoin Core’s scaling roadmap includes Segregated Witness as well. It also suggests that a hard fork to further increase the block size limit could be needed in the future, though it does not specify a specific point in time. Most Bitcoin Core developers also believe that a hard fork requires at least a year to prepare, perhaps more. As such, both Bitcoin Core and the DCG agreement share activation of SegWit as a first step in their scaling plans — but not the hard fork part.
However, the SegWit activation mechanism that is part of the DCG agreement slightly differs from the current activation mechanism implemented in Bitcoin Core. Most important, the DCG agreement lowers the required hash power threshold from 95 to 80 percent. And because of how SegWit is designed, activation through the DCG agreement is incompatible with all SegWit-ready Bitcoin nodes on the network.
It may be possible to work around this issue, however. As proposed by Bitmain Warranty engineer James Hilliard, SegWit activation can be made compatible between the DCG agreement and Bitcoin Core, though it’s a bit “hacky.” In short, if miners signal support for SegWit along the DCG agreement with at least 80 percent of hash power, this 80 percent can also start to completely reject any block that does not signal support for SegWit. This activates the current SegWit proposal by Bitcoin Core, as that would reach its 95 percent threshold as well.
Down the road, the DCG agreement’s hard fork is very unlikely to be implemented in Bitcoin Core for a number of reasons, but most importantly because it is contentious.
Other scaling proposals, like Bitcoin Unlimited’s Emergent Consensus or Bcoin’s Extension Blocks, are not necessarily incompatible with the DCG agreement, or at least they don’t need to be.
What the Agreement Requires to Succeed
What the agreement requires to succeed depends on your concept of “success.” But it will be a challenge by any definition.
First off, it should be noted that the proposal — which allows for blocks of up to 8 megabytes — may not be safe. While the full extent of the block size issue is outside the scope of this article, suffice it to say that some think that 8 megabyte blocks are, in fact, a significant risk.
Perhaps even more important, code needs to be written, and it is not yet clear who will actually do this. Moreover, this code should really be reviewed and tested extensively: the plan is to have it carry billions of dollars’ worth of value. This will not be easy to do within six months; perhaps impossible.
Then, this code must be brought into production. For the hard fork in particular, this means that everyone effectively needs to integrate and switch to the new protocol. If all signatories of the agreement accomplish this, it would probably be sufficient to at least get this new protocol running.
It seems obvious that the signatories of the DCG agreement hope that the rest of the Bitcoin ecosystem will also switch to the new protocol once the fork takes place. In that case, the new protocol would (probably) be considered the new "Bitcoin” by everyone.
But given the contention of the proposed hard fork, this currently seems very unlikely.
While it’s impossible to predict the future, it seems almost certain that at least some segment of Bitcoin developers, miners, companies and — most important — users will reject the fork. They will stay put on the existing protocol even if that means it takes much longer for blocks to confirm, or they will roll out a user activated soft fork, or perhaps they will even deploy a counter–hard fork. Under any of these scenarios, the Bitcoin blockchain would “split” into two chains, or more.
The real challenge, therefore, is to get people to use the new chain. And, if that is desired, to get them to consider it the “real” Bitcoin. This will probably be a much harder challenge than forking itself, even for all the companies involved in the DCG agreement.
And most important, for the agreement to succeed in any way at all (perhaps even under a different name than “Bitcoin”), it will require the signatories to follow through. The Bitcoin protocol is difficult to change, and promises or Medium posts alone don’t have any impact on it whatsoever, as several similar commitments have proven in the past.