《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > TD-LTE接入層安全性設計與實現(xiàn)
TD-LTE接入層安全性設計與實現(xiàn)
來源:電子技術應用2012年第4期
陳發(fā)堂1, 李 靜1, 韓 寧2
1. 重慶郵電大學 通信與信息工程學院, 重慶400065; 2. 成都電子科技大學 通信學院, 四川 成都610054
摘要: 在研發(fā)時分-長期演進(TD-LTE)無線終端綜合測試儀時,一致性測試有著非常重要的作用?;诖?,選用規(guī)范描述語言(SDL)與樹表描述語言TTCN(Tree Tabular Combine Notation)對接入層安全性的設計進行了仿真測試,提出了一種基于SDL+TTCN的測試方法。最后采用ARM Workbench IDE編譯軟件在ARM1176JZF-S芯片上對測試后的效果進行了驗證。
中圖分類號: TN929
文獻標識碼: A
文章編號: 0258-7998(2012)04-0137-04
Security design and its realization of access stratum for TD-LTE
Chen Fatang1, Li Jing1, Han Ning2
1.College of Communications and Information Engineering, Chongqing University of Posts and Telecommunications, Chongqing 400065, China; 2. College of Communication and Information Engineering, University of Electronic Science and Technology of China, Chengdu 610054, China
Abstract: It is very important that the protocol conformance testing in protocol implementation. As the TD-LTE wireless terminal tester must be designed in accordance with the protocol specifications, so this paper selects the SDL and TTCN to testing the security of the AS, and proposes a testing way that based on SDL and TTCN. At last, this paper checks the truth of the testing result on the chip of the ARM1176JZF-S in the ARM Workbench IDE compiling software.
Key words : conformance testing; the security of the AS; SDL; TTCN

    隨著電信領域內通信標準的應用越來越普遍[1], 通信軟件的應用及研發(fā)也更加廣泛且深入,所以驗證軟件的標準性以及健壯性就顯得尤為重要。對于LTE協(xié)議棧而言,為保證通信軟件協(xié)議棧的實現(xiàn)質量,必須對該軟件進行協(xié)議一致性測試。協(xié)議測試其實是一種典型的黑盒測試,它包括4個方面:一致性測試、互操作性測試、堅固性測試和性能測試。

    對于LTE系統(tǒng)而言。安全性包括接入層AS(Access Stratum)和非接入層NAS(Non-Access Stratum)兩個層次[2-3],而接入層安全性相對而言更加重要。LTE系統(tǒng)主要提供兩種有效的安全性功能——加密和完整性保護。而安全性的實現(xiàn)必須使用相應的算法,在幾種主流的分組密碼算法中,AES算法具有以下特點:(1)采用了128 bit的長密鑰,使其難以被破解; (2)非線性度和復雜度相對較高; (3)能抗擊截短差分攻擊和滲透攻擊;(4)加密速度快。因此在LTE中采用AES算法最合適。本文從接入層安全性流程的實現(xiàn)著手,編寫測試例[4-5],通過消息時序圖(MSC)、跟蹤文檔并結合程序來檢查和驗證網絡端接入層安全性的實現(xiàn)程序。
1 接入層安全性過程概述
    接入層安全性主要是在PDCP(Packet Data Convergence Protocol)層實現(xiàn)[6],PDCP層通過接收高層的安全配置信令,進入相應的狀態(tài)后才能對數(shù)據和信令進行加密及完整性保護,在正常的RRC(Radio Resource Control)連接建立完成并且通過層三的鑒權完成后,啟動接入層的安全模式命令。網絡端首先獲得由非接入層的AKA(Authentication and Key Agreement)過程產生的密鑰KASME,然后RRC由該參數(shù)計算得到KeNB,再由KeNB計算得到控制平面的完整性保護密鑰KRRCint,以及用戶平面和控制平面加密需要的密鑰KUPenc、KRRCenc,再組裝成安全模式命令(SecurityModeCommand),發(fā)送給終端,配置終端的安全性參數(shù)。當網絡端發(fā)出SecurityModeCommand消息后開始對下行數(shù)據進行加密,終端的PDCP層接收到SecurityModeCommand消息后,先將其送到RRC進行解碼操作,得出網絡端配給終端的完整性保護算法,再將完整性保護算法和相應的密鑰發(fā)給PDCP層,PDCP就可以對SecurityModeCommand消息進行完整性校驗。如果沒有通過完整性校驗,則向網絡端發(fā)送安全模式失?。⊿ecurityModeFailure);如果通過,則取出里面包含的加密算法,并向網絡發(fā)送安全模式完成(SecurityModeComplete)消息,對其進行完整性保護但是不加密,自此后開始對上行數(shù)據加密,下行數(shù)據解密。網絡端收到該消息后開始對上行數(shù)據解密,安全性建好后,開始對信令進行完整性保護。
2 安全性算法的研究與實現(xiàn)
    接入層的安全性是通過加密算法和完整性保護算法來實現(xiàn)。AES算法是一種塊運算算法,其運算速度快、效果比較好,可以由此延伸出128-EEA加密算法和128-EIA完整性保護算法[8]。
2.1 128-EEA算法描述
    加密的目的是確保即使數(shù)據被第三方接收到,也無法正確解碼。對于控制平面,被加密的數(shù)據單元僅是PDCP SDU的數(shù)據部分和MAC-I;對于用戶平面,被加密的數(shù)據單元是PDCP SDU的數(shù)據部分。
    (1) RRC配置的輸入參數(shù)
  Count:長度32 bit,它由一個 HFN和PDCPSN組成,PDCP SN 的長度由RRC配置。
   BEARER:長度5 bit,由RRC向PDCP提供一個對應的rbIdentity值減1后轉化為一個5 bit的二進制數(shù)(高位用0來填充)而得。
   DIRECTION:長度1 bit,表示傳輸方向:比特0表示為UL,比特1表示為DL。
    LENGTH:進行加密的消息的長度。
    KUPenc和KRRCenc:長度128 bit,是一個密鑰,僅用于一個特定加密算法來保護UP業(yè)務。該密鑰被UE和eNB使用,通過KDF將KeNB及其加密算法的ID生成的。
    (2) 算法流程
    ①生成Counter Block:將RRC所配置的參數(shù)Count、BEARER、DIRECTION組成長度為128 bit的數(shù)據流Tn,即:Tn = Count [0]...Count [31]│BEARER [0]...BEARER[4]│DIRECTION│026 (i.e. 26zero bits) | Mn。
    ②生成Keystream Block:密鑰Key與Tn進行AES(Key,Tn)計算,計算結果Kn。即:Kn = AES(Key,Tn)。
  ③生成所需要的加密文件CipherText:密文Cn的產生則根據:Cn=(Kn) ORX (Pn)。
2.2 128-EIA算法描述
  完整性保護功能包括完整性保護和完整性驗證。發(fā)送端將數(shù)據和一定的輸入參數(shù)經過EIA算法,得出一個32 bit的MAC值,然后將這個MAC值隨著數(shù)據一起發(fā)送到接收端,接收端通過同樣的方法也得出一個XMAC值,然后比較這兩個值是否一致,如果一致,則完整性驗證成功;否則,完整性驗證失敗。完整性保護將只用于信令單元和數(shù)據單元的PDCP頭,且在PDCP SDU的數(shù)據部分加密之前執(zhí)行。
  
3 測試設計過程
    SDL是一種描述系統(tǒng)行為的語言,其具有以下特點:(1)說明系統(tǒng)的功能;(2)描述系統(tǒng)的內部結構和行為;(3)因為其描述生成的C代碼(或嵌入的C代碼)可以直接再在目標板上運行,因此可以大大縮短開發(fā)周期。因而在有關協(xié)議棧的通信軟件的開發(fā)過程中,SDL有著廣泛的應用,可以用于協(xié)議工程的各個階段。
    在對TD-LTE無線終端綜合測試儀接入層安全性協(xié)議實現(xiàn)的過程中,設計了如圖1所示的SDL進程。PDCP層在DAM、DUM、SAM三種狀態(tài)中轉換,當釋放掉某個PDCP實體后,進入空狀態(tài),等待著RRC去配置進入某個狀態(tài)。因為僅僅只有SRB需要完整性保護,因此在DAM狀態(tài)下設計了加密過程,而在SAM狀態(tài)下設計了完整性保護過程。當RRC配置PDCP進入SAM狀態(tài)后,PDCP通過原語CPDCP_SECURITY_REQ來接收RRC配置的安全性信息,如完整性保護算法和密鑰,RRC再通過原語CPDCP_DATA_REQ發(fā)送信令到PDCP進行完整性保護,PDCP再將經過處理后的數(shù)據通過原語RLC_AM_DATA_REQ傳給RLC層。當RRC配置PDCP進入DAM狀態(tài)后,PDCP利用以前接收的加密密鑰(假設PDCP沒有經過重建)對接收到的數(shù)據進行加密處理。BC通過原語CPDCP_DATA_REQ將高層的數(shù)據傳到PDCP層進行加密處理,PDCP再將處理后的數(shù)據通過原語RLC_AM_DATA_REQ傳給RLC層。DUM狀態(tài)類似于DAM狀態(tài),在此就不再贅述。
4 測試仿真結果
    將編寫好的C代碼嵌入到SDL軟件中,再根據圖1的信號流程圖,結合由TTCN寫的測試案例,得到圖2的仿真結果圖。可以看出仿真結果和信號流程圖以及TTCN測試的數(shù)據完全吻合,所以完全正確地驗證了設計的接入層安全性過程及流程。

 

 

    在對幾種主流的分組密鑰算法的對比研究的基礎上發(fā)現(xiàn)AES算法具有很好的抗攻擊能力和很高的復雜度,從而在LTE中將其作為安全性的核心算法。本文設計了實現(xiàn)接入層安全性的流程圖及信號流程,最后通過一系列的測試驗證了流程的正確性。還使用了ARM編譯軟件在芯片ARM1176JZF-S上結合其他各層實現(xiàn)單步測試,測試的流程圖和在各內存中的數(shù)據都完全正確。該接入層安全性的設計方案對今后類似的設計場合有一定推廣價值。
參考文獻
[1] 沈嘉等.3 GPP長期演進(LTE)技術原理與系統(tǒng)設計[M]. 北京:人民郵電出版社, 2008.
[2] 3GPP TS 36.300 V9.0.0, Evolved Universal Terrestrial Radio Access and Evolved Universal Terrestrial Radio Access Network[S].2009.12.
[3] 3GPP TS 36.331 V9.0.0, Radio Resource Control Protocol  Specification[S].2009.12.
[4] 3GPP TS 24.301 V9.0.0, Non-Access-Stratum protocol for Evolved Packet System [S].2009.12.
[5] 3GPP TS 33.401 V9.0.0、V9.2.0, System Architecture Evolution[S].2009.12.
[6] European Telecommunications Standards Institute (ETSI)/SAGE(Version:1.1).Specification of the 3GPP Confidentiality and Integrity Algorithms UEA2 & UIA2[S]. 2006.
[7] 3GPP TS 36.323 V9.0.0,Packet data convergence protocol (PDCP) specification[S]. 2009.
[8] National Institute of Standards and Technology(NIST).Federal Information Processing Standards Publications (FIPS PUBS)197, Advanced Encryption Standard(AES)[S]. 2001.

此內容為AET網站原創(chuàng),未經授權禁止轉載。