Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > .NET > C#.NET > DotNET的混淆器--Dotfuscator的使用说明
【标  题】:DotNET的混淆器--Dotfuscator的使用说明
【关键字】:DotNET,--Dotfuscator
【来  源】:http://blog.csdn.net/Mittermeyer/archive/2006/08/24/1112406.aspx

DotNET的混淆器--Dotfuscator的使用说明

Your Ad Here
由于.NET体系结构的特殊性,为了保护源码,混淆器被提到了一个很高的地位,Visual Studio 2003就自带了一个混淆器--Dotfuscator Community Edition。
Dotfuscator Professional Edition能够提供了流程模糊、字符串加密、冗余属性的裁剪等;但是Dotfuscator Community Edition,作为一个免费的版本,功能是在世乏善可陈,除了名称的变化之外,好像什么都不能干了。不过有聊胜于无,穿着内衣上街总比什么都不穿要好点。
 
1、简单的介绍一下使用方法。
Dotfuscator的工作原理似乎是先将一个组件反编译成为中间代码(il),按照规则修改其中的内容,比如名称变化,然后再重新编译成为克执行的组件。所以最简单的使用方法就是在Visual Studio 2003的集成环境中运行。工程编译完毕后,通过Tools->Dotfuscator Community Edition启动Dotfuscator,如下界面:
其中“Controil Flow”、“String Encryption”和“Removal”标签Community版本是禁止的。所以用法也很简单在Trigger中选择需要混淆的组件,指定输出目录,构造就可以了。
 
a) 选择混淆的组件
单击Browse按钮选择一个dll或者exe文件即可。
 
b) 选择目标输出的路径。
单击构造按钮就开始工作了。
 
c) 查看输出结果
切换到Output的标签,可以看到混淆所影响的变量和方法,如下图。
 
d) 一个简单的C#窗口应用的混淆结果
public class a : Form
{
      // Methods
      public a();
      private void a();
      protected override void a(bool A_0);
      private void a(object A_0, EventArgs A_1);
      private void b(object A_0, EventArgs A_1);
      [STAThread]
      private static void Main();
 
      // Fields
      private Button a;
      private Button b;
      private Container c;
}
 
private void a(object A_0, EventArgs A_1)
{
      MessageBox.Show(this, "\u8fd9\u662f\u4e00\u6bb5\u4e2d\u6587\u7684\u6d4b\u8bd5\u7a0b\u5e8f\uff01");
}
注:字符串会转换成为Unicode编码的形式,这点不错。

 
2、进一步了解
a) 在Options标签下还有几个选项,
Investigate:检查模式,只生成转换表查看影响的结果,不生成混淆后的输出文件。
Library:类库模式,在类库模式下公共类的公共属性和方法将不会被修改名称。
Quiet:安静模式,在转换过程中没有输出信息。
Verbose:详尽模式,在转化过程中输出详细的信息。
 
b) 名称修改的规则。
在图形界面的“Rename”标签里,可以手动去设定一些函数的名称不变化,还可以选择是否保留命名空间或者每个类的层次结构。
 
c) Dotfuscator的工程。
对一个或者多个.NET组件进行混淆的过程可以保存成为一个工程,工程文件就是一个XML文档,里面包含了设置的转换规则。
 
总之Dotfuscator是一个比较简单的工具(有图形界面的工具通常都不复杂),如果要求不高总能起到一些作用的。
 
创建VS.Net可插拔组件:【上一篇】
A Quick Way to Copy DataRow:【下一篇】
【相关文章】
  • DotNet应用自动部署技术详解
  • Java调用DotNet的webservice
  • DotNet中解压缩ZIP和RAR文件
  • DevComponents.DotNetBar 5.9.0.2 patch For .Net framework 2.0 is coming.
  • [原创] DotNet探密 之: CodeDOM [代码文档对象模型]
  • DotNet之优秀工具
  • ibatisnet in dotNet 2.0 开发心得
  • DotNet软件开发框架
  • DotNet剖析系列(二)——控件继承
  • DotNet界面实现学习纲要
  • 【随机文章】
  • Mandrake10.1全解压硬盘安装
  • 3ds Max 制作卧室效果图(1)
  • 博客技巧--添加搜索引擎代码
  • Windows 2000无盘网故障解决方法(3)
  • Decorator模式
  • 尽管Theo de Raadt是开源软件运动的先驱并且极力倡导免费软件,但是他并不是
  • ASP.NET编程实例ABC(3)
  • 理解Linux的启动过程
  • STL学习之二:STL内存工具(一)
  • CppUnit的缺陷与改进
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.