華凱 楊曉非
摘 要: LTE的系統(tǒng)安全是LTE網(wǎng)絡(luò)正常工作的必要保證,它涉及到控制平面和用戶數(shù)據(jù)平面兩部分,但在協(xié)議實(shí)現(xiàn)上,面臨著跨層帶來的許多問題,如較為復(fù)雜的系統(tǒng)設(shè)計(jì)和低時(shí)延的數(shù)據(jù)處理。針對上述問題,在此對LTE安全算法的原理進(jìn)行了研究,并且給出了加密和完整性保護(hù)算法的實(shí)現(xiàn)過程。
關(guān)鍵詞: 加密; 完整性保護(hù); LTE; 密鑰生成
中圖分類號: TN929.5?34 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2014)06?0078?03
0 引 言
LTE系統(tǒng)對數(shù)據(jù)的安全保護(hù)有2種:信令數(shù)據(jù)的完整性保護(hù)以及對信令數(shù)據(jù)、用戶平面數(shù)據(jù)的加密保護(hù)。完整性保護(hù)是一種消息鑒權(quán)機(jī)制,用以防止非法器件攔截與修改信令消息,而加密保護(hù)是為了防止非法分子竊聽用戶數(shù)據(jù)及信令[1]。
LTE系統(tǒng)采用KDF(Key Derive Function)函數(shù)來生成加密算法和完整性保護(hù)算法所需的密鑰。在此基礎(chǔ)上制定了3種加密算法、2種完整性保護(hù)算法。下面對這3類安全算法進(jìn)行研究與實(shí)現(xiàn)。
1 KDF函數(shù)
1.1 HMAC函數(shù)
LTE利用HMAC?sha?256作為KDF函數(shù)來產(chǎn)生密鑰,HMAC是密鑰相關(guān)的哈希運(yùn)算消息認(rèn)證碼,HMAC運(yùn)算通過哈希算法生成一個(gè)消息摘要。
HMAC通過一個(gè)加密用散列函數(shù)H和一個(gè)密鑰K來進(jìn)行定義[2]。HMAC約定算法的表示意義:H表示所采用的HASH算法,K表示認(rèn)證密碼,K0表示Hash算法的密文,B表示H中所處理的塊大小,L表示Hash的大小,Opad表示Hash的大小。
HMAC運(yùn)算公式以及步驟:
1.2 SHA?256
SHA?256是一種安全散列算法,算法思想是將一段明文不可逆的轉(zhuǎn)換成一段密文。SHA?256將任意長度的消息壓縮成位數(shù)固定為256 b的Hash值。Hash一個(gè)消息要經(jīng)以下步驟([]表示模2加,+表示模32加):
(1) 填充消息塊,使每個(gè)消息塊的長度是512 b的整數(shù)倍;
(2) 擴(kuò)展消息。填充之后的N個(gè)長度為512 b的消息塊標(biāo)記為M(1),M(2),…,M(N),每個(gè)消息塊分為16個(gè)32 b M0(j),M1(j),…,M15(j),最后將這16個(gè)32 b消息塊擴(kuò)展式中:POTR(x,n)表示x循環(huán)右移n位;SHR(x,n)表示x右移n位。
(3) 函數(shù)更新。對于i從0~63,這里Ki是常數(shù),取自前64個(gè)素?cái)?shù)立方根小數(shù)部分的前32 b,Ch,Maj是具有32 b字輸入,32 b字輸出的函數(shù),然后計(jì)算第j步的Hash值,當(dāng)j=N時(shí)的Hash值即為sha-256的Hash值。
2 加密算法
LTE規(guī)范中指出LTE的UE端、eNB端和MME端都應(yīng)實(shí)現(xiàn)以下3種加密算法,如表1所示。
表1 LTE加密算法
2.1 SNOW 3G算法
SNOW 3G加密算法的工作流程分為初始化密鑰和在時(shí)鐘周期控制下產(chǎn)生流序列2步。
2.1.1 SNOW 3G的時(shí)序操作
(1) LFSR時(shí)序操作
(2) FSM時(shí)序操作
2.1.2 SNOW 3G算法運(yùn)算過程
(1) 初始化操作
將密鑰和初始變量進(jìn)行初始化,其中密鑰和初始化變量都為128位。密鑰包含4個(gè)字段R1 R2 R3 R4,每個(gè)字段為32位。初始化變量包含4個(gè)字段IV3 IV2 IV1 IV0,每個(gè)字段為32位。設(shè)置LFSR;初始化FSM,使R1,R2和R3均為0;循環(huán)操作32次:對FSM進(jìn)行時(shí)序操作;對LFSR采用初始化模式進(jìn)行時(shí)序操作。
(2) 生成密鑰流
對LFSR利用密鑰流模式進(jìn)行一次時(shí)序操作;對下面操作循環(huán)N次(N為需要得到的N個(gè)32位輸出):對FSM進(jìn)行一次時(shí)序操作,得到32位F;Zt = F⊕S0,得到下一個(gè)密鑰;對LFSR進(jìn)行一次時(shí)序操作,采用密鑰流模式。
2.2 AES算法
Rijndael算法的輸入有2部分,分別是明文比特流和密鑰比特流,其中明文比特流映射到4×Nb的狀態(tài)矩陣,密鑰比特流映射到4×Nk的狀態(tài)矩陣。輸出是密文比特流。Rijndael算法的核心為輪運(yùn)算,中間每輪運(yùn)算由輪密鑰加運(yùn)算、混合列變換、行移位變換、字節(jié)替代變換組成。運(yùn)算的輪數(shù)Nr是由Nb和Nk決定的。在當(dāng)前的LTE系統(tǒng)中,均采用128 b的明文和128 b的密鑰的分組方式,即Nb=4和Nk=4,所以執(zhí)行的輪變換次數(shù)為10次[6?8]。如圖1所示。
2.3 128位加密算法
發(fā)送方將各個(gè)輸入?yún)?shù)輸入到加密算法中,產(chǎn)生KEYSTREAM BLOCK,然后與明文逐比特異或,得到密文。接收方使用相同的輸入?yún)?shù),利用同樣的加密算法得到KEYSTREAM BLOCK,再與密文相異或,得到明文。在基站端和終端使用完全相同的加密過程。整個(gè)流程如圖2所示。
輸入?yún)?shù)意義為:KEY表示128位加密密鑰,COUNT表示32位計(jì)數(shù)器,BEARER表示5位承載標(biāo)識,DIRECTION表示1位傳送方向標(biāo)識,LENGTH表示輸入消息長度。在LTE中,要求使用兩種加密算法128?EEA1和128?EEA2算法。
3 完整性算法
LTE規(guī)范中指出LTE的UE端、eNB端和MME端都應(yīng)實(shí)現(xiàn)以下完整性算法,如表2所示。
表2 LTE完整性算法
如圖3所示,由輸入?yún)?shù),通過完整性算法產(chǎn)生一個(gè)32位的用于完整性保護(hù)的消息認(rèn)證碼(Message Authentication Code for Integrity,MAC?I),將其連接在要發(fā)送的信息后面一起發(fā)送到接收方,接收方通過同樣的算法和輸入?yún)?shù)計(jì)算出XMAC?I(Expected MAC?I),與收到的MAC?I進(jìn)行比較校驗(yàn)消息的完整性。其中,大部分輸入?yún)?shù)與加密算法中使用的輸入?yún)?shù)相同,MESSAGE表示輸入消息BEARER?ID為無線承載ID[9?11]。
4 結(jié) 語
本文介紹了LTE加密以及完保性算法的原理以及實(shí)現(xiàn)過程,說明了KDF函數(shù)的原理,以及SNOW 3G算法,AES算法,128位加密算法等算法的實(shí)現(xiàn)過程,隨著將來4G的正式商用普及,相信這些算法會(huì)不斷的完善優(yōu)化,得到更多的運(yùn)用。
參考文獻(xiàn)
[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] 武金梅.對縮短步數(shù)的HASH函數(shù)算法SHA?256,SHA?512的分析[D].濟(jì)南:山東大學(xué),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].電視技術(shù),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 結(jié) 語
本文介紹了LTE加密以及完保性算法的原理以及實(shí)現(xiàn)過程,說明了KDF函數(shù)的原理,以及SNOW 3G算法,AES算法,128位加密算法等算法的實(shí)現(xiàn)過程,隨著將來4G的正式商用普及,相信這些算法會(huì)不斷的完善優(yōu)化,得到更多的運(yùn)用。
參考文獻(xiàn)
[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] 武金梅.對縮短步數(shù)的HASH函數(shù)算法SHA?256,SHA?512的分析[D].濟(jì)南:山東大學(xué),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].電視技術(shù),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 結(jié) 語
本文介紹了LTE加密以及完保性算法的原理以及實(shí)現(xiàn)過程,說明了KDF函數(shù)的原理,以及SNOW 3G算法,AES算法,128位加密算法等算法的實(shí)現(xiàn)過程,隨著將來4G的正式商用普及,相信這些算法會(huì)不斷的完善優(yōu)化,得到更多的運(yùn)用。
參考文獻(xiàn)
[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] 武金梅.對縮短步數(shù)的HASH函數(shù)算法SHA?256,SHA?512的分析[D].濟(jì)南:山東大學(xué),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].電視技術(shù),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.