本文概述了初始认证和认证算法选择EAP-AKA ‘进程消息相互认证成功进程5G AKA进程
概要
thepurposeoftheprimaryauthenticationandkeyagreementproceduresistoenablemutualauthenticationbetweeeentheueandthetworkandprovide dbetweentheueandtheservingnetworkinsubsequentsecurityprocedures。
此过程的目的是在终端注册时进行终端和网络之间的双向认证,并生成随后必须使用的安全密钥。 目前5G系统有EAP-aka’和5G AKA两种认证方法,终端需要支持这两种方法。
选择初始认证和认证算法
基于SEAF策略,SEAF可以在与UE建立信令连接的任何过程期间向UE发起认证。 UE在注册请求中使用SUCI或5G-GUTI。 SEAF每次启动认证时,都会通过向ausf发送Nausf_UEAuthentication _ authenticate request消息来调用nausf _ ueauthentication服务。 收到nausf _ ueauthentication _ authenticate request消息后,ausf通过将服务网络名称与预期的服务网络名称进行比较, 必须检查服务网络中的请求SEAF是否可以使用nausf _ ueauthentication _ authentic ation _ auauthentic aaation ASF收到的服务网络名称如果不正确的服务网络使用服务网络名称,AUSF必须用nausf _ ueauthentication _ authenticate响应作为“不正确的服务网络”进行响应。 如果在收到NUDM_UEAuthentication_Get请求后收到SUCI,udm将调用SIDF。 在UDM可以处理请求之前,SIDF必须隐藏SUCI才能获取SUPI。 UDM/ARPF必须基于SUPI选择认证方法。 EAP-aka’进程消息交互
如果验证过程成功完成,并且需要在AMF之后启动SMC过程,则EAP-success message和ngKSI将在随后的SMC消息中携带。 如果验证过程成功完成,但AMF随后未启动SMC过程,则EAP-success message和ngKSI将通过验证结果通知UE。 认证失败时,网络通知UE的EAP-failure message为认证结果消息、认证认证拒绝消息或初始化5 GMM流程认证成功流程
AUSF网元向UDM/ARPF网元发送认证请求。 UDM/ARPF网元根据用户信息和访问信息选择EAP-aka’方法,生成认证向量,设置AMF separation bit=1,计算CK’和ik’。 ARPF将认证向量发送到AUSF。 AUSF发送EAP-request/aka’- challenge消息,并携带AT_RAND、AT_AUTN、AT_KDF、AT_KDF_INPUT、AT_MAC等属性现在,将AT_KDF_INPUT属性设置为SNN。 AT_MAC是根据CK’和ik’计算的。 ME希望收到EAP-request/aka’- challenge消息,挑战USIM卡。 USIM挑战成功后,回到CK、IK和RES给ME。 ME用KDF算法计算CK’和ik’。 ME发送EAP-response/aka’- challenge消息,并具有AT_RES和AT_MAC属性。 AUSF收到EAP-response/aka’- challenge消息后,将AT_RES与AT_MAC进行比较,如果比较成功,则认证成功。 ASF向Eap -请求/Aka’-通告通知成功。 UE收到EAP-request/aka’- notification后,必须返回EAP-response/aka’- notification。 最后,AUSF向UE发送EAP-Success。 生成KSEAF并将其发送到SEAF。 UE收到EAP-Success后,通过CK’和ik’计算得到EMSK,KAUSF(kausf是EMSK的前256bits ),再通过kausf计算得到KSEAF,从而得到EAP-Success消息的absage 同时,以ngKSI为索引生成partial native5gnassecuritycontext (包括计算的KAMF ),并保存在ME的内存中。 5G AKA工艺
AUSF网元向UDM/ARPF网元发送认证请求。 UDM/ARPF网元根据用户信息和访问信息选择5G-AKA方法,生成认证向量,设置AMF separation bit=1,用KDF算法计算XRES和KAUSF。 ARPF向AUSF发送认证向量(RAND、AUTN、XRES、KAUSF )。 AUSF根据XRES计算hx RES:hx RES *=sha-256 (xres *|| rand )的高度128bits,根据KDF计算KSEAF。 将认证向量(RAND、AUTN、HXRES*、KSEAF )发送到SEAF。 SEAF向UE发送认证请求消息。 此消息包括5G挑战的RAND、AUTN和ngKSI。 ME向USIM要求5G认证挑战。 USIM执行AUTN认证,AUTN认证成功,返回UE挑战成功,携带CK、IK、RES。 ME计算RES* (计算方法和网络的XRES计算)。 响应网络认证响应(RES )。 另外,(RAND,RES ) )在本地保存,防止网络在发送认证请求时重复挑战,引起同步问题。 同时ME需要计算KAUSF和KSEAF。 SEAF收到认证响应后,根据RES计算HRES (计算方法HXRES* ),将HRES与HXRES进行比较,如果相同,则认证成功。 UE在接收到AUTH REQ消息时,如果判断为接收到的消息所具有的RAND与所保存的RAND相同,则不需要再次用该RAND向USIM请求5G认证挑战,而是返回与RAND对应的本地保存的RES