《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應(yīng)用 > 基于能量攻擊的FPGA克隆技術(shù)研究
基于能量攻擊的FPGA克隆技術(shù)研究
2017年電子技術(shù)應(yīng)用第4期
許紀鈞,嚴迎建
解放軍信息工程大學(xué),河南 鄭州450000
摘要: 針對FPGA克隆技術(shù)展開研究,指出其關(guān)鍵問題在于對加密密鑰的攻擊,并以Xilinx公司7系列FPGA為列,討論了采用AES-256 CBC模式解密條件下的攻擊點函數(shù)選擇方法,通過單比特功耗模型實施差分能量攻擊,成功恢復(fù)了256 bit密鑰。同時,針對不可直接代入密鑰檢驗正確性的問題,設(shè)計了一種基于DPA攻擊相關(guān)系數(shù)極性的檢驗方法,避免了密鑰錯誤引起FPGA錯誤配置,實驗表明,該方法能夠有效消除相關(guān)系數(shù)的“假峰”現(xiàn)象。
中圖分類號: TP309.7
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.04.012
中文引用格式: 許紀鈞,嚴迎建. 基于能量攻擊的FPGA克隆技術(shù)研究[J].電子技術(shù)應(yīng)用,2017,43(4):47-50.
英文引用格式: Xu Jijun,Yan Yingjian. FPGA cloning technology based on power attack[J].Application of Electronic Technique,2017,43(4):47-50.
FPGA cloning technology based on power attack
Xu Jijun,Yan Yingjian
The PLA Information Engineering University,Zhengzhou 450000,China
Abstract: Aiming at the FPGA cloning technology, it is pointed out that the key problem is attacking the encryption key. Attack function selection method against AES-256 CBC mode decryption is discussed with Xilinx 7 series FPGA as the column. 256 bit key was successfully recovered by performing a differential power attack with a single-bit power model. Meanwhile, in order to solve the problem that the key cannot be directly substituted into the correctness of the key test, a test method based on the polarity of the DPA attack correlation coefficient is designed, to avoid the misconfiguration caused by error key. Experimental results show that the method can effectively eliminate the "false peak" phenomenon.
Key words : FPGA cloning technology;power attack;AES-256 CBC;correlation coefficient;test method

0 引言

    隨著可編程技術(shù)的不斷發(fā)展,F(xiàn)PGA已經(jīng)成為各類商業(yè)系統(tǒng)的重要組成部分。然而,由于配置文件(比特流)必須存儲在FPGA外部,通過竊取外部存儲器后,攻擊者可直接盜版生產(chǎn),還可通過FPGA逆向工程(FPGA Reverse Engineering)獲得硬件設(shè)計[1,2]或加入硬件木馬[3,4],對產(chǎn)品進行偽造和破壞,嚴重地威脅了用戶知識產(chǎn)權(quán)。

    為克服這一漏洞,Xilinx公司在ISE、Vivado等設(shè)計軟件中增加AES-256 CBC加密配置方式,并在FPGA內(nèi)部集成解密模塊,從而防止硬件設(shè)計被克隆和偽造[5]。然而,這種方式并不完全可靠。2011年Moradi等人使用差分能量攻擊(Differential Power Attack,DPA)恢復(fù)了Virtex-II Pro系列FPGA加密比特流所用3DES算法密鑰[6],引起了工業(yè)界的廣泛關(guān)注。此后,使用AES-256算法加密的Xilinx 4系列和5、6、7系列FPGA分別于2012年[7]和2016年[8]被DPA攻擊和差分電磁攻擊(Differential Electromagnetic Attack,DEMA)攻破。

    本文針對Xilinx 7系列FPGA實施能量攻擊,從攻擊和檢驗等兩個角度對攻擊效率進行了提升。首先根據(jù)Xilinx FPGA解密的實現(xiàn)方式,討論了攻擊點函數(shù)的選取方法,使用DPA攻擊成功恢復(fù)了AES-256算法密鑰,并基于相關(guān)系數(shù)極性設(shè)計了一種新的檢驗方法。

1 FPGA克隆技術(shù)

    基于FPGA生產(chǎn)的商用產(chǎn)品,必須通過外部非易失存儲器進行重新配置。而FPGA克隆則是通過非法手段獲取比特流配置文件,配合FPGA逆向工具(如BIL[1]、FpgaTools[9])竊取其內(nèi)部設(shè)計XDL/NCD網(wǎng)表的方法,具體流程如圖1所示。

wdz4-t1.gif

    加密比特流結(jié)構(gòu)如圖2所示,使用HMAC算法生成認證碼SHA256,并通過AES-256算法以CBC模式對SHA256、HMAC密鑰kHMAC和配置信息加密;初始向量IV明文寫入比特流中[5]。因此,密文存儲時,F(xiàn)PGA克隆的關(guān)鍵在于AES密鑰kAES的獲取。

wdz4-t2.gif

    由于kAES保存于FPGA內(nèi)部eFUSE中,一次性寫入,外部無法讀取[5],而明文信息plaintext直接用于FPGA配置,同樣無法獲取,kAES的獲取演變?yōu)槲芪墓?Ciphertext-Only Attack,COA)。由于CBC模式具備很強的抗COA攻擊能力,傳統(tǒng)密碼分析方法難以攻破,此時引入旁道攻擊成為一種較為理想的方法,如圖1所示。

2 能量攻擊方法設(shè)計

2.1 能量攻擊原理

2.1.1 攻擊流程

    能量攻擊是最流行的旁道攻擊方法,攻擊者無須了解被攻擊設(shè)備的詳細知識,根據(jù)功耗的數(shù)據(jù)相關(guān)性,利用加密或解密時的能量跡即可恢復(fù)密鑰,能量攻擊流程如圖3所示[10],具體流程如下:

wdz4-t3.gif

    (1)選取攻擊點

wdz4-2.1.1-x1.gif

    (4)計算假設(shè)功耗值

wdz4-t3-x1.gif

    (6)結(jié)果檢驗

    一般直接代入攻擊所得密鑰,使用新的分組數(shù)據(jù)加密或解密,從而驗證攻擊結(jié)果的正確性。

2.1.2 常用功耗模型及統(tǒng)計方法

    針對硬件實現(xiàn)的密碼設(shè)備,DPA攻擊通常針對寄存器翻轉(zhuǎn)功耗的數(shù)據(jù)相關(guān)性進行攻擊[10],根據(jù)統(tǒng)計方法不同,主要分為基于相關(guān)系數(shù)的CPA攻擊和基于均值差的DPA攻擊兩種。

    (1)基于相關(guān)系數(shù)的CPA攻擊

wdz4-2.1.2-x1.gif

wdz4-gs1.gif

    其中,rij表示用第i個猜測密鑰對能量跡上第j個點求得的均值差(下文統(tǒng)稱相關(guān)系數(shù))。

2.2 攻擊點選取

2.2.1 CPA攻擊

    Xilinx FPGA中AES-256解密模塊內(nèi)部結(jié)構(gòu)如圖4所示[7],寄存器中寄存每一輪的解密中間值,通過數(shù)據(jù)選擇器控制進行新的分組解密或下一輪運算。

wdz4-t4.gif

    則第i次解密運算中,每輪運算結(jié)果可以表示為式(2):

wdz4-gs2-5.gif

wdz4-gs2-5-x1.gif

2.2.2 DPA攻擊

    考慮DPA攻擊,采用單比特模型,為減少影響Δ的密鑰長度,對Δ進行分割和化簡如下:

     wdz4-gs6.gif

    則當被攻擊的FPGA固定時,K13,K14均為定值,可得Δ1也為定值。則當采用單比特功耗模型進行攻擊,可使用Δ2代替Δ,從而評估寄存器R中某一比特的翻轉(zhuǎn)情況,具體分析如表1所示。

wdz4-b1.gif

    由表1可知,使用單比特模型實施DPA攻擊時,所得的兩組功耗集完全相同,只有極性相反,可以達到攻擊目的,即攻擊點函數(shù)為:

wdz4-gs7.gif

3 實驗驗證及分析

3.1 DPA攻擊結(jié)果

wdz4-3.1-x1.gif

wdz4-3.1-x2.gif

wdz4-t5.gif

wdz4-t6.gif

3.2 攻擊結(jié)果檢驗

    DPA攻擊通常采用直接代入密鑰加/解密來檢驗攻擊結(jié)果的正確性。然而,這種檢驗方法在FPGA克隆中并不適用,因為錯誤密鑰解密得到的比特流可能導(dǎo)致FPGA功能失常,甚至毀壞[8]。為克服這一問題,本文設(shè)計了一種基于DPA攻擊相關(guān)系數(shù)極性的檢驗方法。

wdz4-3.2-x1.gif

wdz4-t7.gif

4 結(jié)論

    本文針對加密配置的FPGA克隆技術(shù)進行了研究,引入能量攻擊,針對AES-256 CBC模式,設(shè)計了對應(yīng)的DPA攻擊方法;同時,針對FPGA不可直接代入驗證的特殊情況,設(shè)計了一種基于DPA攻擊相關(guān)系數(shù)極性的檢驗方法,為DPA攻擊結(jié)果檢驗提供了一種新思路。

參考文獻

[1] BENZ F,SEFFRIN A,HUSS S A.Bil:A tool-chain for bitstream reverseengineering[C]//Field Programmable Logic and Application 2012,22nd International Conference on,2012:735-738.

[2] Betajet.Icestorm:reverse-engineering the lattice iCE40 bitstream[EB/OL].http://www.eetimes.com/author.asp?section_id=36&doc_id=1327061,2015.

[3] SWIERCZYNSKI P,F(xiàn)YRBIAK M,KOPPE P,et al.FPGA trojans through detecting and weakening of cryptographic primitives[J].IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems,2015,34(8):1-1.

[4] CHAKRABORTY R S,SAHA I,PALCHAUDHURI A,et al.Hardware trojan insertion by direct modification of FPGA configuration bitstream[J].IEEE Design & Test,2013,30(2):45-54.

[5] Xilinx,Inc.Using encryption to secure a 7 series FPGA bit-stream[EB/OL].https://www.xilinx.com/support/documentation/application_notes/xapp1239-fpga-bitstream-encryption.pdf,2015.

[6] MORADI A,BARENGHI A,KASPER T,et al.On the vulnerability of FPGA bitstream encryption against power analysis attacks: extracting keys from xilinx Virtex-II FPGAs[C]//ACM Conference on Computer and Communications Security.ACM,2011:111-124.

[7] MORADI A,KASPER M,PAAR C.Black-Box side-channel attacks highlight the importance of countermeasures: an analysis of the xilinx virtex-4 and virtex-5 bitstream encryption mechanism[C]//Conference on Topics in Cryptology.Springer-Verlag,2012:1-18.

[8] MORADI A,SCHNEIDER T.Improved side-channel analysis attacks on Xilinx bitstream encryption of 5,6,and 7 series[C]//Constructive Side-Channel Analysis and Secure Design.2016.

[9] Xiangfu.Fpgatools[EB/OL].https://github.com/Wolfgang-Spraul/fpgatools,2015.

[10] 曼哥德.能量分析攻擊[M].北京:科學(xué)出版社,2010.

[11] 郭世澤.密碼旁路分析原理與方法[M].北京:科學(xué)出版社,2014.



作者信息:

許紀鈞,嚴迎建

(解放軍信息工程大學(xué),河南 鄭州450000)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 天天插在线视频| 日本漫画免费大全飞翼全彩| 免费人成视频在线| 色吧首页dvd| 国产成人午夜福利在线播放| 5060在线观看| 天堂8在线天堂资源bt| 一级毛片免费在线观看网站| 日产亚洲一区二区三区| 五月天在线婷婷| 欧美成人一区二区三区在线视频 | 国语对白刺激做受xxxxx在线| 动漫精品第一区二区三区| 香港黄页精品视频在线| 国产盗摄XXXX视频XXXX| 4虎1515hh永久免费| 国内精品久久久久久久97牛牛| a级毛片100部免费观看| 小妇人电影中文在线观看| 中国黄色在线观看| 摸进她的内裤里疯狂揉她动图视频| 久久免费视频网| 日韩aⅴ人妻无码一区二区| 久热中文字幕在线| 最近高清中文在线字幕在线观看 | 一级毛片一级毛片一级毛片aaav | 国产成a人片在线观看视频下载| 中文字幕中出在线| 国产精品亚洲片在线观看不卡| 5060午夜一级一片| 国产精品美女久久久浪潮av| 91香蕉污视频| 国产高清视频在线| 91麻豆国产级在线| 国产黄大片在线观看| 91精品国产一区二区三区左线 | 亚洲av午夜成人片| 樱桃视频高清免费观看在线播放 | 国产精品嫩草影院在线播放| 67194线路1(点击进入)| 国产精选午睡沙发系列999|