Background
This page describes how to get limited Bitcoin-Core (or Litecoin / Dogecoin / etc.) wallet information for Wallet Recovery Services, so that we cannot steal your bitcoins even if the wallet password is found.
Refer to the long forum thread at bitcointalk.org, which discusses the safety of sending your limited wallet information to a service such as this.
Refer to pywallet on GitHub, see also the Bitcoin Wiki’s Pywallet page, and notes about it in previous forum postings, such as on bitcointalk.org.
Note that the instructions below are for Bitcoin Core, Bitcoin-Qt, Litecoin, Dogecoin, and most other alt-coin wallets, but do not apply to blockchain.info, Multibit, Armory, Electrum, BitGo, BIP38-encoded wallets, or Ethereum wallets.
Instructions
-
Download and install Python 2.7. For example, for Windows:
-
Download the open-source file named
pywallet.pyfrom Wallet Recovery Services. If you are dumping information from a Litecoin or altcoin wallet, you might need to tweak the directory in which the script searches for thewallet.datfile. -
Run the
pywallet.pyscript to dump all the important information from your wallet. This step will dump out the encrypted information for you to see, even though your wallet is encrypted with a forgotten password.Start a Windows command prompt (
cmd) and use:pywallet.py --dumpwallet > temp.txtThis puts the information into a file named
temp.txt. -
Open the resulting
temp.txtfile in a text editor.To attempt decoding the lost passphrase, we need the
mkeysection, similar to:"mkey": { "crypted_key": "e34577ec23039d05a1b71a37996564ad9c48cd5b8bed7d8875eb88c3d34118e9e113e345631295b323a8ba48764ee51b", "nDerivationMethod": 0, "nDeriveIterations": 165130, "nID": 1, "salt": "89be7331b4068346", "vchOtherDerivationParameters": "" },And two or more of the address sections, such as:
{ "addr": "1DCHJoJidu95uJYZcyD9CgnNf6pLOO8XZU", "ckey": "6dc8906af2b0dabf84e6c354f659a031b565ed48a6366a3d88cc43a53e49e9f6288c7c776d870e7bcafbf54708e2f86d", "pubkey": "03f9d93ceb0d4ebd243ce90c06bed8b73d45668564e3b9e9406d8fe47186fbc58c", "reserve": 1 }If you choose two of the address sections above that do not contain money—that is, sections with a
reserveline, not alabelline—you can ensure that you do not send any information that will allow the theft of bitcoins, even by someone who can decode the wallet for you. In other words, you will only be sending us Bitcoin addresses that have no money in them. -
Contact us with the information.