-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
revert to using metamask's bip39 key derivation method in cryptowallets #13245
Comments
bitgo integration currently uses a key derived from the master seed, but luckily it hasn't shipped yet. #12296 unless we want users to have to write down a separate mnemonic for their bitgo multisig private key, we will need to change that implementation to use a key derived from the metamask-compatible cryptowallet private key. looks like https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki can be used for this. |
Verification passed on
Verification passed on
Verification passed on
|
Hi, Above says "but restore using the legacy way if it's 24", but don´t understand. |
@aruialmeida seems like a bug. what version of Crypto Wallets is on each of the two computers? you can check in brave://extensions/?id=odbfpeeihdkbihmopkbjmoonfanlbfcl. the latest version should create 12 word phrases, not 24 |
thanks for the reply diracdeltas. if i create a new account now it create with 12 words, yes. |
@aruialmeida you mentioned in your other comment that it worked in metamask. can you send me:
feel free to email yan at brave.com, thanks! |
ok, i am in brave.com, i am seeing Yan Zhu (Chief Information Security Officer), but i am not seeing the e-mail. |
@aruialmeida i mean email yan@brave.com |
the 24-word phrase that users are told to backup in crypto-wallets is actually a master seed which is supposed to be used to derive various private keys (including the wallet private key), but users generally assume it's just the wallet private key. this causes confusion when they try to import/export their wallet to other applications. although we offer the option to export the private key in hex encoding, which should be compatible with other apps, a lot of people expect us to support the bip39 standard.
the original justification for our non-standard design (https://github.com/brave/brave-browser/wiki/Brave-Ethereum-Remote-Client-Wallet-Seed-Information) was this:
we cannot satisfy both these requirements if the backup phrase is the mnemonic for the cryptowallet private key itself.
unfortunately, it's also not possible to derive the bip39 mnemonic phrase from the wallet private key, because the wallet seed is derived from the mnemonic using PBKDF2. https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki
the only solution i can think of is to revert to metamask's way of key derivation, which is compatible with other wallets. luckily we haven't yet implemented key consolidation for rewards/sync/etc., so the migration process is not too bad:
The text was updated successfully, but these errors were encountered: