(57)【特許請求の範囲】
【請求項１】
第１のネットワークと第２のネットワークとの間でパケットデータを暗号化して通信するネットワークシステムにおける暗号通信装置であって、
前記第１のネットワークから前記第２のネットワーク宛に送信されたパケットデータを受信し暗号化して前記第２のネットワーク宛に送信する手段と、前記第１のネットワーク宛に前記ネットワークシステム内の他のネットワークから送信されたパケットデータの受信に応じて前記暗号化したパケットデータに対するエラー応答パケットを検出する手段と、前記検出したエラー応答パケットの情報部の暗号化部分を削除して前記第１のネットワークに送信する手段とを有することを特徴とする暗号通信装置。
【請求項２】
第１のネットワークと第２のネットワークとの間でパケットデータを暗号化して通信するネットワークシステムにおける暗号通信装置であって、
前記第１のネットワークから前記第２のネットワーク宛に暗号化されて送信されたパケットデータを受信し復号化して前記第２のネットワーク宛に送信する手段と、前記第１のネットワーク宛に送信されたパケットデータの受信に応じて前記復号化したパケットデータに対するエラー応答パケットを検出する手段と、前記検出したエラー応答パケットの情報部の復号化部分を削除して前記第１のネットワーク宛に送信する手段とを有することを特徴とする暗号通信装置。
【請求項３】
第１のネットワークと第２のネットワークとの間でパケットデータを暗号化して通信するネットワークシステムにおける暗号通信装置であって、
前記第１のネットワークから前記第２のネットワーク宛に送信されたパケットデータを受信し、受信したパケットデータの平文と暗号文との間の符号形式の交換を行い前記第２のネットワーク宛に送信する手段と、前記第１のネットワーク宛に送信されたパケットデータの受信に応じて前記第２のネットワーク宛に送信したパケットデータに対するエラー応答パケットを検出する手段と、前記検出したエラー応答パケットを破棄する手段とを有することを特徴とする暗号通信装置。
【請求項４】
請求項１から請求項３のいずれかに記載の暗号通信装置において、前記エラー応答パケットに付与されたアドレス情報を有する前記パケットデータを検出する手段と、該検出したパケットデータの転送を停止する手段とを有することを特徴とする暗号通信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ルータやゲートウェイ等、ネットワーク間でのパケット通信の接続制御を行う装置（ネットワーク相互接続装置）に係わり、特に、パケットの暗号通信を高信頼に行うのに好適な暗号通信装置に関するものである。
【０００２】
【従来の技術】
ルータやゲートウェイ等で接続されたネットワークでは、それぞれ異なるネットワークにある端末装置間での通信が可能である。
図１７は、従来のネットワーク接続構成例を示すブロック図である。
図１７において、ネットワーク（図中、「ＮｅｔＡ」と記載）Ａ１およびネットワーク（図中、「ＮｅｔＢ」と記載）Ｂ２は、ぞれぞれ複数の情報処理装置が接続されており、ゲートウェイ（図中、「装置Ａ」、「装置Ｂ」と記載）Ａ５６，Ｂ５７およびネットワーク８の中継装置７を介して相互に接続されている。
【０００３】
情報処理装置Ａ３はネットワークＡ１内に、また、情報処理装置Ｂ４はネットワークＢ２内にそれぞれ配置されている。
中継装置７は、ネットワーク８内に位置し、ゲートウェイＡ５６とゲートウェイＢ５７間のパケット９を中継する。
このような構成のネットワークにおいて情報処理装置Ａ３から情報処理装置Ｂ４へ通信を行う場合について説明する。
【０００４】
まず、情報処理装置Ａ３は、情報処理装置Ｂ４宛のパケット９をゲートウェイＡ５６宛に送出する。このパケット９のフォーマット例を図１８に示す。
図１８に示すように、パケット９は、ヘッダ部１０と情報部１１から構成される。ヘッダ部１０は、パケット９の宛先アドレス１２、送信元アドレス１３等から構成される。すなわち、宛先アドレス１２には図１７の情報処理装置Ｂ４のアドレス、送信元アドレス１３には情報処理装置Ａ３のアドレスが設定される。情報部１１には、宛先アドレスの情報処理装置Ｂ４に渡す情報が設定される。
【０００５】
このような構成のパケット９は、宛先アドレス１２に従って、図１７において、ゲートウェイＡ５６と中継装置７およびゲートウェイＢ５７を介して順番に転送され、ネットワークＢ２へ配送される。そしてネットワークＢ２内の情報処理装置Ｂ４は、パケット９の宛先アドレス１２が自局のアドレスと一致するのでパケット９を取り込む。
【０００６】
次に、この通信において、パケット９の転送途中でエラーが検出された場合について図１９を用いて説明する。
図１９は、エラーパケット制御を行うネットワーク構成例を示すブロック図である。
図１９において、１４はエラー応答パケットであり、情報処理装置Ａ３から情報処理装置Ｂ４へ宛てたパケット９が中継装置７でエラーであると判断された場合に転送されるものである。
以下、このパケット１４の転送処理について説明する。
【０００７】
中継装置７は、パケット９のエラーを検出すると、パケット９の送信元アドレスを読み出し、このアドレスに向けて、エラー発生を通知するエラー応答パケット１４を生成して送る。
その時のパケット９，１４のフォーマット例を図２０に示す。
【０００８】
図２０に示すように、エラー応答パケット１４は、ヘッダ部１５と情報部１６から構成される。ヘッダ部１５は、エラー応答パケット１４の宛先アドレス１７と送信元アドレス１８等から構成される。情報部１６には、エラーの発生したパケット９の全体またはその一部が挿入される。また、エラー応答パケット１４の宛先アドレス１７には情報処理装置Ａ３のアドレス、送信元アドレス１８には中継装置７のアドレスが設定される。
【０００９】
そして、中継装置７からのパケット１４は、パケット１４内の宛先アドレス１７に従って、図１９のゲートウェイＡ５６を介してネットワークＡ１に配送され、ネットワークＡ１内の情報処理装置Ａ３が、パケット１４の宛先アドレス１７が自局のアドレスと一致するので、パケット１４を取り込む。さらに、情報処理装置Ａ３は、パケットの情報部１６を取り出し、自局が送信したパケット９が経路上でエラーとなったことを知り、パケット９を再送したり、情報処理装置Ａ３のユーザにエラーの内容を通知する。
【００１０】
尚、このような技術に関しては、例えば、Ｊ．Ｐｏｓｔｅｌ編“Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ”  ＲＦＣ  ７９２（ＩＥＴＦ発行）等に記載されている。
次に、図１９におけるネットワーク構成で、ゲートウェイＡ５６とゲートウェイＢ５７との間で暗号通信を行う場合について図２１により説明する。
【００１１】
図２１は、暗号通信およびエラーパケット制御を行うネットワーク構成例を示すブロック図である。
本図２１において、２０はゲートウェイＡ５６で暗号化されたパケットであり、２１はパケット２０に対するエラー応答パケットである。
【００１２】
ネットワークＡ１内の情報処理装置Ａ３からネットワークＢ２内の情報処理装置Ｂ４宛にパケット９が送信された場合、まずゲートウェイＡ５６がそのパケット９を受け取る。ゲートウェイＡ５６は、そのパケット９を転送する時に、パケット９の情報部を暗号化したパケット（暗号文）２０をネットワーク８に送信する。このパケット（暗号文）２０のフォーマット例を図２２に示す。
図２２に示すように、パケット（暗号文）２０では、パケット（平文）９の情報部１１の符号形式が変換され暗号化されて情報部２３に置き換えられる。
【００１３】
ここで図２１におけるネットワーク８内の中継装置７が、暗号化されたパケット（暗号文）２０を受信した時に、エラーを検出したとする。
この場合、中継装置７は、パケット（暗号文）２０がエラーであることを通知するために、エラー応答パケット（暗号文）２１を生成し、パケット（暗号文）２０の送信元アドレス１３である情報処理装置Ａ３に送信する。
【００１４】
このエラー応答パケット（暗号文）２１のフォーマット例を図２３に示す。
図２３に示すように、エラー応答パケット（暗号文）２１の情報部２４には、エラーの検出されたパケット（暗号文）２０が付加される。すなわち、この場合、エラー応答パケット（暗号文）２１の中には、暗号化されたパケット（暗号文）２０が含まれることになる。
エラー応答パケット（暗号文）２１を受信したゲートウェイＡ５６は、このエラー応答パケット（暗号文）２１をネットワークＡ１へ送信する。
【００１５】
この時、ゲートウェイＡ５６は、エラー応答パケット（暗号文）２１の宛先アドレス１７と送信元アドレス１８を読み込んで、エラー応答パケット（暗号文）２１が暗号化されたパケットであり、転送する時に符号形式を変換する復号処理が必要であるか否かを判断する。
この場合、エラー応答パケット（暗号文）２１の送信元アドレス１８は、ネットワークＢ２外の中継装置７のアドレスなので、エラー応答パケット（暗号文）２１は暗号化されていないと判断し、エラー応答パケット（暗号文）２１を、復号処理を行わずにそのまま、宛先アドレス１７に示される情報処理装置Ａ３に向けてネットワークＡ１に転送する。
【００１６】
ここで問題となるのは、情報処理装置Ａ３が、自分で送信した平文のパケット（平文）９を暗号化した情報を含むエラー応答パケット（暗号文）２１を受信できることである。
すなわち、情報処理装置Ａ３のユーザは、故意に、経路上でエラーの発生するパケット（平文）９を作成し、そのパケット（平文）９を送信することによって、多数の平文と暗号文の組み合わせを得ることができる。従って、情報処理装置Ａ３のユーザは、ゲートウェイＡ５６，５７間の暗号通信で使われている暗号鍵を導き出すことが可能となり、他の暗号データを解読することが可能になる。
【００１７】
次に、同様な問題を有する別のシステム構成について説明する。
図２４は、従来の他のネットワーク接続構成例を示すブロック図である。
図２４におけるネットワークシステムは、図２１のネットワークシステムにおけるゲートウェイＢ５７とネットワークＢ２の間に、中継装置２４が設けられ、ゲートウェイＢ５７とネットワークＢ２間のパケットは、中継装置２４を介して通信されるものである。
【００１８】
このような構成において、ネットワークＡ１内の情報処理装置Ａ３から、ネットワークＢ２内の情報処理装置Ｂ４宛に、パケット（平文）９が送信された場合、パケット（平文）９内の宛先アドレスに従って、ゲートウェイＡ５６、中継装置７およびゲートウェイＢ５７がそれぞれ順番にパケット（平文）９を転送する。その時、ゲートウェイＡ５６とゲートウェイＢ５７間では、パケット（平文）９は、情報部が暗号化されたパケット（暗号文）２０として転送される。
【００１９】
そして、ゲートウェイＢ５７では、パケット（暗号文）２０の情報部２３を復号化してパケット（平文）２５を生成し、中継装置２４に送出する。このパケット（平文）２５は、フォーマットも内容もパケット（平文）９と同じである。
このパケット（平文）２５を中継装置２４が受信した時に、中継装置２４がエラーを検出したとすると、中継装置２４は、パケット（平文）２５がエラーであることを示すエラー応答パケット（平文）２６を生成して、パケット（平文）２５の送信元アドレス１３の情報処理装置Ａ３に返送する。その時、エラー応答パケット（平文）２６の情報部には、エラーの検出されたパケット（平文）２５が付加される。
【００２０】
このエラー応答パケット（平文）２６のフォーマット例を図２５に示す。
図２５に示すように、エラー応答パケット（平文）２６の情報部２７には、エラー検出されたパケット（平文）２５が付加される。ゲートウェイＢ５７およびゲートウェイＡ５６は、それぞれ、受信したエラー応答パケット（平文）２６を転送する。
【００２１】
この時、ゲートウェイＢ５７は、エラー応答パケット（平文）２６の宛先アドレス１７と送信元アドレス１８を読み込んでエラー応答パケット（平文）２６が暗号化するパケットであるか否かを判断する。エラー応答パケット（平文）２６の送信元アドレス１８は、ネットワークＢ２外の中継装置２４のアドレスなので暗号化しないと判断し、エラー応答パケット（平文）２６を、暗号処理を行わずに宛先アドレス１７に示される情報処理装置Ａ３に向けて転送する。
【００２２】
ここで問題となるのは、ネットワーク８がインターネットのようなオープンなネットワークの場合である。すなわち、ネットワーク８の上には暗号化されたパケット（暗号文）２０とそのパケットを復号化したエラー応答パケット（平文）２６が流れるので、或る第３者がネットワーク８上を監視して、暗号文（パケット（暗号文）２０）と平文（エラー応答パケット（平文）２６）を読み取ることが可能となる。
【００２３】
そして、この第３者は、このような暗号文と平文の組み合わせを大量に入手することによって、暗号通信の暗号鍵を導き出し、他の暗号通信を解読する事ができるようになる。
尚、このような暗号通信の技術に関しては、Ｒａｎｄａｌｌ  Ａｔｋｉｎｓｏｎ著「ＲＦＣ１８２５  Ｓｅｃｕｒｉｔｙ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  ｔｈｅ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ」（ＩＥＴＦ発行）等に記載されている。
【００２４】
【発明が解決しようとする課題】
解決しようとする問題点は、従来の技術では、故意にエラーパケットを発生させることにより、ゲートウェイ等で暗号化された暗号文と平文とが容易に入手され、暗号鍵が不正に解読されてしまう点である。
本発明の目的は、これら従来技術の課題を解決し、ネットワークにおける暗号通信の安全性の向上を可能とする暗号通信装置を提供することである。
【００２５】
【課題を解決するための手段】
目的を達成するため、本発明の暗号通信装置は、暗号化もしくは復号化して送出したパケットデータに対するエラー応答パケットを受信した場合、このエラー応答パケットの情報部が漏洩しないようする構成とする。すなわち、ゲートウェイ等に、受信パケットがエラー応答パケットか否かをチェックする手段と、エラー応答パケットの場合、そのエラー応答パケットに付加されている情報部に暗号文や復号化された平文が含まれているか否かを、情報部に含まれる元のパケットの宛先アドレスと送信元アドレス等に基づきチェックする手段、暗号文や復号文が含まれていた場合、暗号化もしくは復号化された部分の情報を削除してエラー応答パケットを転送する手段、さらに同じアドレス情報のエラー応答パケットが続いた場合には、エラー応答パケットを破棄する手段、またさらに同じアドレス情報のエラー応答パケットが続いた場合には、エラー応答パケットに付与されたアドレス情報を有するパケットの転送を停止する手段とを設ける。
【００２６】
【発明の実施の形態】
以下、本発明の実施例を、図面により詳細に説明する。
図１は、本発明の暗号通信装置およびそれを設けたネットワーク構成の第１の実施例を示すブロック図である。
本図１に示すネットワーク構成は、図１７で示した従来のもの同じであるが、ゲートウェイ（図中、「装置Ａ」と記載）Ａ５には、本発明に係わるエラー応答パケットの転送制御を行うためのエラーパケット制御部５ａが設けられている。
尚、以下において、ゲートウェイＡ５は、例えば、ルータのようにルーティングを行うネットワーク中継装置であり、後述するように、暗号／復号機能を備えている。
【００２７】
ゲートウェイＡ５のエラーパケット制御部５ａには、受信したパケットがエラー応答パケット３１であることを検出するエラー応答パケットチェック部５ｂと、受信したエラー応答パケット３１に暗号文が含まれているか否かを、元のパケットの宛先アドレスと送信元アドレスに基づき判別する暗号文チェック部５ｃ、暗号化された部分の情報を削除してエラー応答パケットを転送するエラー応答パケット転送部５ｄ、同じアドレス情報のエラー応答パケット３１が所定回数（Ｘ）続いた場合にこのエラー応答パケット３１を破棄する転送抑止部５ｅ、所定回数（しきい値Ｘ）を超えてさらに同じアドレス情報のエラー応答パケット３１が所定回数（しきい値Ｙ）続いた場合には、エラー応答パケットの宛先（情報処理装置Ａ３）からの全てのパケットの転送を停止する転送停止部５ｆ、転送抑止部５ｅおよび転送停止部５ｆによる転送抑止動作に用いるエラー応答処理テーブル２８が設けられている。
【００２８】
このような構成のエラーパケット制御部５ａを具備することにより、ゲートウェイＡ５は、情報処理装置Ａ３から受信したパケット（平文）２９を符号形式変換して暗号化したパケット（暗号文）３０を送出し、このパケット（暗号文）３０のエラーを検出した中継装置７からエラー応答パケット（暗号文付き）３１が返送されてくると、エラー応答パケット（暗号文付き）３１に含まれる暗号化された部分の情報を削除したエラー応答パケット（暗号文なし）３２を生成して、情報処理装置Ａ３に返送する。これにより、情報処理装置Ａ３においては、パケット（平文）２９に対応する暗号文を入手することができない。
【００２９】
以下、情報処理装置Ａ３のアドレスを「１９２」、情報処理装置Ｂ４のアドレスを「９６」、そして、中継装置７のアドレスを「５０」とし、通信プロトコルにＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）を用いたパケット転送動作例を説明する。
ゲートウェイＡ５では、本発明に係わる暗号通信エラーパケット制御を行うために以下のカウンタおよびしきい値の初期化に行う。
・受信したエラー応答パケットの数をカウントするカウンタ；ｎ＝０。
・エラー応答パケットの転送を禁止するしきい値；Ｘ＝３。
・暗号通信を禁止するしきい値；Ｙ＝５。
【００３０】
図２は、図１におけるエラー応答処理テーブルの構成例を示す説明図である。本エラー応答処理テーブル２８は、エラー応答パケット（以下、「ＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）エラーパケット」とも記載）の受信状態を記録するものであり、ＩＣＭＰエラーパケットに含まれるエラーの発生したパケットの送信元アドレスを記録する送信元アドレスフィールド３４、宛先アドレスを記録する宛先アドレスフィールド３５、および、ＩＣＭＰエラーパケットを受信した回数を記録するカウンタ（；ｎ）フィールド３６から構成される。
【００３１】
図３は、図１におけるネットワークで転送されるＩＰパケットのフォーマット例を示す説明図である。
ＩＰパケット３７は、ＩＰヘッダ部３８とＩＰペイロード３９から構成される。ＩＰヘッダ部３８には、パケットの送信元アドレス（図中、「ＳＡ」と記載）４０と宛先アドレス（図中、「ＤＡ」と記載）４１が含まれ、ＩＰペイロード３９には伝達すべき情報が含まれる。
【００３２】
図４は、図１におけるＩＣＭＰエラーパケットのフォーマット例を示す説明図である。
ＩＣＭＰエラーパケット４３は、ＩＰヘッダ部４４とＩＣＭＰヘッダ４５およびＩＰペイロード４６から構成される。ＩＰヘッダ部４４には、パケットの送信元アドレス（図中、「ＳＡ」と記載）４７と宛先アドレス（図中、「ＤＡ」と記載）４８が含まれる。
【００３３】
以下、図１における情報処理装置Ａ３のユーザが、ネットワーク８の中で、送信したパケットがエラーとなるように、故意に、ＩＰヘッダ部の中のＴＴＬ（Ｔｉｍｅ  Ｔｏ  Ｌｉｖｅ）フィールドを「２」に設定したパケット（平文）２９を、ネットワークＢ２内の情報処理装置Ｂ４に宛てて送信した場合を例に説明を続ける。
【００３４】
図５は、図１における情報処理装置Ａから送信されたパケット（平文）のフォーマット例を示す説明図である。
パケット（平文）２９は、ＩＰヘッダ部３８において、送信元アドレス４０に図１の情報処理装置Ａ３を示す「１９２」が、宛先アドレスに図１の情報処理装置Ｂ４を示す「９６」が、そして、ＴＴＬフィールド４２には「２」が設定されている。このパケット（平文）２９において、ＴＴＬフィールド４２は、パケットを受信した各装置で「１」づつ減算され、その値が「０」になると、そのパケット（平文）２９の転送が禁止される。
【００３５】
すなわち、このようなパケット（平文）２９を受信すると、図１のゲートウェイＡ５は、次の図６で示すように、まずＴＴＬフィールド４２を「１」デクリメントし、パケット（平文）２９のＩＰペイロード３９を符号形式を変換して暗号化したパケット（暗号文）３０を生成してネットワーク８に送信する。
【００３６】
図６は、図１におけるパケット（平文）およびパケット（暗号文）のフォーマット例を示す説明図である。
パケット（暗号文）３０は、図１のゲートウェイＡ５により、パケット（平文）２９のＩＰヘッダ部３８のＴＴＬフィールド４２が「１」つ減算されたＩＰヘッダ部と、ＩＰペイロード３９が暗号化されたＩＰペイロード５０からなる。
【００３７】
このような構成のパケット（暗号文）３０を図１におけるネットワーク８内の中継装置７が受信すると、中継装置７は、ＴＴＬフィールド４２をさらに「１」デクリメントする。これにより、ＴＴＬフィールド４２は「０」となり、それ以上のデータ転送はできなくなる。そのため、中継装置７は、次の図７に示すＩＣＭＰエラーパケット（エラー応答パケット（暗号文付き）３１）を生成して情報処理装置Ａ３宛に応答する。
【００３８】
図７は、図１におけるパケット（暗号文）およびＩＣＭＰエラーパケットのフォーマット例を示す説明図である。
ＩＣＭＰエラーパケット３１のＩＰヘッダ部４４においては、エラーパケットを返送するために、中継装置７自身のアドレス（「５０」）が送信元アドレス４７に、返送先の情報処理装置Ａ３のアドレス（「１９２」）が宛先アドレス４８に設定され、また、エラー応答パケットであることを示すＩＣＭＰヘッダ４５が付与され、さらに、ＩＰペイロード４６には、ＩＰペイロード５０に暗号化された情報部を持つパケット（暗号文）３０の全てが設定されている。
【００３９】
このようなフォーマットのＩＣＭＰエラーパケット３１を受信した場合の図１のゲートウェイＡ５の処理動作を、次の図８を用いて説明する。
図８は、図１におけるゲートウェイＡの本発明に係わる処理動作例を示すフローチャートである。
図１のゲートウェイＡ５は、まず受信したパケットがＩＣＭＰエラーパケットか否かを判断する（ステップ８０１）。
【００４０】
受信したパケットがＩＣＭＰエラーパケットであれば、ＩＣＭＰエラーパケットに付加されているエラーとなったパケットのＩＰヘッダを読み出し、送信元アドレスと宛先アドレスを取り出し、それぞれが図１におけるネットワークＡ１とネットワークＢ２内のアドレスであると判断し、アドレスのペアを次の図９に示すようにエラー応答処理テーブル２８に登録し（ステップ８０２）、同エラー応答処理テーブル２８内のカウンタ（；ｎ）フィールド３６を「１」インクリメントする（ステップ８０３）。
【００４１】
図９において、エラー応答処理テーブル２８の送信元アドレスフィールド３４には、図１における情報処理装置Ａ３のアドレス「１９２」が、宛先アドレスフィールド３５には、図１における情報処理装置Ｂ４のアドレス「９６」が、そして、カウンタ（；ｎ）フィールド３６には「１」が登録される。
【００４２】
図８に戻り、図１のゲートウェイＡ５は、インクリメントしたカウンタ（；ｎ）の値が、エラー応答パケットの転送を禁止するしきい値（Ｘ＝３）以上か否かを比較する（ステップ８０４）。
否であれば、ＩＣＭＰエラーパケットに付加された、エラーの発生したパケットの暗号化された部分を削除して（ステップ８０５）、次の図１０に詳細を示す図１のエラー応答パケット（暗号文なし）３２を生成し、図１における情報処理装置Ａ３宛に送信する（ステップ８０６）。
【００４３】
図１０は、図１におけるエラー応答パケット（暗号文なし）のフォーマット例を示す説明図である。
通常、ＩＣＭＰエラーパケット（エラー応答パケット）３１は、図７で説明したように、パケット（暗号文）３０の全てをＩＰペイロード４６に登録した状態で、パケット（暗号文）３０の送信元アドレス（「１９２」）を宛先アドレス４８に設定して転送される。
【００４４】
しかし、図１に示す構成のエラーパケット制御部５ａを具備したゲートウェイＡ５では、パケット（暗号文）３０のＩＰペイロード５０、すなわち暗号化された情報部を削除し、残りのＩＰヘッダ部３８のみをＩＰペイロード４６に登録してＩＣＭＰエラーパケット（エラー応答パケット）３２を生成する。
このことにより、故意にエラー応答パケットを受信した情報処理装置Ａ３においては、ゲートウェイＡ５で暗号化した情報を得ることができないので、その暗号鍵を不正に取得することもできない。
【００４５】
さらに、図８に戻り、図１のゲートウェイＡ５の処理の説明を続ける。
ステップ８０４において、「Ｘ（＝３）≦ｎ」であれば、すなわち、情報処理装置Ａ３がさらに同様のパケットを送り続け、中継装置７がエラーを検出し、同様のＩＣＭＰエラーパケットを情報処理装置Ａ３へ送信し続け、ゲートウェイＡ５が、同様のＩＣＭＰエラーパケットを３回受信すると、同様の状態が、暗号通信を禁止するしきい値（「Ｙ」（＝５））分続くまで（ステップ８０７）、ゲートウェイＡ５は、受信したＩＣＭＰエラーパケットを転送せずに廃棄する（ステップ８０８）。
【００４６】
さらに、同様の状態が続き、ＩＣＭＰエラーパケットを５（＝Ｙ）回受信すると（ステップ８０７）、ゲートウェイＡ５は、情報処理装置Ａ３から受信するパケットを、図２および図９におけるエラー応答処理テーブルを参照して判別して、全て廃棄する（ステップ８０９）。
このようにして、不正な転送要求の危険性が高い端末からのアクセスを制限する。
【００４７】
次に、他の実施例を説明する。
図１１は、本発明の暗号通信装置およびそれを設けたネットワーク構成の第２の実施例を示すブロック図である。
本図１１に示すネットワーク構成は、図２４で示した従来のものと同じであるが、暗号通信を行うゲートウェイＢ６（図中、「装置Ｂ」と記載）には、本発明に係わるエラー応答パケットの転送制御を行うためのエラーパケット制御部６ａが設けられている。
【００４８】
すなわち、ゲートウェイＢ６のエラーパケット制御部６ａには、中継装置２４から受信したパケットがエラー応答パケット（平文；エラーパケット付き）５４であることを検出するエラー応答パケットチェック部６ｂと、受信したエラー応答パケット５４がゲートウェイＡ５との間で暗号化処理されたパケットに対するものであるか否かを、元のパケットの宛先アドレスと送信元アドレスに基づき判別する対象パケットチェック部６ｃ、受信したエラー応答パケット５４のＩＰペイロード部分を削除してエラー応答パケットを転送するエラー応答パケット転送部６ｄ、同じアドレス情報のエラー応答パケット５４が所定回数（Ｘ）続いた場合にこのエラー応答パケット５４を廃棄する転送抑止部６ｅ、所定回数（しきい値Ｘ）を超えてさらに同じアドレス情報のエラー応答パケット５４が次の所定回数（しきい値Ｙ）続いた場合に、エラー応答パケット５４の宛先（情報処理装置Ａ３）からの全てのパケットを破棄する転送停止部６ｆ、転送抑止部６ｅおよび転送停止部６ｆによる転送制御動作に用いるエラー応答処理テーブル２８が設けられている。
【００４９】
このような構成のエラーパケット制御部６ａを具備することにより、ゲートウェイＢ６は、ネットワーク８の中継装置７を介して受信したゲートウェイＡ５で暗号化されたパケット（暗号文）５２を符号形式変換し復号化してパケット（平文）５３を生成し、ネットワークＢ２内の情報処理装置Ｂ４宛に中継装置２４を介して送出する。
【００５０】
そして、このパケット（平文）５３のエラーを検出した中継装置２４からエラー応答パケット（平文；エラーパケット付き）５４が返送されてくると、このエラー応答パケット（平文；エラーパケット付き）５４のＩＰペイロード部分を削除したエラー応答パケット（平文；エラーパケットなし）５５を生成して、情報処理装置Ａ３宛に返送する。これにより、ネットワーク８上においては、パケット（暗号文）５２に対応する平文のパケットを入手することができない。
【００５１】
以下、情報処理装置Ａ３のアドレスを「１９２」、情報処理装置Ｂ４のアドレスを「９６」、そして、中継装置２４のアドレスを「８４」とし、通信プロトコルにＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）を用いてパケット転送動作を説明する。
ゲートウェイＢ６では、本発明に係わる暗号通信エラーパケット制御を行うために以下のカウンタおよびしきい値の初期化に行う。
・受信したエラー応答パケットの数をカウントするカウンタ；ｎ＝０。
・エラー応答パケットの転送を禁止するしきい値；Ｘ＝３。
・暗号通信を禁止するしきい値；Ｙ＝５。
【００５２】
エラー応答処理テーブル２８、および、ネットワーク上で転送される通常のＩＰパケットとＩＣＭＰエラーパケットのフォーマットは、図２〜図４で示した上記第１の実施例におけるＩＰパケット３７、ＩＣＭＰエラーパケット４３と同じである。
情報処理装置Ａ３のユーザが図１２に示すパケット（平文）５１をネットワークＢ２内の情報処理装置Ｂ４に宛てて送信すると、ゲートウェイＡ５で受信され、ゲートウェイＡ５は、受信したパケット（平文）５１のＩＰヘッダを除くＩＰペイロードを暗号化した図１３に示すパケット（暗号文）５２を生成してネットワーク８に送信する。
【００５３】
図１２は、図１１におけるパケット（平文）のフォーマット例を示す説明図である。
パケット（平文）５１は、送信元アドレス４０に図１１における情報処理装置Ａ３のアドレス「１９２」が、宛先アドレス４１に情報処理装置Ｂ４のアドレス「９６」がそれぞれ設定されたＩＰヘッダ部３８と、伝達されるべき情報が設定されたＩＰペイロード３９から構成されている。
【００５４】
図１３は、図１１におけるパケット（平文）およびパケット（暗号文）のフォーマット例を示す説明図である。
パケット（暗号文）５２において、そのＩＰヘッダ部には、パケット（平文）５１のＩＰヘッダ部３８と同じ内容のものが設定されるが、そのＩＰペイロード５０には、パケット（平文）５１のＩＰペイロード３９の内容が符号形式変換され暗号化された情報が登録される。
【００５５】
このようなパケット（暗号文）５２は、図１１におけるネットワーク８の中継装置７により転送され、ゲートウェイＢ６が受信する。
ゲートウェイＢ６は、パケット（暗号文）５２を受信すると、パケット（暗号文）５２の暗号化された部分（ＩＰペイロード５０）を符号形式変換し復号化してパケット（平文）５３を再生成し、このパケット（平文）５３を中継装置２４に送信する。
このパケット（平文）５３のフォーマットは、パケット（平文）５１と同一である。
【００５６】
このパケット（平文）５３を受信すると、図１１の中継装置２４は、パケット（平文）５３をネットワークＢ２宛に送信するために、パケット（平文）５３の送信元アドレス４０に示された情報処理装置Ｂ４の物理アドレス（「１９２」）を取得しようとする。
【００５７】
ここで、情報報処理装置Ｂ４の電源が入っていなかったとすると、中継装置２４は、情報報処理装置Ｂ４の物理アドレスを取得できないので、中継装置２４は、次の図１４に示すエラー応答パケット（平文；エラーパケット付き）５４を情報処理装置Ａ３宛に返す。
【００５８】
図１４は、図１１におけるエラー応答パケット（平文；エラーパケット付き）のフォーマット例を示す説明図である。
エラー応答パケット（平文；エラーパケット付き）５４、すなわちＩＣＭＰエラーパケット５４には、エラーパケットであることを示すＩＣＭＰヘッダ４５が付加され、また、ＩＰヘッダ部４４の送信元アドレス４７には、ＩＣＭＰエラーパケット５４を発行する図１１の中継装置２４のアドレス（「８４」）が、そして、宛先アドレス４８には、エラー応答を通知すべき情報処理装置Ａ３のアドレス（「１９２」）が設定され、さらに、ＩＰペイロード４６には、情報処理装置Ｂ４に転送できなかったパケット（平文）５３が全て設定される。
このようなＩＣＭＰエラーパケット５４を受信した場合のゲートウェイＢ６の処理動作を次の図１５を用いて説明する。
【００５９】
図１５は、図１１におけるゲートウェイＢの処理動作例を示すフローチャートである。
図１１のゲートウェイＢ６は、まず受信したパケットがＩＣＭＰエラーパケットか否かを判断する（ステップ１５０１）。
【００６０】
受信したパケットがＩＣＭＰエラーパケットであれば、ＩＣＭＰエラーパケットに付加されているエラーとなったパケットのＩＰヘッダを読み出し、送信元アドレスと宛先アドレスを取り出し、それぞれが図１１におけるネットワークＡ１とネットワークＢ２内のアドレスであると判断し、アドレスのペアを図９に示したものと同様にエラー応答処理テーブル２８に登録し（ステップ１５０２）、同エラー応答処理テーブル２８内のカウンタ（；ｎ）フィールド３６を「１」インクリメントする（ステップ１５０３）。
【００６１】
そして、インクリメントしたカウンタ（；ｎ）の値が、エラー応答パケットの転送を禁止するために設定されたしきい値（Ｘ＝３）以上か否かを比較する（ステップ１５０４）。
否であれば、ＩＣＭＰエラーパケットに付加された、エラーの発生したパケット（パケット（平文）５３）のＩＰペイロード部分を削除して（ステップ１５０５）、次の図１６に詳細を示す図１１のエラー応答パケット（平文；エラーパケットなし）５５を生成し、図１における情報処理装置Ａ３宛に送信する（ステップ１５０６）。
【００６２】
図１６は、図１１におけるエラー応答パケット（平文；エラーパケットなし）のフォーマット例を示す説明図である。
通常、ＩＣＭＰエラーパケット（エラー応答パケット）５４は、エラーの発生したパケット（平文）５３の全てをＩＰペイロード４６に登録した状態で、パケット（平文）５１の送信元アドレス（「１９２」）が宛先アドレス４８に設定されて転送される。
【００６３】
しかし、図１１に示す構成のエラーパケット制御部６ａを具備したゲートウェイＢ６では、パケット（平文）５３のＩＰペイロード３９、すなわち復号化された情報部を削除し、残りのＩＰヘッダ部３８のみをＩＰペイロード４６に登録してエラー応答パケット（平文；エラーパケットなし）５５（ＩＣＭＰエラーパケット）を生成する。
このことにより、ネットワーク８上において、パケット（暗号文）５２の暗号化された情報に対応する平文を得ることができなくなるので、ゲートウェイＡ５，Ｂ６間で用いられる暗号鍵が不正に解読されることを回避できる。
【００６４】
さらに、図１５に戻り、図１１のゲートウェイＢ６の処理の説明を続ける。
ステップ１５０４において、「Ｘ（＝３）≦ｎ」であれば、すなわち、情報処理装置Ａ３がさらに同様のパケットを送り続け、中継装置２４がエラーを検出し、同様のＩＣＭＰエラーパケットを情報処理装置Ａ３宛に送信し続け、ゲートウェイＢ６が、このＩＣＭＰエラーパケットを３回受信すると、同様の状態が、暗号通信を禁止するしきい値（「Ｙ」（＝５））分続くまで（ステップ１５０７）、ゲートウェイＢ６は、受信したＩＣＭＰエラーパケットを転送せずに廃棄する（ステップ１５０８）。
【００６５】
そして、さらに同様の状態が続き、ＩＣＭＰエラーパケットを５（＝Ｙ）回受信すると（ステップ１５０７）、ゲートウェイＢ６は、情報処理装置Ａ３から転送されてきたパケットを、図９におけるエラー応答処理テーブル２８を参照して判別し、全て廃棄する（ステップ１５０９）。
このようにして、ネットワーク８上で不正に暗号鍵が解読される危険性が高いパケットの転送を制限する。
【００６６】
以上、図１〜図１６を用いて説明したように、本実施例の暗号通信装置、すなわち、相互に接続されたネットワーク間でパケットデータを暗号化／復号化して通信するゲートウェイでは、エラー応答パケットを受信した場合、このエラーパケット内のＩＰペイロード部分の情報を削除し、ＩＰヘッダ部分のみを残してエラー応答パケットを生成し、エラー検出されたパケットの送信元宛に返送する。
【００６７】
このことにより、例えば、図１に示すネットワークにおいて、情報処理装置Ａ３から、故意にネットワーク８でエラー検知されるようなパケット（平文）２９が送出された場合にも、ゲートウェイＡ５から情報処理装置Ａ３に返送されるエラー応答パケット３２には、暗号文が付加されておらず、情報処理装置Ａ３において、平文とそれに対応する暗号文が不正に入手され、ゲートウェイＡ５，Ｂ６間での暗号化に用いる暗号鍵が解読される危険性を回避できる。
【００６８】
また、図１１に示すネットワークにおいて、中継装置２４でパケット（平文）５３のエラーが検出されたとしても、ゲートウェイＢ６から送出されるエラー応答パケット（平文；エラーパケットなし）５５には、パケット（暗号文）５２の復号文が付加されておらず、ネットワーク８上において、平文とそれに対応する暗号文が不正に入手され、ゲートウェイＡ５，６間での暗号化に用いる暗号鍵が解読される危険性も回避できる。
尚、本発明は、図１〜図１６を用いて説明した実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。
【００６９】
【発明の効果】
本発明によれば、相互に接続されたネットワーク上で暗号化通信を行う場合、エラー応答パケット内のＩＰペイロード部分の情報を削除するので、エラー応答パケットを利用して不正な第３者が暗号文と平文の組み合わせを入手することを防ぐことができ、暗号通信で用いている暗号鍵が解読されて暗号通信の内容が盗聴されといった危険を回避でき、ネットワークの安全性を向上させることが可能である。
【図面の簡単な説明】
【図１】本発明の暗号通信装置およびそれを設けたネットワーク構成の第１の実施例を示すブロック図である。
【図２】図１におけるエラー応答処理テーブルの構成例を示す説明図である。
【図３】図１におけるネットワークで転送されるＩＰパケットのフォーマット例を示す説明図である。
【図４】図１におけるＩＣＭＰエラーパケットのフォーマット例を示す説明図である。
【図５】図１における情報処理装置Ａから送信されたパケット（平文）のフォーマット例を示す説明図である。
【図６】図１におけるパケット（平文）およびパケット（暗号文）のフォーマット例を示す説明図である。
【図７】図１におけるパケット（暗号文）およびＩＣＭＰエラーパケットのフォーマット例を示す説明図である。
【図８】図１におけるゲートウェイＡの本発明に係わる処理動作例を示すフローチャートである。
【図９】図２におけるエラー応答処理テーブルの更新例を示す説明図である。
【図１０】図１におけるエラー応答パケット（暗号文なし）のフォーマット例を示す説明図である。
【図１１】本発明の暗号通信装置およびそれを設けたネットワーク構成の第２の実施例を示すブロック図である。
【図１２】図１１におけるパケット（平文）のフォーマット例を示す説明図である。
【図１３】図１１におけるパケット（平文）およびパケット（暗号文）のフォーマット例を示す説明図である。
【図１４】図１１におけるエラー応答パケット（平文；エラーパケット付き）のフォーマット例を示す説明図である。
【図１５】図１１におけるゲートウェイＢの処理動作例を示すフローチャートである。
【図１６】図１１におけるエラー応答パケット（平文；エラーパケットなし）のフォーマット例を示す説明図である。
【図１７】従来のネットワーク接続構成例を示すブロック図である。
【図１８】図１７におけるパケットのフォーマット例を示す説明図である。
【図１９】エラーパケット制御を行うネットワーク構成例を示すブロック図である。
【図２０】図１９におけるパケットとエラー応答パケットのフォーマット例を示す説明図である。
【図２１】暗号通信およびエラーパケット制御を行うネットワーク構成例を示すブロック図である。
【図２２】図２１におけるパケット（平文）とパケット（暗号文）のフォーマット例を示す説明図である。
【図２３】図２１におけるパケット（暗号文）とエラー応答パケット（暗号文）のフォーマット例を示す説明図である。
【図２４】従来の他のネットワーク接続構成例を示すブロック図である。
【図２５】図２４におけるパケット（平文）とエラー応答パケット（平文）のフォーマット例を示す説明図である。
【符号の説明】
１，２：ネットワーク、３：情報処理装置Ａ、４：情報処理装置Ｂ、５：ゲートウェイＡ、６：ゲートウェイＢ、５ａ，６ａ：エラーパケット制御部、５ｂ，６ｂ：エラー応答パケットチェック部、５ｃ：暗号文チェック部、５ｄ，６ｄ：エラー応答パケット転送部、５ｅ，６ｅ：転送抑止部、５ｆ，６ｆ：転送停止部、６ｃ：対象パケットチェック部、７，２４：中継装置、８：ネットワーク、９：パケット、１０，１５：ヘッダ部、１１，１６，２３，２４，２７：情報部、１２，１７：宛先アドレス、１３，１８：送信元アドレス、１４：エラー応答パケット、２０，３０，５２：パケット（暗号文）、２１：エラー応答パケット（暗号文）、２５，２９，５１，５３：パケット（平文）、２６：エラー応答パケット（平文）、２８：エラー応答処理テーブル、３１：エラー応答パケット（暗号文付き）、３２：エラー応答パケット（暗号文なし）、３４：送信元アドレスフィールド、３５：宛先アドレスフィールド、３６：カウンタ（；ｎ）フィールド、３８，４４：ＩＰヘッダ部、３９，４６，５０：ＩＰペイロード、４０，４７：送信元アドレス（ＳＡ）、４１，４８：宛先アドレス（ＤＡ）、４２：ＴＴＬフィールド、４３：ＩＣＭＰエラーパケット、４５：ＩＣＭＰヘッダ、５４：エラー応答パケット（平文；エラーパケット付き）、５５：エラー応答パケット（平文；エラーパケットなし）、５６：ゲートウェイＡ、５７：ゲートウェイＢ。
【図１】
0003632167.tif 000002
【図２】
0003632167.tif 000003
【図３】
0003632167.tif 000004
【図４】
0003632167.tif 000005
【図５】
0003632167.tif 000006
【図６】
0003632167.tif 000007
【図７】
0003632167.tif 000008
【図８】
0003632167.tif 000009
【図９】
0003632167.tif 000010
【図１０】
0003632167.tif 000011
【図１１】
0003632167.tif 000012
【図１２】
0003632167.tif 000013
【図１３】
0003632167.tif 000014
【図１４】
0003632167.tif 000015
【図１５】
0003632167.tif 000016
【図１６】
0003632167.tif 000017
【図１７】
0003632167.tif 000018
【図１８】
0003632167.tif 000019
【図１９】
0003632167.tif 000020
【図２０】
0003632167.tif 000021
【図２１】
0003632167.tif 000022
【図２２】
0003632167.tif 000023
【図２３】
0003632167.tif 000024
【図２４】
0003632167.tif 000025
【図２５】
0003632167.tif 000026