[發明專利]一種防止java程序被反編譯的系統有效
| 申請號: | 202110382600.9 | 申請日: | 2021-04-09 |
| 公開(公告)號: | CN113094665B | 公開(公告)日: | 2022-08-05 |
| 發明(設計)人: | 劉宇;方毅;葉新江;董霖;俞鋒鋒;陳文容;徐啟東 | 申請(專利權)人: | 每日互動股份有限公司 |
| 主分類號: | G06F21/14 | 分類號: | G06F21/14 |
| 代理公司: | 北京鍾維聯合知識產權代理有限公司 11579 | 代理人: | 丁慧玲 |
| 地址: | 310012 浙江省杭州*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 防止 java 程序 反編譯 系統 | ||
本發明涉及一種防止java程序被反編譯的系統,包括預設的加密函數、加密密鑰、解密密鑰和解密函數,處理器和存儲有計算機程序的存儲器,當所述計算機程序被處理器執行時,實現以下步驟:步驟C1、監測編譯器是否將待處理的java源代碼全部編譯成對應的第一java字節碼,若編譯完成,則執行步驟C2;步驟C2、掃描所述第一java字節碼,若掃描到常量字符串,則調用所述加密函數和加密密鑰將掃描到的常量字符串進行加密,得到對應的加密字符串;步驟C3、將掃描到的常量字符串替換為所述解密函數的調用,并將所述解密函數對應的調用參數設置為該常量字符串對應的加密字符串。本發明能夠防止java程序被反編譯,提高了java程序的安全性。
技術領域
本發明涉及計算機技術領域,尤其涉及一種防止java程序被反編譯的系統。
背景技術
隨著安卓技術的快速發展,開發了大量的安卓應用程序,安卓應用程序通常基于Java語言編寫。Java是一種跨平臺的、解釋型語言,Java編譯工具將Java源代碼編譯成為Java字節碼文件,由Java虛擬機負責對Java字節碼文件進行解釋執行。Java字節碼文件中保留了方法名稱、變量名稱,并且通過這些名稱來訪問變量和方法,這些符號往往帶有許多語義信息。因此,對于基于java編寫的應用程序很容易被反編譯,得到java源代碼。因此為了提高java程序的安全性,避免java程序被反編譯,如何提供一種防止java程序被反編譯的技術,提高java程序的安全性成為亟待解決的技術問題。
發明內容
本發明目的在于,提供一種防止java程序被反編譯的系統,能夠防止java程序被反編譯,提高了java程序的安全性。
根據本發明第一方面,提供了一種防止java程序被反編譯系統,包括預設的加密函數、加密密鑰、解密密鑰和解密函數,處理器和存儲有計算機程序的存儲器,當所述計算機程序被處理器執行時,實現以下步驟:
步驟C1、監測編譯器是否將待處理的java源代碼全部編譯成對應的第一java字節碼,若編譯完成,則執行步驟C2;
步驟C2、掃描所述第一java字節碼,若掃描到常量字符串,則調用所述加密函數和加密密鑰將掃描到的常量字符串進行加密,得到對應的加密字符串;
步驟C3、將掃描到的常量字符串替換為所述解密函數的調用,并將所述解密函數對應的調用參數設置為該常量字符串對應的加密字符串。
本發明與現有技術相比具有明顯的優點和有益效果。借由上述技術方案,本發明提供的一種名稱可達到相當的技術進步性及實用性,并具有產業上的廣泛利用價值,其至少具有下列優點:
本發明能夠增加java程序被反編譯的難度,有效防止java程序被反編譯,提升了java程序的安全性。
上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發明的上述和其他目的、特征和優點能夠更明顯易懂,以下特舉較佳實施例,并配合附圖,詳細說明如下。
附圖說明
圖1為本發明實施例一的防止java程序被反編譯流程示意圖;
圖2為本發明實施例二的防止java程序被反編譯流程示意圖;
圖3為本發明實施例三的防止java程序被反編譯流程示意圖;
圖4為本發明實施例四的防止java程序被反編譯流程示意圖。
具體實施方式
為更進一步闡述本發明為達成預定發明目的所采取的技術手段及功效,以下結合附圖及較佳實施例,對依據本發明提出的一種名稱的具體實施方式及其功效,詳細說明如后。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于每日互動股份有限公司,未經每日互動股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110382600.9/2.html,轉載請聲明來源鉆瓜專利網。





