Sooooo I accidentally removed a PARAM.PFD from one of my save games (Drakengard 3) through FTP. Immediately afterwards I copied whatever remained to a different location (not on the PS3) so I could work on restoring the save data to a working state. The PFD should only contain file signatures/hashes so I figured it would be pretty straightforward to fix: copy a PARAM.PFD from a different Drakengard save and run pfdtool -g NPUB31251 -u SAVEDIR_PATH.
When importing this newly edited save to the PS3 from USB (to prevent the need for a full database rebuild, which takes much longer) it accepts it as good, but when I load up the game all game files are blank. I don't get a warning about the data being corrupt though. I deleted all saves off the PS3 and recreated a blank one for comparison, then went on to download a save off the net as well.
For some reason, the original save decrypts to something entirely different than the blank and downloaded ones. I'm assuming the game simply discards this unknown data and handles it as if it were a blank save. I've compared the first few bytes of every file against known file headers/signatures and it doesn't seem to be a compression of some kind. Some online tools reported some of them as being PGP-encrypted but I don't think that's actually the case, although it does look like another layer of packing/encryption. Just to be sure I also verified that all tested save files use the same encryption key (secure_file_id).
I've attached the PAYLOAD files (both encrypted and decrypted) for the original save as well as the one I've downloaded off the net. I only worked with copies of the backed up save data so the attached encrypted PAYLOAD should be exactly the way it was when it was still stored on the PS3's internal HDD.
My PS3 firmware is 4.87 CEX PS3HEN 3.02. Hopefully someone can tell me how to get my save data back. :>
When importing this newly edited save to the PS3 from USB (to prevent the need for a full database rebuild, which takes much longer) it accepts it as good, but when I load up the game all game files are blank. I don't get a warning about the data being corrupt though. I deleted all saves off the PS3 and recreated a blank one for comparison, then went on to download a save off the net as well.
For some reason, the original save decrypts to something entirely different than the blank and downloaded ones. I'm assuming the game simply discards this unknown data and handles it as if it were a blank save. I've compared the first few bytes of every file against known file headers/signatures and it doesn't seem to be a compression of some kind. Some online tools reported some of them as being PGP-encrypted but I don't think that's actually the case, although it does look like another layer of packing/encryption. Just to be sure I also verified that all tested save files use the same encryption key (secure_file_id).
I've attached the PAYLOAD files (both encrypted and decrypted) for the original save as well as the one I've downloaded off the net. I only worked with copies of the backed up save data so the attached encrypted PAYLOAD should be exactly the way it was when it was still stored on the PS3's internal HDD.
My PS3 firmware is 4.87 CEX PS3HEN 3.02. Hopefully someone can tell me how to get my save data back. :>