[發明專利]一種可驗證客戶端身份的SM2協同簽名方法及系統有效
| 申請號: | 201811190701.0 | 申請日: | 2018-10-12 |
| 公開(公告)號: | CN109246129B | 公開(公告)日: | 2020-12-25 |
| 發明(設計)人: | 張秋璞;彭竹;曹偉;程學彬;楊濤 | 申請(專利權)人: | 天津贏達信科技有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L9/30;H04L9/08;H04L9/32 |
| 代理公司: | 北京冠和權律師事務所 11399 | 代理人: | 朱健;張國香 |
| 地址: | 301700 天津市*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 驗證 客戶端 身份 sm2 協同 簽名 方法 系統 | ||
1.一種可驗證客戶端身份的SM2協同簽名方法,其特征在于,所述方法包括:
客戶端隨機生成第一整數和第二整數,作為客戶端的私鑰分量,并分別基于所述第一整數和所述第二整數計算對應的客戶端第一公鑰分量值和客戶端第二公鑰分量值;
客戶端將客戶端公鑰分量發送至服務器;
所述服務器接收所述客戶端發來的客戶端公鑰分量,隨機生成第三整數,作為服務器私鑰分量,并基于客戶端公鑰分量值以及預設基點值,生成最終代表客戶端身份的公鑰;
所述客戶端基于所述客戶端私鑰分量以及預設消息生成對預設消息的驗證信息,并將所述驗證信息發送至所述服務器;
所述服務器接收所述客戶端發來的驗證信息,使用客戶端公鑰分量驗證客戶端身份,并基于所述驗證信息和所述服務器私鑰分量生成響應信息,并向所述客戶端反饋所述響應信息;
所述客戶端基于客戶端私鑰分量及所述響應信息生成所述預設消息的簽名信息;
所述客戶端基于所述客戶端私鑰分量以及預設消息生成對預設消息的驗證信息,并將所述驗證信息發送至所述服務器,包括:
A1:客戶端置M′=ZA||M,計算e=H256(M′),并將e的數據類型轉換為整數;其中,ZA表示用戶A的雜湊值,M表示所述預設消息;
A2:客戶端隨機生成整數k1∈[1,n-1],n表示預設基點值的階;
A3:客戶端計算Q1=[k1]P1=(x′,y′),并計算k′=x′mod n,P1表示所述客戶端第一公鑰分量值;
A4:客戶端計算d1表示所述第一整數;
A5:客戶端將(e,Q1,k″)作為驗證信息發送給服務器。
2.根據權利要求1所述的方法,其特征在于,按照以下公式隨機生成所述第一整數和所述第二整數:
d1∈[1,n-2],d2∈[1,n-2]
(d1,d2)為所述客戶端私鑰分量,其中,d2表示所述第二整數。
3.根據權利要求2所述的方法,其特征在于,按照以下公式生成所述客戶端第一公鑰分量值和客戶端所述第二公鑰分量值:
P1=[d1]G,P2=[d2]P1,
其中,P2表示所述客戶端第二公鑰分量值,G表示所述預設基點值;
相應地,所述客戶端公鑰分量表示為(P1,P2)。
4.根據權利要求3所述的方法,其特征在于,按照以下公式隨機生成所述第三整數:
d3∈[1,n-2]
其中,d3表示所述第三整數,作為服務器私鑰分量;
相應地,按照以下公式計算:
其中,PA表示代表客戶端身份的公鑰,P2表示客戶端發送過來的客戶端第二公鑰分量值。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于天津贏達信科技有限公司,未經天津贏達信科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811190701.0/1.html,轉載請聲明來源鉆瓜專利網。





