《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 面向CGRCA配置比特流的硬件木馬攻擊防護(hù)方法
面向CGRCA配置比特流的硬件木馬攻擊防護(hù)方法
2019年電子技術(shù)應(yīng)用第9期
劉 敏1,嚴(yán)迎建1,南龍梅1,2
1.解放軍信息工程大學(xué),河南 鄭州450001;2.復(fù)旦大學(xué) 專用集成電路與系統(tǒng)國家重點(diǎn)實(shí)驗(yàn)室,上海200433
摘要: 針對可重構(gòu)設(shè)備配置比特流易遭受硬件木馬攻擊的問題,提出了基于認(rèn)證加密硬件安全引擎的防護(hù)方法。首先,通過研究CGRCA的結(jié)構(gòu)及配置過程,詳細(xì)分析了系統(tǒng)面臨的安全威脅,并給出面向未加密原始配置流的硬件木馬攻擊流程和植入方法。針對該攻擊流程,研究提出基于改進(jìn)CCM認(rèn)證加密機(jī)制的防護(hù)方法,該方法對原始配置流進(jìn)行部分加密和認(rèn)證,硬件層面采用資源復(fù)用的雙安全引擎進(jìn)行解密和認(rèn)證,確保配置比特流的完整性和真實(shí)性。仿真實(shí)驗(yàn)證明,該防護(hù)方法能以較小的面積和時(shí)間開銷,抵御面向配置流的潛在硬件木馬攻擊威脅,實(shí)現(xiàn)對配置比特流的保護(hù)。
中圖分類號: TN406
文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.190190
中文引用格式: 劉敏,嚴(yán)迎建,南龍梅. 面向CGRCA配置比特流的硬件木馬攻擊防護(hù)方法[J].電子技術(shù)應(yīng)用,2019,45(9):39-45.
英文引用格式: Liu Min,Yan Yingjian,Nan Longmei. A hardware Trojan attack protection method for CGRCA configuration bitstream[J]. Application of Electronic Technique,2019,45(9):39-45.
A hardware Trojan attack protection method for CGRCA configuration bitstream
Liu Min1,Yan Yingjian1,Nan Longmei1,2
1.The PLA′s Information Engineering University,Zhengzhou 450001,China; 2.State Key Laboratory of Applied Integrated Circuits and Systems,F(xiàn)udan University,Shanghai 200433,China
Abstract: A protection method based on authentication and encryption hardware security engine is proposed as the reconfigurable device configuration bitstream is vulnerable to hardware Trojan attacks. Firstly, the security threats of system are analyzed in detail and the possible hardware attack process and implantation method for unencrypted original configuration flow are proposed, via researching on the structure and configuration process of coarse-grained reconfigurable cryptographic array(CGRCA). Aiming at the attack process, a protection method based on advanced CCM authentication and encryption is proposed. The method partially encrypts and authenticates the original configuration bitstream in software, and uses a dual security engine for decryption and authentication on the hardware to ensure the integrity and authenticity of the configuration bitstream. The experimental results show that the protection method can protect the configuration bit stream by protecting the configuration flow from potential hardware Trojan attack threat with small area and time overhead.
Key words : hardware Trojan protection;coarse-grained reconfigurable cryptographic array;configuration bitstream protection;dual hardware security engine

0 引言

    粗粒度可重構(gòu)陣列(CGRA)[1]兼具通用處理器(GPP)和專用集成電路(ASIC)的優(yōu)勢,在計(jì)算機(jī)視覺、信號處理和密碼運(yùn)算等數(shù)據(jù)密集型應(yīng)用上,展現(xiàn)了強(qiáng)大的優(yōu)勢和潛力[1-2]。近年來,基于CGRA的粗粒度可重構(gòu)密碼陣列(CGRCA)[2]在密碼處理領(lǐng)域發(fā)展十分迅速。與傳統(tǒng)密碼芯片相比,CGRCA是專門面向密碼算法高速實(shí)現(xiàn)而設(shè)計(jì)的CGRA,具有可重構(gòu)、并行度高和效率高的特點(diǎn)。隨著芯片產(chǎn)業(yè)全球化的不斷推進(jìn),CGRCA也遭受硬件木馬(Hardware Trojan Horse,HTH)[1,3-4]攻擊的潛在威脅。

    硬件木馬是對硬件電路的惡意修改或添加以達(dá)成攻擊者的目的。CGRCA依賴配置流實(shí)現(xiàn)可重構(gòu)[5],當(dāng)前針對可重構(gòu)設(shè)備配置流的硬件木馬檢測和防護(hù)技術(shù),主要通過認(rèn)證和編碼實(shí)現(xiàn),大多集中在FPGA領(lǐng)域,難以直接移植應(yīng)用于CGRCA。如文獻(xiàn)[1]面向CGRCA提出基于動(dòng)態(tài)規(guī)劃的安全配置方案,側(cè)重于硬件木馬容忍,無法防護(hù)攻擊配置流的硬件木馬。文獻(xiàn)[6]提出一種基于軟錯(cuò)誤容忍的編碼技術(shù),以保護(hù)基于SRAM的配置存儲(chǔ)器,但難以防護(hù)惡意硬件木馬。文獻(xiàn)[7]、文獻(xiàn)[8]提出采用AES-GCM和AES-CMAC模式對FPGA配置流進(jìn)行加密認(rèn)證保護(hù),但難以直接移植于CGRCA。

    針對已有工作的不足,為了對CGRCA配置流進(jìn)行保護(hù),本文提出基于認(rèn)證和加密安全引擎的硬件木馬攻擊防護(hù)方法。首先,綜合分析了CGRCA結(jié)構(gòu)及其配置特點(diǎn),總結(jié)了面向CGRCA未加密原始配置流的安全漏洞,并給出了可能的攻擊流程和植入方法。其次,針對該攻擊流程,本文提出了基于改進(jìn)CCM安全引擎的硬件木馬防護(hù)措施,以軟硬結(jié)合的形式實(shí)現(xiàn)對配置流完整性和真實(shí)性的保護(hù),并通過資源復(fù)用進(jìn)一步優(yōu)化了面積開銷。

1 CGRCA結(jié)構(gòu)分析

1.1 CGRCA結(jié)構(gòu)分析

    CGRCA采用數(shù)據(jù)流加配置流驅(qū)動(dòng)[2],主要由配置網(wǎng)絡(luò)、控制網(wǎng)絡(luò)和數(shù)據(jù)網(wǎng)絡(luò)三部分組成[9]。CGRCA的硬件結(jié)構(gòu)如圖1所示。

wdz3-t1.gif

    如圖1所示,配置網(wǎng)絡(luò)由配置解析器和4個(gè)配置頁面組成,通過配置可重構(gòu)物理資源,完成對數(shù)據(jù)網(wǎng)絡(luò)和控制網(wǎng)絡(luò)的重構(gòu)。控制網(wǎng)絡(luò)經(jīng)配置網(wǎng)絡(luò)配置后,產(chǎn)生數(shù)據(jù)網(wǎng)絡(luò)所需控制信號,以支持?jǐn)?shù)據(jù)網(wǎng)絡(luò)的正確運(yùn)算。數(shù)據(jù)網(wǎng)絡(luò)是CGRCA的主要運(yùn)算部分,其核心是針對密碼運(yùn)算設(shè)計(jì)的2D-mesh結(jié)構(gòu)可重構(gòu)處理單元陣列(Reconfigurable Processing Unit Array,RPUA)。數(shù)據(jù)網(wǎng)絡(luò)經(jīng)配置網(wǎng)絡(luò)配置后,能夠組成特定密碼運(yùn)算所需的結(jié)構(gòu),在控制網(wǎng)絡(luò)支持下,完成對數(shù)據(jù)的加解密操作。

1.2 CGRCA配置情況分析

    下文以規(guī)模為8×8的CGRCA陣列為對象,分析其配置情況。單個(gè)規(guī)模8×8的陣列由4個(gè)規(guī)模4×4的小陣列組成,其中單個(gè)RPU為最小運(yùn)算單元和最小配置單元。在具體配置時(shí),陣列實(shí)際配置信息來自于陣列外部FIFO,其大小取決于具體映射的密碼算法。所有配置信息采用層次化存儲(chǔ)方式存儲(chǔ)在配置網(wǎng)絡(luò)中,其配置網(wǎng)絡(luò)分為三層,包括單元配置存儲(chǔ)UCM、局部配置存儲(chǔ)LCM和全局配置存儲(chǔ)GCM,如圖2所示。配置網(wǎng)絡(luò)中單元配置存儲(chǔ)UCM負(fù)責(zé)單個(gè)RPU單元單個(gè)配置頁面的配置信息寄存,每個(gè)RPU單元的配置信息由4個(gè)UCM共同負(fù)責(zé)。局部配置存儲(chǔ)LCM負(fù)責(zé)陣列的配置信息存儲(chǔ),全局配置存儲(chǔ)GCM負(fù)責(zé)陣列的配置信息存儲(chǔ)和4個(gè)小陣列的共享存儲(chǔ)。具體配置比特文件由包頭和配置信息塊組成,其組織形式如圖3所示。

wdz3-t2.gif

wdz3-t3.gif

    圖3中,包頭將配置信息分成不同的模塊。包頭包含配置信息塊的分發(fā)和轉(zhuǎn)移信息,配置信息塊則代表具體配置任務(wù)。CGRCA在配置時(shí),首先,在配置端完成從算法DFG圖到配置比特流的轉(zhuǎn)換,接著通過JTAG端口將外部配置流文件傳輸?shù)紺GRCA的輸入FIFO,然后由CGRCA配置端口寫入CGRCA陣列存儲(chǔ)器內(nèi),最后,配置解析器解析配置流文件,通過不同單元配置信息的分發(fā)和轉(zhuǎn)移來完成配置。配置信息在分發(fā)和轉(zhuǎn)移時(shí),都以1個(gè)配置頁面為最小單元,從而能實(shí)現(xiàn)單個(gè)RPU的單時(shí)鐘周期配置。

2 面向CGRCA配置流的硬件木馬攻擊威脅

2.1 面向CGRCA配置流的硬件木馬分類

    面向配置流進(jìn)行硬件木馬攻擊,通常通過不可信的EDA工具、不可信的傳輸信道或者不可信的使用者實(shí)施。其攻擊對象是CGRCA配置流,其主要手段是直接修改配置信息比特流文件。與FPGA配置流的硬件木馬[5]類似,根據(jù)硬件木馬電路與原始電路在CGRCA的占用資源是否重疊,可以分為資源相關(guān)型硬件木馬(RDH)和資源無關(guān)型硬件木馬(RIH)兩類。圖4為兩類硬件木馬的示意圖。

wdz3-t4.gif

    圖4(a)為未受到硬件木馬攻擊時(shí),含有6個(gè)節(jié)點(diǎn)的原始DFG圖映射到陣列上的情況。資源相關(guān)型硬件木馬是指插入的硬件木馬電路與原始電路在CGRCA上占用的資源部分或者完全重疊。此時(shí),硬件木馬電路與原始電路不獨(dú)立,而是以某種方式相互連接。如圖4(b)中,RDH型硬件木馬的觸發(fā)電路與節(jié)點(diǎn)C所在單元重合。資源無關(guān)型攻擊是指插入的硬件木馬電路與原始電路在CGRCA上占用的資源無重疊。資源無關(guān)型硬件木馬通常不會(huì)影響到原始電路功能,和原始電路功能彼此獨(dú)立。如圖4(c)中,RIH型硬件木馬電路的觸發(fā)單元和有效載荷均不與原始電路相連。考慮到CGRCA主要用于實(shí)現(xiàn)密碼算法,因此對攻擊者而言,其主要目的是竊取密鑰或者破壞原始電路邏輯功能。RIH型硬件木馬雖然插入簡單,但是不能破壞原始功能,無法完成上述攻擊目的。因此,本文側(cè)重討論資源相關(guān)型硬件木馬(RDH型)攻擊。

2.2 RDH型硬件木馬攻擊流程

    RDH型硬件木馬插入較為復(fù)雜,需要攻擊者熟悉配置比特流與CGRCA架構(gòu)連接之間的相關(guān)性。對于攻擊者而言,即便配置比特流是可獲得的,要成功實(shí)施RDH型攻擊,仍然存在兩個(gè)主要問題:首先,攻擊者必須熟悉配置比特流的結(jié)構(gòu);其次,必須在大量原始比特流中找到對應(yīng)攻擊比特。現(xiàn)有可重構(gòu)設(shè)備的比特流均采用專有文件格式[10],并沒有公開文獻(xiàn)分析比特流與硬件資源的對應(yīng)關(guān)系。因此,即使攻擊者完全獲取到比特流,如何識別和攻擊未知設(shè)計(jì)中的關(guān)鍵部件也是巨大的挑戰(zhàn)。而通過分析CGRCA的結(jié)構(gòu)特征可知,CGRCA中的關(guān)鍵加密部件包含密鑰處理單元RKB和非線性部件RSB。假設(shè)攻擊者掌握原始比特流中對應(yīng)包頭信息,則針對特定的RKB和RSB進(jìn)行攻擊是完全可行的。

    為成功實(shí)施攻擊,攻擊者首先利用原始比特流文件,通過搜索應(yīng)RKB對應(yīng)包頭信息,找到原始陣列平臺中的密鑰處理單元配置流信息,然后通過修改關(guān)鍵數(shù)據(jù)流以針對性地插入硬件木馬,導(dǎo)致最終結(jié)果出錯(cuò)。因此,硬件木馬攻擊的輸入為原始配置信息流文件和硬件木馬數(shù)據(jù)庫,關(guān)鍵步驟為特定資源搜索和比特流修改,其攻擊流程如圖5所示。

wdz3-t5.gif

    圖5中,Golden.bin文件表示與原始映射設(shè)計(jì)對應(yīng)的二進(jìn)制文件,HT.bin文件表示硬件木馬對應(yīng)的二進(jìn)制文件。硬件木馬修改程序首先采用資源搜索子程序識別出配置比特流中的關(guān)鍵資源,若找到關(guān)鍵資源,則順序搜索選定硬件木馬數(shù)據(jù)庫中的硬件木馬,再通過比特流修改子程序?qū)υ嘉募M(jìn)行修改,得到篡改比特流文件Modifiedgolden.bin。如果未找到特定資源或合適的硬件木馬,則退出程序不做修改。資源搜索子程序的目標(biāo)是利用原始配置比特流識別出關(guān)鍵資源塊,比特流修改子程序的目標(biāo)是利用硬件木馬數(shù)據(jù)庫修改關(guān)鍵資源數(shù)據(jù)流數(shù)據(jù)。

    根據(jù)上述攻擊流程可知,無安全機(jī)制的保護(hù)時(shí),配置比特流易遭受硬件木馬攻擊。攻擊者能成功實(shí)施攻擊的一個(gè)重要原因,在于Golden.bin文件和最終輸入的Modifiedgolden.bin文件之間不存在校驗(yàn)機(jī)制,導(dǎo)致應(yīng)用者不能保證最終配置流就是正確的配置流。

3 面向配置流的硬件木馬防護(hù)方法

    為了使對手難以通過直接修改比特流來插入硬件木馬,防止配置流出現(xiàn)錯(cuò)誤或被惡意篡改,可重構(gòu)設(shè)備在配置時(shí)必須對配置比特流真實(shí)性和完整性進(jìn)行保護(hù)。現(xiàn)有文獻(xiàn)主要有校驗(yàn)[5,10]和認(rèn)證[7-8]兩類方法,前者通常在比特流中添加校驗(yàn)碼,采用的線性函數(shù)可以相對容易地偽造,且難以檢測惡意篡改[12]。后者的安全基礎(chǔ)是認(rèn)證加密算法,不僅能對比特流進(jìn)行加密和認(rèn)證,同時(shí)能實(shí)現(xiàn)比特流信息防篡改,因此本文采用認(rèn)證加密的方式。

3.1 標(biāo)準(zhǔn)CCM模式原理

    早期認(rèn)證加密主要存在三種模式[5]:加密后認(rèn)證(Encrypt-Then-MAC,ETM),認(rèn)證后加密(MAC-Then-Encrypt,MTE)以及加密并認(rèn)證(MAC-And-Encrypt,MAE),但這些模式難以保證安全性。公鑰密碼(PKC)和哈希消息認(rèn)證碼(HMAC)理論上適用于比特流認(rèn)證和加密,但是其硬件成本較高[5],考慮到實(shí)現(xiàn)的安全性和硬件實(shí)現(xiàn)效率,本文采用國際標(biāo)準(zhǔn)化組織和 NIST收錄的CCM模式[13]進(jìn)行加密認(rèn)證。CCM加密認(rèn)證分別采用計(jì)數(shù)模式(Counter,CTR)和CBC-MAC模式,均為前向反饋模式,因此其加解密函數(shù)相同,適用于資源受限、安全要求高的CGRCA應(yīng)用場景。

    標(biāo)準(zhǔn)CCM模式同時(shí)具有加密和認(rèn)證的功能,是CTR加密模式和CBC_MAC認(rèn)證模式的組合。下面對CCM模式下的部分變量進(jìn)行定義。設(shè)輸入明文數(shù)據(jù)為長度為Plen的字符串P,采用格式化函數(shù)分塊以后的字符串表示為Bj(1≤j≤wdz3-t5-x1.gif),密鑰為K,加密過程生成中間值為Si,其中i的取值范圍是[0,wdz3-t5-x1.gif],認(rèn)證過程生成的中間值為Yj,其中j的取值范圍也是[0,wdz3-t5-x1.gif],最終加密得到密文數(shù)據(jù)為C,則基于CTR模式下的加密過程的定義式如式(1)所示:

     wdz3-gs1.gif

    式中,wdz3-gs1-x1.gif表示不小于實(shí)數(shù)x的最小整數(shù),||代表拼接運(yùn)算,MSBx(y)表示取y數(shù)的高x位,CTR(x)代表第x個(gè)計(jì)數(shù)塊,計(jì)數(shù)塊的值由隨機(jī)數(shù)Nounce和計(jì)數(shù)器共同決定,T是由CBC_MAC模式生成的認(rèn)證碼。

    基于CBC_MAC模式下的認(rèn)證過程的定義式如式(2)所示:

     wdz3-gs2.gif

    由定義可知,在標(biāo)準(zhǔn)CCM模式下,加密和認(rèn)證過程采用相同的密鑰,這導(dǎo)致在硬件實(shí)現(xiàn)時(shí),一旦攻擊者獲取了密鑰,將導(dǎo)致所有密文和認(rèn)證碼均失效。同時(shí),標(biāo)準(zhǔn)CCM采用格式化函數(shù)統(tǒng)一處理數(shù)據(jù),并對處理后的所有數(shù)據(jù)進(jìn)行加密。而對于陣列配置文件而言,不同配置文件的數(shù)據(jù)量由實(shí)際算法確定,其采用包頭+數(shù)據(jù)的形式,若采用全部加密,數(shù)據(jù)量可能較大,導(dǎo)致加密時(shí)間過長,因此數(shù)據(jù)統(tǒng)一處理無法直接應(yīng)用于陣列配置流的加密。

    基于以上分析,本文提出的改進(jìn)CCM安全機(jī)制對標(biāo)準(zhǔn)CCM模式進(jìn)行如下調(diào)整:(1)加密和認(rèn)證過程采用不同密鑰;(2)數(shù)據(jù)加密認(rèn)證前,首先進(jìn)行預(yù)處理,將包頭與數(shù)據(jù)分離,僅對數(shù)據(jù)部分進(jìn)行加密認(rèn)證。將調(diào)整后的認(rèn)證加密過程嵌入到原始配置流程中。

3.2 改進(jìn)CCM機(jī)制原理

    為了實(shí)現(xiàn)對配置比特流文件的保護(hù),防止其被篡改,改進(jìn)CCM安全機(jī)制采用軟硬結(jié)合的方式,分別建立了基于加密認(rèn)證的配置安全保護(hù)機(jī)制和基于解密驗(yàn)證的硬件安全防護(hù)結(jié)構(gòu),其安全配置保護(hù)機(jī)制和硬件安全防護(hù)結(jié)構(gòu)如圖6所示。

wdz3-t6.gif

    改進(jìn)CCM安全機(jī)制首先在基于加密認(rèn)證的配置安全保護(hù)下,通過軟件方式對生成的配置比特流進(jìn)行部分加密并生成消息認(rèn)證碼,保證配置流難以被篡改。其次,在配置比特流加載到配置端口前,采用基于驗(yàn)證的硬件安全結(jié)構(gòu)對其進(jìn)行解密和認(rèn)證,保證配置流的任何篡改都能被發(fā)現(xiàn)。

    基于加密認(rèn)證的配置安全保護(hù)流程在原始配置流程中添加了加密和認(rèn)證的步驟,首先定義配置安全保護(hù)流程的先決條件和涉及參數(shù)。

    先決條件:128位AES分組密碼算法;加密密鑰K1;認(rèn)證密鑰K2;預(yù)處理函數(shù)f(x);格式化函數(shù)g(x);計(jì)數(shù)塊生成函數(shù)h(x);后處理函數(shù)p(x);生成認(rèn)證碼長度Tlen。

    輸入:隨機(jī)數(shù)N;長度為Plen的配置流數(shù)據(jù)P;

    輸出:加密密文C;

    具體步驟如下:

wdz3-t6-x1.gif

    為了正確解密和驗(yàn)證配置流文件,本文設(shè)計(jì)了圖6右側(cè)的基于解密驗(yàn)證的硬件安全防護(hù)端,其中陰影部分為包含了兩個(gè)并行AES核以及一個(gè)異或非驗(yàn)證門的硬件安全引擎。與軟件安全配置流程對應(yīng),安全雙引擎的兩個(gè)AES核采用不同的密鑰并行工作,一個(gè)核用于解密,一個(gè)核用于認(rèn)證。其數(shù)據(jù)處理過程與加密認(rèn)證過程相逆,此處不再贅述。

    本方案中的加密步驟采用部分加密,即僅對配置流中的配置信息塊進(jìn)行加密,相比于全部加密,其優(yōu)勢在保持安全性的同時(shí)使得開銷更低。同時(shí),加密和認(rèn)證使用不同的密鑰,能夠避免漏洞,進(jìn)一步保證系統(tǒng)的安全性。在實(shí)際操作過程中,操作者可以通過配置選擇信號選擇是否進(jìn)行身份驗(yàn)證,若不使用身份驗(yàn)證,可以采用全0替換計(jì)算好的認(rèn)證碼。

3.3 改進(jìn)CCM硬件實(shí)現(xiàn)

    本文提出的防護(hù)方法采用軟硬結(jié)合的方式,在安全配置流程的配合下,采用改進(jìn)AES-CCM模式實(shí)現(xiàn)對配置流數(shù)據(jù)的加密認(rèn)證。在硬件實(shí)現(xiàn)時(shí),兩個(gè)采用前向反饋模式的AES核并行執(zhí)行操作,極大減小數(shù)據(jù)處理時(shí)間,通過共享S盒查找表和密鑰生成模塊,進(jìn)一步節(jié)省面積開銷。

    改進(jìn)CCM安全機(jī)制在實(shí)現(xiàn)時(shí),兩個(gè)AES核并行工作,其中解密引擎CORE1以CTR模式工作的AES作為數(shù)據(jù)加密方式,對去掉包頭的信息塊進(jìn)行解密。認(rèn)證引擎CORE2以CBC-MAC模式工作的AES對去除MAC的數(shù)據(jù)部分進(jìn)行認(rèn)證,CTR和CBC_MAC并行工作原理如圖7所示。

wdz3-t7.gif

    為了保證CMAC認(rèn)證過程和CTR解密過程是并行執(zhí)行的,本文調(diào)整了解密塊數(shù)據(jù)生成的順序。首先通過認(rèn)證塊B0和解密密文塊C1生成B1,再依次生成Bi(2≤i≤n-1),并生成驗(yàn)證碼T。同時(shí),通過CTR(0)生成S(0),與密文低Tlen位異或得到傳送過來的驗(yàn)證碼,最后將傳送驗(yàn)證碼與計(jì)算驗(yàn)證碼進(jìn)行異或驗(yàn)證,得到驗(yàn)證信號valid。具體時(shí)序如圖8所示。在生成CMAC時(shí)的具體硬件結(jié)構(gòu)示意如圖9所示。

wdz3-t8.gif

wdz3-t9.gif

    硬件實(shí)現(xiàn)時(shí),為了提高加密和驗(yàn)證的速度,基于CTR-CMAC模式的雙引擎架構(gòu)使用4個(gè)32位AES實(shí)現(xiàn)128位AES運(yùn)算進(jìn)行解密和身份驗(yàn)證。在使用CBC-MAC模式完成認(rèn)證的同時(shí),使用CTR模式執(zhí)行解密過程,對于一組128位的數(shù)據(jù)至少需要12個(gè)時(shí)鐘周期才能完成解密和驗(yàn)證工作。因此硬件安全引擎的最大吞吐量為:

    wdz3-4-s1.gif

    其中,fmax為最大工作頻率,block為分組數(shù)據(jù)長度,T為分組處理時(shí)鐘周期數(shù),吞吐量單位為Mb/s。

4 評估與驗(yàn)證

    為了對硬件木馬防護(hù)方法進(jìn)行驗(yàn)證和評估,本文以規(guī)模8×8的CGRCA陣列為目標(biāo)電路進(jìn)行仿真實(shí)驗(yàn)。首先,采用C語言編程實(shí)現(xiàn)了2.2節(jié)中描述的硬件木馬可能攻擊流程,挑選典型密碼算法AES算法、SMS4算法和A5/1算法的無流水配置文件,作為Golden.bin文件。同時(shí),分別設(shè)計(jì)如圖10、圖11示意的組合觸發(fā)功能修改型(C型)和時(shí)序觸發(fā)功能修改型(S型)硬件木馬,建立CGRCA硬件木馬數(shù)據(jù)庫,并面向CGRCA生成相應(yīng)HT.bin文件。該數(shù)據(jù)庫包含20種硬件木馬,為便于結(jié)果檢測,均為功能修改型硬件木馬。表1列舉了硬件木馬數(shù)據(jù)庫部分信息。

wdz3-t10.gif

wdz3-t11.gif

wdz3-b1.gif

    為了對本文的設(shè)計(jì)方案進(jìn)行驗(yàn)證,采用C++在配置端實(shí)現(xiàn)了安全配置流程,并采用硬件描述語言Verilog HDL在CGRCA中搭建硬件雙安全引擎架構(gòu),按照攻擊流程對CGRCA配置流實(shí)施攻擊。為了驗(yàn)證防護(hù)效果,將硬件木馬通過配置流分別插入到原始電路和防護(hù)電路中進(jìn)行多次實(shí)驗(yàn),將防護(hù)前后的平均硬件木馬攻擊成功率RS、平均正確輸出比例APCO[1]作為指標(biāo)進(jìn)行對比,表2為待測電路防護(hù)前后的對比結(jié)果。

wdz3-b2.gif

    表2以插入硬件木馬的個(gè)數(shù)標(biāo)識待測電路,如AES(CS5/5)指在原始電路上插入5個(gè)C型木馬和5個(gè)S型木馬。硬件木馬攻擊成功率RS為對配置流進(jìn)行硬件木馬攻擊后,成功并實(shí)現(xiàn)邏輯功能修改的概率。正確輸出比例APCO是指錯(cuò)誤輸出個(gè)數(shù)占總輸出個(gè)數(shù)的比例。表2的結(jié)果表明,在不同的待測電路上,插入不同種類和數(shù)量的硬件木馬后,防護(hù)后的電路均能有效降低硬件木馬攻擊成功率,并提高平均正確輸出比例。為了進(jìn)一步評估防護(hù)方法的性能,將本文架構(gòu)的硬件實(shí)現(xiàn)結(jié)果與現(xiàn)有文獻(xiàn)的加密驗(yàn)證結(jié)構(gòu)AES-CCM[16]、AES-GCM[7,17]、AES-SHA[7]進(jìn)行對比,對比指標(biāo)包括面積、頻率、吞吐率和效率,其中效率的計(jì)算方式為吞吐率與面積的比值,具體對比結(jié)果如表3所示。

wdz3-b3.gif

    從表3可以看出,本文所用硬件結(jié)構(gòu)在綜合效率上優(yōu)于文獻(xiàn)[7]、[16]和[17]中的結(jié)構(gòu),同時(shí)本文采用的結(jié)構(gòu)能達(dá)到最高的吞吐率。在所選的三項(xiàng)指標(biāo)上,本文與文獻(xiàn)[7]的GCM結(jié)構(gòu)性能比較接近,但是本文在實(shí)現(xiàn)加密認(rèn)證的同時(shí),首次提出了將其應(yīng)用于CGRCA配置流的硬件木馬防護(hù)。綜合來看,本文結(jié)構(gòu)有較好的優(yōu)越性。軟件安全配置流程保證了CGRCA配置流難以被篡改,雙安全引擎的構(gòu)造可實(shí)現(xiàn)對配置流的解密和認(rèn)證,分塊加密增加了硬件處理速度,共享AES加密核進(jìn)一步減小了硬件面積開銷,提高了硬件結(jié)構(gòu)的整體效率。

5 結(jié)論

    隨著CGRA越來越多地應(yīng)用于各領(lǐng)域,面向CGRA的安全防護(hù)至關(guān)重要。硬件木馬作為主要安全威脅之一,能對無校驗(yàn)機(jī)制的CGRCA配置流實(shí)施攻擊。本文首先詳細(xì)分析了CGRCA的結(jié)構(gòu)及其配置過程,得出了配置過程中可能的攻擊流程和攻擊方法。然后,針對這種可能的攻擊,提出了一種有效的硬件木馬防護(hù)方案,采用軟件上的安全配置流程,結(jié)合硬件上共享S盒的雙AES安全引擎,實(shí)現(xiàn)對配置流數(shù)據(jù)的完整性和真實(shí)性的保護(hù)。該防護(hù)方法效率高,面積開銷小,同時(shí)對現(xiàn)有配置過程影響較小,適合工程實(shí)踐。

參考文獻(xiàn)

[1] Liu Leibo,Zhou Zhuoquan,Wei Shaojun,et al.DRMaSV:enhanced capability against hardware trojans in coarse grained reconfigurable architectures[J].IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems,2017,37(4):782-795.

[2] 李遠(yuǎn)銘,嚴(yán)迎建,李偉.基于粗粒度可重構(gòu)密碼陣列的AES算法映射實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2018(3):304-308.

[3] XIAO K,F(xiàn)ORTE D,JIN Y,et al.Hardware trojans:lessons learned after one decade of research[J].ACM Transactions on Design Automation of Electronic Systems,2016,22(1):1-23.

[4] AGRAWAL D,BAKTIR S,KARAKOYUNLU D,et al.Trojan detection using IC fingerprinting[C].IEEE Symposium on Security and Privacy.IEEE Computer Society,Berkeley,USA,2007:296-310.

[5] CHAKRABORTY R S,SAHA I,PALCHAUDHURI A,et al.Hardware trojan insertion by direct modification of FPGA configuration bitstream[J].IEEE Design & Test,2013,30(2):45-54.

[6] AHILAN A,DEEPA P.Modified decimal matrix codes in FPGA configuration memory for multiple bit upsets[C].IEEE International Conference on Computer Communication and Informatics,2015:1-5.

[7] HORI Y,KATASHITA T,SAKANE H,et al.Bitstream protection in dynamic partial reconfiguration systems using authenticated encryption[J].IEICE Transactions on Information & Systems,2013,E96-D(11):2333-2343.

[8] SAAR D.Security for volatile FPGAs[D].University of Cambridge,2009.

[9] 陳韜,羅興國,李校南,等.一種基于流處理框架的可重構(gòu)分簇式分組密碼處理結(jié)構(gòu)模型[J].電子與信息學(xué)報(bào),2014,36(12):3027-3034.

[10] SWIERCZYNSKI P,F(xiàn)YRBIAK M,KOPPE P,et al.FPGA trojans through detecting and weakening of cryptographic primitives[J].IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems,2015,34(8):1236-1249.

[11] Xilinx Inc.Virtex-II platform FPGA user guide(v2.2)[DB/OL].(2012-07-xx)[2019-02-25].http://www.xilinx.com/support/documentation/virtex-ii.htm.

[12] SALMANI H,TEHRANIPOOR M,KARRI R.On design vulnerability analysis and trust benchmark development[C].IEEE International Conference on Computer Design(ICCD),2013.

[13] DRIMER S.Authentication of FPGA bitstreams:why and how[C].International Conference on Reconfigurable Computing:Architectures,Tools and Applications.Springer-Verlag,2007:73-84.

[14] DWORKIN M.Recommendation for block cipher modes of operation:the CMAC mode for authentication[DB/OL].[2019-02-25].https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-38b.pdf.

[15] PARELKAR M.Authenticated encryption in hardware[D].George Mason University,2005.

[16] ABDELLATIF K M,CHOTIN-AVOT R,MEHREZ H.Protecting FPGA bitstreams using authenticated encryption[C].IEEE International New Circuits and Systems Conference,2013:1-4.

[17] PHAN T T D,HOANG V P,DAO V L.An efficient FPGA implementation of AES-CCM authenticated encryption IP core[C].IEEE Information and Computer Science,2016:202-205.



作者信息:

劉  敏1,嚴(yán)迎建1,南龍梅1,2

(1.解放軍信息工程大學(xué),河南 鄭州450001;2.復(fù)旦大學(xué) 專用集成電路與系統(tǒng)國家重點(diǎn)實(shí)驗(yàn)室,上海200433)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美成人激情视频免费观看| 亚洲午夜精品一区二区| 欧美精品在线观看91| 最新国产乱人伦偷精品免费网站| 红桃视频欧美| 美女日韩欧美| 在线亚洲精品| 亚洲欧美日韩成人| 一区在线免费| 欧美日韩免费观看一区三区| 亚洲一区二区三区四区中文| 亚洲一区二区不卡免费| 国产啪精品视频| 美女爽到呻吟久久久久| 久久久精品五月天| 在线视频精品一区| 欧美一区二区免费| 亚洲电影在线| 国产精品久久9| 久久精品官网| 日韩视频三区| 亚洲欧美自拍偷拍| 亚洲精品国产日韩| 国产伦精品一区二区三区高清| 亚洲精品中文字幕女同| 亚洲精品1234| 欧美视频一区二区三区四区| 国产日产亚洲精品系列| 国产精品v欧美精品v日韩精品| 久久精品免费| 久久国产精品72免费观看| 久久精品一区二区三区不卡| 久久午夜av| 亚洲一区二区在线视频 | 久久精品一区二区| 日韩网站在线看片你懂的| 国模精品一区二区三区色天香| 欧美日韩视频第一区| 欧美精品国产一区二区| 久久九九有精品国产23| 久久久亚洲精品一区二区三区 | 久久精品国产一区二区三区| 久久在线精品| 欧美日韩国产欧美日美国产精品| 久久久久国产精品www| 老鸭窝毛片一区二区三区| 欧美一区二区三区在线| 99re视频这里只有精品| 亚洲一区免费网站| 久久噜噜噜精品国产亚洲综合| 米奇777在线欧美播放| 欧美三级电影一区| 国产在线视频欧美一区二区三区| 91久久精品一区| 国产精品私人影院| 欧美日韩国产成人在线| 国产精品国产自产拍高清av| 国产欧美三级| 亚洲黄色尤物视频| 亚洲欧美日本另类| 亚洲精品裸体| 亚洲国产mv| 欧美在线观看一二区| 亚洲精品精选| 亚洲欧美网站| 亚洲免费中文字幕| 亚洲综合第一| 久久这里有精品视频| 欧美日韩免费观看一区三区 | 亚洲欧美日韩综合aⅴ视频| 亚洲黄色成人网| 久久精品亚洲| 亚洲一区二区精品在线观看| 欧美经典一区二区三区| 一区二区三区四区五区视频| 久久精品人人做人人爽| 欧美日韩国产三级| 国内久久精品| 亚洲在线成人精品| 99精品热视频| 久久精品夜色噜噜亚洲aⅴ| 亚洲视频导航| 欧美二区在线看| 国产精品自拍一区| 一卡二卡3卡四卡高清精品视频| 亚洲精品欧美一区二区三区| 性色av香蕉一区二区| 欧美亚洲尤物久久| aa级大片欧美三级| 亚洲自拍电影| 欧美激情视频一区二区三区不卡| 欧美福利电影网| 国产视频不卡| 狠狠色噜噜狠狠色综合久| 在线一区二区三区做爰视频网站| 亚洲天堂av在线免费| 亚洲欧美激情一区| 一区二区三区不卡视频在线观看| 久久人人爽爽爽人久久久| 国产精品日韩欧美| 一区二区欧美国产| 一区二区三区**美女毛片| 欧美本精品男人aⅴ天堂| 欧美精品久久99久久在免费线| 国内精品嫩模av私拍在线观看| 亚洲一区久久| 亚洲一区二区在线免费观看| 欧美日韩成人在线视频| 91久久久久久久久久久久久| 亚洲日本黄色| 欧美激情精品久久久久久久变态 | 亚洲一级片在线观看| 欧美精品一区视频| 亚洲国产精品t66y| 亚洲精品一区二区三| 亚洲国产精品传媒在线观看 | 国产亚洲人成a一在线v站| 永久555www成人免费| 亚洲日本理论电影| 亚洲国产视频直播| 美日韩精品视频免费看| 尹人成人综合网| 亚洲黄页一区| 欧美成人激情在线| 亚洲人成高清| 99re8这里有精品热视频免费 | 亚洲精品乱码久久久久久蜜桃麻豆| 亚洲老板91色精品久久| 亚洲特色特黄| 欧美日韩成人综合在线一区二区| 亚洲国产网站| 在线午夜精品| 欧美日韩性视频在线| 一本色道久久综合精品竹菊| 亚洲一区二区成人在线观看| 国产精品久久久久久影院8一贰佰| 国产亚洲精品一区二区| 新狼窝色av性久久久久久| 久久久精彩视频| 尤物yw午夜国产精品视频明星| 亚洲欧洲日韩综合二区| 欧美精品高清视频| 中文久久精品| 久久九九热re6这里有精品| 尤物精品在线| 在线视频精品一区| 国产精品色婷婷| 久久高清福利视频| 亚洲欧美成人在线| 国产精品久久久久久久久免费桃花 | 亚洲精品免费看| 欧美日韩三区四区| 亚洲欧美久久久| 久久午夜色播影院免费高清| 亚洲国产视频一区| 亚洲免费一级电影| 国产原创一区二区| 亚洲乱码国产乱码精品精可以看| 欧美视频观看一区| 小处雏高清一区二区三区| 美女图片一区二区| av成人免费观看| 久久精品视频在线观看| 亚洲国产精品一区二区第一页| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 亚洲永久免费精品| 女仆av观看一区| 亚洲视频碰碰| 久久综合网络一区二区| 99视频精品免费观看| 久久精品99国产精品日本| 亚洲精品国产品国语在线app| 欧美在线免费观看| 欧美亚洲第一页| 欧美在线网址| 欧美视频日韩视频在线观看| 午夜日韩福利| 欧美日韩精品福利| 欧美在线你懂的| 欧美日韩高清在线观看| 久久er精品视频| 欧美日韩一区二区视频在线| 欧美一区二区三区免费观看视频| 欧美激情精品久久久久久免费印度 | 久久精品成人| 99re热这里只有精品视频| 久久国产精品色婷婷| 亚洲美女视频| 毛片一区二区三区| 亚洲欧美日本另类| 欧美日韩一区在线播放| 亚洲电影av| 国产欧美一区二区视频| 一本久久知道综合久久| 一区二区三区自拍| 欧美亚洲一区二区三区| 国产精品高潮久久| 亚洲人成绝费网站色www| 国产婷婷色一区二区三区在线 | 美女视频黄 久久|