5G的SUCI、SUPI、5G-GUTI使用场景及关系_suci guti imsi_知不足而奋进的博客-程序员秘密

技术标签: 5G  

使用场景(来源于对23.501、23.502、33.501、23.003的理解)

1、UE初始注册时,根据HN Public Key把SUPI加密成SUCI,并发送初始注册请求

2、AMF转发SUCI给AUSF和UDM进行认证,并获取解密后的SUPI

3、AMF根据SUPI生成一个5G-GUTI,并保存映射关系,用于下次注册或PDU会话请求,并通知UE注册完成

4、下一次注册请求,UE使用5G-GUTI发送注册请求:

  • AMF根据5G-GUTI找到SUPI,使用SUPI完成认证
  • AMF根据5G-GUTI找不到对应的SUPI,AMF再向UE请求SUCI,根据SUCI重新进行认证

5、只有在成功激活NAS安全性后,AMF才能向UE发送新的5G-GUTI

6、在从UE接收到“初始注册”或“移动性注册更新”或“定期注册更新”类型的注册请求消息时,AMF应该在注册过程中向UE发送新的5G-GUTI

7、在接收到UE响应于寻呼消息而发送的服务请求消息时,AMF将向UE发送新的5G-GUTI。这个新的5G-GUTI应在当前的NAS信令连接被释放之前发送。(注1:实际情景中要比上述情况更频繁地重新分配5G-GUTI,例如在收到来自UE的Service Request消息而非网络触发。)

8、当UE处于CM-IDLE时,AMF可以延迟向UE提供新的5G-GUTI,直到下一个NAS事务。

 

5G-GUTI(5G Globally Unique Temporary UE Identity )

5G全局唯一的临时UE标识,减少在通信中显示使用UE的永久性标识,提升安全性

<5G-GUTI> = <GUAMI><5G-TMSI>

1)<GUAMI>:标识由哪个AMF分配的5G-GUTI

<GUAMI> = <MCC><MNC><AMF Identifier>

<AMF Identifier> = <AMF Region ID><AMF Set ID><AMF Pointer>

2)<5G-TMSI>:UE在AMF内唯一的id,32bit

 

5G-GUTI和GUTI

SUCI

SUPI Type:0 IMSI(0-IMSI,1-NAI(Network Access Identifier),2~7-扩展用)

  • IMS由3GPP TS 23.503定义
  • NAI根据TS 23.003 for non-3GPP RAT由RFC4282定义

Home Network Identifier:MCC-MNC(SUPI TYPE:0),代表域名的字符串(SUPI TYPE:NAI)

Routing Indicator:路由标识,用于发现UDM和AUSF

Protection Scheme Id:0-NULL-scheme,1-Profile<A>, 2-Profile<B>

Home Network Public Key Id:归属网络提供的公钥ID,范围0-255,只有NULL-scheme情况下置为0

Scheme Output:终端ID加密后的密文,NULL-scheme和IMSI情况下即IMSI中的MSIN部分

注:关于SUCI更详细的说明,可参考下文中的【type of identity "SUCI"】:

艾偶倜:一文看懂5GS mobile identity​

 

SUPI

用户的5G全球唯一用户永久标识符

  • IMS由3GPP TS 23.503定义
    • SUPI由15位十进制数组成,其中前三位为国家代码MCC,中间2-3位为运营商代码MNC,剩余9-10位为移动用户标识码MSIN共同来代表用户和运营商;SUPI就等同于唯一标识ME的IMSI,也是一个15位的字符串。

  • NAI由RFC4282定义

SUCI与SUPI

总的来讲,终端的真实身份在5G里称为SUPI(SUbscription Permanent Identifier)(类似IMSI),通过公钥加密后的密文称为SUCI(SUbscription Concealed Identifier),SUCI传送给基站后,基站直接上传至核心网。手机用来加密SUPI的公钥放在USIM中,SUCI的解密算法只能被执行一次,放置在核心网的UDM中。

 

5G中的SUPI相当于LTE中的IMSI,但是和IMSI不同的是,该用户永久身份信息永远不会出现的空口上。以往使用IMSI的场合(如初次registration,Identify procedure等),5G网络将会使用SUCI。所谓的SUCI就是SUPI的加密版本,具体的加密方式参见3GPP TS 33.501附录C.3,该加密过程可以简单概括为,使用椭圆曲线的PKI加密机制,利用两对公私钥的特殊性质:公钥1*私钥2=公钥2*私钥1,实现SUPI加密为SUCI,这样既能保证空口SUPI不被泄露,还保证了UE和网络的鉴权的正常进行。

 

可以看33.501,简单说SUPI可以看成是过去的IMSI,SUCI是对IMSI中的MSIN部分使用公钥协商机制生成的对称密钥加密再传输 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ZhongGuoRenMei/article/details/117533579

智能推荐

OpenCV简介及安装_Mr_Nobody17的博客-程序员秘密

1.简述OpenCV的全称是Open Source Computer Vision Library,是一个跨平台的计算机视觉和机器学习软件库。OpenCV是由英特尔公司发起并参与开发,以BSD许可证授权发行,可以在商业和研究领域中免费使用。支持的操作系统:Linux、Windows、Android和Mac OS。支持的接口语言:C ++,Python,Java和MATLAB官网:https://opencv.org/2.发展历史1999年1月,CVL项目启动。主要目标是人机界面,能被U

GeoServer解决cors跨域问题_迷茫的小猿的博客-程序员秘密

第一步:首先下载需要的文件,解压后将cors-filter-2.4.jar和java-property-utils-1.9.1.jar,两个jar包文件放入geoserver目录下webapps\geoserver\web-inf\lib中。第二步:打开geoserver目录下webapps\geoserver\web-inf中的web.xml然后添加过滤器代码:&lt;filter&gt; &lt;filter-name&gt;CORS&lt;/filter-name&gt; &lt;fil

el-upload上传之前 检查 图片的宽和高_Im灬大神的博客-程序员秘密

handleBeforeUpload(file) { var that=this;  //核心代码部分 const isSize = new Promise(function(resolve, reject) { // 希望的宽 let width = that.imgWidth; // 希望的高 let height = that.imgH.

ubuntu下手动安装gnome插件_ubuntu22.10 安装gnome插件_kazi_LIA的博客-程序员秘密

ubuntu下手动安装gnome插件// 下载环境sudo apt-get install chrome-gnome-shellsudo apt install gnome-shell gnome-tweaks// 创建扩展文件mkdir ~/.local/share/gnome-shell/extensions///查看插件压缩包内的metadata.json文件,复制uuid,然后创建该名称的文件夹mkdir ~/.local/share/gnome-shell/extensions

随便推点

Android数据通信--串口通信_android 串口通信原理_落夜沉淀的博客-程序员秘密

串口通信的概念很好理解,串口按位(bit)发送和接收字节。我们常用的9针串口中有3针是有连接线的,分别是地线(1针),发送(2针),接收(3针),其他线用于握手的,可要可不要。大家有兴趣的可以拿起串口线接口看一下,串口母口的针孔附近一般都标有阿拉伯数字,标有1,2,3的那三个针孔就是上面说的接入连接线的。有时也有只使用一根线来完成数据收发的,即发送数据,又接收数据。但是因为只有一根线,所以发数据的时候不能接数据,接数据的时候不能发数据,也就是通信双方不能同时收发数据,我们把这种称为半双工通信;还

opencv 安装_mengjia451的博客-程序员秘密

转载邹老师文章:https://blog.csdn.net/chenyusiyuan/article/details/4582076 ...

anaconda环境迁移_如何迁移anaconda的环境_veronica_ry的博客-程序员秘密

在一台服务器A上的虚拟环境(cuda9.0)移植到另一台环境B(cuda10.0)上。1.首先进入A的env路径,使用:sudo tar -cvf Filename.tar Dirname注意:一定要用root权限打包,否则可能会包不全其中Filename是自己指定的,Dirname是A环境的名称。2.利用scp /home/eini/anaconda3/envs/Filename.tar 172.%%.%%.%: /home/eini/anaconda3/envs将服务器A的环境拷贝到B

>> >>= do_=do_mjk的博客-程序员秘密

<br />In general, use >> if the actions don’t return a value, >>= if you’ll be immediately passing that value into the next action, and do-notation otherwise.

linux查看网络流量 命令,linux查看流量命令_吃货组长的博客-程序员秘密

Linux系统下想要查看网络流量,那我们该使用那个命令呢?下面由学习啦小编为大家整理了linux查看网络流量的命令的相关知识,希望对大家有帮助。linux查看网络流量命令大全linux查看网络流量方法一、nload工具查看参数帮助命令:nload –help-a:这个好像是全部数据的刷新时间周期,单位是秒,默认是300.-i:进入网卡的流量图的显示比例最大值设置,默认10240 kBit/s.-m...

基于LNMP环境的考勤加班小助手的设计_风飞扬fq的博客-程序员秘密

基于LNMP环境的考勤加班小助手的设计1. 背景加班小助手软件的开发主要是自己想偷懒,由于职业关系,作为一名程序猿,每月还要核对自己的加班时间是一件很繁琐的事情,基于此再结合自己的技能开发这样的一个小助手,能够帮自己统计每个月的加班时间,不用再费劲的核对了。2. 功能需求1、能够自动统计每个月的加班时间、休息时间及总时间;2、周末加班时间和工作日加班时间分开统计显示;3、界面能显示详细...