(57)【要約】【課題】符号化装置と復号化装置との間での暗号鍵の共有を、少ないメモリ領域や計算時間で実現する。【解決手段】符号化装置１と復号化装置２とが公開通信路３で接続されているシステムにおいて、符号化装置１では、第１の乱数系列に第１の線形行列を乗算して暗号鍵を生成して出力し、第２の乗算器において第１の乱数系列に第２の線形行列を乗算して符号語を生成し、公開通信路３を介してその符号語を受信側に送信する。復号化装置２では、公開通信路３を介して符号語を受信し、符号化装置１での第１の乱数系列と相関を有する第２の乱数系列と受信した符号語とを用い、符号化装置１側と同じ第２の線形行列を用いた最尤復号を行って、第１の乱数系列を推定する。そして、推定された第１の乱数系列を符号化装置１側と同じ第１の線形行列に乗算して暗号鍵を生成し、その暗号鍵を出力する。【選択図】      図１
2004266479.tif 000002
【特許請求の範囲】
【請求項１】
第１の乱数系列を出力するステップと、
第１の乗算器において、第１の格納部に格納された第１の線形行列に前記第１の乱数系列を乗算して暗号鍵を生成し、該暗号鍵を出力するステップと、
第２の乗算器において、第２の格納部に格納された第２の線形行列に前記第１の乱数系列を乗算して符号語を生成し、該符号語を出力するステップと、
を有する、暗号鍵生成方法。
【請求項２】
第１の線形行列を第１の格納部に格納し、第２の線形行列を第２の格納部に格納するステップと、
第１の乱数系列と相関を有する第２の乱数系列を出力するステップと、
通信路を介して符号語を取得するステップと、
乱数系列再生装置において、前記符号語と前記第２の乱数系列を用い、前記第２の格納部に格納された前記第２の線形行列を用いた最尤復号を行って、前記第１の乱数系列を推定するステップと、
乗算器において、前記推定された第１の乱数系列を前記第１の格納部に格納された前記第１の線形行列に乗算して暗号鍵を生成し、該暗号鍵を出力するステップと、
を有する、暗号鍵生成方法。
【請求項３】
送信側において、第１の乱数系列を出力し、第１の乗算器において前記第１の乱数系列に第１の線形行列を乗算して暗号鍵を生成して出力し、第２の乗算器において前記第１の乱数系列に第２の線形行列を乗算して符号語を生成し、通信路を介して該符号語を受信側に送信し、
受信側において、前記第１の線形行列および前記第２の線形行列をそれぞれ第１の格納部および第２の格納部に格納し、前記通信路を介して前記符号語を受信し、前記第１の乱数系列と相関を有する第２の乱数系列を出力し、乱数系列再生装置において前記受信した符号語と前記第２の乱数系列とを用い前記第２の格納部に格納された前記第２の線形行列を用いた最尤復号を行って前記第１の乱数系列を推定し、乗算器において前記推定された第１の乱数系列を前記第１の格納部に格納された前記第１の線形行列に乗算して暗号鍵を生成し、該暗号鍵を出力する、
暗号鍵生成方法。
【請求項４】
第１の乱数系列を出力する乱数出力部と、第１の線形行列を格納する第１の格納部と、第２の線形行列を格納する第２の格納部と、前記第１の乱数系列と前記第１の格納部に格納された前記第１の線形行列とを乗算して暗号鍵として出力する第１の乗算器と、前記第１の乱数系列と前記第２の格納部に格納された前記第２の線形行列とを乗算して符号語として出力する第２の乗算器と、を有する暗号鍵生成装置。
【請求項５】
第１の乱数系列に相関を有する第２の乱数系列を出力する乱数出力部と、第１の線形行列を格納する第１の格納部と、第２の線形行列を格納する第２の格納部と、通信路を介して符号語を受信する符号語受信部と、受信した前記符号語と前記第２の乱数系列とを用い前記第２の格納部に格納された前記第２の線形行列を用いた最尤復号を行って前記第１の乱数系列を推定する乱数系列再生装置と、前記推定された第１の乱数系列を前記第１の格納部に格納された前記第１の線形行列に乗算して暗号鍵として出力する乗算器と、を有する暗号鍵生成装置。
【請求項６】
符号化装置と、復号化装置と、前記符号化装置と前記復号化装置とを接続する公開通信路と、を有する符号化システムで用いられる暗号鍵生成装置であって、
前記符号化装置内に、第１の乱数系列を出力する第１の乱数出力部と、第１の線形行列を格納する第１の格納部と、第２の線形行列を格納する第２の格納部と、前記第１の乱数系列と前記第１の格納部に格納された前記第１の線形行列とを乗算して暗号鍵として出力する第１の乗算器と、前記第１の乱数系列と前記第２の格納部に格納された前記第２の線形行列とを乗算して符号語として出力する第２の乗算器と、該符号語を前記公開通信路を介して前記復号化装置に送信する符号語出力部と、を有し、
前記復号化装置内に、前記第１の乱数系列に相関を有する第２の乱数系列を出力する第２の乱数出力部と、前記第１の線形行列を格納する第３の格納部と、前記第２の線形行列を格納する第４の格納部と、前記公開通信路を介して符号語を受信する符号語受信部と、受信した前記符号語と前記第２の乱数系列とを用い前記第４の格納部に格納された前記第２の線形行列を用いた最尤復号を行って前記第１の乱数系列を推定する乱数系列再生装置と、前記推定された第１の乱数系列を前記第３の格納部に格納された前記第１の線形行列に乗算して暗号鍵として出力する第３の乗算器と、を有する、暗号鍵生成装置。
【請求項７】
コンピュータを、
第１の乱数系列を出力する乱数出力部手段と、
第１の線形行列を格納する第１の格納手段と、
第２の線形行列を格納する第２の格納手段と、
前記第１の乱数系列と前記第１の格納手段に格納された前記第１の線形行列とを乗算して暗号鍵として出力する第１の乗算手段と、
前記第１の乱数系列と前記第２の格納手段に格納された前記第２の線形行列とを乗算して符号語として出力する第２の乗算手段と、
として機能させるためのプログラム。
【請求項８】
コンピュータを、
第１の乱数系列に相関を有する第２の乱数系列を出力する乱数出力手段と、
第１の線形行列を格納する第１の格納手段と、
第２の線形行列を格納する第２の格納手段と、
通信路を介して符号語を受信する符号語受信手段と、
受信した前記符号語と前記第２の乱数系列とを用い前記第２の格納手段に格納された前記第２の線形行列を用いた最尤復号を行って前記第１の乱数系列を推定する乱数系列再生手段と、
前記推定された第１の乱数系列を前記第１の格納手段に格納された前記第１の線形行列に乗算して暗号鍵として出力する乗算手段と、
として機能させるためのプログラム。
【請求項９】
コンピュータが読取り可能な記録媒体であって、請求項７または８に記載のプログラムを格納した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、与えられた品質基準と通信内容の秘匿性とを保証する符号化を構成する方法及び装置に関し、特に、通信内容の秘匿のために、符号化装置と復号化装置の双方において同一の暗号鍵を生成するための方法及び装置に関する。
【０００２】
【従来の技術】
送信者と受信者の間で通信されるメッセージが第三者に盗聴されないようにするために、各種の暗号化通信方法が提案されている。これらの暗号化通信方法のうち、特に共有鍵方法と呼ばれる手法では、送信者が暗号鍵を用いてメッセージを暗号化し、受信者は同じ暗号鍵を用いてメッセージを復号化する。したがって、送信者と受信者とが、第三者に知られないようにして、どのようにしてその暗号鍵を共有できるようにするかが課題となっている。このような暗号鍵の共有を実現するために、いくつかの方法が提案されている。
【０００３】
以下、暗号鍵の共有のための従来の手法について説明する。ここでは、暗号鍵を共有するためのシステムとしての、ＡｈｌｓｗｅｄｅとＣｓｉｓｚａａｒ（非特許文献１）による従来の符号化システムを詳しく説明する。
【０００４】
図１は符号化システムの構成を示すブロック図である。この符号化システムは、符号化装置１と復号化装置２とが対になって設けられたものであって、符号化装置１では暗号鍵とともに符号語を生成し、復号化装置２は、公開通信路３を介して符号語を受け取ってこの符号語を処理することにより、符号化装置１で生成した暗号鍵と同一の暗号鍵を生成する。符号化装置１から復号化装置２へは符号語のみが送られるので、盗聴者（悪意の第三者）４が公開通信路３上でこの符号語を入手したとしてもそれだけでは暗号鍵を生成できなければ、ここでの目的は達成されたことになる。
【０００５】
ここで、符号化装置と盗聴者は、確率分布ＰＸＹＺをあらかじめ知っていることとする。この確率分布ＰＸＹＺに対して、周辺分布を以下のように与える。
【０００６】
【数１】
2004266479.tif 000003
【０００７】
ここでΣは、記号下にある変数がとりうる全ての値に関する和である。長さｎの系列
【０００８】
【外１】
2004266479.tif 000004
【０００９】
に対して、確率
【００１０】
【外２】
2004266479.tif 000005
【００１１】
は、出現シンボルの確率値の積で定義される。
【００１２】
続いて、エントロピーＨ（Ｘ），Ｈ（Ｙ），Ｈ（Ｘ｜Ｙ），Ｈ（Ｘ｜Ｚ）を次のように定義する。
【００１３】
【数２】
2004266479.tif 000006
【００１４】
今、Ｈ（Ｘ｜Ｚ）−Ｈ（Ｘ｜Ｙ）＞０を満たす結合確率分布ＰＸＹＺにしたがう長さｎの乱数系列
【００１５】
【外３】
2004266479.tif 000007
【００１６】
があり、符号化装置は乱数系列
【００１７】
【外４】
2004266479.tif 000008
【００１８】
が入手可能であり、復号化装置は乱数系列
【００１９】
【外５】
2004266479.tif 000009
【００２０】
が入手可能であり、盗聴者は乱数系列
【００２１】
【外６】
2004266479.tif 000010
【００２２】
が入手可能であることを仮定する。
【００２３】
ε＞０に対して、集合ＳＸ，εを次のように定義する。
【００２４】
【数３】
2004266479.tif 000011
【００２５】
そして、Ｎ≡ｅｘｐ（ｎ［Ｈ（Ｘ｜Ｙ）＋２ε］），Ｍ≡ｅｘｐ（ｎ［Ｈ（Ｘ｜Ｚ）−Ｈ（Ｘ｜Ｙ）＋２ε］）とする。
【００２６】
最初に、任意のｉ∈｛１，．．．，Ｎ｝に対して、｜Ｂ−１（ｉ）｜≧ｅｘｐ（ｎ［Ｈ（Ｘ）−２ε］）／Ｎを満たすような写像Ｂ：ＳＸ，ε→｛１，．．．，Ｎ｝を用意する。ここで、Ｂ−１は逆写像を表し、｜・｜は集合の個数を表わす。続いて、任意のｉ∈｛１，．．．，Ｎ｝，ｊ∈｛１，．．．，Ｍ｝に対して、
【００２７】
【数４】
2004266479.tif 000012
【００２８】
を満たすようなＣｉ：Ｂ−１（ｉ）→｛１，．．．，Ｍ｝を各ｉ∈｛１，．．．，Ｎ｝について用意する。さらに写像
【００２９】
【外７】
2004266479.tif 000013
【００３０】
は後述の性質を持っていると仮定する。
【００３１】
図２は、符号化装置１での処理を示している。ステップ１０１において乱数系列
【００３２】
【外８】
2004266479.tif 000014
【００３３】
が与えられたとして、ステップ１０２において、この乱数系列に対して、
【００３４】
【数５】
2004266479.tif 000015
【００３５】
が成り立つかどうかが判断される。成り立たない場合には、ステップ１０７に進んでエラーとする。これに対しステップ１０２において上記式が成り立っていれば、ステップ１０３において
【００３６】
【数６】
2004266479.tif 000016
【００３７】
を計算し、このｉをステップ１０４において符号語として復号化装置に送信するとともに、ステップ１０５において
【００３８】
【数７】
2004266479.tif 000017
【００３９】
を計算し、このｊをステップ１０６において暗号鍵とする。
【００４０】
図３は、復号化装置２での処理を示している。復号化装置では、ステップ２０１において、乱数系列
【００４１】
【外９】
2004266479.tif 000018
【００４２】
が与えられる。ここで、復号化装置は、確率分布ＰＸＹをあらかじめ知っているので、写像
【００４３】
【外１０】
2004266479.tif 000019
【００４４】
を用意できると仮定してもよい。さらに、集合
【００４５】
【外１１】
2004266479.tif 000020
【００４６】
を次のように定義する。
【００４７】
【数８】
2004266479.tif 000021
【００４８】
そして、ステップ２０２において、
【００４９】
【数９】
2004266479.tif 000022
【００５０】
が唯一の元
【００５１】
【外１２】
2004266479.tif 000023
【００５２】
を持つかどうかを判断し、唯一の元を持たない場合には、ステップ２０６に進んでエラーとする。これに対してステップ２０２において唯一の元を持つ場合には、ステップ２０４に進む。符号化装置２は、ステップ２０３において、符号化装置１から公開通信路３を介して符号語ｉを受け取っており、ステップ２０４では、ステップ２０２での唯一の元である
【００５３】
【外１３】
2004266479.tif 000024
【００５４】
と符号語ｉとから
【００５５】
【数１０】
2004266479.tif 000025
【００５６】
を計算し、得られたｊをステップ２０５において暗号鍵としている。
【００５７】
このように、この符号化システムにおいては、符号化装置で生成した符号語を復号化装置に送信することにより、符号化装置と復号化装置の両方で同一の暗号鍵が得られるようにしている。
【００５８】
このような鍵共有法に関して、次の性質が知られている。
【００５９】
［性質１］  盗聴者は、乱数の確率分布ＰＸＹＺ、乱数系列
【００６０】
【外１４】
2004266479.tif 000026
【００６１】
、写像
【００６２】
【外１５】
2004266479.tif 000027
【００６３】
、符号化装置が送信した符号語ｉを入手できると仮定する。そのとき、十分大きなｎをとり、符号化装置と復号化装置が同じ鍵（暗号鍵）を共有する確率は１に近くなり、かつ、盗聴者が鍵に関して知りうる情報量が０に近くなるような写像
【００６４】
【外１６】
2004266479.tif 000028
【００６５】
をうまくとることができる。
【００６６】
したがってこの符号化システムでは、写像
【００６７】
【外１７】
2004266479.tif 000029
【００６８】
を適切に設定することによって、符号化装置から復号化装置に符号語ｉを送信することで、符号化装置と復号化装置との間で同じ暗号鍵をセキュアに共有することができる。
【００６９】
【非特許文献１】Ｒ．  Ａｈｌｓｗｅｄｅ  ａｎｄ  Ｉ．  Ｃｓｉｓｚａｒ，  ”Ｃｏｍｍｏｎ  ｒａｎｄｏｍｎｅｓｓ  ｉｎ  ｉｎｆｏｒｍａｔｉｏｎ  ｔｈｅｏｒｙ  ａｎｄ  ｃｒｙｐｔｏｇｒａｐｈｙ  −  ｐａｒｔ  Ｉ：  ｓｅｃｒｅｔ  ｓｈａｒｉｎｇ，”  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｈｅｏｒｙ，  ｖｏｌ．  ３９，  ｐｐ．  １１２１−１１３２，  １９９３．
【非特許文献２】Ｂ．  Ｊ．  Ｆｒｅｙ，  Ｇｒａｐｈｉｃａｌ  ｍｏｄｅｌｓ  ｆｏｒ  ｍａｃｈｉｎｅ  ｌｅａｒｎｉｎｇ  ａｎｄ  ｄｉｇｉｔａｌ  ｃｏｍｍｕｎｉｃａｔｉｏｎ，  ＭＩＴ  Ｐｒｅｓｓ，  １９９８．
【非特許文献３】Ｓ．  Ｌｉｔｓｙｎ，  Ｖ．  Ｓｈｅｖｅｌｅｖ，  ”Ｏｎ  ｅｎｓｅｍｂｌｅｓ  ｏｆ  ｌｏｗ−ｄｅｎｓｉｔｙ  ｐａｒｉｔｙ−ｃｈｅｃｋ  ｃｏｄｅｓ：  ａｓｙｍｐｔｏｔｉｃ  ｄｉｓｔａｎｃｅ  ｄｉｓｔｒｉｂｕｔｉｏｎｓ，”  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｈｅｏｒｙ，  ｖｏｌ．  ４８，  ｐｐ．  ８８７−９０８，  ２００２．
【００７０】
【発明が解決しようとする課題】
しかしながら、上述した従来の符号化システムでは、符号化装置および復号化装置のそれぞれにおいて、写像
【００７１】
【外１８】
2004266479.tif 000030
【００７２】
を格納しあるいは計算するために、ｎに対して指数オーダーで増加するメモリ領域もしくは計算時間を必要とする。すなわち、暗号鍵をより安全に共有しようとすれば、ｎが大きくなるので、そのために必要な計算機資源が膨大なものとなって、現実的な実装が難しくなる、という問題点がある。
【００７３】
そこで本発明の目的は、メモリ領域あるいは計算時間を削減しつつ、暗号鍵をより安全に共有することができる暗号鍵生成方法及び装置を提供することにある。
【００７４】
【課題を解決するための手段】
本発明の第１の暗号鍵生成方法は、第１の乱数系列を出力するステップと、第１の乗算器において、第１の格納部に格納された第１の線形行列に第１の乱数系列を乗算して暗号鍵を生成し、その暗号鍵を出力するステップと、第２の乗算器において、第２の格納部に格納された第２の線形行列に第１の乱数系列を乗算して符号語を生成し、その符号語を出力するステップと、を有する。
【００７５】
本発明の第２の暗号鍵生成方法は、第１の線形行列を第１の格納部に格納し、第２の線形行列を第２の格納部に格納するステップと、第１の乱数系列と相関を有する第２の乱数系列を出力するステップと、通信路を介して符号語を取得するステップと、乱数系列再生装置において、符号語と第２の乱数系列を用い、第２の格納部に格納された第２の線形行列を用いた最尤復号を行って、第１の乱数系列を推定するステップと、乗算器において、推定された第１の乱数系列を第１の格納部に格納された第１の線形行列に乗算して暗号鍵を生成し、その暗号鍵を出力するステップと、を有する。第２の暗号鍵生成方法は、第１の暗号鍵生成方法で生成した暗号鍵と同じ暗号鍵を共有するのに適した方法であり、暗号鍵を共有する場合、第２の暗号鍵生成方法で受信する符号語は第１の暗号鍵生成方法で生成した符号語とし、また第１の乱数系列、第１の線形行列、第２の線形行列については、第１の暗号鍵生成方法と第２の暗号鍵生成方法とでそれぞれ同じものを指すものとする。
【００７６】
同様に、本発明の第１の暗号鍵生成装置は、第１の乱数系列を出力する乱数出力部と、第１の線形行列を格納する第１の格納部と、第２の線形行列を格納する第２の格納部と、第１の乱数系列と第１の格納部に格納された第１の線形行列とを乗算して暗号鍵として出力する第１の乗算器と、第１の乱数系列と第２の格納部に格納された第２の線形行列とを乗算して符号語として出力する第２の乗算器と、を有する。また本発明の第２の暗号鍵生成装置は、第１の乱数系列に相関を有する第２の乱数系列を出力する乱数出力部と、第１の線形行列を格納する第１の格納部と、第２の線形行列を格納する第２の格納部と、通信路を介して符号語を受信する符号語受信部と、受信した符号語と第２の乱数系列とを用い第２の格納部に格納された第２の線形行列を用いた最尤復号を行って第１の乱数系列を推定する乱数系列再生装置と、推定された第１の乱数系列を第１の格納部に格納された第１の線形行列に乗算して暗号鍵として出力する乗算器と、を有する。
【００７７】
本発明では、２つの線形行列を用いて計算を行うことにより、暗号鍵の生成や共有に必要なメモリ領域もしくは計算時間を削減することができる。
【００７８】
【発明の実施の形態】
次に、本発明の好ましい実施の形態について図面を参照して説明する。
【００７９】
この実施形態では、上述した図１に示したように、符号化装置１と復号化装置２とが公開通信路３を介して接続して符号化システムを構成している。そして、符号化装置１と復号化装置２とで同じ暗号鍵を共有できるようにするために、符号化装置１は暗号鍵と符号語を生成して符号語を復号化装置２に送信し、復号化装置２は、公開通信路３を介して受信した符号語に基づいて暗号鍵を生成する。なお、盗聴者４は公開通信路３上の符号語を入手できるものとする。
【００８０】
符号化装置１は、図４に示すように、２つの乗算器３１、３２と、線形行列Ｋを格納する線形行列格納部３３と、線形行列Ａを格納する線形行列格納部３４と、乱数系列を出力する乱数出力部３５と、乗算器３１の出力を暗号鍵として出力する暗号鍵出力部３６と、乗算器３１の出力を符号語として出力し復号化装置２に向けて送信する符号語出力部３７と、を備えている。乗算器３１は、乱数系列出力部３５からの乱数系列と線形行列格納部３３に格納されている線形行列Ｋとの積を与え、乗算器３２は、乗算器３１に与えられた乱数系列と同一の乱数系列と線形行列格納部３４に格納されている線形行列Ａとの積を与える。
【００８１】
復号化装置２は、図５に示すように、符号化装置１で使用された乱数系列を推定するための乱数系列再生装置４１と、乗算器４２と、符号化装置１の線形行列格納部３３に格納されたものと同じ線形行列Ｋを格納する線形行列格納部４３と，符号化装置１の線形行列格納部３４に格納されたものと同じ線形行列Ａを格納する線形行列格納部４４と、符号化装置１からの符号語を受信する符号語受信部４５と、この復号化装置２での乱数系列を出力する乱数系列出力部４６と、乗算器４２の出力を暗号鍵として出力する暗号鍵出力部４７と、を備えている。後述するように復号化装置２の乱数系列出力部４６は、符号化装置１の乱数系列出力部３５が出力する乱数系列と相関のある乱数系列を出力する。乱数系列再生装置４１は、符号語受信部４５で受信した符号語と、乱数系列出力部４６からの乱数系列と、線形行列格納部４４に格納された線形行列Ｋとによって、符号化装置１で用いた乱数系列を推定し、推定した乱数系列を乗算器４２に供給する。乗算器４２は、推定された乱数系列と線形行列格納部４３に格納された線形行列Ｋとの積を与える。
【００８２】
以下、この実施の形態の動作を詳しく説明する。
【００８３】
今、Ｈ（Ｘ｜Ｚ）−Ｈ（Ｘ｜Ｙ）＞０を満たす結合確率分布ＰＸＹＺに従う長さｎの乱数系列
【００８４】
【外１９】
2004266479.tif 000031
【００８５】
があり、符号化装置１は、乱数系列
【００８６】
【外２０】
2004266479.tif 000032
【００８７】
が入手可能であって、その乱数系列を乱数系列出力部３５から出力可能であり、復号化装置２は、乱数系列
【００８８】
【外２１】
2004266479.tif 000033
【００８９】
が入手可能であって、その乱数系列を乱数系列出力部４６から出力可能であり、盗聴者４は、乱数系列
【００９０】
【外２２】
2004266479.tif 000034
【００９１】
が入手可能であると仮定する。
【００９２】
上述した従来の技術と同じように、周辺分布
【００９３】
【外２３】
2004266479.tif 000035
【００９４】
とエントロピーＨ（Ｘ），Ｈ（Ｙ），Ｈ（Ｘ｜Ｙ），Ｈ（Ｘ｜Ｚ）を定義する。
【００９５】
次に、本実施の形態における線形行列Ｋ，Ａの構成を説明する。乱数系列
【００９６】
【外２４】
2004266479.tif 000036
【００９７】
は、各々、ｎ次元の列ベクトルで表現されているものとする。
【００９８】
ｎＲＫ×ｎ（行数ｎＲＫ、列数ｎ）の２−値行列を線形行列Ｋとし、ｎＲＡ×ｎの２値行列を線形行列Ａとする。行列の構成法は次の２通りがあり、いずれの場合も、行列Ａ、Ｋを独立に構成する。なお、Ｋは特許請求の範囲における第１の線形行列に対応し、Ａは第２の線形行列に対応している。
【００９９】
第１の方法では、行列の各成分を等確率分布
【０１００】
【外２５】
2004266479.tif 000037
【０１０１】
でランダムに割り当てる。
【０１０２】
第２の方法は、非特許文献３に記載された方法であって、
【０１０３】
【数１１】
2004266479.tif 000038
【０１０４】
を仮定し、列重みをｔとして、大きさｎＲ×ｎの２−値行列Ｍを次のように構成する。
ステップ１：Ｍの成分を全て０で初期化する。
ステップ２：各列に対して、１≦ｋ≦ｎＲを等確率でランダムに選び、ｋ番目の行の値を反転させる。
ステップ３：ステップ２を各列でｔ回ずつ行う。
【０１０５】
このようにして得られた線形行列Ｋは、あらかじめ、符号化装置１の線形行列格納部３３と復号化装置２の線形行列格納部４３に格納され、同様に、線形行列Ａは、符号化装置１の線形行列格納部３４と復号化装置２の線形行列格納部４４に格納される。
【０１０６】
次に、符号化装置１での動作を説明する。上述したように符号化装置１の得る乱数系列を
【０１０７】
【外２６】
2004266479.tif 000039
【０１０８】
とすると、符号化装置１では、乱数系列出力部３５がこの乱数系列を出力し、乗算器３２がこの乱数系列と線形行列Ａとの積
【０１０９】
【外２７】
2004266479.tif 000040
【０１１０】
を計算し、この積は、符号語として、符号語出力部３７から公開通信路３を介して復号化装置２に送られる。同時に、乗算器３１は、この乱数系列と線形行列Ｋとの積
【０１１１】
【外２８】
2004266479.tif 000041
【０１１２】
を暗号鍵として生成する。すなわち、符号化写像φＫ，φＡが、次のように定義すされたことになる。
【０１１３】
【数１２】
2004266479.tif 000042
【０１１４】
次に、復号化装置２での動作を説明する。上述したように復号化装置２の得る乱数を
【０１１５】
【外２９】
2004266479.tif 000043
【０１１６】
とすると、乱数系列出力部４６がこの乱数系列を乱数系列発生装置４１に供給し、また、復号化装置が受け取った符号語を
【０１１７】
【数１３】
2004266479.tif 000044
【０１１８】
とすると、符号語受信部４５がこの符号語を乱数系列発生装置４１に供給する。
【０１１９】
乱数系列発生装置４１は、これらの乱数系列及び符号語を用いて、線形行列Ａを用いた最尤復号を行うことにより、符号化装置１で用いた乱数系列を推定する。すなわち、復号化写像ψＡを次のように定義する。
【０１２０】
【数１４】
2004266479.tif 000045
【０１２１】
ここで、ＰＸＹは、（Ｘ，Ｙ）の分布に対応するＰＸＹＺの周辺分布である。続いて、乗算器４２が、復元された符号化装置１の乱数系列
【０１２２】
【外３０】
2004266479.tif 000046
【０１２３】
と線形行列Ｋを用いて、
【０１２４】
【数１５】
2004266479.tif 000047
【０１２５】
を暗号鍵として生成する。
【０１２６】
【数１６】
2004266479.tif 000048
【０１２７】
が成り立つとき、すなわち乱数系列発生装置４１での乱数系列の推定が正しく行えたときに、符号化装置１と復号化装置２の間で同一の鍵（暗号鍵）を共有できることになる。
【０１２８】
以下、この符号化システムにおける符号の性能について説明する。
【０１２９】
送信者（符号化装置１）は乱数系列
【０１３０】
【外３１】
2004266479.tif 000049
【０１３１】
を入手可能であり、受信者（復号化装置２）は乱数系列
【０１３２】
【外３２】
2004266479.tif 000050
【０１３３】
を入手可能であり、盗聴者４は乱数の確率分布ＰＸＹＺ、乱数系列
【０１３４】
【外３３】
2004266479.tif 000051
【０１３５】
および上述した線形行列Ａ，Ｋと、符号化装置１が送信した符号語
【０１３６】
【外３４】
2004266479.tif 000052
【０１３７】
を入手できると仮定する。
【０１３８】
ここで、次の性質が成り立つ。
【０１３９】
［性質２］  乱数系列
【０１４０】
【外３５】
2004266479.tif 000053
【０１４１】
が定常無記憶情報源の確率分布ＰＸＹＺで発生していると仮定する。行列構成法が上記の第１の方法、第２の方法のいずれの場合であっても、線形行列Ａ，Ｋをうまくとることができて、それは、ＲＡ≧Ｈ（Ｘ｜Ｙ），ＲＫ≦Ｈ（Ｘ｜Ｚ）−ＲＡを満たす任意の確率分布に対して、ｎの増大に伴って符号化装置１と復号化装置２が同じ鍵を共有する確率を１に近づかせ、かつ、盗聴者４が鍵に関して知りうる情報量を０に近づかせる。なお、このようにｎの増大に伴って符号化装置１と復号化装置２が同じ鍵を共有する確率を１に近づかせ、かつ、盗聴者４が鍵に関して知りうる情報量を０に近づかせるような線形行列Ｋ，Ａを試行錯誤によらずに求める方法は知られていないから、上述した第１の方法あるいは第２の方法などで線形行列を生成したのち、コンピュータシミュレーションなどを行って線形行列を評価し、秘匿性の確保の観点から決めた基準を満足した線形行列を選別して、上述した線形行列Ｋ，Ａとして用いればよい。
【０１４２】
以上説明したように本実施形態によれば、従来の符号化システムにおける写像
【０１４３】
【外３６】
2004266479.tif 000054
【０１４４】
を計算する必要がないので、より少ないメモリ領域や計算時間で暗号鍵共有システムを実現できるようになる。
【０１４５】
以上、本発明の好ましい実施形態を説明したが、本発明は上述の実施形態に限定されるものではない。以下、本発明の応用や拡張に関する例を説明する。
【０１４６】
《例１》
確率分布ＰＸＹＺが既知であり、線形行列Ａ，Ｋの決定の際にＰＸＹＺが利用可能であるときには、乱数の確率分布ＰＸＹＺを定常確率過程まで拡張できる。
【０１４７】
ここで、定常確率仮定とは任意のｎ，ｉに対して
ＰＸＹＺ（ｘｉ＋１，  ｘｉ＋２，．．．，ｘｉ＋ｎ）＝ＰＸＹＺ（ｘ１，  ｘ２，．．．，ｘｎ）
を満たしている確率分布ＰＸＹＺを指す。
【０１４８】
長さｎの系列
【０１４９】
【外３７】
2004266479.tif 000055
【０１５０】
に対する確率分布ＰＸＹＺに対して、周辺分布を以下のように与える。
【０１５１】
【数１７】
2004266479.tif 000056
【０１５２】
ここでΣは、記号下にある変数がとりうる全ての値に関する和である。
【０１５３】
続いて、エントロピーＨ（Ｘ），Ｈ（Ｙ），Ｈ（Ｘ｜Ｙ），Ｈ（Ｘ｜Ｚ）を次のように定義する。
【０１５４】
【数１８】
2004266479.tif 000057
【０１５５】
このとき、次の性質が成り立つ。
［性質３］  乱数系列
【０１５６】
【外３８】
2004266479.tif 000058
【０１５７】
が定常情報源の確率分布ＰＸＹＺで発生していると仮定し、ＲＡ≧Ｈ（Ｘ｜Ｙ），ＲＫ＝Ｈ（Ｘ｜Ｚ）−ＲＡとする。行列構成法が上述の第１の方法、第２の方法のいずれであっても、ｎの増大に伴って、符号化装置１と復号化装置２が同じ鍵を共有する確率は１に近づき、かつ、盗聴者４が鍵に関して知りうる情報量は０に近づくような線形行列Ａ，Ｋをうまくとることができる。
【０１５８】
《例２》
復号化装置２において、推定された乱数系列
【０１５９】
【外３９】
2004266479.tif 000059
【０１６０】
の計算が困難な時には、近似的に以下で定義される
【０１６１】
【外４０】
2004266479.tif 000060
【０１６２】
を、その推定された乱数行列の代わりに用いることもできる。
【０１６３】
【数１９】
2004266479.tif 000061
【０１６４】
ここで、
【０１６５】
【数２０】
2004266479.tif 000062
【０１６６】
（ｔは転置ベクトルを表わす）とすると、
【０１６７】
【外４１】
2004266479.tif 000063
【０１６８】
は
【０１６９】
【外４２】
2004266479.tif 000064
【０１７０】
を条件とするＸｉの条件付確率である。
【０１７１】
【外４３】
2004266479.tif 000065
【０１７２】
は
【０１７３】
【外４４】
2004266479.tif 000066
【０１７４】
の成分ごとにもっとも確率の高いシンボルを求め、それらを結合することによって得られる系列である。これは確率伝播アルゴリズム（非特許文献３）を用いて計算できる。
【０１７５】
《例３》
以下のようにアルゴリズムを改善することにより、より大きな鍵を入手できる。あらかじめ、Ｔ，Ｕを与え、符号化装置がＸを利用してＴ，Ｕに従う乱数を生成し、Ｕの出力を公開通信路３を通して復号化装置に送る。このとき、符号化装置１、復号化装置２、盗聴者４がそれぞれ乱数Ｔ（Ｙ，Ｕ），（Ｚ，Ｕ）を利用できる状況を考えれば、上述の実施形態のアルゴリズムを（Ｔ，（Ｙ，Ｕ），（Ｚ，Ｕ））に対して適用することにより、より大きな鍵の共有が可能である。
【０１７６】
《例４》
また、本発明では、線形行列Ａ，Ｋの代わりに畳み込み符号やターボ符号（非特許文献２）を用いても、同様の効果が得られることが期待される。
【０１７７】
以上、本発明の実施形態について説明したが、上述の各実施形態において、符号化装置および復号化装置は、いずれも、一般には、コンピュータおよびその上で動作するソフトウェアによって実現されるものである。すなわち、上述した符号化装置あるいは復号化装置を実現するためのプログラムを、コンピュータに読込ませ、そのプログラムを実行させることによって、上述した符号化装置あるいは復号化装置が実現され、また本発明の上述した暗号鍵生成方法が実行される。これらのプログラムは、磁気テープやＣＤ−ＲＯＭなどの記録媒体によって、あるいはネットワークを介して、コンピュータに読込まれるものである。
【０１７８】
【発明の効果】
以上説明したように本発明は、従来のシステムでは実現できなかった、より少ないメモリ領域や計算時間で暗号鍵を共有することができるようになる、という効果を有する。
【図面の簡単な説明】
【図１】符号化システムの構成を示すブロック図である。
【図２】従来の符号化装置での処理を説明する図である。
【図３】従来の復号化装置での処理を説明する図である。
【図４】本発明の好ましい実施形態での符号化装置の構成を示すブロック図である。
【図５】本発明の好ましい実施形態での復号化装置の構成を示すブロック図である。
【符号の説明】
１    符号化装置
２    復号化装置
３    公開通信路
４    盗聴者
３１，３２，４２    乗算器
３３，３４，４３，４４    線形行列格納部
３５，４６    乱数系列出力部
３６，４７    暗号鍵出力部
３７    符号語出力部
４１    乱数系列再生装置
４５    符号語受信部
【図１】
2004266479.tif 000067
【図２】
2004266479.tif 000068
【図３】
2004266479.tif 000069
【図４】
2004266479.tif 000070
【図５】
2004266479.tif 000071