密钥分发和接收方法、第一密钥管理中心和第一网元与流程

文档序号:12068991阅读:415来源:国知局
密钥分发和接收方法、第一密钥管理中心和第一网元与流程

本发明涉及移动通信技术领域,尤其涉及一种密钥分发和接收方法、第一密钥管理中心和第一网元。



背景技术:

现有的移动通信安全架构中,数据由网元到Internet的安全保护都是hop-by-hop形式,即采用分段加密的形式完成保护。而且,在已有2G/3G/4G移动架构中,端到端之间的通信数据也是采用分段加密的方式。虽然分段加密比较灵活,但由于中间节点可以获得通信数据的明文,并不能够抗击通信数据遭到窃听攻击,因此采用分段加密的方式的安全性较差。

例如,请参阅图1,图1为现有技术中4G LTE的协议栈架构的示意图。在图1中,用户网元(英文全称:User Experience,缩写:UE)发送至分组数据网络(英文全称:Packet Data Network,缩写:PDN)网关(英文全称:Gateway,缩写:GW)的数据从UE出发,依次经过基站eNodeB和服务器网关(serving GW)后才到达PDN GW。其中,UE和eNodeB之间采用PDCP安全协议加密保护,eNodeB与serving GW之间,以及serving GW与PDN GW之间都采用IPSec的安全协议进行保护。由于基站处于室外场景,攻击者可以通过攻破基站来搭线窃听,以获取到PDCP协议解密后的明文内容。



技术实现要素:

本发明实施例第一方面提供了一种密钥分发方法,包括:

第一密钥管理中心获取第一网元的共享密钥,所述第一网元的共享密钥为根据所述第一网元认证后得到的密钥参数或者所述第一网元的根密钥生成的;

所述第一密钥管理中心获取业务密钥,所述业务密钥用于对所述第一网元和第二网元之间的第一业务中的通信数据进行加密和/或完整性保护;

所述第一密钥管理中心采用所述第一网元的共享密钥对所述业务密钥进 行加密和/或完整性保护,生成第一安全保护参数;

所述第一密钥管理中心执行以下步骤A和步骤B的其中一个:

A、将所述第一安全保护参数发送至所述第一网元;

B、将所述第一安全保护参数发送至第二密钥管理中心,以便所述第二密钥管理中心发送所述第一安全保护参数至所述第一网元。

结合第一方面,在第一方面的第一种可能的实施方式中,所述第一密钥管理中心获取第一网元的共享密钥,包括:

所述第一密钥管理中心通过和所述第一网元进行AKA鉴权获取第一参数,所述第一参数包括Kasme、完整性密钥和加密密钥中的至少一项;

所述第一密钥管理中心计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量;其中,所述第一预置密钥推衍函数的自变量包括所述第一参数。

结合第一方面,在第一方面的第二种可能的实施方式中,所述第一密钥管理中心获取第一网元的共享密钥,包括:

所述第一密钥管理中心接收移动管理节点MME发送的第一网元的共享密钥,其中,所述第一网元的共享密钥是所述MME通过第三参数计算的;或者,

所述第一密钥管理中心接收MME发送的第三参数;所述第一密钥管理中心计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量;其中,所述第一预置密钥推衍函数的自变量包括所述第三参数;

其中,所述第三参数为所述MME通过和第一网元AKA鉴权得到的,所述第三参数包括Kasme、完整性密钥、加密密钥、非接入层完整性密钥、非接入层加密密钥和基站密钥中的至少一项。

结合第一方面,在第一方面的第三种可能的实施方式中,当所述第一密钥管理中心执行所述步骤A时,所述第一密钥管理中心获取业务密钥,包括:

选择一个随机数,所述业务密钥包括所述随机数;或者,

获取随机数、所述第一网元的Kasme、所述第一网元的完整性密钥、所述第一网元的加密密钥、所述第一网元的根密钥和所述第一网元的共享密钥 中的至少一项,以及所述第一业务的业务参数,计算第二预置密钥推衍函数的因变量,所述业务密钥包括所述第二预置密钥推衍函数的因变量,其中,所述第二预置密钥推衍函数的自变量包括所述第一业务的参数,以及包括随机数、所述第一网元的Kasme、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项。

结合第一方面,在第一方面的第四种可能的实施方式中,当所述第一密钥管理中心执行所述步骤B时,所述第一密钥管理中心获取业务密钥,包括:

选择一个随机数,所述业务密钥包括所述随机数;

或者,

获取随机数、第一网元的Kasme、所述第一网元的完整性密钥、所述第一网元的加密密钥、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项,以及所述第一业务的业务参数,根据所述随机数、第一网元的Kasme、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算第一密钥;接收所述第二密钥管理中心发送的第二密钥,所述第二密钥是通过所述随机数、第二网元的Kasme、所述第二网元的根密钥和所述第二网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算得到的;根据所述第一密钥和所述第二密钥计算所述业务密钥;

或者,

接收所述第二密钥管理中心发送的业务密钥,所述业务密钥是所述第二密钥管理中心根据随机数、所述第二网元的Kasme、所述第二网元的完整性密钥、所述第二网元的加密密钥、所述第二网元的根密钥和所述第二网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算得到的。

结合第一方面,在第一方面的第五种可能的实施方式中,所述第一密钥管理中心获取业务密钥,之前还包括:

所述第一密钥管理中心接收来自所述第一网元、所述第二网元、网关或者服务器的密钥请求,所述密钥请求用于发起所述业务密钥的生成,所述密钥请求包括所述第一网元的身份标识、所述第二网元的身份标识和所述第一业务的业务参数中的至少一项。

结合第一方面,在第一方面的第六种可能的实施方式中,当所述第一密钥管理中心执行所述步骤A时,所述第二网元和所述第一密钥管理中心之间建立有安全信道;

所述方法还包括:

通过所述安全信道将所述业务密钥发送至所述第二网元。

本发明实施例第二方面提供了一种密钥接收方法,包括:

第一网元获取第一网元的共享密钥,所述第一网元的共享密钥为根据所述第一网元认证后得到的密钥参数或者所述第一网元的根密钥生成的;

所述第一网元接收所述第一密钥管理中心发送的第一安全保护参数,所述第一安全保护参数是所述第一密钥管理中心采用所述第一网元的共享密钥对业务密钥加密和/或完整性保护后得到的;

所述第一网元根据所述第一网元的共享密钥对所述第一安全保护参数解密,获得业务密钥,所述业务密钥用于所述第一网元和第二网元通信时对通信数据的加密和/或完整性保护。

结合第二方面,在第二方面的第一种可能的实施方式中,所述第一网元获取第一网元的共享密钥,包括以下步骤C和/或步骤D:

步骤C、所述第一网元获取所述第一网元的根密钥,计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量,其中,所述第一预置密钥推衍函数的自变量包括所述第一网元的根密钥;

步骤D、所述第一网元通过进行AKA鉴权获取第一参数,所述第一参数包括Kasme、完整性密钥和加密密钥中的至少一项;所述第一网元计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量,其中,所述第一预置密钥推衍函数的自变量包括所述第一参数。

结合第二方面的第一种可能的实施方式,在第二方面的第二种可能的实施方式中,所述方法还包括:

所述第一网元获取所述第二网元的身份标识和/或所述第一业务的业务参数,所述第一预置密钥推衍函数的自变量还包括所述第二网元的身份标识和/ 或所述第一业务的业务参数。

结合第二方面,在第二方面的第三种可能的实施方式中,所述第一网元接收所述第一密钥管理中心发送的第一安全保护参数,之前还包括:

所述第一网元向所述第一密钥管理中心发送密钥请求,所述密钥请求用于发起所述业务密钥的生成,所述密钥请求包括所述第一网元的身份标识、第二网元的身份标识和所述第一业务的业务参数中的至少一项。

结合第二方面的第三种可能的实施方式,在第二方面的第四种可能的实施方式中,所述第一网元向所述第一密钥管理中心发送密钥请求,之前还包括:

所述第一网元向业务服务器发送业务请求,其中,所述业务服务器用于执行所述第一网元和所述第二网元之间的业务管理;

所述第一网元接收所述业务服务器发送的响应消息,所述响应消息包括指示符、所述第一网元的标识、所述第二网元的标识和所述第一业务的业务参数中的至少一种,其中所述指示符用于指示所述第一业务授权成功。

结合第二方面的第三种可能的实施方式,在第二方面的第五种可能的实施方式中,所述第一网元向所述第一密钥管理中心发送密钥请求,之前还包括:

所述第一网元接收业务服务器、网关、MME或者第二网元发送的业务消息,所述业务消息包括所述第一网元的身份标识、所述第二网元的身份标识和所述第一业务的业务参数中的至少一项。

本发明实施例第三方面提供了一种第一密钥管理中心,包括:

第一获取模块,用于获取第一网元的共享密钥,所述第一网元的共享密钥为根据所述第一网元认证后得到的密钥参数或者所述第一网元的根密钥生成的;

第二获取模块,用于获取业务密钥,所述业务密钥用于对所述第一网元和第二网元之间的第一业务中的通信数据进行加密和/或完整性保护;

第一生成模块,用于采用所述第一网元的共享密钥对所述业务密钥进行加密和/或完整性保护,生成第一安全保护参数;

第一发送模块,用于执行以下步骤A和步骤B的其中一个:

A、将所述第一安全保护参数发送至所述第一网元;

B、将所述第一安全保护参数发送至第二密钥管理中心,以便所述第二密钥管理中心发送所述第一安全保护参数至所述第一网元。

结合第三方面,在第三方面的第一种可能的实施方式中,所述第一获取模块具体用于:

通过和所述第一网元进行AKA鉴权获取第一参数,所述第一参数包括Kasme、完整性密钥和加密密钥中的至少一项;

计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量;其中,所述第一预置密钥推衍函数的自变量包括所述第一参数。

结合第三方面,在第三方面的第二种可能的实施方式中,所述第一获取模块具体用于:

接收移动管理节点MME发送的第一网元的共享密钥,其中,所述第一网元的共享密钥是所述MME通过第三参数计算的;或者,

接收MME发送的第三参数,所述第三参数为所述MME通过和第一网元AKA鉴权得到的;计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量;其中,所述第一预置密钥推衍函数的自变量包括所述第三参数;

其中,所述第三参数为所述MME通过和第一网元AKA鉴权得到的,所述第三参数包括Kasme、完整性密钥、加密密钥、非接入层完整性密钥、非接入层加密密钥和基站密钥中的至少一项。

结合第三方面,在第三方面的第三种可能的实施方式中,当所述第一发送模块用于执行所述步骤A时,所述第二获取模块具体用于:

选择一个随机数,所述业务密钥包括所述随机数;或者,

获取随机数、所述第一网元的Kasme、所述第一网元的完整性密钥、所述第一网元的加密密钥、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项,以及所述第一业务的业务参数,计算第二预置密钥推衍函数的因变量,所述业务密钥包括所述第二预置密钥推衍函数的因变量,其中,所述第二预置密钥推衍函数的自变量包括所述第一业务的参数,以及包括随 机数、所述第一网元的Kasme、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项。

结合第三方面,在第三方面的第四种可能的实施方式中,当所述第一发送模块用于执行所述步骤B时,所述第二获取模块具体用于:

选择一个随机数,所述业务密钥包括所述随机数;

或者,

获取随机数、第一网元的Kasme、所述第一网元的完整性密钥、所述第一网元的加密密钥、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项,以及所述第一业务的业务参数,根据所述随机数、第一网元的Kasme、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算第一密钥;接收所述第二密钥管理中心发送的第二密钥,所述第二密钥是通过所述随机数、第二网元的Kasme、所述第二网元的根密钥和所述第二网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算得到的;根据所述第一密钥和所述第二密钥计算所述业务密钥;

或者,

接收所述第二密钥管理中心发送的业务密钥,所述业务密钥是所述第二密钥管理中心根据随机数、所述第二网元的Kasme、所述第二网元的完整性密钥、所述第二网元的加密密钥、所述第二网元的根密钥和所述第二网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算得到的。

结合第三方面,在第三方面的第五种可能的实施方式中,所述第一密钥管理中心还包括:

第一接收模块,用于在所述第二获取模块获取业务密钥之前,接收来自所述第一网元、所述第二网元、网关或者服务器的密钥请求,所述密钥请求用于发起所述业务密钥的生成,所述密钥请求包括所述第一网元的身份标识、所述第二网元的身份标识和所述第一业务的业务参数中的至少一项。

结合第三方面,在第三方面的第六种可能的实施方式中,当所述第一发送模块用于执行所述步骤A时,所述第二网元和所述第一密钥管理中心之间建立有安全信道;

所述第一密钥管理中心还包括第二发送模块,用于通过所述安全信道将所述业务密钥发送至所述第二网元。

本发明实施例第四方面提供了一种第一网元,包括:

第一获取模块,用于获取第一网元的共享密钥,所述第一网元的共享密钥为根据所述第一网元认证后得到的密钥参数或者所述第一网元的根密钥生成的;

第一接收模块,用于接收所述第一密钥管理中心发送的第一安全保护参数,所述第一安全保护参数是所述第一密钥管理中心采用所述第一网元的共享密钥对业务密钥加密和/或完整性保护后得到的;

第二获取模块,用于根据所述第一网元的共享密钥对所述第一安全保护参数解密,获得业务密钥,所述业务密钥用于所述第一网元和第二网元通信时对通信数据的加密和/或完整性保护。

结合第四方面,在第四方面的第一种可能的实施方式中,所述第一获取模块具体用于执行以下步骤C和/或步骤D:

步骤C、获取所述第一网元的根密钥,计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量,其中,所述第一预置密钥推衍函数的自变量包括所述第一网元的根密钥;

步骤D、通过进行AKA鉴权获取第一参数,所述第一参数包括Kasme、完整性密钥和加密密钥中的至少一项;计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量,其中,所述第一预置密钥推衍函数的自变量包括所述第一参数。

结合第四方面的第一种可能的实施方式,在第四方面的第二种可能的实施方式中,所述第一网元还包括:

第三获取模块,用于获取所述第二网元的身份标识和/或所述第一业务的业务参数,所述第一预置密钥推衍函数的自变量还包括所述第二网元的身份标识和/或所述第一业务的业务参数。

结合第四方面,在第四方面的第三种可能的实施方式中,所述第一网元还包括第一发送模块,用于在所述第一接收模块接收所述第一密钥管理中心发送的第一安全保护参数之前,向所述第一密钥管理中心发送密钥请求,所 述密钥请求用于发起所述业务密钥的生成,所述密钥请求包括所述第一网元的身份标识、第二网元的身份标识和所述第一业务的业务参数中的至少一项。

结合第四方面的第三种可能的实施方式,在第四方面的第四种可能的实施方式中,所述第一网元还包括:

第二发送模块,用于在所述第一发送模块向所述第一密钥管理中心发送密钥请求之前,向业务服务器发送业务请求,其中,所述业务服务器用于执行所述第一网元和所述第二网元之间的业务管理;

第二接收模块,用于接收所述业务服务器发送的响应消息,所述响应消息包括指示符、所述第一网元的标识、所述第二网元的标识和所述第一业务的业务参数中的至少一种,其中所述指示符用于指示所述第一业务授权成功。

结合第四方面的第三种可能的实施方式,在第四方面的第五种可能的实施方式中,所述第一网元还包括:

第三接收模块,用于在所述第一发送模块向所述第一密钥管理中心发送密钥请求之前,接收业务服务器、网关、MME或者第二网元发送的业务消息,所述业务消息包括所述第一网元的身份标识、所述第二网元的身份标识和所述第一业务的业务参数中的至少一项。

从以上技术方案可以看出,本发明实施例具有以下优点:

本发明中,第一密钥管理中心将用于网元之间通信的业务密钥发送至网元,使得网元之间相互发送数据时可以采用该业务密钥对该数据进行保护,避免了该数据在发送过程中遭到窃听攻击;而且,第一密钥管理中心还采用第一网元的共享密钥对业务密钥加密和/或完整性保护后生成第一安全保护参数发送给第一网元,由于第一网元采用和第一密钥管理中心相同的方法生成第一网元的共享密钥,能够将第一安全保护参数还原出业务密钥,保证了业务密钥的安全。

附图说明

图1为现有技术中4G LTE的协议栈架构的示意图;

图2为本发明实施例提供的通信系统的一个实施例的结构示意图;

图3为图2所示通信系统的密钥分发流程的一个实施例的流程示意图;

图4为本发明的密钥分发流程的一个实施例的流程示意图;

图5为本发明的密钥接收流程的一个实施例的流程示意图

图6为本发明的第一密钥管理中心的一个实施例的结构示意图;

图7为本发明的第一密钥管理中心的另一个实施例的结构示意图;

图8为本发明的第一网元的一个实施例的结构示意图;

图9为本发明的第一网元的另一个实施例的结构示意图;

图10为本发明的第一网元的另一个实施例的结构示意图;

图11为本发明的第一网元的另一个实施例的结构示意图;

图12为本发明的第一网元的另一个实施例的结构示意图;

图13为本发明的第一密钥管理中心的一个实施例的结构示意图;

图14为本发明的第一网元的一个实施例的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等是用于区别不同的对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。

为了方便理解本发明实施例,首先在此介绍本发明实施例描述中会引入的通信系统。如图2所示,图2为本发明实施例提供的通信系统的一个实施例的结构示意图。通信系统包括密钥管理中心(英文:Key Management System,缩写:KMS)1、网元1、KMS 2和网元2。其中,网元1和网元2可以分别是用户终端(英文:User equipment,缩写:UE)、基站、服务器、网关、控制网元中的任意一种,或者是其他发送数据时需对数据加密和/或完整性保护的设备,在此不作限制。KMS 1和KMS 2可以属于相同的运营商或者不同的 运营商,或者为Internet中的设备,在此不作限制。

本发明中,网元1向网元2发送通信数据时,采用业务密钥或利用业务密钥推衍后得到的密钥对该通信数据进行保护后再发送给网元2,其中,对通信数据进行保护包括采用该业务密钥或利用业务密钥推衍后得到的密钥对该通信数据进行加密和/或完整性保护。网元2根据该业务密钥或利用业务密钥推衍后得到的密钥对接收到的通信数据还原。因此,在网元1发送通信数据前,网元1和网元2需分别获取到业务密钥。

请参阅图3,图3为图2所示通信系统的密钥分发流程的一个实施例的流程示意图。如图3所示,本实施例中的密钥分发流程包括:

S31、网元1和KMS1分别获取相同的网元1的共享密钥,所述网元1的共享密钥为根据网元1认证后得到的密钥参数或者网元1的根密钥生成的。

网元1和KMS1分别获取相同的网元1的共享密钥的方法有多种,下面对其中的几种进行举例说明。

举例一、网元1、KMS1进行AKA鉴权后,网元1和KMS1分别获取到Kasme、完整性密钥(英文:integrity key,缩写:IK)和加密密钥(英文:cipher key,缩写:CK)。AKA鉴权的过程为现有技术,在此不再赘述。为下文描述方便,引入定义“参数1”,该参数1包括Kasme、IK和CK中的至少一项。网元1和KMS1分别获取到参数1后,采用相同的预置方法根据该参数1计算网元1的共享密钥。

举例二、网元1、移动管理节点(英文:Mobility Management Entity,缩写:MME)进行AKA鉴权后,网元1和MME分别获取到Kasme、IK和CK。网元1和MME分别获取到参数1后,采用相同的预置方法根据该参数1计算网元1的共享密钥。MME将网元1的共享密钥发送至KMS1。

举例三、网元1、MME进行AKA鉴权后,网元1和MME分别获取到Kasme、IK和CK。网元1和MME分别确定相同的参数3,该参数3包括Kasme、IK、CK、非接入层完整性密钥KNASint、非接入层加密密钥KNASenc、基站密钥KeNB中的至少一项,其中,该非接入层完整性密钥KNASint为通过Kasme和NAS完整性保护算法计算得到的,该非接入层加密密钥KNASenc为通过Kasme和NAS加密算法计算得到的。网元1和MME采用相同的预置方法根据该参 数3计算网元1的共享密钥。MME将该网元1的共享密钥发送至KMS1。或者KMS1是MME,这样,“MME将该网元1的共享密钥发送至KMS”该步骤可省略掉。

举例四、网元1、MME进行AKA鉴权后,网元1和MME分别获取到Kasme、IK和CK。网元1和MME分别确定参数3,该参数3包括Kasme、IK、CK、非接入层完整性密钥KNASint、非接入层加密密钥KNASenc、基站密钥KeNB中的至少一项,其中,该非接入层完整性密钥KNASint为通过Kasme和NAS完整性保护算法计算得到的,该非接入层加密密钥KNASenc为通过Kasme和NAS加密算法计算得到的。MME将参数3发送至KMS1,网元1和KMS1采用相同的预置方法根据该参数3计算网元1的共享密钥。

举例五、网元1、KMS1/MME进行AKA鉴权后,网元1和归属签约用户服务器(英文:Home Subscriber Server,缩写:HSS)分别获取到Kasme、IK、CK和网元1的根密钥。为下文描述方便,引入定义“参数2”,该参数2包括Kasme、IK、CK和网元1的根密钥中的至少一项。网元1和HSS分别获取到参数2后,采用相同的预置方法根据该参数2计算网元1的共享密钥。进一步,可选的,网元1和HSS还获取网元1的业务中的业务参数,并采用相同的预置方法根据该参数2和业务参数来计算网元1的共享密钥。HSS计算出网元1的共享密钥后,将网元1的共享密钥发送至KMS1。HSS获取网元1的业务的业务参数的方法有多种,例如,该业务参数可以由KMS1发送至HSS。

举例六、网元1、KMS1/MME进行AKA鉴权后,网元1和HSS分别获取到Kasme、IK、CK和网元1的根密钥(也即参数2)。HSS获取到参数2后,将参数2发送至KMS1。网元1和KMS1分别采用相同的预置方法根据该参数2计算网元1的共享密钥。

举例七、网元1和KMS1分别预置有数字证书或相同的密钥Kx。网元1和KMS1之间可以采用TLS、IPSec或者基于消息认证码的认证方式完成相互的认证,并在认证后分别获取到网元1和KMS1之间的会话密钥Ky。或者,网元1和KMS1直接采用密钥Kx作为他们之间的会话密钥Ky。为下文描述方便,引入定义“参数4”,该参数4包括所述网元1和KMS之间认证后的 会话密钥Ky。网元1和KMS1分别获取到参数4后,采用相同的预置方法根据该参数4计算网元1的业务根密钥。

在上述五个举例中,计算网元1的共享密钥的预置方法有多种。举例来说,可通过计算第一预置密钥推衍函数的因变量,其中在举例一和二中该第一预置密钥推衍函数的自变量包括参数1,在举例五中该第一预置密钥推衍函数的自变量包括参数2,在举例三和四中该第一预置密钥推衍函数的自变量包括参数3;网元1的共享密钥包括该第一预置密钥推衍函数的因变量。

可选的,在本实施例的一些可能的实施方式中,上述五个举例中计算网元1的共享密钥的预置方法中,所述第一预置密钥推衍函数的自变量还包括其他的一些相关参数,例如用于指示网元1的共享密钥的有效期的时间、当前系统时间、新鲜参数(Fresh parameter)、随机数(nonce/random number)、序列号异或匿名密钥(SQN⊕AK,其中SQN为序列号sequence number的缩写,AK为匿名密钥Anonymity Key的缩写),RAND(RANDom number的缩写)参数,计算网元1的共享密钥的序列号、网元1的ID、KMS1的ID、Kasme的ID、网络ID、链路ID、APP ID、service ID、session ID中的至少一项,在此不作限制。

其中,网元1和网元2的ID可以分别包括:国际移动用户识别码(英文:International Mobile Subscriber Identity,缩写:IMSI),全球唯一临时UE标识(英文:Globally Unique Temporary UE Identity,缩写:GUTI),IP多媒体私有标识(英文:IP Multimedia Private Identity,缩写:IMPI),临时移动用户标识(英文:Temporary Mobile Subscriber Identity,缩写:TMSI),临时IP多媒体私有标识(英文:Temporary IP Multimedia Private Identity,缩写:TMPI),IP多媒体公共标识(英文:IP Multimedia Public Identity,缩写:IMPU),Service ID,session ID,网络ID,链路ID,App ID,网关ID中的至少一项。当网元为服务器时,该网元的ID还可以包括server ID。

具体举例来说,K1=KDF(key,ID),或者,K1=KDF(key,time),或者,K1=KDF(key,ID,time),或者,K1=KDF(key,SN),或者,K1=KDF(key,ID,SN)。其中,K1为网元1的共享密钥,K1=KDF()为第一预置密钥推衍函数,time包括用于指示网元1的共享密钥的有效期的时间和当前 系统时间中的至少一项,SN为计算网元1的共享密钥的序列号;在举例一和二中key包括参数1,在举例三中key包括参数2。

网元1和KMS1分别获取到网元1的共享密钥后,在KMS1向网元1发送数据时,可采用该网元1的共享密钥对该数据进行加密和/或完整性保护后再发送至网元1,以保证该数据的安全。

S32、网元2和KMS2分别获取相同的网元2的共享密钥。

具体可参考步骤S31中网元1和KMS1分别获取相同的网元1的共享密钥的方法,在此不再赘述。

S33、网元1向业务服务器发送业务请求,该业务请求用于申请网元1和网元2进行第一业务。

本实施例中,业务服务器用于执行第一网元和第二网元之间的业务管理。

在本发明的一些可能的实施方式中,网元2和业务服务器为同一个网元,在此不作限制。

实际应用中,步骤S33中也可以不是由网元1向业务服务器发送业务请求,而是由其他网元向业务服务器发起业务请求,例如网元2、服务器、网关或其他控制网元,在此不作限制。

S34、业务服务器对所述第一业务进行授权,当授权成功时发送响应消息至网元1。

本实施例中,相应消息包括指示符、所述第一网元的身份标识、所述第二网元的标识和所述第一业务的业务参数中的至少一种,其中所述指示符用于指示所述第一业务授权成功。例如,该指示符可以包括service ID、app ID、SN、session ID、网关ID、服务器ID、链路ID和网络ID中的至少一种。

本实施例中,业务服务器如何对第一业务授权为现有技术,在此不再赘述。

S35、网元1向KMS1发送第一业务的密钥请求。

网元1在接收到业务服务器发送的第一业务授权成功的通知后,向KMS1发送密钥请求,该密钥请求用于发起网元1和网元2在第一业务中进行数据通信所用的业务密钥的生成。其中,网元1为数据的发送端,网元2为数据的接收端,该密钥请求包括网元1的身份标识(英文:Identity,缩写:ID)。

实际应用中,网元1中可能存有网元2的ID和/或第一业务的业务参数。在这种情况中,密钥请求可以是包括网元1的ID,网元2的ID和第一业务的业务参数的至少一项。由于步骤S36至步骤S38的目的为将网元2的ID发送至网元1的ID,在网元1已经具有网元2的ID的情况中,步骤S36至步骤S37可以省略掉。

具体的,网元1和网元2的身份标识可以分别包括:IMSI、GUTI、IMPI、TMSI、TMPI、IMPU、Service ID、session ID、网络ID、链路ID、App ID、网关ID中的至少一项。当网元为服务器时,该网元的ID还可以包括server ID。

第一业务的业务参数可以有多种。例如,该第一业务的业务参数可以包括第一业务中的序列号SN、该业务密钥的相关时间time、该业务中的相关ID,新鲜参数(Fresh parameter)、随机数(nonce/random number)中的至少一项。其中,该业务中的相关ID可以包括网元1的ID、网元2的ID、KMS1的ID、Service ID、session ID、网络ID、链路ID、App ID、server ID和PLMN ID中的至少一个。其中,该业务密钥的相关时间time可以包括该第一业务开始的时间、结束的时间和有效期中的至少一项。网元1和网元2的ID可以分别包括IMSI、IMPI、TMSI、IMPU、App ID、网络ID、service ID和GUTI中的至少一项,在此不作限制。

实际应用中,网元1也可以不是在接收到业务服务器发送的第一业务授权成功的通知后向KMS1发送密钥请求,而是主动发起密钥请求。也即步骤S33和步骤S34可以省略掉。

实际应用中,步骤S35中也可以不是由网元1向KMS1发送第一业务的密钥请求,而是由其他网元向KMS1发送密钥请求,例如网元2、服务器、网关或其他控制网元,在此不作限制,其中,该密钥请求包括网元1的ID、网元2的ID和第一业务的业务参数中的至少一项。

或者,步骤S35也可以省略掉,在此不作限制。

S36、网元2向KMS2发送第一业务的密钥请求。

网元2在接收到业务服务器发送的第一业务授权成功的通知后,向KMS2发送密钥请求,该密钥请求包括网元2的ID。具体的,网元2的ID可以包括:IMSI、GUTI、IMP、TMSI、TMPI、IMPU、Service ID、session ID、网络ID、 链路ID、App ID和网关ID中的至少一项。当网元为服务器时,该网元的ID还可以包括server ID。

S37、KMS2将网元2的密钥请求发送至KMS1。

本实施例中,步骤S36和S37为可选步骤。

S38、KMS1获取第一业务的业务密钥。

本实施例中,KMS1获取第一业务的业务密钥的方法有多种,下面对其中的几种进行举例说明。

举例一、选择一个随机数,所述业务密钥包括所述随机数。

举例二、获取随机数、网元1的Kasme、网元1的完整性密钥、网元1的加密密钥、网元1的根密钥和网元1的共享密钥中的至少一项,以及第一业务的业务参数,计算第二预置密钥推衍函数的因变量,所述第一业务的业务密钥包括该第二预置密钥推衍函数的因变量,其中,该第二预置密钥推衍函数的自变量包括第一业务的业务参数,以及包括随机数、网元1的Kasme、网元1的的完整性密钥、网元1的的加密密钥、网元1的根密钥、网元1的共享密钥中的至少一项;其中,网元1的Kasme、完整性密钥、加密密钥、为KMS1通过和网元1进行AKA鉴权获取到的,或者是网元1、MME进行AKA鉴权后,MME获取到Kasme、完整性密钥、加密密钥,并将Kasme、完整性密钥、加密密钥发送至KMS1的;网元1的根密钥的获取方法有多种,例如,KMS1向HSS发起请求,直接从HSS处接收到网元1的根密钥;网元1的共享密钥获取方法可以参考步骤S31中内容,在此不再赘述。

其中,第一业务的业务参数可以参考步骤S35中对第一业务的业务参数的举例描述,在此不再赘述。

举例三、KMS1获取随机数、网元1的Kasme、网元1的完整性密钥、网元1的加密密钥、网元1的根密钥和网元1的共享密钥中的至少一项,以及第一业务的业务参数,根据随机数、网元1的Kasme、网元1的完整性密钥、网元1的加密密钥、网元1的根密钥和网元1的共享密钥中的至少一项,以及该第一业务的业务参数计算第一密钥;KMS1接收KMS2发送的第二密钥,其中该第二密钥为KMS2通过随机数、网元2的Kasme、网元2的完整性密钥、网元2的加密密钥、网元2的根密钥和网元2的共享密钥中的至少 一项,以及第一业务的业务参数获取得到的;根据所述第一密钥和所述第二密钥计算所述业务密钥。

其中,KMS1获取网元1的根密钥的方法有多种。例如,KMS1向HSS发起请求,直接从HSS处接收到网元1的根密钥,在此不再赘述。KMS2获取网元2的根密钥的方法有多种,例如,KMS2向HSS发起请求,直接从HSS处接收到网元2的根密钥,在此不再赘述。

其中,KMS1根据随机数、网元1的Kasme、网元1的完整性密钥、网元1的加密密钥、网元1的根密钥和网元1的共享密钥中的至少一项,以及业务参数获取第一密钥的方法有多种,例如,KMS1计算第三预置密钥推衍函数的因变量,所述第一密钥包括所述第三预置密钥推衍函数的因变量,其中,所述第三预置密钥推衍函数的自变量包括随机数、网元1的Kasme、网元1的完整性密钥、网元1的加密密钥、网元1的根密钥、网元1的共享密钥中的至少一项,以及第一业务的业务参数。

其中,KMS2根据随机数、网元2的Kasme、网元2的完整性密钥、网元2的加密密钥、网元2的根密钥和网元2的共享密钥中的至少一项,和业务参数获取第二密钥的方法有多种,例如,KMS2计算第四预置密钥推衍函数的因变量,所述第二密钥包括所述第四预置密钥推衍函数的因变量,其中,所述第四预置密钥推衍函数的自变量包括随机数、网元2的Kasme、网元2的完整性密钥、网元2的加密密钥、网元2的根密钥和网元2的共享密钥中的至少一项,和第一业务的业务参数。

其中,KMS1据所述第一密钥和所述第二密钥计算所述业务密钥的方法有多种。例如,KMS1计算第五预置密钥推衍函数的因变量,所述业务密钥包括所述五预置密钥推衍函数的因变量,其中,所述第五预置密钥推衍函数的自变量包括所述第一密钥和所述第二密钥。进一步,可选的,所述第五预置密钥推衍函数的自变量还包括第一业务的业务参数或者其他参数,在此不作限制。

举例四、通过接收第一业务的业务密钥来获取该业务密钥。具体的,密钥生成中心生成第一业务的业务密钥后,将该业务密钥发送至KMS1。其中,密钥生成中心生成第一业务的业务密钥的方法可参考上述举例一至举例三中 KMS1生成业务密钥的方法,在此不作限制。

S39、KMS1将业务密钥发送至KMS2。

本实施例中,由KMS1获取第一业务的业务密钥,然后将业务密钥发送至KMS2。实际应用中,也可以是KMS2获取第一业务的业务密钥,然后将业务密钥发送至KMS1,其中KMS2获取第一业务密钥的方法可以和KMS1获取第一业务密钥的方法相同,在此不再赘述。

S310、KMS2采用网元2的共享密钥对所述业务密钥进行加密和/或完整性保护,生成网元2的安全保护参数。

KMS2采用网元2的共享密钥对业务密钥进行加密,具体的,采用加密算法进行加密,如AES加密算法。或者,KMS2采用网元2的共享密钥对业务密钥进行完整性保护,具体的,采用完整性保护算法进行完整性保护,如HMAC算法。在此不作限制。或者,KMS2采用网元2的共享密钥对业务密钥进行加密和完整性保护。

S311、KMS2将网元2的安全保护参数发送至网元2。

S312、网元2根据网元2的共享密钥和网元2的安全保护参数获取业务密钥。

由于网元2的安全保护参数是采用网元2的共享密钥对业务密钥进行加密和/或完整性保护得到的,网元2可根据该网元2的安全保护参数和网元2的共享密钥还原出业务密钥。

S313、KMS1采用网元1的共享密钥对所述业务密钥进行加密和/或完整性保护,生成网元1的安全保护参数。

具体解释可参考步骤S310的解释说明,在此不再赘述。

S314、KMS1将网元1的安全保护参数发送至网元1。

S315、网元1根据网元1的共享密钥和网元1的安全保护参数获取业务密钥。

具体解释可参考步骤S312的解释说明,在此不再赘述。需注意的是,步骤S313-315和步骤39-312之间没有必然的先后顺序。

本发明中,网元1和网元2分别获取到业务密钥后,对该业务密钥的使用方法有多种。

例如,网元1采用业务密钥对第一通信数据进行保护,生成第二通信数据,并发送至网元2。具体的,网元1可以直接采用业务密钥对第一通信数据进行加密和/或完整性保护生成第二通信数据。或者,网元1根据业务密钥K采用预制方法生成业务密钥K′,再采用该业务密钥K′对第一通信数据进行加密和/或完整性保护生成第二通信数据,并发送至网元2。

网元2接收第二通信数据,并根据业务密钥还原出第一通信数据。具体的,若网元1是根据业务密钥对第一通信数据进行加密和/或完整性保护生成第二通信数据,那么网元2直接采用业务密钥对第二通信数据还原出第一通信数据。若网元1是根据业务密钥K对第一通信数据进行加密和/或完整性保护生成第二通信数据,那么网元2根据业务密钥K采用与网元1相同的预置方法生成业务密钥K′,再采用该业务密钥K′将第二通信数据还原为第一通信数据。

当然,网元1和网元2对业务密钥的使用还可以是其他方法,在此不作限制。

本实施例中,KMS1将用于网元1和网元2之间通信的业务密钥发送至网元1,使得网元1和网元2之间相互发送数据时可以采用该业务密钥对该数据进行保护,避免了该数据在发送过程中遭到窃听攻击;而且,KMS1还采用网元1的共享密钥对业务密钥加密和/或完整性保护后生成第一安全保护参数发送给网元1,由于网元1采用和KMS1相同的方法生成网元1的共享密钥,能够将第一安全保护参数还原出业务密钥,保证了业务密钥的安全。

在图3所示实施例中,网元2为用户终端,KMS2需采用共享密钥2将业务密钥加密和/或完整性保护后才发给网元2。实际应用中,网元2也可以为与KMS2建立有安全信道的网元,例如,该网元2为服务器、网关或者其他控制网元。这样,KMS2通过所述安全信道直接将业务密钥发送给网元2。因此,在网元2和KMS2建立有安全信道的情况下,图3所示实施例中的步骤S32、步骤S310和步骤S312可以省略掉,而且,在步骤S311中,KMS2将业务密钥发送至网元2。

在图3所示实施例中,通过步骤S33和S34来触发步骤S35之后的流程。可选的,在本发明第一个可能的实施方式中,步骤S33中也可以不是网元1 向业务服务器发送业务请求,而是业务服务器、网关、MME或者网元2向网元1发送业务消息,该业务消息用于指示网元1和网元2进行第一业务,且该业务消息包括网元1的ID、网元2的ID和第一业务的业务参数中的至少一项。

在图3所示实施例中,网元1和网元2分别对应不同的KMS。可选的,在本发明第二个可能的实施方式中,网元1和网元2也可以对应同一个KMS。例如,网元1和网元2均为属于同一个运营商的用户终端,该两个网元在申请业务密钥的过程中均与同一KMS通信。那么,在图3所示实施例中,KMS1和KMS2为同一个密钥管理中心,步骤S37和步骤S39可以省略掉。

上面通过图2至图3对本发明的通信系统的实施例以及通信系统中的工作流程的各个实施例进行了描述。下面对本发明中的密钥分发方法进行描述。

请参阅图4,本发明的密钥分发方法的一个实施例,包括:

401、第一密钥管理中心获取第一网元的共享密钥。

本实施例中,第一密钥管理中心可以是图2和图3所示实施例中的KMS1,第一网元可以是图2和图3所示实施例中的网元1。

402、所述第一密钥管理中心获取业务密钥,所述业务密钥用于对所述第一网元和第二网元之间的第一业务中的通信数据进行加密和/或完整性保护。

403、所述第一密钥管理中心采用所述第一网元的共享密钥对所述业务密钥进行加密和/或完整性保护,生成第一安全保护参数。

404、所述第一密钥管理中心执行以下步骤A和步骤B的其中一个:

A、将所述第一安全保护参数发送至所述第一网元;

B、将所述第一安全保护参数发送至第二密钥管理中心,以便所述第二密钥管理中心发送所述第一安全保护参数至所述第一网元。

本实施例中,第一密钥管理中心将用于网元之间通信的业务密钥发送至网元,使得网元之间相互发送数据时可以采用该业务密钥对该数据进行保护,避免了该数据在发送过程中遭到窃听攻击;而且,第一密钥管理中心还采用第一网元的共享密钥对业务密钥加密和/或完整性保护后生成第一安全保护参数发送给第一网元,由于第一网元采用和第一密钥管理中心相同的方法生成第一网元的共享密钥,能够将第一安全保护参数还原出业务密钥,保证了业 务密钥的安全。

本实施例的解释可以参阅图2和图3所示实施例的描述说明进行理解,此处不做过多赘述。

请参阅图5,图5为本发明的密钥接收方法的一个实施例的流程示意图。如图5所示,本实施例中的密钥接收方法,包括:

501、第一网元获取第一网元的共享密钥,所述第一网元的共享密钥为根据所述第一网元认证后得到的密钥参数或者所述第一网元的根密钥生成的。

本实施例中,第一网元可以是图2和图3所示实施例中的网元1。

502、所述第一网元接收所述第一密钥管理中心发送的第一安全保护参数,所述第一安全保护参数是所述第一密钥管理中心采用所述第一网元的共享密钥对业务密钥加密和/或完整性保护后得到的。

本实施例中,第一密钥管理中心可以是图2和图3所示实施例中的KMS1。

503、所述第一网元根据所述第一网元的共享密钥对所述第一安全保护参数解密,获得业务密钥,所述业务密钥用于所述第一网元和第二网元通信时对通信数据的加密和/或完整性保护。

本实施例的解释可以参阅图2和图3所示实施例的描述说明进行理解,此处不做过多赘述。

上面对本发明实施例中的密钥分发方法和密钥接收的方法进行了描述,下面对本发明实施例中的第一密钥管理中心和第一网元进行描述。

请参阅图6,图6为本发明的第一密钥管理中心的一个实施例的结构示意图。本实施例中,第一密钥管理中心600包括:

第一获取模块601,用于获取第一网元的共享密钥,所述第一网元的共享密钥为根据所述第一网元认证后得到的密钥参数或者所述第一网元的根密钥生成的;

第二获取模块602,用于获取业务密钥,所述业务密钥用于对所述第一网元和第二网元之间的第一业务中的通信数据进行加密和/或完整性保护;

第一生成模块603,用于采用所述第一网元的共享密钥对所述业务密钥进行加密和/或完整性保护,生成第一安全保护参数;

第一发送模块604,用于执行以下步骤A和步骤B的其中一个:

A、将所述第一安全保护参数发送至所述第一网元;

B、将所述第一安全保护参数发送至第二密钥管理中心,以便所述第二密钥管理中心发送所述第一安全保护参数至所述第一网元。

本实施例中,第一密钥管理中心将用于网元之间通信的业务密钥发送至网元,使得网元之间相互发送数据时可以采用该业务密钥对该数据进行保护,避免了该数据在发送过程中遭到窃听攻击;而且,第一密钥管理中心还采用第一网元的共享密钥对业务密钥加密和/或完整性保护后生成第一安全保护参数发送给第一网元,由于第一网元采用和第一密钥管理中心相同的方法生成第一网元的共享密钥,能够将第一安全保护参数还原出业务密钥,保证了业务密钥的安全。

在本发明的一些可能的实施方式中,所述第一获取模块601具体用于:

通过和所述第一网元进行AKA鉴权获取第一参数,所述第一参数包括Kasme、完整性密钥和加密密钥中的至少一项;

计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量;其中,所述第一预置密钥推衍函数的自变量包括所述第一参数。

在本发明的一些可能的实施方式中,所述第一获取模块601具体用于:

接收移动管理节点MME发送的第一网元的共享密钥,其中,所述第一网元的共享密钥是所述MME通过第三参数计算的;或者,

接收MME发送的第三参数,所述第三参数为所述MME通过和第一网元AKA鉴权得到的;计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量;其中,所述第一预置密钥推衍函数的自变量包括所述第三参数;

其中,所述第三参数为所述MME通过和第一网元AKA鉴权得到的,所述第三参数包括Kasme、完整性密钥、加密密钥、非接入层完整性密钥、非接入层加密密钥和基站密钥中的至少一项。

在本发明的一些可能的实施方式中,当所述第一发送模块604用于执行所述步骤A时,所述第二获取模块602具体用于:

选择一个随机数,所述业务密钥包括所述随机数;或者,

获取随机数、所述第一网元的Kasme、所述第一网元的完整性密钥、所述第一网元的加密密钥、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项,以及所述第一业务的业务参数,计算第二预置密钥推衍函数的因变量,所述业务密钥包括所述第二预置密钥推衍函数的因变量,其中,所述第二预置密钥推衍函数的自变量包括所述第一业务的参数,以及包括随机数、所述第一网元的Kasme、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项。

在本发明的一些可能的实施方式中,当所述第一发送模块604用于执行所述步骤B时,所述第二获取模块602具体用于:

选择一个随机数,所述业务密钥包括所述随机数;

或者,

获取随机数、第一网元的Kasme、所述第一网元的完整性密钥、所述第一网元的加密密钥、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项,以及所述第一业务的业务参数,根据所述随机数、第一网元的Kasme、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算第一密钥;接收所述第二密钥管理中心发送的第二密钥,所述第二密钥是通过所述随机数、第二网元的Kasme、所述第二网元的根密钥和所述第二网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算得到的;根据所述第一密钥和所述第二密钥计算所述业务密钥;

或者,

接收所述第二密钥管理中心发送的业务密钥,所述业务密钥是所述第二密钥管理中心根据随机数、所述第二网元的Kasme、所述第二网元的完整性密钥、所述第二网元的加密密钥、所述第二网元的根密钥和所述第二网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算得到的。

如图7所示,在本发明的一些可能的实施方式中,所述第一密钥管理中 心还包括:

第一接收模块701,用于在所述第二获取模块获取业务密钥之前,接收来自所述第一网元、所述第二网元、网关或者服务器的密钥请求,所述密钥请求用于发起所述业务密钥的生成,所述密钥请求包括所述第一网元的身份标识、所述第二网元的身份标识和所述第一业务的业务参数中的至少一项。

如图7所示,在本发明的一些可能的实施方式中,当所述第一发送模块604用于执行所述步骤A时,所述第二网元和所述第一密钥管理中心之间建立有安全信道;所述第一密钥管理中心还包括第二发送模块701,用于通过所述安全信道将所述业务密钥发送至所述第二网元。

请参阅图8,图8为本发明的第一网元的一个实施例的结构示意图。本实施例中,第一网元800包括:

第一获取模块801,用于获取第一网元的共享密钥,所述第一网元的共享密钥为根据所述第一网元认证后得到的密钥参数或者所述第一网元的根密钥生成的;

第一接收模块802,用于接收所述第一密钥管理中心发送的第一安全保护参数,所述第一安全保护参数是所述第一密钥管理中心采用所述第一网元的共享密钥对业务密钥加密和/或完整性保护后得到的;

第二获取模块803,用于根据所述第一网元的共享密钥对所述第一安全保护参数解密,获得业务密钥,所述业务密钥用于所述第一网元和第二网元通信时对通信数据的加密和/或完整性保护。

在本发明的一些可能的实施方式中,所述第一获取模块801具体用于执行以下步骤C和/或步骤D:

步骤C、获取所述第一网元的根密钥,计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量,其中,所述第一预置密钥推衍函数的自变量包括所述第一网元的根密钥;

步骤D、通过进行AKA鉴权获取第一参数,所述第一参数包括Kasme、完整性密钥和加密密钥中的至少一项;计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量,其中, 所述第一预置密钥推衍函数的自变量包括所述第一参数。

如图9所示,在本发明的一些可能的实施方式中,所述第一网元还包括:

第三获取模块901,用于获取所述第二网元的身份标识和/或所述第一业务的业务参数,所述第一预置密钥推衍函数的自变量还包括所述第二网元的身份标识和/或所述第一业务的业务参数。

如图10所示,在本发明的一些可能的实施方式中,所述第一网元还包括第一发送模块1001,用于在所述第一接收模块802接收所述第一密钥管理中心发送的第一安全保护参数之前,向所述第一密钥管理中心发送密钥请求,所述密钥请求用于发起所述业务密钥的生成,所述密钥请求包括所述第一网元的身份标识、第二网元的身份标识和所述第一业务的业务参数中的至少一项。

如图11所示,在本发明的一些可能的实施方式中,所述第一网元还包括:

第二发送模块1101,用于在所述第一发送模块向所述第一密钥管理中心发送密钥请求之前,向业务服务器发送业务请求,其中,所述业务服务器用于执行所述第一网元和所述第二网元之间的业务管理;

第二接收模块1102,用于接收所述业务服务器发送的响应消息,所述响应消息包括指示符、所述第一网元的标识、所述第二网元的标识和所述第一业务的业务参数中的至少一种,其中所述指示符用于指示所述第一业务授权成功。

如图12所示,在本发明的一些可能的实施方式中,所述第一网元还包括:

第三接收模块1201,用于在所述第一发送模块1001向所述第一密钥管理中心发送密钥请求之前,接收业务服务器、网关、MME或者第二网元发送的业务消息,所述业务消息包括所述第一网元的身份标识、所述第二网元的身份标识和所述第一业务的业务参数中的至少一项。

上面从单元化功能实体的角度对本发明实施例中的第一密钥管理中心和第一网元进行了描述,下面从硬件处理的角度对本发明实施例中的第一密钥管理中心和第一网元进行描述。

请参阅图13,图13为本发明的第一密钥管理中心的一个实施例的结构示 意图。本实施例中,第一密钥管理中心1300包括:

处理器1301,以及耦合到所述处理器1301的存储器1302;其中,所述处理器1301读取所述存储器1302中存储的计算机程序用于执行以下操作:

获取第一网元的共享密钥,所述第一网元的共享密钥为根据所述第一网元认证后得到的密钥参数或者所述第一网元的根密钥生成的;

获取业务密钥,所述业务密钥用于对所述第一网元和第二网元之间的第一业务中的通信数据进行加密和/或完整性保护;

采用所述第一网元的共享密钥对所述业务密钥进行加密和/或完整性保护,生成第一安全保护参数;

执行以下步骤A和步骤B的其中一个:

A、将所述第一安全保护参数发送至所述第一网元;

B、将所述第一安全保护参数发送至第二密钥管理中心,以便所述第二密钥管理中心发送所述第一安全保护参数至所述第一网元。

在本发明的一些可能的实施方式中,所述获取第一网元的共享密钥,包括:

通过和所述第一网元进行AKA鉴权获取第一参数,所述第一参数包括Kasme、完整性密钥和加密密钥中的至少一项;

计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量;其中,所述第一预置密钥推衍函数的自变量包括所述第一参数。

在本发明的一些可能的实施方式中,所述获取第一网元的共享密钥,包括:

所述第一密钥管理中心接收移动管理节点MME发送的第一网元的共享密钥,其中,所述第一网元的共享密钥是所述MME通过第三参数计算的;或者,

接收MME发送的第三参数,所述第三参数为所述MME通过和第一网元AKA鉴权得到的;计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量;其中,所述第一预置密钥推衍函数的自变量包括所述第三参数;

其中,所述第三参数为所述MME通过和第一网元AKA鉴权得到的,所述第三参数包括Kasme、完整性密钥、加密密钥、非接入层完整性密钥、非接入层加密密钥和基站密钥中的至少一项。

在本发明的一些可能的实施方式中,当所述处理器1301用于执行所述步骤A时,所述获取业务密钥,包括:

选择一个随机数,所述业务密钥包括所述随机数;或者,

获取随机数、所述第一网元的Kasme、所述第一网元的完整性密钥、所述第一网元的加密密钥、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项,以及所述第一业务的业务参数,计算第二预置密钥推衍函数的因变量,所述业务密钥包括所述第二预置密钥推衍函数的因变量,其中,所述第二预置密钥推衍函数的自变量包括所述第一业务的参数,以及包括随机数、所述第一网元的Kasme、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项。

在本发明的一些可能的实施方式中,当所述处理器1301用于执行所述步骤B时,所述第一密钥管理中心获取业务密钥,包括:

选择一个随机数,所述业务密钥包括所述随机数;

或者,

获取随机数、第一网元的Kasme、所述第一网元的完整性密钥、所述第一网元的加密密钥、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项,以及所述第一业务的业务参数,根据所述随机数、第一网元的Kasme、所述第一网元的根密钥和所述第一网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算第一密钥;接收所述第二密钥管理中心发送的第二密钥,所述第二密钥是通过所述随机数、第二网元的Kasme、所述第二网元的根密钥和所述第二网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算得到的;根据所述第一密钥和所述第二密钥计算所述业务密钥;

或者,

接收所述第二密钥管理中心发送的业务密钥,所述业务密钥是所述第二密钥管理中心根据随机数、所述第二网元的Kasme、所述第二网元的完整性 密钥、所述第二网元的加密密钥、所述第二网元的根密钥和所述第二网元的共享密钥中的至少一项,以及所述第一业务的业务参数计算得到的。

在本发明的一些可能的实施方式中,所述处理器1301还用于在获取业务密钥之前,还执行以下步骤:

所述第一密钥管理中心接收来自所述第一网元、所述第二网元、网关或者服务器的密钥请求,所述密钥请求用于发起所述业务密钥的生成,所述密钥请求包括所述第一网元的身份标识、所述第二网元的身份标识和所述第一业务的业务参数中的至少一项。

在本发明的一些可能的实施方式中,当所述处理器1301用于执行所述步骤A时,所述第二网元和所述第一密钥管理中心之间建立有安全信道;

所述处理器1301还用于执行以下步骤:

通过所述安全信道将所述业务密钥发送至所述第二网元。

请参阅图14,图14为本发明的第一密钥管理中心的一个实施例的结构示意图。本实施例中,第一网元1400包括:

处理器1401,以及耦合到所述处理器1401的存储器1402;其中,所述处理器1401读取所述存储器1402中存储的计算机程序用于执行以下操作:

获取第一网元的共享密钥,所述第一网元的共享密钥为根据所述第一网元认证后得到的密钥参数或者所述第一网元的根密钥生成的;

接收所述第一密钥管理中心发送的第一安全保护参数,所述第一安全保护参数是所述第一密钥管理中心采用所述第一网元的共享密钥对业务密钥加密和/或完整性保护后得到的;

根据所述第一网元的共享密钥对所述第一安全保护参数解密,获得业务密钥,所述业务密钥用于所述第一网元和第二网元通信时对通信数据的加密和/或完整性保护。

在本发明的一些可能的实施方式中,所述获取第一网元的共享密钥,包括以下步骤C和/或步骤D:

步骤C、所述第一网元获取所述第一网元的根密钥,计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函 数的因变量,其中,所述第一预置密钥推衍函数的自变量包括所述第一网元的根密钥;

步骤D、所述第一网元通过进行AKA鉴权获取第一参数,所述第一参数包括Kasme、完整性密钥和加密密钥中的至少一项;所述第一网元计算第一预置密钥推衍函数的因变量,所述第一网元的共享密钥包括所述第一预置密钥推衍函数的因变量,其中,所述第一预置密钥推衍函数的自变量包括所述第一参数。

在本发明的一些可能的实施方式中,所述处理器1401还用于执行以下步骤:

获取所述第二网元的身份标识和/或所述第一业务的业务参数,所述第一预置密钥推衍函数的自变量还包括所述第二网元的身份标识和/或所述第一业务的业务参数。

在本发明的一些可能的实施方式中,所述处理器1401还用于在接收所述第一密钥管理中心发送的第一安全保护参数之前,向所述第一密钥管理中心发送密钥请求,所述密钥请求用于发起所述业务密钥的生成,所述密钥请求包括所述第一网元的身份标识、第二网元的身份标识和所述第一业务的业务参数中的至少一项。

在本发明的一些可能的实施方式中,所述处理器1401还用于在向所述第一密钥管理中心发送密钥请求之前,向业务服务器发送业务请求,其中,所述业务服务器用于执行所述第一网元和所述第二网元之间的业务管理;

所述第一网元接收所述业务服务器发送的响应消息,所述响应消息包括指示符、所述第一网元的标识、所述第二网元的标识和所述第一业务的业务参数中的至少一种,其中所述指示符用于指示所述第一业务授权成功。

在本发明的一些可能的实施方式中,所述处理器1401还用于在向所述第一密钥管理中心发送密钥请求之前,接收业务服务器、网关、MME或者第二网元发送的业务消息,所述业务消息包括所述第一网元的身份标识、所述第二网元的身份标识和所述第一业务的业务参数中的至少一项。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应 过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案 的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1