unity3D加密如何做到防编译?
先介绍对unity3D程序进行加密的几种方式。
Unity3D是一个基于Mono框架的跨平台游戏开发引擎,Unity3D所使用的Mono属于Mono开源项目的分支
在Unity3D中,代码会编译到Assembly-CSharp.dll。基于以上两点,代码的保护有以下三种:
第一种是对代码进行混淆,诸如混淆软件CodeGuard、CryptoObfuscator、de4dot
第二种是对Assembly-CSharp.dll进行加密后,重新对mono进行编译。
第三种是由Unity社区提供的10万一个文件的加密方式
对比以上三种方式,Unity3D程序保护主要有以下几个问题:
问题1:对代码进行加密后,需要自己重新编译修改Mono库
问题2:代码混淆有很多限制,保护代码作用不大。
问题3:混淆或者加密后,很容易被动态反编译调试破解
问题4:成本较高,难维护
基于云授权平台,深思研发出首款适用于Unity3D的加壳工具:Virbox Protector。具有如下功能:
1.智能加密:一键加密软件源码,无需手动加密Assembly.DLL代码,自动编译mono,可达到无法反编译,无法dump内存的效果;
2.平衡性能:不降低游戏帧数, 高运算性使部分功能可提高游戏帧数;
3. 按需解密:Assembly.DLL代码按需解密,只有调用到才会在内存解密,不调用不解密,合理分配资源;
4.完整授权方案:支持云授权 软锁授权,USB加密锁授权、网络锁授权,支持限时、限次 限网络并发,实现多种运行环境无缝切换,适应软件多种销售场景
5.自带反黑引擎:驱动级别反调试,秒杀市面的所有调试器(dnspy、WinDbg/OllyDbg/X64Dbg)。
典型客户场景:
1.Unity3D游戏客户街机游戏;
2.VR设备交互体验;
3.机器/医疗/工业/航天等VR交互
深思VirboxProtector 免费下载 :http://www.sense.com.cn/VirboxProtector.html?code=7098072d7f
unity3D加密如何做到防编译?的更多相关文章
- Unity3D加密流程文档
一键搞定源代码.资源等保护 代码被反编译破解,无可奈何? Unity3D 开发的软件程序,无论使用虚拟化,还是混淆,都无法抵抗住黑客丧心病狂的破解,轻松被反编译,令开发商无比头疼. 图片等资源保护被盗 ...
- 一键自动发布ipa(更新svn,拷贝资源,压缩资源,加密图片资源,加密数据文件,加密lua脚本,编译代码,ipa签名,上传ftp)
一键自动发布ipa(更新svn,拷贝资源,压缩资源,加密图片资源,加密数据文件,加密lua脚本,编译代码,ipa签名,上传ftp) 程序员的生活要一切自动化,更要幸福^_^. 转载请注明出处http: ...
- Unity3D 加密 Assembly-CSharp.dll (Android平台) 防止反编译【转】
转自 http://blog.csdn.net/u013108312/article/details/54234439
- Unity3D加密保护解决方案
精锐5加密锁支持Unity3D代码及资源保护,并提供授权方案 产品简介 可使用Virbox Protector加壳工具对Unity3D代码进行加密.Unity3D使用开源mono C#语法,代码会编译 ...
- Unity3D加密保护案例分享(一)
Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎.通过u ...
- unity3d 加密资源并缓存加载
原地址:http://www.cnblogs.com/88999660/archive/2013/04/10/3011912.html 首先要鄙视下unity3d的文档编写人员极度不负责任,到发帖为止 ...
- (转)unity3d加密资源并缓存加载
http://www.haogongju.net/art/1931680 首先要鄙视下unity3d的文档编写人员极度不负责任,到发帖为止依然没有更新正确的示例代码. view source pr ...
- 鸿蒙内核源码分析(编译脚本篇) | 如何防编译环境中的牛皮癣 | 百篇博客分析OpenHarmony源码 | v58.01
百篇博客系列篇.本篇为: v58.xx 鸿蒙内核源码分析(环境脚本篇) | 编译鸿蒙原来如此简单 | 51.c.h.o 本篇用两个脚本完成鸿蒙(L1)的编译环境安装/源码下载/编译过程,让编译,调试鸿 ...
- Unity3D 多平台_预编译相关宏定义
http://www.cnblogs.com/zhaoqingqing/p/3510332.html API地址:http://docs.unity3d.com/Documentation/Manua ...
随机推荐
- 2017第八届蓝桥杯 K倍区间
标题: k倍区间 给定一个长度为N的数列,A1, A2, - AN,如果其中一段连续的子序列Ai, Ai+1, - Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍区间. ...
- 为什么java局部变量没有初始化就会报错,而成员变量没有初始化就不会报错?
代码如下 1.局部变量,报错!!! public void test(){ int i; System.out.println(i); } 2.成员变量,输出0 int i; @Test public ...
- 内置函数--global() 和 local()
一 . globals :返回当前作用域内全局变量的字典. >>> globals() {'__spec__': None, '__package__': None, '__bu ...
- 阻止微信浏览器/QQ浏览器长按弹框“在浏览器打开”
这个弹框实际上等同于PC环境下的鼠标右键的弹框,因此只要禁止页面的弹框事件就能完美屏蔽该弹框对我们功能带来的影响.程序代码如下: document.oncontextmenu=function(e){ ...
- linux权限归属及特殊权限设置
访问权限:读取:允许查看内容 -read写入:允许修改内容 -write可执行:允许运行和切换 -excute(以上三点rwx共同决定最终权限)归属关系:所有者:拥有此文件/目录的用户 -user所属 ...
- 笔记︱决策树族——梯度提升树(GBDT)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 本笔记来源于CDA DSC,L2-R语言课程所 ...
- Flex读取txt文件中的内容报错
Flex读取txt文件中的内容 1.具体错误如下 2.错误原因 读取文件不存在 var file:File = new File(File.applicationDirectory.nativePat ...
- freemarker自定义标签(三)-nested指令
freemarker自定义标签 1.nested指令 是可选的,可以在<#macro>和</#macro>之间使用在任何位置和任意次数 2.示例说明 <#macro ta ...
- Cookie操作类、压缩、序列化
1.cookie类 CartCookie.cs using System; using System.Data; using System.Configuration; using System.We ...
- 使用jQuery的一些建议
1.尽可能使用id选择器而不是类选择器 例如: //html <p id="chooseId">测试文本</p> //jQuery console.time ...