(57)【特許請求の範囲】
【請求項１】
量子通信路上の光子の測定結果として得られる確率情報付きの受信データの誤りを訂正することによって元の送信データを推定し、その推定結果を共有情報とする量子鍵配送方法において、
送信側および受信側の通信装置が、個別に、符号長をｎビット固定として所望の範囲の符号化率で最適化された第１のパリティ検査行列（各装置で同一）を生成し、当該第１のパリティ検査行列からｎ列×「前記範囲内の特定の符号化率に対応したｋ行」の第２のパリティ検査行列（各装置で同一）を抽出する第１の検査行列生成ステップと、
前記送信側の通信装置が、量子通信路および公開通信路を使用した所定の送受信処理により前記受信側の通信装置に対して送信したデータであるｎビットの送信データを保持し、前記受信側の通信装置が、前記所定の送受信処理により前記送信側の通信装置から受信したデータであるｎビットの受信データを保持するデータ送受信ステップと、
前記送信側の通信装置が、前記ｎ列×ｋ行の第２のパリティ検査行列と前記ｎビットの送信データに基づいて生成したｋビットの第１の誤り訂正情報を、公開通信路を介して前記受信側の通信装置に通知する第１の誤り訂正情報通知ステップと、
前記受信側の通信装置が、前記ｋビットの第１の誤り訂正情報に基づいて前記ｎビットの受信データの誤りを訂正する第１の誤り訂正ステップと、
前記ｎビットの受信データの誤りを完全に訂正できなかった場合に、前記受信側および送信側の通信装置が、個別に、前回の誤り訂正情報が次の誤り訂正時における情報の一部となるように、前記第１のパリティ検査行列から、ｎ列×「前回の符号化率よりも低い符号化率に対応した（ｋ＋ｔ）行」の第３のパリティ検査行列（各装置で同一）を抽出する第２の検査行列生成ステップと、
前記送信側の通信装置が、前記ｎ列×（ｋ＋ｔ）行の第３のパリティ検査行列と前記ｎビットの送信データに基づいて生成した追加分のｔビットの第２の誤り訂正情報を、公開通信路を介して前記受信側の通信装置に通知する第２の誤り訂正情報通知ステップと、
前記受信側の通信装置が、前記第１および第２の誤り訂正情報である（ｋ＋ｔ）ビットの誤り訂正情報に基づいて前記ｎビットの受信データの誤りを訂正する第２の誤り訂正ステップと、
前記第１の誤り訂正ステップの処理で受信データの誤りを完全に訂正できた場合、前記第２の誤り訂正ステップの処理で受信データの誤りを完全に訂正できた場合、または、前記第２の検査行列生成ステップ、前記第２の誤り訂正情報通知ステップ、前記第２の誤り訂正ステップの処理を、さらに符号化率を下げて前記第３のパリティ検査行列の行数のみを増やしながら繰り返し実行することにより誤りを完全に訂正できた場合に、公開された誤り訂正情報量に応じて共有情報の一部を破棄し、その結果を暗号鍵とする暗号鍵生成ステップと、
を含むことを特徴とする量子鍵配送方法。
【請求項２】
前記第１のパリティ検査行列の生成処理は、
符号長および前記所望の範囲の符号化率を決定する符号情報決定ステップと、
「行と列の重みが一定」かつ「２部グラフ上のサイクル数が６以上」を満たす前記第１のパリティ検査行列のベースとなる行列を選択し、当該行列に基づいて、前記範囲の上限値に対応した第１の基本行列、および前記範囲の下限値に対応した第２の基本行列を生成する基本行列生成ステップと、
前記符号長および前記符号化率の上限値に基づくガウス近似法の実行により、前記上限値に対応したパリティ検査行列の行の重みと列の重みの次数配分を最適化し、さらに当該次数配分に基づいて前記第１の基本行列の行重みおよび／または列重みを分割することにより、前記上限値に対応したパリティ検査行列を生成する検査行列生成ステップと、
「前記上限値に対応したパリティ検査行列を含むこと」という拘束条件の下で、前記符号化率の下限値に基づくガウス近似法を実行することにより、前記下限値に対応したパリティ検査行列の行の重みと列の重みの次数配分を最適化し、さらに当該次数配分に基づいて前記第２の基本行列の行重みおよび／または列重みを分割することにより、前記上限値に対応したパリティ検査行列に対する追加行列を生成する追加行列生成ステップと、
を含み、
前記上限値に対応したパリティ検査行列と前記追加行列とを連結した状態の前記下限値に対応したパリティ検査行列を、前記第１のパリティ検査行列とすることを特徴とする請求の範囲第１項に記載の量子鍵配送方法。
【請求項３】
前記第１のパリティ検査行列の生成処理は、
符号長および前記所望の範囲の符号化率を決定する符号情報決定ステップと、
「行と列の重みが一定」かつ「２部グラフ上のサイクル数が６以上」を満たす前記第１のパリティ検査行列のベースとなる行列を選択し、当該行列に基づいて、前記範囲の上限値に対応した基本行列、および前記範囲内で段階的に設定された複数の符号化率に対応した基本行列（前記範囲の下限値に対応した基本行列を含む）を生成する基本行列生成ステップと、
前記符号長および前記符号化率の上限値に基づくガウス近似法の実行により、前記上限値に対応したパリティ検査行列の行の重みと列の重みの次数配分を最適化し、さらに当該次数配分に基づいて、前記上限値に対応した基本行列の行重みおよび／または列重みを分割することにより、前記上限値に対応したパリティ検査行列を生成する検査行列生成ステップと、
「一段階上の符号化率に対応するパリティ検査行列を含むこと」という拘束条件の下で、前回よりも一段階下の符号化率に基づいてガウス近似法を実行することにより、当該符号化率に対応したパリティ検査行列の行の重みと列の重みの次数配分を最適化し、さらに当該次数配分に基づいて、前記一段階下の符号化率に対応した基本行列の行重みおよび／または列重みを分割することにより、前記一段階上の符号化率に対応したパリティ検査行列に対する追加行列を生成する追加行列生成ステップと、
を含み、
以降、前記符号化率を下げながら、前記下限値に対応する符号化率に達するまで、前記追加行列生成ステップを繰り返し実行し、
前記上限値に対応したパリティ検査行列およびすべての追加行列を連結した状態の前記下限値に対応したパリティ検査行列を、前記第１のパリティ検査行列とすることを特徴とする請求の範囲第１項に記載の量子鍵配送方法。
【請求項４】
前記「行と列の重みが一定」かつ「２部グラフ上のサイクル数が６以上」を満たす行列として、ユークリッド幾何符号を用いることを特徴とする請求の範囲第２項または第３項に記載の量子鍵配送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高度に安全性の保証された共通鍵を生成することが可能な量子鍵配送方法に関するものであり、特に、誤り訂正符号を用いてデータ誤りを訂正可能な量子鍵配送方法および当該量子鍵配送を実現可能な通信装置に関するものである。
【背景技術】
【０００２】
以下、従来の量子暗号システムについて説明する。近年、高速大容量な通信技術として光通信が広く利用されているが、このような光通信システムでは、光のオン／オフで通信が行われ、オンのときに大量の光子が送信されているため、量子効果が直接現れる通信系にはなっていない。
【０００３】
一方、量子暗号システムでは、通信媒体として光子を用い、不確定性原理等の量子効果が生じるように１個の光子で１ビットの情報を伝送する。このとき、盗聴者が、その偏光，位相等の量子状態を知らずに適当に基底を選んで光子を測定すると、その量子状態に変化が生じる。したがって、受信側では、この光子の量子状態の変化を確認することによって、伝送データが盗聴されたかどうかを認識することができる。
【０００４】
第１９図は、従来の偏光を利用した量子鍵配送の概要を示す図である。たとえば、水平垂直方向の偏光を識別可能な測定器では、量子通信路上の、水平方向（０°）に偏光された光と垂直方向（９０°）に偏光された光とを正しく識別する。一方、斜め方向（４５°，１３５°）の偏光を識別可能な測定器では、量子通信路上の、４５°方向に偏光された光と１３５°方向に偏光された光とを正しく識別する。
【０００５】
このように、各測定器は、規定された方向に偏光された光については正しく認識できるが、たとえば、斜め方向に偏光された光を水平垂直方向（０°，９０°）の偏光を識別可能な測定器にて測定すると、水平方向と垂直方向に偏光された光をそれぞれ５０％の確率でランダムに識別する。すなわち、識別可能な偏光方向に対応していない測定器を用いた場合には、その測定結果を解析しても、偏光された方向を正しく識別することができない。
【０００６】
第１９図に示す従来の量子鍵配送では、上記不確定性（ランダム性）を利用して、盗聴者に知られずに送信者と受信者との間で鍵を共有する（たとえば、非特許文献１参照。）。なお、送信者および受信者は、量子通信路以外に公開通信路を使用することができる。
【０００７】
ここで、鍵の共有手順について説明する。まず、送信者は、乱数列（１，０の列：送信データ）を発生し、さらに送信コード（＋：水平垂直方向に偏光された光を識別可能な測定器に対応，×：斜め方向に偏光された光を識別可能な測定器に対応）をランダムに決定する。その乱数列と送信コードの組み合わせで、送信する光の偏光方向が自動的にきまる。ここでは、０と＋の組み合わせで水平方向に偏光された光を、１と＋の組み合わせで垂直方向に偏光された光を、０と×の組み合わせで４５°方向に偏光された光を、１と×の組み合わせで１３５°方向に偏光された光を、量子通信路にそれぞれ送信する（送信信号）。
【０００８】
つぎに、受信者は、受信コード（＋：水平垂直方向に偏光された光を識別可能な測定器，×：斜め方向に偏光された光を識別可能な測定器）をランダムに決定し、量子通信路上の光を測定する（受信信号）。そして、受信コードと受信信号の組み合わせによって受信データを得る。ここでは、受信データとして、水平方向に偏光された光と＋の組み合わせで０を、垂直方向に偏光された光と＋の組み合わせで１を、４５°方向に偏光された光と×の組み合わせで０を、１３５°方向に偏光された光と×の組み合わせで１を、それぞれ得る。
【０００９】
つぎに、受信者は、自身の測定が正しい測定器で行われたものかどうかを調べるために、受信コードを、公開通信路を介して送信者に対して送信する。受信コードを受け取った送信者は、正しい測定器で行われたものかどうかを調べ、その結果を、公開通信路を介して受信者に対して返信する。
【００１０】
つぎに、受信者は、正しい測定器で受信した受信信号に対応する受信データだけを残し、その他を捨てる。この時点で、残された受信データは送信者と受信者との間で確実に共有できている。
【００１１】
つぎに、送信者と受信者は、それぞれの通信相手に対して、共有データから選択した所定数のデータを、公開通信路を経由して送信する。そして、受け取ったデータが自身の持つデータと一致しているかどうかを確認する。たとえば、確認したデータの中に一致しないデータが１つでもあれば、盗聴者がいるものと判断して共有データを捨て、再度、鍵の共有手順を最初からやり直す。一方、確認したデータがすべて一致した場合には、盗聴者がいないと判断し、確認に使用したデータを捨て、残った共有データを送信者と受信者の共有鍵とする。
【００１２】
一方、上記従来の量子鍵配送方法の応用として、たとえば、伝送路上におけるデータ誤りを訂正可能な量子鍵配送方法がある（たとえば、非特許文献２参照。）。
【００１３】
この方法では、送信者が、データ誤りを検出するために、送信データを複数のブロックに分割し、ブロック毎のパリティを公開通信路上に送信する。そして、受信者が、公開通信路を経由して受け取ったブロック毎のパリティと受信データにおける対応するブロックのパリティとを比較して、データ誤りをチェックする。このとき、異なるパリティがあった場合、受信者は、どのブロックのパリティが異なっているのかを示す情報を公開通信路上に返信する。そして、送信者は、該当するブロックをさらに前半部のブロックと後半部のブロックに分割し、たとえば、前半部のパリティを公開通信路上に返信する（二分探索）。以降、送信者と受信者は、上記二分探索を繰り返し実行することによりエラービットの位置を特定し、最終的に受信者がそのビットを訂正する。
【００１４】
さらに、送信者は、データに誤りがあるにもかかわらず、偶数個の誤りのために正しいと判定されたパリティがある場合を想定し、送信データをランダムに並べ替えて（ランダム置換）複数のブロックに分割し、再度、上記二分探索による誤り訂正処理を行う。そして、ランダム置換によるこの誤り訂正処理を繰り返し実行することによって、すべてのデータ誤りを訂正する。
【先行技術文献】
【非特許文献】
【００１５】
【非特許文献１】Bennett,C.H.  and  Brassard,G.  :  Quantum  Cryptography  :  PublicKey  Distribution  and  Coin  Tossing,  In  Proceedings  of  IEEE  Conference  onComputers,  System  and  Signal  Processing,  Bangalore,  India,  pp.175-179(DEC.1984).
【非特許文献２】Brassard,G.  and  Salvail,L.  1993  Secret-Key  Reconciliation  by  Public  Discussion,  In  Advances  in  Cryptology  -  EUROCRYPT'93,  Lecture  Notes  in  Computer  Science  765,  410-423.
【発明の概要】
【発明が解決しようとする課題】
【００１６】
しかしながら、上記第１９図に示す従来の量子鍵配送においては、誤り通信路を想定していないため、誤りがある場合には盗聴行為が存在したものとして上記共通データ（共通鍵）を捨てることとなり、伝送路によっては共通鍵の生成効率が非常に悪くなる、という問題があった。
【００１７】
また、上記伝送路上におけるデータ誤りを訂正可能な量子鍵配送方法においては、エラービットを特定するために膨大な回数のパリティのやりとりが発生し、さらに、ランダム置換による誤り訂正処理が所定回数にわたって行われるため、誤り訂正処理に多大な時間を費やすことになる、という問題があった。
【００１８】
本発明は、上記に鑑みてなされたものであって、極めて高い特性を持つ誤り訂正符号を用いて伝送路上におけるデータ誤りを訂正しつつ、高度に安全性の保証された共通鍵を生成することが可能な量子鍵配送方法を提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明にかかる量子鍵配送方法にあっては、量子通信路上の光子の測定結果として得られる確率情報付きの受信データの誤りを訂正することによって元の送信データを推定し、その推定結果を共有情報とする量子鍵配送方法であって、送信側および受信側の通信装置が、個別に、所望の範囲の符号化率で最適化された第１のパリティ検査行列（各装置で同一）を生成し、当該第１のパリティ検査行列から前記範囲内の特定の符号化率に対応した第２のパリティ検査行列（各装置で同一）を抽出する第１の検査行列生成ステップと、前記送信側の通信装置が、前記第２のパリティ検査行列と前記送信データに基づいて生成した第１の誤り訂正情報を、公開通信路を介して前記受信側の通信装置に通知する第１の誤り訂正情報通知ステップと、前記受信側の通信装置が、前記第１の誤り訂正情報に基づいて前記受信データの誤りを訂正する第１の誤り訂正ステップと、前記受信データの誤りを完全に訂正できなかった場合に、受信側および送信側の通信装置が、個別に、前回の誤り訂正情報が次の誤り訂正時における情報の一部となるように、前記第１のパリティ検査行列から前回の符号化率よりも低い符号化率に対応した第３のパリティ検査行列（各装置で同一）を抽出する第２の検査行列生成ステップと、前記送信側の通信装置が、前記第３のパリティ検査行列と前記送信データに基づいて生成した追加分の第２の誤り訂正情報を、公開通信路を介して前記受信側の通信装置に通知する第２の誤り訂正情報通知ステップと、前記受信側の通信装置が、前記第１および第２の誤り訂正情報に基づいて前記受信データの誤りを訂正する第２の誤り訂正ステップと、前記第１の誤り訂正ステップの処理で受信データの誤りを完全に訂正できた場合、または、前記第２の検査行列生成ステップ、前記第２の誤り訂正情報通知ステップ、前記第２の誤り訂正ステップの処理を繰り返し実行することにより誤りを完全に訂正できた場合、公開された誤り訂正情報量に応じて共有情報の一部を破棄し、その結果を暗号鍵とする暗号鍵生成ステップと、を含むことを特徴とする。
【発明の効果】
【００２０】
本発明によれば、確定的で特性が安定した「Ｉｒｒｅｇｕｌａｒ−ＬＤＰＣ符号」用の検査行列を用いて受信データの誤りを訂正し、公開された誤り訂正情報に応じて共有情報の一部を捨てることとした。これにより、エラービットを特定／訂正するための膨大な回数のパリティのやりとりがなくなり、誤り訂正情報を送信するだけで誤り訂正制御が行われるため、誤り訂正処理にかかる時間を大幅に短縮できる。また、公開された情報に応じて共有情報の一部を捨てているので、高度に安全性の保証された共通鍵を生成することができる。
【００２１】
また、本発明によれば、受信データの誤りを完全に訂正できるまで、符号化率を下げながら、所望の範囲の符号化率で最適化されたパリティ検査行列から特定符号化率に対応したパリティ検査行列を抽出し、さらに追加のシンドロームを生成し、この追加シンドロームを用いて誤り訂正処理を繰り返し実行することとした。これにより、通信路の雑音レベルを見積もるために生成した共有情報を破棄する必要がなくなるので、共有鍵の生成効率を大幅に向上させることができる。
【図面の簡単な説明】
【００２２】
【図１】第１図は、本発明にかかる量子暗号システムの構成を示す図である。
【図２】第２図は、実施の形態１の量子鍵配送の概要を示すフローチャートである。
【図３】第３図は、実施の形態１の量子鍵配送の概要を示すフローチャートである。
【図４】第４図は、パリティ検査行列ＨR(l)の構成を示す図である。
【図５】第５図は、ユークリッド幾何符号に基づく「Ｉｒｒｅｇｕｌａｒ−ＬＤＰＣ符号」の構成法を示すフローチャートである。
【図６】第６図は、ユークリット幾何符号ＥＧ（２，２2）のマトリクスを示す図である。
【図７】第７図は、並べ替え後のマトリクスを示す図である。
【図８】第８図は、最適化計算後の次数配分を示す図である。
【図９】第９図は、調整後の次数配分を示す図である。
【図１０】第１０図は、パリティ検査行列ＨR(3)を示す図である。
【図１１】第１１図は、最適化計算の結果として得られた次数配分を示す図である。
【図１２】第１２図は、追加行列ＡR(2)を示す図である。
【図１３】第１３図は、パリティ検査行列ＨR(2)を示す図である。
【図１４】第１４図は、追加行列ＡR(1)の一具体例を示す図である。
【図１５】第１５図は、パリティ検査行列ＨR(1)の一具体例を示す図である。
【図１６】第１６図は、送信側の通信装置が受信側の通信装置に対して送信するシンドロームＳAを示す図である。
【図１７】第１７図は、パリティ検査行列ＨR(1)からパリティ検査行列ＨR(L-1)を抽出する様子を示す図である。
【図１８】第１８図は、追加シンドロームの生成方法を示す図である。
【図１９】第１９図は、従来の偏光を利用した量子鍵配送の概要を示す図である。
【発明を実施するための形態】
【００２３】
以下に、本発明にかかる量子鍵配送方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。また、以下では、例として偏光を利用する量子鍵配送について説明するが、本発明は、たとえば、位相を利用するもの，周波数を利用するもの等にも適用可能であり、どのような量子状態を利用するかについては特に限定しない。
【００２４】
量子鍵配送は、盗聴者の計算能力によらず、安全性の保証された鍵配送方式であるが、たとえば、より効率よく共有鍵を生成するためには、伝送路を通ることによって発生するデータの誤りを取り除く必要がある。そこで、本実施の形態では、極めて高い特性をもつことが知られている低密度パリティ検査（ＬＤＰＣ：：Low-Density  Parity-Check）符号を用いて誤り訂正を行う量子鍵配送について説明する。
【００２５】
第１図は、本発明にかかる量子暗号システム（送信側および受信側の通信装置）の構成を示す図である。この量子暗号システムは、情報ｍaを送信する機能を備えた送信側の通信装置と、伝送路上で雑音等の影響を受けた情報ｍa、すなわち情報ｍbを受信する機能を備えた受信側の通信装置と、から構成される。
【００２６】
また、送信側の通信装置は、量子通信路を介して情報ｍaを送信し、公開通信路を介してシンドロームＳAを送信し、これらの送信情報に基づいて暗号鍵（受信側との共通鍵）を生成する暗号鍵生成部１と、暗号化部２１が暗号鍵に基づいて暗号化したデータを、送受信部２２が公開通信路を介してやりとりする通信部２と、を備え、受信側の通信装置は、量子通信路を介して情報ｍbを受信し、公開通信路を介してシンドロームＳAを受信し、これらの受信情報に基づいて暗号鍵（送信側との共通鍵）を生成する暗号鍵生成部３と、暗号化部４２が暗号鍵に基づいて暗号化したデータを、送受信部４１が公開通信路を介してやりとりする通信部４と、を備える。
【００２７】
上記送信側の通信装置では、量子通信路上に送信する情報ｍaとして、偏光フィルターを用いて所定の方向に偏光させた光を、受信側の通信装置に対して送信する。一方、受信側の通信装置では、水平垂直方向（０°，９０°）の偏光を識別可能な測定器と斜め方向（４５°，１３５°）の偏光を識別可能な測定器とを用いて、量子通信路上の、水平方向（０°）に偏光された光と垂直方向（９０°）に偏光された光と４５°方向に偏光された光と１３５°方向に偏光された光とを識別する。なお、各測定器は、規定された方向に偏光された光については正しく認識できるが、たとえば、斜め方向に偏光された光を水平垂直方向（０°，９０°）の偏光を識別可能な測定器にて測定すると、水平方向と垂直方向に偏光された光をそれぞれ５０％の確率でランダムに識別する。すなわち、識別可能な偏光方向に対応していない測定器を用いた場合には、その測定結果を解析しても、偏光された方向を正しく識別することができない。
【００２８】
以下、上記量子暗号システムにおける各通信装置の動作、すなわち、本実施の形態における量子鍵配送について詳細に説明する。第２図および第３図は、本実施の形態の量子鍵配送の概要を示すフローチャートであり、詳細には、第２図は送信側の通信装置の処理を示し、第３図は受信側の通信装置の処理を示す。
【００２９】
まず、上記送信側の通信装置および受信側の通信装置では、パリティ検査行列生成部１０，３０が、特定の線形符号のパリティ検査行列Ｈを求める（ステップＳ１）。なお、符号化率は「０＜Ｒ（１）＜Ｒ（２）＜…＜Ｒ（ｍａｘ）＝１（Ｒ（ｍａｘ）は無符号化を表す）」であり、ここでは、一例として、符号化率が限りなく”０”に近いパリティ検査行列ＨR(1)を求めることとする。
【００３０】
そして、上記パリティ検査行列ＨR(1)から任意の符号化率Ｒ（Ｌ）＝（ｎ−ｋ）／ｎのパリティ検査行列ＨR(L)（ｎ×ｋ行列）を抽出し、このパリティ検査行列ＨR(L)から「ＨR(L)ＧR(L)＝０」を満たす生成行列ＧR(L)（（ｎ−ｋ）×ｎ行列）を求め、さらに、ＧR(L)-1・ＧR(L)＝Ｉ（単位行列）となるＧR(L)の逆行列ＧR(L)-1（ｎ×（ｎ−ｋ）行列）を求める（ステップＳ１，ステップＳ１１）。ここでは、上記任意の符号化率Ｒ（Ｌ）を、説明の便宜上、Ｒ（Ｌ）＝０．６とする。
【００３１】
本実施の形態では、上記特定の線形符号として、シャノン限界に極めて近い優れた特性をもつＬＤＰＣ符号を用いた場合の量子鍵配送について説明する。なお、上記特定の線形符号としては、ターボ符号等の他の線形符号を用いることとしてもよい。また、たとえば、後述する誤り訂正情報（シンドローム）が適当な行列Ｈと送信データｍA（情報ｍaの一部）の積ＨｍAで表される誤り訂正プロトコル（たとえば、従来技術にて説明した「伝送路上におけるデータ誤りを訂正可能な量子鍵配送」に相当する誤り訂正プロトコル）であれば、すなわち、誤り訂正情報と送信データｍAの線形性が確保されるのであれば、その行列Ｈをパリティ検査行列として用いることとしてもよい。
【００３２】
ここで、上記パリティ検査行列生成部１０におけるＬＤＰＣ符号の構成法（ステップＳ１の処理に相当）について説明する。
【００３３】
なお、ここでは、ＬＤＰＣ符号ＣR(l)のパリティ検査行列をＨR(l)とする。また、符号化率Ｒ（ｌ），ｌ＝１，２，…，ｍａｘは、「０＜Ｒ（１）＜Ｒ（２）＜…＜Ｒ（ｍａｘ）＝１」である。Ｒ（ｍａｘ）は無符号化を表す。
【００３４】
また、パリティ検査行列ＨR(l)は、パリティ検査行列ＨR(l+1)と追加のパリティ検査行列ＡR(1)を用いて、下記（１）式のように定義することができる。第４図は、（１）式の概要を示す図である。
【００３５】
【数１】
0004554524.tif 000002
【００３６】
ただし、パリティ検査行列ＨR(l)とパリティ検査行列ＨR(l+1)はともにフルランクである。
【００３７】
また、本実施の形態では、ガウス近似法によりパリティ検査行列ＨR(l)  ，ｌ＝１，２，…，ｍａｘの次数配分を最適化する。すなわち、下記（２）式を最小化するようなパリティ検査行列ＨR(l)の次数配分を求める。
【００３８】
【数２】
0004554524.tif 000003
【００３９】
ただし、ＧＡＰR(l)は、ガウス近似法で推定するパリティ検査行列ＨR(l)の反復しきい値のＳＮＲとシャノン限界との差をｄＢで表現したものである。
【００４０】
上記（２）式を最小化するようなパリティ検査行列ＨR(l)の次数配分の求め方としては、たとえば、下記（３）式、すなわち、ガウスノイズσn（Ｒ（ｌ））を最大とするλ（ｘ，Ｒ（ｌ）），ρ（ｘ，Ｒ（ｌ））を探索する計算を行う。下記（３）式を計算する場合の拘束条件を下記（４）式，（５）式，（６）式，（７）式に示す。
【００４１】
【数３】
0004554524.tif 000004
【００４２】
【数４】
0004554524.tif 000005
【００４３】
【数５】
0004554524.tif 000006
【００４４】
【数６】
0004554524.tif 000007
【００４５】
【数７】
0004554524.tif 000008
【００４６】
ただし、λi（Ｒ（ｌ））はパリティ検査行列ＨR(l)の次数ｉの列の比率を表し、ρi（Ｒ（ｌ））はパリティ検査行列ＨR(l)の次数ｉの行の比率を表す。また、ｄｖ（ｍａｘ，Ｒ（ｌ））はパリティ検査行列ＨR(l)の列の最大次数を表し、ｄｃ（ｍａｘ，Ｒ（ｌ））はパリティ検査行列ＨR(l)の行の最大次数を表す。また、λ（ｘ，Ｒ（ｌ））はパリティ検査行列ＨR(l)の列の次数分布の生成関数であり、ρ（ｘ，Ｒ（ｌ））はパリティ検査行列ＨR(l)の行の次数分布の生成関数である。また、ｎv（ｉ，Ｒ（ｌ））はパリティ検査行列ＨR(l)の次数ｉの列数を表し、ｎc（ｉ，Ｒ（ｌ））はパリティ検査行列ＨR(l)の次数ｉの行数を表す。
【００４７】
以下に、上記ステップＳ１にてパリティ検査行列ＨR(1)を求める処理の一例として、パリティ検査行列ＨR(3)，パリティ検査行列ＨR(2)，パリティ検査行列ＨR(1)を順に求める場合の処理について具体的に説明する。第５図は、ユークリッド幾何符号に基づく「Ｉｒｒｅｇｕｌａｒ−ＬＤＰＣ符号」の構成法を示すフローチャートである。なお、パリティ検査行列生成部３０については、パリティ検査行列生成部１０と同様に動作するのでその説明を省略する。また、本実施の形態における検査行列生成処理は、たとえば、設定されるパラメータに応じてパリティ検査行列生成部１０で実行する構成としてもよいし、通信装置外部の他の制御装置（計算機等）で実行することとしてもよい。本実施の形態における検査行列生成処理が通信装置外部で実行される場合は、生成済みの検査行列が通信装置に格納される。以降の実施の形態では、パリティ検査行列生成部１０で上記処理を実行する場合について説明する。
【００４８】
まず、パリティ検査行列生成部１０では、符号長および符号化率を決定する（第５図、ステップＳ２１）。ここでは、たとえば、符号長をｎ＝５０００とし、符号化率をＲ（３）＝０．６，Ｒ（２）＝０．４，Ｒ（１）＝０．０とする。
【００４９】
つぎに、パリティ検査行列生成部１０では、ユークリッド幾何符号ＥＧ（２，２s）を選択し、さらに、「Ｉｒｒｅｇｕｌａｒ−ＬＤＰＣ符号」用の検査行列のベースとなる基本行列Ａ（ｓ＝５，Ｒ（３）），Ａ（ｓ＝５，Ｒ（２）），Ａ（ｓ＝５，Ｒ（１））を生成する（ステップＳ２２）。たとえば、ｓ＝５とした場合、ユークリッド幾何符号ＥＧ（２，２5）の一行目の重み分布（”１”の列番号）は、下記のようになる。
【００５０】
｛1  32  114  136  149  223  260  382  402  438  467  507  574  579  588  622  634  637  638  676  717  728  790  851  861  879  947  954  971  977  979  998｝
【００５１】
ＬＤＰＣ符号を用いた符号化／復号においては、一般的に、２部グラフ上に「サイクル４」および「サイクル６」が少ないほど良好な特性を得ることができる。そこで、本実施の形態では、「サイクル４」や「サイクル６」といった少ないサイクルを抑制するように、ユークリッド幾何符号ＥＧ（２，２5）の１行目の重み分布から適当に”１”を間引きする。間引き後の重み分布は、たとえば、下記のようになる。
【００５２】
｛1  32  114  136  149  223  260  402  438  467  507  574  588  634  638  717  728  790  861  947  971  979｝
【００５３】
そして、間引き後の重み分布に基づいて、各基本行列の一行目の重み分布を決定し（個別に上記”１”の位置を割り当てる）、さらに、その重み分布を巡回シフトすることにより、１０２３行×１０２３列の基本行列Ａ（ｓ＝５，Ｒ（３）），Ａ（ｓ＝５，Ｒ（２）），Ａ（ｓ＝５，Ｒ（１））を生成する。本実施の形態では、各基本行列の一行目の重み分布を、たとえば、下記のように決定する。
【００５４】
Ａ（ｓ＝５，Ｒ（３））＝｛1  32  114  149  260  402  467  507  574  634  717  728  790  861  979｝
Ａ（ｓ＝５，Ｒ（２））＝｛223  438  947｝
Ａ（ｓ＝５，Ｒ（１））＝｛136  588  638  971｝
【００５５】
これにより、パリティ検査行列ＨR(3)の列の最大次数がｄｖ（ｍａｘ，Ｒ（３））＝１５となり、パリティ検査行列ＨR(2)の列の最大次数がｄｖ（ｍａｘ，Ｒ（２））＝３となり、パリティ検査行列ＨR(1)の列の最大次数がｄｖ（ｍａｘ，Ｒ（１））＝４となる。また、パリティ検査行列ＨR(3)の行の最大次数がｄｃ（ｍａｘ，Ｒ（３））＝１５となり、パリティ検査行列ＨR(2)の行の最大次数がｄｃ（ｍａｘ，Ｒ（２））＝３となり、パリティ検査行列ＨR(1)の行の最大次数がｄｃ（ｍａｘ，Ｒ（１））＝４となる。
【００５６】
つぎに、パリティ検査行列生成部１０では、上記各基本行列を、列内の”１”の位置が列中のできるだけ上部にくるように、以下の手順で並べ替えを行う（ステップＳ２３）。この並べ替え手順を一般的に表現すると、下記（８）式のように表現できる。
【００５７】
【数８】
0004554524.tif 000009
【００５８】
なお、ｉ＝１〜２2s−１とする。また、（８）式の多項式（Ｘ(w1-1)＋Ｘ(w2-1)＋…）は、各基本行列の最初の行を表現した式である。たとえば、基本行列の重みの位置が｛1  7  9  …  40｝の場合は、１＋Ｘ(7-1)＋Ｘ(9-1)＋…Ｘ(40-1)となる。
【００５９】
そして、上記（８）式において、ｉ＝１〜２2s−１，ｊ＝１〜ｉ−１までの間に、ｈi（Ｘ）＝ｈj（Ｘ）が存在する場合は、ｈi（Ｘ）を削除する。この並べ替え処理により、後述する行の削除処理（短縮処理）を行う場合に、できるだけ重みの大きい列を残すことができ、かつ列内の重みのバリエーションをできるだけ少なくすることができる。
【００６０】
具体例として、たとえば、ユークリット幾何符号ＥＧ（２，２2）を基本行列とした場合、上記並べ替え手順を実施すると、第６図に示すマトリクスが第７図に示すマトリクスのように並べ替えられる。第６図は、ユークリット幾何符号ＥＧ（２，２2）のマトリクスを示す図（空白は０を表す）であり、第７図は、並べ替え後のマトリクスを示す図である。
【００６１】
つぎに、パリティ検査行列生成部１０では、上記で決定した符号長ｎ＝５０００，符号化率Ｒ（３）＝０．６，並べ替え後の基本行列Ａ（ｓ＝５，Ｒ（３））を用いて、２０００行×５０００列のパリティ検査行列ＨR(3)を求める処理（最適化計算）を実行する（ステップＳ２４）。
【００６２】
ここでは、まず、ガウスノイズσn（Ｒ（３））を最大とする生成関数λ（ｘ，Ｒ（３）），ρ（ｘ，Ｒ（３））を探索する。この場合、上記（４）式，（５）式，（６）式が拘束条件となる。第８図は、最適化計算後の次数配分を示す図である。
【００６３】
また、パリティ検査行列生成部１０では、基本行列Ａ（ｓ＝５，Ｒ（３））と鍵長ｎ＝５０００と符号化率Ｒ（３）＝０．６に基づいて、短縮行列を求める。たとえば、μi∈Ｚ（正の整数）を、基本行列Ａ（ｓ，Ｒ（ｌ））の１行から分割された次数ｉの行数とすると、行の分割数は、下記（９）式となる。
【００６４】
【数９】
0004554524.tif 000010
【００６５】
第８図の例では、７μ7／１５＋８μ8／１５＝１（ただし、μ7＝１，μ8＝１）となり、行の分割数は、「１＋１＝２」となる。
【００６６】
そして、短縮行列の行数は、下記（１０）式となる。
【００６７】
短縮行列の行数＝ｎ×（１−Ｒ（３））／行の分割数
＝５０００×（１−０．６）／２＝１０００    …（１０）
【００６８】
すなわち、ここでは、１０２３行の基本行列Ａ（ｓ＝５，Ｒ（３））の最下位から２３行を削除して、１０００行の短縮行列Ａ´（ｓ＝５，Ｒ（３））を生成する。
【００６９】
その後、パリティ検査行列生成部１０では、第８図に示す行の次数比率ρi（Ｒ（３））と行の次数ｉを固定した状態で、上記短縮行列Ａ´（ｓ＝５，Ｒ（３））を用いて構成可能な、パリティ検査行列ＨR(3)の次数ｉ＝２，３，４の列数ｎv（ｉ，Ｒ（３））と、パリティ検査行列ＨR(3)の次数ｉ＝７，８の行数ｎc（ｉ，Ｒ（３））と、を求める。ここでは、分割後の行列の列が５０００列になるように、列の次数比率λi（Ｒ（３））を調整する。第９図は、調整後の次数配分を示す図である。
【００７０】
その後、第９図に示す次数分布に基づいて、短縮行列Ａ´（ｓ＝５，Ｒ（３））の行と列を分割し、その結果を２０００行×５０００列のパリティ検査行列ＨR(3)´とする。さらに、分割後のパリティ検査行列ＨR(3)´の列の重みが昇順になるように列を並べ替えて、並べ替え後の行列をパリティ検査行列ＨR(3)とする。第１０図は、パリティ検査行列ＨR(3)を示す図である。ここでは、重み”７”の行が１０００行、重み”８”の行が１０００行、重み”２”の列が２７９列、重み”３”の列が４４４２列、重み”４”の列が２７９列となる。
【００７１】
なお、本実施の形態における短縮行列の分割処理（後述する分割処理も含む）は、規則的に分割するのではなく、各行または各列から「１」をランダムに抽出することにより行う（ランダム分割）。なお、この抽出処理は、ランダム性が保持されるのであればどのような方法を用いてもよい。
【００７２】
つぎに、パリティ検査行列生成部１０では、上記で決定した符号長ｎ＝５０００，符号化率Ｒ（２）＝０．４，並べ替え後の基本行列Ａ（ｓ＝５，Ｒ（２）），パリティ検査行列ＨR(3)を用いて、下記（１１）式に示すパリティ検査行列ＨR(2)および追加行列ＡR(2)を求める処理（最適化計算）を実行する（ステップＳ２５）。ここでは、上記パリティ検査行列ＨR(3)を求める処理と異なる処理についてのみ説明する。
【００７３】
【数１０】
0004554524.tif 000011
【００７４】
まず、ガウスノイズσn（Ｒ（２））を最大とする生成関数λ（ｘ，Ｒ（２）），ρ（ｘ，Ｒ（２））を探索する。なお、この最適化計算では、上記（４）式，（５）式，（６）式に加えて、（７）式が拘束条件となる。具体的には、（７）式に基づいて生成された（１２）式を満たすことが拘束条件となる。
【００７５】
【数１１】
0004554524.tif 000012
【００７６】
したがって、たとえば、パリティ検査行列ＨR(2)における次数２，次数３，次数４の拘束条件は、それぞれ（１３）式，（１４）式，（１５）式となる。
【００７７】
【数１２】
0004554524.tif 000013
【００７８】
【数１３】
0004554524.tif 000014
【００７９】
【数１４】
0004554524.tif 000015
【００８０】
さらに、パリティ検査行列ＨR(2)の列の最大次数が下記（１６）式を満たすことも拘束条件となる。
【００８１】
ＨR(2)の列の最大次数＝ＨR(3)の列の最大次数＋Ａ（ｓ＝５，Ｒ（２））の要素数
…（１６）
【００８２】
第１１図は、上記最適化計算の結果として得られた次数配分を示す図である。
【００８３】
一方で、パリティ検査行列生成部１０では、基本行列Ａ（ｓ＝５，Ｒ（２））の要素数と鍵長ｎ＝５０００と符号化率Ｒ（２）＝０．４を用いて、上記（９）式、上記（１０）式と同様の処理で短縮行列Ａ´（ｓ＝５，Ｒ（２））を求める。
【００８４】
第１１図の例では、３μ3／１８＋７μ7／１８＋８μ8／１８＝１（ただし、μ3＝１，μ7＝１，μ8＝１）となり、行の分割数は、「１＋１＋１＝３」となる。
【００８５】
すなわち、ここでも、１０２３行の基本行列Ａ（ｓ＝５，Ｒ（２））の最下位から２３行を削除して、１０００行の短縮行列Ａ´（ｓ＝５，Ｒ（２））を生成する。
【００８６】
その後、第１１図に示す次数分布に基づいて、短縮行列Ａ´（ｓ＝５，Ｒ（２））の列を分割し、その結果を１０００行×５０００列の仮追加行列ＡR(2)´とする。さらに、分割後の仮追加行列ＡR(2)´の列の重みが昇順になるように列を並べ替えて、並べ替え後の行列を正式な追加行列ＡR(2)とする。第１２図は、追加行列ＡR(2)を示す図である。ここでは、重み”３”の行が１０００行、重み”１”の列が１５０列、重み”２”の列が６列、重み”３”の列が９４６列となる。また、第１３図は、パリティ検査行列ＨR(2)を示す図である。
【００８７】
最後に、パリティ検査行列生成部１０では、上記で決定した符号長ｎ＝５０００，符号化率Ｒ（２）＝０．０，並べ替え後の基本行列Ａ（ｓ＝５，Ｒ（１）），パリティ検査行列ＨR(2)を用いて、下記（１７）式に示すパリティ検査行列ＨR(1)および追加行列ＡR(1)を求める処理（最適化計算）を実行する（ステップＳ２６）。この処理は、上記パリティ検査行列ＨR(2)を求める処理と同様の手順で行う。
【００８８】
【数１５】
0004554524.tif 000016
【００８９】
その後、上記計算結果として得られる次数分布に基づいて、短縮行列Ａ´（ｓ＝５，Ｒ（１））の行および列を分割し、その結果を２０００行×５０００列の仮追加行列ＡR(1)´とする。さらに、分割後の仮追加行列ＡR(1)´の列の重みが昇順になるように列を並べ替えて、並べ替え後の行列を正式な追加行列ＡR(1)とする。第１４図は、追加行列ＡR(1)の一具体例を示す図である。また、第１５図は、パリティ検査行列ＨR(1)の一具体例を示す図である。
【００９０】
このように、本実施の形態では、上記ステップＳ２１〜Ｓ２６を実行することによって、確定的で特性が安定した「Ｉｒｒｅｇｕｌａｒ−ＬＤＰＣ符号」用の検査行列ＨR(3)  ，ＨR(2)  ，ＨR(1)を生成することができる。
【００９１】
なお、本実施の形態においては、基本となる符号（基本行列）にユークリッド幾何符号を用いることとしたが、これに限らず、「行と列の重みが一定」かつ「２部グラフ上のサイクル数が６以上」という条件を満たす行列であれば、ユークリッド幾何符号以外（Ｃａｙｌｅｙグラフによる基本行列やＲａｍａｎｕｊａｎグラフによる基本行列等）の行列を用いることとしてもよい。
【００９２】
また、本実施の形態では、最終的に、符号化率が限りなく”０”に近いパリティ検査行列ＨR(1)を生成することとしたが、これに限らず、通信環境によって必要に応じた大きさ（ＨR(2)，ＨR(3)，ＨR(4)等）のパリティ検査行列を予め生成しておくこととしてもよい。また、本実施の形態では、３段構成のパリティ検査行列を想定したが、良好な特性が得られるのであれば、何段構成であってもかまわない。
【００９３】
上記のように、パリティ検査行列ＨR(1)，生成行列ＧR(L)，Ｇ-1R(L)を生成後、つぎに、送信側の通信装置では、乱数発生部１１が、乱数列ｍa（１，０の列：送信データ）を発生し、さらに送信コード（＋：水平垂直方向に偏光された光を識別可能な測定器に対応したコード，×：斜め方向に偏光された光を識別可能な測定器に対応したコード）をランダムに決定する（第２図、ステップＳ２）。一方、受信側の装置では、乱数発生部３１が、受信コード（＋：水平垂直方向に偏光された光を識別可能な測定器に対応したコード，×：斜め方向に偏光された光を識別可能な測定器に対応したコード）をランダムに決定する（第３図、ステップＳ１２）。
【００９４】
つぎに、送信側の通信装置では、光子生成部１２が、上記乱数列ｍaと送信コードの組み合わせで自動的に決まる偏光方向で光子を送信する（ステップＳ３）。たとえば、０と＋の組み合わせで水平方向に偏光された光を、１と＋の組み合わせで垂直方向に偏光された光を、０と×の組み合わせで４５°方向に偏光された光を、１と×の組み合わせで１３５°方向に偏光された光を、量子通信路にそれぞれ送信する（送信信号）。
【００９５】
光子生成部１２の光信号を受け取った受信側の通信装置の光子受信部３２では、量子通信路上の光を測定する（受信信号）。そして、受信コードと受信信号の組み合わせによって自動的に決まる受信データｍbを得る（ステップＳ１３）。ここでは、受信データｍbとして、水平方向に偏光された光と＋の組み合わせで０を、垂直方向に偏光された光と＋の組み合わせで１を、４５°方向に偏光された光と×の組み合わせで０を、１３５°方向に偏光された光と×の組み合わせで０を、それぞれ得る。なお、受信データｍbは、確率情報付きの硬判定値とする。
【００９６】
つぎに、受信側の通信装置では、上記測定が正しい測定器で行われたものかどうかを調べるために、乱数発生部３１が、受信コードを、公開通信路を介して送信側の通信装置に対して送信する（ステップＳ１３）。受信コードを受け取った送信側の通信装置では、上記測定が正しい測定器で行われたものかどうかを調べ、その結果を、公開通信路を介して受信側の通信装置に対して送信する（ステップＳ３）。そして、受信側の通信装置および送信側の通信装置では、正しい測定器で受信した受信信号に対応するデータだけを残し、その他を捨てる（ステップＳ３，Ｓ１３）。その後、残ったデータをメモリ等に保存し、その先頭から順にｎビットを読み出し、これを、正式な送信データｍAと受信データｍB（ｍBは伝送路上で雑音等の影響を受けたｍA：ｍB＝ｍA＋ｅ（雑音等））とする。すなわち、ここでは、必要に応じてつぎのｎビットを読み出して、送信データｍAと受信データｍBを生成する。本実施の形態では、残ったデータのビット位置が、送信側の通信装置と受信側の通信装置との間で共有できている。なお、ｍBは、上記ｍb同様、確率情報付きの硬判定値である。
【００９７】
つぎに、送信側の通信装置では、シンドローム生成部１４が、パリティ検査行列ＨR(L)（ｎ×ｋの行列）と送信データｍAを用いてｍAのシンドロームＳA＝ＨR(L)ｍAを計算し、その結果を、公開通信路通信部１３，公開通信路を介して受信側の通信装置に通知する（ステップＳ４）。この段階で、ｍAのシンドロームＳA（ｋビット分の情報）は盗聴者に知られる可能性がある。第１６図は、送信側の通信装置が受信側の通信装置に対して送信するシンドロームＳAを示す図である。一方、受信側の通信装置では、公開通信路通信部３４にてｍAのシンドロームＳAを受信し、それをシンドローム復号部３３に通知する（ステップＳ１４）。
【００９８】
つぎに、シンドローム復号部３３では、既知のシンドローム復号法を用いて、雑音等による確率情報付きの硬判定値ｍBの誤りを訂正することによって元の送信データｍAを推定する（ステップＳ１５）。本実施の形態では、たとえば、「ＳA＝ＨR(L)ｍC」を満たすｍCを確率情報付きの硬判定値ｍBから推定し、その推定結果ｍCを共有情報ｍAとする。なお、本実施の形態においては、受信データｍBおよびｍbを確率情報付きの硬判定値としたが、これに限らず、たとえば、軟判定値とした場合においても適用可能であり、どのような受信データを利用するかについては特に規定しない。
【００９９】
そして、ステップＳ１５の処理によって硬判定値ｍBの誤りを完全に訂正できた場合（ステップＳ１５，ＯＫ）、受信側の通信装置では、共有鍵生成部３５が、公開された誤り訂正情報（盗聴された可能性のある上記ｋビット分の情報：ＳA）に応じて共有情報ｍAの一部を捨てて、ｎ−ｋビット分の情報量を備えた暗号鍵ｒを生成する（ステップＳ１６）。すなわち、共有鍵生成部３５では、先に計算しておいたＧR(L)-1（ｎ×（ｎ−ｋ）の行列）を用いて下記（１８）式により暗号鍵ｒを生成する。受信側の通信装置は、この暗号鍵ｒを送信側の通信装置との共有鍵とする。
【０１００】
ｒ＝ＧR(L)-1ｍA              …（１８）
【０１０１】
また、送信側の通信装置においては、ステップＳ１５の処理によって硬判定値ｍBの誤りが完全に訂正され、新たなシンドローム要求がない場合（ステップＳ５，Ｙｅｓ）、共有鍵生成部１５が、公開された誤り訂正情報（盗聴された可能性のある上記ｋビット分の情報：ＳA）に応じて共有情報ｍAの一部を捨てて、ｎ−ｋビット分の情報量を備えた暗号鍵ｒを生成する（ステップＳ６）。すなわち、共有鍵生成部１５でも、先に計算しておいたＧR(L)-1（ｎ×（ｎ−ｋ）の行列）を用いて上記（１８）式により暗号鍵ｒを生成する（ステップＳ６）。送信側の通信装置は、この暗号鍵ｒを受信側の通信装置との共有鍵とする。
【０１０２】
なお、本実施の形態においては、さらに、正則なランダム行列Ｒを用いて上記共有鍵を並べ替える構成としてもよい。これにより、秘匿性を増強させることができる。具体的には、まず、送信側の通信装置が、正則なランダム行列Ｒ（（ｎ−ｋ）×（ｎ−ｋ）の行列）を生成し、さらに、当該Ｒを、公開通信路を介して受信側の通信装置に通知する。なお、この処理は、受信側の通信装置で行うこととしてもよい。その後、送信側および受信側の通信装置が、先に計算しておいたＧR(L)-1（ｎ×（ｎ−ｋ）の行列）とランダム行列Ｒを用いて下記（１９）式により暗号鍵ｒを生成する。
【０１０３】
ｒ＝ＲＧR(L)-1ｍA              …（１９）
【０１０４】
一方、ステップＳ１５の処理によって硬判定値ｍBの誤りを完全に訂正できなかった場合（ステップＳ１５，ＮＧ）、受信側の通信装置のシンドローム復号部３３では、公開通信路通信部３４，公開通信路を介して送信側の通信装置にシンドローム要求を通知する（ステップＳ１７）。そして、パリティ検査行列生成部３０では、上記パリティ検査行列ＨR(1)から、符号化率Ｒ（Ｌ−１）＝（ｎ−ｋ−ｔ）／ｎのパリティ検査行列ＨR(L-1)（ｎ×（ｋ＋ｔ）行列）を抽出し（符号化率を下げる）、このパリティ検査行列ＨR(L-1)から「ＨR(L-1)ＧR(L-1)＝０」を満たす生成行列ＧR(L-1)を生成し、さらに、ＧR(L-1)-1・ＧR(L-1)＝Ｉ（単位行列）となるＧR(L-1)の逆行列ＧR(L-1)-1を生成する（ステップＳ１８）。
【０１０５】
第１７図は、パリティ検査行列ＨR(1)からパリティ検査行列ＨR(L-1)を抽出する様子を示す図である。本実施の形態では、図示のとおり、符号化率に応じた大きさのパリティ検査行列を、予め生成しておいたパリティ検査行列ＨR(1)から切り出すことによって、追加シンドローム送信時のパリティ検査行列を生成する。すなわち、符号化率に応じた最適化計算（ガウス近似法）をその都度実行することなく、符号化率に応じた大きさのパリティ検査行列を容易に生成できる。
【０１０６】
なお、符号化率の下げ幅は、システムの要求条件に依存する。たとえば、符号化率の下げ幅を小さくした場合には、誤り訂正処理の回数を増加させてしまう可能性があるが、一方で、鍵の生成率が向上する。また、符号化率の下げ幅を大きくした場合には、誤り訂正処理の回数を低減できるが、一方で、鍵の生成率が低下する。
【０１０７】
つぎに、シンドローム要求を受け取った（ステップＳ５，Ｎｏ）送信側の通信装置のパリティ検査行列生成部１０においても、同様に、上記パリティ検査行列ＨR(1)から、符号化率Ｒ（Ｌ−１）＝（ｎ−ｋ−ｔ）／ｎのパリティ検査行列ＨR(L-1)（ｎ×（ｋ＋ｔ）行列）を抽出し、このパリティ検査行列ＨR(L-1)から「ＨR(L-1)ＧR(L-1)＝０」を満たす生成行列ＧR(L-1)を生成し、さらに、ＧR(L-1)-1・ＧR(L-1)＝Ｉ（単位行列）となるＧR(L-1)の逆行列ＧR(L-1)-1を生成する（ステップＳ７）。
【０１０８】
つぎに、送信側の通信装置では、シンドローム生成部１４が、パリティ検査行列ＨR(L-1)（ｎ×（ｋ＋ｔ）の行列）と送信データｍAを用いてｔ行分のシンドロームＳA´を計算し、その結果を、公開通信路通信部１３，公開通信路を介して受信側の通信装置に通知する（ステップＳ８）。第１８図は、追加シンドロームの生成方法を示す図である。なお、この段階で、シンドロームＳA´（ｔビット分の情報）は盗聴者に知られる可能性がある。そして、受信側の通信装置では、公開通信路通信部３４にてｔ行分のシンドロームＳA´を受信し、それをシンドローム復号部３３に通知する（ステップＳ１９）。
【０１０９】
つぎに、シンドローム復号部３３では、上記既知のシンドローム復号法を用いて、確率情報付きの硬判定値ｍBの誤りを訂正し、再度、元の送信データｍAを推定する（ステップＳ１５）。
【０１１０】
以降、本実施の形態の受信側の通信装置においては、ステップＳ１５の処理により硬判定値ｍBの誤りを完全に訂正できるまで、符号化率を下げながらパリティ検査行列ＨR(1)から所望のパリティ検査行列を抽出してステップＳ１７〜Ｓ１９の処理を繰り返し実行し、誤りを完全に訂正できた段階で、共有鍵生成部３５が、公開された誤り訂正情報（たとえば、盗聴された可能性のある上記ｋ＋ｔビット分の情報：ＳA＋ＳA´（第１８図参照））に応じて共有情報ｍAの一部を捨てて、たとえば、ｎ−ｋ−ｔ，ｎ−ｋ−２ｔ，ｎ−ｋ−３ｔ，…ビット分の情報量を備えた暗号鍵ｒを生成する（ステップＳ１６）。受信側の通信装置は、この暗号鍵ｒを送信側の通信装置との共有鍵とする。
【０１１１】
また、本実施の形態の送信側の通信装置においては、新たなシンドローム要求が通知されなくなるまで、符号化率を下げながらパリティ検査行列ＨR(1)から所望のパリティ検査行列を抽出してステップＳ７，Ｓ８の処理を繰り返し実行し、新たなシンドローム要求が通知されなくなった段階で、共有鍵生成部１５が、公開された誤り訂正情報（たとえば、盗聴された可能性のある上記ｋ＋ｔビット分の情報：ＳA＋ＳA´（図７参照））に応じて共有情報ｍAの一部を捨てて、たとえば、ｎ−ｋ−ｔ，ｎ−ｋ−２ｔ，ｎ−ｋ−３ｔ，…ビット分の情報量を備えた暗号鍵ｒを生成する（ステップＳ６）。送信側の通信装置は、この暗号鍵ｒを受信側の通信装置との共有鍵とする。
【０１１２】
このように、本実施の形態においては、確定的で特性が安定した「Ｉｒｒｅｇｕｌａｒ−ＬＤＰＣ符号」用の検査行列を用いて受信データの誤りを訂正し、公開された誤り訂正情報に応じて共有情報の一部を捨てる構成とした。これにより、エラービットを特定／訂正するための膨大な回数のパリティのやりとりがなくなり、誤り訂正情報を送信するだけで誤り訂正制御が行われるため、誤り訂正処理にかかる時間を大幅に短縮できる。また、公開された情報に応じて共有情報の一部を捨てているので、高度に安全性の保証された共通鍵を生成することができる。
【０１１３】
また、本実施の形態おいては、受信データの誤りを完全に訂正できるまで、符号化率を下げながらパリティ検査行列ＨR(1)から所望のパリティ検査行列を抽出し、さらに追加のシンドロームを生成し、この追加シンドロームを用いて誤り訂正処理を繰り返し実行する構成とした。これにより、通信路の雑音レベルを見積もるために生成した共有情報を破棄する必要がなくなるので、共有鍵の生成効率を大幅に向上させることができる。
【産業上の利用可能性】
【０１１４】
以上のように、本発明にかかる量子鍵配送方法および通信装置は、高度に安全性の保証された共通鍵を生成する技術として有用であり、特に、盗聴者が存在する可能性のある伝送路上の通信に適している。
【符号の説明】
【０１１５】
１  暗号鍵生成部
２  通信部
３  暗号鍵生成部
４  通信部
１０  パリティ検査行列生成部
１１  乱数発生部
１２  光子生成部
１３  公開通信路通信部
１４  シンドローム生成部
１５  共有鍵生成部
２１  暗号化部
２２  送受信部
３０  パリティ検査行列生成部
３１  乱数発生部
３２  光子受信部
３３  シンドローム復号部
３４  公開通信路通信部
３５  共有鍵生成部
４１  送受信部
４２  暗号化部
【図１】
0004554524.tif 000017
【図２】
0004554524.tif 000018
【図３】
0004554524.tif 000019
【図４】
0004554524.tif 000020
【図５】
0004554524.tif 000021
【図６】
0004554524.tif 000022
【図７】
0004554524.tif 000023
【図８】
0004554524.tif 000024
【図９】
0004554524.tif 000025
【図１０】
0004554524.tif 000026
【図１１】
0004554524.tif 000027
【図１２】
0004554524.tif 000028
【図１３】
0004554524.tif 000029
【図１４】
0004554524.tif 000030
【図１５】
0004554524.tif 000031
【図１６】
0004554524.tif 000032
【図１７】
0004554524.tif 000033
【図１８】
0004554524.tif 000034
【図１９】
0004554524.tif 000035