after recovered damaged WIF key about a yr ago got abit passive and failed to download all wallet.aes.json in time for the walletID that are known (email) but password and seeds were unknown because fireproof bag was hidden and forgotten.
Long story short really old skewl stacks of 2013-'15 era blockchain.info printed paper wallets were recently found in fireproof bag, with wallet ID entered in the following format:
??-?
-?
-?
-?
??
and password
and of 19 word non standard blockchain.info recovery seeds.
few walletID paper even had what I believed was backup: several QR code - no its not contain QR code to WIF (in earlier days you could print sheet with all P2PKH + WIF keys but this is not it), but after scanning each one consecutively and concatenate together it appears to be encrypted json backup of sort. pbkdf2_iterations version 2 payload "blahblahblahveryverylongstringcompleteblahblah" is shown. This was dumped from javascript console from var/obj that believed to hold the encrypted wallet back in 2016 or so (before download-blockchain-wallet.py) was available, and extra attempts were made to try to backup from client side .js memory - as I believe (at the time) that blockchain.info is doing java script kung-fu in memory and session data had all the information needed relating to each wallet-guid instance.
knowing one day I would eventually encounter lost hand hodl (now diamond hand hodl) bag (just as predicted, by accident), back in 2022 I even made attempt to download wallet.aes.json for one that I remembered to have most balance (after scrolling thru email), and waited.
btw contrary to belief blockchain email don't actually contain backup of wallet.aes.json. was using recovery download-blockchain-wallet.py 3 years ago to download encrypted wallet.aes.json but still unable to open it because did not have time to btcrecover with different wallet guid / possible password pairs. Now password and non BIP39 mnemonic in the fireproof bag was found it should be super easy to recover if wallet.aes.json for each guid can be retrieved.
as
BTC is approaching 99999 finally I started to think that blockchain.com won't easily make it diamond hand hodl friendly. So I begin to unseal / access the fake make belief self-custody wallet. Sure enough:
When hitting Blue Continue button, following messages (in the order which) appears briefly
obtain account info
Decrypt wallet data
obtaining encrypted data
Migrating Data
Then red "Invalid Token" is than shown below Email or Wallet ID Field!
the password is correct, because if incorrect password entered field "Password" would throw different error - "Password doesn't match. Try again." would appear
and when using login.blockchain.com/beta/auth/recovery "Input your Recovery Phrase" error - "Invalid Recovery Phrase" error was thrown.
I tried
?-?-?-?-???">https://login.blockchain.com/beta/legacy-pages/forgot-password.html?guid=??-?-?-?-???but it throws Unknown word rejecting
Unknown word midas or tickers
Unknown word incessant
...
...
and so on.
Then I tried to recover with wallet.aes.json from most valuable wallet I believe that was downloaded in 2022 with download-blockchain-wallet.py assist actually turned out to be super easy to recover, since no cracking was needed (passwords were correct as they were written down on wallet paper backup)
I did python3.11 btcrecover.py --wallet wallet.aes.json --dump-wallet wallet2.txt --correct-wallet-password mypasswordfoundinfireprofbagpaperwallets2024 and waalaa! all the WIF and Pubkey was found when cat wallet2.txt.
bcore28 importdescriptors (getdescriptorinfo "wpkh(WIF) found hasprivatekeys:true and has #?
? checksum ) works and recovery was successful
Now I wish there are ways to make
?-?-?-?-???">https://login.blockchain.com/beta/legacy-pages/forgot-password.html?guid=??-?-?-?-??? available again, or make download-blockchain-wallet.py work again (which it throws errors)
Traceback (most recent call last):
File "download-blockchain-wallet.py", line 76, in
auth_token = do_request_json("sessions", "")["token"] # a POST request
File "download-blockchain-wallet.py", line 72, in do_request_json
return json.load(do_request(query, body))
File "download-blockchain-wallet.py", line 66, in do_request
return urllib2.urlopen(req, cadefault=True) # calls ssl.create_default_context() (despite what the docs say)
File "/usr/local/lib/python2.7/urllib2.py", line 154, in urlopen
return opener.open(url, data, timeout)
File "/usr/local/lib/python2.7/urllib2.py", line 429, in open
response = self._open(req, data)
File "/usr/local/lib/python2.7/urllib2.py", line 447, in _open
'_open', req)
File "/usr/local/lib/python2.7/urllib2.py", line 407, in _call_chain
result = func(*args)
File "/usr/local/lib/python2.7/urllib2.py", line 1241, in https_open
context=self._context)
File "/usr/local/lib/python2.7/urllib2.py", line 1198, in do_open
raise URLError(err)
urllib2.URLError: