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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
|
Return-Path: <braydon@purse.io>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
[172.17.192.35])
by mail.linuxfoundation.org (Postfix) with ESMTPS id C889A15ED
for <bitcoin-dev@lists.linuxfoundation.org>;
Thu, 10 Oct 2019 16:16:20 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.7.6
Received: from mail-pl1-f196.google.com (mail-pl1-f196.google.com
[209.85.214.196])
by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 663DE14D
for <bitcoin-dev@lists.linuxfoundation.org>;
Thu, 10 Oct 2019 16:16:20 +0000 (UTC)
Received: by mail-pl1-f196.google.com with SMTP id u20so3030226plq.4
for <bitcoin-dev@lists.linuxfoundation.org>;
Thu, 10 Oct 2019 09:16:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=purse.io; s=google;
h=to:references:from:openpgp:autocrypt:subject:message-id:date
:user-agent:mime-version:in-reply-to:content-transfer-encoding
:content-language;
bh=kIPsNm6m4wrx0P3PMKYPBLrpWsT/koqqfS4WwWO+wvY=;
b=ZEQ+KT0h7VoOLWnLliVytNkQ2J0AXM3a0YaTLq+TCeN1khxiCPwpWONtIzLsYL68jR
DhoI5735gC5VWhICrGe+Sylno33N682r6UT+6CxRYwp/CaOFK9YmnhuYHGo5ZeVAdg8a
rIgmZNxjI9ewrZOigS0wF5VzcaNzbcr8smHWs=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20161025;
h=x-gm-message-state:to:references:from:openpgp:autocrypt:subject
:message-id:date:user-agent:mime-version:in-reply-to
:content-transfer-encoding:content-language;
bh=kIPsNm6m4wrx0P3PMKYPBLrpWsT/koqqfS4WwWO+wvY=;
b=G6Dnag3Fskzek45UqsNbON1ewaMQZ3ZDtmLbewfdwwdtY7/0KbYRxX3vajInAzcdWh
395fWhhhi8wwBupZ2kYi/UXJ6NGTVJDIWtwWUoFzeqsWm83ipBbkr+XviEzdNlVHaId3
M6lC+IgFdK1ofq8H99JMMAB23Fw/vHYIlieRWXhFO+jG+8lJJpu6lbI3yECa15Zd1WAo
7iaYB55AnuE+eRccXaopWNHcU/bYA7jx7JHEkiQYHf5fHdp9FL5rS5ofubh6tGKIohFV
IYHOsvr/LiHUGY6bRlhpE97X0nkhl25AFk5oapLFzlCR5xUXN8Pf+D9xfmva7OKUlsPk
LViA==
X-Gm-Message-State: APjAAAW1416cPip6uywYlCG2b0/hnZHM35GAmvRMW5vQ/q04XhWaigRR
0Y99usDN3qCJQTKE2QoSopM/yIQoGDQ=
X-Google-Smtp-Source: APXvYqxqCH1J4VPtX+kaQYS+vdJA4cpk2wMhtkvGr9no+kBnixa0dtA98GOPzSScKVQ1IeaIXkbx8g==
X-Received: by 2002:a17:902:d70a:: with SMTP id
w10mr9578756ply.342.1570724178280;
Thu, 10 Oct 2019 09:16:18 -0700 (PDT)
Received: from [10.0.0.199] ([198.244.101.193])
by smtp.gmail.com with ESMTPSA id
x125sm6578623pfb.93.2019.10.10.09.16.17
for <bitcoin-dev@lists.linuxfoundation.org>
(version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
Thu, 10 Oct 2019 09:16:17 -0700 (PDT)
To: bitcoin-dev@lists.linuxfoundation.org
References: <42cd5ffd-63e8-b738-c4ea-13d0699b1268@purse.io>
<CAE-z3OV_LL+Jww3e=gO6t=02VW7m9PK+8EaYoEVLy9NKNMiSaQ@mail.gmail.com>
From: Braydon Fuller <braydon@purse.io>
Openpgp: preference=signencrypt
Autocrypt: addr=braydon@purse.io; keydata=
xsFNBFsEkasBEAC4oPJQsFWAM0OjNJlYUxJbTV8bo1TgXwZdNZWewG6fvQQ+iGGImy/a5h10
/9V+/Ctio8ayAfpk6V3z/vxq8IdPVcsWccHLnguaAEEhYnKdGZfsohcQMO4LR63R6vPrUYUJ
ehVzt2YZ5F495iRDKwbQLXbmXF9vLtaKuf/6hbVmlG7bM59eVKcvpE8EKm95Lpw+CBE3uKc3
RxTcKHgo6QrkClm19GNDDkmHxM/k+hGT3M+sXGhgpL2940AGKsXuTPghgLQ+5seBWtzuWV31
Uf0ltHx6Ks1w0mlgZZ+u4wlljMHIBKLr4cYDOF8AYxyVcPzuQLdRjIIKEgpMDQW7ftbgGM/q
hgGg2mN036KTUfT1HkmT82Z3D3z4ACJ/bY/J+mJw0baqcJpezndd1M6dnDNF9Slst2Mr+Loe
JdN1tY5kk6/OWwAI5L15hmdiRWUBryJqun7sy23cmVPSOrtaIfl7/SEFJ+MuXbK53+mFGT2P
CpdRzV4MrKr9qbBaXkkhvEfoL2z6VwIFBprqZjthPHcHR8r6QSTpZdsD+7+qoq2o4MDUqP54
5a3kGI3l6VW767VE/NUIocyO7Z9D/EZOCk22ElTLTCzWm0JvxxGJoalebLQcGey/A9WWGOv/
ydwvTry3PWAzrrXNt43McHHwZXU4vSLnAtAxQy06Nt9wsWo+2QARAQABzSFCcmF5ZG9uIEZ1
bGxlciA8YnJheWRvbkBwdXJzZS5pbz7CwZcEEwEIAEECGwMFCwkIBwIGFQgJCgsCBBYCAwEC
HgECF4ACGQEWIQRbfcWNkP7B6ZCjELryTyMtEIs61AUCXL9UPwUJA5v2FAAKCRDyTyMtEIs6
1HOwEACedBLpkYrFeLANxD25USZunMt4KA58ZkY7Ap2m7KFcxjZD07YIjtxJyMLhHhMz6pR7
fF5BFHbl8CtAhpTuz5Sj9X3K0eilNsXvdx18+3RMUpFVAwlEEev707q6zNqKsRd1CG7e0k4o
28YAgwbt42UIPUoKTcEpT4C51sDa5d4NZsGnFcXeEdpBSQVi56vap0eJrQTSFpV0sG497HNN
p96ErrGpqlOkTofcBeytpQbhH9kbP58PMABwU3tmoMFhT0kklPPZatv7RDLmC8cra5muXEwd
wv7ggauHbMbV3U1xZ/BNPwHm7jO1ygqR6Q4Y98miRUP4yH9SJsnr+q7bpD4yOUy/qP0Ve0Y0
jFgX4e4DrnckO/2rG4lB2SbKiAWAOW5aGTnUAZt6agegXY62kHpuUHGcgYkeQqDWKLZWjFAA
vj8Gm5f+1thWk+4I0rFQBtaAoitd+qKPWFYSojjvKH4PLqoOV413qxZbrRlGxZb2TkJnxYpO
imOq/H6bHCnJUA8NI1v5rXmGQXfwhofMX9dHpGK864G+i59AX9L0EEQngDXZPlSEkyISaBY7
JFBhuIPcY8MrhUkNWl1G2RcssjHeexmo2qNrKH4bWFF7xCCTmdGUSoHzaHDe/cIqmI0aRkqf
HQ4MpadD8flLLMqV/ODYfpSD3AuwM/m8Uj9nvfnMRs7BTQRbBJGrARAA3+SVdBJUThjPx/J5
G4A1dd2vKVRRprW+pyJ0XDbNrRVOEnxr3okz2F4Htg72oULwsNcuCmgFxDlxIFMitzZAWbuL
fq9FR7snaW3PMlkj44eezq3emYXVv3C3lc6MudAOqkQKNzakyaA/6cNVlQnVmrpctpFHtUNi
oeivM9IeCP52scTH84qeRZofmnedc3FAxKMJ9OZi4Miigsd/DhzhUqbAePrCMlQQsM/HXSNs
2qoMK3Bo6lcHzV7qyI9w19tmFouX06ULnAAM1dJZcCUL31FLtaIrGbcXA+99a8dlOUb68rj9
9H3V3zDjJscDBgJ2mziuuS/naG/NK+RVhVh3KqtViC62nGgA1tS1aLKZ7KDeyzu4FiE2bCPh
6b4IlIQijzqwTyPJt+0Muf2FYxir9GwgMnVqJ/fYaT671RCcUrkq2krVzdHq/HX7A8Hyfftc
BMEt4yZJt/bZ7ryyWJ8PlQJP3HGqz+hpHmwrwmJgj5RbmktVMw3RAEipJrEHD1Q7wIhPNYpy
6FIwFlDxwpUQOUYGEZYww9LRZiapN0FeDcFp6CUMRgJH24ZQzFk8J5N4PAzZrIZfQba71bDA
z3902PDt66qiIiG2muTbd8eIeCzx9RxWhDmQclzXn5WxfPU6l0E9NgLNFoNCppLaTz2S/Gxw
ZzrSduMLfVlhKPDjv2EAEQEAAcLBZQQYAQIADwUCWwSRqwIbDAUJAeEzgAAKCRDyTyMtEIs6
1MLqD/9vMXLRhe5w6oBKuL0tj+ChLhkQEM66Q7O4urWmvl8yf/ThNi0/LydGAYawCUWud2ph
aOg4vH0IUvUhlLDRcYc2MdfwJi8aj8G7YC/OUKwwFDfYyY9zIk1C5yXn6LigkjOL0PyYI0MM
2gk64t/PK+Rny8jz6QjwZ4AMsoTpo698LSYS7LcvOETp+3yz0LYtkPP36FqoG2hudjh015Gk
DSIHWckot4TJXK8OOHOuKwUz2fteGsFeM4bmTiArCRXsAkRWo0VbA6hPinK0Zr/xLNSYIx94
IXe5q9ISZc6ceuWyisVsUZxUgJJGyNSvXXwx4zoSS7BXyTo7syjpKd09nhCL3QGfuHugJ/1/
DCaNtKUu2C+rUe1Ux6/qteCVUsAM+bDfDBQ/vS1tnyn9OVBTOZqXvChL4f+MAN2Wws/+Llxw
DqGMX6YC/ZBWM56XGApL1zj93nygxbN8s8yXqqMQNghTjwj9IqyaNQcKO/AslSmFlW6RXz1Y
RDT4mSKdAogbdDqmguGc05kUaOSkqSb0bL34iQ/dm4PyVxjSGSDRr8TQOjQGz0rSEh6Q+LZ9
zRltkmEMkdkyWQZ4tYsBbQv2TU+tCfKMIUCZ7xEHuvjAKZIms9Ers3zVS+PcRr9i6mvMtbNM
ufP9MwSx7PqsHuv/PWdoI3uwanxYzk1GTLALMsy2icLBfAQYAQIAJgIbDBYhBFt9xY2Q/sHp
kKMQuvJPIy0QizrUBQJcv1RFBQkDm/YaAAoJEPJPIy0QizrUjvoP/R6Wi8Ol1QiOWrxLZyL9
NYtU1Q+P46R8Q0d6gFRkrC9MKJlzaTRzPxdaWyJURnh1pXHbykB3/b6Bg/WN7o7Wips8KIhL
PzrNUiCZIsrBxUR29no7NzU6o7rSuu/9j5OfiyW/jViRJ3oi1jdYdFx7qx/56j1I54q6NHAk
i2AoG07RbXsRsh0x5vv4VIEFNwRRHmn/d185NTDeoVj9IanVhF6zna9M2iX3AgUOLovF7PiM
d/oF5XDwuzEDiBIorGi4WTqiCDjl7menb657af1DsPV68gKCiVFQNwfbawtUzUBasfaCFkR5
NuXWFqYN/305vlK/IN2GDPrwwOFsQK9pG4fYDDC5Pi9fy9wLrwtlebRuraLCHsiho8mYtEhM
QTU7oQwWga9Ax6BXbnStmX1kEev41CEEvnaVtqzuT0VKJjnre/7z8+bRC1tbqvN5CKTQ1k3d
5uwFqCBOxtoY6NLmYT37zFq34etKgpqCri6lEMtM57icMd4SPaADSXly/EyUTPbb/iGvQVOS
NFPpY30rTBA8rJJ5Iawe1OjG2dcYwKkFfGjGU7bbHp9ClG1d3YM7kDxVkgdIVAWhEY905HB4
KXQZd0eW19JjNwLVMNzgBh07BiaXl16tWY+P7pQdPrbLctiIVqsYx+IU74M7riDEMTGjsosr
lL56VCOJffiN9F1L
Message-ID: <e9c5e519-ea8a-f0e2-d8fb-c955b5c2de40@purse.io>
Date: Thu, 10 Oct 2019 09:16:16 -0700
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101
Thunderbird/60.9.0
MIME-Version: 1.0
In-Reply-To: <CAE-z3OV_LL+Jww3e=gO6t=02VW7m9PK+8EaYoEVLy9NKNMiSaQ@mail.gmail.com>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: en-US
X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,
DKIM_VALID, DKIM_VALID_AU,
RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1
X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on
smtp1.linux-foundation.org
X-Mailman-Approved-At: Thu, 10 Oct 2019 16:20:30 +0000
Subject: Re: [bitcoin-dev] Chain width expansion
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: Thu, 10 Oct 2019 16:16:20 -0000
On 10/4/19 4:31 PM, Tier Nolan via bitcoin-dev wrote
> [..] At root, the requirement is that peers can prove their total chain=
POW. [...]
Indeed, it's currently necessary to receive all of the chain headers to
determine. It would be interesting to have a succinct chainwork proof
for all cases. Chainwork being a sum of the total proof-of-work in a
chain. Such proofs currently only require a few headers for common cases
and the other cases can be identified.
> In regard to your proposal, I think the key is to limit things by peer,=
rather than globally. [...]
Yeah, there should be enough width available for every active
connection, only one chain of headers is requested at a time per peer.
Peer based limiting is susceptible to Sybil attacks; A peer could
broadcast a few low-work header chains, reconnect and repeat ad nauseam.
The delay for the next set of headers is based on the chainwork of the
last received headers from the peer. The peer could change identity and
run into the same limit. The unrequested header rate is tracked per peer.=
A header chain with more chainwork will be requested at a faster rate
than a header chain with less chainwork. The chainwork is compared to
the current fully validated chain. Honest peers with more chainwork will
have a time advantage over dishonest peers with less chainwork.
For example, let's assume a case that the initial chain of headers was
dishonest and with low chainwork. The initial block download retrieves
the header chain from a single loader peer first. Once recent time is
reached, header chains are downloaded from all outgoing peers. A single
honest peer will have an advantage over many dishonest peers. Thus, as
you have mentioned, there is a security assumption that there is at
least one connected honest node.
|