The Bitcoin block size debate continues to rage as the price of cryptocurrency experienced significant volatility last week.
Many businesses and users in the Bitcoin Ecosystem support a block size increase to permit a higher transaction volume and speed so that Bitcoin can compete with mainstream payment systems.
Bitcoin XT developer Mike Hearn wrote recently that the Bitcoin Core maintainers will not raise the block size regardless of the amount of consensus behind it and that is rooted in conflicts of interest. Nonetheless, as the XTNodes.com website shows, the attempt by Hearn and Core developer Gavin Andresen to fork Bitcoin to a larger block size is also failing. This is despite the fact that some major enterprises and most recently Coinbase CEO Brian Armstrong have said publicly that BIP 101, the XT proposal, was the best plan for going forward.
A competing proposal called BIP 100 and developed by another Bitcoin Core developer, Jeff Garzik, has not been implemented and, according to Hearn, is not actively being worked on.
Critics of these proposals point out that changing the protocol to increase the block size or reducing the block interval could lead to certain risks, including an increased rate of forks, a reduction in security against attackers, less fairness for small miners, and requires more resources.
Peter Todd, a Bitcoin software developer and a prominent critic of block size increases, wrote on the Bitcoin Developers List last week:
raising the blocksize, especially by just removing the limit, is utter madness given it can be used to slow down block propagation selectively, so the hashing power that gets a given block is limited repeatably to the same group.
At the Montreal Scaling Bitcoin workshop in September 2015, researchers from Cornell University presented an alternative solution to the block size increase proposals. Developed by Ittay Eyal, Adem Efe Gencer, Emin Gün Sirer, and Robbert van Renesse, Bitcoin-NG is a significant redesign of the Bitcoin protocol that attempts to address scalability issues without increasing block size. This scalable blockchain protocol is based on the same trust model as Bitcoin, but its latency is limited only by the propagation delay of the network, and bandwidth is limited only by the processing capacity of the individual nodes.
Bitcoin-NG apparently achieves this performance improvement by decoupling Bitcoin’s blockchain operation into two planes, leading miner election and transaction serialization. It divides time into epochs, where each epoch has a single leader.
As in Bitcoin, leader election is performed randomly and infrequently. When a leading miner is chosen, it is entitled to serialize transactions unilaterally until a new leader is chosen, marking the end of the former’s epoch.
The Cornell researchers admit that this is a significant departure from Bitcoin’s operation, but that Bitcoin-NG maintains Bitcoin’s security properties.
In Bitcoin, the system generates a retrospective block. The leader election is already taking place, but the leader is in charge of serializing history, making the entire duration of time between leader elections a long system freeze. In contrast, leader election in Bitcoin-NG is forward-looking, enabling the system to continually process transactions.
Rather than mining transactions directly, miners are competing to be a leader for the next 10 minutes and are authorized to sign off on transactions during that time. But then if they abuse that power by double spending the network cancels it and takes away their block reward.
The NG protocol maintains the blockchain’s overall structure, but incorporates two types of blocks, key-blocks and microblocks.
Eyal & Sirer blogged in October:
Key-blocks are used for leader election. They are generated by mining with Proof of Work, as in Bitcoin, and they occur at 10 minute intervals on average, as in Bitcoin; in fact, they are identical, in format, to Bitcoin blocks, except for a small twist on the coinbase transaction, explained below. Every key-block initiates a new epoch. Microblocks contain transactions; they are generated by the epoch leader; they contain no proof of work, and are signed with the leader’s private key.
The key-blocks can be very small as they only need to contain the coinbase transaction, which provide the public key that the miner will be using to sign microblocks. Since a key-block requires proof of work, competing miners cannot just manufacture one and takeover the leadership at will. Following the key-block, the lead miner can quickly issue microblocks, simply by signing them with the private key corresponding to the public key named in the key-block’s coinbase.
The researchers claim to have run large scale experiments with 1000 nodes comparing Bitcoin and Bitcoin-NG, around 1/6th of the routable Bitcoin network. Eyal and Sirer reported:
The results demonstrate a qualitative improvement on all metrics related to performance and fairness. Bitcoin-NG scales optimally at the protocol level, limited only by the properties of the physical network and the individual nodes.
Eyal and Sirer conclude by pointing to a Bitcoin Ecosystem that is plagued by conflicts of interest and reproducing part of the project’s announcement on the Bitcoin Developers List:
NG is compatible with both Bitcoin as is, as well as Blockstream-like sidechains, and we currently are not planning to compete commercially with either technology — we see NG as being complementary to both efforts. This is pure science, published and shared with the community to advance the state of blockchains and to help them reach throughputs and latencies required of cutting edge fintech applications. Perhaps it can be adopted, or perhaps it can provide the spark of inspiration for someone else to come up with even better solutions.