public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
* [bitcoin-dev] PSBT_GLOBAL_XPUB: Version bytes in xpub
@ 2019-11-15 22:29 Ian Kroozbi
  2019-11-16  4:54 ` Andrew Chow
  0 siblings, 1 reply; 2+ messages in thread
From: Ian Kroozbi @ 2019-11-15 22:29 UTC (permalink / raw)
  To: bitcoin-dev

[-- Attachment #1: Type: text/plain, Size: 1119 bytes --]

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.

[-- Attachment #2: Type: text/html, Size: 1278 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [bitcoin-dev] PSBT_GLOBAL_XPUB: Version bytes in xpub
  2019-11-15 22:29 [bitcoin-dev] PSBT_GLOBAL_XPUB: Version bytes in xpub Ian Kroozbi
@ 2019-11-16  4:54 ` Andrew Chow
  0 siblings, 0 replies; 2+ messages in thread
From: Andrew Chow @ 2019-11-16  4:54 UTC (permalink / raw)
  To: Ian Kroozbi, Bitcoin Protocol Discussion

[-- Attachment #1: Type: text/plain, Size: 1494 bytes --]

The rationale was that xpubs was already a predefined standard which many software already have serialization code for. It's simpler to just reuse what has been defined before.

IMO, the version bytes don't matter and should be ignored. In the proposed implementation to Bitcoin Core, the version bytes are ignored.

Andrew

On 11/15/19 5:29 PM, Ian Kroozbi via bitcoin-dev wrote:

> 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.

[-- Attachment #2: Type: text/html, Size: 2400 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-11-16  5:00 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-15 22:29 [bitcoin-dev] PSBT_GLOBAL_XPUB: Version bytes in xpub Ian Kroozbi
2019-11-16  4:54 ` Andrew Chow

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox