図面 (/)

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

出願人 株式会社東芝
発明者 高橋莉里香谷澤佳道
出願日 2014年1月30日 (6年10ヶ月経過) 出願番号 2014-015771
公開日 2015年8月3日 (5年4ヶ月経過) 公開番号 2015-142339
状態 特許登録済
技術分野 暗号化・復号化装置及び秘密通信
主要キーワード 基底情報 不確定性原理 種類目 物理的現象 古典通信路 物理乱数 シフティング 量子通信路
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2015年8月3日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (12)

課題

量子鍵配送を行う送信機および受信機の処理の負荷偏り緩和することで、効率よく暗号鍵共有を行う量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法を提供する。

解決手段

実施形態の量子鍵配送装置は、量子鍵共有手段と、訂正手段と、決定手段と、算出手段と、秘匿性増強手段と、を備える。量子鍵共有手段は、量子通信路を介した複数の他の量子鍵配送装置との量子鍵配送により、共有ビット列を生成する。訂正手段は、共有ビット列から誤り訂正処理により訂正後ビット列を生成する。決定手段は、各他の量子鍵配送装置の量子通信路の誤り率を算出して統合誤り率を決定する。算出手段は、統合誤り率に基づき暗号鍵の長さを算出する。秘匿性増強手段は、訂正後ビット列から、算出手段により算出された暗号鍵の長さとなるように、鍵圧縮処理で他の量子鍵配送装置と共有する暗号鍵を生成する。

概要

背景

量子鍵配送システムは、送信機受信機と、それを接続する光ファイバとを含んで構成される。送信機は、光ファイバ(量子通信路)を介して、光子を受信機に送信する。その後、送信機と受信機が相互に制御情報交換することによって、送信機と受信機との間で暗号鍵共有する。この技術は一般に量子鍵配送(QKD:Quantum Key Distribution)と呼ばれる技術により実現される。

QKDでは、暗号鍵を共有するため利用される光子は、観測されることにより状態が変化する量子力学基本原理である不確定性原理を有する。この性質により、送信機が送信した光子を量子通信路上で盗聴者が観測すると、光子の状態が変化し、光子を受信した受信機は、盗聴者に光子を観測されたことを知ることができる。

また、従来の量子鍵配送システムは、1対1のノードでの暗号鍵の共有を想定しており、光子を送信する送信機と、光子を受信する受信機とのペアによって暗号鍵の共有を行っている。一方、近年、光学機器を介して接続された1対多のノードでの暗号鍵の共有が可能とされており、一つの受信機と多数の送信機とによって暗号鍵の共有を可能とする量子アクセスネットワークQAN:Quantum Access Network)が注目されている。

概要

量子鍵配送を行う送信機および受信機の処理の負荷偏り緩和することで、効率よく暗号鍵の共有を行う量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法を提供する。実施形態の量子鍵配送装置は、量子鍵共有手段と、訂正手段と、決定手段と、算出手段と、秘匿性増強手段と、を備える。量子鍵共有手段は、量子通信路を介した複数の他の量子鍵配送装置との量子鍵配送により、共有ビット列を生成する。訂正手段は、共有ビット列から誤り訂正処理により訂正後ビット列を生成する。決定手段は、各他の量子鍵配送装置の量子通信路の誤り率を算出して統合誤り率を決定する。算出手段は、統合誤り率に基づき暗号鍵の長さを算出する。秘匿性増強手段は、訂正後ビット列から、算出手段により算出された暗号鍵の長さとなるように、鍵圧縮処理で他の量子鍵配送装置と共有する暗号鍵を生成する。

目的

本発明は、上記に鑑みてなされたものであって、量子鍵配送を行う送信機および受信機の処理の負荷の偏りを緩和することで、効率よく暗号鍵の共有を行う量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法を提供する

効果

実績

技術文献被引用数
1件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

量子通信路を介した複数の他の量子鍵配送装置との量子鍵配送により、共有ビット列を生成する量子鍵共有手段と、前記共有ビット列に含まれる誤り誤り訂正処理により訂正し、訂正後ビット列を生成する訂正手段と、前記各他の量子鍵配送装置に対する前記量子通信路における誤り率を算出し、複数の前記誤り率から統合誤り率を決定する決定手段と、前記統合誤り率に基づいて共通する暗号鍵の長さを算出する算出手段と、前記訂正後ビット列から、前記算出手段によって算出された前記暗号鍵の長さとなるように、鍵圧縮処理によって、前記他の量子鍵配送装置と共有する前記暗号鍵を生成する秘匿性増強手段と、を備えた量子鍵配送装置。

請求項2

前記決定手段は、複数の前記誤り率における最大値以上の値を前記統合誤り率に決定する請求項1に記載の量子鍵配送装置。

請求項3

前記秘匿性増強手段は、前記算出手段により算出された前記暗号鍵の長さに応じた大きさのハッシュ関数を生成するための乱数を発生させ、前記訂正後ビット列の長さ、前記乱数および前記暗号鍵の長さから前記ハッシュ関数を生成する関数生成手段と、前記訂正後ビット列および前記ハッシュ関数に基づく前記鍵圧縮処理によって前記暗号鍵を生成する圧縮手段と、を備えた請求項1または2に記載の量子鍵配送装置。

請求項4

前記決定手段は、複数の前記誤り率を複数のグループに分け、前記グループごとに前記統合誤り率を決定し、前記算出手段は、前記各統合誤り率に基づいて、前記暗号鍵の長さをそれぞれ算出し、前記秘匿性増強手段は、前記訂正後ビット列から、該訂正後ビット列に対応する前記統合誤り率に基づいて算出された前記暗号鍵の長さとなるように、前記鍵圧縮処理によって前記暗号鍵を生成する請求項1〜3のいずれか一項に記載の量子鍵配送装置。

請求項5

前記決定手段は、複数の前記誤り率の値に基づいて前記複数のグループに分ける請求項4に記載の量子鍵配送装置。

請求項6

前記決定手段は、複数の前記誤り率のうち、最小値と最大値との差が所定の閾値以上である場合、前記統合誤り率は決定せず、前記算出手段は、前記決定手段が前記統合誤り率を決定しない場合、複数の前記各誤り率に基づいて、それぞれ前記暗号鍵の長さを算出し、前記秘匿性増強手段は、前記各誤り率に対応する前記訂正後ビット列から、前記算出手段によって該誤り率に基づいて算出される前記暗号鍵の長さとなるように、前記鍵圧縮処理によってそれぞれ前記暗号鍵を生成する請求項1〜5のいずれか一項に記載の量子鍵配送装置。

請求項7

請求項1〜6のいずれか一項に記載された量子鍵配送装置と、前記複数の他の量子鍵配送装置と、を備え、前記秘匿性増強手段は、前記算出手段によって算出された前記暗号鍵の長さを前記複数の他の量子鍵配送装置に送信し、前記複数の他の量子鍵配送装置は、前記量子鍵共有手段と共有した前記共有ビット列から誤り訂正処理により、訂正後ビット列を生成し、該訂正後ビット列から、前記秘匿性増強手段から受信した前記暗号鍵の長さとなるように、請求項1〜6のいずれか一項に記載された量子鍵配送装置と同様の方法に基づく前記鍵圧縮処理によって暗号鍵を生成する量子鍵配送システム

請求項8

請求項1〜6のいずれか一項に記載された量子鍵配送装置と、前記複数の他の量子鍵配送装置とが、光学機器を介して前記量子通信路によって接続された量子アクセスネットワークを構成する請求項7に記載の量子鍵配送システム。

請求項9

量子通信路を介した複数の他の量子鍵配送装置との量子鍵配送により、共有ビット列を生成するステップと、前記共有ビット列から誤り訂正処理により、訂正後ビット列を生成するステップと、前記各他の量子鍵配送装置に対する前記量子通信路における誤り率を算出し、複数の前記誤り率から統合誤り率を決定するステップと、前記統合誤り率に基づいて共通する暗号鍵の長さを算出するステップと、前記訂正後ビット列から、算出した前記暗号鍵の長さとなるように、鍵圧縮処理によって、前記他の量子鍵配送装置と共有する前記暗号鍵を生成するステップと、を有する量子鍵配送方法

技術分野

0001

本発明の実施形態は、量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法に関する。

背景技術

0002

量子鍵配送システムは、送信機受信機と、それを接続する光ファイバとを含んで構成される。送信機は、光ファイバ(量子通信路)を介して、光子を受信機に送信する。その後、送信機と受信機が相互に制御情報交換することによって、送信機と受信機との間で暗号鍵共有する。この技術は一般に量子鍵配送(QKD:Quantum Key Distribution)と呼ばれる技術により実現される。

0003

QKDでは、暗号鍵を共有するため利用される光子は、観測されることにより状態が変化する量子力学基本原理である不確定性原理を有する。この性質により、送信機が送信した光子を量子通信路上で盗聴者が観測すると、光子の状態が変化し、光子を受信した受信機は、盗聴者に光子を観測されたことを知ることができる。

0004

また、従来の量子鍵配送システムは、1対1のノードでの暗号鍵の共有を想定しており、光子を送信する送信機と、光子を受信する受信機とのペアによって暗号鍵の共有を行っている。一方、近年、光学機器を介して接続された1対多のノードでの暗号鍵の共有が可能とされており、一つの受信機と多数の送信機とによって暗号鍵の共有を可能とする量子アクセスネットワークQAN:Quantum Access Network)が注目されている。

先行技術

0005

Iris Choi, Robert J. Young and Paul D. Townsend,“Quantum key distribution on a 10Gb/sWDMPON”, OPTICS EXPRESS 9601, Vol. 18, No. 9, April 2010.

発明が解決しようとする課題

0006

QKDにおいて共有する暗号鍵の生成のために、送信機と受信機との間で通信を行いながら鍵蒸留処理を行う。鍵蒸留処理は、暗号鍵の基になるビット列を送信機と受信機との間で共有するシフティング処理、共有したビット列の誤り訂正する誤り訂正処理、ならびに、シフティング処理および誤り訂正処理において盗聴者に漏れた情報を除くための鍵圧縮処理(PA(Privacy Amplification:秘匿性増強)処理)等によって構成される。

0007

量子アクセスネットワークを含む1対多の量子鍵配送システムにおいては、送信機と受信機とで暗号鍵を共有するための鍵蒸留処理は、各ノード(送信機および受信機)で実施される。この場合、1対多の「多」に属するノードは、自身の鍵蒸留処理のみを行うのに対し、「多」に属するノードに接続する1つのノードは、複数のノードに対応した鍵蒸留処理をすべて実施しなければならない。したがって、複数のノード(送信機または受信機)に接続する1つのノード(受信機または送信機)は、多くの処理を実行しなければならないため、複数のノードに比べて処理の負荷偏りが生じるという問題点がある。

0008

本発明は、上記に鑑みてなされたものであって、量子鍵配送を行う送信機および受信機の処理の負荷の偏りを緩和することで、効率よく暗号鍵の共有を行う量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法を提供することを目的とする。

課題を解決するための手段

0009

実施形態の量子鍵配送装置は、量子鍵共有手段と、訂正手段と、決定手段と、算出手段と、秘匿性増強手段と、を備える。量子鍵共有手段は、量子通信路を介した複数の他の量子鍵配送装置との量子鍵配送により、共有ビット列を生成する。訂正手段は、共有ビット列に含まれる誤りを誤り訂正処理により訂正し、訂正後ビット列を生成する。決定手段は、各他の量子鍵配送装置に対する量子通信路における誤り率を算出し、複数の誤り率から統合誤り率を決定する。算出手段は、統合誤り率に基づいて共通する暗号鍵の長さを算出する。秘匿性増強手段は、訂正後ビット列から、算出手段によって算出された暗号鍵の長さとなるように、鍵圧縮処理によって、他の量子鍵配送装置と共有する暗号鍵を生成する。

図面の簡単な説明

0010

図1は、量子鍵配送ネットワーク概略構成を示す図である。
図2は、第1の実施形態の量子アクセスネットワークの構成を示す図である。
図3は、第1の実施形態の量子アクセスネットワークの構成の具体例を示す図である。
図4は、QKD受信機およびQKD送信機のブロック構成を示す図である。
図5は、量子アクセスネットワークでの従来のQKD装置の動作を示すシーケンス図である。
図6は、鍵圧縮処理を説明する図である。
図7は、第1の実施形態のQKD装置の動作を示すシーケンス図である。
図8は、第1の実施形態の変形例の量子アクセスネットワークの構成を示す図である。
図9は、第2の実施形態の量子アクセスネットワークの構成の具体例を示す図である。
図10は、第2の実施形態のQKD装置の動作を示すシーケンス図である。
図11は、QKD装置のハードウェアの構成図である。

実施例

0011

以下に、図面を参照しながら、本発明の実施形態に係る量子鍵配送装置、量子鍵配送システムおよび量子鍵配送方法を詳細に説明する。また、以下の図面において、同一の部分には同一の符号が付してある。ただし、図面は模式的なものであり、厚みと平面寸法との関係、各層の厚みの比率等は現実のものとは異なる場合がある。したがって、具体的な厚みおよび寸法は以下の説明を参酌して判断すべきものである。

0012

(第1の実施形態)
図1は、量子鍵配送ネットワークの概略構成を示す図である。図2は、第1の実施形態の量子アクセスネットワークの構成を示す図である。図1を参照しながら、量子鍵配送ネットワーク600および量子アクセスネットワーク500の構成について説明する。

0013

図1に示すように、量子鍵配送ネットワーク600は、QKD装置300a〜300fが互いに1対1で量子通信路によって接続(リンク)されたネットワークである。図1に示すQKD装置の1対1のリンクそれぞれにおいて、量子鍵配送によって同一の暗号鍵を生成して共有される。

0014

QKD装置300a〜300fのうち、QKD装置300aは、光学機器400を介して複数のQKD送信機200a〜200eに量子通信路によって接続されている。この場合のQKD装置300aは、QKD受信機100として機能している。このQKD受信機100、光学機器400、およびQKD送信機200a〜200eを含むネットワークは、量子アクセスネットワーク500を構成している。

0015

図2は、量子アクセスネットワーク500の構成の詳細を示している。ただし、図2においては、1対多の量子アクセスネットワークを一般化して示すためn台のQKD送信機200_1〜200_nが、光学機器400を介してQKD受信機100に接続された状態を示している。QKD受信機100は、量子通信路となる光ファイバケーブルによって、光学機器400に接続されている。QKD送信機200_1〜200_nも、それぞれ量子通信路となる光ファイバケーブルによって、光学機器400に接続されている。

0016

図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としているが、これに限定されるものではなく、その他の方法により算出された誤り率としてもよい。

0017

図3は、第1の実施形態の量子アクセスネットワークの構成の具体例を示す図である。図3を参照しながら、1つのQKD受信機に対して、3つのQKD送信機が接続された量子アクセスネットワークの構成について説明する。すなわち、本実施形態においては、量子鍵配送システムとして、量子アクセスネットワークを例に説明する。

0018

図3に示すように、量子アクセスネットワーク500aは、QKD受信機1と、QKD送信機2a〜2cと、光学機器4と、を含んで構成されている。QKD受信機1は、量子通信路となる光ファイバケーブルによって、光学機器4に接続されている。QKD送信機2a〜2cも、それぞれ量子通信路となる光ファイバケーブルによって、光学機器4に接続されている。以下、QKD送信機2a〜2cを区別なく呼称する場合、または総称する場合、単に「QKD送信機2」というものとする。

0019

QKD送信機2a〜2cは、例えば、乱数によって発生させた、暗号鍵を生成する基となる単一光子から構成されるビット列(以下、光子ビット列という)を、それぞれ光学機器4を介して、QKD受信機1へ送信する。QKD送信機2a〜2cは、それぞれ送信した光子ビット列を基に、シフティング処理、誤り訂正処理およびPA(秘匿性増強)処理(鍵圧縮処理)等を実行して、暗号鍵を生成する。

0020

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種類目の鍵を有する。

0021

なお、図示していないが、QKD受信機1とQKD送信機2a〜2cとは、光ファイバケーブルの量子通信路以外に、通常の「0」と「1」とのデジタルデータを通信する通信ケーブル古典通信路)で接続されている。古典通信路は、有線である必要はなく、無線であってもよい。

0022

このようなQKD受信機1とQKD送信機2とを含む量子アクセスネットワーク500aにおいて、QKD送信機2が送信した単一光子を量子通信路である光ファイバケーブル上で盗聴者が観測すると、光子の物理的変化が発生し、光子を受信したQKD受信機1は、盗聴者に光子を観測されたことを知ることができる。なお、QKD受信機1およびQKD送信機2の暗号鍵の生成動作の詳細については、後述する。また、QKD受信機1およびQKD送信機2を総称する場合、「QKD装置」というものとする。

0023

図4は、QKD送信機およびQKD受信機のブロック構成を示す図である。図4を参照しながら、QKD受信機1およびQKD受信機2の機能ブロック構成について説明する。

0024

図4に示すように、QKD受信機1(量子鍵配送装置)は、量子鍵共有部10(量子鍵共有手段)と、誤り訂正部11(訂正手段)と、誤り率決定部12(決定手段)と、鍵長さ算出部13(算出手段)と、PA処理部14(秘匿性増強手段)と、アプリケーション処理部15と、ストレージ16と、を備えている。

0025

量子鍵共有部10は、量子通信路を介して、QKD送信機2から光子ビット列を受信し、ランダムに発生させた基底情報に基づいて、光子ビット列を読み取る。次に、量子鍵共有部10は、QKD送信機2(後述する量子鍵共有部20)が光子ビット列を送信するためにランダムに発生させた基底情報を受信する。そして、量子鍵共有部10は、自ら発生した基底情報と量子鍵共有部20から受信した基底情報とを比較して、一致する部分に対応するビットを光子ビット列から抽出して、共有ビット列とし、ストレージ16に保存する。共有ビット列の長さは、量子鍵共有部10および量子鍵共有部20がランダムに発生させた基底情報に基づいて定まるので、統計上、光子ビット列の略1/2の長さとなる。ここで、量子鍵共有部10は、後段の処理を簡略化するため、各QKD送信機2に対応する共有ビット列の長さを統一させる。

0026

誤り訂正部11は、ストレージ16から共有ビット列を読み出し、古典通信路を介して、後述する誤り訂正部21と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する。誤り訂正部11は、生成した訂正後ビット列を、ストレージ16に保存する。この誤り訂正部11が生成した訂正後ビット列は、後述するQKD送信機2の誤り訂正部21が、共有ビット列を訂正(誤り訂正処理)して生成した訂正後ビット列と一致する。また、訂正後ビット列は、共有ビット列のビット誤りを訂正したビット列なので、共有ビット列および訂正後ビット列の長さは同一である。

0027

誤り率決定部12は、訂正後ビット列を生成する誤り訂正処理において訂正した誤りの数から誤り率QBERを算出する。誤り率決定部12は、QKD受信機1にQKD送信機2a〜2cが接続されているので、QKD送信機2a〜2cに対応するそれぞれの誤り率QBER1〜QBER3を算出する。そして、誤り率決定部12は、算出した誤り率QBER1〜QBER3のうちの最大値を統合誤り率QBERmaxとして決定する。

0028

ここで、統合誤り率QBERmaxを、誤り率QBER1〜QBER3のうちの最大値とするのは、暗号鍵による暗号通信の安全性を確保するためである。誤り率QBERが大きいほど盗聴者に漏れている情報量が多いと考えられ、小さいほど漏れている情報量が小さいと考えられる。本実施の形態では、後述するように、鍵長さ算出部13によって暗号鍵の長さsを共通の統合誤り率QBERmaxに基づいて算出するため、統合誤り率を、例えば、最小値に決定すると、盗聴者に漏れた情報を小さく見積もることになり、本来盗聴者に漏れている情報を取り除けない場合があるからである。そのため、統合誤り率を、誤り率QBER1〜QBER3のうちの最大値とし、誤り率を高く見積もることによって、盗聴者に漏れた情報を完全に取り除き、安全性に影響がないようにする。

0029

鍵長さ算出部13は、誤り率決定部12より決定された統合誤り率QBERmaxに応じて、最終的に生成すべき暗号鍵の長さsを算出する。この暗号鍵の長さsは、QKD受信機1と各QKD送信機2(QKD送信機2a〜2c)との間の各リンクにおいて共通の値である。

0030

PA処理部14は、ハッシュ関数生成部140(関数生成手段)と、鍵圧縮部141(圧縮手段)と、を有する。PA処理部14は、訂正後ビット列に対して、量子鍵共有部10および誤り訂正部11の処理の際に盗聴者により盗聴された可能性のある情報量を取り除くための鍵圧縮処理(秘匿性増強処理、PA処理)を行う。

0031

ハッシュ関数生成部140は、後述の鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さsに応じた大きさのハッシュ関数を生成するための乱数rを発生させる。PA処理部14は、暗号鍵の長さsおよび乱数rの情報を、古典通信路を介して、各QKD送信機2(PA処理部24)に送信する。ハッシュ関数生成部140は、ストレージ16から訂正後ビット列を読み出し、訂正後ビット列の長さと、乱数rと、暗号鍵の長さsとからハッシュ関数を生成する。鍵圧縮部141は、訂正後ビット列にハッシュ関数を乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。

0032

アプリケーション処理部15は、必要に応じてストレージ16から暗号鍵を読み出し、暗号鍵を外部のアプリケーションに暗号通信用に提供する。

0033

なお、上述の量子鍵共有部10、誤り訂正部11、誤り率決定部12、鍵長さ算出部13、PA処理部14およびアプリケーション処理部15は、それぞれ後述するCPU(Central Processing Unit)80上で実行されるプログラムによって実現されてもよく、または、ハードウェア回路によって実現されてもよい。また、量子鍵共有部10および誤り訂正部11は、それぞれ共有ビット列および訂正後ビット列をストレージ16に保存するものとしているが、必ずしも保存する必要はない。

0034

図4に示すように、QKD送信機2(他の量子鍵配送装置)は、量子鍵共有部20と、誤り訂正部21と、PA処理部24と、アプリケーション処理部25と、ストレージ26と、を備えている。

0035

量子鍵共有部20は、例えば、乱数によって発生させたビット列に対して、ランダムに発生させた基底情報に基づく状態とした単一光子から構成される光子ビット列を、量子通信路を介して、QKD受信機1に送信する。次に、量子鍵共有部20は、QKD受信機1(量子鍵共有部10)が受信した光子ビット列を読み取るためにランダムに発生させた基底情報を受信する。そして、量子鍵共有部20は、自ら発生した基底情報と量子鍵共有部10から受信した基底情報とを比較して、一致する部分に対応するビットを光子ビット列から抽出して、共有ビット列とし、ストレージ26に保存する。共有ビット列の長さは、量子鍵共有部10および量子鍵共有部20がランダムに発生させた基底情報に基づいて定まるので、統計上、光子ビット列の略1/2の長さとなる。ここで、量子鍵共有部20は、後段の処理を簡略化するため、量子鍵共有部10が有する共有ビット列の長さと同一にする。その結果、量子鍵共有部20が有する共有ビット列の長さは、他のQKD送信機2が有する共有ビット列の長さとも同一となる。

0036

誤り訂正部21は、ストレージ26から共有ビット列を読み出し、古典通信路を介して、誤り訂正部11と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する。誤り訂正部21は、生成した訂正後ビット列を、ストレージ26に保存する。この誤り訂正部21が生成した訂正後ビット列は、QKD受信機1の誤り訂正部11が、共有ビット列を訂正(誤り訂正処理)して生成した訂正後ビット列と一致する。また、訂正後ビット列は、共有ビット列のビット誤りを訂正したビット列なので、共有ビット列および訂正後ビット列の長さは同一である。

0037

PA処理部24は、ハッシュ関数生成部240と、鍵圧縮部241と、を有する。PA処理部24は、訂正後ビット列に対して、量子鍵共有部20および誤り訂正部21の処理の際に盗聴者により盗聴された可能性のある情報量を取り除くための鍵圧縮処理(秘匿性増強処理、PA処理)を行う。

0038

PA処理部24は、古典通信路を介して、PA処理部14から暗号鍵の長さsおよび乱数rの情報を受信する。ハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さと、乱数rと、暗号鍵の長さsとからハッシュ関数を生成する。鍵圧縮部241は、訂正後ビット列にハッシュ関数を乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。アプリケーション処理部25は、必要に応じてストレージ26から暗号鍵を読み出し、暗号鍵を外部のアプリケーションに暗号通信用に提供する。

0039

なお、上述の量子鍵共有部20、誤り訂正部21、PA処理部24およびアプリケーション処理部25は、それぞれ後述するCPU80上で実行されるプログラムによって実現されてもよく、または、ハードウェア回路によって実現されてもよい。また、量子鍵共有部20および誤り訂正部21は、それぞれ共有ビット列および訂正後ビット列をストレージ26に保存するものとしているが、必ずしも保存する必要はない。

0040

図5は、量子アクセスネットワークでの従来のQKD受信機およびQKD送信機の動作を示すシーケンス図である。図6は、鍵圧縮処理を説明する図である。図5および6を参照しながら、QKD受信機1およびQKD送信機2(QKD送信機2a〜2c)による従来の暗号鍵の生成動作について説明する。

0041

<ステップS101>
各QKD送信機2の量子鍵共有部20は、例えば、乱数によって発生させたビット列に対して、ランダムに発生させた基底情報に基づく状態とした単一光子から構成される光子ビット列を、量子通信路を介して、QKD受信機1の量子鍵共有部10に送信する。一方、量子鍵共有部10は、量子通信路を介して、量子鍵共有部20から光子ビット列を受信し、ランダムに発生させた基底情報に基づいて、光子ビット列を読み取る。

0042

<ステップS102>
量子鍵共有部20は、量子鍵共有部10が受信した光子ビット列を読み取るためにランダムに発生させた基底情報を受信する。一方、量子鍵共有部10は、量子鍵共有部20が光子ビット列を送信するためにランダムに発生させた基底情報を受信する。

0043

量子鍵共有部20は、自ら発生した基底情報と量子鍵共有部10から受信した基底情報とを比較して、一致する部分に対応するビットを光子ビット列から抽出して共有ビット列とするシフティング処理を行い、共有ビット列をストレージ26に保存する。量子鍵共有部20は、生成した共有ビット列を、誤り訂正部21に渡す。

0044

量子鍵共有部10は、自ら発生した基底情報と量子鍵共有部20から受信した基底情報とを比較して、一致する部分に対応するビットを光子ビット列から抽出して、共有ビット列とするシフティング処理を行い、共有ビット列をストレージ16に保存する。量子鍵共有部10は、生成した共有ビット列を、誤り訂正部11に渡す。このとき、量子鍵共有部10は、各QKD送信機2に対応して3種類の共有ビット列を生成することになる。

0045

<ステップS103>
誤り訂正部11は、ストレージ16から共有ビット列を読み出し、古典通信路を介して、誤り訂正部21と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する誤り訂正処理を実行する。誤り訂正部11は、生成した訂正後ビット列を、ストレージ16に保存する。このとき、誤り訂正部11は、各QKD送信機2に対応して3種類の訂正後ビット列を生成することになる。

0046

<ステップS104>
QKD送信機2aの誤り訂正部21は、ストレージ26から共有ビット列を読み出し、古典通信路を介して、誤り訂正部11と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する誤り訂正処理を実行する。QKD送信機2aの誤り訂正部21は、生成した訂正後ビット列を、ストレージ26に保存する。このQKD送信機2aの誤り訂正部21が生成した訂正後ビット列は、誤り訂正部11が、QKD送信機2aに対応する共有ビット列を訂正して生成した訂正後ビット列と一致する。

0047

<ステップS105>
QKD送信機2bの誤り訂正部21は、ストレージ26から共有ビット列を読み出し、古典通信路を介して、誤り訂正部11と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する誤り訂正処理を実行する。QKD送信機2bの誤り訂正部21は、生成した訂正後ビット列を、ストレージ26に保存する。このQKD送信機2bの誤り訂正部21が生成した訂正後ビット列は、誤り訂正部11が、QKD送信機2bに対応する共有ビット列を訂正して生成した訂正後ビット列と一致する。

0048

<ステップS106>
QKD送信機2cの誤り訂正部21は、ストレージ26から共有ビット列を読み出し、古典通信路を介して、誤り訂正部11と制御データを交換することにより、共有ビット列のビット誤りを訂正して、訂正後のビット列である訂正後ビット列を生成する誤り訂正処理を実行する。QKD送信機2cの誤り訂正部21は、生成した訂正後ビット列を、ストレージ26に保存する。このQKD送信機2cの誤り訂正部21が生成した訂正後ビット列は、誤り訂正部11が、QKD送信機2cに対応する共有ビット列を訂正して生成した訂正後ビット列と一致する。

0049

<ステップS107>
誤り率決定部12は、訂正後ビット列を生成する誤り訂正処理において訂正した誤りの数から誤り率QBERを算出する。誤り率決定部12は、QKD受信機1にQKD送信機2a〜2cが接続されているので、QKD送信機2a〜2cに対応するそれぞれの誤り率QBER1〜QBER3を算出する。

0050

<ステップS108>
鍵長さ算出部13は、誤り率決定部12より決定されたQKD送信機2aに対応する誤り率QBER1に応じて、最終的に生成すべき暗号鍵の長さs1を算出する。

0051

<ステップS109>
鍵長さ算出部13は、誤り率決定部12より決定されたQKD送信機2bに対応する誤り率QBER2に応じて、最終的に生成すべき暗号鍵の長さs2を算出する。

0052

<ステップS110>
鍵長さ算出部13は、誤り率決定部12より決定されたQKD送信機2cに対応する誤り率QBER3に応じて、最終的に生成すべき暗号鍵の長さs3を算出する。

0053

<ステップS111>
ハッシュ関数生成部140は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さs1に応じた大きさのハッシュ関数を生成するための乱数r1を発生させる。

0054

<ステップS112>
ハッシュ関数生成部140は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さs2に応じた大きさのハッシュ関数を生成するための乱数r2を発生させる。

0055

<ステップS113>
ハッシュ関数生成部140は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さs3に応じた大きさのハッシュ関数を生成するための乱数r3を発生させる。

0056

<ステップS114>
PA処理部14は、鍵の長さs1および乱数r1の情報を、古典通信路を介して、QKD送信機2aのPA処理部24に送信する。

0057

<ステップS115>
PA処理部14は、鍵の長さs2および乱数r2の情報を、古典通信路を介して、QKD送信機2bのPA処理部24に送信する。

0058

<ステップS116>
PA処理部14は、鍵の長さs3および乱数r3の情報を、古典通信路を介して、QKD送信機2cのPA処理部24に送信する。

0059

<ステップS117>
ハッシュ関数生成部140は、ストレージ16からQKD送信機2aに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn1(図6ではnと記載)と、乱数r1と、暗号鍵の長さs1(図ではsと記載)とからn1×s1の行列であり乱数r1によりランダムに構成されたハッシュ関数H1を生成する。

0060

<ステップS118>
ハッシュ関数生成部140は、ストレージ16からQKD送信機2bに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn2(図6ではnと記載)と、乱数r2と、暗号鍵の長さs2(図ではsと記載)とからn2×s2の行列であり乱数r2によりランダムに構成されたハッシュ関数H2を生成する。

0061

<ステップS119>
ハッシュ関数生成部140は、ストレージ16からQKD送信機2cに対応する訂正後ビット列を読み出し、図6に示すように、訂正後ビット列の長さn3(図6ではnと記載)と、乱数r3と、暗号鍵の長さs3(図ではsと記載)とからn3×s3の行列であり乱数r3によりランダムに構成されたハッシュ関数H3を生成する。

0062

なお、上述のように、各QKD送信機2に対応する共有ビット列の長さは同一であり、共有ビット列と同一の長さを有する訂正後ビット列もそれぞれ同一の長さである。したがって、上述の訂正後ビット列の長さn1〜n3は、同一の値となる。ただし、QKD送信機2a〜2cにそれぞれ対応する暗号鍵の長さs1〜s3は、それぞれの誤り率QBER1〜QBER3に応じて定まるので、異なる長さとなる。したがって、ハッシュ関数H1〜H3は、それぞれ異なるものとなるので、ハッシュ関数生成部140は、ハッシュ関数H1〜H3をそれぞれ生成する必要がある。

0063

<ステップS120>
QKD送信機2aのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn1と、受信した乱数r1と、暗号鍵の長さs1とからn1×s1の行列であるハッシュ関数H1を生成する。このQKD送信機2aのハッシュ関数生成部240によって生成されたハッシュ関数H1は、ハッシュ関数生成部140が、QKD送信機2aに対応する訂正後ビット列から生成したハッシュ関数H1と一致する。

0064

<ステップS121>
QKD送信機2bのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn2と、受信した乱数r2と、暗号鍵の長さs2とからn2×s2の行列であるハッシュ関数H2を生成する。このQKD送信機2bのハッシュ関数生成部240によって生成されたハッシュ関数H2は、ハッシュ関数生成部140が、QKD送信機2bに対応する訂正後ビット列から生成したハッシュ関数H2と一致する。

0065

<ステップS122>
QKD送信機2cのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn3と、受信した乱数r3と、暗号鍵の長さs3とからn3×s3の行列であるハッシュ関数H3を生成する。このQKD送信機2cのハッシュ関数生成部240によって生成されたハッシュ関数H3は、ハッシュ関数生成部140が、QKD送信機2cに対応する訂正後ビット列から生成したハッシュ関数H3と一致する。

0066

<ステップS123>
鍵圧縮部141は、QKD送信機2aに対応する訂正後ビット列にハッシュ関数H1を乗じる鍵圧縮処理によって、長さs1の暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。鍵圧縮部141は、QKD送信機2bに対応する訂正後ビット列にハッシュ関数H2を乗じる鍵圧縮処理によって、長さs2の暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。そして、鍵圧縮部141は、QKD送信機2cに対応する訂正後ビット列にハッシュ関数H3を乗じる鍵圧縮処理によって、長さs3の暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。

0067

<ステップS124>
QKD送信機2aの鍵圧縮部241は、訂正後ビット列にハッシュ関数H1を乗じる鍵圧縮処理によって、長さs1の暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。

0068

<ステップS125>
QKD送信機2bの鍵圧縮部241は、訂正後ビット列にハッシュ関数H2を乗じる鍵圧縮処理によって、長さs2の暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。

0069

<ステップS126>
QKD送信機2cの鍵圧縮部241は、訂正後ビット列にハッシュ関数H3を乗じる鍵圧縮処理によって、長さs3の暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。

0070

以上のような、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の処理負荷と比較して、大きく偏りが生じることになる。

0071

そこで、本実施形態では、上述したように誤り率決定部12によって誤り率QBER1〜QBER3を統合して統合誤り率を決定する処理を導入している。具体的には、上述のように、誤り率決定部12は、算出した誤り率QBER1〜QBER3のうちの最大値を統合誤り率QBERmaxとして決定する。

0072

図7は、第1の実施形態のQKD受信機およびQKD送信機の動作を示すシーケンス図である。図7を参照しながら、本実施形態のQKD受信機1およびQKD送信機2(QKD送信機2a〜2c)による暗号鍵の生成動作について説明する。以下の説明では、図5の従来の暗号鍵の生成動作と相違する点を中心に説明する。

0073

<ステップS11〜S17>
図5に示すステップS101〜S107の処理と同様である。

0074

<ステップS18>
誤り率決定部12は、算出した誤り率QBER1〜QBER3のうちの最大値を統合誤り率QBERmaxとして決定する。例えば、QBER1=5[%]、QBER2=3[%]、QBER3=6[%]である場合、誤り率決定部12は、最大値であるQBER3(=6[%])を統合誤り率QBERmaxとして決定する。

0075

なお、統合誤り率を、誤り率QBERの最大値としているが、これに限定されるものではなく、例えば、最大値以上の値を統合誤り率としてもよく、暗号鍵による暗号通信の安全の確保には影響しない。

0076

<ステップS19>
鍵長さ算出部13は、誤り率決定部12より決定された統合誤り率QBERmaxに応じて、最終的に生成すべき暗号鍵の長さsを算出する。この暗号鍵の長さsは、QKD受信機1と各QKD送信機2(QKD送信機2a〜2c)との間の各リンクにおいて共通の値である。

0077

<ステップS20>
ハッシュ関数生成部140は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さsに応じた大きさのハッシュ関数を生成するための乱数rを発生させる。

0078

<ステップS21>
PA処理部14は、暗号鍵の長さsおよび乱数rの情報を、古典通信路を介して、QKD送信機2a〜2cに送信する。

0079

<ステップ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)を生成する処理を一度実行すればよい。

0080

<ステップS23>
QKD送信機2aのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn1と、受信した乱数rと、暗号鍵の長さsとからn1×sの行列であるハッシュ関数H1aを生成する。このQKD送信機2aのハッシュ関数生成部240によって生成されたハッシュ関数H1aは、ハッシュ関数生成部140が生成したハッシュ関数Hと一致する。

0081

<ステップS24>
QKD送信機2bのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn2と、受信した乱数rと、暗号鍵の長さsとからn2×sの行列であるハッシュ関数H2aを生成する。このQKD送信機2bのハッシュ関数生成部240によって生成されたハッシュ関数H2aは、ハッシュ関数生成部140が生成したハッシュ関数Hと一致する。

0082

<ステップS25>
QKD送信機2cのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn3と、受信した乱数rと、暗号鍵の長さsとからn3×sの行列であるハッシュ関数H3aを生成する。このQKD送信機2cのハッシュ関数生成部240によって生成されたハッシュ関数H3aは、ハッシュ関数生成部140が生成したハッシュ関数Hと一致する。

0083

<ステップS26>
鍵圧縮部141は、QKD送信機2aに対応する訂正後ビット列にハッシュ関数H1aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。鍵圧縮部141は、QKD送信機2bに対応する訂正後ビット列にハッシュ関数H2aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。そして、鍵圧縮部141は、QKD送信機2cに対応する訂正後ビット列にハッシュ関数H3aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。

0084

<ステップS27>
QKD送信機2aの鍵圧縮部241は、訂正後ビット列にハッシュ関数H1aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。

0085

<ステップS28>
QKD送信機2bの鍵圧縮部241は、訂正後ビット列にハッシュ関数H2aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。

0086

<ステップS29>
QKD送信機2cの鍵圧縮部241は、訂正後ビット列にハッシュ関数H3aを乗じる鍵圧縮処理によって、長さsの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。

0087

以上のように、誤り率決定部12により、各QKD送信機2に応じて算出した誤り率QBERを統合して統合誤り率を決定したことによって、QKD受信機1およびQKD送信機2a〜2cは、同一の長さsの暗号鍵を共有することになる。

0088

本実施形態に係るQKD受信機1は、誤り率決定部12によって、各QBERを統合して統合誤り率を決定している。これによって、鍵長さ算出部13は、統合誤り率に応じて、暗号鍵の長さの算出処理を1回実行すればよい。また、ハッシュ関数生成部140は、このように決定された1の暗号鍵の長さに応じて乱数も発生させればよいので、乱数の発生処理も1回実行すればよい。したがって、QKD受信機1は、n台のQKD送信機2が接続されている場合、暗号鍵の生成の処理はn回実行しなければならないが、暗号鍵の長さの算出、乱数の発生、およびハッシュ関数の生成の処理は、QKD送信機2ごとに実行する必要がなく、1回実行すればよいことになる。よって、QKD受信機1の、処理負荷を軽減することができ、QKD送信機2との処理負荷の偏りを軽減することができる。

0089

なお、誤り率決定部12が算出した複数の誤り率QBERのうち、最小値と最大値との差が大きく離れている場合、統合誤り率を最大値に決定すると、最小値の誤り率QBERに対応する訂正後ビット列からPA処理部により取り除かれる情報量は、盗聴者に漏れた情報量以上のものまで余計に取り除かれることになる。この場合、鍵圧縮部141および鍵圧縮部241により生成される暗号鍵の長さは小さくなり、暗号通信の効率が下がる可能性がある。そこで、複数の誤り率QBERのうち、最小値と最大値との差と所定の閾値とを比較し、差が所定値未満であれば、図7に示す本実施形態の暗号鍵の生成動作を実行し、差が所定値以上であれば、図5に示す従来の暗号鍵の生成動作を実行するものとしてもよい。これによって、暗号鍵の長さが小さくなることによる暗号通信の効率の低下と、QKD受信機1とQKD送信機2との処理負荷の偏りとのバランスをとることができる。

0090

また、上述のように、ハッシュ関数生成部140、鍵圧縮部141、ハッシュ関数生成部240および鍵圧縮部241において、鍵圧縮処理の方法としてハッシュ関数を用いたものとしているが、これに限定されるものではなく、その他の方法によって実現してもよい。

0091

また、本実施形態において、量子鍵配送システムとして、光学機器4を介した量子アクセスネットワークを例に説明したが、量子鍵配送システムとして、量子アクセスネットワークに限定されるものではなく、例えば、図8のような構成の量子アクセスネットワーク500bであってもよい。

0092

量子アクセスネットワーク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を光子ビット列の送信機としているが、送受信が逆であってもよい。

0093

(第2の実施形態)
本実施形態に係る量子鍵配送システムの構成および動作について、第1の実施形態に係る量子鍵配送システム(量子アクセスネットワーク500、500a、500b)と相違する構成および動作を中心に説明する。なお、QKD装置の構成は、第1の実施形態と同様である。

0094

第1の実施形態においては、複数の誤り率QBERから最大値を統合誤り率QBERmaxとし、暗号鍵の長さsを算出するものとしている。しかし、複数の誤り率QBERのうち、最小値と最大値との差が大きく離れている場合、統合誤り率を最大値に決定すると、最小値の誤り率QBERに対応する訂正後ビット列から取り除かれる情報量は、盗聴者に漏れた情報量以上のものまで余計に取り除かれることになる。この場合、鍵圧縮部141および鍵圧縮部241により生成される暗号鍵の長さは小さくなり、暗号鍵の長さが小さくなると、暗号通信には多くの暗号鍵が必要になり、暗号通信の効率が下がる可能性がある。そこで、本実施形態においては、複数の誤り率QBERの値によって対応するQKD送信機2を複数のグループに分けて、それぞれのグループにおいて統合誤り率を決定する動作について説明する。

0095

図9は、第2の実施形態の量子アクセスネットワークの構成の具体例を示す図である。図9を参照しながら、1つのQKD受信機に対して、3つのQKD送信機が接続された量子アクセスネットワークの構成について説明する。すなわち、本実施形態においては、量子鍵配送システムとして、量子アクセスネットワークを例に説明する。

0096

図9に示すように、量子アクセスネットワーク500cは、QKD受信機1a(量子鍵配送装置)と、QKD送信機2a〜2c(他の量子鍵配送装置)と、光学機器4と、を含んで構成されている。QKD受信機1aは、量子通信路となる光ファイバケーブルによって、光学機器4に接続されている。QKD送信機2a〜2cも、それぞれ量子通信路となる光ファイバケーブルによって、光学機器4に接続されている。

0097

QKD送信機2a〜2cは、例えば、乱数によって発生させた、暗号鍵を生成する基となる単一光子から構成される光子ビット列を、それぞれ光学機器4を介して、QKD受信機1aへ送信する。QKD送信機2a〜2cは、それぞれ送信した光子ビット列を基に、シフティング処理、誤り訂正処理およびPA(秘匿性増強)処理(鍵圧縮処理)等を実行して、暗号鍵を生成する。

0098

QKD受信機1aは、暗号鍵を生成する基となる単一光子から構成される光子ビット列を、光学機器4を介して、QKD送信機2a〜2cそれぞれから受信する。QKD受信機1aは、受信した光子ビット列を基に、シフティング処理、誤り訂正処理およびPA処理等を実行して、QKD送信機2a〜2cがそれぞれ生成した暗号鍵と同一の暗号鍵を生成する。すなわち、QKD受信機1と、QKD送信機2a〜2cそれぞれとは、同一の暗号鍵を共有することになる。

0099

図10は、第2の実施形態のQKD受信機およびQKD送信機の動作を示すシーケンス図である。図10を参照しながら、本実施形態のQKD受信機1aおよびQKD送信機2(QKD送信機2a〜2c)による暗号鍵の生成動作について説明する。以下の説明では、図7の第1の実施形態の暗号鍵の生成動作と相違する点を中心に説明する。

0100

<ステップS51〜S57>
図7に示すステップS11〜S17の処理と同様である。

0101

<ステップ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の値が近いものを同じグループに分ける方法であれば、どのようなグループ分けの方法でもよい。

0102

ここで、誤り率決定部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はないものと判定する。

0103

誤り率決定部12は、グループAの誤り率QBER1、QBER2のうち最大値(この場合、誤り率QBER1)をグループAの統合誤り率QBERmaxAとして決定する(ステップS58)。そして、誤り率決定部12は、グループBの誤り率QBER3のうち最大値、すなわち誤り率QBER3をグループBの統合誤り率QBERmaxBとして決定する(ステップS59)。

0104

なお、各グループの統合誤り率を、そのグループに属する誤り率QBERの最大値としているが、これに限定されるものではなく、例えば、最大値以上の値を統合誤り率としてもよく、暗号鍵による暗号通信の安全の確保には影響しない。

0105

<ステップS60>
QKD受信機1aの鍵長さ算出部13(図4参照)は、誤り率決定部12より決定された統合誤り率QBERmaxAに応じて、最終的に生成すべき暗号鍵の長さsAを算出する。この暗号鍵の長さsAは、QKD受信機1aとQKD送信機2a、2bとの間の各リンクにおいて共通の値である。

0106

<ステップS61>
鍵長さ算出部13は、誤り率決定部12より決定された統合誤り率QBERmaxBに応じて、最終的に生成すべき暗号鍵の長さsBを算出する。この暗号鍵の長さsBは、QKD受信機1aとQKD送信機2cとの間のリンクにおいて共通の値である。

0107

<ステップS62>
QKD受信機1aのハッシュ関数生成部140(図4参照)は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さsAに応じた大きさのハッシュ関数を生成するための乱数rAを発生させる。

0108

<ステップS63>
ハッシュ関数生成部140は、鍵圧縮処理の際に必要となるハッシュ関数を生成するために、暗号鍵の長さsBに応じた大きさのハッシュ関数を生成するための乱数rBを発生させる。

0109

<ステップS64>
QKD受信機1aのPA処理部14(図4参照)は、暗号鍵の長さsAおよび乱数rAの情報を、古典通信路を介して、QKD送信機2a、2bに送信する。

0110

<ステップS65>
PA処理部14(図4参照)は、暗号鍵の長さsBおよび乱数rBの情報を、古典通信路を介して、QKD送信機2cに送信する。

0111

<ステップ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)を生成する処理を一度実行すればよい。

0112

<ステップS67>
QKD送信機2aのハッシュ関数生成部240(図4参照)は、ストレージ26(図4参照)から訂正後ビット列を読み出し、訂正後ビット列の長さn1と、受信した乱数rAと、暗号鍵の長さsAとからn1×sAの行列であるハッシュ関数HAaを生成する。このQKD送信機2aのハッシュ関数生成部240によって生成されたハッシュ関数HAaは、ハッシュ関数生成部140が生成したハッシュ関数HAと一致する。

0113

<ステップS68>
QKD送信機2bのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn2と、受信した乱数rAと、暗号鍵の長さsAとからn2×sAの行列であるハッシュ関数HAbを生成する。このQKD送信機2bのハッシュ関数生成部240によって生成されたハッシュ関数HAbは、ハッシュ関数生成部140が生成したハッシュ関数HAと一致する。

0114

<ステップS69>
QKD送信機2cのハッシュ関数生成部240は、ストレージ26から訂正後ビット列を読み出し、訂正後ビット列の長さn3と、受信した乱数rBと、暗号鍵の長さsBとからn3×sBの行列であるハッシュ関数HBを生成する。このQKD送信機2cのハッシュ関数生成部240によって生成されたハッシュ関数HBは、ハッシュ関数生成部140が生成したハッシュ関数HBと一致する。

0115

<ステップS70>
QKD受信機1aの鍵圧縮部141(図4参照)は、QKD送信機2aに対応する訂正後ビット列にハッシュ関数HAaを乗じる鍵圧縮処理によって、長さsAの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。鍵圧縮部141は、QKD送信機2bに対応する訂正後ビット列にハッシュ関数HAbを乗じる鍵圧縮処理によって、長さsAの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。そして、鍵圧縮部141は、QKD送信機2cに対応する訂正後ビット列にハッシュ関数HBを乗じる鍵圧縮処理によって、長さsBの暗号鍵(鍵ビット列)を生成し、ストレージ16に保存する。

0116

<ステップS71>
QKD送信機2aの鍵圧縮部241(図4参照)は、訂正後ビット列にハッシュ関数HAaを乗じる鍵圧縮処理によって、長さsAの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。

0117

<ステップS72>
QKD送信機2bの鍵圧縮部241は、訂正後ビット列にハッシュ関数HAbを乗じる鍵圧縮処理によって、長さsAの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。

0118

<ステップS73>
QKD送信機2cの鍵圧縮部241は、訂正後ビット列にハッシュ関数HBを乗じる鍵圧縮処理によって、長さsBの暗号鍵(鍵ビット列)を生成し、ストレージ26に保存する。

0119

以上のように、誤り率決定部12は、各QKD送信機2に応じて算出した誤り率QBERに基づいてグループに分け、各グループにおいて統合誤り率を決定している。これによって、QKD受信機1aおよびQKD送信機2a、2bは、同一の長さsAの暗号鍵を共有することになり、QKD受信機1aおよびQKD送信機2cは、同一の長さsBの暗号鍵を共有することになる。

0120

本実施形態に係るQKD受信機1aは、複数の誤り率QBERの値によって対応するQKD送信機2を複数のグループに分けて、それぞれのグループにおいて統合誤り率を決定するものとしている。これによって、QKD受信機1aは、暗号の長さの算出、乱数の発生、およびハッシュ関数の生成の処理は、QKD送信機2ごとに実行する必要がなく、グループごとに実行すればよいので、処理負荷を軽減することができ、QKD送信機2との処理負荷の偏りを軽減することができる。

0121

また、複数の誤り率QBERを複数のグループに分けるので、同一グループ内では、誤り率QBERの差が大きくなることを抑制でき、そのグループごとに統合誤り率を決定するものとしている。これによって、訂正後ビット列から取り除かれる情報量のうち、盗聴者に漏れていないものまで余計に取り除かれてしまう情報量を低減することができるので、暗号鍵の長さが極端に小さくなることを低減することができ、暗号通信の効率の低下を抑制できる。また、暗号鍵の長さが小さくなることによる暗号通信の効率の低下と、QKD受信機1aとQKD送信機2との処理負荷の偏りとのバランスをとることができる。

0122

図11は、QKD装置のハードウェアの構成図である。図11を参照しながら上述の実施形態に係るQKD装置のハードウェア構成について説明する。

0123

本実施形態に係るQKD装置は、CPU80等の制御装置と、ROM(Read Only Memory)81と、RAM(Random Access Memory)82と、量子通信路における通信を行う第1通信I/F83と、古典通信路における通信を行う第2通信I/F84と、暗号鍵を保存するストレージである外部記憶装置85と、各部を接続するバス86を備えている。

0124

本実施形態に係るQKD装置で実行されるプログラムは、ROM81等に予め組み込まれて提供される。

0125

本実施形態に係るQKD装置で実行されるプログラムは、インストール可能な形式または実行可能な形式のファイルCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスクFD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータ読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。

0126

さらに、本実施形態に係るQKD装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施形態に係るQKD装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。

0127

本実施形態に係るQKD装置で実行されるプログラムは、コンピュータを上述したQKD装置の各部(量子鍵共有部10、誤り訂正部11、誤り率決定部12、鍵長さ算出部13、PA処理部14、アプリケーション処理部15、量子鍵共有部20、誤り訂正部21、PA処理部24およびアプリケーション処理部25)として機能させうる。このコンピュータは、CPU80がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。

0128

本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、および変更を行うことができる。これらの実施形態およびその変形は、発明の範囲および要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。

0129

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量子鍵配送ネットワーク

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ