<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-21&#xA;📝 Original message:I wanted to offer a potential way to adjust the block size limit in a&#xA;democratic way without making it easy to game. This is meant only as a&#xA;starting point for a general idea. Thresholds and exact figures and&#xA;the details of the algorithm are up for debate, and possibly some&#xA;formula based determination.&#xA;&#xA;The living document is currently a gist available at&#xA;https://gist.github.com/btcdrak/1c3a323100a912b605b5&#xA;&#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&#xA;protocol using a consensus based approach.&#xA;&#xA;==Motivation==&#xA;&#xA;There is a perception that Bitcoin cannot easily respond to raising&#xA;the blocksize limit if popularity was to suddenly increase due to a&#xA;mass adoption curve, because co-ordinating a hard fork takes&#xA;considerable time, and being unable to respond in a timely manner&#xA;would irreparably harm the credibility of bitcoin.&#xA;&#xA;Additionally, predetermined block size increases are problematic&#xA;because they attempt to predict the future, and if too large could&#xA;have unintended consequences like damaging the possibility for a fee&#xA;market to develop as block subsidy decreases substantially over the&#xA;next 9 years; introducing or exacerbating mining attack vectors; or&#xA;somehow affect the network in unknown or unpredicted ways. Since fixed&#xA;changes are hard to deploy, the damage could be extensive.&#xA;&#xA;Dynamic block size adjustments also suffer from the potential to be&#xA;gamed by the larger hash power.&#xA;&#xA;&#xA;==Rationale==&#xA;&#xA;By introducing a cost to increase the block size ensures the mining&#xA;community will collude to increase it only when there is a clear&#xA;necessity, and reduce it when it is unnecessary. Rogue miners cannot&#xA;force their wishes so easily because not only will they have to pay&#xA;extra a difficulty target, then can be downvoted at no cost by the&#xA;objecting hash power.&#xA;&#xA;&#xA;==Specification==&#xA;&#xA;The initial &#34;base block size limit&#34; shall be 1MB.&#xA;&#xA;Miners can vote for a block size increase by signalling the proposed&#xA;percentage increase of the &#34;base block size limit&#34; in the coinbase&#xA;field. For the vote to be considered valid the block they mine must&#xA;meets a difficulty target which is proportionally larger than the&#xA;standard difficulty target based on the percentage increase they voted&#xA;for. If a miner does not vote, or the vote is invalid, it shall be&#xA;counted as a vote for no change.&#xA;&#xA;Miners may vote the size down by signalling in the coinbase field&#xA;without paying a difficulty penalty.&#xA;&#xA;Every 2016 blocks, the maximum allowed block size will be recalculated&#xA;by the average of all votes in the last 2016 blocks, i.e. sum each&#xA;vote from each block and divide by 2016 then multiply by the base&#xA;block size limit. This will redefine the base block size limit for the&#xA;next 2016 blocks.&#xA;&#xA;Blocks that are larger than the calculated base block size limit are&#xA;invalid and MUST be rejected.&#xA;&#xA;The maximum change up or down each retargeting period shall be limited&#xA;to 10% of the base block size limit.&#xA;&#xA;The maximum block size may not increase above 8MB.&#xA;&#xA;Votes shall be cast by adding the following human readable multiplier&#xA;to the coinbase string “/BXn.nnn/” where valid votes would exist&#xA;between the ranges “/BX0.900/” (10% decrease) and “/BX1.100/” (10%&#xA;increase). “/BX1.000/” would be a vote for no change. Invalid votes&#xA;will be counted as a vote for no change: “/BX1.000/”.&#xA;&#xA;&#xA;==Acknowledgements==&#xA;&#xA;This proposal is based on ideas and concepts derived from the writings&#xA;of Meni Rosenfeld and Gregory Maxwell.&#xA;&#xA;&#xA;==Copyright==&#xA;&#xA;This work is placed in the public domain.</html></oembed>