999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種對嵌入式加密芯片的增強DPA攻擊方法

2010-01-01 00:00:00尹文龍丁國良劉昌杰
計算機應用研究 2010年2期

摘 要:針對傳統DPA攻擊方法需要波形數據精確對齊的缺點,提出了一種基于離散傅里葉變換的增強DPA攻擊方法,并對目前常用的嵌入式芯片以DES加密算法為例進行了DPA攻擊實驗。實驗結果表明采用這種增強的DPA攻擊方法能夠克服傳統DPA攻擊方法的缺點。

關鍵詞:差分功耗分析; 數據加密標準; 離散傅里葉變換; 旁路攻擊

中圖分類號:TP309.7

文獻標志碼:A

文章編號:1001-3695(2010)02-0712-02

doi:10.3969/j.issn.1001-3695.2010.02.085

Enhanced DPA technique for embed encrypted CMOS chip

YIN Wen-long, DING Guo-liang, LIU Chang-jie, GUO Hua

(Dept. of Computer Engineering, Ordnance Engineering College, Shijiazhuang 050003, China)

Abstract:This paper presented an enhanced DPA technique to defeat the popular DPA shortcoming, which was that the waveform data must be precise alignment. And made waveform matching based on discrete Fourier transforms. After that performed the standard analysis. The experiment demonstrates the enhanced DPA technique can overcome the shortcoming of popu-lar DPA.

Key words:differential power analysis(DPA); DES; discrete Fourier transforms; side channel attacks(SCA)

0 引言

對嵌入式加密芯片進行DPA(差分功耗分析)[1]攻擊是獲取這些加密系統密鑰的有效途徑。DPA是SCA(旁路攻擊)技術的一種,DPA攻擊的思想為:以電路的功耗特性為基礎,利用功耗與內部密鑰的關系,將大量采樣到的包含該內部密鑰運算的功耗波形數據根據所猜測的密鑰進行劃分,使得所劃分的兩部分具有不同的功耗特性。最后,對兩部分的功耗數據相減得到功耗差分曲線,如果猜測正確,差分曲線將出現明顯的尖鋒,如圖1所示。

DPA攻擊能夠成功的前提是所有功耗波形相對于某一加密運算過程必須精確對齊,如果往功耗波形中加入隨機延時,或功耗數據采集時有偏差,由于各條功耗曲線相同操作時間點不對齊,加密系統處理不同數據(0和1)的功耗差異不能在大量采集樣本中得到累積,DPA攻擊將會失敗[2]。為此,本文提出了一種增強的DPA攻擊方法對常用的嵌入式加密芯片(單片機、智能卡、FPGA芯片)進行攻擊,并以DSE(data encryption standard,數據加密標準)算法為例對攻擊過程作了詳細說明,其他加密算法(3DES、AES、RSA)與此類似。

1 攻擊的總體方案

1.1 功耗波形數據采集

功耗波形數據采集就是采集包含所要分析功耗分量的功耗數據。對于不同的加密算法,要分析的功耗分量不同,因此功耗數據的采集時機也不盡相同,如對DES算法常采集第一輪或最后一輪的功耗數據。而波形采集次數一般會比較多,并且在采集同一批數據的時候芯片內部的密鑰是不變化的。只有這樣,所有被采集的功耗波形中才會擁有相同的密鑰信息。

針對同一密鑰,本文對嵌入式加密芯片輸入M組明文PTi(0≤i≤M-1)。利用數字示波器進行功耗數據采樣,記為Si[j],設采樣點為N個(0≤j≤N-1),Si[j]為輸入明文PTi后加密過程功耗采樣的第j個采樣點。對應于明文PTi的密文輸出記為CTi。

1.2 波形數據預處理

由于嵌入式加密芯片加入了隨機延時或在采樣時存在偏差,在1.1節中采集到的波形數據間存在偏移,如果直接進行分析處理,結果會很不理想。因此采用基于離散傅里葉變換的方法對波形數據進行匹配處理,具體方法如下:

設兩個波形信號f(n)和g(n),假設n的范圍是(-M,…,M),因此波形長度M=2M+1。讓F(k)和G(k)表示兩個波形的離散傅里葉變換(discrete Fourier transform,DFT),則

F(k)=∑Mn=-M f(n)WknN=AF(k)ejθF(k)(1)

G(k)=∑Mn=-M g(n)WknN=AG(k)ejθG(k)(2)

其中:WknN=e-j2πN。AF(k)和AG(k)為振幅,ejθF(k)和ejθG(k)為相位。交叉相位頻譜(或規格化交叉頻譜)R(k)定義為

R(k)=F(k)G(k)|F(k)G(k)|=ejθ(k)(3)

其中:G(k)表示G(k)的共軛,而且θ(k)=θF(k)-θG(k)。 POC(phase-only correlation)函數r(n)是R(k)的逆離散傅里葉變換(inverse discrete Fourier transform,IDFT),表示為

r(n)=1N∑Mk=-MR(k)W-knN(4)

如果兩個波形間有相似,POC函數給出了明顯的急劇峰值(當f(n)=g(n),POC函數變成Kronecker delta函數);如果兩個波形間沒有相似,峰值不明顯。波峰的高度表示波形的匹配程度,而波峰的位置表示波形間的偏移。因此,如果將原始波形中加入噪聲,那么POC函數中波峰的高度將會下降。現在考慮連續區間中的波形,設fc(t)是實數變量t在連續區間中的波形,本文用δ表示波形的偏移,因此偏移后的波形可以表示為fc(t-δ),假定f(n)和g(n)是fc(t)和fc(t-δ) 的采樣波形,則

f(n)=fc(t)|t=nT(5)

g(n)=fc(t-δ)|t=nT(6)

其中:T是采樣間隔,變量n=-M,…,M。為簡單起見,設定T=1,則f(n)與g(n)之間的交叉相位頻譜和POC函數為

R(k)=F(k)G(k)|F(k)G(k)|≈ej2πNkδ(7)

r(n)=1N∑Mk=-MR(k)W-knN≈αNsin{π(n+δ)}sin{πN(n+δ)}(8)

其中:δ為兩個波形間的偏移值;α為峰值,表示兩個波形的相似度,α=1表示兩個波形是一樣的,當給波形中加入噪聲時,α的值會減小,在實際應用中α≤1。

在匹配中,首先任意選擇一個波形作為參考,根據式(8)計算POC函數r(n),從而確定其他波形和參考波形間的偏移誤差δ;然后根據偏移誤差δ調整其他的波形,實現了所有波形的精確對齊(波形匹配)。

1.3 波形數據分析

DES將64位的明文輸入經過16輪加密等一系列變換輸出64位密文,64位密鑰中的56位用于加密,其余8位用于奇偶校驗。詳細的DES算法描述可參見文獻[3]。對DES進行DPA攻擊時可以采用第一輪或對后一輪的功耗數據進行分析攻擊,在此本文選用最后一輪的功耗數據。

最后一輪DES加密的流程如圖2所示。第15輪操作輸出的密文為64位,等分成左(L15)、右(R15)兩部分。R15經過一個E變化擴展成48位,然后與第16輪子密鑰K16進行異或操作,結果再經過8個6變4的S變化為32位。再經過一個P換位操作,與L15進行異或操作得到第16輪輸出的左32位L16,而R16直接由R15得到。第16輪的輸出再經過一個置換操作即可得到密文CT。

攻擊的第一步是獲取第16輪的子密鑰K16(48位),再通過K16獲取最終的64位密鑰。把K16等分成8個子密鑰塊(K 116,…,K 816),每個子密鑰塊為6個二進制位,其取值范圍為0~63。具體的攻擊方法為:對每個子密鑰塊從0~63進行遍歷,在每次遍歷時選取一個D函數對波形數據進行分類;然后對兩組波形數據取平均值,最后做差。如果最終的曲線出現尖峰說明子密鑰塊猜測正確。D函數為L15中的某一位。

2 攻擊實驗

2.1 對單片機或智能卡的攻擊

對單片機攻擊的實驗的原理如圖3所示。示波器(Tektronix DPO4104,1 GHz BW, 5G sample/s)的2通道接收單片機(89C52)加密模塊的觸發信號,1通道用電壓探針(Tektronix P6139A,500 MHz 8.0 pF)采集來采集電阻R兩端電壓數據。攻擊過程如下:在PC機上生成64位隨機明文,通過串口發送至單片機。單片機收到明文后利用存儲在其中的密鑰對明文進行DES加密,在加密過程中加入隨機延時,并在第16輪加密操作時對示波器產生數據采集的觸發信號。示波器在收到觸發信號之后,采集電阻R兩端電壓數據(可反映單片機的功耗),并將數據通過USB總線送至PC機,最后在PC機上運行分析程序攻擊出64位的密鑰。

設定明文輸入和電壓數據采樣為500組,采樣深度100 000點,采樣頻率500 MS/s。如圖3所示,為第一個子密鑰塊K 116猜測正確功率差分曲線(出現明顯的尖峰),采用相同的方法可以攻擊出其他7個子密鑰塊,由此可以得到K16。對于智能卡由于其內部為一個C51的單片機核,可以用單片機來模擬對智能卡的攻擊,攻擊的實驗平臺和攻擊過程與單片機類似。

2.2 對FPGA的攻擊

目前FPGA的種類很多,但其中有大于50%的份額被Xilinx公司搶占,在此本文選用Xilinx公司的Spartan3(PQ208),對其他種類的FPGA的攻擊與此類似。Spartan3在工作時需要三個工作電壓,即內核電壓(1.2 V)、輔助電壓(2.5 V)、I/O電壓(3.3 V)。而Spartan3芯片的所有地線是并結在一起的。在進行數據采集時實質是要采集內核電壓所引起的功耗變化。在對Spartan3進行功耗數據采集有兩種方案:a)芯片的地線和電源地線之間串聯一個電阻,通過電壓探針采集電阻兩端的電壓的變化,但此時電壓變化反映的是總功耗變化,只能近似地表示內核的功耗變化;b)在內核電壓和芯片之間置一個電流探針(Tektronix CT-2,1.2 kHz~200 MHz),通過電流的變化反映內核的功耗變化。在實際的應用中本文采用第二種方案。對FPGA攻擊的其他步驟與單片機類似。

3 結束語

實驗證明,對采取插入隨機延時防護措施的加密芯片,或無法獲取精確的采集觸發信號的加密芯片,傳統的DPA攻擊方法失效,但本文的增強DPA攻擊方法仍然能夠快速、準確地找到正確密鑰,這對嵌入式加密系統又提出了新的挑戰。

主站蜘蛛池模板: 成人午夜天| 国产精品片在线观看手机版 | 久久久久国产一区二区| 亚洲欧美另类专区| 综合成人国产| 国产成人亚洲综合a∨婷婷| 国产人在线成免费视频| 国产一级无码不卡视频| 亚欧乱色视频网站大全| 2021国产乱人伦在线播放| 亚洲天天更新| 99热这里只有免费国产精品| 国产精品妖精视频| 美女被操黄色视频网站| 91久久国产综合精品女同我| 一级黄色网站在线免费看| 一本无码在线观看| 色AV色 综合网站| 国产精品香蕉在线| 日韩无码黄色| 欧美一区二区福利视频| 九色综合视频网| 亚洲视频免费播放| 国产三级a| 久久国产精品嫖妓| 麻豆精品久久久久久久99蜜桃| 曰AV在线无码| 女同久久精品国产99国| 五月婷婷综合网| 国产人成在线观看| 国产在线观看99| 婷婷六月综合网| 91精品啪在线观看国产60岁| 免费Aⅴ片在线观看蜜芽Tⅴ| 国产91导航| 国产手机在线小视频免费观看| 亚洲成aⅴ人片在线影院八| 久久精品国产免费观看频道| 亚洲三级网站| 成人国产精品网站在线看| 日韩精品免费一线在线观看 | 亚洲欧洲日韩综合色天使| 成人午夜免费观看| 国产成人在线小视频| 亚洲国产成人久久精品软件| 欧美成在线视频| 伊人久久综在合线亚洲91| 国产一级小视频| 蜜芽一区二区国产精品| 精品无码一区二区三区电影| 91美女视频在线观看| 久久久久亚洲AV成人网站软件| 欧美日韩va| 日本不卡视频在线| 亚洲三级影院| 成人91在线| 一级不卡毛片| 99尹人香蕉国产免费天天拍| 欧美天堂在线| 亚洲一区二区在线无码| 亚洲热线99精品视频| 69综合网| 永久天堂网Av| 免费A级毛片无码无遮挡| 女同国产精品一区二区| 久久婷婷五月综合97色| 久久久久亚洲AV成人人电影软件| 91精品啪在线观看国产91九色| 免费Aⅴ片在线观看蜜芽Tⅴ| 天天爽免费视频| 中文字幕精品一区二区三区视频| www.狠狠| 亚洲第一成年人网站| 中文一区二区视频| 狠狠色噜噜狠狠狠狠奇米777| 国产在线一区二区视频| 日本人妻一区二区三区不卡影院 | 久久精品日日躁夜夜躁欧美| 欧美中文字幕一区| 久久综合丝袜长腿丝袜| 亚洲无码91视频| 国产特级毛片aaaaaaa高清|