PDA

Click to See Complete Forum and Search --> : [Delphi]Protecting your application from crackers


Madboy
Jul 21st, 2005, 06:15 PM
Here is something very useful i thought id share with you:

http://www.codeguru.com/forum/showthread.php?t=345476&highlight=Delphi

StrangerInBeijing
Jul 22nd, 2005, 12:16 AM
The link is actually an advertisement for some code protection product, so one has to be careful to believe everything they claim.

I am no expert on this topic, but this is the impression I got from reading about decompiling applications (I’m on .Net apps now).

One can open any exe written in .net with the ILDASM tool that ships for free with the framework. Anyone with some knowledge of MSIL can then see how your application does its job. I even read about some tool that convert the MSIL to any higher-level language such as VB, C#, etc, but unfortunately lost the link.

What I also remember, is that one can use a tool that “encrypt” your code, but from what I understood, it just take your descriptive member names (variables, methods, classes) and replace that with some other unique names, that make it difficult to read.

I would like to hear if there’s anyone that knows of a fail-proof way to secure your code.

StrangerInBeijing
Jul 22nd, 2005, 12:22 AM
Well, call me StupidInBeijing.....the link I talked about was in my signature! :p

You can read the whole article (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnhcvs03/html/vs03k1.asp), but here's the part I've mentioned:
So if you can use a disassembler to turn the binary format of IL into something readable, would it be possible to convert IL back into the original source code in C# or Visual Basic .NET—to decompile it? Of course the answer is yes, it's possible. But it's a much more complex and error-prone process.

If you're interested in decompilers, check out Anakrino at www.saurik.com/net/exemplar. It takes any .NET executable file and decompiles it into C#—whether it was originally written in C#, Visual Basic .NET, or some other .NET language. I even fed it something I wrote by hand in IL, and it converted it into a compilable C# program that worked!

Believe it or not, you can even use Anakrino to decompile the source code for the methods in the .NET Framework Class Library.

Of course, decompilers set off alarm bells in the minds of many. It's like giving away your source code! And that's exactly why Visual Studio 2003 comes with an obfuscator. Obfuscators scramble the binary IL so that it can't easily be disassembled or decompiled, yet it still runs correctly.

Madboy
Jul 22nd, 2005, 04:16 AM
hehe, you talking to yourself?!

nkad
Jul 25th, 2005, 04:13 AM
Unfortunatly, no amount of protection will keep crackers at bay. It's just the nature of software.

Madboy
Jul 25th, 2005, 06:45 AM
Yeah, but why give it to them on a plate?

StrangerInBeijing
Jul 25th, 2005, 09:25 PM
Yeah, but why give it to them on a plate?

Because they eat from the floor anyhow...

Do what you can to protect your code and stop flattering yourself making yourself and everyone else believe your code are so wonderfull, it just gotta be stolen.