[發(fā)明專利]基于license文件對JAVA類軟件實現(xiàn)授權控制的方法在審
| 申請?zhí)枺?/td> | 202010548138.0 | 申請日: | 2020-06-16 |
| 公開(公告)號: | CN111737657A | 公開(公告)日: | 2020-10-02 |
| 發(fā)明(設計)人: | 陳琳;崔嶺峰;黃杰 | 申請(專利權)人: | 湖南省星岳天璇科技有限公司 |
| 主分類號: | G06F21/12 | 分類號: | G06F21/12;G06F21/52 |
| 代理公司: | 湖南兆弘專利事務所(普通合伙) 43008 | 代理人: | 周長清;鄒大堅 |
| 地址: | 410205 湖南省長沙市高新開發(fā)區(qū)*** | 國省代碼: | 湖南;43 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 license 文件 java 軟件 實現(xiàn) 授權 控制 方法 | ||
一種基于license文件對JAVA類軟件實現(xiàn)授權控制的方法,其步驟包括:步驟S1:上層用戶軟件首次啟動時生成本機安裝序列號;步驟S2:通過頁面提交軟件注冊信息;步驟S3:通過文件監(jiān)聽器生成.lcf2注冊文件,并檢測文件是否有效;如果有效進行步驟S4,否則跳到步驟S6;步驟S4:與用戶軟件之間建立管道文件.pipe1,向管道中發(fā)送授權參數(shù);步驟S5:用戶軟件讀取授權控制參數(shù),立即拆除管道文件;用戶軟件被控制只能在授權模式下運行;步驟S6:用戶軟件主進程被操作系統(tǒng)強制殺死,注冊控制進程主動退出,至此整個軟件的生命周期結束。本發(fā)明具有原理簡單、易實現(xiàn)、適用范圍廣、授權管理保密性更好等優(yōu)點。
技術領域
本發(fā)明主要涉及到軟件授權管理技術領域,特指一種基于license文件對JAVA類軟件實現(xiàn)授權控制的方法。
背景技術
由于JAVA代碼本身限制,JVM虛擬機上運行的是符合規(guī)范的class二進制文件,通過常用的反匯編工具可以查看完整的原始代碼;而在對軟件的授權使用方面的控制基本方法是通過一定的算法計算出一系列注冊號,由軟件的開發(fā)組織發(fā)給對應的軟件使用者,軟件啟動和使用過程中再根據(jù)相同的算法還原注冊號對應的鑒權信息加以驗證。
針對上述傳統(tǒng)的方法和機制依然存在很大的風險,具體包括如下:
(1)使用一些JAVA代碼層的混淆工具,如proguard等對編譯工具輸入的.class文件做混淆,原方法名、變量名會變成a.b.c之類的名稱;是可以在一定程度上對反匯編出來代碼的可讀性起到一定的加強作用,但這也取決于源碼中邏輯的復雜性,越是復雜的代碼混淆后被反匯編出來的源碼越難讀懂,只是增大破譯難度,本質(zhì)上并沒有起到代碼加密的效果,高級的軟件開發(fā)人員只要多花些時間成本還是可以讀出原判斷邏輯進而達到軟件破解目的。
(2)對原始的核心受修護的.class類文件做一次加密處理,再通過自定義的JAVA類加載器實現(xiàn)對這個class文件的解密加載處理。由于加過密后的類文件不符合class文件的規(guī)范,所以自然是不可能被反匯編工具看到源碼的,可以起到對類文件的保存作用。這里的核心問題是對加密時使用的秘鑰的管理(參見下面的第3點說明),如果保護不當同樣會被輕易破解。
(3)對于秘鑰的管理常用做法一個是放到軟件自身的某個隱藏目錄或者操作系統(tǒng)比較隱蔽的目錄里面,這種方式在操作系統(tǒng)的進程查看工具是非常容易被發(fā)現(xiàn)的,起不到保護作用。另外一種做法是通過網(wǎng)絡的方式讀取軟件開發(fā)商服務器下發(fā)的加密秘鑰,網(wǎng)絡使用ssl方式加密傳輸可以保護秘鑰在網(wǎng)絡傳輸過程中不被截獲。這種方式的秘鑰本身可以做到定期更新縮短時效性,從而加大被破解難度。軟件注冊碼的下發(fā)一般也可采用這種方式獲取。這里存在的問題是軟件必須處在聯(lián)網(wǎng)環(huán)境中,否則軟件自身也無法實現(xiàn)自解密正常運行。破解人員可以在斷網(wǎng)情況下輕松實現(xiàn)對軟件的破解。
(4)對核心的授權代碼可以使用c、c++等其它語言開發(fā)(由于語言本身特點很難被破解)后打包成.dll或者.so庫文件提供給java調(diào)用進而達到軟件保護目的。上述方法中,軟件代碼對受保護代碼的調(diào)用處,只要存在邏輯上的函數(shù)調(diào)用關系,只要被破解人員定位到函數(shù)調(diào)用點就可以模擬正常授權時的函數(shù)返回值,輕易繞過調(diào)用邏輯達到破解軟件的目的。
綜上所述,傳統(tǒng)的所有方法仍然未能較佳的解決軟件授權管理的問題。
發(fā)明內(nèi)容
本發(fā)明要解決的技術問題就在于:針對現(xiàn)有技術存在的技術問題,本發(fā)明提供一種原理簡單、易實現(xiàn)、適用范圍廣、授權管理保密性更好的基于license文件對JAVA類軟件實現(xiàn)授權控制的方法。
為解決上述技術問題,本發(fā)明采用以下技術方案:
一種基于license文件對JAVA類軟件實現(xiàn)授權控制的方法,其步驟包括:
步驟S1:上層用戶軟件首次啟動時生成本機安裝序列號;
步驟S2:通過頁面提交軟件注冊信息;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于湖南省星岳天璇科技有限公司,未經(jīng)湖南省星岳天璇科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010548138.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





