5G注册流程详解(6)

606 阅读4分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

相关文章会在公众号同步更新。公众号:5G通信大家学

持续更新的相关5G内容都是直接根据3GPP整理,保证更新内容的准确性,避免通过二手,甚至多手的资料,以讹传讹误导网友。

///////////

1.1.2.8 AUSF选择

在AMF从UE得到SUCI或者从old AMF得到SUPI后,通过NRF执行服务发现,选择AUSF执行鉴权流程。

1.1.2.9 Authentication/Security流程。

1.1.2.9.0 准备知识

该步骤为UE的5G鉴权流程,本文以目前使用的5G AKA鉴权方式为例介绍。5G AKA相比4G增加了归属网络的鉴权功能。4G的鉴权由MME完成,而5G的鉴权由AMF和AUSF共同完成,并且5G的鉴权向量不支持预取,也不支持一次获取多组鉴权向量。

归属网络的AUSF提供鉴权过程的锚点密钥(anchor key)KSEAF,它是由加密保存在AUSF中的中间密钥Kausf计算得到的。5G中,锚点密钥和和服务网络(Serving Network)进行绑定,向UE提供隐式的服务网络认证。绑定的方式是将5G SN名称作为密钥推导的输入参数。

1.1.2.9.0.1 5G SNN(Serving Network Name)

5G SNN 的作用:

·           用于推导锚点密钥,作为AUSF推导Kseaf的输入参数,及作为UE推导RES和XRES的输入参数;

·           将锚点密钥和服务网络绑定;

·           通过将服务码(Service code)设置为“5G”来保证锚点密钥用于5G核心网和UE之间的鉴权认证。

5G SNN 的构成:

SNN最长1020个字节,由两部分构成:SNN-service-code和SNN-network-identifier,中间用冒号“:”进行连接。

由于在认证和鉴权过程中,安全密钥需要在UE和SEAF(位于AMF中)中分别推导,因此,SNN作为密钥推导的输入参数,需要在UE和SEAF分别进行构造。

·           SNN-service-code:固定为“5G”。在通过non-3GPP接入时,也用于区分接入网络,作为Access Network Identity使用;

·           SNN-network-identifier:用于识别当前的移动网络。根据TS 24.501章节9.12.1规定,对于PLMN网络,该值为:mncXXX.mccXXX.3gppnetwork.org(都为小写字母)。对应中国移动的5G网络SNN-network-identifier为:mnc000.mcc460.3gppnetwork.org。

UE侧根据RAT、USIM卡中的信息及小区广播的PLMN等信息可以很容易推导出SNN,进而用于安全密钥的推导;而AMF侧根据配置信息也可以构造出SNN,用于鉴权和认证。

1.1.2.9.0.2 鉴权流程的触发条件

通常,与UE建立信令连接的流程都可以触发鉴权流程。我们常见到的场景为:

·           UE使用SUCI发起注册流程;

·           AMF没有UE的有效上下文;

·           Registration Request消息没有被完整性保护;

·           UE携带5G-GUTI注册,但是old AMF对注册请求消息执行完整性检查失败;

1.1.2.9.1 鉴权流程

本部分的鉴权流程分成三个部分:

A. 鉴权流程(请求阶段)

B. 鉴权流程(响应阶段)

C. 鉴权流程(鉴权确认和注册绑定部分)

1.1.2.9.1.1 鉴权流程(请求阶段)

图片.png

(1 )Nausf_UEAuthentication_Authenticate Request****

消息方向:AMF/SEAF -> AUSF

HTTP方法:POST

在整体注册流程的第8步中,AMF根据从UE得到的SUCI或者从old AMF得到的SUPI,选择对该UE进行鉴权的AUSF,构造Nausf_UEAuthentication_Authenticate Request消息并发送给该AUSF。

该请求的资源URI为:

{apiRoot}/nausf-auth/v1/ue-authentications

携带的参数类型为:AuthenticationInfo,具体的字段信息如下图,我们常见到的IE为SUPI或者SUCI,及SNN:

图片.png

只要AMF得到了UE的SUPI,在Nausf_UEAuthentication_Authenticate Request消息中包括的都是SUPI,除非AMF不知道UE的SUPI,才会在该消息中包含SUCI。

AUSF收到请求消息后,会检查消息中的Serving Network Name是否得到了授权。如果检查失败,则返回:403 Forbidden,携带的原因值为:SERVING_NETWORK_NOT_AUTHORIZED。

(2 )Nudm_UEAuthentication_Get Request

HTTP方法:POST

消息方向:AUSF -> UDM

该请求的资源URI为:

{apiRoot}/nudm-ueau/v1/{supiOrSuci}/security-information/ generate-auth-data

该消息用于AUSF请求UDM为UE选择一种鉴权方法,并且,如果本次鉴权需要鉴权向量,还会请求UDM计算新的鉴权向量。如果请求中包含的是SUCI,UDM收到该请求后,首先,SIDF将SUCI解密为SUPI,之后根据SUPI为UE选择鉴权方式。目前,5G使用的鉴权方式有两种:EAP-AKA’ 和5G AKA。

请求消息AuthenticationInfoRequest的内容如下图:

图片.png

重点信息介绍:

  • ResynchronizationInfo

  该字段包含两项内容:rand和auts。在鉴权重同步过程中,AUTS由UE计算得到。