最近总是在听说DLL混乱器一说,说是在.net里面能够混乱DLL,防止别人反编译,谁能告诉我DLL混乱器在哪里?是.net自带的么?

解决方案 »

  1.   

    你自己反编译过.net源码么?如果没有,就很难跟你说清楚了。
      

  2.   

    混淆不是不能反编译,是编译后很难看懂
    vs自带一个
    工具->dotfuscat
      

  3.   

    就vs。net里自带的有
    在net的工具里有!
      

  4.   

    工具Tools->Dotfuscator Community Edition
      

  5.   

    VS.Net自带的混淆器很不好用,基本上达不到混淆的作用!
      

  6.   

    vs.net 带的 Dotfuscator是不能用的!!!因为,他只能混淆命名。但是,对于 public 和protect 的命名真正的项目中是不敢混淆的。对于private的命名,他混淆了气势没有用,因为好的程序中每个函数只有很短的几条、十几条语句,功能单一。从public的接口的含义往下分析,简单地前后看程序逻辑就能迅速猜出混淆的 private 函数名的真实意思。Dotfuscator 的商业版本有流程混淆,这才是真正有点难度的混淆。
      

  7.   

    Dotfuscator Community Edition 的混淆仅混淆函数命名,并且我上面说过了,对于分为多个 dll 的工程,特别是用到 gettype 或者 assembly.gettypes 的,绝对不敢对公共接口混淆。即使把接口混淆为单个字母了,打开函数照样看得清清楚程序代码,一点没变。这种混淆不是很可笑么,此地无银三百两!真不知道微软是傻还是故意装的,竟然让这样的产品作为 .net 的基本配置。
      

  8.   

    MaxtoCode 混淆的不错,这惜速度实在
      

  9.   

    我也用XenoCode,最好用2004的,2005的混淆以后程序集胖了不少
      

  10.   

    Xencode混淆其可以选择“程序集胖”的尺寸呀!有些混淆器仅仅对外部程序读取类型和代码信息的入口设置错误陷阱,也号称是最强大的混淆器。最本质的是流程的混淆,除此以外上面说的“最强大”的那种其实明不符实,又很容易的方法让错误并不阻挡读取代码。