基于5G用户卡的5G接入认证分析及试验
2020-06-08蔡秋艳黄健文杨光李俊磊阎占林黄健
蔡秋艳 黄健文 杨光 李俊磊 阎占林 黄健
【摘 要】用户卡承载移动用户身份标识和网络接入认证的重要功能。5G SA网络在接入认证方面新增不同于4G网络的用户隐私保护、EAP-AKA'认证/5G AKA认证、5G密钥体系及5G安全上下文等特性,这些特性对5G用户卡提出新的要求。本文首先介绍5G SA网络的安全模型,然后介绍5G用户卡为支持5G接入认证特性所支持的的SUCI、双向认证、新增卡文件及服务等功能,在此基础上介绍5G SA实验网络中开展的基于5G用户卡的接入认证试验及其成果。
【关键词】5G用户卡;5G;SA;认证;SUCI
The user card carries the important functions of mobile user identity identification and network access authentication. Different from 4G network in terms of access authentication, 5G SA network adds user privacy protection, EAP-AKA' authentication/5G AKA authentication, 5G key hierarchy and 5G security context, which raises new requirements for 5G user cards. This paper first introduces the 5G SA network security model, then introduces SUCI、mutual authentication, new card file and service of 5G user card to support 5G access authentication feature. On this basis, the access authentication test based on 5G user card is introduced to be carried out in 5G SA experimental networks and results.
5G user card; 5G; SA; authentication; SUCI
0 引言
5G技术迅速发展,国内外运营商纷纷加快5G网络的建设。GSMA预计,到2025年,5G连接的数量将达到14亿,占全球总数的15%;5G将在未来15年内为全球经济增加2.2万亿美元,约14.7万亿人民币[1]。
5G网络部署有基于EPC的非独立组网(NSA)和基于5GC的独立组网(SA)方案 [2]。运营商目前主流采用NSA Option 3a/3x和SA Option 2模式。NSA Option 3只引入5G新空口(NR),控制面锚定在4G基站(LTE)侧,5G终端使用现网已发行4G卡可以实现基本的接入认证、使用5G无线网络的基本通信业务[3],因此NSA网络的接入认证不是本文讨论重点。SA Option 2架构包括5G NR(gNB)和服務化架构的5GC(5G Core Network),引入了不同于LTE网络的接入认证机制,包括:用户隐私保护、EAP-AKA'认证\5G AKA认证、5G密钥体系及5G安全上下文等[4]。用户卡是移动用户在网络中的唯一身份标识,在UE接入网络时提供用户标识、根据卡存储的认证参数(如密钥K)及算法进行运算并提供认证响应,是实现接入认证的关键。5G SA网络接入认证的新特性对用户卡提出新的功能实现要求。
本文首先介绍5G SA网络的安全模型,然后分析5G接入认证中与用户卡有关的用户隐私保护、双向认证与密钥协商、5G密钥体系及5G安全上下文等特点以及5G用户卡为此应实现的功能:SUCI功能、双向认证、新增卡文件及服务,最后介绍5G SA实验网络中基于5G用户卡的接入认证试验及其成果。
1 5G安全模型
以非漫游这种最基本的业务情景为例,5G SA网络安全模型由UE和网络组成[5],包括:USIM(Universal Subscriber Identity Module)、ME、RAN、核心网,如图1所示:
UE由USIM和移动设备(ME)组成,USIM驻留在5G用户卡上实现安全认证功能(下文所指的5G用户卡功能均在USIM模块实现)。无线接入网(RAN)分为分布式单元(DU)和中央单元(CU),DU和CU共同构成5G基站gNB。核心网中,AMF(Access and Mobility Management Function)是非接入层(NAS)安全的终止点;SEAF(Security Anchor Function)持有UE与网络主认证之后派生的访问网络的根密钥(称为锚定密钥)KSEAF;AUSF(Authentication Server Function)保留一个可重用的密钥KAUSF(同样在主认证后派生),以便在不同接入网技术(即3GPP接入网和非3GPP接入网,如IEEE 802.11无线局域网WLAN)同时注册UE时重用;ARPF(Authentication credential Repository and Processing Function)保存认证信息;UDM(Unified Data Management)使用存储在UDR(Unified Data Repository)中的用户签约数据,来执行各种功能,如认证凭据生成等。
2 用户隐私保护
4G网络中,用户卡保存IMSI作为永久身份标识。在认证过程中,如果服务网络无法通过临时标识(GUTI)识别用户,特别是服务网络无法根据UE在空口标识自身身份的GUTI获取IMSI时,服务网络应启用用户识别机制[6],通过永久用户标识(IMSI)来识别用户。用户识别机制由请求用户发送其永久身份的MME启动,UE以明文形式IMSI响应。明文形式传递IMSI存在用户身份被非法截获和泄露的风险。
5G用户卡中的永久用户标识是SUPI(Subscription Permanent Identifier),SUPI有IMSI或NAI(Network Access Identifier)两种[7],如果5G系统部署在专用网络,SUPI使用NAI格式进行编码。5G接入认证过程中需要UE提供用户标识时,UE可以提供SUCI(Subscription Concealed Identifier)而非明文SUPI。例如,UE在注册请求中应提供SUCI或者5G-GUTI,但UE在没有有效5G-GUTI时提供SUCI[8]。此时,UE使用与网络协商一致的保护方案(如PROFILE A、PROFILE B)、网络公钥对SUPI进行加密后构建SUCI并提供给网络,SIDF(Subscription Identifier De-concealing Function)使用网络私钥解密SUCI并重现SUPI。传递SUCI而非SUPI可以避免明文传递永久用户标识时带来的用户隐私暴露风险。
为实现向网络提供SUCI,5G用户卡应该支持以下SUCI功能:
(1)指示卡是否支持SUCI功能:卡文件EFUST设置service n°124服务位(Subscription identifier privacy support),指示5G用户卡是否支持用户标识隐私保护(1:支持,0:不支持)[9],ME通过读取EFUST文件的对应服务位获知该信息。
(2)指示SUCI计算位置:EFUST的service n°124指示为“支持”时,service n°125(SUCI calculation by the USIM)进一步指示SUCI计算的位置。如servicen°124和servicen°125都指示为“可用”,那么SUCI计算由USIM(5G用户卡)执行;如servicen°124指示“可用”但servicen°125指示为“不可用”,SUCI计算由ME执行。
(3)保存SUCI计算的参数:5G用户卡(USIM)或ME执行SUCI计算时,需要明确保护方案、网络公钥等相关数据,卡文件EFSUCI_Calc_Info存储这些数据。现有的保护方案有:Null-scheme、Profile A、profileB。Profile A和Profile B表明SUCI计算时在卡片生成秘钥对、Key Agreement等步骤采用不同加密算法。例如,卡片生成密钥对步骤中,Profile A采用Curve25519而Profile B采用secp256r1。Null-scheme这种特殊情况代表不对SUPI进行加密、因此也无法提供用户隐私保护;通常在以下情况中使用:UE正在进行未经身份认证的紧急会话而且没有所选择PLMN的5G-GUTI、归属网络配置了使用“Null-scheme”或者卡没有提供归属网络公钥或优先级列表[4]。SUCI由USIM(5G用户卡)计算时,ME不允许访问EFSUCI_Calc_Info文件,只有当SUCI计算由ME执行时ME才允许访问该文件。
(4)SUCI运算:如果SUCI由USIM(5G用户卡)计算,5G用户卡还需要支持ECIES(Elliptic Curve Integrated Encryption Scheme,椭圆曲线综合加密方案)。卡运用ECC椭圆曲线加密算法对SUPI进行加密,输出ECC临时公钥、密文值、MAC标签值等(即SUCI组成结构的第6部分,如图2所示),输出内容与SUPI类型、主网络标识、路由指示符(从EFRouting_Indicator文件获取)、保护方案标识、归属网络公钥标识(这5项构成SUCI结构的前5部分)共同构建成SUCI[7],见图2。ME可以通过ME-UICC之间的机卡接口指令GET IDENTITY从5G用户卡获取生成的SUCI[9]。
3 双向认证和密钥协商
在EPS AKA中,归属网络鉴权中心提供一组认证向量给访问网络的MME,由访问网络MME使用认证向量对UE进行鉴权[6]。5G采用EAP-AKA'和5G AKA两种双向认证和密钥协商机制[4]。EAP-AKA'中,UE是peer角色,SEAF承担传递验证者的角色,AUSF充当后端验证服务器;SEAF透明地转发AUSF和UE之间认证相关的EAP-Request/AKA'-Challenge、EAP-Response/AKA'-Challenge、EAP-Request/AKA'-Notification、EAP-Response/AKA'-Notification等消息。5G AKA增强了EPS AKA的认证功能,归属网络AUSF和访问网络SEAF都会对UE进行认证(见下文)。
相对EPS AKA,EAP-AKA'认证\5G AKA认证要求用户卡实现的认证功能没有本质区别,都需要用户卡支持双向认证,即网络对卡的认证和卡对网络的认证。
以5G AKA为例,如图3所示,UDM/ARPF创建一个5G HE AV(RAND、AUTN、XRES*、KAUSF)发送给AUSF;AUSF从XRES*中计算HXRES*,将5G SE AV(RAND、AUTN、HXRES*)返回给SEAF。SEAF在NAS消息Authentication-Request中向UE发送RAND、AUTN,其中,AUTN包含同步序列号SQN(USIM和网络各自会维护一个保存在本地的同步序列号)、认证管理域(AMF)和校验信息MAC。ME将RAND和AUTN在ME-UICC机卡命令AUTHENTICATE中传递给USIM。USIM通过校验AUTN进行对网络的认证[10],如图4所示。如果AUTN校验通过,USIM使用与ARPF存储一致的密钥K、RAND计算响应RES,在AUTHENTICATE命令響应中返还RES、CK、IK给ME。
ME根据RES计算RES*并在AUTHENTICATION RESPONSE中返回RES*给SEAF。SEAF根据RES*计算HRES*,将HRES*与5G SE AV中的的HXRES*进行比较,如果一致,SEAF从服务网络的角度认为认证通过。SEAF将UE返回的RES*在 Nausf_UEAuthentication_Authenticate Request消息中返回AUSF,AUSF将RES*与5G HE AV中的XRES*比较,如果相等,AUSF从归属网络的角度认为认证通过。如果USIM检查AUTN失败,USIM在AUTHENTICATE命令响应中返回失败原因(如同步失败,MAC错误等)给ME,ME在NAS消息Authentication Failure中用CAUSE值指示失败原因。
4 5G密钥体系与安全上下文
UE和网络之间的主认证和密钥协商程序实现UE和网络之间实现相互认证,并生成UE和网络之间用于后续安全进程的密钥,如图5所示。接收到认证成功响应消息后,UE从CK和IK(或CK'和IK')计算出KAUSF,根据KAUSF计算出KSEAF。5G用户卡文件EFUST的service n°123(5G Security Parameters)指示“可用”时,卡新增文件EF5GAUTHKEYS存储UE派生的密钥KAUSF、3GPP接入时的KSEAF和非3GPP接入时的KSEAF。
UE可以通过3GPP或非3GPP方式接入5GS,两种方式下UE产生3GPP接入的NSA安全上下文和非3GPP接入的NAS安全上下文。5G用户卡文件EFUST中的的service n°122(5GS Mobility Management Information),如指示“可用”,5G用户卡新增文件EF5GS3GPPNSC(5GS 3GPP Access NAS Security Context)和EF5GSN3GPPNSC(5GS non-3GPP Access NAS Security Context)。EF5GS3GPPNSC保存3GPP接入相关的ngKSI、KAMF、上下行NAS计数器、NAS完整性算法和加密算法等参数,EF5GSN3GPPNSC保存非3GPP接入相关的KAMF、UE安全能力及上下行NAS计数值。ME通过ME-UICC机卡接口的文件更新指令和读取指令可以向EF5GS3GPPNSC和EF5GSN3GPPNSC写入或读出安全上下文。
5 5G SA實验网络试验
在5G SA实验网络中,支持上述特性的5G用户卡与5G SA测试终端配合试验5G接入认证功能。5G用户卡测试卡设置不同的保护方案(PROFILE A、RPOFILE B、Null-scheme)和SUCI计算位置(USIM计算SUCI、ME计算SUCI)。根据不同的预置条件组合,制作全新的5G用户卡测试卡并插入5G SA测试终端开机,模拟用户第一次接入网络的注册接入认证过程。同时,在ME-UICC机卡接口和UE-网络空口跟踪信令消息并判定试验结果,试验结果见表2。
以5G用户卡预置保护方案为PROFILE B、SUCI计算在USIM执行为例:
(1)ME通过ME-UICC机卡接口GET IDENTITY命令获取USIM生成的SUCI,如图6所示。
(2)UE将USIM返回的SUCI在REGISTRATION_REQUEST消息中上发网络,如图7所示。
(3)SIDF解密SUCI获取SUPI并验证通过后,网络下发包含AUTH、RAND的AUTHENTICATION_REQUEST到UE,如图8所示。
(4)UE发送ME-UICC机卡指令AUTHENTICATE给5G用户卡,卡在AUTHENTICATE指令响应中返回响应,如图9所示。
(5)UE通过AUTHENTICATION_RESPONSE上发认证响应,网络验证通过后返回REGISTRATION_ACCEPT,表明认证成功,如图10所示。
6 结束语
本文针对5G接入认证过程中与用户卡有关的用户隐私保护、双向认证与密钥协商、5G密钥体系及5G安全上下文等特性,分析了5G用户卡需支持的SUCI功能、双向认证、新增卡文件和服务,在此基础上开展了5G SA实验网络中基于5G用户卡的接入认证试验并获得成功。试验结果对后续5G SA网络建设及商用,提供了可供参考的接入认证实施方案。
参考文献:
[1] 吕萌. GSMA:到2025年,5G将占全球移动连接总数的15%[EB/OL]. (2019-02-27)[2020-04-05]. http://www.cww.net.cn/article?id=447568.
[2] 朱颖,杨思远,朱浩,等. 5G独立组网与非独立组网部署方案分析[J]. 移动通信, 2019,43(1): 40-45.
[3] 何伟俊,桂烜,卢燕青,等. 4G用户不换卡不换号升级5G问题探讨[J]. 移动通信, 2019,43(9): 7-12.
[4] 3GPP. 3GPP TS 33.501 V16.1.0: Security architectureand procedures for 5G System[S]. 2019.
[5] Anand R. Prasad, Alf Zugenmaier, Adrian Escott. 3GPP 5G Security[EB/OL]. (2018-08-06)[2020-04-05]. https://www.3gpp.org/news-events/3gpp-news/1975-sec_5g.
[6] 3GPP. 3GPP TS 33.401 V15.10.0: 3GPP System Architecture Evolution (SAE)[S]. 2019.
[7] 3GPP. 3GPP TS 23.003 V16.2.0: Numbering, addressing and identification[S]. 2020.
[8] 3GPP. 3GPP TS 23.502 V16.3.0: Procedures for the 5G System (5GS)[S]. 2019.
[9] 3GPP. 3GPP TS 31.102 V16.2.0: Characteristics of the Universal Subscriber Identity Module (USIM) application[S]. 2019.
[10] 3GPP. 3GPP TS 33.102 V15.1.0: 3G Security; Security architecture[S]. 2018.