Return-Path: Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by lists.linuxfoundation.org (Postfix) with ESMTP id 4F41AC0032 for ; Mon, 13 Mar 2023 14:55:20 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 29630400DD for ; Mon, 13 Mar 2023 14:55:20 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 29630400DD Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20210112 header.b=TnJuQclo X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -1.848 X-Spam-Level: X-Spam-Status: No, score=-1.848 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no 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 A_h7DTuOKmcx for ; Mon, 13 Mar 2023 14:55:19 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.8.0 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org D6825408DD Received: from mail-ed1-x52d.google.com (mail-ed1-x52d.google.com [IPv6:2a00:1450:4864:20::52d]) by smtp2.osuosl.org (Postfix) with ESMTPS id D6825408DD for ; Mon, 13 Mar 2023 14:55:18 +0000 (UTC) Received: by mail-ed1-x52d.google.com with SMTP id h8so6059595ede.8 for ; Mon, 13 Mar 2023 07:55:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1678719317; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=K0L8AhI21nwzW6ZEwh/smDr3Gah94fAucrA9tw314KU=; b=TnJuQclosd/I38DB3Z0U0l0/gQTFnGioN/9h44PnE1eBuXdFvNaNNbo/cJJb5m5cH8 A1erTu0zuVtwA/NTpZH8jkumGeeUEFms/r+8/mRYJMTL8hnxaFVBllaVaPKXwG3E41xd nsrGbvlI6/Lk0S6mV8Q1hHVPlXg8dnj62hIhyXhvQg9BJK49y/jBVqcvSzYiGDK4DYDi h2Udd8+rNyZ59SREFrtA+bbIkRRXXNTipPQ9djT9pacD1xHsL8hVjMGvC9Zp7cHouUa+ WDY/6J7tN/QGxJY0/AxMmVm8wCDVVpE9iZL7WPOdP6sS9bjWM9zYkqzcHZ4DbQIxqd7H o/gQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678719317; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=K0L8AhI21nwzW6ZEwh/smDr3Gah94fAucrA9tw314KU=; b=lS0z7grARTs8u3MGLdwUsCKvonaw9n0LFQAe5Kh4QWXlfemWoCQ50KKEC6J74f69he wk07yMtXtNfNsXNmV/qtrycQFo+Heml+MrO5SWGRMO5WSpFMlQBEkMVq7edex3SJ9Kn4 bclQdHuzRmliJJNi/C9e49TFWeJFhmW8GnD+A8sE+wRQ41tLt76J4x2UNY2CtUG8C4RN ROhmb30owgNfHdzpewGWz3LqrVz79avXJx2+AhstNiCUCBeQ/h2AjzEWcf5hDAp94pOp 7aXlyU97T5dfj63Bgur5V6l+0CD9HE4cjR7lTSt1CYX/CvHX6nCXyq+8lGn9L9sbJ6ds xD1g== X-Gm-Message-State: AO0yUKXmhcBHkKXDpI5c2znbV0s+aU0hxcN6GCDnNNtdr/zhjl1q8lTr LGYw5fCppAxR5U05nCAUTfujjJgXweRSxBmkR3Y= X-Google-Smtp-Source: AK7set8uPovTCqczoTU/6uv1P6rFBBK251oDVgK9+/s4erGXrtjWHgHfO9/BVHv0bKxsT6oOXQoWWgeZbtMr5PKNzWc= X-Received: by 2002:a17:906:13c2:b0:8b1:7aec:c8e6 with SMTP id g2-20020a17090613c200b008b17aecc8e6mr18163454ejc.2.1678719316693; Mon, 13 Mar 2023 07:55:16 -0700 (PDT) MIME-Version: 1.0 References: <4652dbe8-6647-20f2-358e-be0ef2e52c47@dashjr.org> In-Reply-To: <4652dbe8-6647-20f2-358e-be0ef2e52c47@dashjr.org> From: Greg Sanders Date: Mon, 13 Mar 2023 10:55:05 -0400 Message-ID: To: Luke Dashjr , Bitcoin Protocol Discussion Content-Type: multipart/alternative; boundary="0000000000008c95ed05f6c94c59" Subject: Re: [bitcoin-dev] BIP for OP_VAULT 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, 13 Mar 2023 14:55:20 -0000 --0000000000008c95ed05f6c94c59 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Luke, Can you elaborate why the current idealized functionality of deposit -> trigger -> withdrawal is too complicated for everyday use but the above deposit -> withdrawal -> resolve(claim/clawback) wouldn't be? I admit at a high level it's a fine paradigm, but in practice would end Let's ignore implementation for the discussion, since that's in flux. Cheers, Greg On Sat, Mar 11, 2023 at 3:53=E2=80=AFPM Luke Dashjr via bitcoin-dev < bitcoin-dev@lists.linuxfoundation.org> wrote: > I started reviewing the BIP, but stopped part way through, as it seems > to have a number of conceptual issues. > > I left several comments on the PR > (https://github.com/bitcoin/bips/pull/1421#pullrequestreview-1335925575), > but ultimately I think it isn't simplified enough for day-to-day use, > and would harm privacy quite a bit. > > Instead, I would suggest a new approach where: > > 1) Joe receives funds with a taproot output like normal. > 2) Joe sends funds to Fred, but Fred cannot spend them until N blocks > later (covenant-enforced relative locktime). Ideally, this should > use/support a taproot keypath spend somehow. It would be nice to blind > the particular relative locktime somehow too, but that may be too > expensive. > 2b) If Joe's funds were stolen, Joe can spend Fred's UTXO within the N > block window to a recovery output. > > Unfortunately, the implementation details for this kind of setup are > non-obvious and will likely require yet another address format (or at > least recipient-wallet changes), but certainly seems within the scope of > possibility. > > Thoughts? > > Luke > > > On 2/13/23 16:09, James O'Beirne via bitcoin-dev wrote: > > Since the last related correspondence on this list [0], a number of > > improvements have been made to the OP_VAULT draft [1]: > > > > * There is no longer a hard dependence on package relay/ephemeral > > anchors for fee management. When using "authorized recovery," all > > vault-related transactions can be bundled with unrelated inputs and > > outputs, facilitating fee management that is self contained to the > > transaction. Consequently, the contents of this proposal are in theor= y > > usable today. > > > > * Specific output locations are no longer hardcoded in any of the > > transaction validation algorithms. This means that the proposal is no= w > > compatible with future changes like SIGHASH_GROUP, and > > transaction shapes for vault operations are more flexible. > > > > --- > > > > I've written a BIP that fully describes the proposal here: > > > > > https://github.com/jamesob/bips/blob/jamesob-23-02-opvault/bip-vaults.med= iawiki > > > > The corresponding PR is here: > > > > https://github.com/bitcoin/bips/pull/1421 > > > > My next steps will be to try for a merge to the inquisition repo. > > > > Thanks to everyone who has participated so far, but especially to AJ an= d > > Greg for all the advice. > > > > James > > > > [0]: > > > https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-January/0213= 18.html > > [1]: https://github.com/bitcoin/bitcoin/pull/26857 > > > > _______________________________________________ > > bitcoin-dev mailing list > > bitcoin-dev@lists.linuxfoundation.org > > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev > _______________________________________________ > bitcoin-dev mailing list > bitcoin-dev@lists.linuxfoundation.org > https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev > --0000000000008c95ed05f6c94c59 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Luke,

Can you elaborate why th= e current idealized functionality of deposit=C2=A0-> trigger -> withd= rawal is too complicated for
everyday use but the above deposit -> w= ithdrawal -> resolve(claim/clawback)=C2=A0 wouldn't be? I admit at a= high level
it's a fine paradigm, but in practice would end= =C2=A0

Let's ignore implementation for the dis= cussion, since that's in flux.

Cheers,
Greg

On Sat, Mar 11, 2023 at 3:53=E2=80=AFPM Luke Dashjr via bitcoi= n-dev <bitcoin-= dev@lists.linuxfoundation.org> wrote:
I started reviewing the BIP, but stopped part = way through, as it seems
to have a number of conceptual issues.

I left several comments on the PR
(https://github.com/bitcoin/bi= ps/pull/1421#pullrequestreview-1335925575),
but ultimately I think it isn't simplified enough for day-to-day use, <= br> and would harm privacy quite a bit.

Instead, I would suggest a new approach where:

1) Joe receives funds with a taproot output like normal.
2) Joe sends funds to Fred, but Fred cannot spend them until N blocks
later (covenant-enforced relative locktime). Ideally, this should
use/support a taproot keypath spend somehow. It would be nice to blind
the particular relative locktime somehow too, but that may be too expensive= .
2b) If Joe's funds were stolen, Joe can spend Fred's UTXO within th= e N
block window to a recovery output.

Unfortunately, the implementation details for this kind of setup are
non-obvious and will likely require yet another address format (or at
least recipient-wallet changes), but certainly seems within the scope of possibility.

Thoughts?

Luke


On 2/13/23 16:09, James O'Beirne via bitcoin-dev wrote:
> Since the last related correspondence on this list [0], a number of > improvements have been made to the OP_VAULT draft [1]:
>
> * There is no longer a hard dependence on package relay/ephemeral
> =C2=A0 anchors for fee management. When using "authorized recover= y," all
> =C2=A0 vault-related transactions can be bundled with unrelated inputs= and
> =C2=A0 outputs, facilitating fee management that is self contained to = the
> =C2=A0 transaction. Consequently, the contents of this proposal are in= theory
> =C2=A0 usable today.
>
> * Specific output locations are no longer hardcoded in any of the
> =C2=A0 transaction validation algorithms. This means that the proposal= is now
> =C2=A0 compatible with future changes like SIGHASH_GROUP, and
> =C2=A0 transaction shapes for vault operations are more flexible.
>
> ---
>
> I've written a BIP that fully describes the proposal here:
>
> https://github.c= om/jamesob/bips/blob/jamesob-23-02-opvault/bip-vaults.mediawiki
>
> The corresponding PR is here:
>
> https://github.com/bitcoin/bips/pull/1421
>
> My next steps will be to try for a merge to the inquisition repo.
>
> Thanks to everyone who has participated so far, but especially to AJ a= nd
> Greg for all the advice.
>
> James
>
> [0]:
> https://lists.l= inuxfoundation.org/pipermail/bitcoin-dev/2023-January/021318.html
> [1]: https://github.com/bitcoin/bitcoin/pull/26857=
>
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists.linuxfoundation.org
> https://lists.linuxfoundation.org= /mailman/listinfo/bitcoin-dev
_______________________________________________
bitcoin-dev mailing list
= bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mail= man/listinfo/bitcoin-dev
--0000000000008c95ed05f6c94c59--