利用FPGA加密芯片的抗DPA攻擊電路設計
本文引用地址:http://dyxdggzs.com/article/151255.htm
3 攻擊實(shí)驗的對比與分析
目前FPGA的種類(lèi)很多,但其中有大于50%的份額被Xilinx公司搶占,在此選用xilinx公司的Virtex-5(ML501),對其他種類(lèi)的FPGA的攻擊和此類(lèi)似。
ML50l在工作時(shí)需要3個(gè)工作電壓:內核電壓(1.2 V)、輔助電壓(2.5 V)、I/O電壓(3.3 V),而ML501芯片的所有地線(xiàn)是并結在一起的。對FPGA攻擊的實(shí)驗的原理圖如圖3所示,示波器(Tektronix DP04104,1 GHz BW,5 Gsample/s)的2通道接收Virtex-5(ML501)加密模塊的觸發(fā)信號,在內核電壓和芯片之間置一個(gè)電流探針(Tektronix CT-2,1.2 kHz~200 MHz),1通道用電流探針測試內核的功耗變化。攻擊過(guò)程如下:在PC機上生成64位隨機明文,通過(guò)串口發(fā)送至FPGA。FPGA收到明文后利用存儲在其中的密鑰對明文進(jìn)行DES加密,并在第16輪加密操作時(shí)對示波器產(chǎn)生數據采集的觸發(fā)信號。在進(jìn)行數據采集時(shí)其實(shí)質(zhì)是要采集內核電流所引起的功耗變化,并將數據通過(guò)USB總線(xiàn)送至PC機,最后在PC機上運行分析程序攻擊出64位的密鑰。
3.2 對FPGA加密芯片的攻擊
設定明文輸入和電流數據采樣為500組,采樣深度100 000點(diǎn),采樣頻率為500 MSPS,在相同的試驗環(huán)境下,對帶有防護結構和不帶防護結構的兩種DES的加密結構進(jìn)行功耗測量,同時(shí)根據密鑰的推測將明文分類(lèi),計算各類(lèi)的平均功耗,然后相減,可以得到差分功耗分析曲線(xiàn)。試驗后發(fā)現對不帶防護結構的ML50l FPGA芯片進(jìn)行攻擊時(shí),當子密鑰塊猜測正確時(shí),功率差分曲線(xiàn)出現明顯的尖峰,采用相同的方法可以攻擊出其他子密鑰塊,由此可以獲取第16輪的子密鑰K16(48位),攻擊成功。對帶防護結構的芯片攻擊時(shí),功率差分曲線(xiàn)基本是平緩的,波動(dòng)非常小,也沒(méi)有明顯的尖峰存在,可見(jiàn)DPA攻擊對帶有防護結構的FPGA無(wú)效。
4 結語(yǔ)
由以上DPA攻擊試驗表明了FPGA實(shí)現DES加密算法對DPA的脆弱性,而采用雙軌和預充電防護技術(shù)的FPGA加密芯片具有較好的抗DPA攻擊能力。這也說(shuō)明利用FPGA底層開(kāi)發(fā)工具通過(guò)硬件宏方法能在FPGA硬件上實(shí)現安全防護技術(shù)的拓展,對開(kāi)展芯片的安全防護工作的研究具有重要意義。
評論