CN119341732A - 量子设备的发现方法、装置及系统 - Google Patents
量子设备的发现方法、装置及系统 Download PDFInfo
- Publication number
- CN119341732A CN119341732A CN202310910843.4A CN202310910843A CN119341732A CN 119341732 A CN119341732 A CN 119341732A CN 202310910843 A CN202310910843 A CN 202310910843A CN 119341732 A CN119341732 A CN 119341732A
- Authority
- CN
- China
- Prior art keywords
- quantum
- application device
- application
- address
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种量子设备的发现方法、装置及系统,属于网络技术领域。应用设备获取量子设备的IP地址和端口号,该端口号用于量子设备向应用设备提供量子密钥。应用设备向其它应用设备发送量子设备发现消息,该量子设备发现消息包括量子设备的IP地址和端口号。本申请通过应用设备对量子设备的IP地址和端口号进行自动扩散,能够提高通信网络中的应用设备获取量子密钥的整体效率和便捷性,有助于实现量子密钥在经典网络中的广泛应用。
Description
技术领域
本申请涉及网络技术领域,特别涉及一种量子设备的发现方法、装置及系统。
背景技术
随着量子计算的发展,量子攻击对当前广泛使用的密码体制造成了巨大的威胁。量子攻击是运行在量子计算机上的攻击算法,能够破解例如高级加密标准(advancedencryption standard,AES)算法和SM4分组密码算法等当前广泛使用的对称加密算法。量子计算机预计在未来数十年时间内可实现。如果窃听者将使用当前加密算法加密后通过网络传输的数据截获并保存下来,等到量子计算机实现后再通过量子攻击破解所保存的数据使用的加密算法,就可以得到解密后的明文数据。这对于需要长期保存的机密信息来说是一种巨大的威胁。因此设计能够抵抗量子攻击的密码技术成了刻不容缓的事情。
量子密钥分发(quantum key distribution,QKD)是一种安全的密钥分发技术,能够在两个相距遥远的通信端之间实现量子密钥(quantum key,QK)的安全传输。量子密钥分发的安全性由量子力学的基本原理保证。在量子网络中,量子密钥的传输理论上是无条件安全的。量子密钥由量子设备生成和分发。如果经典网络中的应用设备要使用量子密钥,则需要向量子设备请求获取量子密钥。如何使应用设备方便快捷地获取量子密钥,是实现量子密钥在经典网络中广泛应用的前提和基础。
发明内容
本申请提供了一种量子设备的发现方法、装置及系统,可以提高应用设备获取量子密钥的效率和便捷性。
第一方面,提供了一种量子设备的发现方法。第一应用设备获取量子设备的互联网协议(Internet Protocol,IP)地址和端口号,该端口号用于量子设备向应用设备提供量子密钥。第一应用设备向第二应用设备发送第一量子设备发现消息,第一量子设备发现消息包括量子设备的IP地址和端口号。本申请中将量子设备的IP地址和端口号统称为量子设备信息。
本申请通过应用设备对量子设备信息进行自动扩散,无需在每台应用设备上分别手动配置量子设备信息,因此能够提高通信网络中的应用设备获取量子密钥的整体效率和便捷性,有助于实现量子密钥在经典网络中的广泛应用。
可选地,第一量子设备发现消息为边界网关协议(Border Gateway Protocol,BGP)更新消息,量子设备的IP地址和端口号在BGP更新消息的路径属性字段中。
本申请通过扩展BGP更新消息来携带量子设备的IP地址和端口号,实现方式简单且适用范围广泛。
可选地,在第一应用设备向第二应用设备发送第一量子设备发现消息之前,第一应用设备向第二应用设备发送能力协商请求报文,该能力协商请求报文用于确定第二应用设备是否具备从第一量子设备发现消息中解析量子设备信息的能力。第一应用设备接收第二应用设备发送的能力协商请求报文对应的能力协商响应报文,该能力协商响应报文指示第二应用设备具备从第一量子设备发现消息中解析量子设备信息的能力。其中,量子设备信息包括量子设备的IP地址和端口号。
本申请中应用设备之间先进行能力协商,在确定对方具备从量子设备发现消息中解析量子设备信息的能力之后,再向对方发送量子设备发现消息,能够提高量子设备信息的传播可靠性和有效性。
可选地,能力协商请求报文为BGP打开消息,BGP打开消息携带有目标地址族信息。目标地址族信息用于第二应用设备确定自身是否具备从第一量子设备发现消息中解析量子设备信息的能力。
本申请通过扩展BGP打开消息和BGP地址族进行能力协商,实现方式简单且适用范围广泛。
可选地,能力协商响应报文为BGP保活消息。
可选地,能力协商请求报文包括认证凭据,该认证凭据用于第二应用设备对第一应用设备进行安全认证。第二应用设备对第一应用设备进行安全认证,可理解为第二应用设备判断第二应用设备是否与第一应用设备位于同一安全域内。
本申请通过预先配置安全域,使得量子设备信息在安全域内扩散,能够提高量子设备信息的传输安全性和可靠性。
可选地,认证凭据为预配置的共享密钥。或者,认证凭据包括第一应用设备生成的随机数以及第一应用设备采用第一应用设备的私钥对随机数的签名。
可选地,第一应用设备获取量子设备的IP地址和端口号的一种实现方式,包括:第一应用设备接收量子设备发送的通告消息,该通告消息包括量子设备的地址信息,该地址信息用于应用设备向量子设备请求量子密钥。第一应用设备根据该地址信息获取量子设备的IP地址和端口号。本申请中,量子设备的地址信息至少包括量子设备的端口号。可选地,量子设备的地址信息还包括量子设备的IP地址。也就是说,量子设备的地址信息等价于量子设备信息,或者,量子设备的地址信息只包括量子设备的端口号。
本申请通过量子设备主动向应用设备通告自己的地址信息,使得应用设备能够自动发现具备量子密钥分发能力的量子设备。由于无需在应用设备上手动配置量子设备信息,因此能够提高应用设备获取量子密钥的效率和便捷性,有助于实现量子密钥在经典网络中的广泛应用。
可选地,第一应用设备获取量子设备的IP地址和端口号的另一种实现方式,包括:第一应用设备接收第三应用设备发送的第二量子设备发现消息,第二量子设备发现消息包括量子设备的IP地址和端口号。
本申请中,一个应用设备接收到另一个应用设备发送的量子设备信息之后,通过对量子设备信息进行进一步扩散,能够实现多应用设备对量子设备的自动发现。
第二方面,提供了一种量子设备的发现方法。第二应用设备接收第一应用设备发送的量子设备发现消息,该量子设备发现消息包括量子设备的IP地址和端口号,该端口号用于量子设备向应用设备提供量子密钥。第二应用设备解析该量子设备发现消息从而获得该量子设备发现消息中包括的IP地址和端口号。第二应用设备存储获得的IP地址和端口号。
本申请通过应用设备对量子设备信息进行自动扩散,无需在每台应用设备上分别手动配置量子设备信息,因此能够提高通信网络中的应用设备获取量子密钥的整体效率和便捷性,有助于实现量子密钥在经典网络中的广泛应用。
可选地,量子设备发现消息为BGP更新消息,量子设备的IP地址和端口号在BGP更新消息的路径属性字段中。
可选地,在第二应用设备接收第一应用设备发送的量子设备发现消息之前,第二应用设备接收第一应用设备发送的能力协商请求报文,该能力协商请求报文用于确定第二应用设备是否具备从量子设备发现消息中解析量子设备信息的能力。第二应用设备向第一应用设备发送能力协商请求报文对应的能力协商响应报文,该能力协商响应报文指示第二应用设备具备从量子设备发现消息中解析量子设备信息的能力。其中,量子设备信息包括量子设备的IP地址和端口号。
可选地,能力协商请求报文为BGP打开消息,BGP打开消息携带有目标地址族信息。第二应用设备根据目标地址族信息确定第二应用设备具备从量子设备发现消息中解析量子设备信息的能力。
可选地,能力协商响应报文为BGP保活消息。
可选地,能力协商请求报文包括认证凭据,第二应用设备根据认证凭据对第一应用设备进行安全认证。第二应用设备根据认证凭据对第一应用设备进行安全认证,可理解为第二应用设备根据认证凭据判断第二应用设备是否与第一应用设备位于同一安全域内。
本申请通过预先配置安全域,使得量子设备信息在安全域内扩散,能够提高量子设备信息的传输安全性和可靠性。这种实现方式能够使应用设备只接收并解析同一安全域内的应用设备提供的量子设备信息,从而提高应用设备获取的量子设备信息的来源可靠性。
可选地,认证凭据为预配置的共享密钥。第二应用设备根据认证凭据对第一应用设备进行安全认证的实现方式,包括:第二应用设备判断第二应用设备中是否配置有该共享密钥。如果第二应用设备中配置有该共享密钥,第二应用设备确定第一应用设备通过安全认证。这种实现方式下,位于同一安全域的多个应用设备配置有相同的共享密钥。
可选地,认证凭据包括第一应用设备生成的随机数以及第一应用设备采用第一应用设备的私钥对该随机数的签名。第二应用设备根据认证凭据对第一应用设备进行安全认证的实现方式,包括:第二应用设备采用第一应用设备的公钥对该签名进行验证。如果第二应用设备对该签名验证通过,第二应用设备确定第一应用设备通过安全认证。这种实现方式下,位于同一安全域内的多个应用设备能够获取该安全域内其它应用设备的证书或公钥。
第三方面,提供了一种应用设备。所述应用设备包括多个功能模块,所述多个功能模块相互作用,实现上述第一方面及其各实施方式中的方法。所述多个功能模块可以基于软件、硬件或软件和硬件的结合实现,且所述多个功能模块可以基于具体实现进行任意组合或分割。
第四方面,提供了一种应用设备。所述应用设备包括多个功能模块,所述多个功能模块相互作用,实现上述第二方面及其各实施方式中的方法。所述多个功能模块可以基于软件、硬件或软件和硬件的结合实现,且所述多个功能模块可以基于具体实现进行任意组合或分割。
第五方面,提供了一种应用设备,包括:存储器、网络接口和至少一个处理器。所述存储器用于存储程序指令,所述至少一个处理器读取所述存储器中保存的程序指令后,使得所述量子设备执行上述第一方面及其各实施方式中的方法。
第六方面,提供了一种应用设备,包括:存储器、网络接口和至少一个处理器。所述存储器用于存储程序指令,所述至少一个处理器读取所述存储器中保存的程序指令后,使得所述应用设备执行上述第二方面及其各实施方式中的方法。
第七方面,提供了一种量子设备的发现系统,包括:第一应用设备和第二应用设备。第一应用设备用于执行上述第一方面及其各实施方式中的方法,第二应用设备用于执行上述第二方面及其各实施方式中的方法。
举例来说,第一应用设备用于在获取量子设备的IP地址和端口号后,向第二应用设备发送量子设备发现消息,量子设备发现消息包括量子设备的IP地址和端口号,该端口号用于量子设备向应用设备提供量子密钥。第二应用设备用于接收量子设备发现消息,解析该量子设备发现消息从而获得该量子设备发现消息中包括的IP地址和端口号,并存储获得的IP地址和端口号。
可选地,第二应用设备用于根据量子设备的IP地址和端口号向量子设备发送密钥获取请求。量子设备用于向第二应用设备发送密钥获取请求对应的密钥获取响应,密钥获取响应包括量子设备分配给第二应用设备的量子密钥。
可选地,第一应用设备用于根据量子设备的IP地址和端口号向量子设备发送密钥获取请求。量子设备用于向第一应用设备发送密钥获取请求对应的密钥获取响应,密钥获取响应包括量子设备分配给第一应用设备的量子密钥。
可选地,所述系统还包括量子设备。量子设备用于向第一应用设备发送通告消息,通告消息包括量子设备的地址信息,该地址信息用于应用设备向量子设备请求量子密钥。第一应用设备用于根据该地址信息获取量子设备的IP地址和端口号。
可选地,第一应用设备与量子设备位于同一广播域内。或者,第一应用设备与量子设备之间建立有隧道。
第八方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令被应用设备的处理器执行时,实现上述第一方面及其各实施方式中的方法和/或上述第二方面及其各实施方式中的方法。
第九方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序被应用设备的处理器执行时,实现上述第一方面及其各实施方式中的方法和/或上述第二方面及其各实施方式中的方法。
第十方面,提供了一种芯片,芯片包括可编程逻辑电路和/或程序指令,当芯片运行时,实现上述第一方面及其各实施方式中的方法和/或上述第二方面及其各实施方式中的方法。
附图说明
图1是本申请实施例提供的一种应用场景示意图;
图2是本申请实施例提供的一种量子设备的发现方法的实现流程示意图;
图3是本申请实施例提供的一种实施场景示意图;
图4是本申请实施例提供的一种通告消息的结构示意图;
图5是本申请实施例提供的一种量子设备发现消息的结构示意图;
图6是本申请实施例提供的另一种量子设备发现消息的结构示意图;
图7是本申请实施例提供的一种能力协商请求报文的结构示意图;
图8是本申请实施例提供的另一种量子设备的发现方法的实现流程示意图;
图9是本申请实施例提供的又一种量子设备的发现方法的实现流程示意图;
图10是本申请实施例提供的再一种量子设备的发现方法的实现流程示意图;
图11是本申请实施例提供的一种通信系统的结构示意图;
图12是本申请实施例提供的一种应用设备的硬件结构示意图;
图13是本申请实施例提供的一种应用设备的结构示意图;
图14是本申请实施例提供的另一种应用设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
为了便于读者对本申请方案的理解,以下首先对一些名词进行解释。
1、经典计算机:是采用二进制(0或1)存储和处理数据的物理装置。本申请涉及的应用设备属于经典计算机。
2、量子计算机:是遵循量子力学规律,基于量子计算原理进行信息处理的物理装置。量子计算机采用量子比特存储和处理数据。量子比特相比于二进制有更多状态。量子计算机具备经典计算机的能力。量子计算机能够更高效地求解某些经典计算机难以求解的问题。本申请涉及的量子设备属于量子计算机。
3、经典网络:是由经典计算机构成的通信网络,例如是由网络设备和传输设备构成的数字传输网络,其传输的是经典数字信号(0/1)。网络设备包括但不限于路由器、交换机、防火墙、无线控制器、无线接入点、个人电脑或服务器。传输设备包括但不限于微波系统、同步数字体系(synchronous digital hierarchy,SDH)设备或波分复用(wavelengthdivision multiplexing,WDM)设备。本申请实施例中,将经典网络中的设备(包括但不限于网络设备)统称为应用设备。
4、量子网络:是新型的安全通信网络,其利用量子纠缠和量子隐形传态给网络带来真正意义上的安全,以及计算和科学领域质的飞跃。通信节点间通过量子网络通信,可理解为,通信节点间利用量子密钥分发技术实现通信节点间的量子密钥的共享,并基于量子密钥进行通信。量子计算机之间能够通过量子网络通信。
5、量子攻击:是运行在量子计算机上的攻击算法,例如包括Shor算法(秀尔算法)、Grover算法等能够高效地破解某些密码的算法。
6、量子密钥分发(QKD):是利用量子力学的海森堡不确定性原理和量子态不可克隆定理实现的一种安全的密钥分发技术。在量子密钥分发过程中,由一台量子设备生成量子密钥,并通过量子网络传输给另一台量子设备,这样两台量子设备之间就形成了共享的量子密钥。在量子密钥分发过程中,量子密钥是以量子态的形式传输的。量子密钥分发具有无条件安全性,即便给予窃听者无限的计算资源,其利用任何破译算法也不能破解出量子密钥。量子密钥分发的安全基础为密钥源无法预测和信道窃听可检测。密钥源无法预测指的是QKD密钥源是量子真随机数,因此无法被预测。信道窃听可检测指的是发送入信道的量子态满足量子不可克隆定理,信道中的窃听行为会扰动量子态,从而可被接收方检测到监听。
7、量子密钥(QK):是通信双方基于QKD协议产生的对称密钥。本申请中,量子密钥由量子设备生成和分发。
8、对称加密算法:指发送方与接收方采用相同的密钥进行加解密的算法。目前常用的对称加密算法包括AES算法、SM4分组密码算法和数据加密标准(data encryptionstandard,DES)算法等。
9、链路层发现协议(LLDP):是一个二层协议,它提供了一种标准的链路层发现方式。LLDP使得接入网络的一个设备可以将其主要的能力、管理地址、设备标识、接口标识等信息发送给接入同一个局域网的其它设备。LLDP仅支持信息通告,不对通信信息进行确认。当一个设备从网络中接收到其它设备通过LLDP帧通告的信息时,这个设备将这些信息以MIB的形式存储起来,之后对MIB信息如何使用由使用者确认。可选地,LLDP帧采用EthernetII格式封装,或者采用子网络访问协议(Sub-Network Access Protocol,SNAP)格式封装。
10、数字签名(简称签名):是一种针对发送方数据的保护手段。发送方使用私钥对消息进行签名。没有私钥的任何第三方无法伪造签名。拥有发送方所持有的私钥对应的公钥的任何第三方都可以对签名进行验签,以确认消息的来源和完整性。
11、签名验证(简称验签):接收方接收到数据后,采用公钥对签名进行验签,输出一个布尔值,表明签名合法(验签通过)或不合法(验签不通过)。如果验签通过,则说明数据没有被篡改。如果验签不通过,则说明数据被篡改。签名验证能够用于验证数据的完整性(未经篡改)和数据来源的可靠性(不是虚假数据或伪造数据)。
12、数字证书(简称证书):是设备、用户或应用在数字世界的身份证。证书包含申请者信息以及证书管理机构(certificate authority,CA)对申请者信息的签名。申请者信息包括申请者所持有的密钥对中的公钥。可选地,申请者信息还包括申请者的身份信息。例如申请者为一台设备,申请者的身份信息为能够唯一标识该设备的设备标识。可选地,一台设备的设备标识包括但不限于设备序列号、设备的媒体接入控制(Media Access Control,MAC)地址或设备的IP地址中的一种或多种。接收方接收到来自发送方的证书后,使用证书管理机构的“统一密钥对”中的公钥(也称为CA根证书)对证书验签,就能确认证书中的公钥是否来自发送方。
通信网络可以采用开放式系统互联(open system interconnection,OSI)参考模型或传输控制协议/互联网协议(Transmission Control Protocol/Internet Protocol,TCP/IP)参考模型。OSI参考模型为七层模型,将通信网络由低到高依次划分为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。TCP/IP参考模型为五层模型,将通信网络由低到高依次划分为物理层、数据链路层、网络层、传输层和应用层。其中,数据链路层又称为MAC层。目前,应用设备针对通信网络的各层分别支持安全数据传输,通常采用现有密码算法体系中的对称加密算法。比如,针对应用层的各类应用程序采用安全外壳(secureshell,SSH)协议等。针对传输层采用传输层安全(transport layer security,TLS)协议或数据包传输层安全(datagram transport layer security,DTLS)协议等。针对网络层采用互联网协议安全(Internet Protocol security,IPSec)协议等。针对数据链路层采用点对点协议(point to point protocol,PPP)或媒体接入控制安全(Media Access Controlsecurity,MACSec)协议等。针对物理层通过光模块实现数据加密等。
随着量子计算的发展,未来通过量子攻击能够破解传统密钥,导致采用传统密钥加密传输的数据的安全性无法得到保障,这对于需要长期保存的机密信息(如身份数据、金融数据和医疗数据等)来说是一种巨大的威胁。因此,应用于通信网络中数据加密传输的上述安全协议使用的对称加密算法需要支持抵抗量子攻击的密钥。将量子密钥应用于上述安全协议使用的对称加密算法能够有效解决这一问题。量子密钥由量子设备生成和分发,如果应用设备要使用量子密钥,则需要向量子设备请求获取量子密钥。
相关技术中,通过手动配置的方式在应用设备上配置量子设备的IP地址和端口号,应用设备根据配置信息与量子设备建立连接,然后从量子设备上获取量子密钥。这样,需要采用量子密钥进行数据加密传输的应用设备双方分别通过配置的量子设备来获取相同的量子密钥,并基于该量子密钥建立安全通道,如IPSec通道。应用设备双方分别从量子设备上获取量子密钥的过程可替换如IPSec等安全协议中的密钥协商过程,并将量子密钥注入会话作为会话密钥。
但是,由于相关技术中应用设备上量子终端的信息完全依赖手动配置,一方面,手动配置的复杂程度高且配置效率低,对于存在大量应用设备需要从量子设备上获取量子密钥的场景,会造成巨大的配置工作量,正确性和上线速度都无法得到保障,可靠性较低。另一方面,网络瞬息万变,设备上下线、网络故障或网络攻击等都可能会引发网络变更,手动配置方案无法及时响应网络变化。
基于此,本申请提出了自动发现量子设备的技术方案。在本申请提供的技术方案中,应用设备在获取到量子设备的IP地址和端口号之后,向其它应用设备发送获取到的量子设备的IP地址和端口号,使得其它应用设备也能够发现具备量子密钥分发能力的量子设备,进而其它应用设备能够根据获取到的量子设备的IP地址和端口号向对应的量子设备请求获取量子密钥。与相关技术相比,本申请通过应用设备对量子设备信息进行自动扩散,无需在每台应用设备上分别手动配置量子设备信息,因此能够提高通信网络中的应用设备获取量子密钥的整体效率和便捷性,有助于实现量子密钥在经典网络中的广泛应用。另外,本申请方案能够较好地响应网络变化,从而提高网络可靠性。比如,当通信网络中应用设备的数量增加时,通过应用本申请方案,由通信网络中的旧应用设备向新增的应用设备扩散量子设备信息,能够使新增的应用设备自动发现能够提供量子密钥的量子设备。
下面从应用场景、方法流程、系统、硬件装置、软件装置等多个角度,对本技术方案进行详细介绍。
下面对本申请实施例的应用场景举例说明。
例如,图1是本申请实施例提供的一种应用场景示意图。该应用场景主要涉及到两类设备,分别是应用设备和量子设备。其中,量子设备位于量子密钥分发网络。应用设备位于经典网络。参见图1,该应用场景包括位于经典网络中的多台应用设备101A-101C(统称为应用设备101)以及位于量子密钥分发网络中的量子设备102。图1中应用设备的数量仅用作示例性说明,不作为对本申请实施例的应用场景的限定。
可选地,应用设备101包括但不限于路由器、交换机、或防火墙等网络设备。或者,应用设备101为电脑、手机、或物联网(internet of things,IoT)终端等终端设备。又或者,应用设备101为服务器或云平台等具有通信需求的其它设备。量子设备102为能够生成或存储量子密钥的量子计算机。量子设备102用于为应用设备101提供量子服务,即量子设备102能够为应用设备101分配量子密钥。本申请实施例中的量子设备也可称为量子密钥分发设备。
可选地,量子设备102与应用设备101之间直接通信或间接通信。比如,量子设备102与应用设备101之间通过量子密钥服务器(图1中未示出)通信。可选地,量子设备102与应用设备101之间通过经典网络通信。例如,量子设备102与应用设备101之间基于传输控制协议/互联网协议(Transmission Control Protocol/Internet Protocol,TCP/IP)进行通信。
举例来说,在如图1所示的应用场景中,应用设备101A中存储有量子设备102的IP地址和端口号,应用设备101A能够根据量子设备102的IP地址和端口号向量子设备102请求获取量子密钥。可选地,应用设备101A中存储的量子设备102的IP地址和端口号是手动配置的,或者由量子设备102提供。例如参见图1,量子设备102向应用设备101A提供量子设备102的地址信息。应用设备101A根据量子设备102提供的地址信息获取量子设备102的IP地址和端口号并将其保存在本地。可选地,应用设备101A位于量子设备102的广播域内。或者,应用设备101A与量子设备102之间建立有隧道。
请继续参见图1,应用设备101A向应用设备101B发送量子设备102的IP地址和端口号,这样应用设备101B能够根据量子设备102的IP地址和端口号向量子设备102请求获取量子密钥。可选地,应用设备101B进一步向应用设备101C发送量子设备102的IP地址和端口号,这样应用设备101C能够根据量子设备102的IP地址和端口号向量子设备102请求获取量子密钥。可选地,应用设备101A与应用设备101B位于同一安全域内。应用设备101B与应用设备101C位于同一安全域内。可选地,应用设备101A与应用设备101C位于不同安全域内。安全域也称信任域,位于同一安全域的应用设备之间是相互信任的。本申请实施例中,位于同一安全域的多个应用设备配置有相同的共享密钥。或者,位于同一安全域的多个应用设备能够获取该安全域内其它应用设备的证书或公钥。可选地,位于同一安全域内的多个应用设备中预先配置有该安全域内其它应用设备的证书或公钥,或者,位于同一安全域下的应用设备可以从公钥服务器获取该安全域内其它应用设备的证书或公钥。
下面对本申请实施例的方法流程举例说明。
例如,图2是本申请实施例提供的一种量子设备的发现方法200的实现流程示意图。如图2所示,方法200包括但不限于以下步骤201至步骤203。可选地,方法200还包括以下步骤204至步骤205。可选地,方法200中的量子设备为图1中的量子设备102。方法200中的应用设备1为图1中的应用设备101A,应用设备2为图1中的应用设备101B,应用设备3为图1中的应用设备101C。
步骤201、应用设备1获取量子设备的IP地址和端口号。
量子设备的端口号用于量子设备向应用设备提供量子密钥。应用设备1获取量子设备的IP地址和端口号的方式有多种。比如,通过手动配置的方式在应用设备1中预先配置量子设备的IP地址和端口号,应用设备1从配置信息中获取量子设备的IP地址和端口号。或者,应用设备1接收量子设备发送的通告消息,该通告消息包括量子设备的地址信息,应用设备1根据该地址信息获取量子设备的IP地址和端口号。其中,量子设备的地址信息用于应用设备向该量子设备请求量子密钥。换句话来说,通告消息用于指示接收到该通告消息的应用设备基于该通告消息中携带的地址信息向量子设备请求量子密钥。量子设备的地址信息包括该量子设备的端口号,即该地址信息中携带的端口号为量子设备用于提供量子密钥的端口号。可选地,量子设备的地址信息还包括该量子设备的IP地址。下面对应用设备1根据量子设备发送的通告消息,获取量子设备的IP地址和端口号的实现方式进行说明。
一种可能实现方式,应用设备1位于量子设备的广播域内。应用设备1接收量子设备发送的通告消息的实现方式为,应用设备1接收量子设备广播的通告消息。这种实现方式下,通告消息中携带的量子设备的地址信息包括量子设备的IP地址和端口号。量子设备通过在广播域内发布通告消息,使得位于该广播域内的应用设备能够获取量子设备的IP地址和端口号,进一步能够基于量子设备的IP地址和端口号向量子设备请求获取量子密钥。可选地,一个广播域为一个局域网。
这种实现方式下,无需在量子设备配置应用设备1的信息,也无需在应用设备1上配置量子设备信息。通过量子设备在广播域内发布通告消息,该广播域内的应用设备即可发现能够提供量子密钥的量子设备以及能够用于请求量子密钥的地址信息,从而实现对量子设备的自动发现。
可选地,量子设备周期性地在广播域内发布通告消息。这样,如果有新的应用设备接入该量子设备的广播域,该应用设备能够自动发现可提供量子密钥的量子设备,从而提高应用设备获取量子密钥的效率和便捷性。这种实现方式能够应对网络变更,从而提高网络可靠性。
另一种可能实现方式,应用设备1与量子设备之间建立有隧道。应用设备1接收量子设备发送的通告消息的实现方式为,应用设备1通过隧道接收量子设备发送的通告消息。这种实现方式下,通告消息中携带的量子设备的地址信息至少包括量子设备的端口号。在应用设备1接收量子设备发送的通告消息之前,应用设备1需要基于该量子设备的IP地址与该量子设备建立隧道。换句话来说,在量子设备向应用设备1发送通告消息之前,量子设备需要基于应用设备1的IP地址与应用设备1建立隧道。
可选地,量子设备中配置有应用设备1的IP地址。量子设备根据应用设备1的IP地址向应用设备1发送隧道建立请求,该隧道建立请求中包括该量子设备的IP地址。然后应用设备1向该量子设备发送该隧道建立请求对应的隧道建立响应,进而完成该量子设备与应用设备1之间的隧道建立。这种情况下,应用设备1在与量子设备建立隧道的过程中,能够获取到量子设备与应用设备1建立隧道使用的IP地址。
或者,应用设备1中配置有量子设备的IP地址。应用设备1根据该量子设备的IP地址向该量子设备发送隧道建立请求,该隧道建立请求中包括应用设备1的IP地址。然后该量子设备向应用设备1发送该隧道建立请求对应的隧道建立响应,进而完成该量子设备与应用设备1之间的隧道建立。这种情况下,应用设备1在与量子设备建立隧道之前,能够从配置信息中获取到量子设备与应用设备1建立隧道使用的IP地址。
这种实现方式下,由于应用设备1在与量子设备建立隧道的过程中或者在与量子设备建立隧道之前,就能够获取量子设备的IP地址,因此量子设备通过隧道发送的通告消息可以只包括该量子设备的端口号,而不包括量子设备的IP地址。当然,本申请实施例也不排除量子设备通过隧道发送的通告消息还包括量子设备的IP地址的实现方式。另外,这种实现方式下,需要在量子设备中配置应用设备1的IP地址,使得量子设备能够主动与应用设备1建立隧道。或者,需要在应用设备1中配置量子设备的IP地址,使得应用设备1能够主动与量子设备建立隧道。与相关技术相比,这种实现方式需要在设备中手动配置的信息较少,因此能够降低配置复杂度,提高配置效率。
例如,图3是本申请实施例提供的一种实施场景示意图。如图3所示,该实施场景包括量子设备和多台应用设备,该多台应用设备包括应用设备A和应用设备B。其中,量子设备位于量子密钥分发网络。多台应用设备位于经典网络。应用设备A位于量子设备的广播域内,量子设备通过在广播域内发布通告消息,该通告消息包括量子设备的IP地址和端口号,以使应用设备A获取量子设备的IP地址和端口号。应用设备B与量子设备之间建立有隧道,量子设备通过隧道向应用设备B发送通告消息,该通告消息包括量子设备的端口号,以使应用设备B获取量子设备的端口号。可选地,实现该隧道的物理链路经过应用设备A和互联网服务提供商(Internet service provider,ISP)网络。可选地,该隧道包括但不限于通用路由封装(generic routing encapsulation,GRE)隧道、虚拟扩展局域网(virtualextensible local area network,VXLAN)隧道或IPSec隧道。在图3示出的实施场景中,上述应用设备1例如为应用设备A或应用设备B。
可选地,上述通告消息为链路层发现协议(Link Layer Discovery Protocol,LLDP)帧,量子设备的地址信息携带在该LLDP帧的类型长度值(type-length-value,TLV)字段中。应用设备1接收到LLDP帧之后,解析该LLDP帧的数据字段得到量子设备的地址信息,进一步在管理信息库(management information base,MIB)中存储根据量子设备的地址信息获取到的量子设备的IP地址和端口号。之后,应用设备1能够从MIB中获取量子设备的IP地址和端口号。这种实现方式下,量子设备和应用设备1都需支持LLDP。具体地,量子设备需支持LLDP扩展TLV能力。应用设备1需支持LLDP扩展TLV解析能力。
例如,图4是本申请实施例提供的一种通告消息的结构示意图。该通告消息通过扩展LLDP得到。如图4所示,该通告消息包括目的MAC地址、源MAC地址、类型(type)字段、数据(data)字段和帧校验序列(frame check sequence,FCS)。其中,目的MAC地址为固定的组播MAC地址0x0180-C200-000E。源MAC地址为量子设备的端口MAC地址或设备MAC地址(如果有端口MAC地址则使用端口MAC地址,否则使用设备MAC地址)。类型字段指示消息类型,该通告消息为LLDP帧,则类型字段取值为0x88CC。数据字段为LLDP数据单元(LLDP data unit,LLDPDU),由多个TLV组成,包括但不限于主板标识(chassis ID)TLV、端口标识(port ID)TLV、生存时间(time to live,TTL)TLV和LLDPDU结束(end of LLDPDU)TLV,对这些TLV的解释可参考LLDP中定义的相关内容,本申请实施例在此不再赘述。量子设备的地址信息采用TLV编码后承载在数据字段。例如在数据字段中扩展一种QKD TLV,参见图4,QKD TLV包括QKD类型字段、QKD长度字段和QKD值字段,其中,QKD类型字段用于指示QKD值字段承载有量子设备的地址信息。QKD长度字段用于指示QKD值字段的长度。QKD值字段用于承载量子设备的地址信息。可选地,QKD类型字段的取值范围为9~126,例如定义QKD类型字段的取值为33。在一种可能实现方式中,QKD值字段包括量子设备的IP地址和端口号。可选地,量子设备的IP地址为长度为4字节的互联网协议第4版(internet protocol version 4,IPv4)地址或长度为16字节的互联网协议第6版(internet protocol version 6,IPv6)地址。例如定义量子设备的IP地址占QKD TLV的QKD值字段的0~15字节,端口号占QKD值字段的16~17字节。如果量子设备采用IPv4地址,则将IPv4地址设置在QKD值字段的0~3字节,之后的12字节(4~15字节)填充为0。
可选地,上述通告消息除了能够通过扩展LLDP的方式得到以外,该通告消息还可以是其它格式的消息或自定义格式的消息,本申请实施例对通告消息的消息格式不做限定。
本申请实施例中,通过量子设备主动向应用设备通告自己的地址信息,使得应用设备能够自动发现具备量子密钥分发能力的量子设备,与相关技术相比,本申请无需在应用设备上手动配置量子设备信息,因此能够提高应用设备获取量子密钥的效率和便捷性,有助于实现量子密钥在经典网络中的广泛应用。
可选地,如果应用设备1中存储有量子设备的旧IP地址和旧端口号,应用设备1在获取到量子设备提供的新IP地址和新端口号之后,将存储的旧IP地址和旧端口号更新为新IP地址和新端口号。这样,当量子设备发生变更,比如旧的量子设备下线时,应用设备能够及时获取变更后的量子设备的新IP地址和新端口号,从而在网络变更场景下,提高应用设备获取量子密钥的可靠性。
步骤202、应用设备1向应用设备2发送量子设备发现消息1,量子设备发现消息1包括量子设备的IP地址和端口号。
可选地,量子设备发现消息1为BGP更新消息,量子设备的IP地址和端口号在该BGP更新消息的路径属性字段中。
例如,图5和图6分别是本申请实施例提供的一种量子设备发现消息的结构示意图。该量子设备发现消息通过扩展BGP更新消息得到。如图5和图6所示,该量子设备发现消息包括以太网头部(Ethernet header)、IP头部(IP header)、TCP头部(TCP header)、BGP数据包以及FCS。其中,BGP数据包中包括BGP头部以及BGP消息字段。该BGP头部中包括标志(maker)字段、长度(length)字段和类型(type)字段(图中未示出)。图5示出了编号为4271的请求评论(request for comments,RFC)(简称:RFC 4271)文档中定义的用于发布路由的BGP消息字段的格式。如图5所示,该BGP消息字段中包括不可达路由长度(withdrawnroutes length)字段、不可达路由(withdrawn routes)字段、总路径属性长度(total pathattribute length)字段、路径属性(path attribute)字段以及网络层可达信息(networklayer reachability information,NLRI)。图6示出了RFC 4760文档中定义的用于发布路由的BGP消息字段的格式。如图6所示,该BGP消息字段包括地址族标识符(address familyidentifier)字段、后续地址族标识符(subsequent address family identifier)字段、下一跳网络地址长度(length of next hop network address)字段、下一跳网络地址(nexthop network address)字段、保留(reserved)字段、NLRI以及路径属性字段。其中,地址族标识符、后续地址族标识符、下一跳网络地址长度、下一跳网络地址、保留字段和NLRI统称为多协议可达NLRI(MP_REACH_NLRI)属性。量子设备的IP地址和端口号采用TLV编码后承载在BGP消息字段的路径属性字段中。例如参见图5或图6,路径属性字段包括扩展的属性类型字段、属性长度字段和属性值字段。其中,属性类型字段包括属性标志和属性类型码,属性标志为扩展(extended)标志,属性类型码用于指示属性值字段承载有量子设备的IP地址和端口号,例如属性类型码取值为13。属性长度字段用于指示属性值字段的长度。属性值字段用于承载量子设备的IP地址和端口号。可选地,量子设备的IP地址为长度为4字节的IPv4地址或长度为16字节的IPv6地址。例如定义属性值字段的长度为18字节,量子设备的IP地址占属性值字段的0~15字节,量子设备的端口号占属性值字段的16~17字节。如果量子设备采用IPv4地址,则将IPv4地址设置在属性值字段的0~3字节,之后的12字节(4~15字节)填充为0。
可选地,上述量子设备发现消息除了能够通过扩展BGP更新消息得到以外,该量子设备通告消息还可以是其它格式的消息或自定义格式的消息,本申请实施例对量子设备发现消息的消息格式不做限定。
例如请继续参见图3,图3示出的实施场景中的多台应用设备还包括应用设备C。应用设备A获取量子设备的IP地址和端口号之后,向应用设备C发送量子设备的IP地址和端口号,以使应用设备C自动发现能够提供量子密钥的量子设备。在图3示出的实施场景中,上述应用设备1例如为应用设备A,上述应用设备2例如为应用设备C。
步骤203、应用设备2解析量子设备发现消息1从而获得量子设备发现消息1中包括的IP地址和端口号,并存储获得的IP地址和端口号。
可选地,应用设备2接收到应用设备1发送的量子设备发现消息1之后,解析量子设备发现消息1得到量子设备的IP地址和端口号,然后在MIB中存储量子设备的IP地址和端口号。之后,应用设备2能够从MIB中获取用于提供量子密钥的量子设备的IP地址和端口号。
可选地,如果应用设备2中存储有量子设备的旧IP地址和旧端口号,应用设备2在获取到量子设备提供的新IP地址和新端口号之后,将存储的旧IP地址和旧端口号更新为新IP地址和新端口号。这样,当量子设备发生变更,比如旧的量子设备下线时,应用设备能够及时获取变更后的量子设备的新IP地址和新端口号,从而在网络变更场景下,提高应用设备获取量子密钥的可靠性。
本申请实施例中,应用设备在获取到量子设备的IP地址和端口号之后,向其它应用设备发送获取到的量子设备的IP地址和端口号,使得其它应用设备也能够发现具备量子密钥分发能力的量子设备,进而其它应用设备能够根据获取到的量子设备的IP地址和端口号向对应的量子设备请求获取量子密钥。通过应用设备对量子设备信息进行自动扩散,能够提高通信网络中的应用设备获取量子密钥的整体效率和便捷性,有助于实现量子密钥在经典网络中的广泛应用。
可选地,应用设备2获取量子设备的IP地址和端口号之后,继续向其它应用设备自动扩散量子设备的IP地址和端口号。例如应用设备2在接收到量子设备发现消息1,并从量子设备发现消息1中解析出量子设备的IP地址和端口号之后,继续执行以下步骤204。
步骤204、应用设备2向应用设备3发送量子设备发现消息2,量子设备发现消息2包括量子设备的IP地址和端口号。
此步骤204的实现方式可参考上述步骤202的实现方式,本申请实施例在此不再赘述。
例如请继续参见图3,图3示出的实施场景中的多台应用设备还包括应用设备D。应用设备C获取量子设备的IP地址和端口号之后,继续向应用设备D发送量子设备的IP地址和端口号,以使应用设备D自动发现能够提供量子密钥的量子设备。在图3示出的实施场景中,上述应用设备1例如为应用设备A,上述应用设备2例如为应用设备C,上述应用设备3例如为应用设备D。
步骤205、应用设备3解析量子设备发现消息2从而获得量子设备发现消息2中包括的IP地址和端口号,并存储获得的IP地址和端口号。
可选地,应用设备3接收到应用设备2发送的量子设备发现消息2之后,解析量子设备发现消息2得到量子设备的IP地址和端口号,然后在MIB中存储量子设备的IP地址和端口号。之后,应用设备3能够从MIB中获取用于提供量子密钥的量子设备的IP地址和端口号。
可选地,如果应用设备3中存储有量子设备的旧IP地址和旧端口号,应用设备3在获取到量子设备提供的新IP地址和新端口号之后,将存储的旧IP地址和旧端口号更新为新IP地址和新端口号。这样,当量子设备发生变更,比如旧的量子设备下线时,应用设备能够及时获取变更后的量子设备的新IP地址和新端口号,从而在网络变更场景下,提高应用设备获取量子密钥的可靠性。
本申请实施例中,一个应用设备接收到另一个应用设备发送的量子设备信息之后,通过对量子设备信息进行进一步扩散,能够实现多应用设备对量子设备的自动发现。
可选地,应用设备在向其它应用设备扩散量子设备信息之前,先与对方进行能力协商,以确定对方是否具备从量子设备发现消息中解析量子设备信息的能力。应用设备在确定对方具备从量子设备发现消息中解析量子设备信息的能力之后,再向对方扩散量子设备信息。其中,量子设备信息包括量子设备的IP地址和端口号。例如在上述步骤202执行之前,执行以下步骤S11至步骤S12。
在步骤S11中,应用设备1向应用设备2发送能力协商请求报文,该能力协商请求报文用于确定应用设备2是否具备从量子设备发现消息1中解析量子设备信息的能力。
可选地,能力协商请求报文为BGP打开(open)消息。例如应用设备1与应用设备2建立TCP连接之后,应用设备1向应用设备2发送BGP打开消息。该BGP打开消息携带有目标地址族信息。该目标地址族信息用于应用设备2确定自身是否具备从量子设备发现消息1中解析量子设备信息的能力。
BGP采用地址族(address family,AF)来区分不同的网络层协议。BGP地址族用于表示支持的业务。目前常见的BGP地址族包括BGP-IPv4单播地址族、BGP-IPv4组播地址族、BGP-IPv6单播地址族和BGP-VPNv6地址族等。目标地址族信息为本申请实施例扩展的一种新的BGP地址族的地址族信息,该新的BGP地址族例如命名为QKD地址族,表示支持协商量子设备信息。本申请实施例通过在BGP打开消息中携带QKD地址族信息,能够用于应用设备之间协商是否具备扩散量子设备信息的能力。对于发送方而言,通过在BGP打开消息中携带QKD地址族信息,指示自身具备扩散量子设备信息的能力,即自身能够发送携带有量子设备的IP地址和端口号的量子设备发现消息。对于接收方而言,接收到携带有QKD地址族信息的BGP打开消息之后,根据自身BGP配置确定自身是否支持QKD地址族功能,如果自身BGP配置支持QKD地址族功能,则表示自身具备从量子设备发现消息中解析量子设备信息的能力。可选地,本申请实施例针对不同版本的IP地址分别扩展新的BGP地址族。例如针对IPv4地址扩展BGP-IPv4-QKD地址族,用于协商使用IPv4地址的量子设备信息。BGP-IPv4-QKD地址族的地址族标识(address family identifier,AFI)例如定义为00800001。又例如针对IPv6地址扩展BGP-IPv6-QKD地址族,用于协商使用IPv6地址的量子设备信息。BGP-IPv6-QKD地址族的AFI例如定义为00810001。
可选地,目标地址族信息携带在BGP打开消息的可选参数字段中。可选参数字段包括地址族信息(address family information)域,其中地址族信息域由2字节的AFI和1字节的子地址族标识(subsequent address family identifier,SAFI)组成。如果量子设备的IP地址为IPv4地址,则地址信息域中的AFI设置为定义的BGP-IPv4-QKD地址族的AFI值,比如00800001。如果量子设备的IP地址为IPv6地址,则地址信息域中的AFI设置为定义的BGP-IPv6-QKD地址族的AFI值,比如00810001。
可选地,能力协商请求报文包括认证凭据,该认证凭据用于应用设备2对应用设备1进行安全认证。应用设备2对应用设备1进行安全认证,可理解为应用设备2判断是否与应用设备1位于同一安全域内。
本申请实施例通过预先配置安全域,使得量子设备信息在安全域内扩散,能够提高量子设备信息的传输安全性和可靠性。这种情况下,上述应用设备1与应用设备2位于同一安全域内,上述应用设备2与应用设备3位于同一安全域内。可选地,上述应用设备1与应用设备3位于不同安全域内。
一种可能实现方式,位于同一安全域的多个应用设备配置有相同的共享密钥。可选地,认证凭据为预配置的共享密钥。这种实现方式下,应用设备2通过判断自身是否配置有能力协商请求报文中携带的共享密钥来对应用设备1进行安全认证。如果应用设备2中配置有能力协商请求报文中携带的共享密钥,则应用设备2确定应用设备1通过安全认证,即应用设备2确定自身与应用设备1位于同一安全域内。
另一种可能实现方式,位于同一安全域内的多个应用设备能够获取该安全域内其它应用设备的证书或公钥。可选地,认证凭据包括应用设备1生成的随机数以及应用设备1采用应用设备1的私钥对该随机数的签名。这种实现方式下,应用设备2通过对能力协商请求报文中携带的签名进行验证来对应用设备1进行安全认证。如果应用设备2对能力协商请求报文中携带的签名验证通过,应用设备2确定应用设备1通过安全认证,即应用设备2确定自身与应用设备1位于同一安全域内。
可选地,在能力协商请求报文为BGP打开消息的情况下,认证凭据携带在该BGP打开消息的可选参数字段中。例如,图7是本申请实施例提供的一种能力协商请求报文的结构示意图。该能力协商请求报文通过扩展BGP打开消息得到。如图7所示,该能力协商请求报文包括版本(version)字段、我的自治系统(my autonomous system)字段、保持时间(holdtime)字段、BGP标识符(BGP identifier)字段、可选参数长度(optional paramenterslength)字段和可选参数(optional paramenters)字段。其中,可选参数字段包括地址族信息域和安全认证信息域。地址族信息域用于承载目标地址族信息。安全认证信息域用于承载认证凭据。其它字段的解释可参考对BGP打开消息的相关定义,本申请实施例在此不再赘述。
可选地,上述能力协商请求报文除了能够通过扩展BGP打开消息得到以外,该能力协商请求报文还可以是其它格式的报文或自定义格式的报文,本申请实施例对能力协商请求报文的报文格式不做限定。
在步骤S12中,应用设备2向应用设备1发送该能力协商请求报文对应的能力协商响应报文,该能力协商响应报文指示应用设备2具备从量子设备发现消息1中解析量子设备信息的能力。
可选地,如果应用设备2不具备从量子设备发现消息1中解析量子设备信息的能力,应用设备2不向应用设备1发送能力协商响应报文,或者应用设备2向应用设备1发送能力协商失败报文,该能力协商失败报文指示应用设备2不具备从量子设备发现消息1中解析量子设备信息的能力。相应地,对于应用设备1而言,当应用设备1在向应用设备2发送能力协商请求报文后的一定时长内未接收到能力协商响应报文,或者接收到应用设备2发送的能力协商失败报文,应用设备1确定应用设备2不具备从量子设备发现消息1中解析量子设备信息的能力。
可选地,能力协商请求报文为BGP打开消息。应用设备2接收到应用设备1发送的BGP打开消息之后,根据该BGP打开消息中携带的目标地址族信息确定应用设备2具备从量子设备发现消息中解析量子设备信息的能力,然后应用设备2向应用设备1发送该能力协商响应报文。
可选地,能力协商响应报文为BGP保活(keepalive)消息。或者,能力协商响应报文还可以是其它格式的报文或自定义格式的报文,本申请实施例对能力协商响应报文的报文格式不做限定。
可选地,能力协商请求报文包括认证凭据。应用设备2在向应用设备1发送能力协商响应报文之前,根据该认证凭据对应用设备1进行安全认证。应用设备2确定应用设备1通过安全认证之后,再向应用设备1发送能力协商响应报文。这种实现方式能够使应用设备只接收并解析同一安全域内的应用设备提供的量子设备信息,从而提高应用设备获取的量子设备信息的来源可靠性。
可选地,如果应用设备2确定应用设备1未通过安全认证,应用设备2不向应用设备1发送能力协商响应报文,或者应用设备2向应用设备1发送能力协商失败报文,该能力协商失败报文指示应用设备2拒绝接收应用设备1发送的量子设备发现消息。相应地,对于应用设备1而言,当应用设备1在向应用设备2发送能力协商请求报文后的一定时长内未接收到能力协商响应报文,或者接收到应用设备2发送的能力协商失败报文,应用设备1后续不再向应用设备2发送量子设备发现消息。
一种可能实现方式,认证凭据为预配置的共享密钥。应用设备2根据认证凭据对应用设备1进行安全认证的实现方式,包括:应用设备2判断应用设备2中是否配置有该共享密钥。如果应用设备2中配置有该共享密钥,应用设备2确定应用设备1通过安全认证。
另一种可能实现方式,认证凭据包括应用设备1生成的随机数以及应用设备1采用应用设备1的私钥对该随机数的签名。应用设备2根据认证凭据对应用设备1进行安全认证的实现方式,包括:应用设备2采用应用设备1的公钥对该签名进行验证。如果应用设备2对该签名验证通过,应用设备2确定应用设备1通过安全认证。其中,应用设备2验签所使用的应用设备1的公钥与应用设备1签名所使用的应用设备1的私钥为一组公私钥对。
可选地,在上述步骤204执行之前,执行以下步骤S21至步骤S22。
在步骤S21中,应用设备2向应用设备3发送能力协商请求报文,该能力协商请求报文用于确定应用设备3是否具备从量子设备发现消息2中解析量子设备信息的能力。
在步骤S22中,应用设备3向应用设备2发送该能力协商请求报文对应的能力协商响应报文,该能力协商响应报文指示应用设备3具备从量子设备发现消息2中解析量子设备信息的能力。
上述步骤S21至步骤S22的实现方式可参考上述步骤S11至步骤S12的实现方式,本申请实施例在此不再赘述。
本申请通过以下实施例对量子设备的发现方法的实现流程进行举例说明。例如,图8是本申请实施例提供的一种量子设备的发现方法800的实现流程示意图。如图8所示,方法800包括以下步骤801至步骤807。其中步骤801至步骤803示出了应用设备1获取量子设备的IP地址和端口号的过程。步骤804至步骤805示出了应用设备1与应用设备2进行能力协商的过程。步骤806至步骤807示出了应用设备1向应用设备2扩散量子设备信息的过程。
步骤801、量子设备生成通告消息,该通告消息包括量子设备的地址信息。
步骤802、量子设备向应用设备1发送该通告消息。
步骤803、应用设备1根据量子设备的地址信息获取量子设备的IP地址和端口号。
上述步骤801至步骤803的具体实现方式可参考上述步骤201的相关实现方式,本申请实施例在此不再赘述。
步骤804、应用设备1向应用设备2发送能力协商请求报文,该能力协商请求报文用于确定应用设备2是否具备从量子设备发现消息中解析量子设备信息的能力。
此步骤804的具体实现方式可参考上述步骤S11的实现方式,本申请实施例在此不再赘述。
步骤805、应用设备2向应用设备1发送该能力协商请求报文对应的能力协商响应报文,该能力协商响应报文指示应用设备2具备从量子设备发现消息中解析量子设备信息的能力。
此步骤805的具体实现方式可参考上述步骤S12的实现方式,本申请实施例在此不再赘述。
步骤806、应用设备1向应用设备2发送量子设备发现消息,量子设备发现消息包括量子设备的IP地址和端口号。
此步骤806的具体实现方式可参考上述步骤202的实现方式,本申请实施例在此不再赘述。
步骤807、应用设备2解析该量子设备发现消息从而获得该量子设备发现消息中包括的IP地址和端口号,并存储获得的IP地址和端口号。
此步骤807的具体实现方式可参考上述步骤203的实现方式,本申请实施例在此不再赘述。
可选地,如果应用设备2所在安全域内还有其它应用设备,比如上述应用设备3,应用设备2可以继续向该安全域内的其它应用设备扩散量子设备信息,比如继续执行上述步骤S21至步骤S22以及上述步骤204至步骤205,在此不再一一赘述。
可选地,应用设备在获取量子设备的IP地址和端口号之后,在本地存储量子设备的IP地址和端口号。当应用设备需要获取量子密钥时,应用设备基于量子设备的IP地址和端口号向量子设备发送密钥获取请求。例如应用设备基于量子设备的IP地址和端口号与量子设备建立TCP连接,然后应用设备通过该TCP连接向量子设备发送密钥获取请求。然后,应用设备接收量子设备发送的该密钥获取请求对应的密钥获取响应,该密钥获取响应包括量子设备分配给该应用设备的量子密钥。
可选地,为了提高量子密钥的传输安全性和可靠性,应用设备在向量子设备请求获取量子密钥的过程中,量子设备与应用设备之间相互进行身份认证。一种实现方式,应用设备向量子设备发送的密钥获取请求包括应用设备的设备标识、目标公钥和第一消息认证码值。如果量子设备对第一消息认证码值验证通过,量子设备向应用设备发送密钥获取响应,该密钥获取响应包括密文和第二消息认证码值。如果应用设备对第二消息认证码值验证通过,应用设备采用目标私钥对该密文解密得到量子设备分配给该应用设备的量子密钥信息。该量子密钥信息包括量子密钥。
其中,目标公钥和目标私钥来自应用设备运行后量子密钥生成算法得到的公私钥对。该密文由量子设备采用目标公钥对分配给应用设备的量子密钥信息加密得到。由于量子设备用于加密量子密钥信息的目标公钥是应用设备运行后量子密钥生成算法得到的,因此量子设备会采用后量子加密算法对量子密钥加密后以密文的形式向应用设备传输量子密钥,保证了量子密钥的传输机密性。另外,由于传输的密文采用后量子加密算法加密得到,因此能够抵抗量子攻击,避免密文被量子计算机破解而造成量子密钥的泄露。
第一消息认证码值由应用设备基于量子设备与设备标识对应的共享密钥对第一认证信息计算得到,第一认证信息包括目标公钥。量子设备接收到来自应用设备的密钥获取请求之后,基于密钥获取请求获取第一认证信息以及密钥获取请求中的设备标识对应的存储信息,该存储信息包括量子设备与该设备标识对应的共享密钥。然后量子设备基于获取的共享密钥以及第一认证信息对第一消息认证码值进行验证。如果量子设备对第一消息认证码值验证通过,则表示该密钥获取请求来自持有共享密钥的另一方,且第一认证信息中由密钥获取请求携带的内容(包括目标公钥)在传输过程中未被篡改。因此第一消息认证码值能够用于量子设备对应用设备进行身份认证(即验证密钥获取请求的来源可靠性),还能够用于量子设备对密钥获取请求进行消息完整性验证。
第二消息认证码值由量子设备基于量子设备与设备标识对应的共享密钥对第二认证信息计算得到,第二认证信息包括该密文。应用设备接收到来自量子设备的密钥获取响应之后,基于密钥获取响应获取第二认证信息。然后应用设备基于量子设备与设备标识对应的共享密钥以及第二认证信息对第二消息认证码值进行验证。如果应用设备对第二消息认证码值验证通过,则表示该密钥获取响应来自持有共享密钥的另一方,且第二认证信息中由密钥获取响应携带的内容(包括密文)在传输过程中未被篡改。因此第二消息认证码值能够用于应用设备对量子设备进行身份认证(即验证密钥获取响应的来源可靠性),还能够用于应用设备对密钥获取响应进行消息完整性验证。
因此,通过以上实现方式来传输量子密钥,应用设备与量子设备之间能够进行双向身份认证,还能分别对各自接收到的消息进行消息完整性验证,同时也保证了量子密钥的传输机密性。进而实现了量子密钥的传输安全性和可靠性。
或者,应用设备向量子设备发送的密钥获取请求中携带有该应用设备生成的公私钥对中的公钥,量子设备采用该公钥对分配给应用设备的量子密钥加密后,将加密后的量子密钥携带在密钥获取响应中发送给应用设备。之后,应用设备采用生成的该公私钥对中的私钥对加密后的量子密钥进行解密,得到量子密钥。本申请实施例对量子设备向应用设备提供量子密钥的方式不做限定,任何能够保证量子密钥在量子设备与应用设备之间安全传输的方案都可应用于本申请实施例。
可选地,应用设备获取到量子密钥之后,将该量子密钥应用于通信网络中任何层的数据加密传输,包括物理层、数据链路层、网络层、传输层或应用层。
在本申请实施例提供的量子设备的发现方法中,应用设备在获取到量子设备的IP地址和端口号之后,向其它应用设备发送获取到的量子设备的IP地址和端口号,使得其它应用设备也能够发现具备量子密钥分发能力的量子设备,进而其它应用设备能够根据获取到的量子设备的IP地址和端口号向对应的量子设备请求获取量子密钥。与相关技术相比,本申请通过应用设备对量子设备信息进行自动扩散,无需在每台应用设备上分别手动配置量子设备信息,因此能够提高通信网络中的应用设备获取量子密钥的整体效率和便捷性,有助于实现量子密钥在经典网络中的广泛应用。
本申请实施例提供的上述量子设备的发现方法的步骤的先后顺序能够进行适当调整,步骤也能够根据情况进行相应增减。任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内。
又例如,图9是本申请实施例提供的一种量子设备的发现方法900的实现流程示意图。方法900的应用场景至少包括第一应用设备和第二应用设备。举例来说,该应用场景为图1所示的应用场景,第一应用设备例如为应用设备101A,第二应用设备例如为应用设备101B;或者,第一应用设备例如为应用设备101B,第二应用设备例如为应用设备101C。或者,该应用场景为图3所示的实施场景,第一应用设备例如为应用设备A,第二应用设备例如为应用设备C;或者,第一应用设备例如为应用设备C,第二应用设备例如为应用设备D。该方法900具体用于实现图2对应实施例所示的方法200。如图9所示,该方法900包括但不限于以下步骤901至步骤902。
步骤901、第一应用设备获取量子设备的IP地址和端口号,该端口号用于量子设备向应用设备提供量子密钥。
步骤902、第一应用设备向第二应用设备发送第一量子设备发现消息,第一量子设备发现消息包括量子设备的IP地址和端口号。
当该方法具体用于实现上述方法200时,第一应用设备例如是应用设备1,第二应用设备例如是应用设备2,第一量子设备发现消息例如是量子设备发现消息1,步骤901至步骤902的具体实现过程可参考方法200中的步骤201至步骤202。或者,第一应用设备例如是应用设备2,第二应用设备例如是应用设备3,第一量子设备发现消息例如是量子设备发现消息2,步骤901至步骤902的具体实现过程可参考方法200中的步骤202和步骤204。
可选地,第一量子设备发现消息为BGP更新消息,量子设备的IP地址和端口号在该BGP更新消息的路径属性字段中。
可选地,在第一应用设备向第二应用设备发送第一量子设备发现消息之前,第一应用设备向第二应用设备发送能力协商请求报文,该能力协商请求报文用于确定第二应用设备是否具备从第一量子设备发现消息中解析量子设备信息的能力。量子设备信息包括量子设备的IP地址和端口号。第一应用设备接收第二应用设备发送的能力协商请求报文对应的能力协商响应报文,该能力协商响应报文指示第二应用设备具备从第一量子设备发现消息中解析量子设备信息的能力。当该方法具体用于实现上述方法200时,第一应用设备例如是应用设备1,第二应用设备例如是应用设备2,该实现过程可参考上述步骤S11至步骤S12。或者,第一应用设备例如是应用设备2,第二应用设备例如是应用设备3,该实现过程可参考上述步骤S21至步骤S22。
可选地,能力协商请求报文为BGP打开消息,BGP打开消息携带有目标地址族信息,目标地址族信息用于第二应用设备确定自身是否具备从第一量子设备发现消息中解析量子设备信息的能力。
可选地,能力协商响应报文为BGP保活消息。
可选地,能力协商请求报文包括认证凭据,该认证凭据用于第二应用设备对第一应用设备进行安全认证。
可选地,上述认证凭据为预配置的共享密钥。或者,上述认证凭据包括第一应用设备生成的随机数以及第一应用设备采用第一应用设备的私钥对该随机数的签名。
可选地,第一应用设备获取量子设备的IP地址和端口号的一种实现方式,包括:第一应用设备接收量子设备发送的通告消息,该通告消息包括量子设备的地址信息,该地址信息用于应用设备向量子设备请求量子密钥。第一应用设备根据该地址信息获取IP地址和端口号。当该方法具体用于实现上述方法200时,第一应用设备例如是应用设备1,第二应用设备例如是应用设备2,该实现过程可参考上述步骤201。
可选地,第一应用设备获取量子设备的IP地址和端口号的另一种实现方式,包括:第一应用设备接收第三应用设备发送的第二量子设备发现消息,第二量子设备发现消息包括IP地址和端口号。当该方法具体用于实现上述方法200时,第一应用设备例如是应用设备2,第二应用设备例如是应用设备3,该实现过程可参考上述步骤202。
又例如,图10是本申请实施例提供的一种量子设备的发现方法1000的实现流程示意图。方法1000的应用场景至少包括第一应用设备和第二应用设备。举例来说,该应用场景为图1所示的应用场景,第二应用设备例如为应用设备101B,第一应用设备例如为应用设备101A;或者,第二应用设备例如为应用设备101C,第一应用设备例如为应用设备101B。或者,该应用场景为图3所示的实施场景,第二应用设备例如为应用设备C,第一应用设备例如为应用设备A;或者,第二应用设备例如为应用设备D,第一应用设备例如为应用设备A。该方法1000具体用于实现图2对应实施例所示的方法200。如图10所示,该方法1000包括但不限于以下步骤1001至步骤1003。
步骤1001、第二应用设备接收第一应用设备发送的量子设备发现消息,该量子设备发现消息包括量子设备的IP地址和端口号,该端口号用于量子设备向应用设备提供量子密钥。
步骤1002、第二应用设备解析该量子设备发现消息从而获得该量子设备发现消息中包括的IP地址和端口号。
步骤1003、第二应用设备存储获得的IP地址和端口号。
当该方法具体用于实现上述方法200时,第二应用设备例如是应用设备2,第一应用设备例如是应用设备1,量子设备发现消息例如是量子设备发现消息1,步骤1001至步骤1003的具体实现过程可参考方法200中的步骤202至步骤203。或者,第二应用设备例如是应用设备3,第一应用设备例如是应用设备2,量子设备发现消息例如是量子设备发现消息2,步骤1001至步骤1003的具体实现过程可参考方法200中的步骤204至步骤205。
可选地,量子设备发现消息为BGP更新消息,量子设备的IP地址和端口号在该BGP更新消息的路径属性字段中。
可选地,在第二应用设备接收第一应用设备发送的量子设备发现消息之前,第二应用设备接收第一应用设备发送的能力协商请求报文,该能力协商请求报文用于确定第二应用设备是否具备从量子设备发现消息中解析量子设备信息的能力。量子设备信息包括量子设备的IP地址和端口号。第二应用设备向第一应用设备发送能力协商请求报文对应的能力协商响应报文,该能力协商响应报文指示第二应用设备具备从量子设备发现消息中解析量子设备信息的能力。当该方法具体用于实现上述方法200时,第二应用设备例如是应用设备2,第一应用设备例如是应用设备1,该实现过程可参考上述步骤S11至步骤S12。或者,第二应用设备例如是应用设备3,第一应用设备例如是应用设备2,该实现过程可参考上述步骤S21至步骤S22。
可选地,能力协商请求报文为BGP打开消息,BGP打开消息携带有目标地址族信息。第二应用设备根据目标地址族信息确定第二应用设备具备从量子设备发现消息中解析量子设备信息的能力。
可选地,能力协商响应报文为BGP保活消息。
可选地,能力协商请求报文包括认证凭据,第二应用设备根据认证凭据对第一应用设备进行安全认证。
可选地,认证凭据为预配置的共享密钥,第二应用设备根据认证凭据对第一应用设备进行安全认证的实现方式,包括:第二应用设备判断第二应用设备中是否配置有共享密钥。如果第二应用设备中配置有共享密钥,第二应用设备确定第一应用设备通过安全认证。
可选地,认证凭据包括第一应用设备生成的随机数以及第一应用设备采用第一应用设备的私钥对该随机数的签名。第二应用设备根据认证凭据对第一应用设备进行安全认证的实现方式,包括:第二应用设备采用第一应用设备的公钥对该签名进行验证。如果第二应用设备对该签名验证通过,第二应用设备确定第一应用设备通过安全认证。
下面对本申请实施例的系统举例说明。
本申请实施例提供了一种量子设备的发现系统,包括:第一应用设备和第二应用设备。第一应用设备用于在获取量子设备的IP地址和端口号后,向第二应用设备发送量子设备发现消息,该量子设备发现消息包括量子设备的IP地址和端口号,该端口号用于量子设备向应用设备提供量子密钥。第二应用设备用于接收量子设备发现消息,解析该量子设备发现消息从而获得该量子设备发现消息中包括的IP地址和端口号,并存储获得的IP地址和端口号。第一应用设备和第二应用设备的详细工作过程请参照前面方法200的实现流程。例如,第一应用设备为方法200中的应用设备1,第二应用设备为方法200中的应用设备2,第一应用设备用于执行上述方法200中的步骤201至步骤202,第二应用设备用于执行上述方法200中的步骤203。或者,第一应用设备为方法200中的应用设备2,第二应用设备为方法200中的应用设备3,第一应用设备用于执行上述方法200中的步骤204,第二应用设备用于执行上述方法200中的步骤205。
可选地,该系统还包括量子设备。量子设备用于向第一应用设备发送通告消息,该通告消息包括量子设备的地址信息,该地址信息用于应用设备向量子设备请求量子密钥。第一应用设备用于根据该地址信息获取量子设备的IP地址和端口号。
可选地,第一应用设备与量子设备位于同一广播域内。或者,第一应用设备与量子设备之间建立有隧道。
可选地,第二应用设备用于根据量子设备的IP地址和端口号向量子设备发送密钥获取请求。量子设备用于向第二应用设备发送该密钥获取请求对应的密钥获取响应,该密钥获取响应包括量子设备分配给第二应用设备的量子密钥。
可选地,第一应用设备用于根据量子设备的IP地址和端口号向量子设备发送密钥获取请求。量子设备用于向第一应用设备发送该密钥获取请求对应的密钥获取响应,该密钥获取响应包括量子设备分配给第一应用设备的量子密钥。
例如,图11是本申请实施例提供的一种通信系统的结构示意图。如图11所示,该系统包括位于量子密钥分发网络中的量子设备A1和量子设备A2,以及位于经典网络中的应用设备B1、应用设备B2和应用设备B3。应用设备B1位于量子设备A1的广播域内或与量子设备A1之间建立有隧道。应用设备B2位于量子设备A2的广播域内或与量子设备A2之间建立有隧道。应用设备B3与应用设备B1位于同一安全域内。应用设备B1发现量子设备A1的方式以及应用设备B2发现量子设备A2的方式均可参考上述方法200中的步骤201,应用设备B1向应用设备B3扩散量子设备A1的地址信息(发送量子设备发现消息)的方式可参考上述方法200中的步骤202或步骤204。量子设备A1与量子设备A2通过量子网络通信。应用设备B2与应用设备B3通过经典网络通信。可选地,应用设备B1与量子设备A1通过经典网络通信。应用设备B2与量子设备A2通过经典网络通信。
可选地,应用设备B3为通信发起方,应用设备B2为通信接收方。如果应用设备B3和应用设备B2之间需要采用量子密钥进行数据加密传输,可通过以下实现方式获取相同的量子密钥。
应用设备B3向量子设备A1发送第一密钥获取请求。量子设备A1向应用设备B3发送第一密钥获取请求对应的第一密钥获取响应,第一密钥获取响应包括量子设备A1分配给应用设备B3的量子密钥以及该量子密钥的密钥标识。量子设备A1向量子设备A2发送已分配的量子密钥以及该量子密钥的密钥标识。应用设备B3向应用设备B2发送量子设备A1分配给应用设备B3的量子密钥的密钥标识。应用设备B2向量子设备A2发送第二密钥获取请求,第二密钥获取请求包括应用设备B3提供的密钥标识。量子设备A2向应用设备B2发送第二密钥获取请求对应的第二密钥获取响应,第二密钥获取响应包括第二密钥获取请求中携带的密钥标识对应的量子密钥,即量子设备A1分配给应用设备B3的量子密钥。至此,应用设备B3和应用设备B2获取相同的量子密钥。之后,应用设备B3与应用设备B2能够基于该量子密钥进行安全通信。
图11示出的通信系统以向应用设备B3提供量子服务的量子设备(量子设备A1)与向应用设备B2提供量子服务的量子设备(量子设备A2)不同为例进行说明。如果应用设备B3与应用设备B2由同一台量子设备提供量子服务,那么在实现技术方案时,则省略两个量子设备之间同步量子密钥信息的步骤。
下面对应用设备的基本硬件结构举例说明。
例如,图12是本申请实施例提供的一种应用设备的硬件结构示意图。如图12所示,应用设备1200包括处理器1201和存储器1202,存储器1201与存储器1202通过总线1203连接。图12以处理器1201和存储器1202相互独立说明。可选地,处理器1201和存储器1202集成在一起。可选地,图12中的应用设备1200是图1、图3或图11所示的任一应用设备。
其中,存储器1202用于存储计算机程序,计算机程序包括操作系统和程序代码。存储器1202是各种类型的存储介质,例如只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、电可擦可编程只读存储器(electrically erasableprogrammable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)、闪存、光存储器、寄存器、光盘存储、光碟存储、磁盘或者其它磁存储设备。
其中,处理器1201是通用处理器或专用处理器。处理器1201可能是单核处理器或多核处理器。处理器1201包括至少一个电路,以执行本申请实施例提供的上述方法200中应用设备1和/或应用设备2执行的动作。
可选地,应用设备1200还包括网络接口1204,网络接口1204通过总线1203与处理器1201和存储器1202连接。网络接口1204能够实现应用设备1200与应用设备或其它应用设备通信。例如处理器1201能够通过网络接口1204与其它应用设备交互来向其它应用设备扩散量子设备信息等。
可选地,应用设备1200还包括输入/输出(input/output,I/O)接口1205,I/O接口1205通过总线1203与处理器1201和存储器1202连接。处理器1201能够通过I/O接口1205接收输入的命令或数据等。I/O接口1205用于应用设备1200连接输入设备,这些输入设备例如是键盘、鼠标等。可选地,在一些可能的场景中,上述网络接口1204和I/O接口1205被统称为通信接口。
可选地,应用设备1200还包括显示器1206,显示器1206通过总线1203与处理器1201和存储器1202连接。显示器1206能够用于显示处理器1201执行上述方法产生的中间结果和/或最终结果等。在一种可能的实现方式中,显示器1206是触控显示屏,以提供人机交互接口。
其中,总线1203是任何类型的,用于实现应用设备1200的内部器件互连的通信总线。例如系统总线。本申请实施例以应用设备1200内部的上述器件通过总线1203互连为例说明,可选地,应用设备1200内部的上述器件采用除了总线1203之外的其他连接方式彼此通信连接,例如应用设备1200内部的上述器件通过应用设备1200内部的逻辑接口互连。
上述器件可以分别设置在彼此独立的芯片上,也可以至少部分的或者全部的设置在同一块芯片上。将各个器件独立设置在不同的芯片上,还是整合设置在一个或者多个芯片上,往往取决于产品设计的需要。本申请实施例对上述器件的具体实现形式不做限定。
图12所示的应用设备1200仅仅是示例性的,在实现过程中,应用设备1200包括其他组件,本文不再一一列举。图12所示的应用设备1200可以通过执行上述实施例提供的方法的全部或部分步骤来实现量子设备的自动发现。
下面对本申请实施例的虚拟装置举例说明。
本申请实施例提供了一种量子设备的发现装置。该装置应用于第一应用设备。例如,图13是本申请实施例提供的一种应用设备的结构示意图。具有图13所示结构的应用设备实现上述实施例描述的方案中应用设备的功能。可选地,图13所示的应用设备是图1、图3或图11所示的应用场景中的任一应用设备、或图12所示的应用设备,用于执行图2或图8所示实施例中描述的应用设备的功能或执行图9示出的方法900。如图13所示,应用设备1300(第一应用设备)包括获取模块1301和收发模块1302。
获取模块1301,用于获取量子设备的IP地址和端口号,该端口号用于量子设备向应用设备提供量子密钥。
收发模块1302,用于向第二应用设备发送第一量子设备发现消息,第一量子设备发现消息包括IP地址和端口号。
这里,获取模块1301和收发模块1302的详细工作过程请参照前面方法实施例中的描述。例如,获取模块1301采用方法200中的步骤201获取量子设备的IP地址和端口号。收发模块1302采用方法200中的步骤202发送第一量子设备发现消息。或者,获取模块1301采用方法200中的步骤202获取量子设备的IP地址和端口号。收发模块1302采用方法200中的步骤204发送第一量子设备发现消息。本申请实施例在此不再重复描述。
可选地,第一量子设备发现消息为BGP更新消息,量子设备的IP地址和端口号在BGP更新消息的路径属性字段中。
可选地,收发模块1302,还用于:在向第二应用设备发送第一量子设备发现消息之前,向第二应用设备发送能力协商请求报文,能力协商请求报文用于确定第二应用设备是否具备从第一量子设备发现消息中解析量子设备信息的能力,量子设备信息包括量子设备的IP地址和端口号;接收第二应用设备发送的能力协商请求报文对应的能力协商响应报文,能力协商响应报文指示第二应用设备具备从第一量子设备发现消息中解析量子设备信息的能力。这里收发模块1302的详细工作过程可参考步骤S11至步骤S12。
可选地,能力协商请求报文为BGP打开消息,BGP打开消息携带有目标地址族信息,目标地址族信息用于第二应用设备确定自身是否具备从第一量子设备发现消息中解析量子设备信息的能力。
可选地,能力协商响应报文为BGP保活消息。
可选地,能力协商请求报文包括认证凭据,认证凭据用于第二应用设备对第一应用设备进行安全认证。
可选地,认证凭据为预配置的共享密钥,或者,认证凭据包括第一应用设备生成的随机数以及第一应用设备采用第一应用设备的私钥对随机数的签名。
可选地,获取模块1301,具体用于:接收量子设备发送的通告消息,通告消息包括量子设备的地址信息,地址信息用于应用设备向量子设备请求量子密;根据地址信息获取IP地址和端口号。这里获取模块1301的详细工作过程可参考方法200中的步骤201。
可选地,获取模块1301,具体用于:接收第三应用设备发送的第二量子设备发现消息,第二量子设备发现消息包括IP地址和端口号。这里获取模块1301的详细工作过程可参考方法200中的步骤204。
本申请实施例提供了另一种量子设备的发现装置。该装置应用于第二应用设备。例如,图14是本申请实施例提供的另一种应用设备的结构示意图。具有图14所示结构的应用设备实现上述实施例描述的方案中应用设备的功能。可选地,图14所示的应用设备是图1、图3或图11所示的应用场景中的任一应用设备、或图12所示的应用设备,用于执行图2或图8所示实施例中描述的应用设备的功能或执行图10示出的方法1000。如图14所示,应用设备1400(第二应用设备)包括收发模块1401和处理模块1402。
收发模块1401,用于接收第一应用设备发送的量子设备发现消息,量子设备发现消息包括量子设备的IP地址和端口号,端口号用于量子设备向应用设备提供量子密钥。
处理模块1402,用于解析该量子设备发现消息从而获得该量子设备发现消息中包括的IP地址和端口号,并存储获得的IP地址和端口号。
可选地,量子设备发现消息为BGP更新消息,量子设备的IP地址和端口号在BGP更新消息的路径属性字段中。
可选地,收发模块1401,还用于:在接收第一应用设备发送的量子设备发现消息之前,接收第一应用设备发送的能力协商请求报文,能力协商请求报文用于确定第二应用设备是否具备从量子设备发现消息中解析量子设备信息的能力,量子设备信息包括量子设备的IP地址和端口号;向第一应用设备发送能力协商请求报文对应的能力协商响应报文,能力协商响应报文指示第二应用设备具备从量子设备发现消息中解析量子设备信息的能力。这里收发模块1401的详细工作过程可参考步骤S11至步骤S12。
可选地,能力协商请求报文为BGP打开消息,BGP打开消息携带有目标地址族信息。处理模块1402,还用于根据目标地址族信息确定第二应用设备具备从量子设备发现消息中解析量子设备信息的能力。
可选地,能力协商响应报文为BGP保活消息。
可选地,能力协商请求报文包括认证凭据,处理模块1402,还用于根据认证凭据对第一应用设备进行安全认证。
可选地,认证凭据为预配置的共享密钥,处理模块1402,还用于:判断第二应用设备中是否配置有共享密钥;如果第二应用设备中配置有共享密钥,确定第一应用设备通过安全认证。
可选地,认证凭据包括第一应用设备生成的随机数以及第一应用设备采用第一应用设备的私钥对随机数的签名,处理模块1402,还用于:采用第一应用设备的公钥对签名进行验证;如果第二应用设备对签名验证通过,确定第一应用设备通过安全认证。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令被应用设备的处理器执行时,实现上述方法200、上述方法800、上述方法900或上述方法1000中任一应用设备执行的步骤。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被应用设备的处理器执行时,实现上述方法200、上述方法800、上述方法900或上述方法1000中任一应用设备执行的步骤。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本申请实施例中,术语“第一”、“第二”和“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
需要说明的是,本申请所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的构思和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (24)
1.一种量子设备的发现方法,其特征在于,所述方法包括:
第一应用设备获取量子设备的互联网协议IP地址和端口号,所述端口号用于所述量子设备向应用设备提供量子密钥;
所述第一应用设备向第二应用设备发送第一量子设备发现消息,所述第一量子设备发现消息包括所述IP地址和所述端口号。
2.根据权利要求1所述的方法,其特征在于,所述第一量子设备发现消息为边界网关协议BGP更新消息,所述IP地址和所述端口号在所述BGP更新消息的路径属性字段中。
3.根据权利要求1或2所述的方法,其特征在于,在所述第一应用设备向第二应用设备发送第一量子设备发现消息之前,所述方法还包括:
所述第一应用设备向所述第二应用设备发送能力协商请求报文,所述能力协商请求报文用于确定所述第二应用设备是否具备从所述第一量子设备发现消息中解析量子设备信息的能力,所述量子设备信息包括所述IP地址和所述端口号;
所述第一应用设备接收所述第二应用设备发送的所述能力协商请求报文对应的能力协商响应报文,所述能力协商响应报文指示所述第二应用设备具备从所述第一量子设备发现消息中解析所述量子设备信息的能力。
4.根据权利要求3所述的方法,其特征在于,所述能力协商请求报文为BGP打开消息,所述BGP打开消息携带有目标地址族信息,所述目标地址族信息用于所述第二应用设备确定自身是否具备从所述第一量子设备发现消息中解析所述量子设备信息的能力。
5.根据权利要求3或4所述的方法,其特征在于,所述能力协商响应报文为BGP保活消息。
6.根据权利要求3至5任一所述的方法,其特征在于,所述能力协商请求报文包括认证凭据,所述认证凭据用于所述第二应用设备对所述第一应用设备进行安全认证。
7.根据权利要求6所述的方法,其特征在于,所述认证凭据为预配置的共享密钥,或者,所述认证凭据包括所述第一应用设备生成的随机数以及所述第一应用设备采用所述第一应用设备的私钥对所述随机数的签名。
8.根据权利要求1至7任一所述的方法,其特征在于,所述第一应用设备获取所述量子设备的IP地址和端口号,包括:
所述第一应用设备接收所述量子设备发送的通告消息,所述通告消息包括所述量子设备的地址信息,所述地址信息用于应用设备向所述量子设备请求量子密钥;
所述第一应用设备根据所述地址信息获取所述IP地址和所述端口号。
9.根据权利要求1至7任一所述的方法,其特征在于,所述第一应用设备获取所述量子设备的IP地址和端口号,包括:
所述第一应用设备接收第三应用设备发送的第二量子设备发现消息,所述第二量子设备发现消息包括所述IP地址和所述端口号。
10.一种量子设备的发现方法,其特征在于,所述方法包括:
第二应用设备接收第一应用设备发送的量子设备发现消息,所述量子设备发现消息包括量子设备的互联网协议IP地址和端口号,所述端口号用于所述量子设备向应用设备提供量子密钥;
所述第二应用设备解析所述量子设备发现消息从而获得所述量子设备发现消息中包括的所述IP地址和所述端口号;
所述第二应用设备存储所述IP地址和所述端口号。
11.根据权利要求10所述的方法,其特征在于,所述量子设备发现消息为边界网关协议BGP更新消息,所述IP地址和所述端口号在所述BGP更新消息的路径属性字段中。
12.根据权利要求10或11所述的方法,其特征在于,在所述第二应用设备接收第一应用设备发送的量子设备发现消息之前,所述方法还包括:
所述第二应用设备接收所述第一应用设备发送的能力协商请求报文,所述能力协商请求报文用于确定所述第二应用设备是否具备从所述量子设备发现消息中解析量子设备信息的能力,所述量子设备信息包括所述IP地址和所述端口号;
所述第二应用设备向所述第一应用设备发送所述能力协商请求报文对应的能力协商响应报文,所述能力协商响应报文指示所述第二应用设备具备从所述量子设备发现消息中解析所述量子设备信息的能力。
13.根据权利要求12所述的方法,其特征在于,所述能力协商请求报文为BGP打开消息,所述BGP打开消息携带有目标地址族信息,所述方法还包括:
所述第二应用设备根据所述目标地址族信息确定所述第二应用设备具备从所述量子设备发现消息中解析所述量子设备信息的能力。
14.根据权利要求12或13所述的方法,其特征在于,所述能力协商响应报文为BGP保活消息。
15.根据权利要求12至14任一所述的方法,其特征在于,所述能力协商请求报文包括认证凭据,所述方法还包括:
所述第二应用设备根据所述认证凭据对所述第一应用设备进行安全认证。
16.根据权利要求15所述的方法,其特征在于,所述认证凭据为预配置的共享密钥,所述第二应用设备根据所述认证凭据对所述第一应用设备进行安全认证,包括:
所述第二应用设备判断所述第二应用设备中是否配置有所述共享密钥;
如果所述第二应用设备中配置有所述共享密钥,所述第二应用设备确定所述第一应用设备通过安全认证。
17.根据权利要求15所述的方法,其特征在于,所述认证凭据包括所述第一应用设备生成的随机数以及所述第一应用设备采用所述第一应用设备的私钥对所述随机数的签名,所述第二应用设备根据所述认证凭据对所述第一应用设备进行安全认证,包括:
所述第二应用设备采用所述第一应用设备的公钥对所述签名进行验证;
如果所述第二应用设备对所述签名验证通过,所述第二应用设备确定所述第一应用设备通过安全认证。
18.一种量子设备的发现装置,其特征在于,所述装置应用于第一应用设备,所述装置包括:存储器、网络接口和至少一个处理器,
所述存储器用于存储程序指令,
所述至少一个处理器读取所述存储器中保存的程序指令后,使得所述第一应用设备执行如权利要求1至9任一所述的方法。
19.一种量子设备的发现装置,其特征在于,所述装置应用于第二应用设备,所述装置包括:存储器、网络接口和至少一个处理器,
所述存储器用于存储程序指令,
所述至少一个处理器读取所述存储器中保存的程序指令后,使得所述第二应用设备执行如权利要求10至17任一所述的方法。
20.一种量子设备的发现系统,其特征在于,包括:第一应用设备和第二应用设备;
所述第一应用设备用于在获取量子设备的互联网协议IP地址和端口号后,向所述第二应用设备发送量子设备发现消息,所述量子设备发现消息包括所述IP地址和所述端口号,所述端口号用于所述量子设备向应用设备提供量子密钥;
所述第二应用设备用于接收所述量子设备发现消息,解析所述量子设备发现消息从而获得所述量子设备发现消息中包括的所述IP地址和所述端口号,并存储所述IP地址和所述端口号。
21.根据权利要求20所述的系统,其特征在于,
所述第二应用设备用于根据所述IP地址和所述端口号向所述量子设备发送密钥获取请求;
所述量子设备用于向所述第二应用设备发送所述密钥获取请求对应的密钥获取响应,所述密钥获取响应包括所述量子设备分配给所述第二应用设备的量子密钥。
22.根据权利要求20或21所述的系统,其特征在于,所述系统还包括量子设备;
所述量子设备用于向所述第一应用设备发送通告消息,所述通告消息包括所述量子设备的地址信息,所述地址信息用于应用设备向所述量子设备请求量子密钥;
所述第一应用设备用于根据所述地址信息获取所述IP地址和所述端口号。
23.根据权利要求22所述的系统,其特征在于,所述第一应用设备与所述量子设备位于同一广播域内,或者,所述第一应用设备与所述量子设备之间建立有隧道。
24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有指令,当所述指令被处理器执行时,实现如权利要求1至17任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310910843.4A CN119341732A (zh) | 2023-07-21 | 2023-07-21 | 量子设备的发现方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310910843.4A CN119341732A (zh) | 2023-07-21 | 2023-07-21 | 量子设备的发现方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN119341732A true CN119341732A (zh) | 2025-01-21 |
Family
ID=94268016
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310910843.4A Pending CN119341732A (zh) | 2023-07-21 | 2023-07-21 | 量子设备的发现方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN119341732A (zh) |
-
2023
- 2023-07-21 CN CN202310910843.4A patent/CN119341732A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103188351B (zh) | IPv6环境下IPSec VPN通信业务处理方法与系统 | |
CN106209897B (zh) | 一种基于代理的软件定义网络分布式多粒度控制器安全通信方法 | |
JP4962117B2 (ja) | 暗号通信処理方法及び暗号通信処理装置 | |
JP2018521534A (ja) | パケットシグネチャを使用してセッションを処理するためのネットワークデバイスと方法 | |
EP3633949A1 (en) | Method and system for performing ssl handshake | |
CN102404347A (zh) | 一种基于公钥基础设施的移动互联网接入认证方法 | |
CN110719248A (zh) | 用户数据报协议报文的转发方法及装置 | |
CN109698791B (zh) | 一种基于动态路径的匿名接入方法 | |
CN114448730B (zh) | 基于区块链网络的报文转发方法及装置、交易处理方法 | |
JP5012173B2 (ja) | 暗号通信処理方法及び暗号通信処理装置 | |
US20220014553A1 (en) | Secure communications using secure sessions | |
CN113726795A (zh) | 报文转发方法、装置、电子设备及可读存储介质 | |
CN114844730A (zh) | 一种基于可信隧道技术构建的网络系统 | |
CN114614984A (zh) | 一种基于国密算法的时间敏感网络安全通信方法 | |
Kwon et al. | SVLAN: Secure & scalable network virtualization | |
WO2016134631A1 (zh) | 一种OpenFlow报文的处理方法及网元 | |
Liyanage et al. | Secure hierarchical VPLS architecture for provider provisioned networks | |
Liyanage et al. | Secure hierarchical virtual private LAN services for provider provisioned networks | |
Wang et al. | T-IP: A self-trustworthy and secure Internet protocol | |
Fancy et al. | An evaluation of alternative protocols-based Virtual Private LAN Service (VPLS) | |
CN119341732A (zh) | 量子设备的发现方法、装置及系统 | |
CN116016529A (zh) | IPSec VPN设备负载均衡管理方法和装置 | |
Liyanage | Enhancing security and scalability of virtual private LAN services | |
CN119341733A (zh) | 量子设备发现方法、装置及系统 | |
Raheem et al. | A secure authentication protocol for IP-based wireless sensor communications using the Location/ID Split Protocol (LISP) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |