5G 网络中的双向认证机制解析
一、5G 网络中的双向认证机制解析
在 5G 核心网中,双向认证是指UE(用户设备)与网络互相验证对方身份的过程。这一机制通过多层次的安全协议和密钥交换,确保通信双方的合法性,防止中间人攻击和身份伪造。
1. UE 存储的关键信息
UE 作为用户终端,存储以下核心安全信息:
- 长期密钥(K):用户签约的根密钥,与运营商网络(UDM)共享,存储于 USIM 卡或 eSIM 中。
- OP/OPc:
- OP(Operator Key):运营商定义的固定密钥,用于生成 OPc。
- OPc(Operator Key Confidential):由 OP 和 K 派生的机密密钥,实际用于认证计算,提高安全性。
- 安全能力参数:支持的加密算法(如 128 - GCM)、完整性保护算法(如 128 - HMAC - SHA256)等。
- 临时身份标识:如 SUCI(Subscriber Concealed Identifier),用于替代明文 SUPI(永久用户标识符),保护用户隐私。
2. UDM 存储的关键信息
UDM 作为核心网的数据管理中心,存储以下信息:
- 用户签约数据:包括长期密钥 K、OP/OPc、认证方法配置(如 5G AKA)。
- 认证向量(AV):动态生成的认证参数,包含:
- RAND(随机数):用于挑战 UE 的随机值。
- *XRES(预期响应)**:基于 K 和 RAND 计算的预期结果,用于验证 UE。
- AUTN(认证令牌):用于 UE 验证网络的合法性。
- Kausf:由 K 派生的根密钥,用于后续密钥层级的生成。
- 用户安全上下文:记录 UE 的认证状态、密钥使用情况等。
3. 双向认证的详细流程
双向认证通过5G AKA(Authentication and Key Agreement)协议实现,具体步骤如下:
- 步骤 1:注册请求与 SUCI 传输
- UE 向 AMF 发送注册请求,携带 SUCI(替代明文 SUPI)和安全能力信息。
- 步骤 2:AMF 向 AUSF 请求认证数据
- AMF 通过 N12 接口将 SUCI 发送至 AUSF,请求生成认证向量。
- 步骤 3:AUSF 与 UDM 交互生成 AV
- AUSF 通过 N13 接口将 SUCI 发送至 UDM。
- UDM 解析 SUCI 获取 SUPI,检索用户签约数据(K、OPc)。
- UDM 生成随机数 RAND,并基于 K 和 OPc 计算:
- XRES = f2 (K, RAND)**:预期响应。
- AUTN = f1 (K, RAND) + SQN(序列号):认证令牌,包含网络身份信息。
- Kausf = f5(K, RAND)**:派生根密钥。
UDM 将 AV(RAND、XRES、AUTN、Kausf)返回给 AUSF。
- 步骤 4:AUSF 向 AMF 发送认证参数
- AUSF 保留 Kausf,将 RAND 和 AUTN 通过 AMF 发送给 UE。
- 步骤 5:UE 验证网络合法性(双向认证核心)
- UE 使用存储的 K 和 OPc 计算:
- XMAC = f1(K, RAND):预期的消息认证码。
- UE 使用存储的 K 和 OPc 计算: