WO2023218575A1 - 鍵交換システム、拠点装置、qkd装置、方法、及びプログラム - Google Patents

鍵交換システム、拠点装置、qkd装置、方法、及びプログラム Download PDF

Info

Publication number
WO2023218575A1
WO2023218575A1 PCT/JP2022/019988 JP2022019988W WO2023218575A1 WO 2023218575 A1 WO2023218575 A1 WO 2023218575A1 JP 2022019988 W JP2022019988 W JP 2022019988W WO 2023218575 A1 WO2023218575 A1 WO 2023218575A1
Authority
WO
WIPO (PCT)
Prior art keywords
key
base
qkd
random number
exchange system
Prior art date
Application number
PCT/JP2022/019988
Other languages
English (en)
French (fr)
Inventor
優太郎 清村
盛 知加良
鉄太郎 小林
浩司 千田
勝行 夏川
篤 谷口
大介 白井
耕一 高杉
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2022/019988 priority Critical patent/WO2023218575A1/ja
Publication of WO2023218575A1 publication Critical patent/WO2023218575A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner

Definitions

  • the present disclosure relates to a key exchange system, a base device, a QKD device, a method, and a program.
  • Encryption technologies that cannot be decrypted even by quantum computers include post-quantum cryptography (PQC) and quantum key distribution (QKD).
  • PQC post-quantum cryptography
  • QKD quantum key distribution
  • the BB84 method is known as a typical QKD protocol (for example, Non-Patent Document 1).
  • the BB84 method is a method for transmitting and sharing 1-bit key information expressed by the polarization and phase of a single photon.
  • the present disclosure has been made in view of the above points, and aims to provide a technology that can perform secure key exchange using the QKD protocol.
  • a key exchange system includes a plurality of QKD devices that execute a quantum key distribution protocol that includes at least error correction, and a plurality of base devices that perform encrypted communication with each other.
  • the base device includes a key generation unit configured to generate an encryption key for performing encrypted communication with another base device based on information received from the QKD device.
  • the QKD device includes a QKD processing unit configured to execute the quantum key distribution protocol with another QKD device and generate a correction key from a ciphertext of the random number information, and a first transmitting unit configured to transmit information representing a result of base verification in the protocol to the base device.
  • the QKD protocol provides a technology that allows secure key exchange.
  • FIG. 2 is a diagram illustrating an example of a QKD protocol.
  • FIG. 3 is a diagram showing an example of key extraction.
  • FIG. 1 is a diagram showing an example of the overall configuration of a key exchange system according to the present embodiment.
  • FIG. 2 is a sequence diagram illustrating an example of processing executed by the key exchange system according to the present embodiment.
  • 1 is a diagram illustrating an application example of the overall configuration of a key exchange system according to the present embodiment.
  • FIG. 2 is a sequence diagram illustrating an application example of processing executed by the key exchange system according to the present embodiment.
  • 1 is a diagram showing an example of a hardware configuration of a computer.
  • FIG. 1 it is assumed that encrypted communication is performed between a base device (transmission node) located at a base on the data sending side and a base device (receiving node) located at the base on the data receiving side.
  • a QKD device transmission node
  • a QKD device reception node
  • the key (encryption key) used for encrypted communication between the base device (sending node) and the base device (receiving node) is the QKD protocol between the QKD device (sending node) and the QKD device (receiving node).
  • the QKD device transmitting node
  • the QKD device receiving node
  • the QKD device receiving node
  • Step 1 The sender generates random number information (a random bit string of a predetermined length).
  • Step 2 The sender randomly selects a base from two bases (+ base or ⁇ base) and encodes the bit string into photon polarization according to the base. At this time, the sender encodes the polarization of the photon according to Table 1 below.
  • Step 3 The sender transmits a photon train to the receiver via an optical transmission path.
  • Step 4 The receiver randomly selects a basis from two bases (+ basis or The bit value is determined by
  • Step 5 The receiver notifies the sender by which basis the photon was measured via a public communication channel.
  • Step 6 The sender transmits to the receiver via a public communication channel the part where the base selected by the sender matches the base notified by the receiver (for example, the position of the bit string where these bases match). Notify. Steps 5 to 6 above are also called base matching.
  • Step 7 The sender and receiver extract the bit strings of the portions where the mutually selected bases match, and generate an encryption key (key information) based on the extracted bit strings. For example, as shown in FIG. 2, if the first bit is the 0th bit and the bases selected by the sender and receiver match in the 1st, 5th, 7th, 10th, and 11th bits, The bit string "1100010" is extracted, and an encryption key (key information) is generated based on this bit string. Note that this bit string is also called a sieve key.
  • a sieve key is obtained, a part of this sieve key is extracted as a test bit and the presence or absence of eavesdropping is evaluated based on the bit error rate. If it is evaluated that there is no eavesdropping, error correction and confidentiality enhancement are performed. The process is executed to generate an encryption key (key information).
  • the encryption key used for encrypted communication is shared between the QKD device (sending node) and the QKD device (receiving node), and the base device (sending node) and the base device (receiving node) share this encryption key.
  • the encrypted key enables encrypted communication.
  • an unreliable QKD device is, for example, a QKD device in which there is a risk of leakage of key information.
  • the base device in order to keep the key information secret in the QKD device, the base device generates a secret key sk, and when the QKD device generates the key information, random number information encrypted with the secret key sk is used. .
  • the base device that receives the key information from the QKD device decrypts it with the secret key sk to obtain an encryption key for use in encrypted communication. This allows the key information to be kept secret in the QKD device.
  • the key exchange system includes multiple base devices 10 and multiple QKD devices 20.
  • the base device 10 present at the base on the data transmitting side will be referred to as a "base device 10A”
  • the base device 10 present at the base on the data receiving side will be referred to as a “base device 10B”.
  • the QKD device 20 present at the base on the data transmitting side is referred to as "QKD device 20A”
  • the QKD device 20 present at the base on the data receiving side is referred to as "QKD device 20B”.
  • each base device 10 and each QKD device 20 are communicably connected through a public communication channel, and the QKD devices 20 are connected through an optical transmission path.
  • the base device 10 is an information processing device (computer) that performs encrypted communication with base devices 10 located at other bases.
  • the base device 10 includes an inter-base communication processing section 101 , a secret key sharing processing section 102 , a random number generation processing section 103 , an encryption processing section 104 , and a key generation processing section 105 .
  • Each of these units is realized, for example, by one or more programs installed in the base device 10 causing a processor such as a CPU (Central Processing Unit) to execute the process.
  • a processor such as a CPU (Central Processing Unit)
  • the inter-base communication processing unit 101 executes encrypted communication with base devices 10 located at other bases and various processes for performing the encrypted communication.
  • the secret key sharing processing unit 102 executes processing for generating and sharing a secret key sk (secret key of the stream encryption system) with the base device 10 located at another base.
  • the random number generation processing unit 103 generates random number information r, which is a random bit string of a predetermined length.
  • the encryption processing unit 104 generates a ciphertext C by encrypting the random number information r using the secret key sk.
  • the key generation processing unit 105 uses the information received from the QKD device 20 (the bit number of the sieve key, or the bit number and a correction key C' to be described later) to create a link between the base device 10 located at another base and the base device 10 located at another base.
  • An encryption key D to be used for encrypted communication is generated.
  • data x encrypted with the secret key sk will also be expressed as Enc(x;sk)
  • data x' decrypted with the secret key sk will also be expressed as Dec(x';sk).
  • inter-site communication processing unit 101A secret key sharing processing unit 102, random number generation processing unit 103, encryption processing unit 104, and key generation processing unit 105 included in the base device 10A will be referred to as the “inter-site communication processing unit 101A”.
  • the inter-site communication processing unit 101, secret key sharing processing unit 102, random number generation processing unit 103, encryption processing unit 104, and key generation processing unit 105 included in the base device 10B are respectively referred to as the “inter-site communication processing unit 101B”, They are referred to as “private key sharing processing section 102B,” “random number generation processing section 103B,” “encryption processing section 104B,” and “key generation processing section 105B.” Note that the base device 10B does not need to include at least one of the random number generation processing section 103B and the encryption processing section 104B.
  • the QKD device 20 is an information processing device (computer) that executes a QKD protocol (eg, BB84 method, etc.) via an optical transmission path with a QKD device 20 located at another site.
  • the QKD device 20 includes a QKD processing section 201.
  • the QKD processing unit 201 is realized, for example, by a process in which one or more programs installed in the QKD device 20 are caused to be executed by a processor such as a CPU.
  • the QKD processing unit 201 executes a QKD protocol (including error correction, etc.) with a QKD device 20 located at another site via an optical transmission line, and obtains a correction key C' which is a key after error correction. Generate and share.
  • the QKD processing unit 201 included in the QKD device 20A will be referred to as a “QKD processing unit 201A”, and the QKD processing unit 201 included in the QKD device 20A will be referred to as a “QKD processing unit 201B”.
  • ⁇ Processing executed by the key exchange system An example of processing executed by the key exchange system according to this embodiment will be described with reference to FIG. 4. Note that the processes executed by the key exchange system according to this embodiment are broadly divided into advance key sharing (step S101), QKD key exchange (steps S102 to S109), and inter-site communication (steps S110 to S115). be done.
  • the secret key sharing processing unit 102A of the base device 10A and the secret key sharing processing unit 102B of the base device 10B generate and share the secret key sk of the stream encryption method (step S101).
  • the random number generation processing unit 103A of the base device 10A generates random number information r, which is a random bit string of a predetermined length (step S102).
  • the inter-base communication processing unit 101A of the base device 10A transmits the ciphertext C to the QKD device 20A (step S104).
  • the QKD processing unit 201A of the QKD device 20A encodes the ciphertext C (for example, encodes after setting the encoding rate according to the previous error rate (bit error rate)) (step S105),
  • the QKD protocol (including error correction, etc.) is executed with the QKD processing unit 201B of the QKD device 20B to generate and share the correction key C' (step S106).
  • the encoding may be performed by encoding a bit string representing the ciphertext C into the polarization (or phase) of a photon, similar to the existing BB84 method.
  • the QKD processing unit 201A of the QKD device 20A and the QKD processing unit 201B of the QKD device 20B calculate the bit error rate and evaluate the presence or absence of eavesdropping after obtaining the sieve key by base matching, similar to the existing BB84 method. If it is determined that there is no eavesdropping, error correction may be performed, and a correction key C' may be generated and shared. However, for error correction, a method in which the coding rate can be set (for example, a low density parity check code (LDPC)) is used.
  • LDPC low density parity check code
  • the QKD processing unit 201A of the QKD device 20A calculates the bit number of the sieve key obtained by the base matching in step S106 (in other words, the bit number of the part where the selected bases match between the QKD device 20A and the QKD device 20B). bit number) to the base device 10A (step S107).
  • the QKD processing unit 201B of the QKD device 20B transmits the bit number of the sieve key obtained by the base verification in step S106 above and the correction key C' obtained in step S106 above to the base device 10B. (Steps S108 to S109).
  • the key generation processing unit 105A of the base device 10A obtains the key r' using the random number information r generated in step S102 above and the bit number received from the QKD device 20A (step S110). That is, the key generation processing unit 105A extracts the bit string of the bit number from the bit string representing the random number information r, and sets the extracted bit string as the key r'.
  • the key generation processing unit 105B of the base device 10B obtains the key r' using the correction key C', bit number, and secret key sk received from the QKD device 20B (step S111). That is, the key generation processing unit 105B decrypts the correction key C' using the secret key sk (that is, Dec(C'; sk)), and then generates a bit string representing the decrypted bit string (that is, Dec(C'; sk)). The bit string with the relevant bit number is extracted from the bit string (bit string), and this extracted bit string is used as the key r'. Note that since sk is the secret key of the stream encryption system, Dec(C'; sk) is specifically the exclusive OR of C' and sk.
  • the key generation processing unit 105A of the base device 10A and the key generation processing unit 105B of the base device 10B share information necessary for the confidentiality enhancement process (step S112).
  • the confidentiality enhancement process is a process for improving confidentiality by sacrificing one bit, and is also called key distillation along with error correction and the like. Since the confidentiality enhancement process is an existing technology, detailed explanation thereof will be omitted.
  • the key generation processing unit 105A of the base device 10A performs confidentiality enhancement processing on the key r' and generates the encryption key D (step S113). Thereby, the base device 10A can obtain the encryption key D used for encrypted communication.
  • the key generation processing unit 105B of the base device 10B performs confidentiality enhancement processing on the key r' to generate an encryption key D (step S114). Thereby, the base device 10B can obtain the encryption key D used for encrypted communication.
  • the inter-site communication processing unit 101A of the base device 10A and the inter-site communication processing unit 101B of the base device 10B can perform encrypted communication using the encryption key D (step S115).
  • the key exchange system in the applied example includes a relay device 30 between the base device 10A and the base device 10B.
  • the relay device 30 is connected to the base device 10A through an optical transmission path, and is also connected to the base device 10B through an optical transmission path.
  • the QKD processing unit 201A of the QKD device 20A encodes the ciphertext C (for example, encodes after setting the encoding rate according to the previous error rate (bit error rate)) (step S205), A QKD protocol (including error correction, etc.) is executed to generate and share a correction key C' with the QKD processing unit 201B of the QKD device 20B via the relay device 30 (step S206).
  • the encoding may be performed by encoding a bit string representing the ciphertext C into the polarization (or phase) of a photon, similar to the existing BB84 method.
  • the QKD processing unit 201A of the QKD device 20A and the QKD processing unit 201B of the QKD device 20B calculate the bit error rate and evaluate the presence or absence of eavesdropping after obtaining the sieve key by base matching, similar to the existing BB84 method. If it is determined that there is no eavesdropping, error correction may be performed, and a correction key C' may be generated and shared. However, for error correction, a method in which the coding rate can be set (for example, a low density parity check code (LDPC), etc.) is used.
  • LDPC low density parity check code
  • the base device 10, the QKD device 20, and the relay device 30 can be realized by, for example, the hardware configuration of the computer 500 shown in FIG.
  • the computer 500 shown in FIG. 7 includes an input device 501, a display device 502, an external I/F 503, a communication I/F 504, a RAM (Random Access Memory) 505, a ROM (Read Only Memory) 506, and an auxiliary memory. It has a device 507 and a processor 508. Each of these pieces of hardware is communicably connected via a bus 509.
  • the input device 501 is, for example, a keyboard, mouse, touch panel, physical button, or the like.
  • the display device 502 is, for example, a display, a display panel, or the like. Note that the computer 500 does not need to include at least one of the input device 501 and the display device 502, for example.
  • the external I/F 503 is an interface with an external device such as a recording medium 503a.
  • the computer 500 can read from and write to the recording medium 503a via the external I/F 503.
  • Examples of the recording medium 503a include a flexible disk, a CD (Compact Disc), a DVD (Digital Versatile Disk), an SD memory card (Secure Digital memory card), and a USB (Universal Serial Bus) memory card.
  • the communication I/F 504 is an interface for connecting the computer 500 to a communication network.
  • the RAM 505 is a volatile semiconductor memory (storage device) that temporarily holds programs and data.
  • the ROM 506 is a nonvolatile semiconductor memory (storage device) that can retain programs and data even when the power is turned off.
  • the auxiliary storage device 507 is, for example, a storage device such as an HDD (Hard Disk Drive), an SSD (Solid State Drive), or a flash memory.
  • the processor 508 is, for example, an arithmetic device such as a CPU.
  • the base device 10, QKD device 20, and relay device 30 can implement the various processes described above by having the hardware configuration of the computer 500 shown in FIG. 7, for example.
  • the hardware configuration of the computer 500 shown in FIG. 7 is an example, and the hardware configuration of the computer 500 is not limited to this.
  • the computer 500 may include multiple auxiliary storage devices 507 and multiple processors 508, may not include some of the illustrated hardware, or may include various hardware other than the illustrated hardware. It may also have additional hardware.
  • the secret key sk is shared between the base devices 10, random number information is encrypted using the secret key sk, and the encrypted random number information is used.
  • the QKD protocol (including error correction, etc.) is executed between the QKD devices 20. Thereby, each base device 10 can obtain the encryption key D (QKD key) from the correction key C' obtained by the error correction.
  • the QKD device 20 since the QKD device 20 generates the correction key C' from the encrypted random number information, the random number information (key information) can be kept secret in the QKD device 20. Therefore, even if, for example, the QKD device 20 is unreliable, the safety of the entire system can be improved.
  • the method of sharing the secret key sk between the base device 10A and the base device 10B is not particularly limited, and an existing key encapsulation mechanism (KEM) or the like may be used.
  • KEM key encapsulation mechanism
  • NTRU quantum computer-resistant encryption
  • key sharing can also be performed with quantum computers.
  • Base device 20
  • QKD device 30
  • Relay device 101
  • Inter-base communication processing unit 102
  • Secret key sharing processing unit 103
  • Random number generation processing unit 104
  • Encryption processing unit 105
  • Key generation processing unit 201
  • QKD processing unit 500
  • Input device 502 Display device 503
  • External I/F 503a Recording medium
  • Communication I/F 505 RAM 506
  • ROM Auxiliary storage device 508 Processor 509 Bus

Abstract

本開示の一態様による鍵交換システムは、少なくとも誤り訂正が含まれる量子鍵配送プロトコルを実行する複数のQKD装置と、互いに暗号化通信を行う複数の拠点装置とが含まれる鍵交換システムであって、前記拠点装置は、前記QKD装置から受信した情報に基づいて、他の拠点装置との間で暗号化通信を行うための暗号化鍵を生成するように構成されている鍵生成部、を有し、前記QKD装置は、他のQKD装置との間で前記量子鍵配送プロトコルを実行し、乱数情報の暗号文から訂正鍵を生成するように構成されているQKD処理部と、前記量子鍵配送プロトコルにおける基底照合の結果を表す情報を前記拠点装置に送信するように構成されている第1の送信部と、を有する。

Description

鍵交換システム、拠点装置、QKD装置、方法、及びプログラム
 本開示は、鍵交換システム、拠点装置、QKD装置、方法、及びプログラムに関する。
 量子計算機の実用化により、既存暗号の安全性基盤となる数学的問題(素因数分解問題、離散対数問題)が現実的な時間で解けるようになることが知られている。このため、既存暗号であるRSA暗号や楕円曲線暗号が危殆化する恐れがあり、量子計算機でも解読できない暗号技術への移行が必要である。
 量子計算機でも解読できない暗号技術として、耐量子計算機暗号(PQC:Post-Quantum Cryptography)や量子鍵配送(QKD:Quantum Key Distribution)がある。QKDの代表的なプロトコルとしてBB84方式が知られている(例えば、非特許文献1)。BB84方式は、1ビットの鍵情報を光子1個の偏光や位相で表現して伝送・共有する方式である。
C.H. Bennett, G. Brassard, "Quantum Cryptography: Public Key Distribution and Coin Tossing", Proceedings of IEEE International Conference on Computers Systems and Signal Processing, Bangalore India, pp 175-179, December 1984.
 しかしながら、従来のBB84方式では、光子の送受信を行うQKD装置が鍵情報を持っているため、QKD装置が信頼できない場合、安全性が保証できないという問題点がある。
 本開示は、上記の点に鑑みてなされたもので、QKDプロトコルにより安全な鍵交換を行うことができる技術を提供することを目的とする。
 本開示の一態様による鍵交換システムは、少なくとも誤り訂正が含まれる量子鍵配送プロトコルを実行する複数のQKD装置と、互いに暗号化通信を行う複数の拠点装置とが含まれる鍵交換システムであって、前記拠点装置は、前記QKD装置から受信した情報に基づいて、他の拠点装置との間で暗号化通信を行うための暗号化鍵を生成するように構成されている鍵生成部、を有し、前記QKD装置は、他のQKD装置との間で前記量子鍵配送プロトコルを実行し、乱数情報の暗号文から訂正鍵を生成するように構成されているQKD処理部と、前記量子鍵配送プロトコルにおける基底照合の結果を表す情報を前記拠点装置に送信するように構成されている第1の送信部と、を有する。
 QKDプロトコルにより安全な鍵交換を行うことができる技術が提供される。
QKDプロトコルの一例を示す図である。 鍵抽出の一例を示す図である。 本実施形態に係る鍵交換システムの全体構成の一例を示す図である。 本実施形態に係る鍵交換システムが実行する処理の一例を示すシーケンス図である。 本実施形態に係る鍵交換システムの全体構成の応用例を示す図である。 本実施形態に係る鍵交換システムが実行する処理の応用例を示すシーケンス図である。 コンピュータのハードウェア構成の一例を示す図である。
 以下、本発明の一実施形態について説明する。
 <QKDプロトコルによる鍵交換>
 以下、QKDプロトコルの一例としてビット(0又は1)を偏光にエンコードするBB84方式を想定し、QKDプロトコルにより鍵交換を行う場合について、図1を参照しながら説明する。なお、BB84方式の詳細については、例えば、上記の非特許文献1等を参照されたい。
 図1では、データ送信側の拠点に存在する拠点装置(送信ノード)と、データ受信側の拠点に存在する拠点装置(受信ノード)との間で暗号化通信を行う場合を想定する。このとき、データ送信側の拠点にはQKD装置(送信ノード)が存在し、データ受信側の拠点にはQKD装置(受信ノード)が存在するものとする。拠点装置(送信ノード)と拠点装置(受信ノード)と間の暗号化通信に用いられる鍵(暗号化鍵)は、QKD装置(送信ノード)とQKD装置(受信ノード)との間でQKDプロトコルが実行されることで生成及び共有される。
 BB84方式では、以下の手順1~手順7により鍵が生成及び共有される。以下のBB84方式の説明では、QKD装置(送信ノード)を「送信者」、QKD装置(受信ノード)を「受信者」と呼ぶ。
 手順1:送信者は、乱数情報(所定の長さのランダムなビット列)を生成する。
 手順2:送信者は、2つの基底(+基底又は×基底)からランダムに基底を選択し、その基底に応じてビット列を光子の偏光に符号化(エンコード)する。このとき、送信者は、以下の表1により光子の偏光を符号化する。
Figure JPOXMLDOC01-appb-T000001
 すなわち、+基底を選択した場合、0を水平偏光、1を垂直偏光に符号化する。一方で、×基底を選択した場合、0を45°偏光、1を135°偏光に符号化する。なお、光子は光源から出力される。
 手順3:送信者は、光伝送路により光子列を受信者に送信する。
 手順4:受信者は、2つの基底(+基底又は×基底)からランダムに基底を選択し、光子を測定(つまり、選択した基底で光子をデコードし、光子検出器で光子を検出したか否かによりビット値を決定)する。
 手順5:受信者は、公開通信路によりどの基底により光子を測定したかを送信者に通知する。
 手順6:送信者は、自身が選択した基底と、受信者から通知された基底とが一致している部分(例えば、それらの基底が一致しているビット列の位置)を公開通信路により受信者に通知する。上記の手順5~手順6は基底照合とも呼ばれる。
 手順7:送信者及び受信者は、互いに選択した基底が一致している部分のビット列を抽出し、抽出したビット列に基づいて暗号化鍵(鍵情報)を生成する。例えば、図2に示すように、先頭のビットを0番目として、1番目、5番目、7番目、10番目、11番目のビットで送信者と受信者が選択した基底が一致している場合、ビット列「1100010」が抽出され、このビット列に基づいて暗号化鍵(鍵情報)が生成される。なお、このビット列はふるい鍵とも呼ばれる。一般に、ふるい鍵が得られた後、このふるい鍵の一部をテストビットとして抜き出してビット誤り率から盗聴の有無を評価した上で、盗聴が無いと評価された場合に誤り訂正と秘匿性増強処理とが実行されて暗号化鍵(鍵情報)が生成される。
 これにより、QKD装置(送信ノード)とQKD装置(受信ノード)との間で暗号化通信に用いられる暗号化鍵が共有され、拠点装置(送信ノード)と拠点装置(受信ノード)は、この暗号化鍵により暗号化通信を行うことができるようになる。
 上記で説明したように、BB84方式等の従来のQKDプロトコルではQKD装置が鍵情報を持つことになる。このため、QKD装置が信頼できない場合、安全性が保証できないという問題点がある、そこで、以下では、QKD装置に鍵情報を秘匿可能な鍵交換手法を提案する。なお、信頼できないQKD装置とは、例えば、鍵情報の漏洩等の恐れがあるQKD装置のことである。
 <提案手法>
 本提案手法では、QKD装置に鍵情報を秘匿するために、拠点装置で秘密鍵skを生成し、QKD装置で鍵情報を生成する際には当該秘密鍵skで暗号化された乱数情報を用いる。一方で、QKD装置から鍵情報を受け取った拠点装置は、秘密鍵skで復号することで、暗号化通信に用いる暗号化鍵を得る。これにより、QKD装置に鍵情報を秘匿することができる。
 以下、上記の提案手法によりQKDの鍵情報を共有する鍵交換システムについて説明する。
 <鍵交換システムの全体構成>
 本実施形態に係る鍵交換システムの全体構成の一例について、図3を参照しながら説明する。
 図3に示すように、本実施形態に係る鍵交換システムには、複数の拠点装置10と、複数のQKD装置20とが含まれる。以下、データ送信側の拠点に存在する拠点装置10を「拠点装置10A」、データ受信側の拠点に存在する拠点装置10を「拠点装置10B」とする。同様に、データ送信側の拠点に存在するQKD装置20を「QKD装置20A」、データ受信側の拠点に存在するQKD装置20を「QKD装置20B」とする。なお、各拠点装置10及び各QKD装置20は公開通信路によって通信可能に接続される共に、QKD装置20間は光伝送路によって接続される。
 拠点装置10は、他の拠点に存在する拠点装置10との間で暗号化通信を行う情報処理装置(コンピュータ)である。拠点装置10は、拠点間通信処理部101と、秘密鍵共有処理部102と、乱数生成処理部103と、暗号化処理部104と、鍵生成処理部105とを有する。これら各部は、例えば、拠点装置10にインストールされた1以上のプログラムが、CPU(Central Processing Unit)等のプロセッサに実行させる処理により実現される。
 拠点間通信処理部101は、他の拠点に存在する拠点装置10との間で暗号化通信及びその暗号化通信を行うための各種処理等を実行する。秘密鍵共有処理部102は、他の拠点に存在する拠点装置10との間で秘密鍵sk(ストリーム暗号方式の秘密鍵)を生成及び共有するための処理を実行する。乱数生成処理部103は、所定の長さのランダムなビット列である乱数情報rを生成する。暗号化処理部104は、乱数情報rを秘密鍵skで暗号化した暗号文Cを生成する。鍵生成処理部105は、QKD装置20から受信した情報(ふるい鍵のビット番号、又は、当該ビット番号と後述する訂正鍵C')を用いて、他の拠点に存在する拠点装置10との間の暗号化通信に用いる暗号化鍵Dを生成する。以下、データxを秘密鍵skで暗号化したものをEnc(x;sk)とも表し、データx'を秘密鍵skで復号したものをDec(x';sk)とも表す。また、以下、拠点装置10Aが有する拠点間通信処理部101、秘密鍵共有処理部102、乱数生成処理部103、暗号化処理部104及び鍵生成処理部105をそれぞれ「拠点間通信処理部101A」、「秘密鍵共有処理部102A」、「乱数生成処理部103A」、「暗号化処理部104A」及び「鍵生成処理部105A」とする。同様に、拠点装置10Bが有する拠点間通信処理部101、秘密鍵共有処理部102、乱数生成処理部103、暗号化処理部104及び鍵生成処理部105をそれぞれ「拠点間通信処理部101B」、「秘密鍵共有処理部102B」、「乱数生成処理部103B」、「暗号化処理部104B」及び「鍵生成処理部105B」とする。なお、拠点装置10Bは、乱数生成処理部103B及び暗号化処理部104Bの少なくとも一方を有していなくてもよい。
 QKD装置20は、他の拠点に存在するQKD装置20との間で光伝送路を介してQKDプロトコル(例えば、BB84方式等)を実行する情報処理装置(コンピュータ)である。QKD装置20は、QKD処理部201を有する。QKD処理部201は、例えば、QKD装置20にインストールされた1以上のプログラムが、CPU等のプロセッサに実行させる処理により実現される。QKD処理部201は、他の拠点に存在するQKD装置20との間で光伝送路を介してQKDプロトコル(誤り訂正等も含む)を実行し、誤り訂正後の鍵である訂正鍵C'を生成及び共有する。以下、QKD装置20Aが有するQKD処理部201を「QKD処理部201A」、QKD装置20Aが有するQKD処理部201を「QKD処理部201B」とする。
 <鍵交換システムが実行する処理>
 本実施形態に係る鍵交換システムが実行する処理の一例について、図4を参照しながら説明する。なお、本実施形態に係る鍵交換システムが実行する処理は、事前の鍵共有(ステップS101)、QKD鍵交換(ステップS102~ステップS109)、及び拠点間通信(ステップS110~ステップS115)に大別される。
 拠点装置10Aの秘密鍵共有処理部102Aと拠点装置10Bの秘密鍵共有処理部102Bは、ストリーム暗号方式の秘密鍵skを生成及び共有する(ステップS101)。
 拠点装置10Aの乱数生成処理部103Aは、所定の長さのランダムなビット列である乱数情報rを生成する(ステップS102)。
 拠点装置10Aの暗号化処理部104Aは、乱数情報rを秘密鍵skで暗号化した暗号文C、すなわちC=Enc(r;sk)を生成する(ステップS103)。なお、skはストリーム暗号方式の秘密鍵であるため、暗号文C=Enc(r;sk)は、具体的にはrとskの排他的論理和をとったものである。
 拠点装置10Aの拠点間通信処理部101Aは、暗号文CをQKD装置20Aに送信する(ステップS104)。
 QKD装置20AのQKD処理部201Aは、当該暗号文Cを符号化(例えば、これまでのエラーレート(ビット誤り率)に応じて符号化率を設定した上で符号化)し(ステップS105)、QKD装置20BのQKD処理部201Bとの間でQKDプロトコル(誤り訂正等も含む)を実行して訂正鍵C'を生成及び共有する(ステップS106)。なお、符号化は、既存のBB84方式等と同様に、暗号文Cを表すビット列を光子の偏光(又は位相)に符号化すればよい。また、QKD装置20AのQKD処理部201AとQKD装置20BのQKD処理部201Bは、既存のBB84方式等と同様に、基底照合によりふるい鍵を得た後にビット誤り率の計算及び盗聴有無の評価を行い、盗聴が無いと評価された場合に誤り訂正を行って訂正鍵C'を生成及び共有すればよい。ただし、誤り訂正には、符号化率を設定可能な手法(例えば、低密度パリティ検査符号(LDPC:Low Density Parity Check)等)を用いる。
 QKD装置20AのQKD処理部201Aは、上記のステップS106における基底照合により得られたふるい鍵のビット番号(言い換えれば、QKD装置20AとQKD装置20Bの間で選択した基底が一致している部分のビット番号)を拠点装置10Aに送信する(ステップS107)。
 一方で、QKD装置20BのQKD処理部201Bは、上記のステップS106における基底照合により得られたふるい鍵のビット番号と、上記のステップS106で得られた訂正鍵C'とを拠点装置10Bに送信する(ステップS108~ステップS109)。
 拠点装置10Aの鍵生成処理部105Aは、上記のステップS102で生成した乱数情報rとQKD装置20Aから受信したビット番号とを用いて、鍵r'を取得する(ステップS110)。すなわち、鍵生成処理部105Aは、乱数情報rを表すビット列の中から、当該ビット番号のビット列を抽出し、この抽出したビット列を鍵r'とする。
 拠点装置10Bの鍵生成処理部105Bは、QKD装置20Bから受信した訂正鍵C'及びビット番号と秘密鍵skとを用いて、鍵r'を取得する(ステップS111)。すなわち、鍵生成処理部105Bは、訂正鍵C'を秘密鍵skにより復号(つまり、Dec(C';sk))した上で、復号後のビット列(つまり、Dec(C';sk)を表すビット列)の中から、当該ビット番号のビット列を抽出し、この抽出したビット列を鍵r'とする。なお、skはストリーム暗号方式の秘密鍵であるため、Dec(C';sk)は、具体的にはC'とskの排他的論理和をとったものである。
 拠点装置10Aの鍵生成処理部105Aと拠点装置10Bの鍵生成処理部105Bは、秘匿性増強処理に必要な情報を共有する(ステップS112)。なお、秘匿性増強処理とは1ビットを犠牲にすることで秘匿性を向上させるための処理であり、誤り訂正等と共に鍵蒸留とも呼ばれる。秘匿性増強処理は既存技術であるため、その詳細な説明は省略する。
 拠点装置10Aの鍵生成処理部105Aは、鍵r'に秘匿性増強処理を実施し、暗号化鍵Dを生成する(ステップS113)。これにより、拠点装置10Aは、暗号化通信に用いられる暗号化鍵Dを得ることができる。
 同様に、拠点装置10Bの鍵生成処理部105Bは、鍵r'に秘匿性増強処理を実施し、暗号化鍵Dを生成する(ステップS114)。これにより、拠点装置10Bは、暗号化通信に用いられる暗号化鍵Dを得ることができる。
 以上により、拠点装置10Aの拠点間通信処理部101Aと拠点装置10Bの拠点間通信処理部101Bは暗号化鍵Dにより暗号化通信を行うことができる(ステップS115)。
 <応用例>
 以下、本実施形態の応用例の1つとして、QKD装置20間に中継装置30が存在する場合について説明する。なお、以下では、上記の実施形態と同様の箇所についてはその説明を省略し、上記の実施形態との相違点に関してのみ説明する。
 ・応用例における鍵交換システムの全体構成
 応用例における鍵交換システムの全体構成について、図5を参照しながら説明する。
 図5に示すように、応用例における鍵交換システムには、拠点装置10Aと拠点装置10Bとの間に中継装置30が存在する。中継装置30は、拠点装置10Aと光伝送路によって接続されていると共に、拠点装置10Bとも光伝送路によって接続されている。
 ・応用例における鍵交換システムが実行する処理
 応用例における鍵交換システムが実行する処理について、図6を参照しながら説明する。本応用例では、図6のステップS205~ステップS206の処理のみが、図4で説明したシーケンス図と異なる。そこで、以下では、ステップS205~ステップS206の処理のみ説明する。
 QKD装置20AのQKD処理部201Aは、当該暗号文Cを符号化(例えば、これまでのエラーレート(ビット誤り率)に応じて符号化率を設定した上で符号化)し(ステップS205)、QKD装置20BのQKD処理部201Bとの間で、中継装置30を介して、QKDプロトコル(誤り訂正等も含む)を実行して訂正鍵C'を生成及び共有する(ステップS206)。なお、符号化は、既存のBB84方式等と同様に、暗号文Cを表すビット列を光子の偏光(又は位相)に符号化すればよい。また、QKD装置20AのQKD処理部201AとQKD装置20BのQKD処理部201Bは、既存のBB84方式等と同様に、基底照合によりふるい鍵を得た後にビット誤り率の計算及び盗聴有無の評価を行い、盗聴が無いと評価された場合に誤り訂正を行って訂正鍵C'を生成及び共有すればよい。ただし、誤り訂正には、符号化率を設定可能な手法(例えば、低密度パリティ検査符号(LDPC等)を用いる。
 <各装置のハードウェア構成>
 拠点装置10、QKD装置20及び中継装置30は、例えば、図7に示すコンピュータ500のハードウェア構成により実現することができる。
 図7に示すコンピュータ500は、入力装置501と、表示装置502と、外部I/F503と、通信I/F504と、RAM(Random Access Memory)505と、ROM(Read Only Memory)506と、補助記憶装置507と、プロセッサ508とを有する。これらの各ハードウェアは、それぞれがバス509を介して通信可能に接続されている。
 入力装置501は、例えば、キーボード、マウス、タッチパネル、物理ボタン等である。表示装置502は、例えば、ディスプレイ、表示パネル等である。なお、コンピュータ500は、例えば、入力装置501及び表示装置502の少なくとも一方を有していなくてもよい。
 外部I/F503は、記録媒体503a等の外部装置とのインタフェースである。コンピュータ500は、外部I/F503を介して、記録媒体503aの読み取りや書き込み等を行うことができる。記録媒体503aとしては、例えば、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等が挙げられる。
 通信I/F504は、コンピュータ500を通信ネットワークに接続するためのインタフェースである。RAM505は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。ROM506は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。補助記憶装置507は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリ等のストレージ装置(記憶装置)である。プロセッサ508は、例えば、CPU等の演算装置である。
 本実施形態に係る拠点装置10、QKD装置20及び中継装置30は、例えば、図7に示すコンピュータ500のハードウェア構成を有することにより、上述した各種処理を実現することができる。なお、図7に示すコンピュータ500のハードウェア構成は一例であって、コンピュータ500のハードウェア構成はこれに限られるものではない。例えば、コンピュータ500は、複数の補助記憶装置507や複数のプロセッサ508を有していてもよいし、図示したハードウェアの一部を有していなくてもよいし、図示したハードウェア以外の様々なハードウェアを有していてもよい。
 <まとめ>
 以上のように、本実施形態に係る鍵交換システムでは、秘密鍵skを拠点装置10間で共有すると共にその秘密鍵skにより乱数情報を暗号化した上で、この暗号化後の乱数情報を用いてQKD装置20間でQKDプロトコル(誤り訂正等も含む)を実行する。これにより、各拠点装置10は、その誤り訂正により得られた訂正鍵C'から暗号化鍵D(QKDの鍵)を得ることができる。このとき、QKD装置20では暗号化された乱数情報から訂正鍵C'が生成されるため、QKD装置20に乱数情報(鍵情報)を秘匿することができる。このため、例えば、QKD装置20が信頼できない場合であっても、システム全体としての安全性を高めることができる。
 <秘密鍵skの共有>
 上記の実施形態では拠点装置10Aと拠点装置10Bの間で秘密鍵skを共有する方法に関しては特に限定しておらず、既存の鍵カプセル化メカニズム(KEM:Key Encapsulation Mechanism)等を用いてもよいが、例えば、格子暗号の一種であるNTRU等といった耐量子計算機暗号のKEMを用いることで、量子計算機に対しても鍵共有を行うことができる。
 本発明は、具体的に開示された上記の実施形態に限定されるものではなく、請求の範囲の記載から逸脱することなく、種々の変形や変更、既知の技術との組み合わせ等が可能である。
 10    拠点装置
 20    QKD装置
 30    中継装置
 101   拠点間通信処理部
 102   秘密鍵共有処理部
 103   乱数生成処理部
 104   暗号化処理部
 105   鍵生成処理部
 201   QKD処理部
 500   コンピュータ
 501   入力装置
 502   表示装置
 503   外部I/F
 503a  記録媒体
 504   通信I/F
 505   RAM
 506   ROM
 507   補助記憶装置
 508   プロセッサ
 509   バス

Claims (8)

  1.  少なくとも誤り訂正が含まれる量子鍵配送プロトコルを実行する複数のQKD装置と、互いに暗号化通信を行う複数の拠点装置とが含まれる鍵交換システムであって、
     前記拠点装置は、
     前記QKD装置から受信した情報に基づいて、他の拠点装置との間で暗号化通信を行うための暗号化鍵を生成するように構成されている鍵生成部、を有し、
     前記QKD装置は、
     他のQKD装置との間で前記量子鍵配送プロトコルを実行し、乱数情報の暗号文から訂正鍵を生成するように構成されているQKD処理部と、
     前記量子鍵配送プロトコルにおける基底照合の結果を表す情報を前記拠点装置に送信するように構成されている第1の送信部と、を有する鍵交換システム。
  2.  前記複数の拠点装置のうちデータ送信側の拠点に存在する拠点装置は、
     データ受信側の拠点に存在する拠点装置との間で秘密鍵を共有するように構成されている秘密鍵共有部と、
     所定の長さのランダムなビット列である乱数情報を生成するように構成されている乱数生成部と、
     前記秘密鍵により前記乱数情報を暗号化した暗号文を生成するように構成されている暗号化部と、
     前記暗号文を、データ送信側の拠点に存在するQKD装置に送信するように構成されている第2の送信部と、を更に有し、
     前記データ送信側の拠点に存在する拠点装置が有する前記鍵生成部は、
     前記基底照合の結果と前記乱数情報に基づいて前記暗号化鍵を生成するように構成されている請求項1に記載の鍵交換システム。
  3.  前記複数のQKD装置のうちデータ受信側の拠点に存在するQKD装置が有する前記第1の送信部は、
     前記基底照合の結果を表す情報と前記訂正鍵とを、前記データ受信側の拠点に存在する拠点装置に送信するように構成されており、
     前記データ受信側の拠点に存在する拠点装置が有する前記鍵生成部は、
     前記基底照合の結果と前記訂正鍵と前記秘密鍵とに基づいて前記暗号化鍵を生成するように構成されている請求項2に記載の鍵交換システム。
  4.  前記秘密鍵はストリーム暗号方式の鍵であり、
     前記秘密鍵共有部は、
     前記データ受信側の拠点に存在する拠点装置との間で、耐量子計算機暗号に基づく鍵カプセル化メカニズムにより前記秘密鍵を共有するように構成されている請求項2又は3に記載の鍵交換システム。
  5.  少なくとも誤り訂正が含まれる量子鍵配送プロトコルを実行する複数のQKD装置と、互いに暗号化通信を行う複数の拠点装置とが含まれる鍵交換システムにおける前記拠点装置であって、
     自身がデータ送信側の拠点に存在する場合、データ受信側の拠点に存在する拠点装置との間で秘密鍵を共有するように構成されている秘密鍵共有部と、
     自身がデータ送信側の拠点に存在する場合、所定の長さのランダムなビット列である乱数情報を生成するように構成されている乱数生成部と、
     自身がデータ送信側の拠点に存在する場合、前記秘密鍵により前記乱数情報を暗号化し、前記量子鍵配送プロトコルに用いられる暗号文を生成するように構成されている暗号化部と、
     自身がデータ送信側の拠点に存在する場合、前記暗号文を、データ送信側の拠点に存在するQKD装置に送信するように構成されている第1の送信部と、
     前記QKD装置から受信した情報に基づいて、他の拠点装置との間で暗号化通信を行うための暗号化鍵を生成するように構成されている鍵生成部と、
     を有する拠点装置。
  6.  少なくとも誤り訂正が含まれる量子鍵配送プロトコルを実行する複数のQKD装置と、互いに暗号化通信を行う複数の拠点装置とが含まれる鍵交換システムにおける前記QKD装置であって、
     他のQKD装置との間で前記量子鍵配送プロトコルを実行し、乱数情報の暗号文から訂正鍵を生成するように構成されているQKD処理部と、
     前記量子鍵配送プロトコルにおける基底照合の結果を表す情報を前記拠点装置に送信するように構成されている第1の送信部と、
     を有するQKD装置。
  7.  少なくとも誤り訂正が含まれる量子鍵配送プロトコルを実行する複数のQKD装置と、互いに暗号化通信を行う複数の拠点装置とが含まれる鍵交換システムに用いられる方法であって、
     前記拠点装置が、
     前記QKD装置から受信した情報に基づいて、他の拠点装置との間で暗号化通信を行うための暗号化鍵を生成する鍵生成手順、を実行し、
     前記QKD装置が、
     他のQKD装置との間で前記量子鍵配送プロトコルを実行し、乱数情報の暗号文から訂正鍵を生成するQKD処理手順と、
     前記量子鍵配送プロトコルにおける基底照合の結果を表す情報を前記拠点装置に送信する第1の送信手順と、を実行する方法。
  8.  コンピュータを、請求項1に記載の鍵交換システムに含まれる拠点装置又はQKD装置として機能させるプログラム。
PCT/JP2022/019988 2022-05-11 2022-05-11 鍵交換システム、拠点装置、qkd装置、方法、及びプログラム WO2023218575A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/019988 WO2023218575A1 (ja) 2022-05-11 2022-05-11 鍵交換システム、拠点装置、qkd装置、方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/019988 WO2023218575A1 (ja) 2022-05-11 2022-05-11 鍵交換システム、拠点装置、qkd装置、方法、及びプログラム

Publications (1)

Publication Number Publication Date
WO2023218575A1 true WO2023218575A1 (ja) 2023-11-16

Family

ID=88730072

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/019988 WO2023218575A1 (ja) 2022-05-11 2022-05-11 鍵交換システム、拠点装置、qkd装置、方法、及びプログラム

Country Status (1)

Country Link
WO (1) WO2023218575A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007511956A (ja) * 2003-11-13 2007-05-10 マジック テクノロジーズ,インコーポレーテッド 古典的なビット暗号化を有するqkd
JP2008154019A (ja) * 2006-12-19 2008-07-03 Nec Corp 共有情報の管理方法およびシステム
JP2008533910A (ja) * 2005-03-16 2008-08-21 マジック テクノロジーズ,インコーポレーテッド QKDをIPSecと統合する方法
WO2019107129A1 (ja) * 2017-11-29 2019-06-06 日本電信電話株式会社 鍵交換システム、端末装置、鍵交換方法、プログラム、および記録媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007511956A (ja) * 2003-11-13 2007-05-10 マジック テクノロジーズ,インコーポレーテッド 古典的なビット暗号化を有するqkd
JP2008533910A (ja) * 2005-03-16 2008-08-21 マジック テクノロジーズ,インコーポレーテッド QKDをIPSecと統合する方法
JP2008154019A (ja) * 2006-12-19 2008-07-03 Nec Corp 共有情報の管理方法およびシステム
WO2019107129A1 (ja) * 2017-11-29 2019-06-06 日本電信電話株式会社 鍵交換システム、端末装置、鍵交換方法、プログラム、および記録媒体

Similar Documents

Publication Publication Date Title
Van Assche Quantum cryptography and secret-key distillation
Biham et al. Security of quantum key distribution against all collective attacks
US8204224B2 (en) Wireless network security using randomness
US7570767B2 (en) Decoupling error correction from privacy amplification in quantum key distribution
JP2004274459A (ja) 量子鍵配送方法および通信装置
JP4696222B2 (ja) 量子暗号プロトコル
Li et al. Authenticated semi-quantum key distributions without classical channel
US20230299947A1 (en) Computer implemented system and method for sharing a common secret
Tao et al. Two semi-quantum direct communication protocols with mutual authentication based on bell states
Guan et al. A practical protocol for three-party authenticated quantum key distribution
US20130010953A1 (en) Encryption and decryption method
Das et al. Quantum secure direct communication with mutual authentication using a single basis
TWI487308B (zh) 量子通訊方法
WO2016199507A1 (ja) 鍵交換方法、鍵交換システム、鍵配送装置、通信装置、およびプログラム
Lai et al. Quantum direct secret sharing with efficient eavesdropping-check and authentication based on distributed fountain codes
Yuan et al. Scheme for deterministic secure quantum communication with three-qubit GHZ state
Shu Asymptotically optimal prepare-measure quantum key distribution protocol
WO2023218575A1 (ja) 鍵交換システム、拠点装置、qkd装置、方法、及びプログラム
JP7440108B2 (ja) 量子鍵配送のための方法及びシステム
WO2022239129A1 (ja) 鍵交換システム、機器、鍵交換方法、及びプログラム
Rodrigues et al. Oblivious transfer based on single-qubit rotations
US20060104447A1 (en) Discrete logarithm-based cryptography using the Shafarevich-Tate group
KR20230058685A (ko) 네트워크 코딩 기반 보안 통신
Pal et al. Quantum and Post‐Quantum Cryptography
Díaz et al. Chor-rivest knapsack cryptosystem in a post-quantum world

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22941655

Country of ref document: EP

Kind code of ref document: A1