1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
Return-Path: <luke@dashjr.org>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
[172.17.192.35])
by mail.linuxfoundation.org (Postfix) with ESMTPS id AC0562C
for <bitcoin-dev@lists.linuxfoundation.org>;
Wed, 22 Mar 2017 08:47:42 +0000 (UTC)
X-Greylist: from auto-whitelisted by SQLgrey-1.7.6
Received: from zinan.dashjr.org (zinan.dashjr.org [192.3.11.21])
by smtp1.linuxfoundation.org (Postfix) with ESMTP id 250A5141
for <bitcoin-dev@lists.linuxfoundation.org>;
Wed, 22 Mar 2017 08:47:42 +0000 (UTC)
Received: from ishibashi.localnet (unknown
[IPv6:2001:470:5:265:a45d:823b:2d27:961c])
(Authenticated sender: luke-jr)
by zinan.dashjr.org (Postfix) with ESMTPSA id 60D8E38ABEBA
for <bitcoin-dev@lists.linuxfoundation.org>;
Wed, 22 Mar 2017 08:47:32 +0000 (UTC)
X-Hashcash: 1:25:170322:bitcoin-dev@lists.linuxfoundation.org::zZ39H3jal2Y3sCnv:aDgsh
From: Luke Dashjr <luke@dashjr.org>
To: bitcoin-dev@lists.linuxfoundation.org
Date: Wed, 22 Mar 2017 08:47:30 +0000
User-Agent: KMail/1.13.7 (Linux/4.4.45-gentoo; KDE/4.14.28; x86_64; ; )
X-PGP-Key-Fingerprint: E463 A93F 5F31 17EE DE6C 7316 BD02 9424 21F4 889F
X-PGP-Key-ID: BD02942421F4889F
X-PGP-Keyserver: hkp://pgp.mit.edu
MIME-Version: 1.0
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: 7bit
Message-Id: <201703220847.31303.luke@dashjr.org>
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD
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] Fraud proofs for block size/weight
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>,
<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>,
<mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Wed, 22 Mar 2017 08:47:42 -0000
Despite the generalised case of fraud proofs being likely impossible, there
have recently been regular active proposals of miners attacking with simply
oversized blocks in an attempt to force a hardfork. This specific attack can
be proven, and reliably so, since the proof cannot be broken without also
breaking their attempted hardfork at the same time.
While ideally all users ought to use their own full node for validation (even
when using a light client for their wallet), many bitcoin holders still do
not. As such, they are likely to need protection from these attacks, to ensure
they remain on the Bitcoin blockchain.
I've written up a draft BIP for fraud proofs and how light clients can detect
blockchains that are simply invalid due to excess size and/or weight:
https://github.com/luke-jr/bips/blob/bip-sizefp/bip-sizefp.mediawiki
I believe this draft is probably ready for implementation already, but if
anyone has any idea on how it might first be improved, please feel free to
make suggestions.
Luke
|