Re:With 10 pirated copies for every 1 sale, iOS dev pulls ga...
by davedx on Tuesday December 04, 2012 @11:52AM
(#4871798)
It sounds like you have a lot of experience in this area. I admit I've only really touched on it before on projects I've worked on. Do you know if there's any good books or online guides on this subject, as I find it quite hard to devise these systems myself?
Re:With 10 pirated copies for every 1 sale, iOS dev pulls ga...
by huhtenberg on Tuesday December 04, 2012 @12:39PM
(#4872079)
You may want to go through fravia.org archives. It's old, but basic protection principles don't change that quickly (or, looking at it from the other end, rudimentary cracking techniques are the same as well).
Re:With 10 pirated copies for every 1 sale, iOS dev pulls ga...
by davedx on Tuesday December 04, 2012 @01:45PM
(#4872508)
Looks like the domain expired? Oh well, thanks anyway :)
Re:With 10 pirated copies for every 1 sale, iOS dev pulls ga...
by huhtenberg on Tuesday December 04, 2012 @01:58PM
(#4872613)
archives
If it's an online game, the license check is performed on the server side and no amount of clever client cracking won't get around that. When you buy a license, the licensing server associates some sort of ID with your installation, the same ID that must be presented to the server for an online play. No valid license -> no valid ID -> no online play. That's how all massive online games with free clients work. Easy-peasy. The question here is what can be used as an ID in case of iOS games, but, again, this is a solvable problem.
Moreover, the same scheme applies to the standalone software, except there's an extra step involved with strengthening the executable against any modifications. What Photoshop did is the lamest thing possible (and I think it's a valid theory that they did it on purpose to facilitate the piracy rather than to curtail it). A simple option is to sprinkle 100s of conditionals around the code (with a simple pre-processing script if need be), do not issue any sort of messages, but instead just make the code corrupt heap, stack and do other things that would cause the program to go down after a while. Then simply sign the executable. This is very effective. For every complain in the support forums that the program crashed (and a crash dump that shows the absence of a valid file signature), there's a automatic reply that it's a cracked copy, you get what you paid for.