首页 > 其他分享 >5G核心网之UE初始注册关键流程分析

5G核心网之UE初始注册关键流程分析

时间:2024-11-02 16:58:58浏览次数:1  
标签:AMF AUSF 网元 核心网 UE 5G 鉴权 UDM

1. UE初始注册的关键流程为:

(1)UE向AMF发送注册请求

(2)AMF查询NRF得到AUSF,获取归属地的AUSF可以发起鉴权请求

(3)获取到AUSF地址后,AMF请求AUSF对UE进行鉴权,AUSF通过UDM获取鉴权向量返回给AMF

(4)AMF对UE合法性进行鉴权,UE通过鉴权向量计算得到鉴权结果RES转发到AMF

(5)AMF首先站在拜访地对UE进行鉴权,鉴权通过后转发UE计算的鉴权结果到AUSF进行再次鉴权

(6)鉴权通过后,AMF对UE发起安全流程,用于NAS消息的加密和完整性保护(防止被篡改)

(7)AMF到UDM中做注册登记,完成UE和AMF的绑定,同时获取UE的签约数据

(8)AMF根据GPSI(手机号)向NRF查询,获取PCF地址

(9)得到PCF地址后,向PCF发送请求获取接入管理策略am-policy

(10)AMF向UE回复注册接受请求

1.1 UE发给AMF的注册请求(UE-ID为SUCI)

注册请求中的主要参数:

(1)Messagetype:Registrationrequest。这个是5GNAS消息类型。这里是注册请求。

(2)5GS registration type:initialregistration。表示因为开机发起的初始注册。和周期性注册、移动性注册更新、紧急注册这几种注册类型区分出来。

(3)Security header type取值为0,表示未加密的明文NAS消息。即5G-EA0算法。

(4)NAS keyset identifier:用于安全上下文的标识。本例取值为7。另外子参数TSC表示NAS安全上下文的类型。Native表示是5GAMF原生的安全上下文(而不是4-->5映射过来的)

(5)5GS mobile identity:5G用户标识。可以是5G-GUTI或者SUCI。这里是SUCI。SUCI包括了RoutingIndicator(本例为0,用于回归属地AUSF/UDM的寻址)、HomeNetworkpublickeyid(本例为3,表示UE加密SUCI用到的公钥标识)、Schemeoutput(是SUPI加密以后的密文输出)、ProtectionschemeId(取值为1表示采用ECIESprofileA加密算法,中文叫椭圆曲线加密算法)。

(6)UE security capability:UE所支持的加密和完整性保护算法。用于和AMF的算法协商,取交集。

1.2 AMF查NRF得到AUSF

 

AMF根据UE注册请求中提供的Routing Indicator查NRF,得到归属地AUSF。这样可以发起鉴权请求。AMF调用NRF的Discovery服务,发起AUSF的查询。用的是HTTP Get方法。但Get方法是不允许通过JSON来封装参数的。只能把参数部分放在request uri里,多个参数用&分隔。在Get请求中携带了多个参数。包括:

(1)service-names=nausf-auth。我要选择的网元是AUSF,并支持AUTH这个服务。

(2)requester-nf-type=AMF。请求者也就是我是谁?我是AMF。

(3)routing-indicator=0。这就是查询条件。拿RI来换AUSF的nfprofile(网元档案)。

 

NRF返回200 OK,包括了AUSF的nf profile(寻址信息和能力信息),主要参数有:

 

(1)validity Period:结果的有效期,这里是180秒。

 

(2)nf Instances:网元实例名。每个实例就代表一个活的网元,通常是uuid格式。

 

(3)nf Type:网元类型,这里返回AUSF。

 

(4)nf Status: REGISTERED。表示在NRF中的注册状态。这里是已注册。

 

(5)plmnList:目标网元支持的PLMN列表。-capacity:AUSF的静态容量。

 

(6)sNssais:AUSF所支持的切片。

(7)FQDN:AUSF的域名

(8)priority:AUSF优先级。

 

(7)nf Services:AUSF所支持的服务。-ipEndPoints:AUSF的IP和端口号。

 

(8)ausfinfo:ausf网元的特有参数。包括AUSF所支持的supi range:也就是用户IMSI号段。AUSF对应的group、以及关联的Routing indicator。

 

1.3 AMF请求AUSF进行鉴权并获取鉴权参数

 

AMF调用AUSF的authentication服务,请求AUSF对UE进行鉴权,该服务是HTTP Post方法。AUSF通常和UDM是合设的,因此AUSF会把SUPI或SUCI发给UDM,UDM据此选择UE的鉴权方法,并返回相关的鉴权向量组(如果收到的是SUCI,UDM需要先根据本地的私钥解密成SUPI。)。AUSF发201 Created响应,并把鉴权向量组返回给AMF。AMF给AUSF的请求消息:

(1)Request-uri是:/nausf-auth/v1/ue-authentications,是AUSF的鉴权服务入口。

参数包括SUCI和AMF的拜访地serving network name。AUSF回的201 created。主要参数有:

选择的鉴权算法authType:5G_AKA 表示UDM为UE选择的鉴权算法是5G AKA。

5g AuthData是鉴权参数组中的rand(随机数,要发给UE,用于UE计算鉴权结果)、autn(发给UE,用于UE对网络侧的鉴权)、hxresStar(发给AMF,用于AMF站在拜访地角度,比对鉴权结果。)

1.4 AMF向AUSF转发UE计算结果,AUSF进行鉴权比对

AMF站在拜访地角度对UE进行鉴权后(比对HRES*和HXRES*),再次调用AUSF的auth服务(PUT方法)将UE的计算结果RES*发给AUSF进行比对。AUSF比对成功后返回200 OK。AMF-->AUSF的PUT请求,主要参数有:

(1)request-uri:/nausf-auth/v1/ue-authentications/112233/5g-aka-confirmation。其中112233是authctxid

(2)res*:UE计算出的鉴权结果。
AUSF给AMF的响应参数包括

(1)authresult:鉴权结果。本例取值为success表示鉴权成功。

(2)Kseaf:用于密钥派生的Kseaf。

(3)supi:UDM解密后的SUPI,由AUSF发给AMF。

1.5 AMF对UE发起安全流程(加密和完整性保护)

AMF接下来可以对UE发起安全流程,用于NAS消息的加密和完整性保护(防止被篡改),对应的NAS消息是Security mode CommandSecurity mode Complete

AMF-->UE的Security mode Command主要参数有:

(1)NAS security algorithms:网络侧选择的加密和完整性保护算法。本例取值是5G-EA0和128-5G-IA1

(2)UE security capability:UE的安全能力。其实也是之前从UE收到的。

(3)IMEISV request:AMF可以借此向UE要求提供IMEISV。

(4)ngKSI:NAS安全上下文标识。

UE-->AMF UE的Security mode Complete主要参数有:

(1)Security header type取值为4,表示带有新5G安全上下文和完保、加密的消息。

(2)Message authentication code:消息摘要码。用于完整性保护。

(3)5GS mobile identity:UE返回的IMEISV。

1.6 AMF根据SUPI查NRF得到UDM

AMF接下来要去到UDM中做注册登记(UECM服务)和获取签约数据(SDM服务)。因此,AMF调用NRF的Discovery服务,发起UDM的查询。用的是HTTP Get方法。NRF返回200 OK,包含了UDM的nfprofile。

Get请求中的主要参数包括:

(1)service-names=nudm-sdm,我要选择的网元是UDM,并支持SDM这个服务。

(2)requester-nf-type=AMF,请求者也就是我是谁?我是AMF。

(3)SUPI=imsi。这就是查询条件,拿SUPI来换UDM的nfprofile(网元档案)。
UDM返回的信息包括:

(1)所有网元的公共参数:validity Period(结果有效期)、nfInstances(网元实例名)、nfType(网元类型,本例为UDM)、nfStatus(注册状态)、priority(网元的优先级)、capacity(网元的静态容量值)、nfServices(UDM所支持的服务)

(2)UDM特有的参数udminfo:包括supirange(UDM支持的UE号段)、routing-indicator(UDM支持的Routing Indicator的范围)

 

 

标签:AMF,AUSF,网元,核心网,UE,5G,鉴权,UDM
From: https://www.cnblogs.com/sunfie/p/18522101

相关文章

  • 实现用户认证功能:Vue与JWT
    实现用户认证功能:Vue与JWT在现代前端开发中,用户认证是一个极为重要的功能,常常涉及到用户数据的安全管理。本文将为您展示如何使用Vue.js与JWT(JSONWebToken)实现用户认证功能。我们将通过一个简单的示例,展示如何在Vue3中使用CompositionAPI(setup语法糖)来进行用户......
  • 基于Java+vue实现高校学科竞赛项目系统详细设计
    基于Java+vue实现高校学科竞赛项目系统详细设计......
  • vue3 深度监听用法 watch watchEffect 详解
    在Vue3中,你可以使用watch和watchEffect进行深度监听。深度监听意味着你能够监控一个对象及其嵌套属性的变化。使用watch进行深度监听如果你想监听一个响应式对象的所有嵌套属性,可以使用deep:true选项。以下是一个示例:<template><div><inputv-model=......
  • 计算机毕设源码 nodejs基于vue的居家装饰商城
    标题:nodejs基于vue的居家装饰商城基于Vue和Node.js的居家装饰商城可以为用户提供一个便捷、美观的在线购物平台,专注于家居装饰品的销售。以下是一些最重要的功能模块,这些功能对于提升用户体验和促进销售至关重要:1.用户管理•注册与登录:支持用户通过邮箱、手机号或第三方账......
  • 织梦后台添加变量提示Request var not allow
    问题描述:后台添加变量时提示“Requestvarnotallow”。解决方法:方法一:打开 include/common.inc.php 文件,找到 functionCheckRequest(&$val)。修改为:functionCheckRequest(&$val){if(is_array($val)){foreach($valas$_k=>$_v){if($_k=='......
  • The server encountered an internal error or misconfiguration and was unable to c
    原因一:PHP版本不正确检查当前PHP版本通过FTP或控制面板查看当前使用的PHP版本。调整PHP版本登录您的虚拟主机控制面板。找到PHP版本设置,选择适合您应用的PHP版本。保存设置并重启站点。原因二:权限不正确检查文件和目录权限通过FTP或SSH登录服务器,检查关键文件......
  • java基于springboot的项目评审系统(源码+vue+部署文档+前后端分离等)
    收藏关注不迷路!!......
  • vue3 vue-i18n和pinia使用
    安装vue-i18n和Pinia(状态管理库)npminstallvue-i18n@10npminstallpinia 在main.js中引入i18n和piniaimport'./assets/main.css'import{createApp}from'vue'importAppfrom'./App.vue'importi18nfrom"./i18n";//引入pini......
  • 【开题报告】基于Springboot+vue装修预算系统的设计与实现(程序+源码+论文) 计算机毕业
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着房地产市场的蓬勃发展,装修行业也迎来了前所未有的繁荣。然而,装修过程中的预算管理一直是业主、设计师和施工方共同面临的难题。传统的装修预算方......
  • 【开题报告】基于Springboot+vue制造业企业专件全生命周期管理系统(程序+源码+论文) 计
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着制造业的快速发展和市场竞争的日益激烈,企业对生产效率和成本控制的要求越来越高。专件作为制造业企业的重要资产,其全生命周期管理直接关系到企业......