2. 山东建筑大学 理学院, 济南 250101
为了提高格上代理签名的效率, 利用无陷门签名和小范数矩阵传递技术, 构造了一个代理签名方案.方案中的小范数矩阵传递技术可以控制代理签名私钥维数, 使得代理签名私钥的维数小于原始用户签名私钥的维数.方案的安全性基于格上的小整数解困难问题, 与原有结果相比, 降低了代理签名私钥和代理签名的尺寸.
2. Department of Mathematics and Physics, Shandong Jianzhu University, Jinan 250101, China
In order to improve the efficiency of the proxy signature scheme based on lattice, the authors use the lattice signature, without trapdoors and transmission technology with matrix, with small norm to construct a proxy signature scheme. The transmission technology with matrix with small norm is also used to control the dimension of proxy signature secret key such that its dimension is smaller than that of original signature secret key. Its security is based on the hardness of small integer solution problem. Compared with other results over lattice, the size of proxy signature secret key and proxy signature is reduced.
1996年,Mambo、Usuda和Okamoto[1]提出了代理签名的概念.在代理签名方案中,原始签名者把他的签名权利委托给代理签名者,由代理签名者代替他来完成签名.在方案中验证者可以区分签名是代理签名还是原始签名.鉴于代理签名的这种性质,研究者把它应用到匿名投票、移动代理、网格计算、电子现金中.而目前利用量子算法可以在多项式时间内解决大整数分解和离散对数问题,那么基于这两种假设的方案在量子环境下将被攻破.因此,构造量子环境下安全的代理签名方案是非常有意义的.格公钥密码作为近年来发展最快、受关注程度最高的后量子密码之一,具有良好的密码学性质.目前,很多学者对基于格的代理签名进行了研究,取得了一些成果[2-5].笔者利用无陷门签名技术和小范数向量传递技术构造了一个基于格的代理签名方案,降低了代理签名私钥和代理签名的尺寸.
1 基础知识设
这里b1, …, bm构成了格Λ的一组基.
定义1 小整数解问题(SISq, m, β,small integer solution problem):给定一个随机的矩阵A∈Zqn×m和一个实数β,找到一个非零向量e,使得Ae=0mod q且‖e‖≤β,‖·‖表示欧几里得范数.
引理1[6] 对于任意的矩阵A∈Zqn×m,m>64+nlog q/log (2d+1),对随机选择的s∈{-d, …, 0, …, d}m,以1-2-100的概率存在另一个s′∈{-d, …, 0, …, d}m使得As=As′.
对于任意c>0,实数σ>0,一个m维格Λ,定义格Λ上的离散高斯分布为
当c=0时,简写为DΛ, σ.整数Z构成的格的高斯分布简写为Dσ, c.
引理2[7] 设q≥2,矩阵A∈Zqn×m,m>n.设T是格Λq⊥(A)的一组基,
negl(n)表示关于n的一个可忽略的量.
2 方案介绍与安全性证明该方案使用了3个Hash函数:
H1:{0, 1}*→DH1={c:c∈{-1, 0, 1}k, ‖c‖1≤κ1}
H2:{0, 1}*→DH2={c:c∈{-1, 0, 1}l, ‖c‖1≤κ2}
H3:id→{-1, 0, 1}k×l,H1, H2被看做随机预言机,l<k<m,κi满足
1) 密钥生成:随机选择矩阵A∈Zqn×m,S,S1∈{-d, …, 0, …, d}m×k,计算T=ASmod q,T1=AS1mod q.原始签名者的公、私钥对为(A, T, S),代理者自己的公、私钥对为(A, T1, S1).
2) 代理签名密钥生成:对于代理签名者id,计算Uid=H3(id)∈{-1, 0, 1}k×l,S2=SUid∈Zm×l,T2=TUidmod q,代理签名密钥为S2,对应的公钥为T2.原始签名者通过安全信道把代理签名密钥S2发送给代理者.
3) 代理者验证:代理者收到代理签名密钥后,检查AS2=TUidmod q是否成立,若成立,则接受代理签名密钥,否则拒绝.
4) 代理签名:输入一个消息μ,代理者自己的私钥S1,代理签名密钥S2,签名如下:
① 选择两个向量y1, y2←Dσm;
② 计算c1=H1(Ay1, μ),c2=H2(Ay2, μ);
③ 计算z1=S1c1+y1∈Zqm,z2=S2c2+y2∈Zqm;
④ 以
5) 验证:输入消息μ及其对应的签名(z1, c1),(z2, c2),矩阵A、T1、T2,验证
下面给出方案的正确性验证与安全性证明.在定理1中,详细给出代理签名的正确性验证.定理2的不可伪造性说明了任何人都不能伪造代理签名者的签名,保证了代理签名者的安全性.定理3证明了任何人都不能伪造原始签名者的签名或者委托代理签名的权利,保证了原始签名者的安全性.
定理1(正确性)
对于消息μ及其对应的代理签名(z1, c1),(z2, c2),需要验证
其次 Azi-Tici=A(Sici+yi)-Tici=Ayi
因此ci=H1(Ayi, μ)=H1(Azi-Tici, μ),i=1, 2.
定理2(不可伪造性)
假设存在一个概率多项式时间敌手
的概率,找到一个非零向量v,使得
证明 需要分两种情况来讨论代理签名的不可伪造性.其一,恶意的原始签名者(拥有代理签名密钥,但没有代理签名者的密钥)不能伪造代理签名;其二,恶意的第三方(没有代理签名密钥,也没有代理签名者的密钥)不能够伪造代理签名.由于恶意的第三方的攻击能力弱于恶意的原始签名者,所以只需讨论恶意的原始签名者的不可伪造性.设存在一个概率多项式时间敌手
1) 随机预言机H2询问:
2) 签名询问:当敌手
3) 伪造:当敌手
当cj在签名询问中产生.由于c=cj,则H2(Az-Tc, μ)=H2(Azj-Tc, μj).如果μ≠μj或Az-Tc≠Azj-Tc,则意味着敌手
现在考虑cj是在随机预言机H2询问中产生的.在这种情况下,
现在要说明z-z′+Sc′j-Scj≠0.由引理1可知,以至少1-2-100的概率存在另一个私钥S′使得AS=AS′,所以若z-z′j+S(c′j-cj)=0,则z-z′j+S′(c′j-cj)≠0.由于
定理3 代理签名者不能得到原始签名者的私钥,且任何人(包括代理签名者)在不拥有原始签名者私钥的情况下,都不能够伪造代理签名密钥.
证明 首先证明代理签名者不能得到原始签名者的私钥,只需要证明如果代理签名者能够得到原始签名者的私钥,那么就可以利用代理签名者的能力解决SISq, m, β问题,即对于一个随机矩阵A∈Zqn×m,找到一个非零向量v,使得‖v‖≤β,且Av=0.令敌手
1) 代理签名密钥询问:对于代理签名用户id,
当敌手
现在要证明任何人(包括代理签名者)在不拥有原始签名者私钥的情况下,不能够伪造代理签名密钥.现在需要利用敌手的能力解决SISq, m, β问题,对于一个随机矩阵A∈Zqn×m,
所以AS′idmod q=ASidmod q.由上面的讨论可知Sid-S′id是SISq, m, β的一个小整数解.
3 方案对比下面来比较相关文献的代理私钥(不包括代理者自己的私钥以及所产生的签名)和代理签名的尺寸,结果如表 1所示.
其中,
在优化方案中,把原来的2个随机预言机合并为一个随机预言机,其输出长度为原来长度的和,如H2:{0, 1}*→{c:c∈{-1, 0, 1}k+l, ‖c‖1≤κ},l<k<m.优化后可以提高近1倍的计算效率.其过程仅在代理签名上与初始方案不同.这里只给出代理签名过程.
代理签名:输入一个消息μ,代理者自己的私钥S1,代理签名密钥S2,签名如下:
① 选择一个向量y←Dσm;
② 计算c=H2(Ay, μ)∈{-1, 0, 1}k+l;
③ 计算z=(S1‖S2)c+y∈Zqm;
④ 以
公、私钥尺寸过大是目前格密码发展的一个瓶颈,而现有格上的代理签名方案中代理签名私钥的尺寸比原始签名者的私钥尺寸大得多.笔者提出了一个基于格上小整数问题的代理签名方案,通过降低代理签名私钥的维数来降低代理签名私钥的尺寸.但是在实际应用中,公、私钥尺寸还比较大,需要进一步降低尺寸.该方案在计算上主要使用的是矩阵乘法,与基于离散对数和分解大整数问题的方案相比,既不使用模指数运算,也没有配对运算,计算复杂度更低.
[1] | Mambo M, Usuda K, Okamoto K. Proxy signatures: delegation of the power to sign messages[J].IEICE Transactions on Fundamentals, 1996, E79-A(9): 1338–1353. |
[2] | Jiang Yali, Kong Fanyu, Ju Xiuling. Lattice-based proxy signature[C]//CIS 2010. Nanning: [s.n.], 2010: 382-385. |
[3] |
夏峰, 杨波, 马莎, 等. 基于格的代理签名方案[J]. 湖南大学学报:自然科学版, 2011, 38(6): 84–88.
Xia Feng, Yang Bo, Ma Sha, et al. Lattice-based proxy signature scheme[J].Journal of Hunan University Natural Sciences, 2011, 38(6): 84–88. |
[4] | Wang Chunxiao, Qi Mingnan. Lattice-based proxy signature scheme[J].Journal of Information and Computational Science, 2011, 12(8): 2451–2458. |
[5] | Kim K S, Hong D, Jeong I R. Identity-based proxy signature from lattices[J].Journal of Communications and Networks, 2013, 15(1): 1–7. |
[6] | Lyubashevsky V. Lattice signatures without trapdoors[C]// Pointcheval D, Johansson T (eds.). Eurocrypt 2012. LNCS. Berlin: Springer-Verlag, 2012: 738-755. |
[7] | Gentry C, Peikert C, Vaikuntanathan V. How to use a short basis: trapdoors for hard lattices and new cryptographic constructions[C]//Cynthia D(ed.), STOC 2008. New York: [s.n.], 2008: 197-206. |