眾所周知,CDMA2000沒有4G技術標準,而是無線側通過把現有HRPD網絡升級為eHRPD網絡,接入到LTE/4G的核心網EPC, 從而實現面向4G的過渡。
這個過渡方案至少存在兩個重要原則:一是保障CDMA2000用戶和業務面向LTE/EPC網絡的平滑演進和互操作;二是過渡方案容易實現,改動盡量少。
在3GPP2規范定義的eHRPD過渡技術中,無線側基于HRPD,只是在上層(或NAS層)進行了基于EPC網絡特征的適配定義,試圖讓終端,接入網,以及核心網通過軟件改動實現到LTE/EPC的互操作,從而用戶不管在CDMA2000網絡,還是在LTE網絡,都能實現統一認證,統一計費和用戶管理,并由EPC網絡統一提供服務。另外,這一過渡方案假定終端已經支持USIM卡,或者具備AKA方式鑒權能力,實現了更加安全的鑒權方式,并與LTE的鑒權方式保持一致。
下圖給出了CDMA2000與LTE/EPC的互操作網絡架構。同時示意了接入三種網絡即CDMA2000現網,CDMA2000 eHRPD過渡網絡,以及LTE網絡進行用戶鑒權時各自網絡節點的構成。

需要說明的是,如圖所示的網絡結構中,考慮到eHRPD的過渡周期內,CDMA2000現網可能較長時間仍然存在,如何讓這些現網用戶在不換卡的情況下支持eHRPD/EPC接入,是一個需要解決的重要問題。
一般來說,在接入3GPP網絡時終端需支持USIM鑒權方式。其中,AKA執行函數,root key,連同終端用戶標示等都存儲在USIM卡中并在USIM實現算法。 不支持USIM的終端,AKA執行函數在遵循MILENAGE算法框架定義的基礎上,由終端模塊(ME)實現,其中終端模塊需要訪問SIM卡模塊以獲取root key。eHRPD/EPC接入的鑒權也遵循這些原則。
在eHRPD/EPC中,鑒權采用EAP-AKA’方式,可參見RFC5448定義,這里面有幾個關鍵方面:
AKA: 要求支持AKA鑒權框架(參見3GPP TS33.102),包括認證交換,同步等。
AKA執行函數:要求支持AKA所需的執行函數(可參見3GPP TS35.206)。
根密鑰(root key):鑒權雙方需共享root key。
終端標示UE ID: 鑒權雙方需存儲該標示,用于進行終端用戶身份標示;也可支持臨時偽標示,尤其是用于快速重鑒權。
安全應用:產生MSK用于鏈路層安全保護。
模塊劃分:用于算法本身及參數的實現和存儲的模塊,通常UE劃分為ME和SIM兩個模塊。
另一方面,CDMA現卡(C-SIM卡或R-UIM卡)支持的是CAVE和MD5兩種安全算法,基于CAVE和MD5的鑒權方式均為網絡向終端的單向鑒權,實現簡單,但安全性相對較差。盡管AKA的執行函數可以遵循MILENAGE方法定義并通過終端模塊實現,但因為不能直接訪問SIM卡以獲取root key,故只能獲取CAVE和MD5基于root key計算后的結果。
由此可見,鑒權方式的不同是用戶使用eHRPD時需要換卡的關鍵因素,而針對CDMA卡的現有認證算法,又不能滿足AKA雙向鑒權算法的應用需求。因此,需要設計變通方式以實現AKA鑒權(本文統稱為CDMA-AKA鑒權),以支持用戶不換卡的情況下接入eHRPD/EPC網絡。下文對CDMA-AKA鑒權方案進行簡單描述和分析。
針對CAVE的AKA鑒權算法(或稱為CAVE-AKA), 3GPP2在IMS項目組中有相應研究,可參見3GPP2 S.S0127。該CAVE-AKA算法通過使用RAND,進行CAVE運算,來產生AKA KEY。更準確地說,規范使用的是雙重RAND, 其中一個RAND(或叫做RANDM),通過AKA AUTN和ANTS進行隱藏,避免被中間節點截取。核心算法包括:
AKA_KEY = 128 MSBs of SHA-256(KEYSM|KEYSN)
KEYSN = SMEKEY|CDMAPLCM|AUTHR
KEYSM = SMEKEY|CDMAPLCM|AUTHRM
其中KEYSN,KEYSM分別通過兩個RAND由RUN CAVE產生。初始RANDM通過AKA同步過程的AUTS隱藏傳遞給對端,過程中的RANDM通過AUTN隱藏進行傳遞。
下圖為規范中設計的AKA認證交換中AUTN及RAND的格式,以及同步傳遞RANDM中AUTS的格式

同樣的道理,針對CDMA卡的現有MD5鑒權方式,也需要通過變通方式實現AKA(或稱作MD5-AKA),核心問題仍然是產生AKA KEY, 例如:
AKA_KEY = 128 MSBs of SHA-256(KEYSM|KEYSN)
KEYSN = FUNCTION1(MD5(RAND))
KEYSM = FUNCTION2(MD5(RANDM))
其中KEYSN,KEYSM分別通過兩個RAND由RUN MD5產生。初始RANDM通過AKA同步過程的AUTS隱藏傳遞給對端,過程中的RANDM通過AUTN隱藏進行傳遞。
現在,我們對上述所設計的CDMA-AKA鑒權算法,討論如何具體應用到CDMA現網。首先分析和設計其工作流程,包括AKA認證交換過程,以及RANDM和SQN同步過程。
以下是AKA認證交換過程。

以下是AKA同步過程,用于同步RANDM和SQN.

根據本文所述的CDMA-AKA鑒權算法和主要流程,下面分析對CDMA現網各節點的影響,包括新功能需求和改造需求。 這些節點包括:終端UE, 網關設備HSGW, 3GPP2 AAA, HLR。
注明:這里的新功能僅包括CDMA現網和eHRPD規范要求以外的鑒權相關功能。
對于終端UE卡模塊的功能需求:
利用原有的CDMA鑒權算法,無其他需求,不需要換卡
對于終端UE的ME模塊的功能需求:
支持CDMA-AKA認證交換過程
計算AKA KEY,并鑒權網絡
ME產生和保存RANDM,計算并保存KEYSM
檢驗RANDM和SQN的一致性,并進行同步
對HSGW的功能需求:
支持EAP承載的CDMA-AKA消息中轉,無其他影響
對3GPP2 AAA的功能需求:
支持CDMA-AKA認證交換過程
能夠計算AKA KEY, 產生AKA Vector,并鑒權終端
支持CDMA-AKA的RANDM和SQN同步過程
保存同步后的RANDM和SQN, 保存KEYSM
支持與HLR交互,獲取RAND相關的計算結果
對HLR的功能需求:
無改動
CDMA現網節點的改造要求要點:
終端不需換卡。
終端模塊實現本文所述的CDMA-AKA相關算法和流程,難度不大。
HSGW只需中轉EAP承載的CDMA-AKA消息,改動極小。
保持現網HLR能力,無改動。
3GPP2 AAA需支持上述CDMA-AKA相關算法和基于該算法的EAP-AKA‘流程,難度不大。但需要考慮該3GPP2 AAA與HSS的交互,以獲取eHRPD呼叫相關的簽約數據。
總之,基于CDMA現卡改造設計的CDMA-AKA鑒權方案,用于現卡終端,不需換卡,終端通過軟件等升級,可以直接接入EPC核心網絡,實現統一鑒權和用戶管理,實現統一EPC業務使用。方案設計簡潔,改造較少,易于實現。
主要參考規范:
3GPP2 X.S0057: E-UTRAN eHRPD interworking
3GPP2 S.S0127: CAVE base IMS security
3GPP TS33.102: Security architecture
3GPP TS33.402: SAE, Security aspects for non-3GPP
3GPP TS29.273: EPS AAA interface
3GPP TS35.206: MILENAGE algorithm sets
IETF RFC4187:EAP-AKA
IETF RFC5448: EAP-AKA’
巫長征(march.wu@synertone.net): 曾在UT 斯達康深圳研發中心工作10年,主要從事WCDMA/CDMA2000/LTE 分組核心網研發和系統設計工作,并于2010年隨該產品線轉入深圳協同信聯通信技術公司(www.synertone.net),任系統工程和架構設計總監.