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

基于FPGA平臺的Piccolo功耗分析安全性評估

2014-05-22 07:17:16王晨旭李景虎喻明艷王進祥
電子與信息學報 2014年1期

王晨旭 李景虎 喻明艷 王進祥

?

基于FPGA平臺的Piccolo功耗分析安全性評估

王晨旭*①②李景虎②喻明艷①②王進祥①

①(哈爾濱工業大學微電子中心 哈爾濱 150001)②(哈爾濱工業大學(威海)微電子中心 威海 264209)

為了評估Piccolo密碼算法的功耗分析安全性,該文提出一種針對Piccolo末輪的攻擊模型,基于SASEBO (Side-channel Attack Standard Evaluation BOard)實測功耗數據對該算法進行了相關性功耗分析攻擊。針對Piccolo末輪運算中包含白化密鑰的特點,將末輪攻擊密鑰(包括輪密鑰24L,24R,2,3)分成4段子密鑰,逐個完成各個子密鑰的攻擊,使80位種子密鑰的搜索空間從280降低到(2×220+2×212+216),使種子密鑰的恢復成為可能。攻擊結果表明,在實測功耗數據情況下,3000條功耗曲線即可恢復80位種子密鑰,證實了該攻擊模型的有效性和Piccolo硬件面向功耗分析的脆弱性,研究并采取切實有效的防護措施勢在必行。

密碼學;數據安全;Piccolo;相關性功耗分析;攻擊模型;防護措施;側信道攻擊標準評估板

1 引言

密碼算法是數據安全的基礎,近年來,在無線傳感器網絡(WSN)和射頻識別(RFID)應用中,資源消耗和數據安全這對矛盾體的出現給傳統加密算法帶來了新的挑戰,占用資源少、功耗低的輕量級分組密碼算法應運而生。其中,CLEFIA[1]和PRESENT[2,3]是兩種最典型的輕量級密碼算法,并已于2012年成為ISO標準;在CHES2011會議上,索尼公司繼CLEFIA之后提出了更加緊湊的輕量級分組密碼算法Piccolo,該算法在0.13 μm工藝下只需683個等效門(Gate Equivalents, GE)即可實現加密操作[4]。文獻[5]對近年來出現的輕量級密碼算法進行了硬件資源評估,指出Piccolo算法在所有測評的分組密碼算法中占用最小的硬件資源,尤其適合在資源受限的環境中,為目前稍顯尷尬的RFID加密應用提供了一種可行的解決方案。

本文第2節簡要介紹了本文所采用的一些符號標記,描述了Piccolo算法;第3節介紹CPA攻擊的基本原理;第4節則描述了Piccolo功耗攻擊模型和猜測功耗矩陣的建立方法;第5節給出了實驗配置和部分攻擊結果,并對結果進行了簡要討論;最后給出了本文的結論和下一步工作展望。

2 Piccolo算法簡介

Piccolo分組密碼算法的分組長度為64 bit,支持80 bit和128 bit兩種密鑰長度,分別用Piccolo-80和Piccolo-128表示,對應的迭代輪數分別為25輪和31輪。本文以Piccolo-80為研究對象,為方便解釋,下文在無特殊說明的情況下,Piccolo均指Piccolo-80。以下首先給出本文所用符號標記的含義,而后對算法做簡要介紹。

2.1 符號標記含義說明

2.2 密鑰擴展部分

式中,RCONL和RCONR分別表示第輪的輪常數的左半部分和右半部分,c為的5 bit二進制表示,例如22={10110}2。

由上述過程不難看出,最后一輪中所涉及的白化密鑰2和3對應于種子密鑰中的3,4,輪密鑰24L和24R與中的0,1則只是相差一個輪常數RCON24L和RCON24R。因此,如果能夠獲取2,3,24L和24R,則能夠通過其它方式破解2以獲得Piccolo的所有80 bit種子密鑰。

2.3 數據處理部分

Piccolo算法采用廣義Feistel結構,數據處理部分以64 bit明文、白化密鑰和輪密鑰為輸入經由25輪迭代后產生64 bit密文輸出,如圖1所示,從圖中可以看出,除最后一輪外,每輪包含兩類變換,分別是函數: GF(216)→GF(216)和輪置換: GF(264)→GF(264),最后一輪不包含輪置換。

函數: Piccolo的: GF(216)→GF(216)也被稱為超級S盒[16],采用3層結構,具有更強的混淆能力,如圖2所示。圖中,S盒: GF(24)→GF(24) 是Piccolo中唯一的非線性操作;代表混淆矩陣,矩陣的引入使輸入的每一位擴散影響輸出的每一位,后文將能看到這一點會增加功耗分析攻擊的難度。

圖1 Piccolo密碼算法數據處理流程

圖2 Piccolo密碼算法的F函數

上述關系可以用如下過程進行表示。

輪置換:: GF(264)→GF(264)以字節為單位進行置換,其過程如圖3所示。

3 CPA攻擊的基本原理

在一個典型的同步時序電路中,一個時鐘周期內(兩個上升沿之間)觸發器保持穩定,整個電路的功耗主要是由組合電路翻轉帶來的動態功耗;當上升沿到來后的極短一段時間內,各觸發器狀態更新,整個電路的功耗則由觸發器的翻轉引起的動態功耗組成,其值必定與觸發器的翻轉個數(以漢明距離予以表示)相關。由此可知,加密過程中密碼芯片所產生的功耗必然與運算期間某些中間值存在一定的相關性。CPA攻擊方法的主要思想就是通過分析這種相關性達到破解算法密鑰的目的,一般情況下,這種相關性比較小,因此需要大量的加密獲取不同情況下的功耗數據,結合統計分析技術才能夠成功破解密鑰。在統計學理論中,通常用Pearson相關系數來評價兩個向量和之間的相關性[6]。

圖3 Piccolo密碼算法的RP置換過程

下面以密文攻擊(以最后輪的輪密鑰為攻擊目標)為研究對象,描述密文CPA攻擊一般步驟:

圖4 CPA的統計分析過程

4 Piccolo算法的CPA攻擊

4.1 Piccolo的硬件實現

Piccolo算法的ASIC硬件實現方式主要有兩種,一是基于輪的并行實現方法,它可以得到較高的數據吞吐率,但消耗的硬件資源較多。二是將輸入數據進行分組,每組分別處理,再予以拼接,即串行實現方法,這種方法能夠顯著地減小硬件資源消耗,683GE即可實現[4]。本文評估了第1種實現方法的安全性,對串行實現方式的評測也可以采用類似方法。并行實現方式對輸入64 bit明文數據并行處理,每輪的處理結果保存在64個觸發器中(本文以DFF(0:63)表示,并用DFF(0)表示這些觸發器的最高有效位),歷經25輪運算后輸出64 bit密文。本文所完成的Piccolo設計占用1624GE, 26個時鐘周期能完成一個分組的加密。

4.2 攻擊模型

通常情況下,密文攻擊相對于明文攻擊更加實用,因此,后文主要以密文攻擊為說明對象來評測Piccolo算法的實現安全性,即以獲取最后輪的輪密鑰24L,24R和白化密鑰2,3(為解釋方便,下文將2,3,24L和24R統稱為攻擊密鑰)為攻擊目標。雖然Piccolo算法采用了類似DES算法的Feistel結構,但是由于超級S盒和白化密鑰的存在,Piccolo的CPA攻擊與傳統密碼算法如DES, AES和PRESENT相比存在較大難度。

圖5 Piccolo算法并行實現方式最后一輪抽象圖

根據部分相關性原理,如果一個電路結構的整體和電路的功耗具有相關性,電路結構的一部分也和電路的功耗具有一定的相關性,因此,部分觸發器的翻轉對總功耗也會產生一定的影響,為方便計算,考慮基于DFF(0:63)中的部分觸發器的漢明距離進行功耗建模,將2,3,24L,24R按下式進行拆分組合為SubKey1(20), SubKey2(12), SubKey3(20)和SubKey4(12)4段子密鑰。

式中in(0:15)表示函數的輸入;HP(16:19)表示基于DFF(16:19)的功耗模型值。

根據上述模型,對于某個特定的64 bit明文,通過對SubKey1(20)的220次遍歷可以得到一個關于HP(16:19)的1×220的漢明距離矩陣,這個矩陣代表了在不同的SubKey1(20)猜測下,觸發器翻轉時刻的猜測的功耗信息。如果對條明文進行計算,則可以得到一個×220的矩陣,這個矩陣即為我們攻擊SubKey1(20)所需的猜測功耗矩陣1,該矩陣用來與實際功耗矩陣做統計分析。

根據上述模型,通過條不同的明文和對SubKey2(12)進行遍歷可以得到一個關于HP(20:31)的×220的猜測功耗矩陣2,該矩陣用來與實際功耗矩陣做統計分析以攻擊24L(4:15)。

4.2.3針對SubKey3(20)和SubKey4(12)的功耗建模

由于Piccolo算法左右兩側的高度對稱性,對SubKey3(20)和SubKey4(12)的攻擊方法與SubKey1(20)和SubKey2(12)基本一致,所不同的是這里需要分別選取24(36:39)和24(40:31)為中間值進行功耗映射。

5 攻擊實驗配置與攻擊結果

5.1 攻擊實驗配置

SASEBO(Side-channel Attack Standard Evaluation BOard)系列板是用于評測抗側信道攻擊能力的基準平臺[18],由日本AIST信息安全研究中心開發。本文采用SASEBO-G[19]作為基準搭建了如圖6所示的功耗采集平臺,其中,PC機采用目前主流計算機,PC機與SASEBO-G通過RS-232相連,并通過GPIB適配器控制示波器(Agilent MSO8064A)的行為。示波器的通道2采用普通單端探頭用于接收SASEBO-G板上的觸發信號,通道1采用差分探頭用于探測SASEBO-G板上密碼FPGA芯片的電流變化。

圖6 功耗采集平臺硬件原理圖

基于圖6的功耗采集解決方案如下:首先制訂PC機與下位機(SASEBO-G)之間的通訊協議;在SASEBO-G評測板上,Piccolo算法實現在密碼FPGA芯片內,控制FPGA主要完成上述通訊協議的解析和密碼FPGA的控制;在PC機上用NI公司的LabVIEW?實現流程控制,LabVIEW產生64 bit的隨機明文,通過RS232經由控制FPGA發送到密碼FPGA芯片中進行Piccolo加密,期間密碼FPGA芯片向示波器產生一個觸發信號,保證每次Piccolo加密時示波器采集的數據都能準確對齊;控制FPGA等待加密結束,將存儲在密碼FPGA中的密文讀出并經由RS232送往PC機;LabVIEW負責接收并存儲密文,然后向示波器發出指令以存儲此次采集到的數據,一條功耗曲線采集完畢。

為了達到上述要求并方便控制,我們在實現Piccolo密碼算法時加入了局部總線接口和可編程寄存器,并在控制FPGA中實現了一個基于ARM7的最小SoC系統,采用固件實現與PC機的通訊和協議解析,此最小系統中僅僅包括ARM7核,UART和一個用于與密碼FPGA芯片通訊的局部總線控制器。

實驗中,最小SoC系統運行于24 MHz,而Piccolo密碼算法運行于4 MHz,波特率設定為115200;設定5000組明文輸入,示波器采樣率為2 GSa/s,由于觸發信號保證了每次Piccolo加密時示波器采集的數據都能準確對齊,為了降低測量噪聲,將示波器設置為20次平均采樣模式,即每組明文重復執行加密過程20次,由示波器將20次采集到的數據自動平均,因此,Piccolo實際執行加密的次數為5000×20。

5.2 采用3000條功耗曲線時的攻擊結果

由于對SubKey1和SubKey2與對SubKey3和SubKey4的攻擊過程基本一致,因此這里僅僅給出對前兩個子密鑰的攻擊結果。實驗中,Piccolo加密時的種子密鑰取{00112233445566778899}16,在3000條功耗曲線時,計算1矩陣與矩陣的相關系數矩陣1,取相關系數矩陣1各行的最大值,這些最大值可以構成一個220×1的向量,該向量結果見圖7,圖中橫坐標表示密鑰猜測值,縱坐標表示了相應的相關系數。

由圖7可以發現,當= {558972}10={8877c}16時,相關系數達到最大值0.0937,這說明在本次攻擊中{8877c}16={1000_1000_0111_0111_1100}2最有可能是SubKey1的真實值,由此可推出2的攻擊密鑰值為{1000_1000_0111_0111}2,而24L(0:3)的攻擊密鑰值為{1100}2,事實上,2和24L(0:3)的真實密鑰值也的確如此。

圖8給出了在3000條功耗曲線時對SubKey2的攻擊結果,在

={1853}10={73d}16={0111_0011 _1101}2

時獲得了最大的相關系數0.2483,即24L(4:15)的攻擊密鑰值為{0111_0011_1101}2。綜上,使用3000條功耗曲線對Piccolo進行密文CPA攻擊后,得到24L={c73d}16,2={8877}16,這些結果與預期值相同,表明攻擊成功。

5.3 安全性評估方法與結果

5.4 討論

5.4.1相關度 根據上述討論,在1時刻,實際Piccolo硬件的功耗可近似用DFF (0:63)全部64個觸發器的動態功耗表征;但是,在攻擊模型建立時,SubKey1依賴于DFF(16:19)共4個觸發器,而SubKey2則有賴于DFF(20:31)共12個觸發器,因此,攻擊SubKey2時用到的功耗模型更加接近于真實情況。這造成了在成功攻擊SubKey2時的相關系數(0.2483,見圖8)比攻擊SubKey1時的相關系數(0.0937,見圖7)要高。

事實上,實驗中攻擊SubKey1的MTD1為3000條,而在成功攻擊SubKey2時的MTD2只需要1750條,MTD2遠小于MTD1主要是因為針對SubKey2的功耗模型信噪比更高,與實際功耗具有更高的相關度。

5.4.2種子密鑰的恢復 通過CPA攻擊實驗,我們已成功獲取2,3,24L和24R,依據輪密鑰擴展算法可以容易恢復出Piccolo的0,1,3和4。為了獲取完整的80 bit,還需單獨針對2進行攻擊,如果使用最簡單的方式窮舉破解2,那么采用本文提議的CPA攻擊方法所需要的完整密鑰搜索空間為(2×220+2×212+216)。

6 結束語

本文提出了一種密文CPA攻擊模型,基于SASEBO平臺和實測結果首次評估了Piccolo面向功耗分析攻擊的安全性。攻擊結果表明,基于此攻擊模型在實測功耗數據的情況下,只需3000條功耗曲線即可完全恢復出Piccolo算法的80 bit種子密鑰,因此在Piccolo的硬件實現中引入相應的抗功耗分析攻擊措施是不可忽略的。雖然本文只是成功實施了密文攻擊,容易使用相似的方法實現明文攻擊,相形之下,由于首輪運算中包含了函數,所以明文攻擊要比密文攻擊稍顯復雜。

圖7 3000條功耗樣本時對SubKey1的攻擊結果

圖8 3000條功耗樣本時對SubKey2的攻擊結果

圖9 SubKey1猜測值相關系數與功耗樣本數量的關系

在本文提出的CPA攻擊方法中,為獲取80 bit種子密鑰共需要(2×220+2×212+216)次遍歷運算,這雖然是可能的,但其時間和空間復雜度都比較大,因此探究降低遍歷計算復雜度的方法并研究適用于輕量級分組密碼算法的抗功耗分析攻擊措施將是下一步的研究重點。

[1] ISO/IEC 29192-2-b:2012. CLEFIA: a lightweight block cipher with a block size of 128 bits and a key size of 128, 192 or 256 bits[S]. 2012.

[2] ISO/IEC 29192-2-a:2012. PRESENT: a lightweight block cipher with a block size of 64 bits and a key size of 80 or 128 bits[S]. 2012.

[3] Bogdanov A, Knudsen L R, Leander G,.. PRESENT: an ultra-lightweight block cipher[C]. Proceedings of the 9th International Workshop on Cryptographic Hardware and Embedded Systems(CHES2007), Vienna, Austria, 2007: 450-466.

[4] Shibutani K,.. Piccolo: an ultra-lightweight blockcipher [C]. Proceedings of the 13th International Workshop on Cryptographic Hardware and Embedded Systems (CHES2011), Nara, Japan, 2011: 342-357.

[5] Kumar A and Aggarwal A. Lightweight cryptographic primitives for mobile Ad hoc networks[C]. Proceedings of 2012 International Conference on Security in Computer Networks and Distributed Systems(SNDS2012), Trivandrum, India, 2012: 240-251.

[6] Brier E, Clavier C, and Olivier F. Correlation power analysis with a leakage model[C]. Proceedings of the 6th International Workshop on Cryptographic Hardware and Embedded Systems(CHES2004), Boston, USA, 2004: 135-152.

[7] Liu H Y, Qian G Y, Satoshi Goto,. Correlation power analysis based on switching glitch model[C]. Proceedings of the 7th Web Information Systems and Applications Conference(WISA2010), Huhehot, China, 2010, 6513: 191-205.

[8] Li H Y, Wu K K, and Yu F Q. Enhanced correlation power analysis attack against trusted systems[J]., 2011, (4): 3-10.

[9] Breier J and Kleja M. On practical results of the differential power analysis[J]., 2012, 63(2): 125-129.

[10] 烏力吉, 李賀鑫, 任燕婷, 等. 智能卡功耗分析平臺設計與實現[J]. 清華大學學報(自然科學版), 2012, 52(10): 1409-1414.

Wu Li-ji, Li He-xin, and Ren Yan-ting,.. Smart card power analysis platform design and implementation[J].(&), 2012, 52(10): 1409-1414.

[11] Oswald D and Paar C. Breaking Mifare DESFire MF3ICD40: power analysis and templates in the real world[C]. Proceedings of the 13th International Workshop on Cryptographic Hardware and Embedded Systems (CHES2011), Nara, Japan, 2011: 207-222.

[12] Moradi A, Barenghi A, Kasper T,.. On the vulnerability of FPGA bitstream encryption against power analysis attacks[C]. Proceedings of the 18th ACM Conference on Computer and Communications Security(CCS2011), Chicago, USA, 2011: 111-123.

[13] 趙光耀, 李瑞林, 孫兵, 等. Piccolo算法的差分故障分析[J]. 計算機學報, 2012, 35(9): 1918-1925.

Zhao Guang-yao, Li Rui-lin, Sun Bing,.. Differential fault analysis on Piccolo[J]., 2012, 35(9): 1918-1925.

[14] Jeong K. Differential fault analysis on block cipher Piccolo[OL]. http://eprint.iacr.org/2012/399.pdf. 2012.6.

[15] Li S, Gu D W, Ma Z Q,. Fault analysis of the Piccolo block cipher[C]. Proceedings of the 8th International Conference on Computational Intelligence and Security (CIS2012), Guangzhou, China, 2012: 482-486.

[16] Daemen J and Rijmen V. Understanding two-round differentials in AES[C]. Proceedings of the 5th International Conference on Security and Cryptography for Networks (SCN2006), Maiori, Italy, 2006: 78-94.

[17] 劉鳴, 陳弘毅, 白國強. 功耗分析研究平臺及其應用[J]. 微電子學與計算機, 2005, 22(7): 134-138.

Liu Ming, Chen Hong-yi, and Bai Guo-qiang. Power analysis research platform and its applications[J].&, 2005, 22(7): 134-138.

[18] 汪鵬君, 張躍軍, 張學龍. 防御差分功耗分析攻擊技術研究[J]. 電子與信息學報, 2012, 34(11): 2774-2784.

Wang Peng-jun, Zhang Yue-jun, and Zhang Xue-long. Research of differential power analysis countermeasures[J].&, 2012, 34(11): 2774-2784.

[19] AIST of Japan. SASEBO-G Specification[OL]. http://www. risec.aist.go.jp/project/sasebo. 2012.6.

[20] Kim C K, Schl?ffer M, and Moon S J. Differential side channel analysis attacks on FPGA implementations of ARIA [J]., 2008, 30(2): 315-325.

王晨旭: 男,1977年生,講師,研究方向為芯片與信息安全.

李景虎: 男,1975年生,講師,研究方向為數模混合技術.

喻明艷: 男,1965年生,教授,研究方向為計算機體系結構.

王進祥: 男,1968年生,教授,研究方向為SoC的可靠性設計.

Power Analysis Security Evaluation on Piccolo Based on FPGA Platform

Wang Chen-xu①②Li Jing-hu②Yu Ming-yan①②Wang Jin-xiang①

①(,,150001,)②(,,264209,)

To evaluate Piccolo’s security against Power Analysis Attack (PAA), a cipher text attack model is proposed and Correlation Power Analysis (CPA) is conducted on this cipher implementation with measured power traces based on Side-channel Attack Standard Evaluation BOard (SASEBO). Due to the whiten keys for the final round of Piccolo, attacked keys including24L,24R,2and3are divided into four sub-keys, which are disclosed one by one. This approach can reduce the 80-bit primary key search space from 280to (2×220+2×212+216) and make it possible to recover the primary key. The attack results show that 3000 measured power traces are enough to recover Piccolo’s 80-bit primary key, which proves the attack model’s feasibility and Piccolo’s vulnerability to CPA against its hardware implementation. So, some countermeasures should be used for Piccolo’s hardware implementation.

Cryptography; Data security; Piccolo; Correlation Power Analysis (CPA); Attack model; Countermeasure; Side-channel Attack Standard Evaluation BOard (SASEBO)

TP309.2

A

1009-5896(2014)01-0101-07

10.3724/SP.J.1146.2013.00193

2013-02-06收到,2013-07-02改回

國家自然科學基金(60973162)資助課題

王晨旭 wangchenxu@hit.edu.cn

主站蜘蛛池模板: 国产91丝袜在线观看| 免费xxxxx在线观看网站| 欧美成一级| 国产精品成| 亚洲国产日韩欧美在线| 欧美色图久久| 露脸国产精品自产在线播| 97超级碰碰碰碰精品| 欧美日韩一区二区三区在线视频| 韩国v欧美v亚洲v日本v| 在线欧美国产| 亚洲av片在线免费观看| 国产精品亚洲日韩AⅤ在线观看| 久久不卡精品| 欧美成人国产| 久久五月天综合| 热久久这里是精品6免费观看| 激情六月丁香婷婷| 丝袜亚洲综合| 久久99精品国产麻豆宅宅| 日韩精品专区免费无码aⅴ| 日本少妇又色又爽又高潮| 无码免费的亚洲视频| 高清码无在线看| 小说区 亚洲 自拍 另类| 91精品国产福利| 无码又爽又刺激的高潮视频| 超碰91免费人妻| 国产成人a在线观看视频| 亚洲乱伦视频| 广东一级毛片| 婷婷六月综合| 福利一区在线| 亚洲三级色| 中文字幕无码av专区久久| 91精品专区| 国产一二三区在线| 国产91小视频在线观看 | 一本大道香蕉久中文在线播放 | 深夜福利视频一区二区| 亚洲国产中文精品va在线播放| 欧美一级夜夜爽| a级毛片免费网站| 丁香婷婷激情综合激情| 2021无码专区人妻系列日韩| 在线a视频免费观看| 91免费在线看| 亚洲AⅤ综合在线欧美一区| 免费 国产 无码久久久| 日本尹人综合香蕉在线观看| 首页亚洲国产丝袜长腿综合| 中文字幕佐山爱一区二区免费| 亚洲欧美日韩精品专区| 91最新精品视频发布页| 18黑白丝水手服自慰喷水网站| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 亚洲永久免费网站| 国产欧美精品专区一区二区| 欧美国产视频| 国产香蕉在线视频| 黄色网站不卡无码| 高潮毛片免费观看| 日韩a在线观看免费观看| 欧美一级黄色影院| 免费又爽又刺激高潮网址| 国产成人一区| 国产成人精品高清不卡在线| 无码精油按摩潮喷在线播放| 一级毛片在线直接观看| 亚洲成人精品在线| 婷婷六月综合网| 色爽网免费视频| 国产JIZzJIzz视频全部免费| 狠狠久久综合伊人不卡| 亚洲伦理一区二区| 欧美第一页在线| 老司机午夜精品视频你懂的| 国产色婷婷视频在线观看| 亚洲av综合网| 国产成人高清精品免费| 在线a视频免费观看| 久久99国产乱子伦精品免|