本文目录一览:
Unity打包好的游戏可以反编译得到源码和资源吗
1、可以,80%以上的Unity游戏都根本没做代码混淆和资源加密,简直都对不起反编译三个字。直接拿来用就可以。工具的话,看代码用reflector。
2、如果完全不做加密是可以的,但是反编译出来的代码在组织性上不好。
3、有的源码可以得到,有的资源部分可以得到,但是现在上线的游戏都会加密的,unity付费有这个功能,有的公司自己加密,你见过几个人有英雄联盟人物的原版动画模型。你如果想要学习的话可以上某宝买,大部分很便宜。
4、在Unity3D中,代码会编译到Assembly-CSharp.dll。基于以上两点,代码的保护有以下两种:第一种是对代码进行混淆,诸如混淆软件CodeGuard、CryptoObfuscator、de4dot 第二种是对Assembly-CSharp.dll进行加密后,重新对mono进行编译。Virbox Protector直接进行加壳后,无需手动编译mono,能防止反编译。
如何将已经打包好的unity游戏反编译为工程文件夹(不是提取资源,是直接...
第一种是对代码进行混淆,诸如混淆软件CodeGuard、CryptoObfuscator、de4dot 第二种是对Assembly-CSharp.dll进行加密后,重新对mono进行编译。Virbox Protector直接进行加壳后,无需手动编译mono,能防止反编译。
进行准备工作,确保IDA Pro已下载并准备好使用。为演示操作,以下将以Windows操作系统为例。面对加密的.dll文件,借助.IDF Reflector进行反编译可能会遇到问题,如无法解析加密内容。引入IDA Pro,载入游戏程序。
如果完全不做加密是可以的,但是反编译出来的代码在组织性上不好。
在Unity3D中,代码会编译到Assembly-CSharp.dll。基于以上两点,代码的保护有以下两种:第一种是对代码进行混淆,诸如混淆软件CodeGuard、CryptoObfuscator、de4dot 第二种是对Assembly-CSharp.dll进行加密后,重新对mono进行编译。
有的源码可以得到,有的资源部分可以得到,但是现在上线的游戏都会加密的,unity付费有这个功能,有的公司自己加密,你见过几个人有英雄联盟人物的原版动画模型。你如果想要学习的话可以上某宝买,大部分很便宜。
如何防止unity3d代码被反编译?
1、防止Unity3D代码被反编译是手游安全中常见的破解风险。Unity的破解风险主要体现在Unity mono脚本解密、Unity il2cpp脚本解析、Assetbundle资源篡改三项。mono脚本文件的二进制形式及源码转换图示,展示了如何对mono脚本进行解密。
2、根本的解决办法是:先对DLL加密,然后在Unity的源码中加载程序DLL之前进行解密。这就需要通过逆向工程获得相应的Unity源码或者是直接向Unity购买Source Code License。
3、在Unity3D中,代码会编译到Assembly-CSharp.dll。基于以上两点,代码的保护有以下三种:第一种是对代码进行混淆,诸如混淆软件CodeGuard、CryptoObfuscator、de4dot第二种是对Assembly-CSharp.dll进行加密后,重新对mono进行编译。
4、进行代码混淆,增加反编译代码解析难度。混淆工具: Dotfuscator、xeoncode、foxit 本人试验过Dotfuscator、xeoncode 前者混淆较为简单,后者混淆效果比较不错。前者是微软开发的,有很多功能,筛选混淆代码较简单,后者成都高,但是感觉工具不完善,很多东西都需要手动操作。
5、还有一个是把一些关键代码写成Native插件,但这样做我觉得完全就没有使用Unity的优势了,所以也不是很推荐。如果是涉及网络的游戏,另一个相对有效的解决方案是把逻辑放在服务端,基本上不给客户端Gameplay逻辑层的信任,客户端只负责只发送具体操作。对于非在线游戏我确实没看到什么有效的解法。
6、一键加密代码逻辑,无法反编译,无法dump内存。不降低游戏帧数,自带反黑引擎,驱动级别反调试,秒杀市面的所有调试器。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。