Prison Princess Save files (*.svd)

Reading, editing and everything related to the files created by games to contain savegames and configurations
Ekey
Posts: 1383
Joined: Sat Aug 09, 2014 2:34 pm

Prison Princess Save files (*.svd)

Post by Ekey »

Saves location in >

Code: Select all

C:\Users\USERNAME\AppData\LocalLow\qureate\Prison Princess\

svd is a encrypted JSON file

Snipped code for decrypt and encrypt on CSharp

Code: Select all

        public byte[] Encrypt(byte[] binData)
        {
            RijndaelManaged rijndaelManaged = new RijndaelManaged();
            rijndaelManaged.Padding = PaddingMode.Zeros;
            rijndaelManaged.Mode = CipherMode.CBC;
            rijndaelManaged.KeySize = 256;
            rijndaelManaged.BlockSize = 128;
            byte[] rgbKey = new byte[0];
            byte[] rgbIV = new byte[0];
            rgbKey = Encoding.UTF8.GetBytes("w5qdv9jr7a6is98235kiqvhuhfqncacf");
            rgbIV = Encoding.UTF8.GetBytes("ptmcyvrtk2c83yji");
            ICryptoTransform transform = rijndaelManaged.CreateEncryptor(rgbKey, rgbIV);
            MemoryStream memoryStream = new MemoryStream();
            CryptoStream cryptoStream = new CryptoStream(memoryStream, transform, CryptoStreamMode.Write);
            cryptoStream.Write(binData, 0, binData.Length);
            cryptoStream.FlushFinalBlock();
            return memoryStream.ToArray();
        }

        public static byte[] Decrypt(byte[] binData)
        {
            RijndaelManaged rijndaelManaged = new RijndaelManaged();
            rijndaelManaged.Padding = PaddingMode.Zeros;
            rijndaelManaged.Mode = CipherMode.CBC;
            rijndaelManaged.KeySize = 256;
            rijndaelManaged.BlockSize = 128;
            byte[] rgbKey = new byte[0];
            byte[] rgbIV = new byte[0];
            rgbKey = Encoding.UTF8.GetBytes("w5qdv9jr7a6is98235kiqvhuhfqncacf");
            rgbIV = Encoding.UTF8.GetBytes("ptmcyvrtk2c83yji");
            ICryptoTransform transform = rijndaelManaged.CreateDecryptor(rgbKey, rgbIV);
            byte[] array = new byte[binData.Length];
            new CryptoStream(new MemoryStream(binData), transform, CryptoStreamMode.Read).Read(array, 0, array.Length);
            return array;
        }
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Prison Princess Save files (*.svd)

Post by aluigi »

Is this correct?

Code: Select all

encryption "DecryptFinal aes_256_cbc" "w5qdv9jr7a6is98235kiqvhuhfqncacf" "ptmcyvrtk2c83yji"
get SIZE asize
log "decrypted.dat" 0 SIZE
Ekey
Posts: 1383
Joined: Sat Aug 09, 2014 2:34 pm

Re: Prison Princess Save files (*.svd)

Post by Ekey »

I think it will work.