(57)【要約】【課題】Diffie-Hellmanの鍵共有方式やIEEE P1363に規定された鍵共有方式では、常に秘密鍵ａ，ｂを乱数にて生成して、通信の度に新たな公開鍵の交換を行うため通信量が増大し、中間者攻撃を防止するために、相互に認証情報として公開鍵の署名を送信して公開鍵が真正であることを確認すると、ますます通信量が増大しネットワークに与える負荷が増大してしまうという問題が生じる。【解決手段】  第１の通信装置側は、乱数から秘密鍵ｒを生成し、前記秘密鍵ｒから公開鍵Ｒを生成し、前記公開鍵Ｒを通信回線を介して第２の通信装置に公開し、第２の通信装置の公開鍵Ｂと自身の秘密鍵ｒとを用いて共有値ｔを算出するものであり、第２の通信装置側は、第１の通信装置の公開鍵Ｒと自身の秘密鍵ｂとを用いて共有値ｔを算出するものであり、前記共有値ｔの全て若しくはその一部を共通鍵Ｋとすることを特徴とするものである。【選択図】図１
2006140743.tif 000002
【特許請求の範囲】
【請求項１】
第１の通信装置側から、秘密鍵ｂを保持し該秘密鍵ｂに対応する公開鍵Ｂを公開している第２の通信装置に対して、共通鍵暗号通信を行うための共通鍵を通信回線を介して配送する方法であって、
第１の通信装置側は、
乱数生成装置より得られた乱数から秘密鍵ｒを生成し保持する工程と、
公開鍵生成装置により前記秘密鍵ｒから公開鍵Ｒを生成する工程と、
前記公開鍵Ｒを通信回線を介して第２の通信装置に公開する工程と、
第２の通信装置の公開鍵Ｂと自身の秘密鍵ｒとを用いて共有値ｔを算出する工程とを備え、
第２の通信装置側は、
第１の通信装置の公開鍵Ｒと自身の秘密鍵ｂとを用いて共有値ｔを算出する工程を備え、
双方の通信装置に於いて、前記共有値ｔの全て若しくはその一部を共通鍵Ｋとすることを特徴とする共通鍵配送方法。
【請求項２】
秘密鍵ａを保持し該秘密鍵ａに対応する公開鍵Ａを公開している第１の通信装置から、秘密鍵ｂを保持し該秘密鍵ｂに対応する公開鍵Ｂを公開している第２の通信装置に対して、共通鍵暗号通信を行うための共通鍵を配送する方法であって、
第１の通信装置側は、
乱数生成装置より得られた乱数から仮の秘密鍵ｒを生成し保持する工程と、
公開鍵生成装置により前記仮の秘密鍵ｒから仮の公開鍵Ｒを生成する工程と、
前記秘密鍵ａを用いて仮の公開鍵Ｒの署名Ｓｉｇｎ（Ｒ，ａ）を生成する工程と
前記仮の公開鍵Ｒを通信回線を介して第２の通信装置に公開する工程と、
前記仮の公開鍵Ｒを通信回線を介して第２の通信装置に送信する工程と
第２の通信装置の公開鍵Ｂと自身の仮の秘密鍵ｒとを用いて共有値ｔを算出する工程とを備え、
第２の通信装置側は、
第１の通信装置の仮の公開鍵Ｒを仮の公開鍵の署名Ｓｉｇｎ（Ｒ，ａ）と公開鍵Ａによって検証する工程と、
第１の通信装置の仮の公開鍵Ｒと自身の秘密鍵ｂとを用いて共有値ｔを算出する工程を備え、
双方の通信装置に於いて、前記共有値ｔの全て若しくはその一部を共通鍵Ｋとすることを特徴とする共通鍵配送方法。
【請求項３】
第１の通信装置側では前記乱数の生成をデータ送信の度に行い、共通鍵Ｋを更新した上でデータを暗号通信することによりセキュリティ強度を高めたことを特徴とする請求項１又は２に記載の共通鍵配送方法。
【請求項４】
双方の通信装置に於いて、前記共有値ｔの全て若しくはその一部を仮の共通鍵ｋとし、
一方の通信装置側では、
任意に生成した共通鍵Ｋ´を前記仮の共通鍵ｋを用いて暗号化する工程と
共通鍵ｋを暗号化した値Ｃを相手方に送信する工程を備え、
他方の通信装置側では、
相手方より受け取った共通鍵を暗号化した値Ｃを前記仮の共通鍵ｋを用いて復号化して共通鍵Ｋ´を得る工程を備えていることを特徴とする請求項１又は２に記載の共通鍵配送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、秘密鍵を共有した共通鍵暗号方式に於ける共通鍵の配送方法に関するものである。
【背景技術】
【０００２】
通信装置の間で秘密情報の通信を安全に行うため、暗号通信が一般的に用いられている。暗号の方法には、共通鍵暗号化方式と公開鍵暗号化方式とがある。共通鍵暗号化方式は、暗号通信を行う通信装置の間で共通の鍵を用いる方式で、例えばデータ暗号化規格のＤＥＳ暗号がある。公開鍵暗号化方式は、秘密鍵と公開鍵の２つの鍵を用いる方式で、例えばＲＡＳ暗号が知られている。
【０００３】
共通鍵暗号化方式では、共通鍵を暗号通信を行う通信装置間で共有するため配送することが必要である。原始的には通信装置の管理者が対面して共通鍵を交換したり、通信回線とは別の郵送などの第三者による傍受の困難な別ルートを用いて共通鍵を交換していた。しかし、こうした原始的な共通鍵の配送方法は非効率的であり、ネットワーク通信を実現する上では実用性に乏しいと云わざるを得ない。
これに対し、通信回線を介して共通鍵を配送する様々な手法が提案されている。例えば、Diffie-Hellmanの鍵共有方式("New directions in cryptography",W.Diffie and M.E.Hellman,IEEE Transactions on Information Theory,IT-22:644-654,1976) ）が有名である。
【０００４】
図４はDiffie-Hellmanの鍵共有方式を説明するための概念図である。
端末Ｔαと端末Ｔβの間で鍵を共有する場合、次のようにして鍵を共有する。まず、大きな素数Ｐと任意数γを２者間で共有しておく。
一方、端末Ｔαと端末Ｔβの双方はそれぞれ、秘密鍵としてａとｂを保持している。
これらの値から、端末Ｔαと端末Ｔβの双方で、次式により公開鍵ＡとＢを計算する（ｘ（ｍｏｄ ｙ）は、ｘをｙで割った余りを表す。以下、このような表記を行う）。
端末Ｔα：Ａ＝γａ（ｍｏｄ Ｐ）
端末Ｔβ：Ｂ＝γｂ（ｍｏｄ Ｐ）
【０００５】
次に、このＡとＢの値をそれぞれの通信相手に送信し、次式により共有値ｔを計算する。
端末Ｔｘ：ｔ＝Ｂａ（ｍｏｄ Ｐ）＝ (γｂ)ａ（ｍｏｄ Ｐ）＝γａｂ（ｍｏｄ Ｐ）
端末Ｔｙ：ｔ＝Ａｂ（ｍｏｄ Ｐ）＝ (γａ)ｂ（ｍｏｄ Ｐ）＝γａｂ（ｍｏｄ Ｐ）
【０００６】
この二つの値は、共有秘密情報として扱うことができ、この共有値ｔの全部若しくは一部を共通鍵に使用することが可能となる。
上記のように、秘密鍵ａ，ｂを、公開鍵Ａ，Ｂから求めることは非常に困難である。さらに、秘密鍵ａ，ｂサイズとして、数１００ビット程度を使用すれば鍵の総当たり攻撃にも強いことが知られている。
そして、このDiffie-Hellmanの鍵共有方式を楕円暗号を用いて実現したものがIEEE P1363に規定されており、より強固な共通鍵の共有が期待できる。
【０００７】
しかし、Diffie-Hellmanの鍵共有方式やIEEE P1363に規定された鍵共有方式では、常に固定の秘密鍵ａ，ｂを用いているため生成される共有値ｔがいつも同じ値となってしまう。同じ共通鍵を繰り返し使っていると暗号文から鍵が推定され易くなる。
そこで、例えば特開２０００−２７８２５８号公報に開示されいてるように、秘密鍵ａ，ｂを乱数にて生成して、通信の度に新たな共通鍵を用いる方法も提案されている。
【特許文献１】特開２０００−２７８２５８号公報
【非特許文献１】W.Diffie and M.E.Hellman著  「"New directions in cryptography"」IEEE Transactions on Information Theory,IT-22:644-654,1976
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、暗号通信を行うたびにそれぞれの通信端末が秘密鍵ａ，ｂを乱数にて生成して、この秘密鍵ａ，ｂに対応する公開鍵Ａ，Ｂを生成し、通信に先立って公開鍵Ａ，Ｂを互いに相手方に送信する必要が生じる。
公開鍵Ａ，Ｂの交換のために通信量が増大し、ネットワークに与える負荷が増大してしまうという問題が生じる。
【０００９】
更に、Diffie-Hellmanの鍵共有方式では中間者攻撃を受ける可能性がある。つまり、通信装置から別の通信装置に共通鍵交換のために公開鍵等の情報を送信する際、伝送路上の第三者がこの情報を横取りし、偽造情報にすり替えて送信することで鍵交換に割り込み、共通鍵を不正に取得することが可能である。
そして、第三者により暗号通信の内容が盗聴されたり改竄されるという問題が生ずる。
【００１０】
この中間者攻撃を防止するために、相互に認証情報として公開鍵の署名を送信して公開鍵が真正であることを確認する方法もあるが、ますます通信量が増大し、ネットワークに与える負荷が増大してしまうという問題が生じる。
本発明は暗号通信毎に異なる共通鍵を使用しつつ、通信量を極限し且つ第三者による攻撃にも強い共通鍵の配送を行うことを目的とする。
【課題を解決するための手段】
【００１１】
本発明に係る共通鍵配送方法は、第１の通信装置側から、秘密鍵ｂを保持し該秘密鍵ｂに対応する公開鍵Ｂを公開している第２の通信装置に対して、共通鍵暗号通信を行うための共通鍵を通信回線を介して配送する方法であって、
第１の通信装置側は、
乱数生成装置より得られた乱数から秘密鍵ｒを生成し保持する工程と、
公開鍵生成装置により前記秘密鍵ｒから公開鍵Ｒを生成する工程と、
前記公開鍵Ｒを通信回線を介して第２の通信装置に公開する工程と、
第２の通信装置の公開鍵Ｂと自身の秘密鍵ｒとを用いて共有値ｔを算出する工程とを備え、
第２の通信装置側は、
第１の通信装置の公開鍵Ｒと自身の秘密鍵ｂとを用いて共有値ｔを算出する工程を備え、
双方の通信装置に於いて、前記共有値ｔの全て若しくはその一部を共通鍵Ｋとすることを特徴とするものであり、
また、秘密鍵ａを保持し該秘密鍵ａに対応する公開鍵Ａを公開している第１の通信装置から、秘密鍵ｂを保持し該秘密鍵ｂに対応する公開鍵Ｂを公開している第２の通信装置に対して、共通鍵暗号通信を行うための共通鍵を配送する方法であって、
第１の通信装置側は、
乱数生成装置より得られた乱数から仮の秘密鍵ｒを生成し保持する工程と、
公開鍵生成装置により前記仮の秘密鍵ｒから仮の公開鍵Ｒを生成する工程と、
前記秘密鍵ａを用いて仮の公開鍵Ｒの署名Ｓｉｇｎ（Ｒ，ａ）を生成する工程と
前記仮の公開鍵Ｒを通信回線を介して第２の通信装置に公開する工程と、
前記仮の公開鍵Ｒを通信回線を介して第２の通信装置に送信する工程と
第２の通信装置の公開鍵Ｂと自身の仮の秘密鍵ｒとを用いて共有値ｔを算出する工程とを備え、
第２の通信装置側は、
第１の通信装置の仮の公開鍵Ｒを仮の公開鍵の署名Ｓｉｇｎ（Ｒ，ａ）と公開鍵Ａによって検証する工程と、
第１の通信装置の仮の公開鍵Ｒと自身の秘密鍵ｂとを用いて共有値ｔを算出する工程を備え、
双方の通信装置に於いて、前記共有値ｔの全て若しくはその一部を共通鍵Ｋとすることを特徴とするものであり、
更に、第１の通信装置側では前記乱数の生成をデータ送信の度に行い、共通鍵Ｋを更新した上でデータを暗号通信することによりセキュリティ強度を高めたことを特徴とするものであり、
更にまた、双方の通信装置に於いて、前記共有値ｔの全て若しくはその一部を仮の共通鍵ｋとし、
一方の通信装置側では、
任意に生成した共通鍵Ｋ´を前記仮の共通鍵ｋを用いて暗号化する工程と
共通鍵を暗号化した値Ｃを相手方に送信する工程を備え、
他方の通信装置側では、
相手方より受け取った共通鍵を暗号化した値Ｃを前記仮の共通鍵ｋを用いて復号化して共通鍵Ｋ´を得る工程を備えていることを特徴とするものである。
【発明の効果】
【００１２】
本発明に係る発明は、共通鍵の配送に際して一方の通信装置側のみが秘密鍵を暗号通信の度に更新することにより、通信量の増加を抑えつつ暗号強度を高めるべく、暗号通信の度に共通鍵の更新を可能としたところに著しい効果がある。
更に、一方の通信装置側のみが暗号通信の度に更新する秘密鍵に署名を施し、他方の通信装置にてこれを検証することで通信量の増加を抑えつつ第三者による中間者攻撃を防止する上で著しい効果を奏する。
【発明を実施するための最良の形態】
【００１３】
以下、本発明を実施形態例に基づいて詳細に説明する。但し、この実施形態に記載される構成要素、種類、組み合わせ、形状、その相対配置などは特定的な記載がない限り、この発明の範囲をそれのみに限定する主旨ではなく単なる説明例に過ぎない。
【００１４】
図１は、本発明に係る共通鍵配送方法の第１の実施形態例を示す概念図であって、共通鍵暗号通信により第１の通信装置αから第２の通信装置βへ共通鍵暗号データを送信する場合を示している。
【００１５】
同図に示すように、基本的にはDiffie-Hellmanの鍵共有方式（又はIEEE P1363）に基づくものであるが、共通鍵暗号通信によりデータを送信する側の第１の通信装置αの秘密鍵ｒが乱数生成装置により通信の度に生成する可変値であるのに対し、受信側の第２の通信装置βでは予め設定した固定値の秘密鍵ｂを用いている非対称な構成としたところが本発明の最大の特徴である。
【００１６】
以下、同図に基づいて詳細に説明する。
先ず、共通鍵暗号通信によりデータを送信する側の第１の通信装置αは、乱数生成装置により生成した乱数に基づき秘密鍵ｒを生成する。
そして、秘密鍵ｒに基づき公開鍵Ｒを生成する。この例では楕円暗号方式に基づく鍵生成装置を用いている。
次に、この公開鍵Ｒを第２の通信装置βに送信する。
更に、第２の通信装置βが公開している公開鍵Ｂと自身の秘密鍵ｒによって共有値ｔを演算して求める。
この共有値ｔの全て若しくは一部を共通鍵暗号通信の共通鍵Ｋとして用いることになる。
一方の第２の通信装置βでは、固定値の秘密鍵ｂを保持しており、秘密鍵ｂに基づき生成した公開鍵Ｂを公開鍵サーバにて公開している。第１の通信装置αを初めとするネットワーク上の通信装置は自由に公開鍵サーバにアクセスして公開鍵を取得することができるので、事前に一度取得しておけば充分である。
そして、第２の通信装置βは、第１の通信装置αから送信された公開鍵Ｒと自身の秘密鍵ｂによって共有値ｔを演算して求める。
この共有値ｔの全て若しくは一部を共通鍵暗号通信の共通鍵Ｋとして用いることになる。
【００１７】
以上の手順により双方の通信装置は共通鍵Ｋを保有しているので、第１の通信装置αでは秘密情報を共通鍵Ｋにて暗号化して第２の通信装置βに送信し、第２の通信装置βでは暗号化された秘密情報を受信し共通鍵Ｋを用いて復号化することによって秘密情報にアクセスすることができるようになる。この動作を秘密情報を送信する度に行えば、毎回異なる共通鍵を用いることになるので暗号の解読は困難となる。
【００１８】
以上説明したように、毎回異なる共通鍵を生成することにより暗号解読の危険性を低減しつつ、第１の通信装置αからの公開鍵送信だけであるから従来よりも通信量が大幅に減ることになる。
尚、図５に本実施形態を実現する場合の構成例を示す。
【００１９】
図２は、本発明に係る共通鍵配送方法の第２の実施形態例を示す概念図であって、共通鍵暗号通信により第１の通信装置αから第２の通信装置βへ共通鍵暗号データを送信する場合を示している。
【００２０】
図１のものと同様に、基本的にはDiffie-Hellmanの鍵共有方式（又はIEEE P1363）に基づくものである。
図１のものとの違いは、第１の通信装置αにも固定値の秘密鍵ａを予め設定しておき秘密鍵ａに基づき公開鍵Ａを生成し、公開鍵Ａを公開サーバにて公開している点、更に、秘密鍵ａを用いて公開鍵Ｒの署名Ｓｉｇｎ（Ｒ，ａ）を生成する点、そして受信側の第２の通信装置βでは公開鍵Ｒの署名Ｓｉｇｎ（Ｒ，ａ）を公開鍵Ａを用いて検証する構成としたところにある。
【００２１】
以下、同図に基づいて詳細に説明する。
第１の通信装置αでは、固定値の秘密鍵ａを保持しており、秘密鍵ａに基づき生成した公開鍵Ａを公開鍵サーバにて公開している。
先ず、共通鍵暗号通信によりデータを送信する側の第１の通信装置αは、乱数生成装置により生成した乱数に基づき秘密鍵ｒを生成する。
そして、秘密鍵ｒに基づき公開鍵Ｒを生成する。この例では楕円暗号方式に基づく鍵生成装置を用いている。
次に、秘密鍵ａを用いて公開鍵Ｒの署名Ｓｉｇｎ（Ｒ，ａ）を生成する。
更に、公開鍵Ｒと公開鍵Ｒの署名Ｓｉｇｎ（Ｒ，ａ）とを第２の通信装置βに送信する。
更にまた、第２の通信装置βが公開している公開鍵Ｂと自身の秘密鍵ｒによって共有値ｔを演算して求める。
この共有値ｔの全て若しくは一部を共通鍵暗号通信の共通鍵Ｋとして用いることになる。
【００２２】
一方の第２の通信装置βでは、固定値の秘密鍵ｂを保持しており、秘密鍵ｂに基づき生成した公開鍵Ｂを公開鍵サーバにて公開している。
先ず、第２の通信装置βは、第１の通信装置αから送信された公開鍵Ｒの署名Ｓｉｇｎ（Ｒ，ａ）と公開鍵Ａとを用いて公開鍵Ｒの検証を行う。
そして、第２の通信装置βは、第１の通信装置αから送信された公開鍵Ｒと自身の秘密鍵ｂによって共有値ｔを演算して求める。
この共有値ｔの全て若しくは一部を共通鍵暗号通信の共通鍵Ｋとして用いることになる。
【００２３】
以上説明したように、毎回異なる共通鍵を生成することにより暗号解読の危険性を低減し、公開鍵Ｒの検証により第三者による中間者攻撃をも防止しつつ、第１の通信装置αからの公開鍵とその署名の送信だけであるから従来よりも通信量が大幅に減ることになる。
尚、図６に本実施形態を実現する場合の構成例を示す。
【００２４】
図３は、本発明に係る共通鍵配送方法の第３の実施形態例を示す概念図であって、双方の通信装置では、図１又は図２に示した実施形態例にて得られる共有値ｔから仮の共通鍵Ｋ´を生成し、第１の通信装置αにて生成した共通鍵ｋを暗号化し、得られる値Ｃを第２の通信装置βに送信し、第２の通信装置β側では、第１の通信装置αより受け取った値Ｃを前記仮の共通鍵Ｋ´を用いて復号化して共通鍵ｋを得るというものである。
共通鍵ｋは第１の通信装置αにて任意に設定できるので秘密情報を送信する度にこれを更新することで暗号解読の危険性を回避し、所定の期間をおいて仮の共通鍵Ｋ´を更新することで共通鍵ｋの盗聴も困難となる。これにより、共通鍵ｋの更新回数を更に減らすことができるので通信量が更に減ることになる。
尚、図７に本実施形態を実現する場合の構成例を示す。
【図面の簡単な説明】
【００２５】
【図１】本発明に係る共通鍵配送方法の第１の実施形態例を示す概念図。
【図２】本発明に係る共通鍵配送方法の第２の実施形態例を示す概念図。
【図３】本発明に係る共通鍵配送方法の第３の実施形態例を示す概念図。
【図４】Diffie-Hellmanの鍵共有方式を説明するための概念図。
【図５】第１の実施形態を実現する場合の構成例。
【図６】第２の実施形態を実現する場合の構成例。
【図７】第３の実施形態を実現する場合の構成例。
【符号の説明】
【００２６】
α・・・第１の通信装置
β・・・第２の通信装置
ａ，ｂ・・・秘密鍵
Ａ，Ｂ・・・公開鍵
ｔ・・・共有値
Ｋ，ｋ・・・共通鍵
Ｋ´・・・仮の共通鍵
【図１】
2006140743.tif 000003
【図２】
2006140743.tif 000004
【図３】
2006140743.tif 000005
【図４】
2006140743.tif 000006
【図５】
2006140743.tif 000007
【図６】
2006140743.tif 000008
【図７】
2006140743.tif 000009