5G NAS5G SUPI 和 SUCI 标识符详解

Posted 从善若水

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5G NAS5G SUPI 和 SUCI 标识符详解相关的知识,希望对你有一定的参考价值。

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持!
博主链接

本人就职于国际知名终端厂商,负责modem芯片研发。
在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。


博客内容主要围绕:
       5G/6G协议讲解
       算力网络讲解(云计算,边缘计算,端计算)
       高级C语言讲解
       Rust语言讲解



5G SUPI 和 SUCI 详细介绍

       在电信系统中,网络运营商为每个SIM卡分配一个唯一标识符,在4G网络中称为IMSI(国际移动用户标识),在5G网络中称为SUPI(订阅永久标识符)。由于用户及其网络提供者之间的身份验证基于共享的对称密钥,因此只能在用户身份验证之后进行。然而,如果IMSI或者SUPI的值以明文形式通过无线链路发送,那么可以使用这些永久标识符识别、定位和跟踪用户。

       为了避免这种隐私泄露,所访问的网络会为SIM卡分配临时标识符(3G系统中称为临时移动用户标识符TMSI,而在4G和5G系统中称为GUTI)。然后,这些经常变化的临时标识符被用于无线链路上的身份认证。然而,在某些情况下,通过使用临时标识符进行身份验证是不可能的,例如,当用户第一次向网络注册时还尚未分配临时标识符;另一种情况是访问的网络无法从上报的TMSI或者GUTI中解析出IMSI或者SUPI

       一些劫持者可以故意模拟这种场景,迫使不知情的用户暴露其长期身份认证标识符。这些攻击被称为”IMSI捕捉”攻击,并持续存在于今天的移动网络,包括4G LTE/LTE-A。


5G 对于“IMSI捕获攻击”的解决方案

       数十年来,IMSI捕获攻击一直威胁着移动通信(包括,2G、3G、4G)。由于遗留原因促进了向后兼容性,这个隐私问题似乎一直存在。然而,3GPP现在决定解决这个问题,在通过5G-GUTI识别失败的情况下,与前几代不同,5G安全规范不允许通过无线接口进行SUPI的明文传输。相反,通过使用椭圆曲线集成加密方案(ECIES)将SUPI封装在一个隐私保护标识符中进行传输。这个隐藏了SUPI的标识符称之为SUCI(订阅隐藏标识符)。


Subscription Permanent Identifier (SUPI)

       SUPI是分配给每个用户的5G全球唯一订阅永久标识符(SUPI),相关定义在3GPP规范TS 23.501中。SUPI的值存储在USIM和5G核心网的UDM或者UDR中。

一个有效的SUPI可以是以下任何一种形式:

  • IMSI(国际移动用户标识符),定义在TS 23.503中,用于3GPP RAT;
  • NAI(网络访问标识符),定义在RFC 4282中,用于非3GPP RAT。

SUPI通常是由15个十进制数字组成的字符串。前三位数代表移动国家代码(MCC),之后的两或三位数代表移动网络代码(MNC),表示网络营运者。剩下的九或十个数字被称为移动用户识别号码(MSIN),代表该特定运营商的个人用户。SUPI相当于唯一标识ME的IMSI,也是一个15位数字的字符串。


Subscription Concealed Identifier (SUCI)

       SUCI是一个隐私保护标识符,包含了隐藏的SUPI。UE使用基于 ECIES 的保护方案以及一个位于USIM中的归属网络的公钥(开卡的时候由运营商写入)来生成一个SUCI。

只有SUPI中的MSIN部分会使用保护策略加密,而归属网络标识符,例如,MCC/MNC,是直接用明文传输的。下图中给出了SUPI的数据结构:

  • SUPI Type:取值范围为0 ~ 7。它指示隐藏在SUCI中的SUPI类型。定义了以下值:
    • 0:IMSI;
    • 1:Network Access Identifier (NAI);
    • 2 to 7: 保留未来使用。
  • Home Network Identifier:标识用户的归属网络。当SUPI Type为IMSI时,Home Network Identifier 由MCC和MNC组成。当SUPI类型为Network Access Identifier 时,归属网络标识符由一串可变长度的字符组成,这些字符代表一个域名,例如,user@techno.com;
  • Routing Indicator:它由1到4位十进制数字组成,由归属网络运营商分配,并在USIM中提供;
  • Protection Scheme Identifier:它是一个0 ~ 15范围内的值,用4 bit表示:
    • 0x0:null-scheme;
    • 0x1:Profile ;
    • 0x2:Profile
  • Home Network Public Key Identifier:取值范围为0 ~ 255。它代表了一个由HPLMN提供的公钥,用于指示在SUPI保护方案中使用的是那个公钥。在使用 null-scheme 方案的情况下,这个数据字段应该设置为0;
  • Protection Scheme Output:它由一串可变长度的字符或十六进制数字组成,具体值取决于使用的保护方案。

终端与网络之间的5G身份交换

       当终端尝试首次注册时,终端将SUPI封装到SUCI中,并发送带有SUCI的初始注册请求消息。AMF使用 Authentication Request 消息将SUCI转发给AUSF和UDM,以查询对应的SUPI。AUSF使用 Authentication Response 消息回复查询到的SUPI信息。之后,AMF为这个SUPI生成一个GUTI,并保存GUTI到SUPI的映射,以供下一步注册或PDU会话请求时使用。

在后续的注册请求中,UE发送带有GUTI的注册请求消息。这里有两种可能的场景:

  1. AMF能够将GUTI映射为SUPI;
  2. AMF无法将GUTI映射为SUPI。

在第一种情况下,AMF使用GUTI生成SUPI,使用AUSF的身份验证可以使用SUPI完成。在第二种情况下,当在AMF使用GUTI无法识别UE时,AMF向UE发送 Identity Request 消息,然后UE使用包含SUCI的 Identity Response 消息回复。



以上是关于5G NAS5G SUPI 和 SUCI 标识符详解的主要内容,如果未能解决你的问题,请参考以下文章

5G NAS5G SUPI 和 SUCI 标识符详解

5G的SUCISUPI5G-GUTI使用场景及关系

5G系列5G新参数SUCI介绍

《5G网络协议与客户感知》读书笔记 | 注册流程信令序列

4 5G信号终端是根据啥显示的

5G-GUTI详解