File structure of wallet.dat I have a corrupted wallet.dat that is unreadable by pywallet and db5.3-util.
Having a look in the corrupted wallet in a hex editor, its easy to find the plaintext pubkeys.
Is the structure of the dat file such that it is possible to copy/paste sections of the corrupted wallet so that the key is now part of a new wallet file?
edit - it also seems useful to ask if there is any other manual process for key recovery?
There are various ways to extract and dump the private/public keys from a wallet.dat depending on how it became corrupted.
First, try to run -salvagewallet command to repair it.
If you have a tool to dump the mongo db, yes its possible to find possible keypairs (pub/priv) and dump them out using python tools. Of course you would need the passphrase for this.
What system are you using, mac, Linux, Windows, and what version was the wallet created with?