When linking MyEtherWallet with a hardware wallet, there is a dropdown to select the HD derivation path. I understand that m/44'/60'/0'/0
is the default. For some reason Ledger uses m/44'/60'/0'
. I'm not sure what the missing /0
means in the context of an HD wallet. What is the difference between the two derivation paths?
-
github.com/ethereum/EIPs/issues/84#issuecomment-292324521 for discussion trying to get all of the clients to standardize on a single derivation path (currently not very successful).– Micah ZoltuJun 20, 2018 at 3:21
2 Answers
Jaxx,MEtamask,...etc uses the BIP44 derivation.
from the BIP44 specification, the HD derivation path is defined as :
m / purpose' / coin_type' / account' / change / address_index
But some wallets (e.g Ledger) chose an HD path of m/44'/60/0' which is almost BIP44, except the change path is not used.
just for information :
Change
Constant 0 is used for external chain and constant 1 for internal chain (also known as change addresses). External chain is used for addresses that are meant to be visible outside of the wallet (e.g. for receiving payments). Internal chain is used for addresses which are not meant to be visible outside of the wallet and is used for return transaction change.
-
1If the difference is only change addresses, why are the base (non-change) addresses generated by the two derivation paths different? Jun 29, 2017 at 13:19
-
I think you need to read the bip32 to understand what's key derivation github.com/bitcoin/bips/blob/master/bip-0032.mediawiki and bip32.org– Badr Bellaj ♦Jun 29, 2017 at 14:20
The derivation path can be defined by every wallet independently, it's just a rule about how they generate your wallet from a single master seed. If you want to migrate your wallet to another device with your master seed, you may not see your original addressed (and balance) if it's using a derivation rule different from your original one.
The problem we face so many troubles in ETH wallets is that there hasn't been a standard for Ethereum Wallets to follow, some people want to follow BIP44 but the change index may be a little bit unnecessary under the account model.
Also for more information: Ledger is now switching to BIP 44 derivation path:
m/44'/60'/x'/0/0
.
More detail from this thread: https://github.com/MyCryptoHQ/MyCrypto/issues/2070