一种实现网络安全通信的数据处理方法和系统的制作方法

文档序号:7701260阅读:235来源:国知局
专利名称:一种实现网络安全通信的数据处理方法和系统的制作方法
技术领域
本发明涉及网络通信安全技术,尤其涉及一种实现网络安全通信的数据处理方法
和系统。
背景技术
在IP多媒体子系统(IMS, IP Multimedia Subsystem)媒体面安全技术规范中,提出基于密钥管理服务器(KMS-Based, Key Management Server)的密钥协商机制。该机制的基本原理是两个非信任用户分别用通用引导架构(GBA, Generic BootstrappingArchitecture)方式与KMS建立信任关系,从而建立两个用户之间的信任关系。
GBA是旨在描述如何在移动的上下文环境中,使用基于第三代合作伙伴计划(3GPP,3rd Generation Partnership Project)的认证禾口密钥协商(AKA, Authenticationand Key Agreement)机制为客户端(UE, User Equipment)和应用服务器提供事先共享秘密。随后,该共享秘密能用于认证客户和应用程序服务器之间的通信。
AKA是移动网络中常用的认证机制,GBA重用AKA机制来逐步实现引导(bootstrap)应用的安全。如图l所示,为现有技术中的GBA架构示意图,GBA引入了一个新的网元Bootstrapping月艮务功會g实体(BSF, BootstrappingService Function),其通过与归属用户服务器(HSS, Home Subscriber Server)之间的接口获得用户的安全信息和认证信息。UE与BSF之间运行AKA认证机制,并根据运行结果(即加密性密钥CK和完整性密钥IK),在BSF和UE之间产生一个会话密钥。应用服务器(NAF, Network A卯licationFunction)能从BSF获得该会话密钥和签约用户档案(Profile)。通过这种方式,NAF和UE就能拥有一个共享密钥,该共享密钥能为随后的应用提供安全保护,特别是在应用会话开始时认证UE和NAF。而且UE与BSF之间的通信、NAF与BSF之间的通信、BSF与HSS之间的通信独立于具体应用,所以是通用的。 现有的GBA过程分为两部分,第一部分是UE与BSF的Bootstrapping过程,生成共享密钥Ks,该过程如图2所示,主要包括以下步骤 步骤201, UE向BSF发出超文本传输协议(HTTP, Hypertext TransferProtocol)请求。 步骤202, BSF从HSS中获取UE所对应GBA用户的全部安全参数和一个认证向量(AV, AV = RAND | | AUTN | | XRES | | CK | | IK)。其中,RAND表示随机数,AUTN表示认证令牌,XRES表示期望的认证应答。 步骤203, BSF将RAND和AUTN (不发送CK、 IK和XRES)发送给UE。 步骤204, UE利用RAND的值,通过AKA算法计算AUTN,并将计算得到的AUTN与BSF
发送过来的AUTN进行比较,如果两者一致,则成功认证网络。另夕卜,UE还利用RAND的值,
并通过AKA算法计算出CK、 IK和RES。这样,BSF和UE都拥有了 IK和CK。 步骤205, UE发送另一个HTTP请求到BSF,请求中包含利用RES计算得到的摘要
AKA响应。
步骤206,BSF将接收到的HTTP请求中的摘要AKA响应与利用XRES计算得到的结 果进行比较,以此对UE进行鉴权。 步骤207,如果鉴权成功,BSF通过CK和IK产生共享密钥Ks,并根据步骤202中的
RAND和BSF服务器名进行编码,以网络地址标识(NAI,NetworkAddress Identifier)的格
式产生Bootstr即ping事件标识(B-TID) 。 B-TID能够唯一标识该次Bootstr即ping事件,
之后NAF可以根据该B-TID获取UE与NAF之间达成的相关密钥KS_NAF。 步骤208, BSF发送2000K消息到UE,通知UE认证成功。该消息中包含B-TID以
及Ks的生存周期。 步骤209, UE接收2000K消息,并根据IK和CK产生共享密钥Ks。 第二部分是UE与NAF建立安全关联的过程,如图3所示,主要包括以下步骤 步骤301, UE通过Ks、 NAF_ID、 B_TID从BSF中导出KS_NAF。 步骤302, UE将B_TID发送给NAF。 步骤303, NAF提供B_TID和NAF_ID给BSF。 步骤304, BSF也根据Ks、 NAF_ID、 B_TID导出同样的KS_NAF。 步骤305 , BSF将KS_NAF发送给NAF。 步骤306 , NAF对KS_NAF进行保存。 步骤307, NAF向UE发送响应消息,告知UE已经完成安全关联的建立。 通过图2和图3所示的GBA过程,UE与NAF之间建立了共享密钥KS_NAF,以此作
为UE与NAF的共享主密钥。 在IMS媒体面安全中也采用GBA架构,并引入KMS来实现NAF的功能,每个UE需 要与KMS建立共享密钥。然而,由于KMS必须与每个UE建立共享密钥,且共享密钥需要定 时刷新,因此KMS需要维护其与每个UE之间的共享密钥的存储开销非常巨大,从而增加了 KMS的状态性。另外,由于KMS与每个UE的共享密钥都存放在KMS中,这样会导致网络通信 的安全性降低,一旦KMS被攻破,KMS与每个用户的共享密钥就会泄露。

发明内容
有鉴于此,本发明的主要目的在于提供一种实现网络安全通信的数据处理方法和
系统,以降低KMS的状态性,并提高网络通信的安全性。 为达到上述目的,本发明的技术方案是这样实现的 本发明提供了一种实现网络安全通信的数据处理方法,该方法包括 密钥管理服务器KMS根据与客户端UE之间建立的共享主密钥生成共享密钥KUE ; 所述KMS利用自身设置的密钥Ktas对KUE进行加密,并将加密后的KUE发送给所述
UE ; 所述UE在向KMS传输数据时,采用KUE加密传输,并将Ktas加密的KUE发送给所述 KMS ; 所述KMS采用Kkms解密得到KUE,并利用得到的KUE对UE传输的数据进行保护。 所述KMS与UE之间建立共享主密钥,具体为 所述UE与Bootstra卯ing服务功能实体BSF通过认证和密钥协商AKA机制建立 共享密钥Ks ;
所述UE和BSF根据相同的参数生成相同的共享主密钥;
所述BSF将共享主密钥发送给KMS。 该方法进一步包括所述UE和BSF采用GBA_ME模式或GBA_U模式生成共享主密 钥。 与KUE —同采用Ktas加密的参数包括下列至少一种时间戳、随机数、序列数、用户 标识ID、K皿的生存周期。 该方法进一步包括所述KMS将KUE,以及Kkms加密的KUE通过媒体网络密钥MIKEY 消息、或因特网协议安全IPsec消息、或安全传输层协议TLS消息、或媒体流的会话描述协 议安全描述SDES消息发送给所述UE。 所述MIKEY消息、或IPsec消息、或TLS消息、或SDES消息采用共享主密钥或共享 主密钥的派生密钥进行加密。 本发明还提供了一种实现网络安全通信的数据处理系统,该系统包括KMS和UE, 其中, 所述KMS,用于根据与所述UE之间建立的共享主密钥生成共享密钥KUE,并利用自 身设置的密钥Kkms对KUE进行加密后发送给所述UE ;还用于在接收到UE传输的数据时,采 用Kkms解密得到KUE,并利用得到的KUE对UE传输的数据进行保护; 所述UE,用于在向所述KMS传输数据时,采用KUE加密传输,并将Ktas加密的KUE发 送给所述KMS。 与KUE —同采用Ktas加密的参数包括下列至少一种时间戳、随机数、序列数、用户 标识ID、K皿的生存周期。 所述KMS进一步用于,将KUE,以及Kkms加密的KUE通过MIKEY消息、或IPsec消息、 或TLS消息、或SDES消息发送给所述UE。 所述MIKEY消息、或IPsec消息、或TLS消息、或SDES消息采用共享主密钥或共享 主密钥的派生密钥进行加密。 本发明所提供的一种实现网络安全通信的数据处理方法和系统,通过GBA方式建 立UE与KMS之间的共享主密钥,并通过共享主密钥生成共享密钥KUE,利用KUE来产生密钥 协商协议中所需的加密安全参数,进而实现UE与KMS之间的安全通信。由于本发明中的K皿 是采用只有KMS才能解读的密文形式传送到UE,再由UE将密文回传给KMS,因此KMS无需 存储和维护K皿,这就降低了 KMS的状态性;另外,由于KMS不再存储KUE,因此当KMS被攻破 时不会造成K皿的泄漏,从而提高了网络通信的安全性。


图1为现有技术中的GBA架构示意图; 图2为现有技术中UE与BSF的Bootstra卯ing过程的流程图; 图3为现有技术中UE与NAF建立安全关联过程的流程图; 图4为本发明一种实现网络安全通信的数据处理方法的流程图; 图5为本发明实施例中KUE生成的示意图; 图6为本发明一种实现网络安全通信的数据处理系统的组成结构示意图。
具体实施例方式
下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。 本发明所提供的一种实现网络安全通信的数据处理方法,如图4所示,主要包括
以下步骤 步骤401, KMS根据与UE之间建立的共享主密钥生成共享密钥KUE。
首先,UE与BSF通过AKA机制建立共享密钥Ks,并根据相同的参数生成相同的共享 主密钥;BSF将共享主密钥通过其与KMS之间的接口发送给KMS,从而UE与KMS即拥有了相 同的共享主密钥;然后,KMS再根据得到的共享主密钥生成KMS与UE之间的共享密钥KUE。
需要指出的是,根据在BSF和KMS的策略,实际应用中可以采用GBA_ME和GBA_U 两种模式生成共享主密钥,GBA—ME模式生成的共享主密钥为K^NAF, GBA—U模式生成的共 享主密钥为Ks_ext_NAF和Ks」nt_NAF。 步骤402, KMS利用自身设置的密钥Kkms对KUE进行加密,并将加密后的KUE发送给 UE。 由于Kkms只有KMS知道(UE无法获知Ktas),因此KMS将Ktas加密的KUE发送给UE 后,UE是无法进行解密的,因此KMS需要将KUE与Kkms加密的KUE —同发送给UE,使得UE能 够获知K皿,进而根据KUE执行对数据的保护。另夕卜,KMS将Kkms加密的KUE发送给UE后将KUE 丢掉,从而,KMS无需再存储和维护K皿,这就降低了 KMS的状态性。 步骤403, UE在向KMS传输数据时,采用KUE加密传输,并将Ktas加密的KUE发送给 KMS。 需要指出的是,在步骤402中如果KMS是第一次向UE发送Kkms加密的该KUE时,也 将不加密的该KUE发送给UE,以使得UE能够获知其与KMS之间的共享密钥KUE并存储。从 而,UE在向KMS传输数据时,采用该KUE加密传输,同时将Kkms加密的KUE再发送给KMS。
步骤404, KMS采用Kkms解密得到KUE,并利用得到的KUE对UE传输的数据进行保护。
KMS接收到Ktas加密的KUE后,利用自身的Ktas解密可以得到K皿,进而可以利用KUE 对UE传输的数据进行解密。由此可以看出,本发明中KMS不再对共享密钥KUE进行存储和 维护,而是由UE在传输数据时提供给KMS,这样不仅节省了 KMS的存储空间,也降低了 KMS 的状态性。 下面结合图5所示KUE生成的示意图,并以KS_NAF为例进行详细说明。对于Ks_
ext_NAF和Ks_int_NAF的实施例,则与KS_NAF的实施例类似。 步骤501, UE与BSF通过AKA机制建立共享密钥Ks。 UE与BSF之间建立共享密钥Ks的过程为现有技术,此处不再赘述。 步骤502, UE和BSF使用相同的参数生成相同的共享主密钥KS_NAF。 步骤503, BSF通过与KMS之间的接口 Zn将KS_NAF发送给KMS,这样UE和KMS即
拥有共享主密钥KS_NAF。 BSF和KMS的安全是由网络域安全保证,安全级别不低于UE和KMS的安全级别。
步骤504, KMS生成共享密钥KUE和随机数RAND。
KUE和RAND可以通过伪随机生成函数生成。 步骤505, KMS禾U用Ktas力B密KUE、用户标识(ID)禾P RAND得到
Etas(KUE| |T| |ID| lRAND)。
Etas是只有KMS才知道的密钥,加密过程可以使用硬件实现,这样可以提高效率, iEkms既可以是一个密钥也可以是一组密钥中的一个。 需要指出的是,为了防止重放攻击,用K^加密K皿时,可以加上时间戳 T(timestamp)、随机数RAND、序列数、用户ID、KUE的生存周期等参数的至少一种,且KUE的生 命周期既可以是时间也可以是使用次数。本发明的实施例以用户ID和RAND与K皿共同加 密进行说明。 步骤506, KMS将KUE、 RAND和Ekms (KUE | | T | | ID | | RAND)通过媒体网络密钥(MIKEY, Multimedia Internet KEYing)消息发送至U UE。 如果UE与KMS之间不支持MIKEY,则可以采用其他安全方式,如因特网协议 安全(IPsec, Internet Protocol Security)、安全传输层协议(TLS, TransportLayer Security Protocol)、媒体流的会话描述协议安全描述(SDES, SessionDescription Protocol Security Descriptions for Media Streams) 等 来 传 送KUE、 RAND禾口 Etas(KUE| |T| I ID| lRAND),消息的安全性可由共享主密钥KS_NAF或KS_NAF的派生密钥来提 供。另外,如果K^是一组密钥中的一个,那么在消息中需要提供密钥的索引号。
步骤507, UE使用KS_NAF解读来自KMS的MIKEY消息,获得KUE、 RAND和 Etas(KUE| |T| |ID| lRAND)。 上述过程完成后,KMS无需维护IW,所以减少了 KMS的负担;另外,由于KMS不再 需要存储KUE,因此当KMS被攻破时不会造成KUE的泄漏,这也增强了 KMS的安全性。
为实现上述的数据处理方法,本发明还提供了一种实现网络安全通信的数据处理 系统,如图6所示,该系统包括KMS IO和UE 20。 KMS 10,用于根据与UE 20之间建立的共 享主密钥生成共享密钥KUE,并利用自身设置的密钥Kkms对KUE进行加密后发送给UE 20 ;还 用于在接收到UE 20传输的数据时,采用Ktas解密得到KUE,并利用得到的KUE对UE 20传输 的数据进行保护。UE20,用于在向KMS 10传输数据时,采用KuE加密传输,并将K^加密的 1^发送给KMS 10。 需要指出的是,与KUE —同采用Ktas加密的参数包括下列至少一种时间戳、随机 数、序列数、用户ID、KUE的生存周期。 较佳的,KMS 10可以将Ktas加密的KUE通过MIKEY消息、或IPsec消息、或TLS消 息、或SDES消息发送给UE 20。 MIKEY消息、或IPsec消息、或TLS消息、或SDES消息可以 采用共享主密钥或共享主密钥的派生密钥进行加密。 以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
一种实现网络安全通信的数据处理方法,其特征在于,该方法包括密钥管理服务器KMS根据与客户端UE之间建立的共享主密钥生成共享密钥KUE;所述KMS利用自身设置的密钥Kkms对KUE进行加密,并将加密后的KUE发送给所述UE;所述UE在向KMS传输数据时,采用KUE加密传输,并将Kkms加密的KUE发送给所述KMS;所述KMS采用Kkms解密得到KUE,并利用得到的KUE对UE传输的数据进行保护。
2. 根据权利要求1所述实现网络安全通信的数据处理方法,其特征在于,所述KMS与UE之间建立共享主密钥,具体为所述UE与Bootstr即ping服务功能实体BSF通过认证和密钥协商AKA机制建立共享密钥Ks ;所述UE和BSF根据相同的参数生成相同的共享主密钥;所述BSF将共享主密钥发送给KMS。
3. 根据权利要求2所述实现网络安全通信的数据处理方法,其特征在于,该方法进一步包括所述UE和BSF采用GBA_ME模式或GBA_U模式生成共享主密钥。
4. 根据权利要求1所述实现网络安全通信的数据处理方法,其特征在于,与KUE —同采用Kkms加密的参数包括下列至少一种时间戳、随机数、序列数、用户标识ID、 KUE的生存周期。
5. 根据权利要求4所述实现网络安全通信的数据处理方法,其特征在于,该方法进一步包括所述KMS将KUE,以及Kkms加密的KUE通过媒体网络密钥MIKEY消息、或因特网协议安全IPsec消息、或安全传输层协议TLS消息、或媒体流的会话描述协议安全描述SDES消息发送给所述UE。
6. 根据权利要求5所述实现网络安全通信的数据处理方法,其特征在于,所述MIKEY消息、或IPsec消息、或TLS消息、或SDES消息采用共享主密钥或共享主密钥的派生密钥进行加密。
7. —种实现网络安全通信的数据处理系统,其特征在于,该系统包括KMS和UE,其中,所述KMS,用于根据与所述UE之间建立的共享主密钥生成共享密钥KUE,并利用自身设置的密钥Kkms对KUE进行加密后发送给所述UE ;还用于在接收到UE传输的数据时,采用Ktas解密得到KUE,并利用得到的KUE对UE传输的数据进行保护;所述UE,用于在向所述KMS传输数据时,采用KUE加密传输,并将Ktas加密的KUE发送给所述KMS。
8. 根据权利要求7所述实现网络安全通信的数据处理系统,其特征在于,与KUE —同采用Kkms加密的参数包括下列至少一种时间戳、随机数、序列数、用户标识ID、 KUE的生存周期。
9. 根据权利要求7或8所述实现网络安全通信的数据处理系统,其特征在于,所述KMS进一步用于,将KUE,以及Kkms加密的KUE通过MIKEY消息、或IPsec消息、或TLS消息、或SDES消息发送给所述UE。
10. 根据权利要求9所述实现网络安全通信的数据处理系统,其特征在于,所述MIKEY消息、或IPsec消息、或TLS消息、或SDES消息采用共享主密钥或共享主密钥的派生密钥进行加密。
全文摘要
本发明公开了一种实现网络安全通信的数据处理方法,包括密钥管理服务器(KMS)根据与客户端(UE)之间建立的共享主密钥生成共享密钥KUE;KMS利用自身设置的密钥Kkms对KUE进行加密,并将加密后的KUE发送给UE;UE在向KMS传输数据时,采用KUE加密传输,并将Kkms加密的KUE发送给KMS;KMS采用Kkms解密得到KUE,并利用得到的KUE对UE传输的数据进行保护。本发明还公开了一种实现网络安全通信的数据处理系统,降低了KMS的状态性,并提高了网络通信的安全性。
文档编号H04L9/08GK101719895SQ20091008832
公开日2010年6月2日 申请日期2009年6月26日 优先权日2009年6月26日
发明者朱允文, 沈炯, 滕志猛, 田甜, 韦银星 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1