summaryrefslogtreecommitdiff
path: root/bip-0043.mediawiki
diff options
context:
space:
mode:
Diffstat (limited to 'bip-0043.mediawiki')
-rw-r--r--bip-0043.mediawiki61
1 files changed, 61 insertions, 0 deletions
diff --git a/bip-0043.mediawiki b/bip-0043.mediawiki
new file mode 100644
index 0000000..24dcb82
--- /dev/null
+++ b/bip-0043.mediawiki
@@ -0,0 +1,61 @@
+<pre>
+ BIP: BIP-0043
+ Title: Purpose Field for Deterministic Wallets
+ Authors: Marek Palatinus <slush@satoshilabs.com>
+ Pavol Rusnak <stick@satoshilabs.com>
+ Status: Draft
+ Type: Standards Track
+ Created: 24-04-2014
+</pre>
+
+==Abstract==
+
+This BIP introduces a "Purpose Field" for use in deterministic wallets
+based on algorithm described in BIP-0032 (BIP32 from now on).
+
+==Motivation==
+
+Although Hierarchical Deterministic Wallet structure as described by BIP32
+is an important step in user experience and security of the cryptocoin wallets,
+the BIP32 specification offers implementors too many degrees of freedom.
+Multiple implementations may claim they are BIP32 compatible, but in fact
+they can produce wallets with different logical structures making them
+non-interoperable. This situation unfortunately renders "BIP32 compatible"
+statement rather useless.
+
+
+==Purpose==
+
+We propose the first level of BIP32 tree structure to be used as "purpose".
+This purpose determines the further structure beneath this node.
+
+<pre>
+m / purpose' / *
+</pre>
+
+Apostrophe indicates that BIP32 hardened derivation is used.
+
+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.
+
+Example: Scheme described in BIP44 should use 44' (or 0x8000002C) as purpose.
+
+Not all wallets may want to support the full range of features and possibilities
+described in these BIPs. Instead of choosing arbitrary subset of defined features
+and calling themselves BIPxx compatible, we suggest that software which needs
+only a limited structure should describe such structure in another BIP and use
+different "purpose" value.
+
+
+==Master node serialization==
+
+Because this scheme can be used to generate nodes for more cryptocurrencies
+at once, or even something totally unrelated to cryptocurrencies, there's no
+point in using a special version magic described in section "Serialization
+format" of BIP32. We suggest to use always 0x0488B21E for public and 0x0488ADE4
+for private nodes (leading to prefixes "xpub" and "xprv" respectively).
+
+==Reference==
+
+* [[bip-0032.mediawiki|BIP32 - Hierarchical Deterministic Wallets]]