[發明專利]基于乘積秘密分割的SM2數字簽名生成方法及系統有效
| 申請號: | 201710046710.1 | 申請日: | 2017-01-22 |
| 公開(公告)號: | CN106850229B | 公開(公告)日: | 2019-10-25 |
| 發明(設計)人: | 龍毅宏 | 申請(專利權)人: | 武漢理工大學 |
| 主分類號: | H04L9/32 | 分類號: | H04L9/32;H04L9/30 |
| 代理公司: | 湖北武漢永嘉專利代理有限公司 42102 | 代理人: | 許美紅 |
| 地址: | 430070 湖*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 乘積 秘密 分割 sm2 數字簽名 生成 方法 系統 | ||
1.一種基于乘積秘密分割的SM2數字簽名生成方法,其特征是:
所述方法涉及兩個分別稱為第一裝置、第二裝置的裝置;
在生成數字簽名前,針對參與數字簽名生成的兩個裝置要進行如下初始化操作:
給第一裝置分配秘密份額d1,給第二裝置分配秘密份額d2,其中d1、d2是區間[1,n-1]內的整數,而n是SM2密碼運算所使用的橢圓曲線點群的階,也即SM2密碼運算所使用的橢圓曲線點群的基點G的階;兩個裝置的秘密份額與用戶的SM2私鑰dA滿足關系:
(1+dA)-1dA mod n=d1d2mod n,其中,(1+dA)-1是(1+dA)的模n乘法逆;
在區間[1,n-1]內隨機選擇一個整數a,計算Ga=[a]G,h=a(dA)-1mod n,其中G是SM2橢圓曲線點群的基點;將h給第一裝置、第二裝置;Ga將給數字簽名生成過程中需要Ga的第一裝置和/或第二裝置;
當需要使用用戶的SM2私鑰dA針對消息M進行數字簽名時,兩個裝置按如下方式進行數字簽名的生成:
首先,兩個裝置通過交互計算得到Q=[(k1+k2)]Gb,r=(e+x1)mod n,且得到的r、Q滿足:r≠0且[r]G+Q不是SM2橢圓曲線點群的零元,其中k1、k2是計算Q的過程中第一裝置、第二裝置分別在區間[1,n-1]中隨機選擇的整數,Gb=[b]Ga,b是區間[1,n-1]中的只有第一裝置才知道的整數常數,或者b是計算Q的過程中第一裝置在區間[1,n-1]中隨機選擇的一個整數,G是SM2橢圓曲線點群的基點,x1取自(x1,y1)=Q,e是從用戶標識和消息M導出的雜湊值;
之后,第一裝置計算w1=d1b mod n,s1=(hk1-(b)-1r)mod n,然后將w1、s1發送給第二裝置;
最后,第二裝置接收到第一裝置的w1、s1后,計算s=d2w1(hk2+s1)mod n;(r,s)就是生成的針對消息M的數字簽名。
2.根據權利要求1所述的基于乘積秘密分割的SM2數字簽名生成方法,其特征是:
若b是區間[1,n-1]中的只有第一裝置才知道的整數常數,則在數字簽名生成前的初始化過程中,計算Gb=[b]Ga,第一裝置、第二裝置分別保存Gb;在針對消息M進行數字簽名時,第一裝置和第二裝置分別從本地保存的數據中獲得Gb;
若b是計算Q的過程中第一裝置在區間[1,n-1]中隨機選擇的一個整數,則在針對消息M進行數字簽名時,第一裝置在區間[1,n-1]中隨機選擇一個整數b,計算得到Gb=[b]Ga,然后將Gb發送給第二裝置,由此第一裝置和第二裝置都獲得Gb。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于武漢理工大學,未經武漢理工大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710046710.1/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:網絡訪問控制方法及裝置
- 下一篇:一種LED顯示單元布局方法





