《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于認(rèn)證加密的NoC安全防護(hù)研究
基于認(rèn)證加密的NoC安全防護(hù)研究
2016年電子技術(shù)應(yīng)用第7期
陳松濤,徐金甫,劉航天
解放軍信息工程大學(xué),河南 鄭州450001
摘要: 片上網(wǎng)絡(luò)的敏感信息在傳輸過程中可能會(huì)遭到竊取,針對(duì)這一安全威脅,提出了基于認(rèn)證加密的NoC安全防護(hù)技術(shù)。把執(zhí)行同一應(yīng)用、需要交換敏感信息的IP核劃分在一個(gè)安全域內(nèi),安全域內(nèi)的IP核用Diffie-Hellman協(xié)議協(xié)商密鑰,密鑰協(xié)商完成以后,用GCM認(rèn)證加密算法對(duì)攜帶敏感信息的數(shù)據(jù)包進(jìn)行加密和認(rèn)證運(yùn)算,從而有效保護(hù)數(shù)據(jù)包的機(jī)密性和完整性。仿真綜合結(jié)果表明,該安全防護(hù)方案造成的傳輸延時(shí)小、資源消耗少,提高了NoC的安全性和可靠性。
中圖分類號(hào): TN47;TP309.2
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.07.012
中文引用格式: 陳松濤,徐金甫,劉航天. 基于認(rèn)證加密的NoC安全防護(hù)研究[J].電子技術(shù)應(yīng)用,2016,42(7):50-52,56.
英文引用格式: Chen Songtao,Xu Jinfu,Liu Hangtian. NoC security reserch based on authenticated ancryption[J].Application of Electronic Technique,2016,42(7):50-52,56.
NoC security reserch based on authenticated ancryption
Chen Songtao,Xu Jinfu,Liu Hangtian
PLA Information Engineering University,Zhengzhou 450001,China
Abstract: Sensitive information during transmission on NoC may be extracted. In order to solve this security threat, NoC security technology based on authentication encryption is proposed. IP cores that execute the same application and need to exchange sensitive information are divided into one security domain. IP cores in the security domain use Diffie-Hellman protocol to negotiate key. After the key agreement is completed, GCM authenticated encryption algorithm is used to encrypt and authenticate the packets carrying sensitive information, so as to effectively protect the confidentiality and integrity of data packets. Simulation and synthesis results show that the transmission delay caused by safety protection scheme is small, and resource consumption is low, improving the safety and reliability of the NoC.
Key words : network on chip;security domain;Diffie-Hellman;authenticated encryption;Galois/Counter Mode

0 引言

    隨著芯片集成度越來越高,基于傳統(tǒng)共享總線架構(gòu)的片上系統(tǒng)(System on Chip,SoC)已經(jīng)不能滿足日益復(fù)雜的應(yīng)用對(duì)高帶寬的需求,并且規(guī)模擴(kuò)展也出現(xiàn)了瓶頸[1-2]。為了有效解決片上系統(tǒng)規(guī)模擴(kuò)展帶來的問題,基于片上網(wǎng)絡(luò)(Network on Chip,NoC)的通信架構(gòu)被提了出來。

    片上網(wǎng)絡(luò)是指由路由器按照一定的拓?fù)浣Y(jié)構(gòu)進(jìn)行互連形成的數(shù)據(jù)通信網(wǎng)絡(luò),它是一種間接互連方式,采用與計(jì)算機(jī)網(wǎng)絡(luò)類似的數(shù)據(jù)包路由方式。相比于傳統(tǒng)的片上共享總線通信技術(shù),NoC具有許多明顯的優(yōu)勢(shì):可擴(kuò)展性好、通信效率高、低功耗、規(guī)則性好。

    然而,NoC這種通信架構(gòu)帶來優(yōu)點(diǎn)的同時(shí),也存在相應(yīng)的易攻擊性,給潛在的攻擊者提供了機(jī)會(huì)。目前對(duì)于NoC的研究主要集中于拓?fù)浣Y(jié)構(gòu)、映射算法、路由算法,對(duì)其安全性的研究相對(duì)來說較少?;贜oC的片上系統(tǒng)可能面臨的安全威脅包括拒絕服務(wù)攻擊DoS、竊取秘密信息和修改與安全相關(guān)的系統(tǒng)行為和配置。當(dāng)NoC上的IP核執(zhí)行應(yīng)用任務(wù)時(shí),它們之間有時(shí)需要交換敏感信息,攻擊者可能利用軟件攻擊或者探針攻擊的手段竊取敏感信息[3-4]。本文通過在網(wǎng)絡(luò)接口上增加相應(yīng)的安全模塊,對(duì)攜帶有敏感信息的數(shù)據(jù)包進(jìn)行認(rèn)證加密,利用GCM(Galois/Counter Mode)算法對(duì)數(shù)據(jù)包包頭認(rèn)證處理生成認(rèn)證標(biāo)簽、對(duì)數(shù)據(jù)包數(shù)據(jù)部分進(jìn)行加密處理生成密文,從而保護(hù)NoC敏感數(shù)據(jù)的機(jī)密性和完整性。

1 NoC安全防護(hù)

1.1 認(rèn)證加密方案

    為了提高運(yùn)行速度,片上系統(tǒng)把應(yīng)用任務(wù)分布在多個(gè)計(jì)算資源上執(zhí)行。然而,這個(gè)技術(shù)要求不同的IP核相互作用。一些帶有敏感信息的應(yīng)用程序需要通過NoC交換數(shù)據(jù),因此,不同IP核之間的通信需要保持機(jī)密性。wdz5-t1.gif

    方案的設(shè)計(jì)流程如圖1所示,安全域指的是為保護(hù)不同安全需求的信息與信息載體,將系統(tǒng)中具有相同安全需求的可信或不可信部分劃分成不同的安全區(qū)域。把安全域應(yīng)用到NoC上,就可以把執(zhí)行同一應(yīng)用任務(wù)的幾個(gè)IP核劃分在相同的安全域下。安全域劃分完成以后,安全域內(nèi)的IP核之間需要協(xié)商密鑰,密鑰的協(xié)商采用Diffie-Hellman組密鑰交換協(xié)議[5,7]。敏感數(shù)據(jù)傳輸之前,利用協(xié)商好的密鑰,對(duì)數(shù)據(jù)進(jìn)行加密認(rèn)證,從而保證數(shù)據(jù)的機(jī)密性和完整性傳輸。

    認(rèn)證加密(Authenticated Encryption,AE)可以同時(shí)為NoC通信提供機(jī)密性和完整性[6,8],AE的一個(gè)重要優(yōu)點(diǎn)是能夠?yàn)榘^信息提供認(rèn)證。一般來說,包頭信息在數(shù)據(jù)包傳輸過程中不會(huì)改變。包頭是以明文的方式發(fā)送的,用它可以產(chǎn)生認(rèn)證標(biāo)簽。在發(fā)送方,認(rèn)證加密模塊加密數(shù)據(jù)明文和認(rèn)證包頭信息,輸出是密文和一個(gè)認(rèn)證標(biāo)簽。在接收方,認(rèn)證加密模塊將會(huì)處理密文和包頭信息,輸出是明文和一個(gè)認(rèn)證標(biāo)簽。然后接收方比較這兩個(gè)認(rèn)證標(biāo)簽,并且只有這兩個(gè)標(biāo)簽相同時(shí),它才會(huì)接收解密后的明文。在本文的方案里,采用GCM實(shí)現(xiàn)認(rèn)證加密功能。

1.2 安全NoC結(jié)構(gòu)

    圖2所示是安全NoC的結(jié)構(gòu)圖,其中網(wǎng)絡(luò)安全管理員NSM(Network Security Manager)是嵌入在安全I(xiàn)P核內(nèi)一個(gè)輕量級(jí)的軟件任務(wù),負(fù)責(zé)安全域的建立以及密鑰的協(xié)商。當(dāng)出現(xiàn)以下情況時(shí),安全域應(yīng)該被修改。

wdz5-t2.gif

    (1)一個(gè)新的應(yīng)用任務(wù)被映射到系統(tǒng)上;

    (2)一個(gè)任務(wù)映射到的IP核發(fā)生了變化;

    (3)NoC處在特殊的操作條件下,例如受到了攻擊。

    安全網(wǎng)絡(luò)接口(Security Network Interface,SNI)嵌入了硬件安全模塊,安全模塊能夠計(jì)算生成協(xié)商密鑰和對(duì)數(shù)據(jù)進(jìn)行加密認(rèn)證。當(dāng)安全域被修改時(shí),密鑰也要被重新協(xié)商。Diffie-Hellman協(xié)議是基于公鑰密碼技術(shù)的密鑰交換協(xié)議[7],安全域內(nèi)多個(gè)IP核之間的組密鑰協(xié)商可以通過它實(shí)現(xiàn)。

2 認(rèn)證加密設(shè)計(jì)與實(shí)現(xiàn)

2.1 安全網(wǎng)絡(luò)接口

    方案用到的數(shù)據(jù)包格式如圖3所示,包頭信息包括了狀態(tài)位、明文/密文位、源地址和目標(biāo)地址,這些信息在數(shù)據(jù)包傳輸?shù)倪^程中不會(huì)改變。源IP核要發(fā)送的信息在數(shù)據(jù)位,數(shù)據(jù)包的最后是認(rèn)證標(biāo)簽。

wdz5-t3.gif

    安全網(wǎng)絡(luò)接口SNI可以實(shí)現(xiàn)通信功能和安全功能,它的結(jié)構(gòu)如圖4所示。對(duì)于通信功能,安全網(wǎng)絡(luò)接口負(fù)責(zé)數(shù)據(jù)包的處理,這能夠通過打包/解包模塊實(shí)現(xiàn)。對(duì)于安全功能,網(wǎng)絡(luò)安全接口實(shí)現(xiàn)的安全服務(wù)包括了認(rèn)證和加密。認(rèn)證保證了數(shù)據(jù)包的完整性,接收方通過比較接收到的標(biāo)志位是否與自己計(jì)算得出的進(jìn)行比較,判斷數(shù)據(jù)是否被修改。加密使數(shù)據(jù)以密文的方式傳輸,保證了數(shù)據(jù)的機(jī)密性。認(rèn)證和加密是通過認(rèn)證加密模塊和密鑰處理模塊實(shí)現(xiàn)的,密鑰處理模塊負(fù)責(zé)密鑰的協(xié)商,認(rèn)證加密模塊完成認(rèn)證和加密操作。

wdz5-t4.gif

2.2 密鑰協(xié)商

    Diffie-Hellman組密鑰協(xié)商協(xié)議可以使安全域內(nèi)的IP核共享相同的秘密密鑰,相比于使用固定密鑰通信帶來的安全隱患[8],密鑰交換有利于增強(qiáng)通信的安全性。同時(shí),使用Diffie-Hellman協(xié)商密鑰有助于保證密鑰Kg的安全,這是因?yàn)榘踩騼?nèi)的IP核之間只交換中間生成的密鑰ci,而最后生成的密鑰Kg沒有在網(wǎng)絡(luò)上傳輸。

    每次當(dāng)前安全域需要改變時(shí),Diffie-Hellman協(xié)議也要被執(zhí)行。假設(shè)有一個(gè)應(yīng)用A,它是由任務(wù)T1和T2組成,分別被映射到IPa和IPb上。任務(wù)T1和T2必須交換敏感數(shù)據(jù),因此它們需要機(jī)密性安全服務(wù)。網(wǎng)絡(luò)安全管理員NSM為了滿足應(yīng)用A的安全需求,一個(gè)新的安全域必須建立起來。

    安全管理員NSM、IPa和IPc分別通過安全網(wǎng)絡(luò)接口SMI、SNIa和SNIc連接到NoC上。如圖5所示,密鑰協(xié)商一共有6步。第一步,安全管理員給SNIa和SNIc發(fā)送一個(gè)控制數(shù)據(jù)包。第二步,每個(gè)SNI用它自己私有的數(shù)字(sa和sc)得到一個(gè)局部密鑰ci,ci=gs mod p。第三步,當(dāng)獲得局部密鑰ca和cc后,把它們發(fā)送給安全域內(nèi)的其他成員,ca被發(fā)送給SNIc,cc被發(fā)送給SNIa。第四步,局部密鑰被接收后,SI可以計(jì)算得到組密鑰kg。第五步,當(dāng)SI得到組密鑰kg,它就通知NSM。第六步,當(dāng)NSM接收到所有安全成員SNIa和SNIc的通知后,NSM釋放通信。SNIa和SNIc得到的密鑰kg,可以用來對(duì)稱加密數(shù)據(jù)。

wdz5-t5.gif

2.3 GCM認(rèn)證加密

    GCM是一種在二元Galois域使用泛散列函數(shù)提供加密認(rèn)證的分組密碼算法,它可以用一個(gè)簡(jiǎn)單的密鑰產(chǎn)生密文和消息摘要。由于其采用CTR模式實(shí)現(xiàn)加密,采用Galois域的泛HASH函數(shù)進(jìn)行認(rèn)證,其硬件實(shí)現(xiàn)上具有低成本、低延時(shí)和高速率的特點(diǎn)。GCM算法包括AES和GHASH,AES可以用來加密數(shù)據(jù),GHASH可以為附加認(rèn)證數(shù)據(jù)提供認(rèn)證。

    GCM的硬件實(shí)現(xiàn)結(jié)構(gòu)如圖6所示。為了實(shí)現(xiàn)這個(gè)結(jié)構(gòu),采用128 bit的AES加密模塊。數(shù)據(jù)包中的每個(gè)數(shù)據(jù)也是128 bit,并且數(shù)據(jù)的個(gè)數(shù)是固定的。認(rèn)證標(biāo)簽也被固定在128 bit,這可以提供更好的安全性。在GCM中,128 bit的AES加密模塊可以同時(shí)實(shí)現(xiàn)加解密功能。數(shù)據(jù)包頭中的源地址、目標(biāo)地址等信息在傳輸過程是不變的,因此可以用來生成認(rèn)證標(biāo)簽。這個(gè)結(jié)構(gòu)的一個(gè)優(yōu)點(diǎn)是加解密操作是并行執(zhí)行的,所以當(dāng)數(shù)據(jù)包中的第一個(gè)數(shù)據(jù)加密或解密后,就可以得到密文或明文。當(dāng)加密或解密完成數(shù)據(jù)后,將會(huì)得到認(rèn)證標(biāo)簽。安全網(wǎng)絡(luò)接口SNI加密完成數(shù)據(jù)包中的數(shù)據(jù),并把認(rèn)證標(biāo)簽添加到數(shù)據(jù)包的最后,然后才把數(shù)據(jù)包發(fā)送給路由進(jìn)行傳輸。數(shù)據(jù)包到達(dá)它的目標(biāo)地址后,將會(huì)被GCM認(rèn)證加密模塊處理。接收方的安全網(wǎng)絡(luò)接口解密每個(gè)數(shù)據(jù)并最終產(chǎn)生一個(gè)認(rèn)證標(biāo)簽。兩個(gè)認(rèn)證標(biāo)簽比較之后,安全網(wǎng)絡(luò)接口SNI將會(huì)發(fā)送一個(gè)認(rèn)證狀態(tài)信息給IP核,依據(jù)這個(gè)信息,IP核將會(huì)決定接收還是拒絕這個(gè)數(shù)據(jù)包。

wdz5-t6.gif

3 實(shí)驗(yàn)結(jié)果

    為了綜合評(píng)估該方案對(duì)性能的影響和資源消耗,本文在NoCem(Network on Chip emulator)平臺(tái)上實(shí)現(xiàn)整體方案。NoCem是一個(gè)基于VHDL語(yǔ)言的NoC開源仿真環(huán)境,它的數(shù)據(jù)位寬、拓?fù)浣Y(jié)構(gòu)虛擬通信的數(shù)量都是可配的。圖7所示為帶安全防護(hù)的NoC與一般的NoC數(shù)據(jù)包傳輸時(shí)間的對(duì)比??梢钥闯?,安全NoC傳輸數(shù)據(jù)包時(shí)額外增加的延時(shí)較少,安全模塊對(duì)系統(tǒng)性能的影響很小。

wdz5-t7.gif

    用Xilinx ISE14.2綜合工具對(duì)各硬件模塊進(jìn)行了綜合,目標(biāo)器件是Virtex-6。安全模塊消耗的資源與整個(gè)NoC消耗的資源對(duì)比情況如表1所示。從綜合結(jié)果可知,增加安全模塊并沒有造成明顯的資源開銷。

wdz5-b1.gif

4 結(jié)束語(yǔ)

    本文采用GCM認(rèn)證加密算法對(duì)NoC傳輸?shù)拿舾袛?shù)據(jù)進(jìn)行保護(hù),保證數(shù)據(jù)的機(jī)密性和完整性。并且相比于已有使用固定的密鑰加密的方案[9],本文采用Diffie-Hellman密鑰交換協(xié)議有助于增強(qiáng)加密的安全性。仿真綜合結(jié)果表明,在不對(duì)性能和面積造成明顯影響的情況下,本文提出的方案有效提高了NoC的安全防護(hù)能力。由于認(rèn)證加密會(huì)不可避免地增加了延時(shí),為了進(jìn)一步優(yōu)化性能,未來工作將研究如何優(yōu)化認(rèn)證加密算法,盡可能提高NoC的帶寬。

參考文獻(xiàn)

[1] 李輝楷.基于片上網(wǎng)絡(luò)架構(gòu)的安全存儲(chǔ)系統(tǒng)研究[D].上海:復(fù)旦大學(xué),2012.

[2] FIORIN L,SILVANO C,SAMI M.Security aspects in networks-on-chips: Overview and proposals for secure implementations[C].Digital System Design Architectures,Methods and Tools,2007.DSD 2007.10th Euromicro Conference on.IEEE,2007:539-542.

[3] 李輝楷,韓軍,張隨欲,等.安全的NoC系統(tǒng)的VLSI設(shè)計(jì)[C].中國(guó)電子學(xué)會(huì)電路與系統(tǒng)學(xué)會(huì)第二十二屆年會(huì).2010.

[4] PAPASTEFANAKIS E,MAITRE B,RAGOT D.Security challenges in manycore embedded systems based on Networks-on-Chip(NoCs)[C].Proceedings of the WESS'15:Workshop on Embedded Systems Security.ACM,2015:10.

[5] SEPULVEDA J,F(xiàn)LOREZ D,GOGNIAT G.Reconfigurable security architecture for disrupted protection zones in NoC-based MPSoCs[C].Reconfigurable Communication-centric Systems-on-Chip(ReCoSoC),2015 10th International Symposium on.IEEE,2015:1-8.

[6] 屈善新.基于FPGA的GCM加密認(rèn)證算法的研究與實(shí)現(xiàn)[D].北京:北京郵電大學(xué),2010.

[7] SEPLVEDA J,F(xiàn)L?魷REZ D,GOGNIAT G.Reconfigurable group-wise security architecture for NoC-based MPSoCs protection[C].Proceedings of the 28th Symposium on Integrated Circuits and Systems Design.ACM,2015:26.

[8] SAJEESH K,KAPOOR H K.An authenticated encryption based security framework for NoC architectures[C].Electronic System Design(ISED),2011 International Symposium on.IEEE,2011:134-139.

[9] KAPOOR H K,RAO G B,ARSHI S,et al.A security framework for noc using authenticated encryption and session keys[J].Circuits,Systems,and Signal Processing,2013,32(6):2605-2622.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。