[.NET产品源码保护].NET防止反编译(非混淆加密)
.NET产品源码保护产生的背景:
.NET源码加密方案支持C#及VB.NET等语言开发的ASP.NET及WINFORM应用。利用.NET支持托管代码与非托管代码共存的特性,将C#代码经过处理放于非托管代码中,防止通过常规方式反编译DLL,能有效保护.NET产品版权,防止反编译破解。
市面上的混淆加密工具对.NET源码保护的效果天差地别,很多网上下到的混淆工具破解版对.NET源码混淆保护的效果通常都不行(能找到对应的反混淆工具进行脱壳),而保护效果较好的混淆工具呢,收费比较高昂且也没有破解版,导致很多小企业或个人开发者为.NET的源码的知识产权保护绞尽脑汁。
.NET产品源码保护原理:
.NET DLL可以包含托管堆代码(可以被反编译的)与非托管堆代码(不能被反编译)。
我们将核心逻辑代码置于非托堆代码中,由托管堆代码提供接口供外部调用,这样就保证不能被常规的手段对DLL进行反编译。
并加入验证调用者来源功能,判断调用者的HASH值是不是与在非托管代码中约定的HASH值(发布时需要提前生成相关引用者的HASH值存于非托管代码,最后生成非托管代码的DLL放于安装包中)一致,如一致则通过执行返回结果,不一致则返回空,这样就达到了非合法用户不能调用的效果。
若身份验证成功则将受保护的核心逻辑代码通过.NET动态编译特性编译后返回执行结果,调用者通过反射特性对动态编译后的结果进行调用即完成整套流程。
.NET产品源码保护特点:
- 不能看 核心代码被编译于非托管代码中,不能被常规手段反编译。
- 不能调 验证了调用者身份,只有合法用户才能调用DLL。
- 兼容性好 兼容C#及VB.NET编写的ASP.NET及WINFORM应用。
- 应用简单 提供完整流程的演示案例,可轻松应用于自身项目(不需要会VC++)。
- 完美售后 提供完善的售后指导,让客户轻松的实现应用。
- 效优价廉 保护效果卓越,价格却仅为具有同样效果的其它混淆工具10%(下表为市面上常见混淆工具的价格)。

.NET产品源码保护演示下载:
DEMO下载地址:www.dllprotect.com
.NET产品源码保护结果演示:
.NET源码保护方案项目演示
.NET防止反编译运行演示1
正常运行的情况

.NET防止反编译运行演示2
重新生成了程序(签名发生变化)模拟程序被人反编译生成的效果

对DLL进行反编译检测结果1
使用ILSpy对ConsoleApplication1.exe进行反编译,可以明显看出没有加解密函数的核心关键代码,充分起到了dll防止反编译,保护.NET源码的目的。

对DLL进行反编译检测结果2
使用ILSpy对NetProtect.BLLDemo.dll进行反编译,可以明显看出没有加解密函数的核心关键代码,充分起到了dll防止反编译,保护.NET源码的目的。

对DLL进行反编译检测结果3
使用ILSpy对NetProtect.CoreClr.dll进行反编译,可以明显看出没有加解密函数的核心关键代码,充分起到了dll防止反编译,保护.NET源码的目的。

[.NET产品源码保护].NET防止反编译(非混淆加密)的更多相关文章
- .NET产品源码保护,.NET防止反编译,c#/vb.net 防反编译
.NET产品源码保护产生的背景: .NET源码加密方案支持C#及VB.NET等语言开发的ASP.NET及WINFORM应用.利用.NET支持托管代码与非托管代码共存的特性,将C#代码经过处理放于非托管 ...
- .NET DLL 保护措施详解(非混淆加密加壳)
为什么要保护DLL,我就不多说了,各人有各人的理由.总的来说,就是不想核心逻辑泄露及授权验证被破解两大方面的因素.市面上的混淆加密工具对.NET源码保护的效果天差地别,很多网上下到的混淆工具破解版对. ...
- .NET DLL 保护措施详解(非混淆加密加壳)核心思路的实现
最近有很多朋友通过BLOG找到我询问我的相关细节,其实相关的实现细节我早已把源码上传到51aspx上面了,地址是http://www.51aspx.com/code/codename/56949 也有 ...
- atitit.商业版 源码保护 与 java本地原生代码转换 的方案总结
atitit.商业版 源码保护 与 java本地原生代码转换 的方案总结 1. 为什么虚拟机语言容易被反编译 1 2. 源码泄露的问题问题 1 3. Excelsior JET 1 4. gcj.的流 ...
- APP加固技术历程及未来级别方案:虚机源码保护
传统App加固技术,前后经历了四代技术变更,保护级别每一代都有所提升,但其固有的安全缺陷和兼容性问题始终未能得到解决.而下一代加固技术-虚机源码保护,适用代码类型更广泛,App保护级别更高,兼容性更强 ...
- 关于HTML、js加密、混淆、源码保护、代码安全,防止解压直接看源码
一直有人问HTML加密混淆怎么做,其实这在业内是早已很多人研究过的课题.假日期间整理一篇文章分享给大家. 我们先理下需求,加密的目的是什么?加密到什么级别?为此我们可以牺牲什么?我们知道这个世界不存在 ...
- 【转】Linux(ubuntu14.04)上编译Android4.4源码的环境搭建及编译全过程
原文网址:http://jileniao.net/linux-android-building.html sublime text让我伤心.本来很信任sublime text的自动保存功能,之前使用一 ...
- Android源码浅析(三)——Android AOSP 5.1.1源码的同步sync和编译make,搭建Samba服务器进行更便捷的烧录刷机
Android源码浅析(三)--Android AOSP 5.1.1源码的同步sync和编译make,搭建Samba服务器进行更便捷的烧录刷机 最近比较忙,而且又要维护自己的博客,视频和公众号,也就没 ...
- 支持源码单步调试QT库编译笔记
支持源码单步调试QT库编译笔记 编译环境:windows 10 编译工具:mingw_4_4_0 Qt源码版本:qt-everywhere-opensource-src-4.8.5(下载地址:http ...
随机推荐
- Windows 黑屏问题
这两天使用Microsoft Visual Studio编译项目,不断黑屏闪现!回想下应该是之前设置的DOS窗口全屏的原因. 记得又一次使用MSDOS,老感觉屏幕台下,于是就设置成了全屏显示,全屏后发 ...
- maven springmvc启动问题
1.环境 SpringMVC + Maven + mybatis 2.报错提示 严重: Error configuring application listener of class org.spri ...
- js相关小实例——div实现下拉菜单
代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...
- ST 单元测试之maven引入junit包
按照上篇博客,已经完成了mavne以及eclipse的安装配置,新建好了一个maven项目. 接下来打开项目,双击打开pom.xml,可以看到如下所示, 点击下方的pom.xml,然后添加如下代码,即 ...
- java 学习资源
1.tomcat版本http://tomcat.apache.org/whichversion.html 2.Servlet 2.5规范https://jcp.org/aboutJava/commun ...
- 一切app源于生活 用于生活 一个利于生活的app——利生活
现在的app软件可以说 各行各业都基本达到饱和阶段 因为智能手机时代让我们的世界缩小了十倍百倍甚至千倍,我们可以足不出户知天下可以足不出户的去购物. 既然app利于生活 那么今天我所要开发的一个app ...
- mysql 索引篇
一.索引优化 索引优化主要还是依赖explain命令,关于explain命令相信大家并不陌生,具体用法和字段含义可以参考官网explain-output,这里需要强调rows是核心指标,绝大部分r ...
- border-radius IE8兼容处理
根据canisue(http://caniuse.com/#search=border-radius),border-radius兼容性如下图所示: 测试代码: <!DOCTYPE html&g ...
- 进入效果 neon
@-webkit-keyframes neon { 0% { opacity: .3; -webkit-transform: scale(2); transform: scale(2); } 100% ...
- (转)经验分享:CSS浮动(float,clear)通俗讲解
很早以前就接触过CSS,但对于浮动始终非常迷惑,可能是自身理解能力差,也可能是没能遇到一篇通俗的教程. 前些天小菜终于搞懂了浮动的基本原理,迫不及待的分享给大家. 写在前面的话: 由于CSS内容比较多 ...