惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

M
MIT News - Artificial intelligence
雷峰网
雷峰网
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Last Week in AI
Last Week in AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
阮一峰的网络日志
阮一峰的网络日志
月光博客
月光博客
博客园 - Franky
腾讯CDC
T
Tailwind CSS Blog
Recent Announcements
Recent Announcements
V
V2EX
N
Netflix TechBlog - Medium
量子位
Jina AI
Jina AI
Y
Y Combinator Blog
The GitHub Blog
The GitHub Blog
G
Google Developers Blog
爱范儿
爱范儿
博客园 - 叶小钗
D
Docker
MongoDB | Blog
MongoDB | Blog
D
DataBreaches.Net
T
The Blog of Author Tim Ferriss

博客园 - 上校

gitea设置 在Cocos Creator 项目里安装 cocos-mcp-server nginx安装教程 nacos安装教程 minio安装教程 GIT笔记 CC教程 芋道笔记 SpringCloud MySqlSugar常用写法 linux查找大目录和大文件 微软云SQL数据库创建只读用户 nginx配置ssl证书实现https访问 nexus搭建私服 Linux下创建用户并设置权限 ActiveMQ修改密码 shiro源码篇 - shiro的session共享,你值得拥有 google guava Docker虚拟化管理:30分钟教你学会用Docker Shiro结合Redis实现分布式或集群环境下的Session共享 Springboot整合redis spring boot2整合shiro安全框架实现前后端分离的JWT token登录验证 http post scp命令 Linux和Windows文件互传
.NET代码混淆——开源.net 混淆器ConfuserEx介绍
上校 · 2022-02-17 · via 博客园 - 上校

今天给大家介绍一个开源.net混淆器——ConfuserEx

http://yck1509.github.io/ConfuserEx/

由于项目中要用到.net 混淆器,网上搜寻了很多款,比如Dotfuscator、xeoncode、foxit等等。

但大部分收费,当然也有破解版的,公司要求不能用盗版软件。

找了半天终于找到了ConfuserEX,用起来还行,就赶紧拿出来给大家分享下。

下载地址:https://github.com/yck1509/ConfuserEx/releases

由于网上中文介绍的比较少,我这里做个测试,给大家演示一下:

本文不提代码开源,只谈代码混淆方法。 
本文使用的代码混淆器是ConfuserEx,网上可以下载的到。参考博文:开源.net 混淆器ConfuserEx介绍 
.Net平台开发的应用程序,大多编译之后,在bin/Debug目录下生成很多.dll文件和一个可执行文件.exe。本文就是对这些.dll文件和.exe文件进行混淆,防止反编译。

ConfuserEx混淆.dll文件和.exe文件方法不尽相同。方法如下: 
首先,下载ConfuserEx软件,打开后如下图所示: 
这里写图片描述 
(一)混淆.dll文件 
比如混淆BLL.dll和DAL.dll文件(这是项目中经常编译出来的文件,它们其实是两个类库)

1.混淆.dll文件 
将待混淆的.dll文件(单个或多个)拖拽进中间方框区域,如下图所示: 
这里写图片描述

2.选择Settings项,添加混淆规则,如下图: 
这里写图片描述

3.设置混淆规则 
Protections选择anti ildasm,应该是防止IL反编译。因为Ildasm.exe是微软提供的.NET的IL反编译器。 
这里写图片描述 
所有的.dll文件都设置好混淆规则后,就可以进行下一步了。

4.选择Proect!选项 
点击【Protect!】,就开始混淆了。Finished代表混淆完成并成功。 
这里写图片描述

以上混淆.dll文件就完成了。 
用ILSpy看一下混淆结果(ILSpy是一个反编译工具) 
这里写图片描述

用.NET Reflector反编译结果: 
这里写图片描述

(二)混淆.exe文件 
用ConfuserEx工具混淆.exe与混淆.dll文件唯一的不同在设置项(Settings)那里。 
1.将待混淆的.exe文件拖拽进中间方框区域,然后选择Settings选项卡,添加混淆规则。 
这里与.dll文件设置混淆规则不同,要设置Packer项,压缩打包,且不需要编辑规则! 
这里写图片描述

2.选择Protect!选项卡,点击【Protect!】

这里写图片描述

以上混淆.exe文件就完成了。还是通过ILSpy看一下混淆结果

ILSpy反编译结果: 
这里写图片描述

通过ConfuserEx代码工具,可以很好的混淆.dll文件和.exe文件,实现代码保护。