Block Size Explained
Last Updated: 1st November 2018
This article will take a comprehensive look into what exactly the block size is, the issues that arise as the block size limit is neared, and the solutions that are currently being implemented in-order to solve the block size limit problem.
A block can be thought of as a bundle of transactions, with each transaction needing to be validated before it can be accepted by the network. Each block has what is known as a block size. The block size is simply the maximum limit a block can be filled up with transactions. For example, the Bitcoin block size currently stands at 1 MB. Miners can choose how much of a block to fill with transactions. However, if a block that exceeds the block size limit is submitted, it will be rejected by the network. The intention of a block size is to prevent denial-of-service attacks on the network. If there was no block size limit, in theory, an attacker could flood the network with lots of transactions, therefore potentially bringing the network to a halt.
Issues that arise from near the block size limit include:
- Slowdown in the network
- Higher transactions fees
Slowdown in the network: We have seen, for example with Bitcoin, that the more users that transact over a network, the slower it may become. One reason that can be attributed to a slowing blockchain-based network, is the block size limit. If more users transact over a network, but the block size remains static, then the number of transactions in a block will increase, therefore resulting in the slowdown of the network as the block size limit is approached.
Higher transaction fees: As transactions near their block size limit, it becomes a race for a user to have their transactions confirmed and onto the blockchain. One way of ensuring a fast confirmation time is to pay a higher transaction fee. This means that miners (the people who confirm transactions) have an incentive to add higher fee transactions to the blockchain first. Smaller transactions will therefore take hours, and in some cases days, just to confirm.
However, potential solutions to an inadequate block size limit include:
- Increasing the block size
- Segregated Witness (SegWit)
- Dynamic block size
Increasing the block size: One very obvious solution to any issues with the block size is to simply increase it. However, the draw back to this is, it encourages centralization. Simply increasing the block size would result in higher costs of running a full node on a blockchain-based network. Therefore, fewer people would be able to afford running a full node with an increased block size, thus making the network more centralized.
Segregated Witness: SegWit is a soft fork method that can be used to increase the capacity of the blockchain by removing signature data from transactions. If you are uncertain about what SegWit is, check out this article. Using Bitcoin as an example, the implementation of SegWit would result in a real block size increase from 1 MB to 4 MB. Cryptocurrencies such as Bitcoin and Litecoin have successfully activated SegWit on their respective protocols.
Dynamic block size: Cryptocurrencies such as Monero have implemented what is known as a dynamic block size limit. What this means is, the block size limit changes by itself and is dependent on the transaction volume at any given time. A blockchain-based network that uses a dynamic block size limit enjoys the benefit of being less prone to a slowdown in its network.
Whilst this is not an exhaustive list, these are some of the main solutions currently being employed by different cryptocurrencies in the space right now.
Conclusion: As the cryptocurrency space continues to grow, scalability becomes a very key topic of discussion. It is important to understand how different cryptocurrencies intend to scale in the long-term if they are to prove a viable alternative to the current financial system.