Re: Decompiling C#?!?!? Where is the privacy?

Tech-Archive recommends: Speed Up your PC by fixing your registry



Steven Nagy wrote:
> On this topic, my boss reckons he is gonna rewrite something he did in
> C# back as a managed C++ DLL because he thinks that he can protect the
> IP that way.

Ummm, why choose *managed* C++? The code will *still* be compiled to IL
which can be decompiled. Reflector will decompile IL to managed C++, or
to make it easier to read, C#. So compiling to managed C++ has no effect
whatsoever on protecting IP.

If your bosss said compile as unmanaged C++ then I might understand the
sentiment. However, you can still disassemble the code to x86
assembler...

No one will want to decompile *all* of your code, there is no point
because they may as well just sell your app under their own name.
Instead, the IP thieves will want to get the secrets of your special
algorithm. That will reduce considerably the amount of code that they
will need to analyse. At that point it *might* be economic for them to
analyse x86 code.

The point about decompiling is that it reduces the time that it takes
people to learn about your code. Moving to unmanaged code will merely
lengthen the amount of time, it will not remove it completely. (Its like
cryptography: you apply enough protection to make it uneconomic to break
the code.)

> But from the mass amounts of response in this thread alone, it sounds
> like that even his DLL will be reverse engineerable.
> If so, can someone give me an indicator of how, tools, or even a
> supporting topic from MS or anywhere reputable?
>
> (You see, I don't know much C++ and I don't want him to change the DLL
> so I need you to help me convince him to leave it as C# !!!!)

The only solution is to patent the code and then sue anyone who steals
it.

Richard
--
Fusion Tutorial: http://www.grimes.demon.co.uk/workshops/fusionWS.htm
Security Tutorial:
http://www.grimes.demon.co.uk/workshops/securityWS.htm


.



Relevant Pages

  • Re: ASP.NET 2005 hack-proof?
    ... Obfuscation is not fool-proof once the DLL is obtained. ... So, the amount of trouble, time, and expense to protect intellectual ... >> It will deter the casual decompiler, ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Word VBA obfuscation?
    ... > reason to protect your efforts. ... > Takes less than 5 minutes, without a password cracker. ... > Write code that installs the DLL, ... How do I create a DLL from a Word VBA project in Word? ...
    (microsoft.public.word.vba.general)
  • Re: Program protection - can not be copied
    ... The reason I cannot retrieve a dll from the image, ... That kind of thing might involve a filter driver or something ... I am trying to extract a DLL from an existing build. ... It seems that there is no any direct method to protect the program from ...
    (microsoft.public.windowsce.platbuilder)
  • Re: How do I stop my software from getting cracked?
    ... cracking it quite difficult for an inexperienced cracker. ... Write that DLL in a good ole C. Make calls into that DLL ... And it all depends on the software that you try to protect. ... commercial obfuscator for missile defence system software... ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: PostMessage from a DLL
    ... One way around this that I've used is to subclass within the DLL. ... class CMyPublicInterface: public CSomeWndClass { ... but it let me protect all the interface information so I could change the ... MVP Tips: http://www.flounder.com/mvp_tips.htm ...
    (microsoft.public.vc.mfc)