掌桥专利:专业的专利平台
掌桥专利
首页

消息传输方法、装置、终端、服务器及介质

文献发布时间:2024-05-31 01:29:11


消息传输方法、装置、终端、服务器及介质

技术领域

本发明涉及通信技术领域,尤其是涉及一种消息传输方法、装置、终端、服务器及介质。

背景技术

量子随机数发生器是迄今为止唯一的从理论上可以论证的真正的随机数发生器,目前,量子随机数发生器件的成本远远高于基于经典物理过程的随机数发生器。量子随机数发生芯片目前比较稀少,而且价格昂贵,不适合在移动终端,如手机上使用。为了保证移动终端上的应用的最大安全性,需要在移动终端上使用量子随机数。考虑到成本,可实现性,移动终端目前不具备有内嵌量子随机数发生器的能力。

为此,移动终端需要从外部获取量子随机数,通常通过安全通道从量子随机数服务中心得到。目前移动终端通过安全传输层协议(Transport Layer Security,TLS)安全通道从量子随机数服务中心获取量子随机数的方案流程较长,建立TLS安全通道首先要进行TLS握手认证流程再建立TLS安全通道,流程较为复杂。

发明内容

本发明的目的在于提供一种消息传输方法、装置、终端、服务器及介质,用以解决现有获取量子随机数的流程复杂,导致量子随机数的传递效率低的问题。

为了达到上述目的,第一方面,本发明提供一种消息传输方法,由终端执行,该方法包括:

向服务器发送量子密钥请求消息,其中,所述量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,所述第一加密信息为与量子密钥相关的密钥要求的加密信息,所述第一加密信息和所述第一消息认证码通过第一保护密钥获得,所述第一保护密钥基于所述第一参数值和共享密钥生成,所述根密钥标识用于指示所述服务器获得对应的共享密钥;

接收所述服务器针对所述量子密钥请求消息发送的量子密钥回复消息,其中,所述量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,所述第二加密信息为所述服务器按照所述密钥要求生成的量子密钥的加密信息,所述第二加密信息和所述第二消息认证码通过第二保护密钥获得,所述第二保护密钥基于所述第二参数值和所述共享密钥生成。

其中,所述向服务器发送量子密钥请求消息之前,所述方法还包括:

获取共享密钥和防重放攻击参数的第一参数值;

根据所述共享密钥和所述第一参数值,生成第一保护密钥;

根据所述第一保护密钥对与量子密钥相关的密钥要求进行加密,获得第一加密信息;

根据所述第一保护密钥对第一目标信息进行加密,获得第一消息认证码,所述第一目标信息包括所述根密钥标识、所述第一参数值和所述第一加密信息。

其中,所述根据所述共享密钥和所述第一参数值,生成第一保护密钥,包括:

根据所述共享密钥和所述第一参数值,采用第一方式生成第一保护密钥,所述第一保护密钥包括第一加密密钥和第一完保密钥;

或者,根据所述共享密钥和所述第一参数值,采用第二方式生成第一保护密钥,所述第一保护密钥不同于所第一加密密钥和所述第一完保密钥;

其中,所述量子密钥请求消息还包括:第一指示,所述第一指示用于指示生成所述第一保护密钥采用的目标方式,所述目标方式为所述第一方式或所述第二方式;所述第一目标信息还包括所述第一指示。

其中,在采用所述第一方式生成所述第一保护密钥的情况下,

所述根据所述第一保护密钥对与量子密钥相关的密钥要求进行加密,获得第一加密信息,包括:

利用所述第一加密密钥对与量子密钥相关的密钥要求进行加密,获得所述第一加密信息;

所述根据所述第一保护密钥对第一目标信息进行加密,获得第一消息认证码,包括:

利用所述第一完保密钥对所述第一目标信息进行加密,获得所述第一消息认证码。

其中,所述接收所述服务器针对所述量子密钥请求消息发送的量子密钥回复消息之后,所述方法还包括:

根据所述第二参数值和本地的防重放攻击参数的参数值,确定所述量子密钥回复消息是否为重放消息;

在确定所述量子密钥回复消息不是重放消息的情况下,根据所述第二参数值和所述共享密钥,生成所述第二保护密钥;

基于所述第二保护密钥对所述第二消息认证码进行验证,获得第一验证结果;

在所述第一验证结果表示所述量子密钥回复消息的消息数据完整的情况下,利用所述第二保护密钥对所述第二加密信息进行解密,获得所述量子密钥。

其中,所述方法还包括:

在确定所述量子密钥回复消息是重放消息的情况下,丢弃所述量子密钥回复消息。

其中,所述根据所述第二参数值和本地的防重放攻击参数的参数值,确定所述量子密钥回复消息是否为重放消息,包括:

若所述防重放攻击参数为计数器,则在所述第二参数值大于本地的防重放攻击参数的参数值的情况下,确定所述量子密钥回复消息不是重放消息;在所述第二参数值小于或者等于本地的防重放攻击参数的参数值的情况下,确定所述量子密钥回复消息是重放消息;或者,

若所述防重放攻击参数为时间戳,则在所述第二参数值与本地的防重放攻击参数的参数值的差值的绝对值小于第一预设阈值的情况下,确定所述量子密钥回复消息不是重放消息;在所述第二参数值与本地的防重放攻击参数的参数值的差值的绝对值大于或者等于所述第一预设阈值的情况下,确定所述量子密钥回复消息是重放消息。

其中,在所述防重放攻击参数为计数器的情况下,根据所述第二参数值和所述共享密钥,生成所述第二保护密钥之前,所述方法还包括:

将本地的防重放攻击参数的参数值替换为所述第二参数值。

其中,根据所述第二参数值和所述共享密钥,生成所述第二保护密钥,包括:

根据所述第二参数值和所述共享密钥,利用第一方式生成所述第二保护密钥,所述第二保护密钥包括第二加密密钥和第二完保密钥;

或者,根据所述第二参数值和所述共享密钥,利用第二方式生成所述第二保护密钥,所述第二保护密钥不同于所第二加密密钥和所述第二完保密钥。

其中,在采用所述第一方式生成所述第二保护密钥的情况下,

所述基于所述第二保护密钥对所述第二消息认证码进行验证,获得第一验证结果,包括:

基于所述第二完保密钥对所述第二消息认证码进行验证,获得第一验证结果;

所述利用所述第二保护密钥对所述第二加密信息进行解密,获得所述量子密钥,包括:

利用所述第二加密密钥对所述第二加密信息进行解密,获得所述量子密钥。

第二方面,本发明提供一种消息传输方法,由服务器执行,该方法包括:

接收终端发送的量子密钥请求消息,其中,所述量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,所述第一加密信息为与量子密钥相关的密钥要求的加密信息;

根据所述量子密钥请求消息,获得与量子密钥相关的密钥要求;

按照与量子密钥相关的密钥要求,生成量子密钥;

向所述终端发送量子密钥回复消息,所述量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,所述第二加密信息为所述服务器按照所述密钥要求生成的量子密钥的加密信息,所述第二加密信息和所述第二消息认证码通过第二保护密钥获得,所述第二保护密钥基于所述第二参数值和共享密钥生成。

其中,所述根据所述量子密钥请求消息,获得与量子密钥相关的密钥要求,包括:

根据所述第一参数值和本地的防重放攻击参数的参数值,确定所述量子密钥请求消息是否为重放消息;

在确定所述量子密钥请求消息不是重放消息,且本地存储有所述根密钥标识对应的共享密钥的情况下,根据所述第一参数值和所述共享密钥,生成第一保护密钥;

基于所述第一保护密钥对所述第一消息认证码进行验证,获得第二验证结果;

在所述第二验证结果表示所述量子密钥请求消息的消息数据完整的情况下,利用所述第一保护密钥对所述第一加密信息进行解密,获得与量子密钥相关的密钥要求。

其中,所述方法还包括:

在确定所述量子密钥请求消息是重放消息的情况下,丢弃所述量子密钥请求消息。

其中,所述根据所述第一参数值和本地的防重放攻击参数的参数值,确定所述量子密钥请求消息是否为重放消息,包括:

若所述防重放攻击参数为计数器,则在所述第一参数值大于本地的防重放攻击参数的参数值的情况下,确定所述量子密钥请求消息不是重放消息;在所述第一参数值小于或者等于本地的防重放攻击参数的参数值的情况下,确定所述量子密钥请求消息是重放消息;或者,

若所述防重放攻击参数为时间戳,则在所述第一参数值与本地的防重放攻击参数的参数值的差值的绝对值小于第二预设阈值的情况下,确定所述量子密钥回复消息不是重放消息;在所述第一参数值与本地的防重放攻击参数的参数值的差值的绝对值大于或者等于所述第二预设阈值的情况下,确定所述量子密钥请求消息是重放消息。

其中,在所述防重放攻击参数为计数器的情况下,根据所述第一参数值和所述共享密钥,生成第一保护密钥之前,所述方法还包括:

将本地的防重放攻击参数的参数值替换为所述第一参数值。

其中,所述量子密钥请求消息还包括:第一指示,所述第一指示用于指示生成所述第一保护密钥采用的目标方式;

所述根据所述第一参数值和所述共享密钥,生成第一保护密钥,包括:

若所述目标方式为第一方式,则根据所述第一参数值和所述共享密钥,采用第一方式生成第一保护密钥,所述第一保护密钥包括第一加密密钥和第一完保密钥;

若所述目标方式为第二方式,则根据所述第一参数值和所述共享密钥,采用第二方式生成第一保护密钥,所述第一保护密钥不同于所第一加密密钥和所述第一完保密钥。

其中,在采用所述第一方式生成所述第一保护密钥的情况下,

所述基于所述第一保护密钥对所述第一消息认证码进行验证,获得第二验证结果,包括:

利用所述第一完保密钥对所述第一消息认证码进行解密,获得第二验证结果;

所述利用所述第一保护密钥对所述第一加密信息进行解密,获得与量子密钥相关的密钥要求,包括:

利用所述第一加密密钥对所述第一加密信息进行解密,获得与量子密钥相关的密钥要求。

其中,在向所述终端发送量子密钥回复消息之前,所述方法还包括:

获取防重放攻击参数的第二参数值;

在本地存储有所述根密钥标识对应的共享密钥的情况下,根据所述第二参数值和所述共享密钥,生成第二保护密钥;

根据所述第二保护密钥对所述量子密钥进行加密,获得第二加密信息;

根据所述第二保护密钥对第二目标信息进行加密,获得第二消息认证码,所述第二目标信息包括所述第二参数值和所述第二加密信息。

其中,所述根据所述第二参数值和所述共享密钥,生成第二保护密钥,包括:

根据所述第二参数值和所述共享密钥,采用第一方式生成第二保护密钥,所述第二保护密钥包括第二加密密钥和第二完保密钥;

或者,根据所述第二参数值和所述共享密钥,采用第二方式生成第二保护密钥,所述第二保护密钥不同于所第二加密密钥和所述第二完保密钥。

其中,在采用所述第一方式生成所述第二保护密钥的情况下,

所述根据所述第二保护密钥对所述量子密钥进行加密,获得第二加密信息,包括:

利用所述第二加密密钥对所述量子密钥进行加密,获得第二加密信息;

所述根据所述第二保护密钥对第二目标信息进行加密,获得第二消息认证码,包括:

利用所述第二完保密钥对所述第二目标信息进行加密,获得第二消息认证码。

其中,所述方法还包括:

在确定所述量子密钥请求消息不是重放消息,且本地未存储有所述根密钥标识对应的共享密钥的情况下,向锚定功能实体发送应用密钥请求消息,所述应用密钥请求消息包括所述根密钥标识和所述服务器的标识;

接收所述锚定功能实体针对所述应用密钥请求消息发送的应用密钥回复消息,所述应用密钥回复消息包括所述根密钥标识对应的共享密钥。

第三方面,本发明还提供一种消息传输装置,包括:

第一发送模块,用于向服务器发送量子密钥请求消息,其中,所述量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,所述第一加密信息为与量子密钥相关的密钥要求的加密信息,所述第一加密信息和所述第一消息认证码通过第一保护密钥获得,所述第一保护密钥基于所述第一参数值和共享密钥生成,所述根密钥标识用于指示所述服务器获得对应的共享密钥;

第一接收模块,用于接收所述服务器针对所述量子密钥请求消息发送的量子密钥回复消息,其中,所述量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,所述第二加密信息为所述服务器按照所述密钥要求生成的量子密钥的加密信息,所述第二加密信息和所述第二消息认证码通过第二保护密钥获得,所述第二保护密钥基于所述第二参数值和所述共享密钥生成。

第四方面,本发明实施例还提供一种消息传输装置,包括:

第二接收模块,用于接收终端发送的量子密钥请求消息,其中,所述量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,所述第一加密信息为与量子密钥相关的密钥要求的加密信息;

第一处理模块,用于根据所述量子密钥请求消息,获得与量子密钥相关的密钥要求;

第二处理模块,用于按照与量子密钥相关的密钥要求,生成量子密钥;

第二发送模块,用于向所述终端发送量子密钥回复消息,所述量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,所述第二加密信息为所述服务器按照所述密钥要求生成的量子密钥的加密信息,所述第二加密信息和所述第二消息认证码通过第二保护密钥获得,所述第二保护密钥基于所述第二参数值和共享密钥生成。

第五方面,本发明还提供一种终端,包括处理器和收发器,所述收发器在处理器的控制下接收和发送数据,所述收发器用于执行以下操作:

向服务器发送量子密钥请求消息,其中,所述量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,所述第一加密信息为与量子密钥相关的密钥要求的加密信息,所述第一加密信息和所述第一消息认证码通过第一保护密钥获得,所述第一保护密钥基于所述第一参数值和共享密钥生成,所述根密钥标识用于指示所述服务器获得对应的共享密钥;

接收所述服务器针对所述量子密钥请求消息发送的量子密钥回复消息,其中,所述量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,所述第二加密信息为所述服务器按照所述密钥要求生成的量子密钥的加密信息,所述第二加密信息和所述第二消息认证码通过第二保护密钥获得,所述第二保护密钥基于所述第二参数值和所述共享密钥生成。

第六方面,本发明实施例还提供一种服务器,包括处理器和收发器,所述收发器在处理器的控制下接收和发送数据,所述处理器用于执行如下过程:

通过收发器接收终端发送的量子密钥请求消息,其中,所述量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,所述第一加密信息为与量子密钥相关的密钥要求的加密信息;

根据所述量子密钥请求消息,获得与量子密钥相关的密钥要求;

按照与量子密钥相关的密钥要求,生成量子密钥;

通过收发器向所述终端发送量子密钥回复消息,所述量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,所述第二加密信息为所述服务器按照所述密钥要求生成的量子密钥的加密信息,所述第二加密信息和所述第二消息认证码通过第二保护密钥获得,所述第二保护密钥基于所述第二参数值和共享密钥生成。

第七方面,本发明实施例还提供一种终端,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序;所述处理器执行所述程序时实现如上述第一方面所述的消息传输方法。

第八方面,本发明实施例还提供一种服务器,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序;所述处理器执行所述程序时实现如上述第二方面所述的消息传输方法。

第九方面,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上述第一方面所述的消息传输方法中的步骤,或者实现如上述第二方面所述的消息传输方法中的步骤。

本发明的上述技术方案至少具有如下有益效果:

本发明实施例中,通过向服务器发送量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息,第一加密信息和第一消息认证码通过第一保护密钥获得,第一保护密钥基于第一参数值和共享密钥生成,根密钥标识用于指示服务器获得对应的共享密钥;接收服务器针对量子密钥请求消息发送的量子密钥回复消息,其中,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成,这样,通过上述处理,节省了TLS握手协商的流程,而且量子密钥的传递更加安全高效。

附图说明

图1表示现有AKMA总体架构示意图;

图2表示本发明实施例提供的消息传输方法的流程示意图之一;

图3表示本发明实施例提供的消息传输方法的流程示意图之二;

图4表示本发明实施例提供的消息传输方法的流程示意图之三;

图5表示本发明实施例提供的消息传输方法的流程示意图之四;

图6表示本发明实施例提供的消息传输装置的模块示意图之一;

图7表示本发明实施例提供的消息传输装置的模块示意图之二;

图8表示本发明实施例提供的终端的硬件结构示意图;

图9表示本发明实施例提供的服务器的硬件结构示意图。

具体实施方式

为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。

在对本申请实施例进行说明之前,首先对相关技术点进行说明:

随机数在密码学中应用非常广泛。在经典密码体制中,AES加密算法中的密钥、RSA加密算法中的素数及其密钥的产生都需要随机数。在众多密码学协议中,大多数都需用到随机数,如DH密钥交换协议中,交换的公钥对应的私钥就是随机数。不同的应用对随机数有不同的要求。在某些应用中,具有不完美熵的随机比特序列足以满足要求,如伪随机数。然而,在一些密码应用,如比特承诺、安全加密,如果不使用真随机数很难保证这些应用程序的安全性。

传统的随机数发生器大多基于复杂的数学算法和经典物理过程,是伪随机数,而不是真随机数。量子随机数发生器是迄今为止唯一的从理论上可以论证的真正的随机数发生器,其本质是由量子力学的基本原理决定的。其中,最常见的是利用单光子通过50/50光分束时反射和透射的随机性来产生随机序列。此外,还有基于其它量子光学原理如量子真空态噪声、激光自发辐射的量子相位噪声、相干态光子数、光子相邻两个随机时间间隔、相干态光子波函数坍塌的时域随机性等等。

目前,量子随机数发生器件的成本远远高于基于经典物理过程的随机数发生器。量子随机数发生器设备形态各异,有机框设备式的,有PCIe板卡式的,有USB接口的模块式的,其设备尺寸远远大于传统的随机数发生器。量子随机数发生芯片目前比较稀少,而且价格昂贵,不适合在移动终端,如手机上使用。为了保证移动终端上的应用的最大安全性,需要在移动终端上使用量子随机数。考虑到成本,可实现性,移动终端目前不具备有内嵌量子随机数发生器的能力。

为此,移动终端需要从外部获取量子随机数,通常通过安全通道从量子随机数服务中心(或者量子密钥服务中心)得到。量子随机数是由量子设备生成,其通常都用于密钥算法中的密钥。因此,量子随机数与量子密钥这个两个词可以互用,本发明中使用量子密钥以表示随机数。

应用层认证和密钥管理(Authentication and Key Management forApplications,AKMA)在网络中其主要用于为客户端(UE)和应用服务器提供共享密钥。在AKMA流程完成后,UE和应用服务器的通信安全保护可以基于此共享密钥实现。AKMA架构参见图1,AKMA架构在5G系统中引入了一个新的功能元素,称为AKMA锚定功能(AKMA AnchorFunction,AAnF)。AAnF实体的作用是生成和管理AKMA的根密钥,即密钥K

在AKMA服务用程序提供商与提供AKMA服务的运营商服务协商后,应用功能(AF),也就是应用服务器,可以启用AKMA服务。UE和应用服务器AF间的通信基于Ua*接口,共享密钥K

AKMA与通用认证机制(General Bootstrapping Architecture,GBA)显著不同点在于UE不需要与网络进行第二次认证就能得到UE与应用服务器AF间的共享密钥。UE与网络完成认证后生成密钥Kausf,根据此密钥,UE和AAnF分别推演出密钥K

上述提供了使用UE和AF之间的共享密钥K

但是目前在UE和AF之间基于共享密钥K

为了解决上述问题,本发明提供一种消息传输方法、装置、终端、服务器及介质。其中,方法和装置是基于同一申请构思的,由于方法和装置解决问题的原理相似,因此装置和方法的实施可以相互参见,重复之处不再赘述。

如图2所示,为本发明实施例提供的消息传输方法的流程示意图,该方法由终端执行。其中,该方法可具体包括:

步骤201,向服务器发送量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息,第一加密信息和第一消息认证码通过第一保护密钥获得,第一保护密钥基于第一参数值和共享密钥生成,根密钥标识用于指示服务器获得对应的共享密钥。

需要说明的是,本发明实施例中所述的终端指的是移动终端。

这里,服务器为量子随机数服务中心或者量子密钥服务中心,主要负责生成量子密钥,其作用相当于AKMA架构中的应用功能AF。

需要说明的是,在执行步骤201之前,终端需完成接入认证。具体的,终端可以通过使用5G AKMA认证协议与网络进行相互认证而接入网络。

认证完成后,终端和AAnF实体均获得根密钥K

AAnF实体能够从归属网的统一数据管理(Unified Data Management,UDM)获取用户的存储数据信息,其具体可包括用户在运营商订购的业务,如量子密钥分发业务。

可选地,防重放攻击参数为计数器或者时间戳。

可选地,与量子密钥相关的密钥要求包括但不限于:所请求的量子密钥的长度LK和量子密钥的数量M。

需要说明的是,终端向服务器发送的量子密钥请求消息中与量子密钥相关的密钥要求是经过加密的,其目的是为了保证该密钥要求传递的安全性。而且,对与量子密钥相关的密钥要求加密的第一保护密钥是基于防重放攻击参数的第一参数值和共享密钥生成的,由于防重放攻击参数可以是计数器或者时间戳,其参数值是变化的,所以每次发送量子密钥请求消息中,对与量子密钥相关的密钥要求加密的第一保护密钥也是不一样的,这样可以进一步提高请求消息传输的安全性。

这里,第一消息认证码用于服务器认证量子密钥请求消息的消息数据完整性。

步骤202,接收服务器针对量子密钥请求消息发送的量子密钥回复消息,其中,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成。

需要说明的是,终端接收到的服务器发送的量子密钥回复消息中,服务器按照密钥要求生成的量子密钥也是经过加密的,其目的是为了保证生成的量子密钥传递的安全性。而且,对量子密钥加密的第二保护密钥是基于防重放攻击参数的第二参数值和共享密钥生成的,由于防重放攻击参数可以是计数器或者时间戳,其参数值是变化的,所以服务器侧每次发送量子密钥回复消息中,对量子密钥加密的第二保护密钥也是不一样的,这样可以进一步提高回复消息传递的安全性。

这里,第二消息认证码用于终端认证量子密钥回复消息的消息数据完整性。

作为一可选地实现方式,本发明实施例在步骤201之前,还可包括:

S1,获取共享密钥和防重放攻击参数的第一参数值;

这里,终端通过完成接入认证获得共享密钥。

需要说明的是,在终端和服务器两端均设有与量子密钥请求消息相关(或者用于量子密钥请求消息)的防重放攻击参数,如计数器或时间戳。这里,若用于量子密钥请求消息的防重放攻击参数为时间戳,则需要终端和服务器之间时间同步。

若用于量子密钥请求消息的防重放攻击参数为计数器(用Creq表示),其初始值为0,每次终端发起量子密钥请求消息时,Creq的值加1,由此可获得防重放攻击参数的第一参数值。

若用于量子密钥请求消息的防重放攻击参数为时间戳(用Treq表示),防重放攻击参数的第一参数值是本次发送量子密钥请求消息时的时间戳。

S2,根据共享密钥和第一参数值,生成第一保护密钥;

具体的,根据共享密钥和第一参数值,通过密钥导出函数(Key DerivationFunction,KDF)生成第一保护密钥。

S3,根据第一保护密钥对与量子密钥相关的密钥要求进行加密,获得第一加密信息;

S4,根据第一保护密钥对第一目标信息进行加密,获得第一消息认证码,第一目标信息包括根密钥标识、第一参数值和第一加密信息。

基于此,在一可选地实施例中,上述步骤S2可具体包括:

S2-1a,根据共享密钥和第一参数值,采用第一方式生成第一保护密钥,第一保护密钥包括第一加密密钥和第一完保密钥。

也就是说,第一方式是:基于共享密钥K

若用于量子密钥请求消息的防重放攻击参数为计数器,则第一参数值用Creq表示,第一加密密钥用Kreq-e表示,第一完保密钥用Kreq-i表示。具体的计算如下:

Kreq-e=KDF(K

Kreq-i=KDF(K

若用于量子密钥请求消息的防重放攻击参数为时间戳,则第一参数值用Treq表示,第一加密密钥用Kreq-e表示,第一完保密钥用Kreq-i表示。具体的计算如下:

Kreq-e=KDF(K

Kreq-i=KDF(K

或者,S2-1b,根据共享密钥和第一参数值,采用第二方式生成第一保护密钥,第一保护密钥不同于所第一加密密钥和第一完保密钥。

也就是说,第二方式是基于共享密钥K

若用于量子密钥请求消息的防重放攻击参数为计数器,则第一参数值用Creq表示,第一保护密钥用Kreq表示,具体的计算如下:

Kreq=KDF(K

若用于量子密钥请求消息的防重放攻击参数为时间戳,则第一参数值用Treq表示,第一保护密钥用Kreq表示,具体的计算如下:

Kreq=KDF(K

其中,量子密钥请求消息还包括:第一指示,第一指示用于指示生成第一保护密钥采用的目标方式,目标方式为第一方式或第二方式;第一目标信息还包括第一指示。

也就是说,在该实施例中,量子密钥请求消息包括根密钥标识、第一参数值、第一加密信息和第一指示。步骤S4中,根据第一保护密钥对第一目标信息进行加密,获得第一消息认证码,第一目标信息包括根密钥标识、第一参数值、第一加密信息和第一指示。

进一步地,在采用第一方式生成第一保护密钥的情况下,上述步骤S3可具体包括:

步骤S31,利用第一加密密钥对与量子密钥相关的密钥要求进行加密,获得第一加密信息;

相应的,步骤S4可具体包括:

步骤S41,利用第一完保密钥对第一目标信息进行加密,获得第一消息认证码。

这里,第一消息认证码MAC-req是指对量子密钥请求消息的验证码,其完整计算对象是根密钥标识A-KID、第一参数值(Creq或Treq)、第一加密信息[LK,M]和第一指示PM。

作为一可选地实现方式,在步骤202之后,本发明的方法还可包括:

步骤203,根据第二参数值和本地的防重放攻击参数的参数值,确定量子密钥回复消息是否为重放消息;

具体的,本步骤203可具体包括:

步骤203-1a,若防重放攻击参数为计数器,则在第二参数值大于本地的防重放攻击参数的参数值的情况下,确定量子密钥回复消息不是重放消息;在第二参数值小于或者等于本地的防重放攻击参数的参数值的情况下,确定量子密钥回复消息是重放消息;

这里的防重放攻击参数是与量子密钥回复消息相关(或者用于量子密钥回复消息)的防重放攻击参数,在终端和服务器两端均设有该防重放攻击参数。

本步骤中,若第二参数值即服务器发送的计数器的值大于本地的计数器的值,说明该量子密钥回复消息是由服务器侧首次发送的,不是重放消息。若服务器发送的计数器的值小于或者等于本地的计数器的值,说明之前终端已经收到过该量子密钥回复消息,当前发送的该量子密钥回复消息是重放消息。

进一步地,在防重放攻击参数为计数器的情况下,在执行步骤204中,根据第二参数值和共享密钥,生成第二保护密钥之前,本发明实施例的方法还包括:

将本地的防重放攻击参数的参数值替换为第二参数值。

也就是说,服务器每次发送量子密钥回复消息时,服务器本地的防重放攻击参数(用Cans表示)的参数值加1,相应的,终端每次终端接收到量子密钥回复消息时,终端本地的防重放攻击参数(用Cans表示)的参数值加1。为了准确地判断接收到的服务器发送的量子密钥回复消息是否是重放消息,本地的防重放攻击参数是在不断更新的。

或者,本步骤203-1b,若防重放攻击参数为时间戳,则在第二参数值与本地的防重放攻击参数的参数值的差值的绝对值小于第一预设阈值的情况下,确定量子密钥回复消息不是重放消息;在第二参数值与本地的防重放攻击参数的参数值的差值的绝对值大于或者等于第一预设阈值的情况下,确定量子密钥回复消息是重放消息。

本步骤中,防重放攻击参数为时间戳(用Tans表示),在第二参数值Tans2与本地的防重放攻击参数的参数值Tloc2的差值的绝对值小于第一预设阈值Δ1,即|Tloc2-Tans2|<Δ1的情况下,则说明该量子密钥回复消息是由服务器侧首次发送的,不是重放消息。在第二参数值与本地的防重放攻击参数的参数值的差值的绝对值大于或者等于第一预设阈值|Tloc2-Tans2|≥Δ1的情况下,当前接收到的该量子密钥回复消息是重放消息。

步骤204,在确定量子密钥回复消息不是重放消息的情况下,根据第二参数值和共享密钥,生成第二保护密钥;

具体的,根据第二参数值和共享密钥,通过密钥导出函数KDF生成第二保护密钥。

可选地,步骤204可具体包括:

步骤204-1a,根据第二参数值和共享密钥,利用第一方式生成第二保护密钥,第二保护密钥包括第二加密密钥和第二完保密钥;

需要说明的是,这里的生成第二保护密钥的第一方式或第二方式与前述生成第一保护密钥的第一方式或第二方式相同。

也就是说,第一方式是:基于共享密钥K

若用于量子密钥回复消息的防重放攻击参数为计数器,第二参数值用Cans表示,第二加密密钥用Kans-e表示,第二完保密钥用Kans-i表示。具体的计算如下:

Kans-e=KDF(K

Kans-i=KDF(K

若用于量子密钥回复消息的防重放攻击参数为时间戳,则第二参数值用Tans表示,第二加密密钥用Kans-e表示,第二完保密钥用Kans-i表示。具体的计算如下:

Kans-e=KDF(K

Kans-i=KDF(K

或者,步骤204-1b,根据第二参数值和共享密钥,利用第二方式生成第二保护密钥,第二保护密钥不同于所第二加密密钥和第二完保密钥。

也就是说,第二方式是基于共享密钥K

若用于量子密钥回复消息的防重放攻击参数为计数器,第二参数值用Cans表示,第二加密密钥用Kans表示,具体的计算如下:

Kans=KDF(K

若用于量子密钥回复消息的防重放攻击参数为时间戳,则第二参数值用Tans表示,第二加密密钥用Kans表示,具体的计算如下:

Kans=KDF(K

步骤205,基于第二保护密钥对第二消息认证码进行验证,获得第一验证结果;

这里,第二消息认证码MAC-ans是指对量子密钥回复消息的验证码。

步骤206,在第一验证结果表示量子密钥回复消息的消息数据完整的情况下,利用第二保护密钥对第二加密信息进行解密,获得量子密钥。

这里,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,可表示为[ID

作为一可选地实现方式,在采用第一方式生成第二保护密钥的情况下,步骤205可具体包括:

步骤2051,基于第二完保密钥对第二消息认证码进行验证,获得第一验证结果;

相应的,步骤206可具体包括:

步骤2061,利用第二加密密钥对第二加密信息进行解密,获得量子密钥。

作为一可选地实现方式,在步骤203之后,本发明的方法还包括:

在确定量子密钥回复消息是重放消息的情况下,丢弃量子密钥回复消息。

这里,由于量子密钥回复消息是重放消息,为了避免重放攻击,保证数据的安全性,所以对于判断为重放消息的量子密钥回复消息选择丢弃。

本发明实施例的消息传输方法,通过向服务器发送量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息,第一加密信息和第一消息认证码通过第一保护密钥获得,第一保护密钥基于第一参数值和共享密钥生成,根密钥标识用于指示服务器获得对应的共享密钥;接收服务器针对量子密钥请求消息发送的量子密钥回复消息,其中,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成,这样,通过上述处理,节省了TLS握手协商的流程,而且量子密钥的传递更加安全高效。

如图3所示,为本发明实施例提供的消息传输方法的流程示意图,该方法由服务器执行。其中,该方法可具体包括:

步骤301,接收终端发送的量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息;

本侧是与终端侧对应的方法,这里,服务器为量子随机数服务中心或者量子密钥服务中心,主要负责生成量子密钥,其作用相当于AKMA架构中的应用功能AF。

可选地,防重放攻击参数为计数器或者时间戳。本步骤中的防重放攻击参数是用于量子密钥请求消息的防重放攻击参数,在终端和服务器两端均设有与量子密钥请求消息相关(或者用于量子密钥请求消息)的防重放攻击参数,如计数器或时间戳。

这里,第一消息认证码用于该服务器认证量子密钥请求消息的消息数据完整性。

步骤302,根据量子密钥请求消息,获得与量子密钥相关的密钥要求;

也就是,基于量子密钥请求消息,解密第一加密信息,比如[LK,M],获得与量子密钥相关的密钥要求,(LK,M)。

步骤302,按照与量子密钥相关的密钥要求,生成量子密钥;

这里,与量子密钥相关的密钥要求包括但不限于:所请求的量子密钥的长度LK和量子密钥的数量M。

在与量子密钥相关的密钥要求为(LK,M)时,按照与量子密钥相关的密钥要求,生成量子密钥可以表示为(K

步骤304,向终端发送量子密钥回复消息,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成。

本步骤中防重放攻击参数是用于量子密钥回复消息的防重放攻击参数,在终端和服务器两端均设有与量子密钥回复消息相关(或者用于量子密钥回复消息)的防重放攻击参数,如计数器或时间戳。

需要说明的是,服务器向终端发送的量子密钥回复消息中量子密钥是经过加密的,其目的是为保证量子密钥传递安全性。而且,对量子密钥加密的第二保护密钥是基于防重放攻击参数的第二参数值和共享密钥生成的,由于防重放攻击参数可以是计数器或者时间戳,其参数值是变化的,所以每次发送量子密钥回复消息中,对量子密钥加密的第二保护密钥也是不一样的,这样可以进一步提高请求消息传输的安全性。

这里,第二消息认证码用于终端认证量子密钥回复消息的消息数据完整性。

本发明实施例的消息传输方法,通过接收终端发送的量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息;然后根据量子密钥请求消息,获得与量子密钥相关的密钥要求;按照与量子密钥相关的密钥要求,生成量子密钥;最后,向终端发送量子密钥回复消息,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成,这样,通过上述处理,节省了TLS握手协商的流程,而且量子密钥的传递更加安全高效。

作为一可选地实现方式,上述步骤302可包括:

步骤3021,根据第一参数值和本地的防重放攻击参数的参数值,确定量子密钥请求消息是否为重放消息;

本步骤的具体实现过程与前述方法侧的步骤203部分原理相同,具体的,步骤3021可包括:

步骤3021-1a,若防重放攻击参数为计数器,则在第一参数值大于本地的防重放攻击参数的参数值的情况下,确定量子密钥请求消息不是重放消息;在第一参数值小于或者等于本地的防重放攻击参数的参数值的情况下,确定量子密钥请求消息是重放消息;

这里的防重放攻击参数是与量子密钥请求消息相关(或者用于量子密钥请求消息)的防重放攻击参数,在终端和服务器两端均设有该防重放攻击参数。

本步骤中,若第一参数值即终端发送的计数器的值大于本地的计数器的值,说明该量子密钥请求消息是由服务器侧首次发送的,不是重放消息。若终端发送的计数器的值小于或者等于本地的计数器的值,说明之前服务器已经收到过量子密钥请求消息,当前发送的该量子密钥请求消息是重放消息。

进一步地,在防重放攻击参数为计数器的情况下,在执行步骤3022之前,本发明实施例的方法还包括:

将本地的防重放攻击参数的参数值替换为第一参数值。

也就是说,终端每次发送量子密钥请求消息时,终端本地的防重放攻击参数(用Creq表示)的参数值加1,相应的,服务器每次终端接收到量子密钥请求消息时,服务器本地的防重放攻击参数(用Creq表示)的参数值加1。为了准确地判断接收到的终端发送的量子密钥请求消息是否是重放消息,本地的防重放攻击参数是在不断更新的。

或者,步骤3021-1b,若防重放攻击参数为时间戳,则在第一参数值与本地的防重放攻击参数的参数值的差值的绝对值小于第二预设阈值的情况下,确定量子密钥回复消息不是重放消息;在第一参数值与本地的防重放攻击参数的参数值的差值的绝对值大于或者等于第二预设阈值的情况下,确定量子密钥请求消息是重放消息。

本步骤中,防重放攻击参数为时间戳(用Tans表示),在第一参数值Tans1与本地的防重放攻击参数的参数值Tloc1的差值的绝对值小于第二预设阈值Δ2,即|Tloc1-Tans1|<Δ2的情况下,则说明该量子密钥请求消息是由终端侧首次发送的,不是重放消息。在第一参数值与本地的防重放攻击参数的参数值的差值的绝对值大于或者等于第二预设阈值|Tloc1-Tans1|≥Δ2的情况下,当前接收到的该量子密钥请求消息是重放消息。

步骤3022,在确定量子密钥请求消息不是重放消息,且本地存储有根密钥标识对应的共享密钥的情况下,根据第一参数值和共享密钥,生成第一保护密钥;

可选地,量子密钥请求消息还包括:第一指示,第一指示用于指示生成第一保护密钥采用的目标方式;相应的,步骤3022可具体包括:

步骤3022-1a,若目标方式为第一方式,则根据第一参数值和共享密钥,采用第一方式生成第一保护密钥,第一保护密钥包括第一加密密钥和第一完保密钥;

这里,采用第一方式生成第一保护密钥的具体实现过程可参见上述终端侧方法步骤S2-1a,这里不再赘述。

步骤3022-1b,若目标方式为第二方式,则根据第一参数值和共享密钥,采用第二方式生成第一保护密钥,第一保护密钥不同于所第一加密密钥和第一完保密钥。

这里,采用第二方式生成第一保护密钥的具体实现过程可参见上述终端侧方法步骤S2-1b,这里也不再赘述。

步骤3023,基于第一保护密钥对第一消息认证码进行验证,获得第二验证结果;

这里,第一消息认证码MAC-req是指对量子密钥请求消息的验证码。

步骤3024,在第二验证结果表示量子密钥请求消息的消息数据完整的情况下,利用第一保护密钥对第一加密信息进行解密,获得与量子密钥相关的密钥要求。

这里,第一加密信息为与量子密钥相关的密钥要求的加密信息,可表示为[LK,M],经过本步骤的处理后,得到与量子密钥相关的密钥要求(LK,M)。

作为一可选地实现方式,在采用第一方式生成第一保护密钥的情况下,上述步骤3023可具体包括:

利用第一完保密钥对第一消息认证码进行解密,获得第二验证结果;

相应的,步骤3024可具体包括:

利用第一加密密钥对第一加密信息进行解密,获得与量子密钥相关的密钥要求。

作为一可选地实现方式,在步骤3021之后,本发明的方法还包括:

在确定量子密钥请求消息是重放消息的情况下,丢弃量子密钥请求消息。

这里,由于量子密钥请求消息是重放消息,为了避免重放攻击,保证数据的安全性,所以对于判断为重放消息的量子密钥请求消息选择丢弃。

作为一可选地实现方式,在上述步骤304,本发明的方法还包括:

A)获取防重放攻击参数的第二参数值;

需要说明的是,在终端和服务器两端均设有与量子密钥回复消息相关(或者用于量子密钥回复消息)的防重放攻击参数,如计数器或时间戳。这里,若用于量子密钥回复消息的防重放攻击参数为时间戳,则需要终端和服务器之间时间同步。

若用于量子密钥回复消息的防重放攻击参数为计数器(用Cans表示),其初始值为0,每次服务器发送量子密钥回复消息时,Cans的值加1,由此可获得防重放攻击参数的第二参数值。

若用于量子密钥回复消息的防重放攻击参数为时间戳(用Tans表示),防重放攻击参数的第二参数值是本次发送量子密钥回复消息时的时间戳。

B)在本地存储有根密钥标识对应的共享密钥的情况下,根据第二参数值和共享密钥,生成第二保护密钥;

具体的,根据第二参数值和共享密钥,通过KDF生成第二保护密钥。

C)根据第二保护密钥对量子密钥进行加密,获得第二加密信息;

D)根据第二保护密钥对第二目标信息进行加密,获得第二消息认证码,第二目标信息包括第二参数值和第二加密信息。

基于此,在一可选地实施例中上述步骤B)可具体包括:

步骤B-1a)根据第二参数值和共享密钥,采用第一方式生成第二保护密钥,第二保护密钥包括第二加密密钥和第二完保密钥;

也就是说,第一方式是:基于共享密钥K

或者,步骤B-b)根据第二参数值和共享密钥,采用第二方式生成第二保护密钥,第二保护密钥不同于所第二加密密钥和第二完保密钥;

也就是说,第二方式是基于共享密钥K

需要说明的是,具体采用哪种方式生成第二保护密钥,是基于量子密钥请求消息包括的第一指示,若第一指示为第一方式,则利用第一方式生成第二保护密钥;若第一指示为第二方式,则利用第二方式生成第二保护密钥。

进一步地,在采用第一方式生成第二保护密钥的情况下,上述步骤C)可具体包括:

利用第二加密密钥对量子密钥进行加密,获得第二加密信息;

这里,比如量子密钥表示为(K

相应的,步骤D)可具体包括:

利用第二完保密钥对第二目标信息进行加密,获得第二消息认证码。

这里,第二消息认证码MAC-ans是指对量子密钥回复消息的验证码,其完整计算对象是第二参数值(Cans或Tans)和第二加密信息。

作为一可选地实现方式,在步骤3021之后,本发明的方法还可包括:

步骤3024,在确定量子密钥请求消息不是重放消息,且本地未存储有根密钥标识对应的共享密钥的情况下,向锚定功能实体发送应用密钥请求消息,应用密钥请求消息包括根密钥标识和服务器的标识;

这里,本地未存储有根密钥标识对应的共享密钥,说明服务器还没有关于根密钥标识A-KID的终端相关信息(包括共享密钥),需要向锚定功能实体AAnF实体发送应用密钥请求消息,以从AAnF实体获得根密钥标识对应的共享密钥。

需要说明的是,应用密钥请求消息中包括根密钥标识是为了使锚定功能实体基于该标识查询对应的终端相关信息,从而获得根密钥标识对应的共享密钥;还包括服务器的标识(Quantum Key Server-Identifier,QKS-ID),其目的是为了使锚定功能实体获得根密钥标识对应的共享密钥知道向哪个服务器返回该根密钥标识对应的共享密钥。

需要说明的是,终端相关信息包括但不限于共享密钥、Prof,Bootstrap time,Keylifetime。服务器存储终端相关信息。

步骤3025,接收锚定功能实体针对应用密钥请求消息发送的应用密钥回复消息,应用密钥回复消息包括根密钥标识对应的共享密钥。

下面通过两个实施例,从终端与服务器之间的交互流程上说明本发明方法的实现过程。

实施例一

参见图4,该实施例对应于防重放攻击参数为计数器的情形。

步骤0,UE完成认证后生成根密钥K

UE通过使用5G AKMA认证协议与网络进行相互认证而接入网络。认证完成后,UE和AAnF获得根密钥K

步骤1,UE向量子密钥服务器发起量子密钥请求消息,该量子密钥请求消息包括A-KID,PM,Creq,[LK,M],MAC-req。

这里Creq是用于请求消息的计数器,在UE和量子服务器两端,其初始值为0,每次UE发起请求消息时,Creq的值加1.

这里PM(Protection Method)表示第一指示,用于指示对请求消息的保护方法,即指示生成第一保护密钥采用的目标方式。

第一方式:使用加密密钥和完整性保护密钥的传统保护方法,第二方式:使用认证加密的方法,其只需要一个密钥就能完成对消息的加密和完整性保护。

对于第一方式:基于共享密钥K

具体的计算如下:

Kreq-e=KDF(K

Kreq-i=KDF(K

对于第二方式:基于共享密钥K

Kreq=KDF(K

在上式中加入Creq使每次用于量子密钥请求消息的密钥都不一样,提高了安全性。

这里LK(length of the Key)是指申请的量子密钥的长度,M是申请的量子密钥的数量。这两项都需要加密保护。

这里MAC-req是指对请求消息的验证码,其完整性计算的对象是A-KID,PM,Creq,[LK,M]。

步骤2,量子密钥服务器收到量子密钥请求消息后,判断A-KID是否是第一次出现,如果是,则执行步骤3;否则,则执行步骤6。

步骤3,量子密钥服务器向AAnF发送AKMA应用密钥请求消息,该AKMA应用密钥请求消息包括A-KID以及QKS-ID。

这里判断A-KID是第一次出现说明量子密钥服务器还没有关于标识为A-KID的UE相关信息(共享密钥K

步骤4,AAnF向量子密钥服务器发送AKMA应用密钥回应消息,该AKMA应用密钥回应消息包括标识为A-KID的UE相关信息,该UE相关信息包括K

步骤5,量子密钥服务器接收AKMA应用密钥回应消息,并存储UE相关信息;

之后针对A-KID,量子密钥服务器先将接收到的Creq与本地的Creq比较,判断量子密钥请求消息是否为重放消息,若不是,则使用接收到的Creq替换本地的Creq;并基于Creq和共享密钥生成第一保护密钥,之后对MAC-req进行验证,验证通过后,使用第一保护密钥对[LK,M]进行解密获得与量子密钥相关的密钥要求;接着基于该密钥要求生成量子密钥,基于本地的Cans和共享密钥生成第二保护密钥,利用该第二保护密钥对量子密钥加密,并生成MAC-ans。

这里Cans是用于量子密钥回复消息的计数器,在UE和量子服务器两端,其初始值为0,量子密钥服务器每次发送量子密钥回复消息时,Cans的值加1.

根据量子密钥请求消息中的消息保护方式(PM),量子密钥服务器生成用于保护量子密钥回复消息的第二保护密钥。

如果是第一方式,第二保护密钥中的加密密钥和完保密钥的生成如下;

Kans-e=KDF(K

Kans-i=KDF(K

如果是第二方式,用于保护量子密钥回复消息的密钥(第二保护密钥)的生成如下;

Kans=KDF(K

这里[ID

需要说明的是,接收到的Creq与本地的Creq比较,判断量子密钥请求消息是否为重放消息已在前述中阐述了,这里不再赘述。若判断是重放消息则丢弃该量子密钥请求消息。

步骤6,量子密钥服务器向终端发送量子密钥回复消息,该量子密钥回复消息包括:Cans,[ID

之后,终端接收到量子密钥回复消息后,首先将计数器Cans与本地的Cans比较,判断量子密钥回复消息是否为重放消息,若不是,则使用接收到的Cans替换本地的Cans;并基于Cans和共享密钥生成第二保护密钥,之后对MAC-ans进行验证,验证通过后,使用第二保护密钥对[ID

这里,若判断量子密钥回复消息是重放消息,则丢弃该消息。

实施例二

参见图5,该实施例对应于防重放攻击参数为时间戳的情形。

步骤10,UE完成认证后生成根密钥K

UE通过使用5G AKMA认证协议与网络进行相互认证而接入网络。认证完成后,UE和AAnF获得根密钥K

步骤11,UE向量子密钥服务器发起量子密钥请求消息,该量子密钥请求消息包括A-KID,PM,Treq,[LK,M],MAC-req。

这里Treq是用于请求消息的时间戳,UE和量子服务器之间需要时间同步。

这里PM(Protection Method)表示第一指示,用于指示对请求消息的保护方法,即指示生成第一保护密钥采用的目标方式。

第一方式:使用加密密钥和完整性保护密钥的传统保护方法,第二方式:使用认证加密的方法,其只需要一个密钥就能完成对消息的加密和完整性保护。

对于第一方式:基于共享密钥K

具体的计算如下:

Kreq-e=KDF(K

Kreq-i=KDF(K

对于第二方式:基于共享密钥K

Kreq=KDF(K

在上式中加入Treq使每次用于量子密钥请求消息的密钥都不一样,提高了安全性。

这里MAC-req是指对请求消息的验证码,其完整性计算的对象是A-KID,PM,Treq,[LK,M]。

步骤12,量子密钥服务器收到量子密钥请求消息后,判断A-KID是否是第一次出现,如果是,则执行步骤3;否则,则执行步骤6。

步骤13,量子密钥服务器向AAnF发送AKMA应用密钥请求消息,该AKMA应用密钥请求消息包括A-KID以及QKS-ID。

这里判断A-KID是第一次出现说明量子密钥服务器还没有关于标识为A-KID的UE相关信息(共享密钥K

步骤14,AAnF向量子密钥服务器发送AKMA应用密钥回应消息,该AKMA应用密钥回应消息包括标识为A-KID的UE相关信息,该UE相关信息包括K

步骤5,量子密钥服务器接收AKMA应用密钥回应消息,并存储UE相关信息;

之后针对A-KID,量子密钥服务器先将接收到的时间戳Treq与本地时间Tloc比较,判断量子密钥请求消息是否为重放消息,若不是,基于Treq和共享密钥生成第一保护密钥,之后对MAC-req进行验证,验证通过后,使用第一保护密钥对[LK,M]进行解密获得与量子密钥相关的密钥要求;接着基于该密钥要求生成量子密钥,基于本地的Tans和共享密钥生成第二保护密钥,利用该第二保护密钥对量子密钥加密,并生成MAC-ans。

这里Tans是发送量子密钥回复消息的时间戳。

根据量子密钥请求消息中的消息保护方式(PM),量子密钥服务器生成用于保护量子密钥回复消息的第二保护密钥。

如果是第一方式,第二保护密钥中的加密密钥和完保密钥的生成如下;

Kans-e=KDF(K

Kans-i=KDF(K

如果是第二方式,用于保护量子密钥回复消息的密钥(第二保护密钥)的生成如下;

Kans=KDF(K

这里[ID

需要说明的是,接收到的Treq与本地的Treq比较,判断量子密钥请求消息是否为重放消息已在前述中阐述了,这里不再赘述。若判断是重放消息则丢弃该量子密钥请求消息。

步骤6,量子密钥服务器向终端发送量子密钥回复消息,该量子密钥回复消息包括:Tans,[ID

之后,终端接收到量子密钥回复消息后,首先将时间戳Tans与本地时间Tloc比较,判断量子密钥回复消息是否为重放消息,若不是,基于Tans和共享密钥生成第二保护密钥,之后对MAC-ans进行验证,验证通过后,使用第二保护密钥对[ID

这里,若判断量子密钥回复消息是重放消息,则丢弃该消息。

如图6所示,本发明实施例还提供一种消息传输装置,该装置包括:

第一发送模块601,用于向服务器发送量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息,第一加密信息和第一消息认证码通过第一保护密钥获得,第一保护密钥基于第一参数值和共享密钥生成,根密钥标识用于指示服务器获得对应的共享密钥;

第一接收模块602,用于接收服务器针对量子密钥请求消息发送的量子密钥回复消息,其中,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成。

可选地,本发明实施例的消息传输装置还包括:

第一获取模块,用于获取共享密钥和防重放攻击参数的第一参数值;

第三处理模块,用于根据共享密钥和第一参数值,生成第一保护密钥;

第一加密模块,用于根据第一保护密钥对与量子密钥相关的密钥要求进行加密,获得第一加密信息;

第二加密模块,用于根据第一保护密钥对第一目标信息进行加密,获得第一消息认证码,第一目标信息包括根密钥标识、第一参数值和第一加密信息。

可选地,第三处理模块可包括:

第一处理单元,用于根据共享密钥和第一参数值,采用第一方式生成第一保护密钥,第一保护密钥包括第一加密密钥和第一完保密钥;

或者,第二处理单元,用于根据共享密钥和第一参数值,采用第二方式生成第一保护密钥,第一保护密钥不同于所第一加密密钥和第一完保密钥;

其中,量子密钥请求消息还包括:第一指示,第一指示用于指示生成第一保护密钥采用的目标方式,目标方式为第一方式或第二方式;第一目标信息还包括第一指示。

可选地,第一加密模块可包括:

第一加密单元,用于在采用第一方式生成第一保护密钥的情况下,利用第一加密密钥对与量子密钥相关的密钥要求进行加密,获得第一加密信息;

相应的,第二加密模块可包括:

第二加密单元,用于利用第一完保密钥对第一目标信息进行加密,获得第一消息认证码。

可选地,本发明实施例的消息传输装置还包括:

第四处理模块,用于根据第二参数值和本地的防重放攻击参数的参数值,确定量子密钥回复消息是否为重放消息;

第五处理模块,用于在确定量子密钥回复消息不是重放消息的情况下,根据第二参数值和共享密钥,生成第二保护密钥;

第一认证模块,用于基于第二保护密钥对第二消息认证码进行验证,获得第一验证结果;

第一解密模块,用于在第一验证结果表示量子密钥回复消息的消息数据完整的情况下,利用第二保护密钥对第二加密信息进行解密,获得量子密钥。

可选地,本发明实施例的消息传输装置还包括:

第一消息丢弃模块,用于在确定量子密钥回复消息是重放消息的情况下,丢弃量子密钥回复消息。

可选地,第四处理模块可包括:

第三处理单元,用于在防重放攻击参数为计数器,且在第二参数值大于本地的防重放攻击参数的参数值的情况下,确定量子密钥回复消息不是重放消息;在第二参数值小于或者等于本地的防重放攻击参数的参数值的情况下,确定量子密钥回复消息是重放消息;或者,

第四处理单元,用于在防重放攻击参数为时间戳,且在第二参数值与本地的防重放攻击参数的参数值的差值的绝对值小于第一预设阈值的情况下,确定量子密钥回复消息不是重放消息;在第二参数值与本地的防重放攻击参数的参数值的差值的绝对值大于或者等于第一预设阈值的情况下,确定量子密钥回复消息是重放消息。

可选地,本发明实施例的消息传输装置还包括:

第六处理模块,用于在防重放攻击参数为计数器的情况下,将本地的防重放攻击参数的参数值替换为第二参数值。

可选地,第五处理模块还包括:

第五处理单元,用于根据第二参数值和共享密钥,利用第一方式生成第二保护密钥,第二保护密钥包括第二加密密钥和第二完保密钥;

或者,第六处理单元,用于根据第二参数值和共享密钥,利用第二方式生成第二保护密钥,第二保护密钥不同于所第二加密密钥和第二完保密钥。

可选地,第一认证模块包括:

第一认证单元,用于在采用第一方式生成第二保护密钥的情况下,基于第二保护密钥对第二消息认证码进行验证,获得第一验证结果;

相应的,第一解密模块包括:

第一解密单元,用于利用第二加密密钥对第二加密信息进行解密,获得量子密钥。

本发明实施例的消息传输装置,通过向服务器发送量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息,第一加密信息和第一消息认证码通过第一保护密钥获得,第一保护密钥基于第一参数值和共享密钥生成,根密钥标识用于指示服务器获得对应的共享密钥;接收服务器针对量子密钥请求消息发送的量子密钥回复消息,其中,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成,这样,通过上述处理,节省了TLS握手协商的流程,而且量子密钥的传递更加安全高效。

如图7所示,本发明实施例还提供一种消息传输装置,该装置包括:

第二接收模块701,用于接收终端发送的量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息;

第一处理模块702,用于根据量子密钥请求消息,获得与量子密钥相关的密钥要求;

第二处理模块703,用于按照与量子密钥相关的密钥要求,生成量子密钥;

第二发送模块704,用于向终端发送量子密钥回复消息,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成。

可选地,第一处理模块702可包括:

第七处理单元,用于根据第一参数值和本地的防重放攻击参数的参数值,确定量子密钥请求消息是否为重放消息;

第八处理单元,用于在确定量子密钥请求消息不是重放消息,且本地存储有根密钥标识对应的共享密钥的情况下,根据第一参数值和共享密钥,生成第一保护密钥;

第二认证单元,用于基于第一保护密钥对第一消息认证码进行验证,获得第二验证结果;

第二解密单元,用于在第二验证结果表示量子密钥请求消息的消息数据完整的情况下,利用第一保护密钥对第一加密信息进行解密,获得与量子密钥相关的密钥要求。

可选地,本发明实施例的消息传输装置还包括:

第二消息丢弃模块,用于在确定量子密钥请求消息是重放消息的情况下,丢弃量子密钥请求消息。

可选地,第七处理单元具体用于:

若防重放攻击参数为计数器,则在第一参数值大于本地的防重放攻击参数的参数值的情况下,确定量子密钥请求消息不是重放消息;在第一参数值小于或者等于本地的防重放攻击参数的参数值的情况下,确定量子密钥请求消息是重放消息;或者,

若防重放攻击参数为时间戳,则在第一参数值与本地的防重放攻击参数的参数值的差值的绝对值小于第二预设阈值的情况下,确定量子密钥回复消息不是重放消息;在第一参数值与本地的防重放攻击参数的参数值的差值的绝对值大于或者等于第二预设阈值的情况下,确定量子密钥请求消息是重放消息。

可选地,第一处理模块702还可包括:

第九处理单元,用于将本地的防重放攻击参数的参数值替换为第一参数值。

可选地,量子密钥请求消息还包括:第一指示,第一指示用于指示生成第一保护密钥采用的目标方式;

相应的,第八处理单元具体用于:

若目标方式为第一方式,则根据第一参数值和共享密钥,采用第一方式生成第一保护密钥,第一保护密钥包括第一加密密钥和第一完保密钥;

若目标方式为第二方式,则根据第一参数值和共享密钥,采用第二方式生成第一保护密钥,第一保护密钥不同于所第一加密密钥和第一完保密钥。

可选地,第二认证单元具体用于:

在采用第一方式生成第一保护密钥的情况下,利用第一完保密钥对第一消息认证码进行解密,获得第二验证结果;

相应的,第二解密单元具体用于:

利用第一加密密钥对第一加密信息进行解密,获得与量子密钥相关的密钥要求。

可选地,本发明实施例的消息传输装置还包括:

第二获取模块,用于获取防重放攻击参数的第二参数值;

第六处理模块,用于在本地存储有根密钥标识对应的共享密钥的情况下,根据第二参数值和共享密钥,生成第二保护密钥;

第三加密模块,用于根据第二保护密钥对量子密钥进行加密,获得第二加密信息;

第四加密模块,用于根据第二保护密钥对第二目标信息进行加密,获得第二消息认证码,第二目标信息包括第二参数值和第二加密信息。

可选地,第六处理模块可包括:

第九处理单元,用于根据第二参数值和共享密钥,采用第一方式生成第二保护密钥,第二保护密钥包括第二加密密钥和第二完保密钥;

或者,第十处理单元,用于根据第二参数值和共享密钥,采用第二方式生成第二保护密钥,第二保护密钥不同于所第二加密密钥和第二完保密钥。

可选地,第三加密模块可包括:

第三加密单元,用于在采用第一方式生成第二保护密钥的情况下,利用第二加密密钥对量子密钥进行加密,获得第二加密信息;

相应的,第四加密模块可包括:

第四加密单元,用于利用第二完保密钥对第二目标信息进行加密,获得第二消息认证码。

可选地,本发明实施例的消息传输装置还包括:

第三发送模块,用于在确定量子密钥请求消息不是重放消息,且本地未存储有根密钥标识对应的共享密钥的情况下,向锚定功能实体发送应用密钥请求消息,应用密钥请求消息包括根密钥标识和服务器的标识;

第三接收模块,用于接收锚定功能实体针对应用密钥请求消息发送的应用密钥回复消息,应用密钥回复消息包括根密钥标识对应的共享密钥。

本发明实施例的消息传输装置,通过接收终端发送的量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息;然后根据量子密钥请求消息,获得与量子密钥相关的密钥要求;按照与量子密钥相关的密钥要求,生成量子密钥;最后,向终端发送量子密钥回复消息,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成,这样,通过上述处理,节省了TLS握手协商的流程,而且量子密钥的传递更加安全高效。

为了更好的实现上述目的,如图8所示,本发明实施例还提供一种终端,包括处理器800和收发器810,该终端还包括用户接口820,所述收发器810用于执行如下过程:

向服务器发送量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息,第一加密信息和第一消息认证码通过第一保护密钥获得,第一保护密钥基于第一参数值和共享密钥生成,根密钥标识用于指示服务器获得对应的共享密钥;

接收服务器针对量子密钥请求消息发送的量子密钥回复消息,其中,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成。

可选地,处理器800还用于:

获取共享密钥和防重放攻击参数的第一参数值;

根据共享密钥和第一参数值,生成第一保护密钥;

根据第一保护密钥对与量子密钥相关的密钥要求进行加密,获得第一加密信息;

根据第一保护密钥对第一目标信息进行加密,获得第一消息认证码,第一目标信息包括根密钥标识、第一参数值和第一加密信息。

可选地,处理器800还用于:

根据共享密钥和第一参数值,采用第一方式生成第一保护密钥,第一保护密钥包括第一加密密钥和第一完保密钥;

或者,根据共享密钥和第一参数值,采用第二方式生成第一保护密钥,第一保护密钥不同于所第一加密密钥和第一完保密钥;

其中,量子密钥请求消息还包括:第一指示,第一指示用于指示生成第一保护密钥采用的目标方式,目标方式为第一方式或第二方式;第一目标信息还包括第一指示。

可选地,处理器800还用于:

在采用第一方式生成第一保护密钥的情况下,利用第一加密密钥对与量子密钥相关的密钥要求进行加密,获得第一加密信息;

利用第一完保密钥对第一目标信息进行加密,获得第一消息认证码。

可选地,处理器800还用于:

根据第二参数值和本地的防重放攻击参数的参数值,确定量子密钥回复消息是否为重放消息;

在确定量子密钥回复消息不是重放消息的情况下,根据第二参数值和共享密钥,生成第二保护密钥;

基于第二保护密钥对第二消息认证码进行验证,获得第一验证结果;

在第一验证结果表示量子密钥回复消息的消息数据完整的情况下,利用第二保护密钥对第二加密信息进行解密,获得量子密钥。

可选地,处理器800还用于:

在确定量子密钥回复消息是重放消息的情况下,丢弃量子密钥回复消息。

可选地,处理器800还用于:

若防重放攻击参数为计数器,则在第二参数值大于本地的防重放攻击参数的参数值的情况下,确定量子密钥回复消息不是重放消息;在第二参数值小于或者等于本地的防重放攻击参数的参数值的情况下,确定量子密钥回复消息是重放消息;或者,

若防重放攻击参数为时间戳,则在第二参数值与本地的防重放攻击参数的参数值的差值的绝对值小于第一预设阈值的情况下,确定量子密钥回复消息不是重放消息;在第二参数值与本地的防重放攻击参数的参数值的差值的绝对值大于或者等于第一预设阈值的情况下,确定量子密钥回复消息是重放消息。

可选地,处理器800还用于:

在防重放攻击参数为计数器的情况下,将本地的防重放攻击参数的参数值替换为第二参数值。

可选地,处理器800还用于:

根据第二参数值和共享密钥,利用第一方式生成第二保护密钥,第二保护密钥包括第二加密密钥和第二完保密钥;

或者,根据第二参数值和共享密钥,利用第二方式生成第二保护密钥,第二保护密钥不同于所第二加密密钥和第二完保密钥。

可选地,处理器800还用于:

在采用第一方式生成第二保护密钥的情况下,基于第二完保密钥对第二消息认证码进行验证,获得第一验证结果;

利用第二加密密钥对第二加密信息进行解密,获得量子密钥。

本发明实施例的终端,通过向服务器发送量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息,第一加密信息和第一消息认证码通过第一保护密钥获得,第一保护密钥基于第一参数值和共享密钥生成,根密钥标识用于指示服务器获得对应的共享密钥;接收服务器针对量子密钥请求消息发送的量子密钥回复消息,其中,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成,这样,通过上述处理,节省了TLS握手协商的流程,而且量子密钥的传递更加安全高效。

本发明实施例还提供一种终端,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的消息传输方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

为了更好的实现上述目的,如图9所示,本发明实施例还提供一种服务器,包括处理器900和收发器910,所述收发器910在处理器900的控制下接收和发送数据,所述处理器900用于执行如下过程:

通过收发器910接收终端发送的量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息;

根据量子密钥请求消息,获得与量子密钥相关的密钥要求;

按照与量子密钥相关的密钥要求,生成量子密钥;

通过收发器910向终端发送量子密钥回复消息,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成。

可选地,处理器900还用于:

根据第一参数值和本地的防重放攻击参数的参数值,确定量子密钥请求消息是否为重放消息;

在确定量子密钥请求消息不是重放消息,且本地存储有根密钥标识对应的共享密钥的情况下,根据第一参数值和共享密钥,生成第一保护密钥;

基于第一保护密钥对第一消息认证码进行验证,获得第二验证结果;

在第二验证结果表示量子密钥请求消息的消息数据完整的情况下,利用第一保护密钥对第一加密信息进行解密,获得与量子密钥相关的密钥要求。

可选地,处理器900还用于:

在确定量子密钥请求消息是重放消息的情况下,丢弃量子密钥请求消息。

可选地,处理器900还用于:

若防重放攻击参数为计数器,则在第一参数值大于本地的防重放攻击参数的参数值的情况下,确定量子密钥请求消息不是重放消息;在第一参数值小于或者等于本地的防重放攻击参数的参数值的情况下,确定量子密钥请求消息是重放消息;或者,

若防重放攻击参数为时间戳,则在第一参数值与本地的防重放攻击参数的参数值的差值的绝对值小于第二预设阈值的情况下,确定量子密钥回复消息不是重放消息;在第一参数值与本地的防重放攻击参数的参数值的差值的绝对值大于或者等于第二预设阈值的情况下,确定量子密钥请求消息是重放消息。

可选地,处理器900还用于:

在防重放攻击参数为计数器的情况下,将本地的防重放攻击参数的参数值替换为第一参数值。

可选地,量子密钥请求消息还包括:第一指示,第一指示用于指示生成第一保护密钥采用的目标方式;处理器900还用于:

若目标方式为第一方式,则根据第一参数值和共享密钥,采用第一方式生成第一保护密钥,第一保护密钥包括第一加密密钥和第一完保密钥;

若目标方式为第二方式,则根据第一参数值和共享密钥,采用第二方式生成第一保护密钥,第一保护密钥不同于所第一加密密钥和第一完保密钥。

可选地,处理器900还用于:

在采用第一方式生成第一保护密钥的情况下,利用第一完保密钥对第一消息认证码进行解密,获得第二验证结果;

利用第一加密密钥对第一加密信息进行解密,获得与量子密钥相关的密钥要求。

可选地,处理器900还用于:

获取防重放攻击参数的第二参数值;

在本地存储有根密钥标识对应的共享密钥的情况下,根据第二参数值和共享密钥,生成第二保护密钥;

根据第二保护密钥对量子密钥进行加密,获得第二加密信息;

根据第二保护密钥对第二目标信息进行加密,获得第二消息认证码,第二目标信息包括第二参数值和第二加密信息。

可选地,处理器900还用于:

根据第二参数值和共享密钥,采用第一方式生成第二保护密钥,第二保护密钥包括第二加密密钥和第二完保密钥;

或者,根据第二参数值和共享密钥,采用第二方式生成第二保护密钥,第二保护密钥不同于所第二加密密钥和第二完保密钥。

可选地,处理器900还用于:

在采用第一方式生成第二保护密钥的情况下,利用第二加密密钥对量子密钥进行加密,获得第二加密信息;

利用第二完保密钥对第二目标信息进行加密,获得第二消息认证码。

可选地,收发器910还用于:

在确定量子密钥请求消息不是重放消息,且本地未存储有根密钥标识对应的共享密钥的情况下,向锚定功能实体发送应用密钥请求消息,应用密钥请求消息包括根密钥标识和服务器的标识;

接收锚定功能实体针对应用密钥请求消息发送的应用密钥回复消息,应用密钥回复消息包括根密钥标识对应的共享密钥。

本发明实施例的服务器,通过接收终端发送的量子密钥请求消息,其中,量子密钥请求消息包括:根密钥标识、防重放攻击参数的第一参数值、第一加密信息和第一消息认证码,第一加密信息为与量子密钥相关的密钥要求的加密信息;然后根据量子密钥请求消息,获得与量子密钥相关的密钥要求;按照与量子密钥相关的密钥要求,生成量子密钥;最后,向终端发送量子密钥回复消息,量子密钥回复消息包括:防重放攻击参数的第二参数值、第二加密信息和第二消息认证码,第二加密信息为服务器按照密钥要求生成的量子密钥的加密信息,第二加密信息和第二消息认证码通过第二保护密钥获得,第二保护密钥基于第二参数值和共享密钥生成,这样,通过上述处理,节省了TLS握手协商的流程,而且量子密钥的传递更加安全高效。

本发明实施例还提供一种基站,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的消息传输方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的消息传输方法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可读存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储介质中,使得存储在该计算机可读存储介质中的指令产生包括指令装置的纸制品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他科编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

相关技术
  • 消息传输方法、装置、终端及存储介质
  • 用户终端和搜索服务器及操作方法、传输方法和传输装置
  • 一种消息修改方法、移动终端、服务器及存储介质
  • 用户终端及其寻呼消息传输方法、计算机可读存储介质
  • 一种数据传输方法、终端、服务器和存储介质
  • 消息传输的校验方法、装置、服务器、终端及存储介质
  • 消息传输的校验方法、装置、服务器、终端及存储介质
技术分类

06120116623462