Bitcoin-com / Wallet

MIT License
332 stars 234 forks source link

Support derivation path m/44'/145'/0' for Bitcoin Cash #507

Open m4ktub opened 5 years ago

m4ktub commented 5 years ago

I understand why Bitcoin.com wallet uses the BTC derivation path (m/44'/0'/0'). It made for an easy transition for people holding BTC before the fork and, when importing, makes it easier to scan both BTC and BCH network for funds.

That being said the wallet does not support importing a seed with the m/44'/145'/0' derivation path (error message saying derivation path is invalid). This means you can't, for example, import the seed used in Badger Wallet and get the same balance. With Bitcoin.com being one of the most popular wallets, this makes the remaining ecosystem having to decide between standardness and compatibility/user experience.

Please consider creating new Bitcoin Cash wallets with the m/44'/145'/0' derivation while still supporting the BTC derivation path for importing of backups and in the advanced creation of new wallets.

Related issue: #68.

Bitkilo commented 5 years ago

Thanks for the feedback. I will pass the idea on

UnstoppableCash commented 5 years ago

That being said the wallet does not support importing a seed with the m/44'/145'/0' derivation path (error message saying derivation path is invalid). This means you can't, for example, import the seed used in Badger Wallet and get the same balance. With Bitcoin.com being one of the most popular wallets, this makes the remaining ecosystem having to decide between standardness and compatibility/user experience.

Please consider creating new Bitcoin Cash wallets with the m/44'/145'/0' derivation while still supporting the BTC derivation path for importing of backups and in the advanced creation of new wallets.

When creating a new (BCH) wallet (WinPC ver:5.4-rc4) using "specify recovery phrase", the field "Derivation Path" is listed and pre-filled out with "m/44'/0'/0'". If I change it to m/44'/145'/0' (Badger/BIP44) I also get a "Error: invalid derivation path". Does this "derivation path" field/option support anything other than "m/44'/0'/0'"? If not, why is it not fixed/constant (just reporting what is supported)? Seems confusing allowing path field to be modified if no other path (at least Bip44) is supported (BCH).

(My steps: New personal wallet->name wallet->show advanced options->wallet key->specify recovery phrase->Derivation Path->m/44'/145'/0'->create wallet->"Error Invalid derivation path")

In any case, the Bitcoin.com wallet really needs to add support for Badger(Bip44 for BCH) since part of the same eco-system. Once Bip44 is supported, maybe new wallets should default to BIP44 so they are compatible with Badger as well. Simplify UX! Badger is just in the early days of mass use, hopefully this compatibility glitch is resolved soon!

TIA!

EDIT: added that issue (lack of Bip44 support) is specific to BCH (not BTC). h/t: m4ktub

m4ktub commented 5 years ago

Sorry, fat finger on mobile. Reopening.

lubokkanev commented 5 years ago

When creating a new (BCH) wallet (WinPC ver:5.4-rc4) using "specify recovery phrase", the field "Derivation Path" is listed and pre-filled out with "m/44'/0'/0'". If I change it to m/44'/145'/0' (Badger/BIP44) I also get a "Error: invalid derivation path". Does this "derivation path" field/option support anything other than "m/44'/0'/0'"? If not, why is it not fixed/constant (just reporting what is supported)?

Supported paths seem to be m/(44 or 45 or 48)'/(0 or 1)'/(any)'.