<oembed><type>rich</type><version>1.0</version><author_name>npub1lhe3qfx2q5m7mq5d39waepf9lzhsy0cdey66svn63fyk6rt6n7ps7zg7ed</author_name><author_url>https://nostr.ae/npub1lhe3qfx2q5m7mq5d39waepf9lzhsy0cdey66svn63fyk6rt6n7ps7zg7ed</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2015-08-28&#xA;📝 Original message:I have received a lot of feedback on the original gist[1], reddit[2],&#xA;ML and IRC and have reworked the text somewhat.&#xA;&#xA;I also request the BIP maintainer for a BIP number assignment&#xA;&#xA;[1] https://gist.github.com/btcdrak/1c3a323100a912b605b5&#xA;[2] https://www.reddit.com/r/Bitcoin/comments/3ibia0/bipxx_consensus_based_block_size_retargeting/&#xA;&#xA;Pull request: https://github.com/bitcoin/bips/pull/187&#xA;&#xA;&lt;pre&gt;&#xA;  BIP: XX&#xA;  Title: Consensus based block size retargeting algorithm&#xA;  Author: BtcDrak &lt;btcdrak at gmail.com&gt;&#xA;  Status: Draft&#xA;  Type: Standards Track&#xA;  Created: 2015-08-21&#xA;&lt;/pre&gt;&#xA;&#xA;==Abstract==&#xA;&#xA;A method of altering the maximum allowed block size of the Bitcoin protocol&#xA;using a consensus based approach.&#xA;&#xA;==Motivation==&#xA;&#xA;There is a belief that Bitcoin cannot easily respond to raising the&#xA;blocksize limit if popularity was to suddenly increase due to a mass adoption&#xA;curve, because co-ordinating a hard fork takes considerable time, and being&#xA;unable to respond in a timely manner would irreparably harm the credibility of&#xA;bitcoin.&#xA;&#xA;Additionally, predetermined block size increases are problematic because they&#xA;attempt to predict the future, and if too large could have unintended&#xA;consequences like damaging the possibility for a fee market to develop&#xA;as block subsidy decreases substantially over the next 9 years; introducing&#xA;or exacerbating mining attack vectors; or somehow affect the network in unknown&#xA;or unpredicted ways. Since fixed changes are hard to deploy, the damage could be&#xA;extensive.&#xA;&#xA;Dynamic block size adjustments also suffer from the potential to be gamed by the&#xA;larger hash power.&#xA;&#xA;Free voting as suggested by BIP100 allows miners to sell their votes out of band&#xA;at no risk, and enable the sponsor the ability to manipulate the blocksize.&#xA;It also provides a cost free method or the larger pools to vote in ways to&#xA;manipulate the blocksize such to disadvantage or attack smaller pools.&#xA;&#xA;&#xA;==Rationale==&#xA;&#xA;By introducing a cost to increase the block size ensures the mining community&#xA;will collude to increase it only when there is a clear necessity, and reduce it&#xA;when it is unnecessary. Larger miners cannot force their wishes so easily&#xA;because not only will they have to pay extra a difficulty target, then can be&#xA;downvoted at no cost by the objecting hash power.&#xA;&#xA;Using difficulty as a penalty is better than a fixed cost in bitcoins because it&#xA;is less predictable.&#xA;&#xA;&#xA;==Specification==&#xA;&#xA;The initial block size limit shall be 1MB.&#xA;&#xA;Each time a miner creates a block, they may vote to increase or decrease the&#xA;blocksize by a maximum of 10% of the current block size limit. These votes will&#xA;be used to recalculate the new block size limit every 2016 blocks.&#xA;&#xA;Votes are cast using the block&#39;s coinbase field.&#xA;&#xA;The first 4 bytes of the coinbase field shall be repurposed for voting as an&#xA;unsigned long integer which will be the block size in bytes.&#xA;&#xA;If a miner votes for an increase, the block hash must meet a difficulty target&#xA;which is proportionally larger than the standard difficulty target based on the&#xA;percentage increase they voted for.&#xA;&#xA;Votes proposing decreasing the block size limit do not need to meet a higher&#xA;difficulty target.&#xA;&#xA;Miners can vote for no change by voting for the current block size.&#xA;&#xA;For blocks to be valid the blockhash must meet the required difficulty target&#xA;for the vote otherwise the block is invalid and will be rejected.&#xA;&#xA;Every 2016 blocks, the block size limit will be recalculated by the median of&#xA;all votes in the last 2016 blocks. This will redefine the block size limit for&#xA;the next 2016 blocks.&#xA;&#xA;Blocks that are larger than the calculated base block size limit are invalid and&#xA;will be rejected.&#xA;&#xA;The base block size limit may not reduce below 1MB.&#xA;&#xA;&#xA;==Acknowledgements==&#xA;&#xA;This proposal is based on ideas and concepts derived from the writings of&#xA;Meni Rosenfeld and Gregory Maxwell.&#xA;&#xA;&#xA;==Copyright==&#xA;&#xA;This work is placed in the public domain.</html></oembed>