JP2007019789A - 乱数共有システムおよび方法 - Google Patents

乱数共有システムおよび方法 Download PDF

Info

Publication number
JP2007019789A
JP2007019789A JP2005198456A JP2005198456A JP2007019789A JP 2007019789 A JP2007019789 A JP 2007019789A JP 2005198456 A JP2005198456 A JP 2005198456A JP 2005198456 A JP2005198456 A JP 2005198456A JP 2007019789 A JP2007019789 A JP 2007019789A
Authority
JP
Japan
Prior art keywords
random number
communication device
bit
sharing
generating
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.)
Withdrawn
Application number
JP2005198456A
Other languages
English (en)
Inventor
Akitomo Tanaka
聡寛 田中
Akio Tajima
章雄 田島
Seigo Takahashi
成五 高橋
Takeshi Takeuchi
剛 竹内
Akihiro Motoki
顕弘 元木
Wakako Maeda
和佳子 前田
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2005198456A priority Critical patent/JP2007019789A/ja
Publication of JP2007019789A publication Critical patent/JP2007019789A/ja
Withdrawn legal-status Critical Current

Links

Images

Abstract

【課題】
秘匿すべき乱数あるいは暗号鍵を第三者に知られることなく高速に送信器と受信器との間で共有することができる方法を提供する。
【解決手段】
伝送路12を介して接続された送信器11および受信器13との間で暗号鍵を共有するシステムであって、送信器および受信器に秘密鍵を共有するための量子暗号鍵配布回路が設けられ、いずれか一方に真性乱数を生成する乱数発生回路114が設けられる。乱数共有回路113および133は真性乱数に基づいて秘密鍵のビット位置を指定するビット指定情報を生成し、暗号鍵抽出回路112、132はビット指定情報に基づいて秘密鍵から暗号鍵を抽出する。
【選択図】 図1

Description

本発明は秘匿通信システムに係り、特に送信側および受信側で使用される乱数の共有方法およびシステムに関する。
急激な成長を続けるインターネットは、便利である反面、その安全性に大きな不安を抱えており、通信の秘密保持の為に暗号技術の必要性が高まっている。現在一般的に用いられている暗号方式は、DES(Data Encryption Standard)やTriple DESといった秘密鍵暗号と、RSA(Rivest Shamir Adleman)や楕円曲線暗号の様な公開鍵暗号に分類される。しかしこれらは「計算の複雑性」を元にその安全性を保証する暗号通信方法であり、膨大な計算量や暗号解読アルゴリズムの出現によって解読されてしまう危険性を常に孕んでいる。こういった背景の下、量子暗号鍵配布システム(QKD)は、「絶対に盗聴されない」暗号鍵配布技術として注目されている。
QKDでは一般に通信媒体として光子を使用し、その偏光、位相等の量子状態に情報を載せて伝送を行う。伝送路の盗聴者は伝送中の光子をタッピングする等して情報を盗み見るが、Heisenbergの不確定性原理により、1度観測されてしまった光子を完全に観測前の量子状態に戻すことは不可能となり、このことによって正規の受信器が検出する受信データの統計値に変化が生じる。この変化を検出することにより受信器は伝送路における盗聴者を検出することができる。
図8は、一般的な量子暗号鍵生成の流れを示すフローチャートである。光子の位相を利用した量子暗号鍵配布方法の場合、送信器と受信器(以下、AliceとBobと称する)で干渉計を組織し、各々の光子にAlice及びBobでそれぞれランダムに位相変調を施す(量子鍵配布)。この変調位相深さの差によって0または1の出力(生鍵)を得て、その後、出力データを測定したときの条件(基底)の一部分をAliceとBobで照合することによりAlice−Bob間で同一ビット列を共有することができる(基底処理)。以下、この共有ビット列を秘密ビット列(秘密鍵)と称し、Alice側のそれを“KA”、Bob側のそれを“KB”と記す。先行文献としては、特開2000−174747号公報(特許文献1)に量子チャネルと古典チャネルとを用いて送信側および受信側で秘密鍵を共有する量子暗号装置が開示されている。
こうして共有された秘密ビット列KA、KBには伝送路及び受信器の性能に起因する誤りが含まれている。したがって、最終的な暗号鍵(最終鍵)を生成するためには暗号鍵抽出作業が必要となる。暗号鍵抽出作業は、誤り訂正処理と、秘匿増強を行う前に共有ビット列に誤りが無いことを確認する残留エラー検知処理と、秘匿増強処理とからなる。秘匿増強処理は、誤りが伝送路における盗聴行為によって発生していると仮定して鍵情報の振るい落としを行う過程である。
(誤り訂正)
誤り訂正処理としては、たとえば非特許文献1に示されたような方法がある。この方法では、送信器および受信器において秘密ビット列を複数のブロックに分割し、各ブロックのパリティを照合することによって誤りを含むブロックを特定し、当該ブロックに関してハミング符号を適用する等して誤り訂正を行う。加えて、1つのブロック内に偶数個の誤りを含む場合を想定し、秘密ビット列をランダムに並び替えて再度パリティ照合並びに誤り訂正を行う。この誤り訂正過程で秘密ビット列KA、KBは圧縮されてKA’、KB’になる。
ここで、ランダム置換を行うためには、上記の秘密ビット列KA、KBとは別の乱数を共有する必要がある。量子暗号鍵配布で共有した乱数(秘密ビット列)との混同を避けるために、以下、暗号鍵抽出作業で使用する乱数を「共有乱数」あるいは「鍵抽出用乱数」と称する。
(残留エラー検知)
図9は残留エラー検知処理のシーケンス図である。Aliceは内部で乱数(パリティ検査ビット情報)を生成し、自身の保有する誤り訂正後の秘密ビット列KA’に対して上記乱数で指定されたビット位置のパリティを計算し、乱数(パリティ検査ビット情報)と共にBobに送信する。
Bobは受け取った乱数に基づいて自身の保有する秘密ビット列KB’のパリティを計算し、Aliceの計算したパリティと一致するかどうかを判断し、OKあるいはNGをAliceへ返す。エラーが検出されれば、上記誤り訂正処理を再実行する。
以上の様な確認作業を複数回(V回)繰り返すことによって秘密ビット列の残留エラー検知を行う。ただし、以上の様にパリティを公開することによってVビットの情報量が第三者に漏れているので、Vビットの鍵を破棄する。この過程で秘密ビット列KA’、KB’はKA”、KB”となる。
(秘匿増強)
秘匿増強過程としては非特許文献2に示されたような方法がある。
図10は公知の秘匿増強過程のシーケンス図である。Aliceは内部で乱数(パリティ計算ビット)を生成し、自身の保有する秘密ビット列KA”に対して上記乱数で指定されたビット位置のパリティを計算し、そのパリティを鍵の1ビット目とする。
続いて上記の乱数(パリティ計算ビット)をBobに送信する。Bobは受け取った乱数に基づいて自身の保有する秘密ビット列KB”のパリティを計算し、そのパリティを鍵の1ビット目とする。上記作業を繰り返し、伝送路において盗聴されたと考えうる分の情報量を破棄して、新たな秘密鍵を作成する。
上述したように、誤り訂正、残留エラー検知および秘匿増強の各処理において、ビット位置を指定するための乱数(共有乱数あるいは鍵抽出用乱数)が送信器および受信器で共有されることが必要となる。送信器および受信器間で乱数を共有する技術がいくつか提案されている。
たとえば、特開2005−039643号公報(特許文献2)には、送信器と受信器とで既定鍵を共有しておき、それを用いて乱数を暗号化して相手局へ送信するという一般的な共通鍵暗号の構成が開示されている。また、特許第2563518号公報(特許文献3)に開示された共通鍵配送システムでは、2つの端末局と特定局とを有し、端末局で発生した乱数を公開鍵暗号アルゴリズムで暗号化して特定局へ送信し、特定局はそれを復号化し、新たに発生した乱数を復号化された乱数を元に符号化して2つの端末局へ送信する。
"Secret-key Reconciliation by Public Discussion" G. Brassard and L. Salvail, in Advances in Cryptology - EUROCRYPT'93 Proceedings, Lecture Notes in Computer Science, Vol.765, p410-423 "Generalized Privacy Amplification" C. H. Bennett, G. Brassard, C. Crepeau, and U. M. Maurer, IEEE Trans. Inf. Theory, Vol.41, No.6, p1915 "IEEE Int. Conf. on Computers, Systems, and Signal Processing, Bangalore, India, p.175" Bennett, Brassard 特開2000−174747号公報 特開2005−039643号公報 特許第2563518号公報
しかしながら、上述した暗号鍵抽出作業には、共有乱数の生成手法に関していくつかの解決すべき課題があった。
第一は、共有乱数は事前に決定されていてはならない、という点である。固定の乱数列に基づいてランダム置換、パリティ計算を繰り返した場合、盗聴者はこれらの置換法則及びパリティ計算ビット位置を知ることが可能になり、ビットを選択して盗聴を行うことによってより多くの秘密鍵情報を得ることができる。また共有乱数の精度も問題となる。特定の擬似乱数生成回路を使い続けた場合、盗聴者は前もって共有乱数を予測することが可能になり、同様の問題が生じる。これを防ぐ為に、秘密鍵の共有後に毎回異なった乱数列を共有する必要がある。
第二は、ランダム置換/パリティ計算を行うビット位置を指定する為に膨大な通信量が発生することになる、という点である。暗号鍵抽出作業と同時に、乱数共有のための大容量通信を行った場合、計算機の処理能力の限界によって暗号鍵の生成速度が劣化する。また、誤り訂正/残留エラー検知/秘匿増強の各過程で行う通信は“なりすまし”を防止する為に認証を必要とし、一般には、過去に生成した暗号鍵(秘密鍵)を使用して相互認証を行う。つまり、通信のメッセージ長が長い場合、認証用途で消費する鍵量が増え、本来の暗号通信用途の鍵量が減少してしまう。
第三は、上記した共有乱数が事前に決定されていてはならないという点に関連して乱数の生成速度に関する問題がある。乱数精度の問題を解決するためには真性乱数(物理乱数)発生回路を使用することが最良であるが、現時点で真性乱数発生器(物理乱数発生器)の乱数生成速度は最速でも数Mb/sであり、暗号鍵生成速度が大きく制限される。
さらに、特許文献2に開示された情報伝送方式は乱数を既定鍵を用いて暗号化する方式であり、特許文献3に開示されたシステムは特定局で公開鍵暗号の復号化を行い、端末局での演算量を軽減することを企図している。従って、いずれも上記課題を解決するものではない。
本発明は、上記従来の課題を解決するものであり、秘匿すべき乱数あるいは暗号鍵を第三者に知られることなく高速に送信器と受信器との間で共有することができる方法およびシステムを提供する。
本発明による乱数共有方法は、第1通信器と第2通信器との間で第1乱数を共有し、第1通信器および第2通信器の少なくとも一方で予測不可能な第2乱数を生成し、第1通信器および第2通信器の各々において第2乱数に基づいて第1乱数のビット位置を指定するビット指定情報を生成し、第1通信器および第2通信器の各々においてビット指定情報に基づいて第1乱数から同一の乱数列を抽出することを特徴とする。第2乱数は物理乱数であることが望ましい。本発明を量子暗号鍵配布システムに適用した場合、第1乱数は秘密鍵に対応し、第2乱数は乱数生成パラメータに対応する。同一乱数列は、ビット指定情報に基づいて残留エラー検知処理および秘匿増強処理を実行することにより得られる最終鍵である。
本発明の一実施例によれば、前記ビット指定情報は、前記第1通信器と前記第2通信器との間で複数の疑似乱数生成多項式を共有し、前記第2乱数から前記複数の疑似乱数生成多項式の1つの指定する値と疑似乱数を生成するための初期シード値とを乱数生成パラメータとして生成し、前記乱数生成パラメータによって指定された疑似乱数生成多項式および初期シード値により生成される。
本発明の他の実施例によれば、前記ビット指定情報は、前記第1通信器と前記第2通信器との間で所定乱数列を共有し、前記第2乱数に従って前記所定乱数列の複数ビットを指定し、前記所定乱数列の指定された複数ビットに基づいて生成される。望ましくは、前記所定乱数列は特定の期間毎に更新される。
本発明の他の側面によれば、伝送路を介して接続された第1通信器と第2通信器との間で暗号鍵を共有する方法において、前記第1通信器および前記第2通信器の少なくとも一方で乱数列を生成し、前記乱数列を前記第1通信器から前記第2通信器へ前記伝送路を介して送信し、前記第2通信器で検出された前記乱数列のビットを用いて前記第1通信器および前記第2通信器の間で共有された第1乱数を生成し、前記乱数列のうち前記第1通信器および前記第2通信器の間で共有されなかったビット情報を用いて前記第1乱数のビット位置を指定するビット指定情報を生成し、前記第1通信器および前記第2通信器の各々において、前記ビット指定情報に基づいて前記第1乱数から暗号鍵を抽出する、ことを特徴とする。望ましくは、前記ビット指定情報は、前記乱数列の共有されなかったビット情報の最後尾から選択される。
本発明の第一の効果は、事前に盗聴者にその内容を予測されること無く送受信器間で乱数を共有できることである。たとえ乱数発生回路の詳細内容を盗聴者に知られていたとしても、予測不可能な真性乱数を乱数生成のパラメータとすることによって、暗号鍵抽出作業に用いる共有乱数は予測不可能になる。
本発明の第二の効果は、暗号鍵抽出作業に使用する乱数を共有するために生じる通信量を大幅に削減でき、暗号鍵の生成速度が向上することである。乱数生成パラメータのみを送受信器で通信しているためであり、実際に乱数そのものを送受信することに比べて格段に情報量が少なくなるからである。通信量が少なくなることによって、計算機の負荷も軽減し、また、認証用途に消費される鍵量も減るので暗号化通信用途の鍵量が増える。
本発明の第三の効果は、送受信器間での乱数共有が高速に行えることである。乱数生成を計算機で行うことで現状の物理乱数生成速度(数百kbps〜数Mbps)と比べて格段に早い速度で乱数を生成できる。
1.第1実施形態
図1は本発明の第1実施形態による量子暗号鍵配布システムの概略的構成を示すブロック図である。本実施形態による量子暗号鍵配布システムは送信器11および受信器13から構成され、それらは光伝送路12を介して接続されている。
送信器11には、上述した量子鍵配布および基底処理により秘密鍵を生成するための量子暗号鍵配布回路111と、秘密鍵から最終鍵(暗号鍵)を生成する暗号鍵抽出回路112と、共有乱数を生成する乱数共有回路113と、真性乱数を生成する真性乱数発生回路114とが設けられている。受信器13には、同様の量子暗号鍵配布回路131と、暗号鍵抽出回路132と、乱数共有回路133とが設けられている。
なお、本実施形態では、光伝送路12に量子チャネルと古典チャネルを波長多重しており、量子チャネルは光パワーを1フォトン/ビット以下の微弱な状態にして伝送するための通信チャネルであり、送信器11において鍵の素である乱数および基底乱数に従って位相変調された微弱な光パルスを受信器13へ伝送するために使用される。古典チャネルは通常の光通信で使用される光パワー領域での通信チャネルであり、基底処理時の基底乱数やビット番号を通知し、後述する暗号鍵抽出プロセスで必要とされるデータを送受信するために使用される。
既に述べたように、送信器11の量子暗号鍵配布回路111と受信器13の量子暗号鍵配布回路131とは量子鍵配布および基底処理により秘密鍵を生成し、それぞれ共有の秘密鍵KAおよびKBとして保持する。しかしながら、こうして得られた秘密鍵KAおよびKBは誤りを含み、また、その一部は伝送路12中の盗聴者に漏れていると想定されうるので、暗号鍵抽出回路112および132において上述した誤り訂正、残留エラー検知および秘匿増強の各処理を実行する。暗号鍵抽出回路112および132は、それぞれ乱数共有回路113および133から供給される共有乱数をビット指定情報として用い、秘密鍵KAおよびKBから暗号鍵の抽出を行う。
このように暗号鍵抽出処理で使用されるビット指定情報としての共有乱数は、上述したように事前に決定されていてはならないこと、および、送信器11および受信器13の間で共有化する際に通信量が大きくならず高速であることが必要である。本実施形態では、このような共有乱数を送信器11および受信器13の間で共有するために、送信器11および受信器13にそれぞれ乱数共有回路113および133を設け、さらに送信器11に真性乱数発生回路114を設けている。
送信器11および受信器13のいずれに真性乱数発生回路114を設けてもよいが、本実施形態では送信器11にのみ真性乱数発生回路114を設ける。真性乱数発生回路114は予測不可能な乱数を生成する。このような乱数としては周期性を有さない物理乱数が知られている。物理乱数とは様々な予測不可能な物理現象から得た乱数であり、半導体内部の熱雑音や量子光学を利用した方法が知られている。ただし、上述したように、現時点での真性乱数発生回路114は最速でも数Mb/s程度である。
真性乱数発生回路114は、生成した真性乱数を乱数生成パラメータとして送信器11の乱数共有回路113へ供給し、同時に伝送路12の古典チャネルを通して受信器13の乱数共有回路133にも供給する。
暗号鍵抽出回路112および132は、量子暗号鍵配布回路111および131により生成された秘密鍵KAおよびKBに対して、乱数共有回路113および133により生成された共通乱数で指定されたビットを用いて上記残留エラー検知処理を行い、さらに同様にして生成された共通乱数を用いて秘匿増強処理を実行する。
本発明の第1実施例による乱数共有方法を適用した秘匿通信システムでは、送信器11および受信器13に複数の生成多項式が共有されており、乱数共有回路113および133によって利用可能となっている。共有の仕方は、送信器11および受信器13のそれぞれのメモリに同一の生成多項式の組が格納されていてもよいし、乱数を生成するときに一方から他方へ生成多項式そのものを送信してもよい。ここでは、同一の生成多項式の組が格納されているものとする。
乱数共有回路113および133は、真性乱数発生回路114から入力した乱数生成パラメータから初期シードおよび生成多項式を特定し、それに従って生成された共有乱数をビット指定情報として暗号鍵抽出回路112および132へそれぞれ出力する。同一の処理シードと同一の生成多項式を用いて生成した乱数は、送信器11および受信器13で同一である。このように、生成多項式の指定および初期シードに真性乱数を使用することで、毎回異なる生成多項式が使用されることとなり、パリティ検査ビット情報が盗聴される事態を有効に防止できる。
図2は本実施形態において使用される生成多項式の一例を実現する線形フィードバックシフトレジスタ回路を示すブロック図である。ここでは、擬似ランダム符号(PRBS : Pseudo Random Binary Sequence)7段の生成多項式の動作を表す線形フィードバックシフトレジスタ回路を示す。
7段の線形フィードバックシフトレジスタ回路は2つの加算器511および512と7つの1単位時間遅延素子521〜527からなる。各遅延素子には1ビット毎の情報が入っており、1単位時間毎に矢印方向にシフトする。同じく1単位時間毎に1ビットの情報が初期シードとして本回路に入力され、遅延素子525および526(S6およびS7)のビット情報の排他的論理和(XOR)を計算し、その結果と初期シードのビット情報とのXORを計算することで、PRBS7段の生成多項式出力を得る。この様なフィードバックシフトレジスタは、初期フィードの数列を変化させることによって無限の出力パタンを得ることができる。
図3に本発明の第1実施例による乱数共有方法を適用した残留エラー検知処理のフローを示すシーケンス図である。送信器(Alice)11と受信器(Bob)13は事前に擬似ランダム符号(PRBS : Pseudo Random Binary Sequence)の生成多項式を複数共有している。ここでは、共有する生成多項式の段数をITU(国際電気通信連合)−T勧告に準拠した7,9,11,15,23段とした。
図3において、Aliceは、自身の保有する乱数ビット列(ここでは誤り訂正された秘密鍵KA’)の特定のビットのパリティを計算してBobに送信するが、その際使用する乱数(パリティ検査ビット情報)を乱数共有回路113から入力する。上述したように、乱数共有回路113は、真性乱数発生回路114から入力した乱数生成パラメータ(初期シードおよび1つの生成多項式)に従って疑似乱数を生成し、それをパリティ検査ビット情報として暗号鍵抽出回路112へ出力する。このように生成多項式の段数指定および初期シードに真性乱数を使用することで、毎回同じ生成多項式を使用してパリティ検査ビット情報を盗聴者が知り得る事態を回避できる。
Aliceでのパリティ計算結果と乱数生成パラメータはBobへ送信される。図3のステップ(a1)では、乱数生成パラメータとして生成多項式番号2(PRBS9段の生成多項式)、初期シードとして“00101101”がそれぞれ指定され、パリティ計算結果として“1”が送信される。
Aliceからパリティ計算結果と乱数生成パラメータとを受信することで、Bobにおいても、Aliceより指定された生成多項式と初期シードとに従って乱数共有回路133が共有乱数(パリティ検査ビット情報)を生成し、自身の保有する乱数ビット列(ここでは誤り訂正された秘密鍵KB’)に対して共有乱数で指定されたビットのパリティを計算する。そのパリティ計算の結果がAliceから受信したパリティ結果と同一ならば正常(OK)、異なっていれば異常(NG)を返信する。異なっている場合には、誤り訂正処理を再実行し、上記残留エラー検知処理を繰り返すことができる。
このような残留エラー検知処理を、共有乱数を順次生成しながらパリティ検査ビットを変更して複数回繰り返すことにより(図3のステップa2、a3・・・)、秘密ビット列内部に残留する誤りを限りなくゼロにすることが出来る。具体的には、パリティ検査ビット数を秘密ビット数の半数とし、パリティ照合をV回繰り返した場合、残留エラーが検知できない確率は1/2V以下となる。
なお、本実施例は乱数生成手段として擬似ランダム符号の生成多項式を使用したが、本発明の適用範囲は上記に制限されるものではない。線形合同法やM系列(線形最大周期列)の様に、高速性と再現性を有する擬似乱数生成手段であれば良い。また本実施例では擬似乱数の生成多項式を予め共有する構成としたが、本発明の適用範囲は上記に制限されるものではなく、生成多項式そのものを送信して擬似乱数生成回路を変更することによって、常に異なる乱数を共有することもできる。また、本実施例では擬似乱数を指定する乱数生成パラメータ(真性乱数)をAliceからBobへと送信する構成としたが、逆にBobにおいて乱数生成パラメータを発生し、Aliceへ通知する構成でも構わない。
図4は本発明の第2実施例による乱数共有方法を適用した秘匿増強処理のフローを示すシーケンス図である。本実施例における送信器(Alice)および受信器(Bob)には、周期性の無い同じ乱数列が予めそれぞれのメモリに格納されている。この乱数列の長さは、一連の暗号鍵抽出作業における単位鍵長と比べて十分に長くする。このような乱数列はたとえば装置の製造時に書き込むことができ、ある程度期間が経過すれば書き換えることが望ましい。図1を参照すれば、周期性の無い共有乱数列は乱数共有回路113および133に格納することができる。
図4において、本実施例における秘匿増強処理では、Aliceが真性乱数発生回路114で生成された真性乱数を乱数生成パラメータとして用い、周期性の無い共有乱数列のパリティ計算ビット位置を指定する。AliceおよびBobの乱数共有回路113および133は、各々の保有する周期性の無い共有乱数列に対して指定されたビット位置の乱数値から求められた値をビット指定情報として暗号鍵抽出回路112および132へそれぞれ出力する。暗号鍵抽出回路112および132はそれらのビット指定情報に基づいて秘密鍵KA”およびKB”から指定ビットのパリティを計算し、そのパリティを1ビットの鍵とする。上記処理を、パリティ計算ビット位置を変更しながらN回繰り返すことによって、Nビットの新たな秘密鍵を共有することができる。
次に、上述した周期性の無い共有乱数列を使用してパリティ計算ビット位置をAliceおよびBob間で共有する方法を詳細に説明する。
図5は第2実施例における乱数共有方法の一例を示す説明図である。まず、Aliceの真性乱数発生回路114の真性乱数を用いて共有乱数列のあるビット位置を指定する。図5に示すように、たとえば真性乱数に基づいて8343ビット目を指定したとする。
乱数共有回路113および133は、自身の保有する共有乱数列71の8343ビット目から複数ビットの乱数列を複数グループ(たとえば、4ビットずつ4つの乱数列 0000、1011、0110、0111)を取得する。これら乱数列をそれぞれ10進数に変換すると 0、11、6、7 となり、これをビット指定情報として暗号鍵抽出回路112および132へ出力する。
暗号鍵抽出回路112および132は、量子暗号鍵配布回路111および131により生成され別途共有されている秘密鍵72(ここではKA”およびKB”)から、0、6、7、11ビット目のビット値を読み出し、そのパリティを計算する。図5の例では16ビットの秘密鍵72の0、6、7、11ビット目の情報はそれぞれ1、1、0、1であるからパリティは1となり、これが最終鍵の1ビット目となる。
続いて、最終鍵の2ビット目を計算するために、真性乱数(乱数生成パラメータ)を用いて共有乱数列71のビット位置を新たに指定し、同様の結果を経て2ビット目を得る。図5の例では、指定された192ビット目以降の4つの乱数列は10進表記でそれぞれ8,13,4、14ビット目を指すので、秘密鍵72に関して対応するビットのパリティを計算すると0となる。この「0」が最終鍵の2ビット目となる。こうして、AliceおよびBobの両方で同じビット位置指定情報に基づいて最終鍵を抽出することができる。
盗聴者は、秘密鍵72の0、6、7、11ビット目の情報を全て知っていない限り最終鍵の1ビット目を、また、4、8、13、14ビット目の情報を全て知らない限り最終鍵の2ビット目を知ることは出来ない。従って、上記秘匿増強処理を行うことにより、盗聴者が部分的に得ている情報量を限りなくゼロにすることが出来る。
しかし、Aliceの指定するビット位置が予測可能である場合、共有乱数列が盗聴者に知られているという事態を想定すると、盗聴者は予め上記のパリティ計算を行うビット位置を知ることができ、効率良く盗聴を行うことによって、最終鍵の情報を保有することが出来る。従って、ビット位置指定には、予測不可能な真性乱数(物理乱数)を使用する。
本実施例では、事前に共有した周期性の無い乱数を使用し続けているが、この乱数を頻繁に更新しても構わない。また、共有乱数列のビット位置を指定する情報(乱数生成パラメータ)をAliceからBobへと送信する構成としたが、逆にBobにおいて乱数生成パラメータを発生してAliceへ通知する構成としても構わない。
2.第2実施形態
既に述べたように、現時点での真性乱数(物理乱数)発生回路は最速でも数Mb/s程度と低速であり、限られた個数の真性乱数発生回路を暗号鍵配布用と共有乱数生成用の両用途に使用することは、暗号鍵生成速度の劣化に繋がる。
そこで本発明の第2実施形態による量子暗号鍵配布システムは、伝送路で消失したビットに載せられた乱数を、乱数共有回路の乱数生成パラメータとして再利用し、真性乱数発生回路の出力を有効に利用する。
図6は本発明の第2実施形態による量子暗号鍵配布システムの概略的構成を示すブロック図である。本実施形態による量子暗号鍵配布システムは送信器81および受信器83から構成され、それらは光伝送路82を介して接続されている。
送信器81には、上述した量子鍵配布および基底処理により秘密鍵を生成するための量子暗号鍵配布回路811と、秘密鍵を生成するために使用される真性乱数を生成する真性乱数発生回路812と、共有乱数(ビット指定情報)を生成する乱数共有回路813と、このビット指定情報に従って秘密鍵から最終鍵(暗号鍵)を生成する暗号鍵抽出回路814とが設けられている。受信器33には、同様の量子暗号鍵配布回路831と、真性乱数発生回路832と、乱数共有回路833と、暗号鍵抽出回路834と、が設けられている。乱数共有回路の乱数生成などの基本的な機能は第1実施形態で説明したとおりであるから、詳細については省略する。
本発明の第3実施例による乱数共有方法を適用した量子暗号鍵配布システムでは、送信器(Alice)81及び受信器(Bob)83がそれぞれ独立に乱数を発生させ、一つの光子に対して送受信器双方が上記の乱数に基づいた変調を施すことによって、盗聴者が予測不可能かつ複製不可能な状況下で暗号鍵の共有を行う。ここで各々が生成する乱数は、盗聴者が予め予測出来ないように、真性乱数(物理乱数)を使用する。非特許文献3に記載の技術では、光子の4状態をランダムに生成/検出することで盗聴を防止しながら暗号鍵を生成する。しかし、1光子に1ビットの鍵情報を載せて伝送する為、伝送路82における伝送損失によってその大半は消失してしまい共有されない。そこでAliceとBobは暗号鍵抽出過程において、共有できているビット番号を認識する。
図7は、一連の真性乱数列から秘密鍵と共有乱数生成パラメータとを得る過程を例示した模式図である。この例では、真性乱数発生回路812により生成された24ビットの真性乱数91(R1〜R24)を量子暗号鍵配布回路811により送信し、そのうちS1〜S8の8ビットのみ秘密鍵92として共有し、残りのビットは伝送路で消失したとする。なお、説明の都合上、図6の乱数共有回路813、833は図7では乱数共有回路83、図6の暗号鍵抽出回路814、834は図7では暗号鍵抽出回路94と記す。
図7(a)は、Aliceは24ビットの真性乱数91を左側から順次1ビットずつBobへと送信するものとすると、伝送路82で消失した16ビットの中から乱数共有回路93で使用する共有乱数生成パラメータ6ビットを得る際に、先頭から6ビット(R2,R3,R5,R7,R8,R9)を選択する場合を、図7(b)は最後尾から6ビット(R16,R18,R19,R20,R22,R24)を選択する場合をそれぞれ示す。
盗聴者はAliceが情報を送信した直後に盗聴を行うことによって、伝送路82で消失するビットの情報も手に入れることが出来るので、図7(a)の場合、秘密鍵92のビットR10が送信される直前に盗聴者は6ビットの共有乱数生成パラメータを全て知ることができる。盗聴者は乱数共有回路93の動作を事前に知り得るので、共有乱数生成パラメータ(R2,R3,R5,R7,R8,R9)を入手すると、暗号鍵抽出回路94において使用されるビット位置情報を知ることができる。従って、秘密鍵92のビットS4〜S8を共有する際に、盗聴者はビットを選択して効率的な盗聴を行うことができる。
これに対して、図7(b)に示すように真性乱数91の最後尾のビットから6ビット選択した場合には、秘密鍵92を共有し終えるまで共有乱数生成パラメータは完全に公開されず、盗聴者もビット選択盗聴を行うことができない。つまり共有乱数生成パラメータを伝送路における消失ビットから選ぶ際、単位ブロックの最後尾のビットから選択することが必要である。
なお、本実施例では共有乱数列の生成パラメータをAliceからBobへと送信する構成としたが、逆にBobにおいて該パラメータ(真性乱数)を再利用し、Aliceへ通知する構成としても構わない。
また、上述した第1〜第3実施例による乱数共有方法は、送信器および受信器のプログラム制御プロセッサ上でプログラムを実行することにより同一の機能を実現することもできる。
量子暗号鍵配布技術に限らず、秘匿通信路で共有した乱数から暗号鍵抽出を行う秘密鍵共有技術に利用可能である。また、暗号鍵抽出方法も上記実施例に限定されるものではなく、送受信器間で乱数を共有して暗号鍵抽出に使用する方法であれば、本発明を適用することができる。
本発明の第1実施形態による量子暗号鍵配布システムの概略的構成を示すブロック図である。 本実施形態において使用される生成多項式の一例を実現する線形フィードバックシフトレジスタ回路を示すブロック図である。 本発明の第1実施例による乱数共有方法を適用した残留エラー検知処理のフローを示すシーケンス図である。 本発明の第2実施例による乱数共有方法を適用した秘匿増強処理のフローを示すシーケンス図である。 第2実施例における乱数共有方法の一例を示す説明図である。 本発明の第2実施形態による量子暗号鍵配布システムの概略的構成を示すブロック図である。 一連の真性乱数列から秘密鍵と共有乱数生成パラメータとを得る過程を例示した模式図である。 一般的な量子暗号鍵生成の流れを示すフローチャートである。 残留エラー検知処理のシーケンス図である。 公知の秘匿増強過程のシーケンス図である。
符号の説明
11、81 送信器
12、82 伝送路
13、83 受信器
111、811 量子暗号鍵配布回路
112、814 暗号鍵抽出回路
113、813 乱数共有回路
114、812 真性乱数発生回路
131、831 量子暗号鍵配布回路
132、834 暗号鍵抽出回路
133、833 乱数共有回路

Claims (24)

  1. 伝送路を介して接続された第1通信器と第2通信器との間で同一の乱数列を共有する方法において、
    a)前記第1通信器と前記第2通信器との間で第1乱数を共有し、
    b)前記第1通信器および前記第2通信器の少なくとも一方で予測不可能な第2乱数を生成し、
    c)前記第1通信器および前記第2通信器の各々において、前記第2乱数に基づいて前記第1乱数のビット位置を指定するビット指定情報を生成し、
    d)前記第1通信器および前記第2通信器の各々において、前記ビット指定情報に基づいて前記第1乱数から同一の乱数列を抽出する、
    ことを特徴とする乱数共有方法。
  2. 前記第2乱数は物理乱数であることを特徴とする請求項1に記載の乱数共有方法。
  3. 前記c)は、
    前記第1通信器と前記第2通信器との間で複数の疑似乱数生成多項式を共有し、
    前記第2乱数から前記複数の疑似乱数生成多項式の1つの指定する値と疑似乱数を生成するための初期シード値とを乱数生成パラメータとして生成し、
    前記乱数生成パラメータによって指定された疑似乱数生成多項式および初期シード値により乱数を前記ビット指定情報として生成する、
    ことを特徴とする請求項1または2に記載の乱数共有方法。
  4. 前記c)は、
    前記第1通信器と前記第2通信器との間で所定乱数列を共有し、
    前記第2乱数に従って前記所定乱数列の複数ビットを指定し、
    前記所定乱数列の指定された複数ビットに基づいて前記ビット指定情報を生成する、
    ことを特徴とする請求項1または2に記載の乱数共有方法。
  5. 前記所定乱数列は特定の期間毎に更新されることを特徴とする請求項4に記載の乱数共有方法。
  6. 前記ビット指定情報は、前記指定された複数ビットを複数のビットグループに分割し、前記複数ビットグループの各々をビット番号に対応させる、ことにより生成されることを特徴とする請求項4または5に記載の乱数共有方法。
  7. 前記同一の乱数列は暗号鍵であることを特徴とする請求項1ないし6のいずれかに記載の乱数共有方法。
  8. 伝送路を介して接続された第1通信器と第2通信器との間で暗号鍵を共有する方法において、
    a)前記第1通信器および前記第2通信器の少なくとも一方で予測不可能な乱数列を生成し、
    b)前記乱数列を前記第1通信器から前記第2通信器へ前記伝送路を介して送信し、
    c)前記第2通信器で検出された前記乱数列のビットを用いて前記第1通信器および前記第2通信器の間で共有された第1乱数を生成し、
    d)前記乱数列のうち前記第1通信器および前記第2通信器の間で共有されなかったビット情報を用いて前記第1乱数のビット位置を指定するビット指定情報を生成し、
    e)前記第1通信器および前記第2通信器の各々において、前記ビット指定情報に基づいて前記第1乱数から暗号鍵を抽出する、
    ことを特徴とする暗号鍵共有方法。
  9. 前記乱数列は物理乱数であることを特徴とする請求項8に記載の暗号鍵共有方法。
  10. 前記c)において、前記ビット指定情報は、前記乱数列の共有されなかったビット情報の最後尾から選択されることを特徴とする請求項8または9に記載の暗号鍵共有方法。
  11. 前記乱数列は、微弱光を用いて前記第1通信器から前記第2通信器へ前記伝送路を介して送信されることを特徴とする請求項8ないし10のいずれかに記載の暗号鍵共有方法。
  12. 伝送路を介して接続された第1通信器と第2通信器との間で同一の乱数列を共有するシステムにおいて、
    前記第1通信器と前記第2通信器との間で第1乱数を共有するための第1乱数共有手段と、
    前記第1通信器および前記第2通信器の少なくとも一方に設けられた予測不可能な第2乱数を生成するための乱数発生手段と、
    前記第1通信器および前記第2通信器の各々に設けられた、前記第2乱数に基づいて前記第1乱数のビット位置を指定するビット指定情報を生成する第2乱数共有手段と、
    前記第1通信器および前記第2通信器の各々に設けられた、前記ビット指定情報に基づいて前記第1乱数から同一の乱数列を抽出する乱数抽出手段と、
    を有することを特徴とする乱数共有システム。
  13. 前記乱数発生手段は物理乱数発生回路であることを特徴とする請求項12に記載の乱数共有システム。
  14. 伝送路を介して接続された第1通信器と第2通信器との間で暗号鍵を共有するシステムにおいて、
    前記第1通信器および前記第2通信器の少なくとも一方に設けられた予測不可能な乱数列を生成する乱数発生手段と、
    前記第1通信器および前記第2通信器の各々に設けられ、前記乱数列を前記第1通信器から前記第2通信器へ前記伝送路を介して送信し、前記第2通信器で検出された前記乱数列のビットを用いて前記第1通信器および前記第2通信器の間で共有された第1乱数を生成するための第1乱数共有手段と、
    前記第1通信器および前記第2通信器の各々に設けられ、前記乱数列のうち前記第1通信器および前記第2通信器の間で共有されなかったビット情報を用いて前記第1乱数のビット位置を指定するビット指定情報を生成する第2乱数共有手段と、
    前記第1通信器および前記第2通信器の各々に設けられ、前記ビット指定情報に基づいて前記第1乱数から暗号鍵を抽出する暗号鍵抽出手段と、
    を有することを特徴とする暗号鍵共有システム。
  15. 前記乱数発生手段は物理乱数発生回路であることを特徴とする請求項14に記載の暗号鍵共有システム。
  16. 前記第1乱数共有手段は、前記乱数列を微弱光を用いて前記第1通信器から前記第2通信器へ前記伝送路を介して送信することを特徴とする請求項14または15に記載の暗号鍵共有システム。
  17. 伝送路を介して他の通信装置と通信することで同一の乱数列を共有する通信装置において、
    前記他の通信装置との間で第1乱数を共有するための第1乱数共有手段と、
    与えられた予測不可能な第2乱数に基づいて前記第1乱数のビット位置を指定するビット指定情報を生成する第2乱数共有手段と、
    前記ビット指定情報に基づいて前記第1乱数から同一の乱数列を抽出する乱数抽出手段と、
    を有することを特徴とする通信装置。
  18. 前記第2乱数を生成する乱数発生手段を更に有し、前記第2乱数を前記他の通信装置へ送信することを特徴とする請求項17に記載の通信装置。
  19. 前記乱数発生手段は物理乱数発生回路であることを特徴とする請求項18に記載の通信装置。
  20. 伝送路を介して他の通信装置と通信することで暗号鍵を共有する通信装置において、
    予測不可能な乱数列を生成する乱数発生手段と、
    前記乱数列を前記他の通信装置へ前記伝送路を介して送信し、前記他の通信装置で検出された前記乱数列のビットを用いて前記他の通信装置との間で共有された第1乱数を生成する第1乱数共有手段と、
    前記乱数列のうち前記他の通信装置との間で共有されなかったビット情報を用いて前記第1乱数のビット位置を指定するビット指定情報を生成する第2乱数共有手段と、
    前記ビット指定情報に基づいて前記第1乱数から暗号鍵を抽出する暗号鍵抽出手段と、
    を有することを特徴とする通信装置。
  21. 前記乱数発生手段は物理乱数発生回路であることを特徴とする請求項20に記載の通信装置。
  22. 伝送路を介して他の通信装置と通信することで暗号鍵を共有する通信装置において、
    前記他の通信装置から前記伝送路を介して予測不可能な乱数ビットを受信し、前記他の通信装置との間で共有された乱数ビットを第1乱数として生成する第1乱数共有手段と、
    前記他の通信装置との間で共有されなかったビット情報を前記他の通信装置から受信し、それを用いて前記第1乱数のビット位置を指定するビット指定情報を生成する第2乱数共有手段と、
    前記ビット指定情報に基づいて前記第1乱数から暗号鍵を抽出する暗号鍵抽出手段と、
    を有することを特徴とする通信装置。
  23. 通信装置のコンピュータに、伝送路を介して他の通信装置と通信することで同一の乱数列を共有する機能を実現するためのプログラムにおいて、
    前記他の通信装置との間で第1乱数を共有するステップと、
    与えられた予測不可能な第2乱数に基づいて前記第1乱数のビット位置を指定するビット指定情報を生成するステップと、
    前記ビット指定情報に基づいて前記第1乱数から同一の乱数列を抽出するステップと、
    を有することを特徴とするプログラム。
  24. 通信装置のコンピュータに、伝送路を介して他の通信装置と通信することで同一の乱数列を共有する機能を実現するためのプログラムにおいて、
    予測不可能な乱数列を生成するステップと、
    前記乱数列を前記他の通信装置へ前記伝送路を介して送信し、前記他の通信装置で検出された前記乱数列のビットを用いて前記他の通信装置との間で共有された第1乱数を生成するステップと、
    前記乱数列のうち前記他の通信装置との間で共有されなかったビット情報を用いて前記第1乱数のビット位置を指定するビット指定情報を生成するステップと、
    前記ビット指定情報に基づいて前記第1乱数から暗号鍵を抽出するステップと、
    を有することを特徴とするプログラム。

JP2005198456A 2005-07-07 2005-07-07 乱数共有システムおよび方法 Withdrawn JP2007019789A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005198456A JP2007019789A (ja) 2005-07-07 2005-07-07 乱数共有システムおよび方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005198456A JP2007019789A (ja) 2005-07-07 2005-07-07 乱数共有システムおよび方法

Publications (1)

Publication Number Publication Date
JP2007019789A true JP2007019789A (ja) 2007-01-25

Family

ID=37756557

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005198456A Withdrawn JP2007019789A (ja) 2005-07-07 2005-07-07 乱数共有システムおよび方法

Country Status (1)

Country Link
JP (1) JP2007019789A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010041332A (ja) * 2008-08-04 2010-02-18 Canon Inc 放送受信装置およびその制御方法
JP2011510581A (ja) * 2008-01-25 2011-03-31 キネテイツク・リミテツド 量子鍵配送を有するネットワーク
US9692595B2 (en) 2010-12-02 2017-06-27 Qinetiq Limited Quantum key distribution
JP2019535153A (ja) * 2016-10-14 2019-12-05 アリババ グループ ホウルディング リミテッド トラステッドコンピューティングに基づく量子鍵配送のための方法及びシステム
CN113300840A (zh) * 2021-05-21 2021-08-24 福建师范大学 一种联合汉明码的数据随机加密通信方法
CN113949506A (zh) * 2020-07-17 2022-01-18 军事科学院系统工程研究院网络信息研究所 基于量子分发波形共享的安全通信方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011510581A (ja) * 2008-01-25 2011-03-31 キネテイツク・リミテツド 量子鍵配送を有するネットワーク
JP2010041332A (ja) * 2008-08-04 2010-02-18 Canon Inc 放送受信装置およびその制御方法
US9692595B2 (en) 2010-12-02 2017-06-27 Qinetiq Limited Quantum key distribution
JP2019535153A (ja) * 2016-10-14 2019-12-05 アリババ グループ ホウルディング リミテッド トラステッドコンピューティングに基づく量子鍵配送のための方法及びシステム
JP7033120B2 (ja) 2016-10-14 2022-03-09 アリババ グループ ホウルディング リミテッド トラステッドコンピューティングに基づく量子鍵配送のための方法及びシステム
CN113949506A (zh) * 2020-07-17 2022-01-18 军事科学院系统工程研究院网络信息研究所 基于量子分发波形共享的安全通信方法
CN113949506B (zh) * 2020-07-17 2023-09-19 军事科学院系统工程研究院网络信息研究所 基于量子分发波形共享的安全通信方法
CN113300840A (zh) * 2021-05-21 2021-08-24 福建师范大学 一种联合汉明码的数据随机加密通信方法
CN113300840B (zh) * 2021-05-21 2023-05-16 福建师范大学 一种联合汉明码的数据随机加密通信方法

Similar Documents

Publication Publication Date Title
JP4885960B2 (ja) 秘密通信方法及びその秘密通信装置
JP6720424B1 (ja) 鍵共有デバイス及び方法
JP5871142B2 (ja) 暗号鍵共有システムにおける通信装置および暗号鍵生成方法
JP5564434B2 (ja) 確率的対称暗号化のための方法およびエンティティ
CN111492616B (zh) 用于基于晶格的密码学的可配置设备
US7110545B2 (en) Method and apparatus for symmetric-key encryption
JP6519473B2 (ja) 認証暗号装置、認証暗号方法および認証暗号用プログラム
JP2016513825A (ja) 安全通信方法および装置
JP2014017556A (ja) 共有秘密鍵生成装置、暗号化装置、復号化装置、及びプログラム
JP2004274459A (ja) 量子鍵配送方法および通信装置
JP6329534B2 (ja) 疑似ランダム系列の生成方法およびデータストリームのコーディングまたはデコーディング方法
CN113206736A (zh) 一种基于aes加密算法的加密方法
JP4860708B2 (ja) ストリーム暗号方法および暗号システム
WO2016067524A1 (ja) 認証付暗号化装置、認証付復号装置、認証付暗号システム、認証付暗号化方法、プログラム
RU2686024C1 (ru) Способ и устройство многомерной имитоустойчивой передачи информации по каналам связи
JP2007019789A (ja) 乱数共有システムおよび方法
JP5672425B2 (ja) 暗号通信システムおよび暗号通信方法
Mihaljević et al. An approach for stream ciphers design based on joint computing over random and secret data
US20190294417A1 (en) Method and system for deriving deterministic prime number
Lee et al. Ciphertext-only attack on linear feedback shift register-based Esmaeili-Gulliver cryptosystem
CN105099693A (zh) 一种传输方法及传输装置
KR102626974B1 (ko) 화이트박스 암호의 비밀키 보호를 위한 방법 및 시스템
RU2359415C2 (ru) Способ криптографического преобразования блоков цифровых данных
US11502818B2 (en) System to secure encoding and mapping on elliptic curve cryptography (ECC)
Jin et al. Low transmission overhead for polar coding physical-layer encryption

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20081007