Bitcoin Mnemonic Code Converter - extracting private keys from recovery words

in bitcoin •  7 years ago  (edited)

Many Bitcoin wallets now use BIP39 to generate addresses from mnemonic codes. If you are using hardware wallets or Electrum wallet, you should have written your recovery 12(or 24) words somewhere safe.

BIP39 is very useful since you don't have to backup all your private keys. Private keys are derived using cryptographically safe method, so you just need the recovery words to recover all your private keys and public keys. If it weren't for BIP39, you would have to backup your private keys whenever you use a new address. You could reuse just one address but you loose privacy.

There is a web page that can extract private keys and addresses from your recovery words.

If you plan to use this web page, it is extremely important to take security measures. You have to type your recovery words, which means if it's compromised, you can loose all your funds in your wallet. Not only Bitcoin, but all cryptocurrencies in your wallet!

  1. Open https://iancoleman.io/bip39/ and save it to disk. You can also download from github
  2. Go offline. Turn off Wifi. Unplug ethernet cable.
  3. Open saved page(preferably from a private window) and type recovery words in Mnemonic Code.
    bip39-a.png
  4. Select BIP32 / BIP49 from Derivation Path for legacy / segwit addresses.
  5. Copy addresses and save it somewhere. (not private keys yet!)
    bip39-b.png
  6. Close web page
  7. Connect to internet and use blockchain explorer to find out what address you are looking for. Make sure the address doesn't contain any bitcoins.
  8. Go offline. Turn off Wifi. Unplug ethernet cable.
  9. Repeat step 3 and 4. Copy private keys only for the interested addresses to somewhere safe(encrypted disk).

If you want to know more about Bitcoin addresses, see Mastering Bitcoin chapter 4 and 5. Chapter 5 explains mnemonic codes.

Although it is easy to derive addresses from recovery words(mnemonic codes), it's impossible to guess recovery words from derived addresses. It's also impossible to derive other addresses from known derived addresses.

I've successfully extracted some private keys from my Ledger Nano S to claim unsupported Bitcoin forks.

And I didn't take screenshot of my real recovery words! I generated new mnemonic codes just for the screenshot.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

definitely go into offline mode in these new crypto climates where everyone is out to get everyone we all gotta protect our coins

Yes, be careful with your private keys and recovery words.

This project is 100% open-source code

Yes! WiFi off and unplug Ethernet is important. You never know if something is already infected on your PC, keylogger or something else.

You can never be too safe with crypto. Very good tips Mix, thanks.

By the way, instead of upvoting a comment, might I suggest upvoting one of my blog posts? It will benefit you more because you will get part of the curation rewards...for me it is the same either way. Just one tip to share back with you.

Thanks for the tip. I'll do as you suggested.