Is there a known way to export my wallet private key from the "Bitcoin Android" app (com.bitcoinandroid)? A while back, I installed the Bitcoin Android app and moved 5 BTC on it. Fast forward to now, new phone, new ROM, and the app seems completely unwilling to update its blockchain, meaning I have no way to move my BTCs  elsewhere.

Looking at the source, it's built on an early version of BitcoinJ, where the wallet file is essentially a serialized Wallet class.

A look at the wallet file itself isn't too friendly, although I'm sure the private key is somewhere in there in a relatively straightforward form.

So, that leaves me with the following possibilities:


write a little Java app that links against the same version of BitcoinJ, load the Wallet file, grab the private key and print it.
write a really dumb script that extracts every 32 bytes sequence from the wallet file, treat it as a private key, map it to a public key, check blockexplorer.com for any activity associated with it. Or just import every one of those sequences into a bitcoin client and let it suffer.


Before I embark on my Quest For Five Bitcoins, is there already something out there that can parse BitcoinJ wallet files and export keys from them?
I would try option 1 first, if you can find the right version of the library.  I'd be willing to try making a general purpose tool to do it, but don't have an Android phone.  Is there any way you can make a new, empty wallet and put a copy online somewhere along with a corresponding bitcoin address or two?

If you're attempting option 2, you probably know at least one of the addresses in the wallet, and so wouldn't need to hit blockexplorer for every guess.  You would expect the private keys to be evenly spread through the wallet, so once you've found a few you can make smarter guesses about where the rest are.