Key management device, cryptography communication system, key management method, and program
The key management device addresses the challenge of providing encryption keys to unspecified destinations by determining and distributing keys using quantum cryptography, optimizing key distribution and cost-effectiveness.
Patent Information
- Application Number
- JP2024031489
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-01
- Publication Date
- 2025-09-11
AI Technical Summary
Conventional quantum key distribution (QKD) technologies fail to provide an encryption key shared with an unknown or unspecified destination using quantum cryptography communication.
A key management device that determines the destination for encrypted data when destination information is undefined or specified in a list, and provides an encryption key using quantum cryptography communication.
Enables the provision of encryption keys to unknown or unspecified destinations, optimizing key distribution and reducing costs by selecting the most cost-effective or available keys.
Smart Images

Figure 2025133496000001_ABST
Abstract
Description
[Technical Field]
[0001] An embodiment of the present invention relates to a key management device, an encrypted communication system, a key management method, and a program. [Background technology]
[0002] Quantum Key Distribution (QKD) technologies are known that are performed between QKD devices connected by an optical fiber link. For example, when requesting an encryption key used to encrypt data, a technology is known in which an encryption key shared with a destination using quantum cryptography communication is requested by specifying one destination to decrypt the encrypted data. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent No. 6680791 Summary of the Invention [Problem to be solved by the invention]
[0004] However, in conventional techniques, when the destination of the encrypted data is unknown, it is not possible to provide an encryption key shared with the destination using quantum cryptography communication. [Means for solving the problem]
[0005] The key management device of an embodiment includes a processing unit that receives an encryption key request from a server device, in which destination information for data to be encrypted is undefined or specified in a list, and if the destination information is undefined, determines at least one destination for the data to be encrypted from settable destinations, and if the destination information is specified in a list, determines at least one destination for the data to be encrypted from the specified list, and sends a response including an encryption key to be used for encryption and transmission to the determined destination, and the destination of the data to be encrypted with the encryption key. [Brief explanation of the drawings]
[0006] [Figure 1] FIG. 1 is a diagram showing an example of the device configuration of a QKD network according to a first embodiment. [Figure 2] FIG. 1 is a diagram showing an example of the device configuration of an encrypted communication system according to a first embodiment. [Figure 3] FIG. 2 is a diagram showing an example of the functional configuration of a key management device according to the first embodiment. [Figure 4] FIG. 2 is a diagram showing an example of the functional configuration of a server device according to the first embodiment. [Figure 5] FIG. 2 is a diagram showing an example of a key management method according to the first embodiment. [Figure 6] FIG. 3 is a diagram showing an example of providing an encryption key according to the first embodiment. [Figure 7] FIG. 2 is a diagram showing an example of data encryption using an encryption key according to the first embodiment. [Figure 8] FIG. 10 is a diagram showing an example of providing an encryption key according to the second embodiment. [Figure 9] FIG. 10 is a diagram showing an example of data encryption using an encryption key according to the second embodiment. [Figure 10] FIG. 2 is a diagram showing an example of the hardware configuration of the QKD device according to the first and second embodiments. [Figure 11] FIG. 2 is a diagram showing an example of the hardware configuration of a key management device and a server device according to the first and second embodiments. DETAILED DESCRIPTION OF THE INVENTION
[0007] Hereinafter, embodiments of a key management device, an encrypted communication system, a key management method, and a program will be described in detail with reference to the accompanying drawings.
[0008] First, examples of use cases for using encryption keys (decryption keys) will be described. Note that the following use cases are examples, and the method of using encryption keys is not limited to these use cases.
[0009] (Use Case) For example, there is a use case where a large amount of data (e.g., 1 GB) is stored locally in a remote location such as the cloud, and then downloaded locally and referenced when needed. The characteristics related to data and encryption keys are as follows:
[0010] (1) Local data is deleted after being stored in a remote location (reducing data management costs). Note that the data may be divided into multiple pieces and stored in multiple remote locations. (2) The data is decrypted and stored at a remote location. (3) When the data is needed locally, it is encrypted with a new encryption key obtained before downloading and downloaded locally. The downloaded data is then decrypted with a decryption key (the same key as the encryption key used for encryption).
[0011] For example, suppose there is a large amount of data stored locally. One use case is to reduce the cost of storing this data locally by securely transferring and storing it in the cloud. In this case, a specific destination for storing the data has not been decided. In other words, from the user's perspective, any destination is fine, or any of multiple candidate destinations is fine. In this case, it is possible that the user may wish to use the encryption key (decryption key) with the lowest price among multiple destinations.
[0012] (First embodiment) A cryptographic communication system according to a first embodiment will be described, which enables a cryptographic key shared with the destination to be provided using quantum cryptographic communication, even when the destination of the encrypted data is unknown, as in the use case described above.
[0013] First, an example of a network configuration of QKD devices included in a cryptographic communication system will be described.
[0014] [Example of a QKD network] 1 is a diagram showing an example of the device configuration of a QKD network 100 of the first embodiment. The QKD network 100 of the first embodiment includes QKD devices 1a to 1i. The QKD devices 1a to 1i are connected by QKD links (optical fiber links) as shown in FIG. 1.
[0015] Hereinafter, when the QKD devices 1a to 1i are not distinguished from one another, they will simply be referred to as the QKD device 1.
[0016] Each QKD device 1 shares a local key with the opposing QKD device 1 connected via an optical fiber link by quantum key distribution (QKD).
[0017] [Example of equipment configuration] Fig. 2 is a diagram showing an example of the device configuration of an encrypted communication system 200 of the first embodiment. In the example of Fig. 2, the case of QKD devices 1a to 1c of Fig. 1 will be described as an example. The encrypted communication system 200 of the first embodiment includes QKD devices 1a, 1b-1, 1b-2, and 1c, key management devices 2a to 2c, and server devices 3a and 3c. Note that QKD devices 1b-1 and 1b-2 correspond to QKD device 1b in Fig. 1 described above.
[0018] QKD devices 1a and 1b-1 share a local key by QKD. QKD device 1a provides the local key shared with counterpart QKD device 1b-1 to key management device 2a. QKD device 1b-1 provides the local key shared with counterpart QKD device 1a to key management device 2b. The operation of QKD devices 1b-2 and 1c is similar to that of QKD devices 1a and 1b-1, so a description thereof will be omitted.
[0019] The key management device 2a encrypts the encryption key used by the server device 3a (the decryption key used by the server device 3c) with a local key shared between the QKD devices 1a and 1b-1, and then transmits the encryption key encrypted with the local key to the key management device 2b.
[0020] When key management device 2b receives the encryption key encrypted with the local key from key management device 2a, it decrypts the encrypted encryption key using the local key shared between QKD devices 1a and 1b-1. Next, key management device 2b encrypts the encryption key using the local key shared between QKD devices 1b-1 and 1c. Then, key management device 2a transmits the encryption key encrypted with the local key to key management device 2c.
[0021] When the key management device 2c receives the encryption key encrypted with the local key from the key management device 2b, it decrypts the encrypted encryption key using the local key shared between the QKD devices 1b-2 and 1c.
[0022] The server device 3a encrypts the data using the encryption key provided by the key management device 2a, and transmits the encrypted data to the server device 3c. The server device 3a is, for example, a local server device.
[0023] The server device 3c receives the encrypted data from the server device 3c and decrypts the data using the decryption key (the same key as the encryption key used for encryption) provided by the key management device 2c. The server device 3c is, for example, a storage server device of a cloud service provider.
[0024] Hereinafter, when there is no need to distinguish between the key management devices 2a to 2c, they will simply be referred to as the key management device 2. Similarly, when there is no need to distinguish between the server devices 3a and 3c, they will simply be referred to as the server device 3.
[0025] [Example of functional configuration] 3 is a diagram illustrating an example of the functional configuration of the key management device 2 according to the first embodiment. The key management device 2 according to the first embodiment includes a providing unit 21, a generating unit 22, a storage unit 23, a determining unit 24, a transfer processing unit 25, and a network IF processing unit 26.
[0026] The providing unit 21, the determining unit 24, the transfer processing unit 25, and the network IF processing unit 26 are realized by at least one processing unit. This processing unit includes, for example, a control unit and an arithmetic unit, and is realized by an analog or digital circuit, etc. The processing unit may be a central processing unit (CPU), a general-purpose processor, a microprocessor, a digital signal processor (DSP), an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination thereof.
[0027] When the server device 3 transmits encrypted data, the providing unit 21 provides the encryption key to the server device 3 in response to a request for the encryption key from the server device 3. When the server device 3 receives encrypted data, the providing unit 21 provides the decryption key to the server device 3 in response to a request for the decryption key from the server device 3.
[0028] The generation unit 22 generates an encryption key (a decryption key used by the server device 3 that is the destination of the encrypted data) to be used by the server device 3. The generation unit 22 is realized by, for example, a random number generator such as a QRNG (Quantum Random Number Generation) or the like.
[0029] The storage unit 23 stores the encryption key generated by the generation unit 22. The storage unit 23 is realized by, for example, a combination of a main storage device such as a ROM (Read Only Memory) and a RAM (Random Access Memory), and an auxiliary storage device such as an HDD (Hard Disk Drive) and a memory card.
[0030] The determination unit 24 determines the destination of the data to be encrypted. For example, when the destination information included in the encryption key request specifies ANY, the determination unit 24 determines at least one destination of the data to be encrypted from among settable destinations, and when the destination information specifies a list, the determination unit 24 determines at least one destination of the data to be encrypted from the specified list. Details of the determination process by the determination unit 24 will be described later.
[0031] The transfer processing unit 25 identifies the route to the shared encryption key destination using a routing protocol.
[0032] The network IF processing unit 26 identifies the next destination on the route identified by the transfer processing unit 25, and encrypts the encryption key with the above-mentioned local key. Then, the network IF processing unit 26 transmits the encrypted encryption key to the next destination via a wireless or wired communication IF.
[0033] 4 is a diagram showing an example of the functional configuration of the server device 3 according to the first embodiment. The server device 3 according to the first embodiment includes an application unit 31, a communication unit 32, an encryption processing unit 33, a decryption processing unit 34, and an acquisition unit 35.
[0034] At least one application runs in the application unit 31. Before transmitting encrypted data, the application requests an encryption key from the key management device 2 via the acquisition unit 35. Furthermore, at least one application runs in the application unit 31. The application requests a decryption key for decrypting encrypted data transmitted from another server device 3 from the key management device 2 via the acquisition unit 35.
[0035] The communication unit 32 transmits the encrypted data to the other server device 3. The communication unit 32 also receives the encrypted data from the other server device 3.
[0036] The encryption processing unit 33 encrypts data sent by an application using an encryption key. The decryption processing unit 34 decrypts encrypted data received by an application using a decryption key.
[0037] The acquisition unit 35 acquires an encryption key used to encrypt data or a decryption key used to decrypt encrypted data from the key management device 2 via a wireless or wired communication IF. For example, the acquisition unit 35 transmits an encryption key request to the key management device 2, in which the destination information of the data to be encrypted is designated as ANY or a list, and receives the encryption key from the key management device 2.
[0038] Next, the flow of the key management method of the encrypted communication system 200 of the first embodiment will be described.
[0039] [Key management method example] 5 is a diagram showing an example of the key management method of the first embodiment. First, the generation unit 22 generates an encryption key and stores the encryption key in the storage unit 23 (step S1). The encryption key generated by the generation unit 22 is shared with the QKD device 1 connected to the key management device 2 as a sharing destination by relaying encrypted data transmission using a local key provided by the QKD device 1.
[0040] When generating the encryption key in step S1, if a determination criterion (metric) to be used for determination by the determination unit 24 (described later) is determined, the generation unit 22 also stores the metric of the encryption key in the storage unit 23. For example, the metric stored in the storage unit 23 is the unit price of the encryption key determined for each shared key management device 2.
[0041] Next, the acquisition unit 35 transmits an encryption key request including the requested amount of encryption key and destination information specifying ANY as the destination of the data to be encrypted to the key management device 2 (step S2). Destination information specifying ANY indicates that no specific destination, such as the IP address of the server device 3, is specified, and the destination is undefined. In other words, destination information specifying ANY indicates that any destination that can be set by the key management device 2 is acceptable.
[0042] Next, the determination unit 24 determines the encryption key to be provided (step S3). Specifically, the determination unit 24 determines the encryption key to be provided based on a determination criterion (metric).
[0043] For example, an example of the decision criterion is whether or not the requested amount of encryption key can be provided by an encryption key shared with one other key management device 2. Specifically, for example, the remaining amount of key shared with destination A is 1 GB, and the remaining amount of key shared with destination B is 100 MB. If the key requested by the application of the server device 3 is 200 MB, the amount of key shared with destination B cannot satisfy the requested amount. Therefore, the decision unit 24 decides to provide the encryption key shared with destination A.
[0044] Another example of the determination criterion is whether, when the requested amount of encryption keys cannot be provided with an encryption key shared with one other key management device 2, the requested amount of encryption keys can be provided by combining multiple encryption keys with different sharing destinations. That is, the determination unit 24 determines the encryption key with the requested amount as the encryption key to be provided by combining multiple encryption keys with different sharing destinations, not limited to an encryption key shared with one other key management device 2.
[0045] Another example of a decision criterion is that if the unit price of an encryption key differs depending on the sharing party of the encryption key, multiple encryption keys with different sharing parties can be combined to provide the requested amount of encryption keys at the lowest price (cost).
[0046] The criteria used by the decision unit 24 are not limited to the above example, and may be determined arbitrarily.
[0047] Next, the providing unit 21 provides the requested amount of encryption keys requested in the encryption key request of step S1 to the server device 3 using the encryption key determined in step S3 (step S4). When providing the encryption keys to the server device 3 in step S4, the providing unit 21 also notifies the server device 3 of destination information of the data encrypted using the encryption keys (information indicating the sharing destination of the encryption key).
[0048] Fig. 6 is a diagram showing an example of providing an encryption key in the first embodiment. Fig. 7 is a diagram showing an example of encrypting data using an encryption key in the first embodiment. The example in Fig. 6 shows a case where a key management device 2a connected to QKD device 1a receives a 1 GB encryption key request with ANY specified from server device 3a via an API (Application Programming Interface) of Get_key(ANY, 1GB). The example in Fig. 6 shows a case where the determination unit 24 determines to provide to the key management device 2a 200 MB of an encryption key shared with key management device 2c connected to QKD device 1c, 300 MB of an encryption key shared with key management device 2f connected to QKD device 1f, and 500 MB of an encryption key shared with key management device 2i connected to QKD device 1i.
[0049] The name of the API that requests an encryption key is not limited to Get_key and may be any name, such as get_somkey.
[0050] That is, in the examples of Figures 6 and 7, 1 GB of data is divided into 200 MB, 300 MB, and 500 MB of data, and the 200 MB of data is encrypted and transmitted to server device 3c, the 300 MB of data is encrypted and transmitted to server device 3f, and the 500 MB of data is encrypted and transmitted to server device 3i.
[0051] For example, the encryption processing unit 33 of the server device 3a OTP (One Time Pad) encrypts 200MB of data using an encryption key shared with the key management device 2c connected to the QKD device 1c. Then, the communication unit 32 of the server device 3a transmits the OTP-encrypted 200MB of data to the server device 3c. The data transmitted to the servers 3f and 3i is also the same as that transmitted to the server device 3c.
[0052] For example, the servers 3c, 3f, and 3i are storage servers of a cloud service provider that provides data backup services. The decryption processing unit 34 of the servers 3c, 3f, and 3i decrypts (OTP decrypts) the received encrypted data using a decryption key (the same encryption key as used for encryption) and stores the decrypted data.
[0053] Next, when data stored in servers 3c, 3f, and 3i is to be downloaded to server 3a, the data is encrypted and transmitted to server 3a. That is, when application unit 31 of server 3a downloads data backed up to servers 3c, 3f, and 3i, it requests acquisition unit 35 to transmit a decryption key request requesting a 200 MB decryption key to be shared with server 3c, a 300 MB decryption key to be shared with server 3f, and a 500 MB decryption key to be shared with server 3i. Acquisition unit 35 transmits the decryption key request to server 3a and receives the decryption keys for each of servers 3c, 3f, and 3i from server 3a.
[0054] When the communication unit 32 of the server device 3a receives encrypted data from the server devices 3c, 3f, and 3i, the decryption processing unit 34 decrypts the encrypted data received from each of the server devices 3c, 3f, and 3i using the respective decryption keys.
[0055] As described above, in the key management device 2 of the first embodiment, the providing unit 21 receives an encryption key request from the server device 3 (acquiring unit 35) in which destination information for data to be encrypted is undefined (ANY is specified in the first embodiment) or is specified as a list. If the destination information is undefined, the determining unit 24 determines at least one destination for the data to be encrypted from among settable destinations, and if the destination information is specified as a list, the determining unit 24 determines at least one destination for the data to be encrypted from the specified list. Then, the providing unit 21 provides the requested encryption key from the server device 3 by transmitting a response including the encryption key to be used for encryption and transmission to the determined destination and the destination of the data to be encrypted with the encryption key.
[0056] As a result, according to the key management device 2 of the first embodiment, even if the destination of the encrypted data is not fixed, it is possible to provide an encryption key that is shared with the destination using quantum cryptography communication.
[0057] In the past, an application would request an encryption key by specifying a specific destination, but if the specific destination was not determined, the application could not receive an encryption key under the conventional technology. Furthermore, an application could not receive an encryption key if the remaining amount of the encryption key used for encrypted transmission to the specific destination was insufficient.
[0058] (Modification 1 of the first embodiment) Next, a first modification of the first embodiment will be described. In the description of the first modification, the same description as in the first embodiment will be omitted, and only differences from the first embodiment will be described. The device configuration and functional configuration of the encrypted communication system 200 of the first modification are the same as those of the first embodiment.
[0059] The first modification differs from the first embodiment in that the method of specifying a destination is not ANY, but multiple destinations (for example, a list of destinations) are specified. The first modification is applied, for example, to a case where an application running on the application unit 31 of the server device 3 does not narrow down the destination to which data is to be sent to one, but has several destinations as candidates.
[0060] According to the first modification, multiple destinations can be specified to request encryption keys from the key management device 2, so that the encryption keys to be used by an application can be narrowed down to the candidate destinations specified by the application. For example, if the multiple destinations are destinations A, B, and C, an encryption key shared with destinations A, B, or C that is determined according to the determination criteria of the key management device 2 can be received from the key management device 2.
[0061] (Modification 2 of the first embodiment) Next, a second modification of the first embodiment will be described. In the description of the second modification, the same description as in the first embodiment will be omitted, and only the differences from the first embodiment will be described. The device configuration and functional configuration of the encrypted communication system 200 of the second modification are the same as those of the first embodiment.
[0062] The second modification is different from the first embodiment in that, when an application running on the application unit 31 of the server device 3 requests an encryption key from the key management device 2, the application further specifies the above-mentioned decision criterion (metric).
[0063] For example, the acquisition unit 35 of the server device 3 sends an encryption key request to the key management device 2, which includes a requested encryption key size of 200 MB, destination information specifying ANY as the destination of the data to be encrypted, and "price" as the metric.
[0064] In this case, if the key management device 2 has a 1 GB encryption key shared with destination A and a 200 MB encryption key shared with destination B, the encryption keys for both destinations A and B satisfy the requested amount. When the encryption key shared with destination B is provided to the application unit 31 of the server device 3, the remaining amount of the encryption key shared with destination B becomes 0. If a request specifying destination B arrives immediately after this request, the key management device 2 will not be able to provide the key immediately.
[0065] Therefore, it is preferable for the key management device 2 to provide the encryption key shared with destination A to the server device 3.
[0066] Here, if the unit price of the encryption key shared with destination A is higher than the unit price of the encryption key shared with destination B, the decision unit 24 of the key management device 2 decides to provide 200 MB of the encryption key shared with destination B to the server device 3 so that the price of the encryption key will be lower, since the metric ``price'' is specified by the server device 3.
[0067] In this way, according to the second modification, the encryption key to be provided can be determined not by the determination metric of the key management device 2 but by the determination metric of the server device 3 (application unit 31).
[0068] Although "price" is used as an example of the determination criterion (metric), any determination criterion (metric) may be used. For example, various metrics are conceivable as other determination criterion (metric), such as "the remaining amount of encryption keys stored in the key management device 2," "the speed at which encryption keys stored in the key management device 2 are shared with destinations," and "the consumption rate of encryption keys stored in the key management device 2." Based on the determination criterion, the determination unit 24 determines at least one destination so that the remaining amount of encryption keys stored in the key management device 2 is larger, the consumption rate of encryption keys stored in the key management device 2 is slower, or the sharing rate of encryption keys stored in the key management device 2 with destinations is faster. These metrics have the advantage of reducing the risk of encryption keys running out.
[0069] The decision criteria specified in the encryption key request may include at least one of: a larger remaining amount of encryption keys stored in the key management device 2; a slower consumption rate of encryption keys stored in the key management device 2; and a faster sharing rate of encryption keys stored in the key management device 2 with the destination.
[0070] (Modification 3 of the first embodiment) Next, a third modification of the first embodiment will be described. In the description of the third modification, the same description as in the first embodiment will be omitted, and only differences from the first embodiment will be described. The device configuration and functional configuration of the encrypted communication system 200 of the third modification are the same as those of the first embodiment.
[0071] The third modification is different from the first embodiment in that an application running on the application unit 31 of the server device 3 can further specify an option when requesting an encryption key from the key management device 2. The option in the third modification indicates, for example, whether a combination of multiple destinations is permitted instead of a single destination, by turning a flag on or off. If a combination of multiple destinations is permitted instead of a single destination, an option by turning a flag on or the like is further specified in the encryption key request.
[0072] For example, suppose that the key management device 2 has a 100 MB encryption key shared with destination A and a 100 MB encryption key shared with destination B. Suppose that a request for a 200 MB encryption key is received from the acquisition unit 35 of the server device 3, with the destination specified as ANY. In this case, if the option flag is ON, the provision unit 21 of the key management device 2 combines the encryption key shared with destination A and the encryption key shared with destination B to provide the 200 MB encryption key.
[0073] In addition, if the flag of the above option specified in the encryption key request is OFF and there is a shortage of encryption keys to be used for encrypted transmission at one destination, the providing unit 21 of the key management device 2 sends a response to the server device 3 indicating that the requested amount of encryption keys cannot be provided at one destination.
[0074] For example, Variation 3 can be combined with the above-described Variation 2. That is, an encryption key request including a requested encryption key size of 200 MB, an option indicating that a combination of multiple destinations is permitted, and a metric of "cheaper encryption key" may be transmitted to the key management device 2.
[0075] In this case, it is assumed that the key management device 2 has 200 MB of encryption keys shared with destination A, 100 MB of encryption keys shared with destination B, and 100 MB of encryption keys shared with destination C. It is also assumed that the price of the encryption key for destination A is the highest, and the price of the encryption key for destination B and the price of the encryption key for destination C are the same.
[0076] If the requested encryption key is 200 MB, the requested amount of encryption key can be met with just the encryption key shared with destination A, but the encryption key is expensive. On the other hand, the encryption keys for destinations B and C cannot meet the requested amount of encryption key. Therefore, since combinations of multiple destinations are allowed, the determination unit 24 provides the server device 3 with 100 MB each of the encryption key shared with destination B and the encryption key shared with destination C.
[0077] This makes it possible to provide the requested number of encryption keys while keeping the price of the encryption keys low. Of course, even when the providing unit 21 receives an encryption key request specifying an option that allows multiple combinations of destinations, it is not necessarily required to provide encryption keys for multiple combinations.
[0078] Furthermore, for example, the option may be specified to explicitly request a combination of multiple destinations (for example, two destinations) rather than a flag indicating that a combination of multiple destinations is permitted. That is, when a combination of multiple destinations is requested, the determination unit 24 determines two or more destinations as destinations for the data to be encrypted. Security can be further improved by an application running on the application unit 31 of the server device 3 explicitly requesting an encryption key shared with multiple destinations and distributing and storing data encrypted with each encryption key to different destinations.
[0079] (Second embodiment) Next, a second embodiment will be described. In the description of the second embodiment, the same description as in the first embodiment will be omitted, and only the differences from the first embodiment will be described. In the second embodiment, a case will be described in which encrypted data is stored in an external storage server device that does not communicate with the QKD network 100.
[0080] Fig. 8 is a diagram showing an example of providing an encryption key in the second embodiment. Fig. 9 is a diagram showing an example of encrypting data using an encryption key in the second embodiment. The difference in configuration from the first embodiment is that a storage server device 4 is further provided.
[0081] The example in Figure 8 shows a case where a key management device 2a connected to a QKD device 1a receives a request for a 1GB encryption key with ANY specified from a server device 3a via the API (Application Programming Interface) Get_key (ANY, 1GB).
[0082] 8, unlike the first embodiment, the encrypted data is encrypted and transmitted to the storage server device 4, and the encrypted data is stored in the storage server device 4. Then, the encryption key used to encrypt the data is encrypted and transmitted to the server devices 3c, 3f, and 3i. Note that the encryption key used to encrypt the data may be an encryption key generated by the generation unit 22 of the key management device 2, or may be an encryption key generated and obtained by another method.
[0083] That is, in the examples of Figures 8 and 9, a 1 GB encryption key is divided into 200 MB, 300 MB, and 500 MB encryption keys, and the 200 MB encryption key is encrypted and transmitted to server device 3c, the 300 MB encryption key is encrypted and transmitted to server device 3f, and the 500 MB encryption key is encrypted and transmitted to server device 3i.
[0084] For example, the encryption processing unit 33 of the server device 3a OTP (One Time Pad) encrypts the 200MB encryption key using the encryption key shared with the key management device 2c connected to the QKD device 1c. Then, the communication unit 32 of the server device 3a transmits the OTP-encrypted 200MB encryption key to the server device 3c. The data transmitted to the servers 3f and 3i is also the same as that transmitted to the server device 3c.
[0085] The decryption processing unit 34 of the server devices 3c, 3f, and 3i decrypts (OTP decrypts) the received encrypted encryption key using a decryption key (the same key as the encryption key used for encryption) and stores the decrypted encryption key.
[0086] Next, when the encryption keys stored in the servers 3c, 3f, and 3i are downloaded to the server 3a, the encryption keys are encrypted and transmitted to the server 3a. That is, when the application unit 31 of the server 3a downloads the encryption keys stored in the servers 3c, 3f, and 3i, the application unit 31 requests the acquisition unit 35 to transmit a decryption key request requesting a 200 MB decryption key to be shared with the server 3c, a 300 MB decryption key to be shared with the server 3f, and a 500 MB decryption key to be shared with the server 3i. The acquisition unit 35 transmits the decryption key request to the server 3a and receives the decryption keys for the servers 3c, 3f, and 3i from the server 3a.
[0087] When the communication unit 32 of the server device 3a receives the encrypted encryption keys from the servers 3c, 3f, and 3i, the decryption processing unit 34 decrypts the encrypted encryption keys received from the servers 3c, 3f, and 3i using the respective decryption keys. The communication unit 32 of the server device 3a downloads encrypted data from the storage server device 4. Then, the decryption processing unit 34 of the server device 3a decrypts the encrypted data using the decrypted encryption keys.
[0088] According to the second embodiment, even if the destination of the encryption key used to encrypt data (the location where the encryption key used to encrypt data is stored) is uncertain, it is possible to provide an encryption key used to encrypt and transmit the encryption key.
[0089] Finally, an example of the hardware configuration of the QKD device 1, the key management device 2, and the server device 3 of the first and second embodiments will be described.
[0090] [Example of hardware configuration] 10 is a diagram showing an example of the hardware configuration of the QKD device 1 of the first and second embodiments. The QKD device 1 of the first and second embodiments includes a control device 301, a main memory device 302, an auxiliary memory device 303, a display device 304, an input device 305, a quantum communication IF 306, and a classical communication IF 307.
[0091] The control device 301 , the main memory device 302 , the auxiliary memory device 303 , the display device 304 , the input device 305 , the quantum communication IF 306 and the classical communication IF 307 are connected via a bus 310 .
[0092] The control device 301 executes a program read from the auxiliary storage device 303 to the main storage device 302. The main storage device 302 is a memory such as a ROM and a RAM. The auxiliary storage device 303 is a HDD, a memory card, or the like.
[0093] The display device 304 displays the status of the QKD device 1, etc. The input device 305 accepts input from the user. The display device 304 and the input device 305 may be realized by a touch panel or the like having a display function and an input function. The display device 304 and the input device 305 may not be provided in the QKD device 1. In this case, for example, the display function and input function of an external terminal connected to the QKD device 1 are used.
[0094] The quantum communication IF 306 is an interface for connecting to a QKD link through which photons are transmitted. The classical communication IF 307 is an interface for connecting to a transmission path through which control signals are transmitted between the opposing QKD device 1 and a transmission path for communication with the key management device 2.
[0095] 11 is a diagram showing an example of the hardware configuration of the key management device 2 and the server device 3 according to the first and second embodiments. The key management device 2 and the server device 3 include a control device 401, a main storage device 402, an auxiliary storage device 403, a display device 404, an input device 405, and a communication IF 406.
[0096] The control device 401 , the main memory device 402 , the auxiliary memory device 403 , the display device 404 , the input device 405 and the communication IF 406 are connected via a bus 410 .
[0097] The control device 401 executes a program read from the auxiliary storage device 403 to the main storage device 402. The main storage device 402 is a memory such as a ROM and a RAM. The auxiliary storage device 403 is a HDD, a memory card, or the like.
[0098] The display device 404 displays the status of the key management device 2 (server device 3), etc. The input device 405 accepts input from a user. The display device 404 and the input device 405 may be realized by a touch panel or the like having a display function and an input function. The display device 404 and the input device 405 may not necessarily be provided in the key management device 2 (server device 3). In this case, for example, the display function and the input function of an external terminal connected to the key management device 2 (server device 3) are used.
[0099] The communication IF 406 is an interface for connecting to a transmission line.
[0100] The programs executed by the QKD device 1, key management device 2, and server device 3 of the first and second embodiments are provided as computer program products stored in installable or executable format files on computer-readable storage media such as CD-ROMs, memory cards, CD-Rs, and DVDs (Digital Versatile Discs).
[0101] In addition, the programs executed by the QKD device 1, key management device 2, and server device 3 of the first and second embodiments may be stored on a computer connected to a network such as the Internet and provided by being downloaded via the network.
[0102] Furthermore, the programs executed by the QKD device 1, key management device 2, and server device 3 of the first and second embodiments may be configured to be provided via a network such as the Internet without being downloaded.
[0103] Furthermore, the programs executed by the QKD device 1, key management device 2, and server device 3 of the first and second embodiments may be configured to be provided in advance by being stored in a ROM or the like.
[0104] The programs executed by the key management device 2 and the server device 3 of the first and second embodiments have a modular configuration including functions that can be realized by the programs, among the functional configurations of the key management device 2 and the server device 3 of the first and second embodiments. The functions realized by the programs are loaded into the main storage device 402 by the control device 401 reading and executing the programs from a storage medium such as the auxiliary storage device 403. In other words, the functions realized by the programs are generated on the main storage device 402.
[0105] Note that some or all of the functions of the key management device 2 and the server device 3 in the first and second embodiments may be realized by hardware such as an IC (Integrated Circuit). The IC is, for example, a processor that executes dedicated processing.
[0106] Furthermore, when each function is realized using a plurality of processors, each processor may realize one of the functions, or may realize two or more of the functions.
[0107] Although several 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 embodied 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 within the scope and spirit of the invention, and are also included in the scope of the invention and its equivalents as defined in the claims. [Explanation of symbols]
[0108] 1 QKD device 2 Key management device 3. Server equipment 4. Storage server equipment 100 QKD Networks 200 Encrypted Communication System 301 Control device 302 Main storage 303 Auxiliary storage device 304 Display device 305 Input Device 306 Quantum Communication Interface 307 Classical Communication IF 310 Bus 401 Control device 402 Main storage 403 Auxiliary storage 404 Display device 405 Input Device 406 Communication Interface 410 Bus
Claims
1. receiving an encryption key request from a server device in which destination information of the data to be encrypted is undefined or a list is specified; If the destination information is undefined, at least one destination of the data to be encrypted is determined from settable destinations, and if the destination information is specified as a list, at least one destination of the data to be encrypted is determined from the specified list; a processing unit for transmitting a response including an encryption key used for encrypted transmission to the determined destination and the destination of the data encrypted with the encryption key; A key management device comprising:
2. the encryption key request further includes a requested encryption key amount; the processing unit determines at least one of the destinations so as to satisfy the encryption key amount, and transmits a response including an encryption key of the encryption key amount used for encrypted transmission to the at least one of the destinations and the at least one of the destinations. The key management device according to claim 1 .
3. the encryption key request further includes a decision criterion used to determine the destination; The processing unit determines at least one of the destinations further based on the determination criteria. The key management device according to claim 1 or 2.
4. the unit price of the encryption key varies depending on the destination; the decision criterion is the price of an encryption key used for encrypted transmission to the at least one destination; the processing unit determines the at least one destination so that the price of the encryption key is lower; The key management device according to claim 3 .
5. the determination criteria include at least one of a remaining amount of encryption keys stored in the key management device, a consumption rate of the encryption keys stored in the key management device, and a sharing rate of the encryption keys stored in the key management device with a destination; the processing unit determines, based on the determination criterion, at least one of the destinations so that the remaining amount of encryption keys stored in the key management device is larger, the consumption rate of the encryption keys stored in the key management device is slower, or the speed at which the encryption keys stored in the key management device are shared with the destination is faster. The key management device according to claim 3 .
6. the encryption key request further includes information indicating whether a combination of multiple destinations is permitted; the processing unit determines one of the destinations when a combination of multiple destinations is not permitted; The key management device according to claim 1 or 2.
7. the encryption key request further includes information indicating a request for a combination of multiple destinations; When a combination of multiple destinations is requested, the processing unit determines two or more destinations as the destinations. The key management device according to claim 1 or 2.
8. The key management device according to claim 1 or 2; a QKD (Quantum Key Distribution) device connected to the key management device, the QKD device is included in a QKD network; The encryption key is shared to another key management device connected to the destination by relaying encrypted data transmission using a key shared by QKD between two opposing QKD devices. Cryptographic communication system.
9. at least one other key management device connected to the at least one destination; at least one other QKD device connected to the at least one other key management device; The cryptographic communication system according to claim 8, further comprising:
10. The key management device receives an encryption key request from the server device, in which destination information of the data to be encrypted is undefined or a list is specified; the key management device, when the destination information is undefined, determines at least one destination of the data to be encrypted from settable destinations, and when the destination information is specified as a list, determines at least one destination of the data to be encrypted from the specified list; the key management device transmits a response including an encryption key to be used for encrypted transmission to the determined destination and the destination of the data to be encrypted with the encryption key; Key management method.
11. On the computer, receiving an encryption key request from a server device in which destination information of data to be encrypted is undefined or specified as a list; When the destination information is undefined, at least one destination of the data to be encrypted is determined from settable destinations, and when the destination information is specified as a list, at least one destination of the data to be encrypted is determined from the specified list; transmitting a response including an encryption key to be used for encrypted transmission to the determined destination and the destination of the data encrypted with the encryption key; program.
Citation Information
Patent Citations
Method, apparatus and system for quantum key distribution
JP6680791B2