C#及VBNET开发的程序容易被反编译,所以要达到一个很好的加密效果,除了在源代码中检查加密狗(加密锁),或将程序部分代码放到加密狗(加密锁)中运行外,还强烈进行混淆及加壳,且建议用多种工具结合使用,这样才会安全,否则就很容易被反编译或反混淆。
对NET程序进行加密时需要用到以下四个工具:
加密流程如下:
1. 用Xenocode对要加密地程序进行混淆,生成混淆后假设名字为“X”的程序, 如下:
2. 混淆后假设名字为“X”的程序是封装成WIN32的NET程序,我们需要得到没有封装前的NET程序,所以接着做释出未封装前的NET程序的操作,运行X程序,再运行NETUnpack工具,如下:
3. 使用NET Reactor对U-X程序进行重新封装并加密后,生成程序R:
4. 用外壳加密工具10对程序R,再加密,生成{zh1}可发行的程序。