[Bitcoin-development] UUID to identify chains (payment protocol and elsewhere)

Jeff Garzik jgarzik at exmulti.com
Tue May 21 02:45:13 UTC 2013

On Mon, May 20, 2013 at 7:59 PM, Mark Friedenbach <mark at monetize.io> wrote:
> So as to remain reasonably compliant with RFC 4122, I recommend that we
> use Version 4 (random) UUIDs, with the random bits extracted from the
> double-SHA256 hash of the genesis block of the chain. (For colored
> coins, the colored coin definition transaction would be used instead,
> but I will address that in a separate proposal and will say just one
> thing about it: adopting this method for identifying chains/coins will
> greatly assist in adopting the payment protocol to colored coins.)

This proposal seems closer to Version 5 than Version 4, in spirit.
But given that useful content may be deduced from UUID, it is not
truly applicable to either.  A bitcoin-specific version 6, if you

> And some example chain identifiers:
>      mainnet:  UUID('6fe28c0a-b6f1-4372-81a6-a246ae63f74f')
>      testnet3: UUID('43497fd7-f826-4571-88f4-a30fd9cec3ae')
>      namecoin: UUID('70c7a9f0-a2fb-4d48-a635-a70d5b157c80')

Note that, as this example unintentionally implies, humans are going
to want a side-by-side mapping /anyway/, just to make it readable and
usable to humans.

Almost all useful multi-chain software will require a readable
shortname string anyway, the thing this proposal wishes to avoid.

Jeff Garzik
exMULTI, Inc.
jgarzik at exmulti.com

More information about the bitcoin-dev mailing list