使用IntelliLock加密授权你的.Net程序

简介: 原文:使用IntelliLock加密授权你的.Net程序转自:http://www.nsoff.com/post/2012/05/23/%E4%BD%BF%E7%94%A8IntelliLock%E5%8A%A0%E5%AF%86%E6%8E%88%E6%9D%83%E4%BD%A0%E7%9A%84Net%E7%A8%8B%E5%BA%8F.aspx 记录在这里,以便学习使用!一 加密混淆.Net程序打开Intellilock进处此界面点击add按钮加入你要操作的程序集,Merge Assemblie 可以合并当前程序集列表中的程序集为一个文件。
原文: 使用IntelliLock加密授权你的.Net程序

转自:http://www.nsoff.com/post/2012/05/23/%E4%BD%BF%E7%94%A8IntelliLock%E5%8A%A0%E5%AF%86%E6%8E%88%E6%9D%83%E4%BD%A0%E7%9A%84Net%E7%A8%8B%E5%BA%8F.aspx 

记录在这里,以便学习使用!

一 加密混淆.Net程序

打开Intellilock进处此界面

使用IntelliLock加密授权你的.Net程序 - mervyn807 - mervyn807的博客

点击add按钮加入你要操作的程序集,

Merge Assemblie 可以合并当前程序集列表中的程序集为一个文件。默认合成后的文件名为列表中第一位的程序集。

点击Protection Settings标签进入保护设置界面

使用IntelliLock加密授权你的.Net程序 - mervyn807 - mervyn807的博客
 

左侧是混淆界面,右侧是高级选项

Use Unprintable Characters 使用不可打印字符

Generate Short Strings 使用短字符串,可以减小程序集大小

Incremental Obfuscation 增量混淆处理

Create  Mapping File 创建混淆映身文件。选中此选项会产生一个limap文件


Exclusions 排除以下程序关键字或类型不混淆

 

枚举,事件,命名空间,类型,字段,方法

String 

Advanced 高级

 

String Encryptio 加密字符串

 

        Advanced String Encryption 

 

Code Path Protection     代码补丁保护

 

Suppress ILDASM  禁用ILDASM反汇编 

 

String Name Removal Protection  禁止移除强命名保护

 

Encrypt Il Code  加密IL代码,选中此选项IL代码将在运行时进行解密

 

Inject Invalid Metadata 注入无效元数据

 

Control Flow Obfusction 控制流程混淆级别,越高越安全。

 

 以上选项设定后,点击工具栏的Finalize或点击TAB标签Finalization,点击GO按钮生成加密后的程序

 

二 制作授权试用版软件

   (1) 试用版软件  

使用IntelliLock加密授权你的.Net程序 - mervyn807 - mervyn807的博客

在Lock Setting面板中,

Expiration Days  过期天数,可设定程序从安装后运行某天数后试用版过期。

Expiration Date  过期时间,可设定程序从安装后运行到某时间后试用版过期。

Executions  运行次数,可设定程序从安装后运行到第几次启试用版过期

Runtime   运时时间,可设定程序从安装后运行时间后试用版过期

Global Time  全局时间,可设定程序从安装后总的运行时间后试用版过期

Instances  程序运行实例个数

Custom  自定义

Advanced Settings 高级设置

Run Without Valid License 必选中

Shutdown Process After Expiration 重启程序后过期

 

Search In Embedded Resources 在资源文件中查找License

Search ON Hdd 在硬盘中查找License

License Name 设定程序由试用版转正版所使用的License文件名称。

Master Key license的KEY文件,发布的程序的MasterKey和License的masterKey必须对应,否则License授权失效!

-------------------------------------------

经过以上的设置你发布出去的程序就会按你的过期设置到时过期了。

但是这样有一个弊病,可以一个授权文件(License),复制到任意PC上后即完成了授权。

这里IntelLilock支持license绑定硬件ID进行授权

(2) License绑定硬件ID进行一机一License授权。

 

流程是这样的。程序发给用户(按上一步的设置),满足过期条件后试用过期,

让用户去程序文件夹寻找(硬件ID.txt) 里面放着当前电脑的硬件ID信息

 

此硬件ID信息从哪来的呢,这里IntelLiLock Sdk 提供的方法

项目引用IntelliLock.Licensing.dll 在IntelLiLock安装后的文件夹\SDK\Bin下

调用此方法读取当前PC的硬件ID信息

?
1
IntelliLock.Licensing.HardwareID.GetHardwareID(true, true, true, true, true,false);<br><br>

参数 BIOS,CPU,HDD,MAC,Mainboard,OS 为True即生成硬件信息ID时加入此硬件的算法

这里你调用此方法调试程序时显示"####-#####-#####-####"类似字符串,不是硬件ID信息。

因为程序需要使用IntelLilock加密后。此方法才生效(应该是IntelLilock加密时动态的把此方法的算法加了进去)

用IntelLilock加密后运行程序。成功显示了硬件ID信息

 下面是用IntelLiLock发布授权License

使用IntelliLock加密授权你的.Net程序 - mervyn807 - mervyn807的博客
 

把用户发来的硬件ID粘贴入上面文档框中,把BIOS,CPU,HDD,MAC,Mainboard复选框选中

这里为什么不把OS也选中呢。因为

?
1
IntelliLock.Licensing.HardwareID.GetHardwareID(true, true, true, true, true,false);

此方法的最后一个OS参数为false,所以这里不用选中。要和上面方法保持一致! 这样把你的license发给用户。放到程序根目录下。即完成了试用版到正式版的授权。   以上这些只是IntelLiLock的Task标签内的内容 还有License 管理,TOOLS工具,help等 License management 针对客户,产品进行信息维护,自带SQLITE数据库 tools工具中有License Check 和hardware check  

IntelliLock.Licensing.EvaluationMonitor.CurrentLicense.LicenseStatus == IntelliLock.Licensing.LicenseStatus.Licensed 判断当前License是否已授权

就写这些了。。。还有更多的功能等待你的挖掘!

 
 
 
 
目录
相关文章
|
4月前
|
域名解析 缓存 Linux
如何让你的.NET WebAPI程序支持HTTP3?
如何让你的.NET WebAPI程序支持HTTP3?
51 2
如何让你的.NET WebAPI程序支持HTTP3?
|
7月前
|
安全 Shell 数据库
「学习记录」.NET程序的数据库密码解密
「学习记录」.NET程序的数据库密码解密
|
8月前
|
XML 存储 JSON
使用自定义XML配置文件在.NET桌面程序中保存设置
本文将详细介绍如何在.NET桌面程序中使用自定义的XML配置文件来保存和读取设置。除了XML之外,我们还将探讨其他常见的配置文件格式,如JSON、INI和YAML,以及它们的优缺点和相关的NuGet类库。最后,我们将重点介绍我们为何选择XML作为配置文件格式,并展示一个实用的示例。
98 0
|
20小时前
|
XML 开发框架 .NET
LabVIEW中加载.NET 2.0,3.0和3.5程序集
LabVIEW中加载.NET 2.0,3.0和3.5程序集
|
10天前
|
NoSQL 安全 MongoDB
MongoDB安全机制:认证、授权与加密
【4月更文挑战第30天】MongoDB提供全面的安全机制,包括认证(用户名/密码、LDAP、Kerberos、x.509证书)、授权(基于角色的访问控制,RBAC)和加密(TLS/SSL、透明数据加密TDE、字段级加密FLE),确保数据保密性、完整性和可用性。通过合理配置这些机制,企业可保障数据安全,应对不断变化的安全威胁。
|
6月前
|
开发框架 网络协议 前端开发
一个对C#程序混淆加密,小巧但够用的小工具
一个对C#程序混淆加密,小巧但够用的小工具
97 1
|
6月前
|
开发框架 .NET 测试技术
.NET Core 日志记录程序和常用日志记录框架
本文主要内容为.NET Core的日志记录程序和常使用的日志记录框架的简单使用 首先,打开VS2019新建一个ASP.NET Core Web Api项目,项目创建好后会有一个集成好的天气预报的类和控制器,接下来,我们的方法就在天气控制器里完成。
50 0
|
8月前
|
开发框架 .NET C#
如何判断一个 Dot Net 程序是 32 位还是 64 位?
如何判断一个 Dot Net 程序是 32 位还是 64 位?
|
4月前
|
开发框架 前端开发 小程序
分享46个ASP.NET博客程序源码,总有一款适合您
分享46个ASP.NET博客程序源码,总有一款适合您
34 0
|
5月前
|
存储 开发框架 .NET
Asp.Net第一章入门之后台处理程序
Asp.Net第一章入门之后台处理程序
31 0