一种基于随机数未知的SM2签名算法安全性验证方法技术

技术编号:11878056 阅读:89 留言:0更新日期:2015-08-13 04:19
本发明专利技术公开了一种基于随机数未知的SM2签名算法安全性验证方法。本方法为:1)采用SM2签名算法分别对N+1个消息M进行签名,并在每次SM2签名中注入错误,使每次签名时所用随机数k的相同设定比特部分的签名结果s出现相同的错误;2)以第一次签名的错误签名结果s的等式为参照,将其他N次签名中的错误签名结果s分别与其进行相减,得到一方程组,即格攻击模型;3)对该格攻击模型进行求解,恢复出每一次签名所用随机数k的所有比特,将其代入计算对应签名结果s的等式,得到一私钥dA,如果该私钥dA为正确私钥,则判断该SM2签名算法不安全。本发明专利技术能够更有效、全面分析SM2签名算法抵抗攻击的安全能力。

【技术实现步骤摘要】

本专利技术具体设及一种基于随机数未知的SM2签名算法安全性验证方法,属于信息 安全

技术介绍
[000引 自从20世纪80年代,Miller和Koblitz将楠圆曲线引入密码学,W及Lenstra提 出了利用楠圆曲线进行因数分解算法W来,楠圆曲线在密码学中的作用越来越大。ECC是基 于有限域楠圆曲线离散对数问题巧CDLP);在一个循环加法群中,G为生成元,且G的阶为 n,已知Q=kG和G,求k的值,其中Q=kG为有限域上的标量乘运算,具体为有限域上的 代数运算。 若F为有限域,则至少含有两个元素,并存在一个加法+和一个乘法?运算,满足 如下条件: 1)化+)是一个交换群;[000引 。(F/{0},?)是一个交换群; 扣满足结合律;(a,b) -c=a?化-C)加法和乘法满足分配律,即对任何 a,b,CER,a? (b+c) =a?b+a?c, (b+c) ?a=a?b+a?c。 密码应用中最常用的有限域包括;素数域和特征为2的扩张域(二元扩域),该里 主要介绍素数域。若P是素数,F={0, 1,2,…,P-1}是关于mo化的+和?构成的一个有 限域,记为Fp,称为素数域(Galois域),F/=Fp/{0}是Fp由中所有非零元构成的乘法群, 由于F/是循环群,所W在FP中至少存在一个元素g,使得FP中任一非零元都可W由g的一 个方幕表示,称g为F/的生成元(或本原元),即F/= <g>,阶为P-1。[000引若在素数域Fp(p是大于3的素数)上的楠圆曲线方程为: y2=X3+ax+bmodp,a、bGFp,且(4a3巧化2)m〇dp声 0 则有限域Fp上楠圆曲线点集E(Fp)定义为: E(Fp) = {(X,y) |x,yGFp,y2=X3+ax+bmodp}U{0},其中,0 为无穷远点。,则相应的公钥P=dG。 楠圆曲线上定义的点与点加法运算使用了弦切线法则,则E(Fp)为加法交换群,无 穷远点0为单位元,P(x,y)+P(x,-y) =0。对E(Fp)上两点P、Q之和P+Q,若P声Q,连接P、 Q的直线交E于点R',则R'关于X轴的对称点R即为P+Q之和,称为点加运算(A)。如图1 所示。 若P=Q,做P点的切线交E于点R',则R'关于X轴的对称点R即为则2P,称为点 倍运算值)。如图2所示。[001引 由楠圆曲线上的点加和点倍的几何意义,可W推断出E(Fp)在仿射坐标下运算法 贝Ij,具体如下: 点加:令P= (X。yi)GE化),Q= (X2, 72)eE化),且P声Q,则R(X3,y3) =P+Q, 其中,【主权项】1. 一种基于随机数未知的SM2签名算法安全性验证方法,其步骤为: 1) 采用SM2签名算法分别对N+1个消息M进行签名,并在每次SM2签名中注入错误, 使每次签名时所用随机数k的相同设定比特部分的签名结果s出现相同的错误;其中, N多log2n/l,η为基点G的阶,G为SM2签名算法椭圆曲线的基点,1为总线位宽; 2) 以第一次签名的错误签名结果s的等式为参照,将其他N次签名中的错误签名结果 s分别与其进行相减,得到一方程组,即格攻击模型; 3) 对该格攻击模型进行求解,恢复出每一次签名所用随机数k的所有比特,将其代入 计算对应签名结果s的等式,得到一私钥dA,如果该私钥d A为正确私钥,则判断该SM2签名 算法不安全。2. 如权利要求1所述的方法,其特征在于,所述使每次签名时随机数k的设定比特部分 出现相同的错误的方法为:对于任意一消息M i,其对应的随机数h共需要L/1次完成,L为 随机数总长度,每次产生的比特部分为%,当检测到设定比特部分%写入存储区,对SM2签 名算法芯片的CPU注入错误,使得该存储区的值未被更新。3. 如权利要求2所述的方法,其特征在于,所述设定比特部分为随机数k的低比特部 分。4. 如权利要求3所述的方法,其特征在于,所述格攻击模型为:其中,l<i<N,Ati= 2 4 (Sfri-StTrtl) modn,Aui= 2 4 (Sci-Si)Iiiodn, Iii 为使得不等 式成立的最小整数,为第1个消息M的签名结果,(Si,ri)为第i+1个消息M的签名 结果,mod为模运算。5. 如权利要求2所述的方法,其特征在于,所述设定比特部分为随机数k的最高比特部 分。6. 如权利要求5所述的方法,其特征在于,所述格攻击模型为:其中,l<i<N,Ati= (Si+m-rjmodn,Aui= (Sci-Si)Iiiodn, Iii为使得不等式成立 的最小整数,(%,Γ(ι)为第1个消息M的签名结果,(Si,ri)为第i+Ι个消息M的签名结果, mod为模运算。7. 如权利要求3或5所述的方法,其特征在于,采用相同的光强并在相同的位置对每一 消息M签名产生随机数写入存储时注入错误。8. 如权利要求1或2所述的方法,其特征在于,将所述格攻击模型的求解问题转化成 CVP,采用LLL和Babai算法求解CVP,得到随机数k的所有比特。【专利摘要】本专利技术公开了一种基于随机数未知的SM2签名算法安全性验证方法。本方法为:1)采用SM2签名算法分别对N+1个消息M进行签名,并在每次SM2签名中注入错误,使每次签名时所用随机数k的相同设定比特部分的签名结果s出现相同的错误;2)以第一次签名的错误签名结果s的等式为参照,将其他N次签名中的错误签名结果s分别与其进行相减,得到一方程组,即格攻击模型;3)对该格攻击模型进行求解,恢复出每一次签名所用随机数k的所有比特,将其代入计算对应签名结果s的等式,得到一私钥dA,如果该私钥dA为正确私钥,则判断该SM2签名算法不安全。本专利技术能够更有效、全面分析SM2签名算法抵抗攻击的安全能力。【IPC分类】H04L9-32, H04L9-08, H04L9-00【公开号】CN104836670【申请号】CN201510239377【专利技术人】陈华, 曹伟琼, 郑晓光, 韩绪仓, 李大为, 罗鹏, 冯婧怡, 李国友, 高顺贤, 朱少峰 【申请人】中国科学院软件研究所, 北京中电华大电子设计有限责任公司, 国家密码管理局商用密码检测中心【公开日】2015年8月12日【申请日】2015年5月12日本文档来自技高网...
一种基于随机数未知的SM2签名算法安全性验证方法

【技术保护点】
一种基于随机数未知的SM2签名算法安全性验证方法,其步骤为:1)采用SM2签名算法分别对N+1个消息M进行签名,并在每次SM2签名中注入错误,使每次签名时所用随机数k的相同设定比特部分的签名结果s出现相同的错误;其中,N≥log2n/l,n为基点G的阶,G为SM2签名算法椭圆曲线的基点,l为总线位宽;2)以第一次签名的错误签名结果s的等式为参照,将其他N次签名中的错误签名结果s分别与其进行相减,得到一方程组,即格攻击模型;3)对该格攻击模型进行求解,恢复出每一次签名所用随机数k的所有比特,将其代入计算对应签名结果s的等式,得到一私钥dA,如果该私钥dA为正确私钥,则判断该SM2签名算法不安全。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈华曹伟琼郑晓光韩绪仓李大为罗鹏冯婧怡李国友高顺贤朱少峰
申请(专利权)人:中国科学院软件研究所北京中电华大电子设计有限责任公司国家密码管理局商用密码检测中心
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1