[发明专利]基于Mono的Unity插件加密方法、存储介质在审
申请号: | 201910649077.4 | 申请日: | 2019-07-18 |
公开(公告)号: | CN110472425A | 公开(公告)日: | 2019-11-19 |
发明(设计)人: | 刘德建;官泉;陈宏展 | 申请(专利权)人: | 福建天晴在线互动科技有限公司 |
主分类号: | G06F21/60 | 分类号: | G06F21/60;G06F21/12 |
代理公司: | 35214 福州市博深专利事务所(普通合伙) | 代理人: | 张明<国际申请>=<国际公布>=<进入国 |
地址: | 350001 福*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 插件 加密 编译 编辑器 常量 字符串数据 存储介质 加密效率 检查文件 解密函数 逆向工程 文件替换 指令数据 自动还原 对插件 屏蔽 加载 源码 调用 载入 共享 安全 | ||
本发明提供一种基于Mono的Unity插件加密方法、存储介质,方法包括:对插件Dll文件的指令数据块和常量字符串数据块进行加密;在Mono文件中的载入插件Dll文件函数内增加对所述加密的解密函数的调用,得到编译后的Mono文件;对所述编译后的Mono文件进行加壳;将Unity编辑器中的Mono文件替换为加壳后的编译后的Mono文件,且屏蔽Unity编辑器的检查文件。本发明能够使逆向工程无法自动还原出插件Dll文件的源码,从而确保共享插件Dll的安全;而且确保插件能正确加载和执行;进一步地,还具备较高的加密效率和广泛的运用范围。
技术领域
本发明涉及Unity领域,具体涉及基于Mono的Unity插件加密方法、存储介质。
背景技术
目前,在Unity二次开发人员与其他协作部门,如美术、策划、任务等部门进行协作开发时,开发人员需要提供Unity插件给相关协作人员。协作人员获取到插件后,在Unity编辑器内载入插件,进行使用;而插件一般由C#语言编写,被Mono或者.Net编译器编译成Dll文件。由于Dll文件容易被逆向工程直接查看源代码,因此具有代码泄漏的风险。
外界虽然有Unity加固应用包的方案,但是并不适用于运行在Unity编辑器里的Dll插件加密,也不适用在部门协作中这一具体应用场景。
现有技术可参考的方案,在实际项目实践中发现存在以下缺点:
1、采用全文加密,会使Unity编辑器加载插件Dll文件时,Dll文件被认作非托管Dll而跳过Mono的载入和解析过程,导致加密方案失效。
2、采用删除或者加密Dll特征值,则会使Unity编辑器加载插件Dll文件时,先行载入未解密的Dll导入表,导致无法载入关联的Dll,进而Unity编辑器程序崩溃。
因此,有必要提供一种基于Mono的Unity插件加密方法、存储介质,以实现对Unity插件的应用包进行保护。
另外,申请号为CN201711260537.1,公开的《一种安卓应用的加固方法和装置》,其涉及对安卓应用的加固,与本申请的加密方式类似,但是至少存在以下本质区别:1、其只能适用于安卓平台,而无法适用于Unity的windows操作系统平台;2、并且,其申明的so文件为libmono.so;而本申请提供的方法为Mono.dll以及支持MonoBleedingEdge的mono-2.0-bdwgc.dll和mono-2.0-sgen.dll;3、其加密方式为对各个函数进行指令变换;而本申请无需去查找各个函数,而是直接找到指令数据块进行加密,速度更快,更高效;4、所述dll文件为Assembly-CSharp.dll文件;本申请的DLL文件为C#编译生成的Dll文件,本申请的适应范围更广;5、其替换的libmono.so是在应用包打包完成后,进行加固操作时进行替换;而本申请替换的是unity编辑器里的,是开发状态的时候进行加固,在打包之前;6、其修改了用于安装到手机上的APK包;而本申请修改了WINDOWS电脑里美术、策划里安装的UNITY编辑器。
发明内容
本发明所要解决的技术问题是:针对windows平台提供一种基于Mono的Unity插件加密方法、存储介质,且加密效率高。
为了解决上述技术问题,本发明采用的技术方案为:
一种基于Mono的Unity插件加密方法,包括:
对插件Dll文件的指令数据块和常量字符串数据块进行加密;
在Mono文件中的载入插件Dll文件函数内增加对所述加密的解密函数的调用,得到编译后的Mono文件;对所述编译后的Mono文件进行加壳;
将Unity编辑器中的Mono文件替换为加壳后的编译后的Mono文件,且屏蔽Unity编辑器的检查文件。
本发明提供的另一个技术方案为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建天晴在线互动科技有限公司,未经福建天晴在线互动科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910649077.4/2.html,转载请声明来源钻瓜专利网。