用.NetReactor保护您的源码[转][修改]
前言
VS开发的源代码安全性,是很多开发者头痛的事情.于是保护好源代码便成了开发者们最关心的事情之一了.
在网上搜一搜,很多有不少的第三方工具可以为源代码加密.加密方式不外乎就是混淆,加壳.
理论上,任何的源代码加密方式都是可能反编译的.因此我们选择哪种加密方式都变得有些脆弱.既然是这样,
那我们就选择一个简单一点的,快捷一点的吧.
工具
NET Reactor 4.9
这个工具网上很多,可以自行下载,目前搜到最新版是4.9
下载地址:http://pan.baidu.com/s/1dDeVNrj


加密完成后,会自动输入一个加密后的全新文件.如果你的类库比较多,这时加密后就只有一个文件,点击可直接运行,是不是很棒?
是不是绿色程序的感觉?
********************************************************************************************************************

http://www.eziriz.com/downloads.htm官网
以下摘取部分:

设置又分为常规设置,保护设置,软件限制设置,及弹出框界面设置
常规设置
主要包括压缩配置,界面风格配置,生成目标文件配置,启动是否显示加载界面配置。想要知道配置的具体功能可以用鼠标点击配置,下面的说明面板会出现对应的说明。
- Automatic Exception Handling - 自动捕获错误
- Compression - 压缩文件减少占用空间,网络环境下还可以减少带宽
- Show Loading Screen - 保护过的文件启动是否显示加载进度条(因为保护过的文件启动时会先执行.net reactor注入的代码,包括查找证书等)
- Digital Certificate - 数字证书保护
- Enable Visual Styles - 是否启用系统界面风格
- Force Admin Privileges - 是否需要系统管理员权限运行
- Merge Assemblies - 是否允许整合dll
- Embed Assemblies - 是否允许嵌入dll
- Strong Name Key Pair File - 强签名程序集
- Target File - 生成目录
保护设置
主要配置软件的保护选项
NecroBit 功能是防止程序被反编译(比如.net reflector),但不支持.net Compact Framework
- Anti Tampering - 防止黑客利用工具修改你的软件,运行前会进行二进制完整性检查
- Resource Encryption & Compression - 压缩和加密托管资源,运行时会自动解压和解密资源
- Suppress Decompilation / Anti ILDASM - 防止反编译和反汇编
- Native EXE File - 生成一个本地x86 exe文件作为根嵌入程序防止反编译
- Pre-JIT Methods - 通过Native EXE File 和NecroBit插件,将一些小方法比如getters/setters直接转化成机器代码,防止程序集被修改
- NecroBit - 用加密的代码替换CIL代码,阻止反编译
- Obfuscation - 替换变量名称,方法名称等来混淆代码
- Create Mapping File - 允许创建混淆过字段对应的未混淆字段的映射文件
- Enabled - 混淆非punlic的类和成员的名称
- Obfuscate Public Types - 混淆所有类型和成员的名称
- Incremental Obfuscation - 智能地规定混淆后的名称
- Exclusions - 排除某个类型,不进行混淆
- Use Unprintable Characters - 使用乱码进行混淆
- Control Flow Obfuscation - 一种混淆方式
- String Encryption - 加密字符串
- Strong Name Reomoval Protection - 强命名保护
- Expire When All Expired -是否全部文件过期时,才停止软件使用
- Inbuilt Lock - Evaluation Period -限制软件持续使用时间
- Inbuilt lock - Expiration Date -限制软件使用天数
- Inbuilt Lock - Number of Uses -限制软件使用次数
- Max Number Of Instances -限制软件并发数量(同一台机器)
- Nag Screen -若没有许可证,软件启动时提示相关相关限制信息,比如“您已使用1次,最多使用10次”
- Run Another Process After Expiration -过期是否执行其他程序,通常运行付款程序
- Run Without License File -是否需要许可证
- Shut Down Process After Expiration -当过期时是否关闭进程
- Static License FileName -设置许可证的后缀名,当为空时默认搜索*.license 的许可证,为防止冲突不允许以.LIC为后缀名。
用.NetReactor保护您的源码[转][修改]的更多相关文章
- [C#防止反编译].NET 产品版权保护方案 (.NET源码加密保护)
[C#防止反编译].NET 产品版权保护方案 (.NET源码加密保护) 标签: .net加密产品c#dll工具 2011-03-24 21:06 27009人阅读 评论(13) 收藏 举报 分类: C ...
- 源码中修改Android的开机画面和动画【转】
本文转载自:http://blog.csdn.net/dddxxxx/article/details/54343976 参照文章:http://blog.csdn.net/a345017062/art ...
- android源码中修改wifi热点默认始终开启
在项目\frameworks\base\wifi\java\android\net\wifi\WifiStateMachine.java里面,有如下的代码,是设置wifi热点保持状态的:如下: pri ...
- android录像增加时间记录(源码里修改)
需要做一个功能,录像和播放时都显示录时的时间,参考文章链接找不到了,不好意思,这里记录一下,防止下次找不到了.另一篇关于源码录像的流程请参考 http://www.verydemo.com/demo_ ...
- android 源码 中修改系统字体大小
在源码\android\frameworks\base\core\java\android\content\res \Configuration.java下有读取DEFAULT_FONTSCALE的值 ...
- 为图片存储而作——记一次UEditor源码的修改
本文版权归博客园和作者吴双本人共同所有. 写在前面 这是一个数据爆发的网络时代,大家习惯于浏览图文直观带给我们的快速信息.大图片的存储和浏览经常会成为Web服务器的瓶颈.试想如果你的Web服务器依然 ...
- 如何在源码里修改openwrt root密码
root密码在etc/shadow文件里,但里边的密码是加密过后的.具体的加密方式我不清楚,应该是Linux里的一套加密算法.但要达到修改源码密码的目的,我还是想到了一个间接的办法.首先在源码里改成t ...
- Android4.2.2 动态显示隐藏屏幕底部的导航栏(对系统源码进行修改)
需求如题. 在Android4.2.2中,导航栏(也就是屏幕底部的三个按钮,home,back,recentapp)是系统应用SystemUi.apk的一部分,简言之,我们的需求就是让我们的app来控 ...
- Sentinel控制台1.8.3修改源码,修改配置后推送到Nacos
目录 1. 接着上一篇 2. 思路 3. 下载Sentinel源码 4. 看Gateway里面读取的配置信息 5. 修改Sentinel控制台源码 6. 熔断规则测试 7. 限流规则测试 8. 打包使 ...
随机推荐
- vue-cli中process.env配置以及打包本地运行或者线上运行配置
我们知道打包默认npm run build,可是打包后点击dist文件中index.html一片空白.问题在于路径问题.我们在工程文件的最外层增加文件.env.production这个文件就是这么奇怪 ...
- 纯C语言实现简单封装继承机制
0 继承是OO设计的基础 继承是OO设计中的基本部分,也是实现多态的基础,C++,C#,Objective-C.Java.PHP.JavaScript等为OO而设计的语言,其语言本身对实现继承提供了直 ...
- [经典面试题]在O(1)时间删除链表结点
[题目] 给定链表的头指针和一个结点指针.在O(1)时间删除该结点.链表结点的定义例如以下: struct ListNode { int value; struct ListNode* ...
- win7下装ubuntu双系统后无法进入win7的解决方法
本来电脑的系统是win7,然后用u盘装了ubuntu之后可能会出现开机没有引导界面而直接进入ubuntu系统的情况. 原因:没有设置gurb引导 解决方法:需要更新gurb来使ubuntu识别出win ...
- OpenGL中视点模型坐标的理解
个人的理解: gluLookAt中的eye.center和up的坐标原点是ModelView中的坐标原点,右手坐标系,Z轴正向指向显示器外侧 glOrtho中的near和far参数距离相对eye而言, ...
- MySQL 存储过程传參之in, out, inout 參数使用方法
存储过程传參:存储过程的括号中.能够声明參数. 语法是 create procedure p([in/out/inout] 參数名 參数类型 ..) in :给參数传入值,定义的參数就得到了值 ou ...
- Android之键盘监听的执行机理【看清键盘监听的本质】【入门版】
以EditText为例: 1.Activity本身也有按键监听 editText按键监听与Activity按键监听关系: Activity本身也有按键监听 并且分按下和松开两个事件监听 editTex ...
- Oracle修改序列(Sequence)起始值问题
Oracle 序列(Sequence)主要用于生成流水号,在应用中经常会用到,特别是作为ID值,拿来做表主键使用较多. 但是,有时需要修改序列初始值(START WITH)时,有同仁使用这个语句来修改 ...
- 实践001:char 类型字段在表中的长度
Rainy on 20170215 1.同事在 写RFC的时候遇到报错:"YTST_001" 必须为扁平结构.不能将内部表.字符# 原因是自建结构中字段定义为了string 类型. ...
- leetcode 660. Remove 9
Start from integer 1, remove any integer that contains 9 such as 9, 19, 29... So now, you will have ...