Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Encryption Unity3D构建代码加密_Encryption_Unity3d_Build_.net Assembly - Fatal编程技术网

Encryption Unity3D构建代码加密

Encryption Unity3D构建代码加密,encryption,unity3d,build,.net-assembly,Encryption,Unity3d,Build,.net Assembly,我想知道是否有可能在Unity3D构建中对编译后的代码进行加密,以使反编译DLL不会让潜在黑客访问易读的源代码 Cosmore在这篇文章中指出 '加密程序集DLL并修改mono加载程序(libmono.so)' 我的问题是,有人这样做过吗?如果是,怎么做?它可以在Windows、Mac和Linux版本上实现吗 如果不可能,还有其他方法吗?但是黑客应该能够运行构建(即玩游戏) 那么在原则上这是不可能的。虽然您可以加密代码,但还必须提供密钥,以便人们可以播放(解密) 所以你只是给黑客增加了一层模糊处

我想知道是否有可能在Unity3D构建中对编译后的代码进行加密,以使反编译DLL不会让潜在黑客访问易读的源代码

Cosmore在这篇文章中指出

'加密程序集DLL并修改mono加载程序(libmono.so)'

我的问题是,有人这样做过吗?如果是,怎么做?它可以在Windows、Mac和Linux版本上实现吗


如果不可能,还有其他方法吗?

但是黑客应该能够运行构建(即玩游戏)

那么在原则上这是不可能的。虽然您可以加密代码,但还必须提供密钥,以便人们可以播放(解密)

所以你只是给黑客增加了一层模糊处理。经验丰富的黑客只需拆解dll加载程序,将断点放在内容已经解密的位置,并将其转储以进行进一步修补


这就是说,并不是每个黑客都是经验丰富的黑客,几层(意料之外的)迷惑可能会让他们离开。因此,实际上一些加密/模糊处理是由一些人完成的,即使原则上这是没有希望的。

也许有一种方法可以将解密添加到Monoliader中,以便它在运行时解密(?)。。不确定这是否可能。问题中的链接指向一篇文章,该文章提出了这一点或类似的建议。此外,我们不希望黑客证明它(我们知道,这是不可能的)。。我们只是在寻找一种阻止潜在黑客并保护源代码的方法。是的,这就是提示,在加载过程中动态解密,这就是我放置断点提取解密代码的地方。但我不重新开发应用程序,也不是每个“脚本小子”都能做到这一点。但在您的方向上也是如此,不是每个人都能够创建这样的多平台解密加载程序。这就是为什么有不同的商业软件包承诺为不同平台加密/混淆代码的原因。您是否检查了Unity3D是否提供了一些?(我对Unity不感兴趣,所以我不关注SW)非常感谢您的提示。我将对Unity的商业加密软件包做一些研究。有什么更新吗?我知道这是可能的,因为一场团结的比赛正在这样做,但我自己也想知道这一点。