Return-Path: <gsanders87@gmail.com>
Received: from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137])
 by lists.linuxfoundation.org (Postfix) with ESMTP id 591D1C0012
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Wed, 24 Nov 2021 16:00:55 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by smtp4.osuosl.org (Postfix) with ESMTP id 3AD51403CD
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Wed, 24 Nov 2021 16:00:55 +0000 (UTC)
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
Authentication-Results: smtp4.osuosl.org (amavisd-new);
 dkim=pass (2048-bit key) header.d=gmail.com
Received: from smtp4.osuosl.org ([127.0.0.1])
 by localhost (smtp4.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id S4V-IzUl3IRl
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Wed, 24 Nov 2021 16:00:54 +0000 (UTC)
X-Greylist: whitelisted by SQLgrey-1.8.0
Received: from mail-yb1-xb2a.google.com (mail-yb1-xb2a.google.com
 [IPv6:2607:f8b0:4864:20::b2a])
 by smtp4.osuosl.org (Postfix) with ESMTPS id 365A6403C2
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Wed, 24 Nov 2021 16:00:54 +0000 (UTC)
Received: by mail-yb1-xb2a.google.com with SMTP id f9so8597615ybq.10
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Wed, 24 Nov 2021 08:00:54 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=l3xd5l/lKjsPF+YCXdpEMKbRDxTSduOcHeWtjCJsN6s=;
 b=kqezx0cOn2m9dzZmTyPlCHODmTvCiQ43gV5qUVXLQmuUMSk8494HH4o3CU+zCnAxhq
 QqBktbmX9jGBSvn+RctvSY7SpSlYNmvwc1Rydbzp+0XsSs6Zoy9cYnnxlt+du2xzDvER
 rWRNkEFzkBZ7TjCRvcNR2uyLlQpZHAcucXUf+bawIeW2Dkv7ucC6C6kVy9JH8Uf6VRUQ
 nYqG9tcv+h5FeNMrZSvgLa9WE7DCwRfXefTPRGS0LvQXXVe6PYP9/9e0Y3cNJgyg/dZJ
 qpBzjLZs787/n68chhcDBIugjTKG2/VZDvnl99vnjotCjKJ4VDH3lry3B7bPpYPXbEJp
 Kn3w==
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:cc;
 bh=l3xd5l/lKjsPF+YCXdpEMKbRDxTSduOcHeWtjCJsN6s=;
 b=jN2/g2J0nBMV054T7P6g0FcM6k5Kkv9MVSUVKr0Z6LmCGAra4rb8OM1eIDInzu1ImN
 aDWoHgWUKLjXHFeAph49N/1MPzyMKwB+dB5UY4+sBwKqi+Zmyhwy+LbqJaUxCMwbW70w
 VVIxoHglOqwDAPzG7SD757WI+VrDXtw7EHrIzSuVwE1hRwPL4SpiOl4UV7zGuSYPrNG3
 NODzOIaAWBzPKpXV0S5onkXAINRqnELyOxGTilbYUAlCN3/K+gZi+pZU8xZvzC9J/Lb/
 UC2X4AgLcK4Ly+EtGXfih7bqf8EgJqUpGUwff3WwqUMHhIrUFh6lH6oCbE1WztCcI3W9
 QeGA==
X-Gm-Message-State: AOAM531rf8rl1ggw54ss9qL4lPh0hU5WTsNgGOV8iR9ea+LF8FWWBo+v
 YteDvZ1VBGkt9zxaJq+wKEZfzzFCBvc4ZhyyCws=
X-Google-Smtp-Source: ABdhPJzz2N4fS7S55oBDJm8fmQTP3Eo+LCsdSs2FFc8FbV0EP+rfH4GCVEA8hd4Znhnshdlr4zEsP7jCq/vImSAL1Rs=
X-Received: by 2002:a25:da4b:: with SMTP id n72mr18912208ybf.496.1637769653169; 
 Wed, 24 Nov 2021 08:00:53 -0800 (PST)
MIME-Version: 1.0
References: <795f917b-3883-1827-f39b-35123b500f36@achow101.com>
 <E2219CF0-4044-42BC-B782-69DCFF33A5A0@sprovoost.nl>
In-Reply-To: <E2219CF0-4044-42BC-B782-69DCFF33A5A0@sprovoost.nl>
From: Greg Sanders <gsanders87@gmail.com>
Date: Thu, 25 Nov 2021 00:00:42 +0800
Message-ID: <CAB3F3DuR3fETgD=h0cWZ_j6XcNRqHub_KReNj3-oa7DhaCq-iQ@mail.gmail.com>
To: Sjors Provoost <sjors@sprovoost.nl>, 
 Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
Content-Type: multipart/alternative; boundary="00000000000066b41605d18af6f9"
Subject: Re: [bitcoin-dev] Taproot Fields for PSBT
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: Wed, 24 Nov 2021 16:00:55 -0000

--00000000000066b41605d18af6f9
Content-Type: text/plain; charset="UTF-8"

I may be misunderstanding the question, but it seems essential data for the
finalizer role, which may not know such information on its own.

On Wed, Nov 24, 2021 at 11:15 PM Sjors Provoost via bitcoin-dev <
bitcoin-dev@lists.linuxfoundation.org> wrote:

> Hi Andrew,
>
> I'm confused why PSBT_IN_TAP_BIP32_DERIVATION and
> PSBT_OUT_TAP_BIP32_DERIVATION
> contain not just the derivation path for the xonlypubkey, but also the
> tapleaf merkle path.
>
> First I thought it was perhaps necessary in order for a signer to guess
> which
> script leaves it can sign with its own keys. But you can't really know
> that without
> actually seeing the script. When a signer looks at a script, it presumably
> already
> knows the leaf path.
>
> - Sjors
>
> Op 22 jun. 2021, om 23:22 heeft Andrew Chow via bitcoin-dev <
> bitcoin-dev@lists.linuxfoundation.org> het volgende geschreven:
>
> Hi All,
>
> I would like to propose a BIP which defines new fields for Taproot
> support in PSBT.
>
> The full text is below, and the rendered file can be found at
>
>
> Now at: https://github.com/bitcoin/bips/blob/master/bip-0174.mediawiki
>
> -
> | Taproot Key BIP 32 Derivation Path
> | <tt>PSBT_IN_TAP_BIP32_DERIVATION = 0x16</tt>
> | <tt><xonlypubkey></tt>
> | The 32 byte X-only public key
> | <tt><hashes len> <leaf hash>* <32-bit uint> <32-bit uint>*</tt>
> | A compact size unsigned integer representing the number of leaf
> hashes, followed by a list of leaf hashes, followed by the master key
> fingerprint concatenated with the derivation path of the public key. The
> derivation path is represented as 32-bit little endian unsigned integer
> indexes concatenated with each other. Public keys are those needed to
> spend this output. The leaf hashes are of the leaves which involve this
> public key.
>
>
> |-
> | Taproot Key BIP 32 Derivation Path
> | <tt>PSBT_OUT_TAP_BIP32_DERIVATION = 0x07</tt>
> | <tt><xonlypubkey></tt>
> | The 32 byte X-only public key
> | <tt><hashes len> <leaf hash>* <32-bit uint> <32-bit uint>*</tt>
>
>
> _______________________________________________
> bitcoin-dev mailing list
> bitcoin-dev@lists.linuxfoundation.org
> https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev
>

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

<div dir=3D"ltr">I may be misunderstanding the question, but it seems essen=
tial data for the finalizer role, which may not know such information on it=
s own.</div><br><div class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_=
attr">On Wed, Nov 24, 2021 at 11:15 PM Sjors Provoost via bitcoin-dev &lt;<=
a href=3D"mailto:bitcoin-dev@lists.linuxfoundation.org">bitcoin-dev@lists.l=
inuxfoundation.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"><div style=3D"overflow-wrap: break-word;">Hi Andrew,<div>=
<br></div><div>I&#39;m confused why PSBT_IN_TAP_BIP32_DERIVATION and PSBT_O=
UT_TAP_BIP32_DERIVATION</div><div>contain not just the derivation path for =
the xonlypubkey, but also the tapleaf merkle path.</div><div><br></div><div=
>First I thought it was perhaps necessary in order for a signer to guess wh=
ich</div><div>script leaves it can sign with its own keys. But you can&#39;=
t really know that without</div><div>actually seeing the script. When a sig=
ner looks at a script, it presumably already</div><div>knows the leaf path.=
</div><div><br></div><div>- Sjors<br><div><br><blockquote type=3D"cite"><di=
v>Op 22 jun. 2021, om 23:22 heeft Andrew Chow via bitcoin-dev &lt;<a href=
=3D"mailto:bitcoin-dev@lists.linuxfoundation.org" target=3D"_blank">bitcoin=
-dev@lists.linuxfoundation.org</a>&gt; het volgende geschreven:</div><br><d=
iv><div>Hi All,<br><br>I would like to propose a BIP which defines new fiel=
ds for Taproot<br>support in PSBT.<br><br>The full text is below, and the r=
endered file can be found at<br></div></div></blockquote><div><br></div><di=
v>Now at:=C2=A0<a href=3D"https://github.com/bitcoin/bips/blob/master/bip-0=
174.mediawiki" target=3D"_blank">https://github.com/bitcoin/bips/blob/maste=
r/bip-0174.mediawiki</a></div><div><br></div><blockquote type=3D"cite"><div=
><div>-<br>| Taproot Key BIP 32 Derivation Path<br>| &lt;tt&gt;PSBT_IN_TAP_=
BIP32_DERIVATION =3D 0x16&lt;/tt&gt;<br>| &lt;tt&gt;&lt;xonlypubkey&gt;&lt;=
/tt&gt;<br>| The 32 byte X-only public key<br>| &lt;tt&gt;&lt;hashes len&gt=
; &lt;leaf hash&gt;* &lt;32-bit uint&gt; &lt;32-bit uint&gt;*&lt;/tt&gt;<br=
>| A compact size unsigned integer representing the number of leaf<br>hashe=
s, followed by a list of leaf hashes, followed by the master key<br>fingerp=
rint concatenated with the derivation path of the public key. The<br>deriva=
tion path is represented as 32-bit little endian unsigned integer<br>indexe=
s concatenated with each other. Public keys are those needed to<br>spend th=
is output. The leaf hashes are of the leaves which involve this<br>public k=
ey.<br></div></div></blockquote><br><blockquote type=3D"cite"><div><div>|-<=
br>| Taproot Key BIP 32 Derivation Path<br>| &lt;tt&gt;PSBT_OUT_TAP_BIP32_D=
ERIVATION =3D 0x07&lt;/tt&gt;<br>| &lt;tt&gt;&lt;xonlypubkey&gt;&lt;/tt&gt;=
<br>| The 32 byte X-only public key<br>| &lt;tt&gt;&lt;hashes len&gt; &lt;l=
eaf hash&gt;* &lt;32-bit uint&gt; &lt;32-bit uint&gt;*&lt;/tt&gt;<br><br></=
div></div></blockquote></div><br></div></div>______________________________=
_________________<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>

--00000000000066b41605d18af6f9--