作者:不会写书

Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。Unity也成为了利用交互的图型化开发环境为首要方式的软件。

既然Unity3D的重要性越来越高,那么随着而来的麻烦也变的越来越多,针对于Unity3D的开发者而言,熬夜加班设计和制作的代码,在不知不觉中被反编译、混淆以及明明加了密缺形同虚设,以及内存dump代码等等事情的发生,都会让我们的开发者苦不堪言。

有什么事比自己设计、制作、开发的游戏被破解盗版、copy,算法被改写成C++更加的令人抓狂,作为笔者想说的是,如果是我的游戏被破了,我估计会砸电脑了。

查询了相关的资料:

PC、MAC、iPhone、ipad、PS和Xbox360等众多平台的引擎效能成为了业界关心的焦点问题。

2010年5月在韩国举行的Unity3D游戏引擎技术研讨会中就已经有对Unity3D游戏引擎技术的介绍,并且大会也为提升中国先进游戏技术的开发能力,培养后备研发人员,提供了帮助。

除了韩国之外,在中国上海由韩国国民大学游戏教育学院和中国东华大学联合举办的Unity3D游戏引擎技术研讨会也开展起来,从此可见Unity3D游戏引擎技术的重要性质,已经向各国延展开来。

根据了解,至少已经有十种以上的新引擎开发,都是采用了Unity3D游戏引擎技术,2010年ChinaJoy展会更是体现了它的巨大商机。

另外还有一个资料,Unity引擎宣布放弃支持Flash平台,估计很多独立游戏以及移动游戏开发者都不会对Unity引擎感到陌生。2013年4月25日Unity公司CEO David Helgason发布消息称,游戏引擎Unity今后将不再支持Flash平台,且于今天起不再销售针对Flash开发者的软件授权。

在通过搜索引擎的内容搜索,我们可以发现,Unity3D也成为了热门话题,数款爆款游戏是来自它的诞生,网上的BBS、技术贴吧、培训、教程也是到处都是,不过话说回来,竟然都知道Unity3D的重要性那么为什么没有人去研究下,如果自己开发的游戏,被黑了该怎么处理,或者说亡羊补牢,我们如何防范于未然了?

果不其然,百度一下你就知道,关键词一搜索“Unity3D加密”厉害了,网易云易盾、Virbox Protector,这个两个做SEM的估计是有点才。

深思Virbox Protector与网易云易盾产品对比分析-编程知识网

今天我们来看看Virbox Protector与网易云易盾的产品对比

1、Virbox Protector:防止代码反编译、解决代码反编译和内存反dump代码

可对unity3d加密,驱动级别反调试,无法反编译,无法dump内存.自动编译mono,不降低游戏帧数, 高运算性使部分功能可提高游戏帧数.

自带反黑引擎,驱动级别反调试,秒杀常见调试器,无法反编译.unity3d加密 不降低游戏帧数, 甚至某些情况下还能提高游戏帧数.

2、网易云易盾:应用加固优选网易云易盾_防逆向/防反编译

网易云易盾-领先的应用加固服务商,兼容性高,0损耗,安全性高,免费试用.unity3d加密,网易云易盾提供防逆向,防篡改,防调试,防二次打包等一站式应用加固方案.

以上是从百度上取出的产品内容描述,其实就是文案了,准确来说从字面上Virbox Protector,对功能的描述稍微多点,全面一点。我们在接着看网易云盾,强调的应该更多的是完整性。(这是我们个人的感觉而已)

接着我们在接着往下走,我们分别点击文案进去网页:

http://www.sense.com.cn/VirboxProtector.html?code=52595c658a

深思Virbox Protector与网易云易盾产品对比分析-编程知识网

http://dun.163.com/product/android-reinforce?from=baiduP_YYJG_YYJGchuangyi

深思Virbox Protector与网易云易盾产品对比分析-编程知识网

从首页的头部焦点能看出来,不管是深思数盾的Virbox Protector,还是网易的云易盾,都是在最明显的位置给用户提供了,下载与试用的功能,这样可以让开发者更快的接入系统,试用产品,不迷路!

再接下面便是产品的功能PK了。据说Unity3D使用开源mono C#语法 ,所有代码都不是编译到EXE,而是位于{APP}\build\game_Data\Managed\Assembly-CSharp.dll(对于最新的Unity3D 2017不是这样),而且mono语法只是跟C#兼容,但是原理完全不一样,传统的C#加壳全部失效,因为Assembly-CSharp.dll 不是标准的DLL加载过程,既不是PE的DLL也不是dotNet的DLL加载,而是由mono.dll读取 Assembly-CSharp.dll的C#脚本解释执行。

所以对应上门我们所说到的背景,我们在来看看深思数盾的Virbox Protector与网易云易盾两款产品就能看出其中的微妙情况了。

深思Virbox Protector与网易云易盾产品对比分析-编程知识网

根据网站页面上门的描述,我们可以看出Virbox Protector有几个点:

1、代码逻辑一键加密,无法反编译,无法dump内存。

2、不降低与特殊情况下提升游戏帧数。

3、Assembly.DLLL代码按需解密,只有调用到才会在内存解密,不调用不解密,防止黑客破解。

4、完整授权方案,支持virbox LM平台(云、软)加密授权,可限时限次与网络并发。

5、自带反黑引擎,驱动级别反调试,秒杀市面的所有调试器。

以上的关于Virbox Protector的功能及亮点(总结整理),接着我们在看看网易云易盾的模式。

深思Virbox Protector与网易云易盾产品对比分析-编程知识网

同样根据网站页面上门的描述,我们可以看出网易云易盾的几个点:

其中最核心的点在于领先的VMP虚拟机源码保护

1、专业手游保护,支持多种游戏框架,反外挂,防加速器,防修改器

2、内存防Dump保护,防止通过在内存中破解获取源码

3、DEX加固,对DEX文件进行加壳防护,防止被静态反编译工具破解获取源码

4、U3D脚本保护,对U3D脚本文件进行加壳保护,对DLL文件进行保护

5、SO加密保护,对SO文件的逻辑进行保护,防止核心代码被逆向分析

我们从双方的官网上同样找出了5个点,做对比我想各位应该能很清楚的看出其中的差别吧,其实大部分的属性性质都是差不多的,主要都是从保护的形式入手,说白了就是看开发者的实际需求了,不同的需求试用不同的产品,最终能够达到最终的目的即可。

另外Virbox Protector的同学提供了几张保护案例图,我们也一起看看吧,主要从加壳、反编译的角度上去说明,值得一提的是网易云易盾也有DEX加固的功能,也是加壳的一种吧。

dnspy 反编译被加壳的结果:

深思Virbox Protector与网易云易盾产品对比分析-编程知识网

写到这这里,基本上我个人对产品的上的差异化,就那么多了,最好想在提一嘴,如果开发者朋友想去试用产品的话,上文中的官方链接已经提供,可以自己去体验下载,另外我们在上文说到一个名称,virbox LM,针对这个点我解释一下。

深思Virbox Protector与网易云易盾产品对比分析-编程知识网

据了解virbox LM,是一个新的平台,官网地址:https://lm.virbox.com/,大概看了下平台是根据之前深思数盾产品云、软锁重新组合形成,其功能又与Virbox Protector相辅相成,在授权、许可等方面有它独特的见解与作用。上文中我们提到的Virbox Protector中的第四点,完整授权方案,支持virbox LM平台(云、软)加密授权,可限时限次与网络并发,也体现出它与virbox LM的相辅相成。