一種基于隨機(jī)數(shù)未知的sm2簽名算法安全性驗(yàn)證方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明具體設(shè)及一種基于隨機(jī)數(shù)未知的SM2簽名算法安全性驗(yàn)證方法,屬于信息 安全技術(shù)領(lǐng)域。
【背景技術(shù)】
[000引 自從20世紀(jì)80年代,Miller和Koblitz將楠圓曲線引入密碼學(xué),W及Lenstra提 出了利用楠圓曲線進(jìn)行因數(shù)分解算法W來(lái),楠圓曲線在密碼學(xué)中的作用越來(lái)越大。ECC是基 于有限域楠圓曲線離散對(duì)數(shù)問(wèn)題巧CDLP);在一個(gè)循環(huán)加法群中,G為生成元,且G的階為 n,已知Q=kG和G,求k的值,其中Q=kG為有限域上的標(biāo)量乘運(yùn)算,具體為有限域上的 代數(shù)運(yùn)算。
[0003] 若F為有限域,則至少含有兩個(gè)元素,并存在一個(gè)加法+和一個(gè)乘法?運(yùn)算,滿足 如下條件:
[0004] 1)化+)是一個(gè)交換群;
[000引 。(F/{0},?)是一個(gè)交換群;
[0006] 扣滿足結(jié)合律;(a,b) -c=a?化-C)加法和乘法滿足分配律,即對(duì)任何 a,b,CER,a? (b+c) =a?b+a?c, (b+c) ?a=a?b+a?c。
[0007] 密碼應(yīng)用中最常用的有限域包括;素?cái)?shù)域和特征為2的擴(kuò)張域(二元擴(kuò)域),該里 主要介紹素?cái)?shù)域。若P是素?cái)?shù),F(xiàn)={0, 1,2,…,P-1}是關(guān)于mo化的+和?構(gòu)成的一個(gè)有 限域,記為Fp,稱為素?cái)?shù)域(Galois域),F(xiàn)/=Fp/{0}是Fp由中所有非零元構(gòu)成的乘法群, 由于F/是循環(huán)群,所W在FP中至少存在一個(gè)元素g,使得FP中任一非零元都可W由g的一 個(gè)方幕表示,稱g為F/的生成元(或本原元),即F/= <g>,階為P-1。
[000引若在素?cái)?shù)域Fp(p是大于3的素?cái)?shù))上的楠圓曲線方程為:
[0009] y2=X3+ax+bmodp,a、bGFp,且(4a3巧化2)m〇dp聲 0
[0010] 則有限域Fp上楠圓曲線點(diǎn)集E(Fp)定義為:
[0011] E(Fp) = {(X,y) |x,yGFp,y2=X3+ax+bmodp}U{0},其中,0 為無(wú)窮遠(yuǎn)點(diǎn)。
[001引若點(diǎn)GGEOg,且G的階n為素?cái)?shù),則由G生成的循環(huán)群<G>= {0,G,2G,3G,''' ,(n-l)G}為E(Fp)的循環(huán)子群。楠圓曲線點(diǎn)集EOg的元素?cái)?shù)目用#E^)表示,稱為楠圓 曲線E(Fp)的階。在ECC密碼系統(tǒng)中,素?cái)?shù)P、域Fp的楠圓曲線方程、基點(diǎn)G及其階n均為 公開(kāi)的域參數(shù),任選私鑰dG[1,n-1],則相應(yīng)的公鑰P=dG。
[0013] 楠圓曲線上定義的點(diǎn)與點(diǎn)加法運(yùn)算使用了弦切線法則,則E(Fp)為加法交換群,無(wú) 窮遠(yuǎn)點(diǎn)0為單位元,P(x,y)+P(x,-y) =0。對(duì)E(Fp)上兩點(diǎn)P、Q之和P+Q,若P聲Q,連接P、 Q的直線交E于點(diǎn)R',則R'關(guān)于X軸的對(duì)稱點(diǎn)R即為P+Q之和,稱為點(diǎn)加運(yùn)算(A)。如圖1 所示。
[0014] 若P=Q,做P點(diǎn)的切線交E于點(diǎn)R',則R'關(guān)于X軸的對(duì)稱點(diǎn)R即為則2P,稱為點(diǎn) 倍運(yùn)算值)。如圖2所示。
[001引 由楠圓曲線上的點(diǎn)加和點(diǎn)倍的幾何意義,可W推斷出E(Fp)在仿射坐標(biāo)下運(yùn)算法 貝Ij,具體如下:
[0016] 點(diǎn)加:令P= (X。yi)GE化),Q= (X2, 72)eE化),且P聲Q,則R(X3,y3) =P+Q, 其中,
【主權(quán)項(xiàng)】
1. 一種基于隨機(jī)數(shù)未知的SM2簽名算法安全性驗(yàn)證方法,其步驟為: 1) 采用SM2簽名算法分別對(duì)N+1個(gè)消息M進(jìn)行簽名,并在每次SM2簽名中注入錯(cuò)誤, 使每次簽名時(shí)所用隨機(jī)數(shù)k的相同設(shè)定比特部分的簽名結(jié)果s出現(xiàn)相同的錯(cuò)誤;其中, N多l(xiāng)og2n/l,η為基點(diǎn)G的階,G為SM2簽名算法橢圓曲線的基點(diǎn),1為總線位寬; 2) 以第一次簽名的錯(cuò)誤簽名結(jié)果s的等式為參照,將其他N次簽名中的錯(cuò)誤簽名結(jié)果 s分別與其進(jìn)行相減,得到一方程組,即格攻擊模型; 3) 對(duì)該格攻擊模型進(jìn)行求解,恢復(fù)出每一次簽名所用隨機(jī)數(shù)k的所有比特,將其代入 計(jì)算對(duì)應(yīng)簽名結(jié)果s的等式,得到一私鑰dA,如果該私鑰d A為正確私鑰,則判斷該SM2簽名 算法不安全。
2. 如權(quán)利要求1所述的方法,其特征在于,所述使每次簽名時(shí)隨機(jī)數(shù)k的設(shè)定比特部分 出現(xiàn)相同的錯(cuò)誤的方法為:對(duì)于任意一消息M i,其對(duì)應(yīng)的隨機(jī)數(shù)h共需要L/1次完成,L為 隨機(jī)數(shù)總長(zhǎng)度,每次產(chǎn)生的比特部分為%,當(dāng)檢測(cè)到設(shè)定比特部分%寫(xiě)入存儲(chǔ)區(qū),對(duì)SM2簽 名算法芯片的CPU注入錯(cuò)誤,使得該存儲(chǔ)區(qū)的值未被更新。
3. 如權(quán)利要求2所述的方法,其特征在于,所述設(shè)定比特部分為隨機(jī)數(shù)k的低比特部 分。
4. 如權(quán)利要求3所述的方法,其特征在于,所述格攻擊模型為:
其中,l<i<N,Ati= 2 4 (Sfri-StTrtl) modn,Aui= 2 4 (Sci-Si)Iiiodn, Iii 為使得不等 式成立的最小整數(shù),為第1個(gè)消息M的簽名結(jié)果,(Si,ri)為第i+1個(gè)消息M的簽名 結(jié)果,mod為模運(yùn)算。
5. 如權(quán)利要求2所述的方法,其特征在于,所述設(shè)定比特部分為隨機(jī)數(shù)k的最高比特部 分。
6. 如權(quán)利要求5所述的方法,其特征在于,所述格攻擊模型為:
其中,l<i<N,Ati= (Si+m-rjmodn,Aui= (Sci-Si)Iiiodn, Iii為使得不等式成立 的最小整數(shù),(%,Γ(ι)為第1個(gè)消息M的簽名結(jié)果,(Si,ri)為第i+Ι個(gè)消息M的簽名結(jié)果, mod為模運(yùn)算。
7. 如權(quán)利要求3或5所述的方法,其特征在于,采用相同的光強(qiáng)并在相同的位置對(duì)每一 消息M簽名產(chǎn)生隨機(jī)數(shù)寫(xiě)入存儲(chǔ)時(shí)注入錯(cuò)誤。
8. 如權(quán)利要求1或2所述的方法,其特征在于,將所述格攻擊模型的求解問(wèn)題轉(zhuǎn)化成 CVP,采用LLL和Babai算法求解CVP,得到隨機(jī)數(shù)k的所有比特。
【專利摘要】本發(fā)明公開(kāi)了一種基于隨機(jī)數(shù)未知的SM2簽名算法安全性驗(yàn)證方法。本方法為:1)采用SM2簽名算法分別對(duì)N+1個(gè)消息M進(jìn)行簽名,并在每次SM2簽名中注入錯(cuò)誤,使每次簽名時(shí)所用隨機(jī)數(shù)k的相同設(shè)定比特部分的簽名結(jié)果s出現(xiàn)相同的錯(cuò)誤;2)以第一次簽名的錯(cuò)誤簽名結(jié)果s的等式為參照,將其他N次簽名中的錯(cuò)誤簽名結(jié)果s分別與其進(jìn)行相減,得到一方程組,即格攻擊模型;3)對(duì)該格攻擊模型進(jìn)行求解,恢復(fù)出每一次簽名所用隨機(jī)數(shù)k的所有比特,將其代入計(jì)算對(duì)應(yīng)簽名結(jié)果s的等式,得到一私鑰dA,如果該私鑰dA為正確私鑰,則判斷該SM2簽名算法不安全。本發(fā)明能夠更有效、全面分析SM2簽名算法抵抗攻擊的安全能力。
【IPC分類】H04L9-32, H04L9-08, H04L9-00
【公開(kāi)號(hào)】CN104836670
【申請(qǐng)?zhí)枴緾N201510239377
【發(fā)明人】陳華, 曹偉瓊, 鄭曉光, 韓緒倉(cāng), 李大為, 羅鵬, 馮婧怡, 李國(guó)友, 高順賢, 朱少峰
【申請(qǐng)人】中國(guó)科學(xué)院軟件研究所, 北京中電華大電子設(shè)計(jì)有限責(zé)任公司, 國(guó)家密碼管理局商用密碼檢測(cè)中心
【公開(kāi)日】2015年8月12日
【申請(qǐng)日】2015年5月12日