周俊超
?。ㄖ信d通訊南京研發中心 無線規劃系統部,江蘇 南京 210012)
摘要:用戶經WLAN網絡以非授信的模式附著到EPC網絡時,如果終端沒有或者無法獲取用戶的SIM信息,則按照3GPP標準定義的認證方法將無法完成用戶身份認證,從而不能附著到EPC網絡。本文為了解決此問題,研究并應用了一種基于證書的認證方法EAPTLS,并給出了這種認證方法的技術原理和流程說明。EAPTLS認證方法已經成功部署在了某運營商的EPC網絡中,運營結果表明本文所研究的認證方法作為對標準認證方法的完善和補充是行之有效的。
關鍵詞:WLAN網絡;EPC;非授信;EAP-TLS;無卡終端
0引言
圖1運營商通過WLAN接入EPC的一種部署架構拓撲圖在3GPP的標準規范中,給出了非3GPP網絡(例如WLAN網絡)可以以授信的模式或者非授信的模式接入4G移動通信網絡的EPC(Evolved Packet Core,演進的分組核心網)中,標準推薦的組網架構以及接口、參考點等可參考文獻[1]。在實際工程部署中,運營商通過WLAN接入EPC的一種部署架構如圖1所示。
UE(User Equipment,終端)通過WLAN(Wireless LAN,無線局域網)采用非授信方式接入EPC網絡,通過PDN GW(Packet Data Network GateWay,分組數據網關)接入IMS(IP Multimedia System,IP多媒體系統)網絡,完成基于IMS的VoWiFi(Voice over WiFi,基于WiFi的電話)等業務。
但由于原生支持非授信S2b接口模式接入EPC實現VoWiFi電話的終端很少,所以運營商選擇了通過軟件APP(Application,應用)方式來支持VoWiFi。
軟件APP方式可以應用在無SIM(Subscriber Identity Module,用戶身份標示模塊)的終端上(比如PAD、PC等),或者原生不支持VoWiFi業務終端上。但這種方式由于權限(軟件APP無讀取SIM鑒權信息)和系統限制的原因(部分Andriod系統版本沒有提供讀取SIM的接口),軟件APP無法獲取SIM鑒權信息,導致終端無法執行3GPP標準規范定義的EAPAKA[23]鑒權過程。這類終端在本文統一稱為無卡終端。
對于無卡終端,無法參照標準的3GPP規范為用戶提供基于EAPAKA的身份認證,終端也就無法接入到EPC中實現VoWiFi業務。為了解決這類無卡終端的接入認證問題,作為對標準規范的補充,本文研究并提出了一種基于證書的EAPTLS[4]認證方法,使無卡終端不需要依賴SIM信息就可以完成身份認證,接入到EPC中。
1關鍵技術介紹
1.1EAP
EAP[5](Extensible Authentication Protocol,擴展的鑒權協議)為可擴展身份驗證協議,是一系列驗證方式的集合,設計理念是滿足任何鏈路層的身份驗證需求,支持多種鏈路層認證方式。EAP協議是IEEE 802.1x認證機制的核心,它將實現細節交由附屬的EAP認證方法協議完成,如何選取EAP認證方法由認證系統特征決定。常見的認證方法有EAPTLS、EAPSIM[6]、EAPAKA、EAPAKA’[7]等。其中EAPSIM/EAPAKA/ EAPAKA’被3GPP采用,作為移動通信網絡中基于SIM的用戶身份認證方式。
1.2TLS/EAP-TLS
TLS[8](Transport Layer Security,安全傳輸層協議)用于在兩個通信應用程序之間提供保密性和數據完整性。該協議由兩層組成: TLS 記錄協議(TLS Record)和 TLS 握手協議(TLS Handshake)。
TLS記錄協議位于TLS握手協議的下面,在可靠的傳輸協議(如TCP/IP)上面。TLS記錄協議的一條記錄包含長度字段、描述字段和內容字段。TLS記錄協議處理數據的加密,即記錄協議得到要發送的消息之后,將數據分成易于處理的數據分組,進行數據壓縮處理(可選),計算數據分組的消息認證碼MAC,加密數據然后發送;接收到的消息首先被解密,然后校驗MAC值,解壓縮,重組,最后傳遞給協議的高層客戶。
TLS握手協議處理對等用戶的認證,在這一層使用了公共密鑰和證書,并協商算法和加密實際數據傳輸的密鑰,該過程在TLS記錄協議之上進行。TLS握手協議是TLS協議中最復雜的部分,它定義了10種消息,客戶端和服務器利用這10種消息相互認證,協商哈希函數和加密算法并相互提供產生加密密鑰的機密數據。TLS記錄協議會在加密算法中用到這些加密密鑰,從而提供數據保密性和一致性保護。
EAPTLS為基于EAP承載的TLS認證協議。EAP消息是載體,TLS是具體的認證方法。EAP-TLS協議是基于證書的用戶身份驗證方法。在使用時,需要在認證客戶端(即終端)中部署證書鏈、用戶證書和私鑰文件,認證服務器端需要部署證書鏈、認證服務器證書和私鑰文件。
2本文研究的無卡終端認證方法原理
在終端經WLAN以非授信模式接入到EPC時,為了便于說明本文所研究的接入認證過程與3GPP標準過程的改進和區別,首先對標準的接入認證過程進行簡單說明。3GPP標準定義的EAPAKA認證過程如圖2所示。
在終端與ePDG基于IKEv2協議(Internet Key Exchange version 2,Internet密鑰交換協議版本2)進行鑒權和安全隧道建立的過程中,會經ePDG(evolved Pacekt Data Gataway,演進的分組數據網關)與EPC網絡中的3GPP AAA和HSS交互,對用戶進行身份認證,此時所采用的認證方法就是標準的EAP-AKA認證。這個認證過程要求終端中必須有用戶的SIM信息,然后終端和EPC中的3GPP AAA和HSS基于相同的SIM信息,采用AKA(Authentication and Key Agreement,認證與密鑰協商協議)算法完成認證。
這種認證方法的優點是安全、可靠、用戶無感知,并基于用戶的SIM信息,因此在移動通信網絡中普遍使用,但正如同本文引言中所描述的那樣,對于無卡終端,由于沒有用戶的SIM信息,因此不能進行EAPAKA認證,終端無法接入EPC,限制了用戶的使用。針對這種應用場景,本文研究并提出了一種基于證書的校驗方式,即EAPTLS,來完成對用戶身份的認證。
采用EAPTLS之后的用戶認證過程示意圖如圖3所示。
相比圖2,圖3中最大的改進是用戶經ePDG與EPC網絡中的3GPP AAA和HSS交互時,采用的身份認證方法是基于證書的EAPTLS認證,其他流程并沒有變化。
采用EAPTLS認證方法時,無卡終端可以接入EPC的原理:(1)EAPTLS鑒權是基于證書的,不需要終端中圖3采用EAPTLS之后的用戶認證過程示意圖
有用戶的SIM信息,因此可以解決終端無SIM信息的缺陷;(2)對EPC網絡來說,如果用戶能夠接進來,則用戶至少要有移動通信網絡必需的IMSI(International Mobile Subscriber Identification Number,國際移動用戶識別碼)。因此,為了保證無卡終端在EPC網絡中有可識別的IMSI,基于證書的EAPTLS認證過程要求用戶在認證過程中用圖4無卡終端認證方法流程說明(下轉第90頁)戶標示部分必須包含有用戶的有效IMSI。例如EPC已經為用戶分配IMSI為:234150999999999,則無卡終端在用戶鑒權過程中,用戶標示部分可以為:T234150999999999@ epc.mnc015.mcc234.3gppnetwork.org,這里前綴T標示采用EAPTLS鑒權方法。需要注意的是,除了前綴外,用戶名的其他部分格式需要符合3GPP標準規范的規定,見參考文獻[9]。
3本文研究的無卡終端認證方法流程說明
本文研究的無卡終端認證方法的前提:無卡終端中已經部署證書鏈、用戶證書和私鑰文件,且無卡終端支持在認證過程中用戶標示部分攜帶有IMSI;EPC中的3GPP AAA服務器已經部署證書鏈、認證服務器證書和私鑰文件。流程如圖4所示。
步驟1:無卡終端向ePDG發起初始附著;
步驟2:ePDG向3GPP AAA發送DER初始接入消息,進行鑒權和授權,3GPP AAA收到消息之后,檢查EAPPayload字段攜帶的內容,其中用戶標示參數中包含有用戶的IMSI信息,且前綴為T,判定為EAPTLS接入;
步驟3:3GPP AAA返回DEA消息(TLSStart),開始進行EAPTLS交互;
步驟4:ePDG根據客戶端發送的EAP消息,發送DER握手消息(TLSClientHello)到3GPP AAA;
步驟5:3GPP AAA返回DEA消息(TLSServerHello)給ePDG,返回服務端保存的證書信息;
步驟6:ePDG把收到的服務端證書信息透傳給終端,終端對服務端證書進行認證通過之后,把自己的證書信息傳給ePDG,ePDG發送DER消息(TLS Certificate)給3GPP AAA;
步驟7:3GPP AAA收到DER消息(TLS Certificate)之后,校驗終端證書的簽名、有效期等,校驗通過之后,發送握手完成DEA消息(ChangeCipherSpec、TLS finished)給ePDG;
步驟8:ePDG再次發送DER消息,確認收到DEA的握手消息,3GPP AAA收到確認消息之后發送MAR消息(消息中攜帶有用戶的IMSI)到EPC HSS獲取鑒權數據、發送SAR消息到EPC HSS獲取用戶數據,本端授權檢查通過之后,返回DEA成功消息,表示ePDG和3GPP AAA之間的鑒權和授權完成,同時向EPC HSS發送SAR注冊消息,通知EPC HSS用步驟9:ePDG發送PMIP建立流程到PDN GW,PGW發送AAR消息到3GPP AAA建立PDN連接,3GPP AAA發送SAR的PGW更新消息到EPC HSS更新PDN GW連接使用的PGW地址,交互完成;
步驟10:無卡終端采用EAPTLS認證方法初始附著到EPC成功完成。
4總結
本文所研究的認證方法作為對標準認證方法的完善和擴展,在某運營商的4G網絡中得到了部署和應用。首先對使用無卡終端或者軟終端(APP)的用戶發布證書文件,用戶在終端上進行裝載,然后此類用戶通過WLAN以非授信模式附著到4G的EPC網絡時,就會啟用基于證書的EAPTLS方式與EPC交互進行身份識別和認證,并成功附著到EPC網絡。當然,對無卡終端的認證方式除了EAPTLS外,還有EAPPEAP、EAPPEAK等其他認證方法,這些可以作為以后研究的方向。
參考文獻
[1] 3GPP. TS 23.402 V8.9.0 Architecture enhancements for non-3GPP accesses(Release 8)[S]. 2010.
?。?] 3GPP. TS 29.273 V10.1.0 3GPP EPS AAA interfaces (Release 10) [S]. 2010.
[3] ARKKO J, HAVERINEN H.RFC4187 extensible authentication protocol method for 3rd generation authentication and key agreement (EAPAKA) [S]. 2006.
[4] SIMON D, ABOBA B, HURST R. RFC 5216 the EAPTLS authentication protocol[S]. 2008.
?。?] ABOBA B, BLUNK L, VOLLBRECHT J,et al. RFC 3748 extensible authentication protocol (EAP) [S]. 2004.
?。?] HAVERINEN H, SALOWEY J. RFC 4186 extensible authentication protocol method for global system for mobile communications (GSM) subscriber identity modules (EAPSIM)[S]. 2006.
[7] ARKKO J, LEHTOVIRTA V, ERONEN P. RFC 5448
improved extensible authentication protocol method for 3rd generation authentication and key agreement (EAPAKA') [S]. 2009.
?。?] DIERKS T, RESCORLA E. RFC 4346 the transport layer security (TLS) protocol version 1.1 [S] . 2006.
?。?] 3GPP. TS 23.003 V10.2.0 Numbering, addressing and identification (Release 10) [S]. 2011.