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 <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> >
signature.asc
Description: Message signed with OpenPGP
_______________________________________________ bitcoin-dev mailing list bitcoin-dev@lists.linuxfoundation.org https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev