《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應(yīng)用 > 基于能量攻擊的FPGA克隆技術(shù)研究
基于能量攻擊的FPGA克隆技術(shù)研究
2017年電子技術(shù)應(yīng)用第4期
許紀(jì)鈞,嚴(yán)迎建
解放軍信息工程大學(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
文獻標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2017.04.012
中文引用格式: 許紀(jì)鈞,嚴(yán)迎建. 基于能量攻擊的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)品進行偽造和破壞,嚴(yá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算法生成認(rèn)證碼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

    則當(dāng)被攻擊的FPGA固定時,K13,K14均為定值,可得Δ1也為定值。則當(dāng)采用單比特功耗模型進行攻擊,可使用Δ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.



作者信息:

許紀(jì)鈞,嚴(yán)迎建

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

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 羞羞视频在线观看入口| 中国一级特黄的片子免费| 欧美激情a∨在线视频播放| 免费黄色a视频| 色天天综合久久久久综合片| 国产日韩欧美亚洲| 91av福利视频| 天堂在线中文在线| 一本大道一卡二大卡三卡免费| 无码精品久久久久久人妻中字| 久久精品韩国三级| 欧美不卡视频一区发布| 亚洲欧美中文日韩欧美| 消息称老熟妇乱视频一区二区| 免费无毒A网站在线观看| 绿巨人app入口| 四虎成人精品在永久免费| 超级香蕉97在线观看视频| 国产女人视频免费观看| 免费观看黄色的网站| 国产精品久线观看视频| 69av在线视频| 国产色综合天天综合网| 99久久精品费精品国产| 天天看天天摸天天操| xx视频在线永久免费观看| 性色AV一区二区三区无码| 中文字幕国产欧美| 无码av专区丝袜专区| 久久久久99精品国产片| 日本加勒比在线精品视频| 久久天堂夜夜一本婷婷麻豆| 日韩欧国产精品一区综合无码| 乱人伦人妻中文字幕在线入口 | [中文][3d全彩]舞房之夜| 女同学下面粉粉嫩嫩的p| www一区二区| 天天摸一摸视频寡妇| free哆拍拍免费永久视频| 天天视频国产免费入口| chinese国产xxxx实拍|