mirror of
				https://github.com/bitcoin/bips.git
				synced 2025-10-27 14:09:10 +00:00 
			
		
		
		
	Merge pull request #57 from e4xit/patch-1
Minor grammatical & spelling corrections
This commit is contained in:
		
						commit
						bdd89e736e
					
				| @ -10,7 +10,7 @@ | |||||||
| 
 | 
 | ||||||
| ==Abstract== | ==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 | described in BIP-0032 (BIP32 from now on) and purpose scheme described in | ||||||
| BIP-0043 (BIP43 from now on). | BIP-0043 (BIP43 from now on). | ||||||
| 
 | 
 | ||||||
| @ -18,7 +18,7 @@ This BIP is a particular application of BIP43. | |||||||
| 
 | 
 | ||||||
| ==Motivation== | ==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 | multiple coins, multiple accounts, external and internal chains per account and | ||||||
| millions of addresses per chain. | 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. | 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=== | ===Purpose=== | ||||||
| 
 | 
 | ||||||
| @ -50,7 +50,7 @@ space for various cryptocoins has some disadvantages. | |||||||
| This level creates a separate subtree for every cryptocoin, avoiding | This level creates a separate subtree for every cryptocoin, avoiding | ||||||
| reusing addresses across cryptocoins and improving privacy issues. | 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. | for registering unused number for their project. | ||||||
| 
 | 
 | ||||||
| The list of already allocated coin types is in the chapter | 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, | This level splits the key space into independent user identities, | ||||||
| so the wallet never mixes the coins across different accounts. | so the wallet never mixes the coins across different accounts. | ||||||
| 
 | 
 | ||||||
| User can use these accounts to organize the funds in the same | Users can use these accounts to organize the funds in the same | ||||||
| fashion like bank accounts; for donation purposes (where all | fashion as bank accounts; for donation purposes (where all | ||||||
| addresses are considered public), for saving purposes, | addresses are considered public), for saving purposes, | ||||||
| for common expenses etc. | 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. | 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). | 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 | 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=== | ===Change=== | ||||||
| 
 | 
 | ||||||
| @ -104,15 +104,15 @@ start to discover the accounts in the following manner: | |||||||
| # derive the first account's node (index = 0) | # derive the first account's node (index = 0) | ||||||
| # derive the external chain node of this account | # derive the external chain node of this account | ||||||
| # scan addresses of the external chain; respect the gap limit described below | # 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 | # 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 | This algorithm is successful because software should disallow creation of new | ||||||
| accounts if previous one has no transaction history as described in chapter | accounts if previous one has no transaction history, as described in chapter | ||||||
| "Account" above. | "Account" above. | ||||||
| 
 | 
 | ||||||
| Please note that the algorithm works with the transaction history, not account | 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. | still continue with discovery. | ||||||
| 
 | 
 | ||||||
| ===Address gap limit=== | ===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 | addresses in a row, it expects there are no used addresses beyond this point | ||||||
| and stops searching the address chain. | 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. | an external chain by generating a new address. | ||||||
| 
 | 
 | ||||||
| ==Registered coin types== | ==Registered coin types== | ||||||
| @ -251,7 +251,7 @@ All these constants are used as hardened derivation. | |||||||
| |m / 44' / 1' / 1' / 1 / 1 | |m / 44' / 1' / 1' / 1 / 1 | ||||||
| |} | |} | ||||||
| 
 | 
 | ||||||
| ==Compatible walets== | ==Compatible wallets== | ||||||
| 
 | 
 | ||||||
| * [[https://mytrezor.com|myTREZOR web wallet]] ([[https://github.com/trezor/webwallet|source]]) | * [[https://mytrezor.com|myTREZOR web wallet]] ([[https://github.com/trezor/webwallet|source]]) | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user