LTE各场景下的密钥处理
鑒權過程
MME把IMSI、SNID(服務網絡標識)、Network Type(服務網絡類型)傳給HSS,HSS生成鑒權向量:{RAND(隨機數)、AUTN(鑒權令牌)、XRES、KASMEK_{ASME}KASME?}并發送給MME。
MME把{AUTN、RAND、KSIASMEKSI_{ASME}KSIASME?}通過鑒權請求消息發送給UE。UE首先核實收到的AUTN的AMF(鑒權管理域),驗證通過則生成RES,在此過程中,UE計算除了CK、IK,然后由KSIASMEKSI_{ASME}KSIASME?、SNID一起通過KDF計算出了KASMEK_{ASME}KASME?。
UE通過鑒權響應消息發送上一步中的RES給MME,MME檢驗RES與XRES是否一致,一致則鑒權成功。
AS層安全模式過程
MME通過KASMEK_{ASME}KASME?生成KeNBK_{eNB}KeNB?并把該值發送給eNB。eNB基于KeNBK_{eNB}KeNB?,根據選定的算法生成kRRCintk_{RRCint}kRRCint?、kRRCenck_{RRCenc}kRRCenc?、kUPenck_{UPenc}kUPenc?分別用于RRC消息加密、完保以及用戶面數據加密。然后,eNB對SMC消息進行完保,發送給UE。
UE用KASMEK_{ASME}KASME?生成KeNBK_{eNB}KeNB?,根據SMC指示的算法生成kRRCintk_{RRCint}kRRCint?、kRRCenck_{RRCenc}kRRCenc?、kUPenck_{UPenc}kUPenc?,并對SMC消息進行完整性校驗(生成X-MAC,與SMC攜帶的MAC-I作對比),若校驗通過,則發送完保并加密的SMC完成消息給eNB。
初始接入
KeNBK_{eNB}KeNB?與KASMEK_{ASME}KASME?以及{NH,NCC}對的關系如下圖所示:
初始建立時,KeNBK_{eNB}KeNB?直接由KASMEK_{ASME}KASME?導出,這個KeNBK_{eNB}KeNB?與NCC=0的虛擬NH相關聯,MME在初始連接建立時,計算NCC=1對應的NH,并保存{NH,NCC}對,但不將其發送給eNB。eNB收到初始建立請求,保存其中的KeNBK_{eNB}KeNB?,并將NCC設置為0,eNB此時不知道NH值。在UE側,此時使用NCC=0對應的NH及生成的KeNBK_{eNB}KeNB?,而推導NCC=1的相關參數在第一次切換時才執行。
eNB內切換
eNB使用目標小區的PCI、EARFCN-DL以及另一個參數來生成密鑰KeNB?K_{eNB}*KeNB??,其中的另一個參數按如下原則選擇:eNB保存有新的未使用的{HN,HCC}對時使用NH(垂直衍生方式),沒有未使用的{NH,NCC}對時使用當前的KeNBK_{eNB}KeNB?(水平衍生方式)。切換完成后,eNB把KeNB?K_{eNB}*KeNB??作為KeNBK_{eNB}KeNB?使用。
X2切換
源eNB通過垂直衍生方式(有未使用的{NH,NCC}對)或水平衍生方式(沒有為使用的{NH,NCC})來生成KeNB?K_{eNB}*KeNB??,并把{KeNB?K_{eNB}*KeNB??,NCC}發送給目標eNB,目標eNB把KeNB?K_{eNB}*KeNB??作為KeNBK_{eNB}KeNB?使用,并把NCC通過HandOver Command消息發送給UE。目標eNB完成與UE的切換過程后,發送S1 PATH SWITCH REQUEST消息給MME,MME給NCC加1,并計算NH,通過S1 PATH SWITCH ACKNOWLEDGE消息,把新的{NH,NCC}對發送給目標eNB,目標eNB可以保存下來供下次切換使用,也可以發起一次小區內切換立即使用。
S1切換
收到HANDOVER REQUIRED消息,MME給NCC加1,并計算新的NH。然后,MME通過HANDOVER REQUEST消息把新的{NH,NCC}對發送給目標eNB,目標eNB通過新的{NH,NCC}對,以及目標小區的PCI和EARFCN-DL計算出KeNBK_{eNB}KeNB?,并把NCC值通過HandOver Command消息發送給UE。
總結
以上是生活随笔為你收集整理的LTE各场景下的密钥处理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 5G PDCCH介绍
- 下一篇: LTE小区选择和重选