LTE/SAE安全體系的研究及其在終端的實(shí)現(xiàn)
LTE/SAE安全體系的研究及其在終端的實(shí)現(xiàn) ,1引言隨著移動(dòng)通信的不斷發(fā)展,人們對(duì)移動(dòng)通信中的信息安全也提出了更高的要求,從2G到3G,在安全特征
1引言
隨著移動(dòng)通信的不斷發(fā)展,人們對(duì)移動(dòng)通信中的信息安全也提出了更高的要求,從2G到3G,在安全特征與安全服務(wù)方面逐步完善。為了進(jìn)一步推進(jìn)3G技術(shù),提高頻譜效率,降低時(shí)延和優(yōu)化分組數(shù)據(jù),作為3G系統(tǒng)長(zhǎng)期演進(jìn)的LTE(long time evolution,長(zhǎng)期演進(jìn))應(yīng)運(yùn)而生[1],與此同時(shí)LTE的演進(jìn)項(xiàng)目SAE(system architecture evolution,系統(tǒng)架構(gòu)演進(jìn))也同時(shí)開(kāi)展,目標(biāo)是為L(zhǎng)TE的演進(jìn)開(kāi)發(fā)一個(gè)支持多RAT(radio access technology,無(wú)線(xiàn)接入技術(shù))的系統(tǒng)架構(gòu)。在LTE/SAE中,安全包括AS(access stratum,接入層)和NAS(non-access stratum,非接入層)兩個(gè)層次。AS安全是UE(user equipment,用戶(hù)設(shè)備)與eNB(evolved node-B,演進(jìn)型節(jié)點(diǎn)B)之間的安全,主要執(zhí)行AS信令的加密和完整性保護(hù),UP(user plane,用戶(hù)平面)數(shù)據(jù)的機(jī)密性保護(hù);NAS的安全是UE與MME(mobile management entity,移動(dòng)管理實(shí)體)之間的安全,主要執(zhí)行NAS信令的機(jī)密性和完整性保護(hù)。本文主要以協(xié)議為基礎(chǔ),重點(diǎn)介紹LTE/SAE的安全架構(gòu)、安全機(jī)制及其終端安全流程的實(shí)現(xiàn)。
2LTE/SAE的安全體系結(jié)構(gòu)
2.1LTE/SAE的安全架構(gòu)
LTE/SAE在安全功能方面不斷得到完善、擴(kuò)展和加強(qiáng),參考文獻(xiàn)[2]提出網(wǎng)絡(luò)的安全分為網(wǎng)絡(luò)接入安全、網(wǎng)絡(luò)域安全、用戶(hù)域安全、應(yīng)用域安全、安全服務(wù)的可視性和可配置性等5個(gè)域,如圖1所示。
[attach]220392[/attach]
由圖1可知,LTE/SAE的安全架構(gòu)和3G的網(wǎng)絡(luò)安全架構(gòu)相比,發(fā)生了一些變化。參考文獻(xiàn)[3]指出:首先是在ME(mobile equipment,移動(dòng)設(shè)備)和SN(serve network,業(yè)務(wù)網(wǎng))之間加入了非接入層的安全,使得非接入層和接入層的安全獨(dú)立開(kāi)來(lái)便于操作;然后在A(yíng)N(access network,接入網(wǎng))和SN之間的通信引入安全;另外,增加了服務(wù)網(wǎng)認(rèn)證,能縮減空閑模式的信令開(kāi)銷(xiāo)。UE是由ME和USIM(universal subscriber identity module,全球用戶(hù)標(biāo)識(shí)模塊)卡組成。
2.2LTE/SAE安全流程分析
LTE/SAE的安全流程整體上可以分為以下幾大部分,如圖2所示。
[attach]220393[/attach]
用戶(hù)開(kāi)機(jī)發(fā)起注冊(cè),與網(wǎng)絡(luò)建立連接后發(fā)起AKA(authentication and key agreement,鑒權(quán)與密鑰協(xié)商)過(guò)程。網(wǎng)絡(luò)端的MME通過(guò)終端發(fā)來(lái)的IMSI(international mobile subscriber identity,全球移動(dòng)用戶(hù)惟一標(biāo)識(shí))以及相關(guān)的參數(shù)發(fā)起鑒權(quán)過(guò)程,之后與終端進(jìn)行密鑰協(xié)商,發(fā)起安全激活命令SMC(security mode command,安全模式過(guò)程),其最終目的是要達(dá)到終端和網(wǎng)絡(luò)端密鑰的一致性,這樣兩者之間才能安全地通信。
2.3鑒權(quán)與密鑰協(xié)商過(guò)程
LTE/SAE鑒權(quán)與密鑰協(xié)商過(guò)程的目的是通過(guò)AUC(authentication centre,鑒權(quán)中心)和USIM卡中所共有的密鑰K來(lái)計(jì)算密鑰CK(cipher key,加密密鑰)和IK(integrity key,完整性密鑰),并由CK和IK作為基本密鑰計(jì)算一個(gè)新的父密鑰KASME, 隨后由此密鑰產(chǎn)生各層所需要的子密鑰,從而在UE和網(wǎng)絡(luò)之間建立EPS(evolved packet system,演進(jìn)型分組系統(tǒng))安全上下文。LTE和3G在A(yíng)KA過(guò)程中的個(gè)別地方是有所不同的,參考文獻(xiàn)[2]指出網(wǎng)絡(luò)端生成的CK、IK不應(yīng)該離開(kāi)HSS(home subscriber server,歸屬地用戶(hù)服務(wù)器,存在于歸屬地環(huán)境HE中),而參考文獻(xiàn)[3]指出3G的CK、IK是可以存在于A(yíng)V(authentication vector,鑒權(quán)向量)中的,LTE這樣做使主要密鑰不發(fā)生傳輸,提高了安全性。AKA過(guò)程最終實(shí)現(xiàn)了UE和網(wǎng)絡(luò)側(cè)的雙向鑒權(quán),使兩端的密鑰達(dá)成一致,以便能夠正常通信。詳細(xì)的鑒權(quán)與密鑰協(xié)商過(guò)程如圖3所示。
[attach]220394[/attach]
(1)~(3)MME通過(guò)鑒權(quán)請(qǐng)求Authentication datequest將IMSI、SN ID(server network identity,服務(wù)網(wǎng)標(biāo)識(shí))和Network Type(服務(wù)網(wǎng)類(lèi)型)傳給HSS,HSS用SN ID對(duì)終端進(jìn)行驗(yàn)證。如果驗(yàn)證通過(guò),HSS將會(huì)使用收到的參數(shù)生成AV, 它包括參數(shù)RAND(隨機(jī)數(shù))、AUTN(authentication token,鑒證令牌)、XRES(通過(guò)和用戶(hù)返回的RES比較來(lái)達(dá)成密鑰協(xié)商的目的)和密鑰KASME,KASME是用來(lái)產(chǎn)生非接入層和接入層密鑰的總密鑰,之后通過(guò)鑒權(quán)響應(yīng)Authentication data response將AV傳給MME。
(4)~(10)MME存儲(chǔ)好AV后,將會(huì)通過(guò)用戶(hù)鑒權(quán)請(qǐng)求User authentication request這條消息將參數(shù)AUTN、RAND和KSIASME 傳給終端。KSIASME 是用來(lái)標(biāo)識(shí)KASMEKASME,目的是為了終端能獲得和網(wǎng)絡(luò)端一樣的KASME 。隨后,參考文獻(xiàn)[4]指出終端將會(huì)核實(shí)收到的AUTN的AMF(authentication management field,鑒證管理域)。如果可以接受,通過(guò)驗(yàn)證,將會(huì)進(jìn)一步生成一個(gè)響應(yīng)RES;如果和XRES匹配的話(huà),表示鑒權(quán)成功了。
RES的具體生成方法如圖4所示,參考文獻(xiàn)[3]指出圖中的SQN(sequence number,序列號(hào))是一個(gè)計(jì)數(shù)器。f1和f2為鑒權(quán)函數(shù),f3、f4、f5和KDF都是密鑰生成函數(shù);?茌為異或操作;AK為一個(gè)密鑰,AK = f5K (RAND),主要用于恢復(fù)SQN,具體操作是SQN = (SQN?茌AK)AK;MAC為網(wǎng)絡(luò)端產(chǎn)生的信息確認(rèn)碼,XMAC為終端生成的信息確認(rèn)碼。當(dāng)UE收到MME發(fā)來(lái)的鑒權(quán)請(qǐng)求后,通過(guò)驗(yàn)證,使用參數(shù)K、SQN(恢復(fù)的)和AMF通過(guò)函數(shù)f1生成XMAC,
[attach]220395[/attach]
通過(guò)比較XMAC和MAC相等后,才被允許進(jìn)行下一步動(dòng)作。
上述過(guò)程完成之后,終端和網(wǎng)絡(luò)端的非接入層和接入層將會(huì)由產(chǎn)生的密鑰KASME通過(guò)KDF獲取相應(yīng)的機(jī)密性及完整性保護(hù)所需要的密鑰。
2.4終端的安全性激活過(guò)程
在LTE中,非接入層和接入層分別都要進(jìn)行加密和完整性保護(hù),它們是相互獨(dú)立的,它們安全性的激活都是通過(guò)SMC命令來(lái)完成的,且發(fā)生在A(yíng)KA之后。網(wǎng)絡(luò)端對(duì)終端的非接入層和接入層的激活順序是先激活非接入層的安全性,再激活接入層的安全性。
2.4.1非接入層的安全模式過(guò)程
由圖5可知,非接入層的安全模式過(guò)程是由網(wǎng)絡(luò)發(fā)起的,MME發(fā)送的SMC消息是被非接入層完整性保護(hù)了的,但是沒(méi)有被加密。參考文獻(xiàn)[4]指出UE在收到SMC消息后,首先要比對(duì)消息中的UE security capabilities(安全性能力)是否和自己發(fā)送給網(wǎng)絡(luò)以觸發(fā)SMC過(guò)程的UE security capabilities相同,以確定UE security capabilities未被更改,如果相同,表示可以接受,沒(méi)有受到攻擊,nonceMME和nonceUE用于切換時(shí)的安全性激活,本文就不再贅述;其次,進(jìn)行NAS層密鑰的生成,包括KNASenc和KNASint, 前者為NAS加密密鑰,后者為NAS完整性保護(hù)密鑰;接著,UE將根據(jù)新產(chǎn)生的完整性保護(hù)密鑰和算法對(duì)收到的SMC消息進(jìn)行完整性校驗(yàn),校驗(yàn)通過(guò),表示該SMC可以被接受,此安全通道可用;最后,UE發(fā)出安全模式完成消息給MME,所有的NAS信令消息都將進(jìn)行加密和完整性保護(hù)。如果安全模式命令的校驗(yàn)沒(méi)通過(guò)的話(huà),將發(fā)送安全模式拒絕命令給MME,UE退出連接。如圖5中的第3步。
[attach]220396[/attach]
2.4.2接入層的安全模式過(guò)程
在非接入層的安全性激活后,緊接著將要進(jìn)行接入層的安全性激活,采用AS SMC命令來(lái)實(shí)現(xiàn)的。如圖6所示,網(wǎng)絡(luò)端通過(guò)已經(jīng)存在的KASME來(lái)生成KeNB ,利用KeNB生成完整性保護(hù)密鑰對(duì)AS SMC這條消息進(jìn)行完整性保護(hù),并生成一個(gè)信息確認(rèn)碼MAC-I;之后,將AS SMC傳給ME。參考文獻(xiàn)[5]指出ME首先利用密鑰KASME來(lái)生成KeNB , 之后利用收到的算法和KeNB通過(guò)KDF生成完整性保護(hù)密鑰,然后對(duì)此AS SMC信息進(jìn)行完整性校驗(yàn),具體是通過(guò)生成一個(gè)X-MAC,如果X-MAC和MAC-I相匹配的話(huà),通過(guò)校驗(yàn),之后進(jìn)一步生成加密密鑰,并發(fā)送AS SMC完成消息給eNB,此條消息也要進(jìn)行加密和完整性保護(hù),也要生成一個(gè)信息確認(rèn)碼MAC-I,具體用途已介紹,此步驟非常重要,假如校驗(yàn)不通過(guò),UE會(huì)向eNB返回一條AS Mode Failure消息,表明此通道不安全,UE是要退出連接的。eNB對(duì)AS SMC完成消息進(jìn)行完整性校驗(yàn)通過(guò)后,此時(shí)接入層的安全性就激活了,可以開(kāi)始傳輸數(shù)據(jù)了。
[attach]220397[/attach]
3LTE/SAE安全體系終端的具體實(shí)現(xiàn)
3.1終端密鑰的獲取
在非接入層和接入層的安全性激活之后,將會(huì)進(jìn)一步生成各自機(jī)密性和完整性保護(hù)所需要的密鑰。
圖7中的第(1)步在圖3中已經(jīng)介紹過(guò),主要是用于生成密鑰KASME ,非接入層直接用此密鑰獲取非接入層信令所用的完整性密鑰和加解密密鑰,如圖中第(2)步所述。接入層還要首先通過(guò)此密鑰再進(jìn)一步獲取控制平面所需要的完整性和加解密密鑰KRRCint、KRRCenc 以及用戶(hù)平面所需的加解密密鑰KUpenc。
[attach]220398[/attach]
3.2終端數(shù)據(jù)的安全性實(shí)現(xiàn)
前面已經(jīng)介紹過(guò)LTE終端非接入層和接入層都要對(duì)數(shù)據(jù)進(jìn)行機(jī)密性和完整性保護(hù)。兩者相似,本文僅介紹終端接入層的安全性實(shí)現(xiàn)。
LTE終端協(xié)議棧接入層的安全性的具體功能實(shí)現(xiàn)是在PDCP(packet data convergence protocol,分組數(shù)據(jù)匯聚協(xié)議)中完成的。參考文獻(xiàn)[6]指出PDCP在接入層協(xié)議棧中的位置位于RLC(radio link control,無(wú)線(xiàn)鏈路控制)層之上,受RRC(radio resource control,無(wú)線(xiàn)資源控制)的調(diào)度和控制,將來(lái)自上層的用戶(hù)數(shù)據(jù)傳輸?shù)絉LC子層。PDCP機(jī)密性的對(duì)象是C(control,控制)平面的信令以及U(user,用戶(hù))平面數(shù)據(jù)部分,完整性保護(hù)的對(duì)象僅針對(duì)C平面的信令部分,完整性保護(hù)在加密之前進(jìn)行。
LTE中數(shù)據(jù)的安全性都是基于算法來(lái)實(shí)現(xiàn)的,機(jī)密性和完整性保護(hù)的核心算法有兩種:AES(advanced encryption standard,高級(jí)加密標(biāo)準(zhǔn))和SNOW 3G算法。參考文獻(xiàn)[7]指出AES采用的是128位塊加密,參考文獻(xiàn)[8]指出SNOW 3G采用的128位流加密。下面將分別介紹數(shù)據(jù)機(jī)密性和完整性的具體實(shí)現(xiàn)。
3.2.1終端數(shù)據(jù)的機(jī)密性實(shí)現(xiàn)
機(jī)密性均采用AES或SNOW 3G算法,具體采用哪種算法是由RRC配給PDCP,這兩種算法的輸入密鑰均采用128位。具體如圖8所示。
[attach]220399[/attach]
如圖8所示,算法的輸入是IV和KEY,輸出為Q[]。IV由4個(gè)參數(shù)組成:32位COUNT(PDCP的數(shù)據(jù)計(jì)數(shù)器)、5位的BEARER(PDCP的RB標(biāo)識(shí))、1位的DIRECTION(上行或下行數(shù)據(jù)的方向位)和LENGTH(表示所加解密數(shù)據(jù)的長(zhǎng)度)。KEY是前面所講的密鑰KRRCenc或KUpenc 。Q[]是輸出的密鑰流塊。參考文獻(xiàn)[2]指出加密過(guò)程:圖8產(chǎn)生的密鑰流塊與明文塊異或后便產(chǎn)生了密文塊,加密過(guò)程完成。解密過(guò)程與加密過(guò)程相反即可。
3.2.2終端數(shù)據(jù)的完整性實(shí)現(xiàn)
完整性也采用AES或SNOW 3G算法,具體采用哪種算法也是由RRC配給PDCP,這兩種算法的輸入密鑰均采用128位。具體如圖9所示。
[attach]220400[/attach]
如圖9所示,算法的輸入是IV和KEY。IV也由4個(gè)參數(shù)構(gòu)成,COUNT、BEARER和DIRECTION這3個(gè)參數(shù)與機(jī)密性所用的參數(shù)相同, MESSAGE代表的是實(shí)際進(jìn)行完整性保護(hù)或校驗(yàn)的數(shù)據(jù);KEY是前面所提到的完整性密鑰KRRCenc。參考文獻(xiàn)[2]指出完整性保護(hù)過(guò)程:對(duì)輸入流IV和 KEY的處理后得到MAC-I。完整性校驗(yàn)過(guò)程:對(duì)輸入流IV和KEY的處理后得到X-MAC。MAC-I和X-MAC如果匹配的話(huà),表示完整性校驗(yàn)成功。
4結(jié)束語(yǔ)
LTE系統(tǒng)提供了較高的數(shù)據(jù)速率,對(duì)于這些業(yè)務(wù),尤其是某些重要的數(shù)據(jù)業(yè)務(wù),將對(duì)網(wǎng)絡(luò)的安全性提出更高的要求,因此對(duì)LTE/SAE安全架構(gòu)和安全機(jī)制的設(shè)計(jì)顯得至關(guān)重要。目前3GPP的安全性標(biāo)準(zhǔn)還沒(méi)有穩(wěn)定版本,還在不斷地更新中,我們將會(huì)在今后的研究和開(kāi)發(fā)工作中不斷地完善LTE/SAE的安全功能。