Virbox Protector Standalone UE4 程序加密流程#
本文档主要说明UE4程序,如何使用独立外壳对软件进行保护的加密流程,下图为软件加密到交付最终用户的流程图:
一、申请试用及下载Virbox Protector Standalone#
1.1 申请试用#
本步骤为申请试用的流程,如已申请,请跳转至独立外壳下载
首先访问链接:Virbox Protector Standalone官网 ,点击导航【试用及下载】,点击【申请试用许可】
进入申请试用页面,输入信息,点击申请即可获取30天100次使用机会。
如果您已经购买正式版本外壳,我们将向您的手机号或者邮箱账号中发送正式版本独立外壳的使用许可。
1.2 独立外壳下载#
点击demo版下载,即可下载加壳工具安装包。
如果您已经购买正式版本的外壳,我们会单独发送正式版本独立外壳的下载链接给您,可以直接下载使用。
1.3 准备工作#
运行下载的安装包,Virbox Protector Standalone安装完成之后,会看到Virbox Protector Standalone与Virbox用户工具软件,Virbox用户工具是Virbox许可服务的可视化界面工具,可以通过Virbox用户工具,来登录许可,获得使用Virbox Protector Standalone的权限。
获得使用独立外壳工具的权限
账号版本:打开Virbox用户工具,我的账号下,登录授权账号(具体如何获取使用权限,参考申请试用 )。
登录之后可以在我的软件下,查看到外壳独立版的许可信息。
加密锁版本:插入硬件锁,可在硬件锁下,查看到软件的许可信息。
二、软件加密#
2.1 UE4程序保护背景#
虚幻引擎 4 是由游戏开发者为开发游戏而制作的、完整的游戏开发工具套件。从二维的移动平台游戏到主机平台的大作,虚幻引擎是一个纯 C++引擎,专为高性能而设计。 它先进 CPU/GPU 性能分析工具和灵活的渲染器能让开发人员高效地完成高品质的 VR 体验。UE4 的主要代码逻辑位于项目中 EXE 及资源文件 apk ,深思VirboxProtector 可以保护EXE中代码不被反汇编同时对 apk 资源文件进行加密保护软件中知识产权不被盗用。
2.2 UE4程序加密方式#
对于UE4的保护方式,主要是通过Virbox Protector Standalone对UE4程序的EXE(必须是主程序不是软件启动的exe)进行加密,可以保护UE4的主要代码逻辑不被反汇编,最大程度保护软件开发商的合法权益,同时DSProtector工具可以对UE4软件中的PAK资源文件进行加密防止软件或游戏中的资源被非法提取。
2.3 开始进行加密#
启动Virbox Protector Standalone,加壳工具主界面如下:
直接拖入文件或者选择打开文件的形式,选择需要加密的文件。本文以UE4游戏程序 Test.exe 为例
将Test.exe直接拖入到加壳工具内
2.4 被保护的函数列表#
UE4程序属于C++语言开发,所以在被保护的函数列表里面显示的是程序里面的函数地址并不是显示函数名称,如想显示函数名称请参考 生成map文件方式,目前加壳工具共提供了3种加密方式。
加密方式 | 说明 | 备注 |
---|---|---|
代码混淆 | 将代码指令翻译为机器和人都无法识别的一串伪代码字节流,在具体执行时在对这些伪代码进行翻译解释,逐步还原为原始代码并执行 | 安全度低、不会影响效率 |
代码虚拟化 | 将指令翻译成 arm 指令,并置于安全环境内执行 | 安全度中、不会影响效率 |
代码加密 | 将代码块作为数据,用许可加密函数存储,程序执行到该函数时验证许可并解密,内存中不会暴露完整的代码块 | 安全度高、建议关键函数或调用加密锁方法使用太多会影响效率 |
2.5 加密选项#
加密选项的区域可以在整体程序的范围上进一步的保护。加壳工具的其他详细功能见 加壳工具手册
2.6 软件加壳#
按照上面步骤配置好加壳工具后,点击 “加壳保护” 即可完成程序的加壳操作。
加壳后的程序会在软件原目录的文件路径,多生成一个文件新的文件夹和一个加壳后的配置文件,如下图所示:
接下来,我们需要将原始的程序文件夹进行备份或移除,再将被加壳程序文件夹(这里是Test.ssp.exe
)改名为原始程序名Test.ssp.exe
。
至此,软件加密操作已经完成,接下来需要对软件的资源文件进行加密。
三、资源加密#
3.1 加密exe执行程序#
对加壳后生成的ssp文件夹下的执行程序进行加密。
在加密选项页面将插件的ds按钮打开,密码可任意填写。
点击“加壳保护”,加壳后会额外生成图示两个文件。将原可执行程序备份并删除,加密后的文件Game.ssp.exe修改为原文件名称Game.exe如下图所示:
除了软件的源码,程序的资源文件也是需要保护的重要一部分。深思DSProtector工具可以对UE 4软件中的PAK资源文件进行加密防止软件或游戏中的资源被非法提取。
3.1 加密exe执行程序#
对加壳后生成的ssp文件夹下的执行程序进行加密,加壳工具的配置和源码加密一致
在加密选项页面将插件的ds按钮打开,密码可任意填写。
点击“加壳保护”#
3.2 加密资源文件#
打开"DS Protector.exe",对资源文件进行保护。
点击浏览
选择上一步对Test.exe加壳时生成的 Test.exe.ssp
即ssp文件。
点击添加资源
选中要加密的 PAK 文件。点击保护它
,绿色进度条执行完成,则完成加密。
加密后的文件名为原文件名称
,原文件名称则变更为原文件名称.bak
。
至此,UE4程序源码加密和资源文件加密流程已经完成,下一步需要对加密后的程序进行测试,检查被保护的程序在没有许可或相应的限制下是否有正确的提示。
四、测试加密后程序#
启动加密后的程序后,需要检查软件的状态是否可正常运行。
正常运行: