c++ uzmanı lazım arkadaşlar
iş : rar gibi ama sadece sıkıştırma uygulaması yaptırılcak sıkıştırıldığında uzantısı .pkg olacak ve şifreli olucak şifreleme türünü biz vereceğiz o türde şifreleme yapabilcek varsa buyursun.

örnek .pkg şifresi kırma ve çıkarma

p_PKG_Path = "e:GamesCounter-Strike Online 2/Data/06c2458c2c24beb0b08e45e1ea3874e.pkg"; char* p_PKG_Name = "006c2458c2c24beb0b08e45e1ea3874e.pkg" char* p_PKG_Password_1 = "kbuj37shgh&@4n!2;"; char* p_PKG_Password_2 = "[wospo-02i"; char* p_PKG_Set_Password_1 = p_PKG_Password_1 + p_PKG_Name; char* p_PKG_Set_Password_2 = p_PKG_Password_2 + p_PKG_Name; char* p_PKG_Hash_Password_1[16]; // 6f24769ebe7c9acc6328ad7d3be1ebc3 char* p_PKG_Hash_Password_2[16]; // 4422261f9839d54f7fece6448b062522 string p_PKG_Key; string p_PKG_Iv; 1 ) Open -> p_PKG_Path 2 ) Get Name -> p_PKG_Name 3 ) Set Password 1 -> p_PKG_Set_Password_1 4 ) Get MD5 hash from Password 1 = MD5Init(&ctx); MD5Update(&ctx, p_PKG_Set_Password_1, strlen(p_PKG_Set_Password_1)); MD5Final(p_PKG_Hash_Password_1, &ctx); 5 ) Set Password 2 -> p_PKG_Set_Password_2 6 ) Get MD5 hash from Password 2 = MD5Init(&ctx); MD5Update(&ctx, p_PKG_Set_Password_2, strlen(p_PKG_Set_Password_2)); MD5Final(p_PKG_Hash_Password_2, &ctx); 7 ) p_PKG_Key = 6f24769ebe7c9acc6328ad7d3be1ebc3 8 ) p_PKG_Iv = 4422261f9839d54f7fece6448b062522 9 ) Set Key / Iv and Decrypt data = p_PKG_Iv = 4422261f9839d54f7fece6448b062522 -> 7fece6448b062522 - also need reverse p_PKG_Key = 6f24769ebe7c9acc6328ad7d3be1ebc3 -> 6f24769ebe7c9acc >>> pkg_aes_decrypt(int ctx, int pKey, int*pIV, int dwKeySize, int dwBlockSize) <<< pkg_aes_init(&context, pKey, pIv, 16, 16);