原文链接

前言

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. 一个重绘MFC的文件传输client

     一个重绘MFC的文件传输client,TCP/IP协议的文件传输client(支持上传.下载.续传.管理等功能,本处仅仅选择了上传功能).从用户视觉上看,肯定比原生MFC界面要有感觉,啥也不说了 ...

  2. 解决运行scrapy是报错No module named cryptography,解决cryptography的安装问题,解决libffi的安装问题

    在linux下配置完运行是出现ImportError: No module named cryptography.hazmat.bindings.openssl.binding的错误.原因是crapt ...

  3. Linux下kill命令的学习,(主要根据man手册进行的翻译)

    名字      kill -终止一个进程 格式     kill  [-s signal | -p]  [--] pid ..                                      ...

  4. 原生js 平滑滚动到页面的某个位置

    window.scrollTo() 语法1:  window.scrollTo(x-coord,y-coord) x-coord 是文档中的横轴坐标. y-coord 是文档中的纵轴坐标. 例子: w ...

  5. 像感冒一样的contains error

    转自 http://blog.csdn.net/zhufuing/article/details/8135270          Android开发中的问题总是多种多样,今天我来总结一个浪费了我一个 ...

  6. 【iOS开发】-NSString的扩展使用

    第一:基本数据类型与字符串转换 //基本数据类型(int float,double char) 1)基本数据类型->NSString //1.int类型换换成字符串 int a = 88; NS ...

  7. mysql字段去重方式

    一直找不出某个字段去重的前提下,还能够显示其它字段的数据 以下是解决方法: SELECT *, COUNT(DISTINCT( province)) FROM area_info WHERE type ...

  8. 2016/4/7 datatype:①json ②XML

    ①JSON 1,postjsonxml.php     json用循环方式处理传来的值  for(key in data) for(var i=0;i<data.length;i++){data ...

  9. 并不对劲的bzoj2820:p2257:YY的GCD

    题目大意 \(t\)(\(t\leq10^4\))组数据,给定\(n,m\)(\(n,m\leq10^6\))求 \[\sum_{x=1}^{n}\sum_{y=1}^{m}[gcd(x,y)=1]\ ...

  10. 并不对劲的bzoj3932: [CQOI2015]任务查询系统

    传送门-> 离线操作听上去很简单,遗憾的是它强制在线. 每个时刻可以看成可持久化线段树中的一个版本,而每一个版本的线段树维护的是值某一段区间且在这个版本对应的时刻出现的数之和. 会发现同一时刻可 ...