BIP - Block75 - Managing max block size as we do difficulty



Summary:

The author proposes a new BIP, "Block75", which seeks to automatically adjust the maximum size of a block based on the average size of previous blocks. This would be done using a formula that recalculates the maximum block size every 2016 blocks, in the same way that difficulty is adjusted. The goal is to ensure that blocks are kept at 75% full, thereby preventing wild swings in transaction fees, and allowing for moderate growth. The motivation behind this proposal is to find a reasonable and predictable way of managing the maximum block size, without involving human beings in the decision-making process. The author argues that any solution that involves setting an arbitrary maximum block size or passing the decision on to miners/pool operators for a vote will be temporary, political, and contentious. A permanent solution that responds to changing transaction volumes is required, according to the author.The proposed specification of Block75 involves adjusting MAX_BLOCK_BASE_SIZE using a simple formula, with TARGET_CAPACITY set to 750000 (representing 75% of block capacity). However, it has been pointed out that the specification only affects MAX_BLOCK_BASE_SIZE and does not adjust the maximum block size directly, raising concerns about its technical soundness. There is also a missing section on backward compatibility, which should address the fact that this solution is not backward compatible and propose a mechanism for establishing agreement from the entire community for its deployment. The rationale behind selecting the 75% full block target is that it represents a middle ground between blocks being too small and unnecessarily large. It can absorb short-term spikes in transaction volume and limits the growth of max block size to 250KB over the previous period. The 2016 blocks (two week) period was selected as it has been shown to be reasonably adaptive to changing network resources. The proposal is placed in the public domain for copyright purposes.


Updated on: 2023-06-11T20:55:52.594365+00:00