I’m using encryption in my program, that decrypts files if it needs to use it, and encrypts it after it done with the file.
But my files around 100mb, and it takes more than a minute to crypt them.
My question is, is it possible, to make my file unreadable, without encrypting the whole file? So, for example, just encrypting some byte, or I don’t know how to do it. I need to reduce my decrypting time. Thanks a lot!
Edit1:
Sorry, forgot. The file iam talking about, is MPQ files, that a game using (wow), to read from it model files, music , etc… so its not a text file. It can be opened by a special program (MPQ Editor).
I edited some files, and I made my own MPQ file, and I want to protect it from other users, to open it with MPQ Editor. My program can open mpq files too. But the mpq file is created with this mpq editor thing. I just want to make it unreadeably to mpq editor. And if my program will use it, it should decrypt it, and if my program done with the MPQ file, it should encrypt it again, to block others to edit it.
Edit2:
Ok, to make it clear. There is a program name world of warcraft. It reads game files from MPQ files, MPQ file is developped by Wow (Blizzard Co) , but It can be opened by some programs, editors. I’ve got an edited MPQ file, (replaced music) and I uploaded it to my server. My program downloads it to other players game folder, and they will got this change ingame, like me 🙂 They will hear other musics too. (just example.) But I dont want them to edit / or see my MPQ file with any editor program, so I implented a simple encryption , decryption to my program. My MPQ file is uploaded encrypted to my server. When they start the game, my program decrypts the file (yes, they will be able to edit it now, but they dont know this 😛 , its basic security), so the game will reckognise the MPQ file, and it will load it , with the changes within it. When the game program closes, my program encrypts back the patch, so it will be unreadable again. I hope you understand the process. The thing is, my MPQ (patch) file is ~100mb big. It means, it takes ~1minute to encrypt / decrypt them. And this is what I want to replace, the crypting method. Must encrypt it with something better method, and decrypt it when it needed.
I don’t know anything about mpq files, but my first question would be, “how does the editor recognize that this is an mpq file?”. If it is, for example, that there is a certain value in the first 3 bytes, just change those bytes and the editor will fail. Change them back and you can read it. Voila. If some other mechanism, same logic.
The point being, the file does not need to be encrypted at all – merely tweaked so that the mpq editor will not recognize it as a valid file for opening.