WAPI终端接入IMS网络的认证方法、系统和终端 【技术领域】
本发明涉及无线局域网技术,具体涉及通过无线局域网鉴别与保密基础结构(WAPI,wireless local area network authentication and privacyinfrastructure)实现WAPI终端通过IMS网络认证,安全接入IMS网络的方法。
背景技术
IMS(IP Multimedia Subsystem)即IP多媒体子系统,由3GPP标准组织在R5版本基础上提出,是在基于IP的网络上提供多媒体业务的通用网络架构。IMS以其业务、控制、承载完全分离的水平架构,集中的用户属性和接入无关等特性,一方面解决了目前软交换技术还无法解决的问题,如用户移动性支持、标准开放的业务接口、灵活的IP多媒体业务提供等;另一方面,其接入无关性,也使得IMS成为固定和移动网络融合演进的基础。在无线接入技术方面,IMS除了GSM、GPRS和WCDMA之外,WLAN(Wireless LocalArea Network,无线局域网)通过SIP Proxy(会话初始协议代理)也可以接入。此外,固定网络的LAN和xDSL接入技术也可以接入到IMS。IMS还提供了与ISDN/PSTN传统电路交换网络的互联机制。这样,IMS提供服务的终端除了移动终端之外,还包括固定的电话终端、多媒体智能终端、PC机的软终端等。
在IMS的安全体系中,从UE到网络的各个实体(P-CSCF,S-CSCF,HSS)都涉及到了接入和核心网两个部分的安全概念。IMS安全体系的整体思想是使用IPSec(Internet Protocol Security,因特网协议安全性)的安全特性为IMS系统提供安全保护。对于接入部分而言,UE(用户设备)和P-CSCF(Proxy-Call Session Control Function,代理-呼叫会话控制功能)实体之间涉及到接入安全与身份认证。IMSAKA(IMS认证和密钥协商)实现了UE与网络的双向认证功能。IMS网络的安全是基于用户的私有身份以及存在于卡上的密钥,IMS定义了自己的ISIM(IMS Subscriber Identity Module,IMS用户识别模块)卡,类似于UMTS(通用移动通信系统)的USIM(UMTS SIM)卡,里面存储着IMS相关的安全数据和算法。ISIM存在于UICC(通用集成电路卡)芯片上,和USIM不共享安全函数。目前标准中定义的ISIM主要包含以下参数:
(1)IMPI(IMS Privacy User Identity),IMS私有用户标识。
(2)IMPU(IMS Public User Identity),IMS公共用户标识。
(3)用户所属网络的域名。
(4)IMS域内的SQN序列号。
(5)认证密钥。
在IMS网络中,只有ISIM和HSS(Home Subscriber Server,归属用户服务器)共享这些秘密参数和算法,其他的任何网络实体都不知道密钥和私有身份IMPI。
在归属网络中,HSS上存储了每个IM客户相对应的客户描述(Profile)。这个客户描述包含了客户的信息,并且这些信息不能够泄露给外部。在注册过程中,I-CSCF(Interrogating-Call Session Control Function,查询-呼叫会话控制功能)实体将给用户分配一个S-CSCF(Serving-Call Session ControlFunction,服务-呼叫会话控制功能)实体,客户描述将从HSS下载到S-CSCF上。当一个客户请求接入IMS网络时,S-CSCF将对客户描述和客户接入请求进行匹配性检查以确定是否允许客户继续请求接入,亦即归属控制。
IMS中的双向认证机制采用基于UMTSAKA(UMTS认证和密钥协商)的IMS认证机制。它是一个Challenge-Response(查问/应答)协议,由归属网的认证中心(AuC)发起Challenge。归属网将一个包含Challenge的五元组传送到服务网。这个五元组包含期望的ResponseXRES和一个消息认证码MAC。服务网比较UE的Response和XRES,如果匹配则UE通过了网络的认证。UE计算一个XMAC,并且与收到的MAC比较,如果匹配,则服务网通过了UE的认证。这样,UE与网络之间就完成了双向的身份认证。
以上介绍的认证过程都是基于IMS用户的私有身份和认证密钥等信息,而这些信息都存储于IMS定义的ISIM卡中。但是对于在没有ISIM卡的情况下,IMS用户用WAPI终端是无法接入IMS网络享受各种IMS业务的。
【发明内容】
本发明要解决的技术问题是提供一种WAPI终端接入IMS网络的认证方法、系统和终端。
为解决上述技术问题,本发明提供了一种无线局域网鉴别与保密基础结构(WAPI)终端接入IP多媒体子系统(IMS)网络的认证方法,包括:
预先在归属用户服务器(HSS)中建立IMS用户的IMS私有用户标识(IMPI)与其WAPI证书的对应关系,以及所述IMPI与所述IMS用户对应的鉴别服务单元(ASU)的对应关系;
IMS用户通过WAPI终端接入IMS网络的过程中,所述WAPI终端将该IMS用户的WAPI证书的标识信息作为IMS公共用户标识(IMPU)向服务-呼叫会话控制功能实体(S-CSCF)发送注册报文,报文中还携带所述IMS用户的WAPI证书以及用户签名;
S-CSCF在收到注册报文后,根据证书中的信息在HSS中查找对应的IMPI,再根据所述IMPI查找该IMS用户对应地ASU;ASU和S-CSCF分别对WAPI证书和用户签名进行验证,验证均通过时向所述IMS用户返回注册成功的响应。
进一步地,ASU和S-CSCF分别对WAPI证书和用户签名进行验证,验证均通过时向所述IMS用户返回注册成功的响应是指:S-CSCF将注册报文中的WAPI证书发送给所述ASU进行验证,同时对用户签名进行验证;如果ASU验证该WAPI证书合法,同时S-CSCF通过了对用户签名的验证,则向该IMS用户发送注册成功的响应,否则发送注册失败的响应。
进一步地,所述WAPI终端将该IMS用户的WAPI证书的标识信息作为IMPU是指:所述WAPI终端将该IMS用户的WAPI证书持有者名称作为IMPU。
进一步地,所述用户签名为加密后的WAPI证书摘要。
进一步地,所述根据WAPI证书中的信息在HSS中查找对应的IMPI是指,根据WAPI证书中的序列号和颁发者名称在HSS中查找对应的IMPI。
为解决上述技术问题,本发明还提供了一种无线局域网鉴别与保密基础结构(WAPI)终端接入IP多媒体子系统(IMS)网络的认证系统,包括归属用户服务器(HSS)、服务-呼叫会话控制功能实体(S-CSCF)和鉴别服务单元(ASU),其中:
所述HSS,用于保存IMS用户的IMPI与其WAPI证书的对应关系,以及所述IMPI与所述IMS用户对应的ASU的对应关系;
所述S-CSCF,用于接收WAPI终端发送的注册报文,所述注册报文中的IMPU为IMS用户的WAPI证书的标识信息,所述注册报文中还携带所述IMS用户的WAPI证书以及用户签名,所述S-CSCF根据证书中的信息在HSS中查找对应的IMPI,再根据所述IMPI查找该IMS用户对应的ASU,将注册报文中的WAPI证书发送给ASU;用于对注册报文中的用户签名进行验证;以及用于在验证用户签名合法且ASU验证所述WAPI证书合法时,向所述IMS用户发送注册成功的响应;
所述ASU,用于接收S-CSCF发送的WAPI证书,对所述WAPI证书进行验证,将验证结果返回S-CSCF。
进一步地,所述WAPI适配模块,用于提取IMS用户的WAPI证书中的标识信息;以及用于将无线局域网鉴别基础结构(WAI)模块中的散列计算和公开密钥加密算法的提取出来,提供业务模块调用;
所述业务模块,用于调用散列计算和公开密钥加密算法对WAPI证书进行计算和加密得到用户签名;
所述SIP协议模块,用于在构造注册报文时,将所述WAPI证书的标识信息作为IMS用户的IMPU,以及在注册报文中携带该IMS用户的WAPI证书以及该IMS用户的用户签名。
进一步地,所述WAPI证书的标识信息为WAPI证书持有者名称;所述用户签名为加密后的WAPI证书摘要;所述WAPI证书中的信息为WAPI证书中的序列号和颁发者名称。
为解决上述技术问题,本发明还提供了一种实现接入IMS网络的WAPI终端,所述终端包括WAPI适配模块,业务模块和SIP协议模块,其中:
所述WAPI适配模块,用于提取IMS用户的WAPI证书中的标识信息;以及用于将无线局域网鉴别基础结构(WAI)模块中的散列计算和公开密钥加密算法的提取出来,提供业务模块调用;
所述业务模块,用于调用散列计算和公开密钥加密算法对WAPI证书进行计算和加密得到用户签名;
所述SIP协议模块,用于在构造注册报文时,将所述WAPI证书的标识信息作为IMS用户的IMPU,以及在注册报文中携带该IMS用户的WAPI证书以及该IMS用户的用户签名。
进一步地,所述WAPI适配模块包括提取单元和加密算法单元,其中:信息提取单元,用于解析WAPI证书,从中获得IMS用户的WAPI证书中的标识信息;加密算法单元,用于保存散列计算和公开密钥加密算法,供业务模块调用。
采用本发明所述方法,IMS用户通过WAPI终端可以方便的接入IMS网络,即使在没有ISIM卡的情况下,也可以通过WAPI证书来通过IMS网络的认证,从而使用IMS的各项业务。
【附图说明】
图1为WAPI终端接入IMS网络时各网元之间的交互流程图。
图2为系统结构及接口示意图。
【具体实施方式】
本发明的发明构思是:
预先在HSS中建立IMS用户的IMPI与其WAPI证书、以及IMPI与该IMS用户对应的鉴别服务单元(ASU)的对应关系;
IMS用户通过WAPI终端接入IMS网络的过程中,所述WAPI终端以该IMS用户的WAPI证书的标识信息(例如证书持有者名称)作为IMS用户的IMPU发出注册报文,报文中携带该IMS用户的WAPI证书以及该IMS用户的用户签名(即加密后的证书摘要);S-CSCF在收到注册报文后,根据证书中的信息(例如证书序列号和颁发者名称)在HSS中查找对应的IMPI,再根据IMPI找到IMS用户对应的ASU;S-CSCF将WAPI证书发送给ASU进行验证,同时该S-CSCF对该IMS用户签名进行验证;如果ASU验证该证书合法,同时通过了对用户签名的验证,则认为IMS用户通过认证,发送注册成功的响应给IMS用户,否则发送注册失败的响应。至此,WAPI终端完成了接入IMS网络的认证,以WAPI证书持有者名称的IMPU在网络侧是已注册状态,进而用户可以使用IMS的各种签约业务。
以IMS用户的WAPI证书的标识信息作为IMS用户的IMPU发出注册报文,便于S-CSCF识别,除用于注册流程外,还可以用于后续业务流程。
下面结合附图和具体实施例对本发明提出的WAPI终端接入IMS网络的认证方法的进行具体说明,但本发明不限于这种具体方案。
如图1所示,所述方法包括以下步骤:
步骤101,IMS用户通过WAPI终端接入IMS网络时,WAPI终端向S-CSCF发送SIP注册报文(REGISTER),从WAPI证书中提取证书持有者名称作为发送注册消息的IMPU置于消息头中,并在消息体中携带WAPI证书以及用户签名;
消息的消息体类型为复合消息体(multipart-related)。消息体中包括两部分消息内容,一是终端的WAPI证书,通过消息体类型标识该部分消息体为WAPI证书,例如设置消息体类型为wapi-cert;二是用户签名,通过消息体类型标识该部分消息体为用户签名,例如设置消息体类型为wapi-certdigest,用户签名的计算方法如下:WAPI终端先对WAPI证书进行散列计算得出WAPI证书摘要,然后调用公开密钥加密接口利用发送者的私有密钥对摘要进行加密,得到的密文为发送者对消息体的签名即用户签名。
步骤102a-102b,S-CSCF在接收到终端的注册报文后,从消息体中提取WAPI证书和用户签名,根据消息体中WAPI证书的信息(例如证书序列号和颁发者名称找到对应的用户IMPI,以及对应的ASU;
HSS上预先建立有IMS用户的IMPI与其WAPI证书、以及IMPI与该用户对应的ASU的对应关系。S-CSCF从HSS上查找用户的IMPI以及对应的ASU。
步骤103a-103b,S-CSCF将WAPI终端发送的证书发送给ASU进行鉴别,ASU将鉴别结果告知S-CSCF;
步骤104a-104b,S-CSCF从本地存储的该用户的WAPI证书中,获取公钥信息,利用公开密钥加密算法对消息体中的密文进行解密,获得证书摘要,再对消息体中的证书进行散列计算生成证书摘要,对这两个摘要进行比较,完成对用户签名的鉴别;结合ASU返回的鉴别结果向IMS终端返回注册响应。
如果ASU对用户证书的鉴别结果成功,同时S-CSCF对用户签名的鉴别结果也是成功,则S-CSCF将注册成功的响应(如200OK)发送给终端,否则,只要有一个鉴别结果是失败的,说明用户不存在,S-CSCF向WAPI终端发送注册失败的响应(如403Forbidden)。至此WAPI终端完成接入IMS网络的认证,如果注册成功,网络侧(如HSS)将用IMPU标识的该用户标记为已注册,IMS用户可以使用其签约的各项业务,网络侧通过在HSS上找到的IMS用户对应的IMPI对其进行计费。
实现上述方法的认证系统,包括HSS、S-CSCF和ASU,其中:
所述HSS,用于保存IMS用户的IMPI与其WAPI证书的对应关系,以及所述IMPI与所述IMS用户对应的ASU的对应关系;
所述S-CSCF,用于接收WAPI终端发送的注册报文,所述注册报文中的IMPU为IMS用户的WAPI证书的标识信息,所述注册报文中还携带所述IMS用户的WAPI证书以及用户签名,所述S-CSCF根据证书中的信息在HSS中查找对应的IMPI,再根据所述IMPI查找该IMS用户对应的ASU,将注册报文中的WAPI证书发送给ASU;用于对注册报文中的用户签名进行验证;以及用于在验证用户签名合法且ASU验证所述WAPI证书合法时,向所述IMS用户发送注册成功的响应;
所述ASU,用于接收S-CSCF发送的WAPI证书,对所述WAPI证书进行验证,将验证结果返回S-CSCF。
上述WAPI终端包括WAPI适配模块,业务模块和SIP协议模块,其中:
所述WAPI适配模块,用于提取IMS用户的WAPI证书中的标识信息;以及用于将无线局域网鉴别基础结构(WAI)模块中的散列计算和公开密钥加密算法的提取出来,提供业务模块调用;
所述业务模块,用于调用散列计算和公开密钥加密算法对WAPI证书进行计算和加密得到用户签名;
所述SIP协议模块,用于在构造注册报文时,将所述WAPI证书的标识信息作为IMS用户的IMPU,以及在注册报文中携带该IMS用户的WAPI证书以及该IMS用户的用户签名。
如图2所示,在原有终端的系统结构中,引入了WAPI适配模块。该模块将WAI(无线局域网鉴别基础结构)的散列计算和公开密钥加密算法提取出来,向业务模块提供相应的接口。另外,还向业务模块提供解析WAPI证书的接口,通过该接口可以获取证书中各字段的内容。进一步地,所述WAPI适配模块包括提取单元和加密算法单元,其中:信息提取单元,用于解析WAPI证书,从中获得IMS用户的WAPI证书中的标识信息;加密算法单元,用于保存散列计算和公开密钥加密算法,供业务模块调用。
本发明为接入IMS网络的认证方法,与无线接入方式无关,即无线接入方式可以是WiFi,可以是GPRS等等。如果WAPI终端是通过WiFi接入IMS网络的,则对报文的加密、解密就要调用WPI的对称加密算法和随机生成会话密钥的接口;如果是其他的接入方式,则不会使用WPI的接口。
以上所述仅为本发明较佳的具体实现方式,但本发明的保护范围并不局限与此,任何熟悉该技术的人,在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。