[發明專利]代碼安全保護方法、裝置、電子設備和計算機可讀存儲介質在審
| 申請號: | 201910190218.0 | 申請日: | 2019-03-13 |
| 公開(公告)號: | CN109948308A | 公開(公告)日: | 2019-06-28 |
| 發明(設計)人: | 周源;寧志斌 | 申請(專利權)人: | 智者四海(北京)技術有限公司 |
| 主分類號: | G06F21/14 | 分類號: | G06F21/14 |
| 代理公司: | 北京超凡志成知識產權代理事務所(普通合伙) 11371 | 代理人: | 李強 |
| 地址: | 100000 北京市海淀區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 虛擬機 字節碼 計算機可讀存儲介質 標記指令 代碼安全 電子設備 虛擬指令 原始代碼 腳本語言代碼 可執行文件 反向工程 腳本語言 保密性 傳統的 解釋器 合并 轉換 非法 | ||
本公開實施例提供了一種代碼安全保護方法、裝置、電子設備和計算機可讀存儲介質,該方法包括:將腳本語言的原始代碼轉換為不同類型的虛擬指令;將該不同類型的虛擬指令編碼為虛擬機字節碼,該虛擬機字節碼包括用于標記指令類型的第一部分和用于標記指令數據的第二部分;將該虛擬機字節碼與虛擬機解釋器合并為第一可執行文件。本公開實施例提高了腳本語言代碼的保密性和對抗性,防止原始代碼通過傳統的反向工程被非法獲取。
技術領域
本公開涉及計算機安全技術領域,具體而言,涉及一種代碼安全保護方法、裝置、電子設備和計算機可讀存儲介質。
背景技術
代碼混淆是將計算機程序代碼轉換成一種功能上等價,但是難以閱讀和理解的形式,主要目的是為了保護原始代碼,阻止反向工程。例如,將原始代碼中的各種元素,如變量、函數、類的名字改成無意義的名字,或者打亂代碼的格式,或者重寫代碼中的部分邏輯,或者添加垃圾代碼已達到隱藏真實代碼的目的。對于動態腳本語言而言,其原始代碼的混淆還可以基于文本變換將代碼變換成另一種文本形式,再在運行時動態執行。
但是,本公開的發明人發現,上述混淆方法無法完全阻止腳本語言的原始代碼通過反向工程被獲取。
發明內容
在下文中將給出關于本公開實施例的簡要概述,以便提供關于本公開實施例的某些方面的基本理解。應當理解,此概述并不是關于本公開實施例的窮舉性概述。它并不是意圖確定本公開實施例的關鍵或重要部分,也不是意圖限定本公開實施例的范圍。其目的僅僅是以簡化的形式給出某些概念,以此作為稍后論述的更詳細描述的前序。
根據本公開內容的第一方面,提供一種代碼安全保護方法,包括:
將腳本語言的原始代碼轉換為不同類型的虛擬指令;
將該不同類型的虛擬指令編碼為虛擬機字節碼,該虛擬機字節碼包括用于標記指令類型的第一部分和用于標記指令數據的第二部分;
將該虛擬機字節碼與虛擬機解釋器合并為第一可執行文件。
根據本公開內容的第二方面,提供一種代碼安全保護裝置,包括:
轉換模塊,被配置為將腳本語言的原始代碼轉換為不同類型的虛擬指令;
編碼模塊,被配置為將該不同類型的虛擬指令編碼為虛擬機字節碼,該虛擬機字節碼包括用于標記指令類型的第一部分和用于標記指令數據的第二部分;
合并模塊,被配置為將該虛擬機字節碼與虛擬機解釋器合并為第一可執行文件。
根據本公開內容的第三方面,提供一種電子設備,包括存儲器和處理器;其中,該存儲器存儲有計算機程序,該計算機程序被該處理器執行以實現前述方法。
根據本公開內容的第四方面,提供一種計算機可讀存儲介質,其上存儲有計算機程序,該計算機程序被處理器執行時實現前述方法。
本公開實施例通過虛擬指令編碼將腳本語言的原始代碼轉化為語義等價的虛擬機字節碼,并將虛擬機字節碼綁定到自定義的虛擬機解釋器進行解釋執行,從而提高了腳本語言代碼的保密性和對抗性,防止原始代碼通過傳統的反向工程被非法獲取。
附圖說明
為了更清楚地說明本公開實施例的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,應當理解,以下附圖僅示出了本公開的某些實施例,因此不應被看作是對范圍的限定,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他相關的附圖。
圖1為根據本公開一實施例的代碼安全保護方法的流程示意圖;
圖2是根據本公開實施例的16位二進制指令編碼的示例圖;
圖3為根據圖1所述代碼安全保護方法的子流程示意圖;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于智者四海(北京)技術有限公司,未經智者四海(北京)技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910190218.0/2.html,轉載請聲明來源鉆瓜專利網。





