summaryrefslogtreecommitdiff
path: root/1a/e46dc760abff32f0a3f4ddf9d8a95a66c1091e
blob: 7798d7302089e26192555f3ce64535e15388913b (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
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
Delivery-date: Mon, 30 Dec 2024 17:05:50 -0800
Received: from mail-yb1-f190.google.com ([209.85.219.190])
	by mail.fairlystable.org with esmtps  (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
	(Exim 4.94.2)
	(envelope-from <bitcoindev+bncBC57ZSP77YIRBY4GZW5QMGQE6XT2PIQ@googlegroups.com>)
	id 1tSQhh-0002EU-QR
	for bitcoindev@gnusha.org; Mon, 30 Dec 2024 17:05:50 -0800
Received: by mail-yb1-f190.google.com with SMTP id 3f1490d57ef6-e35e0e88973sf20535641276.0
        for <bitcoindev@gnusha.org>; Mon, 30 Dec 2024 17:05:49 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=googlegroups.com; s=20230601; t=1735607143; x=1736211943; darn=gnusha.org;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:reply-to: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=5audkOedlEGtuPQ3NOeYS7C2hMxVQ5EzrOjz0pAUxgs=;
        b=Qcf6CwkYx1ggTvNvGo6a1THBgq5sDxJQwjltMZPtCc8Gv/M1I5Yik5jVzkT/8wtN5B
         QRtFP7kjJzjmTiP1Yfc85aql9M4OBEbrueBJZtu/pvIFQXpn+vTao4VvfeTM0bvme0DZ
         3ukukZf1PiIvRy2zHcaXWrRRMQazyczeUr4SZCKoqp+cg8DlncdXSWHoIQQvs90NgT9c
         rW+8EmLQdSgrp4LYxByDxnc8eaCF7tHdBv4dJtpTsOdn+rq+I+VCBcjLej5sBU736m4f
         oxmpUYyePWKgQXdMAw5Kpamb4IKU3GIcSXhtJMoKS4hQpRmpyxYTgfbeO+fQGpErKUFN
         L5Xg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20230601; t=1735607143; x=1736211943;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:reply-to:x-original-sender
         :mime-version:subject:references:in-reply-to:message-id:to:from:date
         :x-beenthere:x-gm-message-state:from:to:cc:subject:date:message-id
         :reply-to;
        bh=5audkOedlEGtuPQ3NOeYS7C2hMxVQ5EzrOjz0pAUxgs=;
        b=cA+DWtg5UruTVxwDOXWeTQ0C0LMPoUZsG6ig/B1YG8OPK3aKg1pYYy9SP6s5+lEPDI
         Don1QTK6vBVu7Ypx+/MpNGKS7ybwZvnPrgGgl/F/4XtV9o1YakoUXo8u4EXmNKWNm0SZ
         VCkImaTXtpluqS1GP5slBppAe2vFvZ9cN8u1YDidqTz775CSORqDQYdr7QE45V6pC3BH
         DDBKAXbRjgazWaRK9tp6dD1QRDtRSx8/dc13JQQvG/VcJ15BUYVM7DDKhrxHaNcpmibq
         FbVurKcbfskGMOPjDumTU/DTvDHAdK3Uh+qeGrps839ZczdG9ZN/m+2EkH7L45WjmPKa
         I4Cg==
X-Forwarded-Encrypted: i=1; AJvYcCVBI1WOB55ocdPL2dBdI59y6AQQJeSlvEKYrxrG6n1JRsindn+isRrJARzSTialhj/0HzIdzxM0Xxl3@gnusha.org
X-Gm-Message-State: AOJu0Yzic/Yq8N69mr9Ckgm5lYCkHqfDnliy4rEieYBUQnnSSVcy2HFo
	iYwSEdytcHWTU7tzi/XAkpvmcZ3UWy5OF+FqY3K2/BUZaYg2uusj
X-Google-Smtp-Source: AGHT+IFnhGCmkoAZJ++I8F2h76HCg/lUgbU1NSoyRZ6weErsySq8BQvxSeon1hD5TQ1xs5N/4DkRWQ==
X-Received: by 2002:a25:2e41:0:b0:e38:9227:bf06 with SMTP id 3f1490d57ef6-e5376537618mr29639101276.2.1735607142892;
        Mon, 30 Dec 2024 17:05:42 -0800 (PST)
X-BeenThere: bitcoindev@googlegroups.com
Received: by 2002:a25:ad4f:0:b0:e30:e1d9:fe2c with SMTP id 3f1490d57ef6-e5375fdb221ls1274494276.1.-pod-prod-03-us;
 Mon, 30 Dec 2024 17:05:39 -0800 (PST)
X-Received: by 2002:a05:690c:6911:b0:6ef:6ba2:e823 with SMTP id 00721157ae682-6f3f8115d16mr238964967b3.11.1735607139399;
        Mon, 30 Dec 2024 17:05:39 -0800 (PST)
Received: by 2002:a81:ad03:0:b0:6ef:892f:89f3 with SMTP id 00721157ae682-6f3f57ea50dms7b3;
        Mon, 30 Dec 2024 16:57:17 -0800 (PST)
X-Received: by 2002:a05:690c:c93:b0:6ef:6f24:d0bc with SMTP id 00721157ae682-6f3f820176fmr235162507b3.27.1735606636221;
        Mon, 30 Dec 2024 16:57:16 -0800 (PST)
Date: Mon, 30 Dec 2024 16:57:15 -0800 (PST)
From: "'stutxo' via Bitcoin Development Mailing List" <bitcoindev@googlegroups.com>
To: Bitcoin Development Mailing List <bitcoindev@googlegroups.com>
Message-Id: <3642acab-e6c2-4c6b-b786-fa41a84cd51en@googlegroups.com>
In-Reply-To: <fff33085-ca24-4553-9fa8-de8d60e8a9bfn@googlegroups.com>
References: <5565b149-48b7-4823-9363-89cfd70ecf09n@googlegroups.com>
 <fff33085-ca24-4553-9fa8-de8d60e8a9bfn@googlegroups.com>
Subject: [bitcoindev] Re: TRUC and P2A for CTV fee management
MIME-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_649892_782734403.1735606635960"
X-Original-Sender: stu@zebedee.io
X-Original-From: stutxo <stu@zebedee.io>
Reply-To: stutxo <stu@zebedee.io>
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 (-)

------=_Part_649892_782734403.1735606635960
Content-Type: multipart/alternative; 
	boundary="----=_Part_649893_966063723.1735606635960"

------=_Part_649893_966063723.1735606635960
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

thanks floppy disk guy,=20

i updated this example with the correct way a single 1c1p spend with no p2a=
=20
would look like

parent
https://mempool.space/signet/tx/7a3768737ae4e20a556de6f475bfc74a13a8fda2287=
dbabbf6ffe8d7f5500de2

child
https://mempool.space/signet/tx/3135e52ad30eb788d455549f4f09b55f887cdd2eb16=
60180b0e12f10af807cf5

Although im not sure how useful this one is, i guess its nice because you=
=20
can still get the parent transaction in to the mempool even with 0 fees=20

I also added an example of v3 transactions and p2a to my ctv payment pool=
=20
PoC here https://github.com/stutxo/op_ctv_payment_pool=20

On Saturday, December 21, 2024 at 4:42:08=E2=80=AFAM UTC /dev /fd0 wrote:

> Hi stu,
>
> Thanks for testing packages and P2A with CHECKTEMPLATEVERIFY on signet.=
=20
>
> This example in the README looks incorrect:
>
> > ### Bumping Fee by Deducting Fee from CTV Output
> > For some reason if you still wanted to pay the fee with just the ctv=20
> ouput you could take it from the output value
> > - [bump fee without extra input or child transaction: Parent Transactio=
n=20
> on Mempool Space](
> https://mempool.space/signet/tx/86896275fb71d4e3b84d1edeeacb90f7c4ccf77ee=
3a29e66d7effff4bb0682fb
> )
>
> /dev/fd0
> flopppy disk guy
>
> On Wednesday, December 18, 2024 at 5:57:19=E2=80=AFAM UTC+5:30 stutxo wro=
te:
>
>> Hi everyone,
>>
>> I am trying to learn more about op_ctv (or its true name,=20
>> op_securethebag). One thing I keep hearing is that estimating fees are=
=20
>> potentially an issue when spending CTV transactions.=20
>>
>> jamesob mentioned fees in his simple_ctv_valut=20
>> <https://github.com/jamesob/simple-ctv-vault>
>>
>> *Because coins may remain vaulted for long periods of time, the unvault=
=20
>> process is sensitive to changes in the fee market. Because use of OP_CTV=
=20
>> requires precommiting to a tree of all possible specific outputs and the=
=20
>> number of inputs, we cannot use RBF to dynamically adjust feerate of=20
>> unvaulting transactions.*
>> and rustyrussell on nostr also mentioned fees being a problem=20
>> <https://primal.net/e/note1ulw6tr8hrqz092wy02fcyshn3fgt309kc5w95mhl7j0sh=
j7c9zxsu8a2mw>
>> =20
>> *Optimised sponsors for solving the "but how do I add fees" problem in a=
=20
>> way that doesn't drive miner centralisation.*
>>
>> With v3 transactions available in bitcoin 28.0=20
>> <https://bitcoinops.org/en/bitcoin-core-28-wallet-integration-guide/>the=
re=20
>> are a bunch of new techniques that have been enabled that we can use to=
=20
>> hopefully solve these issues
>>
>> As long as you have an output for 240 sats paying to a P2A address, such=
=20
>> as tb1pfees9rn5nz on signet, you or anyone else will be able to bump the=
=20
>> fees using CPFP on the anchor output.=20
>>
>> I have some examples of these transactions here on signet
>>
>> CTV spend transaction with zero fees:
>>
>> https://mempool.space/signet/tx/32f4f4e6165e7f8df9b9a762e11a6ca7f1608771=
3e0e3e42352021e6bf3800e3
>>
>> P2A CPFP transaction:
>>
>> https://mempool.space/signet/tx/9a3582f03b0ac39cff8ed024cf8f38e4fc4a1ee2=
ff216badf041bf4572c0d03b
>>
>> Code used is here:
>> https://github.com/stutxo/simple_ctv
>>
>> Is there anything I am missing here? What are the downsides of this=20
>> method? Is this how most ctv scripts spends would work?
>>
>> Thanks!
>> stu
>>
>

--=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/=
3642acab-e6c2-4c6b-b786-fa41a84cd51en%40googlegroups.com.

------=_Part_649893_966063723.1735606635960
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

thanks floppy disk guy,=C2=A0<br /><br />i updated this example with the co=
rrect way a single 1c1p spend with no p2a would look like<br /><br />parent=
<br />https://mempool.space/signet/tx/7a3768737ae4e20a556de6f475bfc74a13a8f=
da2287dbabbf6ffe8d7f5500de2<br /><br />child<br />https://mempool.space/sig=
net/tx/3135e52ad30eb788d455549f4f09b55f887cdd2eb1660180b0e12f10af807cf5<br =
/><br />Although im not sure how useful this one is, i guess its nice becau=
se you can still get the parent transaction in to the mempool even with 0 f=
ees=C2=A0<br /><br />I also added an example of v3 transactions and p2a to =
my ctv payment pool PoC here=C2=A0https://github.com/stutxo/op_ctv_payment_=
pool=C2=A0<br /><br /><div class=3D"gmail_quote"><div dir=3D"auto" class=3D=
"gmail_attr">On Saturday, December 21, 2024 at 4:42:08=E2=80=AFAM UTC /dev =
/fd0 wrote:<br/></div><blockquote class=3D"gmail_quote" style=3D"margin: 0 =
0 0 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">H=
i stu,<div><br></div><div>Thanks for testing packages and P2A with CHECKTEM=
PLATEVERIFY on signet.=C2=A0<br><br>This example in the README looks incorr=
ect:</div><div><br>&gt; ### Bumping Fee by Deducting Fee from CTV Output<br=
>&gt; For some reason if you still wanted to pay the fee with just the ctv =
ouput you could take it from the output value<br>&gt; - [bump fee without e=
xtra input or child transaction: Parent Transaction on Mempool Space](<a hr=
ef=3D"https://mempool.space/signet/tx/86896275fb71d4e3b84d1edeeacb90f7c4ccf=
77ee3a29e66d7effff4bb0682fb" target=3D"_blank" rel=3D"nofollow" data-safere=
directurl=3D"https://www.google.com/url?hl=3Den&amp;q=3Dhttps://mempool.spa=
ce/signet/tx/86896275fb71d4e3b84d1edeeacb90f7c4ccf77ee3a29e66d7effff4bb0682=
fb&amp;source=3Dgmail&amp;ust=3D1735692325807000&amp;usg=3DAOvVaw3kyDDw7pNP=
5IMoGXvWjlwg">https://mempool.space/signet/tx/86896275fb71d4e3b84d1edeeacb9=
0f7c4ccf77ee3a29e66d7effff4bb0682fb</a>)<br><br>/dev/fd0</div><div>flopppy =
disk guy</div><div><br></div><div class=3D"gmail_quote"><div dir=3D"auto" c=
lass=3D"gmail_attr">On Wednesday, December 18, 2024 at 5:57:19=E2=80=AFAM U=
TC+5:30 stutxo wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"m=
argin:0 0 0 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">=
Hi everyone,<div><br>I am trying to learn more about op_ctv (or its true na=
me, op_securethebag). One thing I keep hearing is that estimating fees are =
potentially an issue when spending CTV transactions.=C2=A0<br><i><br></i>ja=
mesob=C2=A0mentioned fees in his <a href=3D"https://github.com/jamesob/simp=
le-ctv-vault" rel=3D"nofollow" target=3D"_blank" data-saferedirecturl=3D"ht=
tps://www.google.com/url?hl=3Den&amp;q=3Dhttps://github.com/jamesob/simple-=
ctv-vault&amp;source=3Dgmail&amp;ust=3D1735692325807000&amp;usg=3DAOvVaw1Ql=
CiZSqYBbRjRN4MSUBP9">simple_ctv_valut</a><i><br>Because coins may remain va=
ulted for long periods of time, the unvault process is sensitive to changes=
 in the fee market. Because use of OP_CTV requires precommiting to a tree o=
f all possible specific outputs and the number of inputs, we cannot use RBF=
 to dynamically adjust feerate of unvaulting transactions.<br></i><br>and r=
ustyrussell on nostr also mentioned fees being a <a href=3D"https://primal.=
net/e/note1ulw6tr8hrqz092wy02fcyshn3fgt309kc5w95mhl7j0shj7c9zxsu8a2mw" rel=
=3D"nofollow" target=3D"_blank" data-saferedirecturl=3D"https://www.google.=
com/url?hl=3Den&amp;q=3Dhttps://primal.net/e/note1ulw6tr8hrqz092wy02fcyshn3=
fgt309kc5w95mhl7j0shj7c9zxsu8a2mw&amp;source=3Dgmail&amp;ust=3D173569232580=
7000&amp;usg=3DAOvVaw3Gl5mZv75c6b5mXyR0mgZn">problem</a>=C2=A0<br><i>Optimi=
sed sponsors for solving the &quot;but how do I add fees&quot; problem in a=
 way that doesn&#39;t drive miner centralisation.</i><br><br>With <a href=
=3D"https://bitcoinops.org/en/bitcoin-core-28-wallet-integration-guide/" re=
l=3D"nofollow" target=3D"_blank" data-saferedirecturl=3D"https://www.google=
.com/url?hl=3Den&amp;q=3Dhttps://bitcoinops.org/en/bitcoin-core-28-wallet-i=
ntegration-guide/&amp;source=3Dgmail&amp;ust=3D1735692325807000&amp;usg=3DA=
OvVaw1usvyDxG34aTsQVYSmPn5L">v3 transactions available in bitcoin 28.0 </a>=
there are a bunch of new techniques that have been enabled that we can use =
to hopefully solve these issues</div><div><br>As long as you have an output=
 for 240 sats paying to a P2A address, such as tb1pfees9rn5nz on signet, yo=
u or anyone else will be able to bump the fees using CPFP on the anchor out=
put.=C2=A0</div><div><br>I have some examples of these transactions here on=
 signet</div><div><div><br>CTV spend transaction with zero fees:<br><a href=
=3D"https://mempool.space/signet/tx/32f4f4e6165e7f8df9b9a762e11a6ca7f160877=
13e0e3e42352021e6bf3800e3" rel=3D"nofollow" target=3D"_blank" data-saferedi=
recturl=3D"https://www.google.com/url?hl=3Den&amp;q=3Dhttps://mempool.space=
/signet/tx/32f4f4e6165e7f8df9b9a762e11a6ca7f16087713e0e3e42352021e6bf3800e3=
&amp;source=3Dgmail&amp;ust=3D1735692325807000&amp;usg=3DAOvVaw22yvDwIoMIDC=
INpn4F0037">https://mempool.space/signet/tx/32f4f4e6165e7f8df9b9a762e11a6ca=
7f16087713e0e3e42352021e6bf3800e3</a></div><div><br>P2A CPFP transaction:<b=
r><a href=3D"https://mempool.space/signet/tx/9a3582f03b0ac39cff8ed024cf8f38=
e4fc4a1ee2ff216badf041bf4572c0d03b" rel=3D"nofollow" target=3D"_blank" data=
-saferedirecturl=3D"https://www.google.com/url?hl=3Den&amp;q=3Dhttps://memp=
ool.space/signet/tx/9a3582f03b0ac39cff8ed024cf8f38e4fc4a1ee2ff216badf041bf4=
572c0d03b&amp;source=3Dgmail&amp;ust=3D1735692325807000&amp;usg=3DAOvVaw04M=
79vu54oGUOTXqHbo8tk">https://mempool.space/signet/tx/9a3582f03b0ac39cff8ed0=
24cf8f38e4fc4a1ee2ff216badf041bf4572c0d03b</a></div><div><br></div><div>Cod=
e used is here:<br><a href=3D"https://github.com/stutxo/simple_ctv" rel=3D"=
nofollow" target=3D"_blank" data-saferedirecturl=3D"https://www.google.com/=
url?hl=3Den&amp;q=3Dhttps://github.com/stutxo/simple_ctv&amp;source=3Dgmail=
&amp;ust=3D1735692325807000&amp;usg=3DAOvVaw2RNf2UE_8N0NPD8mbmWCZA">https:/=
/github.com/stutxo/simple_ctv</a></div><br>Is there anything I am missing h=
ere? What are the downsides of this method? Is this how most ctv scripts sp=
ends would work?</div><div><br>Thanks!<br>stu</div></blockquote></div></blo=
ckquote></div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;Bitcoin Development Mailing List&quot; 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/3642acab-e6c2-4c6b-b786-fa41a84cd51en%40googlegroups.com?utm_med=
ium=3Demail&utm_source=3Dfooter">https://groups.google.com/d/msgid/bitcoind=
ev/3642acab-e6c2-4c6b-b786-fa41a84cd51en%40googlegroups.com</a>.<br />

------=_Part_649893_966063723.1735606635960--

------=_Part_649892_782734403.1735606635960--