NR 5G 安全與祕鑰簡述

基本說明

適用於連接到5GC安全的NR:
1、對於用戶數據(DRB),加密提供用戶數據機密性,完整性保護提供用戶數據完整性;
2、對於RRC信令(SRB),加密提供信令數據機密性和完整性保護信令數據完整性;
注意: 除了始終配置完整性保護的RRC信令之外,可選地配置加密和完整性保護。 可以爲每個DRB配置加密和完整性保護,但是屬於用戶面安全執行信息指示需要UP完整性保護的PDU會話的所有DRB配置有完整性保護。
3、對於密鑰管理和數據處理,任何實體處理明文都應受到保護,免受物理攻擊並位於安全的環境中;
4、gNB(AS)密鑰以密碼方式與5GC(NAS)密鑰分開;
5、使用單獨的AS和NAS級別安全模式命令(SMC)過程;
6、序列號(COUNT)用作加密和完整性保護的輸入,並且給定的序列號必須僅對相同方向上的相同無線承載上的給定密鑰(除了相同的重傳)使用一次。

密鑰的組織和派生如下:
1、AMF的關鍵:

  • K_AMF 是來自K SEAF 的ME和SEAF衍生的密鑰。

2、NAS信令的密鑰:

  • K_NASint 是來自K_AMF 的ME和AMF導出的密鑰,其僅用於通過特定完整性算法保護NAS信令;
  • K_NASenc 是來自K_AMF 的ME和AMF導出的密鑰,其僅用於通過特定加密算法保護NAS信令。

3、gNB的關鍵:

  • K_GNB 是來自K_AMF 的ME和AMF衍生的密鑰。 當執行水平或垂直密鑰導出時,由ME和源gNB進一步導出K_GNB 。

4、UP流量的關鍵:

  • K_UPENC 是由ME和gNB從K GNB 導出的密鑰,其僅用於通過特定加密算法保護ME和gNB之間的UP業務;
  • K_UPint 是由ME和來自K的TF GNB 導出的密鑰,其僅用於利用特定完整性算法來保護ME和gNB之間的UP業務。

5、RRC信令的密鑰:

  • K_RRCint 是來自K GNB 的ME和gNB導出的密鑰,其僅用於利用特定完整性算法來保護RRC信令;
  • K_RRCenc 是由ME和來自K GNB 的gNB導出的密鑰,其僅用於利用特定加密算法保護RRC信令。

6、中級密鑰:

  • NH是由ME和AMF派生的密鑰,用於提供前向安全性。
  • K_GNB *是在執行水平或垂直密鑰導出時由ME和gNB導出的密鑰。

主認證啓用UE和網絡之間的相互認證,並提供稱爲的錨鍵K_SEAF 。 從K_SEAF 開始,在例如主認證或NAS密鑰重新鍵控和密鑰刷新事件期間創建K_AMF 。 基於K_AMF ,然後在運行成功的NAS SMC流程時導出K_NASint 和K_NASenc 。

祕鑰派生說明

每當需要在UE和gNB之間建立初始AS安全性上下文時,AMF和UE導出K GNB 和下一跳參數(NH)。 K_GNB 和NH衍生自K_AMF 。 NH鏈路計數器(NCC)與每個K_GNB 和NH參數相關聯。 每個K_GNB 與NCC相關聯,該NCC對應於從其得到的NH值。 在初始設置時,K_GNB 直接從K_AMF 導出,然後被認爲與NCC值等於零的虛擬NH參數相關聯。 在初始設置時,導出的NH值與NCC值1相關聯。 在切換上,將在UE和目標gNB之間使用的K GNB 的基礎(稱爲K_GNB *)來自當前活動的K_GNB 或來自NH參數。 如果K GNB *是從當前活動的K_GNB 導出的,則這被稱爲水平密鑰導出,並且向UE指示不增加的NCC。 如果K_GNB *是從NH參數導出的,則推導被稱爲垂直密鑰導出,並且向UE指示NCC增加。 最後,K_RRCint ,K_RRCenc ,K_UPint 和K_UPENC 是在衍生出新的K_GNB 後基於K_GNB 衍生的。 如下圖所示:
5G密鑰派生
利用這種密鑰推導,具有與UE共享的K_GNB 的知識的gNB不能計算在相同UE和先前gNB之間已經使用的任何先前的K_GNB ,因此提供後向安全性。 類似地,與UE共享的具有K_GNB 知識的gNB不能預測在n次或更多次切換之後將在相同UE和另一gNB之間使用的任何未來K GNB (因爲NH參數僅是可由UE和AMF計算)。
AS SMC過程用於RRC和UP安全算法協商和RRC安全激活。 當要在gNB中建立AS安全性上下文時,AMF將UE 5G安全性能力發送給gNB。 gNB從其配置的列表中選擇具有最高優先級的加密算法,並且還存在於UE 5G安全能力中。 gNB還從其配置的列表中選擇具有最高優先級的完整性算法,並且還存在於UE 5G安全性能力中。 所選擇的算法在AS SMC中向UE指示,並且該消息是完整性保護的。 在發送AS SMC消息之後,gNB處的RRC下行鏈路加密(加密)開始。 在從UE接收併成功驗證完整性保護的AS安全模式完成消息之後,gNB處的RRC上行鏈路解密(解密)開始。 UE通過驗證接收到的消息的完整性來驗證來自gNB的AS SMC消息的有效性。 在發送AS安全模式完成消息之後,UE處的RRC上行鏈路加密(加密)開始。 UE的RRC下行鏈路解密(解密)應在接收併成功驗證AS SMC消息之後開始。用於添加DRB的RRC連接重新配置過程應僅在作爲AS SMC過程的一部分激活RRC安全性之後執行。
完整性保護的DRB的最大支持數據速率是在NAS層指示的UE能力,具有64kbps的最小值和UE支持的最高數據速率的最大值。 在完整性檢查失敗的情況下(即,錯誤或丟失MAC-1),接收的PDCP實體應丟棄相關的PDU。
K_GNB ,K_RRC-ENC ,K_RRC-INT ,K_UP-ENC 和K_UP-INT 可以進行密鑰刷新,當PDCP COUNT即將重新使用時,可以由gNB啓動。相同的無線承載標識和相同的K_GNB 。 K_GNB ,K_RRC-ENC ,K_RRC-INT ,K_UP-ENC 和K_UP-INT 也可以進行密鑰重鍵,當5G AS安全上下文不同時,可以由AMF啓動。當前有效的一個應被激活。

安全終端點安全終端點

狀態變化和流動

作爲一般原理,在RRC_IDLE到RRC_CONNECTED轉換時,生成RRC保護密鑰和UP保護密鑰,同時假設用於NAS保護的密鑰以及更高層密鑰已經可用。 這些更高層密鑰可能已經由於AKA運行而建立,或者由於在切換或空閒模式移動期間從另一個AMF的傳輸而建立。
在RRC_CONNECTED到RRC_IDLE轉換時,gNB刪除它爲該UE存儲的密鑰,使得僅需要在AMF中維持空閒模式UE的狀
態信息。 還假設gNB不再存儲關於相應UE的狀態信息並從其存儲器中刪除當前密鑰。 特別是,在連接到空閒
轉換時:

  • gNB和UE刪除NH,K_RRCint ,K_RRCenc ,K_UPint 和K_UPENC 以及相關的NCC;
  • AMF和UE保持存儲K_AMF ,K_NASint 和K_NASenc 。

在具有垂直密鑰導出的切換上,NH在其被用作目標gNB中的K_GNB 之前進一步綁定到目標PCI及其頻率ARFCN-DL。
在具有水平密鑰導出的切換上,當前活動的K_GNB 在其被用作目標gNB中的K_GNB 之前進一步綁定到目標PCI及其頻率ARFCN-DL。
在gNB-CU內切換期間不需要改變AS安全算法。 如果UE在gNB-CU內切換期間沒有接收到新的AS安全算法的指示,則UE將繼續使用與切換之前相同的算法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章