Subject: [bitcoin-dev] PSBT_GLOBAL_XPUB: Version bytes in xpub

From: Ian Kroozbi <[email-masked]>
Date: Fri, 15 Nov 2019 16:29:01 -0600

What’s the rational for including the version bytes in the xpub in the
GLOBAL_XPUB field? This was briefly touched upon in an earlier email from
Stepan, but I don’t think it was every fully addressed.

I am not sure if we need the whole xpub or keeping chain_code and
> public_key is enough, but I would suggest to keep other data
> just in case. For example, keeping prefix that defines if the key is used
> for testnet or mainnet may be useful.
>

The version bytes seem to be superfluous data considering the transaction
format and the rest of the PSBT key-values are network agnostic. If we
wanted to attach network data to the PSBT then I think that would be better
served by using a new key.

There is also a potential issue where we could have conflicting versions on
different xpubs in the PSBT. If we remove the version bytes then we can
eliminate this possibility.

I haven’t formed an opinion on whether or not the other data outside of the
public key and chain code should be included, but I think it would be good
to discuss any rational for either including it or omitting it.