System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術屬于軟件模塊發行授權,具體涉及一種密碼設備軟件模塊發行授權方法及系統。
技術介紹
1、目前,一個完整產品軟件的開發工作并不是完全由一個廠商全部開發完成,通常從上游到下游會涉及到很多廠商的參與。因此上下游的合作就變得尤為重要然而,尤其是各自軟件開發完成后進入設備量產階段,由于軟件本身容易被復制和非法使用,廠商如何實現各自軟件模塊的授權發行是需要解決的問題。
2、現有技術中,軟件行業主流做法是將軟件在客戶新目標硬件上先進行安裝,由軟件生成授權請求文件,再通過在線或者離線的方式發給授權服務器,授權服務器根據請求文件生成正式授權文件返回給客戶目標系統,軟件讀取正式授權文件進行驗證通過后實現正常使用。這個發行過程操作步驟相對比較多,耗費時間,而且不支持批量化和自動化。
技術實現思路
1、為此,本專利技術提供一種密碼設備軟件模塊發行授權方法及系統,解決傳統技術因軟件本身容易被復制和非法使用,導致授權效率低、安全性差的問題。
2、為了實現上述目的,本專利技術提供如下技術方案:一種密碼設備軟件模塊發行授權方法,包括:
3、對發行裝置進行初始化,清除所述發行裝置的原始數據和密鑰;調用所述發行裝置的硬件密碼部件生成當前發行的公私密鑰對,所述公私密鑰對包括發行私鑰和發行公鑰;將所述公私密鑰的發行私鑰應用在所述硬件密碼部件的內部計算過程;將所述公私密鑰對的發行公鑰重新寫入所述發行裝置的存儲部件;
4、將發行軟件本體和發行控制軟件寫入所述發行裝置的存
5、利用預設算法對所述預授權文件進行摘要計算,生成所述預授權文件的哈希值標簽,將所述預授權文件的哈希值標簽通過調用所述硬件密碼部件送入所述發行裝置;所述發行裝置采用內部的發行私鑰對所述預授權文件的哈希值標簽進行簽名運算,將返回的簽名值通過增加signvalue標簽形式追加在所述預授權文件中,生成最終發行授權文件并寫入所述發行裝置的存儲部件。
6、作為密碼設備軟件模塊發行授權方法優選方案,調用所述發行裝置的硬件密碼部件生成當前發行的公私密鑰對過程中,利用所述硬件密碼部件內部的sm2密鑰生成api接口生成當前發行的公私密鑰對;
7、所述發行基礎信息包括授權單位、授權數量、授權軟件名稱、安裝路徑、安裝版本和安裝日期;
8、利用sm3算法對存儲在所述發行軟件本體和所述發行控制軟件的文件分別進行摘要計算,分別生成所述發行軟件本體和所述發行控制軟件的預設字節哈希值標簽。
9、作為密碼設備軟件模塊發行授權方法優選方案,利用sm3算法對所述預授權文件進行摘要計算,生成所述預授權文件的預設字節哈希值標簽;將所述預授權文件的哈希值標簽通過調用所述硬件密碼部件的sm2密碼算法簽名api接口送入所述發行裝置。
10、作為密碼設備軟件模塊發行授權方法優選方案,通過所述發行控制軟件生成預設字節隨機數,調用所述發行裝置內sm2算法簽名api接口,將預設字節隨機數送入所述發行裝置,利用所述發行裝置內部的發行私鑰對預設字節隨機數進行簽名,返回簽名值;
11、調用所述發行裝置內sm2算法驗簽api接口,將發行公鑰和簽名值一并送入所述發行裝置,進行簽名驗證;如返回驗證正確,判定發行公鑰和發行私鑰為合法配對公私鑰。
12、作為密碼設備軟件模塊發行授權方法優選方案,當判定發行公鑰和發行私鑰為合法配對公私鑰后,通過所述發行控制軟件讀取所述發行授權文件,提取所述發行授權文件中的signvalue標簽處簽名值;
13、對所述發行授權文件中的除signvalue標簽部分利用sm3算法進行摘要計算生成預設字節哈希值;調用所述發行裝置的sm2密碼算法簽名api接口進行驗簽和完整性驗證,判斷所述發行授權文件是否被非法篡改。
14、作為密碼設備軟件模塊發行授權方法優選方案,若所述發行授權文件未被非法篡改,繼續判斷所述發行授權文件的授權數量是否為0,若所述發行授權文件的授權數量為0表示授權安裝數量使用完;
15、若所述發行授權文件的授權安裝數量使用完,通過所述發行控制軟件讀取密碼設備的存儲器序列號、網絡mac、密碼部件串號硬件信息,加上發行公鑰數據、日期,采用sm3算法進行哈希運算生成唯一的授權序列號記錄在所述預授權文件中,生成設備預授權文件;
16、將設備預授權文件、發行公鑰和發行軟件本體安裝到預定設備存儲路徑下;并將所述發行授權文件中授權數量減1,調用sm2密碼算法和發行私鑰進行重新簽名,更新后存儲于所述發行裝置的存儲部件。
17、作為密碼設備軟件模塊發行授權方法優選方案,當所述發行軟件本體運行時,所述發行軟件本體確認設備授權簽名公私鑰為合法配對公私鑰;對所述發行授權文件簽名進行二次驗簽和完整性驗證,判斷所述發行授權文件是否被非法篡改;
18、若所述發行授權文件未被非法篡改,所述發行軟件本體讀取密碼設備的硬件信息,生成序列號,與所述發行授權文件中序列號進行比對,若不一致則結束所述發行軟件本體的運行。
19、本專利技術還提供一種密碼設備軟件模塊發行授權系統,包括:
20、公私密鑰對生成單元,用于對發行裝置進行初始化,清除所述發行裝置的原始數據和密鑰;調用所述發行裝置的硬件密碼部件生成當前發行的公私密鑰對,所述公私密鑰對包括發行私鑰和發行公鑰;將所述公私密鑰的發行私鑰應用在所述硬件密碼部件的內部計算過程;將所述公私密鑰對的發行公鑰重新寫入所述發行裝置的存儲部件;
21、預授權文件生成單元,用于將發行軟件本體和發行控制軟件寫入所述發行裝置的存儲部件;獲取發行方的發行基礎信息,將所述發行基礎信息記錄在預授權文件中;并利用預設算法對存儲在所述發行軟件本體和所述發行控制軟件的文件分別進行摘要計算,分別生成所述發行軟件本體和所述發行控制軟件哈希值標簽;將生成的所述發行軟件本體和所述發行控制軟件哈希值標簽記錄在預授權文件;
22、發行授權文件生成單元,用于利用預設算法對所述預授權文件進行摘要計算,生成所述預授權文件的哈希值標簽,將所述預授權文件的哈希值標簽通過調用所述硬件密碼部件送入所述發行裝置;所述發行裝置采用內部的發行私鑰對所述預授權文件的哈希值標簽進行簽名運算,將返回的簽名值通過增加signvalue標簽形式追加在所述預授權文件中,生成最終發行授權文件并寫入所述發行裝置的存儲部件。
23、作為密碼設備軟件模塊發行授權系統優選方案,所述公私密鑰對生成單元中,利用所述硬件密碼部件內部的sm2密鑰生成api接口生成當前發行的公私密鑰對;
24、所述預授權文件生成單元中,所述發行基礎信息包括授權單位、授權數量、授本文檔來自技高網...
【技術保護點】
1.一種密碼設備軟件模塊發行授權方法,其特征在于,包括:
2.根據權利要求1所述的一種密碼設備軟件模塊發行授權方法,其特征在于,調用所述發行裝置的硬件密碼部件生成當前發行的公私密鑰對過程中,利用所述硬件密碼部件內部的SM2密鑰生成API接口生成當前發行的公私密鑰對;
3.根據權利要求2所述的一種密碼設備軟件模塊發行授權方法,其特征在于,利用SM3算法對所述預授權文件進行摘要計算,生成所述預授權文件的預設字節哈希值標簽;將所述預授權文件的哈希值標簽通過調用所述硬件密碼部件的SM2密碼算法簽名API接口送入所述發行裝置。
4.根據權利要求3所述的一種密碼設備軟件模塊發行授權方法,其特征在于,通過所述發行控制軟件生成預設字節隨機數,調用所述發行裝置內SM2算法簽名API接口,將預設字節隨機數送入所述發行裝置,利用所述發行裝置內部的發行私鑰對預設字節隨機數進行簽名,返回簽名值;
5.根據權利要求4所述的一種密碼設備軟件模塊發行授權方法,其特征在于,當判定發行公鑰和發行私鑰為合法配對公私鑰后,通過所述發行控制軟件讀取所述發行授權文件,提取所述
6.根據權利要求5所述的一種密碼設備軟件模塊發行授權方法,其特征在于,若所述發行授權文件未被非法篡改,繼續判斷所述發行授權文件的授權數量是否為0,若所述發行授權文件的授權數量為0表示授權安裝數量使用完;
7.根據權利要求6所述的一種密碼設備軟件模塊發行授權方法,其特征在于,當所述發行軟件本體運行時,所述發行軟件本體確認設備授權簽名公私鑰為合法配對公私鑰;對所述發行授權文件簽名進行二次驗簽和完整性驗證,判斷所述發行授權文件是否被非法篡改;
8.一種密碼設備軟件模塊發行授權系統,其特征在于,包括:
9.根據權利要求8所述的一種密碼設備軟件模塊發行授權系統,其特征在于,所述公私密鑰對生成單元中,利用所述硬件密碼部件內部的SM2密鑰生成API接口生成當前發行的公私密鑰對;
10.根據權利要求9所述的一種密碼設備軟件模塊發行授權系統,其特征在于,還包括:
...【技術特征摘要】
1.一種密碼設備軟件模塊發行授權方法,其特征在于,包括:
2.根據權利要求1所述的一種密碼設備軟件模塊發行授權方法,其特征在于,調用所述發行裝置的硬件密碼部件生成當前發行的公私密鑰對過程中,利用所述硬件密碼部件內部的sm2密鑰生成api接口生成當前發行的公私密鑰對;
3.根據權利要求2所述的一種密碼設備軟件模塊發行授權方法,其特征在于,利用sm3算法對所述預授權文件進行摘要計算,生成所述預授權文件的預設字節哈希值標簽;將所述預授權文件的哈希值標簽通過調用所述硬件密碼部件的sm2密碼算法簽名api接口送入所述發行裝置。
4.根據權利要求3所述的一種密碼設備軟件模塊發行授權方法,其特征在于,通過所述發行控制軟件生成預設字節隨機數,調用所述發行裝置內sm2算法簽名api接口,將預設字節隨機數送入所述發行裝置,利用所述發行裝置內部的發行私鑰對預設字節隨機數進行簽名,返回簽名值;
5.根據權利要求4所述的一種密碼設備軟件模塊發行授權方法,其特征在于,當判定發行公鑰和發行私鑰為合法...
【專利技術屬性】
技術研發人員:汪海洋,汪禹瑩,白錦龍,
申請(專利權)人:江蘇新質信息科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。