Received: from sog-mx-3.v43.ch3.sourceforge.com ([172.29.43.193] helo=mx.sourceforge.net) by sfs-ml-3.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1Yq8UQ-0006Ok-CZ for bitcoin-development@lists.sourceforge.net; Wed, 06 May 2015 23:12:30 +0000 Received-SPF: pass (sog-mx-3.v43.ch3.sourceforge.com: domain of bluematt.me designates 192.241.179.72 as permitted sender) client-ip=192.241.179.72; envelope-from=bitcoin-list@bluematt.me; helo=mail.bluematt.me; Received: from mail.bluematt.me ([192.241.179.72]) by sog-mx-3.v43.ch3.sourceforge.com with esmtps (TLSv1:AES256-SHA:256) (Exim 4.76) id 1Yq8UP-0003EN-BN for bitcoin-development@lists.sourceforge.net; Wed, 06 May 2015 23:12:30 +0000 Received: from [172.17.0.2] (gw.vpn.bluematt.me [162.243.132.6]) by mail.bluematt.me (Postfix) with ESMTPSA id 8DDB95434F; Wed, 6 May 2015 23:12:23 +0000 (UTC) Message-ID: <554A9FD1.80103@bluematt.me> Date: Wed, 06 May 2015 23:12:17 +0000 From: Matt Corallo User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 MIME-Version: 1.0 To: Tier Nolan References: <554A91BE.6060105@bluematt.me> In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Spam-Score: -1.5 (-) X-Spam-Report: Spam Filtering performed by mx.sourceforge.net. See http://spamassassin.org/tag/ for more details. -1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for sender-domain -0.0 T_RP_MATCHES_RCVD Envelope sender domain matches handover relay domain -0.0 SPF_PASS SPF: sender matches SPF record X-Headers-End: 1Yq8UP-0003EN-BN Cc: Bitcoin Dev Subject: Re: [Bitcoin-development] Block Size Increase X-BeenThere: bitcoin-development@lists.sourceforge.net X-Mailman-Version: 2.1.9 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 May 2015 23:12:30 -0000 Replies inline. On 05/06/15 22:44, Tier Nolan wrote: > On Wed, May 6, 2015 at 11:12 PM, Matt Corallo > wrote: > Personally, I'm rather strongly against any commitment to a block size > increase in the near future. -snip- > The question being discussed is what is the maximum block size merchants > and users will accept. This puts a reasonable limit on the maximum size > miners can increase the block size to. > > In effect, the block size is set by the minimum of the miner's and the > merchants/user's size.min(miner, merchants/users). Indeed, "the bitcoin community of users and miners can decide to do whatever they want", but this is univeral - "they" could decide whatever they want if "they" want to hardfork. That said, "we" should be having a rigorous technical discussion about whether it is sane to recommend a given course of action by releasing software which makes it happen. > > This allows the well-funded Bitcoin ecosystem to continue building > systems which rely on transactions moving quickly into blocks while > pretending these systems scale. Thus, instead of working on technologies > which bring Bitcoin's trustlessness to systems which scale beyond a > blockchain's necessarily slow and (compared to updating numbers in a > database) expensive settlement, the ecosystem as a whole continues to > focus on building centralized platforms and advocate for changes to > Bitcoin which allow them to maintain the status quo[1]. > > > Would you accept a rule that the maximum size is 20MB (doubling every 2 > years), but that miners have an efficient method for choosing a lower size? > > If miners could specify the maximum block size in their block headers, > then they could coordinate to adjust the block size. If 75% vote to > lower the size, then it is lowered and vice versa for raiding. > > Every 2016 blocks, the votes are counter. If the 504th lowest of the > 2016 blocks is higher than the previous size, then the size is set to > that size. Similarly, if the 504th highest is lower than the previous > size, it becomes the new size. > > There could be 2 default trajectories. The reference client might > always vote to double the size every 4 years. > > To handle large blocks (>32MB) requires a change to the p2p protocol > message size limits, or a way to split blocks over multiple messages. > > It would be nice to add new features to any hard-fork. > > I favour adding an auxiliary header. The Merkle root in the header > could be replaced with hash(merkle_root | hash(aux_header)). This is a > fairly simple change, but helps with things like commitments. One of > the fields in the auxiliary header could be an extra nonce field. This > would mean fast regeneration of the merkle root for ASIC miners. This > is a pretty simple change. The point of the hard block size limit is exactly because giving miners free rule to do anything they like with their blocks would allow them to do any number of crazy attacks. The incentives for miners to pick block sizes are no where near compatible with what allows the network to continue to run in a decentralized manner.