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资源在线| 一区二区三区在线不卡免费 | 国产特级毛片| 亚洲区一区| 狠狠色狠狠色综合久久第一次| aa级毛片毛片免费观看久| 国产精品网曝门免费视频| AⅤ色综合久久天堂AV色综合| 国产成人综合亚洲欧美在| 亚洲欧美在线综合一区二区三区 | 无码专区在线观看| 婷婷午夜影院| 亚洲六月丁香六月婷婷蜜芽| 亚洲不卡影院| 欧美黑人欧美精品刺激| 97人妻精品专区久久久久| 欧美区一区| 萌白酱国产一区二区| 免费人成黄页在线观看国产| 欧美亚洲一区二区三区在线| 在线五月婷婷| 婷婷亚洲最大| 成人免费黄色小视频| 成人在线天堂| 日本少妇又色又爽又高潮| 永久在线播放| 日韩免费成人| 久久免费精品琪琪| 亚洲无线一二三四区男男| 午夜福利视频一区| 无码福利日韩神码福利片| 野花国产精品入口| 97国产精品视频自在拍| 99热国产这里只有精品9九 | 久久久久免费看成人影片 | 久久影院一区二区h| 亚洲—日韩aV在线| 伊人AV天堂| 国产女人爽到高潮的免费视频| 日本欧美一二三区色视频| 六月婷婷激情综合| 天天躁夜夜躁狠狠躁躁88| 色视频久久| 亚洲黄色片免费看| 国产精品私拍99pans大尺度| 色综合久久无码网| 国产午夜无码专区喷水| 干中文字幕| 久久国产免费观看| 国产午夜福利在线小视频| 老司机精品99在线播放| 91精品福利自产拍在线观看| 亚洲狠狠婷婷综合久久久久| 国产精品浪潮Av| 欧美亚洲一区二区三区导航| 99热精品久久| 一本色道久久88| 国产成人喷潮在线观看| 国产流白浆视频| 国产你懂得| 亚洲一区毛片| 亚洲第一成年网| 亚洲开心婷婷中文字幕| 国产91全国探花系列在线播放 | 青青久视频| 亚洲AⅤ波多系列中文字幕| 免费无遮挡AV| 免费国产好深啊好涨好硬视频| 免费一级毛片完整版在线看| 精品少妇人妻一区二区| 国内精品视频在线| 99国产在线视频| 亚洲黄网在线| 国产美女无遮挡免费视频| 亚洲 欧美 中文 AⅤ在线视频| 欧美国产精品拍自| 成人午夜视频网站| 99久久亚洲精品影院| 国产成人91精品| 色男人的天堂久久综合| 狠狠色丁香婷婷综合|