March 27Mar 27 Localization I'm trying to decrypt the encrypted .json.pfenc files that you get when extracting uds00.ucp from any recent playstation PC port I already tried searching through the game executables & PlayStationSdk.dll but couldn't find the signature/magic number in them. I've also tried it with dynamic analysis but I'm not good enough in that yet to get anywhere useful, only thing I saw was that it uses the standard microsoft bcrypt.dll library. Seems to be built like this: u32 magic_number; // 95 95 9E E6 char uuid[0x24]; // ex.: 4b5b5128-f8dd-4cd1-bbba-1e12fb6b6063 u8 data[...]; // no byte alignment/block size Samples (archives named after source game): horizon_zero_dawn_re.zip last_of_us_2_re.zip lego_horizon_adventure.zip Edited March 27Mar 27 by NeoGT404
April 2Apr 2 Localization The UUID can be an IV for AES-128-CBC or AES-256-CBC. After removing the dashes, we get 32 characters(16 bytes). Which is perfectly fine, but without the key, we can't do anything.
April 5Apr 5 Author Localization It can't be AES CBC tho as it doesn't have a block size, I'd guess GCM or CTR, maybe XTS but highly unlikely Also one thing to note, these .ucp files have an unknown 0x10 long string of "garbage" @ 0x20: https://www.psdevwiki.com/ps5/index.php?title=Trophy00.ucp that could maybe be an IV, the uuid a nonce and the key is maybe gotten online through the PSN services?
Create an account or sign in to comment