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