本发明属于信息安全技术领域,具体涉及一种基于格的高效数字签名方法。
背景技术:
数字签名是公钥密码体制的基础原件之一,被广泛应用于身份认证,数据完整性检测,防抵赖等场景,在公钥密码学中占据着十分重要的地位。然而由于整数分解和离散对数问题被证明在量子计算机下可以有效求解,因此基于上述困难问题的传统数字签名体制在量子计算机下是不安全的,构造能够地抗量子攻击的数字签名体制已经成为密码学界和工业界的迫切需求。
基于格的数字签名体制被广泛认为能够抵抗量子计算机的攻击,因此备受关注,而ntru签名体制是其中一类高效的签名方案,其所基于的数学问题一般是ntru格上的最短向量问题。ntru格是ntru签名体制中最为核心的部件之一。在美国国家标准与技术研究院征集后量子密码标准算法的首轮候选方案中,基于ntru的签名体制主要有pqntrusign和falcon。
技术实现要素:
与之前的ntru签名方案将安全性基于ntru格上的最短向量问题不同,本发明提供一种基于ntru格上最近向量问题的高效数字签名方法,在保证高效的同时,参数选取更为灵活。
本发明涉及剩余类环zm,当正整数m为偶数时,我们选取
给定n次整系数多项式f(x)和正整数q,记环rq=zq[x]/(f(x))。对环rq中的任意多项式s,我们既可以将其表示为
本发明数字签名实现方法的具体方案如下:
一种基于格的数字签名方法,包括以下步骤:
步骤1.1:选择公开参数(n,q,γ,α,β)及环rq;选择正整数n,q,α,β,γ,其中
步骤1.2:密钥生成算法按如下步骤进行:
步骤1.2.1:选取多项式环rq中两个小系数多项式f和g,且f在rq中可逆,其逆记为f-1。
步骤1.2.2:计算h=(g+α)·f-1,将h作为签名者的公钥公开,将(f,g)作为签名者的私钥。
步骤1.3:签名算法按照如下步骤进行:
步骤1.3.1:签名者生成n维向量
步骤1.3.2:计算w=h·r。这里我们选取
步骤1.3.3:计算n维向量
步骤1.3.4:计算u=r+a·f。
步骤1.3.5:若||a·f||∞>γ,或者||a·g||∞>γ,或者
步骤1.4:验签算法按如下步骤进行:
步骤1.4.1:验签者利用签名u,验证
步骤1.4.2:验签者利用签名者的公钥h、签名u,计算w′=h·umodq。选取
步骤1.4.3:验签者计算n维向量
步骤1.4.4:如果v′==v′0,则输出验签成功,否则输出验签失败。
步骤1.2.1中,私钥f和g的选取方法可以为:
1)从二元多项式集合
2)从三元多项式集合
3)从具有f1f2+f3形式的多项式集合中选取,其中f1,f2,f3从b(y)中或者t(y′,y″)中选取,其中正整数y,y′,y″为预先设定的固定值。
步骤1.3和1.4中,h(·)表示值域为{0,1}n的某公开函数,一般取为哈希函数。
与现有技术相比,本发明的积极效果为:
本发明设计简洁,易于实现,由于使用了ntru格的最近向量问题做为底层数学问题,所以本发明的参数选取更为灵活,公钥规模合理,签名规模小。
附图说明
图1为本发明密钥生成方法流程图;
图2为本发明签名方法流程图;
图3为本发明验签方法流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
步骤1.1:选择公开参数(n,q,γ,α,β)及环rq;选择正整数n,q,α,β,γ,其中,n为2的某个幂次,q为一个满足2n|q-1的奇素数,
步骤1.2:密钥生成算法按如下步骤进行,如图1所示:
步骤1.2.1:从t(d+1,d)中独立均匀随机选取环rq中两个小系数多项式f和g,直到f在rq中可逆,其逆记为f-1。
步骤1.2.2:计算h=(g+α)·f-1,将h作为签名者的公钥公开,将(f,g)作为签名者的私钥。
关于上述描述中的参数,我们提供两套参数选取。
步骤1.3:签名算法按照如下步骤进行,如图2所示:
步骤1.3.1:签名者均匀随机选取n维向量
步骤1.3.2:计算w=h·r。选取
步骤1.3.3:计算n维向量
步骤1.3.4:计算u=r+a·f。
步骤1.3.5:若||a·f||∞>γ,或者||a·g||∞>γ,或者
步骤1.4:验签算法按如下步骤进行,如图3所示:
步骤1.4.1:验签者利用签名u,验证
步骤1.4.2:验签者利用签名者的公钥h、签名u,计w′=h·umodq。选取
步骤1.4.3:验签者计算n维向量
步骤1.4.4:如果v′==v′0,则输出验签成功,否则输出验签失败。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求所述为准。