[發明專利]一種基于SM2加解密算法的簽名驗簽系統和方法在審
| 申請號: | 201710183058.8 | 申請日: | 2017-03-24 |
| 公開(公告)號: | CN107147488A | 公開(公告)日: | 2017-09-08 |
| 發明(設計)人: | 鄭欣;徐崇耀;熊曉明 | 申請(專利權)人: | 廣東工業大學 |
| 主分類號: | H04L9/08 | 分類號: | H04L9/08;H04L9/30;H04L9/32 |
| 代理公司: | 廣東廣信君達律師事務所44329 | 代理人: | 楊曉松 |
| 地址: | 510062 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 sm2 解密 算法 簽名 系統 方法 | ||
1.一種基于SM2加解密算法的簽名驗簽系統,其特征在于:包括軟件模塊(1)和硬件模塊(2);所述硬件模塊(2)包括運算模塊(3)、寄存器(4)以及隨機數發生器(5);其中,
所述隨機數發生器(5),產生用于算法的隨機數、分別對明密文進行加解密的對稱密鑰、分別對對稱密鑰進行加解密的接收方公鑰和私鑰以及分別對摘要和數字簽名進行加密和解密的發送方私鑰和公鑰;
所述運算模塊(3),用于運算加解密過程中SM2、SM3以及SM4的算法;
所述軟件模塊(1),用于實現簽名驗簽功能;
所述寄存器(4),被軟件模塊(1)訪問調度運算模塊(3)。
2.一種用于權利要求1所述的基于SM2加解密算法的簽名驗簽系統的方法,其特征在于:包括簽名加密和驗簽解密,其中,
簽名加密包括以下步驟:
1)調用隨機數發生器產生對稱密鑰、發送方公鑰和私鑰、接收方公鑰和私鑰;
2)軟件模塊通過訪問寄存器調度運算模塊進行SM4加密算法運算,使在對稱密鑰的基礎上對所要發送的明文進行加密,得到報文密文;
3)軟件模塊通過訪問寄存器調度運算模塊進行SM2加密算法運算,使在接收方公鑰的基礎上對對稱密鑰進行加密,得到對稱密鑰密文;
4)軟件模塊通過訪問寄存器調度運算模塊對步驟2)得到的報文密文進行SM3算法運算,形成摘要;
5)軟件模塊通過訪問寄存器調度運算模塊進行SM2加密算法運算,使在發送方私鑰的基礎上對步驟4)形成的摘要進行加密,生成數字簽名;
6)發送方將數字簽名和報文密文一起發送給接收方;
驗簽解密包括以下步驟:
(1接收方接收發送過來的數字簽名和報文密文;
(2軟件模塊通過訪問寄存器調度運算模塊對報文密文進行SM3算法運算,得到新的摘要;
(3軟件模塊通過訪問寄存器調度運算模塊進行SM2解密算法運算,使在發送方公鑰的基礎上對數字簽名進行解密,得到原來的摘要;
(4對兩個摘要進行對比,若相同則軟件模塊通過訪問寄存器調度運算模塊進行SM2解密算法運算,使在接收方私鑰的基礎上對對稱密鑰密文進行解密,得到對稱密鑰;
(5軟件模塊通過訪問寄存器調度運算模塊進行SM4算法運算,使在對稱密鑰的基礎上對報文密文進行解密,得到明文。
3.根據權利要求2所述的一種用于基于SM2加解密算法的簽名驗簽系統的方法,其特征在于:所述SM3算法由軟硬件協同實現,其中,SM3算法由運算模塊執行,過程如下:
1))填充
SM3對消息長度小于為2^64位進行運算,假設消息m的長度為l比特,先將比特“1”添加到消息的末尾,另添加k個“0”,k為滿足l+1+k=448mod512的最小的非負整數,然后另添加一個64位比特串,該比特串為長度l的二進制表示,填充后的消息m′的比特長度為512的倍數;
2))迭代壓縮
先進行消息擴展,之后迭代與壓縮,其擴展與壓縮計算以循環移位為主,并有異或計算,填充的消息經擴展后再進行64輪迭代,最后計算出雜湊結果;
SM3算法的軟件調度部分如下:
通過配置硬件寄存器的地址,對所有的接口寄存器進行訪問,其中需要調度的有狀態寄存器、控制寄存器和數據寄存器;根據大小端的不同,將數據寫入輸入寄存器,通過對控制寄存器的操作實現相應的運算,對狀態寄存器的讀取,判斷計算是否完成,在計算完成后讀取輸出寄存器的值作為輸出。
4.根據權利要求2所述的一種用于基于SM2加解密算法的簽名驗簽系統的方法,其特征在于:所述SM2加解密算法由軟硬件協同實現,計算部分由運算模塊實現,軟件部分實現簽名驗簽功能。
5.根據權利要求4所述的一種用于基于SM2加解密算法的簽名驗簽系統的方法,其特征在于:所述SM2加解密算法實現簽名驗簽過程中需要對輸入數據進行預處理,預處理中用到的數據均采用大端表示法,在此過程中需要兩次求得字節流的雜湊值,最終的雜湊值即明文的摘要作為簽名函數的真正輸入。
6.根據權利要求4所述的一種用于基于SM2加解密算法的簽名驗簽系統的方法,其特征在于:所述SM2加解密算法包括模運算和點運算;其中,模運算包括模加、模減、模乘、模逆,模乘運算采用交錯算法,模逆采用二進制歐拉算法,同時將模乘、模逆合并實現模逆乘;點運算包括點加、點乘、倍點運算,點加、倍點調度引入投影坐標,減少模逆的運算時間。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣東工業大學,未經廣東工業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710183058.8/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:載波聚合中激活去激活的控制方法、系統和基站
- 下一篇:一種改進的網絡交換機





