DotFuscator使用小记

最近在做源代码加密保护的任务,第一次接触这方面的东西,主要使用的是Dotfucator和Reflector.有一些心得,和大家交流一下.
      在.net之前,源代码被直接编译为机器码.而在.net环境下,源代码被编译为中间语言(IL),在实际运行的时候,才转换为二进制本地码执行.而中间语言(IL)是很容易被反编译的..NET自己就带着一个查看IL的工具ILDASM. 
      VS2005自带一个保护源代码的工具DotFuscator,是社区版的,只有基本的混淆命名的功能.专业版功能很多,可以混淆流程,加密字符串,加入水印,程序签名等,可惜太贵~..~(好像一个授权要30k),只好找破解版的来学习一下.
      社区版的DotFuscator使用很简单,从VS2005集成开发环境-->工具-->DotFuscator Community Edition,打开后不用注册可以直接使用.在输入选项卡中导入一个dll或者exe文件,在生成选项卡中输入输出目录,直接点击生成即可.想复杂也不成,因为其他的功能基本都是灰的,要专业版才行.
      专业版的可选项多一些,除了可以对名称进行重命名,还可以混淆流,打乱程序原有的结构,但保持逻辑不变.混淆后的代码用Reflector查看,会发现都是一堆goto语句,很难理解.还可以加密字符串,一些敏感信息,例如数据库连接字符串等,如果不加密,很容易被找到并非法利用.也可以在代码中加入水印,如果公司信息,版权标志等.加入水印不会影响程序原有代码的执行.DotFuscator提供一个工具用来查看程序集中的水印premark.exe,可以在DotFuscator的安装目录下找到.也可以对水印进行加密.DotFuscator还可以对程序集进行强名称签名,防止程序集被非法篡改.

再给两个图:

DotFuscator使用小记_第1张图片

DotFuscator使用小记_第2张图片

你可能感兴趣的:(加密,.net,数据库,exe,语言,工具)