一种量子密钥传输控制方法及系统
技术领域
本发明涉及量子安全通信领域,特别是提供了一种量子密钥传输控制方法、系统、量子密钥管理终端以及业务应用终端。
背景技术
随着网络技术的快速发展,大量敏感信息需要通过网络传输,人们需要对敏感信息进行保护以免丢失或遭到攻击。加密是保障信息安全的重要手段之一。对于经典通信,当前最常用的加密技术是用复杂的数学算法来改变原始信息,如AES、3DES、RSA、MD5、SHA-1等等。
现有经典加密体系是建立在计算复杂度基础之上的,随着数学的进步和计算机速度的不断提升,其存在被破译的可能,并非绝对可靠。经典密码体制中,只有一次一密具有无条件安全性,它要求有与被加密数据相同长度的随机数密钥。而如何产生大量的随机数密钥一直是个难题,所以一次一密并没有得到实际应用。量子密钥分配(QKD)技术的出现解决了这个难题。
量子密钥分配技术,基于“海森堡测不准原理”和“量子不可复制原理”,使用每比特单光子传输随机数,在发送端和接收端之间能够产生并共享大量的随机数密钥,即量子密钥。原理上,对QKD过程的任何窃听都必然会被发现。以常用的光量子通信方案为例,量子信息由单光子的量子状态承载;而单光子是光能量变化的最小单元,也可以说是组成光的最基本单元,已不可再分,窃听者不能通过分割光子来窃听信息;“量子不可复制原理”决定了未知单光子状态不能被精确复制,因此窃听者也不能通过截获并复制光子状态来窃听信息;“海森堡测不准原理”则决定了对未知单光子状态的测量必然会对其状态产生扰动,通信者就可以利用这一点发现窃听。因此,QKD过程所产生的密钥具有理论上的绝对安全性。
QKD技术使得一次一密得以真正实现。使用量子密钥对通信业务或数据采用一次一密的加密方式,能够保证加密通信具有无条件安全性。即使不采用一次一密,通过使用量子密钥代替经典加密体系中的种子密钥,以及提高密钥更新频率,也能够极大地增强加密通信的安全性。
通常,QKD系统生成的量子密钥通过本地连接注入到量子密钥管理终端中,业务应用终端需要具备向量子密钥管理终端请求并接收量子密钥的功能,以便使用量子密钥进行身份认证、会话密钥协商保护、数据报文的加解密和完整性保护等安全通信。因此,需要为业务应用终端同量子密钥管理终端设计接口通信协议,以保证业务应用终端申请和获取量子密钥的顺利进行,能够对量子密钥的传输过程进行有效控制,并能保证通信双方从量子密钥管理终端所获取的量子密钥的一致性。同时,该接口通信协议应具有较好的通用性,能够适用于不同的业务应用终端与量子密钥管理终端间的通信过程。
发明内容
针对上述现有技术存在的缺陷,本发明提出一种量子密钥传输控制方法和系统,用于业务应用终端与量子密钥管理终端间的通信过程,能够保证业务应用终端申请和获取量子密钥的高效性,保证通信双方所获取量子密钥的一致性。该方法具有较好的通用性,能够运用于不同的业务应用终端与量子密钥管理终端间的通信过程。
本发明一方面提供一种量子密钥传输控制方法,包括如下步骤:
步骤1,发送端业务应用终端和接收端业务应用终端协商获取量子密钥的各种参数,该参数包括:开始ID、目的ID、密钥使用方式、请求的密钥字节数;其中,开始ID和目的ID为量子密钥的获取标识,用于标识发送端业务应用终端对应的第一量子密钥管理终端和接收端业务应用终端对应的第二量子密钥管理终端间共享的量子密钥;
步骤2,发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送密钥请求并获取量子密钥;
步骤3,发送端和接收端业务应用终端使用量子密钥对用户业务或者数据进行加解密等,从而提供安全通信服务。
进一步地,所述参数还包括申请标识,用于标识业务应用终端并行处理的多个密钥申请进程。
优选地,发送端业务应用终端和接收端业务应用终端以挑战-应答的方式进行参数协商,发送端业务应用终端将开始ID、申请标识、密钥使用方式、请求的密钥字节数发送到接收端业务应用终端,接收端业务应用终端将开始ID、目的ID、申请标识、密钥使用方式、请求的密钥字节数回复给发送端业务应用终端,双方完成一次参数协商过程。
优选地,在步骤1之前,发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送认证请求,与向其提供服务的量子密钥管理终端进行握手认证。
进一步地,发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送认证请求帧,第一和第二量子密钥管理终端分别回复认证响应帧给发送端和接收端业务应用终端,如果认证成功,发送端和接收端业务应用终端分别与第一和第二量子密钥管理终端建立对应关系。
进一步地,在握手认证之前,还包括发送端和接收端业务应用终端、第一和第二量子密钥管理终端的初始化,该初始化包括:第一,对发送端和接收端业务应用终端的设备参数进行初始化配置,包括密钥请求量、设备ID、IP地址、安全通信策略;第二,对发送端和接收端业务应用终端分别与第一和第二量子密钥管理终端间的物理连接进行确认。
优选地,根据步骤1所确定的各参数,发送端业务应用终端向第一量子密钥管理终端发送申请密钥数据请求帧,第一量子密钥管理终端回复申请密钥数据响应帧给发送端业务应用终端,如果第一量子密钥管理终端中符合要求的量子密钥量不小于密钥请求量,则在申请密钥数据响应帧中标注密钥足够的标识,否则,在申请密钥数据响应帧中标注密钥不足的标识。
进一步地,发送端业务应用终端将密钥是否充足的信息发送给接收端业务应用终端,如果密钥充足,则双方协商确定一次读取的密钥字节数;如果密钥不足,则双方继续协商获取量子密钥的相关参数。
进一步地,在步骤2中,发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送密钥请求帧,该密钥请求帧中包括在步骤1中确定的参数配置,第一和第二量子密钥管理终端根据所述确定的参数配置回复密钥响应帧。
优选地,发送端和接收端业务应用终端将获取的量子密钥存入缓存区,并对获取的量子密钥进行一致性校验,双方保留通过一致性校验的量子密钥。
本发明第二方面提供一种量子密钥传输控制系统,包括发送端业务应用终端和接收端业务应用终端在内的至少两个业务应用终端,及对应的包括第一和第二量子密钥管理终端在内的至少两个量子密钥管理终端,其特征在于:
发送端业务应用终端,用于与接收端业务应用终端协商获取量子密钥的各种参数,并根据协商参数向第一量子密钥管理终端发送密钥请求并获取量子密钥,所述参数包括:开始ID、目的ID、密钥使用方式、请求的密钥字节数;其中,开始ID和目的ID为量子密钥的获取标识,用于标识发送端业务应用终端对应的第一量子密钥管理终端和接收端业务应用终端对应的第二量子密钥管理终端间共享的量子密钥;
接收端业务应用终端,用于与发送端业务应用终端进行上述参数协商,并根据协商参数向第二量子密钥管理终端发送密钥请求并获取量子密钥;
第一和第二量子密钥管理终端,用于分别响应对应的发送端业务应用终端和接收端业务应用终端的密钥请求,并向相应的业务应用终端提供量子密钥;
发送端和接收端业务应用终端使用量子密钥对用户业务或者数据进行加解密等,以提供安全通信服务。
进一步地,所述参数还包括申请标识,用于标识业务应用终端并行处理的多个密钥申请进程。
优选地,发送端业务应用终端和接收端业务应用终端以挑战-应答的方式进行参数协商,发送端业务应用终端将开始ID、申请标识、密钥使用方式、请求的密钥字节数发送到接收端业务应用终端,接收端业务应用终端将开始ID、目的ID、申请标识、密钥使用方式、请求的密钥字节数回复给发送端业务应用终端,双方完成一次参数协商过程。
优选地,在参数协商之前,发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送认证请求,与向其提供服务的量子密钥管理终端进行握手认证。
进一步地,发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送认证请求帧,第一和第二量子密钥管理终端分别回复认证响应帧给发送端和接收端业务应用终端,如果认证成功,发送端和接收端业务应用终端分别与第一和第二量子密钥管理终端建立对应关系。
进一步地,在握手认证之前,还包括发送端和接收端业务应用终端、第一和第二量子密钥管理终端的初始化,该初始化包括:第一,对发送端和接收端业务应用终端的设备参数进行初始化配置,包括密钥请求量、设备ID、IP地址、安全通信策略;第二,对发送端和接收端业务应用终端分别与第一和第二量子密钥管理终端间的物理连接进行确认。
优选地,根据协商所确定的各参数,发送端业务应用终端向第一量子密钥管理终端发送申请密钥数据请求帧,第一量子密钥管理终端回复申请密钥数据响应帧给发送端业务应用终端,如果第一量子密钥管理终端中符合要求的量子密钥量不小于密钥请求量,则在申请密钥数据响应帧中标注密钥足够的标识,否则,在申请密钥数据响应帧中标注密钥不足的标识。
进一步地,发送端业务应用终端将密钥是否充足的信息发送给接收端业务应用终端,如果密钥充足,则双方协商确定一次读取的密钥字节数;如果密钥不足,则双方继续协商获取量子密钥的相关参数。
进一步地,发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送密钥请求帧,该密钥请求帧中包括所述协商确定的各参数,第一和第二量子密钥管理终端根据所述协商确定的各参数回复密钥响应帧。
优选地,发送端和接收端业务应用终端将获取的量子密钥存入缓存区,并对获取的量子密钥进行一致性校验,双方保留通过一致性校验的量子密钥。
本发明第三方面提供一种量子密钥管理终端,用于在上述量子密钥传输控制系统中为包括发送端和接收端业务应用终端在内的多个业务应用终端之间的安全通信提供量子密钥,该量子密钥管理终端包括:
存储模块,用于对量子密钥分发(QKD)系统发送的量子密钥进行存储,根据对应的业务应用终端的密钥需求,将相应数量的量子密钥发送到第一量子密钥交互模块;
第一量子密钥交互模块,用于接收对应的业务应用终端发送的密钥请求,从存储模块中获取量子密钥,从而实现向业务应用终端的量子密钥输出。
优选地,该量子密钥管理终端还包括第一初始化模块,用于对量子密钥管理终端进行物理连接确认的初始化工作。
进一步地,该量子密钥管理终端还包括第一认证模块,用于接收对应的业务应用终端发送的认证请求帧,并发送认证响应帧,实现与业务应用终端之间的握手认证。
优选地,所述第一量子密钥交互模块接收对应的业务应用终端发送的申请密钥数据请求帧,并根据申请密钥数据请求帧中的信息,判断存储模块中是否有符合要求的密钥,并回复申请密钥数据响应帧给对应的业务应用终端,如果符合要求的量子密钥量不小于密钥请求量,则在申请密钥数据响应帧中标注密钥足够的标识,否则,在申请密钥数据响应帧中标注密钥不足的标识。
本发明第四方面提供一种业务应用终端,用于在上述量子密钥传输控制系统中与至少一个其他业务应用终端之间使用量子密钥来进行安全通信,该业务应用终端包括:
密钥协商模块,用于与至少一个其他业务应用终端之间进行获取量子密钥时的相关参数协商,该参数包括:开始ID、目的ID、密钥使用方式、请求的密钥字节数;其中,开始ID和目的ID为量子密钥的获取标识,用于标识该业务应用终端对应的量子密钥管理终端和所述其他业务应用终端对应的量子密钥管理终端间共享的量子密钥;
第二量子密钥交互模块,用于根据所述协商参数向对应的量子密钥管理终端请求并获取量子密钥;
量子密钥应用模块,使用量子密钥为与至少一个其他业务应用终端之间的用户业务或数据进行加解密等,以实现安全通信。
进一步地,所述参数还包括申请标识,用于标识业务应用终端并行处理的多个密钥申请进程。
优选地,该业务应用终端还包括第二初始化模块,用于对业务应用终端进行参数配置和物理连接确认的初始化工作。
进一步地,该业务应用终端还包括第二认证模块,用于根据初始化模块的配置,向对应的量子密钥管理终端发送认证请求帧,并接收量子密钥管理终端发送的认证响应帧,实现与对应的量子密钥管理终端间的握手认证。
优选地,该业务应用终端还包括缓存模块,用于缓存第二量子密钥交互模块所获取的量子密钥,并将量子密钥发送到密钥协商模块,根据密钥协商模块发送的完整性校验结果,保留通过完整性校验的量子密钥,删除未通过完整性校验的量子密钥;并向量子密钥应用模块提供通过完整性校验的量子密钥。
本发明涉及的量子密钥传输控制方法,能够保证业务应用终端快速高效地从量子密钥管理终端获取所需的量子密钥,从而用于对用户业务或数据进行加解密等;并且,由于使用量子密钥进行安全通信,极大地提升了密钥的更新频率,便于实现一次一密。
本发明在业务应用终端获取量子密钥前,先通过密钥申请获知量子密钥管理终端中的密钥是否充足,再决定如何获取量子密钥,保证了密钥获取的可靠性,提高了密钥获取的成功率;密钥传输过程与具体业务无关,通信帧格式具有较好的通用性和扩展性,可适用于数据流通信和消息通信,可适用于不同的业务应用终端与量子密钥管理终端间的通信过程,可适用于不同的应用场景。
本发明参数协商过程中,通过协商量子设备ID能够保证通信双方的业务应用终端之间获取量子密钥的一致性,实现了量子密钥的准确获取;同时,通过协商申请标识,为每个密钥申请进程分配唯一的申请标识,实现了多个密钥申请进程的高效并行处理;再有,通过协商请求的密钥字节数,能够保证双方间量子密钥的获取以及通信数据的高安全保密传输的持续性。
附图说明
图1是本发明实施例提供的量子密钥传输控制网络系统结构框图;
图2是本发明实施例提供的量子密钥传输控制方法的流程图;
图3是本发明实施例提供的业务应用终端初始化流程示意图;
图4是本发明实施例提供的业务应用终端与量子密钥管理终端进行物理连接确认过程的示意图;
图5是本发明实施例提供的认证请求帧帧结构的示意图;
图6是本发明实施例提供的认证响应帧帧结构的示意图;
图7是本发明实施例提供的申请密钥数据请求帧帧结构的示意图;
图8是本发明实施例提供的申请密钥数据响应帧帧结构的示意图;
图9是本发明实施例提供的密钥请求帧帧结构的示意图;
图10是本发明实施例提供的密钥响应帧帧结构的示意图;
图11是本发明实施例提供的量子密钥传输控制方法的流程图;
图12是本发明实施例提供的量子密钥传输控制系统结构框图;
图12a,12b是本发明实施例提供的量子密钥管理终端的示意图;
图13a,13b是本发明实施例提供的业务应用终端的示意图。
具体实施方式
为了使本发明的实施例的目的、技术方案和有点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示例性地给出了本发明所涉及的网络结构,即由多个(图中为三个)包含业务应用终端在内的用户网络所组成的网络系统,多个用户网络之间通过量子网络和经典网络相连。。每个用户网络包括一个业务应用终端、一个量子密钥管理终端和一个量子密钥分配(QKD)系统,QKD系统之间通过量子网络生成量子密钥。具体的,在图1中,有三个用户网络,用户网络1包括一个业务应用终端-1、一个量子密钥管理终端-1和一个QKD系统-1,用户网络2包括一个业务应用终端-2、一个量子密钥管理终端-2和一个QKD系统-2,用户网络3包括一个业务应用终端-3、一个量子密钥管理终端-3和一个QKD系统-3。QKD系统-1、QKD系统-2和QKD系统-3之间通过量子网络生成量子密钥。
目前,基于量子密钥分配技术已能搭建大规模的量子网络,比如通过量子集控站、光交换机和量子通信服务器可实现多个量子密钥收发终端(即QKD系统)间量子密钥的分配,在本发明中,可以通过上述量子网络生成量子密钥,也可以采用其他形式的量子网络生成量子密钥,对此,本发明不做任何限制。
QKD系统生成的量子密钥通过本地连接注入到量子密钥管理终端中,量子密钥管理终端对量子密钥进行有效管理,此时,所述量子密钥管理终端与所述QKD系统是彼此独立的,需要说明的是,所述量子密钥管理终端也可以集成在所述QKD系统中,对此,本发明不做任何限制。
业务应用终端向与其相连的量子密钥管理终端请求并接收量子密钥,该量子密钥可用于业务应用终端之间身份认证、会话密钥协商保护、数据报文的加解密和完整性保护等。不同用户网络中的业务应用终端之间通过经典网络相连。
下面实施例将主要以包括两个业务应用终端(即发送端和接收端业务应用终端),以及分别向发送端和接收端业务应用终端提供服务的两个量子密钥管理终端(即第一和第二量子密钥管理终端)的量子密钥传输控制系统为例进行说明,但是本领域技术人员应当明了,这不是对本发明的限制,该系统可以包括多个业务应用终端和多个量子密钥管理终端。
另外,QKD系统之间、QKD系统与量子密钥管理终端之间的通信过程,独立于量子密钥管理终端与业务应用终端之间的通信过程,且不是本专利的重点所在。
实施例一
参见图2,本发明实施例提供一种量子密钥传输控制方法,其中发送端和接收端业务应用终端之间能够使用量子密钥为用户业务或数据提供安全通信服务,发送端业务应用终端与第一量子密钥管理终端连接,接收端业务应用终端与第二量子密钥管理终端连接,该方法包括如下步骤:
步骤1,发送端业务应用终端和接收端业务应用终端协商获取量子密钥的各种参数,该参数包括:开始ID、目的ID、密钥使用方式、请求的密钥字节数;其中,开始ID和目的ID为量子密钥的获取标识,用于标识发送端业务应用终端对应的第一量子密钥管理终端和接收端业务应用终端对应的第二量子密钥管理终端间共享的量子密钥;
步骤2,发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送密钥请求并获取量子密钥;
步骤3,发送端和接收端业务应用终端使用量子密钥对用户业务或者数据进行加解密等,从而提供安全通信服务。
优选地,所述参数还包括申请标识,用于标识业务应用终端并行处理的多个密钥申请进程。
下面将具体描述本实施例的上述方法步骤:
步骤1,发送端业务应用终端和接收端业务应用终端协商获取量子密钥的各种参数,该参数包括:开始ID、目的ID、密钥使用方式、请求的密钥字节数;其中,开始ID和目的ID为量子密钥的获取标识,用于标识发送端业务应用终端对应的第一量子密钥管理终端和接收端业务应用终端对应的第二量子密钥管理终端间共享的量子密钥;优选地,所述参数还包括申请标识,用于标识业务应用终端并行处理的多个密钥申请进程。
发送端业务应用终端和接收端业务应用终端协商确定开始ID(与发送端业务应用终端建立了对应关系的量子密钥管理终端的设备ID,通常为初始配置的量子设备ID)、目的ID(与接收端业务应用终端建立了对应关系的量子密钥管理终端的设备ID,通常为初始配置的量子设备ID)、申请标识(或称申请序号,与一个密钥申请进程相对应,每个密钥申请进程都有唯一的申请标识)、密钥使用方式(加密或解密)、请求的密钥字节数(根据初始配置的密钥请求量、量子密钥管理终端响应的密钥信息等确定)。
两个业务应用终端间的参数协商类似一个挑战-应答式过程,例如,发送端业务应用终端将开始ID(通常为发送端业务应用终端初始配置的量子设备ID,如:00000005)、申请标识(例如:123)、密钥使用方式(如:加密)、请求的密钥字节数(例如:初始配置的密钥请求量为1K)发送到接收端业务应用终端;接收端业务应用终端将开始ID(00000005)、目的ID(通常为接收端业务应用终端初始配置的量子设备ID,如:00000006)、申请标识(123)、密钥使用方式(加密)、请求的密钥字节数(1K)回复给发送端业务应用终端,则双方完成一次参数协商过程。
需要说明的是,业务应用终端为每个密钥申请进程都设置一个申请标识,类似一个申请序号,每个密钥申请进程都有唯一的申请标识,当存在多个密钥申请进程时,多个密钥申请进程能够并行处理,高效地获取量子密钥;发送端业务应用终端和接收端业务应用终端使用同一个申请标识,应获取相同的密钥数据。
由于在量子密钥管理终端中,通常以量子设备ID来标识两个量子密钥管理终端间共享的量子密钥,因此业务应用终端间通过协商相应的量子设备ID(即开始ID和目的ID),能够保证向相应的量子密钥管理终端获取所需的量子密钥的一致性。
通常,业务应用或数据的安全传输对应于加密和解密两个过程,业务应用终端间通过协商密钥使用方式,能够保证所获取的量子密钥用于加密或解密。
受量子密钥生成速度影响,量子密钥管理终端中的量子密钥并不总能满足需求,业务应用终端所请求的密钥量应能够根据量子密钥管理终端响应的密钥信息做出相应调整;因此业务应用终端间通过协商请求的密钥字节数,能够保证双方间量子密钥的获取以及通信数据的高安全保密传输的持续性。
综上所述,通过发送端和接收端业务应用终端的协商,确定了双方欲获取的量子密钥的标识信息、申请的标识信息、密钥用于加密或解密以及请求的密钥数量。这样的协商保证了业务应用终端申请和获取量子密钥的顺利进行,能够对量子密钥的传输过程进行有效控制,并能保证通信双方从量子密钥管理终端所获取的量子密钥的一致性和持续性,同时还可以用于不同类型的业务应用终端与量子密钥管理终端间的通信,具有较好的通用性。
优选地,在发送端和接收端业务应用终端进行参数协商之前,发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送认证请求帧,与向其提供服务的量子密钥管理终端进行握手认证。第一量子密钥管理终端回复认证响应帧给发送端业务应用终端,如果认证成功,发送端业务应用终端与第一量子密钥管理终端建立对应关系。同样地,第二量子密钥管理终端回复认证响应帧给接收端业务应用终端,如果认证成功,接收端业务应用终端与第二量子密钥管理终端建立对应关系。
认证请求帧和认证响应帧的帧结构如图5、图6所示,认证请求/响应帧包括帧头、载荷长度、公有信息和私有信息,各部分功能描述如下:
(1)下一个载荷:1个字节,该部分与保留字节一起构成帧头,标识了本载荷后下一个载荷的类型,如果当前载荷是最后一个,则该字段将被置为0;
(2)保留:1个字节,值为0;
(3)载荷长度:2个字节,以字节为单位标明包含载荷头在内的整个载荷长度;
(4)消息类型:主要用于标识该消息是加密消息还是不加密消息;
(5)命令字:具体的命令字,标识消息的目的是什么,具有很好的扩展性;
(6)消息发送端设备信息:包含应用类型(如:01表示VPN型应用,02表示密钥管理型应用,03表示加密机型应用)、设备类型(如:01表示IPSec VPN网关,02表示量子密钥管理终端,03表示3层加密机)、厂家标识(如:01表示某VPN设备公司,02表示某量子设备公司,03表示某加密机设备公司)、设备ID(如:VPN网关的设备ID为00000001,量子设备ID为00000002,3层加密机的设备ID为00000003);
其中消息类型、命令字和消息发送端设备信息共同构成了公有信息;
(7)私有信息:在认证请求帧中,指身份认证信息;在认证响应帧中,用于标识认证是否成功。
需要说明的是,在量子密钥管理终端或具有量子密钥管理功能的QKD系统中,通常以量子设备ID来标识两个量子密钥管理终端或两个QKD系统间共享的量子密钥。例如,第一和第二量子密钥管理终端间共享的量子密钥,在第一量子密钥管理终端中是以第二量子密钥管理终端的设备ID来标识的,而在第二量子密钥管理终端中是以第一量子密钥管理终端的设备ID来标识的。由于设备ID是设备的唯一标识,因此通过设备ID能够使业务应用终端与量子设备在握手认证成功后建立对应关系,并保证发送端和接收端业务应用终端后续所获取的量子密钥的一致性。
优选地,在握手认证之前,还包括发送端和接收端业务应用终端、第一和第二量子密钥管理终端的初始化。业务应用终端和量子密钥管理终端的初始化主要包括两个步骤,即对业务应用终端的设备参数进行初始化配置、对业务应用终端与量子密钥管理终端间的物理连接进行确认,如图3所示。
A.确保发送端业务应用终端、第一量子密钥管理终端各自的物理连接正常,对发送端业务应用终端进行参数配置,包括密钥请求量、设备ID(包括业务应用终端的设备ID,以及向其提供服务的量子密钥管理终端的设备ID或称量子设备ID)、IP地址、安全通信策略(例如身份认证算法、加解密算法等)等参数;第二量子密钥管理终端与接收端业务应用终端也进行类似的初始化过程,这里不再赘述。
B.发送端业务应用终端与第一量子密钥管理终端进行物理连接确认,如图4所示。由发送端业务应用终端发送hello消息给第一量子密钥管理终端,若收到第一量子密钥管理终端回复的ACK消息,则双方物理连接正常,此时发送端业务应用终端与第一量子密钥管理终端已完成物理连接确认,但并未进行握手认证。接收端业务应用终端与第二量子密钥管理终端也完成类似的操作。
优选地,根据步骤1所确定的各参数,发送端业务应用终端向第一量子密钥管理终端发送申请密钥数据请求帧,第一量子密钥管理终端回复申请密钥数据响应帧给发送端业务应用终端;如果第一量子密钥管理终端中符合要求的量子密钥量不小于密钥请求量,则在申请密钥数据响应帧中标注密钥足够的标识,否则,在申请密钥数据响应帧中标注密钥不足的标识。
发送端业务应用终端向第一量子密钥管理终端发送申请密钥数据请求帧(如图7所示)。第一量子密钥管理终端根据申请密钥数据请求帧中的信息,判断是否有符合要求的密钥,并回复申请密钥数据响应帧给发送端业务应用终端,如图8所示。如果第一量子密钥管理终端中符合要求的量子密钥量不小于密钥请求量,即符合要求的量子密钥足够使用,则在回复给发送端业务应用终端的申请密钥数据响应帧中标注密钥足够的标识(flag=1);如果第一量子密钥管理终端中符合要求的量子密钥量小于密钥请求量,则在申请密钥数据响应帧中标注密钥不足的标识(flag=0)。
如图7和图8所示,申请密钥数据请求/响应帧的帧头、载荷长度、公有信息的各部分功能与认证请求/响应帧的相应部分的功能类似,私有信息中的各部分内容如下:
(1)开始ID、目的ID:通常情况下,分别指为发送端和接收端业务应用终端初始配置的量子设备ID;在量子密钥管理终端中或具有量子密钥管理功能的QKD系统中,通常以量子设备ID来标识两个量子密钥管理终端或两个QKD系统间共享的量子密钥;
(2)申请标识:或称申请序号,与一个密钥申请进程相对应,每个密钥申请进程都有唯一的申请标识;
(3)密钥使用方式:用于标识密钥是“加密密钥”还是“解密密钥”;
(4)请求的密钥字节数:根据初始配置的密钥请求量、量子密钥管理终端响应的密钥信息等确定;
(5)响应值:用于标识量子密钥管理终端中符合要求的量子密钥是否充足,若密钥充足,则设置为1;若密钥不足,则设置为0。
优选地,发送端业务应用终端将密钥是否充足的信息发送给接收端业务应用终端,如果密钥充足,则双方协商确定一次读取的密钥字节数(不大于请求的密钥字节数);如果密钥不足,则双方继续协商获取量子密钥的相关参数。
步骤2,发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送密钥请求并获取量子密钥。
该步骤中,发送端业务应用终端向第一量子密钥管理终端发送密钥请求帧(如图9所示);接收端业务应用终端也同时向第二量子密钥管理终端发送密钥请求帧。第一量子密钥管理终端根据开始ID、目的ID、一次读取的密钥字节数,将相应数量的共享量子密钥作为密钥数据,并回复发送端业务应用终端密钥响应帧(如图10所示);第二量子密钥管理终端也进行类似的过程,并回复接收端业务应用终端密钥响应帧。
如图9和图10所示,密钥请求/响应帧的私有信息包括开始ID、目的ID、申请标识、密钥使用方式、一次读取的密钥字节数、帧序号、密钥数据帧序号、密钥数据,其中:
帧序号:用作业务应用终端与量子密钥管理终端间的交互标识;
密钥数据帧序号:由于一帧长度限定在一个IP包的长度,对于大于1KB密钥数据的获取需要分成多个帧发送;
密钥数据:量子密钥管理终端实际输出的量子密钥。
发送端业务应用终端将获取的量子密钥存入缓存区,并计算所获取量子密钥的数据完整性校验值(如MD5、SM3等),将该校验值连同相应的申请标识、密钥数据帧序号通过经典网络发送到接收端业务应用终端;接收端业务应用终端将获取的量子密钥存入缓存区,并计算所获取量子密钥的数据完整性校验值(与发送端业务应用终端的计算方法相同),将该校验值与发送端业务应用终端发送的相应的校验值进行比较;若校验值一致,则将校验值一致的结果连同相应的申请标识、密钥数据帧序号通知发送端业务应用终端,双方保留所获取的相应的量子密钥;若校验值不一致,则将校验值不一致的结果连同相应的申请标识、密钥数据帧序号通知发送端业务应用终端,双方抛弃所获取的相应的量子密钥。
步骤3,发送端和接收端业务应用终端使用量子密钥对用户业务或者数据进行加解密等,以提供安全通信服务。
参见图11,为本实施例提供的包括优选方式在内的量子密钥传输控制方法的详细流程图。
本发明提供的量子密钥传输控制方法,业务应用终端与量子密钥管理终端间的通信主要包括握手认证、密钥申请和密钥获取三个过程,能够保证业务应用终端申请和获取量子密钥的高效性。其中,在业务应用终端获取量子密钥前,先通过密钥申请获知量子密钥管理终端中的密钥是否充足,再决定如何获取量子密钥,保证了密钥获取的可靠性,提高了密钥获取的成功率;在通信帧中采用开始ID、目的ID、申请标识等字段,并对所获取的量子密钥进行数据完整性校验,有效保障了通信双方所获取的密钥数据的一致性;密钥传输过程与具体业务无关,通信帧格式具有较好的通用性和扩展性,可适用于数据流通信和消息通信,可适用于不同的业务应用终端与量子密钥管理终端间的通信过程,可适用于不同的应用场景。
实施例二
参见图12,本发明实施例提供一种量子密钥传输控制系统,包括发送端业务应用终端和接收端业务应用终端,第一量子密钥管理终端和第二量子密钥管理终端,其特征在于:
发送端业务应用终端,用于与接收端业务应用终端协商获取量子密钥的各种参数,并根据协商参数向第一量子密钥管理终端发送密钥请求并获取量子密钥,所述参数包括:开始ID、目的ID、密钥使用方式、请求的密钥字节数;其中,开始ID和目的ID为量子密钥的获取标识,用于标识发送端业务应用终端对应的第一量子密钥管理终端和接收端业务应用终端对应的第二量子密钥管理终端间共享的量子密钥;
接收端业务应用终端,用于与发送端业务应用终端进行上述参数协商,并根据协商参数向第二量子密钥管理终端发送密钥请求并获取量子密钥;
第一和第二量子密钥管理终端,用于分别响应对应的发送端业务应用终端和接收端业务应用终端的密钥请求,并向相应的业务应用终端提供量子密钥;
发送端和接收端业务应用终端使用量子密钥对用户业务或者数据进行加解密等,以提供安全通信服务。
优选地,所述参数还包括申请标识,用于标识业务应用终端并行处理的多个密钥申请进程。
本发明一个实施例的量子密钥传输控制系统结构框图如图12所示,其中:
发送端和接收端业务应用终端表示经典网络中能够使用量子密钥为用户业务或数据提供安全通信服务的两个实体;
用户1和用户2分别通过发送端业务应用终端和接收端业务应用终端实现安全通信,经典网络中发送端业务应用终端和接收端业务应用终端在公网的对外IP分别为IP1、IP2;本领域技术人员知道,该量子密钥传输控制系统可以包括多个用户、多个业务应用终端和多个量子密钥管理终端,如图1所示;
QKD-1与QKD-2为量子密钥分发(QKD)系统,分别与第一量子密钥管理终端、第二量子密钥管理终端连接,两个QKD系统之间通过量子网络进行量子密钥分发,并将所生成的量子密钥发送到相应的量子密钥管理终端;
量子密钥管理终端将QKD系统发送的量子密钥进行存储管理,,并以量子设备ID作为标识,以便业务应用终端能够根据量子设备ID获取相应的量子密钥;优选地,为保证安全性,量子密钥通常是以加密的形式进行存储的,对外输出前需要先解密。
具体来说,发送端业务应用终端和接收端业务应用终端协商确定开始ID(与发送端业务应用终端建立了对应关系的量子密钥管理终端的设备ID,通常为初始配置的量子设备ID)、目的ID(与接收端业务应用终端建立了对应关系的量子密钥管理终端的设备ID,通常为初始配置的量子设备ID)、申请标识(或称申请序号,与一个密钥申请进程相对应,每个密钥申请进程都有唯一的申请标识)、密钥使用方式(加密或解密)、请求的密钥字节数(根据初始配置的密钥请求量、量子密钥管理终端响应的密钥信息等确定)。
业务应用终端为每个密钥申请进程都设置一个申请标识,类似一个申请序号,每个密钥申请进程都有唯一的申请标识;发送端业务应用终端和接收端业务应用终端使用同一个申请标识,应获取相同的密钥数据。两个业务应用终端间的参数协商类似一个挑战-应答式过程,例如,发送端业务应用终端将开始ID(通常为发送端业务应用终端初始配置的量子设备ID,如:00000005)、申请标识(例如:123)、密钥使用方式(如:加密)、请求的密钥字节数(例如:初始配置的密钥请求量为1K)发送到接收端业务应用终端;接收端业务应用终端将开始ID(00000005)、目的ID(通常为接收端业务应用终端初始配置的量子设备ID,如:00000006)、申请标识(123)、密钥使用方式(加密)、请求的密钥字节数(1K)回复给发送端业务应用终端,则双方完成一次参数协商过程。
通过发送端和接收端业务应用终端的协商,确定了双方欲获取的量子密钥的标识信息、申请的标识信息、密钥用于加密或解密以及请求的密钥数量。这样的协商保证了业务应用终端申请和获取量子密钥的顺利进行,能够对量子密钥的传输过程进行有效控制,并能保证通信双方从量子密钥管理终端所获取的量子密钥的一致性和持续性,同时还可以用于不同类型的业务应用终端与量子密钥管理终端间的通信,具有较好的通用性。
优选地,在发送端和接收端业务应用终端进行参数协商之前,发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送认证请求帧,与向其提供服务的量子密钥管理终端进行握手认证。
第一量子密钥管理终端回复认证响应帧给发送端业务应用终端,如果认证成功,发送端业务应用终端与第一量子密钥管理终端建立对应关系。同样地,第二量子密钥管理终端回复认证响应帧给接收端业务应用终端,如果认证成功,接收端业务应用终端与第二量子密钥管理终端建立对应关系。
认证请求帧和认证响应帧的帧结构如图5、图6所示,参见实施例一中的描述。
优选地,在握手认证之前,发送端和接收端业务应用终端、第一和第二量子密钥管理终端进行初始化。业务应用终端和量子密钥管理终端的初始化主要包括两个步骤,即对业务应用终端的设备参数进行初始化配置、对业务应用终端与量子密钥管理终端间的物理连接进行确认,如图3所示。
A.确保发送端业务应用终端、第一量子密钥管理终端各自的物理连接正常,对发送端业务应用终端进行参数配置,包括密钥请求量、设备ID(包括业务应用终端的设备ID,以及向其提供服务的量子密钥管理终端的设备ID或称量子设备ID)、IP地址、安全通信策略(例如身份认证算法、加解密算法等)等参数;第二量子密钥管理终端与接收端业务应用终端也进行类似的初始化过程,这里不再赘述。
B.发送端业务应用终端与第一量子密钥管理终端进行物理连接确认,如图4所示。由发送端业务应用终端发送hello消息给第一量子密钥管理终端,若收到第一量子密钥管理终端回复的ACK消息,则双方物理连接正常,此时发送端业务应用终端与第一量子密钥管理终端已完成物理连接确认,但并未进行握手认证。接收端业务应用终端与第二量子密钥管理终端也完成类似的操作。
优选地,根据协商所确定的各参数,发送端业务应用终端向第一量子密钥管理终端发送申请密钥数据请求帧,第一量子密钥管理终端回复申请密钥数据响应帧给发送端业务应用终端;如果第一量子密钥管理终端中符合要求的量子密钥量不小于密钥请求量,则在申请密钥数据响应帧中标注密钥足够的标识,否则,在申请密钥数据响应帧中标注密钥不足的标识。
发送端业务应用终端向第一量子密钥管理终端发送申请密钥数据请求帧(如图7所示)。第一量子密钥管理终端根据申请密钥数据请求帧中的信息,判断是否有符合要求的密钥,并回复申请密钥数据响应帧给发送端业务应用终端,如图8所示。如果第一量子密钥管理终端中符合要求的量子密钥量不小于密钥请求量,即符合要求的量子密钥足够使用,则在回复给发送端业务应用终端的申请密钥数据响应帧中标注密钥足够的标识(flag=1);如果第一量子密钥管理终端中符合要求的量子密钥量小于密钥请求量,则在申请密钥数据响应帧中标注密钥不足的标识(flag=0)。
申请密钥数据请求帧和申请密钥数据响应帧的帧结构如图7、图8所示,参见实施例一中的描述。
优选地,发送端业务应用终端将密钥是否充足的信息发送给接收端业务应用终端,如果密钥充足,则双方协商确定一次读取的密钥字节数(不大于请求的密钥字节数);如果密钥不足,则双方继续协商获取量子密钥的相关参数。
发送端和接收端业务应用终端分别向第一和第二量子密钥管理终端发送密钥请求并获取量子密钥。优选地,发送端业务应用终端向第一量子密钥管理终端发送密钥请求帧(如图9所示);接收端业务应用终端也同时向第二量子密钥管理终端发送密钥请求帧。第一量子密钥管理终端根据开始ID、目的ID、一次读取的密钥字节数,将相应数量的共享量子密钥作为密钥数据,并回复发送端业务应用终端密钥响应帧(如图10所示);第二量子密钥管理终端也进行类似的过程,并回复接收端业务应用终端密钥响应帧。
密钥请求帧和密钥响应帧的帧结构如图9、图10所示,参见实施例一中的描述。
更进一步,发送端业务应用终端将获取的量子密钥存入缓存区,并计算所获取量子密钥的数据完整性校验值(如MD5、SM3等),将该校验值连同相应的申请标识、密钥数据帧序号通过经典网络发送到接收端业务应用终端;接收端业务应用终端将获取的量子密钥存入缓存区,并计算所获取量子密钥的数据完整性校验值(与发送端业务应用终端的计算方法相同),将该校验值与发送端业务应用终端发送的相应的校验值进行比较;若校验值一致,则将校验值一致的结果连同相应的申请标识、密钥数据帧序号通知发送端业务应用终端,双方保留所获取的相应的量子密钥;若校验值不一致,则将校验值不一致的结果连同相应的申请标识、密钥数据帧序号通知发送端业务应用终端,双方抛弃所获取的相应的量子密钥。
实施例三
参见图12a,本发明实施例提供一种量子密钥管理终端,用于实施例二所描述的量子密钥传输控制系统中,为多个业务应用终端之间的安全通信提供量子密钥,该量子密钥管理终端包括:
存储模块,用于对量子密钥分发(QKD)系统发送的量子密钥进行存储,根据对应的业务应用终端的密钥需求,将相应数量的量子密钥发送到第一量子密钥交互模块;
第一量子密钥交互模块,用于接收对应的业务应用终端发送的密钥请求,从存储模块中获取量子密钥,从而实现向业务应用终端的量子密钥输出。
在量子密钥传输控制系统中,包括发送端的和接收端的两个业务应用终端,以及分别与发送端和接收端相对应的两个量子密钥管理终端。所述业务应用终端既可以作为发送端的业务应用终端,也可以作为接收端的业务应用终端。
优选地,量子密钥管理终端如图12b所示,还包括如下功能模块:
第一初始化模块,用于对量子密钥管理终端进行物理连接确认等初始化工作。
第一初始化模块确保量子密钥管理终端的物理连接正常,并对量子密钥管理终端与相应的业务应用终端之间的物理连接进行确认,如图4所示。由相应的业务应用终端发送hello消息给量子密钥管理终端的第一初始化模块,若相应的业务应用终端收到量子密钥管理终端的第一初始化模块回复的ACK消息,则双方物理连接正常,此时量子密钥管理终端与相应的业务应用终端已完成物理连接确认,但并未进行握手认证。
进一步,量子密钥管理终端还包括:
第一认证模块,用于接收对应的业务应用终端发送的认证请求帧,并发送认证响应帧,实现与业务应用终端之间的握手认证。
另外,量子密钥管理终端还包括第一控制模块,用于量子密钥管理终端的内部功能控制。
优选地,量子密钥管理终端的第一认证模块接收来自相应的业务应用终端发送的认证请求帧,以进行握手认证,建立量子密钥管理终端与相应的业务应用终端之间的对应关系。量子密钥管理终端的第一认证模块回复认证响应帧给相应的业务应用终端,如果认证成功,量子密钥管理终端与相应的业务应用终端建立对应关系。认证请求帧和认证响应帧的帧结构如图5、图6所示,参见实施例一中的描述。
而且,可将QKD系统的功能集成到量子密钥管理终端中,在一个终端中实现量子密钥分发和量子密钥管理相关功能,在此不再赘述。
进一步,第一量子密钥交互模块接收对应的业务应用终端发送的申请密钥数据请求帧(如图7所示),并根据申请密钥数据请求帧中的信息,判断存储模块中是否有符合要求的密钥,并回复申请密钥数据响应帧给对应的业务应用终端,如图8所示。如果量子密钥管理终端中符合要求的量子密钥量不小于密钥请求量,即符合要求的量子密钥足够使用,则在回复给对应的业务应用终端的申请密钥数据响应帧中标注密钥足够的标识(flag=1);如果量子密钥管理终端中符合要求的量子密钥量小于密钥请求量,则在申请密钥数据响应帧中标注密钥不足的标识(flag=0)。
再进一步,第一量子密钥交互模块接收对应的业务应用终端发送的密钥请求帧(如图9所示),然后根据密钥请求帧中的参数,如开始ID、目的ID、一次读取的密钥字节数,从存储模块中获取相应数量的共享量子密钥,将所获取的量子密钥作为密钥数据,并回复相应的业务应用终端密钥响应帧(如图10所示)。
其中,如果量子密钥管理终端为发送端业务应用终端提供量子密钥,则第一量子密钥交互模块与发送端业务应用终端进行交互通信;如果量子密钥管理终端为接收端业务应用终端提供量子密钥,则第一量子密钥交互模块与接收端业务应用终端进行交互通信。
实施例四
参见图13a,本发明实施例提供一种业务应用终端,用于实施例二所描述的量子密钥传输控制系统中,与至少一个其他业务应用终端之间使用量子密钥来进行安全通信,该业务应用终端包括:
密钥协商模块,用于与至少一个其他业务应用终端之间进行获取量子密钥时的相关参数协商,该参数包括:开始ID、目的ID、密钥使用方式、请求的密钥字节数;其中,开始ID和目的ID为量子密钥的获取标识,用于标识该业务应用终端对应的量子密钥管理终端和所述其他业务应用终端对应的量子密钥管理终端间共享的量子密钥;
第二量子密钥交互模块,用于根据所述协商参数向对应的量子密钥管理终端请求并获取量子密钥;
量子密钥应用模块,使用量子密钥为与至少一个其他业务应用终端之间的用户业务或数据进行加解密等,以实现安全通信。优选地,所述参数还包括申请标识,用于标识业务应用终端并行处理的多个密钥申请进程。
优选地,业务应用终端如图13b所示,还包括第二初始化模块,用于对业务应用终端进行参数配置和物理连接确认等初始化工作。
具体来说,业务应用终端的初始化主要包括两个步骤,即对业务应用终端的设备参数进行初始化配置、对业务应用终端与相应的量子密钥管理终端间的物理连接进行确认,如图3所示。
A.第二初始化模块确保业务应用终端的物理连接正常,并对业务应用终端进行参数配置,包括密钥请求量、设备ID(包括业务应用终端的设备ID,以及向其提供服务的量子密钥管理终端的设备ID或称量子设备ID)、IP地址、安全通信策略(例如身份认证算法、加解密算法等)等参数。
B.第二初始化模块完成业务应用终端与相应的量子密钥管理终端之间的物理连接确认,如图4所示。由业务应用终端的第二初始化模块发送hello消息给相应的量子密钥管理终端,若收到相应的量子密钥管理终端回复的ACK消息,则双方物理连接正常,此时业务应用终端与相应的量子密钥管理终端已完成物理连接确认,但并未进行握手认证。
优选地,本发明的业务应用终端还包括第二认证模块,用于根据初始化模块的配置,向对应的量子密钥管理终端发送认证请求帧,并接收量子密钥管理终端发送的认证响应帧,实现与对应的量子密钥管理终端间的握手认证。
优选地,在业务应用终端进行参数协商之前,业务应用终端的第二认证模块向相应的量子密钥管理终端发送认证请求帧,以进行握手认证并建立对应关系。
量子密钥管理终端回复认证响应帧给业务应用终端的第二认证模块,如果认证成功,业务应用终端与相应的量子密钥管理终端建立对应关系。认证请求帧和认证响应帧的帧结构如图5、图6所示,参见实施例一中的描述。
优选地,本发明的业务应用终端还包括缓存模块,用于缓存第二量子密钥交互模块所获取的量子密钥,并将量子密钥发送到密钥协商模块,根据密钥协商模块发送的完整性校验结果,保留通过完整性校验的量子密钥,删除未通过完整性校验的量子密钥;以及向量子密钥应用模块提供通过完整性校验的量子密钥。
所述密钥协商模块接收缓存模块发送的量子密钥,进行密钥数据的完整性校验,并将完整性校验的结果发送到缓存模块。
所述第二量子密钥交互模块根据所述协商参数向对应的量子密钥管理终端发送申请密钥数据请求帧、密钥请求帧,接收量子密钥管理终端发送的申请密钥数据响应帧、密钥响应帧。上述帧结构参见图7-10,具体描述参见实施例一的相关描述。
所述量子密钥应用模块使用缓存模块提供的量子密钥,进行发送端和接收端业务应用终端之间身份认证、会话密钥协商保护、数据报文的加解密和完整性保护等。
另外,本发明的业务应用终端还包括第二控制模块,用于业务应用终端的内部功能控制。
具体来说,业务应用终端的密钥协商模块完成和与之通信的至少一个其他业务应用终端的参数协商,协商确定开始ID(与发送端业务应用终端建立了对应关系的量子密钥管理终端的设备ID,通常为初始配置的量子设备ID)、目的ID(与接收端业务应用终端建立了对应关系的量子密钥管理终端的设备ID,通常为初始配置的量子设备ID)、申请标识(或称申请序号,与一个密钥申请进程相对应,每个密钥申请进程都有唯一的申请标识)、密钥使用方式(加密或解密)、请求的密钥字节数(根据初始配置的密钥请求量、量子密钥管理终端响应的密钥信息等确定)。
密钥协商模块为每个密钥申请进程都设置一个申请标识,类似一个申请序号,每个密钥申请进程都有唯一的申请标识;通信双方的业务应用终端使用同一个申请标识,应获取相同的密钥数据。两个业务应用终端间的参数协商类似一个挑战-应答式过程,例如,作为发送端业务应用终端的密钥协商模块将开始ID(通常为发送端业务应用终端初始配置的量子设备ID,如:00000005)、申请标识(例如:123)、密钥使用方式(如:加密)、请求的密钥字节数(例如:初始配置的密钥请求量为1K)发送到接收端业务应用终端的密钥协商模块,接收端业务应用终端的密钥协商模块将开始ID(00000005)、目的ID(通常为接收端业务应用终端初始配置的量子设备ID,如:00000006)、申请标识(123)、密钥使用方式(加密)、请求的密钥字节数(1K)回复给发送端业务应用终端的密钥协商模块,则双方完成一次参数协商过程。
也就是说,通过密钥协商模块的协商,确定了通信双方的业务应用终端欲获取的量子密钥的标识信息、申请的标识信息、密钥用于加密或解密以及请求的密钥数量。这样的协商保证了业务应用终端申请和获取量子密钥的顺利进行,能够对量子密钥的传输过程进行有效控制,并能保证通信双方从量子密钥管理终端所获取的量子密钥的一致性和持续性,同时还可以用于不同类型的业务应用终端与量子密钥管理终端间的通信,具有较好的通用性。
进一步,第二量子密钥交互模块向对应的量子密钥管理终端发送申请密钥数据请求帧(如图7所示),并且接收对应的量子密钥管理终端根据申请密钥数据请求帧中的信息判断是否有符合要求的密钥所回复的申请密钥数据响应帧,如图8所示。如果对应的量子密钥管理终端中符合要求的量子密钥量不小于密钥请求量,即符合要求的量子密钥足够使用,则申请密钥数据响应帧中标注的是密钥足够的标识(flag=1);如果对应的量子密钥管理终端中符合要求的量子密钥量小于密钥请求量,则申请密钥数据响应帧中标注的是密钥不足的标识(flag=0)。
再进一步,第二量子密钥交互模块向对应的量子密钥管理终端发送密钥请求帧(如图9所示);并且,接收对应的量子密钥管理终端根据开始ID、目的ID、一次读取的密钥字节数,将相应数量的共享量子密钥作为密钥数据回复的密钥响应帧(如图10所示)。
其中,所述的两个量子密钥管理终端,第一量子密钥管理终端用于为发送端业务应用终端提供量子密钥,第二量子密钥管理终端为接收端业务应用终端提供量子密钥。如果该业务应用终端作为发送端,则第二量子密钥交互模块与第一量子密钥管理终端进行交互通信;如果该业务应用终端作为接收端,则第二量子密钥交互模块与第二量子密钥管理终端进行交互通信。
优选地,该业务应用终端的密钥协商模块计算所获取量子密钥的数据完整性校验值(如MD5、SM3等),将该校验值连同相应的申请标识、密钥数据帧序号通过经典网络发送到与之进行安全通信的业务应用终端;与之进行安全通信的业务应用终端的密钥协商模块计算所获取量子密钥的数据完整性校验值(与该业务应用终端的计算方法相同),将该校验值与该业务应用终端发送的相应的校验值进行比较;若校验值一致,则将校验值一致的结果连同相应的申请标识、密钥数据帧序号通知该业务应用终端,双方保留所获取的相应的量子密钥;若校验值不一致,则将校验值不一致的结果连同相应的申请标识、密钥数据帧序号通知该业务应用终端,双方抛弃所获取的相应的量子密钥。
以上对本发明实施例所提供的量子密钥传输控制方法、业务应用终端、量子密钥管理终端以及量子密钥传输控制系统进行了详细介绍,但是以上实施例的说明只是用于帮助理解本发明的方法及其核心思想,不应理解为对本发明的限制。本技术领域的技术人员在本发明揭露的技术范围内,轻易想到的变化或者替换,都应涵盖在本发明的保护范围之内。