<oembed><type>rich</type><version>1.0</version><author_name>npub1fx98zxt3lzspjs5f4msr0fxysx5euucm29ghysryju7vpc9j0jzqtcl2d8</author_name><author_url>https://nostr.ae/npub1fx98zxt3lzspjs5f4msr0fxysx5euucm29ghysryju7vpc9j0jzqtcl2d8</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2015-08-29&#xA;📝 Original message:On Sat, Aug 29, 2015 at 12:15 PM, Btc Drak &lt;btcdrak at gmail.com&gt; wrote:&#xA;&gt; On Sat, Aug 29, 2015 at 1:29 AM, Mark Friedenbach via bitcoin-dev&#xA;&gt; &lt;bitcoin-dev at lists.linuxfoundation.org&gt; wrote:&#xA;&gt;&gt; Ah, then my mistake. It seemed so similar to an idea that was proposed&#xA;&gt;&gt; before on this mailing list:&#xA;&gt;&gt;&#xA;&gt;&gt; http://lists.linuxfoundation.org/pipermail/bitcoin-dev/2015-May/008033.html&#xA;&gt;&gt;&#xA;&gt;&gt; that my mind just filled in the gaps. I concur -- having miners -- or any&#xA;&gt;&gt; group -- vote on block size is not an intrinsically good thing. The the&#xA;&gt;&gt; original proposal due to Greg Maxwell et al was not a mechanism for &#34;voting&#34;&#xA;&gt;&gt; but rather a feedback control that made the maximum block size that which&#xA;&gt;&gt; generated the most fees.&#xA;&gt;&#xA;&gt; Mark and Jorge,&#xA;&gt;&#xA;&gt; I am very glad you have brought up this particular objection because&#xA;&gt; it&#39;s something I thought about but was unclear if it was an opinion&#xA;&gt; that would be shared by others. I chose to omit it from the proposal&#xA;&gt; to see if it would come up during peer review.&#xA;&gt;&#xA;&gt; I feel that giving miners a blank cheque to increase blocksize, by any&#xA;&gt; means, goes against a key design of bitcoin&#39;s security model. Full&#xA;&gt; nodes keep miners honest by ensuring by validating their blocks. Under&#xA;&gt; any voting-only scheme there is no way for full nodes to keep miners&#xA;&gt; in cheque because miner have free reign to increase the blocksize.&#xA;&gt;&#xA;&gt; This problem can be solved by introducing a hard cap on blocksize. By&#xA;&gt; introducing an upper limit miners now have the freedom to increase&#xA;&gt; blocksize but only within defined parameters.  Remember my proposal&#xA;&gt; allows blocksize to increase and decrease in such a way that miners&#xA;&gt; must collectively agree if they want the size to increase.&#xA;&#xA;Then I only care about the hard cap (for example, to me bip100 is&#xA;practically equivalent to just raise the limit to 32 MB directly).&#xA;Miners can always produce smaller blocks by modifying their local policy.&#xA;So if we need a maximum that cannot be altered by miners anyway, why&#xA;take the additional complexity of miners voting on a lower and&#xA;changing maximum size?&#xA;&#xA;&gt; With respect to the flexicap idea where miners can create a larger&#xA;&gt; block by paying extra difficulty, I believe that proposal has a&#xA;&gt; critical flaw because, as Gavin pointed out, it makes it very&#xA;&gt; expensive (and risky) to include a few extra transactions. I believe&#xA;&gt; it suffers from tragedy of the commons because there is no incentive&#xA;&gt; for the mining community to reach consensus. Each and every block is&#xA;&gt; going to be a gamble, &#34;should we include a few extra transactions at&#xA;&gt; the risk of losing the block?&#34;.&#xA;&#xA;How expensive it is depends on the concrete function f(extra_nBits) =&#xA;extra_size_allowed&#xA;But the goal of that proposal is not to raise the size maximum&#xA;permanently, but rather temporarily allow bigger blocks when there are&#xA;spikes in demand (ie many fees to collect in unconfirmed&#xA;transactions).&#xA;Yes miners will ask that question to themselves, and the answer will&#xA;depend on the concrete function and on the fees of those extra&#xA;transactions.&#xA;The miner paying for the costs will get the gains: no tragedy of the&#xA;commons here.&#xA;&#xA;&gt; Under my proposal miners can&#xA;&gt; collectively agree to change the blocksize. Let&#39;s say they want a 10%&#xA;&gt; increase, they can collude together to make that increase and once&#xA;&gt; reached, it remains until they want to change it again. Yet, the upper&#xA;&gt; hard limit keeps the ultimate control of the maximum block size&#xA;&gt; squarely in the hands of full nodes.&#xA;&#xA;I believe the tragedy of the commons actually happens with your&#xA;proposal. Why would I pay alone for something that benefits all&#xA;miners?&#xA;&#xA;&gt; An alternative methodology to voting in the coinbase would be to&#xA;&gt; change the vote to be the blocksize itself&#xA;&gt;&#xA;&gt; 1. miners pay extra difficulty to create a larger block.&#xA;&gt; 2. every 2016 blocks the average or median of the last 2016 blocks is&#xA;&gt; calculated and becomes the new maximum blocksize limit.&#xA;&gt;&#xA;&gt; This would retain incentive to collude to increase blocksize, as well&#xA;&gt; as the property of costing to increase while being free to propose&#xA;&gt; decrease.&#xA;&#xA;This seems to solve the tragedy of the commons problem with your&#xA;current proposal.&#xA;It would be like flexcap but instead of the change in size being&#xA;temporary, it affects the next maximum size permanently.&#xA;One thing to worry about is miners filling blocks with&#xA;pay-to-themselves garbage to avoid reducing the size when they don&#39;t&#xA;have enough attractive transactions to include (ie it may not be free&#xA;for the network for miners to vote on &#34;maintain current size&#34;).&#xA;&#xA;&gt; It would still require an upper blocksize limit in order for full&#xA;&gt; nodes to retain control. Without an upper limit, any proposal is going&#xA;&gt; to break the security model as full nodes give up some oversight&#xA;&gt; control over miners.&#xA;&gt;&#xA;&gt; Another way of looking at these ideas is we&#39;re raising blocksize hard&#xA;&gt; limit (to 8MB or whatever is decided), but making a soft of &#34;softer&#34;&#xA;&gt; or inner limit part of consensus. Such a concept is not really&#xA;&gt; departing from the current idea of a soft limit except to make it&#xA;&gt; consensus enforced. Obviously it&#39;s not identical, but I think you can&#xA;&gt; see the similarities.&#xA;&gt;&#xA;&gt; Does that make sense?&#xA;&#xA;I still don&#39;t see the point in having a lower moving size maximum.&#xA;If 8 MB is mining-centralization-safe, let&#39;s move directly to 8 MB&#xA;without adding this seemingly useless extra complexity.&#xA;If it&#39;s not, mining voting on a lower moving maximum won&#39;t make it safer.&#xA;&#xA;Once we have more objective tools (centralization metrics, simulators,&#xA;etc...) to determine whether or not a block size is&#xA;mining-centralization-safe for a given point in time (looking at&#xA;current centralization and current technology available), I don&#39;t see&#xA;the problem with repeating the equivalent of bip102 periodically&#xA;(every 2 years?) to adapt the size to better technology or lower&#xA;mining centralization.&#xA;It would be also helpful to have a tool to somehow measure &#34;size&#xA;increase urgency&#34; (ie right now free transactions get mined and blocks&#xA;aren&#39;t full or close to be full, I don&#39;t think the current general&#xA;sense of urgency on this matter is justified).&#xA;&#xA;With all respect, I believe bip100 and this proposal are&#xA;over-engineering; and bip101 and bip103 (pieter&#39;s) are&#xA;overly-optimistic (in their exponential technological growth&#xA;assumptions).</html></oembed>