The Bitcoin block size limit debate has been heating up since our last post on the topic.
Matters came to head in mid-August 2015, with the official release of the Bitcoin XT Core client, by Gavin Andresen and Mike Hearn.
Besides XT, there are now multiple solutions offered by other developers close to Bitcoin, although each one would still require some degree of participation and/or a leap of faith from the miners and other players.
Along with the code and whitepapers, there’s been lots of discussion online forums like Reddit and Medium between the developers, as well as between the supporters and critics of the various approaches, with some online comments degenerating into personal attacks and good old trolling.
The Bitcoin protocol is first and foremost, an open-source project (OSP). Although many people can contribute to an OSP, larger projects tend to have leaders or maintainers who decide which approach to follow when there’s disagreement. However, open source projects are also subject to forks.
Some developers fork in order to go their own way and have the freedom to tinker. Most Alt-coins are “tinker” forks, either of Bitcoin or of other Alt-coins.
Then there are extension forks, used to develop and test out new features with the hope they will eventually be merged into the main branch once they have been peer-reviewed. There has been over 100 Bitcoin Improvement Proposals (BIPs) over the years, some of which have been universally accepted, some still remain as drafts, and yet other features have been implemented in stand-alone wallets but are not yet inter-operable.
A third kind of fork happens when there is a lack of effective leadership and the contributors keep overwriting or vetoing each other’s work. A developer might then fork to break out of “analysis paralysis”, hoping the rest of the community will follow.
The XT fork by Gavin Andresen and Mike Hearn is a “leadership” fork, but not a “coup” since it only kicks in after 75% of the mining power supports it, a referendum if you will.
For now Bitcoin XT Core behaves just like a regular Bitcoin Core client, but monitors recently-mined blocks for certain metadata that indicates support from miners for the XT solution: increasing the block size to 8MB and doubling it every 2 years, thus expecting a kind of Moore’s law for growth of affordable hard drive storage space and Internet bandwidth.
Once at least 750 of the last 1000 blocks are signaling support, XT will give two more weeks for the rest of the ecosystem to upgrade, and then XT will pull the trigger: it will stop relaying blocks from those who did not upgrade, thus essentially forcing the minority to avoid getting left behind on a shorter version of the blockchain.
Meanwhile, the mining pools are choosing sides in the block size debate, or coding their own increases. The hashing power of miners still defaulting to the 1MB block size limit is now a minority, according to Blocktrail, which follows mining pools.
August 30, 2015: Bitcoin biggest pools and their block size vote tally
As you can see in the snapshot, the majority of mining pool power is currently committed to a the BIP100 solution that Jeff Grazik drafted over the Summer. BIP100 would let miners vote on the block size every three months. The first vote in early 2016 could double the limit to 2MB, then 4MB as early as 3 months later, but there would still be a 32MB ceiling.
The “default” vote are from pools that are still defaulting to the 1MB limit, at least for now.
The 8MB vote is probably from pools that are taking the initiative to tweak and re-compile the Bitcoin Core open source code for their own use, per consensus that the Chinese pools recently reached among themselves for a one-time increase to 8MB.
At the bottom of the list with barely 1% is BIP101 with only one small mining pool pledging it’s 1% or so mining share to support XT.
Unlike the mining pools, however, many of the larger Bitcoin businesses have signed a pledge of support for XT.
On September 1, An Open Letter to the Bitcoin Community from the Developers has been published by many Bitcoin news sites. The letter is signed by over 30 Bitcoin Core developers, with Mike Hearn and Gavin Andresen notably absent. The letter does not mention XT but rather emphasizes that “the Bitcoin developer community is dedicated to the future of Bitcoin” and promises further collaboration, with the next step being a Scaling Bitcoin conference in Montreal later this September. Notice the corporate sponsors on conference website include the companies who pledged support for XT.
Looks like both developers and businesses are empathizing with the needs of the greater Bitcoin community and there is general consensus among them on what the future of Bitcoin should be like.
It should also be noted that Bitcoin’s challenge of scaling up while remaining decentralized is not limited to the block size itself. While the block size limit might be the immediate bottleneck, core devs are also working on stuff like reducing the CPU load for verifying signatures and reducing time and bandwidth required to sync a full node.