Quantum cryptographic network key relay dynamic routing method, device, and system

By generating a derived key pool in the dynamic routing method in the quantum cryptographic network, calculating the path weight and determining the optimal path, the key generation rate bottleneck problem of key relay in the quantum cryptographic network is solved, and the routing computing performance and concurrency capabilities are improved.

WO2025092052A1PCT designated stage expired Publication Date: 2025-05-08CHINA TELECOM QUANTUM TECH CO LTD

Patent Information

Application Number
PCT/CN2024/107650
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-10-31
Filing Date
2024-07-25
Publication Date
2025-05-08

AI Technical Summary

Technical Problem

The prior art has failed to effectively solve the problem of key generation rate bottleneck for key relay in quantum cryptographic networks, especially when the long-distance QKD relay code rate is low and the key generation speed is smaller than the key consumption speed.

Method used

A dynamic routing method for key relay in quantum cryptographic network is proposed. By querying all reachable key relay paths in the quantum cryptographic network, the selected relay node generates a derived key pool for the tasks assigned to the path, and calculates the path weight based on the number of derived key pools and the key generation speed to determine the optimal key relay path.

Benefits of technology

Through this method, the key generation rate bottleneck problem of key relay is solved, the performance and concurrency capabilities of routing computing are improved, the routing computing method is simplified, and the performance degradation caused by competition for key relay resources is avoided.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024107650_08052025_PF_FP_ABST
    Figure CN2024107650_08052025_PF_FP_ABST
Patent Text Reader

Abstract

The present application discloses a quantum cryptographic network key relay dynamic routing method, device, and system. The method comprises: querying all accessible key relay paths in a quantum cryptographic network; selecting each relay node on the key relay paths to generate derived key pools for tasks assigned to the key relay paths; on the basis of the number of derived key pools generated by each relay node on each key relay path and a key generation speed, calculating a path weight of each relay node on each key relay path; and on the basis of the maximum path weight and the number of the relay nodes on each key relay path, determining an optimal key relay path. The present application solves the key generation rate bottleneck problem in key relay, involves a simple routing calculation method, and improves the concurrency performance.
Need to check novelty before this filing date? Find Prior Art

Description

Quantum cryptography network key relay dynamic routing method, device and system

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to the Chinese patent application filed with the China Patent Office on October 31, 2023, with application number 202311426981.1, and entitled “Dynamic Routing Method, Device and System for Quantum Cryptography Network Key Relay,” the entire contents of which are incorporated herein by reference. Technical Field

[0003] The present application relates to the field of quantum communication technology, and in particular to a quantum cryptography network key relay dynamic routing method, device and system. Background Art

[0004] Quantum communication is a new interdisciplinary field that has developed over the past two decades. It is a new research field that combines quantum theory and information theory. In physics, quantum communication can be understood as high-performance communication achieved by exploiting quantum effects at the physical limit. In information science, quantum communication is considered to utilize the basic principles of quantum mechanics (such as the principle of non-cloning of quantum states and the measurement collapse property of quantum states) or the unique properties of quantum systems such as quantum state teleportation, as well as quantum measurement methods, to transmit information between two locations. Quantum communication, with its unconditional security and high efficiency, has brought about a revolution in information security and is currently a major research direction in secure data transmission.

[0005] Quantum cryptography, based on the quantum key distribution (QKD) protocol, is currently one of the most important practical applications of quantum communication. While traditional cryptography is based on mathematics, quantum cryptography is grounded in quantum mechanics. Its security is based on physical properties such as the uncertainty principle, quantum non-cloning, and quantum coherence. It has been proven to be absolutely secure, and as a result, quantum cryptography has attracted considerable attention in the academic community.

[0006] A quantum cryptography network is a secure communication network that utilizes quantum cryptography technology. It is constructed by combining a classical communication network with a quantum key distribution network. The quantum key distribution network primarily consists of quantum key distribution terminals and quantum links, used to distribute keys. Classical communication networks use quantum keys to encrypt and decrypt data and transmit encrypted data. A quantum cryptography network node typically consists of a classical communication terminal connected to the classical communication network and a quantum key distribution device terminal connected to the quantum communication network. Quantum cryptography network nodes are generally categorized as terminal nodes and relay nodes. Due to the limitations of quantum communication's maximum distance and network construction costs, many terminals lack direct quantum links, preventing direct quantum key distribution. Encrypted communications between them must be forwarded via relay nodes.

[0007] Large-scale quantum cryptography networks will have a large number of relay nodes. Encrypted communications between end nodes will be relayed through one or more relay nodes, with different relay nodes available for data transfer. The process of selecting the relay nodes that communication data between any two nodes in the quantum cryptography network must pass through in order from the initial node to the destination node is called quantum cryptography network routing.

[0008] Related art discloses a complete solution for quantum cryptography network routing. This solution requires calculating and determining the next-hop route for communication data from a destination relay node to any other relay node according to the weighted shortest path rule. The weight is the amount of key on the path. That is, under the shortest path rule, the path with the largest amount of key is the next hop. Related art also discloses a dynamic routing method for quantum cryptography network key relays. In this routing method, the path weight of a relay path is related to the supply and demand of quantum keys on that path. This method requires the use of a complex Poisson distribution, and the calculation of routing weights is complex. Related art also discloses a routing establishment method that requires consideration of the remaining amount of keys that can be relayed, resulting in complex calculations.

[0009] In reality, the key quantity on a path doesn't truly reflect the path's ability to meet data routing encryption requirements within the next routing cycle, as the sufficiency of existing key quantities on the path is not only related to the key quantity but also to the key consumption rate of the path. The aforementioned technologies fail to consider the low coding rate of long-distance QKD relays, or the situation where the key generation rate is slower than the key consumption rate and cannot meet service concurrency requirements. For example, over a distance of approximately 100 kilometers, the QKD key coding rate based on the BB84 protocol is only around 1Kbps (kilobits per second). This low QKD coding rate is determined by physical principles. QKD key negotiation requires a series of operations, including photon polarization state preparation, transmission, polarization state filtering, detection, polarization state consistency verification, and key block parity check. This complex process further reduces the QKD coding rate. The BB84 protocol is a quantum key distribution protocol.

[0010] In addition, complex routing calculation algorithms may suffer from performance degradation caused by competition for key relay resources in high-concurrency scenarios.

[0011] Summary of the Invention

[0012] The technical problem to be solved by this application is how to solve the bottleneck problem of key generation rate of key relay.

[0013] This application solves the above technical problems through the following technical means:

[0014] In the first aspect, the present application proposes a quantum cryptography network key relay dynamic routing method, the method comprising:

[0015] Query all accessible key relay paths in the quantum cryptography network;

[0016] Each relay node on the selected key relay path generates a derived key pool for the task assigned to the key relay path;

[0017] Calculate the path weight of each relay node on each key relay path based on the number of derived key pools generated by each relay node on each key relay path and the key generation speed;

[0018] The optimal key relay path is determined based on the maximum path weight and the number of relay nodes on each key relay path.

[0019] Furthermore, all accessible key relay paths in the quantum cryptography network are queried, including:

[0020] Query the password management service platform for information about the QKD nodes belonging to the local business system and the QKD nodes belonging to the peer business system;

[0021] Receive the information of the QKD node belonging to the local business system and the information of the QKD node belonging to the opposite business system returned by the password management service platform, and query the QKDN (Quantum Key Distribution Network) controller for all reachable key relay paths in the quantum cryptography network through the key manager corresponding to the QKD node belonging to the local business system.

[0022] Furthermore, each relay node on the selected key relay path generates a derived key pool for the task assigned to the key relay path, including:

[0023] The local business system generates a globally unique business identifier (businessId) and initializes each relay node on the selected key relay path to generate a derived key pool associated with the businessId.

[0024] Allocate at least one derived key pool for the services assigned to the current key relay path.

[0025] Furthermore, the derived key pools between different services are isolated from each other.

[0026] Furthermore, the method further comprises:

[0027] Expand the derived key pool according to the expansion triggering condition of the derived key pool;

[0028] The expansion trigger condition is when the key consumption rate of the business reaches a% of the key generation rate, or when the stock of keys in the derived key pool is lower than the threshold, or when the used derived key pool reaches b% of the total derived key pool.

[0029] Furthermore, the method further comprises:

[0030] Scaling the derived key pool according to the scaling triggering condition of the derived key pool;

[0031] The scaling-down trigger condition is when the key consumption rate of services in m consecutive time windows is lower than c% of the key generation rate, or when the used derived key pool is lower than d% of the total derived key pool.

[0032] Furthermore, the derived key pool is a first-in, first-out (FIFO) queue with a maximum length.

[0033] Furthermore, the method further comprises:

[0034] Use PBKDF2 algorithm to generate derived keys;

[0035] A set number n of derived keys are added to the derived key pool by batch enqueuing, and n original derived keys in the derived key pool are removed as historical derived keys to update the keys in the derived key pool.

[0036] Furthermore, the calculation formula for generating the derived key using the PBKDF2 algorithm is: key = PBKDF2 (password, salt, iterations-count, hash-function, derived-key-len)

[0037] Where password is the password / password; salt is a cryptographically secure pseudo-random array; iterations-count is the number of iterations; hash-function is the hash function used for HMAC (Hash-based Message Authentication Code); derived-key-len is the derived key length; PBKDF2() is the PBKDF2 operation; and key is the derived key.

[0038] Furthermore, a random key from the master key pool generated by the QKD relay is used as the password;

[0039] Use password (business id | business key pool number) as salt; id refers to the identifier;

[0040] The business key pool number is used as the iterations-count, and the SM3 (Secure Hash Algorithm 3) algorithm is used as the hash-function;

[0041] The value of derived-key-len is 128.

[0042] Furthermore, when the business concurrently calls the derived key, the method further includes:

[0043] Hash (Hash Function) is performed based on the business identifier to assign the derived key to the derived key pool corresponding to the business;

[0044] The CAS (Compare-And-Swap) lock-free mechanism is used to concurrently call the derived key pool corresponding to the same business.

[0045] Furthermore, the CAS lock-free mechanism is used to concurrently call the derived key pool corresponding to the same business, including:

[0046] Assign a unique sequence number to the same derived key pool, and add 1 to the business number corresponding to the business that passes the CAS lock-free mechanism;

[0047] The service number, derived key pool number, and key number of the derived key pool are passed as parameters to the peer service system of the QKD relay / negotiation to perform derived key relay.

[0048] Furthermore, when the key in the derived key pool is updated, the CAS number is increased by n, and the n historical derived keys removed are retained for a set period of time.

[0049] Furthermore, based on the number of derived key pools generated by each relay node on each key relay path and the key generation speed, the path weight of each relay node on each key relay path is calculated, including:

[0050] The path weight of each relay node is calculated based on the sliding window as follows: the number of derived key pools generated by the relay node / key generation speed.

[0051] Furthermore, when the relay node does not perform key derivation, the number of the derived key pool corresponding to the relay node is set to 1.

[0052] Furthermore, the optimal key relay path is determined based on the maximum path weight and the number of relay nodes on each key relay path, including:

[0053] Based on the maximum path weight and the number of relay nodes on each key relay path, calculate the corresponding key relay path weight P = number of relay nodes * λw, where λ is the empirical value of the control weight ratio, w is the maximum path weight on the key relay path, and * is the multiplication symbol;

[0054] The key relay path with the smallest weight P value is determined as the optimal key relay path.

[0055] In a second aspect, the present application also proposes a quantum cryptography network key relay dynamic routing device, the device comprising:

[0056] Relay path query module, used to query all reachable key relay paths in the quantum cryptography network;

[0057] a derivation module, configured to select each relay node on a key relay path to generate a derived key pool for a task assigned to the key relay path;

[0058] A path weight calculation module is used to calculate the path weight of each relay node on each key relay path based on the number of derived key pools generated by each relay node on each key relay path and the key generation speed;

[0059] The path determination module is used to determine the optimal key relay path according to the maximum path weight and the number of relay nodes on each key relay path.

[0060] On the third aspect, the present application proposes a quantum cryptography network key relay dynamic routing system, which includes a quantum key distribution network, a key manager, a QKDN controller, a key management system and a password management service platform. The password management service platform is connected to the business communication terminal, and the business communication terminal is used to execute the above-mentioned quantum cryptography network key relay dynamic routing method.

[0061] The advantages of this application are:

[0062] (1) This application generates a derived key pool for the task assigned to the key relay path by using the relay nodes on the key relay path, and calculates the path weight of each relay node on each key relay path by using the number of derived key pools generated by the relay nodes and the key generation speed, thereby determining the optimal key relay path. The routing calculation method is simple and has higher performance. Different services use separate key pools, and there is no need to consider the problem of concurrent locking of multiple services sharing a key pool. This solves the bottleneck problem of the key generation rate of the key relay, and the routing calculation method is simple, which improves the concurrent performance.

[0063] Additional aspects and advantages of the present application will be given in part in the description below, and in part will become apparent from the description below, or will be learned through practice of the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0064] FIG1 is a flow chart of a dynamic routing method for quantum cryptography network key relay proposed in some embodiments of the present application;

[0065] FIG2 is a schematic diagram of the structure of a quantum cryptography network key relay dynamic routing device proposed in some embodiments of the present application;

[0066] FIG3 is a schematic structural diagram of a quantum cryptography network key relay dynamic routing system proposed in some embodiments of the present application. DETAILED DESCRIPTION

[0067] To make the purpose, technical solutions, and advantages of the embodiments of this application more clear, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the embodiments of this application. Obviously, the described embodiments are part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0068] As shown in FIG1 , some embodiments of the present application disclose a quantum cryptography network key relay dynamic routing method, the method comprising the following steps:

[0069] S10. Query all accessible key relay paths in the quantum cryptography network;

[0070] S20, selecting each relay node on the key relay path to generate a derived key pool for the task assigned to the key relay path;

[0071] S30, calculating the path weight of each relay node on each key relay path based on the number of derived key pools generated by each relay node on each key relay path and the key generation speed;

[0072] S40: Determine the optimal key relay path according to the maximum path weight and the number of relay nodes on each key relay path.

[0073] It should be noted that this embodiment uses the relay nodes on the key relay path to generate a derived key pool for the tasks assigned to the key relay path, and uses the number of derived key pools generated by the relay nodes and the key generation speed to calculate the path weight of each relay node on each key relay path, thereby determining the optimal key relay path. By adopting the derived key pool, the key coding rate bottleneck of the QKD relay is broken through, and the key generation rate bottleneck problem of the key relay is solved.

[0074] In some embodiments, step S10: querying all accessible key relay paths in the quantum cryptography network includes the following steps:

[0075] S11. Query the password management service platform for information about the QKD node belonging to the local business system and the QKD node belonging to the peer business system;

[0076] S12. Receive the information of the QKD node belonging to the local business system and the information of the QKD node belonging to the opposite business system returned by the cryptographic management service platform, and query the QKDN controller for all reachable key relay paths in the quantum cryptography network through the key manager corresponding to the QKD node belonging to the local business system.

[0077] Specifically, if business system A, as the business initiator, queries the QKD node information of this node (starting point) and the opposite business system B (end point) from the cryptographic management service platform (CMSP); business system A carries the starting point and end point information of the quantum key network route and queries the QKDN controller for all reachable key relay paths in the quantum cryptography network through the key manager (KM) corresponding to this node.

[0078] In some embodiments, step S20: generating a derived key pool for each relay node on the selected key relay path for the task assigned to the key relay path includes the following steps:

[0079] S21. The local business system generates a globally unique business identifier (businessId), and selects each relay node on the key relay path to initialize and generate a derived key pool associated with the businessId.

[0080] S22. Allocate at least one derived key pool for the service allocated to the current key relay path.

[0081] Specifically, the local business system, i.e., the business initiator, generates a globally unique business identifier, businessId, using the snowflake algorithm to generate a 64-bit unique id. The id is of long type (long integer). The highest bit of the business identifier is fixed to 0, followed by 41 bits to store the millisecond timestamp, followed by a 12-bit relay node code, including a 6-bit start node and a 6-bit end node, followed by a 6-bit machine code, workerId (datacenterId is the same as the start node, so it is omitted), and the last 4 bits to store the serial number. When the same millisecond timestamp is used, this incremental serial number is used to distinguish. Not every key negotiation requires re-establishing the relay link, so the concurrency requirement is not that high. The Chinese translation of workerId is work machine ID, and the Chinese translation of datacenterId is data center ID.

[0082] In some embodiments, each relay node on the selected key relay link initializes and generates a derived key pool associated with the businessId, and initializes and generates 2 n (Generally n ≥ 3) derived key pools, at least one derived key pool is allocated to the service assigned to the current key relay path, and the derived key pools between services are isolated from each other.

[0083] In some embodiments, the method further comprises the following steps:

[0084] Expand the derived key pool according to the expansion triggering condition of the derived key pool;

[0085] The expansion trigger condition is when the key consumption rate of the business reaches a% of the key generation rate, or when the stock of keys in the derived key pool is lower than the threshold, or when the used derived key pool reaches b% of the total derived key pool.

[0086] Specifically, when the key consumption rate of a service reaches 75% of the key generation rate, a 2-fold expansion of the derived key pool is triggered; or when the stock of keys in the derived key pool falls below a threshold (e.g., 10% of the maximum length of the derived key pool), a 2-fold expansion is triggered. When the used derived key pool reaches 80% of the total derived key pool, a 2-fold expansion of the total derived key pool is triggered. This embodiment improves concurrency capabilities by expanding the derived key pool, allocating resources in advance to prevent services from waiting for key derivation.

[0087] In some embodiments, the method further comprises the following steps:

[0088] Scaling the derived key pool according to the scaling triggering condition of the derived key pool;

[0089] The scaling-down trigger condition is when the key consumption rate of services in m consecutive time windows is lower than c% of the key generation rate, or when the used derived key pool is lower than d% of the total derived key pool.

[0090] Specifically, when the key consumption rate of the service in m consecutive time windows (m is an empirical value, ranging from 3 to 5) is lower than 25% of the key generation rate, a 2-fold reduction is triggered. When the used derived key pool is lower than 20% of the total derived key pool, a 2-fold reduction of the total derived key pool is triggered to release resources and reduce costs.

[0091] In some embodiments, the derived key pool is a first-in-first-out queue (FIFO) structure with a maximum length.

[0092] Specifically, the derived key pool in this embodiment is a FIFO (first-in-first-out queue) structure with a maximum length of 40k (40960) keys. When the derived key pool reaches the maximum length, a new derived key is added to the tail of the queue and the derived key at the head of the queue is discarded. If the maximum length of the derived key pool is too long, the derived key will be retained for a longer time and there is a risk of being cracked by brute force. If the maximum length is too short, there will be frequent expansion of the derived key pool or the use of service request keys waiting for QKD key negotiation. Therefore, the maximum length in the derived key pool generally uses the key generation amount of the master key pool within 5 to 10 seconds.

[0093] In this embodiment, the derived key pool is a FIFO structure with a maximum length. A reasonable maximum length can protect the validity of the derived key and prevent brute force cracking.

[0094] In some embodiments, the method further includes updating a key in the derived key pool, comprising the following steps:

[0095] Use PBKDF2 algorithm to generate derived keys;

[0096] A set number n of derived keys are added to the derived key pool by batch enqueuing, and n original derived keys in the derived key pool are removed as historical derived keys to update the keys in the derived key pool.

[0097] Specifically, as the master key pool of the key negotiation of the QKD key relay continuously negotiates to generate new keys, the derived key pool updates the keys in batches, adding 4k (4096) derived keys at the tail of the FIFO queue at a time, and discarding the 4k (4096) derived keys at the head of the queue. Here, the value of n can be 4096.

[0098] In some embodiments, the calculation formula for generating a derived key using the PBKDF2 algorithm is: key = PBKDF2 (password, salt, iterations-count, hash-function, derived-key-len)

[0099] Where password is the password / password; salt is a cryptographically secure pseudo-random array; iterations-count is the number of iterations; hash-function is the hash function used for HMAC; derived-key-len is the derived key length; PBKDF2() is the PBKDF2 operation; and key is the derived key.

[0100] In some embodiments, a random key from a master key pool generated by a QKD relay is used as a password;

[0101] Use password (Business ID | Business key pool number) can be used as salt to increase randomness;

[0102] Use the business key pool number as the iterations-count and SM3 as the hash-function;

[0103] The value of derived-key-len is 128.

[0104] It's important to note that the PBKDF2 (Password-Based Key Derivation Function) algorithm is a simple key derivation algorithm that offers high key generation efficiency with a low number of iterations, meeting the needs of high-concurrency business scenarios. Furthermore, because trusted relay nodes are independent physical machines, they don't suffer from cloud-like shared computing issues. The QKD network between nodes is also distinct from a classical channel, eliminating the threat posed by memory-timing side-channel attacks.

[0105] In addition, since the password used to derive the key is a true random number and the salt value is related to the business, the derived keys for different businesses are isolated. The salt value and the password are XORed to ensure the randomness of the salt. At the same time, the key relay process is one-time and discarded after use. The derived key pool adopts a FIFO queue structure with a maximum length and a time limit. Therefore, even if it is attacked by ASIC (Application-Specific Integrated Circuit) attacks (ASIC-resistant) or FPGA (Field-Programmable Gate Array) attacks (FPGA-resistant), on the one hand, the time limit of GPU (graphics processing unit) brute force cracking cannot meet the attack requirements, and on the other hand, brute force cracking of the derived key of the entire relay link is required to obtain the final negotiated key. The exposure of the derived key between individual nodes does not affect the overall security.

[0106] In some embodiments, when the business concurrently calls the derived key, the method further includes the following steps:

[0107] Hash the derived key according to the business identifier to assign it to the derived key pool corresponding to the business;

[0108] The CAS lock-free mechanism is used to concurrently call the derived key pool corresponding to the same business.

[0109] In this embodiment, when a business concurrently calls a derived key, a hash is performed based on the business unique identifier to allocate the key to the derived key pool corresponding to the business. The same business derived key pool adopts the CAS (Compare And Swap) lock-free method when concurrently called. The key call efficiency is accelerated by separating key negotiation and key use, and the CAS lock-free method is used during the call to improve the concurrency efficiency.

[0110] In some embodiments, a CAS lock-free mechanism is used to concurrently call the derived key pool corresponding to the same business, including:

[0111] Assign a unique sequence number to the same derived key pool, and add 1 to the business number corresponding to the business that passes the CAS lock-free mechanism;

[0112] The service number, derived key pool number, and key number of the derived key pool are passed as parameters to the peer service system of the QKD relay / negotiation to perform derived key relay.

[0113] It should be noted that this embodiment assigns a unique serial number to the same derived key pool. The service obtains the number + 1 through CAS, and passes the service number, derived key pool number, and key number of the derived key pool as parameters to the other end of the QKD relay / negotiation to avoid confusion in the order of derived key calls.

[0114] In some embodiments, when a key in a derived key pool is updated, the CAS number is increased by n, and the n historical derived keys removed are retained for a set period of time.

[0115] In this embodiment, when the derived keys are updated in batches, the CAS number is increased by 4096. To prevent the derived keys from being relayed during the batch update process, the 4096 historical derived keys that have been dequeued are temporarily retained, and the CAS number is reset to zero every day.

[0116] It should be noted that the retention time of historical derived keys is related to the key generation speed. The generation time of 4096 keys generally does not exceed 5 seconds. If the generation rate is particularly slow, it should not exceed 10 seconds for security reasons.

[0117] In some embodiments, step S30: calculating the path weight of each relay node on each key relay path based on the number of derived key pools generated by each relay node on each key relay path and the key generation speed, includes the following steps:

[0118] The path weight of each relay node is calculated based on the sliding window as follows: the number of derived key pools generated by the relay node / key generation speed.

[0119] It should be noted that if there are multiple relay paths, the path weights of all relay nodes on the key relay path are calculated based on the sliding window: the number of derived key pools / key generation speed. The smaller the weight, the shorter the path.

[0120] Furthermore, if the relay node does not perform any key derivation, the number of derived key pools is set to 1.

[0121] In some embodiments, step S40: determining the optimal key relay path based on the maximum path weight and the number of relay nodes on each key relay path, includes the following steps:

[0122] S41. Based on the maximum path weight and the number of relay nodes on each key relay path, calculate the corresponding key relay path weight P = number of relay nodes * λw, where λ is an empirical value of the control weight ratio, w is the maximum path weight on the key relay path, and * is a multiplication symbol;

[0123] S42: Determine the key relay path with the smallest weight P as the optimal key relay path.

[0124] It should be noted that according to the bucket effect, the maximum weight w in each path is found, and the weight P of each key relay path is calculated. The smaller P is, the better the path is. The optimal path with the smallest P value is selected.

[0125] As shown in FIG2 , some embodiments of the present application disclose a quantum cryptography network key relay dynamic routing device, the device comprising:

[0126] The relay path query module 10 is used to query all reachable key relay paths in the quantum cryptography network;

[0127] A derivation module 20 is configured to select each relay node on a key relay path to generate a derived key pool for a task assigned to the key relay path;

[0128] A path weight calculation module 30 is used to calculate the path weight of each relay node on each key relay path based on the number of derived key pools generated by each relay node on each key relay path and the key generation speed;

[0129] The path determination module 40 is configured to determine the optimal key relay path according to the maximum path weight and the number of relay nodes on each key relay path.

[0130] In some embodiments, the relay path query module 10 is specifically configured to:

[0131] Query the password management service platform for information about the QKD nodes belonging to the local business system and the QKD nodes belonging to the peer business system;

[0132] Receive the information of the QKD node belonging to the local business system and the information of the QKD node belonging to the opposite business system returned by the cryptographic management service platform, and query all reachable key relay paths in the quantum cryptography network from the QKDN controller through the key manager corresponding to the QKD node belonging to the local business system.

[0133] In some embodiments, the derivation module 20 includes:

[0134] The initialization unit is used to generate a globally unique business identifier (businessId) for the local business system, and initialize each relay node on the selected key relay path to generate a derived key pool associated with the businessId;

[0135] The allocation unit is configured to allocate at least one derived key pool to the service allocated to the current key relay path.

[0136] In some embodiments, the derived key pools between different services are isolated from each other.

[0137] In some embodiments, the device further includes an expansion module, specifically configured to:

[0138] Expand the derived key pool according to the expansion triggering condition of the derived key pool;

[0139] The expansion trigger condition is when the key consumption rate of the business reaches a% of the key generation rate, or when the stock of keys in the derived key pool is lower than the threshold, or when the used derived key pool reaches b% of the total derived key pool.

[0140] In some embodiments, the device further includes a capacity reduction module, specifically configured to:

[0141] Scaling the derived key pool according to the scaling triggering condition of the derived key pool;

[0142] The scaling-down trigger condition is when the key consumption rate of services in m consecutive time windows is lower than c% of the key generation rate, or when the used derived key pool is lower than d% of the total derived key pool.

[0143] In some embodiments, the derived key pool is a first-in-first-out queue (FIFO) structure with a maximum length.

[0144] In some embodiments, the apparatus further includes a key update module, specifically configured to:

[0145] Use PBKDF2 algorithm to generate derived keys;

[0146] A set number n of derived keys are added to the derived key pool by batch enqueuing, and n original derived keys in the derived key pool are removed as historical derived keys to update the keys in the derived key pool.

[0147] In some embodiments, the calculation formula for generating a derived key using the PBKDF2 algorithm is: key = PBKDF2 (password, salt, iterations-count, hash-function, derived-key-len)

[0148] Where password is the password or passphrase; salt is a cryptographically secure pseudo-random array; iterations-count is the number of iterations; hash-function is the hash function used for HMAC; derived-key-len is the derived key length; PBKDF2() is the PBKDF2 operation; and key is the derived key.

[0149] In some embodiments, a random key from a master key pool generated by a QKD relay is used as a password;

[0150] Use password (business id | business key pool number) as salt;

[0151] Use the business key pool number as the iterations-count and SM3 as the hash-function;

[0152] The value of derived-key-len is 128.

[0153] In some embodiments, the apparatus further comprises a key calling module configured to:

[0154] A derived key distribution unit, configured to distribute the derived key to the derived key pool corresponding to the service by hashing the service identifier;

[0155] The calling unit is used to concurrently call the derived key pool corresponding to the same business using the CAS lock-free mechanism.

[0156] In some embodiments, the calling unit is specifically configured to:

[0157] Assign a unique sequence number to the same derived key pool, and add 1 to the business number corresponding to the business that passes the CAS lock-free mechanism;

[0158] The service number, derived key pool number, and key number of the derived key pool are passed as parameters to the peer service system of the QKD relay / negotiation to perform derived key relay.

[0159] In some embodiments, when a key in a derived key pool is updated, the CAS number is increased by n, and the n historical derived keys removed are retained for a set period of time.

[0160] In some embodiments, the path weight calculation module 30 is configured to calculate the path weight of each relay node based on the sliding window as: the number of derived key pools generated by the relay node / key generation speed.

[0161] In some embodiments, when a relay node does not perform key derivation, the number of derived key pools corresponding to the relay node is set to 1.

[0162] In some embodiments, the path determination module 40 includes:

[0163] A weight calculation unit is used to calculate the weight P of the corresponding key relay path based on the maximum path weight and the number of relay nodes on each key relay path = number of relay nodes * λw, where λ is an empirical value of the control weight ratio, w is the maximum path weight on the key relay path, and * is a multiplication symbol;

[0164] The path determination unit is used to determine the key relay path with the smallest weight P value as the optimal key relay path.

[0165] It should be noted that other embodiments or implementation methods of the quantum cryptography network key relay dynamic routing device of the present application can refer to the above-mentioned method embodiments, which will not be repeated here.

[0166] As shown in Figure 3, some embodiments of the present application disclose a quantum cryptography network key relay dynamic routing system, which includes a quantum key distribution network, a key manager, a QKDN controller, a key management system and a cryptographic management service platform. The quantum key distribution network is connected to the key management system via the key manager, the key manager is connected to the QKDN controller, and the cryptographic management service platform is connected to the business communication terminal. The business communication terminal is used to execute the quantum cryptography network key relay dynamic routing method as described in the above embodiment.

[0167] Specifically, the quantum key distribution module (QKD) is used to implement quantum key distribution with the quantum key distribution module of the connection node, so that both parties can obtain a key pair.

[0168] The Key Manager (KM) is responsible for receiving and managing the keys generated by QKD, relaying the keys, and providing the keys to applications that require passwords.

[0169] QKDN controller is used to control various resources of the QKD network to ensure the secure, stable, efficient and robust operation of the QKD network.

[0170] The Key Management System (KMS) is responsible for creating and managing keys, protecting the confidentiality, integrity, and availability of keys, and meeting the key management requirements of applications and businesses.

[0171] The Cryptographic Management Service Platform (CMSP) is responsible for routing control, resource scheduling, etc. of the Key Management System (KMS).

[0172] Throughout this specification, reference to terms such as "one embodiment," "some embodiments," "examples," "specific examples," or "some examples" means that a specific feature, structure, material, or characteristic described in conjunction with that embodiment or example is included in at least one embodiment or example of the present application. In this specification, schematic representations of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.

[0173] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of the technical features being referred to. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of such features. Throughout the description of this application, "plurality" means at least two, for example, two, three, etc., unless otherwise specifically defined.

[0174] Although the embodiments of the present application have been shown and described above, it can be understood that the above embodiments are exemplary and cannot be understood as limitations on the present application. Ordinary technicians in this field can change, modify, replace and modify the above embodiments within the scope of the present application.

Claims

1. A quantum cryptographic network key relay dynamic routing method, characterized in that: The method comprises: Query all accessible key relay paths in the quantum cryptography network; Selecting each relay node on the key relay path to generate a derived key pool for a task assigned to the key relay path; Calculating the path weight of each relay node on each key relay path according to the number of derived key pools generated by each relay node on each key relay path and the key generation speed; The optimal key relay path is determined according to the maximum path weight and the number of relay nodes on each of the key relay paths.

2. The quantum cryptography network key relay dynamic routing method according to claim 1, characterized in that: The querying of all accessible key relay paths in the quantum cryptography network includes: Query the password management service platform for information about the QKD node of the local business system and the QKD node of the peer business system; Receive the information of the QKD node belonging to the local business system and the information of the QKD node belonging to the opposite business system returned by the password management service platform, and query the QKDN controller for all reachable key relay paths in the quantum cryptography network through the key manager corresponding to the QKD node belonging to the local business system.

3. The quantum cryptography network key relay dynamic routing method according to claim 1, characterized in that: The selecting each relay node on the key relay path to generate a derived key pool for the task assigned to the key relay path includes: The local business system generates a globally unique business identifier businessId, and selects each relay node on the key relay path to initialize and generate a derived key pool related to the businessId; At least one derived key pool is allocated to the service assigned to the current key relay path.

4. The quantum cryptography network key relay dynamic routing method according to claim 3, characterized in that: The derived key pools between different businesses are isolated from each other.

5. The quantum cryptography network key relay dynamic routing method according to claim 1, characterized in that: The method further comprises: Expanding the derived key pool according to the expansion triggering condition of the derived key pool; The expansion trigger condition is when the key consumption rate of the service reaches a% of the key generation rate, or when the stock key of the derived key pool is lower than a threshold, or when the used derived key pool reaches b% of the total derived key pool.

6. The quantum cryptography network key relay dynamic routing method according to claim 1, characterized in that: The method further comprises: Scaling the derived key pool according to the shrinking triggering condition of the derived key pool; The shrinkage triggering condition is when the key consumption speed of services in m consecutive time windows is lower than c% of the key generation speed, or when the used derived key pool is lower than d% of the total derived key pool.

7. The quantum cryptography network key relay dynamic routing method according to claim 1, characterized in that: The derived key pool is a first-in-first-out queue FIFO structure with a maximum length.

8. The quantum cryptography network key relay dynamic routing method according to claim 1, characterized in that: The method further comprises: Use PBKDF2 algorithm to generate derived keys; A set number n of the derived keys are added to the derived key pool by batch enqueuing, and n original derived keys in the derived key pool are removed as historical derived keys to update the keys in the derived key pool.

9. The quantum cryptography network key relay dynamic routing method according to claim 8, characterized in that: The calculation formula for generating the derived key using the PBKDF2 algorithm is: key = PBKDF2 (password, salt, iterations-count, hash-function, derived-key-len) Among them, password is the password or passphrase; salt is a cryptographically secure pseudo-random array; iterations-count is the number of iterations; hash-function is the hash function used for HMAC; derived-key-len is the derived key length; PBKDF2() is the PBKDF2 operation; key is the derived key.

10. The quantum cryptography network key relay dynamic routing method according to claim 9, characterized in that: Using a random key in a master key pool generated by a QKD relay as the password; use (business id|business key pool number) as the salt, is the XOR operation, | is the byte string connector; The business key pool number is used as the iterations-count, and the SM3 algorithm is used as the hash-function; The value of the derived-key-len is 128.

11. The quantum cryptography network key relay dynamic routing method according to claim 1, characterized in that: When the business concurrently calls the derived key, the method further includes: Hash the derived key according to the service identifier to distribute the derived key to the derived key pool corresponding to the service; The CAS lock-free mechanism is used to concurrently call the derived key pool corresponding to the same business.

12. The quantum cryptography network key relay dynamic routing method according to claim 11, characterized in that: The CAS lock-free mechanism is used to concurrently call the derived key pool corresponding to the same business, including: Assign a unique sequence number to the same derived key pool, and add 1 to the business number corresponding to the business that passes the CAS lock-free mechanism; The service number, derived key pool number, and key number of the derived key pool are passed as parameters to the QKD relay or the negotiated peer service system to perform derived key relay.

13. The quantum cryptography network key relay dynamic routing method according to claim 8, characterized in that: When the key in the derived key pool is updated, the CAS number is increased by n, and the n historical derived keys removed are retained for a set period of time.

14. The quantum cryptography network key relay dynamic routing method according to claim 1, characterized in that: The calculating the path weight of each relay node on each key relay path according to the number of derived key pools generated by each relay node on each key relay path and the key generation speed includes: The path weight of each relay node is calculated based on the sliding window as follows: the number of derived key pools generated by the relay node / key generation speed.

15. The quantum cryptography network key relay dynamic routing method according to claim 14, characterized in that: When the relay node does not perform key derivation, the number of derived key pools corresponding to the relay node is set to 1.

16. The quantum cryptography network key relay dynamic routing method according to claim 1, characterized in that: Determining the optimal key relay path according to the maximum path weight and the number of relay nodes on each of the key relay paths includes: Calculate the corresponding key according to the maximum path weight and the number of relay nodes on each key relay path The weight of the relay path P = the number of relay nodes * λw, λ is the empirical value of the control weight ratio, w is the maximum path weight on the key relay path, and * is the multiplication symbol; The key relay path with the smallest weight P value is determined as the optimal key relay path.

17. A quantum cryptographic network key relay dynamic routing device, characterized in that: The device comprises: Relay path query module, used to query all accessible key relay paths in the quantum cryptography network; A derivation module, used for selecting each relay node on the key relay path to generate a derived key pool for a task assigned to the key relay path; A path weight calculation module, used to calculate the path weight of each relay node on each key relay path according to the number of derived key pools generated by each relay node on each key relay path and the key generation speed; The path determination module is used to determine the optimal key relay path according to the maximum path weight and the number of relay nodes on each of the key relay paths.

18. A quantum cryptographic network key relay dynamic routing system, characterized in that: The system includes a quantum key distribution network, a key manager, a QKDN controller, a key management system and a password management service platform. The password management service platform is connected to a business communication terminal. The business communication terminal is used to execute the quantum cryptographic network key relay dynamic routing method as described in any one of claims 1 to 16.

Citation Information

Patent Citations

  • Quantum cryptographic network key relay dynamic routing method

    CN109962774A

  • Quantum key distribution system

    CN116346319A

  • Quantum cryptography network key relay dynamic routing method, device and system

    CN117176345A

  • System and Method for Proactively Buffering Quantum Key Distribution (QKD) Key Material

    US20220294617A1

Cited By

  • Communication method and device based on password infrastructure system, equipment and medium

    CN120896694A

  • Scheduling management method for integrated quantum encryption communication

    CN122316638A