menu

虚幻引擎资源加密方案解析

前段时间,全球游戏开发者大会(Game Developers Conference,简称GDC)在旧金山圆满落幕,会议提供了多份值得参考的数据报告。根据 GDC 调研数据,当下游戏市场中,Unreal Engine (下文简称虚幻)和 Unity 是使用最多的游戏引擎,各有 33% 的开发者表示这两者是他们首选的工具集。

315_21
▲数据来源丨全球游戏开发者大会

与 Unity 相比,虚幻引擎的优势在于强大的画面表现与视觉特效,契合当下游戏市场追求高品质、精品化游戏的需求。但同 Unity 一样,虚幻引擎也面临严重的安全问题。

虚幻引擎的主要代码逻辑位于项目中 EXE 以及资源文件中,可以使用资源提取工具 UnrealPakViewer 对游戏的 pak 包进行分析,使用工具打开包体即可提取其中的代码、图片、视频等各类资源,大幅度降低了外挂、破解的门槛。

315_21
▲UnrealPakViewer分析包体后可查看各类资源及代码

这些资源是游戏的重要资产,一旦泄露会造成竞品抄袭、知识产权受损、游戏内容剧透、篡改游戏资源制售外挂等问题,如何有效对虚幻引擎资源进行加密,提高破解门槛,保护游戏资源,成了游戏厂商的必修课。

要对引擎进行加固,要解决两大难题,首先是兼容性问题,虚幻4、虚幻5有众多小版本,这些版本在性能、技术与体验方面都存在差异,加密方案能否完美兼容?

其次是如何兼顾加密强度与性能消耗问题,如果单纯为了加密而影响了游戏性能,导致游戏流畅程度出现问题,是游戏厂商与玩家都不能接受的。

针对上述问题,FairGuard制定了一套针对虚幻引擎的资源加密保护方案。该方案完美兼容 UE4 / UE5 各个版本;并且精心构造了一套算法,有效的解决了加密强度与性能消耗平衡问题,在保证高加密强度的同时,具备性能消耗小的特点。

除此之外,该方案还具备以下特点:

▎速度快,无感知

加密方案只对核心关键位置做加密处理,对游戏加载速度、运行流程程度的几乎没有影响,实现了无感知。

▎加密强度高

加解密算法进行了自定义混淆,让破解者无法分析出算法,算法流程图如下所示:

315_21
▲FairGuard算法流程图

▎解密速度快

核心文件块很小,不随整个资源文件大小而变化。使用主流手机测试,300个资源文件一次性解密,额外增加的解密时间不到10ms。

对加密算法进行了高强度自定义混淆,混淆经过精心设计,在增加复杂度的同时,兼顾了效率,运行开销很小。

▎防解包、反调试

FairGuard加固方案可以有效防止解包、调试,加固后包体无法进行提取、分析等恶意操作,不给破解者提供线索。

315_21
▲加密后包体无法被提取资源

▎三端互通,支持热更

FairGuard 虚幻引擎资源加密方案支持 Android / iOS / PC 三平台,支持资源在线热更。

▎操作便捷,接入成本低

使用非常简单,只要运行一个命令行即可完成对整个游戏资源的加密。

丨结语

FairGuard作为专注于游戏安全领域的第三方服务商,致力于帮助游戏公司解决外挂和破解问题,为游戏提供深度一体化的加密保护方案。

目前产品已经被FunPlus、三七互娱、恺英网络、心动、杭州电魂等多家头部公司采用,接入400+款热门游戏。欢迎访问 www.fair-guard.com 了解试用。

产品咨询联系方式:

QQ:2079128588

微信:fairguard01

技术交流QQ群:1105310296