文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2013)10-0056-03
近幾年來(lái),針對(duì)密碼算法的DPA攻擊得到越來(lái)越多的關(guān)注。通過對(duì)設(shè)備的功耗進(jìn)行分析發(fā)現(xiàn),密碼設(shè)備在執(zhí)行相同指令的情況下,功耗與參與運(yùn)算的密鑰有一定的關(guān)系。攻擊者利用這種關(guān)系對(duì)采集到的能量跡進(jìn)行DPA攻擊,可以分析出密鑰[1-3]。
為了防御DPA攻擊,一種有效的技術(shù)是對(duì)參與運(yùn)算的數(shù)據(jù)進(jìn)行隨機(jī)掩碼,也稱為信息盲化[4]。加了掩碼的數(shù)據(jù)在進(jìn)行密碼運(yùn)算時(shí),包含密鑰信息的中間數(shù)據(jù)被掩碼保護(hù)起來(lái),因此能夠抵抗一階DPA攻擊。然而這種防御技術(shù)仍然可以用高階DPA進(jìn)行攻擊。相對(duì)一階DPA攻擊來(lái)說(shuō),高階DPA需要攻擊者了解更多的算法實(shí)現(xiàn)細(xì)節(jié),并且需要選擇恰當(dāng)?shù)墓裟P?,所以攻擊過程也比一階DPA復(fù)雜得多。
1 能量泄露模型和DPA攻擊原理
1.1 能量泄露模型
設(shè)備的功耗可以通過在設(shè)備的GND管腳和地之間插入一個(gè)電阻,然后用示波器測(cè)量電阻兩端的電壓變化來(lái)獲得。為了建立能量泄露模型,用P[t]表示設(shè)備在特定t時(shí)刻的功耗。P[t]可以分成兩部分,第一部分是與運(yùn)算相關(guān)的功耗d[t],第二部分是所有與運(yùn)算無(wú)關(guān)的功耗n,包括常量部分以及各種噪聲。因此P[t]可以表示為[5]:
從表1可以看出,在泄露漢明重量的情況下,使用絕對(duì)差組合函數(shù)能達(dá)到更好的效果。
2 掩碼技術(shù)和高階DPA攻擊
2.1 掩碼技術(shù)原理
掩碼技術(shù)的核心思想是使密碼設(shè)備的功耗不依賴于設(shè)備所執(zhí)行的密碼算法的中間值。掩碼技術(shù)通過隨機(jī)化密碼設(shè)備所處理的中間值來(lái)實(shí)現(xiàn)這個(gè)目標(biāo)。掩碼方案可以用下式來(lái)表示:
2.3 變形掩碼方案的高階DPA攻擊
在上述掩碼方案中,整個(gè)加密過程每個(gè)中間值都帶著掩碼,因此可以抵抗一階DPA攻擊。掩碼方案為了保證每輪運(yùn)算的結(jié)構(gòu)相同,在輪運(yùn)算結(jié)束時(shí)通過非線性的SBOX變換將掩碼重新設(shè)置為每輪開始的的掩碼值X132-63。
在同時(shí)攻擊12 bit子密鑰時(shí),密鑰組合為212個(gè),即需要攻擊4 096個(gè)假設(shè)密鑰。
3 高階DPA攻擊實(shí)驗(yàn)驗(yàn)證
基于以上分析,對(duì)FPGA上實(shí)現(xiàn)的帶變形掩碼方案的DES算法進(jìn)行了攻擊實(shí)驗(yàn)。首先在DES運(yùn)算過程中采集2 000條能量跡,在該能量跡上可以清晰地識(shí)別出每輪DES運(yùn)算過程,如圖4所示。
為了抵抗DPA攻擊,掩碼技術(shù)越來(lái)越多地被采用。但掩碼方案可能受到高階DPA的攻擊,因此在設(shè)計(jì)掩碼方案時(shí),需要充分考慮抵抗高階DPA攻擊的措施。本文首先介紹了能量泄露模型以及一階和高階DPA的攻擊原理。然后結(jié)合變形掩碼方案,從理論上證明可以采用二階DPA實(shí)施攻擊,并且論述了組合函數(shù)的選擇以及在攻擊中提高信噪比的方法。本文最后在FPGA上對(duì)掩碼方案的硬件實(shí)現(xiàn)進(jìn)行了攻擊實(shí)驗(yàn),并成功獲得密鑰。
參考文獻(xiàn)
[1] KOCHER P,JAFFE J,JUN B.Introduction to differential power analysis and related attacks[A].Cryptography Research Inc.,1998.
[2] KOCHER P,JAE J,JUN B.Differential power analysis[C]. In Proceedings of CRYPTO'99,Springer-Verlag,1999.
[3] MESSERGES T S,DABBISH E A,SLOAN R H,Investigations of power analysis attacks on smartcards[C].In Proceedings of the USENIX Workshop on Smartcard Technology,Chicago,1999.
[4] AKKAR M L,GIRAUD C.An implementation of DES and AES secure against some attacks[C].In Proceedings of CHES'2001,Springer-Verlag,2001.
[5] BRIER E,CLAVIER C,OLIVIER F.Correlation power analysis with a leakage model[C].In Cryptographic Hardware and Embedded Systems-CHES 2004,Springer-Verlag,2004.
[6] MESSERGES T S.Using second-order power analysis to attack DPA resistant software[C].In Proceedings of CHES’ 2000,Springer-Verlag,2000.