2 协议规范与关键技术
2.1 核心协议参考
本篇涉及的3GPP协议规范主要包括:
-
TS 23.501:定义了使用SUCI进行初始注册时的切片选择流程,以及SUCI的生成和解析规则。
-
TS 24.501:规定了当UE无有效5G-GUTI时,如何在Registration Request消息中使用SUCI作为Mobile Identity,以及在Security Mode Complete消息中携带Requested NSSAI。
-
TS 33.501:定义了5G安全架构,包括SUCI的加密机制(基于公钥加密的ECIES方案)。
-
TS 29.503(UDM服务接口):定义了AMF如何通过Nudm_SDM_Get从UDM获取UE签约数据。
2.2 SUCI详解
SUCI(Subscription Concealed Identifier)是5G引入的重要安全增强机制。其结构如下:
SUCI = <SUPI Type> + <Home Network ID> + <Routing Indicator> + <Protection Scheme ID> + <Home Network Public Key ID> + <Scheme Output>
| 字段 |
说明 |
| SUPI Type |
标识类型(0=IMSI,1=Network Specific) |
| Home Network ID |
MCC + MNC |
| Routing Indicator |
路由指示符,用于AUSF/UDM发现 |
| Protection Scheme ID |
加密方案标识(0=null scheme, 1=ECIES Profile A, 2=ECIES Profile B) |
| Home Network Public Key ID |
归属网络公钥标识 |
| Scheme Output |
加密后的SUPI信息 |
2.3 本场景与第1篇的关键差异
| 对比维度 |
第1篇(携带5G-GUTI) |
本篇(携带SUCI) |
| UE标识方式 |
5G-GUTI |
SUCI |
| AMF上下文获取 |
可通过GUTI查找已有上下文 |
无已有上下文,必须新建 |
| UDM交互 |
获取签约数据(刷新) |
获取签约数据(首次) |
| 安全流程 |
可复用已有安全上下文 |
必须执行完整鉴权流程 |
| NSSAI携带时机 |
Registration Request中 |
Security Mode Complete中 |
| AMF选择效率 |
RAN可通过GUTI路由 |
RAN通过NSSAI或Default路由 |
2.4 NAS安全模式与NSSAI传递
本场景的一个重要特点是:UE在Registration Request中携带SUCI发起注册,但Requested NSSAI的携带时机可能在Security Mode Complete消息中。这是因为:
-
初始消息阶段使用SUCI,网络尚未验证UE身份
-
鉴权和安全模式建立后,NAS消息获得加密和完整性保护
-
在安全通道建立后携带Requested NSSAI,可以防止切片信息被窃听或篡改
3 消息流程与详细解读
3.1 整体流程图
sequenceDiagram
participant UE as UE终端
participant RAN as gNB(RAN)
participant AMF as AMF
participant UDM as UDM
participant AUSF as AUSF
UE->>RAN: RRC Setup<br/>携带SUCI
RAN->>AMF: NGAP: Initial UE Message<br/>携带SUCI
AMF->>AUSF: Nausf_UEAuthentication<br/>发起鉴权请求
AUSF-->>AMF: 鉴权结果
AMF->>UE: Security Mode Command
UE->>AMF: Security Mode Complete<br/>携带Requested NSSAI
AMF->>UDM: Nudm_SDM_Get<br/>获取UE签约数据(含Subscribed NSSAI)
UDM-->>AMF: 返回签约切片数据
AMF->>AMF: 计算Allowed NSSAI<br/>Requested与Subscribed交集<br/>检查本AMF支持的切片
AMF-->>UE: Registration Accept<br/>携带GUTI+Allowed NSSAI+Configured NSSAI
UE->>AMF: Registration Complete
3.2 流程详细解读
步骤1:UE发起注册请求(携带SUCI)
UE通过RRC连接向RAN发送注册请求,携带SUCI作为身份标识。由于没有有效的5G-GUTI,RAN无法根据GUAMI进行精确的AMF选择。此时RAN可以采用以下策略之一选择AMF:
步骤2:鉴权与安全模式建立
由于UE使用SUCI而非5G-GUTI,AMF无法获取UE已有上下文,必须执行完整的5G-AKA或EAP-AKA鉴权流程。AMF通过SUCI中的Home Network ID和Routing Indicator找到对应的AUSF和UDM,完成鉴权。
鉴权成功后,AMF发起Security Mode Command,建立NAS安全上下文。在安全模式建立完成后,UE通过Security Mode Complete消息携带Requested NSSAI。
步骤3:AMF获取签约数据
鉴权成功并建立安全上下文后,AMF向UDM发起Nudm_SDM_Get请求,获取UE的签约数据。签约数据中包含:
步骤4:AMF确定Allowed NSSAI
与第1篇相同,AMF执行三重校验计算Allowed NSSAI:
Allowed NSSAI = Requested NSSAI
∩ Subscribed NSSAI
∩ AMF Supported NSSAI
同时计算Configured NSSAI(可选):
Configured NSSAI = AMF Configured NSSAI ∩ Subscribed NSSAI
步骤5:注册接受
AMF向UE发送Registration Accept消息,携带:
步骤6:注册完成
UE确认收到Registration Accept,保存新的5G-GUTI和切片信息,发送Registration Complete消息。
3.3 SUCI场景下的AMF选择流程
flowchart TD
A[UE发送Registration Request<br/>携带SUCI无GUTI] --> B[RAN收到SUCI]
B --> C{RAN能否根据NSSAI选择AMF}
C -->|能| D[RAN路由到支持对应切片的AMF]
C -->|不能| E[RAN选择Default AMF]
E --> F[AMF收到注册请求]
D --> F
F --> G[AMF解密SUCI获取SUPI]
G --> H[执行5G-AKA鉴权]
H --> I[建立NAS安全上下文]
I --> J[UE在Security Mode Complete中携带Requested NSSAI]
J --> K[AMF获取签约数据]
K --> L[计算Allowed NSSAI]
L --> M{Allowed NSSAI非空且本AMF支持}
M -->|是| N[当前AMF继续服务发送Registration Accept]
M -->|否| O[查询NSSF确定目标AMF]
O --> P[触发AMF重选]
4 关键信令参数分析
4.1 Registration Request消息参数(SUCI场景)
| 参数 |
取值示例 |
说明 |
| Registration Type |
Initial Registration |
初始注册 |
| Mobile Identity |
SUCI: type=IMSI, MCC=460, MNC=88 |
加密后的用户标识 |
| UE security capability |
NR SA, 5G-EIA1/2/3, 5G-EEA1/2/3 |
安全能力 |
| 5GS Drx Parameters |
DRX cycle = T32 (optional) |
DRX参数 |
注意:在此场景下,Registration Request消息中不携带Requested NSSAI(或仅携带部分),NSSAI信息将在Security Mode Complete中携带。
4.2 Security Mode Complete中的NSSAI
| 参数 |
取值示例 |
说明 |
| Requested NSSAI |
SST=1, SD=010203; SST=3 |
UE请求的切片列表 |
| NAS security algorithms |
NEA2, NIA2 |
选择的加密/完整性算法 |
4.3 Registration Accept消息参数
| 参数 |
取值示例 |
说明 |
| 5G-GUTI |
460-88-01-02-00-0x12345678 |
新分配的临时标识 |
| Allowed NSSAI |
SST=1, SD=010203; SST=3 |
允许使用的切片 |
| Configured NSSAI |
SST=1, SD=010203; SST=1, SD=040506 |
网络配置的切片 |
4.4 UDM签约数据交互(Nudm_SDM_Get)
AMF向UDM发送的请求中包含SUCI解析后的SUPI,UDM返回的签约数据中切片相关部分:
{
"amData": {
"nssai": {
"defaultSingleNssais": [
{"sst": 1, "sd": "010203"},
{"sst": 1, "sd": "040506"}
],
"singleNssais": [
{"sst": 1, "sd": "010203"},
{"sst": 1, "sd": "040506"},
{"sst": 3}
]
}
}
}
4.5 SUCI结构示例(脱敏后)
SUCI:
SUPI Type: IMSI (0)
MCC: 460
MNC: 88
Routing Indicator: 0001
Protection Scheme: ECIES Profile A (1)
Home Network Public Key ID: 1
Scheme Output: [加密后的MSIN数据]
5 测试验证与数据解读
5.1 NAS消息跟踪分析
Registration Request(脱敏后,携带SUCI):
NAS-MSG:
Protocol Discriminator: 5GS Mobility Management
Security Header Type: Plain NAS message
Message Type: Registration Request (0x41)
5GS Registration Type:
Registration Type: Initial Registration
Mobile Identity:
Type: SUCI
SUPI Type: IMSI
MCC: 460, MNC: 88
Routing Indicator: 0001
Protection Scheme: ECIES Profile A
Public Key ID: 1
Encrypted Output: 0xA3B4...[encrypted MSIN]
UE Security Capability:
5G-EIA: EIA1/2/3 supported
5G-EEA: EEA1/2/3 supported
注意与第1篇的区别:Mobile Identity字段使用SUCI而非5G-GUTI,且消息中未携带Requested NSSAI。
Security Mode Complete(携带Requested NSSAI):
NAS-MSG:
Protocol Discriminator: 5GS Mobility Management
Security Header Type: Integrity Protected and Ciphered
Message Type: Security Mode Complete (0x5F)
IMEISV: 46088000XXXXXXX (脱敏)
Requested NSSAI:
S-NSSAI 1: SST=1, SD=010203
S-NSSAI 2: SST=3
NAS Message Container: [加密容器]
Registration Accept(脱敏后):
NAS-MSG:
Protocol Discriminator: 5GS Mobility Management
Security Header Type: Integrity Protected and Ciphered
Message Type: Registration Accept (0x42)
5G-GUTI:
MCC: 460, MNC: 88
AMF Region ID: 0x01
AMF Set ID: 0x02
AMF Pointer: 0x00
5G-TMSI: 0x12345678
Allowed NSSAI:
S-NSSAI 1: SST=1, SD=010203
S-NSSAI 2: SST=3
Configured NSSAI:
S-NSSAI 1: SST=1, SD=010203
S-NSSAI 2: SST=1, SD=040506
5.2 关键分析点
-
Requested NSSAI在Security Mode Complete中携带:与第1篇不同,本场景中UE选择在NAS安全上下文建立后才发送切片请求信息,体现了5G安全设计的严谨性。
-
两个S-NSSAI全部进入Allowed NSSAI:SST=1/SD=010203和SST=3都在UE签约数据中且AMF支持,因此全部被允许。
-
5G-GUTI首次分配:由于UE此前没有有效的5G-GUTI(使用SUCI注册),AMF在Registration Accept中分配新的5G-GUTI,UE将保存此GUTI用于后续信令交互。
5.3 AMF CLI验证
在AMF上查看UE上下文信息(脱敏后):
AMF-Version# show ue context imsi 4608800000XXXXXX
UE Context Information:
SUPI : 4608800000XXXXXX
SUCI : sutype-0-460-88-0001-sch1-key1
GPSI : 86138000XXXXXX
5G-GUTI : 460-88-01-02-00-0x12345678
RM State : RM-REGISTERED
CM State : CM-IDLE
Security Context:
KSI: 2
Algorithms: NEA2 / NIA2
TAC : 46088
Allowed NSSAI:
S-NSSAI 1: SST=1, SD=010203
S-NSSAI 2: SST=3
Subscribed NSSAI:
S-NSSAI 1: SST=1, SD=010203 (default)
S-NSSAI 2: SST=1, SD=040506 (default)
S-NSSAI 3: SST=3
从AMF的UE上下文可以看到:
-
UE当前RM状态为RM-REGISTERED,注册成功
-
安全上下文已建立,使用NEA2/NIA2算法
-
Allowed NSSAI包含两个S-NSSAI,与Registration Accept一致
-
Subscribed NSSAI中前两个标记为default,当UE未请求任何NSSAI时将作为默认切片
6 小结与思考
6.1 本篇小结
本篇分析了UE使用SUCI(而非5G-GUTI)携带Requested NSSAI发起初始注册的场景。核心要点如下:
-
SUCI的安全价值:使用SUCI替代明文IMSI,从根源上防范了IMSI Catcher攻击,这是5G相比4G的重要安全增强。
-
NSSAI的延迟携带:本场景中Requested NSSAI可能在Security Mode Complete中携带,确保切片请求信息在加密通道中传输,防止切片偏好被窃听。
-
额外的UDM交互:由于没有5G-GUTI,AMF无法获取UE已有上下文,必须通过完整鉴权流程后首次从UDM获取签约数据,流程比第1篇更长。
-
AMF选择的不确定性:RAN无法通过GUAMI精确选择AMF,可能导致UE初始接入的AMF并非最优,需要在后续步骤中通过NSSF查询进行纠正。
6.2 延伸思考
问题1:为什么不在Registration Request中直接携带Requested NSSAI?
实际上,3GPP规范允许在Registration Request中携带Requested NSSAI。但在SUCI场景下,由于NAS安全上下文尚未建立,切片请求信息以明文传输存在一定安全风险。某些运营商或设备厂商可能选择在Security Mode Complete中携带,以增强安全性。两种方式都是协议允许的。
问题2:如果RAN选择的Default AMF不支持UE请求的切片怎么办?
这是一个典型的AMF重选场景。当Default AMF收到注册请求后发现无法为UE请求的切片提供服务时,AMF会向NSSF查询,获取支持对应切片的目标AMF信息,然后通过NGAP Routing/Error Indication等方式将UE重定向到目标AMF。我们将在第5篇详细分析这一流程。
问题3:SUCI的ECIES加密方案如何工作?
SUCI使用ECIES(Elliptic Curve Integrated Encryption Scheme)对SUPI中的MSIN部分进行加密。UE使用归属网络预配置的公钥加密MSIN,生成密文和 ephemeral public key。只有归属网络的UDM/AUSF持有对应的私钥才能解密。即使中间节点(包括AMF)也无法获取UE的真实IMSI,需要UDM解密后通过信令告知。
扫码关注「51学通信」,每天学一点5G核心网。知识星球会员享200+小时视频课程+3000+精华文章+1年专属答疑群,公众号回复"会员"了解详情。