Key management server device, QKD system, key management method, and program

JP2025040998AActive Publication Date: 2025-03-26KK TOSHIBA
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2023148034
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-09-13
Publication Date
2025-03-26
Estimated Expiration
2043-09-13

Smart Images

  • Figure 2025040998000001_ABST
    Figure 2025040998000001_ABST
Patent Text Reader

Abstract

To prevent unconformity in shaping QKD keys even when a plurality of key generation nodes is connected to a key management server device.SOLUTION: A key management server device comprises a receiving unit, a controlling unit, a numbering unit, and a shaping unit. The receiving unit receives QKD keys from a plurality of key generation nodes and stores the keys in a plurality of storage units corresponding to the key generation nodes, respectively. The controlling unit identifies a QKD key designated as an object of shaping processing between the device and a counter key management server device. The numbering unit performs numbering on the basis of identification information on the QKD keys, so that an order, in which the QKD keys are to be divided or the QKD keys are to be coupled with one or some of QED keys not used in the previous shaping processing, becomes same as that of the counter key management server device. The shaping unit performs, in the order, division of the QKD keys or coupling of the QKD keys with the one or some of QED keys not used in the previous shaping processing, to perform shaping processing of shaping key lengths of the QKD keys to a fixed length.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] An embodiment of the present invention relates to a key management server device, a QKD system, a key management method, and a program. [Background technology]

[0002] Quantum Key Distribution (QKD) devices that transmit and receive data to and from a single key generation node have been known for some time. When multiple such key generation nodes are used, and the QKD keys transmitted from the multiple key generation nodes are aggregated in one key management server device, and the key length is adjusted by dividing or combining the QKD keys, there is a problem that a mismatch occurs in the combination of the divided or combined QKD keys on the transmitter side and the receiver side due to a difference in the timing of generation of the QKD keys.

[0003] By arranging a key management server device for each of the multiple key generation nodes, it is possible to eliminate the discrepancy between the key generation nodes, but arranging multiple key management servers consumes computing resources. To solve this problem, it is necessary to find an appropriate combination of the timing of generating the QKD key on the transmitter and receiver sides. [Prior art documents] [Non-patent literature]

[0004] [Non-Patent Document 1] Paraiso,TK,De Marco,I.,Roger,T.et al.A modulator-free quantum key distribution transmitter chip. npj Quantum Inf 5,42 (2019) Summary of the Invention [Problem to be solved by the invention]

[0005] The problem that the present invention aims to solve is to provide a key management server device, a QKD system, a key management method, and a program that can prevent inconsistencies in the formation of QKD keys even when multiple key generation nodes are connected to the key management server device. [Means for solving the problem]

[0006] The key management server device of the embodiment includes a receiving unit, a control unit, a numbering unit, and a shaping unit. The receiving unit receives a QKD key generated through a key distillation process of QKD (Quantum Key Distribution) from a plurality of key generation nodes, and stores the QKD key in a plurality of storage units corresponding to each of the plurality of key generation nodes. The control unit identifies the QKD key designated as a target for shaping processing between the opposing key management server device and the opposing key management server device by exchanging identification information of the QKD key with the opposing key management server device. The numbering unit numbers the order of dividing the QKD key or combining the QKD key with a part of the QKD key not used in the previous shaping processing based on the identification information of the QKD key so that the order is the same between the opposing key management server device and the opposing key management server device. The shaping unit performs a shaping process to shape the key length of the QKD key to a certain length by dividing the QKD key or combining the QKD key with a part of the QKD key not used in the previous shaping processing in the order. [Brief description of the drawings]

[0007] [Figure 1] FIG. 2 is a diagram showing an example of a functional configuration of a key management server device according to the first embodiment. [Diagram 2] FIG. 13 is a diagram for explaining an example of a case where a mismatch occurs in the order of QKD keys between the sender (Alice) and the receiver (Bob). [Diagram 3] 10 is a flowchart showing an example of processing of the receiver-side key management server device according to the first embodiment. [Figure 4] 6 is a flowchart showing an example of processing of the transmitting-side key management server device in the first embodiment. [Diagram 5] FIG. 11 is a diagram showing an example of a functional configuration of a key management server device according to a second embodiment. [Figure 6] FIG. 11 is a diagram showing an example of a designated rate table according to the second embodiment. [Figure 7A] FIG. 13 is a diagram showing Example 1 of a designation order table according to the second embodiment. [Figure 7B] FIG. 13 is a diagram showing Example 2 of determination of the designation order table in the second embodiment. [Figure 7C] FIG. 13 is a diagram showing Example 3 of determination of the designation order table in the second embodiment. [Figure 8] 10 is a flowchart showing an example of processing of a receiver-side key management server device according to the second embodiment; [Figure 9] 10 is a flowchart showing an example of processing of a transmitting-side key management server device according to the second embodiment. [Figure 10] FIG. 13 is a diagram showing an example of a functional configuration of a key management server device according to a third embodiment. [Figure 11] 13 is a flowchart showing an example of processing of a receiver-side key management server device according to the third embodiment. [Figure 12] 13 is a flowchart showing an example of processing of a transmitting-side key management server device according to the third embodiment. [Figure 13] FIG. 2 is a diagram showing an example of a hardware configuration of a key management server device according to the first to third embodiments. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0008] Hereinafter, embodiments of a key management server device, a QKD system, a key management method, and a program will be described in detail with reference to the accompanying drawings.

[0009] (First embodiment) In the first embodiment, in a QKD system, optical devices and key distillation processes (hereinafter referred to as "key generation nodes") are multiplexed, and one key management server device obtains QKD keys from multiple key generation nodes. The key management server device of the first embodiment then aligns the order of the QKD keys between the opposing key management server device, and divides or combines the QKD keys to adjust the key length. The key management server device of the first embodiment allows for more efficient use of computational resources than key management performed by each single key generation node.

[0010] [Example of functional configuration] 1 is a diagram illustrating an example of a functional configuration of a key management server device 1a according to the first embodiment. The key management server device 1a according to the first embodiment is connected to a plurality of key generation nodes 2a to 2c (optical devices and key distillation processes), a counterpart key management server device 1b, and a user application 3.

[0011] The QKD system of the first embodiment comprises a plurality of key generation nodes 2a to 2c (first key generation nodes) that generate QKD keys generated through a QKD key distillation process, and a key management server device 1a (first key management server device) connected to the plurality of key generation nodes 2a to 2c.

[0012] In addition, the QKD system of the first embodiment also has a plurality of key generation nodes (second key generation nodes) in the opposing key management server device 1b (second key management server device) that generate QKD keys generated through the QKD key distillation process.

[0013] In FIG. 1, the functional configuration of the opposed key management server device 1b and a plurality of key generation nodes connected to the opposed key management server device 1b are omitted.

[0014] The key management server device 1a of the first embodiment includes a receiving unit 11, a control unit 12, a numbering unit 13, a formatting unit 14, a formatted key directory 15, and a user API (Application Programming Interface) unit 16.

[0015] The receiver 11 continuously receives the QKD keys generated via the multiple key generation nodes 2a to 2c, and stores them in reception directories A to C (one example of multiple storage units) corresponding to each key generation node. The QKD key is assigned with identification information of the QKD key by the key generation node 2a, 2b, or 2c that generated the QKD key. For example, the identification information of the QKD key includes an identifier that identifies the QKD key and an identifier that identifies the key generation node 2a, 2b, or 2c that generated the QKD key.

[0016] The control unit 12 identifies the QKD key between the opposing key management server device 1b and the opposing key management server device 1b by exchanging identifiers for identifying the QKD key with the opposing key management server device 1b. Specifically, the control unit 12 monitors the receiving unit 11, and when the receiving unit 11 receives the QKD key, it exchanges the identifier of the QKD key with the opposing key management server 1b. The control unit 12 transmits the identification information of the QKD key to the opposing key management server device 1b, and requests that the QKD keys designated as targets for shaping processing be numbered in the same order based on the identification information of the QKD key.

[0017] The numbering unit 13 assigns numbers to the QKD keys based on their identifiers so that the order of the QKD keys to be divided or combined is the same between the opposing key management server device 1b. Specifically, when the control unit 12 confirms that the opposing key management server device 2b has the same QKD key, the numbering unit 13 assigns unique key numbers (QKD unified key numbers) to the QKD keys generated by the multiple key generation nodes 2.

[0018] The shaping unit 14 repeatedly divides or combines multiple paired QKD keys between the opposing key management server device 1b and shapes the key lengths of the multiple numbered QKD keys so that they each have a constant key length.

[0019] The shaped key directory 15 stores QKD keys (encryption keys) whose key lengths have been shaped.

[0020] The user API unit 16 provides an encryption key to the user application 3. For example, when the user API receives a request for a QKD key from the user application 3, it transmits the QKD key, which has been formatted to a certain key length, to the user application 3.

[0021] The functional configuration of the opposing key management server device 1b is similar to that of the above-mentioned key management server device 1a.

[0022] Hereinafter, when there is no need to distinguish between the key management server devices 1a and 1b, they will simply be referred to as the key management server device 1. When there is no need to distinguish between the key generation nodes 2a to 2c, they will simply be referred to as the key generation node 2.

[0023] In the following explanation, in accordance with the convention in the field of cryptographic communications, the sending side (the key generation node 2 equipped with a transmitter of an optical device, and the key management server device 1b connected to the transmitter) is called Alice, and the receiving side (the key generation node 2 equipped with a receiver of an optical device, and the key management server device 1a connected to the receiver) is called Bob.

[0024] The key generation nodes 2a to 2c are able to synchronize the generation of the QKD keys of Alice and Bob through the key distillation process, and as long as it is limited to the same key generation node 2, there will be no inconsistency in the order of the QKD keys of Alice and Bob.

[0025] In addition, since the key generation nodes 2 generate QKD keys asynchronously with each other, the identifier of the QKD key of one key generation node 2 may overlap with the identifier of the QKD key of another key generation node 2.

[0026] Here, a case where a mismatch occurs in the order of the QKD keys of Alice and Bob when QKD keys are received from a plurality of key generation nodes 2 will be described with reference to FIG.

[0027] Fig. 2 is a diagram for explaining an example of a case where a mismatch occurs in the order of QKD keys between the sending side (Alice) and the receiving side (Bob). Fig. 2 shows a case where the number n of key generating nodes 2 is 3. Note that n is not limited to 3 and may be any number.

[0028] First, a pair of QKD keys is generated between Alice and Bob through message exchange related to QKD key generation.

[0029] After a pair of QKD keys is generated between Alice and Bob, the key generation node 2 on the receiving side sends a push request to the key generation node 2 on the transmitting side to send the QKD key to the key management server device 1b.

[0030] Next, the QKD key is transferred from the key generating node 2 to the receiving unit 11 using a file transfer protocol such as SCP.

[0031] At this time, due to delay variations in the communication network, the push requests to the key management server device 1b may arrive at Alice's key generation node at different times for each push request sent by the key generation node 2. Therefore, the order in which the key generation nodes 2 send push requests at Bob may differ from the order in which the key generation nodes 2 receive the push requests at Alice.

[0032] Furthermore, in file transfers using SCP, large data is transferred in successive packets, so the transfer time from the transfer of the QKD key to the completion of transfer of one file may vary for each key generation node 2. Therefore, the order in which Bob completes transfers to the key generation nodes 2 may differ from the order in which Alice completes transfers to the key generation nodes 2.

[0033] Next, an operation of the key management server device 1a of the first embodiment for aligning the order of the QKD keys, the key lengths of which are shaped, with that of the opposing key management server device 1b will be described.

[0034] 3 is a flowchart showing an example of processing by the key management server device 1a on the receiving side (Bob) in the first embodiment. First, the control unit 12 of Bob searches for the oldest QKD key among the multiple receiving directories A to C in which the QKD keys are stored, which are QKD keys that have not yet been designated as targets for shaping processing, or which have been designated as targets for shaping processing for a certain period of time since they were last designated (step S1).

[0035] Next, the control unit 12 transmits to Alice the identification information of the QKD key, which includes the identifier assigned to the QKD key found in step S1 and the identifier of the key generating node 2 that generated the QKD key (step S2).

[0036] Next, the control unit 12 receives a notification from Alice (step S3). Next, if the notification received in step S3 is a success response, that is, a notification indicating that Alice also has the same QKD key (step S4, Yes), the numbering unit 13 generates a QKD unified key number that identifies the QKD key to be processed that was searched for in step S1 (step S5). This QKD unified key number is generated based on the identifier of the key generation node 2 and the identifier of the QKD key, according to a rule previously agreed upon with Alice. Therefore, if these two identifiers are the same, the same QKD key unified number is generated for Alice and Bob.

[0037] Next, the shaping unit 14 performs a shaping process to shape the key length of the QKD key to a fixed length by dividing the QKD key found in step S1 or combining the QKD key found in step S1 with a part of the QKD key that was not used in the previous shaping process in an order determined by the QKD key unified number (step S6).

[0038] Here, the QKD key is stored in a file format, and the data from the beginning of the file is used for formatting. Any unused data is stored in a buffer and used in combination with the next QKD key when the next key length is formatted.

[0039] In step S4, if Alice's response is not successful (step S4, No), the control unit 12 adds the number of retries to the QKD key, and discards the QKD key for which the number of retries has reached the upper limit (step S7).

[0040] Until the maximum number of retries is reached, for example, the control unit 12 searches for a QKD key to be designated as a target for shaping processing, in order of oldest generated key, among QKD keys that have been designated as a target for shaping processing for a certain amount of time since they were last designated as a target for shaping processing, or QKD keys that have never been designated as a target for shaping processing.

[0041] Next, an operation of the key management server device 1b of the first embodiment for aligning the order of the QKD keys, the key lengths of which are shaped, with that of the counterpart key management server device 1a will be described.

[0042] 4 is a flowchart showing an example of processing by the key management server device 1b on the transmitting side (Alice) in the first embodiment. First, the control unit 12 of Alice receives the above-mentioned QKD key identification information (the identifier of the QKD key assigned by the key generating node 2 and the identifier of the key generating node 2 that generated the QKD key) from Bob (step S11).

[0043] Next, the control unit 12 searches the reception directories A to C of the reception unit 11 of Alice for a QKD key having the same identifier as the identifier of the QKD key sent from Bob (step S12).

[0044] Next, if a QKD key that is the same as Bob's QKD key is found (Yes at step S13), the numbering unit 13 generates a QKD unified key number for that QKD key (step S14).

[0045] Next, the shaping unit 14 divides the QKD key to which the QKD unified key number has been assigned, or combines the QKD key to which the QKD unified key number has been assigned with a QKD key that was left over from the previous time, to shape the key length to a fixed size (step S15).

[0046] Here, just like on the receiving side (Bob), the QKD key is stored in a file format, and the data from the beginning of the file is used for formatting. Any unused data is stored in a buffer, and is used in combination with the next QKD key when the next key length is formatted.

[0047] Next, the control unit 12 sends a success notification to Bob (step S16).

[0048] In step S13, if the same QKD key as Bob's is not found (step S13, No), the control unit 12 returns a failure notification to Bob (step S17).

[0049] As described above, in the key management server device 1a of the first embodiment, the receiving unit 11 receives QKD keys generated through the QKD key distillation process from the multiple key generation nodes 2a to 2c, and stores them in multiple storage units (receiving directories A to C in the first embodiment) corresponding to the multiple key generation nodes 2a to 2c, respectively. The control unit 12 exchanges identification information of the QKD key with the opposing key management server device 1b, thereby identifying the QKD key designated as the target of the shaping process between the opposing key management server device 1b. The numbering unit 13 numbers the order in which the QKD key is divided or combined with a part of the QKD key not used in the previous shaping process, based on the identification information of the QKD key, so that the order is the same between the opposing key management server device 1b. Then, the shaping unit 14 performs a shaping process to shape the key length of the QKD key to a fixed length by dividing the QKD key or combining the QKD key with a part of the QKD key that was not used in the previous shaping process in an order determined by the numbering unit 13.

[0050] As a result, according to the first embodiment, even when a plurality of key generation nodes 2a to 2c are connected to the key management server device 1a, it is possible to prevent inconsistencies in shaping the QKD keys. Specifically, in each of a pair of key management server devices 1a and 1b, the timing of QKD key generation that may be out of sync between the key generation nodes 2a to 2c on the transmitter side and the key generation nodes 2a to 2c on the receiver side can be set in an appropriate order by the numbering unit 13.

[0051] According to the first embodiment, it is possible to keep the computational resources used in the shaping process low, prevent inconsistencies in the QKD keys, and prevent a decrease in the key generation rate due to the inconsistencies.

[0052] Second embodiment Next, a second embodiment will be described. In the description of the second embodiment, the description of the same parts as in the first embodiment will be omitted, and only the parts different from the first embodiment will be described.

[0053] [Example of functional configuration] 5 is a diagram showing an example of the functional configuration of the key management server device 1a-2 according to the second embodiment. The key management server device 1a-2 according to the second embodiment includes a receiving unit 11, a control unit 12, a numbering unit 13, a formatting unit 14, a formatted key directory 15, and a user API unit 16.

[0054] Moreover, the key management server device 1a-2 of the second embodiment further stores a designated rate table 101 and a designated order table 102. The designated rate table 101 and the designated order table 102 are used for control by the control unit 12.

[0055] The control unit 12 of the second embodiment determines the reference order of the receiving directories A to C that specify the QKD keys to be subjected to key length shaping based on the designation rate table 101 and the designation order table 102 so that it is the same between the opposing key management server device 1b-2.

[0056] [Example of designated rate table] Fig. 6 is a diagram showing an example of a designated rate table 101 in the second embodiment. The designated rate table 101 in Fig. 6 defines combinations of key generation node numbers and designated rates. For example, key generation node number 1 is a number that identifies key generation node 2a. Key generation node number 2 is a number that identifies key generation node 2b. Key generation node number 3 is a number that identifies key generation node 2c.

[0057] The designated ratios X, Y, and Z are ratios indicating the frequency of obtaining the QKD key to be processed. The larger the designated ratio, the more frequently the QKD key to be processed is obtained.

[0058] The control unit 12 on the receiving side (Bob) waits until a predetermined timeout period for a communication message indicating whether or not the same QKD key exists in the opposing key management server device 1b-2. The control unit 12 counts the number of timeouts for each key generation node 2 that generated the QKD key, and changes the designated rate in the designated rate table 101 according to this count value.

[0059] The designated rate may be calculated by simply inversely proportionally dividing the count values, or may be calculated by applying a rule to which weighting has been added in advance. The designated rate table 101 is used to determine the designated order table 102.

[0060] [Example of determining the designation order table] 7A to 7C are diagrams showing examples 1 to 3 of determining the designation order table 102 in the second embodiment. Figs. 7A to 7C are examples of determining the designation order table 102 from the designation rate table 101, and determine the order in which the key generation nodes 2 are designated according to the designation rate.

[0061] For example, in the example of FIG. 7A, since all the nodes have the same designation rate, designation is repeated in the order of key generation node 2a, key generation node 2b, and key generation node 2c.

[0062] Also, for example, in the example of Figure 7B, the ratio of key generation node 2c, which has more timeouts, is set lower than that of key generation node 2a and 2b, so the designation is repeated in the order of key generation node 2a, key generation node 2b, key generation node 2a, key generation node 2b, and key generation node 2c.

[0063] Also, for example, in the example of Fig. 7C, the designation order table 102 is created according to the following rules. First, the key generation node 2 with the highest ratio value is placed in the designation order table 102, starting from the key generation node 2 closest to the left side of the designation rate table 101, and the designation rate of the placed key generation node 2 is decremented from the designation rate table 101. From the decremented designation rate table 101, the key generation node 2 with the highest ratio value is again placed in the designation order table 102, starting from the key generation node 2 closest to the left side of the designation rate table 101. By repeating this, the designation order table 102 of Fig. 7C is created.

[0064] The method of determining the designation order from the designation rate table may be determined randomly as long as the ratio for one repetition cycle is correct.

[0065] The control unit 12 of the second embodiment circulates through the receiving directories A to C of the receiving unit 11 while referring to the designation order table 102. When the control unit 12 receives a QKD key in one receiving directory, it exchanges identification information of the QKD key with the opposing key management server 1b-2 and waits to receive a QKD key in the next receiving directory.

[0066] Furthermore, the control unit 12 confirms that the opposing key management server 1b-2 has the same QKD key, and rewrites the designated rate table 101 according to the failure rate of confirmation with the opposing key management server 1b-2.

[0067] When the numbering unit 13 receives identification information of the QKD key that has been confirmed to be the counterpart key management server 1b-2 from the control unit 12, it assigns the above-mentioned QKD key unified number.

[0068] As in the first embodiment, the numbered QKD key is shaped by the shaping unit 14 to have a fixed key length and stored in the shaped key directory 15. When the user application 3 requests the QKD key, the user API unit 16 passes the QKD key stored in the shaped key directory 15 to the user.

[0069] Next, an operation of the key management server device 1a-2 of the second embodiment for aligning the order of the QKD keys, the key lengths of which are adjusted, with the counterpart key management server device 1b-2 based on the designation order table 102 will be described.

[0070] 8 is a flowchart showing an example of processing of the key management server device 1a-2 on the receiving side (Bob) in the second embodiment. First, the control unit 12 of Bob refers to the designation order table 102 and designates a QKD key stored in the receiving directory corresponding to the relevant key generating node (step S21).

[0071] Next, the control unit 12 transmits the identification information of the QKD key specified in step S21 (the identifier of the QKD key assigned by the key generating node 2 and the identifier of the key generating node 2 that generated the QKD key) to Alice (step S22).

[0072] Next, the control unit 12 waits for reception from Alice, and if a response is received from Alice without a timeout (step S23, No), the numbering unit 13 generates the above-mentioned QKD unified key number (step S24).

[0073] Next, the shaping unit 14 divides the QKD key to which the QKD unified key number has been assigned, or combines the QKD key to which the QKD unified key number has been assigned with a QKD key that was left over from the previous time, to shape the key length to a fixed size (step S25).

[0074] If a timeout occurs (step S23, Yes), the control unit 12 updates the timeout counter, and updates the designated rate table 101 in accordance with the counter (step S26).

[0075] Next, an operation of the key management server device 1b-2 of the second embodiment for aligning the order of the QKD keys, the key lengths of which are adjusted, with the counterpart key management server device 1a-2 will be described.

[0076] 9 is a flowchart showing an example of processing by the key management server device 1b-2 on the transmitting side (Alice) in the second embodiment. Steps S31 and S32 are similar to steps S11 and S12 (see FIG. 4) in the first embodiment, and therefore description thereof will be omitted.

[0077] Next, if a QKD key identical to the QKD key of the receiving side (Bob) is found (Yes at step S33), the numbering unit 13 of Alice generates a QKD unified key number (step S34).

[0078] On the other hand, if a QKD key identical to Bob's QKD key is not found (step S33, No), the QKD key is received from the key generating node 2 and waits until it is stored in the reception directory (return to step S32).

[0079] Here, Alice may send a timeout message to Bob after waiting for a certain period of time, or Bob may decide to time out without sending a timeout message.

[0080] Also, the waiting state may be released when the identification information of the next QKD key is sent from Bob, or the waiting state may be released after a fixed period of time.

[0081] Next, the shaping unit 14 divides the QKD key to which the QKD unified key number is assigned, or combines the QKD key to which the QKD unified key number is assigned with the QKD key that was left over last time, to shape the key length to a certain size (step S35). Next, the control unit 12 sends a response (success notification) to Bob (step S36).

[0082] As described above, in the second embodiment, the control unit 12 sequentially refers to a plurality of storage units (receiving directories A to C in the second embodiment) according to designation order information (designation order table 102 in the second embodiment) indicating the order in which the QKD keys designated as targets for shaping processing are read from the plurality of storage units. The control unit 12 then exchanges identification information of the QKD keys read from the plurality of storage units in accordance with the designation order information with the counterpart key management server device 1b-2, thereby identifying the QKD keys designated as targets for shaping processing between the counterpart key management server device 1b-2.

[0083] In addition, the control unit 12 in the second embodiment transmits identification information of the QKD key designated as the target for shaping processing to the opposing key management server device 1b-2, receives a response from the opposing key management server device 1b-2 indicating that a QKD key designated as the target for shaping processing exists, and the longer the waiting time for the response, the lower the rate at which it is the control unit's turn to refer to the memory unit (in the second embodiment, receiving directories A to C) that stores the QKD key designated as the target for shaping processing (see Figures 7A to 7C above).

[0084] That is, in the second embodiment, a pair of key management server devices 1a-2 and 1b-2 each perform QKD key shaping processing by dividing or combining the QKD keys of multiple key generation nodes 2a to 2c. In the second embodiment, by determining the order of designation of receiving directories A to C in which the QKD keys designated as targets for shaping are stored, it is possible to reduce computational resources and prevent inconsistencies in the QKD keys, and to prevent a decrease in the key generation rate due to the inconsistencies. Also, in the second embodiment, the order of designation of receiving directories A to C is determined, so that the exchange between Bob and Alice can be further simplified compared to the above-mentioned first embodiment.

[0085] Third embodiment Next, a third embodiment will be described. In the description of the third embodiment, the description of the same parts as in the first embodiment will be omitted, and only the parts different from the first embodiment will be described.

[0086] [Example of functional configuration] 10 is a diagram showing an example of a functional configuration of a key management server device 1a-3 according to the third embodiment. The key management server device 1a-3 according to the third embodiment includes a receiving unit 11, control units 12a to 12c, a numbering unit 13, a formatting unit 14, a formatted key directory 15, and a user API unit 16.

[0087] The control units 12a to 12c of the third embodiment control key length shaping separately between the opposing key management server device 1b-3 and each of the paired key generation nodes 2. The opposing key management server device 1b-3 also includes control units 12a to 12c for each of the paired key generation nodes 2.

[0088] For example, the control unit 12a corresponding to the receiving directory A exchanges identification information of the QKD key with the control unit 12a of the counterpart key management server device 1b-3. The operations of the control units 12b and 12c are similar to those of the control unit 12a.

[0089] The numbering unit 13 receives identification information of the QKD key that has been confirmed as the counterpart key management server 1b-3 from the control units 12a to 12c, and assigns a new key number. The assigned QKD key is shaped by the shaping unit 14 to a fixed key length, and is stored in the shaped key directory 15.

[0090] Note that the generation order of the QKD keys is guaranteed in the key distillation process for one key generation node 2. That is, as in the above-described first and second embodiments, if the QKD keys generated by the key generation nodes 2a to 2c are not mixed, no inconsistency occurs in the order of the QKD keys described in the above-described FIG.

[0091] Next, an operation of the key management server device 1a-3 of the third embodiment for aligning the order of the QKD keys, the key lengths of which are adjusted, with the counterpart key management server device 1b-3 will be described.

[0092] 11 is a flowchart showing an example of processing by the key management server device 1a-3 on the receiving side (Bob) in the third embodiment. First, the control unit 12a (12b, 12c) of Bob transmits identification information of the QKD key of the corresponding receiving directory A (B, C) (the identifier of the QKD key assigned by the key generating node 2a (2b, 2c) and the identifier of the key generating node 2a (2b, 2c) that generated the QKD key) to Alice (step S41).

[0093] Next, the control unit 12a (12b, 12c) waits for reception from Alice, and if a response is received from Alice without a timeout (step S42, No), the numbering unit 13 generates the above-mentioned QKD unified key number (step S43).

[0094] Next, the shaping unit 14 divides the QKD key to which the QKD unified key number is assigned, or combines the QKD key to which the QKD unified key number is assigned with a QKD key that was left over from the previous time, to shape the key length to a certain size (step S44). Note that in the third embodiment, the division or combination is performed on QKD keys having the same identifier of the key generating node 2 included in the identification information of the QKD key, based on the order determined by the QKD unified key number.

[0095] If a timeout occurs (step S42, Yes), the control unit 12a (12b, 12c) discards the QKD key in question (step S45) and waits until the next QKD key is received from the key generation node 2a (2b, 2c) and stored in the receiving directory A (B, C).

[0096] Next, an operation of the key management server device 1b-3 of the third embodiment for aligning the order of the QKD keys, the key lengths of which are adjusted, with the counterpart key management server device 1a-3 will be described.

[0097] 12 is a flowchart showing an example of processing of the key management server device 1b-3 on the transmitting side (Alice) in the third embodiment. First, when the receiving unit 11 of Alice receives the identification information of the QKD key from Bob (step S51), it distributes it to the control units 12a to 12c paired with the key generating node 2 based on the identifier of the key generating node 2 included in the identification information of the QKD key.

[0098] Next, the numbering unit 13 receives the QKD key identified by the QKD key identifier included in the QKD key identification information from each of the control units 12a to 12c, and generates a QKD unified key number for the QKD key (step S52).

[0099] Next, the shaping unit 14 divides the QKD key to which the QKD unified key number is assigned, or combines the QKD key to which the QKD unified key number is assigned with a QKD key that was left over from the previous time, to shape the key length to a certain size (step S44). Note that in the third embodiment, the division or combination is performed on QKD keys having the same identifier of the key generating node 2 included in the identification information of the QKD key, based on the order determined by the QKD unified key number.

[0100] Next, each of the control units 12a to 12c sends a response (a success notification) to Bob (step S54).

[0101] As described above, the key management server device 1b-3 of the third embodiment includes a plurality of control units that distinguish between the QKD keys stored in each of the plurality of storage units (receiving directories A to C in the third embodiment) and the opposing key management server device 1b-3. The rectifying unit 14 then performs division or combination on the QKD keys having the same identifier of the key generating node 2 included in the identification information of the QKD key in an order determined by the QKD unified key number.

[0102] That is, in the third embodiment, a pair of key management server devices 1a-3 and 1b-3 each divides or combines the QKD keys of a plurality of key generation nodes 2a to 2c separately for each key generation node 2 that generated the QKD keys. As a result, compared to the first and second embodiments, there is no need to correct the order of key shaping based on the timing of generation of the QKD keys by the key generation node 2, and the flow of the QKD key shaping process can be further simplified.

[0103] Finally, an example of the hardware configuration of the key management server device 1 (1-2, 1-3) according to the first to third embodiments will be described.

[0104] [Example of hardware configuration] 13 is a diagram showing an example of a hardware configuration of the key management server device 1 (1-2, 1-3) of the first to third embodiments. The key management server device 1 (1-2, 1-3) of the first to third embodiments includes a processor 201, a main storage device 202, an auxiliary storage device 203, a display device 204, an input device 205, and a communication device 206. The processor 201, the main storage device 202, the auxiliary storage device 203, the display device 204, the input device 205, and the communication device 206 are connected via a bus 210.

[0105] The key management server device 1 (1-2, 1-3) may not have some of the above configurations. For example, if the key management server device 1 (1-2, 1-3) can use the input function and display function of an external device, the key management server device 1 (1-2, 1-3) may not have the display device 204 and the input device 205.

[0106] The processor 201 executes a program read from the auxiliary storage device 203 to the main storage device 202. The main storage device 202 is a memory such as a ROM and a RAM. The auxiliary storage device 203 is a hard disk drive (HDD), a memory card, or the like.

[0107] The above-mentioned receiving directories A to C and the shaped key directory 15 of the receiving unit 11 are realized by the main storage device 202 and the auxiliary storage device 203.

[0108] The display device 204 is, for example, a liquid crystal display. The input device 205 is an interface for operating the key management server device 1 (1-2, 1-3). The key management server device 1 (1-2, 1-3) may be realized by a touch panel or the like having a display function and an input function. The communication device 206 is an interface for communicating with other devices.

[0109] For example, the program executed by the key management server device 1 (1-2, 1-3) is provided as a computer program product in the form of a file in an installable or executable format recorded on a computer-readable storage medium such as a memory card, hard disk, CD-RW, CD-ROM, CD-R, DVD-RAM, or DVD-R.

[0110] Also, for example, the program executed by the key management server device 1 (1-2, 1-3) may be stored on a computer connected to a network such as the Internet and provided by being downloaded via the network.

[0111] Also, for example, the programs executed by the key management server devices 1 (1-2, 1-3) may be provided via a network such as the Internet without being downloaded.

[0112] Also, for example, the program for the key management server device 1 (1-2, 1-3) may be provided by being pre-installed in a ROM or the like.

[0113] The program executed by the key management server device 1 (1-2, 1-3) has a modular configuration including functions that can be realized by the program among the above-mentioned functional configurations. As for each function, as actual hardware, the processor 201 reads the program from a storage medium and executes it, and the above-mentioned functional blocks are loaded onto the main storage device 202. In other words, the above-mentioned functional blocks are generated on the main storage device 202.

[0114] Note that some or all of the above-described functions may be realized by hardware such as an integrated circuit (IC) instead of by software.

[0115] Furthermore, each function may be realized using a plurality of processors 201. In this case, each processor 201 may realize one of the functions, or may realize two or more of the functions.

[0116] Although some embodiments of the present invention have been described, these embodiments are presented as examples and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their modifications are included in the scope and spirit of the invention, and are included in the scope of the invention and its equivalents described in the claims. [Explanation of symbols]

[0117] 1. Key management server device 2. Key Generation Node 3 User Applications 11 Receiving section 12 Control section 13 Numbering section 14 Plastic surgery department 15 Formatted Key Directory 16 User API section 201 Processor 202 Main storage 203 Auxiliary storage device 204 Display device 205 Input Device 206 Communication Equipment 210 Bus

Claims

1. A receiver that receives a QKD key generated through a key distillation process of QKD (Quantum Key Distribution) from a plurality of key generation nodes and stores the QKD key in a plurality of storage units corresponding to the plurality of key generation nodes; A control unit that exchanges identification information of the QKD key with a counterpart key management server device to identify the QKD key designated as a target for shaping processing between the counterpart key management server device and the counterpart key management server device; A numbering unit that assigns numbers to the QKD key so that the order of dividing the QKD key or combining the QKD key with a part of the QKD key that was not used in the previous shaping process is the same between the opposing key management server device based on the identification information of the QKD key; A shaping unit that performs a shaping process to shape the key length of the QKD key to a certain length by dividing the QKD key or combining the QKD key with a part of the QKD key that was not used in the previous shaping process in the order described above; A key management server device comprising:

2. Further comprising a user API (Application Programming Interface) unit that provides the QKD key shaped to a certain length to a user application; The key management server device according to claim 1.

3. The identification information of the QKD key includes an identifier of the QKD key and an identifier of a key generating node that generated the QKD key. The key management server device according to claim 1.

4. The control unit transmits the identification information of the QKD key to the opposing key management server device, and requests the opposing key management server device to number the QKD key so that the order is the same based on the identification information of the QKD key; When the shaping unit receives a notification from the opposing key management server device indicating that there is a QKD key identified by the identification information of the QKD key, the shaping unit performs a shaping process to shape the key length of the QKD key to a certain length by dividing the QKD key or combining the QKD key with a part of the QKD key that was not used in the previous shaping process in the order mentioned above. The key management server device according to claim 1.

5. When the control unit receives a notification from the opposing key management server device indicating that there is no QKD key identified by the identification information of the QKD key, the control unit searches for a QKD key to be designated as a target for shaping processing, in order of oldest generation time, among QKD keys that have been designated as a target for shaping processing for a certain period of time since they were designated as a target for shaping processing last time, or QKD keys that have never been designated as a target for shaping processing. The key management server device according to claim 4.

6. The control unit discards the designated QKD key a predetermined number of times as a target for shaping processing without receiving a notification from the opposing key management server device indicating that there is a QKD key identified by the identification information of the QKD key. The key management server device according to claim 4.

7. The control unit sequentially refers to the plurality of storage units according to designation order information indicating the order in which the QKD keys designated as targets for the shaping process are read from the plurality of storage units, and identifies the QKD keys designated as targets for the shaping process between the corresponding key management server device and the corresponding key management server device by exchanging identification information of the QKD keys read from the plurality of storage units according to the designation order information.

7. The key management server device according to claim 1.

8. The control unit transmits identification information of the QKD key designated as the target of the shaping process to the opposing key management server device, receives a response from the opposing key management server device indicating that the QKD key designated as the target of the shaping process exists, and the longer the waiting time for the response, the lower the ratio at which it is the turn to refer to the memory unit that stores the QKD key designated as the target of the shaping process. The key management server device according to claim 7.

9. A plurality of control units are provided for identifying the QKD keys stored in each of the plurality of storage units, between the corresponding key management server device, The identification information of the QKD key includes an identifier of the QKD key and an identifier of a key generating node that generated the QKD key, The shaping unit performs the division or the combination in the order for QKD keys having the same identifier of the key generation node included in the identification information of the QKD key. The key management server device according to claim 1.

10. A plurality of first key generation nodes that generate QKD keys generated through a key distillation process of QKD; a first key management server device connected to the plurality of first key generation nodes; a plurality of second key generation nodes that generate QKD keys generated via a QKD key distillation process; a second key management server device connected to the plurality of second key generation nodes and the first key management server device, The first key management server device is A receiving unit that receives the QKD key from the plurality of first key generation nodes and stores the QKD key in a plurality of storage units corresponding to the plurality of first key generation nodes, respectively; A control unit that identifies the QKD key designated as a target for shaping processing between the second key management server device and the second key management server device by exchanging identification information of the QKD key with the second key management server device; A numbering unit that assigns numbers to the second key management server device so that the order of dividing the QKD key or combining the QKD key with a part of the QKD key that was not used in the previous shaping process is the same between the second key management server device and the QKD key division unit based on the identification information of the QKD key; A shaping unit that performs a shaping process to shape the key length of the QKD key to a certain length by dividing the QKD key or combining the QKD key with a part of the QKD key that was not used in the previous shaping process in the order described above; A QKD system comprising:

11. A key management server device receives QKD keys generated through a key distillation process of QKD (Quantum Key Distribution) from a plurality of key generation nodes, and stores the QKD keys in a plurality of storage units corresponding to the plurality of key generation nodes; A step in which the key management server device exchanges identification information of the QKD key with a counterpart key management server device, thereby identifying the QKD key designated as a target for shaping processing between the counterpart key management server device and the counterpart key management server device; A step in which the key management server device assigns numbers to the opposing key management server device so that the order in which the QKD key is divided or the QKD key is combined with a part of the QKD key that was not used in the previous shaping process is the same between the opposing key management server device and the opposing key management server device based on the identification information of the QKD key; The key management server performs a shaping process to shape the key length of the QKD key to a certain length by dividing the QKD key or combining the QKD key with a part of the QKD key that was not used in the previous shaping process in the order described above; 16. A key management method comprising:

12. Computer, A receiver that receives a QKD key generated through a key distillation process of QKD (Quantum Key Distribution) from a plurality of key generation nodes and stores the QKD key in a plurality of storage units corresponding to the plurality of key generation nodes; A control unit that exchanges identification information of the QKD key with a counterpart key management server device to identify the QKD key designated as a target for shaping processing between the counterpart key management server device and the counterpart key management server device; A numbering unit that assigns numbers to the QKD key so that the order of dividing the QKD key or combining the QKD key with a part of the QKD key that was not used in the previous shaping process is the same between the opposing key management server device based on the identification information of the QKD key; A shaping unit that performs a shaping process to shape the key length of the QKD key to a certain length by dividing the QKD key or combining the QKD key with a part of the QKD key that was not used in the previous shaping process in the order described above; A program to function as a

Citation Information

Patent Citations

  • Method and apparatus for managing encryption key in private communication network

    JP2008306633A

  • Communication system, communication device, communication method, and program

    JP2015179989A

  • Quantum key distribution and data processing method and system

    JP2021503204A

  • Communication device, communication method, program, and communication system

    JP2022070059A

  • Key manager for QKD networks

    US20060062392A1