欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

面向aes算法電路的差分功耗攻擊測試方法

文檔序號:6516703閱讀:359來源:國知局
面向aes算法電路的差分功耗攻擊測試方法
【專利摘要】本發(fā)明公開了一種面向AES算法電路的差分功耗攻擊測試方法,AES算法是一種廣泛應(yīng)用的分組對稱密碼算法,本發(fā)明對AES密碼算法電路在設(shè)計階段進行功耗攻擊測試時,對功耗樣本的獲取及處理步驟如下:(1)功能仿真及功耗樣本獲?。?)功耗樣本預(yù)處理(3)假設(shè)功耗樣本獲?。?)相關(guān)系數(shù)的計算和攻擊結(jié)果分析。本發(fā)明僅采樣有變化的功耗點,節(jié)省大量功耗樣本數(shù)據(jù),大幅降低功耗攻擊計算量,具有評估效率高、速度快的優(yōu)點,更重要的是,能夠在電路設(shè)計階段進行功耗攻擊測試,從而提前評估密碼電路的抗攻擊能力,降低AES電路的流片風(fēng)險。
【專利說明】面向AES算法電路的差分功耗攻擊測試方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及集成電路的信息安全領(lǐng)域,具體涉及面向AES算法電路的差分功耗攻擊測試方法。
【背景技術(shù)】
[0002]進入21世紀,科技迅猛發(fā)展,社會信息化已經(jīng)是大勢所趨,生活變得信息化,數(shù)字化和網(wǎng)絡(luò)化,人們對信息的依賴性不斷增強。隨著計算機、網(wǎng)絡(luò)、通訊技術(shù)與集成電路技術(shù)的發(fā)展,安全芯片被廣泛應(yīng)用于自動取款機(Automatic Teller Machine, ATM)的銀行卡,小區(qū)或公司環(huán)境的門禁系統(tǒng)智能卡,手機中的語音加密芯片等各種需要信息安全的環(huán)境中。由于集成電路內(nèi)部的電路結(jié)構(gòu)非常復(fù)雜,同時具有封閉性好、不易入侵、運算快速等等特點,使得安全芯片更適合安全要求更高的系統(tǒng)。
[0003]密碼算法電路作為安全芯片的核心部分,對安全芯片的安全性能起到?jīng)Q定性的作用。但隨著信息安全研究的深入,各種旁路攻擊手段嚴重地威脅了密碼算法電路的安全特性。功耗攻擊以其簡單易行,普遍適用,低成本高效率,得到了廣泛的關(guān)注,是一種對密碼算法電路構(gòu)成嚴重威脅的一種旁路攻擊手段。
[0004]功耗攻擊的基本思想就是通過獲取密碼算法電路加解密時的功耗信息,并做出相應(yīng)的分析來推測出密鑰。攻擊者控制明文(或密文)的輸入,獲取大量的功耗跡,然后攻擊者選擇合適的攻擊模型和方法,對功耗跡進行分析,猜測出正確的密鑰。目前國際上最流行的旁路攻擊技術(shù)是功耗分析攻擊,大致可以分為簡單功耗分析(Simple PowerAnalysis, SPA)、差分功耗分析(Differential Power Analysis, DPA)和相關(guān)系數(shù)功耗分析(Correlation Power Analysis, CPA),很多新型的功耗分析攻擊方法都是以這些攻擊方法為基礎(chǔ)演變而來的。
[0005]相比于SPA,差分功耗分析攻擊無須了解關(guān)于被攻擊設(shè)備的詳細知識且能夠從飽含噪聲的功耗跡中獲取密鑰信息,是一種更為強大更為流行的攻擊方法。這種攻擊使用大量的功耗跡來分析設(shè)備功耗,并將這些功耗跡視為被處理函數(shù)進行統(tǒng)計分析和相關(guān)性計算?;谙嚓P(guān)系數(shù)CPA攻擊由于強大的破解能力已被廣泛采用,它通過將采集到的真實功耗信息與數(shù)學(xué)分析計算得到的假設(shè)功耗信息進行統(tǒng)計分析,從而獲得兩者的相關(guān)性來判斷真實功耗,其中需要采用一定的功耗模型將無實際意義的數(shù)學(xué)分析值映射為有物理意義的假設(shè)功耗值。
[0006]為了應(yīng)對功耗分析攻擊對密碼算法電路提出的挑戰(zhàn),國內(nèi)外眾多研究機構(gòu)和學(xué)者針對DES、AES、ECC、Hash等多種密碼算法的抗功耗分析攻擊實現(xiàn)進行了研究。為了驗證這些抗攻擊方案的有效性,必須建立一種有效的功耗攻擊測試方法。國外學(xué)者設(shè)計了針對FPGA和ASIC實現(xiàn)的密碼算法電路的功耗攻擊方法,并取得了不錯的攻擊結(jié)果。但是這種方法的使用成本比較高昂,設(shè)計與實現(xiàn)上均存在不小的障礙,并且其驗證周期比較長,并不適合作為用于理論研究使用。密碼算法電路的設(shè)計者如果直接使用這種方法驗證密碼算法電路的安全特性,將不得不面臨巨大的風(fēng)險,因為如果密碼算法電路設(shè)計失敗會造成人力與物力成本方面的浪費。如何在密碼算法電路設(shè)計階段進行功耗攻擊測試成為了密碼算法電路設(shè)計領(lǐng)域的一個日趨解決技術(shù)難題。某些學(xué)者利用數(shù)學(xué)建模方式設(shè)計的仿真攻擊方法,雖然攻擊高效,成本低廉,但是其精度很低,結(jié)果可信度不高,也不適合用于驗證密碼算法電路的抗功耗分析特性。
[0007]綜上所述,現(xiàn)有技術(shù)中,針對FPGA和ASIC實現(xiàn)的密碼算法電路的功耗攻擊方法,存在成本高、實現(xiàn)困難、驗證周期長的缺陷,數(shù)學(xué)建模方式設(shè)計的仿真攻擊方法存在精度低、可信度差的缺陷。

【發(fā)明內(nèi)容】

[0008]本發(fā)明的目的在于,針對上述問題,提出面向AES算法電路的差分功耗攻擊測試方法及系統(tǒng),僅采樣有變化的功耗點,節(jié)省大量功耗樣本數(shù)據(jù),大幅降低功耗攻擊計算量,具有評估效率高、速度快的優(yōu)點,更重要的是,能夠在密碼算法電路設(shè)計階段進行功耗攻擊測試,降低流片后安全性能不佳導(dǎo)致密碼算法電路重新設(shè)計的風(fēng)險,從而縮短AES密碼算法電路設(shè)計周期。
[0009]為實現(xiàn)上述目的,本發(fā)明面向AES算法電路的差分功耗攻擊測試方法包括以下步驟:
[0010]步驟一:功耗樣本獲取。在電路設(shè)計仿真階段,采用PrimeTimePX功耗仿真工具對仿真結(jié)果進行功耗信息提取,將得到的一系列瞬態(tài)功耗值作為采樣的功耗樣本信息;
[0011]步驟二:功耗樣本預(yù)處理。截取加解密時段的功耗樣本構(gòu)成功耗軌跡,并進行對齊處理,使功耗軌跡對齊于同一操作時刻;
[0012]步驟三:假設(shè)功耗樣本獲取?;跐h明重量模型,選取合適的攻擊點,使用隨機明文和猜測密鑰,推導(dǎo)計算假設(shè)功耗值矩陣;
[0013]步驟四:相關(guān)系數(shù)的計算和分析。將預(yù)處理后的功耗樣本與假設(shè)功耗樣本進行相關(guān)性計算,獲取相關(guān)系數(shù)矩陣,由相關(guān)系數(shù)矩陣做出相關(guān)系數(shù)曲線圖,在攻擊點處出現(xiàn)明顯峰值的則攻擊成功,峰值對應(yīng)相關(guān)性曲線可推測出正確密鑰;若在攻擊點處未出現(xiàn)明顯峰值,則攻擊失敗。
[0014]該測試方法的核心共有三部分:功能仿真模塊、功耗仿真模塊以及功耗分析模塊。所述步驟一由功能仿真模塊和功耗仿真模塊完成,其中功耗樣本的獲取是利用Prime TimePower Extension (PTPX)功耗仿真工具對加密算法的功耗跡進行仿真,其中配置PTPX工作在基于時間(Time-based)模式,而不是通常的平均模式(Averaged mode),其優(yōu)點是可以快速的獲得一個較為準確的功耗仿真結(jié)果,和Hspice相比,所需的資源和時間都很少,靈活機動。和實際的芯片相比,其功耗跡中只包含芯片加密時的功耗,沒有任何噪聲,這使得在做功耗分析時,對隨機明文的數(shù)量要求比較低,方便更快地對加密算法的安全性能做出驗證,縮短了檢驗周期。
[0015]所述步驟一的基本流程是首先將密碼算法的RTL代碼通過邏輯綜合(DesignCompiler, DC)工具生成電路網(wǎng)表文件,然后加載明文、時鐘等網(wǎng)表必需的測試向量,和網(wǎng)表使用的標準單元庫及時序參數(shù)一起通過VCS (VerilogCompile Simulator, Synopsys公司的數(shù)字電路仿真工具)仿真工具進行仿真,生成功能仿真波形。功能仿真波形需要轉(zhuǎn)換成功耗仿真分析需要的V⑶(Value Change Dump)文件,此文件包含了加密算法運行過程中內(nèi)部各種標準單元的變化情況。然后設(shè)置PTPX的仿真環(huán)境參數(shù),對生成的VCD文件進行分析,調(diào)用單元庫的功耗參數(shù)生成功耗仿真文件,從中提取功耗攻擊需要的功耗跡樣本,該樣本為一個矩陣。
[0016]所述步驟二的對齊處理是通過設(shè)計一個在加密開始時刻產(chǎn)生的觸發(fā)信號進行定位,所有記錄的能量跡均在該信號觸發(fā)時刻對齊,因此能獲得完全一致的操作序列的能量消耗,有利于后續(xù)功耗攻擊的數(shù)據(jù)處理。
[0017]所述步驟三中的假設(shè)功耗的獲取采用漢明重量模型,漢明重量(HammingWeight, HW),是字符串相對于同樣長度的零字符串的漢明間隔,也就是說,它是字符串中非零元素的個數(shù)。對于二進制字符串來說,就是I的個數(shù),例如(11101)的漢明重量為4,可表示為HW(11101)=4。通過計算數(shù)字電路存儲數(shù)據(jù)在某個特定時段內(nèi)字符串中非零元素的個數(shù)來代表電路的功耗,將其作為假設(shè)功耗樣本,對于M種隨機明文和N種猜測密鑰,生成的假設(shè)功耗矩陣大小為M*N。
[0018]所述步驟四中,相關(guān)系數(shù)的計算方法如下:已知的明文或者密文測試向量記為向量…,dD)',其中(Ii表示第i次加密或者解密所對應(yīng)的數(shù)據(jù)值,將對應(yīng)數(shù)據(jù)(Ii分組的功耗跡記作t/ =αΜ,…,\τ),其中T表示密碼模塊的功耗跡的長度,針對每一個可能的k值洪有K種取值),計算對應(yīng)的假設(shè)中間值k= (k1;…,kK),給定的數(shù)據(jù)向量d和密鑰假設(shè)k,得到中間值f(d,k);采用漢明重量功耗模型,映射由中間值造成的功耗,利用不同密鑰加密的模擬功耗和真實功耗之間的相關(guān)性,對大量的隨機測試向量進行統(tǒng)計分析,做出相關(guān)系數(shù)曲線圖,在攻擊點處出現(xiàn)極值的則攻擊成功,極值對應(yīng)相關(guān)性曲線可推測出正確密鑰;若未出現(xiàn)極值,則攻擊失敗。
[0019]本發(fā)明的數(shù)學(xué)原理說明如下:
[0020]功耗攻擊的核心是利用密碼算法電路功耗和加密數(shù)據(jù)之間的相關(guān)性,從統(tǒng)計學(xué)的觀點出發(fā),可以利用協(xié)方差或者相關(guān)系數(shù)刻畫數(shù)據(jù)之間的線性關(guān)系。
[0021]基于相關(guān)系數(shù)的差分功耗攻擊建立在模擬功耗矩陣H和實測功耗矩陣T之間有一定相關(guān)性這樣的推論的基礎(chǔ)之上的。由正確的密鑰推導(dǎo)出的模擬功耗必然與實測功耗有關(guān)聯(lián);而由錯誤的密鑰推導(dǎo)出的模擬功耗則必然和實測功耗的相關(guān)性比較小。而通過大量的測試向量來計算其相關(guān)性,能夠使與正確密鑰對應(yīng)的相關(guān)系數(shù)放大,便于推測密鑰。
[0022]對DES芯片進行功耗攻擊方法通常是:首先,選擇DES執(zhí)行過程的某個中間值,這個中間值要被密鑰操作,在大部分攻擊場景中,一般選取明文或者密文作為這個中間值;然后,測量DES加密過程的實際功耗,若采集D次加密過程,每次加密采集T個功耗點,則獲得一個DXT的功耗矩陣,記為矩陣T ;并計算假設(shè)的中間值,假設(shè)密鑰k有K種可能,對于每一次加密計算出中間值,可獲得一個DXK的矩陣V ;然后將中間值映射為模擬功耗值,并采用功耗模型(漢明距離或者漢明重量模型),計算得出一個DXK的矩陣,記為H矩陣;再計算模擬功耗矩陣與實際功耗矩陣之間的相關(guān)性,得出一個KXT的矩陣,記為Z矩陣,其每一行分別對應(yīng)一種猜測的密鑰,每一列對應(yīng)在該時刻模擬功耗與實際功耗之間的相關(guān)系數(shù),計算公式如式I所示;最后利用Z矩陣按行繪制出曲線(密鑰一相關(guān)性曲線),出現(xiàn)峰值的曲線即對應(yīng)功耗攻擊結(jié)果。[0023]
【權(quán)利要求】
1.一種面向AES (Advanced Encryption Standard,高級加密標準)算法電路的差分功耗攻擊測試方法,其特征在于,包括以下步驟: 步驟一:功能仿真和功耗樣本獲取,在電路設(shè)計仿真階段,在電路功能仿真驗證的基礎(chǔ)上,采用Prime Time PX功耗仿真工具對仿真結(jié)果進行功耗信息提取,將得到的一系列瞬態(tài)功耗值作為采樣的功耗樣本信息; 步驟二:功耗樣本預(yù)處理,截取加解密時段的功耗樣本構(gòu)成功耗軌跡,并進行對齊處理,使功耗軌跡對齊于同一操作時刻; 步驟三:假設(shè)功耗樣本獲取,基于漢明重量模型,選取合適的攻擊點,使用隨機明文和猜測密鑰,推導(dǎo)計算假設(shè)功耗值矩陣; 步驟四:相關(guān)系數(shù)的計算和分析,將預(yù)處理后的功耗樣本與假設(shè)功耗樣本進行相關(guān)性計算,獲取相關(guān)系數(shù)矩陣,由相關(guān)系數(shù)矩陣做出相關(guān)系數(shù)曲線圖,在攻擊點處出現(xiàn)明顯峰值的則攻擊成功,峰值對應(yīng)相關(guān)性曲線可推測出正確密鑰;若在攻擊點處未出現(xiàn)明顯峰值,則攻擊失敗。
2.根據(jù)權(quán)利要求1所述的面向AES算法電路的差分功耗攻擊測試方法,其特征在于,步驟一的具體流程如下: 首先將該方法的RTL代碼通過DC (Design Compiler,設(shè)計綜合)工具綜合生成電路網(wǎng)表文件,然后加載明文、時鐘等網(wǎng)表必需的測試向量,和網(wǎng)表使用的標準單元庫及時序參數(shù)一起通過VCS (Verilog Compile Simulator, Synopsys公司的數(shù)字電路仿真工具)功能仿真工具進行仿真,生成功能仿真波形,并將其轉(zhuǎn)換成為功耗仿真分析需要的VCD (ValueChange Dump,改值轉(zhuǎn)儲)文件;然后在PTPX仿真工具下對生成的V⑶文件進行分析,利用工藝庫功耗模型生成功耗仿真文件。
3.根據(jù)權(quán)利要求1所述的面向AES算法電路的差分功耗攻擊測試方法,其特征在于,步驟一中,配置Prime Time PX工作在基于時間(Time-based)的模式,在采樣的大量功耗點中,僅記錄有功耗變化時的電路功耗值。
4.根據(jù)權(quán)利要求1所述的面向AES算法電路的差分功耗攻擊測試方法,其特征在于,步驟二的對齊處理是通過設(shè)計一個在加密開始時刻產(chǎn)生的觸發(fā)信號進行定位,所有記錄的能量跡均在該信號觸發(fā)時刻對齊。
5.根據(jù)權(quán)利要求1所述的面向AES算法電路的差分功耗攻擊測試方法,其特征在于,步驟三中的假設(shè)功耗的獲取采用漢明重量模型,通過計算數(shù)字電路存儲數(shù)據(jù)在某個特定時段內(nèi)字符串中非零元素的個數(shù)來代表電路的功耗,將其作為假設(shè)功耗樣本,其中,對于M種隨機明文和N種猜測密鑰,生成的假設(shè)功耗矩陣大小為MXN。
【文檔編號】G06F17/50GK103530474SQ201310513475
【公開日】2014年1月22日 申請日期:2013年10月25日 優(yōu)先權(quán)日:2013年10月25日
【發(fā)明者】單偉偉, 孫華芳, 王學(xué)香 申請人:東南大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
应城市| 贺州市| 万全县| 监利县| 高尔夫| 西充县| 布尔津县| 万盛区| 井陉县| 昭苏县| 个旧市| 阿坝县| 无为县| 卓资县| 磴口县| 中江县| 罗山县| 新河县| 姚安县| 嘉定区| 高台县| 黑龙江省| 金乡县| 文成县| 英山县| 三江| 赫章县| 德兴市| 徐州市| 灌云县| 宣威市| 汕头市| 湘潭市| 华蓥市| 铜山县| 漾濞| 灌阳县| 囊谦县| 元朗区| 灵台县| 无棣县|