summaryrefslogtreecommitdiff
path: root/81/43d44d7fc48a1efdabab9591aec4f831652cd1
blob: 4800d47351d8cbd589676b4be3558bbdf916fd1b (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
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
Delivery-date: Thu, 02 Oct 2025 15:45:55 -0700
Received: from mail-oa1-f61.google.com ([209.85.160.61])
	by mail.fairlystable.org with esmtps  (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
	(Exim 4.94.2)
	(envelope-from <bitcoindev+bncBAABBGMB7TDAMGQEO2FXALA@googlegroups.com>)
	id 1v4S3f-0000Ff-2Q
	for bitcoindev@gnusha.org; Thu, 02 Oct 2025 15:45:55 -0700
Received: by mail-oa1-f61.google.com with SMTP id 586e51a60fabf-36d429b919csf2078228fac.0
        for <bitcoindev@gnusha.org>; Thu, 02 Oct 2025 15:45:54 -0700 (PDT)
ARC-Seal: i=2; a=rsa-sha256; t=1759445149; cv=pass;
        d=google.com; s=arc-20240605;
        b=ILrGFKl6XDgB94KEPgfqTb8ezX/jEAKSIJR+nXj4s5VmAADDc3117Q+mHqi3XgkjyW
         u7HpYk8wzZHDsK6bkE305tPLsYkp2jnloY/IUCu9h7PP2NkAltk02Ud9XuKTBtJpPj8K
         g+nAZmhCUI6BcYxdK3XFwhalsHLBwdej/OIDbRhyrOE4/qi9rgHpaTT4vSL5+s3fr2TH
         WQeWEySCIRd/ROvK04gUNnCfSb4kj+Zdy6TTZgh+7D/Ag7KoJtOiGHc51HrQTvDEOOAn
         oeVQ6kbruuAaIm2z/W54DTClya/hHZsDpc+kbOc0NDt1a06iNd33pzZ++/6ikkzvZqEI
         A2sQ==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:reply-to:content-transfer-encoding
         :mime-version:feedback-id:references:in-reply-to:message-id:subject
         :cc:from:to:date:dkim-signature;
        bh=4DRgUxAg7017ywrWysgkO3Y3KTOJFTIuTFWNyOxQj2E=;
        fh=cup3cmGKgzWO49+MnUs+v2vI49CwgYrT9N+zheiNzC4=;
        b=U3JR5WzgzWnjB+pXtl0iAex0j/08eT+UI+AbB3bwCE/RNHWeDLLQqmDIjv+z8Vs0pp
         XzGix9k4BysV3tdQaoXUa6RLF/6h6rDAIewZqDp93Xe49bnaWn1gVf5Mnn0ASf4eLikc
         uae0RATFanVUAmUFuvBP5IiFsrlL6j4BPDx4r0aK0no4pblG7YcYd0AT0USBeviMeZlW
         n2jMsZf5hHhNf5EAO4OyduE28JFfxRk/EggmIoNZJkhrsfixugc8REqtnc+wI4v6toz1
         Bn1cdwClPWMAPCjxwpITQWDFvCCd97pI4LOPZmpf2dHQ1tMex5dKYw168cKaRWx1E4Y3
         7Inw==;
        darn=gnusha.org
ARC-Authentication-Results: i=2; gmr-mx.google.com;
       dkim=pass header.i=@protonmail.com header.s=protonmail3 header.b=lIaJH2W0;
       spf=pass (google.com: domain of moonsettler@protonmail.com designates 109.224.244.24 as permitted sender) smtp.mailfrom=moonsettler@protonmail.com;
       dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=protonmail.com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=googlegroups.com; s=20230601; t=1759445149; x=1760049949; darn=gnusha.org;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:reply-to
         :x-original-authentication-results:x-original-sender
         :content-transfer-encoding:mime-version:feedback-id:references
         :in-reply-to:message-id:subject:cc:from:to:date:from:to:cc:subject
         :date:message-id:reply-to;
        bh=4DRgUxAg7017ywrWysgkO3Y3KTOJFTIuTFWNyOxQj2E=;
        b=J/NuJEVjzo7XNk6284ei8T9fqtzddthMhctaVsAsDg1iAMQcZhfBR549VY6a0pEGlN
         vgA1PC8S7XL93ObtPQjksRkah8ar3743iUUCwjiGpCkFkxQ2bzahwA0KoCl57BsxyVCo
         QXO2eWlPwN9cCsSFdSkZcTH01YBzNQLQoHNKwHt4raAJTUhx9X6O0KV0ALLeuQT8UWCP
         G8ZiYdhND39zO2z+bV6+gTl8bjK8qDJBIiYx9MXdm803CIZUIwdvHge27NZg3Jgngypi
         qwqPD7zkX2q8JZpKMCdSEQ7BWcJ5gj8t3fl/GdOx2XXNbkdjSgE6EX5Hy5r4+KLxVTWk
         TDuw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1759445149; x=1760049949;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:reply-to
         :x-original-authentication-results:x-original-sender
         :content-transfer-encoding:mime-version:feedback-id:references
         :in-reply-to:message-id:subject:cc:from:to:date:x-beenthere
         :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to;
        bh=4DRgUxAg7017ywrWysgkO3Y3KTOJFTIuTFWNyOxQj2E=;
        b=K7nH0vH/VmIP7sIoA7WFxqbnMxL0Rs34bD8dpAz35EDgmm6VrzbQac345PbeS3obYM
         QQtESgqv13o8CHdcJVwuCzFO1qxIOWVs9Rkl/7wy5hiYLzrdLzNnpvxs9OxW2PyxmU4R
         EWIUepqtlbHJ0FdRUDIapJa27NRDvBPDnnYzvCkJnAZUQNzxFrjMcZmUnK6O0fOCDgy7
         uGXN0LUZSeig36sXSDNHz+HFryCAuutM4O7bvRR07P0ADrV/GUcA6orLA9F8V+0BSVcm
         mxl/BEBo6UWpVnddO7jiOIjrX8JLBh+V/CU8eTQIw/A8G7ehxIHfKu5kXkhqNnBgVG/E
         NkkQ==
X-Forwarded-Encrypted: i=2; AJvYcCWFVjYP96HA4PBqTt5IoujTmPAWOw1jvoufUIMeRfo8zrPQw/W8ihL4qC1CmVhjBtPAgk3LLbT2YJxW@gnusha.org
X-Gm-Message-State: AOJu0YwEu4Up5oFB4+lXOwALB85bjmWHrrrBg3DQi+so5DB8xDakF9zh
	yKsBD5fQr2GLyUZ/QFpKeUt82k2gAZwf3RLSkqcN5e/EuND2p6wF9fI8
X-Google-Smtp-Source: AGHT+IHkvrTU1y7NQGtSXBBdWOS6ixS4lzR0Zra3Mu7GWsHLlupHoE7Q+zBmo1k6IK92IQYjAsm2lQ==
X-Received: by 2002:a05:6871:6c04:b0:31d:77c0:7f00 with SMTP id 586e51a60fabf-3b10476492emr682033fac.50.1759445148881;
        Thu, 02 Oct 2025 15:45:48 -0700 (PDT)
X-BeenThere: bitcoindev@googlegroups.com; h="ARHlJd7esaLqNPIm7HuN8Om+ksjw66MnFUd9KVsY7ihwTTG+Pw=="
Received: by 2002:a05:6871:d810:20b0:336:1449:b8ad with SMTP id
 586e51a60fabf-3abfd9e2e0dls547642fac.1.-pod-prod-03-us; Thu, 02 Oct 2025
 15:45:45 -0700 (PDT)
X-Received: by 2002:a05:6808:1805:b0:438:2629:2fcc with SMTP id 5614622812f47-43fc17d94c9mr529314b6e.17.1759445145493;
        Thu, 02 Oct 2025 15:45:45 -0700 (PDT)
Received: by 2002:a05:6808:98f:b0:438:241d:e72f with SMTP id 5614622812f47-43fc0851d48msb6e;
        Thu, 2 Oct 2025 15:40:08 -0700 (PDT)
X-Received: by 2002:a05:6808:1456:b0:43f:4995:bb7d with SMTP id 5614622812f47-43fc17957d2mr412218b6e.7.1759444808085;
        Thu, 02 Oct 2025 15:40:08 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1759444808; cv=none;
        d=google.com; s=arc-20240605;
        b=LnrIIvYq+inUAG0I9UPh8hZjRMVTI11zYKrvB9JiBOMqwTYT+bc7mMhwgfv4gLurBw
         v4kxzJP4V+jRoSPD5zCv1bgvllzanOvRQWmqijAVCHsEXH91Lb33BgzpEbTSFNOjfQaw
         YEjisQNoIoZEWbZn9E5tMG+vFA3z29hvJidk2aHsCk7AbnQo8vI+adSvQR3BYfEyTTxh
         4EBAVo5s2lTcVPhOK5OToX9CNomyRsJpXMiOh+dreiXAlDsKCN/T+0EoNnOgiOWb50U3
         x8R5ZFYtWwMvmOR/1j9+Pdt93k8xHyjzv6C9I+NXIZ2iflmIL20Y7FLbbAm4Cd7G9Ljh
         6dFw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605;
        h=content-transfer-encoding:mime-version:feedback-id:references
         :in-reply-to:message-id:subject:cc:from:to:date:dkim-signature;
        bh=Xa+eWFdit+HdjQF6iOfgIUA6/AsxONIjkURjSfArd+U=;
        fh=nCPmCOgX3/X/Z0VPSebX/uU207EnKi06nB6FSH4r8nU=;
        b=bO1TjQs7YtmtCPNLWwRK/u2PehygsoX0qU2L8CwyitdKzZI8Am7vdzx+iiDwDZ1wez
         TEcVNni2fymKSmO1w1sZKEneZADZiOdKe0wmqf/ImCdtuBMD6LT3nxHEHNTmTxA6L7Xi
         iltk+Z5qzUuGR/9UgXKC/TMFsq4ACbmEqayayUR/061xlBpkt+X1SKjfNGFXimxG3PS9
         t36aB2IFnIIK4tV4KbnKV/TXOMbLzJuJhJiv6s5h+IxiZ92S6JswOuG/FLtypUf9H/1t
         Y9c1LHuDJix4ueZjfOPVP/TSpjIW+cdR9R5Un/su8wfSykT9gmzCqIByr7TR085pLuT1
         THBg==;
        dara=google.com
ARC-Authentication-Results: i=1; gmr-mx.google.com;
       dkim=pass header.i=@protonmail.com header.s=protonmail3 header.b=lIaJH2W0;
       spf=pass (google.com: domain of moonsettler@protonmail.com designates 109.224.244.24 as permitted sender) smtp.mailfrom=moonsettler@protonmail.com;
       dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=protonmail.com
Received: from mail-24424.protonmail.ch (mail-24424.protonmail.ch. [109.224.244.24])
        by gmr-mx.google.com with ESMTPS id 5614622812f47-43fc1887beasi22190b6e.2.2025.10.02.15.40.07
        for <bitcoindev@googlegroups.com>
        (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
        Thu, 02 Oct 2025 15:40:08 -0700 (PDT)
Received-SPF: pass (google.com: domain of moonsettler@protonmail.com designates 109.224.244.24 as permitted sender) client-ip=109.224.244.24;
Date: Thu, 02 Oct 2025 22:40:00 +0000
To: Erik Aronesty <erik@q32.com>
From: "'moonsettler' via Bitcoin Development Mailing List" <bitcoindev@googlegroups.com>
Cc: bitcoindev@googlegroups.com
Subject: Re: [bitcoindev] OP_CHECKUTXOSETHASH idea
Message-ID: <yWSgWCkIJcRS4SRwKDLGs3M3Ui-bDH-sCOUqwxXhWo8Y4RSt-UcCMKs3vd6le6l3S3j8yVt3Tqylyhq9MhgTVLpf0D5wtkCEXoJhbEyl-B0=@protonmail.com>
In-Reply-To: <CAJowKgLE4kb7qT1NxXrmEssr8+fQGd-=7=m-BAsjePoti8TRRg@mail.gmail.com>
References: <GDC-d847c0e8-4e35-40c5-87e7-2ab89e13ea09@google.com> <CAJowKgLE4kb7qT1NxXrmEssr8+fQGd-=7=m-BAsjePoti8TRRg@mail.gmail.com>
Feedback-ID: 38540639:user:proton
X-Pm-Message-ID: 1cce643ddce3f1619db9e963524602cf493ff306
MIME-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Original-Sender: moonsettler@protonmail.com
X-Original-Authentication-Results: gmr-mx.google.com;       dkim=pass
 header.i=@protonmail.com header.s=protonmail3 header.b=lIaJH2W0;
       spf=pass (google.com: domain of moonsettler@protonmail.com designates
 109.224.244.24 as permitted sender) smtp.mailfrom=moonsettler@protonmail.com;
       dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=protonmail.com
X-Original-From: moonsettler <moonsettler@protonmail.com>
Reply-To: moonsettler <moonsettler@protonmail.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: -1.0 (-)

Hi Erik,

Since it is costly for nodes to compute, this is a bit of a DOS vector. I w=
ould suggest to limit UTXO set commitments to every 2016 blocks (either the=
 first or the last block of a difficult adjustment epoch).

If it checks the UTXO set commitment of a previous block, it will not inter=
fere with mining, for example always commit to the initial state of the dif=
ficult adjustment epoch at the end of the epoch. The hash can be calculated=
 well in advance. It also would be the same in every check, so it's not pos=
sible to use it for denial of service.

It's a bit interesting that the script can not be fully validated before it=
 hits an actual block. It also allows for submitting a transaction into the=
 mempool that might be invalid to mine, that needs additional steps for evi=
ction. Wonder if this allows for weird new pinning attacks for free?

Overall I have low confidence that this belongs in script instead of the co=
inbase transaction structure via a more specific soft fork.

BR,
moonsettler

On Tuesday, September 30th, 2025 at 2:11 AM, Erik Aronesty <erik@q32.com> w=
rote:

> A soft fork could introduce a new opcode, `OP_CHECKUTXOSETHASH`, allowing=
 miners to optionally commit a deterministic hash of the current UTXO set i=
nto a block. If present, all nodes must verify its correctness or reject th=
e block; if absent, the block is still valid. Old nodes treat the opcode as=
 unspendable, so backward compatibility is preserved.
> Because computing the full UTXO root is costly, this makes each checkpoin=
t intentionally expensive to produce, ensuring that miners will only includ=
e them when compensated with sufficient fees. Additionally, it could be lim=
ited to one per block.
>=20
> The result is a voluntary, self-limiting, incentive-aligned, fee-driven s=
ystem where checkpoints are cheaply consensus-enforced when included but ne=
ver mandatory.
>=20
> Most nodes could operate on a rolling history validated by occasional, hi=
gh-value commitments, while archival nodes remain free to preserve the full=
 chain. This reduces the burden of initial sync and resource use without sa=
crificing Bitcoin=E2=80=99s security model, since any invalid checkpoint wo=
uld invalidate its block.
>=20
> In practice, the chain becomes more efficient for everyday use while the =
historical record remains intact for those willing to bear the expense of m=
aintaining it.
>=20
>=20
>=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=
 email to bitcoindev+unsubscribe@googlegroups.com.
> To view this discussion visit https://groups.google.com/d/msgid/bitcoinde=
v/CAJowKgLE4kb7qT1NxXrmEssr8%2BfQGd-%3D7%3Dm-BAsjePoti8TRRg%40mail.gmail.co=
m.

--=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/=
yWSgWCkIJcRS4SRwKDLGs3M3Ui-bDH-sCOUqwxXhWo8Y4RSt-UcCMKs3vd6le6l3S3j8yVt3Tqy=
lyhq9MhgTVLpf0D5wtkCEXoJhbEyl-B0%3D%40protonmail.com.