I'm writing my own implementation of BIP44 wallet.
Can someone please point me to a BIP44 compatible wallet that could import seeds from other wallets. I've looked at several and it seems that, at most, they support only BIP39.
Thank you.
I'm writing my own implementation of BIP44 wallet.
Can someone please point me to a BIP44 compatible wallet that could import seeds from other wallets. I've looked at several and it seems that, at most, they support only BIP39.
Thank you.
You can find a list of compatible wallets on BIP44's Github page.
- Mycelium Bitcoin Wallet (Android)
- Copay
- CoinVault
- Samourai Wallet
- Coinomi
- TREZOR
- KeepKey
- Ledger Wallet
- 21 Machine Wallet
- Trust Wallet
According to MetaMask they also support BIP44, although they are not on the list above.
I've looked at several and it seems that, at most, they support only BIP39.
BIP39 and BIP44 cover different stages of the wallet generation procedure
BIP44 is a BIP32 convention - a prescribed hierarchy of BIP32 derivations for wallet compatibility. Setting up a BIP32 wallet the first time involves taking some entropy and applying the Master key generation procedure (https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki#Master_key_generation)
The initial entropy should be CSPRNG output - but how are people expected to store this? Where can it come from?
Well that part is handled by BIP39. It involves hashing the seed (optionally with a passphrase) to obtain the entropy that gets used by BIP32.
So the reality is you'll want to use BIP44 in combination with BIP39, otherwise, your only option is to generate entropy randomly and give the user the BIP32 root xprv. This is the root private key in the BIP32 derivation tree and contains all addresses and private keys but the odds are a BIP39 seed is more friendly for people to back up.