Bitcoin core developer Jeff Garzik has recently proposed a consensus based solution to the bitcoin block size debate and the proposal is drawing attention from some heavy hitters in the bitcoin ecosystem.
The block size debate began back in October 2014 when Gavin Andresen announced a proposal through the Bitcoin Foundation blog entitled “A Scalability Roadmap”. Since then ex-google developer Mike Hearn partnered up with Gavin and both have pushed for a significant increase in block size from 1mb to 20mb and failure to do so would be catastrophic if this increase was not implemented immediately and that this change would take place with or without the consensus of the bitcoin community, this approach was seen by the community as an act of totalitarianism which turned the debate into more of a civil war of sorts with both sides of the issue slinging mud…
Bitcoin XT has offered to reduce the initial increase from 20mb to 8mb with an annual gradual increase however it seems the community is not buying into the protocol with accusations that the XT version contains back doors to allow for 3rd party interference an on and on…
Enter Jeff Garzik and the BIP100 solution who argues that an increase is definitely needed but should be increased through a framework where the network increases block size by consensus which would be a lower risk technically and politically than a hard fork. Block sizes exceeding 1mb may be selected without flag day network upgrade. Small size increments limit the potential for unexpected harm to bitcoin network security and allow the network time for testing, preparing and adjusting to overall behavior. More complex solutions such as extension blocks are rejected in favor of a one time simple change that will greatly reduce the need for future hard forks in this area.
Protocol changes proposed:
- Hard fork, to
- Remove static 1MB block size limit.
- Simultaneously, add a new floating block size limit, set to 1MB.
- The historical 32MB limit remains.
- Schedule the hard fork on testnet for September 1, 2015.
- Schedule the hard fork on bitcoin main chain for January 11, 2016.
- Changing the 1MB limit is accomplished in a manner similar to BIP 34, a oneway lockin upgrade with a 12,000 block (3 month) threshold by 90% of the blocks.
- Limit increase or decrease may not exceed 2x in any one step.
- Miners vote by encoding ‘BV’+BlockSizeRequestValue into coinbase scriptSig, e.g. “/BV8000000/” to vote for 8M. Votes are evaluated by dropping bottom 20% and top 20%, and then the most common floor (minimum) is chosen.
BIP100 accomplishes several goals:
- Demonstrates that change is possible and that the Bitcoin protocol can be upgraded
- Eliminates 1MB limit as impediment to adoption
- Removes hard fork risks
- A “Keep It Simple Stupid” solution in terms of code changes
- An upgraded path yet restrained until problems and solutions are better understood
This approach introduces friction into the block size increase process making it scalable but giving participants in the system sufficient time to observe system behavior and change course moving to a system where the market decides block size optimization.
Some of the more notable names that have taken a stand for BIP100 include F2Pool, AntPool, BitFury, BTCChina, BW Pool, Eligius, KnCMiner, Slush, 21Inc, Telco 214 and GHash.io to name a few.
This debate has now been out of control for the past 6+ months and has seen it’s share of in-fighting between core developers but it is way too ridiculous at this point and something has to click in order for bitcoin to survive… The bitcoin community has been divided and is primed to be conquered if a solution is not found, a solution for the good of all not just the few! BIP100 seems to be the solution that may achieve this goal.
For more information and to educate yourself on BIP100 visit: http://gtf.org/garzik/bitcoin/BIP100-blocksizechangeproposal.pdf