我们都知道,在.net的世界中,我们编写的代码都会被编译成IL代码,然后在运行时通过JIT编译成native code。而且有很多IL代码的查看器,例如ILDASM和Refactor。这些工具可以非常容易的查看IL,甚至还有一些工具可以通过IL直接生成源代码。
这些都对代码的安全提出了挑战。虽然我们可以利用混淆器来一定程度保护我们的代码,但是,如果代码被进行调试,还是有很多机会被别有用心的窥视其中的秘密。所以我们在混淆的基础上可以做进一步的防御。思路就是如何阻止做逆向工程的调试器来调试我们的代码。
具体思路和做法我们可以借鉴