diff options
-rw-r--r-- | bip-0044.mediawiki | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/bip-0044.mediawiki b/bip-0044.mediawiki index 5e8351b..5229435 100644 --- a/bip-0044.mediawiki +++ b/bip-0044.mediawiki @@ -10,7 +10,7 @@ ==Abstract== -This BIP defines logical hierarchy for deterministic wallets based on algorithm +This BIP defines a logical hierarchy for deterministic wallets based on an algorithm described in BIP-0032 (BIP32 from now on) and purpose scheme described in BIP-0043 (BIP43 from now on). @@ -18,7 +18,7 @@ This BIP is a particular application of BIP43. ==Motivation== -Hierarchy proposed in this paper is quite comprehensive. It allows to handle +The hierarchy proposed in this paper is quite comprehensive. It allows the handling of multiple coins, multiple accounts, external and internal chains per account and millions of addresses per chain. @@ -32,7 +32,7 @@ m / purpose' / coin_type' / account' / change / address_index Apostrophe in the path indicates that BIP32 hardened derivation is used. -Each level has special meaning described in the chapters below. +Each level has a special meaning, described in the chapters below. ===Purpose=== @@ -50,7 +50,7 @@ space for various cryptocoins has some disadvantages. This level creates a separate subtree for every cryptocoin, avoiding reusing addresses across cryptocoins and improving privacy issues. -Coin type is a constant set for each cryptocoin. Cryptocoin developers may ask +Coin type is a constant, set for each cryptocoin. Cryptocoin developers may ask for registering unused number for their project. The list of already allocated coin types is in the chapter @@ -63,8 +63,8 @@ Hardened derivation is used at this level. This level splits the key space into independent user identities, so the wallet never mixes the coins across different accounts. -User can use these accounts to organize the funds in the same -fashion like bank accounts; for donation purposes (where all +Users can use these accounts to organize the funds in the same +fashion as bank accounts; for donation purposes (where all addresses are considered public), for saving purposes, for common expenses etc. @@ -73,11 +73,11 @@ This number is used as child index in BIP32 derivation. Hardened derivation is used at this level. -Software should prevent a creation of an account if previous account does not +Software should prevent a creation of an account if a previous account does not have a transaction history (meaning none of its addresses have been used before). Software needs to discover all used accounts after importing the seed from -an external source. Such algorithm is described in "Account discovery" chapter. +an external source. Such an algorithm is described in "Account discovery" chapter. ===Change=== @@ -104,15 +104,15 @@ start to discover the accounts in the following manner: # derive the first account's node (index = 0) # derive the external chain node of this account # scan addresses of the external chain; respect the gap limit described below -# if no transactions are found on the external chain stop discovery +# if no transactions are found on the external chain, stop discovery # if there are some transactions, increase the account index and go to step 1 -This algorithm is correct, because software should disallow creation of new -accounts if previous one has no transaction history as described in chapter +This algorithm is successful because software should disallow creation of new +accounts if previous one has no transaction history, as described in chapter "Account" above. Please note that the algorithm works with the transaction history, not account -balances, so you can have account with total 0 coins and the algorithm will +balances, so you can have an account with 0 total coins and the algorithm will still continue with discovery. ===Address gap limit=== @@ -121,7 +121,7 @@ Address gap limit is currently set to 20. If the software hits 20 unused addresses in a row, it expects there are no used addresses beyond this point and stops searching the address chain. -Wallet software should warn when user is trying to exceed the gap limit on +Wallet software should warn when the user is trying to exceed the gap limit on an external chain by generating a new address. ==Registered coin types== @@ -251,7 +251,7 @@ All these constants are used as hardened derivation. |m / 44' / 1' / 1' / 1 / 1 |} -==Compatible walets== +==Compatible wallets== * [[https://mytrezor.com|myTREZOR web wallet]] ([[https://github.com/trezor/webwallet|source]]) |