Game protection against cracks and piracy
#1
Posted 04 July 2006 - 12:23 PM
No solution ? Well there is
It is time to turn to time tested, EXECryptor protection product. EXECryptor is a powerful software tool that provide developers with software protection from reverse engineering, analysis and modifications. Its main difference from other protection tools is its brand new metamorphing code transformation technology.
With EXECryptor the protected code block is not just packed or obfuscated like many other packers, but also disassembled into nondeterminate transformations, effectively scrambling the visible logical code structure and making it hard to reverse. After the code transformation, it remains executable and working as it is supposed to but it cannot be analysed, modified, or circumvented.
It is not just a question about code encryption but also code transformation. You can optionally wrap additional parts of your code, at a source code level, in special flags which then transform into virtually impossible code to trace, crack, or bypass. Protected code blocks are never decrypted during execution they remain in their transformed code state. Code restoration becomes an NP-hard problem.
EXECryptor has the innovative very powerful antidebug, antitrace and import protection features to stop the latest cracking software.
EXECryptor allows to use short registration keys of 12/16 characters long, based on a new generation of our HardKey algorithm, cryptographically strong ultrashort digital signature.
The power of software protection with EXECryptor is proved out in practice: despite numberous cracking attempts and challenges, the EXECryptor's 2.x series has not been cracked since its inception in July of 2004.
In addition to its advanced protection features, EXECryptor allows you to compress the code and resources of your application.
EXECryptor is able to protect any 32bit PE executable file (exe, dll, bpl, vxd, wdm). It has been tested with W95/98/ME/2000/NT/XP/2003. SDKs are available for Delphi, C++Builder, Microsoft Visual C++, LCC, PellesC, Visual Basic, PowerBASIC and PureBasic.
EXECryptor is distributed electronically over the Internet; free trial version is available at http://www.strongbit.com for evaluation.
* Operating system: Windows 95, 98, ME, NT, 2000, XP, 2003
* RAM: 32 Mb
* Hard Disk: 2.5 Mb
EXECryptor Web Page: http://www.strongbit.com
#2
Posted 04 July 2006 - 01:46 PM
After all this is software you're talking about right?
Alex
#3
Posted 04 July 2006 - 02:02 PM
This is not to say that we should not protect our products at all, stopping the 'casual pirate' (as microsoft would say) can save substantial revenue.
It is interesting that they claim EXECryptor has the longest uncracked record right now (since july 2k4) but I was unable to find any titles listed using this scheme? Perhaps someone knows of some as it would be interesting to see if this is true in the game world.
#4
Posted 04 July 2006 - 02:48 PM
Alex said:
As I understand it, the processor instructions will be pseudo-randomly rearranged (while keeping the functionality intact) to hide it's true purpose to a would-be cracker.
#5
Posted 04 July 2006 - 04:29 PM
#6
Posted 04 July 2006 - 04:34 PM
#7
Posted 04 July 2006 - 04:43 PM
Alex
#8
Posted 04 July 2006 - 05:43 PM
Alex said:
Alex
Even a hardware-aided solution isn't 100% safe, AFAIK they tried that with Maya some years ago. Honestly I don't know how you can make an EXE 100% crack-safe - somewhere in your code you gotta do whatever checks you do to see if it's "genuine" - so you can simply jump over it. Even if it was incorporated into the OS somehow it'd still be possible. Even if it's encrypted, you could simply copy & paste the decrypted code in memory (at some point it must be decrypted).
Maybe the best thing one can do is to "generate" different encrypted EXEs for any given machine based on various properties of that computer. If done clever enough this may force ppl to crack every different EXE "version" - making cracked binaries distributions pointless. This means of course you'd have to switch to an online distribution system and have a pretty powerfull server farm to generate the different binaries.
But as usual, it's a trade-off type of thing - how much time do you wanna invest in that stuff and how much do you wanna piss off your "real" customers? And does it pay off?
#9
Posted 04 July 2006 - 06:38 PM
#10
Posted 04 July 2006 - 06:39 PM
Kenneth Gorking said:
If you're talking about Windows, that's not true. Site licenses for various companies all have one serial, if any at all.
As for unique identifiers, the closest I can think of is your MAC address on your NIC, but that can be faked, and you have to deal with the inevitable swapping/upgrading/defective NIC problem.
There's never an easy solution to it.
Personally, I view it like the breaking-into-my-car issue. I'm not going to make my car/app rock-solid impenetrable -- it's not worth the time. Just make it so that it's harder to break than the next guys, or more trouble anyhow, so people generally won't bother.
#11
Posted 04 July 2006 - 06:53 PM
#12
Posted 04 July 2006 - 06:56 PM
#13
Posted 04 July 2006 - 07:13 PM
That said, to retrieve it would probably require access through some API, which you could easily stub anyhow, if you wanted to 'cheat' it... And even if your game goes direct to assembler to read it, someone could simply stub out that check with a 'return true' at the appropriate point. Really - there's no such thing as security, just such a thing as *incredibly difficult to break*. ;)
#14
Posted 04 July 2006 - 07:17 PM
Kenneth Gorking said:
Like Windows XP was locked to a hardware configuration. That didn't help either. Software protection is a real waste of time, until you invest a few months in developing it, assuming that you have a wizard-like level of knowledge. And even then, it only delays your game being pirated, say, a few weeks, and probably less if your game is hot.
Hardware protection can be a bitch. Not meaning protections like:
if (!dongleAttached())
{
exit(0);
}
But rather placing calculations/algorithms that are crucial to your game in the dongle, preferable in an ASIC or something different that is hard to reverse engineer (comparing to reading the flash of a microcontroller). For the cracker it is a black box. With a lot of effort he can figure out how the results are used, but it would require a very broad knowledge.
#16
Posted 04 July 2006 - 07:44 PM
I was in the reverse engineering world and after i have seen i can tell that there is nothing can protect your application (except God of course).
Now even games protected by the big and expensive protection systems like Starforce (which need to install a ring-0 driver on your system :D) ,Securom ,etc... you can run the game even without a crack just use something like daemon-tools and voila the game runs like hell :) .
And about the diffeculty of cracking ,As soon as one person cracks the protection (In about 7-30 days after the releasing of the protection :) ) and release his idea to the public the protection system is usless.
#17
Posted 05 July 2006 - 03:20 AM
With today’s technology, the only thing you should do to eliminate piracy is the basic (free) tasks that prevent John Doe from giving games to his friends.
a) CD Detection
b) Serial Key for online play
Done…
Net Cost: 0
Net Time: At most one day’s worth. Once the framework is done, all future software can reutilize the code.
In the future, a thin-client, fat-server architecture will help to eliminate hackers and crackers all together. A model whereby the server runs the code and submits the results back to the client.
#18
Posted 05 July 2006 - 05:03 AM
TheNut said:
I hope you're not counting on anything like that happening in the near future.
#19
Posted 05 July 2006 - 07:45 AM
#20
Posted 05 July 2006 - 08:28 AM
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users


This topic is locked









