(57)【要約】乱数性の保証と乱数検定負荷の軽減とを共に達成できる乱数品質管理方法および装置を提供する。  通信装置（１０）が共有乱数に対して実行した第１乱数検定の結果と、２通信装置（２０）が共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて共有乱数に対する乱数検定の総合判定を行う総合判定部（３０１）を有し、総合判定の結果を通信装置（１）および第２通信装置（２０）へ安全に通知する。第１乱数検定と第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なる。
2020079841.tif 000002
【特許請求の範囲】
【請求項１】
第１通信装置と第２通信装置の間で安全に生成された共有乱数の品質を管理する装置であって、
前記第１通信装置が前記共有乱数に対して実行した第１乱数検定の結果と、前記第２通信装置が前記共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて前記共有乱数に対する乱数検定の総合判定を行う判定手段と、
前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ安全に通知する通信手段と、
を有し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とする乱数品質管理装置。
【請求項２】
前記第１乱数検定が前記共有乱数の各乱数ブロックに対して第１の検定法を実行し、前記第２乱数検定が前記第１の検定法と同じ乱数ブロックに対して第２の検定法を実行し、
前記判定手段は、前記第１の検定法の検定結果と前記第２の検定法の検定結果とが共に適合である乱数ブロックのみを合格と判定する、ことを特徴とする請求項１に記載の乱数品質管理装置。
【請求項３】
前記第１の検定法および前記第２の検定法は、予め決められた乱数検定ツールに含まれる異なる検定法であることを特徴とする請求項２に記載の乱数品質管理装置。
【請求項４】
前記第１の検定法および前記第２の検定法が前記乱数検定ツールに含まれる複数の検定法から順次選択されることを特徴とする請求項３に記載の乱数品質管理装置。
【請求項５】
前記第１乱数検定が前記共有乱数のうち所定の乱数ブロックに対して所定の検定法を実行し、前記第２乱数検定が前記共有乱数のうち前記所定の乱数ブロック以外の乱数ブロックに対して前記所定の検定法を実行し、
前記判定手段は、前記第１の検定法の検定結果が適合である乱数ブロックと前記第２の検定法の検定結果が適合である乱数ブロックとを合格と判定する、ことを特徴とする請求項１に記載の乱数品質管理装置。
【請求項６】
前記所定の検定法は、予め決められた乱数検定ツールに含まれる検定法であることを特徴とする請求項５に記載の乱数品質管理装置。
【請求項７】
前記所定の検定法が前記乱数検定ツールに含まれる複数の検定法から順次選択されることを特徴とする請求項６に記載の乱数品質管理装置。
【請求項８】
前記共有乱数は、前記第１通信装置と前記第２通信装置との間で単一光子レベルの光パルス伝送を利用した量子鍵配送により生成されることを特徴とする請求項１−７のいずれか１項に記載の乱数品質管理装置。
【請求項９】
第１通信装置と第２通信装置の間で安全に生成された共有乱数の品質を管理する方法であって、
通信手段が、前記第１通信装置から前記共有乱数に対して実行した第１乱数検定の結果を安全に受信し、前記第２通信装置から前記共有乱数に対して実行した第２乱数検定の結果を安全に受信し、
判定手段が、前記第１乱数検定の結果と前記第２乱数検定の結果とを組み合わせて前記共有乱数に対する乱数検定の総合判定を行い、
前記通信手段が、前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ安全に通知し、
前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とする乱数品質管理方法。
【請求項１０】
第１通信装置と第２通信装置の間で安全に生成された共有乱数の品質を管理する装置としてコンピュータを機能させるプログラムであって、
前記第１通信装置が前記共有乱数に対して実行した第１乱数検定の結果と、前記第２通信装置が前記共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて前記共有乱数に対する乱数検定の総合判定を行う機能と、
前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ安全に通知する機能と、
を前記コンピュータに実現し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は通信装置間の秘密情報である乱数の品質管理技術に関する。
【背景技術】
【０００２】
暗号鍵あるいはその種として用いられる乱数は、他者に知られることなく通信装置間だけで共有されるべき秘密情報である。このような秘密の共有乱数を安全に生成する方法としては、量子鍵配送（ＱＫＤ：Quantum Key Distribution）等の鍵生成技術が知られている。一方、共有乱数は乱数性も保証される必要があり、乱数性を考慮した乱数生成方法がいくつか提案されている。【０００３】
特許文献１は、使用される乱数の種となる乱数をＱＫＤ送信器で生成する方法を開示する。ＱＫＤ送信器は、位相がランダムに変化したパルス列を生成し、そのパルス列を当該装置内の干渉光学系に通すことで強度がランダムに変化するパルス例を生成する。このパルス強度の変化を利用して乱数を抽出し、抽出された乱数に対して複数の乱数検定法(Randomness test)を実行する。全ての検定に適合した乱数だけをＱＫＤの各プロセスで使用する。【０００４】
また、特許文献２は、ＱＫＤシステムにおいて共有乱数の乱数性を保証するために、選別鍵のマーク率をチェックし、それが１／２となるようにＱＫＤ受信器の受光効率を調整する方法を開示する。【０００５】
乱数検定に関しては、複数の乱数検定法を一組にした乱数検定ツールがいくつか提案されている。代表的な検定ツールとして、NIST FIPS PUB 140-2、NIST Special Publication 800-22、DIEHARD等が知られている（非特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】国際公開第WO2017/135444A1号パンフレット
【特許文献２】特開２００７−１８７６９８号公報
【非特許文献】
【０００７】
【非特許文献１】電子政府情報セキュリティ技術開発事業  擬似乱数検証ツールの調査開発調査報告書（平成１５年２月  情報処理振興事業協会セキュリティセンター）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述した乱数検定ツールは実行可能な統計的検定法であり、これらを用いることで安全性が著しく低い乱数列を排除することができる。しかしながら、一つの検定法は乱数の一部の性質を検定するものである。したがって、これらの検定ツールに合格しても、真の乱数の性質の一部が保証されただけであり、真の乱数性が保証されたわけではない。【０００９】
乱数性をより確実に保証しようとすれば、より多くの検定法のセットが必要となる。しかしながら、検定法には大きな処理負荷を要するものがあり、検定法の数を増やせば、それだけ通信装置の検定負荷が大きくなる。検定負荷の増大は検定時間の増大をもたらし、乱数生成効率を低下させる。【００１０】
さらに、特許文献１に開示されたＱＫＤ通信装置では送信側で乱数を生成し検定を実行し、特許文献２に開示されたＱＫＤ通信装置では受信側で共有乱数の性質をチェックするために、通信装置の検定負荷を軽減できない。【００１１】
そこで、本発明の目的は、乱数性の保証と乱数検定負荷の軽減とを共に達成できる乱数品質管理方法および装置を提供することにある。
【課題を解決するための手段】
【００１２】
本発明による乱数品質管理装置は、第１通信装置と第２通信装置の間で安全に生成された共有乱数の品質を管理する装置であって、前記第１通信装置が前記共有乱数に対して実行した第１乱数検定の結果と、前記第２通信装置が前記共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて前記共有乱数に対する乱数検定の総合判定を行う判定手段と、前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ安全に通知する通信手段と、を有し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とすることを特徴とする。
本発明による乱数品質管理方法は、第１通信装置と第２通信装置の間で安全に生成された共有乱数の品質を管理する方法であって、通信手段が、前記第１通信装置から前記共有乱数に対して実行した第１乱数検定の結果を安全に受信し、前記第２通信装置から前記共有乱数に対して実行した第２乱数検定の結果を安全に受信し、判定手段が、前記第１乱数検定の結果と前記第２乱数検定の結果とを組み合わせて前記共有乱数に対する乱数検定の総合判定を行い、前記通信手段が、前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ安全に通知し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とする。
本発明によるプログラムは、第１通信装置と第２通信装置の間で安全に生成された共有乱数の品質を管理する装置としてコンピュータを機能させるプログラムであって、前記第１通信装置が前記共有乱数に対して実行した第１乱数検定の結果と、前記第２通信装置が前記共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて前記共有乱数に対する乱数検定の総合判定を行う機能と、前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ安全に通知する機能と、を前記コンピュータに実現し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、共有乱数の検定を第１通信装置と第２通信装置とで分担することで、乱数性の保証と乱数検定負荷の軽減とを共に達成できる。
【図面の簡単な説明】
【００１４】
【図１】図１は本発明による乱数管理方法を適用可能な通信システムの構成図である。
【図２】図２は図１に示すシステムで採用されうる一般的な量子暗号鍵生成の流れを示すフローチャートである。
【図３】図３は本発明による第１実施形態による乱数管理方法を示すシーケンス図である。
【図４】図４は第１実施形態による乱数管理方法が適用される共有乱数列の一例を示す模式図である。
【図５】図５は第１実施形態による乱数管理方法の一例を示すフローチャートである。
【図６】図６は本発明による第２実施形態による乱数管理方法を示すシーケンス図である。
【図７】図７は第２実施形態による乱数管理方法が適用される共有乱数列の一例を示す模式図である。
【図８】図８は第２実施形態による乱数管理方法の一例を示すフローチャートである。
【図９】図９は本発明の一実施例によるＱＫＤシステムを示す構成図である。
【図１０】図１０は図９に示す実施例によるＱＫＤシステムの通信シーケンスを示す図である。
【発明を実施するための形態】
【００１５】
＜実施形態の概要＞
本発明の実施形態によれば、通信装置間で安全に生成された共有乱数の検定を双方の通信装置で分担する。より詳しくは、共通にブロック区分された共有乱数に対する乱数検定を次のように分担する。
【００１６】
（１）検定法の分担
送信側および受信側で異なる検定法を使用する。たとえば同一ブロックの乱数に対して送信側が第１の検定法を、受信側が第２の検定法をそれぞれ使用し、両方の検定法に合格したブロックの乱数のみを保証された乱数として採用する。複数の乱数検定法からなる検定ツールを用いて、送信側および受信側で異なる乱数検定法を実行することができるので、検定ツールによる検定処理を効率化できる。
（２）検定対象の分担
送信側および受信側の双方で同一の検定法を使用し、１つの共有乱数のそれぞれ異なる乱数ブロックに適用する。たとえば、送信側と受信側との間で共有乱数列の検定対象ブロックを振り分け、それぞれが担当部分の検定を実行する。送信側および受信側の各検定に合格すれば、対応するブロックの乱数を保証された乱数として採用する。共有乱数は送信側および受信側でブロック単位に分割されるので、送信側および受信側はそれぞれの担当部分だけの検定を実行すればよく、一つの検定法による検定を効率的に実行できる。
なお、上記分担法（１）および（２）を組み合わせることもできる。すなわち、異なる乱数検定法を異なる乱数ブロックに適用することも可能である。
【００１７】
このように送信側および受信側の双方で乱数検定を分担することにより、共有乱数を生成した通信装置での検定負荷を軽減することができる。
【００１８】
以下、本発明の実施形態について図面を参照して詳細に説明する。なお、以下の実施形態に記載されている構成要素は単なる例示であって、本発明の技術範囲をそれらのみに限定する趣旨ではない。
【００１９】
＜システム構成＞
図１に例示するように、通信装置１０、通信装置２０および鍵管理装置３０が互いに通信可能に接続されているものとする。通信装置１０は、通常の通信部その他機能部の他に、ＱＫＤ送信器１０１、乱数検定部１０２および鍵蓄積部１０３を有する。図１では通常の通信部その他機能部は複雑化を避けるために省略されている。通信装置２０も同様に、通常の通信部その他機能部の他に、ＱＫＤ受信器２０１、乱数検定部２０２および鍵蓄積部２０３を有する。
【００２０】
ＱＫＤ送信器１０１とＱＫＤ受信器２０１とは、量子チャネルＱｃｈおよび通常の通信チャネルＣｃｈを用いて鍵生成プロセスを実行し、それぞれ共通の乱数を生成する。それぞれ生成された乱数は、後述するように乱数検定部１０２および２０２により所定の乱数検定が実行され、それらの検定結果が鍵管理装置３０へ安全に通知される。
【００２１】
乱数検定部１０２および２０２は、同一の乱数検定法セットに含まれる複数の乱数検定法を所定の順序で使用可能である。上述した乱数検定の分担法（１）および（２）のいずれを用いるかに依存して、乱数検定部１０２および２０２でそれぞれ使用すべき乱数検定法、使用順序、および当該乱数検定法を適用すべき乱数ブロックが設定されうる。この設定は、乱数検定部１０２および２０２に予め決められていてもよいし、鍵管理装置３０あるいは他の制御装置からの制御により決定されても良い。
【００２２】
鍵管理装置３０は、通信装置１０および２０に蓄積されている鍵量を管理する機能に加えて、総合判定部３０１を有する。総合判定部３０１は、後述するように、通信装置１０および２０から通知されたそれぞれの乱数検定結果を総合し各乱数ブロックの適否を判定する。総合判定結果はone time pad 暗号化等により安全に各通信装置へ通知される。通信装置１０および２０は、こうして総合判定部３０１により適合と判定されたブロックの乱数を安全な鍵として鍵蓄積部１０３および２０３に格納する。
【００２３】
＜共有乱数生成プロセス＞
図１に例示するシステムにおいて、ＱＫＤ送信器１０１とＱＫＤ受信器２０１との間で共有される乱数はＱＫＤ鍵生成プロセスにより生成される。ただし、共有乱数生成プロセスは、ＱＫＤに限定されるものではなく、通信装置間で安全に秘密の共有乱数を生成できるプロセスであればよい。以下、図２を参照して、ＱＫＤ鍵生成プロセスについて簡単に説明する。
【００２４】
図２において、単一光子伝送では、ＱＫＤ送信器１０１が単一光子レベルの光パルスを、その位相に乱数を乗せた状態で量子チャネルＱｃｈを通してＱＫＤ受信器２０１へ伝送する。ＱＫＤ方式としては、いくつかの提案があるが、たとえば４つの量子状態を用いたＢＢ８４方式が広く知られている。ＱＫＤ送信器１０１が送信した乱数のうち、その大部分は伝送路の損失等によって失われる。ＱＫＤ受信器２０１で受信された乱数を生鍵という。
【００２５】
続いて、基底照合が、量子チャネルＱｃｈとは異なる通常光の通信チャネルＣｃｈを用いて実行される。ＱＫＤ受信器２０１は、受信できたビットのビット番号と受信基底とを通信チャネルＣｃｈを通してＱＫＤ送信器１０１へ通知する。ＱＫＤ送信器１０１は受け取ったビット番号の受信基底とそのビットを送るときに用いた送信基底とを照合し、送信基底と受信基底とが一致するビットのみを篩い分ける。この篩い分けられたビット列を選別鍵(sifted key)という。
【００２６】
このようにして生成された選別鍵は、通信誤りを含んでいる可能性があるので、ＱＫＤ送信器１０１とＱＫＤ受信器２０１との間で完全に一致した乱数列であるとは限らない。そこで、ＱＫＤ送信器１０１とＱＫＤ受信器２０１との間で選別鍵の一部を通信チャネルＣｃｈを通してやりとりし、それぞれ有する選別鍵が一致するまでエラー訂正処理を繰り返す。エラー訂正処理の手法としては、従来の通信でも使用されているＢＣＨ符号やＬＤＰＣ（low-density parity-check code）符号などが用いられる。
【００２７】
しかしながら、訂正した誤りは伝送路損失のみによるものとは断定できない。ＱＫＤ技術では、常に盗聴者の存在を想定しており、盗聴者が存在すれば、誤り率に反映される。そこで、盗聴行為を無効にするため、一致した選別鍵に対して秘匿増強処理を行う。秘匿増強処理では、盗聴されていると推定される情報量を選別鍵からランダムに捨てることで、盗聴者が持っている状態が無情報の状態と区別できないようにする。このように誤り訂正された選別鍵に対して秘匿増強処理を施すことで最終的に得られた鍵を最終鍵という。
【００２８】
図２に例示されるように、ＱＫＤ送信器１０１が生成した原乱数は、単一光子伝送、基底照合、エラー訂正および秘匿増強からなる鍵生成プロセスにより、ＱＫＤ送信器１０１およびＱＫＤ受信器２０１の双方に共通の乱数（最終鍵）がそれぞれ安全に生成される。なお、この共有乱数（最終鍵）はブロック区分され、以後、共通のブロック番号により管理される。
【００２９】
以下、上述した通信システムを一例として、本発明の第１実施形態および第２実施形態について説明する。
【００３０】
１．第１実施形態
本発明の第１実施形態によれば、送信側の通信装置１０と受信側の通信装置２０は、それぞれ異なる乱数検定法を使用して共有乱数列の検定を実行する。したがって、複数の乱数検定法を通信装置１０および２０で分担することができ、検定ツールによる検定処理を効率的に実行することができる。両方の検定法に合格したブロックの乱数だけが保証された乱数として蓄積される。以下、図３〜図５を参照して、第１実施形態による品質管理方法を説明する。
【００３１】
１．１）乱数検定シーケンス
図３に例示するように、上述した共有乱数生成プロセスにより通信装置１０のＱＫＤ送信器１０１と通信装置２０のＱＫＤ受信器２０１とがブロック区分された共有乱数をそれぞれ生成する（動作Ｓ４０１〜Ｓ４０４）。共有乱数が生成された時に、通信装置１０および／または通信装置２０は、共有乱数のブロックの通し番号B(0), B(1), … B(i-1), B(i), B(i+1), …を含む乱数管理情報を鍵管理装置３０へ通知しても良い（動作Ｓ４０５、Ｓ４０６)。これらの乱数ブロック番号は所定個数ずつ乱数管理情報に乗せて通知することができる。通信装置１０および２０におけるブロック区分された共有乱数の一例を図４に示す。
【００３２】
乱数検定部１０２および２０２は、同じ乱数検定法からなる検定ツールを有し、この検定ツールおいて異なる乱数検定法を順次使用するように予め設定されているものとする。このような検定方法の設定は、通信装置１０および２０で設定されても良いし、外部から、例えば鍵管理装置３０あるいはネットワーク制御装置等により設定されてもよい。
【００３３】
共有乱数が生成されると、乱数検定部１０２および２０２は、異なる乱数検定法Ｔ１およびＴ２をそれぞれ使用して、乱数ブロック毎に順次乱数検定を実行する（動作Ｓ４０７、Ｓ４０８）。他に設定された乱数検定法（Ｔ３およびＴ４等）があれば同様の検定処理が繰り返される。乱数検定部１０２および２０２による各乱数ブロックの検定結果Ｒ１およびＲ２は、それぞれ鍵管理装置３０へ通知される（動作Ｓ４０９、Ｓ４１０）。なお、乱数検定は任意のタイミングで実行できるが、上述した誤り訂正における符号化率を変更したタイミングで実行することができる。
【００３４】
検定結果Ｒ１、Ｒ２は、それぞれ使用された乱数検定法に適合すれば“１”、不適合であれば“０”という数値を用いることができる。あるいは、検定結果Ｒ１、Ｒ２として、乱数検定法により得られた適否判定される値ｐそのものを用いても良い。
【００３５】
鍵管理装置３０の総合判定部３０１は、乱数ブロック毎の検定結果Ｒ１およびＲ２を受信すると、検定結果Ｒ１、Ｒ２を用いて当該乱数ブロックの合否を最終的に判定する（動作Ｓ４１１）。
【００３６】
鍵管理装置３０は、各乱数ブロックの総合判定結果、すなわち合否結果、を通信装置１０および２０へそれぞれ通知する（動作Ｓ４１２、Ｓ４１３）。通信装置１０および２０は、総合判定結果を受信すると、合格した乱数ブロックのみを鍵蓄積部１０３および２０３にそれぞれ格納する（動作Ｓ４１４、Ｓ４１５）。たとえば、一方の検定結果Ｒ１が適合“１”であっても、他方のＲ２が不適合“０”であれば、当該乱数ブロックは不合格となり暗号鍵として採用されない。言い換えれば、Ｒ１およびＲ２の双方が適合“１”である時のみ、当該乱数ブロックは合格となり暗号鍵として採用される。鍵管理装置３０の総合判定部３０１の判定方法を図５に示す。
【００３７】
１．２）総合判定
図５を参照すると、鍵管理装置３０の総合判定部３０１は、通信装置１０および通信装置２０から、共有乱数のブロック番号B(i)（i = 0, 1, 2, …, n）と使用される乱数検定法Ｔ１およびＴ２の情報とを含む乱数管理情報をone time pad暗号化等により安全に受信しているものとする（動作Ｓ５０１）。
【００３８】
続いて、総合判定部３０１は、通信装置１０からブロックB(i)の乱数検定結果R1(i)を、通信装置２０からブロックB(i)の乱数検定結果R2(i)を、それぞれ受信する（動作Ｓ５０２）。総合判定部３０１は、これらの乱数検定結果R1(i)およびR2(i)の少なくとも一方が不適合であるか否かを判断し（動作Ｓ５０３）、不適合であれば当該ブロックB(i)の乱数列は不合格と判定し（動作Ｓ５０４）、いずれも適合であれば合格と判定する（動作Ｓ５０５）。
【００３９】
この合否判定方法は種々の論理を用いることができる。たとえば、検定結果R1(i)およびR2(i)が上述した二値（１／０）の適否結果であれば、R1(i).and.R2(i)=1である時のみ、当該ブロックB(i)の乱数は合格と判定される。たとえば、通信装置１０がｎブロックの検定結果R1(0)…R1(n-1)をブロック番号順に、one time pad暗号等により暗号化されたパケットにより鍵管理装置３０へ送信すると仮定する。同様に、通信装置２０もｎブロックの検定結果R2(0)…R2(n-1)をブロック番号順に、one time pad暗号等により暗号化されたパケットにより鍵管理装置３０へ送信すると仮定する。一例として、次の検査結果R1およびR2が送信されたものとする。
R1(0)…R1(n-1)=11001…0111
R2(0)…R2(n-1)=10011…1101
これらデータを受信すると、鍵管理装置３０の総合判定部３０１は、受信した検定結果R1, R2を対応するブロック毎に論理積をとり、その結果を総合判定結果S(0)…S(n-1)として各通信装置へ通知する。上記検定結果R1, R2であれば、総合判定結果Sは、
S(0) … S(n-1)=10001…0101
となる。この総合判定結果Sを順次あるいは一括で各通信装置へ返すことで、各通信装置はブロックごとの合否を知ることができる。すなわち、合格を示す“１”に対応したブロックの乱数列を安全な鍵として特定できる。
【００４０】
検定結果R1(i)およびR2(i)が、たとえば乱数検定法Ｔ１、Ｔ２における適否判定される値ｐ１、ｐ２であれば、総合判定部３０１は、値ｐ１、ｐ２とそれぞれの乱数検定法に対応する判定基準とを比較することで総合的に合否判定を行う。この方法は、鍵管理装置３０の側で判定基準を所望レベルに設定できる利点がある。
【００４１】
各乱数検定法に対応する判定基準は１つである必要はない。レベルが異なる基準と比較することで、複数段階の合否判定を行うことができる。たとえば、２つの判定基準TH1、TH2（TH1＜TH2）を設定すれば、p<TH1であれば合否結果“00”＝不良、TH1<p<TH2であれば合否結果“01”／“10”＝良、TH2<pであれば合否結果“11”＝優良、というように判定結果にグレードをつけることができる。このような判定結果は、通信装置が各ブロックの乱数列の用途を選択する基準となり得る。たとえば、重要な情報であれば安全性が優良の乱数列を使用し、それ以外の情報であれば安全性が良の乱数列を使用することができる。あるいは上記グレードに応じてアプリケーションを使い分けることもできる。
【００４２】
こうして得られたブロックB(i)の合否判定結果はone time pad暗号化等により安全に通信装置１０および２０へ通知される。通信装置１０および２０は、鍵管理装置３０により合格判定されたブロックB(i)の乱数列を安全な鍵として鍵蓄積部１０３および２０３にそれぞれ格納する。
【００４３】
２．第２実施形態
本発明の第２実施形態によれば、送信側の通信装置１０および受信側の通信装置２０で共有される１つの乱数列に対して、その一部を一方の通信装置が、残りを他方の通信装置が、それぞれ担当して乱数検定を実行する。通信装置１０および２０のいずれかで検定に合格すれば、そのブロックの乱数を保証された乱数として採用する。通信装置１０および２０はそれぞれの担当部分だけの検定を実行すればよいので、一つの検定法による乱数検定を効率的に実行できる。以下、図６〜図８を参照して、第２実施形態による品質管理方法を説明する。
【００４４】
２．１）乱数検定シーケンス
図６に例示するように、上述した共有乱数生成プロセスにより通信装置１０のＱＫＤ送信器１０１と通信装置２０のＱＫＤ受信器２０１とがブロック区分された共有乱数をそれぞれ生成する（動作Ｓ６０１〜Ｓ６０４）。共有乱数が生成された時に、通信装置１０および／または通信装置２０は、共有乱数のブロックの通し番号B(0), B(1), … B(i-1), B(i), B(i+1), …, B(n-1),を含む乱数管理情報を鍵管理装置３０へ通知しても良い（動作Ｓ６０５、Ｓ６０６)。これらの乱数ブロック番号は所定個数ずつ乱数管理情報に乗せて通知することができる。通信装置１０および２０におけるブロック区分された共有乱数の一例を図７に示す。
【００４５】
乱数検定部１０２および２０２は、同じ乱数検定法からなる検定ツールを有し、このツールにおいて同じ乱数検定法を順次使用するように予め設定されているものとする。さらに、乱数検定部１０２および２０２は、図７に例示するように、検定対象となるブロックが互いに重ならないように、かつ隣接するように予め設定されているものとする。ただし、図７は一例であり、乱数検定部１０２および２０２は、１つずつ交互に検定対象ブロックを選択するだけでなく、複数のブロック毎にあるいは所定パターンで選択するように設定することもできる。このような検定方法および検定対象の設定は、通信装置１０および２０により設定されても良いし、外部から、例えば鍵管理装置３０あるいはネットワーク制御装置等により設定されてもよい。
【００４６】
共有乱数が生成されると、乱数検定部１０２および２０２は、一つの乱数検定法Ｔ１を使用して、上述したように設定された互いに異なる乱数ブロックB(i)およびB(j)（ｉ,ｊ=0,1,2,…,n-1であってｉ≠ｊ）に対して乱数検定を順次実行する（動作Ｓ６０７、Ｓ６０８）。他に設定された乱数検定法（Ｔ２、Ｔ３・・・）があれば同様の検定処理が繰り返される。乱数検定部１０２は乱数ブロックB(i)の検定結果Ｒ（ｉ）を鍵管理装置３０へ通知し（動作Ｓ６０９）、乱数検定部２０２は乱数ブロックB(j)の検定結果Ｒ(ｊ)を鍵管理装置３０へ通知する（動作Ｓ６１０）。
【００４７】
検定結果Ｒ（ｉ）、Ｒ(ｊ)は、それぞれ乱数検定法に適合すれば“１”、不適合であれば“０”という数値を用いることができる。あるいは、検定結果Ｒ（ｉ）、Ｒ(ｊ)として、乱数検定法により得られた適否判定される値ｐそのものを用いても良い。
【００４８】
鍵管理装置３０の総合判定部３０１は、乱数ブロック毎の検定結果Ｒ（ｉ）、Ｒ(ｊ)を受信すると、検定結果Ｒ（ｉ）、Ｒ(ｊ)を用いてそれぞれの乱数ブロックB(i)、B(j)の合否を最終的に判定する（動作Ｓ６１１）。
【００４９】
鍵管理装置３０は、各乱数ブロックの総合判定結果、すなわち合否結果、を通信装置１０および２０へそれぞれ通知する（動作Ｓ６１２、Ｓ６１３）。通信装置１０および２０は、総合判定結果を受信すると、合格した乱数ブロックのみを鍵蓄積部１０３および２０３にそれぞれ格納する（動作Ｓ６１４、Ｓ６１５）。本実施形態では、検定結果Ｒ（ｉ）およびＲ(ｊ)のそれぞれの合否結果がそのまま対応する乱数ブロックB(i)およびB(j)のそれぞれの合否判定となる。鍵管理装置３０の総合判定部３０１の判定方法を図８に示す。
【００５０】
２．２）総合判定
図８を参照すると、鍵管理装置３０の総合判定部３０１は、通信装置１０および通信装置２０から、共有乱数のブロック番号B(i)（i = 0, 1, 2, …, n）と使用される乱数検定法Ｔ１の情報とを含む乱数管理情報をone time pad暗号化等により安全に受信しているものとする（動作Ｓ７０１）。
【００５１】
続いて、総合判定部３０１は、通信装置１０からブロックB(i)の乱数検定結果Ｒ（ｉ）を、通信装置２０からブロックB(j)の乱数検定結果Ｒ（ｊ）を、それぞれ受信する（動作Ｓ７０２）。総合判定部３０１は、これらの検定結果Ｒ（ｉ）、Ｒ(ｊ)の組み合わせに依存してブロックB(i)およびB(j)の合否を判断する（動作Ｓ７０３〜Ｓ７０７）。より詳しくは、検定結果Ｒ（ｉ）、Ｒ(ｊ)が共に不適合“０”であれば、それぞれの乱数ブロックB(i)、B(j)はいずれも不合格と判定される（動作Ｓ７０４）。検定結果Ｒ（ｉ）が適合“１”、Ｒ(ｊ)が不適合“０”であれば、乱数ブロックB(i)が合格、B(j)が不合格と判定される（動作Ｓ７０５）。以下同様に、検定結果Ｒ（ｉ）が不適合“０”、Ｒ(ｊ)が適合“１”であれば、乱数ブロックB(i)が不合格、B(j)が合格と判定され（動作Ｓ７０６）、検定結果Ｒ（ｉ）、Ｒ(ｊ)が共に適合“１”であれば、それぞれの乱数ブロックB(i)、B(j)はいずれも合格と判定される（動作Ｓ７０７）。
【００５２】
図７に示すブロック分割法において、たとえば通信装置１０が検定するブロックはB(0),B(2),…B(n-2)、通信装置２０が検定するブロックはB(1),B(3),…B(n-1)であるとする。一例として、鍵管理装置３０が次の検査結果R(i)およびR(j)を受信したものとする。
R(0),     R(2),   …  ,R(n-2)        =1 1 0 0 1 …0 1 1 1
R(1),     R(3), …       ,R(n-1) = 1 0 0 1 1 …1 1 0 1
この場合、総合判定結果S(0)…S(n-1)=1110000111 … 01111011が各通信装置へ通知される。この総合判定結果Sを順次あるいは一括して各通信装置へ返すことで、各通信装置はブロックごとの合否を知ることができる。すなわち、合格を示す“1”に対応したブロックの乱数列を安全な鍵として特定できる。
【００５３】
検定結果R(i)およびR(j)が、たとえば乱数検定法Ｔ１における適否判定される値ｐであれば、総合判定部３０１は、値ｐとそれぞれの乱数検定法に対応する判定基準とを比較することで総合的に合否判定を行う。この方法は、鍵管理装置３０の側で判定基準を所望レベルに設定できる利点がある。
【００５４】
乱数検定法Ｔ１に対応する判定基準は１つである必要はない。レベルが異なる基準と比較することで、複数段階の合否判定を行うことができる。たとえば、２つの判定基準TH1、TH2（TH1＜TH2）を設定すれば、p<TH1であれば合否結果“00”＝不良、TH1<p<TH2であれば合否結果“01”／“10”＝良、TH2<pであれば合否結果“11”＝優良、というように判定結果にグレードをつけることができる。このような判定結果は、通信装置が各ブロックの乱数列の用途を選択する基準となり得る。たとえば、重要な情報であれば安全性が優良の乱数列を使用し、それ以外の情報であれば安全性が良の乱数列を使用することができる。あるいは上記グレードに応じてアプリケーションを使い分けることもできる。
【００５５】
通信装置１０および２０は、鍵管理装置３０により合格判定されたブロックの乱数列を安全な鍵として鍵蓄積部１０３および２０３にそれぞれ格納する。
【００５６】
３．第３実施形態
本発明の第３実施形態によれば、上述した第１および第２実施形態における鍵管理装置３０の機能が各通信装置に設けられ、これらの鍵管理機能が互いに連携して上述した総合判定部３０１の機能を実現することもできる。これらの鍵管理機能は協働して上述した鍵管理装置３０と同様の機能を実現する。たとえば、一方の通信装置の鍵管理部が他方の通信装置の鍵管理部から乱数検定結果Ｒをone time pad暗号等により安全に受信すると、上述した第１実施形態あるいは第２実施形態と同様に総合判定を行い、判定結果を他方の通信装置へone time pad暗号等により安全に送信する。したがって、送信側の通信装置と受信側の通信装置のいずれか一方に総合判定部３０１と同等の機能を設けておけばよい。
【００５７】
４．一実施例
以下、上述した第１実施形態および第２実施形態による乱数品質管理方法を実現するＱＫＤシステムの一例を図９および図１０を参照しながら詳細に説明する。図９は図１に例示した通信システムのより詳細な構成を例示する。
【００５８】
４．１）システム構成
図９に例示するように、ＱＫＤシステムは、通信装置１０および通信装置２０が光伝送媒体を通して複数の通信チャネルにより接続され、通信装置１０および２０は鍵管理装置３０と安全なチャネルにより接続された構成を有する。通信装置１０は量子ユニット１１０１および通信ユニット１１０２を有し、通信装置２０は量子ユニット２１０１および通信ユニット２１０２を有する。量子ユニット１１０１および２１０１は量子チャネルＱｃｈによって、通信ユニット１１０２および２１０２は通信チャネルＣｃｈによってそれぞれ接続されている。
【００５９】
通信装置１０の量子ユニット１１０１は、１ビット当たりの光子数が１フォトン以下の非常に微弱な光パルスに乱数ビット情報をたとえば位相変調により乗せる。乱数ビット情報により変調された微弱光パルスは量子チャネルＱｃｈを通して量子ユニット２１０１へ伝送される。量子ユニット２１０１は、到達した微弱光パルスを検出して生鍵データとしてメモリ２１０５に格納する。一般に、このような微弱光パルスからはタイミングを抽出できない。そこで、本実施例では、通信装置１０が通常レベルの光パワーでタイミング情報を同期チャネルを通して通信装置２０へ別途送信する。
【００６０】
通信装置１０の制御部１１０３は鍵生成部１１０４および乱数検定部１１０６を制御する。鍵生成部１１０４はメモリ１１０５を用いて上述した鍵生成プロセスを実行し、生成された選別鍵および最終鍵をメモリ１１０５に蓄積する。乱数検定部１１０６は最終鍵に対して上述した乱数検定を実行し、その検定結果を鍵管理装置３０へ通知する。後述するように、最終鍵は図４あるいは図７に例示したようにブロック区分されている。鍵管理装置３０からの判定情報に従って、制御部１１０３は最終鍵のうち安全と判定されたブロックの乱数を安全鍵としてメモリ１１０７に格納する。メモリ１１０７は、暗号鍵を安全に蓄積できるものであることが必要であり、ここでは磁気記録媒体であるハードディスクドライブ（ＨＤＤ）が用いられる。
【００６１】
さらに、通信装置１０の制御部１１０３は、フレームパルス（ＦＰ）を生成し、カウントする機能を有する。フレームパルスは同期チャネルを通して通信装置２０へ送信される。フレームパルスのカウント値は、暗号鍵を生成・管理する際の指標となる。
【００６２】
制御部１１０３、鍵生成部１１０４および乱数検定部１１０６は、例えばＣＰＵ等のプロセッサ上で制御プログラム、鍵生成プログラムおよび乱数検定プログラムを実行することによりそれぞれ実装可能である。これらのプログラムはメモリ１１０８に格納され、プロセッサにより読み出されて起動する。
【００６３】
通信装置２０の制御部２１０３は鍵生成部２１０４および乱数検定部２１０６を制御する。鍵生成部２１０４はメモリ２１０５を用いて鍵生成プロセスを実行し、選別鍵および最終鍵を蓄積する。乱数検定部２１０６は最終鍵に対して上述した乱数検定を実行し、その検定結果を鍵管理装置３０へ通知する。後述するように、最終鍵は図４あるいは図７に例示したようにブロック区分されている。鍵管理装置３０からの判定情報に従って、制御部２１０３は最終鍵のうち安全と判定されたブロックの乱数を安全鍵としてメモリ２１０７に格納する。メモリ２１０７は、暗号鍵を安全に蓄積できるものであることが必要であり、ここでは磁気記録媒体であるハードディスクドライブ（ＨＤＤ）が用いられる。
【００６４】
さらに、通信装置２０の制御部２１０３は、フレームパルス（ＦＰ）をカウントする機能を有する。フレームパルスは同期チャネルを通して通信装置１０から受信される。フレームパルスのカウント値は、暗号鍵を生成・管理する際の指標となる。
【００６５】
制御部２１０３、鍵生成部２１０４および乱数検定部２１０６は、例えばＣＰＵ等のプロセッサ上で制御プログラム、鍵生成プログラムおよび乱数検定プログラムを実行することによりそれぞれ実装可能である。これらのプログラムはメモリ２１０８に格納され、プロセッサにより読み出され起動する。
【００６６】
なお、量子ユニット１１０１および２１０１による単一光子伝送方式は特定の方式に限定されるものではない。たとえば、通信装置１０の量子ユニット１１０１から変調により乱数情報を乗せた微弱光パルスが通信装置２０の量子ユニット２１０１へ一方向に伝送する一方向型でもよい。あるいは、通信装置２０の量子ユニット２１０１から光パルスが通信装置１０へ送出され、通信装置１０の量子ユニット１１０１で折り返されて乱数情報により変調された微弱光パルスが通信装置２０の量子ユニット２１０１へ送信される往復型であってもよい。
【００６７】
鍵管理装置３０は通信装置１０および２０との通信を行うための通信部（図示せず)の他に、プロセッサ３１０１、プログラムメモリ３１０２およびデータメモリ３１０３を有する。メモリ３１０２は、必要なプログラム、ここでは鍵管理プログラムおよび総合判定プログラムを格納する。データメモリ３１０３は、通信装置１０および２０から受信した乱数検定結果、総合判定の計算結果等のデータを格納する。プロセッサ３１０１は、総合判定プログラムを実行することで、図５あるいは図８に例示した総合判定を実行することができる。
【００６８】
４．２）動作
図１０を参照しながら、上記ＱＫＤシステムにおける乱数品質管理について説明する。既に述べたように、通信装置１０から通信装置２０への単一光子伝送およびフレームパルス送信により、通信装置２０は生鍵データをフレーム単位でメモリ２１０５に格納する。
【００６９】
続いて、通信装置１０の鍵生成部１１０４と通信装置２０の鍵生成部２１０４とは、通信チャネルＣｃｈを通して互いのビット・基底照合をフレーム単位で実行する（ＴＸＳＴ１、ＲＸＳＴ１）。すなわち、ひとつのフレームのビット・基底照合が完了するまでは、次のフレームのビット・基底照合は行われない。鍵生成部１１０４および鍵生成部２１０４はそれぞれのＦＰカウント値を参照しながら、通信チャネルＣｃｈ、通信ユニット１１０２および２２０２を通して、対応するフレームどうしがビット・基底照合処理されるように監視する。
【００７０】
通信装置１０および通信装置２０でそれぞれ生成された選別鍵ＫＳＴおよびＫＳＲは、所定サイズまで蓄積されると、ファイル化してファイル番号と共にメモリ１１０５および２１０５にそれぞれ格納する。ここで、ファイルとは、所定サイズを基準としてまとめられたデータブロックをいう。
【００７１】
選別鍵ファイルＫＳＴおよびＫＳＲが生成されると、次にエラー訂正処理（ＴＸＳＴ２、ＲＸＳＴ２）および秘匿増強処理（ＴＸＳＴ３、ＲＸＳＴ３）を行う。エラー訂正処理および秘匿増強処理はファイル単位で実行され、ひとつのファイルに対する処理が終了するまでは、次のファイルに対する処理は行わない。
【００７２】
上述したように、各ファイルの選別鍵ＫＳＴおよびＫＳＲは、通信誤りを含んでいる可能性があるので、選別鍵ＫＳＴおよびＫＳＲが完全に一致した乱数列であるとは限らない。そこで、鍵生成部１１０４および鍵生成部２１０４は、通信チャネルＣｃｈを通して、当該ファイルの選別鍵ＫＳＴおよびＫＳＲが一致するまでエラー訂正処理を繰り返す（ＴＸＳＴ２、ＲＸＳＴ２）。その際、開示された選択鍵ＫＳＴおよびＫＳＲのビットは削除される。
【００７３】
こうして誤りが全て訂正されて選択鍵ＫＳＴおよびＫＳＲが一致すると、次に、鍵生成部１１０４および鍵生成部２１０４は、盗聴行為を無効にするために、一致した選別鍵ＫＳに対してそれぞれ秘匿増強処理を行う（ＴＸＳＴ３、ＲＸＳＴ３）。秘匿増強処理では、別途用意した乱数を用いて、盗聴されていると推定される情報量を選別鍵ＫＳからランダムに捨てることで、盗聴者が持っている状態が無情報の状態と区別できないようにし、最終鍵Ｋを得る。最終鍵Ｋは、通信装置１０および２０の間で一致したファイル単位（ブロック単位)の共有乱数である。
【００７４】
こうして最終鍵Ｋがメモリ１１０５および２１０５にそれぞれ格納されると、鍵生成部１１０４および鍵生成部２１０４は、通信チャネルＣｃｈを通して、最終鍵Ｋのブロック番号を他方の通信装置および鍵管理装置３０へ通知する（ＴＸＳＴ４、ＲＸＳＴ４）。
【００７５】
続いて、乱数検定部１１０６および２１０６は、上述した第１実施形態および第２実施形態で述べたように、最終鍵Ｋに対して乱数検定を実行し、その結果を鍵管理装置３０へ通知する（ＴＸＳＴ５，ＲＸＳＴ５）。
【００７６】
鍵管理装置３０は、上述したように、通信装置１０および２０からの検定結果を用いて最終鍵Ｋの合否をブロック単位で判定し、その判定結果を通信装置１０および２０へ通知する。すなわち、鍵管理装置３０は、図５あるいは図８に示す総合判定を実行し、ブロック単位の合否を通信装置１０および２０へ返す。
【００７７】
通信装置１０および２０は、鍵管理装置３０から判定結果を受信すると、最終鍵Ｋのうち合格したブロックの乱数のみを安全鍵としてメモリ１１０７および２１０７にそれぞれ格納する（ＴＸＳＴ６，ＲＸＳＴ６）。
【００７８】
５．付記
上述した実施形態および実施例の一部あるいは全部は、以下の付記のようにも記載されうるが、これらに限定されるものではない。
（付記１）
第１通信装置と第２通信装置の間で安全に生成された共有乱数の品質を管理する装置であって、
前記第１通信装置が前記共有乱数に対して実行した第１乱数検定の結果と、前記第２通信装置が前記共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて前記共有乱数に対する乱数検定の総合判定を行う判定手段と、
前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ安全に通知する通信手段と、
を有し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とする乱数品質管理装置。
（付記２）
前記第１乱数検定が前記共有乱数の各乱数ブロックに対して第１の検定法を実行し、前記第２乱数検定が前記第１の検定法と同じ乱数ブロックに対して第２の検定法を実行し、
前記判定手段は、前記第１の検定法の検定結果と前記第２の検定法の検定結果とが共に適合である乱数ブロックのみを合格と判定する、ことを特徴とする付記１に記載の乱数品質管理装置。
（付記３）
前記第１の検定法および前記第２の検定法は、予め決められた乱数検定ツールに含まれる異なる検定法であることを特徴とする付記２に記載の乱数品質管理装置。
（付記４）
前記第１の検定法および前記第２の検定法が前記乱数検定ツールに含まれる複数の検定法から順次選択されることを特徴とする付記３に記載の乱数品質管理装置。
（付記５）
前記第１乱数検定が前記共有乱数のうち所定の乱数ブロックに対して所定の検定法を実行し、前記第２乱数検定が前記共有乱数のうち前記所定の乱数ブロック以外の乱数ブロックに対して前記所定の検定法を実行し、
前記判定手段は、前記第１の検定法の検定結果が適合である乱数ブロックと前記第２の検定法の検定結果が適合である乱数ブロックとを合格と判定する、ことを特徴とする付記１に記載の乱数品質管理装置。
（付記６）
前記所定の検定法は、予め決められた乱数検定ツールに含まれる検定法であることを特徴とする付記５に記載の乱数品質管理装置。
（付記７）
前記所定の検定法が前記乱数検定ツールに含まれる複数の検定法から順次選択されることを特徴とする付記６に記載の乱数品質管理装置。
（付記８）
前記共有乱数は、前記第１通信装置と前記第２通信装置との間で単一光子レベルの光パルス伝送を利用した量子鍵配送により生成されることを特徴とする付記１−７のいずれか１項に記載の乱数品質管理装置。
（付記９）
第１通信装置と第２通信装置の間で安全に生成された共有乱数の品質を管理する方法であって、
通信手段が、前記第１通信装置から前記共有乱数に対して実行した第１乱数検定の結果を安全に受信し、前記第２通信装置から前記共有乱数に対して実行した第２乱数検定の結果を安全に受信し、
判定手段が、前記第１乱数検定の結果と前記第２乱数検定の結果とを組み合わせて前記共有乱数に対する乱数検定の総合判定を行い、
前記通信手段が、前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ安全に通知し、
前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とする乱数品質管理方法。
（付記１０）
第１通信装置と第２通信装置の間で安全に生成された共有乱数の品質を管理する装置としてコンピュータを機能させるプログラムであって、
前記第１通信装置が前記共有乱数に対して実行した第１乱数検定の結果と、前記第２通信装置が前記共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて前記共有乱数に対する乱数検定の総合判定を行う機能と、
前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ安全に通知する機能と、
を前記コンピュータに実現し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とするプログラム。
（付記１１）
第１通信装置と、
前記通信装置との間で共有乱数を安全に生成する第２通信装置と、
前記共有乱数の品質を管理する管理装置と、
を有し、
前記管理装置が、前記第１通信装置が前記共有乱数に対して実行した第１乱数検定の結果と、前記第２通信装置が前記共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて前記共有乱数に対する乱数検定の総合判定を行う判定手段と、
前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ安全に通知する通信手段と、
を有し、
前記第１乱数検定と前記第２乱数検定とが、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なる、ことを特徴とする通信システム。
【産業上の利用可能性】
【００７９】
本発明は共有乱数の乱数性および安全性を管理するシステム、装置一般に適用可能であり、特に秘匿性が重要な暗号鍵の品質管理に適する。
【符号の説明】
【００８０】
１０  通信装置
２０  通信装置
３０  鍵管理装置
１０１  ＱＫＤ送信器
１０２  乱数検定部
１０３  鍵蓄積部
２０１  ＱＫＤ受信器
２０２  乱数検定部
２０３  鍵蓄積部
【図１】
2020079841.tif 000003
【図２】
2020079841.tif 000004
【図３】
2020079841.tif 000005
【図４】
2020079841.tif 000006
【図５】
2020079841.tif 000007
【図６】
2020079841.tif 000008
【図７】
2020079841.tif 000009
【図８】
2020079841.tif 000010
【図９】
2020079841.tif 000011
【図１０】
2020079841.tif 000012
【手続補正書】
【提出日】令和3年4月1日(2021.4.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１通信装置と第２通信装置の間で生成された共有乱数の品質を管理する装置であって、
前記第１通信装置が前記共有乱数に対して実行した第１乱数検定の結果と、前記第２通信装置が前記共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて前記共有乱数に対する乱数検定の総合判定を行う判定手段と、
前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ通知する通信手段と、
を有し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とする乱数品質管理装置。
【請求項２】
前記第１乱数検定が前記共有乱数の各乱数ブロックに対して第１の検定法を実行し、前記第２乱数検定が前記第１の検定法と同じ乱数ブロックに対して第２の検定法を実行し、
前記判定手段は、前記第１の検定法の検定結果と前記第２の検定法の検定結果とが共に適合である乱数ブロックのみを合格と判定する、ことを特徴とする請求項１に記載の乱数品質管理装置。
【請求項３】
前記第１の検定法および前記第２の検定法は、予め決められた乱数検定ツールに含まれる異なる検定法であることを特徴とする請求項２に記載の乱数品質管理装置。
【請求項４】
前記第１の検定法および前記第２の検定法が前記乱数検定ツールに含まれる複数の検定法から順次選択されることを特徴とする請求項３に記載の乱数品質管理装置。
【請求項５】
前記第１乱数検定が前記共有乱数のうち所定の乱数ブロックに対して所定の検定法を実行し、前記第２乱数検定が前記共有乱数のうち前記所定の乱数ブロック以外の乱数ブロックに対して前記所定の検定法を実行し、
前記判定手段は、前記第１の乱数検定の検定結果が適合である乱数ブロックと前記第２の乱数検定の検定結果が適合である乱数ブロックとを合格と判定する、ことを特徴とする請求項１に記載の乱数品質管理装置。
【請求項６】
前記所定の検定法は、予め決められた乱数検定ツールに含まれる検定法であることを特徴とする請求項５に記載の乱数品質管理装置。
【請求項７】
前記所定の検定法が前記乱数検定ツールに含まれる複数の検定法から順次選択されることを特徴とする請求項６に記載の乱数品質管理装置。
【請求項８】
前記共有乱数は、前記第１通信装置と前記第２通信装置との間で単一光子レベルの光パルス伝送を利用した量子鍵配送により生成されることを特徴とする請求項１−７のいずれか１項に記載の乱数品質管理装置。
【請求項９】
第１通信装置と第２通信装置の間で生成された共有乱数の品質を管理する方法であって、
通信手段が、前記第１通信装置から前記共有乱数に対して実行した第１乱数検定の結果を受信し、前記第２通信装置から前記共有乱数に対して実行した第２乱数検定の結果を受信し、
判定手段が、前記第１乱数検定の結果と前記第２乱数検定の結果とを組み合わせて前記共有乱数に対する乱数検定の総合判定を行い、
前記通信手段が、前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ通知し、
前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とする乱数品質管理方法。
【請求項１０】
第１通信装置と第２通信装置の間で生成された共有乱数の品質を管理する装置としてコンピュータを機能させるプログラムであって、
前記第１通信装置が前記共有乱数に対して実行した第１乱数検定の結果と、前記第２通信装置が前記共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて前記共有乱数に対する乱数検定の総合判定を行う機能と、
前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ通知する機能と、
を前記コンピュータに実現し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とするプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
本発明による乱数品質管理装置は、第１通信装置と第２通信装置の間で生成された共有乱数の品質を管理する装置であって、前記第１通信装置が前記共有乱数に対して実行した第１乱数検定の結果と、前記第２通信装置が前記共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて前記共有乱数に対する乱数検定の総合判定を行う判定手段と、前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ通知する通信手段と、を有し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とすることを特徴とする。
本発明による乱数品質管理方法は、第１通信装置と第２通信装置の間で生成された共有乱数の品質を管理する方法であって、通信手段が、前記第１通信装置から前記共有乱数に対して実行した第１乱数検定の結果を受信し、前記第２通信装置から前記共有乱数に対して実行した第２乱数検定の結果を受信し、判定手段が、前記第１乱数検定の結果と前記第２乱数検定の結果とを組み合わせて前記共有乱数に対する乱数検定の総合判定を行い、前記通信手段が、前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ通知し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とする。
本発明によるプログラムは、第１通信装置と第２通信装置の間で生成された共有乱数の品質を管理する装置としてコンピュータを機能させるプログラムであって、前記第１通信装置が前記共有乱数に対して実行した第１乱数検定の結果と、前記第２通信装置が前記共有乱数に対して実行した第２乱数検定の結果と、を組み合わせて前記共有乱数に対する乱数検定の総合判定を行う機能と、前記総合判定の結果を前記第１通信装置および前記第２通信装置の少なくとも一方へ通知する機能と、を前記コンピュータに実現し、前記第１乱数検定と前記第２乱数検定とは、使用する乱数検定法および検定すべき乱数部分の少なくとも一方が異なることを特徴とする。
【国際調査報告】
2020079841.tif 000013
2020079841.tif 000014
2020079841.tif 000015
2020079841.tif 000016
2020079841.tif 000017