[發(fā)明專利]一種保護JAVA程序自身安全的方法在審
| 申請?zhí)枺?/td> | 201410447116.X | 申請日: | 2014-09-04 |
| 公開(公告)號: | CN104200137A | 公開(公告)日: | 2014-12-10 |
| 發(fā)明(設計)人: | 何志平 | 申請(專利權)人: | 成都衛(wèi)士通信息產(chǎn)業(yè)股份有限公司 |
| 主分類號: | G06F21/14 | 分類號: | G06F21/14 |
| 代理公司: | 成都九鼎天元知識產(chǎn)權代理有限公司 51214 | 代理人: | 詹永斌 |
| 地址: | 610041 四*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 保護 java 程序 自身 安全 方法 | ||
1.一種保護JAVA程序自身安全的方法,其特征在于,包含如下步驟:
步驟1:將JAVA源程序編譯為結構化CLASS文件;
步驟2:對結構化CLASS文件進行簽名和加密。將JAVA標準的結構化CLASS文件轉換為密文CLASS文件;
步驟3:?對密文CLASS文件進行解密得到結構化CLASS文件;
步驟4:對結構化CLASS文件進行簽名驗證,簽名通過驗證時JAVA字節(jié)碼被送到JVM中運行。
2.如權利要求1所述的保護JAVA程序自身安全的方法,其特征在于,所述步驟1具體為:用SM2算法和SM3算法對JAVA程序的字節(jié)碼文件進行簽名,將簽名值和CLASS文件按照固定格式合并到一個文件中,得到結構化CLASS文件。
3.如權利要求1所述的保護JAVA程序自身安全的方法,其特征在于,所述步驟2采用SM4算法對CLASS文件進行加密。
4.如權利要求1所述的保護JAVA程序自身安全的方法,其特征在于,所述步驟3采用SM4算法對密文CLASS進行解密得到結構化CLASS文件。
5.如權利要求1所述的保護JAVA程序自身安全的方法,其特征在于,所述步驟4具體為:從結構化CLASS文件中取出簽名值和JAVA字節(jié)碼進行簽名驗證,只有簽名通過驗證時JAVA字節(jié)碼才會被送到JVM中運行。
6.如權利要求5所述的保護JAVA程序自身安全的方法,其特征在于,步驟4中,沒有通過簽名驗證的結構化CLASS文件被禁止在JVM中運行并記錄程序已被篡改的告警日志信息。
7.如權利要求5所述的保護JAVA程序自身安全的方法,其特征在于,步驟4中JVM中運行結構化CLASS文件的步驟具體為:
步驟a:啟動JVM;
步驟b:向JVM注冊監(jiān)聽CLASS文件加載事件;
步驟c:為CLASS文件加載事件注冊一個回調(diào)函數(shù);
步驟d:在回調(diào)函數(shù)中對密文的CLASS文件進行解密和簽名驗證。
8.如權利要求7所述的保護JAVA程序自身安全的方法,其特征在于,步驟4中采用JVMTI的客戶端來實現(xiàn)當JVM加載CLASS文件時自動實時的將密文CLASS文件解密為JAVA標準的字節(jié)碼;所述JVMTI客戶端被編譯成一個動態(tài)鏈接庫,并在啟動JVM時傳入JVM;采用JVM啟動時將調(diào)用JVMTI客戶端的Agent_OnLoad函數(shù)對JVMIT客戶端進行初始化。
9.如權利要求8所述的保護JAVA程序自身安全的方法,其特征在于,步驟4中,在Agent_OnLoad函數(shù)中可以利用SetEventNotificationMode向JVM注冊監(jiān)聽CLASS文件加載事件,利用SetEventCallbacks函數(shù)為CLASS文件加載事件掛接一個回調(diào)函數(shù),當JVM加載CLASS文件時,該回調(diào)函數(shù)就會被調(diào)用。
10.如權利要求1所述的保護JAVA程序自身安全的方法,其特征在于,步驟4中,在回調(diào)函數(shù)中對密文CLASS文件進行解密和簽名驗證處理,先用SM4算法對密文CLASS進行解密,得到結構化CLASS文件,再從結構化CLASS文件中取出簽名值和JAVA?字節(jié)碼進行簽名驗證。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于成都衛(wèi)士通信息產(chǎn)業(yè)股份有限公司;,未經(jīng)成都衛(wèi)士通信息產(chǎn)業(yè)股份有限公司;許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410447116.X/1.html,轉載請聲明來源鉆瓜專利網(wǎng)。





