欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種多方位防側(cè)信道攻擊的簽名方法與流程

文檔序號(hào):12278146閱讀:621來(lái)源:國(guó)知局

本發(fā)明涉及信息安全領(lǐng)域,特別涉及一種多方位防側(cè)信道攻擊的簽名方法。



背景技術(shù):

RSA公鑰加密算法是信息安全領(lǐng)域中比較主流的公鑰密碼技術(shù)?;赗SA實(shí)現(xiàn)的各種Key及智能卡已經(jīng)廣泛應(yīng)用于金融、通信、社保、交通等各個(gè)領(lǐng)域。傳統(tǒng)對(duì)RSA的攻擊主要基于數(shù)學(xué)中大素?cái)?shù)分解算法,而近年來(lái)側(cè)信道攻擊發(fā)展迅速,各種攻擊手段層出不窮。

以往對(duì)RSA簽名的防護(hù)主要考慮SPA、DPA、CPA、double攻擊及錯(cuò)誤攻擊。為防止以上攻擊,現(xiàn)有方案在RSA簽名的模冪計(jì)算時(shí)一般都掩碼指數(shù)和底數(shù),使用類似蒙哥馬利ladder的方式尋求模乘、模平方在運(yùn)行時(shí)完全一樣,并通過計(jì)算兩次模冪的方式防止錯(cuò)誤攻擊。但所有的方案均無(wú)法防護(hù)以上提出的所有攻擊方法。并且由于近來(lái)攻擊工具及攻擊方法的改進(jìn),以往類似蒙哥馬利ladder的方案在實(shí)現(xiàn)上很容易因?yàn)樘D(zhuǎn)而被SPA攻擊出結(jié)果,且如果操作數(shù)的漢明重量不一致也容易被攻擊。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的是提供一種多方位防側(cè)信道攻擊的簽名方法。

本發(fā)明提供了一種多方位防側(cè)信道攻擊的簽名方法和方案,該方法可有效防御對(duì)RSA簽名的攻擊。模冪實(shí)現(xiàn)過程中,同時(shí)計(jì)算出指數(shù)的模冪及指數(shù)補(bǔ)碼的模冪,即一次模冪過程計(jì)算出兩個(gè)模冪的值,且保證功耗上能量均衡。當(dāng)模冪受到錯(cuò)誤攻擊時(shí),通過數(shù)學(xué)運(yùn)算能判斷出模冪運(yùn)算的數(shù)據(jù)是否正確。為避免求逆,本發(fā)明還提供了私鑰負(fù)值的STD形式。

為了實(shí)現(xiàn)上述目的,本發(fā)明提供一種多方位防側(cè)信道攻擊的簽名方法和方案,包含步驟:

步驟一,輸入RSA的模數(shù)N、消息M、私鑰元素d、公鑰元素e,私鑰元素d的長(zhǎng)度為t比特,公鑰元素e的長(zhǎng)度小于等于N的比特長(zhǎng),且保證M小于N;

步驟二,生成長(zhǎng)度為t比特的隨機(jī)數(shù)trng1,并用所述隨機(jī)數(shù)trng1先后乘公鑰元素e和私鑰元素d,該運(yùn)算結(jié)果減去當(dāng)前使用的隨機(jī)數(shù)trng1,并減去私鑰元素d,得到數(shù)據(jù)z1;

步驟三,生成長(zhǎng)度為t比特的隨機(jī)數(shù)trng2,以所述隨機(jī)數(shù)trng2為底數(shù),步驟b中得到的數(shù)據(jù)z1為指數(shù),比特長(zhǎng)度為bitlen比特,執(zhí)行如下操作:

設(shè)置3塊t比特的空間分別為S0,S1,A,三塊空間分別賦值為;S0=S1=1,A=trng2;

i從0到bitlen執(zhí)行如下過程:

①獲得z1的當(dāng)前比特值;

②如果當(dāng)前比特為0則計(jì)算S0=S0*A,如果當(dāng)前比特為1,則執(zhí)行S1=S1*A;

③對(duì)A平方并放入A中;

校驗(yàn)S0*S1*X-A是否為0,如果不為0,退出;

步驟四,步驟三中輸出結(jié)果分別記為S0,S1

步驟五,生成長(zhǎng)度為t比特的隨機(jī)數(shù)trng3,并用該隨機(jī)數(shù)先后乘公鑰元素e和私鑰元素d,該運(yùn)算結(jié)果減去當(dāng)前使用的隨機(jī)數(shù)trng3,并加上私鑰元素d,得到數(shù)據(jù)z2;

步驟六,N為模數(shù),trng2為乘法因子對(duì)摘要M進(jìn)行模乘掩碼,得到結(jié)果記為maskM;

步驟七,以maskM為底數(shù),z2位指數(shù),執(zhí)行如3中a、b、c操作,獲得結(jié)果S'0,S'1;

步驟八,計(jì)算S1*S'1,并以該結(jié)果為底數(shù),公鑰元素e為指數(shù),N為模數(shù),執(zhí)行3中a、b、c三步,得到輸出結(jié)果S”0,S”1,如果S”1=M,則輸出S1*S'1,或者不輸出數(shù)據(jù)。

根據(jù)本發(fā)明提供的具體實(shí)施例,本發(fā)明公開了以下技術(shù)效果:

本發(fā)明的有益效果是,對(duì)比大部分防攻擊方案,該方案同時(shí)掩碼了指數(shù)和底數(shù),能防護(hù)已知SPA(簡(jiǎn)單能量分析)、DPA(微分能量分析)、CPA(選擇明文攻擊)。方案中同時(shí)輸出冪次方及冪指數(shù)反碼次方,避免了求逆過程的出現(xiàn),求逆很耗時(shí)間。方案中,模冪部分,結(jié)果輸出部分,分別使用了校驗(yàn)技術(shù),防止錯(cuò)誤攻擊時(shí)錯(cuò)誤數(shù)據(jù)輸出技術(shù)。

本發(fā)明能夠防止已知的任何形式的SPA、DPA、CPA等功耗分析攻擊;同時(shí)防止錯(cuò)誤攻擊時(shí),輸出有效的錯(cuò)誤數(shù)據(jù)。

本發(fā)明有效保護(hù)了RSA STD運(yùn)算過程中已知容易被攻擊的步驟。本發(fā)明提供的模冪校驗(yàn),也可完整的使用到RSACRT運(yùn)算當(dāng)中,同時(shí)實(shí)現(xiàn)模冪及補(bǔ)碼冪的算法可類似的移植到SM2的點(diǎn)乘運(yùn)算中。對(duì)模冪是否被攻擊的校驗(yàn)可以類似的移植到SM2的點(diǎn)乘運(yùn)算中。

附圖說明

為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1為本發(fā)明一種多方位防側(cè)信道攻擊的簽名方法的流程示意圖。

具體實(shí)施方式

下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

本發(fā)明的目的是提供一種多方位防側(cè)信道攻擊的簽名方法。

為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說明。

實(shí)施例1:

一種多方位防側(cè)信道攻擊的簽名方法和方案,普通RSA的秘鑰分為公鑰和私鑰,其中e、N為RSA的公鑰;d、N為RSA私鑰。

普通RSA密鑰簽名的方法為:Sign(M)=MdmodN。其中M為用戶輸入的待簽名的摘要;N、d私鑰,N為模數(shù)。

基于基礎(chǔ)模冪和模冪校驗(yàn),一種多方位防側(cè)信道攻擊的簽名方案如下:

(RSA簽名)Sign(M,e,d,N);

生成隨機(jī)數(shù)trng1,計(jì)算z1=trng1*(e*d-1)-d;

生成隨機(jī)數(shù)trng,計(jì)算(S0,S1)=EXP(trng,z1,N);如果返回1,輸出S0,S1繼續(xù)執(zhí)行3,否則直接返回0,不輸出任何結(jié)果;

生成隨機(jī)數(shù)trng2,計(jì)算z2=trng2*(e*d-1)+d;

計(jì)算maskM=M*trngmodN;

計(jì)算(S'0,S'1)=EXP(maskM,z2,N);如果返回1,輸出S'0,S'1繼續(xù)執(zhí)行6,否則直接返回0,不輸出任何結(jié)果;

計(jì)算(S”0,S”1)=EXP(S1*S’1,e,N),如果S”1=M,則輸出S1*S'1,否則直接返回0,不輸出任何結(jié)果。

普通RSA的秘鑰分為公鑰和私鑰,其中e、N為RSA的公鑰;d、N為RSA私鑰。

普通RSA密鑰簽名的方法為:Sign(M)=Mdmod N。其中M為用戶輸入的待簽名的摘要;N、d私鑰,N為模數(shù)。

首先、我們?cè)O(shè)計(jì)了一種基礎(chǔ)模冪算法,從指數(shù)低位遍歷的方式,同時(shí)計(jì)算xtmodN和x~tmod N,其中~t是t的補(bǔ)碼。

算法一(基礎(chǔ)模冪)EXP1(x,t,N):

輸出S0、S1;其中s0=x~tmodN,s1=xtmodN。

算法二(模冪校驗(yàn))EXP2(x,t,N):

3、計(jì)算c=S0*S1*x-A

如果c=0,輸出s0=x~emod N,s1=xemod N,返回1;否則不輸出結(jié)果,返回0

基于算法一和算法二,我們?cè)O(shè)計(jì)了一種防側(cè)信道攻擊的RSA簽名算法如下:

算法三(RSA簽名)Sign(M,e,d,N);

生成隨機(jī)數(shù)trng1,計(jì)算z1=trng1*(e*d-1)-d

生成隨機(jī)數(shù)trng,計(jì)算(s0,s1)=EXP(trng,z1,N);如果返回1,輸出s0,s1繼續(xù)執(zhí)行3,否則直接返回0,不輸出任何結(jié)果

生成隨機(jī)數(shù)trng2,計(jì)算z2=trng2*(e*d-1)+d

計(jì)算maskM=M*trng mod N

計(jì)算(S'0,S'1)=EXP(maskM,z2,N);如果返回1,輸出s'0,s'1繼續(xù)執(zhí)行6,否則直接返回0,不輸出任何結(jié)果

計(jì)算(S”0,S”1)=EXP(S1*S'1,e,N),如果S”1=M,則輸出S1*S'1,否則直接返回0,不輸出任何結(jié)果

實(shí)例二

輸入RSA的模數(shù)N、消息M、私鑰元素d的長(zhǎng)度為t,公鑰元素e的長(zhǎng)度為32小于等于N的比特?cái)?shù),且保證M小于N

生成長(zhǎng)度為t比特的隨機(jī)數(shù)trng1,并用該隨機(jī)數(shù)先后乘公鑰元素e和私鑰元素d,該運(yùn)算結(jié)果減去當(dāng)前使用的隨機(jī)數(shù)trng1,并減去私鑰元素d,得到數(shù)據(jù)z1

生成長(zhǎng)度為t比特的隨機(jī)數(shù)trng2,以該數(shù)據(jù)為底數(shù),2中得到的數(shù)據(jù)z1為指數(shù)(其比特長(zhǎng)度為bitlen比特),執(zhí)行如下操作:

設(shè)置3塊(分別為S0、S1、A)t比特的空間,三塊空間分別賦值為;S0=S1=1,A=trng2

b、i從0到bitlen執(zhí)行如下過程:

①獲得z1的當(dāng)前比特值

②如果當(dāng)前比特為0則計(jì)算S0=S0*A,如果當(dāng)前比特為1,則執(zhí)行S1=S1*A

③對(duì)A平方并放入A中

c、校驗(yàn)S0*S1*x-A是否為0,如果不為0,退出

4、過程3中輸出結(jié)果分別記為S0,S1

5、生成長(zhǎng)度為t比特的隨機(jī)數(shù)trng3,并用該隨機(jī)數(shù)先后乘公鑰元素e和私鑰元素d,該運(yùn)算結(jié)果減去當(dāng)前使用的隨機(jī)數(shù)trng3,并加上私鑰元素d,得到數(shù)據(jù)z2

6、以N為模數(shù),trng2為乘法因子對(duì)摘要M進(jìn)行模乘掩碼,得到結(jié)果記為maskM

7、以maskM為底數(shù),z2位指數(shù),執(zhí)行如3中a、b、c操作,獲得結(jié)果s'0,s'1

8、計(jì)算S1*S'1,并以該結(jié)果為底數(shù),e(公鑰元素)為指數(shù),N為模數(shù),執(zhí)行3中a、b、c三步,得到輸出結(jié)果S”0,S”1,如果S”1=M,則輸出S1*S'1,或者不輸出數(shù)據(jù)。

本發(fā)明有效保護(hù)了RSA STD運(yùn)算過程中已知的容易被攻擊的步驟。本發(fā)明提供的模冪校驗(yàn),也可完整的使用到RSA CRT運(yùn)算當(dāng)中,同時(shí)實(shí)現(xiàn)模冪及補(bǔ)碼冪的算法可類似的移植到SM2的點(diǎn)乘運(yùn)算中。對(duì)模冪是否被攻擊的校驗(yàn)可以類似的移植到SM2的點(diǎn)乘運(yùn)算中。

本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處。綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
阿巴嘎旗| 丁青县| 隆安县| 江口县| 青浦区| 和平区| 惠东县| 泗阳县| 栾川县| 汾阳市| 恭城| 淮安市| 玛纳斯县| 屏东县| 越西县| 普格县| 阿克| 集安市| 吉木萨尔县| 涟水县| 石家庄市| 禄丰县| 宁海县| 桃源县| 拜城县| 大荔县| 日喀则市| 奎屯市| 庄河市| 太谷县| 金秀| 葫芦岛市| 蓬安县| 马鞍山市| 保亭| 雷波县| 池州市| 灌南县| 互助| 阿克陶县| 遂溪县|