Pages:
Author

Topic: Bitcoin private key/wallet.dat data recovery tool! - page 4. (Read 68804 times)

newbie
Activity: 7
Merit: 0
I tried this, but it isn't working for me.

I downloaded SystemRescueCd  ---> http://www.sysresccd.org/SystemRescueCd
I booted from a DVD and went straight to the GUI, had terminal open, typed in exactly what is written in the OP and I get an error in terminal.

After I type the part with "sudo ....."
Terminal responds with:

zsh: correct 'sudo' to '_sudo' [nyae]?

If I press y: _arguments:comparguments:312:can only be called from completion function
If I press n: zsh: command not found : sudo

I have 4 hard-drives and 1 SSD. I disconnected all of them and connected the 1 hard-drive that I need to run the recovery tool on (this HDD is not bootable). It's not connected to the number 1 SATA port on the mobo. Does this therefore affect the part of the code with:  '/dev/sda'? Or what's going on?
newbie
Activity: 16
Merit: 0
Hello! any chance to get this tool working with crypted wallets?
NRF
sr. member
Activity: 279
Merit: 250
Edit: Updated to create a new wallet.dat with the recovered keys.
Edit 2: New v0.2 release, new instructions. Note that this still can't recover encrypted wallets!
Edit 3: v0.3 release to support the compressed public keys created by recent Bitcoin versions. Still can't recover encrypted wallets.

Sorry for doing a necro, but this is a great little bit of code!  Sucks the private keys directly out of a drive, does not care about file system, OS's or anything!  I just had to sub to it.

I have already put it onto my Recovery USB and tested several different scenarios.  Any ideas on how/when you are going to implement support for encrypted wallets?  I think that encrypted wallets is the last thing left and then this will be the ultimate key recovery tool.

Thanks
hero member
Activity: 686
Merit: 564
Does it matter what file system is on the HDD that we are attempting to recover from?
Not particularly, so long as it's not encrypted or compressed. Some filesystems may give a better chance of success than others though.
hero member
Activity: 504
Merit: 500
Does it matter what file system is on the HDD that we are attempting to recover from?
hero member
Activity: 686
Merit: 564
Finally got around to adding the compressed public key support required to recover wallets created by Bitcoin 0.6 and up.

windows version?
Afraid not, sorry.
full member
Activity: 168
Merit: 100
windows version?
newbie
Activity: 37
Merit: 0
I haven't looked at the details of how your code works, so I can't be sure, but there is a possibility that you could save yourself some maintenance effort on it if you put it together as a magicrescue recipe...  Magicrescue scans block devices looking for particular sigils to recover certain kinds of files, and then calls arbitrary scripts to extract them.  I don't know if it would make anything easier or not, but it might be worth a look.

Edit:  Also, This seems donation-worthy, but I'm not seeing an address listed...
hero member
Activity: 686
Merit: 564
Finally got around to rolling a new v0.2 release of this:
  • The binaries are now compiled with gitian-builder, which means it now comes with both 32-bit and 64-bit binaries
  • How the binary release is packaged has changed; it now comes as a tarball rather than a bare archive. The instructions have been updated to match.
  • Internal changes to make the code more portable and hopefully increase the chances of successful recovery slightly. No Windows release yet though.
  • May be able to recover wallet private keys from some versions of BitcoinJ, though it's rather hacky and they've changed their wallet format at least once
hero member
Activity: 686
Merit: 564
I don't know how to even get a copy of the wallet.dat off of the phone, I've left it untouched for two months taking up phone space.
I think the "easiest" solution is to install adb and use adb pull to copy it off. In fact, a quick google turns up these instructions. I'm not sure if this is the right Bitcoin app, but if it is then it appears it may have files with plain-text Base58 copies of the private keys you can copy off - that'd save a lot of hassle! Presumably you'd have to change the command to:

Code:
adb pull /data/data/de.schildbach.wallet/files/key-backup-base58
legendary
Activity: 1708
Merit: 1007
I don't know how to even get a copy of the wallet.dat off of the phone, I've left it untouched for two months taking up phone space.
hero member
Activity: 686
Merit: 564
Would a bounty help to encourage your efforts?
Dunno. The main obstacle is that Java is involved. In particular, the wallet file uses Java's own serialization support which seems to be both poorly-documented and a pain to deal with.

If you've got or can obtain a (non-corrupt) copy of the .wallet file from the phone in question, then it looks like bitcoinj already has a tool for opening it and printing the private keys, and that's probably the easiest option:

Code:
java -classpath bitcoinj-0.2.jar:bitcoinj-0.2-sources.jar:../lib/* com.google.bitcoin.examples.DumpWallet pingservice-prodnet.wallet

Wallet containing 0.00 BTC in:
  0 unspent transactions
  0 spent transactions
  0 pending transactions
  0 inactive transactions
  0 dead transactions

Keys:
  addr:1H6s7S2GS6DHDvZgQN5ufxMYj76bMMpHxh pub:044bec72bf6c0be93ffefb154ffce6622317527c8d0f78cd3c5b47f5c15af7f5750b2e1ccde5a827c83e89ef67ca1262bfa5427b732332c41104cc7483e756a0d6 priv:00fd6e40862973730e97be5b6ab08ef8ca02a3575f8c95858dcec51d88058a0839
legendary
Activity: 1708
Merit: 1007
Any possibility that this recovery tool can be used to scan an Android phone for the keys of an android client that no longer will properly update?
Not currently, no. It is/was on my TODO list to add this feature to it, but I haven't got around to it yet. (A lot of users of the Android client have been running into difficulties.) The Android client - and bitcoinj-based clients in general - store private keys in a more compact format than the official Bitcoin client does.

Would a bounty help to encourage your efforts?
hero member
Activity: 686
Merit: 564
Any possibility that this recovery tool can be used to scan an Android phone for the keys of an android client that no longer will properly update?
Not currently, no. It is/was on my TODO list to add this feature to it, but I haven't got around to it yet. (A lot of users of the Android client have been running into difficulties.) The Android client - and bitcoinj-based clients in general - store private keys in a more compact format than the official Bitcoin client does.
legendary
Activity: 1708
Merit: 1007
Any possibility that this recovery tool can be used to scan an Android phone for the keys of an android client that no longer will properly update?
member
Activity: 112
Merit: 11
Hillariously voracious
Wow, good one.

Any chance of a windows build ?
hero member
Activity: 686
Merit: 564
debian squeeze amd64 users will need this:
aptitude install ia32-libs
That's useful to know. Probably makes sense too... the canned instructions were mainly aimed at users running from random 32-bit LiveCDs.

i got my btc back, thanks again for speeding the process along makomk :-)
Was glad to hear it helped someone - and thank you for the donation, by the way!
member
Activity: 84
Merit: 14
debian squeeze amd64 users will need this:
aptitude install ia32-libs

i got my btc back, thanks again for speeding the process along makomk :-)
hero member
Activity: 588
Merit: 500
Source code?
Yep, follow the second link - it's in a git repository here (because I've set up so many of those by now I can almost do it in my sleep). A bit messy, but the code should be reasonably straighforward.

Ah, your prose did not make it clear that that was a source code repository. Sorry.
hero member
Activity: 686
Merit: 564
Source code?
Yep, follow the second link - it's in a git repository here (because I've set up so many of those by now I can almost do it in my sleep). A bit messy, but the code should be reasonably straighforward.
Pages:
Jump to: