by Albert Szmigielski
As Bitcoin, the secure network and bitcoin, the currency gain in popularity, the number of transactions per time frame, and therefore per block increases. There is a limit to the number of transactions that can be included in a block. As the number of transactions is trending upwards, we are approaching the 1MB per block limit. A natural reaction would be to shrug and say: “so what, just raise the limit, problem solved”. However raising the limit has consequences on the economics of the network. Conversely, not changing the limit presents a different set of consequences. What follows is a summary and a review of arguments for and against the block size increase.
Those in favour.
The major argument in favour of increasing the block size is to allow adoption and use of the network and currency by a larger number of people. It seems that encouraging more people to join the ecosystem is a worthy goal. There is something to be said about the network effect, the more users we have the more valuable the network will become. Of course we have to grow at a predictable or steady rate so hardware and software can keep up with the demands of the users. This argument makes a lot of sense, if we think of Bitcoin as a business, or a platform upon which start-ups can build, then growing it seems like an obvious choice. Increasing the block size and therefore the number of transactions per second accomplishes that goal.
The second most stated argument for increasing the block size is to prevent a network break-down. It is not obvious, although there are plenty of speculative scenarios, what would happen if every block was filled to capacity. Possible scenarios could include: crashing nodes, rising fees, long confirmation times, user dissatisfaction, and perhaps user attrition due to the dissatisfaction. Plausible explanations exist for all the above scenarios, but simulation data is scarce. Predicting user behaviour and as a result network behaviour is not trivial. Perhaps preventing undesired network events like crashes is a good enough reason by itself to raise the limit.
The next most commonly brought up argument is the development of a fee market. If the space in a Bitcoin block is valuable, perhaps it should have a price attached to it. That is, let the users decide how much they want to pay to have their transactions confirmed. Those who want to raise the block limit argue that it is still too early for a fee market. We should gain more users first before we impose significant costs on them.
Core developers Jeff Garzik, Gavin Andresen, and the recently resigned Mike Hearn were advocates of increasing the block size, although in different ways. The arguments for increasing the block size by a small amount does make sense, as it would be basically keeping the status quo and only accounting for the increased bandwidth and computing power that technological progress gives us gratis.
Those in the camp that opposes raising the block size have been called Bitcoin purists as they do not want to modify the protocol beyond what Satoshi did. Their main argument against raising the limit is the hard fork that is required to institute such a change. A hard fork is a tricky upgrade as it is not backwards compatible and therefore it requires that nearly all users upgrade almost simultaneously. With around 5000 full nodes, such an upgrade may be difficult.
The second most cited argument is that an increase in the block size would lead to more centralization. As the demands on nodes rise, they argue that the decrease in number of full nodes would accelerate. Their argument does have merit, one of the greatest benefits of Bitcoin is its decentralization. It is not obvious however that doubling the blocksize to 2MB would place undue demands on nodes. It now seems that most miners are in favour of raising the block size limit via Bitcoin Classic, which would imply that they feel the demands are not too onerous.
Thirdly the against camp thinks that a fee market is a good thing, and that pushing some use-cases out of the system onto layers built on top of Bitcoin, such as Sidechains, or the Lightning Network is the preferred way to move forward. Perhaps such a solution carries a great deal of elegance with it, but these top layers are not currently ready and we are brushing against the 1MB limit now.
Additionally, arguments against an increase, center on relay network related issues, such as slower propagation speeds, and difficulty with fast block propagation. Such concerns are valid as there is not enough data to predict what will happen if the increase takes place. However, it is reasonable to assume that an increase in block size will not result in an immediate jump to 2MB blocks, so the network would have time to adjust, and there would be live data about block propagation when blocks are greater than 1MB.
Bitcoin Core developer Pieter Wuille cautions against using uncertainty surrounding inaction as a reason to increase the block size. He advocates that an increase should increase utility and the risks that go with it should be understood.
Who is right?
The short answer is no one. Both sides present valid arguments. There are different user groups in the Bitcoin ecosystem, sometimes their interest are not aligned and can even be directly opposing. As a result there is no universally right solution. A solution favoured by one group maybe considered unacceptable by another group. The early adopters would want to see no increase. It may be in the best interest of miners to stay with 1MB blocks, however most miners do support a small increase of some kind. On the other hand the businesses that want to use Bitcoin for their ideas want as much of an increase as they can get. All parties cannot be pleased at the same time, there must be a compromise. We have to choose the lesser of all evils.
Both the for and against camps make valid arguments. Generally speaking those who want to increase the limit are in favour of growing the network and preventing a breakdown due to various factors that full blocks would cause. In a way they want to keep the status quo with a small change to allow the acknowledgment of technological progress.
The arguments against an increase aim to keep the network pure – free of low value, large volume transactions. Such an approach is elegant, but it does not address the possible adverse effects of full blocks.
In the end it seems that we are currently on a path to a limit increase. The bitcoin Classic proposal is gaining support amongst miners and Bitcoin businesses. It also has Gavin Andresen and Jeff Garzik among its developers.