Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 956F8B19 for ; Tue, 30 Jun 2015 23:41:30 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-qg0-f44.google.com (mail-qg0-f44.google.com [209.85.192.44]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 217C31BD for ; Tue, 30 Jun 2015 23:41:30 +0000 (UTC) Received: by qget71 with SMTP id t71so11672414qge.2 for ; Tue, 30 Jun 2015 16:41:29 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to :content-type; bh=wcf0gJ/kYBsok+Co0q1gdg84Nvh4bnQcWE5S+BMp/wQ=; b=hy4tecw3LTfxJZmhYKSTTA9+vviUXXlGfQo/uWMFDb+39nMm7TCh9KNKhbX0UfeomH krCKHOqk8E/1iiJGJfft1/lYxsE115aGzE2Bm1spyJhdarIPbvsFndY+rdT9Xv67DfCg oCdrwf9S/14ffjk2RwWKCOEC2BBW/vSAVt3MwBKnxz/LQiy1riMA6m+y9ix2DtBM5mM/ V/QxphlrjgUecqOEOGRbNbcgFYErwKxZLvBKLA4e2/LlWK4RJUyyk0jVvsWc9MkqJ3Hh pjb4XLNV6DJYTy5LGSDBeEMDK9Ky6lgBcWeWVRmhFrf2HvgKM7Kmaxg2iwShFNZOnFn8 gYXA== X-Gm-Message-State: ALoCoQkmdFfZnloormJP85NukLR7I8EV5N/+rC4B1KSkc2FrB5AYK7t1aRr+/lUrZ1ZWpHRTIKQO MIME-Version: 1.0 X-Received: by 10.55.18.197 with SMTP id 66mr30808973qks.13.1435707689371; Tue, 30 Jun 2015 16:41:29 -0700 (PDT) Received: by 10.140.20.33 with HTTP; Tue, 30 Jun 2015 16:41:29 -0700 (PDT) X-Originating-IP: [68.5.225.232] Date: Tue, 30 Jun 2015 16:41:29 -0700 Message-ID: From: Peter Grigor To: bitcoin-dev@lists.linuxfoundation.org Content-Type: multipart/alternative; boundary=001a11474faad3ad4f0519c4befa X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,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 Subject: [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:41:30 -0000 --001a11474faad3ad4f0519c4befa Content-Type: text/plain; charset=UTF-8 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. --001a11474faad3ad4f0519c4befa Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
The block size= debate centers around one concern it seems. To wit: if block size is incre= ased malicious miners may publish unreasonably large "bloated" bl= ocks. The way a miner would do this is to generate a plethora of private, n= on-propagated transactions and include these in the block they solve.
=

It seems to me that these bloated blocks could easil= y 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 mem= ory pools. This signature can be exploited to allow nodes to reject these b= loated blocks. The key here is that any malicious miner that publishes a bl= ock that is bloated with his own transactions would contain a ridiculous nu= mber of transactions that *absolutely no other full node has in its mempool= *.

Simply put, a threshold would be set by node= s on the allowable number of non-mempool transactions allowed in a solved b= lock (say, maybe, 50% -- I really don't know what it should be). If a b= lock is published which contains more that this threshold of non-mempool tr= ansactions then it is rejected.

If this idea wo= rks the block size limitation could be completely removed.
--001a11474faad3ad4f0519c4befa--