Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 574F883D for ; Tue, 30 Jun 2015 23:45:11 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-wi0-f172.google.com (mail-wi0-f172.google.com [209.85.212.172]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 751A8EB for ; Tue, 30 Jun 2015 23:45:10 +0000 (UTC) Received: by wicgi11 with SMTP id gi11so30542987wic.0 for ; Tue, 30 Jun 2015 16:45:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=JX8eRNkJLZvo7hgxqlEj9mcCePblp5qRMpCzDYG2n+0=; b=M25awFJ5RPrRZqlIQloW+vltFXwZvZaSLbrmpO+NWxWaxnYNctydGQXLZ7QZ4a+cLg +gTu0//QpKEVfqyl51bmGETyxoPe+gFV7tX5nmWcogirjfecZFPJFgZfBOKck3+lr7/F uXYaUojoCLjZLmlKXObHH/d3yKNBmRYh7SjBhc5+NdoJh3mWolXtwf3PltRYvO/XuPsz Bvoc8uXVAkDClE12oMwp9Zg51Wv7/4kJ/6dPGkNtyIaKdUHzeLd8CCA7/8IvL3b0QZ09 7GScQZytCAs4PgR3NJyb8Iy16l5RH0XnVvrgKVvfNNtdel2gKiodfCM8KZXXuio1ed21 3bOQ== MIME-Version: 1.0 X-Received: by 10.194.100.42 with SMTP id ev10mr40799402wjb.50.1435707909290; Tue, 30 Jun 2015 16:45:09 -0700 (PDT) Received: by 10.194.137.38 with HTTP; Tue, 30 Jun 2015 16:45:09 -0700 (PDT) In-Reply-To: References: Date: Wed, 1 Jul 2015 01:45:09 +0200 Message-ID: From: Pieter Wuille To: Peter Grigor Content-Type: multipart/alternative; boundary=089e0160aa48ef41f60519c4cb76 X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Cc: bitcoin-dev@lists.linuxfoundation.org Subject: Re: [bitcoin-dev] A possible solution for the block size limit: Detection and rejection of bloated blocks by full nodes. X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Development Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Jun 2015 23:45:11 -0000 --089e0160aa48ef41f60519c4cb76 Content-Type: text/plain; charset=UTF-8 The problem with this approach is that you need 100% exact behaviour for every node on the network in their decision to reject a particular block. So we need a 100% mempool synchronization across all nodes - otherwise just an attempted double spend could result in a fork in the network because some nodes saw it and some didn't. And actually, if we had 100% mempool synchronization, we wouldn't need a blockchain in the first place, because we could just use "first to enter mempool" as validity criterion. On Wed, Jul 1, 2015 at 1:41 AM, Peter Grigor wrote: > The block size debate centers around one concern it seems. To wit: if > block size is increased malicious miners may publish unreasonably large > "bloated" blocks. The way a miner would do this is to generate a plethora > of private, non-propagated transactions and include these in the block they > solve. > > It seems to me that these bloated blocks could easily be detected by other > miners and full nodes: they will contain a very high percentage of > transactions that aren't found in the nodes' own memory pools. This > signature can be exploited to allow nodes to reject these bloated blocks. > The key here is that any malicious miner that publishes a block that is > bloated with his own transactions would contain a ridiculous number of > transactions that *absolutely no other full node has in its mempool*. > > Simply put, a threshold would be set by nodes on the allowable number of > non-mempool transactions allowed in a solved block (say, maybe, 50% -- I > really don't know what it should be). If a block is published which > contains more that this threshold of non-mempool transactions then it is > rejected. > > If this idea works the block size limitation could be completely removed. > > _______________________________________________ > bitcoin-dev mailing list > bitcoin-dev@lists.linuxfoundation.org > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev > > --089e0160aa48ef41f60519c4cb76 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
The problem with this approach is that you need 100% exact= behaviour for every node on the network in their decision to reject a part= icular block. So we need a 100% mempool synchronization across all nodes - = otherwise just an attempted double spend could result in a fork in the netw= ork because some nodes saw it and some didn't. And actually, if we had = 100% mempool synchronization, we wouldn't need a blockchain in the firs= t place, because we could just use "first to enter mempool" as va= lidity criterion.

On Wed, Jul 1, 2015 at 1:41 AM, Peter Grigor &l= t;peter@grigor.ws&= gt; wrote:
The block size debate centers around = one concern it seems. To wit: if block size is increased malicious miners m= ay publish unreasonably large "bloated" blocks. The way a miner w= ould do this is to generate a plethora of private, non-propagated transacti= ons and include these in the block they solve.

= It seems to me that these bloated blocks could easily be detected by other = miners and full nodes: they will contain a very high percentage of transact= ions that aren't found in the nodes' own memory pools. This signatu= re can be exploited to allow nodes to reject these bloated blocks. The key = here is that any malicious miner that publishes a block that is bloated wit= h his own transactions would contain a ridiculous number of transactions th= at *absolutely no other full node has in its mempool*.

Simply put, a threshold would be set by nodes on the allowable numb= er of non-mempool transactions allowed in a solved block (say, maybe, 50% -= - I really don't know what it should be). If a block is published which= contains more that this threshold of non-mempool transactions then it is r= ejected.

If this idea works the block size limi= tation could be completely removed.

_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists.= linuxfoundation.org
https://lists.linuxfoundation.org/mail= man/listinfo/bitcoin-dev


--089e0160aa48ef41f60519c4cb76--