首页 / 专利库 / 人工智能 / 量子计算机 / 一种基于格的数字签名方法

一种基于格的数字签名方法

阅读:823发布:2020-05-17

专利汇可以提供一种基于格的数字签名方法专利检索,专利查询,专利分析的服务。并且本 发明 涉及一种基于格的数字签名方法,旨在基于格上数学困难问题设计高效抗量子安全的数字签名方法。具体地,本发明首先提出了一类非对称模小整数解(AMSIS)数学困难问题,也提供了该类数学困难问题的变种和一般化。通过基于AMSIS数学困难问题以及模带错误学习(MLWE)数学困难问题的非对称 变形 ,本发明提出了一种格上数字签名方法,具有安全性高、可证明安全、抵抗 量子计算 机 攻击、公私钥和签名长度短、计算效率高、参数选取灵活等特点和优势。,下面是一种基于格的数字签名方法专利的具体信息内容。

1.一种基于格的数字签名方法,其特征在于,包括以下步骤:
1)定义AMSIS数学困难问题,用于保证抗签名伪造的安全性;
2)定义AMLWE数学困难问题,用于保证抗私钥恢复的安全性;
3)基于所述AMSIS数学困难问题和所述AMLWE数学困难问题,提出基于格的数字签名方法,采用私钥签名消息,采用公钥验证签名的合法性。
2.如权利要求1所述的方法,其特征在于,所述AMSIS数学困难问题被定义如下:令是正整数,Rq是定义在 上次数为n-1的多项式环,其中当n=1时定义 给定正整数 随机矩阵 和正实数 满足β1≠β2,多项式环Rq上
正规形、无穷范数AMSIS问题 的目标是寻找非零向量 使得
‖x1‖∞≤β1且‖x2‖∞≤β2成立,其中
所述AMLWE数学困难问题被定义如下:对于正整数 正实数 满足α1
≠α2,给定随机的矩阵 和向量 计算性AMLWE数学困难问题
的目标是给定样本 输出秘密向量 对于随
机的矩阵 和向量 判定性AMLWE数学困难问题
的目标是将样本(A,b=As+e)和选自于 上均匀分布的元组区分
开。
3.如权利要求1或2所述的方法,其特征在于,所述基于格的数字签名方法由12个参数n,q,k,l,d,ω,η1,η2,β1,β2,γ1,γ2来实例化,包括以下三个算法
1)密钥生成算法KeyGen(1κ):输入安全参数κ,输出公钥pk和私钥sk;
2)签名算法Sign(sk,M):输入私钥sk和消息M∈{0,1}*,输出签名σ;
3)验证算法Verify(pk,M,σ):输入公钥pk、消息M和签名σ,如果签名σ是在公钥pk下关于消息M的合法签名,输出1;否则输出0。
4.如权利要求3所述的方法,其特征在于,密钥生成算法KeyGen(1κ)包括以下步骤:
1)随机选择ρ←{0,1}256,
2)计算 (t1,t0):=Power2Roundq(t,d);
3)计算tr:=CRH(pk)∈{0,1}384,然后输出公钥pk=(ρ,t1)和私钥sk=(ρ,tr,s1,s2,t0)。
5.如权利要求4所述的方法,其特征在于,签名算法Sign(sk,M)包括以下步骤:
1)给定私钥sk=(ρ,tr,s1,s2,t0)和消息M∈{0,1}*,计算μ:=CRH(tr||M)和矩阵A:=H1(ρ);
2)随机选择 计算 和w1:=HighBitsq(w,2γ2);
3)计算c:=H(μ,w1),z:=y+cs1和u:=w-cs2;
4)计算(r1,r0):=Decomposeq(u,2γ2);
5)如果||z||∞≥γ1-β1或||r0||∞≥γ2-β2或r1≠w1,返回第2)步重新开始;
6)计算v=ct0和h:=MakeHintq(-v,u+v,2γ2);
7)如果||v||∞≥γ2或向量h中1的数量大于ω,返回第2)步重新开始;
8)输出签名σ:=(z,h,c)。
6.如权利要求5所述的方法,其特征在于,验证算法Verify(pk,M,σ)包括以下步骤:
1)给定公钥pk=(ρ,t1),消息M和签名σ=(z,h,c),计算矩阵A:=H1(ρ),然后计算μ:=CRH(CRH(pk)||M);
2)计算u:=Az-ct1·2d,然后计算w1′:=UseHintq(h,u,2γ2);
3)计算c′:=H(μ,w1′);
4)如果||z||∞<γ1-β1且c=c′且向量h中1的数量小于等于ω,输出1;否则输出0。
7.如权利6所述的方法,其特征在于,所述基于格的数字签名方法允许灵活调整与AMLWE数学困难问题相关的两个参数(η1,η2)和与AMSIS数学困难问题相关的两个参数(γ1,γ2)的取值来达到安全性、计算效率和通信效率的最佳平衡,具体表现为:通过减小η1的取值提高计算效率,通过增大η2的取值提高抗私钥恢复攻击的安全性,通过减小γ1的取值减小签名长度并提高抗签名伪造的安全性,通过增大γ2的取值提高计算效率。
8.如权利要求1所述的方法,其特征在于,定义AMSIS数学困难问题的变种,即AMSIS-R数学困难问题为:
令 是正整数,Rq是定义在 上次数为n-1的多项式环,其中当n=1时定义对于正整数 以及正实数 满足β1≠β2,给定随机矩阵
和随机向量 无穷范数 问题的目标是寻找非零
向量 使得等式 成立以及关系||x1||∞≤
β1,||x2||∞≤β2且||x3||∞≤2成立,其中向量 x3∈Rq、向量(t1,t0):=Power2Roundq(t,d)。
9.如权利要求1所述的方法,其特征在于,定义AMSIS数学困难问题的另一个变种,即SelfTargetAMSIS数学困难问题为:
令H:{0,1}*→B60是一个密码学杂凑函数;令 是正整数,Rq是定义在 上次数为n-1的多项式环,其中当n=1时定义 对于正整数 以及正实数
满足β1≠β2,无穷范数SelfTargetAMSIS数学困难问题 的目标
是给定随机矩阵 和随机向量 要求能够以量子叠加态询问杂凑函数H
*
的算法输出 和μ∈{0,1} ,使得||y1||∞≤β1,||y2||∞≤β2,||c||∞≤1且H(μ,(Ik‖A‖t)y)=c成立。
10.一种基于格的数字签名方法,其特征在于,定义如下一般化AMSIS数学困难问题及其变种,用于获得更灵活的参数选取;基于所述一般化AMSIS数学困难问题,提出基于格的数字签名方法,采用私钥签名消息,采用公钥验证签名的合法性:
1)一般化AMSIS数学困难问题:令 是正整数,Rq是定义在 上次数为n-1的多项式环,其中当n=1时定义 对于正整数v≥2和正整数 不全相同的正
实数 给定随机选择的矩阵 多项式环Rq上一般化、正规形、
无穷范数AMSIS问题 的目标是寻找非零向量 使得
且对于 ‖xi‖∞≤βi成立,其中
2)一般化AMSIS-R数学困难问题:对于正整数v≥2、正整数 以及不全相
同的正实数 给定随机矩阵 和随机向量 一般化、正
规形、无穷范数 问题的目标是寻找非零向量
使得等式 对于
||xi||∞≤βi且||xv+1||∞≤2成立,其中对于 xv+1∈
Rq、(t1,t0):=Power2Roundq(t,d);
3)一般化SelfTargetAMSIS数学困难问题:对于正整数v≥2、正整数 以及不全相同的正实数 一般化、无穷范数SelfTargetAMSIS数学困难问题
的目标是给定随机矩阵 和随机向量
要求能够以量子叠加态询问杂凑函数H的算法输出 和μ∈{0,1}*,使得H(μ,(Ik||A||t)y)=c,对于 ||yi||∞≤βi且||c||∞≤1成立。
11.如权利要求1或10所述的方法,其特征在于,AMSIS数学困难问题、AMSIS数学困难问题的变种、一般化AMSIS数学困难问题,不仅能够用无穷范数||·||∞来定义值的大小,还能够用1范数||·||1或2范数||·||2来定义值的大小。
12.如权利要求11所述的方法,其特征在于,AMSIS数学困难问题、AMSIS数学困难问题的变种、一般化AMSIS数学困难问题及其变种用于设计其他密码算法。

说明书全文

一种基于格的数字签名方法

技术领域

[0001] 本发明属于密码学中的数字签名领域,涉及使用格密码学中的相关技术,具体涉及一种基于格的数字签名方法,能抵抗量子计算机攻击。

背景技术

[0002] 数字签名已在许多实际应用中被广泛部署。根据Shor算法,当量子计算机出现的时候,已部署的基于RSA或椭圆曲线的数字签名方法将不再安全。量子计算机的快速发展促使我们设计抗量子安全的数字签名方法。当前,主流的抗量子安全数字签名方法是基于格、多变量、编码或者杂凑函数等设计。从效率和安全性综合来看,基于格的数字签名方法是最有前途的抗量子签名方法,并得到了国内外学者的广泛研究。在数学中,格是一种离散的加法子群。由于特殊的代数结构,格上有很多难以求解的困难问题,例如最短向量问题。基于格的数字签名方法是指基于格上数学困难问题设计的数字签名方法,具有抵抗量子计算机攻击的能
[0003] 绝大部分公钥密码方案的设计和安全性建立在数学困难问题之上。当前,格上公钥密码系统的安全性大多是建立在Ajtai提出的小整数解问题(Small  Integer Solutions,SIS)和Regev提出的带错误学习问题(Learning with Errors,LWE)的困难性之上。简单来说,小整数解问题和带错误的学习问题都与求解模整数方程有关系。令为正整数, 为正实数, 是以α为参数的噪音分布(通常为高斯分布,或与其相近的二项分布)。无穷范数的小整数解问题 目标是给定矩阵
计算非零向量 使其满足Ax=0mod q并且||x||∞≤β;对应的计算性带错
误的学习问题LWEn,m,q,α目标是对于随机选择的矩阵 向量 以及噪音向量
给定样本 求解秘密向量 判定性LWE问题是区分
(A,b=As+e)和 上均匀随机的元组。在一定参数下,判定性LWE问题和计算性LWE问题在多项式时间意义下是等价的。此外,SIS问题和LWE问题在一定意义上互为对偶问题。
[0004] 虽然SIS问题和LWE问题看起来比较简单,但在特定参数下求解这两个问题在平均情况下的复杂度都比求解格上某些问题(例如,最短向量问题)在最坏情况下的复杂度还高。这种平均困难性到最坏困难性的联系特性实际上是基于格上困难问题的密码方案相对于基于其他困难问题的密码方案独有的优势之一。由于目前已知的格上困难问题的量子求解算法与传统经典求解算法相比在计算复杂度上并没有本质的降低,以至于大多数国内外研究学者都倾向于相信格上问题是困难的,以及基于格上困难问题设计的密码系统能够抵抗量子计算机攻击。此外,当秘密向量s并不是随机均匀地选自于 时,相应LWE的变种问题(称之为正规形LWE问题)也是困难的。特别地,当秘密向量 与噪音向量e选自于相同的分布时,正规形LWE问题和标准的LWE问题在多项式时间的意义上是等价的。由于正规形LWE问题能够更好地控制噪音增长,因此在文献中被广泛用于设计加密方案。
[0005] 一般来说,SIS困难问题大多被用于设计数字签名方法,而LWE困难问题则常常用于设计公钥加密方法。为了获得更好的效率,环上的SIS困难问题和LWE困难问题(分别简称RSIS和RLWE)也被提出。RSIS和RLWE困难问题是定义在 上次数为n-1次多项式环Rq上。给定正整数 随机矩阵 和正实数 多项式环Rq上正规形(无穷范数)RSIS问题 的目标是寻找非零向量 使得(1,aT)x=0mod q且||x||∞≤β成立。
给定正实数 和 定义RLWE分布 计算性
RLWE数学困难问题RLWEn,q,l,α是指随机选取 在有l个样本的条件下计算出秘密值判定性RLWE数学困难问题的目标是区分分布Bs,α和 上的均匀分布。然而,
RSIS和RLWE问题使用了特殊的环结构,而这种环结构可能被敌手利用来求解相应的困难问题。从而,为了安全性和效率的折中,模SIS困难问题和模LWE困难问题(分别简称MSIS和MLWE)被密码研究者提出。给定正整数 随机矩阵 和正实数 多项
式环Rq上正规形(无穷范数)MSIS问题 的目标是寻找非零向量 使得
(Ik‖A)x=0mod q且||x||∞≤β成立。给定正整数 以及正实数 对于随机选取的矩阵 和向量 计算性MLWE问题MLWEn,q,k,l,α的目标是给定样
本 输出秘密向量 判定性MLWE问题的目标是区分样本(A,b
=As+e)和选自于 上均匀随机的元组。

发明内容

[0006] 本发明的目的在于提供一种基于格的数字签名方法,具有安全性高、可证明安全、抵抗量子计算机攻击、公私钥和签名长度短、计算效率高、参数选取灵活、抵抗多目标攻击、抵抗密钥替换攻击、易于安全实现等特点和优势。
[0007] 本发明提出非对称的模SIS数学困难问题(Asymmetric Module-SIS,简称AMSIS),统一给出了SIS、RSIS和MSIS数学困难问题的非对称变形
[0008] 本发明首先给出一些基本符号的定义如下:
[0009] 1) 表示由整数构成的集合,即 表示模q剩余类构成的集合,即 其中q是正整数;对于任意的正整数n, 表示n个 的直积,即
[0010] 2) 表示由实数构成的集合; 表示由正实数构成的集合; 表示正整数构成的集合,即
[0011] 3)令 是正整数,R是定义在 上次数为n-1的多项式环,Rq是定义在 上的次数为n-1的多项式环;当n=1时,定义 以及 对于任意的正整数 表示k个Rq的直积,即 对于任意的正整数 表示在Rq中元素组成的k
×k矩阵构成的集合;
[0012] 4)对于分布D,x←D表示根据分布D随机选取x;对于有限集合S,x←S表示从集合S中均匀随机选取x;
[0013] 5)对于正整数 Ik表示k×k的单位矩阵,即
[0014] 6)对于正整数 定义Sα为多项式环R中每个系数都属于{q-α,…,q+α}的多项式组成的集合;对于正整数 表示l个Sα的直积,即
[0015] 7)符号:=表示赋值,即对于任意两个值a,b,a:=b表示将a赋值作为b。
[0016] 在给出AMSIS数学困难问题的具体定义之前,本发明首先定义模约化操作和无穷范数、2范数和1范数。
[0017] 1)模约化操作:对于一个正偶数α和整数r,定义操作r′=r  mod±α输出满足r′=r modα成立;对于一个正奇数α和整数r,定义操作r′=r mod±α输出满足r′=r modα成立。对于正整数α和整数r,定义操作r′=r mod+α输出r′∈[0,α)满足r′=r modα成立。当精确的模约化操作表示不重要的时候,简写为r modα。
[0018] 2)无穷范数:对于一个元素 w的无穷范数||w||∞表示|w mod±q|。对于元素w=w0+w1X+...+wn-1Xn-1∈Rq,w的无穷范数||w||∞定义为: 相应地,对于向量 或者 定义
[0019] 3)2范数:对于一个元素 w的2范数||w||2表示|w mod±q|。对于元素w=w0+w1X+...+wn-1Xn-1∈Rq,w的2范数||w||2定义为: 对于向量或者 定义
[0020] 4)1范数:对于一个元素 w的1范数||w||1表示|w mod±q|。对于元素w=w0+w1X+...+wn-1Xn-1∈Rq,w的1范数||w||1定义为:||w||1=||w0||1+||w1||1+…+||wn-1||1。对于向量 或者 定义||w||1=||w1||1+||w2||1+…+||wk||1。
[0021] 本发明提出的非对称MSIS(即AMSIS)数学困难问题具体定义如下:
[0022] ·AMSIS数学困难问题:给定正整数 随机矩阵 和正实数 满足β1≠β2,多项式环Rq上正规形、无穷范数AMSIS问题 的目
标是寻找非零向量 使得 ‖x1‖∞≤β1且‖x2‖∞≤β2成
立,其中
[0023] 当k=1时,AMSIS数学困难问题是非对称环上的SIS问题(即ARSIS问题);当n=1时,AMSIS数学困难问题是非对称整数上的SIS问题(即ASIS问题)。
[0024] 显然,求解 问题不会比求解 问题更困难,但同样也不会比求解 问题更容易。换句话说,在计算困难性上,有以下关
系成立:
[0025]
[0026] 可以看到,当β1=β2时,AMSIS数学困难问题将退化为标准的MSIS数学困难问题。从而,本发明仅考虑β1≠β2的情况。
[0027] 除此以外,为了保证私钥的安全性,本发明的格上数字签名方法还需基于以下非对称MLWE数学困难问题,即AMLWE问题:
[0028] ·AMLWE数学困难问题:对于正整数 正实数 满足α1≠α2,给定随机的矩阵 和向量 计算性AMLWE数学困难问题
的目标是给定样本 输出秘密向量 对于随
机的矩阵 和向量 判定性AMLWE数学困难问题
的目标是将样本(A,b=As+e)和选自于 上均匀分布的元组区分
开;其中,对于正实数α∈{α1,α2},定义χα表示以α为参数的噪音分布;对于正实数α∈{α1,α2}, 表示多项式环Rq中系数根据分布χα取值的元素构成的集合; 表示每个分量取自 中的元素构成的l维向量集合; 表示每个分量取自 中的元素构成的k维向量集合。
[0029] 当k=1时,AMLWE数学困难问题是非对称的RLWE问题(即ARLWE问题);当n=1时,AMLWE数学困难问题是非对称的LWE问题(即ALWE问题)。
[0030] 为了便于系统实现,本发明将选取均匀分布,即用 和 上的均匀分布,来替代噪音分布 和 其中 是正整数。
[0031] 通过基于本发明提出的AMSIS和AMLWE数学困难问题,本发明设计高效、可证明安全、抗量子安全的格上数字签名方法。
[0032] 本发明的基于格的数字签名方法,由12个参数n,q,k,l,d,ω,η1,η2,β1,β2,γ1,γ2来实例化,包括以下算法:
[0033] 1)密钥生成算法KeyGen(1κ):输入安全参数κ,输出公钥pk和私钥sk。
[0034] 2)签名算法Sign(sk,M):输入私钥sk和消息M∈{0,1}*,输出签名σ。
[0035] 3)验证算法Verify(pk,M,σ):输入公钥pk、消息M和签名σ,如果签名σ是在公钥pk下关于消息M的合法签名,输出1;否则输出0。
[0036] 进一步地,所述基于格的数字签名方法允许灵活调整与AMLWE数学困难问题相关的两个参数(η1,η2)和与AMSIS数学困难问题相关的两个参数(γ1,γ2)的取值来达到安全性、计算效率和通信效率的最佳平衡,具体表现为:通过减小η1的取值提高计算效率,通过增大η2的取值提高抗私钥恢复攻击的安全性,通过减小γ1的取值减小签名长度并提高抗签名伪造的安全性,通过增大γ2的取值提高计算效率。
[0037] 进一步地,基于所述AMSIS问题,定义AMSIS数学困难问题的变种。
[0038] 另一方面,本发明的一种基于格的数字签名方法,定义一般化AMSIS数学困难问题及其变种,用于获得更灵活的参数选取;基于所述一般化AMSIS数学困难问题,提出基于格的数字签名方法,采用私钥签名消息,采用公钥验证签名的合法性。
[0039] 进一步地,AMSIS数学困难问题、AMSIS数学困难问题的变种、一般化AMSIS数学困难问题及其变种用于设计其他密码算法。
[0040] 本发明提出的基于格的数字签名方法具有以下特点和优势:
[0041] 1)安全性高:在经典随机预言机模型和量子随机预言机模型下都是可证明强不可伪造安全的;能抵抗未来量子计算机攻击。
[0042] 2)公私钥和签名长度短:与格上同类方案比较,具有更短的公私钥和签名长度。
[0043] 3)计算效率高:提供计算速度非常快的密钥生成、签名和验证算法。
[0044] 4)参数选取灵活:与基于标准(M)SIS和(M)LWE困难问题的格上数字签名方法比较,支持更加灵活细粒度的参数选取,从而更容易实现安全性与性能的平衡。
[0045] 5)抵抗多目标攻击:阻止了攻击者以恢复一个用户私钥的代价来恢复多个用户的私钥。
[0046] 6)抵抗密钥替换攻击:与我国SM2签名方法类似,具有抵抗密钥替换攻击的能力。
[0047] 7)易于安全实现:没有使用高斯分布,能避免相关针对高斯分布采样算法的侧信道攻击。

具体实施方式

[0048] 为体现本发明的上述特点和优势,下面通过基于AMSIS和AMLWE数学困难问题的格上数字签名方法为具体实施例对本发明做进一步说明。
[0049] 本实施例涉及使用杂凑函数 用于生成一个矩阵A,以及抗碰撞杂凑函数CRH:{0,1}*→{0,1}384。本实施例还需使用杂凑函数 其中B60表
示环Rq中恰好有60个系数为-1或1,且其他系数均为0的元素构成的集合。该杂凑函数H利用扩展输出函数产生随机字节流,然后利用Fisher-Yates洗牌算法将随机字节流映射到B60中的随机元素。
[0050] 本实施例将采用Power2Roundq(二次方幂取整函数)、Decomposeq(分解函数)、HighBitsq(取高位比特函数)、MakeHintq(生成提示函数)、UseHintq(使用提示函数)五个函数来计算 中元素的高位比特和低位比特,下面给出这些函数的具体描述。
[0051] 1.二次方幂取整函数Power2Roundq输入整数 和正整数 输出整数和
[0052] 其包括以下步骤:
[0053] 1)计算r:=r mod+q;
[0054] 2)计算r0:=r mod±2d;
[0055] 3)计算r1:=(r-r0)/2d;
[0056] 4)输出(r1,r0)。
[0057] 2.分解函数Decomposeq输入整数 正整数 满足α|(q-1),输出整数和 其包括以下步骤:
[0058] 1)计算r:=r mod+q;
[0059] 2)计算r0:=r mod±α;
[0060] 3)如果r-r0=q-1成立,那么计算r1:=0和r0:=r0-1;否则,计算r1:=(r-r0)/α;
[0061] 4)输出(r1,r0)。
[0062] 3.取高位比特函数HighBitsq输入整数 正整数 满足α|(q-1),输出高位整数 其包括以下步骤:
[0063] 1)计算(r1,r0):=Decomposeq(r,α);
[0064] 2)输出r1。
[0065] 4.生成提示函数MakeHintq输入整数 正整数 满足α|(q-1),输出提示h∈{0,1},其包括以下步骤:
[0066] 1)计算r1:=HighBitsq(r,α);
[0067] 2)计算v1:=HighBitsq(r+z,α);
[0068] 3)如果r1≠v1,那么设置h:=1;否则设置h:=0;
[0069] 4)输出h。
[0070] 5.使用提示函数UseHintq输入提示h∈{0,1},整数 正整数 满足α|(q-1),输出高位整数 其包括以下步骤:
[0071] 1)计算k:=(q-1)/α;
[0072] 2)计算(r1,r0):=Decomposeq(r,α);
[0073] 3)如果h=1和r0>0,那么计算r1:=(r1+1)mod+k;
[0074] 4)如果h=1和r0≤0,那么计算r1:=(r1-1)mod+k;
[0075] 5)输出r1。
[0076] 本实施例提出的基于AMSIS和AMLWE数学困难问题的格上数字签名方法描述如下:
[0077] ·密钥生成算法KeyGen(1κ):
[0078] 1)随机选择ρ←{0,1}256,
[0079] 2)计算
[0080] 3)计算tr:=CRH(pk)∈{0,1}384;
[0081] 4)输出公钥pk=(ρ,t1)和私钥sk=(ρ,tr,s1,s2,t0)。
[0082] ·签名算法Sign(sk,M):
[0083] 1)给定私钥sk=(ρ,tr,s1,s2,t0)和消息M∈{0,1}*,计算μ:=CRH(tr||M)和矩阵A:=H1(ρ);
[0084] 2)随机选择 计算 和w1:=HighBitsq(w,2γ2);
[0085] 3)计算c:=H(μ,w1),z:=y+cs1和u:=w-cs2;
[0086] 4)计算(r1,r0):=Decomposeq(u,2γ2);
[0087] 5)如果||z||∞≥γ1-β1或||r0||∞≥γ2-β2或r1≠w1,返回第2)步重新开始;
[0088] 6)计算v=ct0,h:=MakeHintq(-v,u+v,2γ2);
[0089] 7)如果||v||∞≥γ2或向量h中1的数量大于ω,返回第2)步重新开始;
[0090] 8)输出签名σ:=(z,h,c)。
[0091] ·验证算法Verify(pk,M,σ):
[0092] 1)给定公钥pk=(ρ,t1),消息M和签名σ=(z,h,c),计算矩阵A:=H1(ρ),然后计算μ:=CRH(CRH(pk)||M);
[0093] 2)计算u:=Az-ct1·2d,然后计算w′1:=UseHintq(h,u,2γ2);
[0094] 3)计算c′:=H(μ,w′1);
[0095] 4)如果||z||∞<γ1-β1且c=c′且向量h中1的数量小于等于ω,输出1;否则输出0。
[0096] 例如,本实施例可以选择整数n是2的幂次,素数q满足q=1mod2n,多项式环用于支持数论变换(NTT)运算。注意,本实施例也支持其他多种n,q,Rq的选择。
[0097] 本实施例允许n,q,k,l,d,ω,η1,η2,β1,β2,γ1,γ2的多种参数选择。特别地,本发明的数字签名方法可灵活调整参数η1、η2、γ1和γ2的取值来达到安全性、计算效率和通信效率的最佳平衡,具体表现为减小γ1的取值可减小签名长度并提高抗签名伪造的安全性,增大γ2的取值或减小η1的取值可提高计算效率,增大η2的取值可提高密钥的安全性。本发明提供以下表1所示的3组参数选择供参考,但不局限于这3组参数选择。
[0098] 表1. 3组参数列表
[0099]
[0100] 令 是正整数,Rq是定义在 上次数为n-1的多项式环(当n=1时,令)。由于公钥压缩的需要,以上描述的格上数字签名方法在随机预言机模型下的安全性将依赖于以下AMSIS数学困难问题的变种:
[0101] ·AMSIS-R数学困难问题:对于正整数 以及正实数 满足β1≠β2,给定随机矩阵 和随机向量 无穷范数 问题
的目标是寻找非零向量 使得等式 成立以及
关系||x1||∞≤β1,||x2||∞≤β2且||x3||∞≤2成立,其中向量 x3∈Rq、向量(t1,t0):=Power2Roundq(t,d)。
[0102] 以上描述的格上数字签名方法在量子预言机模型下的安全性将依赖于以下AMSIS数学困难问题的另一个变种:
[0103] ·SelfTargetAMSIS数学困难问题:令H:{0,1}*→B60是一个密码学杂凑函数;对于正整数 以及正实数 满足β1≠β2,无穷范数SelfTargetAMSIS数学困难问题 的目标是给定随机矩阵 和随机向量
要求能够以量子叠加态询问杂凑函数H的算法输出 和μ∈{0,1}*,使得||y1
||∞≤β1,||y2||∞≤β2,||c||∞≤1且H(μ,(Ik‖A‖t)y)=c成立。
[0104] 同样地,在以上两个AMSIS数学困难问题的变种中,本发明仅考虑β1≠β2的情况。
[0105] 以下给出本发明的部分实验数据。实验平台为2.5GHz的Intel Core-i7 6500U CPU和8GB内存的Thinkpad X1笔记本,程序语言为C语言。
[0106] 表2.本发明在使用表1中3组参数集时的实验数据
[0107]
[0108] 下面,本发明给出一般化AMSIS数学困难问题及其变种的定义。
[0109] 令 是正整数,Rq是定义在 上的次数为n-1的多项式环(当n=1时,令)。本发明提出的一般化AMSIS数学困难问题及其变种,允许更加灵活细粒度地调整参数,从而获得更好的效率。具体表现为以下一般化AMSIS数学困难问题的定义:
[0110] ·对于正整数v≥2和正整数 不全相同的正实数 给定随机选择的矩阵 多项式环Rq上一般化、正规形、无穷范数AMSIS问题
的目标是寻找非零向量 使得
且对于 ||xi||∞≤βi成立,其中
[0111] 当k=1时,一般化AMSIS数学困难问题是一般化非对称环上的SIS问题(即一般化ARSIS问题);当n=1时,一般化AMSIS数学困难问题是一般化非对称整数上的SIS问题(即一般化ASIS问题)。
[0112] 当v=2时,以上一般化AMSIS数学困难问题将变为前文描述的AMSIS问题。与AMSIS数学困难问题相同的原因(区别于标准的MSIS问题),本发明仅考虑参数β1,…,βv不全相同的情况。
[0113] 根据以上的扩展方法,本发明给出一般化AMSIS数学困难问题的变种,即一般化AMSIS-R数学困难问题以及一般化SelfTargetAMSIS数学困难问题:
[0114] ·一般化AMSIS-R数学困难问题:对于正整数v≥2、正整数 以及不全相同的正实数 给定随机矩阵 和随机向量 一般化、
正 规形 、无 穷 范数 问 题 的 目 标 是寻 找 非 零 向 量
使得等式 对于
||xi||∞≤βi且||xv+1||∞≤2成立,其中对于 xv+1∈Rq、(t1,t0):=
Power2Roundq(t,d)。
[0115] ·一般化SelfTargetAMSIS数学困难问题:对于正整数v≥2、正整数以及不全相同的正实数 一般化、无穷范数SelfTargetAMSIS数学困难问题
的目标是给定随机矩阵 和随机向量
要求能够以量子叠加态询问杂凑函数H的算法输出 和μ∈{0,1}*,使得H
(μ,(Ik||A||t)y)=c,对于 ||yi||∞≤βi且||c||∞≤1成立。
[0116] 完全类似地,基于以上一般化AMSIS数学困难问题,本发明设计基于格的数字签名方法,采用私钥签名消息,采用公钥验证签名的合法性,支持更灵活的参数选取,以获得更好的效率。
[0117] 另外,本发明还利用2范数和1范数扩展以上AMSIS数学困难问题、AMSIS数学困难问题的变种AMSIS-R、SelfTargetAMSIS以及一般化AMSIS、AMSIS-R、SelfTargetAMSIS数学困难问题,即不仅可以用无穷范数||·||∞来定义值的大小,还可以用1范数||·||1或2范数||·||2来定义值的大小。例如:在AMSIS数学困难问题中,条件||x1||∞≤β1可用||x1||1≤β1或者||x1||2≤β1来代替,从而相应的 问题将直接变为或者
[0118] 本发明的方案可以通过软件的方式实现,也可以通过硬件的方式来实现,比如:
[0119] 在一个实施例中,提供一种计算机(或服务器),其包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行上面所述方法中各步骤的指令;在另一个实施例中,提供一种计算机可读存储介质(如ROM/RAM、磁盘、光盘),所述计算机可读存储介质存储计算机程序,所述计算机程序被计算机执行时,实现上面所述方法的步骤。
[0120] 本发明提出的AMSIS数学困难问题、AMSIS数学困难问题的变种、一般化AMSIS数学困难问题及其变种可用于设计其他密码算法,通过调整参数的取值,获得比当前技术更高的效率。
[0121] 数字签名是手写签名的电子化替代品。在现实社会中,数字签名是许多信息系统的基础,被广泛用于电子合同签署,电子身份认证,数字证书等,同时数字签名是公钥基础设施的重要部件。本发明可以用于替代传统的数字签名方法,但与传统的数字签名方法不同的是本发明能够抵抗量子计算机攻击,能够为保护量子计算机时代的信息安全提供技术支撑
[0122] 本发明不局限于以上实施方式,对于本领域的普通技术人员,在不脱离本发明原理与方法的前提下,还可以做出若干改进或变形,这些改进和变形也视为本发明的保护范围之内。本说明书中未详细描述的内容属于本领域专业技术人员公知的现有技术
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈