summaryrefslogtreecommitdiff
path: root/18/6b412750d95ba58338eaed354954160eb7eda4
blob: 1b0924561a70f184f0def81a0091fad248597a4c (plain)
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