原文链接

前言

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保护您的源码[转][修改]的更多相关文章

  1. [C#防止反编译].NET 产品版权保护方案 (.NET源码加密保护)

    [C#防止反编译].NET 产品版权保护方案 (.NET源码加密保护) 标签: .net加密产品c#dll工具 2011-03-24 21:06 27009人阅读 评论(13) 收藏 举报 分类: C ...

  2. 源码中修改Android的开机画面和动画【转】

    本文转载自:http://blog.csdn.net/dddxxxx/article/details/54343976 参照文章:http://blog.csdn.net/a345017062/art ...

  3. android源码中修改wifi热点默认始终开启

    在项目\frameworks\base\wifi\java\android\net\wifi\WifiStateMachine.java里面,有如下的代码,是设置wifi热点保持状态的:如下: pri ...

  4. android录像增加时间记录(源码里修改)

    需要做一个功能,录像和播放时都显示录时的时间,参考文章链接找不到了,不好意思,这里记录一下,防止下次找不到了.另一篇关于源码录像的流程请参考 http://www.verydemo.com/demo_ ...

  5. android 源码 中修改系统字体大小

    在源码\android\frameworks\base\core\java\android\content\res \Configuration.java下有读取DEFAULT_FONTSCALE的值 ...

  6. 为图片存储而作——记一次UEditor源码的修改

    本文版权归博客园和作者吴双本人共同所有.  写在前面 这是一个数据爆发的网络时代,大家习惯于浏览图文直观带给我们的快速信息.大图片的存储和浏览经常会成为Web服务器的瓶颈.试想如果你的Web服务器依然 ...

  7. 如何在源码里修改openwrt root密码

    root密码在etc/shadow文件里,但里边的密码是加密过后的.具体的加密方式我不清楚,应该是Linux里的一套加密算法.但要达到修改源码密码的目的,我还是想到了一个间接的办法.首先在源码里改成t ...

  8. Android4.2.2 动态显示隐藏屏幕底部的导航栏(对系统源码进行修改)

    需求如题. 在Android4.2.2中,导航栏(也就是屏幕底部的三个按钮,home,back,recentapp)是系统应用SystemUi.apk的一部分,简言之,我们的需求就是让我们的app来控 ...

  9. Sentinel控制台1.8.3修改源码,修改配置后推送到Nacos

    目录 1. 接着上一篇 2. 思路 3. 下载Sentinel源码 4. 看Gateway里面读取的配置信息 5. 修改Sentinel控制台源码 6. 熔断规则测试 7. 限流规则测试 8. 打包使 ...

随机推荐

  1. vue-cli中process.env配置以及打包本地运行或者线上运行配置

    我们知道打包默认npm run build,可是打包后点击dist文件中index.html一片空白.问题在于路径问题.我们在工程文件的最外层增加文件.env.production这个文件就是这么奇怪 ...

  2. 纯C语言实现简单封装继承机制

    0 继承是OO设计的基础 继承是OO设计中的基本部分,也是实现多态的基础,C++,C#,Objective-C.Java.PHP.JavaScript等为OO而设计的语言,其语言本身对实现继承提供了直 ...

  3. [经典面试题]在O(1)时间删除链表结点

    [题目] 给定链表的头指针和一个结点指针.在O(1)时间删除该结点.链表结点的定义例如以下: struct ListNode { int        value; struct ListNode*  ...

  4. win7下装ubuntu双系统后无法进入win7的解决方法

    本来电脑的系统是win7,然后用u盘装了ubuntu之后可能会出现开机没有引导界面而直接进入ubuntu系统的情况. 原因:没有设置gurb引导 解决方法:需要更新gurb来使ubuntu识别出win ...

  5. OpenGL中视点模型坐标的理解

    个人的理解: gluLookAt中的eye.center和up的坐标原点是ModelView中的坐标原点,右手坐标系,Z轴正向指向显示器外侧 glOrtho中的near和far参数距离相对eye而言, ...

  6. MySQL 存储过程传參之in, out, inout 參数使用方法

    存储过程传參:存储过程的括号中.能够声明參数. 语法是 create procedure p([in/out/inout] 參数名  參数类型 ..) in :给參数传入值,定义的參数就得到了值 ou ...

  7. Android之键盘监听的执行机理【看清键盘监听的本质】【入门版】

    以EditText为例: 1.Activity本身也有按键监听 editText按键监听与Activity按键监听关系: Activity本身也有按键监听 并且分按下和松开两个事件监听 editTex ...

  8. Oracle修改序列(Sequence)起始值问题

    Oracle 序列(Sequence)主要用于生成流水号,在应用中经常会用到,特别是作为ID值,拿来做表主键使用较多. 但是,有时需要修改序列初始值(START WITH)时,有同仁使用这个语句来修改 ...

  9. 实践001:char 类型字段在表中的长度

    Rainy on 20170215 1.同事在 写RFC的时候遇到报错:"YTST_001" 必须为扁平结构.不能将内部表.字符# 原因是自建结构中字段定义为了string 类型. ...

  10. leetcode 660. Remove 9

    Start from integer 1, remove any integer that contains 9 such as 9, 19, 29... So now, you will have ...