• 22-10-2021, 01:10:14
    #1
    Üyeliği durduruldu
    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);
  • 22-10-2021, 02:31:03
    #2
    Lzma api kullanabilirsiniz. Sıfırdan bir şifreleme algoritması yazılmasını ben önermiyorum. Tamam sıkıştırmak mesele değil fakat geri döndürme konusunda var olan algoritmalar dahi binlerce sekteye uğramış ve binlerce veri kayıpları yaşanmıştır. Fikir edinme açısından binlerce testden geçmiş ve çalıştığı onaylanmış önerdiğim bu apiyi kullanarak ve data bilgilerini saklayabileceğimiz bir header yaratarak kendimize has format oluşturabiliriz. Daha önce oyun dosyalarını saklamak için böyle bir format oluşturmuştum. Size de yardımcı olabilirim.
  • 23-10-2021, 04:13:31
    #3
    Üyeliği durduruldu
    SDClowen adlı üyeden alıntı: mesajı görüntüle
    Lzma api kullanabilirsiniz. Sıfırdan bir şifreleme algoritması yazılmasını ben önermiyorum. Tamam sıkıştırmak mesele değil fakat geri döndürme konusunda var olan algoritmalar dahi binlerce sekteye uğramış ve binlerce veri kayıpları yaşanmıştır. Fikir edinme açısından binlerce testden geçmiş ve çalıştığı onaylanmış önerdiğim bu apiyi kullanarak ve data bilgilerini saklayabileceğimiz bir header yaratarak kendimize has format oluşturabiliriz. Daha önce oyun dosyalarını saklamak için böyle bir format oluşturmuştum. Size de yardımcı olabilirim.
    Oyunun algoritması biraz farklı okuduğu için her şifrelemeyi kabul etmiyor oyun şimdi bu oyunun dosyaları .pkg uzantısında .pkg adlı dosyalar şifreli ve sıkıştırılmış dosya rar gibi düşün abi yüzlerce dosyayı sıkıştırıyor sonuç .pkg olarak çıkıyor 100 dosya 1 dosya olarak gözüküyor ama aynı zamanda bu dosya şifreleniyor bu .pkg dosyasının şifresini kırma ve dosyaları çıkarma uygulaması yapılmış açık kaynak var bu uygulamanın tam tersi yapılması lazım aynı şifreleme yöntemi kullanılarak sıkıştırma yapılması lazım bunu yapabilceksen buyur konuşalım.
  • 23-10-2021, 15:47:04
    #4
    Bana özelden detay verebilirseniz konuşabiliriz