[發明專利]基于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.szxzyx.cn/pat/books/201910649077.4/2.html,轉載請聲明來源鉆瓜專利網。





