Protecting my code from reverse engineering

后端 未结 8 1110
[愿得一人]
[愿得一人] 2020-12-29 16:47

As discussed in similar questions here and here I want to protect my code from reverse engineering.

My situation is as Simucal describes in his (excellent) answer h

8条回答
  •  忘掉有多难
    2020-12-29 17:08

    You can obfuscate it at the C# or CIL level but what is really going to make it impossible is that the IL compiler is designed to create the most efficient machine code that it can to actually execute.

    So, to reverse engineer your algorithm, get the machine code and run standard disassembly tools on it. Trace the data through the system by following it forward from the standard input API calls to the standard output API calls.

    Face it, if someone wants it, they can have it.

    You can make it hard to casually figure it out. For example, I wanted to see what was in some database managed by a Java application. It turned out that the Java decompile was really messy, full of odd functions and classes and namespaces all with the same names, intentionally trying to hide what was really going on.

    I could have fixed up the decompiler I was using so that it renamed everything as A_namespace instead of just A and then the function flow would have popped right out to the Eclipse call tracing graphs.

    Instead I just threw up my hands and got on with real work rather than rewriting decompilers.

    So, you can hide it from casually interested folks, sure.

提交回复
热议问题