(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-08-29
(45)【発行日】2025-09-08
(54)【発明の名称】鍵管理装置、量子暗号通信システム、鍵管理方法及びプログラム
(51)【国際特許分類】
H04L 9/12 20060101AFI20250901BHJP
【FI】
H04L9/12
(21)【出願番号】P 2023032520
(22)【出願日】2023-03-03
【審査請求日】2024-09-17
【国等の委託研究の成果に係る記載事項】(出願人による申告)令和4年度 国立研究開発法人新エネルギー・産業技術総合開発機構「チップベース量子暗号通信の多重化に関する研究開発」委託研究、産業技術力強化法第17条の適用を受ける特許出願
(73)【特許権者】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】米良 恵介
(72)【発明者】
【氏名】金澤 浩二
(72)【発明者】
【氏名】木村 克行
(72)【発明者】
【氏名】谷澤 佳道
【審査官】酒井 大門
(56)【参考文献】
【文献】特開2015-179989(JP,A)
【文献】国際公開第2022/264373(WO,A1)
【文献】特開2008-306633(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/00- 9/40
G06F 21/00-21/88
(57)【特許請求の範囲】
【請求項1】
少なくとも1つのリモートQKD(Quantum Key Distribution)装置と、量子通信路を介して接続される少なくとも1つのローカルQKD装置に接続される鍵管理装置であって、
前記リモートQKD装置により生成されるリモートQKD鍵の同一性検証データと、前記リモートQKD装置を識別するリモートQKD装置識別情報とを、古典通信路を介して他の鍵管理装置から取得する取得部と、
前記ローカルQKD装置により生成されるローカルQKD鍵と、前記ローカルQKD装置を識別するローカルQKD装置識別情報とを収集し、前記ローカルQKD鍵の同一性検証データを生成し、前記リモートQKD鍵の同一性検証データと、前記ローカルQKD鍵の同一性検証データとが一致した場合、前記リモートQKD装置識別情報と前記ローカルQKD装置識別情報とを対応付ける処理部と、
を備える鍵管理装置。
【請求項2】
前記ローカルQKD鍵の同一性検証データと、前記ローカルQKD装置識別情報とを前記他の鍵管理装置へ出力する出力部、
を更に備える請求項1に記載の鍵管理装置。
【請求項3】
前記ローカルQKD鍵の同一性検証データは、生成される所定の長さの前記ローカルQKD鍵の全部又は一部であり、
前記リモートQKD鍵の同一性検証データは、生成される所定の長さの前記リモートQKD鍵の全部又は一部である、
請求項1又は2に記載の鍵管理装置。
【請求項4】
前記ローカルQKD鍵の同一性検証データは、生成される所定の長さの前記ローカルQKD鍵の全部又は一部から生成されるハッシュ値であり、
前記リモートQKD鍵の同一性検証データは、生成される所定の長さの前記リモートQKD鍵の全部又は一部から生成されるハッシュ値である、
請求項1又は2に記載の鍵管理装置。
【請求項5】
前記処理部は、前記ローカルQKD装置に前記ローカルQKD鍵の生成の開始を指示し、前記ローカルQKD鍵の生成に失敗した場合、前記リモートQKD鍵の生成の開始を前記他の鍵管理装置に指示する、
請求項1又は2に記載の鍵管理装置。
【請求項6】
前記処理部は、前記ローカルQKD鍵の同一性検証データの生成に使用されたローカルQKD鍵とは異なる新たに生成されるローカルQKD鍵を、データの暗号化又は復号に使用する、
請求項1又は2に記載の鍵管理装置。
【請求項7】
前記処理部は、前記量子通信路に接続される新たなローカルQKD装置を検出すると、前記新たなローカルQKD装置に新たなローカルQKD鍵の生成の開始を指示し、前記新たなローカルQKD鍵と、前記新たなローカルQKD装置を識別するローカルQKD装置識別情報とを収集し、前記新たなローカルQKD鍵の同一性検証データを生成し、前記リモートQKD鍵の同一性検証データと、前記新たなローカルQKD鍵の同一性検証データとが一致した場合、前記リモートQKD装置識別情報と前記新たなローカルQKD装置を識別するローカルQKD装置識別情報とを対応付ける、
請求項1又は2に記載の鍵管理装置。
【請求項8】
前記処理部は、前記ローカルQKD鍵の生成を前記他の鍵管理装置から指示された場合、前記ローカルQKD装置に前記ローカルQKD鍵の生成を指示する、
請求項1又は2に記載の鍵管理装置。
【請求項9】
請求項1又は2に記載の鍵管理装置と、
前記他の鍵管理装置と、
前記少なくとも1つのローカルQKD装置と、
前記少なくとも1つのリモートQKD装置と、を備え、
前記ローカルQKD装置は、
前記量子通信路を介して前記ローカルQKD鍵を生成する量子通信部と、
前記古典通信路を介して前記ローカルQKD鍵と前記ローカルQKD装置識別情報とを送信する古典通信部と、を備え、
前記リモートQKD装置は、
前記量子通信路を介して前記リモートQKD鍵を生成する量子通信部と、
前記古典通信路を介して前記リモートQKD鍵と前記リモートQKD装置識別情報とを送信する古典通信部と、
を備える量子暗号通信システム。
【請求項10】
少なくとも1つのリモートQKD(Quantum Key Distribution)装置と、量子通信路を介して接続される少なくとも1つのローカルQKD装置に接続される鍵管理装置の鍵管理方法であって、
取得部が、前記リモートQKD装置により生成されるリモートQKD鍵の同一性検証データと、前記リモートQKD装置を識別するリモートQKD装置識別情報とを、古典通信路を介して他の鍵管理装置から取得するステップと、
処理部が、前記ローカルQKD装置により生成されるローカルQKD鍵と、前記ローカルQKD装置を識別するローカルQKD装置識別情報とを収集し、前記ローカルQKD鍵の同一性検証データを生成し、前記リモートQKD鍵の同一性検証データと、前記ローカルQKD鍵の同一性検証データとが一致した場合、前記リモートQKD装置識別情報と前記ローカルQKD装置識別情報とを対応付けるステップと、
を含む鍵管理方法。
【請求項11】
少なくとも1つのリモートQKD(Quantum Key Distribution)装置と、量子通信路を介して接続される少なくとも1つのローカルQKD装置に接続されるコンピュータであって、
前記リモートQKD装置により生成されるリモートQKD鍵の同一性検証データと、前記リモートQKD装置を識別するリモートQKD装置識別情報とを、古典通信路を介して他の鍵管理装置から取得する取得部と、
前記ローカルQKD装置により生成されるローカルQKD鍵と、前記ローカルQKD装置を識別するローカルQKD装置識別情報とを収集し、前記ローカルQKD鍵の同一性検証データを生成し、前記リモートQKD鍵の同一性検証データと、前記ローカルQKD鍵の同一性検証データとが一致した場合、前記リモートQKD装置識別情報と前記ローカルQKD装置識別情報とを対応付ける処理部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は鍵管理装置、量子暗号通信システム、鍵管理方法及びプログラムに関する。
【背景技術】
【0002】
量子鍵配送技術(Quantum Key Distribution、以下QKD)とは、光ファイバで接続される、単一光子を連続的に送信するQKD装置と、単一光子を受信するQKD装置との間で、安全にQKD鍵(量子鍵)を共有する技術である。
【先行技術文献】
【特許文献】
【0003】
【文献】特許第6599401号公報
【文献】特許第6426477号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術では、複数のQKD装置がある場合、QKD鍵を共有するQKD装置のペアを容易に対応付けることができなかった。
【課題を解決するための手段】
【0005】
実施形態の鍵管理装置は、少なくとも1つのリモートQKD(Quantum Key Distribution)装置と、量子通信路を介して接続される少なくとも1つのローカルQKD装置に接続される鍵管理装置である。鍵管理装置は、取得部と処理部とを備える。取得部は、前記リモートQKD装置により生成されるリモートQKD鍵の同一性検証データと、前記リモートQKD装置を識別するリモートQKD装置識別情報とを、古典通信路を介して他の鍵管理装置から取得する。処理部は、前記ローカルQKD装置により生成されるローカルQKD鍵と、前記ローカルQKD装置を識別するローカルQKD装置識別情報とを収集し、前記ローカルQKD鍵の同一性検証データを生成し、前記リモートQKD鍵の同一性検証データと、前記ローカルQKD鍵の同一性検証データとが一致した場合、前記リモートQKD装置識別情報と前記ローカルQKD装置識別情報とを対応付ける。
【図面の簡単な説明】
【0006】
【
図1】第1実施形態の量子暗号通信システムの装置構成の例を示す図。
【
図2】第1実施形態の鍵管理装置の機能構成の例を示す図。
【
図3】第1実施形態のQKDモジュールの機能構成の例を示す図。
【
図4】第1実施形態の鍵管理装置の動作例を示すフローチャート。
【
図5】第2実施形態の鍵管理装置の機能構成の例を示す図。
【
図6】第2実施形態の鍵管理装置の動作例を示すフローチャート。
【
図7】第1及び第2実施形態の効果を説明するための図。
【
図8】第1及び第2実施形態の鍵管理装置のハードウェア構成の例を示す図。
【
図9】第1及び第2実施形態のQKDモジュールのハードウェア構成の例を示す図。
【発明を実施するための形態】
【0007】
以下に添付図面を参照して、鍵管理装置、量子暗号通信システム、鍵管理方法及びプログラムの実施形態を詳細に説明する。
【0008】
QKD鍵に基づいてQKDモジュールを対応付けするためには、鍵管理装置はQKD鍵や該QKD鍵データを特徴づけるハッシュ値を、古典通信路で送受信する必要があるが、これによりQKD鍵データが盗聴される可能性が生じてしまう。そのため、従来、鍵管理装置が暗号化に用いられる該QKD鍵を送受信する機能を搭載することはなかった。なお、該QKD鍵とは別の鍵(例えばアプリケーション鍵)を鍵管理装置が該QKD鍵で暗号化して伝送する機能は存在しうるが、これは鍵管理装置が暗号化に用いる該QKD鍵データを送受信する機能ではない。
【0009】
以下、QKD鍵でQKDモジュールを対応付けることにより、QKDモジュールをより容易に認識することを可能にする実施形態について説明する。
【0010】
(第1実施形態)
図1は第1実施形態の量子暗号通信システム100の装置構成の例を示す図である。第1実施形態の量子暗号通信システム100は、鍵管理(KM:Key Manager)装置1a~1b、QKDモジュール2aa~2az及びQKDモジュール2ba~2bzを備える。
【0011】
鍵管理装置1a及び1bは、互いに対応づけられており、古典通信路によって接続される。古典通信路の通信方式は、有線方式でもよいし、無線方式でもよい。また、古典通信路は、有線方式と無線方式とを組み合わせて構成されていてもよい。
【0012】
鍵管理装置1aは、QKDモジュール2aa~2azと有線又は無線で接続される。同様に、鍵管理装置1bは、QKDモジュール2ba~2bzと有線又は無線で接続される。
【0013】
QKDモジュール2aa~2az及びQKDモジュール2ba~2bzは、QKDリンクによって接続され、QKD(量子鍵配送)を実行する。QKDリンクで接続されるQKDモジュールのペアは、QKDを実行することにより、同一のQKD鍵(量子鍵)を共有する。例えば、QKDモジュール2aa及び2bbのペアは、QKDを実行することにより、同一のQKD鍵を、盗聴されずに共有することができる。
【0014】
なお、
図1の構成は一例であり、量子暗号通信システム100の装置構成の例は
図1に限られない。例えば、QKDモジュール2aa~2az及びQKDモジュール2ba~2bzの数は任意でよく、QKDモジュール2aa~2az及びQKDモジュール2ba~2bzの数は
図1の例に限られない。
【0015】
QKDリンクは、単一光子の送信に使用される量子通信路である。典型的には、QKDリンクは、独立した光ファイバ、光ファイバ内で多重化される各チャネル、マルチコアファイバの各コア、または、自由空間光通信路(Free-space optical communication channel)である。
【0016】
以下、QKDモジュール2aa~2azを区別しない場合は、単に、QKDモジュール2aという。同様に、QKDモジュール2ba~2bzを区別しない場合は、単に、QKDモジュール2bという。
【0017】
QKDは量子力学上の制約により、例えQKDリンクのデータを第三者が盗聴したとしても、ほぼ必ず盗聴されたことを検知できる。このため、QKDモジュール2a及び2bのペア(例えば、QKDモジュール2aa及び2bb)は、ほぼ誰にも盗聴されていないQKD鍵を共有することができるという特徴がある。
【0018】
鍵管理装置1aは、QKDモジュール2aからQKD鍵を受信し、鍵管理装置1bは、QKDモジュール2bからQKD鍵を受信する。鍵管理装置1a及び1bのどちらか一方が、QKD鍵を使用してデータを暗号化し、古典通信路を通じて暗号化されるデータを送信する。そして、もう一方が、暗号化に使用されるQKD鍵と同じQKD鍵を使用して、暗号化されたデータを復号する。
【0019】
ここで、鍵管理装置1a及び1bにより暗号化および復号に使用されるQKD鍵は、必ず同じデータである必要がある。仮に異なるデータであると、暗号化されたデータを復号することが不可能であるためである。
【0020】
さらに、鍵管理装置1a及び1bは、暗号化および復号に使用されるQKD鍵を両装置間の古典通信路を通じて伝送しない。仮に、暗号化および復号に使用されるQKD鍵を、古典通信路を通じで伝送してしまうと、該古典通信路の通信が盗聴者によって盗聴された場合、QKD鍵、及び、QKD鍵で暗号化されたデータの両方が盗聴者に知られることとなる。これにより、盗聴者は暗号化されたデータを復号することが可能になってしまうためである。そのため、鍵管理装置1a及び1bは、古典通信路を通じで伝送されるQKD鍵は、暗号化および復号には使用しない。
【0021】
上述のように、鍵管理装置1a及び1bは、暗号化または復号の際に同じQKD鍵を使う必要がある。
図1のように、複数のQKDモジュール2a及び2bのペアが存在する場合の課題として、鍵管理装置1aは、どのQKDモジュール2aからのQKD鍵を使って暗号化するのかを設定する必要がある。同様に、鍵管理装置1bは、どのQKDモジュール2bからのQKD鍵を使って復号するのかを設定する必要がある。しかし、多数のQKDモジュール2a及び2bのペアが存在する場合、各QKDモジュール2a及び2bの対応づけを手動で設定する方法もあるが、QKDモジュール2a及び2bが多いとエンジニアリングコストが高い。
【0022】
以下、設定の省力化のため、各QKDモジュール2a及び2bの対応付けを、より容易に(例えば、自動化)することができる構成及び方法の詳細について説明する。
【0023】
以下、鍵管理装置1a及び1bを区別しない場合は、単に、鍵管理装置1a及び1という。同様に、QKDモジュール2aa~2az及びQKDモジュール2ba~2bzを区別しない場合は、単に、QKDモジュール2という。
【0024】
[機能構成の例]
図2は第1実施形態の鍵管理装置1の機能構成の例を示す図である。第1実施形態の鍵管理装置1は、処理部10、取得部11、出力部12及び記憶部13を備える。処理部10は、送信制御部101、受信制御部102、収集制御部103、生成部104及び検証部105を備える。
【0025】
第1実施形態の鍵管理装置1は、QKD鍵によってQKDモジュール2(QKD装置の一例)を対応付けることにより、QKDモジュール2のペアを自動認識することを可能にする。
【0026】
処理部10は、少なくとも1つの処理装置によって実現され、鍵管理装置1の処理を実行する。この処理装置は、例えば制御装置及び演算装置を含み、アナログまたはデジタル回路等で実現される。処理装置は、中央処理装置(CPU)であってもよいし、汎用目的プロセッサ、マイクロプロセッサ、デジタル信号プロセッサ(DSP)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)及びこれらの組み合わせであってもよい。
【0027】
取得部11は、無線方式又は有線方式で通信することによってデータを取得する。例えば、鍵管理装置1aの取得部11は、QKDモジュール2bにより生成されるQKD鍵の同一性検証データと、QKDモジュール2bを識別するQKDモジュールID(QKD装置情報の一例)とを、古典通信路を介して鍵管理装置1bから取得する。
【0028】
出力部12は、無線方式又は有線方式で通信することによってデータを出力する。例えば、鍵管理装置1aの出力部12は、QKDモジュール2aにより生成されるQKD鍵の同一性検証データと、QKDモジュール2aのQKDモジュールIDとを鍵管理装置1bへ出力する。
【0029】
記憶部13は、QKD鍵、当該QKD鍵の同一性検証データ、及び、当該QKD鍵を生成したQKDモジュール2を識別するQKDモジュールID等のデータを記憶する。記憶部13は、例えば不揮発性メモリ(後述の
図9の補助記憶装置403)または他の記憶装置等によって実現される。
【0030】
送信制御部101は、古典通信路を介して接続されるリモートの鍵管理装置1へ古典通信路経由でQKD鍵同一性検証データと、QKDモジュールIDとを送信するよう出力部12を制御する。
【0031】
以下、鍵管理装置1aから古典通信路を介して接続される鍵管理装置1b、及び、当該鍵管理装置1bと同一のネットワークに接続されるQKDモジュール2bは、鍵管理装置1aにとって、リモートの鍵管理装置1b、及び、リモートのQKDモジュール2bという。一方、鍵管理装置1aと同一のネットワークに接続されるQKDモジュール2aについては、鍵管理装置1aにとって、ローカルのQKDモジュール2aという。
【0032】
QKD鍵同一性検証データは、QKD鍵の同一性の検証に使用されるデータである。QKD鍵同一性検証データは、例えば生成される所定の長さのQKD鍵の全体または一部である。また例えば、QKD鍵同一性検証データは、生成される所定の長さのQKD鍵の全体または一部から生成されるハッシュ値である。なお、QKD鍵同一性検証データは、必須ではないが、QKD鍵を識別するQKD鍵IDをさらに含むとより好適である。
【0033】
QKDモジュールIDは、QKDモジュールを識別する識別情報である。QKDモジュールIDは種々の形態が有り得る。例えば、QKDモジュールIDは、各QKDモジュールに割り当てられたMACアドレス、IPv4アドレス、IPv6アドレス、DNS(Domain Name System)、mDNS(マルチキャストDNS)で共有されるホスト名、FQDN(Fully Qualified Domain Name)、各QKDモジュール上で動作する機能に設定される識別子、または、それらから生成されるハッシュ値である。また例えば、QKDモジュールIDは、MACアドレス、IPv4アドレス、IPv6アドレス、DNS、ホスト名、FQDNまたは識別子を組み合わせた値や、組み合わせた値から生成されるハッシュ値である。
【0034】
受信制御部102は、古典通信路を介して接続されるリモートの鍵管理装置1から古典通信路経由でQKD鍵同一性検証データと、QKDモジュールIDとを受信するよう取得部11を制御する。
【0035】
ここで、送信制御部101及び受信制御部102は、鍵管理装置1a及び1bそれぞれで片方ずつを搭載してもよい。例えば、鍵管理装置1aが送信制御部101を搭載し、鍵管理装置1bが受信制御部102を搭載してもよい。
【0036】
なお、各鍵管理装置1が、送信制御部101及び受信制御部102の両方を搭載するとより好適である。
【0037】
収集制御部103は、鍵管理装置1に接続されるローカルのQKDモジュール2により生成されるQKD鍵、及び、鍵管理装置1に接続されるローカルのQKDモジュール2のQKDモジュールIDを収集する。
【0038】
生成部104は、QKD鍵からQKD鍵同一性検証データを生成する。例えば、生成部104は、QKD鍵の全体または一部を示すQKD鍵同一性検証データを生成する。また例えば、生成部104は、QKD鍵の全体または一部からハッシュ値を生成し、該ハッシュ値を示すQKD鍵同一性検証データを生成する。
【0039】
検証部105は、複数のQKD鍵同一性検証データに基づいて、QKD鍵の同一性を検証する。なお、処理部10は、QKD鍵同一性検証データの生成に使用されたQKD鍵とは異なる新たに生成されるQKD鍵を、データの暗号化又は復号に使用する。
【0040】
図3は第1実施形態のQKDモジュール2の機能構成の例を示す図である。第1実施形態のQKDモジュール2は、処理部20、量子通信部21、古典通信部22及び記憶部23を備える。処理部20は、送信制御部201、受信制御部202及び鍵蒸留部203を備える。
【0041】
処理部20は、QKDモジュール2の処理を実行する。処理部20の実現方法は、上述した処理部10の実現方法のいずれかが適用可能である。
【0042】
量子通信部21は、上述のQKDリンク(量子通信路)を介して通信することによってQKD鍵を生成する。
【0043】
古典通信部22は、上述の古典通信路を介して通信する。例えば、古典通信部22は、QKD鍵及びQKDモジュールID等のデータを鍵管理装置1に送信する。
【0044】
記憶部23は、データを記憶する。例えば、記憶部23に記憶されるデータは、QKDモジュール2により生成されるQKD鍵、及び、QKDモジュール2を識別するQKDモジュールID等である。記憶部23の実現方法は、上述した記憶部13の実現方法のいずれかが適用可能である。
【0045】
送信制御部201は、量子通信部21又は古典通信部22を介したデータの送信を制御する。受信制御部202は、量子通信部21又は古典通信部22を介したデータの受信を制御する。
【0046】
鍵蒸留部203は、QKDにより送信側のQKDモジュール2と受信側のQKDモジュール2との間で共有されたデータに鍵蒸留処理を行うことでQKD鍵を生成する。鍵蒸留処理は、例えば、誤り訂正処理及び秘匿性増強処理等を含む。
【0047】
図4は、第1実施形態の鍵管理装置1の動作例を示すフローチャートである。まず、収集制御部103が、鍵管理装置1に接続される各QKDモジュール2(ローカルのQKDモジュール2)から、QKD鍵、及び、該ローカルのQKDモジュール2のQKDモジュールIDを収集する(ステップS1)。
【0048】
次に、送信制御部101が、リモートの鍵管理装置1へ、QKD鍵同一性検証データ及びQKDモジュールIDを送信するよう出力部12を制御する(ステップS2)。QKD鍵同一性検証データは、ステップS1で収集されたQKD鍵から、上述の生成部104により生成される。
【0049】
次に、受信制御部102が、リモートの鍵管理装置1から送信されたQKD鍵同一性検証データ及びQKDモジュールIDを受信するよう取得部11を制御する(ステップS3)。ステップS3では、リモートの鍵管理装置1によって、リモートのQKDモジュール2から収集されたQKD鍵から生成されるQKD鍵同一性検証データと、該リモートのQKDモジュール2のQKDモジュールIDとが受信される。
【0050】
ここで、ステップS1及びS2と、ステップS3とは、同時に並行して実行されてもよいし、別々のタイミングで実行されてもよい。
【0051】
次に、検証部105が、ローカルのQKDモジュール2のQKD鍵同一性検証データと、リモートのQKDモジュール2のQKD鍵同一性検証データと、が一致するローカルのQKDモジュール2のQKDモジュールID及びリモートのQKDモジュール2のQKDモジュールIDを特定する(ステップS4)。検証部105は、QKD鍵同一性検証データが一致する場合、ローカルのQKDモジュール2のQKDモジュールID及びリモートのQKDモジュール2のQKDモジュールIDを対応付ける。
【0052】
これにより、QKDリンクに接続される複数のQKDモジュール2から、対応するQKDモジュール2を識別するQKDモジュールIDのペアを特定することができる。
【0053】
以上、説明したように、第1実施形態の鍵管理装置1aは、少なくとも1つのQKDモジュール2b(リモートQKD装置の一例)と、量子通信路を介して接続される少なくとも1つのQKDモジュール2a(ローカルQKD装置の一例)に接続される。取得部11は、QKDモジュール2b(リモートQKD装置の一例)により生成されるQKD鍵(リモートQKD鍵の一例)の同一性検証データと、QKDモジュール2bを識別するQKDモジュールID(リモートQKD装置識別情報の一例)とを、古典通信路を介して鍵管理装置1bから取得する。処理部10は、QKDモジュール2aにより生成されるQKD鍵(ローカルQKD鍵の一例)と、QKDモジュール2aを識別するQKDモジュールID(ローカルQKD装置識別情報の一例)とを収集し、ローカルQKD鍵の同一性検証データを生成し、リモートQKD鍵の同一性検証データと、ローカルQKD鍵の同一性検証データとが一致した場合、リモートQKD装置識別情報とローカルQKD装置識別情報とを対応付ける。
【0054】
これにより第1実施形態によれば、複数のQKD装置がある場合でも、QKD鍵を共有するQKD装置のペアを容易に対応付けることができる。
【0055】
(第2実施形態)
次に第2実施形態について説明する。第2実施形態の説明では、第1実施形態と同様の説明については省略し、第1実施形態と異なる箇所について説明する。
【0056】
[機能構成の例]
図5は第2実施形態の鍵管理装置1-2の機能構成の例を示す図である。第2実施形態の鍵管理装置1-2は、処理部10、取得部11、出力部12及び記憶部13を備える。処理部10は、送信制御部101、受信制御部102、収集制御部103、生成部104、検証部105、検出部106、ローカル指示部107及びリモート指示部108を備える。第2実施形態では、第1実施形態の構成に、更に検出部106、ローカル指示部107及びリモート指示部108が追加されている。
【0057】
検出部106は、QKDリンクに新たに接続されるQKDモジュール2が、鍵管理装置1-2に新たに接続されたことを検出する。
【0058】
ローカル指示部107は、鍵管理装置1-2に接続されるローカルのQKDモジュール2にQKD鍵の生成を指示する。例えば、ローカル指示部107は、検出部106によって、新たに接続されるQKDモジュール2が検出された場合、新たなQKDモジュール2にQKD鍵の生成を指示する。また例えば、ローカル指示部107は、他の鍵管理装置1-2からQKD鍵の生成を指示された場合、鍵管理装置1-2に接続されるローカルのQKDモジュール2にQKD鍵の生成を指示する。
【0059】
リモート指示部108は、古典通信路を介して接続されるリモートの鍵管理装置1-2に、リモートのQKDモジュール2によるQKD鍵の生成を指示する。
【0060】
図6は第2実施形態の鍵管理装置1-2の動作例を示すフローチャートである。
図6の例は、鍵管理装置1a-2が、鍵管理装置1a-2に接続されているローカルのQKDモジュール2aに鍵生成の開始を指示し、鍵管理装置1b-2が、鍵管理装置1a-2からの指示に基づいて、鍵管理装置1b-2に接続されているQKDモジュール2bに鍵生成の開始を指示する場合を示す。
【0061】
はじめに、鍵管理装置1a-2のローカル指示部107が、鍵管理装置1a-2に接続されているローカルのQKDモジュール2aに鍵生成の開始を指示する(ステップS11)。
【0062】
なお、検出部106が、新規に接続されるQKDモジュール2aを検出した場合は、ローカル指示部107が、ステップS11において該QKDモジュール2aに対してのみ鍵生成開始の指示をすると、対応付け済みの既存のQKDモジュール2aについては再度対応付けがされないため、より好適である。
【0063】
ステップS12及びS13の説明は、第1実施形態のステップS1及びS2と同様なので省略する。
【0064】
次に、ローカル指示部107が、ステップS11において鍵生成の開始を指示したが、鍵生成の開始に失敗したQKDモジュール2aがあるか否かを判定する(ステップS14)。
【0065】
鍵生成の開始に失敗したQKDモジュール2aがある場合(ステップS14,Yes)、リモート指示部108が、古典通信路を介して接続されるリモートの鍵管理装置1b-2にQKD鍵の生成を指示し(ステップS15)、ステップS16の処理に進む。ステップS15によって、リモートのQKDモジュール2bの鍵生成を開始させることで、鍵生成(鍵共有)の開始に失敗したQKDモジュール2aとの鍵生成(鍵共有)を正常に動作させることができる。QKDモジュール2aが鍵生成(鍵共有)の開始に失敗する原因としては種々想定されるが、例えば、QKDモジュール2aに鍵生成(鍵共有)開始のコマンドなどの指示を受け付ける機能が実装されていない場合や、QKDモジュール2aやQKDモジュール2bの設定によってQKDモジュール2aが鍵生成(鍵共有)を開始できないように設定されている場合が想定される。
【0066】
鍵生成の開始に失敗したQKDモジュール2aがない場合(ステップS14,No)、ステップS16の処理に進む。
【0067】
ステップS16及びS17の説明は、第1実施形態のステップS3及びS4と同様なので省略する。
【0068】
一方、鍵管理装置1b-2の受信制御部102が、鍵管理装置1a-2のステップS11で送信された指示を、取得部11を介して受信すると(ステップS21)、鍵管理装置1b-2のローカル指示部107が、鍵生成の開始を指示されたQKDモジュール2bに鍵生成開始を指示する(ステップS22)。
【0069】
なお、鍵管理装置1b-2のステップS22~S26の説明は、鍵管理装置1a-2のステップS12、S13、S16及びS17と同様なので省略する。
【0070】
ここで、鍵管理装置1a-2のステップS15、及び、鍵管理装置1b-2のステップS21の実現方法には種々のバリエーションが考えられる。例えば、鍵管理装置1a-2が、鍵管理装置1b-2に接続されるQKDモジュール2aすべてに対して鍵生成を開始する指示を鍵管理装置1b-2にしてもよい。
【0071】
また例えば、鍵管理装置1a-2が、鍵管理装置1b-2に接続されるQKDモジュール2bのうち、鍵生成が開始されていないQKDモジュール2bに対して鍵生成を開始する指示を鍵管理装置1b-2にしてもよい。
【0072】
また例えば、鍵管理装置1a-2が、鍵管理装置1b-2に新規に接続されるQKDモジュール2bに対して鍵生成を開始する指示を鍵管理装置1b-2にしてもよい。
【0073】
さらに、鍵管理装置1a-2が、鍵管理装置1b-2に接続されるQKDモジュール2bに対して鍵生成を開始させる指示を示すメッセージは、鍵管理装置1b-2により変更されてもよいし、鍵管理装置1b-2により、そのままQKDモジュール2bに転送されてもよい。メッセージが変更される場合、例えば、鍵管理装置1b-2のローカル指示部107が、メッセージに含まれる宛先アドレスを、鍵管理装置1b-2のアドレスから、鍵生成の開始対象のQKDモジュール2bのアドレスに変更する。
【0074】
この方法では、鍵管理装置1b-2は、事実上、鍵管理装置1a-2と、QKDモジュール2bとの間の中継役、いわばトンネルの役割をすることになる。
【0075】
上述の
図6のフローチャートに示す第2実施形態の鍵管理方法によれば、複数のQKDモジュール2の全てまたは一部が、鍵生成を開始していない状態であっても、QKDリンクに接続される対応するQKDモジュール2のペアを特定できる。
【0076】
図7は第1及び第2実施形態の効果を説明するための図である。第1実施形態のフローチャート(
図4)、及び、第2実施形態のフローチャート(
図6)によって、QKD鍵の同一性の検証に使用されるデータ111a及び111b、並びに、検証結果データ112a及び112bが得られる。
【0077】
鍵管理装置1a(1a-2)のQKD鍵の同一性の検証に使用されるデータ111aは、例えば、QKD鍵A1の同一性検証データと、QKD鍵A1を生成するQKDモジュール2aaを識別するQKDモジュールID-AAとの組を含む。
【0078】
鍵管理装置1b(1b-2)のQKD鍵の同一性の検証に使用されるデータ111bは、QKD鍵の同一性の検証に使用されるデータ111aと同じである。
【0079】
鍵管理装置1a(1a-2)の検証結果データ112aは、第1実施形態のフローチャートのステップS4(
図4)、及び、第2実施形態のフローチャートのステップS17(
図6)で特定されるデータである。
図7の例では、QKD鍵A1の同一性検証データと、QKD鍵B2の同一性検証データとの一致によって、QKD鍵A1及びB2が同じであることが特定され、QKDモジュールID-AAとQKDモジュールID-BBとが対応付けられた場合を示す。
【0080】
鍵管理装置1b(1b-2)の検証結果データ112bは、第1実施形態のフローチャートのステップS4(
図4)、及び、第2実施形態のフローチャートのステップS26(
図6)で特定されるデータである。鍵管理装置1b(1b-2)の検証結果データ112bは、検証結果データ112aと同じである。
【0081】
なお、上述の第1及び第2実施形態の例では、鍵管理装置1a(1a-2)と鍵管理装置1b(1b-2)との間で、QKD鍵同一性検証データとQKDモジュールIDとの組を互いに共有する方法を示した。しかしながら、上記の通り、QKD鍵の同一性の検証に使用されるデータ111a及び111bは一致し、検証結果データ112a及び112bも一致するので、例えば、鍵管理装置1a(1a-2)が、QKD鍵の同一性の検証に使用されるデータ111aの収集・取得と、検証とを実行してもよい。この場合、例えば、鍵管理装置1b(1b-2)は、検証結果データ112aを、鍵管理装置1a(1a-2)から受信する。また例えば、鍵管理装置1b(1b-2)は、検証結果データ112aだけでなく、QKD鍵の同一性の検証に使用されるデータ111aの全部又は一部(例えば鍵管理装置1a(1a-2)に接続されるリモートのQKDモジュール2aのQKD鍵同一性検証データ及びQKDモジュールID)も、鍵管理装置1a(1a-2)から受信する。
【0082】
なお、いずれか一方の鍵管理装置1(1-2)が、QKD鍵の同一性の検証に使用されるデータ111の収集・取得と、検証とを実行する場合、鍵管理装置1a(1a-2)ではなく鍵管理装置1b(1-2)が実行してもよい。
【0083】
最後に、第1及び第2実施形態の鍵管理装置1(1-2)、及び、QKDモジュール2(2-2)のハードウェア構成の例について説明する。
【0084】
[ハードウェア構成の例]
図8は、第1及び第2実施形態の鍵管理装置1(1-2)のハードウェア構成の例を示す図である。第1及び第2実施形態の鍵管理装置1(1-2)は、プロセッサ301、主記憶装置302、補助記憶装置303、表示装置304、入力装置305及び通信IF306を備える。プロセッサ301、主記憶装置302、補助記憶装置303、表示装置304、入力装置305及び通信IF306は、バス310を介して接続されている。
【0085】
プロセッサ301は、補助記憶装置303から主記憶装置302に読み出されるプログラムを実行する。なお、プログラムを実行するプロセッサ301の代わりに、RTL(Register Transfer Level)でFPGAの回路を構成し、FPGAの回路によって処理を実行してもよい。主記憶装置302は、ROM(Read Only Memory)及びRAM(Random Access Memory)等のメモリである。補助記憶装置303は、HDD(Hard Disk Drive)及びメモリカード等である。
【0086】
表示装置304は、鍵管理装置1(1-2)の状態等を表示する。入力装置305はユーザーからの入力を受け付ける。なお、第1及び第2実施形態の鍵管理装置1(1-2)は、表示装置304及び入力装置305を備えていなくてもよい。
【0087】
通信IF306は、鍵管理装置1(1-2)、及び、QKDモジュール2(2-2)等に接続するためのインターフェースである。鍵管理装置1(1-2)が表示装置304及び入力装置305を備えていない場合は、例えば通信IF306を介して接続される外部端末の表示機能及び入力機能を利用してもよい。
【0088】
図9は、第1及び第2実施形態のQKDモジュール2(2-2)のハードウェア構成の例を示す図である。QKDモジュール2(2-2)は、プロセッサ401、主記憶装置402、補助記憶装置403、表示装置404、入力装置405、量子通信IF406及び古典通信IF407を備える。プロセッサ401、主記憶装置402、補助記憶装置403、表示装置404、入力装置405、量子通信IF406及び古典通信IF407は、バス410を介して接続されている。
【0089】
プロセッサ401は、補助記憶装置403から主記憶装置402に読み出されるプログラムを実行する。なお、プログラムを実行するプロセッサ401の代わりに、RTLでFPGAの回路を構成し、FPGAの回路によって処理を実行してもよい。主記憶装置402は、ROM及びRAM等のメモリである。補助記憶装置403は、HDD及びメモリカード等である。
【0090】
表示装置404は、QKDモジュール2(2-2)の状態等を表示する。入力装置405はユーザーからの入力を受け付ける。なお、QKDモジュール2(2-2)は、表示装置404及び入力装置405を備えていなくてもよい。
【0091】
量子通信IF406は、量子暗号通信路(QKDリンク)に接続するためのインターフェースである。古典通信IF207は、古典通信路、及び、鍵管理装置1(1-2)等に接続するためのインターフェースである。QKDモジュール2(2-2)が表示装置404及び入力装置405を備えていない場合は、例えば古典通信IF407を介して接続される外部端末の表示機能及び入力機能を利用してもよい。
【0092】
鍵管理装置1(1-2)及びQKDモジュール2(2-2)で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、メモリカード、CD-R、及び、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記憶媒体に記憶されてコンピュータ・プログラム・プロダクトとして提供される。
【0093】
また、鍵管理装置1(1-2)及びQKDモジュール2(2-2)で実行されるプログラムを、インターネット等のネットワークに接続されるコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。
【0094】
また、鍵管理装置1(1-2)及びQKDモジュール2(2-2)が実行するプログラムを、ダウンロードさせずにインターネット等のネットワーク経由で提供するように構成してもよい。
【0095】
また、鍵管理装置1(1-2)及びQKDモジュール2(2-2)で実行されるプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
【0096】
鍵管理装置1(1-2)で実行されるプログラムは、上述の鍵管理装置1(1-2)の機能構成のうち、プログラムにより実現可能な機能を含むモジュール構成となっている。プログラムにより実現される機能は、プロセッサ301が補助記憶装置303等の記憶媒体からプログラムを読み出して実行することにより、主記憶装置302にロードされる。すなわちプログラムにより実現される機能は、主記憶装置302上に生成される。
【0097】
同様に、QKDモジュール2(2-2)で実行されるプログラムは、上述のQKDモジュール2(2-2)の機能構成のうち、プログラムにより実現可能な機能を含むモジュール構成となっている。プログラムにより実現される機能は、プロセッサ401が補助記憶装置403等の記憶媒体からプログラムを読み出して実行することにより、主記憶装置402にロードされる。すなわちプログラムにより実現される機能は、主記憶装置402上に生成される。
【0098】
また、プログラムを実行するプロセッサ301の代わりに、RTLでFPGAの回路が構成される場合、鍵管理装置1(1-2)で実行されるRTLは、上述の鍵管理装置1(1-2)の機能構成のうち、RTLにより実現可能な機能を含むモジュール構成となっている。この場合、RTLにより実現される機能は、FPGAの回路上に生成される。
【0099】
同様に、プログラムを実行するプロセッサ401の代わりに、RTLでFPGAの回路が構成される場合、QKDモジュール2(2-2)で実行されるRTLは、上述のQKDモジュール2(2-2)の機能構成のうち、RTLにより実現可能な機能を含むモジュール構成となっている。この場合、RTLにより実現される機能は、FPGAの回路上に生成される。
【0100】
なお、鍵管理装置1(1-2)及びQKDモジュール2(2-2)の機能の一部又は全部を、IC(Integrated Circuit)等のハードウェアにより実現してもよい。ICは、例えば専用の処理を実行するプロセッサ、及び、FPGAの回路等である。
【0101】
また、複数のプロセッサを用いて各機能を実現する場合、各プロセッサは、各機能のうち1つを実現してもよいし、各機能のうち2つ以上を実現してもよい。
【0102】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0103】
1 鍵管理装置
2 QKDモジュール
10 処理部
11 取得部
12 出力部
13 記憶部
20 処理部
21 量子通信部
22 古典通信部
23 記憶部
100 量子暗号通信システム
101 送信制御部
102 受信制御部
103 収集制御部
104 生成部
105 検証部
106 検出部
107 ローカル指示部
108 リモート指示部
201 送信制御部
202 受信制御部
203 鍵蒸留部
301 プロセッサ
302 主記憶装置
303 補助記憶装置
304 表示装置
305 入力装置
306 通信IF
310 バス
401 プロセッサ
402 主記憶装置
403 補助記憶装置
404 表示装置
405 入力装置
406 量子通信IF
407 古典通信IF
410 バス