summaryrefslogtreecommitdiff
path: root/6d/f092d788cc6a972a87ca6636e0484eac9e70f3
blob: 34cfd6198af19f0acba3e1a1457d9a0bca88564c (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
Return-Path: <nadav@shesek.info>
Received: from smtp2.osuosl.org (smtp2.osuosl.org [IPv6:2605:bc80:3010::133])
 by lists.linuxfoundation.org (Postfix) with ESMTP id 2556FC002D
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 25 Apr 2022 16:58:01 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by smtp2.osuosl.org (Postfix) with ESMTP id 11E1A40217
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 25 Apr 2022 16:58:01 +0000 (UTC)
X-Virus-Scanned: amavisd-new at osuosl.org
X-Spam-Flag: NO
X-Spam-Score: 0.278
X-Spam-Level: 
X-Spam-Status: No, score=0.278 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1,
 HTML_MESSAGE=0.001, PDS_OTHER_BAD_TLD=1.975,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=0.001]
 autolearn=no autolearn_force=no
Authentication-Results: smtp2.osuosl.org (amavisd-new); dkim=neutral
 reason="invalid (public key: not available)" header.d=shesek.info
Received: from smtp2.osuosl.org ([127.0.0.1])
 by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id prfmpiTVQAVl
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 25 Apr 2022 16:58:00 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.8.0
Received: from mail-il1-x131.google.com (mail-il1-x131.google.com
 [IPv6:2607:f8b0:4864:20::131])
 by smtp2.osuosl.org (Postfix) with ESMTPS id 066744017A
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 25 Apr 2022 16:57:59 +0000 (UTC)
Received: by mail-il1-x131.google.com with SMTP id e1so9761798ile.2
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 25 Apr 2022 09:57:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=shesek.info; s=shesek;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to;
 bh=BsZD/jlDaKRHUKCVkEHta9vDTx5uS9moKOA28YadGSo=;
 b=pHfn6SjZodqe1rm8GKe+jCp6JCHo18b+LsV8HdkdxxH+lF9PQOBTpDPsTQD0Cx1pHY
 H4lrM4LuHBi+IoZVbjqhTex7AAo2ZedJJqcLeTHUssED+o41KZDc1Sa6k5TZEVgjsDja
 4zmPMnq5T1rDM6+Aqn8Xv5LHNNOaZeo3t6R24=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to;
 bh=BsZD/jlDaKRHUKCVkEHta9vDTx5uS9moKOA28YadGSo=;
 b=dtiQTYzcyMZ11xMSvSlOTum4utCy6ZkHdxUyfmWu4Wl3AlSvhr80obb7Lkqe9gUzht
 fiKR+L6/1ue6vrKnQ98zq23rcPI7mBLo7edRYEYa0qr8Jww1A73Raq1PS9SNsAeFvjCD
 XiCpgNg8Uu+btPPe1gOqqCMRcpUNNvJAjrYuXcYYhhDXekytjUSUh39v7UVpSh9pQpSh
 X12AYSsVd7STGA75ONLCVzNA20PrnngHriwC8BY2HOjtlqzCdDPJvzgShFErfryavjxe
 6dLoCUTy3nrUAhh8O/S/kYTq7rQxg4B4hMi8w2ajOs8gq7E4xNT+IBRN03UJnHYn7atf
 +nOg==
X-Gm-Message-State: AOAM530gogAMPIbfj/QbHuaNFZqw9N8mOUyjHxCRRR+EMuLwu/2UtQ3H
 /58bgLdwYkx5+YAfnrL0nX5DH9QWxkMMH/IJ/e7LiWHvCQMSaL1V
X-Google-Smtp-Source: ABdhPJxP/myTMBOKrEd8d7ouUeSoX3fX+DiHRq8HquuqKK2pv8BaIkzhEkObpNESlH3wFTQM1lbdZ1T59eRC3epixWk=
X-Received: by 2002:a92:b305:0:b0:2c8:267b:7e25 with SMTP id
 p5-20020a92b305000000b002c8267b7e25mr7567929ilh.312.1650905879011; Mon, 25
 Apr 2022 09:57:59 -0700 (PDT)
MIME-Version: 1.0
References: <p3P0m2_aNXd-4oYhFjCKJyI8zQXahmZed6bv7lnj9M9HbP9gMqMtJr-pP7XRAPs-rn_fJuGu1cv9ero5i8f0cvyZrMXYPzPx17CxJ2ZSvRk=@protonmail.com>
In-Reply-To: <p3P0m2_aNXd-4oYhFjCKJyI8zQXahmZed6bv7lnj9M9HbP9gMqMtJr-pP7XRAPs-rn_fJuGu1cv9ero5i8f0cvyZrMXYPzPx17CxJ2ZSvRk=@protonmail.com>
From: Nadav Ivgi <nadav@shesek.info>
Date: Mon, 25 Apr 2022 19:57:48 +0300
Message-ID: <CAGXD5f3VrYQTXHoWEoj6bFsXKZ6C_FHXm8_FNuJZUm_yKpKfcg@mail.gmail.com>
To: darosior <darosior@protonmail.com>, 
 Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
Content-Type: multipart/alternative; boundary="00000000000079f7f205dd7d7a01"
X-Mailman-Approved-At: Mon, 25 Apr 2022 16:59:24 +0000
Subject: Re: [bitcoin-dev] ANYPREVOUT in place of CTV
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.15
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: Mon, 25 Apr 2022 16:58:01 -0000

--00000000000079f7f205dd7d7a01
Content-Type: text/plain; charset="UTF-8"

darosior via bitcoin-dev wrote:
> i doubt CTV is necessary nor sufficient for this

I would be interested to hear more on this.

Is it not necessary because you can exchange and store pre-signed
transactions instead?

What purpose is it not sufficient for? There are some vault designs out
there that are able to achieve interesting properties with CTV, like James
O'Beirne's simple-ctv-vault:

https://github.com/jamesob/simple-ctv-vault
(the basic design expressed in Minsc:
https://min.sc/nextc/#gist=001cf1fcb0e24ca9f3614c4db9bfe57d:4)

On Fri, Apr 22, 2022 at 2:23 PM darosior via bitcoin-dev <
bitcoin-dev@lists.linuxfoundation.org> wrote:

> I would like to know people's sentiment about doing (a very slightly
> tweaked version of) BIP118 in place of
> (or before doing) BIP119.
>
> SIGHASH_ANYPREVOUT and its precedent iterations have been discussed for
> over 6 years. It presents proven and
> implemented usecases, that are demanded and (please someone correct me if
> i'm wrong) more widely accepted than
> CTV's.
>
> SIGHASH_ANYPREVOUTANYSCRIPT, if its "ANYONECANPAY" behaviour is made
> optional [0], can emulate CTV just fine.
> Sure then you can't have bare or Segwit v0 CTV, and it's a bit more
> expensive to use. But we can consider CTV
> an optimization of APO-AS covenants.
>
> CTV advocates have been presenting vaults as the flagship usecase.
> Although as someone who've been trying to
> implement practical vaults for the past 2 years i doubt CTV is necessary
> nor sufficient for this (but still
> useful!), using APO-AS covers it. And it's not a couple dozen more virtual
> bytes that are going to matter for
> a potential vault user.
>
> If after some time all of us who are currently dubious about CTV's stated
> usecases are proven wrong by onchain
> usage of a less efficient construction to achieve the same goal, we could
> roll-out CTV as an optimization.  In
> the meantime others will have been able to deploy new applications
> leveraging ANYPREVOUT (Eltoo, blind
> statechains, etc..[1]).
>
>
> Given the interest in, and demand for, both simple covenants and better
> offchain protocols it seems to me that
> BIP118 is a soft fork candidate that could benefit more (if not most of)
> Bitcoin users.
> Actually i'd also be interested in knowing if people would oppose the
> APO-AS part of BIP118, since it enables
> CTV's features, for the same reason they'd oppose BIP119.
>
>
> [0] That is, to not commit to the other inputs of the transaction (via
> `sha_sequences` and maybe also
> `sha_amounts`). Cf
> https://github.com/bitcoin/bips/blob/master/bip-0118.mediawiki#signature-message
> .
>
> [1] https://anyprevout.xyz/ "Use Cases" section
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
>

--00000000000079f7f205dd7d7a01
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><span class=3D"gmail-im"><div dir=3D"ltr">darosior vi=
a bitcoin-dev wrote:</div></span>&gt; <span class=3D"gmail-im">i doubt CTV =
is necessary nor sufficient for this</span></div><div><span class=3D"gmail-=
im"><br></span></div><div><span class=3D"gmail-im">I would be interested to=
 hear more on this.</span></div><div><span class=3D"gmail-im"><br></span></=
div><div><span class=3D"gmail-im">Is it not necessary because you can excha=
nge and store pre-signed transactions instead?<br></span></div><div><span c=
lass=3D"gmail-im"><br></span></div><div><span class=3D"gmail-im">What purpo=
se is it not <span class=3D"gmail-im">sufficient for? There are some vault =
designs out there that are able to achieve interesting properties with CTV,=
 like James O&#39;Beirne&#39;s simple-ctv-vault:<br></span></span></div><di=
v><span class=3D"gmail-im"><span class=3D"gmail-im"><br></span></span></div=
><div><span class=3D"gmail-im"><span class=3D"gmail-im"><a href=3D"https://=
github.com/jamesob/simple-ctv-vault">https://github.com/jamesob/simple-ctv-=
vault</a></span></span></div><div><span class=3D"gmail-im"><span class=3D"g=
mail-im">(the basic design expressed in Minsc: <a href=3D"https://min.sc/ne=
xtc/#gist=3D001cf1fcb0e24ca9f3614c4db9bfe57d:4">https://min.sc/nextc/#gist=
=3D001cf1fcb0e24ca9f3614c4db9bfe57d:4</a>)</span></span></div></div><br><di=
v class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Fri, Apr 2=
2, 2022 at 2:23 PM darosior via bitcoin-dev &lt;<a href=3D"mailto:bitcoin-d=
ev@lists.linuxfoundation.org">bitcoin-dev@lists.linuxfoundation.org</a>&gt;=
 wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px =
0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I would =
like to know people&#39;s sentiment about doing (a very slightly tweaked ve=
rsion of) BIP118 in place of<br>
(or before doing) BIP119.<br>
<br>
SIGHASH_ANYPREVOUT and its precedent iterations have been discussed for ove=
r 6 years. It presents proven and<br>
implemented usecases, that are demanded and (please someone correct me if i=
&#39;m wrong) more widely accepted than<br>
CTV&#39;s.<br>
<br>
SIGHASH_ANYPREVOUTANYSCRIPT, if its &quot;ANYONECANPAY&quot; behaviour is m=
ade optional [0], can emulate CTV just fine.<br>
Sure then you can&#39;t have bare or Segwit v0 CTV, and it&#39;s a bit more=
 expensive to use. But we can consider CTV<br>
an optimization of APO-AS covenants.<br>
<br>
CTV advocates have been presenting vaults as the flagship usecase. Although=
 as someone who&#39;ve been trying to<br>
implement practical vaults for the past 2 years i doubt CTV is necessary no=
r sufficient for this (but still<br>
useful!), using APO-AS covers it. And it&#39;s not a couple dozen more virt=
ual bytes that are going to matter for<br>
a potential vault user.<br>
<br>
If after some time all of us who are currently dubious about CTV&#39;s stat=
ed usecases are proven wrong by onchain<br>
usage of a less efficient construction to achieve the same goal, we could r=
oll-out CTV as an optimization.=C2=A0 In<br>
the meantime others will have been able to deploy new applications leveragi=
ng ANYPREVOUT (Eltoo, blind<br>
statechains, etc..[1]).<br>
<br>
<br>
Given the interest in, and demand for, both simple covenants and better off=
chain protocols it seems to me that<br>
BIP118 is a soft fork candidate that could benefit more (if not most of) Bi=
tcoin users.<br>
Actually i&#39;d also be interested in knowing if people would oppose the A=
PO-AS part of BIP118, since it enables<br>
CTV&#39;s features, for the same reason they&#39;d oppose BIP119.<br>
<br>
<br>
[0] That is, to not commit to the other inputs of the transaction (via `sha=
_sequences` and maybe also<br>
`sha_amounts`). Cf <a href=3D"https://github.com/bitcoin/bips/blob/master/b=
ip-0118.mediawiki#signature-message" rel=3D"noreferrer" target=3D"_blank">h=
ttps://github.com/bitcoin/bips/blob/master/bip-0118.mediawiki#signature-mes=
sage</a>.<br>
<br>
[1] <a href=3D"https://anyprevout.xyz/" rel=3D"noreferrer" target=3D"_blank=
">https://anyprevout.xyz/</a> &quot;Use Cases&quot; section<br>
_______________________________________________<br>
bitcoin-dev mailing list<br>
<a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org" target=3D"_blank">=
bitcoin-dev@lists.linuxfoundation.org</a><br>
<a href=3D"https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev" =
rel=3D"noreferrer" target=3D"_blank">https://lists.linuxfoundation.org/mail=
man/listinfo/bitcoin-dev</a><br>
</blockquote></div>

--00000000000079f7f205dd7d7a01--