As far as I understand, there is a standard that describes what address types an extended private key or extended public key is intended to derive and it works as such:

  • xpriv/xpub => Legacy address (1...)
  • ypriv/ypub => nested SegWit address (3...)
  • zpriv/zpub => native SegWit address (bc1q...)

So regarding this, I have 2 questions:

  1. What is the name or BIP number of this standard?
  2. What does an extended public key look like, that is intended to be used for P2TR addresses (bc1p...)?

1 Answer 1


There is no ypub/zpub similar thing for Taproot. The recommendation is to use xpriv/xpub along with some extra information indicating that the script to create is Taproot, (e.g. with a tr() descriptor).

This is because it is a layer violation to have the extended keypair indicate the script type to create. The keys should not and do not care about what scripts to create. Additionally, xprv and xpub are not supposed to indicate legacy addresses - they are for BIP 32 extended keys which are script agnostic. To use them to indicate legacy addresses is incorrect.

In general, there is a move towards encouraging and using more complicated scripts where having extended keypairs indicate script type doesn't really make sense.

Your Answer

