Return-Path: Received: from smtp2.osuosl.org (smtp2.osuosl.org [IPv6:2605:bc80:3010::133]) by lists.linuxfoundation.org (Postfix) with ESMTP id 2556FC002D for ; 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 ; 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 ; 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 ; Mon, 25 Apr 2022 16:57:59 +0000 (UTC) Received: by mail-il1-x131.google.com with SMTP id e1so9761798ile.2 for ; 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: In-Reply-To: From: Nadav Ivgi Date: Mon, 25 Apr 2022 19:57:48 +0300 Message-ID: To: darosior , Bitcoin Protocol Discussion 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-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
darosior vi= a 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 excha= nge and store pre-signed transactions instead?

What purpo= se 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:


On Fri, Apr 2= 2, 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 ve= rsion of) BIP118 in place of
(or before doing) BIP119.

SIGHASH_ANYPREVOUT and its precedent iterations have been discussed for ove= r 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 m= ade 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 no= r sufficient for this (but still
useful!), using APO-AS covers it. And it's not a couple dozen more virt= ual 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 stat= ed usecases are proven wrong by onchain
usage of a less efficient construction to achieve the same goal, we could r= oll-out CTV as an optimization.=C2=A0 In
the meantime others will have been able to deploy new applications leveragi= ng ANYPREVOUT (Eltoo, blind
statechains, etc..[1]).


Given the interest in, and demand for, both simple covenants and better off= chain protocols it seems to me that
BIP118 is a soft fork candidate that could benefit more (if not most of) Bi= tcoin users.
Actually i'd also be interested in knowing if people would oppose the A= PO-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 h= ttps://github.com/bitcoin/bips/blob/master/bip-0118.mediawiki#signature-mes= sage.

[1] https://anyprevout.xyz/ "Use Cases" section
_______________________________________________
bitcoin-dev mailing list
= bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mail= man/listinfo/bitcoin-dev
--00000000000079f7f205dd7d7a01--