不同平台使用加壳工具的操作流程
目前Virbox开发者工具盒只有Windows版,故Linux和macOS平台上,需要单独安装SDK和Virbox用户工具,才能使用授权壳。
工具类型
针对.NET、Linux、ARM Linux和macOS程序,标准版和专业版许可壳工具对该类型程序有功能限制,点击查看标准版和专业版的功能对比。
标准版模式
1.打开Virbox Protector (LM)工具,默认为标准版模式;
2.拖入程序到工具界面,配置所需要的函数选项和加密选项处的功能;
3.点击保护选中项目,对程序进行保护。

专业版模式
1.首次打开Virbox Protector (LM)工具默认为标准版模式;
2.点击切换专业版模式,即可开启高级功能(需要联系深盾销售人员获取授权。);

3.获取到授权后在授权信息处点击登陆授权账号按钮,登陆有授权的账号。

4.授权账号登陆成功。
授权详情,可以查看到该账号当前的授权信息。
注销,账号注销后,授权详情里的所有绑定信息均会解绑。

5.拖入程序到工具界面,配置所需要的函数选项和加密选项处的功能;
6.点击保护选中项目,对程序进行保护。
注:加密后的软件是依赖许可才能运行;
Windows平台
下载安装工具
在 Virbox 开发者中心(http://developer.lm.virbox.com/)注册成为 Virbox 开发者,并申请成为正式开发者;
在 Virbox 开发者中心下载 Virbox 开发者工具盒,不同厂商 SDK 相互独立,不可互用;

安装
Virbox 开发者工具盒,运行工具盒后更新SDK。注意:目前
Virbox 开发者工具盒只有windows平台。
使用工具
点击启动加壳工具后可对程序进行保护。
Linux平台
安装sdk
注:Linux平台不能安装开发者工具盒,所以需要在windows平台上安装开发者工具盒;
windows平台上安装开发者工具盒后,打开开发者工具盒的位置;
将sdk\API\Linux目录拷贝到Linux系统上;
执行
copy_lib_share.sh脚本文件进行安装SDK;

使用工具
- 根据系统类型,从官网上下载Linux版本;
- 将工具拷贝到Linux系统上进行安装,命令参考如下;
Ubuntu系统:
sudo dpkg -i virboxprotector_lm_****.deb
centOS系统:
sudo rpm -i virboxprotector_lm_****.rpm
- 运行加壳工具并将程序拖入加壳工具界面中,可对程序进行保护使用。
注:使用root权限运行./virboxprotector后,界面即可识别SDK信息。
macOS平台
注:macOS平台不能安装开发者工具盒,所以需要在windows平台上安装开发者工具盒;
安装sdk
- 若待保护的程序时mac x64架构程序
windows平台上安装开发者工具盒后,打开开发者工具盒的位置;
将sdk\API\mac目录拷贝到macOS系统上;
该路径下的库默认为mac x64架构,
执行
copy_lib_share.sh脚本文件进行安装SDK;

- 若待保护的程序是mac arm或fat格式程序
- 需要联系
深盾销售获取mac arm或fat的程序runtime; - 将runtime库修改名称并拷贝到加壳工具的bin目录下;
| sdk库 | 架构 | sdk原始命名 | sdk修改后的名字 |
|---|---|---|---|
| runtime库 | arm64 | lib64\libslm_runtime.dylib | slm_runtime_macOS_a64.dylib |
| user login库 | arm64 | lib64\libss_user_login.dylib | ss_user_login_macOS_a64.dylib |
使用工具
从官网上下载mac版本后,将工具拷贝到macOS系统上进行安装,双击pkg安装包进行安装即可;
注意:
1)许可壳标准版和专业版不支持对mac app程序保护,只支持对mac app内的可执行程序或动态库加固;
2)许可运行时库目前只能外置,暂不支持内置。
- 将mac app内的可执行程序拖入加壳工具界面中,并进行许可等配置;

- 相关配置配置完成后,点击保护选中项目即可进行保护。
程序运行
- mac app程序
对mac app内的可执行程序保护成功后,会在可执行程序旁生成runtime库;
查看MacOS目录下是否有Frameworks目录,如果没有手动创建一个;
将生成的runtime库放到Frameworks目录;
双击app即可运行程序。

- 单个可执行程序
对可执行程序保护成功后,会在可执行程序旁生成runtime库;
如果控制台执行,需要进入到可执行程序目录下,程序可以正常执行,否则会提示"将runtime库放在主程序目录下";
如果双击执行,需要将runtime库添加到环境变量里,比如:
export DYLD_LIBRARY_PATH="/path/to/your/libs:$DYLD_LIBRARY_PATH"程序运行找到库后即可运行。
ArmLinux平台
安装sdk
需要联系
深盾销售单独获取Arm linux平台下的SDK;加壳工具默认为标准版模式,对arm linux程序保护,授权壳工具在 3.5.3.21621 后免费支持 Arm Linux 平台,现无需切换至专业版即可加密 Arm Linux 程序。

- 切换专业版模式后,将获取到的arm linux sdk目录下库放入到Virbox Protector (LM)加壳工具中的bin64目录下,默认路径在工具盒安装路径下,参考:C:\Program Files (x86)\senseshield\sdk\Tool\VirboxProtect\bin64,并修改库的命名;根据保护的程序架构来拷贝,名字修改规则如下: 注意:加密arm平台的时候需要arm64和arm32两个库,如果只有其中一个,后续加密可能还会提示SDK不存在。
| sdk库 | 架构 | sdk原始命名 | sdk修改后的名字 |
|---|---|---|---|
| runtime库 | arm32 | lib\libslm_runtime.so | slm_runtime_linux_a32.so |
| runtime库 | arm64 | lib64\libslm_runtime.so | slm_runtime_linux_a64.so |
| user login库 | arm32 | lib\libss_user_login.so | ss_user_login_linux_a32.so |
| user login库 | arm64 | lib64\libss_user_login.so | ss_user_login_linux_a64.so |
- 若无sdk则保护arm linux程序时会提示
Virbox SDK不存在:请安装SDK开发包;

- 配置完成后,运行加壳工具并将程序拖入加壳工具界面中,可对程序进行保护使用。
Android平台
需要联系深思销售单独获取Android平台下的SDK;
加壳工具默认为标准版模式,对arm linux程序保护,则提示
高级功能未激活,请切换至专业版模式;切换专业版模式后,将获取到的arm linux sdk目录下库放入到Virbox Protector (LM)加壳工具中的bin目录下,并修改库的命名;根据保护的程序架构来拷贝,名字修改规则如下:
| sdk库 | sdk原始命名 | sdk修改后的名字 |
|---|---|---|
| arm32 | armeabi-v7a\libslm_runtime.so | slm_runtime_android_a32.so |
| arm64 | arm64-v8a\libslm_runtime.so | slm_runtime_android_a64.so |
| x86 | x86\libslm_runtime.so | slm_runtime_android_x86.so |
| x64 | x86_64\libslm_runtime.so | slm_runtime_android_x64.so |
| arm32 | armeabi-v7a\libss_user_login.so | ss_user_login_android_a32.so |
| arm64 | arm64-v8a\libss_user_login.so | ss_user_login_android_a64.so |
| x86 | x86\libss_user_login.so | ss_user_login_android_x86.so |
| x64 | x86_64\libss_user_login.so | ss_user_login_android_x64.so |