summaryrefslogtreecommitdiff
path: root/0f/a2c5c9a5831398db4041ba554a57e084d43ae2
blob: afbdd460a28f2e9cfd238d1a1db5664104a14384 (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
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
Return-Path: <gmaxwell@gmail.com>
Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org
	[172.17.192.35])
	by mail.linuxfoundation.org (Postfix) with ESMTPS id 41AA0C75
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Tue, 13 Jun 2017 18:11:42 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.7.6
Received: from mail-ua0-f175.google.com (mail-ua0-f175.google.com
	[209.85.217.175])
	by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 741411A4
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Tue, 13 Jun 2017 18:11:41 +0000 (UTC)
Received: by mail-ua0-f175.google.com with SMTP id h39so80663131uaa.3
	for <bitcoin-dev@lists.linuxfoundation.org>;
	Tue, 13 Jun 2017 11:11:41 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
	h=mime-version:sender:in-reply-to:references:from:date:message-id
	:subject:to:cc:content-transfer-encoding;
	bh=Ab+tQxx+V4mJ9ZxkIR0MK6EjiDgJz5sTpvWpzG/yOM4=;
	b=muBLMQwt2XP4vj9ltWBO9jwgq+OTeabTvIVSMGFrUTYWH94fjzsYxHnFFiFsHT4DM0
	1sDsYIRJM0jCpGrhqmuu2y2ALy/SoOmsKfgHTq8LE7gxNvLVLN6hh0UNxqGc6rEb9Zzz
	XBHty7Z8oHqz2JXgbJS4SiVkyfGWGa5T+V6/xZYBfpNMyuQ1S8HrbZ/mmi1EEwP4R3T7
	wiPZrpNg73492SxS3Qz0893QXxmF9ZFhxbgOYWAPB9qCzViITAaW3HsaYh10qi1Wn5S3
	RQ6dxMzAnqaVvlYqLnmqkfl8klNxpK5VLVCbUvq6LSvUFcvdXSFHj+qPM5jpQFGdSaR1
	TaJA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20161025;
	h=x-gm-message-state:mime-version:sender:in-reply-to:references:from
	:date:message-id:subject:to:cc:content-transfer-encoding;
	bh=Ab+tQxx+V4mJ9ZxkIR0MK6EjiDgJz5sTpvWpzG/yOM4=;
	b=CbIUjRpifYFLkNTLujXBaJjkgDjVyPTidmazNLeP1d5Yja3+typwhDYcgNwD7DVWFr
	ZN0J5JcYZeEW2bKda5o0nYPsiakRZ1jLBunfnZkW6HfmGN94YtNg3V3zBIZTfPfuFBBY
	jzuYhPckzznGYFra8i8ZxNahh7XWlCYbBWMB+j96b3fQBgYlerA+LVgx5sJCGpfXF0oN
	wYaNF3TfhPKkxRb2u3r5+WzEec94wIGiV+c/9OeAsW3p20RLuFcRA82erOfG09cx+rE/
	+SIoTVs+jbqpj/vwzJXxuV28SpFEy/fGfmgXFjijXtdpNAd67eeU6oEt3/80Zq9DM8cH
	9RrQ==
X-Gm-Message-State: AKS2vOwv5XfP5/i4kxBrWgN7rg973Y9yZSGV65ZvQf5FuGEt3mHuZpJ9
	zC+UIdzFfvaHjJRcD0ut2QsCiZSITw==
X-Received: by 10.176.84.221 with SMTP id q29mr3370511uaa.103.1497377500554;
	Tue, 13 Jun 2017 11:11:40 -0700 (PDT)
MIME-Version: 1.0
Sender: gmaxwell@gmail.com
Received: by 10.103.13.7 with HTTP; Tue, 13 Jun 2017 11:11:39 -0700 (PDT)
In-Reply-To: <A6AE8145-8C8A-44C2-88D3-8574D895AF6B@gmail.com>
References: <A6AE8145-8C8A-44C2-88D3-8574D895AF6B@gmail.com>
From: Gregory Maxwell <greg@xiph.org>
Date: Tue, 13 Jun 2017 18:11:39 +0000
X-Google-Sender-Auth: pNXbFDOfExsuVK0fGObOYpn_uYg
Message-ID: <CAAS2fgT=0k0NJWsO_TtBRTi2VqZtzuT1d1Sk+KZ2+2PUcA71tg@mail.gmail.com>
To: Zheming Lin <heater@gmail.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,
	DKIM_VALID, FREEMAIL_FROM,
	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
Cc: Bitcoin Dev <bitcoin-dev@lists.linuxfoundation.org>
Subject: Re: [bitcoin-dev] Proposal: Demonstration of Phase in Full Network
 Upgrade Activated by Miners
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: Tue, 13 Jun 2017 18:11:42 -0000

On Tue, Jun 13, 2017 at 2:23 AM, Zheming Lin via bitcoin-dev
<bitcoin-dev@lists.linuxfoundation.org> wrote:
> The BIP is described using Chinese and English. If any part is missing or=
 need more specific, please reply. Forgive for my poor English.

Your English is much better than my Chinese.  Thank you for taking the
time to write this.

I am still reading and trying to completely understand your proposal
but I wanted to make one observation:

> =E9=89=B4=E4=BA=8E=E6=9C=80=E5=88=9D=E7=9A=84=E6=AF=94=E7=89=B9=E5=B8=81=
=E5=8D=8F=E8=AE=AE=E5=B9=B6=E6=9C=AA=E8=80=83=E8=99=91=E4=B8=8D=E5=8F=82=E4=
=B8=8E=E6=8C=96=E7=9F=BF=E7=9A=84=E9=92=B1=E5=8C=85=E8=8A=82=E7=82=B9=EF=BC=
=8C=E5=AF=BC=E8=87=B4=E8=BF=99=E4=BA=9B=E9=92=B1=E5=8C=85=E8=8A=82=E7=82=B9=
=E7=9A=84=E5=8D=8F=E8=AE=AE=E5=8D=87=E7=BA=A7=E6=98=AF=E8=A2=AB=E5=8A=A8=E7=
=9A=84=EF=BC=8C=E6=87=92=E6=83=B0=E7=9A=84=E3=80=82=E5=BD=93=E5=9C=A8=E5=8D=
=87=E7=BA=A7=E6=96=B9=E5=90=91=E4=B8=8A=E5=87=BA=E7=8E=B0=E5=88=86=E6=AD=A7=
=E6=97=B6=EF=BC=8C=E7=9F=BF=E5=B7=A5=E4=B9=9F=E4=B8=8D=E6=84=BF=E6=84=8F=E5=
=9C=A8=E9=94=99=E8=AF=AF=E7=9A=84=E9=93=BE=E4=B8=8A=E6=8C=96=E7=9F=BF=EF=BC=
=8C=E4=BD=86=E7=9F=BF=E5=B7=A5=E5=8F=88=E6=B2=A1=E6=9C=89=E4=BB=BB=E4=BD=95=
=E6=96=B9=E6=B3=95=E5=8F=AF=E4=BB=A5=E7=A1=AE=E4=BF=9D=E6=AD=A3=E5=9C=A8=E5=
=BB=B6=E9=95=BF=E7=9A=84=E9=93=BE=E6=98=AF=E8=A2=AB=E9=92=B1=E5=8C=85=E8=8A=
=82=E7=82=B9=E5=B9=BF=E6=B3=9B=E6=8E=A5=E5=8F=97=E7=9A=84=E9=93=BE=E3=80=82=
=E8=BF=99=E5=B0=86=E5=BD=B1=E5=93=8D=E9=92=B1=E5=8C=85=E8=8A=82=E7=82=B9=E7=
=9A=84=E5=AE=89=E5=85=A8=E3=80=82<br/>
> In view of the fact that the original Bitcoin consensus did not consider =
the non-mining wallet nodes(as mentioned above), the result is that upgradi=
ng the consensus of these wallet nodes is passive and lazy.

This is not true. Non-mining wallet nodes were considered, and their
upgrade practices are not usually slower than miners.

Even in the very first version of the software it did not mine unless
the user went into the settings and explicitly turned it on or used a
command-line option.  By default, every installation of Bitcoin was a
non-mining wallet node.

The enforcement of the system's rules by users broadly, and not just
miners, is specifically described in the white paper (section 8,
paragraph 2, it especially clear in the last sentence).  This is
critical for the security of Bitcoin especially with the current
degree of centralization in pools.  Without it, Bitcoin's security
would look a lot more like the Ripple system.

Frequently it is the miners that are "passive and lazy" in upgrading.
In some cases when new versions have had major improvements specific
to mining (such as for 0.8) miners upgraded much faster than other
nodes. But often, it is the other way around and miners adopt new
versions much slower than other nodes. If you look at block
construction today you will see that many miners are running highly
outdated node software which is more than one or even two years old.
(and as a result, they lose out on a considerable amount of
transaction fees.)

In fact, many miners have the most severe form of passive behavior:
they do not run a node at all but simply sell their hash power to
pools (which themselves are often slow to upgrade).  By comparison,
http://luke.dashjr.org/programs/bitcoin/files/charts/branches.html 95%
of reachable nodes are running software now from the last year and a
half.

I do not, however, believe that it is a problem that anyone is slow to upgr=
ade.

Reliability cannot be maintained in infrastructure if it is rapidly
changing.  A normal deployment process for major systems
infrastructure outside of Bitcoin usually takes months because time
must be given to test and find bugs.

Miners depend on their income from mining and interruptions can be
very costly.  Many pools are also involved with altcoins which are
constantly breaking and they have their attention directed elsewhere
and cannot quickly spare the time required to upgrade their software.
These delays are the natural consequence of a decentralized system
where no one has the power to force other people to adopt their
priorities.

If you look at the deployment processes of major internet protocols,
HTTP2, new versions of SSH, BGP,  or IP itself you will find that
upgrades often happen slower than the entire life of Bitcoin so far--
and none of these protocols have the difficult consistency challenges
of Bitcoin or as much risk of irreparable financial loss if things go
wrong.

Because many people in the Bitcoin community appears to expect
upgrades much faster than even centralized ISP backbones upgrade their
router software I think they have unrealistic expectations with how
fast upgrading can occur while preserving stability, security, and
decentralization and unrealistic expectations of how fast upgrading
will occur so long as no one has the ability to force other people to
run their upgrades.

I look forward to competing my understanding of your proposal.

Cheers,