Go to the profile of  leyi
Leyi is an intern at CoinHako for Summer 2016. She is passionate about FinTech and thinks that blockchain is pretty cool.
5 min read

Bitcoin’s block size debate

If you have used CoinHako the past few days, you may have realized that we posted a notice about the congestion on the Bitcoin network.

transactions on bitcoin has been slower

If you have made a transaction in Bitcoin, you would realize that it has taken longer and longer to send your bitcoins to your recipient.

In the past, your transaction might have been accepted in a block within 10 minutes, and your recipient can spend the bitcoins after a pre-determined number of confirmations set by his/her wallet.

If you have tried to make transactions recently, you may realize that it can take up to a few hours before your transaction is accepted.

This post explains what the block size limit is and how it affects you.

What is Block Size?

In Bitcoin, there is an upper limit on the size of a block. Each block contains past transactions, and other data. Bitcoin has a block size limit is set to be 1MB, to prevent spamming on the network. This can accommodate around 2000 transactions.

However, due to Bitcoin’s growing popularity, there has been a growth in the number of transactions made on the Bitcoin blockchain. The quota of transactions on the blockchain has been rapidly filling up, and this means that there is are more unconfirmed transactions piling up in the mempool. This results in longer transaction time for users.

Bitcoin's blocks are quickly getting filled up.

Bitcoin’s blocks are quickly getting filled up.

Without a solution to blockchain congestion problem, transactions on the blockchain will continue to be delayed.

To quicken transfer, users can pay miners higher transaction fees to be included in a block sooner. However, this has created bidding war for transaction fees.

Neither of this is good for Bitcoin’s users.

This has been identified to be an imminent problem since 2015, and most agree that there needs to be some way to increase the number of transactions on the network. However, there is no consensus on how this increase should be achieved.

What is the controversy?

It is obvious that there should be methods to increase the capacity for transactions, but how to implement this solution is not obvious.

There mainly 3 ways: Hard fork, off-blockchain transactions (such as Lightning) and SegWit.

Since 2015, there has been the debate about what the best way to scale is. So far, it has only led to a stalemate over the best way to implement it.

Who are the players in this?** **

The Bitcoin miners keep the record of all the transactions, and they are the ones who are discussing and trying to agree upon the best way to implement a larger block. They are ultimately the ones who decide which implementation to adopt.

The Bitcoin Core developers are the ones who maintain the Bitcoin nodes run by a majority of miners.

Bitcoin Classic is another team of developers, which most notably includes former Bitcoin Core developer and early Bitcoin adopter Gavin Andresen, and Mike Hearn, who famously declared that Bitcoin was a failed experiment.

There are also other developers trying to come up with alternative solutions to the problem.

Why can’t we just increase the block size?

Increasing the block size requires coordination of various bitcoin miners, as this is a change that requires a hard fork. This means that the miners must agree on the solution and act in unison, or it is likely that there will be 2 separate forks.

However, due to the recent Ethereum hard fork, which saw Ethereum splitting into 2 chains, both of which are mined and maintained to varying degrees, there are fears that ideological differences in Bitcoin could end up similarly disastrously. This is why miners are approaching solutions that requires a hard fork more carefully now.

There is also controversy about what the best implementation of the block is. There are many variations about how to implement an increase in block size, with differing upper limits and how the upper limit can change depending on the miners.

What are the other solutions to this problem?

Segregated Witness (Segwit)

Segwit is a soft fork solution developed by Bitcoin Core, originally to prevent third parties from altering transactions. This solution moves some data that was originally put into the block into another location outside the block, which is also transmitted along with the block data. This feature allows it to bypass the block size limit and frees up space in the block for more transactions. This is able to accommodate 60% to 100% more transactions per block, making the effective block size 1.6MB to 2.0MB.

SegWit has been integrated into Bitcoin Core’s code repository, and we can expect to see it released officially soon.

However, SegWit is not a permanent solution to the problem, and it is possible that the higher limit will be reached, given the growing demand on the platform.

Lightning Network

Lightning Network is an off-blockchain solution which allows for a larger number of transactions at once.

It uses the Bitcoin blockchain only for settlement of the transactions which takes place during the 10 minutes. Instead of sending bitcoins directly through the network, many transactions can take place through “channels” off the Bitcoin blockchain, and only consolidated and finalized at the next block. This increases the possible number of transactions and may help to mitigate the congestion problem.

However, implementing this does not mean it will be sufficient to overcome scaling limitations. “Hubs” are required to channel funds, and as a network grows, an increase in block size may still be required eventually.

Why aren’t other cryptocurrencies facing this problem?

First of all, Bitcoin is the most popular cryptocurrency. This means that it is the easiest to obtain and use. Which is why it was the first to face problems with a block size limit.

Secondly, some of the newer cryptocurrencies have larger or dynamic limits, whereas for Bitcoin, the 1MB is a hard limit. For example, Litecoin, which also has a block limit of 1 MB, produces blocks at an average rate of 2.5 minutes. This makes the effective limit over 10 minutes to be 4 MB. Ethereum has a dynamic block gas limit, which allows it to accommodate more transactions.

What are the effects?

On 31 July to 1 Aug 2016, there has been yet another meeting between miners about the block size debate.  Speculation about the event has resulted in a drop in bitcoin prices. We saw a further drop in prices due to the BitFinex hack on 2 Aug 2016.

The markets have been following progress of the bitcoin block size debate, and it seems that meetings between miners and developers have resulted in price fluctuations.

Block size limit is an important issue for Bitcoin, because high transaction fees, and long transaction settlement time damages the advantages and capabilities Bitcoin is supposed to offer. However, on the other hand, increasing block size may mean more centralized Bitcoin mining, and may come with new problems.

How this issue will resolve itself, only time can tell. You can look for the most active discussions on this topic on reddit: r/bitcoin and r/btc