日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

對(duì)于DES的差分能量分析攻擊及其防范對(duì)策

出處:雁舞白沙 發(fā)布于:2007-04-28 11:55:53

摘要:摘要介紹了DES的加密過(guò)程,將差分能量分析DPA(Differential Power Analysis)的原理運(yùn)用于該算法,提出了區(qū)分函數(shù)的選取原則,并針對(duì)差分能量分析的假設(shè),介紹了幾種對(duì)抗這種攻擊的策略。

關(guān)鍵詞:DES DPA 差分能量分析 區(qū)分函數(shù)

傳統(tǒng)的密碼分析理論認(rèn)為,對(duì)密碼芯片的分析僅依賴于輸入明文和輸出密文。而在實(shí)際應(yīng)用中,分析人員可以獲得其它的信息。例如對(duì)于有引腳的芯片,很容易獲得引腳上的電流或者電壓。通過(guò)這些電流或電壓的變化,可以用有別于傳統(tǒng)的方法獲得密鑰的信息。

1 DES加密過(guò)程

DES(Data Encryption Standard)被認(rèn)為是加密技術(shù)的兩大里程碑之一。在上個(gè)世紀(jì)得到了廣泛的應(yīng)用。這里給出其中一輪加密過(guò)程,如。其它如擴(kuò)展置換、密鑰產(chǎn)生等具體過(guò)程見(jiàn)參考文獻(xiàn)。

在整個(gè)DES加密流程中,只有S盒(S-box)是的非線性函數(shù),是整個(gè)加密算法的安全。給出了S盒的圖示。

中的每個(gè)S盒都是一個(gè)4×16的查找表。在加密過(guò)程中,將與子密鑰K異或后的48bits均分為8組,分別對(duì)應(yīng)8個(gè)S盒,記每組為(a0a1a2a3a4a5)。根據(jù)這6位輸入,在對(duì)應(yīng)的S盒查找表中找到對(duì)應(yīng)的4位數(shù)據(jù)作為輸出。查找表中的對(duì)應(yīng)關(guān)系如下:由(a0a5)決定對(duì)應(yīng)的S盒的行,由(a1a2a3a4)決定對(duì)應(yīng)的S盒的列。由這個(gè)行和列確定的數(shù)(4位二進(jìn)制表示)作為該S盒的輸出。

由于S盒在DES加密算法中的特殊地位,使得很多攻擊方法都是針對(duì)S盒的。
2 DPA原理在DES上的應(yīng)用

Differential Power Analysis早由Kocher et al提出,現(xiàn)在許多研究人員指出它對(duì)智能卡(Smart Card)是一種有效的攻擊。其理論基礎(chǔ)是:在加密過(guò)程中要消耗能量,而消耗的能量隨處理的數(shù)據(jù)不同會(huì)有微小的變化。根據(jù)這種變化確定處理的數(shù)據(jù)是0還是1,辦公而有可能猜出加密算法中所使用的密鑰。

在具體討論這種攻擊前,對(duì)所用符號(hào)做如下約定:

Si[j]:第i個(gè)明文在時(shí)間點(diǎn)j時(shí)的能量水泵抽樣值;

D(·):引入的區(qū)分函數(shù);

S0={Si[j]D(□)=0}; (1)

S1={Si[j]D(□)=1}; (2)

A0[j]:集合S0中所有信號(hào)在j時(shí)刻的平均能量消耗;

A1[j]:集合S1中所有信號(hào)在j時(shí)刻的平均能量消耗;

ΔD[j]:兩集合的平均信號(hào)能量差異。

首先,要能夠測(cè)得整個(gè)加密流程中S盒的能量曲線。基于統(tǒng)計(jì)的理論,要求記錄足夠的樣本點(diǎn)Si[j]。這里隱含了一個(gè)假設(shè):S盒中對(duì)不同比特處理時(shí),能量消耗差異發(fā)生在一個(gè)特定的時(shí)間,而且正好在該點(diǎn)的±Δ時(shí)間范圍內(nèi)進(jìn)行抽樣,因此能夠記錄下不同的能量消耗曲線。這個(gè)假設(shè)可以作為抗DPA攻擊對(duì)策的一個(gè)切入點(diǎn)。
另外還需要讓這些能量曲線反映出差于密鑰的信息。這是整個(gè)DPA過(guò)程中的關(guān)鍵。在這兒,引入了區(qū)分函數(shù)D(·),有的地方也記為selection function。從上面的(1)和(2)式中可以看到,該函數(shù)的作用是將樣本曲線映射到兩個(gè)不相交的集合上。

下一步,對(duì)這兩個(gè)集合中的樣本在時(shí)間點(diǎn)j的樣本值進(jìn)行平均,得到時(shí)間點(diǎn)j時(shí)的平均能量消耗。由于Si[j]包含信號(hào)和噪聲這兩部分的能量消耗,而根據(jù)隨機(jī)過(guò)程的知識(shí),知道其中大部分均值為0。因而這種平均可以在一定程序上降低隨機(jī)噪聲對(duì)信號(hào)的影響。


由上面可以看到:當(dāng)ΔD[j]較大時(shí),說(shuō)明由區(qū)分函數(shù)劃分的兩個(gè)信號(hào)的能量消耗在j時(shí)刻差異較大。而這種能量消耗差異,正是由密鑰和待處理數(shù)據(jù)相互作用而產(chǎn)生的。如果選擇的區(qū)分函數(shù)合適,即在理想的情況下,D函數(shù)正好將所有的在j時(shí)刻芯片處理數(shù)據(jù)為1的Si[j]選到集合S1;相應(yīng)地,在j時(shí)刻,芯片處理的數(shù)據(jù)為0的所有Si[j]被D函數(shù)映射到集合S0中,這時(shí)能量消耗差異很明顯。

目前發(fā)表的文獻(xiàn)中均只給出了具體的區(qū)分函數(shù),下面給出區(qū)分函數(shù)的一般選取原則:

(1)區(qū)分函數(shù)是關(guān)于密鑰的函數(shù)D(Ki);

(2)區(qū)分函數(shù)在正確的輸入下應(yīng)當(dāng)重現(xiàn)加密芯片所處理的某一比特值。

如將該函數(shù)定義為:

D(P6,K1)={S-box1(P6+Ki)}0 (6)

即D值等于第i個(gè)樣本在輪非線性變換中的個(gè)S盒輸出的4bits中的個(gè)比特。其中P6表示明文經(jīng)過(guò)初始置換后作為個(gè)S盒輸入的6bits,K1表示猜測(cè)的輪密鑰中用于個(gè)S盒的輸入部分。如果猜測(cè)的密鑰正確,那么D值就一定會(huì)等于實(shí)現(xiàn)加密過(guò)程中個(gè)S盒的位輸出。即這一時(shí)刻所有輸出為1的Si[j]都會(huì)被映射到集合S1,因此會(huì)使得ΔD[j]出現(xiàn)峰值。相反,如果密鑰不正確,就會(huì)使得某些輸出值為1的Si[j]被映射到集合S0中,這時(shí)ΔD[j]的射值會(huì)變小。這樣,就可以猜出一部分密鑰了。依照這種方法,猜測(cè)全部S盒的48bit密鑰所需的次數(shù)為2 6×8次,另外8比特密鑰可以用窮舉法求得。這個(gè)結(jié)果比單純地應(yīng)用窮舉搜索有了明顯的改進(jìn)。

3 對(duì)策

基于DPA攻擊的假設(shè),可以提出一些對(duì)策。

假設(shè)1.攻擊者能夠記錄能量消耗差異。一種簡(jiǎn)單的對(duì)策是引入噪聲,降低信噪比SNR,使得能量消耗差異減小。但這種引入噪聲的方法仍會(huì)受到改進(jìn)的DPA攻擊。參考文獻(xiàn)4指出,通過(guò)選擇特別 區(qū)分函數(shù),可以提高SNR。前面(6)指出,通過(guò)選擇特別的區(qū)分函數(shù),可以提高SNR。前面(6)式給出的D函數(shù)只確定一個(gè)比特的值,設(shè)改進(jìn)的D函數(shù)確定d個(gè)比特的值,如d=4,這時(shí)D函數(shù)的值可取后者的信噪比約為前者的d倍。但在這種方法中,樣本曲線被映射到3個(gè)不相交的集合上。

S0={Si[j]D(□)=0d} (7)

S1={Si[j]D(□)=1d}

S2={Si[j]Si[j]} ∈S0,S1}

個(gè)集合中D函數(shù)的值為d個(gè)0,第二個(gè)集合中D函數(shù)的值為d個(gè)1,第三個(gè)集合不用。其不利于之處是需要樣本點(diǎn)數(shù)會(huì)增加。

另一種對(duì)策是在加密過(guò)程中引入隨機(jī)延遲,這樣,特定時(shí)刻的實(shí)際能量消耗差異就不能被準(zhǔn)確記錄。

假設(shè)2.能量消耗的差異可以反映出密鑰的信息。可以通過(guò)對(duì)S盒的輸入做一些隨機(jī)的改變來(lái)掩飾密鑰的信息。一種常用的方法是用異或這一線性運(yùn)算,對(duì)S盒 的輸入做隨機(jī)的改變。這需要對(duì)S盒的輸出也做一個(gè)相應(yīng)的修正,使得加密的結(jié)果不受異或這一線性運(yùn)算的影響。另外一種方法是在加密過(guò)程中用兩個(gè)不同的處理器,它們處理的數(shù)據(jù)寬度不同,因而消耗的能量也不一樣,再用一個(gè)隨機(jī)序列發(fā)生器來(lái)產(chǎn)生選擇信號(hào),可以隨機(jī)地選擇不同的處理器。具體的硬件電路見(jiàn)參考文獻(xiàn)[6]。其它有關(guān)FPGA和ASIC在降低信息泄漏方面的專門研究,本文不做討論。但如果能防止信息泄漏,這將從根本上抵抗DPA攻擊。

應(yīng)該注意到,筆者是把智能卡作為攻擊對(duì)象,因而可能得到足夠的樣本點(diǎn),并知道明文和密文。這在其它的密碼系統(tǒng)上,并不是必然的事實(shí)。但目前智能卡得到了廣泛的應(yīng)用,因此這種攻擊的潛在危害較大。以上僅以DES的S盒部分說(shuō)明了DPA攻擊,但就DPA的基本原理,它可以被應(yīng)用于其它的密碼算法上,如橢圓曲線、AES(Advanced Encryption Standard)等。對(duì)DPA的防范措施還有待進(jìn)一步研究。


  
關(guān)鍵詞:對(duì)于DES的差分能量分析攻擊及其防范對(duì)策

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號(hào)碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號(hào),
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫(kù)提出的寶貴意見(jiàn),您的參與是維庫(kù)提升服務(wù)的動(dòng)力!意見(jiàn)一經(jīng)采納,將有感恩紅包奉上哦!