當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]基于SoC的IPSec協(xié)議實現(xiàn)技術

引 言 
    IPSe[1]作為一種實現(xiàn)VPN的安全協(xié)議體系,目前已在VPN設備中廣泛使用。但是,隨著千兆位高速網(wǎng)絡的技術發(fā)展,對VPN設備在時效性等方面提出了更高的要求。因此,必須從體系結構等方面,研究新的技術方法實現(xiàn)IPSec。在IPSec安全設備中,SoC技術將是一種較好的選擇。soC將系統(tǒng)的CPU、I/O接口、存儲器、算法、協(xié)議處理等模塊全部集成到單一半導體芯片上,實現(xiàn)IPSec協(xié)議的全部功能,成為構筑IPSec安全設備的核心部件,極大地提高了高速V。PN網(wǎng)絡的安全性、可靠性、時效性以及較高的性能價格比。

1 IPSec協(xié)議 
    IPSec協(xié)議是因特網(wǎng)工程任務組(IETF)針對TCP/IP協(xié)議沒有安全機制的嚴重缺陷而專門制定的IP安全標準,用以在IP層實現(xiàn)訪問控制、無連接完整性、數(shù)據(jù)源驗證、抗重播、數(shù)據(jù)加密和有限的業(yè)務流機密性等多種安全服務。該標準由一系列協(xié)議組成,各協(xié)議之間的關系如圖1所示。



    *基金項目:“十五”期間國家密碼發(fā)展基金密碼理論研究課題“密碼soc芯片的體系結構和安全性研究”。 
有關協(xié)議的解釋如下: 
    ①AH[2] (Authentication Header)是一個安全協(xié)議頭,在傳輸模式下為IP層數(shù)據(jù)流提供數(shù)據(jù)完整性、數(shù)據(jù)源身份認證、一些可選的和有限的抗重播服務。 
    ②EsP[3] (Encapsulating Security Payload)是一個插入到IP數(shù)據(jù)報內(nèi)部的協(xié)議頭,為IP層流量數(shù)據(jù)提供機密性、數(shù)據(jù)源身份認證、抗重播以及數(shù)據(jù)完整性等安全服務。 
    ③認證與加密算法是IPSec實現(xiàn)安全數(shù)據(jù)傳輸?shù)暮诵?,其中,加密算法用于ESP,可以采用DES、IDEA等密碼算法;認證算法用于AH,可以采用3DES、RC5等算法。 
    ④IKE[4](Internet Key Exchange)是密鑰交換協(xié)議,用于在IPSec通信雙方建立共享安全參數(shù)及驗證過的密鑰,以建立一種安全關聯(lián)關系。 
    ⑤DoI(Domain of Interpretation)是一個單獨的文檔,用于存放IKE協(xié)商的參數(shù)。 
    ⑥SA(Security ASSOCiation)是安全關聯(lián)協(xié)議,是主機、路由器兩個應用IPS ec實體之間的一種單向邏輯連接。sA有安全策略庫(sPDB)和安全關聯(lián)庫(sADB),存儲了安全策略的具體細節(jié),包括保護的內(nèi)容、保護的方式、保護通信數(shù)據(jù)的主體等策略。

2 SoC技術 
    目前,SoC平臺主要用于CSoC、SoPC、EPGA等芯片開發(fā)。其中,CSoC稱為可配置系統(tǒng)級芯片,一般包括1個處理器內(nèi)核、可編程邏輯陣列和其它一些通用部件;SoPC是可編程的單芯片系統(tǒng),如Altera的Nios內(nèi)核模塊;EPGA是以FPGA為主體的SoC芯片。使用這些SoC開發(fā)平臺,可以充分利用系統(tǒng)級芯片集成度高和性能優(yōu)越的特點,靈活設計開發(fā)各種專用Soc芯片。
(1)開發(fā)平臺的選擇 
    SoC平臺開發(fā)套件包括:各種工具與資源軟件、可以重構的硬件電路結構驗證平臺和使用說明書等。其可用軟件資源包括:供選用的多種嵌入式處理器核,硬件模塊設計語言及其編譯器,仿真、綜合和布局、布線工具等;設計語言包括HDL、C/C++等。開發(fā)平臺的選擇取決于器件的來源:當選用商品化器件時,可以選擇Altera的SOPC開發(fā)環(huán)境QUARTUSII;當選擇自主研發(fā)Soc時,應使用相關的專用開發(fā)平臺。
(2)lP庫的選擇 
    IP庫的選擇應針對器件類型,選擇通用的IP核。對安全性要求較高的算法模塊,應采取訪問控制、抗解剖分析等技術措施;對可變邏輯模塊,應采用FPGA,以保證可編程的特點。
(3)芯片結構的選擇 
    SoC的主體部分由CPU和ASIC組成。在設計過程中,芯片結構的選擇應從系統(tǒng)應用規(guī)劃、協(xié)議處理速度要求、便于實現(xiàn)、Vetilog HDL編程實現(xiàn)結構化,以及所用邏輯模塊的實際結構等幾個角度入手。 
Altera的SoC芯片[5]構成如圖2所示。

 


(4)軟硬件系統(tǒng)設計 
    SoC的基本結構是具有一個成多個微處理器,以及可編程硬件邏輯,因此,在SoC設計中必須進行軟硬件的協(xié)同設計。軟硬件協(xié)同設計的技術性很強,它既有SoC設計的靈活性,又有SoC設計中難以揣摩、充滿變數(shù)的復雜性,將涉及到硬件資源的規(guī)劃和整個系統(tǒng)性能的實現(xiàn)。
(5)系統(tǒng)集成設計 
    系統(tǒng)集成設計的關鍵技術,主要是IP核的無縫連接系統(tǒng)設計和相關的可測試技術,包括緊密耦合、傳輸特性、時鐘綜合和測試接口等。
(6)低功耗管理設計 
    低功耗設計是對有相關要求的器件進行的一種設計技術,設計中主要通過一些系統(tǒng)狀態(tài)、橋接控制等來實現(xiàn)。

3 基于SoC的IPSec實現(xiàn)技術
3.1 基本結構 

    以SoC實現(xiàn)IPSec的多協(xié)議模塊包括:①IPSec協(xié)議輸入、輸出引擎,是通過協(xié)議解析,決定數(shù)據(jù)流程的處理;②安全關聯(lián)、密鑰交換、密碼算法等,其中,安全關聯(lián)模塊為其直接提供所需參數(shù),密鑰交換模塊用于IKE自動管理的SAD,算法模塊是實現(xiàn)IP數(shù)據(jù)加解密和認證的基本模塊;③接口模塊,是IPSec與IPV4/IPv6協(xié)議的接口界面。SoC中的CPU核,實施系統(tǒng)管理、策略管理和密鑰管理等功能。 
基于SoC的IPSec協(xié)議結構如圖3所示。 


    IPSec的主體部分是多協(xié)議處理的硬件模塊。在SoC設計過程中,應通過優(yōu)化設計,以滿足IPSec的功能和性能要求;采用片上操作系統(tǒng),以滿足設計的靈活性、可繼承性和可復用性等IP特性;結合CPU的結構、性能和指令系統(tǒng),進行軟硬件系統(tǒng)設計,以達到各個模塊之間的通信、傳輸和控制等一體化設計。 
基于SoC的IPSec芯片結構如圖4所示。 



    圖4中IPSec協(xié)議的IKE密鑰交換、策略管理、SAD手工注入由實時操作系統(tǒng)來處理,而IPSec輸入輸出引擎的協(xié)議解析、安全策略庫(SAD、SPD)、密鑰快速查找(CAM)、加解密算法、GMAC通信接口等由硬件模塊構造。通信接口實現(xiàn)以太網(wǎng)鏈路幀的接收、發(fā)送、校驗等功能。芯片中還應設計看門狗,用于防止系統(tǒng)死機;另外,要設計跟蹤模塊,用于系統(tǒng)軟硬件調試。 
綜上所述,在實現(xiàn)IPSec協(xié)議的SoC芯片中,主要協(xié)議棧處理都由硬件模塊實現(xiàn),CPu負責管理調度和密鑰配置。
3.2 功能實現(xiàn)
(1)lPSec協(xié)議的輸出與輸入引擎處理 
    對于輸出數(shù)據(jù)包,IPSec協(xié)議輸出引擎先調用策略管理模塊,查詢SPD,確定數(shù)據(jù)包應使用的安全策略。根據(jù)策略管理模塊的指示,協(xié)議引擎對該數(shù)據(jù)包作出如下3種可能的處理: 
    ①如存在有效的SA,則取出相應的參數(shù),將數(shù)據(jù)包封裝(包括加密、驗證,添加IPSec頭和IP頭等),然后發(fā)送。 
    ②如尚未建立SA,策略管理模塊啟動或觸發(fā)IKE協(xié)商。協(xié)商成功后,按①中的步驟處理;不成功則應將數(shù)據(jù)包丟棄,并記錄出錯信息。 
    ③如存在SA但無效,策略管理模塊將此信息向IKE通告,請求協(xié)商新的SA,協(xié)商成功后按①中的步驟處理,不成功則應將數(shù)據(jù)包丟棄。 
    對于輸入數(shù)據(jù)包,IPSec協(xié)議引擎先調用策略管理模塊,查詢SAD。如得到有效的SA,則對數(shù)據(jù)包進行解封(還原),再查詢SPD,驗證為該數(shù)據(jù)包提供的安全保護是否與策略配置的相符。如相符,則將還原后的數(shù)據(jù)包交給TCP層或轉發(fā)。如不相符,或要求應用IPSec但未建立SA,或SA無效,則將數(shù)據(jù)包丟棄,并記錄出錯信息。
(2)SPDB和SADB實現(xiàn)技術 
    IPSec協(xié)議處理數(shù)據(jù)報文的過程中需要通過不斷地查詢SADB和SPDB來驗證數(shù)據(jù)的合法性和取出密鑰進行數(shù)據(jù)報的加解密處理,因此,對IPSec處理性能而言,如何選擇保存SADB和SPDB的數(shù)據(jù)結構至關重要。另外由于SA和SP的數(shù)量都是動態(tài)地變化的,必須選擇合適的存儲結構。如用軟件方法設計一個合理的數(shù)據(jù)結構進行存儲,在系統(tǒng)的SADB和SPDB規(guī)模比較小時SA和SP的查詢速度還可以接受,但隨著SADB和sPDB規(guī)模的擴大,系統(tǒng)的查詢能力必然下降。因為在查詢中最好的情況是一次命中,而大多數(shù)情況下都不會是一次命中,查詢的效率必然下降,從而影響IPSec協(xié)議的處理。要從根本上解決查詢效率的問題必須分析SADB和SPDB的設計要求,才能找到解決方法。
    SPDB和SADB的設計基于每一個SA對應一條SPD。SA和SPD在各數(shù)據(jù)庫中具有相同的地址。利用指針互指,只要在其中一個數(shù)據(jù)庫查找到匹配的字段,就能同時得到兩個數(shù)據(jù)庫的地址指針。因此,SPDB和SADB的設計應該滿足下列要求: 
    ①對于該數(shù)據(jù)結構能夠有效地進行查詢,得到確切的或者基于選擇符的匹配結果,包括源地址、目的地址、協(xié)議和SPI。 
    ②能夠為選擇符保存通配、范圍或確切的值。 
    ③隱藏指向SADB和SPDB的指針,保證兩個結構間的同步。 
    ④對SA/SP條目進行排序保存,以便匹配查找一直能快速完成。 
    采用硬件設計技術通常是提高協(xié)議處理速度的好方法。其中,CAM(Content_Addressable Memory)是按內(nèi)容尋址存儲器,是由控制和匹配兩大部分組成的。通過控制部分,可以把需要寫進CAM中的數(shù)據(jù)通過SPDB和SADB管理模塊寫進CAM中,供查找時使用。在匹配口可以輸入數(shù)據(jù),找出該匹配數(shù)據(jù)所在地址并返回。在實際設計中,SADB或SPDB數(shù)據(jù)庫內(nèi)容連續(xù)存儲在RAM空間中。CAM中寫入需要查找的匹配輸入項<SPI,目標地址,協(xié)議>三元組等,匹配輸出是32位作為查詢SADB和SPDB在RAM中的地址,這種匹配方法一次查詢只需幾個時鐘周期即可完成。在SADB和SPDB規(guī)模很大時系統(tǒng)的查詢速度不會降低。目前CAM的匹配速度很快,查找速度可以達到1億次/s,而在一個1000Mb/s的網(wǎng)絡口上每秒連續(xù)傳最大包的個數(shù)為1000×1024×1024/(8×96)=1 365 330,完全滿足系統(tǒng)查找的需要。匹配成功即可查找出對應的數(shù)據(jù)庫中起始地址,大大節(jié)省了查表的時間,提高IPSec處理的效率。
(3)密碼算法的實現(xiàn) 
   
在IPSec實現(xiàn)過程中涉及了一系列的密碼運算,其中包括實現(xiàn)AH和ESP的加密算法和認證算法,實現(xiàn)IKE所需要的密鑰交換算法以及密鑰生成算法。為獲得較高的密碼運算效率,可以采用流水線技術設計專門的密碼運算協(xié)處理器;設計硬件隨機數(shù)發(fā)生器,為密碼設備產(chǎn)生消息密鑰;設計密鑰安全控制器,以保護密鑰安全。
(4)其余功能的實現(xiàn) 
IKE密鑰交換、策略管理、SAD手工注入和硬件初始化(如SPD和SAD的管理)等由實時操作系統(tǒng)實現(xiàn)。

結語 
    本文介紹了基于Soc的IPSec協(xié)議實現(xiàn)技術,適用于千兆位VPN設備等高端應用。至于速度要求不高的低端應用,SoC中可以由CPU實現(xiàn)協(xié)議處理,而密碼算法由硬件實現(xiàn),以降低硬件規(guī)模和設計成本,使設備獲得較高的性價比??傊?,以SoC構筑安全平臺,是提高安全產(chǎn)品安全性、可靠性和時效性的有效途徑。 
    研發(fā)基于自主知識產(chǎn)權的、基于SoC的安全產(chǎn)品,可以充分利用SoC中CPU效率高、硬件可編程能力強,以及芯片規(guī)模大、速度快的特點,極大地提高安全產(chǎn)品的性能。該技術不僅對信息安全產(chǎn)品具有重要的實用價值,而且對密碼工程技術具有重要的學術意義。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉