Honza, on Oct 2 2010, 04:22 AM, said:
Nobody is capable of protecting it, the best they do is to postpone it for several minuutes, hours, days...
If anyone was capable of such thing he would be multi-multi bilionare.
Hmmm, well, on the iPhone it's technically possible since people usually attempt to get a decrypted binary by connecting a tiny 'debugger' to the actual running application to dump it in unencrypted form. If you made the app crash as soon as a debugger connected to it, technically people couldn't dump the unencrypted code, and therefore you couldn't actually pirate the game.
I have not heard of anyone actually doing that, though there have been instances where people check the encryption headers and if they're missing, it refuses to run. Of course, it's not all that hard to bypass if you know what you're doing... But if you could prevent people from dumping the binary to begin with, piracy wouldn't be possible. That also happens to be what a lot of the optical disc-based protections do... It wraps the encrypted executable and unencrypts them into memory if the check passes. This is where pirates usually come into the picture and dumps the unencrypted executable code back to a file.
Ummm, was that off topic? The long and the short of it is, it's not actually impossible if the platform makes it so, on the iPhone, you could actually do it... In fact, the approach was discussed in the Oolong engine mailgroups not too long ago. Unfortunately the PC is one of those platforms where you simply have too many tools available at your disposal to actually prevent it.