C#,VBNET开发的程序的加密方案

NET程序加壳说明

   C#及VBNET开发的程序容易被反编译,所以要达到一个很好的加密效果,除了在源代码中检查加密狗(加密锁),或将程序部分代码放到加密狗(加密锁)中运行外,还强烈进行混淆及加壳,且建议用多种工具结合使用,这样才会安全,否则就很容易被反编译或反混淆。

对NET程序进行加密时需要用到以下四个工具:

  1. Xenocode混淆工具
  2. NETUnpack工具
  3. NET Reactor工具
  4. 外壳加密工具10

加密流程如下:

1. 用Xenocode对要加密地程序进行混淆,生成混淆后假设名字为“X”的程序, 如下:


  • 运行Xenocode后,“Application”页中点“Add”添加要混淆的文件,如图:
  • “Application”页中“Preset” 设置中选中第二项:“Aggressive …. ”,如图:
  • “Protect”页中的“Coltrol flow Obfuscation” 选项中,设置为“4”,如图:
  • \"\"
  • “Optimize”页中保持默认,如图:
  • \"\"
  • “Virtualize”页中选中“Enable”,如图:
  • \"\"
  • {zh1}在输出页中,点“BuildApplication”,如图:
  • \"\"

2. 混淆后假设名字为“X”的程序是封装成WIN32的NET程序,我们需要得到没有封装前的NET程序,所以接着做释出未封装前的NET程序的操作,运行X程序,再运行NETUnpack工具,如下:

  • 运行混淆后假设名字为“X”的程序后,用NETUnpack工具进行释出,如图:
  • \"\"
  • 使用NETUnpack释出后的程序假设名字为:U-X
  • 这时释出来的U-X程序是不能运行的,运行会报错,我们需要将它重新封装起来

3. 使用NET Reactor对U-X程序进行重新封装并加密后,生成程序R:

  • 运行Net reactor,然后点open打开要转换的文件:
  • \"\"
  • 转换一定要选中以下选项:
  • \"\"
  • 其中“Native ExeFile”, “Pre-JITMethods”要选中EXE文件后,才可以出现
  • 其它选项,也可以选中(建议选中),不过其它选项,选中后,一定要测试一下,看是否可以运行,如果不能运行,可以将某些选项去掉,但前面的三个选项不能去掉
  • 然后点进行转换,
  • \"\"
  • 转换成功后,点打开转换后的文件

4. 用外壳加密工具10对程序R,再加密,生成{zh1}可发行的程序。

  • 加密时要用加密方式一,
  • \"\"
  • 如果转换后可以运行,加密后不能运行,可以改用壳二就可以了:
郑重声明:资讯 【C#,VBNET开发的程序的加密方案】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——