JP6165646B2 - 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法 - Google Patents

量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法 Download PDF

Info

Publication number
JP6165646B2
JP6165646B2 JP2014015771A JP2014015771A JP6165646B2 JP 6165646 B2 JP6165646 B2 JP 6165646B2 JP 2014015771 A JP2014015771 A JP 2014015771A JP 2014015771 A JP2014015771 A JP 2014015771A JP 6165646 B2 JP6165646 B2 JP 6165646B2
Authority
JP
Japan
Prior art keywords
bit string
quantum
key
qkd
length
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2014015771A
Other languages
English (en)
Other versions
JP2015142339A (ja
Inventor
莉里香 高橋
莉里香 高橋
佳道 谷澤
佳道 谷澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2014015771A priority Critical patent/JP6165646B2/ja
Priority to US14/605,331 priority patent/US9350542B2/en
Publication of JP2015142339A publication Critical patent/JP2015142339A/ja
Application granted granted Critical
Publication of JP6165646B2 publication Critical patent/JP6165646B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0852Quantum cryptography
    • H04L9/0855Quantum cryptography involving additional nodes, e.g. quantum relays, repeaters, intermediate nodes or remote nodes
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0852Quantum cryptography
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/34Encoding or coding, e.g. Huffman coding or error correction

Description

本発明の実施形態は、量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法に関する。
量子鍵配送システムは、送信機、受信機と、それを接続する光ファイバとを含んで構成される。送信機は、光ファイバ(量子通信路)を介して、光子を受信機に送信する。その後、送信機と受信機が相互に制御情報を交換することによって、送信機と受信機との間で暗号鍵を共有する。この技術は一般に量子鍵配送(QKD:Quantum Key Distribution)と呼ばれる技術により実現される。
QKDでは、暗号鍵を共有するため利用される光子は、観測されることにより状態が変化する量子力学の基本原理である不確定性原理を有する。この性質により、送信機が送信した光子を量子通信路上で盗聴者が観測すると、光子の状態が変化し、光子を受信した受信機は、盗聴者に光子を観測されたことを知ることができる。
また、従来の量子鍵配送システムは、1対1のノードでの暗号鍵の共有を想定しており、光子を送信する送信機と、光子を受信する受信機とのペアによって暗号鍵の共有を行っている。一方、近年、光学機器を介して接続された1対多のノードでの暗号鍵の共有が可能とされており、一つの受信機と多数の送信機とによって暗号鍵の共有を可能とする量子アクセスネットワーク(QAN:Quantum Access Network)が注目されている。
Iris Choi, Robert J. Young and Paul D. Townsend,"Quantum key distribution on a 10Gb/s WDM−PON", OPTICS EXPRESS 9601, Vol. 18, No. 9, April 2010.
QKDにおいて共有する暗号鍵の生成のために、送信機と受信機との間で通信を行いながら鍵蒸留処理を行う。鍵蒸留処理は、暗号鍵の基になるビット列を送信機と受信機との間で共有するシフティング処理、共有したビット列の誤りを訂正する誤り訂正処理、ならびに、シフティング処理および誤り訂正処理において盗聴者に漏れた情報を除くための鍵圧縮処理(PA(Privacy Amplification:秘匿性増強)処理)等によって構成される。
量子アクセスネットワークを含む1対多の量子鍵配送システムにおいては、送信機と受信機とで暗号鍵を共有するための鍵蒸留処理は、各ノード(送信機および受信機)で実施される。この場合、1対多の「多」に属するノードは、自身の鍵蒸留処理のみを行うのに対し、「多」に属するノードに接続する1つのノードは、複数のノードに対応した鍵蒸留処理をすべて実施しなければならない。したがって、複数のノード(送信機または受信機)に接続する1つのノード(受信機または送信機)は、多くの処理を実行しなければならないため、複数のノードに比べて処理の負荷の偏りが生じるという問題点がある。
本発明は、上記に鑑みてなされたものであって、量子鍵配送を行う送信機および受信機の処理の負荷の偏りを緩和することで、効率よく暗号鍵の共有を行う量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法を提供することを目的とする。
実施形態の量子鍵配送装置は、量子鍵共有手段と、訂正手段と、決定手段と、算出手段と、秘匿性増強手段と、を備える。量子鍵共有手段は、量子通信路を介した複数の他の量子鍵配送装置との量子鍵配送により、共有ビット列を生成する。訂正手段は、共有ビット列に含まれる誤りを誤り訂正処理により訂正し、訂正後ビット列を生成する。決定手段は、各他の量子鍵配送装置に対する量子通信路における誤り率を算出し、複数の誤り率から統合誤り率を決定する。算出手段は、統合誤り率に基づいて共通する暗号鍵の長さを算出する。秘匿性増強手段は、訂正後ビット列から、算出手段によって算出された暗号鍵の長さとなるように、鍵圧縮処理によって、他の量子鍵配送装置と共有する暗号鍵を生成する。
図1は、量子鍵配送ネットワークの概略構成を示す図である。 図2は、第1の実施形態の量子アクセスネットワークの構成を示す図である。 図3は、第1の実施形態の量子アクセスネットワークの構成の具体例を示す図である。 図4は、QKD受信機およびQKD送信機のブロック構成を示す図である。 図5は、量子アクセスネットワークでの従来のQKD装置の動作を示すシーケンス図である。 図6は、鍵圧縮処理を説明する図である。 図7は、第1の実施形態のQKD装置の動作を示すシーケンス図である。 図8は、第1の実施形態の変形例の量子アクセスネットワークの構成を示す図である。 図9は、第2の実施形態の量子アクセスネットワークの構成の具体例を示す図である。 図10は、第2の実施形態のQKD装置の動作を示すシーケンス図である。 図11は、QKD装置のハードウェアの構成図である。
以下に、図面を参照しながら、本発明の実施形態に係る量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法を詳細に説明する。また、以下の図面において、同一の部分には同一の符号が付してある。ただし、図面は模式的なものであり、厚みと平面寸法との関係、各層の厚みの比率等は現実のものとは異なる場合がある。したがって、具体的な厚みおよび寸法は以下の説明を参酌して判断すべきものである。
(第1の実施形態)
図1は、量子鍵配送ネットワークの概略構成を示す図である。図2は、第1の実施形態の量子アクセスネットワークの構成を示す図である。図1を参照しながら、量子鍵配送ネットワーク600および量子アクセスネットワーク500の構成について説明する。
図1に示すように、量子鍵配送ネットワーク600は、QKD装置300a〜300fが互いに1対1で量子通信路によって接続(リンク)されたネットワークである。図1に示すQKD装置の1対1のリンクそれぞれにおいて、量子鍵配送によって同一の暗号鍵を生成して共有される。
QKD装置300a〜300fのうち、QKD装置300aは、光学機器400を介して複数のQKD送信機200a〜200eに量子通信路によって接続されている。この場合のQKD装置300aは、QKD受信機100として機能している。このQKD受信機100、光学機器400、およびQKD送信機200a〜200eを含むネットワークは、量子アクセスネットワーク500を構成している。
図2は、量子アクセスネットワーク500の構成の詳細を示している。ただし、図2においては、1対多の量子アクセスネットワークを一般化して示すためn台のQKD送信機200_1〜200_nが、光学機器400を介してQKD受信機100に接続された状態を示している。QKD受信機100は、量子通信路となる光ファイバケーブルによって、光学機器400に接続されている。QKD送信機200_1〜200_nも、それぞれ量子通信路となる光ファイバケーブルによって、光学機器400に接続されている。
図2に示す誤り率QBER(Quantum Bit Error Rate)は、後述する誤り訂正部が、QKD送信機とQKD受信機との間で共有した共有ビット列から誤り訂正処理を実行して訂正後ビット列を生成した場合において、誤り訂正処理においてQKD送信機とQKD受信機との間で共有したビットに含まれる誤りを訂正した数から算出される誤りのあるビットの割合である。この誤り率QBERは、量子通信路ごとに独立して算出される値である。したがって、QKD受信機100とQKD送信機200_1とのリンクにおいては、誤り率QBER1が算出され、QKD受信機100とQKD送信機200_2とのリンクにおいては、誤り率QBER2が算出され、QKD受信機100とQKD送信機200_nとのリンクにおいては誤り率QBERnが算出される。なお、誤り率をQBERとしているが、これに限定されるものではなく、その他の方法により算出された誤り率としてもよい。
図3は、第1の実施形態の量子アクセスネットワークの構成の具体例を示す図である。図3を参照しながら、1つのQKD受信機に対して、3つのQKD送信機が接続された量子アクセスネットワークの構成について説明する。すなわち、本実施形態においては、量子鍵配送システムとして、量子アクセスネットワークを例に説明する。
図3に示すように、量子アクセスネットワーク500aは、QKD受信機1と、QKD送信機2a〜2cと、光学機器4と、を含んで構成されている。QKD受信機1は、量子通信路となる光ファイバケーブルによって、光学機器4に接続されている。QKD送信機2a〜2cも、それぞれ量子通信路となる光ファイバケーブルによって、光学機器4に接続されている。以下、QKD送信機2a〜2cを区別なく呼称する場合、または総称する場合、単に「QKD送信機2」というものとする。
QKD送信機2a〜2cは、例えば、乱数によって発生させた、暗号鍵を生成する基となる単一光子から構成されるビット列(以下、光子ビット列という)を、それぞれ光学機器4を介して、QKD受信機1へ送信する。QKD送信機2a〜2cは、それぞれ送信した光子ビット列を基に、シフティング処理、誤り訂正処理およびPA(秘匿性増強)処理(鍵圧縮処理)等を実行して、暗号鍵を生成する。
QKD受信機1は、暗号鍵を生成する基となる単一光子から構成される光子ビット列を、光学機器4を介して、QKD送信機2a〜2cそれぞれから受信する。QKD受信機1は、受信した光子ビット列を基に、シフティング処理、誤り訂正処理およびPA処理等を実行して、QKD送信機2a〜2cがそれぞれ生成した暗号鍵と同一の暗号鍵を生成する。すなわち、QKD受信機1と、QKD送信機2a〜2cそれぞれとは、同一の暗号鍵を生成して共有することになる。さらに具体的にいうと、QKD受信機1は3種類の暗号鍵を有し、QKD送信機2aは1種類目の暗号鍵を有し、QKD送信機2bは2種類目の暗号鍵を有し、QKD送信機2cは3種類目の鍵を有する。
なお、図示していないが、QKD受信機1とQKD送信機2a〜2cとは、光ファイバケーブルの量子通信路以外に、通常の「0」と「1」とのデジタルデータを通信する通信ケーブル(古典通信路)で接続されている。古典通信路は、有線である必要はなく、無線であってもよい。
このようなQKD受信機1とQKD送信機2とを含む量子アクセスネットワーク500aにおいて、QKD送信機2が送信した単一光子を量子通信路である光ファイバケーブル上で盗聴者が観測すると、光子の物理的変化が発生し、光子を受信したQKD受信機1は、盗聴者に光子を観測されたことを知ることができる。なお、QKD受信機1およびQKD送信機2の暗号鍵の生成動作の詳細については、後述する。また、QKD受信機1およびQKD送信機2を総称する場合、「QKD装置」というものとする。
図4は、QKD送信機およびQKD受信機のブロック構成を示す図である。図4を参照しながら、QKD受信機1およびQKD受信機2の機能ブロック構成について説明する。
図4に示すように、QKD受信機1(量子鍵配送装置)は、量子鍵共有部10(量子鍵共有手段)と、誤り訂正部11(訂正手段)と、誤り率決定部12(決定手段)と、鍵長さ算出部13(算出手段)と、PA処理部14(秘匿性増強手段)と、アプリケーション処理部15と、ストレージ16と、を備えている。
量子鍵共有部10は、量子通信路を介して、QKD送信機2から光子ビット列を受信し、ランダムに発生させた基底情報に基づいて、光子ビット列を読み取る。次に、量子鍵共有部10は、QKD送信機2(後述する量子鍵共有部20)が光子ビット列を送信するためにランダムに発生させた基底情報を受信する。そして、量子鍵共有部10は、自ら発生した基底情報と量子鍵共有部20から受信した基底情報とを比較して、一致する部分に対応するビットを光子ビット列から抽出して、共有ビット列とし、ストレージ16に保存する。共有ビット列の長さは、量子鍵共有部10および量子鍵共有部20がランダムに発生させた基底情報に基づいて定まるので、統計上、光子ビット列の略1/2の長さとなる。ここで、量子鍵共有部10は、後段の処理を簡略化するため、各QKD送信機2に対応する共有ビット列の長さを統一させる。
誤り訂正部11は、ストレージ16から共有ビット列を読み出し、古典通信路を介して、後述する誤り訂正部21と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する。誤り訂正部11は、生成した訂正後ビット列を、ストレージ16に保存する。この誤り訂正部11が生成した訂正後ビット列は、後述するQKD送信機2の誤り訂正部21が、共有ビット列を訂正(誤り訂正処理)して生成した訂正後ビット列と一致する。また、訂正後ビット列は、共有ビット列のビット誤りを訂正したビット列なので、共有ビット列および訂正後ビット列の長さは同一である。
誤り率決定部12は、訂正後ビット列を生成する誤り訂正処理において訂正した誤りの数から誤り率QBERを算出する。誤り率決定部12は、QKD受信機1にQKD送信機2a〜2cが接続されているので、QKD送信機2a〜2cに対応するそれぞれの誤り率QBER1〜QBER3を算出する。そして、誤り率決定部12は、算出した誤り率QBER1〜QBER3のうちの最大値を統合誤り率QBERmaxとして決定する。
ここで、統合誤り率QBERmaxを、誤り率QBER1〜QBER3のうちの最大値とするのは、暗号鍵による暗号通信の安全性を確保するためである。誤り率QBERが大きいほど盗聴者に漏れている情報量が多いと考えられ、小さいほど漏れている情報量が小さいと考えられる。本実施の形態では、後述するように、鍵長さ算出部13によって暗号鍵の長さsを共通の統合誤り率QBERmaxに基づいて算出するため、統合誤り率を、例えば、最小値に決定すると、盗聴者に漏れた情報を小さく見積もることになり、本来盗聴者に漏れている情報を取り除けない場合があるからである。そのため、統合誤り率を、誤り率QBER1〜QBER3のうちの最大値とし、誤り率を高く見積もることによって、盗聴者に漏れた情報を完全に取り除き、安全性に影響がないようにする。
鍵長さ算出部13は、誤り率決定部12より決定された統合誤り率QBERmaxに応じて、最終的に生成すべき暗号鍵の長さsを算出する。この暗号鍵の長さsは、QKD受信機1と各QKD送信機2(QKD送信機2a〜2c)との間の各リンクにおいて共通の値である。
PA処理部14は、ハッシュ関数生成部140(関数生成手段)と、鍵圧縮部141(圧縮手段)と、を有する。PA処理部14は、訂正後ビット列に対して、量子鍵共有部10および誤り訂正部11の処理の際に盗聴者により盗聴された可能性のある情報量を取り除くための鍵圧縮処理(秘匿性増強処理、PA処理)を行う。
ハッシュ関数生成部140は、後述の鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さsに応じた大きさのハッシュ関数を生成するための乱数rを発生させる。PA処理部14は、暗号鍵の長さsおよび乱数rの情報を、古典通信路を介して、各QKD送信機2(PA処理部24)に送信する。ハッシュ関数生成部140は、ストレージ16から訂正後ビット列を読み出し、訂正後ビット列の長さと、乱数rと、暗号鍵の長さsとからハッシュ関数を生成する。鍵圧縮部141は、訂正後ビット列にハッシュ関数を乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。
アプリケーション処理部15は、必要に応じてストレージ16から暗号鍵を読み出し、暗号鍵を外部のアプリケーションに暗号通信用に提供する。
なお、上述の量子鍵共有部10、誤り訂正部11、誤り率決定部12、鍵長さ算出部13、PA処理部14およびアプリケーション処理部15は、それぞれ後述するCPU(Central Processing Unit)80上で実行されるプログラムによって実現されてもよく、または、ハードウェア回路によって実現されてもよい。また、量子鍵共有部10および誤り訂正部11は、それぞれ共有ビット列および訂正後ビット列をストレージ16に保存するものとしているが、必ずしも保存する必要はない。
図4に示すように、QKD送信機2(他の量子鍵配送装置)は、量子鍵共有部20と、誤り訂正部21と、PA処理部24と、アプリケーション処理部25と、ストレージ26と、を備えている。
量子鍵共有部20は、例えば、乱数によって発生させたビット列に対して、ランダムに発生させた基底情報に基づく状態とした単一光子から構成される光子ビット列を、量子通信路を介して、QKD受信機1に送信する。次に、量子鍵共有部20は、QKD受信機1(量子鍵共有部10)が受信した光子ビット列を読み取るためにランダムに発生させた基底情報を受信する。そして、量子鍵共有部20は、自ら発生した基底情報と量子鍵共有部10から受信した基底情報とを比較して、一致する部分に対応するビットを光子ビット列から抽出して、共有ビット列とし、ストレージ26に保存する。共有ビット列の長さは、量子鍵共有部10および量子鍵共有部20がランダムに発生させた基底情報に基づいて定まるので、統計上、光子ビット列の略1/2の長さとなる。ここで、量子鍵共有部20は、後段の処理を簡略化するため、量子鍵共有部10が有する共有ビット列の長さと同一にする。その結果、量子鍵共有部20が有する共有ビット列の長さは、他のQKD送信機2が有する共有ビット列の長さとも同一となる。
誤り訂正部21は、ストレージ26から共有ビット列を読み出し、古典通信路を介して、誤り訂正部11と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する。誤り訂正部21は、生成した訂正後ビット列を、ストレージ26に保存する。この誤り訂正部21が生成した訂正後ビット列は、QKD受信機1の誤り訂正部11が、共有ビット列を訂正(誤り訂正処理)して生成した訂正後ビット列と一致する。また、訂正後ビット列は、共有ビット列のビット誤りを訂正したビット列なので、共有ビット列および訂正後ビット列の長さは同一である。
PA処理部24は、ハッシュ関数生成部240と、鍵圧縮部241と、を有する。PA処理部24は、訂正後ビット列に対して、量子鍵共有部20および誤り訂正部21の処理の際に盗聴者により盗聴された可能性のある情報量を取り除くための鍵圧縮処理(秘匿性増強処理、PA処理)を行う。
PA処理部24は、古典通信路を介して、PA処理部14から暗号鍵の長さsおよび乱数rの情報を受信する。ハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さと、乱数rと、暗号鍵の長さsとからハッシュ関数を生成する。鍵圧縮部241は、訂正後ビット列にハッシュ関数を乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。アプリケーション処理部25は、必要に応じてストレージ26から暗号鍵を読み出し、暗号鍵を外部のアプリケーションに暗号通信用に提供する。
なお、上述の量子鍵共有部20、誤り訂正部21、PA処理部24およびアプリケーション処理部25は、それぞれ後述するCPU80上で実行されるプログラムによって実現されてもよく、または、ハードウェア回路によって実現されてもよい。また、量子鍵共有部20および誤り訂正部21は、それぞれ共有ビット列および訂正後ビット列をストレージ26に保存するものとしているが、必ずしも保存する必要はない。
図5は、量子アクセスネットワークでの従来のQKD受信機およびQKD送信機の動作を示すシーケンス図である。図6は、鍵圧縮処理を説明する図である。図5および6を参照しながら、QKD受信機1およびQKD送信機2(QKD送信機2a〜2c)による従来の暗号鍵の生成動作について説明する。
<ステップS101>
各QKD送信機2の量子鍵共有部20は、例えば、乱数によって発生させたビット列に対して、ランダムに発生させた基底情報に基づく状態とした単一光子から構成される光子ビット列を、量子通信路を介して、QKD受信機1の量子鍵共有部10に送信する。一方、量子鍵共有部10は、量子通信路を介して、量子鍵共有部20から光子ビット列を受信し、ランダムに発生させた基底情報に基づいて、光子ビット列を読み取る。
<ステップS102>
量子鍵共有部20は、量子鍵共有部10が受信した光子ビット列を読み取るためにランダムに発生させた基底情報を受信する。一方、量子鍵共有部10は、量子鍵共有部20が光子ビット列を送信するためにランダムに発生させた基底情報を受信する。
量子鍵共有部20は、自ら発生した基底情報と量子鍵共有部10から受信した基底情報とを比較して、一致する部分に対応するビットを光子ビット列から抽出して共有ビット列とするシフティング処理を行い、共有ビット列をストレージ26に保存する。量子鍵共有部20は、生成した共有ビット列を、誤り訂正部21に渡す。
量子鍵共有部10は、自ら発生した基底情報と量子鍵共有部20から受信した基底情報とを比較して、一致する部分に対応するビットを光子ビット列から抽出して、共有ビット列とするシフティング処理を行い、共有ビット列をストレージ16に保存する。量子鍵共有部10は、生成した共有ビット列を、誤り訂正部11に渡す。このとき、量子鍵共有部10は、各QKD送信機2に対応して3種類の共有ビット列を生成することになる。
<ステップS103>
誤り訂正部11は、ストレージ16から共有ビット列を読み出し、古典通信路を介して、誤り訂正部21と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する誤り訂正処理を実行する。誤り訂正部11は、生成した訂正後ビット列を、ストレージ16に保存する。このとき、誤り訂正部11は、各QKD送信機2に対応して3種類の訂正後ビット列を生成することになる。
<ステップS104>
QKD送信機2aの誤り訂正部21は、ストレージ26から共有ビット列を読み出し、古典通信路を介して、誤り訂正部11と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する誤り訂正処理を実行する。QKD送信機2aの誤り訂正部21は、生成した訂正後ビット列を、ストレージ26に保存する。このQKD送信機2aの誤り訂正部21が生成した訂正後ビット列は、誤り訂正部11が、QKD送信機2aに対応する共有ビット列を訂正して生成した訂正後ビット列と一致する。
<ステップS105>
QKD送信機2bの誤り訂正部21は、ストレージ26から共有ビット列を読み出し、古典通信路を介して、誤り訂正部11と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する誤り訂正処理を実行する。QKD送信機2bの誤り訂正部21は、生成した訂正後ビット列を、ストレージ26に保存する。このQKD送信機2bの誤り訂正部21が生成した訂正後ビット列は、誤り訂正部11が、QKD送信機2bに対応する共有ビット列を訂正して生成した訂正後ビット列と一致する。
<ステップS106>
QKD送信機2cの誤り訂正部21は、ストレージ26から共有ビット列を読み出し、古典通信路を介して、誤り訂正部11と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する誤り訂正処理を実行する。QKD送信機2cの誤り訂正部21は、生成した訂正後ビット列を、ストレージ26に保存する。このQKD送信機2cの誤り訂正部21が生成した訂正後ビット列は、誤り訂正部11が、QKD送信機2cに対応する共有ビット列を訂正して生成した訂正後ビット列と一致する。
<ステップS107>
誤り率決定部12は、訂正後ビット列を生成する誤り訂正処理において訂正した誤りの数から誤り率QBERを算出する。誤り率決定部12は、QKD受信機1にQKD送信機2a〜2cが接続されているので、QKD送信機2a〜2cに対応するそれぞれの誤り率QBER1〜QBER3を算出する。
<ステップS108>
鍵長さ算出部13は、誤り率決定部12より決定されたQKD送信機2aに対応する誤り率QBER1に応じて、最終的に生成すべき暗号鍵の長さs1を算出する。
<ステップS109>
鍵長さ算出部13は、誤り率決定部12より決定されたQKD送信機2bに対応する誤り率QBER2に応じて、最終的に生成すべき暗号鍵の長さs2を算出する。
<ステップS110>
鍵長さ算出部13は、誤り率決定部12より決定されたQKD送信機2cに対応する誤り率QBER3に応じて、最終的に生成すべき暗号鍵の長さs3を算出する。
<ステップS111>
ハッシュ関数生成部140は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さs1に応じた大きさのハッシュ関数を生成するための乱数r1を発生させる。
<ステップS112>
ハッシュ関数生成部140は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さs2に応じた大きさのハッシュ関数を生成するための乱数r2を発生させる。
<ステップS113>
ハッシュ関数生成部140は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さs3に応じた大きさのハッシュ関数を生成するための乱数r3を発生させる。
<ステップS114>
PA処理部14は、鍵の長さs1および乱数r1の情報を、古典通信路を介して、QKD送信機2aのPA処理部24に送信する。
<ステップS115>
PA処理部14は、鍵の長さs2および乱数r2の情報を、古典通信路を介して、QKD送信機2bのPA処理部24に送信する。
<ステップS116>
PA処理部14は、鍵の長さs3および乱数r3の情報を、古典通信路を介して、QKD送信機2cのPA処理部24に送信する。
<ステップS117>
ハッシュ関数生成部140は、ストレージ16からQKD送信機2aに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn1(図6ではnと記載)と、乱数r1と、暗号鍵の長さs1(図ではsと記載)とからn1×s1の行列であり乱数r1によりランダムに構成されたハッシュ関数H1を生成する。
<ステップS118>
ハッシュ関数生成部140は、ストレージ16からQKD送信機2bに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn2(図6ではnと記載)と、乱数r2と、暗号鍵の長さs2(図ではsと記載)とからn2×s2の行列であり乱数r2によりランダムに構成されたハッシュ関数H2を生成する。
<ステップS119>
ハッシュ関数生成部140は、ストレージ16からQKD送信機2cに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn3(図6ではnと記載)と、乱数r3と、暗号鍵の長さs3(図ではsと記載)とからn3×s3の行列であり乱数r3によりランダムに構成されたハッシュ関数H3を生成する。
なお、上述のように、各QKD送信機2に対応する共有ビット列の長さは同一であり、共有ビット列と同一の長さを有する訂正後ビット列もそれぞれ同一の長さである。したがって、上述の訂正後ビット列の長さn1〜n3は、同一の値となる。ただし、QKD送信機2a〜2cにそれぞれ対応する暗号鍵の長さs1〜s3は、それぞれの誤り率QBER1〜QBER3に応じて定まるので、異なる長さとなる。したがって、ハッシュ関数H1〜H3は、それぞれ異なるものとなるので、ハッシュ関数生成部140は、ハッシュ関数H1〜H3をそれぞれ生成する必要がある。
<ステップS120>
QKD送信機2aのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn1と、受信した乱数r1と、暗号鍵の長さs1とからn1×s1の行列であるハッシュ関数H1を生成する。このQKD送信機2aのハッシュ関数生成部240によって生成されたハッシュ関数H1は、ハッシュ関数生成部140が、QKD送信機2aに対応する訂正後ビット列から生成したハッシュ関数H1と一致する。
<ステップS121>
QKD送信機2bのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn2と、受信した乱数r2と、暗号鍵の長さs2とからn2×s2の行列であるハッシュ関数H2を生成する。このQKD送信機2bのハッシュ関数生成部240によって生成されたハッシュ関数H2は、ハッシュ関数生成部140が、QKD送信機2bに対応する訂正後ビット列から生成したハッシュ関数H2と一致する。
<ステップS122>
QKD送信機2cのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn3と、受信した乱数r3と、暗号鍵の長さs3とからn3×s3の行列であるハッシュ関数H3を生成する。このQKD送信機2cのハッシュ関数生成部240によって生成されたハッシュ関数H3は、ハッシュ関数生成部140が、QKD送信機2cに対応する訂正後ビット列から生成したハッシュ関数H3と一致する。
<ステップS123>
鍵圧縮部141は、QKD送信機2aに対応する訂正後ビット列にハッシュ関数H1を乗じる鍵圧縮処理によって、長さs1の暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。鍵圧縮部141は、QKD送信機2bに対応する訂正後ビット列にハッシュ関数H2を乗じる鍵圧縮処理によって、長さs2の暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。そして、鍵圧縮部141は、QKD送信機2cに対応する訂正後ビット列にハッシュ関数H3を乗じる鍵圧縮処理によって、長さs3の暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。
<ステップS124>
QKD送信機2aの鍵圧縮部241は、訂正後ビット列にハッシュ関数H1を乗じる鍵圧縮処理によって、長さs1の暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。
<ステップS125>
QKD送信機2bの鍵圧縮部241は、訂正後ビット列にハッシュ関数H2を乗じる鍵圧縮処理によって、長さs2の暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。
<ステップS126>
QKD送信機2cの鍵圧縮部241は、訂正後ビット列にハッシュ関数H3を乗じる鍵圧縮処理によって、長さs3の暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。
以上のような、QKD受信機1およびQKD送信機2(QKD送信機2a〜2c)による従来の量子アクセスネットワークにおける暗号鍵の生成動作においては、QKD受信機1側の処理の負荷が大きくなる。具体的には、QKD受信機1は、QKD送信機2a〜2cに対応する誤り率QBER1〜QBER3それぞれについて、暗号鍵の長さの算出、暗号鍵の長さに応じた乱数の発生、ハッシュ関数の生成、および暗号鍵の生成をそれぞれ個別に処理しなければならない。QKD受信機1にn台のQKD送信機2が接続されている場合、QKD受信機1は、暗号鍵の長さの算出、暗号鍵の長さに応じた乱数の発生、ハッシュ関数の生成、および暗号鍵の生成の処理をそれぞれn回実行しなければならない。特に、乱数の発生の際に、所定のアルゴリズムにより作り出される擬似乱数ではなく物理的現象により作り出される物理乱数を発生させる場合は、乱数を作り出すための処理負荷が特に大きくなる。一方、QKD送信機2a〜2cは、それぞれ、自身のためのハッシュ関数の生成、および暗号鍵の生成のみを実行すればよいので、QKD受信機1の処理負荷と比較して、大きく偏りが生じることになる。
そこで、本実施形態では、上述したように誤り率決定部12によって誤り率QBER1〜QBER3を統合して統合誤り率を決定する処理を導入している。具体的には、上述のように、誤り率決定部12は、算出した誤り率QBER1〜QBER3のうちの最大値を統合誤り率QBERmaxとして決定する。
図7は、第1の実施形態のQKD受信機およびQKD送信機の動作を示すシーケンス図である。図7を参照しながら、本実施形態のQKD受信機1およびQKD送信機2(QKD送信機2a〜2c)による暗号鍵の生成動作について説明する。以下の説明では、図5の従来の暗号鍵の生成動作と相違する点を中心に説明する。
<ステップS11〜S17>
図5に示すステップS101〜S107の処理と同様である。
<ステップS18>
誤り率決定部12は、算出した誤り率QBER1〜QBER3のうちの最大値を統合誤り率QBERmaxとして決定する。例えば、QBER1=5[%]、QBER2=3[%]、QBER3=6[%]である場合、誤り率決定部12は、最大値であるQBER3(=6[%])を統合誤り率QBERmaxとして決定する。
なお、統合誤り率を、誤り率QBERの最大値としているが、これに限定されるものではなく、例えば、最大値以上の値を統合誤り率としてもよく、暗号鍵による暗号通信の安全の確保には影響しない。
<ステップS19>
鍵長さ算出部13は、誤り率決定部12より決定された統合誤り率QBERmaxに応じて、最終的に生成すべき暗号鍵の長さsを算出する。この暗号鍵の長さsは、QKD受信機1と各QKD送信機2(QKD送信機2a〜2c)との間の各リンクにおいて共通の値である。
<ステップS20>
ハッシュ関数生成部140は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さsに応じた大きさのハッシュ関数を生成するための乱数rを発生させる。
<ステップS21>
PA処理部14は、暗号鍵の長さsおよび乱数rの情報を、古典通信路を介して、QKD送信機2a〜2cに送信する。
<ステップS22>
ハッシュ関数生成部140は、ストレージ16からQKD送信機2aに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn1(図6ではnと記載)と、乱数rと、暗号鍵の長さsとからn1×sの行列であるハッシュ関数H1aを生成する。ハッシュ関数生成部140は、ストレージ16からQKD送信機2bに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn2(図6ではnと記載)と、乱数rと、暗号鍵の長さsとからn2×sの行列であるハッシュ関数H2aを生成する。ハッシュ関数生成部140は、ストレージ16からQKD送信機2cに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn3(図6ではnと記載)と、乱数rと、暗号鍵の長さsとからn3×sの行列であるハッシュ関数H3aを生成する。ただし、上述のように、訂正後ビット列の長さn1〜n3は、同一の値であるので、この値をnとすると、実際には、ハッシュ関数H1a〜H3aは、n×sの同一の行列である。したがって、ハッシュ関数生成部140は、QKD送信機2a〜2cに対応する共通のハッシュ関数として、長さnと、乱数rと、暗号鍵の長さsとからn×sの行列であるハッシュ関数H(=H1a=H2a=H3a)を生成する処理を一度実行すればよい。
<ステップS23>
QKD送信機2aのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn1と、受信した乱数rと、暗号鍵の長さsとからn1×sの行列であるハッシュ関数H1aを生成する。このQKD送信機2aのハッシュ関数生成部240によって生成されたハッシュ関数H1aは、ハッシュ関数生成部140が生成したハッシュ関数Hと一致する。
<ステップS24>
QKD送信機2bのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn2と、受信した乱数rと、暗号鍵の長さsとからn2×sの行列であるハッシュ関数H2aを生成する。このQKD送信機2bのハッシュ関数生成部240によって生成されたハッシュ関数H2aは、ハッシュ関数生成部140が生成したハッシュ関数Hと一致する。
<ステップS25>
QKD送信機2cのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn3と、受信した乱数rと、暗号鍵の長さsとからn3×sの行列であるハッシュ関数H3aを生成する。このQKD送信機2cのハッシュ関数生成部240によって生成されたハッシュ関数H3aは、ハッシュ関数生成部140が生成したハッシュ関数Hと一致する。
<ステップS26>
鍵圧縮部141は、QKD送信機2aに対応する訂正後ビット列にハッシュ関数H1aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。鍵圧縮部141は、QKD送信機2bに対応する訂正後ビット列にハッシュ関数H2aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。そして、鍵圧縮部141は、QKD送信機2cに対応する訂正後ビット列にハッシュ関数H3aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。
<ステップS27>
QKD送信機2aの鍵圧縮部241は、訂正後ビット列にハッシュ関数H1aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。
<ステップS28>
QKD送信機2bの鍵圧縮部241は、訂正後ビット列にハッシュ関数H2aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。
<ステップS29>
QKD送信機2cの鍵圧縮部241は、訂正後ビット列にハッシュ関数H3aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。
以上のように、誤り率決定部12により、各QKD送信機2に応じて算出した誤り率QBERを統合して統合誤り率を決定したことによって、QKD受信機1およびQKD送信機2a〜2cは、同一の長さsの暗号鍵を共有することになる。
本実施形態に係るQKD受信機1は、誤り率決定部12によって、各QBERを統合して統合誤り率を決定している。これによって、鍵長さ算出部13は、統合誤り率に応じて、暗号鍵の長さの算出処理を1回実行すればよい。また、ハッシュ関数生成部140は、このように決定された1の暗号鍵の長さに応じて乱数も発生させればよいので、乱数の発生処理も1回実行すればよい。したがって、QKD受信機1は、n台のQKD送信機2が接続されている場合、暗号鍵の生成の処理はn回実行しなければならないが、暗号鍵の長さの算出、乱数の発生、およびハッシュ関数の生成の処理は、QKD送信機2ごとに実行する必要がなく、1回実行すればよいことになる。よって、QKD受信機1の、処理負荷を軽減することができ、QKD送信機2との処理負荷の偏りを軽減することができる。
なお、誤り率決定部12が算出した複数の誤り率QBERのうち、最小値と最大値との差が大きく離れている場合、統合誤り率を最大値に決定すると、最小値の誤り率QBERに対応する訂正後ビット列からPA処理部により取り除かれる情報量は、盗聴者に漏れた情報量以上のものまで余計に取り除かれることになる。この場合、鍵圧縮部141および鍵圧縮部241により生成される暗号鍵の長さは小さくなり、暗号通信の効率が下がる可能性がある。そこで、複数の誤り率QBERのうち、最小値と最大値との差と所定の閾値とを比較し、差が所定値未満であれば、図7に示す本実施形態の暗号鍵の生成動作を実行し、差が所定値以上であれば、図5に示す従来の暗号鍵の生成動作を実行するものとしてもよい。これによって、暗号鍵の長さが小さくなることによる暗号通信の効率の低下と、QKD受信機1とQKD送信機2との処理負荷の偏りとのバランスをとることができる。
また、上述のように、ハッシュ関数生成部140、鍵圧縮部141、ハッシュ関数生成部240および鍵圧縮部241において、鍵圧縮処理の方法としてハッシュ関数を用いたものとしているが、これに限定されるものではなく、その他の方法によって実現してもよい。
また、本実施形態において、量子鍵配送システムとして、光学機器4を介した量子アクセスネットワークを例に説明したが、量子鍵配送システムとして、量子アクセスネットワークに限定されるものではなく、例えば、図8のような構成の量子アクセスネットワーク500bであってもよい。
量子アクセスネットワーク500bは、QKD受信機100aと、n個のQKD送信機(QKD送信機200_1、200_2、・・・、200_n)と、を備えている。QKD受信機100aは、それぞれのQKD送信機との量子通信路用の通信I/Fを有しており、それぞれの通信I/Fに、各QKD送信機が接続されている。このような構成の量子鍵配送システム(量子アクセスネットワーク500b)においても、上述の図7に示す暗号鍵の生成動作を適用することができる。なお、量子アクセスネットワーク500bの場合、QKD受信機100aを光子ビット列の受信機とし、QKD送信機200_1、200_2、・・・、200_nを光子ビット列の送信機としているが、送受信が逆であってもよい。
(第2の実施形態)
本実施形態に係る量子鍵配送システムの構成および動作について、第1の実施形態に係る量子鍵配送システム(量子アクセスネットワーク500、500a、500b)と相違する構成および動作を中心に説明する。なお、QKD装置の構成は、第1の実施形態と同様である。
第1の実施形態においては、複数の誤り率QBERから最大値を統合誤り率QBERmaxとし、暗号鍵の長さsを算出するものとしている。しかし、複数の誤り率QBERのうち、最小値と最大値との差が大きく離れている場合、統合誤り率を最大値に決定すると、最小値の誤り率QBERに対応する訂正後ビット列から取り除かれる情報量は、盗聴者に漏れた情報量以上のものまで余計に取り除かれることになる。この場合、鍵圧縮部141および鍵圧縮部241により生成される暗号鍵の長さは小さくなり、暗号鍵の長さが小さくなると、暗号通信には多くの暗号鍵が必要になり、暗号通信の効率が下がる可能性がある。そこで、本実施形態においては、複数の誤り率QBERの値によって対応するQKD送信機2を複数のグループに分けて、それぞれのグループにおいて統合誤り率を決定する動作について説明する。
図9は、第2の実施形態の量子アクセスネットワークの構成の具体例を示す図である。図9を参照しながら、1つのQKD受信機に対して、3つのQKD送信機が接続された量子アクセスネットワークの構成について説明する。すなわち、本実施形態においては、量子鍵配送システムとして、量子アクセスネットワークを例に説明する。
図9に示すように、量子アクセスネットワーク500cは、QKD受信機1a(量子鍵配送装置)と、QKD送信機2a〜2c(他の量子鍵配送装置)と、光学機器4と、を含んで構成されている。QKD受信機1aは、量子通信路となる光ファイバケーブルによって、光学機器4に接続されている。QKD送信機2a〜2cも、それぞれ量子通信路となる光ファイバケーブルによって、光学機器4に接続されている。
QKD送信機2a〜2cは、例えば、乱数によって発生させた、暗号鍵を生成する基となる単一光子から構成される光子ビット列を、それぞれ光学機器4を介して、QKD受信機1aへ送信する。QKD送信機2a〜2cは、それぞれ送信した光子ビット列を基に、シフティング処理、誤り訂正処理およびPA(秘匿性増強)処理(鍵圧縮処理)等を実行して、暗号鍵を生成する。
QKD受信機1aは、暗号鍵を生成する基となる単一光子から構成される光子ビット列を、光学機器4を介して、QKD送信機2a〜2cそれぞれから受信する。QKD受信機1aは、受信した光子ビット列を基に、シフティング処理、誤り訂正処理およびPA処理等を実行して、QKD送信機2a〜2cがそれぞれ生成した暗号鍵と同一の暗号鍵を生成する。すなわち、QKD受信機1と、QKD送信機2a〜2cそれぞれとは、同一の暗号鍵を共有することになる。
図10は、第2の実施形態のQKD受信機およびQKD送信機の動作を示すシーケンス図である。図10を参照しながら、本実施形態のQKD受信機1aおよびQKD送信機2(QKD送信機2a〜2c)による暗号鍵の生成動作について説明する。以下の説明では、図7の第1の実施形態の暗号鍵の生成動作と相違する点を中心に説明する。
<ステップS51〜S57>
図7に示すステップS11〜S17の処理と同様である。
<ステップS58、S59>
QKD受信機1aの誤り率決定部12(図4参照)は、算出した誤り率QBER1〜QBER3に基づいて、QKD送信機2をグループに分ける。誤り率決定部12は、例えば、所定の閾値dA、dBを用いて、誤り率QBERの値が、0≦QBER<dAの場合はグループAに属するものとし、dA≦QBER<dBの場合はグループBに属するものとし、dB≦QBERの場合はグループCに属するもの判定する。なお、誤り率QBERをグループA〜Cの3つのグループに分けることに限定するものではなく、2つまたは4つ以上のグループに分けるものとしてもよい。また、上述の方法によってグループ分けすることに限定するものではなく、誤り率QBERの値が近いものを同じグループに分ける方法であれば、どのようなグループ分けの方法でもよい。
ここで、誤り率決定部12は、誤り率QBER1=3[%]、誤り率QBER2=2[%]、誤り率QBER3=7[%]と算出したものとする。そして、閾値dA、dBがdA=4およびdB=8と決められているものとする。この場合、誤り率決定部12は、図9に示すように、誤り率QBER1に対応するQKD送信機2a、および誤り率QBER2に対応するQKD送信機2bが、グループAに属するものと判定する。また、誤り率決定部12は、図9に示すように、誤り率QBER3に対応するQKD送信機2cが、グループBに属するものと判定する。そして、誤り率決定部12は、グループCに属するQKD送信機2はないものと判定する。
誤り率決定部12は、グループAの誤り率QBER1、QBER2のうち最大値(この場合、誤り率QBER1)をグループAの統合誤り率QBERmaxAとして決定する(ステップS58)。そして、誤り率決定部12は、グループBの誤り率QBER3のうち最大値、すなわち誤り率QBER3をグループBの統合誤り率QBERmaxBとして決定する(ステップS59)。
なお、各グループの統合誤り率を、そのグループに属する誤り率QBERの最大値としているが、これに限定されるものではなく、例えば、最大値以上の値を統合誤り率としてもよく、暗号鍵による暗号通信の安全の確保には影響しない。
<ステップS60>
QKD受信機1aの鍵長さ算出部13(図4参照)は、誤り率決定部12より決定された統合誤り率QBERmaxAに応じて、最終的に生成すべき暗号鍵の長さsAを算出する。この暗号鍵の長さsAは、QKD受信機1aとQKD送信機2a、2bとの間の各リンクにおいて共通の値である。
<ステップS61>
鍵長さ算出部13は、誤り率決定部12より決定された統合誤り率QBERmaxBに応じて、最終的に生成すべき暗号鍵の長さsBを算出する。この暗号鍵の長さsBは、QKD受信機1aとQKD送信機2cとの間のリンクにおいて共通の値である。
<ステップS62>
QKD受信機1aのハッシュ関数生成部140(図4参照)は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さsAに応じた大きさのハッシュ関数を生成するための乱数rAを発生させる。
<ステップS63>
ハッシュ関数生成部140は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さsBに応じた大きさのハッシュ関数を生成するための乱数rBを発生させる。
<ステップS64>
QKD受信機1aのPA処理部14(図4参照)は、暗号鍵の長さsAおよび乱数rAの情報を、古典通信路を介して、QKD送信機2a、2bに送信する。
<ステップS65>
PA処理部14(図4参照)は、暗号鍵の長さsBおよび乱数rBの情報を、古典通信路を介して、QKD送信機2cに送信する。
<ステップS66>
ハッシュ関数生成部140は、ストレージ16(図4参照)からQKD送信機2aに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn1(図6ではnと記載)と、乱数rAと、暗号鍵の長さsAとからn1×sAの行列であるハッシュ関数HAaを生成する。ハッシュ関数生成部140は、ストレージ16からQKD送信機2bに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn2(図6ではnと記載)と、乱数rAと、暗号鍵の長さsAとからn2×sAの行列であるハッシュ関数HAbを生成する。ハッシュ関数生成部140は、ストレージ16からQKD送信機2cに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn3(図6ではnと記載)と、乱数rBと、暗号鍵の長さsBとからn3×sBの行列であるハッシュ関数HBを生成する。ただし、上述のように、訂正後ビット列の長さn1〜n3は、同一の値であるので、この値をnとすると、実際には、ハッシュ関数HAa、HAbは、n×sAの同一の行列である。したがって、ハッシュ関数生成部140は、QKD送信機2a、2bに対応する共通のハッシュ関数として、長さnと、乱数rAと、暗号鍵の長さsAとからn×sAの行列であるハッシュ関数HA(=HAa=HAb)を生成する処理を一度実行すればよい。
<ステップS67>
QKD送信機2aのハッシュ関数生成部240(図4参照)は、ストレージ26(図4参照)から訂正後ビット列を読み出し、訂正後ビット列の長さn1と、受信した乱数rAと、暗号鍵の長さsAとからn1×sAの行列であるハッシュ関数HAaを生成する。このQKD送信機2aのハッシュ関数生成部240によって生成されたハッシュ関数HAaは、ハッシュ関数生成部140が生成したハッシュ関数HAと一致する。
<ステップS68>
QKD送信機2bのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn2と、受信した乱数rAと、暗号鍵の長さsAとからn2×sAの行列であるハッシュ関数HAbを生成する。このQKD送信機2bのハッシュ関数生成部240によって生成されたハッシュ関数HAbは、ハッシュ関数生成部140が生成したハッシュ関数HAと一致する。
<ステップS69>
QKD送信機2cのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn3と、受信した乱数rBと、暗号鍵の長さsBとからn3×sBの行列であるハッシュ関数HBを生成する。このQKD送信機2cのハッシュ関数生成部240によって生成されたハッシュ関数HBは、ハッシュ関数生成部140が生成したハッシュ関数HBと一致する。
<ステップS70>
QKD受信機1aの鍵圧縮部141(図4参照)は、QKD送信機2aに対応する訂正後ビット列にハッシュ関数HAaを乗じる鍵圧縮処理によって、長さsAの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。鍵圧縮部141は、QKD送信機2bに対応する訂正後ビット列にハッシュ関数HAbを乗じる鍵圧縮処理によって、長さsAの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。そして、鍵圧縮部141は、QKD送信機2cに対応する訂正後ビット列にハッシュ関数HBを乗じる鍵圧縮処理によって、長さsBの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。
<ステップS71>
QKD送信機2aの鍵圧縮部241(図4参照)は、訂正後ビット列にハッシュ関数HAaを乗じる鍵圧縮処理によって、長さsAの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。
<ステップS72>
QKD送信機2bの鍵圧縮部241は、訂正後ビット列にハッシュ関数HAbを乗じる鍵圧縮処理によって、長さsAの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。
<ステップS73>
QKD送信機2cの鍵圧縮部241は、訂正後ビット列にハッシュ関数HBを乗じる鍵圧縮処理によって、長さsBの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。
以上のように、誤り率決定部12は、各QKD送信機2に応じて算出した誤り率QBERに基づいてグループに分け、各グループにおいて統合誤り率を決定している。これによって、QKD受信機1aおよびQKD送信機2a、2bは、同一の長さsAの暗号鍵を共有することになり、QKD受信機1aおよびQKD送信機2cは、同一の長さsBの暗号鍵を共有することになる。
本実施形態に係るQKD受信機1aは、複数の誤り率QBERの値によって対応するQKD送信機2を複数のグループに分けて、それぞれのグループにおいて統合誤り率を決定するものとしている。これによって、QKD受信機1aは、暗号の長さの算出、乱数の発生、およびハッシュ関数の生成の処理は、QKD送信機2ごとに実行する必要がなく、グループごとに実行すればよいので、処理負荷を軽減することができ、QKD送信機2との処理負荷の偏りを軽減することができる。
また、複数の誤り率QBERを複数のグループに分けるので、同一グループ内では、誤り率QBERの差が大きくなることを抑制でき、そのグループごとに統合誤り率を決定するものとしている。これによって、訂正後ビット列から取り除かれる情報量のうち、盗聴者に漏れていないものまで余計に取り除かれてしまう情報量を低減することができるので、暗号鍵の長さが極端に小さくなることを低減することができ、暗号通信の効率の低下を抑制できる。また、暗号鍵の長さが小さくなることによる暗号通信の効率の低下と、QKD受信機1aとQKD送信機2との処理負荷の偏りとのバランスをとることができる。
図11は、QKD装置のハードウェアの構成図である。図11を参照しながら上述の実施形態に係るQKD装置のハードウェア構成について説明する。
本実施形態に係るQKD装置は、CPU80等の制御装置と、ROM(Read Only Memory)81と、RAM(Random Access Memory)82と、量子通信路における通信を行う第1通信I/F83と、古典通信路における通信を行う第2通信I/F84と、暗号鍵を保存するストレージである外部記憶装置85と、各部を接続するバス86を備えている。
本実施形態に係るQKD装置で実行されるプログラムは、ROM81等に予め組み込まれて提供される。
本実施形態に係るQKD装置で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
さらに、本実施形態に係るQKD装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施形態に係るQKD装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
本実施形態に係るQKD装置で実行されるプログラムは、コンピュータを上述したQKD装置の各部(量子鍵共有部10、誤り訂正部11、誤り率決定部12、鍵長さ算出部13、PA処理部14、アプリケーション処理部15、量子鍵共有部20、誤り訂正部21、PA処理部24およびアプリケーション処理部25)として機能させうる。このコンピュータは、CPU80がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、および変更を行うことができる。これらの実施形態およびその変形は、発明の範囲および要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1、1a QKD受信機
2、2a〜2c QKD送信機
4 光学機器
10 量子鍵共有部
11 誤り訂正部
12 誤り率決定部
13 鍵長さ算出部
14 PA処理部
15 アプリケーション処理部
16 ストレージ
20 量子鍵共有部
21 誤り訂正部
24 PA処理部
25 アプリケーション処理部
26 ストレージ
80 CPU
81 ROM
82 RAM
83 第1通信I/F
84 第2通信I/F
85 外部記憶装置
86 バス
100、100a QKD受信機
140 ハッシュ関数生成部
141 鍵圧縮部
200a〜200e QKD送信機
240 ハッシュ関数生成部
241 鍵圧縮部
300a〜300f QKD装置
400 光学機器
500、500a〜500c 量子アクセスネットワーク
600 量子鍵配送ネットワーク

Claims (9)

  1. 量子通信路を介した複数の他の量子鍵配送装置との量子鍵配送により、共有ビット列を生成する量子鍵共有手段と、
    前記共有ビット列に含まれる誤りを誤り訂正処理により訂正し、訂正後ビット列を生成する訂正手段と、
    前記各他の量子鍵配送装置に対する前記量子通信路における誤り率を算出し、複数の前記誤り率から統合誤り率を決定する決定手段と、
    前記統合誤り率に基づいて共通する暗号鍵の長さを算出する算出手段と、
    前記訂正後ビット列から、前記算出手段によって算出された前記暗号鍵の長さとなるように、鍵圧縮処理によって、前記他の量子鍵配送装置と共有する前記暗号鍵を生成する秘匿性増強手段と、
    を備えた量子鍵配送装置。
  2. 前記決定手段は、複数の前記誤り率における最大値以上の値を前記統合誤り率に決定する請求項1に記載の量子鍵配送装置。
  3. 前記秘匿性増強手段は、
    前記算出手段により算出された前記暗号鍵の長さに応じた大きさのハッシュ関数を生成するための乱数を発生させ、前記訂正後ビット列の長さ、前記乱数および前記暗号鍵の長さから前記ハッシュ関数を生成する関数生成手段と、
    前記訂正後ビット列および前記ハッシュ関数に基づく前記鍵圧縮処理によって前記暗号鍵を生成する圧縮手段と、
    を備えた請求項1または2に記載の量子鍵配送装置。
  4. 前記決定手段は、複数の前記誤り率を複数のグループに分け、前記グループごとに前記統合誤り率を決定し、
    前記算出手段は、前記各統合誤り率に基づいて、前記暗号鍵の長さをそれぞれ算出し、
    前記秘匿性増強手段は、前記訂正後ビット列から、該訂正後ビット列に対応する前記統合誤り率に基づいて算出された前記暗号鍵の長さとなるように、前記鍵圧縮処理によって前記暗号鍵を生成する請求項1〜3のいずれか一項に記載の量子鍵配送装置。
  5. 前記決定手段は、複数の前記誤り率の値に基づいて前記複数のグループに分ける請求項4に記載の量子鍵配送装置。
  6. 前記決定手段は、複数の前記誤り率のうち、最小値と最大値との差が所定の閾値以上である場合、前記統合誤り率は決定せず、
    前記算出手段は、前記決定手段が前記統合誤り率を決定しない場合、複数の前記各誤り率に基づいて、それぞれ前記暗号鍵の長さを算出し、
    前記秘匿性増強手段は、前記各誤り率に対応する前記訂正後ビット列から、前記算出手段によって該誤り率に基づいて算出される前記暗号鍵の長さとなるように、前記鍵圧縮処理によってそれぞれ前記暗号鍵を生成する請求項1〜5のいずれか一項に記載の量子鍵配送装置。
  7. 請求項1〜6のいずれか一項に記載された量子鍵配送装置と、
    前記複数の他の量子鍵配送装置と、
    を備え、
    前記秘匿性増強手段は、前記算出手段によって算出された前記暗号鍵の長さを前記複数の他の量子鍵配送装置に送信し、
    前記複数の他の量子鍵配送装置は、
    前記量子鍵共有手段と共有した前記共有ビット列から誤り訂正処理により、訂正後ビット列を生成し、
    該訂正後ビット列から、前記秘匿性増強手段から受信した前記暗号鍵の長さとなるように、請求項1〜6のいずれか一項に記載された量子鍵配送装置と同様の方法に基づく前記鍵圧縮処理によって暗号鍵を生成する量子鍵配送システム。
  8. 請求項1〜6のいずれか一項に記載された量子鍵配送装置と、前記複数の他の量子鍵配送装置とが、光学機器を介して前記量子通信路によって接続された量子アクセスネットワークを構成する請求項7に記載の量子鍵配送システム。
  9. 量子通信路を介した複数の他の量子鍵配送装置との量子鍵配送により、共有ビット列を生成するステップと、
    前記共有ビット列から誤り訂正処理により、訂正後ビット列を生成するステップと、
    前記各他の量子鍵配送装置に対する前記量子通信路における誤り率を算出し、複数の前記誤り率から統合誤り率を決定するステップと、
    前記統合誤り率に基づいて共通する暗号鍵の長さを算出するステップと、
    前記訂正後ビット列から、算出した前記暗号鍵の長さとなるように、鍵圧縮処理によって、前記他の量子鍵配送装置と共有する前記暗号鍵を生成するステップと、
    を有する量子鍵配送方法。
JP2014015771A 2014-01-30 2014-01-30 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法 Active JP6165646B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014015771A JP6165646B2 (ja) 2014-01-30 2014-01-30 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
US14/605,331 US9350542B2 (en) 2014-01-30 2015-01-26 Quantum key distribution device, quantum key distribution system, and quantum key distribution method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014015771A JP6165646B2 (ja) 2014-01-30 2014-01-30 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法

Publications (2)

Publication Number Publication Date
JP2015142339A JP2015142339A (ja) 2015-08-03
JP6165646B2 true JP6165646B2 (ja) 2017-07-19

Family

ID=53680130

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014015771A Active JP6165646B2 (ja) 2014-01-30 2014-01-30 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法

Country Status (2)

Country Link
US (1) US9350542B2 (ja)
JP (1) JP6165646B2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6359285B2 (ja) * 2014-02-17 2018-07-18 株式会社東芝 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
US10756891B2 (en) * 2014-04-09 2020-08-25 The Boeing Company Secure data communication
JP6400513B2 (ja) * 2015-03-18 2018-10-03 株式会社東芝 量子鍵配送装置、量子鍵配送方法およびプログラム
CN106161402B (zh) * 2015-04-22 2019-07-16 阿里巴巴集团控股有限公司 基于云环境的加密机密钥注入系统、方法及装置
CN106470101B (zh) * 2015-08-18 2020-03-10 阿里巴巴集团控股有限公司 用于量子密钥分发过程的身份认证方法、装置及系统
JP6490613B2 (ja) * 2016-03-14 2019-03-27 株式会社東芝 通信装置、量子鍵配送システム、量子鍵配送方法およびプログラム
KR101830339B1 (ko) * 2016-05-20 2018-03-29 한국전자통신연구원 양자 네트워크상에서의 양자키 분배 장치 및 방법
GB2551483B (en) * 2016-06-13 2020-05-27 Toshiba Res Europe Limited A photon detection device and a method of manufacturing a photon detection device
CN107645376B (zh) * 2016-07-22 2021-01-05 北京大学 一种用于连续变量量子密钥分发中的长码私钥放大方法
US20180255039A1 (en) * 2017-03-06 2018-09-06 Kabushiki Kaisha Toshiba Key sharing device, key sharing system, key sharing method, and computer program product
JP6678614B2 (ja) * 2017-03-17 2020-04-08 株式会社東芝 送信装置、多重量子通信システム及び多重量子通信方法
CN109428711B (zh) * 2017-08-23 2022-04-29 科大国盾量子技术股份有限公司 用于量子密钥分发系统的初始密钥纠错模块及方法
KR102028098B1 (ko) 2018-01-29 2019-10-02 한국전자통신연구원 양자암호통신 인증 장치 및 방법
KR102011042B1 (ko) * 2018-06-11 2019-08-14 한국과학기술연구원 공증된 양자 암호 시스템 및 방법
CN109194468B (zh) * 2018-07-20 2021-08-31 国科量子通信网络有限公司 中继节点的部署方法、装置与设备、计算机可读存储介质
JP6926042B2 (ja) * 2018-09-19 2021-08-25 株式会社東芝 鍵生成装置、鍵生成方法及びプログラム
GB2581528B (en) * 2019-02-22 2022-05-18 Toshiba Kk A method, a communication network and a node for exchanging a cryptographic key
JP2020167509A (ja) * 2019-03-29 2020-10-08 コベルコ建機株式会社 情報処理システム、情報処理方法、およびプログラム
CN113271208B (zh) * 2021-05-25 2022-11-08 哈尔滨工业大学 基于多线性模数哈希函数的保密增强方法及装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0717895B1 (en) * 1993-09-09 1998-11-25 BRITISH TELECOMMUNICATIONS public limited company Key distribution in a multiple access network using quantum cryptography
WO2006006232A1 (ja) * 2004-07-12 2006-01-19 Mitsubishi Denki Kabushiki Kaisha 量子暗号鍵配送システム
US7653199B2 (en) * 2004-07-29 2010-01-26 Stc. Unm Quantum key distribution
JP4608412B2 (ja) * 2005-10-21 2011-01-12 日本電信電話株式会社 量子秘密鍵配送システムおよび量子秘密鍵配送方法
GB0801408D0 (en) * 2008-01-25 2008-03-05 Qinetiq Ltd Multi-community network with quantum key distribution
US8483394B2 (en) * 2010-06-15 2013-07-09 Los Alamos National Security, Llc Secure multi-party communication with quantum key distribution managed by trusted authority
GB201020424D0 (en) * 2010-12-02 2011-01-19 Qinetiq Ltd Quantum key distribution
SG194133A1 (en) * 2011-04-08 2013-11-29 Nec Corp Communication device and cryptographic key creation method in cryptographic key sharing system
EP2555466B1 (en) * 2011-08-05 2014-07-02 SELEX ES S.p.A. System for distributing cryptographic keys
CA2883444C (en) * 2011-09-12 2020-04-14 Norbert Lutkenhaus System and method for quantum key distribution
US9509506B2 (en) * 2011-09-30 2016-11-29 Los Alamos National Security, Llc Quantum key management
US8693691B2 (en) * 2012-05-25 2014-04-08 The Johns Hopkins University Embedded authentication protocol for quantum key distribution systems
WO2014035696A2 (en) * 2012-08-30 2014-03-06 Los Alamos National Security, Llc Multi-factor authentication using quantum communication

Also Published As

Publication number Publication date
JP2015142339A (ja) 2015-08-03
US20150215122A1 (en) 2015-07-30
US9350542B2 (en) 2016-05-24

Similar Documents

Publication Publication Date Title
JP6165646B2 (ja) 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
JP6359285B2 (ja) 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
JP6490613B2 (ja) 通信装置、量子鍵配送システム、量子鍵配送方法およびプログラム
JP7021272B2 (ja) セキュアな通信ネットワーク
JP6478749B2 (ja) 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
CA2883444C (en) System and method for quantum key distribution
CN105553649B (zh) 用于产生秘密密钥的方法和装置
JP5424008B2 (ja) 共有情報の管理方法およびシステム
US10291400B2 (en) Quantum key distribution device, quantum key distribution system, and quantum key distribution method
KR20190005878A (ko) 보안 데이터 송신을 위한 방법 및 시스템
US10223182B2 (en) Communication device, communication system, and computer program product
JP6169028B2 (ja) 通信装置、通信システムおよび通信方法
US20170230338A1 (en) Encrypted and authenticated data frame
GB2553167B (en) Communication device, communication method, and communication system
US9923720B2 (en) Network device configured to derive a shared key
US20170222803A1 (en) Communication device, cryptographic communication system, cryptographic communication method, and computer program product
JP6400441B2 (ja) 量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法
US9509589B2 (en) Communication device, communication system, communication method, and computer program product
JP2017169187A (ja) 量子鍵配送装置、量子鍵配送システム、および量子鍵配送方法
JP6396225B2 (ja) 量子鍵配送装置、量子鍵配送システムおよびプログラム
RU2764458C1 (ru) Способ распределения симметричных ключей между узлами вычислительной сети с системой квантового распределения ключей
JP6926042B2 (ja) 鍵生成装置、鍵生成方法及びプログラム
RU2812343C1 (ru) Способ управления ресурсами аутентификации в сетях квантового распределения ключей, описываемых связными графами произвольных конфигураций
JP2017139728A (ja) 通信装置、暗号通信システム、暗号通信方法およびプログラム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20151102

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160829

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170512

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170523

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170621

R151 Written notification of patent or utility model registration

Ref document number: 6165646

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151