華凱 楊曉非
摘 要: LTE的系統安全是LTE網絡正常工作的必要保證,它涉及到控制平面和用戶數據平面兩部分,但在協議實現上,面臨著跨層帶來的許多問題,如較為復雜的系統設計和低時延的數據處理。針對上述問題,在此對LTE安全算法的原理進行了研究,并且給出了加密和完整性保護算法的實現過程。
關鍵詞: 加密; 完整性保護; LTE; 密鑰生成
中圖分類號: TN929.5?34 文獻標識碼: A 文章編號: 1004?373X(2014)06?0078?03
0 引 言
LTE系統對數據的安全保護有2種:信令數據的完整性保護以及對信令數據、用戶平面數據的加密保護。完整性保護是一種消息鑒權機制,用以防止非法器件攔截與修改信令消息,而加密保護是為了防止非法分子竊聽用戶數據及信令[1]。
LTE系統采用KDF(Key Derive Function)函數來生成加密算法和完整性保護算法所需的密鑰。在此基礎上制定了3種加密算法、2種完整性保護算法。下面對這3類安全算法進行研究與實現。
1 KDF函數
1.1 HMAC函數
LTE利用HMAC?sha?256作為KDF函數來產生密鑰,HMAC是密鑰相關的哈希運算消息認證碼,HMAC運算通過哈希算法生成一個消息摘要。
HMAC通過一個加密用散列函數H和一個密鑰K來進行定義[2]。HMAC約定算法的表示意義:H表示所采用的HASH算法,K表示認證密碼,K0表示Hash算法的密文,B表示H中所處理的塊大小,L表示Hash的大小,Opad表示Hash的大小。
HMAC運算公式以及步驟:
1.2 SHA?256
SHA?256是一種安全散列算法,算法思想是將一段明文不可逆的轉換成一段密文。SHA?256將任意長度的消息壓縮成位數固定為256 b的Hash值。Hash一個消息要經以下步驟([]表示模2加,+表示模32加):
(1) 填充消息塊,使每個消息塊的長度是512 b的整數倍;
(2) 擴展消息。填充之后的N個長度為512 b的消息塊標記為M(1),M(2),…,M(N),每個消息塊分為16個32 b M0(j),M1(j),…,M15(j),最后將這16個32 b消息塊擴展式中:POTR(x,n)表示x循環右移n位;SHR(x,n)表示x右移n位。
(3) 函數更新。對于i從0~63,這里Ki是常數,取自前64個素數立方根小數部分的前32 b,Ch,Maj是具有32 b字輸入,32 b字輸出的函數,然后計算第j步的Hash值,當j=N時的Hash值即為sha-256的Hash值。
2 加密算法
LTE規范中指出LTE的UE端、eNB端和MME端都應實現以下3種加密算法,如表1所示。
表1 LTE加密算法
2.1 SNOW 3G算法
SNOW 3G加密算法的工作流程分為初始化密鑰和在時鐘周期控制下產生流序列2步。
2.1.1 SNOW 3G的時序操作
(1) LFSR時序操作
(2) FSM時序操作
2.1.2 SNOW 3G算法運算過程
(1) 初始化操作
將密鑰和初始變量進行初始化,其中密鑰和初始化變量都為128位。密鑰包含4個字段R1 R2 R3 R4,每個字段為32位。初始化變量包含4個字段IV3 IV2 IV1 IV0,每個字段為32位。設置LFSR;初始化FSM,使R1,R2和R3均為0;循環操作32次:對FSM進行時序操作;對LFSR采用初始化模式進行時序操作。
(2) 生成密鑰流
對LFSR利用密鑰流模式進行一次時序操作;對下面操作循環N次(N為需要得到的N個32位輸出):對FSM進行一次時序操作,得到32位F;Zt = F⊕S0,得到下一個密鑰;對LFSR進行一次時序操作,采用密鑰流模式。
2.2 AES算法
Rijndael算法的輸入有2部分,分別是明文比特流和密鑰比特流,其中明文比特流映射到4×Nb的狀態矩陣,密鑰比特流映射到4×Nk的狀態矩陣。輸出是密文比特流。Rijndael算法的核心為輪運算,中間每輪運算由輪密鑰加運算、混合列變換、行移位變換、字節替代變換組成。運算的輪數Nr是由Nb和Nk決定的。在當前的LTE系統中,均采用128 b的明文和128 b的密鑰的分組方式,即Nb=4和Nk=4,所以執行的輪變換次數為10次[6?8]。如圖1所示。
2.3 128位加密算法
發送方將各個輸入參數輸入到加密算法中,產生KEYSTREAM BLOCK,然后與明文逐比特異或,得到密文。接收方使用相同的輸入參數,利用同樣的加密算法得到KEYSTREAM BLOCK,再與密文相異或,得到明文。在基站端和終端使用完全相同的加密過程。整個流程如圖2所示。
輸入參數意義為:KEY表示128位加密密鑰,COUNT表示32位計數器,BEARER表示5位承載標識,DIRECTION表示1位傳送方向標識,LENGTH表示輸入消息長度。在LTE中,要求使用兩種加密算法128?EEA1和128?EEA2算法。
3 完整性算法
LTE規范中指出LTE的UE端、eNB端和MME端都應實現以下完整性算法,如表2所示。
表2 LTE完整性算法
如圖3所示,由輸入參數,通過完整性算法產生一個32位的用于完整性保護的消息認證碼(Message Authentication Code for Integrity,MAC?I),將其連接在要發送的信息后面一起發送到接收方,接收方通過同樣的算法和輸入參數計算出XMAC?I(Expected MAC?I),與收到的MAC?I進行比較校驗消息的完整性。其中,大部分輸入參數與加密算法中使用的輸入參數相同,MESSAGE表示輸入消息BEARER?ID為無線承載ID[9?11]。
4 結 語
本文介紹了LTE加密以及完保性算法的原理以及實現過程,說明了KDF函數的原理,以及SNOW 3G算法,AES算法,128位加密算法等算法的實現過程,隨著將來4G的正式商用普及,相信這些算法會不斷的完善優化,得到更多的運用。
參考文獻
[1] 蘇信豐.UMTS空中接口與無線工程概論[M].朗訊科技(中國)有限公司無線工程組,譯.北京:人民郵電出版社,2006.
[2] KRAWCZYK H, BELLARE M, CANETTI R. HMAC: keyed?hashing for message authentication [EB/OL]. [2009?11?15]. http:// www.bibsonomy.org/bibtex/.../henkellermann.
[3] NIST. FIPS180?2: secure hash standard [S]. USA: Federal Inforation Processing Standards, 2002.
[4] 武金梅.對縮短步數的HASH函數算法SHA?256,SHA?512的分析[D].濟南:山東大學,2008.
[5] ETSI. TC SAGE specification: specification of the 3GPP confidentiality and integrity algorithms UEA2 & UIA2, document 2 [S]. [S.l.]. NTSI, 2011.
[6] NIST. Advanced encryption standard (FIPS PUB 197) [EB/OL]. [2001?11?26]. http:// www.aescrypt.com/aes_information.
[7] DAEMEN Joan, RIJMEN Vincent.AES proposal: rijndael [R]. [S.l.]: [s.n.], 1998.
[8] 吳云梅,李小文,劉丹丹.LTE中的Rijndael算法研究[J].電視技術,2010(12):84?86.
[9] ETSI. 3GPP TS 35.215 V9: specification of the 3GPP confidentiality and integrity algorithms UEA2 & UIA2, document 1 [S].[S.l.]. NTSI, 2011.
[10] ETSI. TC SAGE specification: specification of the 3GPP Confidentiality and Integrity Algorithms UEA2 & UIA2; Document 1, v2.1 [S]. [S.l.]. NTSI, 2011.
4 結 語
本文介紹了LTE加密以及完保性算法的原理以及實現過程,說明了KDF函數的原理,以及SNOW 3G算法,AES算法,128位加密算法等算法的實現過程,隨著將來4G的正式商用普及,相信這些算法會不斷的完善優化,得到更多的運用。
參考文獻
[1] 蘇信豐.UMTS空中接口與無線工程概論[M].朗訊科技(中國)有限公司無線工程組,譯.北京:人民郵電出版社,2006.
[2] KRAWCZYK H, BELLARE M, CANETTI R. HMAC: keyed?hashing for message authentication [EB/OL]. [2009?11?15]. http:// www.bibsonomy.org/bibtex/.../henkellermann.
[3] NIST. FIPS180?2: secure hash standard [S]. USA: Federal Inforation Processing Standards, 2002.
[4] 武金梅.對縮短步數的HASH函數算法SHA?256,SHA?512的分析[D].濟南:山東大學,2008.
[5] ETSI. TC SAGE specification: specification of the 3GPP confidentiality and integrity algorithms UEA2 & UIA2, document 2 [S]. [S.l.]. NTSI, 2011.
[6] NIST. Advanced encryption standard (FIPS PUB 197) [EB/OL]. [2001?11?26]. http:// www.aescrypt.com/aes_information.
[7] DAEMEN Joan, RIJMEN Vincent.AES proposal: rijndael [R]. [S.l.]: [s.n.], 1998.
[8] 吳云梅,李小文,劉丹丹.LTE中的Rijndael算法研究[J].電視技術,2010(12):84?86.
[9] ETSI. 3GPP TS 35.215 V9: specification of the 3GPP confidentiality and integrity algorithms UEA2 & UIA2, document 1 [S].[S.l.]. NTSI, 2011.
[10] ETSI. TC SAGE specification: specification of the 3GPP Confidentiality and Integrity Algorithms UEA2 & UIA2; Document 1, v2.1 [S]. [S.l.]. NTSI, 2011.
4 結 語
本文介紹了LTE加密以及完保性算法的原理以及實現過程,說明了KDF函數的原理,以及SNOW 3G算法,AES算法,128位加密算法等算法的實現過程,隨著將來4G的正式商用普及,相信這些算法會不斷的完善優化,得到更多的運用。
參考文獻
[1] 蘇信豐.UMTS空中接口與無線工程概論[M].朗訊科技(中國)有限公司無線工程組,譯.北京:人民郵電出版社,2006.
[2] KRAWCZYK H, BELLARE M, CANETTI R. HMAC: keyed?hashing for message authentication [EB/OL]. [2009?11?15]. http:// www.bibsonomy.org/bibtex/.../henkellermann.
[3] NIST. FIPS180?2: secure hash standard [S]. USA: Federal Inforation Processing Standards, 2002.
[4] 武金梅.對縮短步數的HASH函數算法SHA?256,SHA?512的分析[D].濟南:山東大學,2008.
[5] ETSI. TC SAGE specification: specification of the 3GPP confidentiality and integrity algorithms UEA2 & UIA2, document 2 [S]. [S.l.]. NTSI, 2011.
[6] NIST. Advanced encryption standard (FIPS PUB 197) [EB/OL]. [2001?11?26]. http:// www.aescrypt.com/aes_information.
[7] DAEMEN Joan, RIJMEN Vincent.AES proposal: rijndael [R]. [S.l.]: [s.n.], 1998.
[8] 吳云梅,李小文,劉丹丹.LTE中的Rijndael算法研究[J].電視技術,2010(12):84?86.
[9] ETSI. 3GPP TS 35.215 V9: specification of the 3GPP confidentiality and integrity algorithms UEA2 & UIA2, document 1 [S].[S.l.]. NTSI, 2011.
[10] ETSI. TC SAGE specification: specification of the 3GPP Confidentiality and Integrity Algorithms UEA2 & UIA2; Document 1, v2.1 [S]. [S.l.]. NTSI, 2011.