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攻擊方法仍然能夠快速、準確地找到正確密鑰,這對嵌入式加密系統又提出了新的挑戰。

主站蜘蛛池模板: 久久精品无码一区二区日韩免费| 国产乱子伦精品视频| 天堂成人av| 欧美色图久久| 久久国产毛片| a毛片免费观看| 亚洲三级a| 亚洲啪啪网| 亚洲一区二区三区麻豆| 亚洲最大福利网站| 日本在线免费网站| 国产人成在线视频| 美女黄网十八禁免费看| 乱人伦99久久| 99久久国产自偷自偷免费一区| 亚洲一区二区精品无码久久久| 免费aa毛片| 国产香蕉国产精品偷在线观看| 欧美影院久久| 中文字幕不卡免费高清视频| 在线观看的黄网| 中文字幕无码制服中字| 国产一二视频| 国产乱人激情H在线观看| 色欲色欲久久综合网| 在线a网站| 亚洲欧美人成电影在线观看| 波多野吉衣一区二区三区av| 欧美日韩在线亚洲国产人| 亚洲色精品国产一区二区三区| 国产黑丝一区| 日本免费福利视频| 久久综合丝袜日本网| 亚洲永久精品ww47国产| 国产理论精品| 欧美日韩综合网| 麻豆国产精品一二三在线观看| 精品综合久久久久久97超人| 国产亚洲精品97在线观看| 国产真实乱子伦视频播放| 亚洲码在线中文在线观看| 波多野结衣中文字幕一区| 国产一级视频久久| 国产在线观看成人91| 丁香六月激情综合| 欧美午夜网站| 欧美视频免费一区二区三区| 成人日韩视频| 国产成人一区免费观看| 88av在线| 国产欧美日韩18| 永久成人无码激情视频免费| 国产精品亚洲五月天高清| 亚洲综合九九| 亚洲人妖在线| 四虎永久免费地址| 国产精品午夜电影| 久久频这里精品99香蕉久网址| 91在线精品麻豆欧美在线| 免费观看男人免费桶女人视频| 这里只有精品国产| 国产久草视频| 成人国内精品久久久久影院| 中文字幕在线看| 成人免费一级片| 精品一区二区无码av| 欧美成人第一页| 亚洲人成网站18禁动漫无码| 欧美性色综合网| 97se亚洲综合在线| 国产精品一区不卡| 国产综合在线观看视频| 亚洲欧美综合另类图片小说区| 成年人久久黄色网站| 婷婷亚洲最大| 亚洲福利视频网址| 大香伊人久久| 亚洲国产精品无码久久一线| 亚洲中文在线看视频一区| 九九这里只有精品视频| 国产乱人伦AV在线A| 四虎国产永久在线观看|