New encrypt methods
Closed this issue ยท 10 comments
Klab added v4-v9 encryption in SIFJP v4.3
because of the 4.3 update
So any idea? V3 key table was not changed at all!
After some research I find out in a V3 encrypted file, the 8th byte in header determines which encryption method to be used, V3 is 0, new ones are 2
But I have no luck process any more because I'm not good at this at all, can't find the shift param used in V4 (the only difference with V3)
I need some help in this part. It seems the new encryption is way more complex.
Ok here is some notes for the new V4-V9 decrypter:
-
V4, V5, V6, and V7 decrypter shares same table. V3 uses completely different table
-
The V3+ algorithm is Linear Congruential Generator, but instead of modulo, shift is used to truncate the bits. V3 LCG initialization value is same as Microsoft Visual C++ (MSVCRT) while V4+ LCG initialization value is same as (older) glibc LCG.
-
V8 and V9 decrypter are simply stubs. V7 decrypter seems Lua-based(?)
-
I happily accept fixes on v5-beta branch for this. d2eac1c
It's fixed now. Try HM 5.0.0
The EN also updates their encryption now similar with jp, i tried to copy the jp_lng_key_tables to en_decrypter then compile, the decryption works(i think) but the encryption doesn't work the header is wrong also if the size is changed. So please update EN dec/enc
No, I won't support WW decryption v4 and later. See #12
oh ok.
anyway, i think i already got it working. thanks for this great program.
The EN also updates their encryption now similar with jp, i tried to copy the jp_lng_key_tables to en_decrypter then compile, the decryption works(i think) but the encryption doesn't work the header is wrong also if the size is changed. So please update EN dec/enc
Hello, you've already found a way to decrypt assets? I wonder how it works now for EN version 9.4