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
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
|
Delivery-date: Thu, 19 Dec 2024 12:40:54 -0800
Received: from mail-yb1-f191.google.com ([209.85.219.191])
by mail.fairlystable.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
(Exim 4.94.2)
(envelope-from <bitcoindev+bncBCXKXQ5DHYIMZCMSXMDBUBG7PRYZI@googlegroups.com>)
id 1tONKH-0008S6-DE
for bitcoindev@gnusha.org; Thu, 19 Dec 2024 12:40:53 -0800
Received: by mail-yb1-f191.google.com with SMTP id 3f1490d57ef6-e38dbc5d05bsf1945610276.1
for <bitcoindev@gnusha.org>; Thu, 19 Dec 2024 12:40:52 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=googlegroups.com; s=20230601; t=1734640847; x=1735245647; darn=gnusha.org;
h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
:list-id:mailing-list:precedence:x-original-sender:mime-version
:subject:references:in-reply-to:message-id:to:from:date:sender:from
:to:cc:subject:date:message-id:reply-to;
bh=c4DwXfp0bHaqUNginupZ/d761dGORVofxQmbWXi/7FY=;
b=uHyYvMiHlCKXgSMDGeNAgn2nLz3z16YjNnNjsNmEKR9lShUrzjxiL5nK577Ov31bli
SQG9l7m1+ynhexpz85dj54vn23+KBGSaAptu2cN41qmsEgJP+OO60qvjO1C7h0bXRVkE
tGrIjlIhKdqnfai1uuel7uOhx7/VPwqKoUpLekym1XT1jQ9pY8IIeRuR3vjZ+fDnlZ/X
g+WeJYdByMPvVAgimhdr4a25viAD1TlgV05GpOc5JQcQxWlHUOk7N1XDeXbbX7TdAp0e
z3QVJaZsQphhEH5uiLQBO00UIuhkZd32zM9ou1LnHiiAnEFWsfMP1k5E/ZQUKa+WPGqR
BuIA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20230601; t=1734640847; x=1735245647; darn=gnusha.org;
h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
:list-id:mailing-list:precedence:x-original-sender:mime-version
:subject:references:in-reply-to:message-id:to:from:date:from:to:cc
:subject:date:message-id:reply-to;
bh=c4DwXfp0bHaqUNginupZ/d761dGORVofxQmbWXi/7FY=;
b=PI7Hcab7o+YRNw0kO62k7hYNLePq69Oj0v/JUj6UvhtNBQZige9c5TNmAUa24O2Zdw
a4Umi2Y1qQiqZuOZKT5AVv5ePbmvgCznEVt09oSF1oOZq0FpS2fe2oK6I+VpwIhmcs9w
u8+rAR3w4MLYnpW/0A7gyHY/S2Y4SGVa+KaoIhZDNrLqFNEdOB4wIgePQV6AXNdZxh0v
ba9AeYjvEj1aItOxUYyIqia8JVOQhWGazE4Qwmk3RP+L66ybmbBIAD/6NV6dHyM/GAy/
kRlAQe1iiByP0S2UWJkjTfmEhl4dCT3xIvbkdrZN/xUte0Ky+5vrtHwoVrECMzeZGGSX
Z5lA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20230601; t=1734640847; x=1735245647;
h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
:list-id:mailing-list:precedence:x-original-sender:mime-version
:subject:references:in-reply-to:message-id:to:from:date:x-beenthere
:x-gm-message-state:sender:from:to:cc:subject:date:message-id
:reply-to;
bh=c4DwXfp0bHaqUNginupZ/d761dGORVofxQmbWXi/7FY=;
b=KihA5NpuY3IpMWDz/R+cEUL+PURJaYM//Sz++D6zjLRY/el0eDfgI0ip0L8PrHzUYI
F3iJGniP5EHfeUhCuyC1n3Tc97ekbXNTB90xu2XSHsayr5DK1Mz+tmG0bVRb8u57qf3z
dQz81DRaL3rLiFEpT9qJVRnvUgNR0ulOeUyRDzk+dVXhMAZA91N1rJcW8iTkfFDU21UI
6AHRIxX18pD6Y1V0krRIUlquis/kVJG91PvNxtLzigwGtAM5fpVBycZ0oO+R16OZG9Tz
WC9yF8CYIoODnMUqOQrOY+2uYTLvYLCusNXg0c5k4D2mv/yKTNTo0TdByjsF6pfsG9Bo
r0Sg==
Sender: bitcoindev@googlegroups.com
X-Forwarded-Encrypted: i=1; AJvYcCWEzfn60/AL8Yo2v6xCi7dc4uxV0CM2LcZbKsBRQw+Kv5kgg1WPZEHT5yyc5c4sxfkqqzeUgJF94OUM@gnusha.org
X-Gm-Message-State: AOJu0Yxup/4R/+mlemoPO+EETotgt0SC59As0IImLkVQQtoC86u5WV8W
079gopp+Ts/+ENKi19n5DYJxmBkaWaxxm2c6OeBExk2O6UiSK8I7
X-Google-Smtp-Source: AGHT+IGoGYMnjcxLMV/UvAy8vpvUlpYFMVDruEx3is6BfxQ/QPvH7U+J4pXneykqlpBJO8HjoZLNtg==
X-Received: by 2002:a25:13c1:0:b0:e48:6cf9:4716 with SMTP id 3f1490d57ef6-e538c25eb48mr255859276.25.1734640846555;
Thu, 19 Dec 2024 12:40:46 -0800 (PST)
X-BeenThere: bitcoindev@googlegroups.com
Received: by 2002:a25:aaab:0:b0:e38:8f42:e222 with SMTP id 3f1490d57ef6-e5382675542ls319033276.0.-pod-prod-08-us;
Thu, 19 Dec 2024 12:40:44 -0800 (PST)
X-Received: by 2002:a05:690c:7007:b0:6ef:c24e:5e2 with SMTP id 00721157ae682-6f3f8146101mr1352277b3.19.1734640843801;
Thu, 19 Dec 2024 12:40:43 -0800 (PST)
Received: by 2002:a0d:d202:0:b0:6ef:7d10:5a2f with SMTP id 00721157ae682-6f3f56f322bms7b3;
Thu, 19 Dec 2024 12:00:56 -0800 (PST)
X-Received: by 2002:a05:690c:6913:b0:6ef:8e8a:6348 with SMTP id 00721157ae682-6f3d269df4fmr70087757b3.42.1734638455465;
Thu, 19 Dec 2024 12:00:55 -0800 (PST)
Date: Thu, 19 Dec 2024 12:00:55 -0800 (PST)
From: Anders <blabline@gmail.com>
To: Bitcoin Development Mailing List <bitcoindev@googlegroups.com>
Message-Id: <ab246ea3-36ae-4c87-b4d1-32b0ec4f2603n@googlegroups.com>
In-Reply-To: <CAAg3Je1hVqcR_DGZEXhaeO7CEU1k-SLx_1QX=XmnS2Bn11joXw@mail.gmail.com>
References: <e86753f2-1c79-484d-8f61-47a5dd148b45n@googlegroups.com>
<CAAg3Je1hVqcR_DGZEXhaeO7CEU1k-SLx_1QX=XmnS2Bn11joXw@mail.gmail.com>
Subject: Re: [bitcoindev] Double Exponential Hash Rate Growth and Difficulty Adjustment
MIME-Version: 1.0
Content-Type: multipart/mixed;
boundary="----=_Part_7506_507713653.1734638455147"
X-Original-Sender: blabline@gmail.com
Precedence: list
Mailing-list: list bitcoindev@googlegroups.com; contact bitcoindev+owners@googlegroups.com
List-ID: <bitcoindev.googlegroups.com>
X-Google-Group-Id: 786775582512
List-Post: <https://groups.google.com/group/bitcoindev/post>, <mailto:bitcoindev@googlegroups.com>
List-Help: <https://groups.google.com/support/>, <mailto:bitcoindev+help@googlegroups.com>
List-Archive: <https://groups.google.com/group/bitcoindev
List-Subscribe: <https://groups.google.com/group/bitcoindev/subscribe>, <mailto:bitcoindev+subscribe@googlegroups.com>
List-Unsubscribe: <mailto:googlegroups-manage+786775582512+unsubscribe@googlegroups.com>,
<https://groups.google.com/group/bitcoindev/subscribe>
X-Spam-Score: -0.5 (/)
------=_Part_7506_507713653.1734638455147
Content-Type: multipart/alternative;
boundary="----=_Part_7507_1589389550.1734638455147"
------=_Part_7507_1589389550.1734638455147
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Okay, that sounds like a simple and clever approach without the need for a=
=20
hard fork.
On Thursday, December 19, 2024 at 8:48:10=E2=80=AFPM UTC+1 Michael Cassano =
wrote:
> Hi Anders,
>
> Thank you for the question.
>
> A solution is to keep miners on SHA256 (instead of switching to a hash=20
> that allows for a larger range of difficulty targets) but to require them=
=20
> to hash again to achieve a secondary difficulty target.
>
> At max target difficulty miners would publish blocks when SHA256(header)=
=20
> =3D=3D 1 and when SHA256(SHA256(header)) <=3D secondary_target where=20
> secondary_target adjusts up and down if primary_target is 1 (where=20
> primary_target represents today's target difficulty).
>
> Nodes then verify blocks by checking that SHA256(header) is =3D=3D 1 and =
that=20
> SHA256(SHA256(header) is less than secondary_target.
>
> Best regards,
> Mike
>
> On Wed, Dec 18, 2024 at 6:21=E2=80=AFPM Anders <blab...@gmail.com> wrote:
>
>> Hi,
>>
>> I've been looking into the long-term implications of the Bitcoin hash=20
>> rate growth for the difficulty adjustment mechanism, and I'd like to=20
>> discuss a potential concern related to double exponential growth.
>>
>> As we know, the difficulty adjustment mechanism aims to maintain an=20
>> average block time of approximately 10 minutes by adjusting the target=
=20
>> value every 2016 blocks. This target value, when represented in=20
>> hexadecimal, effectively determines the number of leading zeros required=
=20
>> for a valid block hash.
>>
>> The Bitcoin hash rate has historically shown a strong exponential growth=
=20
>> trend, driven by advancements in ASIC technology. However, some=20
>> observations suggest that this growth might be accelerating, potentially=
=20
>> exhibiting double exponential growth (meaning the rate of exponential=20
>> growth is itself increasing exponentially).
>>
>> If the hash rate were to continue to grow at a double exponential rate,=
=20
>> the difficulty would need to increase at an accelerating pace to maintai=
n=20
>> the 10-minute block time. This would mean the number of leading zeros in=
=20
>> the target value would also need to increase at an accelerating rate.
>>
>> Since the target value is a 256-bit number (64 hexadecimal digits),=20
>> there's a finite limit to the number of leading zeros it can have. With=
=20
>> approximately 19-20 leading zeros currently observed, there are only abo=
ut=20
>> 44-45 zeros "left" before reaching this limit.
>>
>> My concern is that with double exponential hash rate growth, we could=20
>> reach this limit much faster than a simple linear projection would sugge=
st,=20
>> potentially within a decade. Once this limit is reached, the current=20
>> difficulty adjustment mechanism would become ineffective, potentially=20
>> leading to unstable block times and network instability.
>>
>> My questions for the list are:
>>
>> 1. Has there been more formal analysis of the Bitcoin hash rate trend to=
=20
>> assess the likelihood of double exponential growth? Are there any existi=
ng=20
>> studies or analyses I should be aware of?
>>
>> 2. If double exponential growth continues, what are the most promising=
=20
>> approaches to address this potential issue in the long term?
>>
>> 3. What are the trade-offs associated with different solutions, such as=
=20
>> more frequent difficulty adjustments, changing the difficulty adjustment=
=20
>> algorithm, or changing the proof-of-work algorithm entirely?
>>
>> Thanks,
>>
>> Anders
>>
>> --=20
>> You received this message because you are subscribed to the Google Group=
s=20
>> "Bitcoin Development Mailing List" group.
>> To unsubscribe from this group and stop receiving emails from it, send a=
n=20
>> email to bitcoindev+...@googlegroups.com.
>> To view this discussion visit=20
>> https://groups.google.com/d/msgid/bitcoindev/e86753f2-1c79-484d-8f61-47a=
5dd148b45n%40googlegroups.com=20
>> <https://groups.google.com/d/msgid/bitcoindev/e86753f2-1c79-484d-8f61-47=
a5dd148b45n%40googlegroups.com?utm_medium=3Demail&utm_source=3Dfooter>
>> .
>>
>
--=20
You received this message because you are subscribed to the Google Groups "=
Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to bitcoindev+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/=
ab246ea3-36ae-4c87-b4d1-32b0ec4f2603n%40googlegroups.com.
------=_Part_7507_1589389550.1734638455147
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Okay, that sounds like a simple and clever approach without the need for a =
hard fork.<br /><br /><div class=3D"gmail_quote"><div dir=3D"auto" class=3D=
"gmail_attr">On Thursday, December 19, 2024 at 8:48:10=E2=80=AFPM UTC+1 Mic=
hael Cassano wrote:<br/></div><blockquote class=3D"gmail_quote" style=3D"ma=
rgin: 0 0 0 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left:=
1ex;"><div dir=3D"ltr">Hi Anders,<div><br></div><div>Thank you for the que=
stion.</div><div><br></div><div>A solution is to keep miners on SHA256 (ins=
tead of switching to a hash that allows for a larger range of difficulty ta=
rgets) but to require them to hash again to achieve a secondary difficulty =
target.</div><div><br></div><div>At max target difficulty miners would publ=
ish blocks when SHA256(header) =3D=3D 1 and when SHA256(SHA256(header)) <=
;=3D secondary_target where secondary_target adjusts up and down if primary=
_target is 1 (where primary_target represents today's target difficulty=
).</div><div><br></div><div>Nodes then verify blocks by checking that SHA25=
6(header) is =3D=3D 1 and that SHA256(SHA256(header) is less than secondary=
_target.</div><div><br></div><div>Best regards,</div><div>Mike</div></div><=
br><div class=3D"gmail_quote"></div><div class=3D"gmail_quote"><div dir=3D"=
ltr" class=3D"gmail_attr">On Wed, Dec 18, 2024 at 6:21=E2=80=AFPM Anders &l=
t;<a href data-email-masked rel=3D"nofollow">blab...@gmail.com</a>> wrot=
e:<br></div></div><div class=3D"gmail_quote"><blockquote class=3D"gmail_quo=
te" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-sty=
le:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Hi,<br><br>I&=
#39;ve been looking into the long-term implications of the Bitcoin hash rat=
e growth for the difficulty adjustment mechanism, and I'd like to discu=
ss a potential concern related to double exponential growth.<br><br>As we k=
now, the difficulty adjustment mechanism aims to maintain an average block =
time of approximately 10 minutes by adjusting the target value every 2016 b=
locks. This target value, when represented in hexadecimal, effectively dete=
rmines the number of leading zeros required for a valid block hash.<br><br>=
The Bitcoin hash rate has historically shown a strong exponential growth tr=
end, driven by advancements in ASIC technology. However, some observations =
suggest that this growth might be accelerating, potentially exhibiting doub=
le exponential growth (meaning the rate of exponential growth is itself inc=
reasing exponentially).<br><br>If the hash rate were to continue to grow at=
a double exponential rate, the difficulty would need to increase at an acc=
elerating pace to maintain the 10-minute block time. This would mean the nu=
mber of leading zeros in the target value would also need to increase at an=
accelerating rate.<br><br>Since the target value is a 256-bit number (64 h=
exadecimal digits), there's a finite limit to the number of leading zer=
os it can have. With approximately 19-20 leading zeros currently observed, =
there are only about 44-45 zeros "left" before reaching this limi=
t.<br><br>My concern is that with double exponential hash rate growth, we c=
ould reach this limit much faster than a simple linear projection would sug=
gest, potentially within a decade. Once this limit is reached, the current =
difficulty adjustment mechanism would become ineffective, potentially leadi=
ng to unstable block times and network instability.<br><br>My questions for=
the list are:<br><br>1. Has there been more formal analysis of the Bitcoin=
hash rate trend to assess the likelihood of double exponential growth? Are=
there any existing studies or analyses I should be aware of?<div><br>2. If=
double exponential growth continues, what are the most promising approache=
s to address this potential issue in the long term?</div><div><br>3. What a=
re the trade-offs associated with different solutions, such as more frequen=
t difficulty adjustments, changing the difficulty adjustment algorithm, or =
changing the proof-of-work algorithm entirely?</div><div><br>Thanks,<br><di=
v><br></div><div>Anders</div></div>
<p></p></blockquote></div><div class=3D"gmail_quote"><blockquote class=3D"g=
mail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left-width:1px;border-=
left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
-- <br>
You received this message because you are subscribed to the Google Groups &=
quot;Bitcoin Development Mailing List" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href data-email-masked rel=3D"nofollow">bitcoindev+...@googlegro=
ups.com</a>.<br>
To view this discussion visit <a href=3D"https://groups.google.com/d/msgid/=
bitcoindev/e86753f2-1c79-484d-8f61-47a5dd148b45n%40googlegroups.com?utm_med=
ium=3Demail&utm_source=3Dfooter" target=3D"_blank" rel=3D"nofollow" dat=
a-saferedirecturl=3D"https://www.google.com/url?hl=3Den&q=3Dhttps://gro=
ups.google.com/d/msgid/bitcoindev/e86753f2-1c79-484d-8f61-47a5dd148b45n%254=
0googlegroups.com?utm_medium%3Demail%26utm_source%3Dfooter&source=3Dgma=
il&ust=3D1734724778258000&usg=3DAOvVaw0BMrF3Elp8ECT1pryRUKEQ">https=
://groups.google.com/d/msgid/bitcoindev/e86753f2-1c79-484d-8f61-47a5dd148b4=
5n%40googlegroups.com</a>.<br>
</blockquote></div>
</blockquote></div>
<p></p>
-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;Bitcoin Development Mailing List" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:bitcoindev+unsubscribe@googlegroups.com">bitcoind=
ev+unsubscribe@googlegroups.com</a>.<br />
To view this discussion visit <a href=3D"https://groups.google.com/d/msgid/=
bitcoindev/ab246ea3-36ae-4c87-b4d1-32b0ec4f2603n%40googlegroups.com?utm_med=
ium=3Demail&utm_source=3Dfooter">https://groups.google.com/d/msgid/bitcoind=
ev/ab246ea3-36ae-4c87-b4d1-32b0ec4f2603n%40googlegroups.com</a>.<br />
------=_Part_7507_1589389550.1734638455147--
------=_Part_7506_507713653.1734638455147--
|