加密锁使用流程
1.准备工作(注册,转正,下载SDK)
1.1注册VirboxLM开发者账号
注册地址:https://developer.lm.virbox.com/reg.html
1.2转正(成为正式开发者)
登录 VirboxLM开发者平台,点击【概览】页面左上角【申请转正】按钮,可申请成为正式开发者。
点击【申请转正】,如果未绑定邮箱,进入绑定邮箱界面。
输入密码及邮箱,获取邮箱验证码,登录邮箱查看验证码,输入验证码后点击下一步进入转正页面
输入开发者名称后,点击【提交】,成功后返回概览页面,申请状态变更为【请求已提交,请耐心等待】。申请转正后可联系 技术服务人员 加快审核流程。
申请转正需要等待审核,审核通过后即转正成功。以下状态为审核通过的状态。
1.3 下载 Virbox 开发者工具盒
在【概览】页面-【工具资料】模块,点击【开发者工具盒】即可下载Virbox开发者工具盒
安装工具盒并登录
点击【下载SDK】,检测后【立即更新】
更新完成后,左侧选择工具列表,右侧启动即可打开对应的工具或者文档。
开发者管理工具写锁流程
1 修改、验证控制锁PIN码
获取初始PIN码(新控制锁需要)
如果第一次使用,从开发者中心获取初始PIN,并进行修改,修改后牢记PIN码
- 登录开发者中心,在侧边栏找到【硬件锁管理】
- 选择【控制锁管理】,右侧会显示开发者购买的所有开发锁的初始PIN码,如下图所示:
验证PIN
通过Virbox开发者工具盒左侧菜单打开开发者管理工具,将白色控制锁插入电脑USB接口,点击开发者管理工具右上角的【开发锁PIN设置】会弹出 PIN码 设置界面,我们在这里通过【执行PIN验证】输入开发锁的 PIN 码。
首次使用控制锁需要将云平台中的默认PIN进行修改。修改后才可正常使用该控制锁。
PIN码在修改后一定要牢记, 如果忘记PIN码,只能通过重新申请新的控制锁解决问题。
2 产品管理
在左侧【产品管理】一栏中,我们创建一个产品,通过创建产品来设置许可条款的基本信息。
选择【产品管理】,点击【添加】,输入【产品名称】和【许可ID】后,点击确定即可。
许可ID为非零的整数,关联到加密后的软件,在下一步加密流程中,设置许可选项时,要将此许可ID写入。
3 创建销售模板
可根据软件销售模式,创建不同的销售模板。这里创建永久许可模板。
点击【模板/授权】-【新建模板】,选择上一步创建的产品。然后点击【下一步】,进入新建模板的页面,设定模板名称和许可限制。设定完成后,点击【确定】
许可限制
您可以根据具体的商业模式,定义不同类型的模板。精锐5支持永久的许可,基于时间跨度的许可,支持基于绝对时间的许可,支持基于次数的许可,基于功能模块的许可。
4 发布许可
插上用户锁(注意:控制锁同时也要插上),选中上一步创建的销售模板,点击【发布许可】- 【下一步】,选中要签发的加密锁号,点击【发布】,提示发布成功即可。
至此,软件写锁已完成
精锐5-通用加密流程
本流程适用于由C、C++、Dephil、UE4开发的可执行程序或者库文件如:exe、dll、so。
3.1 启动VirboxProtector
从 Virbox 开发者工具盒打开加壳工具,将待加密软件拖入到加壳工具中,同时需要【将白色的控制锁插入电脑上】
3.2 设置API密码
在SDK信息处填写API密码,API密码可在VirboxLM平台【概览】页面-【查看开发者信息】获取
API密码获取--**登录VirboxLM:https://developer.lm.virbox.com/ 获取方法见下图:**
3.3.PIN码验证
点击【待验证PIN】,输入控制锁的PIN码,进行PIN验证
3.4 许可选项设置
点击【许可选项】,硬件锁勾选【本地许可】
许可ID:填写非0的整数,如 2、3、4等
许可ID相当于每个软件的身份证,加密时候将许可ID与软件绑定,用户锁里有该许可ID的授权时才能打开加密后的软件。在第三步开发者管理工具中【创建产品】时填写的许可ID要与此处保持一致!
锁芯片号:此处可以不填写。加密的时候如果填写锁芯片号后,加密出来的程序只能该芯片号的锁打开,其他用户锁即时有授权也无法打开。
3.5 函数选项
点击【函数选项】-【添加函数】,可对exe/dll的函数设置保护方式,选择完毕后,点击确定即可。
C/C++类的函数保护方式推荐:代码碎片化 > 虚拟化 > 代码混淆 > 代码加密。
.NET类程序函数保护方式推荐:代码碎片化 > 代码加密 > 代码混淆。
3.6 设置加密选项
点击【加密选项】,可对程序设置一些加密选项。
输出信息:可以修改程序保护后生成文件的路径和名称。
包括导入表保护、压缩、资源保护、名称混淆等功能,主要是对文件的整体保护。
设置选项 | 功能说明 |
---|---|
导入表保护 | 隐藏原程序中的导入表,保护程序的函数外部调用,可以达到干扰逆向分析、防脱壳的作用。目前仅支持 PE 格式的程序。注意:导入表的项必须全为函数,否则可能会引起崩溃。 |
压缩 | 将代码与数据段做了加密,并将原先的导入表与重定位信息隐藏了起来,再"顺便"将原先的数据做了压缩。 |
内存校验 | 一种检测程序自身完整性的技术,可以对抗文件补丁、内存补丁、软件断点等,内存校验表和校验逻辑本身经过了自保护,以保证其安全性。 |
资源保护 | 资源加密是针对 PE 格式程序的资源进行加密的保护功能,可以防止程序中的资源信息被提取,篡改。 |
附加数据扩展 | 使用了 Hook 手段使程序能正常读取到附加数据,另外对附加数据做了加密处理,防止数据被轻易窃取。 |
许可Runtime库 | 勾选内置,会将Runtime库和程序打包一起,不勾选会根据程序的系统及架构在同目录下生成Runtim库:slm_runtime.dll,运行加密后程序时,需要将slm_runtime.dll与程序放在同一个目录下。注意:不勾选内置会降低安全性,请根据实际情况选择 |
后台检测时间间隔:后台检测时间间隔(秒),表示每隔多少秒对运行程序进行检测是否存在对应许可,如果没有那么就会提示错误,或者退出。如果后台检测时间设为0s,那么后台就不会进行检测许可的操作。
检测用户锁拔出消息:当勾选此选项后,运行被保护后的程序,拔掉用户锁后直接弹出“找不到许可”的 提示消息。[注意:当勾选检测用户锁拔出消息时,后台检测时间间隔选项不生效]
3.7 消息选项
当程序被加密后,程序就与我们之前创建的许可进行关联,当用户在使用我们的加密的程序时如果触发了一些限制时,会以该界面上的消息进行显示。
【许可失效之后程序将】:当许可到期或者加密锁被拔出,可设置弹窗提醒或者闪退。
【提示标题】:弹窗提醒的标题设置。
【自定义消息】:可设置提示条件,如剩余多少天、多少次数的时候进行提醒,也可自定义设置提示消息
3.8 设置完成,保护项目
完成以上所有设置后,即可点击菜单栏【保护选中项目】或者【保护所有项目】
保护后的程序会在同一目录下多生成两个文件,如下图所示:
接下来,我们需要将原始的程序进行备份或移除,再将被加壳程序(这里是PE_Tetris.ssp.exe
)改名为原始程序名PE_Tetris.exe
。
至此,软件加密操作已经完成
快速上手4-使用加密后程序
使用加密后程序流程概述
1.安装Virbox用户工具
2.插上带授权的精锐5用户锁
3.打开加密后的程序
4.1安装Virbox用户工具
Windows环境部署
加密后的软件安装到用户机器上,同时要安装Virbox 用户工具。
Virbox用户工具下载地址:https://lm.virbox.com/tools.html
点击硬件锁查看是否存在此条许可。许可正常即可使用加密后程序。
Linux环境部署
安装Virbox用户工具Linux版
下载地址:https://lm.virbox.com/tools.html
操作系统 | 安装包名称 |
---|---|
Centos、Fedora、openSUSE | senseshield-2.4.0.50200-1.i386.rpm (32位) |
senseshield-2.4.0.50200.x86_64.rpm (64位) | |
Debian、Ubuntu、优麒麟 | senseshield-2.4.0.50200-1-i386.deb (32位) |
senseshield-2.4.0.50200-x86_64.deb (64位) |
root权限下安装,安装命令:
rpm -ivh senseshield-2.4.0.50200-1.i386.rpm
dpkg -i senseshield-2.4.0.50200-1-i386.deb
服务启动查看:service senseshield status 或者 systemctl status senseshield
插上加密锁,通过如下命令可以列举本地精锐5 加密锁中的许可信息
ssclt -l local
4.2使用加密后程序
PE类、dll类程序直接运行即可。
本文来自博客园,作者:zwbsoft,转载请注明原文链接:https://www.cnblogs.com/zwbsoft/p/16365341.html
电话微信:13514280351