From babd604cc4fc040ec22d58f120569556afeac3ce Mon Sep 17 00:00:00 2001 From: Daniel Weigl Date: Tue, 14 Jun 2016 14:54:41 +0200 Subject: [PATCH] minor cleanups --- bip-p2sh-accounts.mediawiki | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/bip-p2sh-accounts.mediawiki b/bip-p2sh-accounts.mediawiki index f7453c2c..cf030039 100644 --- a/bip-p2sh-accounts.mediawiki +++ b/bip-p2sh-accounts.mediawiki @@ -22,20 +22,22 @@ will detect the account and handle them appropriately. ===Considerations=== Two generally different approaches are possible for current BIP44 capable wallets: - 1) Allow the user to use the same account(s) that they already uses, but add segregated witness encoded addresses to it - 1.1) Use the same public keys as defined in BIP44, but in addition to the normal P2PKH address also derive the P2SH address from it. - 1.2) Use the same account root, but branch off and derive different external and internal chain roots to derive dedicated public keys for the segregated witness addresses. +1) Allow the user to use the same account(s) that they already uses, but add segregated witness encoded addresses to it - 2) Create dedicated accounts only used for segregated witness addresses. +1.1) Use the same public keys as defined in BIP44, but in addition to the normal P2PKH address also derive the P2SH address from it. -The solutions from point 1 have a common disadvantage: if a user imports/recovers a BIP-compatible wallet masterseed into/in a non-BIP-compatible wallet, the account might show up but also it might miss some UTXOs. -Thus this BIP uses solution 2, which fails in a more visible way. Either the account shows up or not at all. The user does not have to check his balance after using the same seed in different wallets. +1.2) Use the same account root, but branch off and derive different external and internal chain roots to derive dedicated public keys for the segregated witness addresses. + +2) Create dedicated accounts only used for segregated witness addresses. + +The solutions from point 1 have a common disadvantage: if a user imports/recovers a BIP-compatible wallet masterseed into/in a non-BIP{ThisBipNumber}-compatible wallet, the account might show up but also it might miss some UTXOs. + +Therefore this BIP uses solution 2, which fails in a more visible way. Either the account shows up or not at all. The user does not have to check his balance after using the same seed in different wallets. ==Specifications== -This BIP defines the two needed steps to derive multiple deterministic addresses based on a [[bip-0032.mediawiki|BIP 32]] -root account. +This BIP defines the two needed steps to derive multiple deterministic addresses based on a [[bip-0032.mediawiki|BIP 32]] root account. ===Public key derivation=== @@ -47,7 +49,7 @@ serialization method. m / purpose' / coin_type' / account' / change / address_index -For the `purpose`-path level it uses '. The rest of the levels are used as defined in BIP44 +For the `purpose`-path level it uses {ThisBipNumber}'. The rest of the levels are used as defined in BIP44 ===Address derivation=== @@ -84,7 +86,6 @@ To derive the P2SH address from the above calculated public key, we use the enca address = base58check(prefix | addressBytes) = 1xyz.... -... ==Reference==