[bitcoin-dev] BIP proposal draft: BIP43 "purpose" allocation for Ethereum

Tom Zander tomz at freedommail.ch
Fri Apr 14 19:26:14 UTC 2017

Thinking about this a bit, I support this proposal for a BIP.
This is not Bitcoin, but address types are bound to meet in meat-space and 
it would be good to have a central place where this is defined.

I would very much appreciate someone that worked on BIP32/BIP43 itself to 
comment on the details.

Quoting bip 43;

"We encourage different schemes to apply for assigning a separate BIP
number and use the same number for purpose field, so addresses won't be
generated from overlapping BIP32 spaces."

On Wednesday, 12 April 2017 12:02:37 CEST Nick Johnson via bitcoin-dev 
> <pre>
>   BIP: bip-nickjohnson-ethereum-purpose
>   Layer: Applications
>   Title: Ethereum purpose allocation for Deterministic Wallets
>   Author: Nick Johnson <nick at ethereum.org>
>   Status: Proposed
>   Type: Standards Track
>   Created: 2017-04-12
> </pre>
> ==Abstract==
> This BIP defines a logical hierarchy for deterministic wallets on the
> Ethereum blockchain based on an algorithm described in BIP-0032 (BIP32
> from now on) and purpose scheme described in BIP-0043 (BIP43 from now
> on).
> This BIP is a particular application of BIP43.
> ==Motivation==
> Because Ethereum is based on account balances rather than UTXO, the
> hierarchy defined by BIP44 is poorly suited. As a result, several
> competing derivation path strategies have sprung up for deterministic
> wallets, resulting in inter-client incompatibility. This BIP seeks to
> provide a path to standardise this in a fashion better suited to
> Ethereum's unique requirements.
> ==Path levels==
> We define the following 2 levels in BIP32 path:
> <pre>
> m / purpose' / subpurpose' / *
> </pre>
> Apostrophe in the path indicates that BIP32 hardened derivation is used.
> Each level has a special meaning, described in the chapters below.
> ===Purpose===
> Purpose is a constant set to the hardened value of the BIP number assigned
> to this BIP (equivalently, the BIP number, bitwise ORed with 0x80000000)
> following the BIP43 recommendation.
> It indicates that the subtree of this node is used according to this
> specification.
> Hardened derivation is used at this level.
> ===Subpurpose===
> Subpurpose is set to the EIP number specifying the remainder of the BIP32
> derivation path. This permits new Ethereum-focused applications of
> deterministic wallets without needing to interface with the BIP process.
> Hardened derivation is used at this level.
> ==Reference== * [[bip-0032.mediawiki|BIP32 - Hierarchical Deterministic
> Wallets]] * [[bip-0043.mediawiki|BIP43 - Purpose Field for Deterministic
> Wallets]]

Tom Zander
Blog: https://zander.github.io
Vlog: https://vimeo.com/channels/tomscryptochannel

More information about the bitcoin-dev mailing list