Cryptographic key generation device, cryptographic key generation program, and cryptographic key generation and deletion method
The encryption key generation device securely generates and erases keys by separating and expanding shared keys from quantum key distribution, ensuring complete key erasure and enhanced security in quantum cryptography.
Patent Information
- Application Number
- JP2021051694
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-03-25
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2041-03-25
AI Technical Summary
Conventional methods for storing and erasing encryption keys in quantum cryptography are insecure, as data can be partially restored from mass storage media, leading to potential security breaches.
An encryption key generation device that separates a shared key from quantum key distribution into a first key stored in nonvolatile memory and a second key stored in volatile memory, expanding the second key to match the first key's length, and calculating an encryption key through exclusive OR operations, allowing for complete erasure of keys by turning off power.
This solution ensures secure erasure of encryption keys and shared keys, preventing data leakage and enhancing communication security in quantum cryptography systems.
Smart Images

Figure 0007658558000001 
Figure 0007658558000002 
Figure 0007658558000003
Abstract
Description
[Technical field]
[0001] The present invention relates to an encryption key generating device, an encryption key generating program, and an encryption key generating / deleting method. [Background technology]
[0002] Conventionally, quantum cryptography has been used as a technology for realizing information-theoretically secure communications. Quantum cryptography consists of the sharing of encryption keys between data senders and receivers using quantum key distribution (QKD), and the encryption and decryption of data between data senders and receivers using one-time pad (OTP) cryptography. Quantum key distribution is a method of estimating the amount of leaked information by using the property that the quantum state of photons, which is the transmission medium, changes probabilistically when observed, and generating a cryptographic key (random number) based on the result (for example, see BB84: Non-Patent Document 1). One-time pad encryption is a method in which the sender encrypts data with an encryption key (pad), and the receiver decrypts the encrypted data with the encryption key, without using an encryption key that has already been used. For example, the Vernum one-time pad is used as an encryption / decryption process for OTP encryption, in which an exclusive OR operation is performed on each bit of the data to be transmitted with the encryption key on both the sender and receiver sides. Typically, when transmitting a large amount of data in quantum cryptography, the sender and receiver share a large amount of encryption keys in advance over a long period of time. In quantum cryptography, the encryption key is stored in a large-capacity storage medium and is erased after use, thereby ensuring the security of data. [Prior art documents] [Non-patent literature]
[0003] [Non-Patent Document 1] CH Bennett and G. Brassard, “Quantum cryptography: public-key distribution and coin tossing,” in Proceedings of the IEEE International Conference on Computers, Systems and Signal Processing (Institute of Electrical and Electronics Engineers, New York, 1984), pp. 175-179. Summary of the Invention [Problem to be solved by the invention]
[0004] When an encryption key is stored in a large-capacity storage medium as in quantum cryptography and then deleted after use, it is difficult to erase data (encryption key) using conventional storage media. For example, in conventional large-capacity storage media, it is often possible in principle to read data by simply erasing the management information, even if the data appears to be erased. Specifically, it may be possible to restore the data by examining the storage medium with a probe or by recovering the management information.
[0005] In addition, one method of erasing data from a storage medium is to overwrite it with arbitrary data multiple times, but this is not practical for the large-capacity storage media used in quantum cryptography because overwriting takes an extremely long time. As described above, in conventional quantum cryptography, the method of storing the encryption key directly on the storage medium does not completely erase the data, so it is possible to extract the data (encryption key) from the storage medium, posing a problem of creating a security hole in quantum cryptography communications.
[0006] Therefore, an object of the present invention is to provide an encryption key generation device, an encryption key generation program, and an encryption key generation / deletion method that are capable of generating an encryption key that can be safely deleted from a shared key that is generated by quantum key distribution and shared between a transmitter and a receiver. [Means for solving the problem]
[0007] In order to solve the above problems, the encryption key generation device of the present invention is an encryption key generation device that generates an encryption key to be used in one-time pad encryption from a shared key shared between a transmitter and a receiver that is generated by quantum key distribution, and is configured to include a shared key separation means, a key expansion means, and an encryption key calculation means.
[0008] In such a configuration, the encryption key generation device separates the shared key into a first key and a second key by the shared key separation means, stores the first key in the non-volatile storage means, and stores the second key in the volatile storage means. The second key is stored in the storage means which can be completely erased if the power is turned off. By storing the first key in the non-volatile storage means, it becomes possible to use the first key as it is even if a power outage occurs.
[0009] The encryption key generating device then expands the second key to the same key length as the first key by the key expansion means, and stores the expanded second key in the volatile storage means as the third key. The third key is stored in the storage means which can be completely erased when the power is turned off.
[0010] The encryption key generating device then uses the encryption key calculation means to calculate an encryption key by exclusive ORing the first key and the third key, and stores the calculated encryption key in the volatile storage means. The encryption key is stored in the storage means which can be completely erased when the power is turned off. This allows the encryption key generating device to completely erase the encryption key and part of the shared key used to generate the encryption key by turning off the power.
[0011] In order to solve the above-mentioned problems, the encryption key generation program of the present invention is configured to cause a computer to function as shared key separation means, key expansion means, and encryption key calculation means in order to generate an encryption key to be used in one-time pad encryption from a shared key shared between a transmitter and a receiver, which is generated by quantum key distribution.
[0012] In such a configuration, the encryption key generation program separates the shared key into a first key and a second key by the shared key separation means, stores the first key in the non-volatile storage means, and stores the second key in the volatile storage means. Then, the encryption key generation program causes the key expansion means to expand the second key to the same key length as the first key, and stores the expanded second key in the volatile storage means as the third key. Then, the encryption key generation device calculates an encryption key by the exclusive OR of the first key and the third key using the encryption key calculation means, and stores the encryption key in the volatile storage means.
[0013] In order to solve the above-mentioned problems, the present invention provides a method for generating and deleting an encryption key for use in one-time pad encryption from a shared key shared between a transmitter and a receiver, which is generated by quantum key distribution, and includes the steps of a shared key separation step, a key expansion step, an encryption key calculation step, and a key deletion step.
[0014] In this procedure, in the encryption key generation / deletion method, in a shared key separation step, the shared key is separated into a first key and a second key by a shared key separation means, the first key is stored in a non-volatile storage means, and the second key is stored in a volatile storage means. In the encryption key generation / deletion method, in the key expansion step, the second key is expanded by the key expansion means to the same key length as the first key, and is stored in the volatile storage means as the third key. In the encryption key generation / deletion method, in an encryption key calculation step, an encryption key is calculated by an encryption key calculation means using the exclusive OR of the first key and the third key, and the encryption key is stored in a volatile storage means. Furthermore, in the encryption key generation / deletion method, in the key deletion step, the encryption key output means deletes each generated key after using the encryption key. Effect of the Invention
[0015] The present invention provides the following excellent effects. According to the present invention, by turning off the power, it is possible to completely erase an encryption key and a part of a shared key for generating the encryption key, thereby making it possible to generate a securely erasable encryption key from a shared key generated by quantum key distribution. [Brief description of the drawings]
[0016] [Figure 1] 1 is an overall configuration diagram for explaining a configuration of a quantum cryptography system including an encryption key generation device according to an embodiment of the present invention. [Diagram 2] 1 is a functional block diagram showing a configuration of an encryption key generating device according to an embodiment of the present invention. [Figure 3A] 3 is an explanatory diagram for explaining a shared key separation process in the shared key separation means of FIG. 2; FIG. [Figure 3B] 3 is an explanatory diagram for explaining a key expansion process in the key expansion means of FIG. 2; [Figure 3C] 3 is an explanatory diagram for explaining an encryption key calculation process in the encryption key calculation means of FIG. 2; FIG. [Figure 4A] 4 is a flowchart showing an encryption key generating operation (encryption key generating method) of the encryption key generating device according to the embodiment of the present invention. [Figure 4B] 4 is a flowchart showing an encryption key output operation (encryption key erasing method) of the encryption key generating device according to the embodiment of the present invention. [Figure 5A] FIG. 1 is a schematic diagram for explaining a modified example (part 1) of a quantum cryptography system including an encryption key generating device according to an embodiment of the present invention. [Figure 5B] FIG. 11 is a schematic diagram for explaining a modified example (part 2) of a quantum cryptography system including an encryption key generating device according to an embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0017] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, an encryption key generating device, an encryption key generating program, and an encryption key generating / deleting method according to the present invention will be described in detail with reference to the drawings.
[0018] ≪Quantum cryptography system≫ The overall configuration of a quantum cryptography system including an encryption key generation device according to an embodiment of the present invention will be described with reference to Fig. 1. Fig. 1 is an overall configuration diagram for explaining the configuration of a quantum cryptography system including an encryption key generation device according to an embodiment of the present invention.
[0019] The quantum cryptography system 100 is a quantum cryptography system that generates an encryption key from a shared key that is sequentially generated by quantum key distribution (QKD), encrypts data (plain text), and transmits the encrypted data from a transmitter 3 to a receiver 4. The quantum cryptography system 100 comprises, as devices on the data transmitting side, a quantum key distribution device 1 (1S), an encryption key generation device 2 (2S), and a transmitter 3, and, as devices on the data receiving side, a quantum key distribution device 1 (1R), an encryption key generation device 2 (2R), and a receiver 4. Note that the quantum key distribution device 1S and the quantum key distribution device 1R, as well as the encryption key generation device 2S and the encryption key generation device 2R, are the same device, but the symbols "S" and "R" are added to distinguish between the transmitting side and the receiving side.
[0020] The quantum key distribution device 1 (1S, 1R) shares a key of a random number sequence by quantum key distribution (QKD). Quantum key distribution is a method of sharing a key (hereinafter referred to as a shared key K0) by transmitting and receiving photon pulses between the quantum key distribution device 1S and the quantum key distribution device 1R via optical fiber and extracting a safe and error-free random number sequence of a predetermined data length by key distillation. The key length of the shared key K0 is longer than the encryption key K4 used by the transmitter 3 and receiver 4 described below. Since quantum key distribution is a known technology, a detailed description thereof will be omitted here. The quantum key distribution device 1 (1S, 1R) outputs the successively generated shared key K0 to the encryption key generation device 2 (2S, 2R).
[0021] The encryption key generation device 2 (2S, 2R) generates an encryption key K4 for encrypting and decrypting data from the shared key generated by the quantum key distribution device 1 (1S, 1R). The encryption method of the quantum cryptography system 100 is an encryption method that does not use an encryption key that has been used once by quantum cryptography. Therefore, the encryption key generation device 2 has a function of storing multiple generated encryption keys K4.
[0022] The encryption key generation device 2 separates the shared key K0, which is sequentially generated by the quantum key distribution device 1, into a first key K1 and a second key K2. The key length of the first key K1 is the same as that of an encryption key K4 used in a transmitter 3 and a receiver 4, which will be described later. The encryption key generation device 2 stores the first key K1 in a non-volatile storage medium (e.g., SRAM (Static Random Access Memory), SSD (Solid State Drive), etc.). The encryption key generation device 2 stores the second key K2 in a volatile storage medium (e.g., DRAM (Dynamic Random Access Memory), etc.).
[0023] The encryption key generation device 2 generates a third key K3 by expanding the second key K2 so that the key length is the same as that of the first key K1, and stores the third key K3 in a volatile storage medium (DRAM).The encryption key generation device 2 then generates an encryption key K4 by performing an exclusive OR operation on the first key K1 and the third key K3, and stores the encryption key K4 in the volatile storage medium (DRAM). Then, the encryption key generation device 2 outputs the encryption key K4 to the transmitter 3 and the receiver 4 as a one-time pad. After outputting the encryption key K4, the encryption key generation device 2 deletes the encryption key K4 and the first key K1, the second key K2, and the third key K3 used to generate the encryption key K4. The configuration and operation of the encryption key generating device 2 will be described in detail later.
[0024] The transmitter 3 encrypts plaintext data and transmits it to the receiver 4 . The transmitter 3 encrypts the data by performing an exclusive OR operation between the encryption key K4 output from the encryption key generation device 2S and data having the same bit length as the encryption key K4. Here, the transmitter 3 encrypts the data with an encryption key K4 (pad), and then encrypts the data using a one-time pad (OTP) cipher that does not use the encryption key K4 that has been used once. The transmitter 3 transmits the encrypted data (ciphertext) to the receiver 4 via a data communication line.
[0025] The receiver 4 receives the encrypted data (ciphertext) from the transmitter 3 and decrypts it to the original data (plaintext). The receiver 4 decrypts the data by performing an exclusive-OR operation between the encryption key K4 output from the encryption key generation device 2R and shared with the encryption key generation device 2S and data of the same bit length as the encryption key K4. Here, the receiver 4 decrypts the encrypted data (ciphertext) with encryption key K4 (pad), and decrypts the data using one-time pad (OTP) encryption, which does not use encryption key K4 that has been used once.
[0026] As described above, the quantum cryptography system 100 does not use the shared key K0 generated sequentially by quantum key distribution (QKD) as the encryption key for encrypting / decrypting data, but instead uses the encryption key K4 generated by the encryption key generation device 2 from the shared key K0. The third key K3 is simply an extension of the second key, and therefore only has computational security as a key. However, the encryption key K4 generated by performing an exclusive OR operation between the first key K1 separated from the shared key K0 and the third key K3 has information-theoretic security because the first key K1 is part of the key generated by quantum key distribution. Therefore, the quantum cryptography system 100 can guarantee the security of data.
[0027] In addition, the encryption key generation device 2 separates the shared key K0 into a first key K1 and a second key K2, stores the first key K1 in a non-volatile storage medium and the second key in a volatile storage medium, and also stores the third key and encryption key K4, which are generated sequentially, in the volatile storage medium. This allows the encryption key generation device 2 to completely erase the second key K2, the third key K3, and the encryption key K4 by turning off the power. Even if the first key K1 stored in the non-volatile storage medium is leaked, it is difficult to deduce the third key K3, so that leakage of the encryption key K4 can be prevented.
[0028] <Configuration of the encryption key generation device> Next, the configuration of an encryption key generating device according to an embodiment of the present invention will be described with reference to Fig. 2 (and also with reference to Fig. 1 as necessary). Fig. 2 is a functional block diagram showing the configuration of an encryption key generating device according to an embodiment of the present invention.
[0029] The encryption key generation device 2 comprises a non-volatile storage means 20, a volatile storage means 21, a shared key input means 22, a shared key separation means 23, a key expansion means 24, an encryption key calculation means 25, and an encryption key output means 26.
[0030] The non-volatile storage means 20 is a memory that stores data and is capable of retaining data even when power is not supplied. For example, the non-volatile storage means 20 can be configured with an SRAM or the like. Here, the nonvolatile storage means 20 stores the first key K1 separated by the shared key separation means 23 in the first key storage area 20a. Since the nonvolatile storage means 20 stores only the first key K1, the entire memory of the nonvolatile storage means 20 corresponds to the first key storage area 20a. The first key K1 stored in the non-volatile storage means 20 is read out by the encryption key calculation means 25 in sequence. In addition, data is written, read, and erased from the nonvolatile storage means 20 by a memory controller (not shown).
[0031] The volatile storage means 21 is a volatile memory capable of retaining data while power is being supplied to the volatile storage means 21. For example, the volatile storage means 21 can be configured with a DRAM or the like. Here, the volatile storage means 21 stores the second key K2 separated by the shared key separation means 23 in the second key storage area 21a. The volatile storage means 21 also stores the third key K3 generated by the key expansion means 24 in the third key storage area 21b. The volatile storage means 21 also stores the encryption key K4 generated by the encryption key calculation means 25 in the encryption key storage area 21c.
[0032] The second keys K2 stored in the volatile storage means 21 are sequentially read out by the key expansion means 24. Moreover, the third keys K3 stored in the volatile storage means 21 are sequentially read out by the encryption key calculation means 25. Moreover, the encryption keys K4 stored in the volatile storage means 21 are sequentially read out by the encryption key output means 26. It should be noted that data is written, read and erased from the volatile storage means 21 by a memory controller (not shown).
[0033] The shared key input means 22 sequentially inputs the shared keys K0 shared by the quantum key distribution device 1. The shared key input means 22 outputs the input shared keys K0 to the shared key separation means 23 in sequence.
[0034] The shared key separation means 23 separates the shared key K0 inputted by the shared key input means 22 into a first key K1 and a second key K2. How the shared key K0 is separated is determined in advance in common between the encryption key generation devices 2 (2S, 2R) on the data transmission and reception sides. For example, the shared key separation means 23 extracts data from a predetermined bit position of the shared key K0 to generate the second key K2, and generates the remainder as the first key K1.
[0035] The shared key separation means 23 writes and stores the separated first key K1 in the first key storage area 20a of the non-volatile storage means 20 in association with consecutive indexes. In addition, the shared key separation means 23 writes and stores the separated second key K2 in the second key storage area 21a of the volatile storage means 21 in association with the same index as the first key K1.
[0036] When the shared key separation means 23 separates the shared key K0 into the first key K1 and the second key K2, it is preferable that the first key K1 is sufficiently longer than the second key K2 as shown in Fig. 3A. For example, the second key K2 is 1 / 10 or less, more preferably 1 / 100 or less, of the shared key K0. This is because the first key K1, which is the majority of the shared key K0 generated by quantum key distribution, is stored in the non-volatile storage means 20 to minimize data loss due to a power outage. The shared key separation means 23 notifies the key expansion means 24 that the second key K2 has been stored in the volatile storage means 21.
[0037] The key expansion means 24 expands the second key K2 stored in the volatile storage means 21 to the same key length as the first key K1. That is, as shown in Fig. 3B, the key expansion means 24 expands the second key K2, which has a short key length, to the same key length as the first key K1 to generate the third key K3. For example, the key expansion means 24 can expand the key length by using a key expansion method of the Advanced Encryption Standard (AES). The key expansion means 24 writes and stores the third key K3, which is obtained by expanding the key length of the second key K2, in the third key storage area 21b of the volatile storage means 21 in association with the same index as the second key K2. The key expansion means 24 notifies the encryption key calculation means 25 that the third key K3 has been stored in the volatile storage means 21.
[0038] The encryption key calculation means 25 calculates the encryption key K4 by the exclusive OR of the first key K1 and the third key K3. Specifically, as shown in FIG. 3C, the encryption key calculation means 25 calculates the encryption key K4 by performing an exclusive OR operation on the first key K1 stored in the non-volatile storage means 20 and the third key K3 stored in the volatile storage means 21 and having the same index as the first key K1. The encryption key calculation means 25 writes and stores the calculated encryption key K4 in the encryption key storage area 21c of the volatile storage means 21 in association with the same index as the first key K1. The third key K3 only has computational security, but the encryption key K4 generated by performing an exclusive-OR operation between the third key K3 and the first key K1 has information-theoretic security.
[0039] The encryption key output means 26, upon receiving an external instruction, sequentially reads out the encryption keys K4 stored in the volatile storage means 21 and outputs them to the outside. In the case of the encryption key generation device 2S on the data transmission side, the encryption key calculation means 25 outputs the read encryption key K4 to the transmitter 3. In the case of the encryption key generation device 2R on the data reception side, the encryption key calculation means 25 outputs the read encryption key K4 to the receiver 4.
[0040] After outputting the encryption key K4, that is, after using the encryption key K4, the encryption key output means 26 deletes (erases) the first key K1, the second key K2, the third key K3 and the encryption key K4, which have the same index. Here, the encryption key output means 26 deletes the first key K1, the second key K2, the third key K3 and the encryption key K4 via a memory controller (not shown).
[0041] However, for management reasons, even if each key is deleted, it may remain in memory as data, and the encryption key K4 may be leaked due to a probe attack or the like. Therefore, the encryption key generation device 2 turns off the power after data transmission from the transmitter 3 to the receiver 4 is completed. This completely erases the second key K2, the third key K3, and the encryption key K4 stored in the volatile storage means 21. Furthermore, although the first key K1 may remain in the non-volatile storage means 20, even if the first key K1 is leaked, it is difficult to estimate the third key K3, and therefore leakage of the encryption key K4 can be prevented.
[0042] Since the encryption key generation device 2 stores the second key K2, the third key K3, and the encryption key K4 in the volatile storage means 21, if the power supply is lost due to a power outage or the like, the second key K2, the third key K3, and the encryption key K4 will be erased. However, most of the shared key K0 shared by quantum key distribution (QKD) is held as the first key K1. In other words, if the power supply is restored after an unexpected power loss, only the second key K2 needs to be shared again between the encryption key generation devices 2S and 2R.
[0043] For example, after power is restored, the encryption key generation device 2 uses the first key K1, which is stored in the first key memory area 20a of the restored encryption key generation device 2 and shared between the encryption key generation devices 2S and 2R, as a random number source to generate the second key K2 from a predetermined bit position, and then generates the third key K3 and the encryption key K4 in sequence. Also, for example, a random number sequence having the key length of the second key K2 may be generated by the quantum key distribution devices 1S, 1R through quantum key distribution and output to the encryption key generation devices 2S, 2R. In this case, the shared key separation means 23 does not separate the input key, but stores it in the second key storage area 21a of the volatile storage means 21, and sequentially generates the third key K3 and the encryption key K4.
[0044] <Operation of the encryption key generating device> Next, an encryption key generating operation (encryption key generating method) of the encryption key generating device according to an embodiment of the present invention will be described with reference to Fig. 4A (for the configuration, refer to Fig. 2 as appropriate). Fig. 4A is a flowchart showing the encryption key generating operation (encryption key generating method) of the encryption key generating device according to an embodiment of the present invention.
[0045] In step S1, the shared key input means 22 inputs the shared key K0 shared by the quantum key distribution device 1. In step S2, the shared key separation means 23 separates the shared key K0 input in step S1 into a first key K1 and a second key K2. At this time, the shared key separation means 23 makes the first key K1 sufficiently long relative to the second key K2.
[0046] In step S3, the shared key separation means 23 writes and stores the first key K1 separated in step S2 in the first key storage area 20a of the non-volatile storage means 20 in association with successive indexes. In step S4, the shared key separation means 23 writes and stores the second key K2 separated in step S2 in the second key storage area 21a of the volatile storage means 21 in association with the same index as the first key K1. The order of steps S3 and S4 may be interchanged.
[0047] In step S5, the key expansion means 24 expands the second key K2 stored in the volatile storage means 21 in step S4 to the same key length as the first key K1, to generate a third key K3. In step S6, the key expansion means 24 writes and stores the third key K3 generated in step S5 in the third key storage area 21b of the volatile storage means 21 in association with the same index as the second key K2.
[0048] In step S7, the encryption key calculation means 25 generates the encryption key K4 by performing an exclusive OR operation on the first key K1 stored in the non-volatile storage means 20 in step S3 and the third key K3 stored in the volatile storage means 21 in step S6. At this time, the encryption key calculation means 25 generates the encryption key K4 from the first key K1 and the third key K3 that correspond to each other at the same index.
[0049] In step S8, the encryption key calculation means 25 writes and stores the encryption key K4 generated in step S7 in the encryption key storage area 21c of the volatile storage means 21 in association with the same index as the first key K1.
[0050] In step S9, the encryption key calculation means 25 judges whether or not a predetermined number of encryption keys K4 have been generated. Note that the predetermined number of encryption keys K4 is a number that is set in advance depending on the length of data to be transmitted.
[0051] If the number of encryption keys K4 does not reach the predetermined number (No in step S9), the encryption key generating device 2 returns to step S1 and continues the operation. On the other hand, if the number of encryption keys K4 reaches the predetermined number (Yes in step S9), the encryption key generating device 2 ends the encryption key generating operation. As a result, the volatile storage means 21 stores a predetermined number of encryption keys K4.
[0052] Next, an encryption key output operation (encryption key erasure method) of the encryption key generation device according to an embodiment of the present invention will be described with reference to Fig. 4B (for the configuration, refer to Fig. 2 as appropriate). Fig. 4B is a flowchart showing the encryption key output operation (encryption key erasure method) of the encryption key generation device according to an embodiment of the present invention. That is, the operation in FIG. 4B is an operation for outputting the encryption key in response to an external instruction after the encryption key is generated in the operation in FIG. 4A and stored in the volatile storage means 21.
[0053] In step S10, the encryption key output means 26 reads out the encryption keys K4 stored in the volatile storage means 21 in the order of their indexes. In step S11, the encryption key output means 26 outputs the encryption key K4 read in step S10 to the outside (the transmitter 3 or the receiver 4).
[0054] In step S12, after outputting the encryption key K4 in step S11, the encryption key output means 26 deletes the first key K1, the second key K2, the third key K3 and the encryption key K4 which have the same index.
[0055] In step S13, the encryption key output means 26 judges whether or not a predetermined number of encryption keys K4 have been output. Note that the predetermined number of encryption keys K4 is a number that is set in advance depending on the length of data to be transmitted, and is the same as the predetermined number in step S9 (FIG. 4A). If the number of outputs of the encryption key K4 does not reach the predetermined number (No in step S13), the encryption key generating device 2 returns to step S10 and continues the operation. On the other hand, if the number of outputs of the encryption key K4 reaches the predetermined number (Yes in step S13), the encryption key generating device 2 ends the encryption key output operation.
[0056] After this operation is completed, the power supply to the encryption key generating device 2 is turned off. This enables the encryption key generating device 2 to completely erase the encryption key K4 and the key for generating the encryption key K4, thereby preventing the leakage of the encryption key K4.
[0057] Although the configuration and operation of the encryption key generating device 2 according to the embodiment of the present invention have been described above, the present invention is not limited to this embodiment. Here, the encryption key generation device 2 is configured as an independent device between the quantum key distribution device 1S and the transmitter 3, and between the quantum key distribution device 1S and the transmitter 3, as shown in FIG.
[0058] However, like a transmitter 3B and a receiver 4B shown in a quantum cryptography system 100B in FIG. 5A, the cryptographic key generating device 2 may be provided inside the transmitter 3B and the receiver 4B. Also, like a quantum key distribution device 1B shown in a quantum cryptography system 100C in FIG. 5B, a configuration may be adopted in which an encryption key generation device 2 is provided inside the quantum key distribution device 1B. [Explanation of symbols]
[0059] 1 Quantum key distribution device 2 Encryption key generation device 20 Non-volatile storage means 21 Volatile storage means 22 Shared key input method 23 Shared key separation means 24 Key Expansion Method 25 Encryption key calculation means 26 Encryption key output means 3 Transmitter 4 Receiver 100 Quantum Cryptography System
Claims
1. 1. An encryption key generation device that generates an encryption key used in one-time pad encryption from a shared key that is generated by quantum key distribution and shared between a transmitter and a receiver, comprising: a shared key separation means for separating the shared key into a first key and a second key, storing the first key in a non-volatile storage means, and storing the second key in a volatile storage means; a key expansion means for expanding the second key to a key length equal to that of the first key and storing the expanded second key in a volatile storage means as a third key; an encryption key calculation means for calculating the encryption key by an exclusive OR of the first key and the third key, and storing the encryption key in a volatile storage means; 1. An encryption key generating device comprising:
2. 2. The encryption key generating device according to claim 1, wherein the shared key separation means separates the shared key into the first key having the same key length as the encryption key and the second key having a key length shorter than that of the first key.
3. A computer is provided to generate an encryption key for use in a one-time pad encryption from a shared key generated by quantum key distribution and shared between a transmitter and a receiver. a shared key separation means for separating the shared key into a first key and a second key, storing the first key in a non-volatile storage means, and storing the second key in a volatile storage means; a key expansion means for expanding the second key to a key length equal to that of the first key and storing the expanded second key in a volatile storage means as a third key; an encryption key calculation means for calculating the encryption key by an exclusive OR of the first key and the third key, and storing the encryption key in a volatile storage means; A cryptographic key generation program to function as a
4. A method for generating and deleting an encryption key for use in one-time pad cryptography from a shared key generated by quantum key distribution and shared between a transmitter and a receiver, comprising the steps of: a shared key separation step of separating the shared key into a first key and a second key by a shared key separation means, storing the first key in a non-volatile storage means, and storing the second key in a volatile storage means; a key expansion step of expanding the second key to the same key length as the first key by a key expansion means and storing the expanded second key in a volatile storage means as a third key; an encryption key calculation step of calculating the encryption key by an encryption key calculation means using an exclusive OR of the first key and the third key, and storing the encryption key in a volatile storage means; a key erasing step of erasing each generated key by the encryption key output means after using the encryption key; 11. A method for generating and deleting an encryption key, comprising:
Citation Information
Patent Citations
Long-code and high-speed private key amplification method for key distribution of continuous variable quantum
CN108306729A
Coherent state-based quantum cryptography via a wavelength division multiplexing communication network that performs optical amplification.
JP2007511178A