[发明专利]基于格上困难问题的数字签名方法有效
申请号: | 201910429858.2 | 申请日: | 2019-05-22 |
公开(公告)号: | CN110175473B | 公开(公告)日: | 2022-12-27 |
发明(设计)人: | 魏文宽;王保仓;张志立;薛冠豪;赵青青;曲全博;曾一波;庞宏平 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F21/64 | 分类号: | G06F21/64;G06F21/60 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 王品华 |
地址: | 710071 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于格上困难问题的数字签名方法,主要解决现有技术签名效率较低的问题,并在提高效率的前提下减少签名长度。其实现步骤为:1.签名实体先根据安全需求生成参数系统;再根据密钥生成方法,利用参数系统生成签名私钥和验证公钥;2.签名实体利用验证公钥预先产生签名过程中所需要的随机数值和部分签名值;3.签名实体使用签名私钥对消息进行签名,并输出符合要求的签名消息;4.验证方利用验证公钥验证签名消息的有效性。本发明在相同的安全级别下提升了签名生成效率,减少了签名长度,可用于保证信息传送的完整性,信息发送者的身份认证以及防止交易抵赖的发生。 | ||
搜索关键词: | 基于 困难 问题 数字签名 方法 | ||
【主权项】:
1.一种基于格上困难问题的数字签名方法,其特征在于,包括如下:(1)签名实体根据自己的安全需求生成参数系统,其中包括:第一个素数p=2、第二个大于p的素数q、一个素数n满足2n‑1为梅森素数、一个将任意长度二进制串哈希到n比特长度二进制串的哈希函数Hash、一个模xn‑1的一元多项式整系数环
一个n阶二进制多项式集合{0,1}n和一个大于等于0且小于q的整数集合
定义多项式乘法为环Rq上的乘法;(2)生成签名私钥和验证公钥:签名实体生成一个多项式作为第一个公钥a,a∈Rq,满足多项式a的所有系数和为q的倍数以及多项式asp(mod q)的所有系数之和等于q,再产生一个二进制多项式作为验证私钥s,s∈{0,1}n,并利用第一个公钥a和验证私钥s产生第二个公钥:
将(t,a)和s分别作为签名实体的验证公钥和签名私钥,其中,符号
表示对符号内多项式的每个系数向下取整,(mod p)表示将向量中的每个元素模p;(3)产生消息m的签名Sig,并进行验证:(3.1)签名实体利用哈希函数Hash产生一个哈希数值c=Hash(m),将c转换为十进制数,记为cD;(3.2)签名实体生成一个二进制多项式kB,kB∈{0,1}n,并产生第一个签名值:
满足多项式pakB(mod q)的每个系数均大于(q‑1)/2;(3.3)将二进制多项式kB、r和s转换为十进制数,分别记为kD、rD和sD,并产生kD在模2n‑1意义下的乘法逆元
和第二个签名值:
(3.4)产生zD在模2n‑1意义下的乘法逆元
并产生第一个中间项
将b看作n阶多项式,记为bB,验证(zD,rD)是否可作为消息m的签名Sig:若多项式pakB(mod q)‑padB(mod q)的每一个系数都大于或0,则Sig=(zD,rD),否则,返回到步骤(3.2);(4)利用签名Sig和公钥(t,a)对消息m的有效性进行验证:(4.1)利用消息m和哈希函数Hash产生哈希数值c=Hash(m);(4.2)产生zD在模2n‑1意义下的乘法逆元
将c转换为十进制数,记为cD,再产生第一个中间项
和第二个中间项
将b和d看作n阶多项式,分别记为bB和dB;(4.3)将rD转换为二进制多项式,记为rB,产生验证值:d'=rB‑tbB(mod p);(4.4)判断dB和d'是否相等,若相等则认为消息m是有效的,否则,认为是无效的。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910429858.2/,转载请声明来源钻瓜专利网。