1. On your regular, internet-connected computer, open your web browser (Chrome or Firefox is recommended) and navigate to the Blockchain.com login page.
2. Open your browser's
Developer Tools. This is typically done by pressing the F12 key.
3. In the Developer Tools window, click on the tab labeled
"Network".
4. Now, in the main browser window, attempt to log in using your email address and the password that was recovered using your 17-word phrase. If you had Two-Factor Authentication (2FA), you may be prompted for a code.
5. The login will likely appear to fail or will simply take you back to the empty wallet dashboard. This is expected and is not a problem.
6. Look back at the Network tab in your Developer Tools. You should see a list of network requests. Find the one named `wallet` (or something very similar). Click on it.
7. A new pane will appear. Look for a tab within this pane labeled
"Response" or
"Preview".
8. You will see a large block of text starting with `{`. This is your encrypted `wallet.aes.json` payload.
9. Carefully select and copy the *entire contents* of this text block.
10. Open a plain text editor (like Notepad on Windows, or TextEdit on Mac in plain text mode). Paste the copied text into the editor.
11. Save this file with the exact name: `wallet.aes.json`. Some guides note that you may need to perform a "find and replace" to remove backslash characters (`\`) that might appear before quotation marks (e.g., changing `\"` to `"`), so inspect the file for this.
12. You now have the encrypted file containing your keys. Transfer this file to your secure offline computer using a clean, freshly formatted USB drive.
Step 3.3: Offline DecryptionNow, on your secure,
offline computer:
1. You will use a trusted, open-source, command-line tool called `btcrecover`. You will need to have downloaded this tool and its dependencies (like Python) onto your offline machine beforehand. You can find the official software on its GitHub repository.
2. Open a command prompt or terminal on the offline machine.
3. Navigate to the directory where you saved `btcrecover` and your `wallet.aes.json` file.
4. Run the following command, replacing `"your-recovered-password"` with the actual password you recovered. Keep the quotation marks if your password contains spaces or special characters.
python btcrecover.py --wallet-file wallet.aes.json --password "your-recovered-password"
5. The tool will then attempt to decrypt the file. Because there were several versions of the `wallet.aes.json` format over the years with different encryption settings (iteration counts), `btcrecover` is designed to handle many of them. If the command above does not work, the tool has advanced options to test for different legacy wallet types.
Step 3.4: Success! Sweeping the Private KeysIf the decryption is successful, `btcrecover` will output the private keys associated with your Bitcoin addresses. At this point, it is imperative that you follow this final procedure:
1.
DO NOT RE-USE THE OLD WALLET. The Blockchain.com wallet structure is obsolete and should be considered insecure for long-term storage.
2.
Prepare a new, modern, secure wallet. This should be a hardware wallet (like a Ledger or Trezor) or a well-regarded desktop software wallet (like Sparrow or a fresh installation of Electrum). Set it up and securely back up its new 12 or 24-word BIP39 seed phrase.
3.
Sweep the old keys. Use the "sweep" or "import private key" function in your new wallet. Enter one of the private keys recovered from your `wallet.aes.json` file. The wallet will create a new transaction that sends all the funds controlled by that private key to a new, clean address generated by your new wallet. Repeat for any other private keys that contain funds.
This action moves your Bitcoin from the old, compromised key structure to a new, secure, modern one under your sole control.
Firstly, THANK YOU for posting this detailed guide.
Now I am stuck where I have quoted you.
I am getting an error when running the command you asked me to run in the command prompt:
ModuleNotFoundError: No module named 'cPickle'.
I don't know what to do here. Please help.
Thanks again.