标识密码技术在IMS网络中的应用*
2022-07-12张鹤鸣
宗 静,张鹤鸣
(1.中国人民解放军第61623部队,北京 100000;2.中国电子科技集团公司第三十研究所,四川 成都 610041)
0 引言
IP多媒体子系统(IP Multimedia Subsystem,IMS)是第三代合作伙伴计划(3rd Generation Partnership Project,3GPP)提出的支持IP多媒体业务的一套体系框架,基于初始会话协议(Session Initiation Protocol,SIP)完成呼叫控制功能,实现多媒体业务的创建、管理和终结。IMS通过IP承载网实现多业务的融合,形成控制和承载相分离、业务和控制相分离的新一代软交换平台。选择IMS作为固网、移动统一的核心网架构,已经是国内外移动通信领域主要标准组织的共识[1]。
然而,由于IP网络的先天脆弱性和接入方式的多样性,基于IMS的下一代网络在网络架构、协议实现以及管理运维等方面存在着各种各样的安全性问题,如易受盗用、欺骗、破坏和中断等恶意行为影响,因此必须引起重视。
标识密码(Identity-Based Cryptography,IBC)技术基于双线性对的密码算法,利用用户身份生成设备公钥,进而构建管理简单、复杂度低的公钥密码体系,在数字签名、数据加密等方面具有天然的优势。2016年发布的SM9算法,是我国自主制定的标识密码算法标准[2],在实现网络认证、终端授权和密钥交换等方面,更适用于基于身份的业务应用系统,因此迅速成为业内研究的热点。
本文的第1节简要介绍标识密码技术,分析其在规模化应用中的不足;第2节介绍标识密码机制在IMS网络中的应用部署方案,重点描述在IMS一体化安全防护框架下,基于标识密码设计的用户私钥分发、终端入网认证和工作密钥协商等业务流程,并对安全性进行分析;最后一节对全文进行总结。
1 标识密码技术
IBC体系标准主要包括标识加密(Identity-Based Encryption,IBE)算法组、标识签名(Identity-Based Significant,IBS)算法组、标识身份认证(Identity-Based KeyAuthentication,IBKA)协议3个部分[3]。
在IBC技术中,用户公钥由用户标识和系统指定的公钥转换算法运算产生,用户私钥由系统信任的第三方私钥生成机构(Private Key Generator,PKG)基于私钥生成算法运算产生。采用IBC技术无须认证中心为终端生成公私钥对,并且无须申请和交换证书传递设备公钥。与传统的公钥基础设施(Public Key Infrastructure,PKI)体系相比,能够简化公钥密码管理的复杂度,具有天然的密码委托功能,更适用于需要网络监管的用户环境。
IBC技术在实际应用中,主要面临的问题如下文所述。
(1)私钥的安全分发问题。由于用户私钥的安全性完全依赖于PKG的安全性,因此如何采用系统性的方案保证PKG的安全,确保用户信任PKG,并能够利用安全信道获取私钥,是IBC技术实用化首先要解决的问题。
(2)入网认证的效率问题。基于IBC技术如何实现无证书的认证过程,提高网络与终端的认证效率。
(3)密钥的安全协商问题。基于IBC技术如何完成业务密钥的安全协商,确保信息不被第三方窃取、破坏。
2 标识密码在IMS网络中的应用部署
2.1 部署方案
在IMS网络中,用户接入安全、业务控制实体安全和端到端用户媒体安全构成了一体化安全防护框架的核心[4]。标识密码技术在基于IMS的一体化安全防护框架中的应用部署方案如图1所示,该方案的主要由以下部分组成:
图1 标识密码在IMS网络中的应用部署方案
(1)网络由IMS核心网、承载网、用户网和密码管理网组成;
(2)私钥生成机构(Private Key Generator,PKG)包括主PKG和域PKG,主PKG部署在密码管理网络内部,用于产生系统公共参数和系统主密钥,域PKG部署在用户网内部,用于验证用户身份标识,负责为用户产生原始私钥;
(3)密钥隐私机构(Key Privacy Authority,KPA)部署在密码管理网络内部,为增强用户私钥部件的隐私性而设置。
在IMS一体化安全防护框架下,设计私钥安全分发、终端入网认证、业务密钥协商3个流程。其中,用户私钥由用户归属的域PKG和一组KPA共同计算产生,最大限度地保证用户私钥的隐秘性[5]。
2.2 基于标识密码的流程设计
在系统部署完成后,主PKG执行系统初始化算法,利用系统安全参数产生公共参数和主密钥。密钥隐私机构KPAi通过公共参数计算双线性映射,产生各个KPAi的公开参数pKPAi。
2.2.1 私钥安全分发
私钥安全分发负责将设备私钥在线分发至各安全终端。私钥安全分发包括密钥申请、密钥隐藏和密钥提取3个阶段,具体流程如图2所示。
图2 私钥安全分发实现流程
(1)密钥申请
安全终端U的设备信息记为IDU,生成1组临时公私钥对,记为TPKtmp/TSKtmp,随机选取x∈Zn,g∈Gp1,∈Gp3,其中Zn为自然数的集合,x为属于Zn的随机值,Gp1和Gp3分别为混合双线性群G中阶为P1和P3的子群,g为Gp1中的随机元素,为Gp3中的随机元素,计算盲因子终端将临时公钥TPKtmp、盲因子FU和设备信息IDU组包,发送至域PKG。
域PKG先检查终端IDU的身份合法性和临时公钥TPKtmp的有效性,然后利用盲因子FU生成终端原始私钥,记为TSKori;利用域PKG设备私钥对IDU进行签名,记为SIGNU,获取当前时间戳TIMEC,利用临时公钥TPKtmp对TIMEC加密保护,记为EN_TPKtmp(TIMEC);利用KPA公钥TPKKPA对原始私钥、签名和时间戳加密保护,记为EN_TPKKPA(TSKori||SIGNU||TIMEC)。域PKG将EN_TPKtmp(TIMEC)与EN_TPKKPA(TSKori||SIGNU||TIMEC)组包发送至安全终端U。
安全终端利用临时私钥TSKtmp解密EN_TPKtmp(TIMEC)获取TIMEC,将临时公钥TPKtmp、盲因子FU和EN_TPKKPA(TSKori||SIGNU||TIMEC)组包发送至各个密钥隐私机构KPAi。
KPAi利用私钥TSKKPA解密获取原始私钥TSKori、签名SIGNU和时间戳TIMEC。首先检查时间戳TIMEC和签名SIGNU的有效性,其次通过原始私钥部件TSKori和盲因子FU计算产生终端U的私钥部件TSKUi,最后KPAi将时间戳TIMEC、私钥部件TSKUi组包,利用终端临时公钥TPKtmp加密,记为EN_TPKtmp(TSKUi||TIMEC),送至终端U。
(3)密钥提取
终端U通过临时私钥TSKtmp解密获取时间戳TIMEC、用户私钥部件TSKUi。在时间戳TIMEC有效的情况下,组合TSKUi获取设备私钥TSKU。
2.2.2 终端入网认证
终端入网认证负责完成安全终端与IMS核心网络之间的双向认证,利用时间戳原理设计,包括入网认证请求、网络认证应答两个流程。
(1)入网认证请求
安全终端利用设备私钥TSKU对时间戳TIMEC、终端信息IDU签名,记为SignTSKU(TIMEC||IDU),然后将时间戳TIMEC、终端信息IDU、签名数据SignTSK(TIMEC||IDU)组包,发送至网络认证设备S。
在欧几里得的《几何原本》一书中给出勾股定理的以下证明:设△ABC为一直角三角形,其中A为直角。从A点划一直线至对边,使其垂直于对边。延长此线把对边上的正方形一分为二,其面积分别与其余两个正方形相等。(证明过程略)
网络认证设备S收到终端入网认证请求,获取时间戳TIMEC、终端信息IDU和签名数据SignTSK(TIMEC||IDU)后,首先检查时间戳TIMEC和终端身份IDU的合法性,其次利用终端信息IDU生成终端的设备公钥TPKU并验证签名,如果签名有效,则通过终端的入网认证。
(2)网络认证应答
网络认证设备利用私钥TSKS对时间戳TIMEC和终端信息IDU进行签名,记为SignTSKS(TIMEC||IDU),将签名数据组包发送至终端。
终端利用认证设备公开信息IDS,生成认证设备公钥TPKS并验证签名SignTSKS(TIMEC||IDU),如果签名有效,则通过网络认证,至此安全终端与网络完成双向认证。
2.2.3 业务密钥协商
业务密钥协商是保障用户数据机密性的基础,包括协商请求、协商应答和协商确认3个阶段,下面以终端A和终端B为例,示意业务密钥的协商流程。
(1)协商请求
终端A首先产生1组随机数RandA,获取当前时间戳TIMEA,通过终端B的标识IDB生成B的公钥TPKB,其次利用TPKB对RandA、TIMEA加密保护,记为EN_TPKB(RandA||TIMEA),发送至终端B。
(2)协商应答
终端B收到协商请求,利用设备私钥TSKB解密,获取时间戳TIMEA和随机数RandA,如果时间戳在正常时效内,则获取RandA。
终端B计算业务保护密钥为KEY=RandA⊗RandB。
(3)协商确认
终端A利用KEY加密时间戳TIMEA,记为ENKEY(TIMEA),发送至终端B。
终端B利用KEY解密ENKEY(TIMEA),获取时间戳TIMEA,如果TIMEA有效,则密钥协商成功,终端A与B之间开启密码保护。
2.3 安全性分析
方案继承了IBC技术密码管理简捷、高效的特点,在解决私钥安全分发、终端入网认证和业务密钥协商等关键问题上,增加了新的安全性措施,具体如下文所述。
(1)在私钥分发问题上,引入了临时公私钥对和用户盲因子的因素,用户私钥由归属域PKG和一组KPAi计算产生,通过临时公钥进行加密保护,保证只有合法用户才能得到私钥。
(2)在入网认证过程中,无需证书传递,终端和网络基于标识密码的公钥生成与签名算法,结合时间戳原理,实现高效的双向认证,保证网络和终端运行环境的安全。
(3)在密钥协商问题上,利用时间戳原理保证报文的新鲜性,通过指纹码防止第三方的伪装,采用公钥加密的算法特性传递协商数据,有效保证了协商过程的前向安全和抗重放性。
3 结语
本文对IMS一体化安全防护框架进行了研究,基于标识密码技术设计了私钥安全分发、终端入网认证和业务密钥协商3个流程。在简化公钥密码管理基础的同时,增加新的安全性保护措施,为标识密码技术在IMS网络中的部署应用提供了新的思路。