(57)【特許請求の範囲】
【請求項１】
端末と暗号通信装置が平文ネットワークで接続され、複数の前記暗号通信装置が暗号ネットワークで接続された暗号通信システムであって、
前記暗号ネットワークには、前記複数の暗号通信装置と暗号通信を行う暗号通信装置登録サーバが接続されており、
前記暗号通信装置登録サーバは、暗号通信システムで使用可能な前記暗号通信装置のアドレスと当該暗号通信装置に平文ネットワークで接続される端末のアドレスとを対応付けて格納するグローバルアドレステーブルを有し、
第一の前記暗号通信装置は、前記端末から平文データを受け取ったとき、受け取った平文データの送信先端末のアドレスを前記暗号通信装置登録サーバに送信し、
前記暗号通信装置登録サーバは、受信した前記送信先端末のアドレスと前記グローバルアドレステーブルとに基づいて、前記送信先端末にかかる第二の前記暗号通信装置のアドレスを前記第一の暗号通信装置に送信し、
前記第一の暗号通信装置は、受け取った平文データと前記送信先端末のアドレスを暗号化し、前記暗号通信装置登録サーバから受信した前記第二の暗号通信装置のアドレスへ暗号化されたデータを暗号文として送信し、
前記第二の暗号通信装置は、受け取った暗号文を復号し、復号された平文データを復号された前記送信先端末のアドレスへ送信することを特徴とする暗号通信システム。
【請求項２】
前記第一の暗号通信装置は、暗号通信システムで使用可能な前記暗号通信装置のアドレスと当該暗号通信装置に平文ネットワークで接続される端末のアドレスを対応付けて格納するローカルアドレステーブルを有し、
前記第一の暗号通信装置は、
前記端末から平文データを受け取ったとき、受け取った平文データの送信先端末のアドレスを前記ローカルアドレステーブル内で検索し、
当該アドレスが見つかった場合には、当該アドレスに対応付けられた前記第二の暗号通信装置のアドレスを用いて、前記暗号化及び送信を行い、
当該アドレスが見つからない場合には、前記送信先端末のアドレスを前記暗号通信装置登録サーバに送信することを特徴とする請求項１に記載の暗号通信システム。
【請求項３】
前記第一の暗号通信装置は、前記暗号通信装置登録サーバから受信した前記第二の暗号通信装置のアドレスと前記送信先端末のアドレスとを、前記ローカルアドレステーブルに対応付けて格納することを特徴とする請求項２に記載の暗号通信システム。
【請求項４】
前記第一の暗号通信装置は、接続されている平文ネットワークに前記ローカルアドレステーブルに登録されていない端末を検出したとき、検出した端末のアドレスと前記第一の暗号通信装置のアドレスを対応付けて登録するよう前記暗号通信装置登録サーバへ要求することを特徴とする請求項３に記載の暗号通信システム。
【請求項５】
前記第一の暗号通信装置は、予め定められた周期で前記ローカルアドレステーブルに登録されている端末の応答を確認し、確認した端末からの応答が無ければ、前記ローカルアドレステーブルから応答の無い端末のアドレスを削除することを特徴とする請求項４に記載の暗号通信システム。
【請求項６】
端末と暗号通信装置が平文ネットワークで接続され、複数の前記暗号通信装置と、暗号通信システムで使用可能な前記暗号通信装置のアドレスと当該暗号通信装置に平文ネットワークで接続される端末のアドレスとを対応付けて格納するグローバルアドレステーブルを有し、前記複数の暗号通信装置と暗号通信を行う暗号通信装置登録サーバとが暗号ネットワークで接続された暗号通信システムの暗号通信装置であって、
前記端末から平文データを受け取ったとき、受け取った平文データの送信先端末のアドレスを暗号通信装置登録サーバに送信するサーバ問い合わせ部と、
受け取った平文データと前記送信先端末のアドレスを暗号化し、前記暗号通信装置登録サーバにて前記送信先端末のアドレスと前記グローバルアドレステーブルとに基づいて特定された受信側の前記暗号通信装置のアドレスへ暗号化されたデータを暗号文として送信する暗号化部と、
暗号文を他の前記暗号通信装置から受け取ったとき、受け取った暗号文を復号し復号された平文データを復号された送信先端末のアドレスへ送信する復号化部と、を備えることを特徴とする暗号通信装置。
【請求項７】
暗号通信システムで使用可能な前記暗号通信装置のアドレスと当該暗号通信装置に平文ネットワークで接続される端末のアドレスを対応付けて格納するローカルアドレステーブルを有し、
前記サーバ問い合わせ部は、前記端末から平文データを受け取ったとき、受け取った平文データの送信先端末のアドレスを前記ローカルアドレステーブル内で検索し、
当該アドレスが見つかった場合には、前記暗号化部は、当該アドレスに対応付けられた受信側の前記暗号通信装置のアドレスを用いて、前記暗号化及び送信を行い、
当該アドレスが見つからない場合には、前記サーバ問い合わせ部は、前記送信先端末のアドレスを前記暗号通信装置登録サーバに送信することを特徴とする請求項６に記載の暗号通信装置。
【請求項８】
前記暗号通信装置登録サーバから受信した前記受信側の暗号通信装置のアドレスと前記送信先端末のアドレスとを、前記ローカルアドレステーブルに対応付けて格納するローカルアドレステーブル管理部を備えることを特徴とする請求項７に記載の暗号通信装置。
【請求項９】
接続されている平文ネットワークに前記ローカルアドレステーブルに登録されていない端末を検出したとき、検出した端末のアドレスと自装置のアドレスを対応付けて登録するよう前記暗号通信装置登録サーバへ要求する端末検出部を備えることを特徴とする請求項８に記載の暗号通信装置。
【請求項１０】
前記ローカルアドレステーブル管理部は、予め定められた周期で前記ローカルアドレステーブルに登録されている端末の応答を確認し、確認した端末からの応答が無ければ、前記ローカルアドレステーブルから応答の無い端末のアドレスを削除することを特徴とする請求項９に記載の暗号通信装置。
【請求項１１】
端末と暗号通信装置が平文ネットワークで接続され、複数の前記暗号通信装置が暗号ネットワークで接続された暗号通信システムにて前記複数の暗号通信装置と暗号通信を行う暗号通信装置登録サーバであって、
暗号通信システムで使用可能な前記暗号通信装置のアドレスと当該暗号通信装置に平文ネットワークで接続される端末のアドレスとを対応付けて格納するグローバルアドレステーブルと、
送信側の前記暗号通信装置から端末に対応した受信側の前記暗号通信装置の問合せを受けたとき、前記グローバルアドレステーブルを参照し、前記受信側の暗号通信装置のアドレスを求めるグローバルアドレステーブル取得部と、
第一の前記暗号通信装置から端末の登録要求を受けたとき、前記グローバルアドレステーブルへ受け取った端末のアドレスと前記第一の暗号通信装置のアドレスとを対応付けて登録するグローバルアドレステーブル登録部を備えることを特徴とする暗号通信装置登録サーバ。
【請求項１２】
前記グローバルアドレステーブル登録部は、予め定められた周期で前記グローバルアドレステーブルに登録されている端末の削除条件を確認し、削除条件を満たした端末の情報を前記グローバルアドレステーブルから削除することを特徴とする請求項１１に記載の暗号通信装置登録サーバ。
【請求項１３】
端末と暗号通信装置が平文ネットワークで接続され、複数の前記暗号通信装置と、暗号通信システムで使用可能な前記暗号通信装置のアドレスと当該暗号通信装置に平文ネットワークで接続される端末のアドレスとを対応付けて格納するグローバルアドレステーブルを有し、前記複数の暗号通信装置と暗号通信を行う暗号通信装置登録サーバとが暗号ネットワークで接続された暗号通信システムで実行する暗号通信方法であって、
第一の前記暗号通信装置は、前記端末から平文データを受け取ったとき、受け取った平文データの送信先端末のアドレスを前記暗号通信装置登録サーバに送信し、
前記暗号通信装置登録サーバは、受信した前記送信先端末のアドレスと前記グローバルアドレステーブルとに基づいて、前記送信先端末にかかる第二の前記暗号通信装置のアドレスを前記第一の暗号通信装置に送信し、
前記第一の暗号通信装置は、受け取った平文データと前記送信先端末のアドレスを暗号化し、前記暗号通信装置登録サーバから受信した前記第二の暗号通信装置のアドレスへ暗号化されたデータを暗号文として送信し、
前記第二の暗号通信装置は、受け取った暗号文を復号し、復号された平文データを復号された前記送信先端末のアドレスへ送信することを特徴とする暗号通信方法。
【請求項１４】
前記第一の暗号通信装置は、暗号通信システムで使用可能な前記暗号通信装置のアドレスと当該暗号通信装置に平文ネットワークで接続される端末のアドレスを対応付けて格納するローカルアドレステーブルを有し、
前記第一の暗号通信装置は、
前記端末から平文データを受け取ったとき、受け取った平文データの送信先端末のアドレスを前記ローカルアドレステーブル内で検索し、
当該アドレスが見つかった場合には、当該アドレスに対応付けられた前記第二の暗号通信装置のアドレスを用いて、前記暗号化及び送信を行い、
当該アドレスが見つからない場合には、前記送信先端末のアドレスを前記暗号通信装置登録サーバに送信することを特徴とする請求項１３に記載の暗号通信方法。
【請求項１５】
前記第一の暗号通信装置は、前記暗号通信装置登録サーバから受信した前記第二の暗号通信装置のアドレスと前記送信先端末のアドレスとを、前記ローカルアドレステーブルに対応付けて格納することを特徴とする請求項１４に記載の暗号通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は計算機ネットワークにおける暗号通信システム、暗号通信方法、暗号通信装置及び暗号通信装置登録サーバに関する。
【背景技術】
【０００２】
LAN(Local Area Network)やWAN(Wide Area Network)等の計算機によるネットワーク通信が広く用いられている。ネットワーク通信において企業などの機密性が高い情報を扱う場合には、情報漏えいを防止しつつネットワークを使用するための暗号化が必須であり、ネットワーク暗号化のための技術、および、ネットワークの暗号化を行う暗号通信装置が多数開発されている。しかし、ネットワークの暗号化を行うためには、暗号通信装置の設置に加え、既設のネットワーク機器の設定変更や暗号通信装置の設定が必要であり、導入の難易度が高いことが課題のひとつである。
【０００３】
暗号通信装置の設定を容易化する技術が、特許文献１に開示されている。特許文献１では、IP(Internet Protocol)アドレスとネットワーク暗号化技術の1つであるIPsecの設定を対応付けたテーブルを用意することで、IPアドレスを設定するのみでIPsecの設定を可能とし、暗号通信装置の設定を容易化している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２００９８１７１０
【発明の概要】
【発明が解決しようとする課題】
【０００５】
暗号通信装置の設定は複雑であり、利用には困難が伴う。特に、既設のネットワーク機器や端末のネットワークアドレスやIPアドレス等の変更が必要となる場合があり、導入の障壁になっている。
【０００６】
そこで本発明は、既設ネットワーク機器の設定の変更を不要とすることにより、ネットワークの暗号化の導入を容易にすることを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、端末と暗号通信装置が平文ネットワークで接続され、複数の前記暗号通信装置が暗号ネットワークで接続された暗号通信システムであって、前記暗号ネットワークには、前記複数の暗号通信装置と暗号通信を行う暗号通信装置登録サーバが接続されており、前記暗号通信装置登録サーバは、暗号通信システムで使用可能な前記暗号通信装置のアドレスと当該暗号通信装置に平文ネットワークで接続される端末のアドレスとを対応付けて格納するグローバルアドレステーブルを有し、第一の前記暗号通信装置は、前記端末から平文データを受け取ったとき、受け取った平文データの送信先端末のアドレスを前記暗号通信装置登録サーバに送信し、前記暗号通信装置登録サーバは、受信した前記送信先端末のアドレスと前記グローバルアドレステーブルとに基づいて、前記送信先端末にかかる第二の前記暗号通信装置のアドレスを前記第一の暗号通信装置に送信し、前記第一の暗号通信装置は、受け取った平文データと前記送信先端末のアドレスを暗号化し、前記暗号通信装置登録サーバから受信した前記第二の暗号通信装置のアドレスへ暗号化されたデータを暗号文として送信し、前記第二の暗号通信装置は、受け取った暗号文を復号し、復号された平文データを復号された前記送信先端末のアドレスへ送信することを特徴とする。
【０００８】
また、本発明は、端末と暗号通信装置が平文ネットワークで接続され、複数の前記暗号通信装置と、暗号通信システムで使用可能な前記暗号通信装置のアドレスと当該暗号通信装置に平文ネットワークで接続される端末のアドレスとを対応付けて格納するグローバルアドレステーブルを有し、前記複数の暗号通信装置と暗号通信を行う暗号通信装置登録サーバとが暗号ネットワークで接続された暗号通信システムの暗号通信装置であって、前記端末から平文データを受け取ったとき、受け取った平文データの送信先端末のアドレスを暗号通信装置登録サーバに送信するサーバ問い合わせ部と、受け取った平文データと前記送信先端末のアドレスを暗号化し、前記暗号通信装置登録サーバにて前記送信先端末のアドレスと前記グローバルアドレステーブルとに基づいて特定された受信側の前記暗号通信装置のアドレスへ暗号化されたデータを暗号文として送信する暗号化部と、暗号文を他の暗号通信装置から受け取ったとき、受け取った暗号文を復号し復号された平文データを復号された送信先端末のアドレスへ送信する復号化部と、を備えることを特徴とする。
また、本発明は、端末と暗号通信装置が平文ネットワークで接続され、複数の前記暗号通信装置が暗号ネットワークで接続された暗号通信システムにて前記複数の暗号通信装置と暗号通信を行う暗号通信装置登録サーバであって、暗号通信システムで使用可能な前記暗号通信装置のアドレスと当該暗号通信装置に平文ネットワークで接続される端末のアドレスとを対応付けて格納するグローバルアドレステーブルと、送信側の前記暗号通信装置から端末に対応した受信側の前記暗号通信装置の問合せを受けたとき、前記グローバルアドレステーブルを参照し、前記受信側の暗号通信装置のアドレスを求めるグローバルアドレステーブル取得部と、第一の前記暗号通信装置から端末の登録要求を受けたとき、前記グローバルアドレステーブルへ受け取った端末のアドレスと前記第一の暗号通信装置のアドレスとを対応付けて登録するグローバルアドレステーブル登録部を備えることを特徴とする。
また、本発明は、端末と暗号通信装置が平文ネットワークで接続され、複数の前記暗号通信装置と、暗号通信システムで使用可能な前記暗号通信装置のアドレスと当該暗号通信装置に平文ネットワークで接続される端末のアドレスとを対応付けて格納するグローバルアドレステーブルを有し、前記複数の暗号通信装置と暗号通信を行う暗号通信装置登録サーバとが暗号ネットワークで接続された暗号通信システムで実行する暗号通信方法であって、第一の前記暗号通信装置は、前記端末から平文データを受け取ったとき、受け取った平文データの送信先端末のアドレスを前記暗号通信装置登録サーバに送信し、前記暗号通信装置登録サーバは、受信した前記送信先端末のアドレスと前記グローバルアドレステーブルとに基づいて、前記送信先端末にかかる第二の前記暗号通信装置のアドレスを前記第一の暗号通信装置に送信し、前記第一の暗号通信装置は、受け取った平文データと前記送信先端末のアドレスを暗号化し、前記暗号通信装置登録サーバから受信した前記第二の暗号通信装置のアドレスへ暗号化されたデータを暗号文として送信し、前記第二の暗号通信装置は、受け取った暗号文を復号し、復号された平文データを復号された前記送信先端末のアドレスへ送信することを特徴とする。
【発明の効果】
【０００９】
本発明により、暗号通信を実現するときに既設のネットワーク機器や端末の設定変更作業を軽減することが可能となる
【図面の簡単な説明】
【００１０】
【図１】実施例における本発明の暗号通信システムの全体構成例を示したブロック図である。
【図２】実施例における暗号通信システムにおける、計算機の構成例を示したブロック図である。
【図３】実施例における暗号通信装置のプログラムモジュール構成を示した図である。
【図４】実施例における暗号通信装置登録サーバのプログラムモジュール構成を示した図である。
【図５】実施例における暗号通信装置が備えるグローバルテーブルの例である。
【図６】実施例における暗号通信装置が備えるMACテーブルの例である。
【図７】実施例における暗号通信装置が備えるローカルテーブルの例である。
【図８】実施例における暗号通信装置の起動処理の流れを示すフローチャートの例である。
【図９（ａ）】実施例における送信側暗号通信装置の処理を示すフローチャートの例である。
【図９（ｂ）】実施例における受信側暗号通信装置の処理を示すフローチャートの例である。
【図１０】実施例における暗号通信装置のARP応答手順を示すフローチャートの例である。
【発明を実施するための形態】
【実施例１】
【００１１】
本発明を実施するための形態について、以下に図面を用いて説明する。なお、各図面で同様の構成には同じ符号を付しその説明を省略する。
【００１２】
図1は、本発明の実施の形態の暗号通信システムの全体構成例を示している。本システムは、暗号通信装置a(10a)、暗号通信装置b(10b)、端末a(20a)、端末b(20b)、暗号通信装置登録サーバ30、暗号ネットワーク40、平文ネットワークa(50a)、平文ネットワークb(50b)で構成される。
【００１３】
暗号通信装置登録サーバ30は、通信インタフェースを備える計算機であり、例えば、WS(Workstation)、あるいは、PC(Personal Computer)であってもよい。暗号通信装置a(10a)、および、暗号通信装置b(10b)は、複数の通信インタフェースを備える計算期であり、例えば、ルータ装置であってもよい。本実施例では、暗号通信装置登録サーバ30は、暗号通信装置a(10a)および暗号通信装置b(10b)とは異なる装置として説明する。しかし、暗号通信装置a(10a)あるいは暗号通信装置b(10b)が暗号通信装置登録サーバ30を兼ねてもよい。端末a(20a)および端末b(20b)は、同様に通信インタフェースを備える計算機であり、ラップトップ型PCや携帯電話等のモバイル通信機器であってもよい。端末a(20a)および端末b(20b)は、同様に通信インタフェースを備える計算機であり、ラップトップ型PCや携帯電話等のモバイル通信機器であってもよい。
【００１４】
暗号ネットワーク40は、例えば、イーサネット(登録商標)上に構築したIPネットワークである。暗号ネットワーク40は、単一または複数のブロードキャストドメインで構成される。暗号ネットワーク40には、１台の暗号通信装置登録サーバ30のみが接続されるが、２台以上の暗号通信装置が接続されてもよい。
【００１５】
平文ネットワークa(50a)および平文ネットワークb(50b)は、同様にIPネットワークである。平文ネットワークa(50a)および平文ネットワークb(50b)は、それぞれ、1つのブロードキャストドメインからなる。平文ネットワークa(50a)には、暗号通信装置a(10a)と端末a(20a)が、平文ネットワークb(50b)には、暗号通信装置b(10b)と端末b(20b)が、それぞれ接続される。それぞれの平文ネットワークには、２台以上の端末が接続されてもよい。
【００１６】
暗号通信装置a(10a)および暗号通信装置b(10b)は、複数の通信インタフェースを備え、それぞれ、暗号ネットワーク40と平文ネットワークa(50a)を、暗号ネットワーク40と平文ネットワークb(50ba)を、ブリッジ接続する。
【００１７】
図2は本実施例の計算機、すなわち、暗号通信装置登録サーバ30、暗号通信装置a(10a)、および、暗号通信装置b(10b)の構成例を示す図である。各計算機は、演算処理を行うプロセッサ1001と、主記憶として機能するメモリ1002と、外部の装置と通信を行うための通信インタフェース1003と、ディスプレイ及びキーボードやマウスなどのユーザインタフェース装置1004と、補助記憶装置1005を備えており、これらは内部バス1006で相互に接続されている。各計算機は、また、時刻情報をプロセッサ1001に提供するための計時部1007を備える。
【００１８】
プロセッサ1001は、計算機の動作を統括的に制御する。メモリ1002は、RAM(Random Access Memory)やROM(Read Only Memory)等で構成され、プロセッサ1001が利用する各種プログラムやデータを記憶する。各種プログラムは、その一部または全部が補助記憶装置1005から適時メモリ1002にロードされてもよい。プロセッサ1001はメモリ1002に格納された各種プログラムを実行して、時計部1007等の他のハードウェア資源との協働により、各計算機における所定の処理を実現する。
【００１９】
図3は、本実施例の暗号通信装置、すなわち、暗号通信装置a(10a)および暗号通信装置b(10b)のプログラムモジュール構成を示す図である。ここでは、例として暗号通信装置a(10a)について示す。暗号通信装置a(10a)は、ルータ検出部101、端末検出部102、サーバ登録部103、MACテーブル104、サーバ問い合わせ部105、ARP代理応答部106、ローカルアドレステーブル107（以下ローカルテーブルと記載）、平文受信部108、暗号部109、平文送信部110、復号部111、ローカルアドレステーブル管理部１１２で構成されている。
【００２０】
ルータ検出部101は、暗号通信装置a(10a)のルーティングテーブルに記載されている暗号ネットワーク40を構成するルータ42にARP要求を送り、ルータ42からのARP応答を受け取り、そこに記載されるルータ42のMACアドレスをMACテーブル104に記録する。
【００２１】
端末検出部102は、平文ネットワークa(50a)に対して、PINGもしくはARPを送り、端末a(20a)が平文ネットワークa(50a)に接続されていることを検出する。平文ネットワークa(50a)は、1つのブロードキャストドメインからなるため、平文ネットワークa(50a)に接続された全ての端末は暗号通信装置a(10a)と同一のネットワークアドレスを持つ。このネットワークアドレスに属するすべてのIPアドレスに対してPINGあるいはARPを送信することにより、平文ネットワークa(50a)に接続された、端末a(20a)を含む全ての端末を検出することが可能である。また、平文ネットワークa(50a)に接続されたすべての端末がブロードキャストPINGに応答することが保障されている場合は、ブロードキャストPINGを用いることによって、端末を検出することも可能である。端末検出部102は、端末a(20a)を検出すると、検出された端末a(20a)のIPアドレスとMACアドレスをサーバ登録部103へ渡す。
【００２２】
サーバ登録部103は、端末検出部102から端末a(20a)のIPアドレスを受け取ると、暗号通信装置a(10a)自身のIPアドレスと端末a(20a)のIPアドレスとMACアドレスの組を、暗号通信装置登録サーバ30へ登録するための通信を行う。
【００２３】
MACテーブル104には、ルータ検出部101にて検出されたルータ42や、暗号ネットワーク40を介して接続された他の暗号通信装置に接続された端末、例えば、端末b(20b)の、IPアドレスとMACアドレスの組が記録される。
【００２４】
サーバ問い合わせ部105は、平文ネットワークa(50a)に接続された端末a(20a)から、暗号ネットワーク40を介して接続された端末、例えば、端末b(20b)に対する通信を行う際に必要となる、端末b(20b)が接続される暗号通信装置b(10b)のIPアドレスと端末b(20b)のIPアドレスの組を、暗号通信装置登録サーバ30に問い合わせる。問い合わせにより得られた暗号通信サーバb(10b)のIPアドレスと端末b(20b)のIPアドレスの組は、ローカルテーブル107にキャッシュとして記録される。
【００２５】
ARP代理応答部106は、端末a(20a)から、暗号ネットワーク40を介して接続された端末、例えば、端末b(20b)へ通信を行うためのARP要求に、通信先の端末の代理で応答する。ARP要求には、通信先の端末のIPアドレスが記載されている。IPアドレスが暗号通信装置a(10a)と同じネットワークアドレスを持つ場合、ARP代理応答部106は、MACテーブル104を検索し、IPアドレスに対応するMACアドレスを取得する。MACテーブル104に対応するエントリが無い場合は、サーバ問い合わせ部105を介して、暗号通信装置登録サーバ30より、IPアドレスに対応するMACアドレスを取得する。ARP代理応答部106は、得られたMACアドレスを、ARP応答として端末a(20a)に返す。IPアドレスが暗号通信装置a(10a)とは異なるネットワークアドレスを持つ場合、ARP代理応答部106は、MACテーブル104に格納されている、ルータ検出部101で取得したルータ42のMACアドレスを、ARP応答として端末a(20a)に返す。
【００２６】
ローカルテーブル107は、サーバ問い合わせ部105が、暗号通信装置登録サーバ30より取得した、暗号通信サーバのIPアドレスと端末のIPアドレスの組を、最終登録日時と合わせてローカルアドレステーブル管理部112経由で記録する。ローカルテーブル107はローカルアドレステーブル管理部によりメンテナンスされ、周期的にエントリの最終登録日時を確認し、古い内容を削除される。本実施例では、例えば、3分以上古いエントリは削除する。
【００２７】
平文受信部108は、平文ネットワークa(50a)を介して、端末a(20a)からの通信パケットを受信する。平文受信部108は、受信したパケットに含まれる通信先端末の宛先IPアドレスをサーバ問い合わせ部105に渡す。サーバ問い合わせ部105は、受け取ったIPアドレスを持つ端末が接続されている暗号通信装置の情報を取得するための問い合わせを、暗号通信装置登録サーバ30に送る。サーバ問い合わせ部105は、暗号通信装置登録サーバ30から、回答として、例えば、宛先IPアドレスを持つ端末b(20b)が接続されている暗号通信装置b(10b)のIPアドレスを受け取る。サーバ問い合わせ部105はこの暗号通信装置b(10b)のIPアドレスを平文受信部108へ返す。平文受信部108は、受信したパケットと、サーバ問い合わせ部105より受け取ったIPアドレスを暗号通信宛先IPアドレスとして暗号部109に渡す。
【００２８】
暗号部109は、平文受信部108より受け取ったパケットの暗号化を行い、暗号化したパケットを、暗号ネットワーク40を介して、暗号通信宛先IPアドレス、すなわち、暗号通信装置b(10b)に対して送信する。ここで、暗号部109による暗号化の対象は、イーサネット(登録商標)ヘッダとそれ以下のペイロード、すなわちIPヘッダ、トランスポート層のヘッダ、ペイロードである。また、暗号化に用いるアルゴリズムは、対向する暗号通信装置b(10b)が復号できるものであればよく、例えば、DES(Data Encryption Standard)やAES(Advanced Encryption Standard)であってもよい。
【００２９】
復号部111は、暗号ネットワーク40より受け取ったパケットの復号化を行う。復号部111は、復号したパケットに含まれる通信先の端末のIPアドレスを用いてMACテーブル104を検索し、パケットの通信先の端末、例えば、端末a(20a)のMACアドレスを取得する。復号部111は、復号したパケットと送信先の端末a(20a)のMACアドレスを平文送信部110に渡す。
【００３０】
平文送信部110は、復号部111より受け取ったパケットを、平文ネットワークa(50a)を介して、送信先の端末a(20a)に対して送信する。
【００３１】
図4は、本実施例の暗号通信装置登録サーバ30のプログラムモジュール構成を示す図である。暗号通信装置登録サーバ30は、グローバルアドレステーブル31（以下グローバルテーブルと記載）、グローバルテーブル登録部32、グローバルテーブル取得部33からなる。
【００３２】
グローバルテーブル31は、本実施例の暗号通信システムに接続される端末について、端末が接続される暗号通信装置のIPアドレス、端末のIPアドレス、端末のMACアドレス、および、最終登録日時の組が記録される。グローバルテーブル31はメンテナンス機構を備えており、周期的にエントリの最終登録日時を確認し、古い内容を削除する。本実施例では、例えば、3分以上古いエントリは削除する。
【００３３】
グローバルテーブルに登録された端末のうち安全な場所に設置された端末のアドレスは削除するまでの時間を長くしても良いし、削除しないような運用とすればグローバルテーブル更新の負荷を軽減することができる。
【００３４】
また、特定の端末のアドレスは起動時に外部記憶装置から読み込んだ後で暗号通信サービスを開始することにより、サービス開始後に発生するアドレス登録処理のためのオーバーヘッドを軽減できる。外部記憶装置から読み込む端末のアドレスはサービス終了時に登録されていたアドレスでも良いし、暗号通信システムで頻繁に使用することが予想される予め登録された端末のアドレスでも良い。
【００３５】
グローバルテーブル登録部32は、暗号通信装置のサーバ登録部103から受け取った暗号通信装置のIPアドレス、端末のIPアドレス、端末のMACアドレスに、最終登録日時を付加して、グローバルテーブル31に登録する。既にグローバルテーブル31に対応する端末の情報が登録されていた場合は、最終登録日時を更新する。
【００３６】
グローバルテーブル取得部33は、暗号通信装置のサーバ問い合わせ部105の問い合わせに応じて、グローバルテーブル31を検索し、対応する端末が接続されている暗号通信装置のIPアドレス、端末のIPアドレス、端末のMACアドレスの組を返す。
【００３７】
図5は、実施例におけるグローバルテーブル31の記録内容の例を示す。グローバルテーブルには、端末が接続される暗号通信装置のIPアドレス311、端末のIPアドレス312、端末のMACアドレス313、および、最終登録日時314がエントリとして記録される。
【００３８】
図6は、実施例におけるMACテーブル104の記録内容の例を表す。MACテーブル104には、ルータ検出部101で検出したルータ42、および、サーバ問い合わせ部105により取得した各端末について、端末のIPアドレス1040および端末のMACアドレス1041がエントリとして記録される。
【００３９】
図7は、実施例におけるローカルテーブル107の記録内容の例を示す。ローカルテーブル107には、暗号通信装置のIPアドレス1070、端末のIPアドレス1071、および、最終登録日時1072がエントリして記録される。
【００４０】
本実施例の暗号通信システムを構成する装置の処理の流れを、フローチャートを用いて以下に説明する。
【００４１】
図8は、実施例における暗号通信装置a(10a)の起動処理の流れを示すフローチャートである。
【００４２】
最初に、暗号通信装置a(10a)は、ルータ検出部101において、装置自身のネットワーク設定情報を参照し、ルータのアドレスが設定されているかを判定する(S801)。
【００４３】
ルータのアドレスが設定されている場合(S801においてYes)、例えば、ルータ42のアドレスが設定されている場合、ルータ42に対してARP要求を行うことでルータ42のMACアドレスを取得し(S802)、ルータ42のMACアドレスをMACテーブル104に記録する。ルータ42のアドレスが設定されていない場合(S801においてNo)、暗号通信装置a(10a)自身のMACアドレスをMACテーブル104に記録する。
【００４４】
続いて、暗号通信装置a(10a)は、端末検出部102において、装置自身のネットワーク設定情報を参照し、平文ネットワークa(20a)のネットワークアドレスを取得し(S805)、取得したネットワークアドレスにおいて有効なホストアドレスの最小値と最大値を計算し(S806)、ホストアドレスとして最小値を選択する（S807）。
【００４５】
暗号通信装置a(10a)は、選択したホストアドレスに対してARP要求を送信し(S808)、ARP応答があるかを判定する(S809)。ARP応答がある場合(S809においてYes)、例えば、対応するホストアドレスを持つ端末a(20a)が応答した場合、暗号通信装置a(10a)は、サーバ登録部103を呼び出して、暗号通信装置登録サーバ30のグローバルテーブル31に検出した端末a(20a)のエントリを登録し(S810)、次の処理に移る。ARP応答がない場合(S809においてNo)は、ホストアドレスに対応する端末は見つからなかったものとして、次の処理に移る。
【００４６】
続いて、暗号通信装置a(10a)は、選択したホストアドレスに1を加算し新たなホストアドレスを選択する(S811)、選択したホストアドレスが、ネットワークアドレスにおいて有効なホストアドレスの最大値を超えたかを判定する(S812)。選択したホストアドレスが最大値を超えない場合(S812においてNo)、ARP要求を送信する処理(S808)へ戻り、端末の検出処理を繰り返す。選択したホストアドレスが最大値を超えた場合(S812においてYes)、暗号通信装置a(10a)は、起動手順を終了する。
【００４７】
以上の処理により、暗号ネットワーク40に接続されるルータ42の情報は暗号通信装置a(10a)のMACテーブル104に登録され、平文ネットワークa(50a)に接続される端末a(20a)の情報は暗号通信装置登録サーバ30のグローバルテーブル31に登録される。
【００４８】
図9（a）(b)は、本実施例の暗号通信システムにおける通信手順を示すフローチャートである。ここでは、端末a(20a)から端末b(20b)に対して暗号通信を行う例を説明する。
【００４９】
図９（a）は送信側の暗号処理装置aの動作を説明する。最初に、端末a(20a)から端末b(20b)に対して送信される通信パケットを、暗号通信装置a(10a)の平文受信部108が受信する(S901)平文受信部108は、受信した通信パケットから宛先IPアドレスを取り出し、サーバ問い合わせ部105を呼び出す。サーバ問い合わせ部105は、ローカルアドレステーブル管理部112経由でローカルテーブル107を検索し、宛先IPアドレスに対応する端末IPアドレス1071に持つエントリが存在するか判定する(S903)。対応する端末IPアドレス1071を持つエントリが存在する場合(S903においてYes)、ローカルテーブル107の当該エントリより暗号通信装置IPアドレス1070を暗号通信装置b(10b)のIPアドレスとして取得する(S904)。対応する端末IPアドレス1071を持つエントリが存在しない場合(S903においてNo)、サーバ問い合わせ部105が暗号通信装置登録サーバ30に対して宛先IPアドレスに対応する端末の情報の問い合わせを行い(S905)、暗号通信装置登録サーバ30からの応答として暗号通信装置b(10b)のIPアドレスが取得できるか判定する。暗号通信装置b(10b)のIPアドレスが取得できない場合(S906においてNo)、端末a(20a)にICMPのDestination unreachableパケットを送るなどして、通信処理をキャンセルし(S907)、処理を終了する。
【００５０】
暗号通信装置b(10b)のIPアドレスが取得できた場合(S904の後、および、S906においてYes)、暗号通信装置a(10a)と暗号通信装置b(10b)の間に確立済みの暗号通信接続があるかどうか、確立済みの通信を保持するテーブルなどを用いて判定する(S908)。確立済みの暗号通信接続がない場合(S908においてNo)、暗号通信装置a(10a)から暗号通信装置b(20b)に対して暗号通信接続を確立する(S909)。暗号通信の接続方法については、TLS(Transport Layer Security)などの既存の暗号通信方式を用いてもよい。
【００５１】
確立済みの暗号通信接続が存在する場合(S908においてYes、および、S909の後)、暗号通信装置a(10a)の暗号部109において端末a(20a)より受信した通信パケットを暗号化し、暗号ネットワーク40を介して暗号通信装置b(10b)に対して送信する(S910)。
【００５２】
図9（a）において、ステップS901の直後に、通信の送信元IPアドレスを取り出しローカルテーブル107にあるかどうかを判定し、ローカルテーブル107にこの送信元IPアドレスがない場合に、通信の送信元MACアドレスと送信元IPアドレスを取り出してローカルテーブル107に追加し、さらに暗号通信装置登録サーバ30に登録するようにしても良い。これにより、図8に示した能動的な端末検出処理よりも後に平文ネットワークa(50a)に接続された端末を受動的に検出し、検出した端末の情報をローカルテーブル107およびグローバルテーブル31に登録することができる。
【００５３】
図９（ｂ）では受信側の暗号処理装置ｂの動作を説明する。暗号通信装置b(10b)は、暗号ネットワーク40を介して受信した暗号化されたパケットを、復号部111において複合し(S911)、復号した通信パケットの送信元IPアドレスが宛先IPアドレスと同一ネットワークであるかを判定する(S912)。送信元IPアドレスと宛先IPアドレスが同一ネットワークでない場合(S912においてNo)、MACテーブル104を参照し、復号した通信パケットの、送信元MACアドレスをルータ42のMACアドレスに、宛先MACアドレスを端末b(20b)のMACアドレスに、それぞれ変更し(S913)、暗号装置b(20b)の平文送信部110から、平文ネットワークb(50b)を介して端末b(20b)に送信し(S914)、処理を終了する。送信元IPアドレスと宛先IPアドレスが同一ネットワークである場合(S912においてYes)、復号した通信パケットをそのまま、端末b(20b)に送信し(S914)、処理を終了する。
【００５４】
以上の処理により、端末a(20a)から端末b(20b)への通信パケットは、暗号通信装置a(10a)によって暗号化され、途中暗号ネットワーク40を介して暗号通信装置b(10b)に到着し、暗号通信装置b(10b)によって復号化され、端末b(20b)に到着する。
【００５５】
図10は、暗号通信装置a(10a)のARP応答手順を示すフローチャートである。
【００５６】
暗号通信装置a(10a)は、端末a(20a)からのARP要求を受け取ると(S1001)、ARP代理応答部106において、ARP要求先IPアドレスはARP要求元の端末a(20a)と同一ネットワークであるかを判定する(S1002)。同一ネットワークでない場合(S1002においてNo)、ルータのIPアドレスがMACテーブル104に存在するかを判定する(S1003)。存在した場合(S1003においてYes)、ARP代理応答部106がルータのMACアドレスを用いて端末a(20a)にARP応答を返し(S1004)、処理を終了する。存在しない場合（S1003においてNo）そのまま処理を終了する。
【００５７】
一方、ARP要求先IPアドレスが同一ネットワークである場合(S1002においてYes)、ARP要求先のIPアドレスに対応するエントリがMACテーブル104に存在するか判定する(S1005)。
【００５８】
対応するエントリがMACテーブル104に存在しない場合(S1005においてNo)、サーバ問い合わせ部105が、暗号通信装置登録サーバ30に対して、ARP要求先のIPアドレスに対応するMACアドレスの問い合わせを行い(S1006)、暗号通信装置登録サーバ30からARP要求先のIPアドレスに対応するMACアドレスが得られたか判定する(S1007)。対応するMACアドレスが得られなかった場合(S1007においてNo)、そのまま処理を終了する。対応するMACアドレスが得られた場合(S1007においてYes)、MACテーブル104に要求先IPアドレスと取得したMACアドレスの組を登録する(S1008)。
【００５９】
ARP要求先のIPアドレスに対応するエントリがMACテーブル104に存在する場合(S1005においてYes、および、S1008の後)、ARP代理応答部106が、MACテーブル104を参照して端末a(20a)にARP応答を返し(S1009)、処理を終了する。
【００６０】
以上の処理により、端末a(20a)は、暗号通信装置a(10a)によって、暗号ネットワーク40を介して接続される他の端末b(20b)のMACアドレス、あるいはパケットを中継するルータのMACアドレスを取得することができる。
【００６１】
以上に説明したように、本実施例の暗号通信システムにおいては、送信元端末a(20a)から送信された通信パケットは、暗号通信装置a(10a)によって暗号化され、暗号ネットワーク40を介して接続される他の暗号通信装置b(10b)に送られる。そして、暗号化されたパケットは、受信した暗号通信装置b(10b)により復号され、送信先端末b(20b)に届く。また、通信先の選択やパケット変換は暗号通信装置a(10a)が行うため、既設のネットワーク機器であるルータ42や端末a(20)、端末b(20b)の設定を変更する必要がなく、既設のネットワークに暗号通信装置a(10a)、暗号通信装置b(10b)と暗号通信装置登録サーバ30を設置するのみで暗号化通信が可能となる。
【符号の説明】
【００６２】
10a, 10b:暗号通信装置、 20a, 20b:端末、30:暗号通信装置登録サーバ、31:グローバルアドレステーブル、32:グローバルアドレステーブル登録部、33:グローバルアドレステーブル取得部、40:暗号ネットワーク、101:ルータ検出部、102:端末検出部、103:サーバ登録部、104:MACテーブル、105:サーバ問合せ部、106:APP代理応答部、107:ローカルアドレステーブル、108平文受信部、109:暗号部、110:平文送信部、111:復号部
【図１】
0006396831.tif 000002
【図２】
0006396831.tif 000003
【図３】
0006396831.tif 000004
【図４】
0006396831.tif 000005
【図５】
0006396831.tif 000006
【図６】
0006396831.tif 000007
【図７】
0006396831.tif 000008
【図８】
0006396831.tif 000009
【図９（ａ）】
0006396831.tif 000010
【図９（ｂ）】
0006396831.tif 000011
【図１０】
0006396831.tif 000012