(57)【要約】【課題】任意のサーバ装置に対してネットワークを介してアクセスする際に、アクセス元の匿名性を確保し、通信経路における情報漏洩を防ぐ。【解決手段】クライアント装置４００から対象サーバ装置１００にＨＴＴＰリクエストＳを行う際に暗号化し、中継サーバ装置３００宛にＩＰパケットＩＰ２０として送信する。中継サーバ装置３００では、これを復号し、送信元情報を中継サーバ装置３００に書き換え、対象サーバ装置１００にＩＰパケットＩＰ３０として転送する。中継サーバ装置３００は、対象サーバ装置１００からのＨＴＴＰレスポンスＲをＩＰパケットＩＰ４０として受信したら、これを暗号化し、クライアント装置４００にＩＰパケットＩＰ５０として返信する。クライアント装置４００は、これを復号し、送信元情報を対象サーバ装置１００に書き換えて、ＨＴＴＰレスポンスＲを取り出す。【選択図】図５
2019216309.tif 000002
【特許請求の範囲】
【請求項１】
アクセスの対象となる対象サーバ装置に対してネットワークを介して接続し、パケット通信を行うためのパケット通信システムであって、
前記対象サーバ装置との間でパケット通信を行うクライアント装置と、前記クライアント装置と前記対象サーバ装置との間のパケット通信を中継する中継サーバ装置と、を備え、
前記クライアント装置は、
前記クライアント装置を送信元とし前記対象サーバ装置をあて先として、前記対象サーバ装置に対して送信すべき所定の送信データをデータ部に含む第１のパケットを作成する処理を行う通信制御部と、
前記第１のパケットの少なくとも一部を暗号化して送信用暗号データを作成するクライアント用暗号化処理部と、
前記クライアント装置を送信元とし前記中継サーバ装置をあて先として、前記送信用暗号データをデータ部に含む第２のパケットを作成して送信するパケット送信部と、
を有し、
前記中継サーバ装置は、
前記第２のパケットを受信し、そのデータ部に含まれている前記送信用暗号データを復号して前記第１のパケットを復元する中継サーバ用復号処理部と、
復元された前記第１のパケットの送信元を前記中継サーバ装置に変更することにより第３のパケットを作成し、作成した前記第３のパケットを送信するパケット転送部と、
前記第３のパケットに対する応答として前記対象サーバ装置から返信されてきた第４のパケットを受信し、その少なくとも一部を暗号化して返信用暗号データを作成する中継サーバ用暗号化処理部と、
前記中継サーバ装置を送信元とし前記クライアント装置をあて先として、前記返信用暗号データをデータ部に含む第５のパケットを作成し、作成した前記第５のパケットを送信するパケット返信部と、
を有し、
前記クライアント装置は、更に、
前記第５のパケットを受信し、そのデータ部に含まれている前記返信用暗号データを復号して前記第４のパケットを復元するクライアント用復号処理部と、
復元された前記第４のパケットのあて先を前記クライアント装置に変更することにより第６のパケットを作成するパケット受信部と、
を有し、
前記通信制御部は、更に、前記第６のパケットのデータ部に含まれている返信データを取り出す処理を行うことを特徴とするパケット通信システム。
【請求項２】
請求項１に記載のパケット通信システムにおいて、
通信制御部が、
ヘッダ部とデータ部とを含む第１のパケットを作成する処理を行い、
前記第１のパケットのデータ部には、対象サーバ装置に対して送信すべき所定の送信データを格納し、
前記第１のパケットのヘッダ部には、クライアント装置のアドレスを示す送信元アドレスと、対象サーバ装置のアドレスを示すあて先アドレスと、を格納することを特徴とするパケット通信システム。
【請求項３】
請求項２に記載のパケット通信システムにおいて、
通信制御部が、
第１のパケットとして、ＩＰヘッダ部とＩＰデータ部とを含むＩＰパケットを作成する処理を行い、
前記ＩＰデータ部には、ＴＣＰヘッダ部とＴＣＰデータ部とを含むＴＣＰパケットを格納し、前記ＴＣＰデータ部には、送信データを格納することを特徴とするパケット通信システム。
【請求項４】
請求項２または３に記載のパケット通信システムにおいて、
クライアント用暗号化処理部が、第１のパケットのデータ部の全部もしくは一部を暗号化して送信用暗号データを作成し、
パケット送信部が、
ヘッダ部とデータ部とを含む第２のパケットを作成する処理を行い、
前記第２のパケットのデータ部には、前記送信用暗号データを格納するカプセル化処理を行い、
前記第２のパケットのヘッダ部には、クライアント装置のアドレスを示す送信元アドレスと、中継サーバ装置のアドレスを示すあて先アドレスと、を格納することを特徴とするパケット通信システム。
【請求項５】
請求項４に記載のパケット通信システムにおいて、
パケット送信部が、
第２のパケットとして、ＩＰヘッダ部とＩＰデータ部とを含むＩＰパケットを作成する処理を行い、
前記ＩＰデータ部に、送信用暗号データを格納することによりカプセル化処理を行い、前記第２のパケットをＴＣＰ／ＩＰのプロトコルに従って送信することを特徴とするパケット通信システム。
【請求項６】
請求項４または５に記載のパケット通信システムにおいて、
パケット転送部が、
ヘッダ部とデータ部とを含む第３のパケットを作成する処理を行い、
前記第３のパケットのデータ部には、復元された第１のパケットのデータ部を格納し、
前記第３のパケットのヘッダ部には、中継サーバ装置のアドレスを示す送信元アドレスと、対象サーバ装置のアドレスを示すあて先アドレスと、を格納することを特徴とするパケット通信システム。
【請求項７】
請求項６に記載のパケット通信システムにおいて、
パケット転送部が、
第３のパケットとして、ＩＰヘッダ部とＩＰデータ部とを含むＩＰパケットを作成する処理を行い、
前記ＩＰデータ部に、復元された第１のパケットのデータ部を格納し、前記第３のパケットをＴＣＰ／ＩＰのプロトコルに従って送信することを特徴とするパケット通信システム。
【請求項８】
請求項１〜７のいずれかに記載のパケット通信システムにおいて、
中継サーバ用暗号化処理部が、ヘッダ部とデータ部とを含む第４のパケットを受信し、受信した前記第４のパケットのデータ部の全部もしくは一部を暗号化して返信用暗号データを作成し、
パケット返信部が、
ヘッダ部とデータ部とを含む第５のパケットを作成する処理を行い、
前記第５のパケットのデータ部には、前記返信用暗号データを格納するカプセル化処理を行い、
前記第５のパケットのヘッダ部には、中継サーバ装置のアドレスを示す送信元アドレスと、クライアント装置のアドレスを示すあて先アドレスと、を格納することを特徴とするパケット通信システム。
【請求項９】
請求項８に記載のパケット通信システムにおいて、
パケット返信部が、
第５のパケットとして、ＩＰヘッダ部とＩＰデータ部とを含むＩＰパケットを作成する処理を行い、
前記ＩＰデータ部に、返信用暗号データを格納することによりカプセル化処理を行い、前記第５のパケットをＴＣＰ／ＩＰのプロトコルに従って送信することを特徴とするパケット通信システム。
【請求項１０】
請求項８または９に記載のパケット通信システムにおいて、
パケット受信部が、
ヘッダ部とデータ部とを含む第６のパケットを作成する処理を行い、
前記データ部には、復元された第４のパケットのデータ部を格納し、
前記第６のパケットのヘッダ部には、対象サーバ装置のアドレスを示す送信元アドレスと、クライアント装置のアドレスを示すあて先アドレスと、を格納することを特徴とするパケット通信システム。
【請求項１１】
請求項１０に記載のパケット通信システムにおいて、
パケット受信部が、
第６のパケットとして、ＩＰヘッダ部とＩＰデータ部とを含むＩＰパケットを作成する処理を行い、
前記ＩＰデータ部に、復元された第４のパケットに含まれていた返信データを格納することを特徴とするパケット通信システム。
【請求項１２】
請求項１〜１１のいずれかに記載のパケット通信システムにおいて、
複数ｎ台のクライアント装置とこれらｎ台のクライアント装置のそれぞれに対応づけられたｎ台の中継サーバ装置とを備え、
各クライアント装置のパケット送信部は、それぞれ対応づけられた特定の中継サーバ装置宛に第２のパケットを送信し、
各中継サーバ装置のパケット返信部は、それぞれ対応づけられた特定のクライアント装置宛に第５のパケットを送信することを特徴とするパケット通信システム。
【請求項１３】
請求項１〜１１のいずれかに記載のパケット通信システムにおいて、
パケット転送部が、復元された第１のパケットの送信元を示す情報を第３のパケットに埋め込む処理を行い、
中継サーバ用暗号化処理部が、受信した第４のパケットに埋め込まれていた前記送信元を示す情報を読み出してパケット返信部に伝達する処理を行い、
パケット返信部が、前記送信元を示す情報をあて先となるクライアント装置とする第５のパケットを作成することを特徴とするパケット通信システム。
【請求項１４】
請求項１３に記載のパケット通信システムにおいて、
パケット転送部が、ＴＣＰ／ＩＰのプロトコルに従った第３のパケットを作成し、その際に、第３のパケットに含まれるＴＣＰヘッダ部内に、送信元ポート番号として第１のパケットの送信元を示す情報を埋め込む処理を行い、
パケット返信部が、第４のパケットに含まれるＴＣＰヘッダ部内に、あて先ポート番号として埋め込まれていた情報に基づいて、第５のパケットの送信先を決定することを特徴とするパケット通信システム。
【請求項１５】
請求項１〜１１のいずれかに記載のパケット通信システムにおいて、
中継サーバ装置が、更に、通信情報記録部を有し、
パケット転送部が、第３のパケットを送信する際に、復元された第１のパケットの送信元を示す情報と前記第３のパケットとの対応関係を示す対応関係情報を前記通信情報記録部に記録する処理を行い、
パケット返信部が、第５のパケットを送信する際に、前記通信情報記録部に記録されている前記対応関係情報に基づいて、第５のパケットの送信先を決定することを特徴とするパケット通信システム。
【請求項１６】
請求項１５に記載のパケット通信システムにおいて、
パケット転送部が、ＴＣＰ／ＩＰのプロトコルに従った第３のパケットを作成し、その際に、第３のパケットに含まれるＴＣＰヘッダ部内に、前記第３のパケットを示すためのパケット識別子をポート番号として埋め込み、当該パケット識別子と復元された第１のパケットの送信元を示す情報との対応関係を対応関係情報として通信情報記録部に記録する処理を行い、
パケット返信部が、第４のパケットに含まれるＴＣＰヘッダ部内にポート番号として埋め込まれていたパケット識別子を利用して、前記通信情報記録部に記録されている前記対応関係情報を参照することにより、前記第１のパケットの送信元に対して、第５のパケットを送信することを特徴とするパケット通信システム。
【請求項１７】
請求項１〜１６のいずれかに記載のパケット通信システムにおいて、
中継サーバ装置が第１国の領域内に設置されており、クライアント装置が第２国の領域内に設置されており、前記クライアント装置が、前記第１国の領域内に設置されている対象サーバ装置に対してアクセスを行う際に、前記第１国の領域内に設置されている中継サーバ装置による中継を介してアクセスを行うことを特徴とするパケット通信システム。
【請求項１８】
請求項１〜１７のいずれかに記載のパケット通信システムにおいて、
クライアント装置が、所定のＯＳプログラムと、このＯＳプログラムの下で動作する１つもしくは複数のアプリケーションプログラムと、をインストールしたコンピュータによって構成されており、
クライアント用暗号化処理部、パケット送信部、クライアント用復号処理部およびパケット受信部が、前記アプリケーションプログラムの実行により機能することを特徴とするパケット通信システム。
【請求項１９】
請求項１〜１７のいずれかに記載のパケット通信システムにおける１台のクライアント装置。
【請求項２０】
請求項１〜１７のいずれかに記載のパケット通信システムにおけるクライアント用暗号化処理部、パケット送信部、クライアント用復号処理部およびパケット受信部としてコンピュータを機能させるプログラム。
【請求項２１】
請求項１〜１７のいずれかに記載のパケット通信システムにおいて、
中継サーバ装置が、所定のＯＳプログラムと、このＯＳプログラムの下で動作する１つもしくは複数のアプリケーションプログラムと、をインストールしたコンピュータによって構成されており、
中継サーバ用復号処理部、パケット転送部、中継サーバ用暗号化処理部およびパケット返信部が、前記アプリケーションプログラムの実行により機能することを特徴とするパケット通信システム。
【請求項２２】
請求項１〜１７のいずれかに記載のパケット通信システムにおける１台の中継サーバ装置。
【請求項２３】
請求項１〜１７のいずれかに記載のパケット通信システムにおける中継サーバ用復号処理部、パケット転送部、中継サーバ用暗号化処理部およびパケット返信部としてコンピュータを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット通信システムに関し、特に、ネットワークを介して特定のサーバ装置との間でパケット通信プロトコルに従ったデータパケットのやりとりにより、相互に通信を行うシステムに関する。
【背景技術】
【０００２】
インターネットに代表されるネットワークを介したデータ通信では、ＴＣＰ／ＩＰやＵＤＰ／ＩＰ等のパケット通信プロトコルに従って、データを個々のパケットとして送受信する方法が一般化している。また、基本的には、これらの既存の通信プロトコルに従いつつ、より多様な通信方式を実現する工夫も種々提案されている。
【０００３】
たとえば、下記の特許文献１には、ＴＣＰ／ＩＰプロトコルと同程度の信頼性を確保した通信を、ＵＤＰ／ＩＰプロトコルを利用して行うパケット通信方式が開示されている。また、特許文献２には、ＬＡＮで接続された通信端末とホストとの間において、カプセル化の技術を用いることにより、ＴＣＰ／ＩＰプロトコルを利用して通信制御を行う方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−０５６４７９号公報
【特許文献２】特開平１０−２３３８２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
インターネット等の通信環境の普及により、現在は、個人ユーザが、パソコン、携帯電話、タブレット型端末などのクライアント装置を利用して、世界中の様々なサーバ装置にアクセスを行い、必要な情報を得るようになってきている。このような個人ユーザのプライバシーを保護するために、どの個人ユーザが、どのクライアント装置から、どのサーバ装置にアクセスし、どのようなデータを取得したか、といった個人情報を保護することが非常に重要になってきている。しかしながら、現在普及している通信システムでは、必ずしも個人情報の保護を十分に行うことはできない。
【０００６】
第１の問題は、ユーザがクライアント装置から特定のサーバ装置に対してアクセスした場合、当該サーバ装置に対して、クライアント装置の所在を示す送信元アドレスが送信されるため、アクセス元の匿名性、覆面性が失われる点である。たとえば、クライアント装置に組み込まれたＷｅｂブラウザを用いて、特定のＷｅｂサーバ装置をアクセスする際には、当該クライアント装置のＩＰアドレスを送信元アドレスとして、当該Ｗｅｂサーバ装置に送信する必要がある。
【０００７】
最近は、ルータを介した通信が一般的になってきているため、Ｗｅｂサーバ装置に直接的に送信される送信元アドレスは、クライアント装置に付されたプライベートＩＰアドレスではなく、ルータに付与されたグローバルＩＰアドレスということになるが、それでも、送信元としてのルータがグローバルＩＰアドレスとして特定されてしまう。また、当該ルータに接続された個々のクライアント装置はポート番号として区別されることになるが、当該ポート番号もＷｅｂサーバ装置に送信されるため、ポート番号の解析により、送信元のクライアント装置まで特定されてしまうおそれもある。その結果、Ｗｅｂサーバ装置に対してアクセスを行ったユーザの匿名性、覆面性が失われる可能性があり、当該Ｗｅｂサーバ装置の管理者が悪意をもった者であった場合、送信元のクライアント装置に対して不正な攻撃が行われるおそれもある。
【０００８】
第２の問題は、クライアント装置とサーバ装置との間の通信経路において、情報漏洩が生じる可能性がある点である。両者間で送受されるデータパケットが不正な方法で第三者に取得されると、情報が漏れてしまう。特に、最近は、無線ルータなどの普及により、無線通信経路が介在する環境でアクセスを行うケースも少なくない。このようなケースでは、無線通信経路が盗聴されると、情報が漏洩することになる。
【０００９】
最近は、ＳＳＬ等を利用したセキュアな通信経路も普及してきており、オンラインバンキングサービスを提供するＷｅｂサイトなど、情報を暗号化してやりとりするサイトも増えてきているが、そのためには、Ｗｅｂサーバ装置側に対応機能を設ける必要があり、一般のＷｅｂサイトにまで普及するには至っていない。実際、個人ユーザが一般的なＷｅｂサイトを閲覧する場合、クライアント装置とサーバ装置との間には、十分セキュアな通信経路が確立されていないケースがほとんどである。特に、移動中のユーザがＷｉＦｉスポットなどを利用してＷｅｂサイトにアクセスした場合、盗聴の危険性が非常に高くなり、情報漏洩が生じやすい。
【００１０】
そこで本発明は、任意のサーバ装置に対してネットワークを介してアクセスする際に、アクセス元の匿名性、覆面性を確保するとともに、通信経路における情報漏洩を防ぐことができるパケット通信システムを提供し、個人情報に関するセキュリティを向上させることを目的とする。
【課題を解決するための手段】
【００１１】
(1)   本発明の第１の態様は、アクセスの対象となる対象サーバ装置に対してネットワークを介して接続し、パケット通信を行うためのパケット通信システムにおいて、
対象サーバ装置との間でパケット通信を行うクライアント装置と、クライアント装置と対象サーバ装置との間のパケット通信を中継する中継サーバ装置と、を設け、
クライアント装置は、
当該クライアント装置を送信元とし対象サーバ装置をあて先として、対象サーバ装置に対して送信すべき所定の送信データをデータ部に含む第１のパケットを作成する処理を行う通信制御部と、
第１のパケットの少なくとも一部を暗号化して送信用暗号データを作成するクライアント用暗号化処理部と、
クライアント装置を送信元とし中継サーバ装置をあて先として、送信用暗号データをデータ部に含む第２のパケットを作成して送信するパケット送信部と、
を有し、
中継サーバ装置は、
第２のパケットを受信し、そのデータ部に含まれている送信用暗号データを復号して第１のパケットを復元する中継サーバ用復号処理部と、
復元された第１のパケットの送信元を中継サーバ装置に変更することにより第３のパケットを作成し、作成した第３のパケットを送信するパケット転送部と、
第３のパケットに対する応答として対象サーバ装置から返信されてきた第４のパケットを受信し、その少なくとも一部を暗号化して返信用暗号データを作成する中継サーバ用暗号化処理部と、
中継サーバ装置を送信元としクライアント装置をあて先として、返信用暗号データをデータ部に含む第５のパケットを作成し、作成した第５のパケットを送信するパケット返信部と、
を有し、
クライアント装置は、更に、
第５のパケットを受信し、そのデータ部に含まれている返信用暗号データを復号して第４のパケットを復元するクライアント用復号処理部と、
復元された第４のパケットのあて先をクライアント装置に変更することにより第６のパケットを作成するパケット受信部と、
を有し、
通信制御部は、更に、第６のパケットのデータ部に含まれている返信データを取り出す処理を行うようにしたものである。
【００１２】
(2)   本発明の第２の態様は、上述した第１の態様に係るパケット通信システムにおいて、
通信制御部が、
ヘッダ部とデータ部とを含む第１のパケットを作成する処理を行い、
第１のパケットのデータ部には、対象サーバ装置に対して送信すべき所定の送信データを格納し、
第１のパケットのヘッダ部には、クライアント装置のアドレスを示す送信元アドレスと、対象サーバ装置のアドレスを示すあて先アドレスと、を格納するようにしたものである。
【００１３】
(3)   本発明の第３の態様は、上述した第２の態様に係るパケット通信システムにおいて、
通信制御部が、
第１のパケットとして、ＩＰヘッダ部とＩＰデータ部とを含むＩＰパケットを作成する処理を行い、
ＩＰデータ部には、ＴＣＰヘッダ部とＴＣＰデータ部とを含むＴＣＰパケットを格納し、ＴＣＰデータ部には、送信データを格納するようにしたものである。
【００１４】
(4)   本発明の第４の態様は、上述した第２または第３の態様に係るパケット通信システムにおいて、
クライアント用暗号化処理部が、第１のパケットのデータ部の全部もしくは一部を暗号化して送信用暗号データを作成し、
パケット送信部が、
ヘッダ部とデータ部とを含む第２のパケットを作成する処理を行い、
第２のパケットのデータ部には、送信用暗号データを格納するカプセル化処理を行い、
第２のパケットのヘッダ部には、クライアント装置のアドレスを示す送信元アドレスと、中継サーバ装置のアドレスを示すあて先アドレスと、を格納するようにしたものである。
【００１５】
(5)   本発明の第５の態様は、上述した第４の態様に係るパケット通信システムにおいて、
パケット送信部が、
第２のパケットとして、ＩＰヘッダ部とＩＰデータ部とを含むＩＰパケットを作成する処理を行い、
ＩＰデータ部に、送信用暗号データを格納することによりカプセル化処理を行い、第２のパケットをＴＣＰ／ＩＰのプロトコルに従って送信するようにしたものである。
【００１６】
(6)   本発明の第６の態様は、上述した第４または第５の態様に係るパケット通信システムにおいて、
パケット転送部が、
ヘッダ部とデータ部とを含む第３のパケットを作成する処理を行い、
第３のパケットのデータ部には、復元された第１のパケットのデータ部を格納し、
第３のパケットのヘッダ部には、中継サーバ装置のアドレスを示す送信元アドレスと、対象サーバ装置のアドレスを示すあて先アドレスと、を格納するようにしたものである。
【００１７】
(7)   本発明の第７の態様は、上述した第６の態様に係るパケット通信システムにおいて、
パケット転送部が、
第３のパケットとして、ＩＰヘッダ部とＩＰデータ部とを含むＩＰパケットを作成する処理を行い、
ＩＰデータ部に、復元された第１のパケットのデータ部を格納し、第３のパケットをＴＣＰ／ＩＰのプロトコルに従って送信するようにしたものである。
【００１８】
(8)   本発明の第８の態様は、上述した第１〜第７の態様に係るパケット通信システムにおいて、
中継サーバ用暗号化処理部が、ヘッダ部とデータ部とを含む第４のパケットを受信し、受信した第４のパケットのデータ部の全部もしくは一部を暗号化して返信用暗号データを作成し、
パケット返信部が、
ヘッダ部とデータ部とを含む第５のパケットを作成する処理を行い、
第５のパケットのデータ部には、返信用暗号データを格納するカプセル化処理を行い、
第５のパケットのヘッダ部には、中継サーバ装置のアドレスを示す送信元アドレスと、クライアント装置のアドレスを示すあて先アドレスと、を格納するようにしたものである。
【００１９】
(9)   本発明の第９の態様は、上述した第８の態様に係るパケット通信システムにおいて、
パケット返信部が、
第５のパケットとして、ＩＰヘッダ部とＩＰデータ部とを含むＩＰパケットを作成する処理を行い、
ＩＰデータ部に、返信用暗号データを格納することによりカプセル化処理を行い、第５のパケットをＴＣＰ／ＩＰのプロトコルに従って送信するようにしたものである。
【００２０】
(10)  本発明の第１０の態様は、上述した第８または第９の態様に係るパケット通信システムにおいて、
パケット受信部が、
ヘッダ部とデータ部とを含む第６のパケットを作成する処理を行い、
データ部には、復元された第４のパケットのデータ部を格納し、
第６のパケットのヘッダ部には、対象サーバ装置のアドレスを示す送信元アドレスと、クライアント装置のアドレスを示すあて先アドレスと、を格納するようにしたものである。
【００２１】
(11)  本発明の第１１の態様は、上述した第１０の態様に係るパケット通信システムにおいて、
パケット受信部が、
第６のパケットとして、ＩＰヘッダ部とＩＰデータ部とを含むＩＰパケットを作成する処理を行い、
ＩＰデータ部に、復元された第４のパケットに含まれていた返信データを格納するようにしたものである。
【００２２】
(12)  本発明の第１２の態様は、上述した第１〜第１１の態様に係るパケット通信システムにおいて、
複数ｎ台のクライアント装置とこれらｎ台のクライアント装置のそれぞれに対応づけられたｎ台の中継サーバ装置とを設け、
各クライアント装置のパケット送信部は、それぞれ対応づけられた特定の中継サーバ装置宛に第２のパケットを送信し、
各中継サーバ装置のパケット返信部は、それぞれ対応づけられた特定のクライアント装置宛に第５のパケットを送信するようにしたものである。
【００２３】
(13)  本発明の第１３の態様は、上述した第１〜第１１の態様に係るパケット通信システムにおいて、
パケット転送部が、復元された第１のパケットの送信元を示す情報を第３のパケットに埋め込む処理を行い、
中継サーバ用暗号化処理部が、受信した第４のパケットに埋め込まれていた上記送信元を示す情報を読み出してパケット返信部に伝達する処理を行い、
パケット返信部が、上記送信元を示す情報をあて先となるクライアント装置とする第５のパケットを作成するようにしたものである。
【００２４】
(14)  本発明の第１４の態様は、上述した第１３の態様に係るパケット通信システムにおいて、
パケット転送部が、ＴＣＰ／ＩＰのプロトコルに従った第３のパケットを作成し、その際に、第３のパケットに含まれるＴＣＰヘッダ部内に、送信元ポート番号として第１のパケットの送信元を示す情報を埋め込む処理を行い、
パケット返信部が、第４のパケットに含まれるＴＣＰヘッダ部内に、あて先ポート番号として埋め込まれていた情報に基づいて、第５のパケットの送信先を決定するようにしたものである。
【００２５】
(15)  本発明の第１５の態様は、上述した第１〜第１１の態様に係るパケット通信システムにおいて、
中継サーバ装置が、更に、通信情報記録部を有し、
パケット転送部が、第３のパケットを送信する際に、復元された第１のパケットの送信元を示す情報と第３のパケットとの対応関係を示す対応関係情報を通信情報記録部に記録する処理を行い、
パケット返信部が、第５のパケットを送信する際に、通信情報記録部に記録されている対応関係情報に基づいて、第５のパケットの送信先を決定するようにしたものである。
【００２６】
(16)  本発明の第１６の態様は、上述した第１５の態様に係るパケット通信システムにおいて、
パケット転送部が、ＴＣＰ／ＩＰのプロトコルに従った第３のパケットを作成し、その際に、第３のパケットに含まれるＴＣＰヘッダ部内に、第３のパケットを示すためのパケット識別子をポート番号として埋め込み、当該パケット識別子と復元された第１のパケットの送信元を示す情報との対応関係を対応関係情報として通信情報記録部に記録する処理を行い、
パケット返信部が、第４のパケットに含まれるＴＣＰヘッダ部内にポート番号として埋め込まれていたパケット識別子を利用して、通信情報記録部に記録されている対応関係情報を参照することにより、第１のパケットの送信元に対して、第５のパケットを送信するようにしたものである。
【００２７】
(17)  本発明の第１７の態様は、上述した第１〜第１６の態様に係るパケット通信システムにおいて、
中継サーバ装置が第１国の領域内に設置されており、クライアント装置が第２国の領域内に設置されており、クライアント装置が、第１国の領域内に設置されている対象サーバ装置に対してアクセスを行う際に、第１国の領域内に設置されている中継サーバ装置による中継を介してアクセスを行うようにしたものである。
【００２８】
(18)  本発明の第１８の態様は、上述した第１〜第１７の態様に係るパケット通信システムにおいて、
クライアント装置が、所定のＯＳプログラムと、このＯＳプログラムの下で動作する１つもしくは複数のアプリケーションプログラムと、をインストールしたコンピュータによって構成されており、
クライアント用暗号化処理部、パケット送信部、クライアント用復号処理部およびパケット受信部が、アプリケーションプログラムの実行により機能するようにしたものである。
【００２９】
(19)  本発明の第１９の態様は、上述した第１〜第１７の態様に係るパケット通信システムを構成する１台のクライアント装置を提供するものである。
【００３０】
(20)  本発明の第２０の態様は、上述した第１〜第１７の態様に係るパケット通信システムにおけるクライアント用暗号化処理部、パケット送信部、クライアント用復号処理部およびパケット受信部としてコンピュータを機能させるプログラムを提供するものである。
【００３１】
(21)  本発明の第２１の態様は、上述した第１〜第１７の態様に係るパケット通信システムにおいて、
中継サーバ装置が、所定のＯＳプログラムと、このＯＳプログラムの下で動作する１つもしくは複数のアプリケーションプログラムと、をインストールしたコンピュータによって構成されており、
中継サーバ用復号処理部、パケット転送部、中継サーバ用暗号化処理部およびパケット返信部が、アプリケーションプログラムの実行により機能するようにしたものである。
【００３２】
(22)  本発明の第２２の態様は、上述した第１〜第１７の態様に係るパケット通信システムを構成する１台の中継サーバ装置を提供するものである。
【００３３】
(23)  本発明の第２３の態様は、上述した第１〜第１７の態様に係るパケット通信システムにおける中継サーバ用復号処理部、パケット転送部、中継サーバ用暗号化処理部およびパケット返信部としてコンピュータを機能させるプログラムを提供するものである。
【発明の効果】
【００３４】
本発明に係るパケット通信システムによれば、クライアント装置とサーバ装置との間の通信は中継サーバ装置を介して行われるため、任意のサーバ装置に対してネットワークを介してアクセスする際に、アクセス元の匿名性、覆面性を確保することができるようになる。また、少なくともクライアント装置と中継サーバ装置との間の通信は、暗号化して行われるため、通信経路における情報漏洩の可能性を低減することができる。かくして、個人情報に関するセキュリティを向上させることができる。
【図面の簡単な説明】
【００３５】
【図１】ＴＣＰ／ＩＰプロトコルを利用して、従来から行われている一般的なクライアント装置とサーバ装置との間のネットワークを介した通信形態を示すブロック図である。
【図２】図１に示す通信形態において、クライアント装置からサーバ装置に向けて送信されるＨＴＴＰリクエスト送信用のパケットの構造を示すブロック図である。
【図３】図１に示す通信形態において、サーバ装置からクライアント装置に向けて送信されるＨＴＴＰレスポンス返信用のパケットの構造を示すブロック図である。
【図４】本発明の基本的な実施形態に係るパケット通信システムを利用した通信形態を示すブロック図である。
【図５】本発明の基本的な実施形態に係るパケット通信システムの構成を示すブロック図である。
【図６】図５に示す構成において、クライアント装置４００内の通信制御部４３０で作成される第１のＩＰパケットＩＰ１０の構造の一例を示すブロック図である。
【図７】図５に示す構成において、クライアント装置４００から中継サーバ装置３００に向けて送信される第２のＩＰパケットＩＰ２０の構造の一例を示すブロック図である。
【図８】図５に示す構成において、中継サーバ装置３００から対象サーバ装置１００に向けて送信される第３のＩＰパケットＩＰ３０の構造の一例を示すブロック図である。
【図９】図５に示す構成において、対象サーバ装置１００から中継サーバ装置３００に向けて送信される第４のＩＰパケットＩＰ４０の構造の一例を示すブロック図である。
【図１０】図５に示す構成において、中継サーバ装置３００からクライアント装置４００に向けて送信される第５のＩＰパケットＩＰ５０の構造の一例を示すブロック図である。
【図１１】図５に示す構成において、クライアント装置４００内のパケット受信部４５０で作成される第６のＩＰパケットＩＰ６０の構造の一例を示すブロック図である。
【図１２】本発明の変形例に係るパケット通信システムの構成を示すブロック図である。
【図１３】本発明に係るパケット通信システムを２つの国の領域を跨いで設置した例を示すブロック図である。
【発明を実施するための形態】
【００３６】
以下、本発明を図示する実施形態に基づいて説明する。
【００３７】
＜＜＜  §１．  ネットワークを介した一般的な通信形態  ＞＞＞
はじめに、説明の便宜上、ネットワークを介した一般的な通信形態を簡単に説明しておく。図１は、ＴＣＰ／ＩＰプロトコルを利用して、従来から行われている一般的なクライアント装置とサーバ装置との間のネットワークを介した通信形態を示すブロック図である。図には、アクセスの対象となる対象サーバ装置１００に対して、５台のクライアント装置２０１〜２０５がネットワークＮを介してアクセスしている例が示されている。
【００３８】
ここで、各クライアント装置２０１〜２０５は、パソコン、携帯電話、タブレット型端末など、ネットワークを介した通信機能を備えたコンピュータによって構成されており、対象サーバ装置１００は、このようなクライアントとなるコンピュータからのアクセスを受けて必要な情報を提供するサーバコンピュータによって構成されており、たとえば、Ｗｅｂサーバ等によって構成される。
【００３９】
このようなクライアント・サーバ間の通信は、通常、ＩＰプロトコルを用いて行われる。図には、各装置に付与されたＩＰアドレスの一例が示されている。たとえば、クライアント装置２０１には、「xx.5.1.1」なるグローバルＩＰアドレスが付与されている。なお、本願では、グローバルＩＰアドレスを例示する際に、実在する特定のアドレスの記載を避けるため、アドレス先頭の１バイトのデータを「xx」,「yy」,「zz」などの符号で示すことにする。したがって、クライアント装置２０１に付与された「xx.5.1.1」なるグローバルＩＰアドレスの先頭「xx」には、実際には、所定の１バイトのデータが入ることになる。
【００４０】
このようなグローバルＩＰアドレス「xx.5.1.1」が付与されたクライアント装置２０１は、図示のように、インターネットＮに直接接続することができる。一方、対象サーバ装置（たとえば、Ｗｅｂサーバ）１００にも、グローバルＩＰアドレス「yy.6.1.1」が付与されており、この対象サーバ装置１００もインターネットＮに直接接続されている。ここで、クライアント装置２０１が、対象サーバ装置１００にアクセスする際には、自己を送信元とし、対象サーバ装置１００をあて先とするデータパケットを送信することになる。
【００４１】
図において、クライアント装置２０１からインターネットＮへの接続経路脇に記載されている「201: xx.5.1.1 → 100: yy.6.1.1」なる記述は、クライアント装置２０１のＩＰアドレス「xx.5.1.1」を送信元とし、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」をあて先とするデータパケットが送信されることを示している。このようなデータパケットの送信を受けた対象サーバ装置１００では、これに応答するためのデータパケットを返信することになる。返信されるデータパケットは、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」を送信元とし、クライアント装置２０１のＩＰアドレス「xx.5.1.1」をあて先とするものになる。こうして、クライアント装置２０１と対象サーバ装置１００との間でのデータパケットのやりとりとして、両者間の通信が実行されることになる。
【００４２】
対象サーバ装置１００がＷｅｂサーバの場合、クライアント装置２０１側では、通常、組み込まれたＷｅｂブラウザによって、送信すべきデータが作成され、受信したデータに対する処理が行われる。具体的には、Ｗｅｂ閲覧に一般的に用いられているＨＴＴＰプロトコルに従った通信では、クライアント装置２０１内のＷｅｂブラウザによってＨＴＴＰリクエストが作成され、Ｗｅｂサーバ１００に対して送信される。Ｗｅｂサーバ１００は、このＨＴＴＰリクエストに応じて、ＨＴＴＰレスポンスを作成し、これをクライアント装置２０１に返信する。クライアント装置２０１内のＷｅｂブラウザは、たとえば、このＨＴＴＰレスポンスに含まれるＨＴＭＬ形式のデータに基づいて、ディスプレイ上へのＷｅｂ画面の表示などの処理を行う。
【００４３】
一方、クライアント装置２０２，２０３は、ルータＲ１を介してインターネットＮに接続されている。ここに示す例の場合、クライアント装置２０２，２０３とルータＲ１との間は、イーサネット（登録商標）ケーブルなどを用いて有線接続されている。このように、ルータを介してインターネットＮに接続されたクライアント装置には、当該ルータから、ＤＨＣＰなどの仕様に基づいて、所定のプライベートＩＰアドレスが付与される。図示の例の場合、クライアント装置２０１には、プライベートＩＰアドレス「192.168.2.1」が付与されており、クライアント装置２０３には、プライベートＩＰアドレス「192.168.2.2」が付与されている。このようなプライベートＩＰアドレスでは、インターネットＮへの直接アクセスはできないので、各クライアント装置２０２，２０３からインターネットＮへデータ送信を行う場合、ルータＲ１によって、送信元のアドレスが、プライベートＩＰアドレスからグローバルＩＰアドレスに変換される。
【００４４】
図示の例の場合、ルータＲ１には、「xx.5.2.1」なるグローバルＩＰアドレスが付与されており、各クライアント装置２０２，２０３からのデータ送信は、いずれも、このグローバルＩＰアドレス「xx.5.2.1」を送信元として行われる。ただ、クライアント装置２０２，２０３を相互に区別するために、ポート番号が利用される。図示の例では、ルータＲ１によって、クライアント装置２０２にはポート番号Ｐ１が付与され、クライアント装置２０３にはポート番号Ｐ２が付与されており、これらのポート番号が、グローバルＩＰアドレス「xx.5.2.1」とともに、送信元を示すアドレスとして用いられることになる。結局、ルータＲ１の機能により、クライアント装置２０２のプライベートＩＰアドレス「192.168.2.1」は、ポート番号付きのグローバルＩＰアドレス「xx.5.2.1(P1)」に変換され、クライアント装置２０３のプライベートＩＰアドレス「192.168.2.2」は、ポート番号付きのグローバルＩＰアドレス「xx.5.2.1(P2)」に変換されることになる。
【００４５】
図において、ルータＲ１からインターネットＮへの接続経路脇に記載されている「202: xx.5.2.1(P1) → 100: yy.6.1.1」なる記述は、クライアント装置２０２に対応するグローバルＩＰアドレス「xx.5.2.1(P1)」を送信元とし、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」をあて先とするデータパケットが送信されることを示しており、「203: xx.5.2.1(P2) → 100: yy.6.1.1」なる記述は、クライアント装置２０３に対応するグローバルＩＰアドレス「xx.5.2.1(P2)」を送信元とし、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」をあて先とするデータパケットが送信されることを示している。
【００４６】
このようなデータパケットの送信を受けた対象サーバ装置１００が、これに応答するためのデータパケットを返信する点は、上述したとおりである。返信されるデータパケットは、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」を送信元とし、クライアント装置２０２のＩＰアドレス「xx.5.2.1(P1)」やクライアント装置２０３のＩＰアドレス「xx.5.2.1(P2)」をあて先とするものになる。これらの返信パケットを受け取ったルータＲ１は、あて先に記載されたポート番号Ｐ１，Ｐ２に基づいて、当該パケットをクライアント装置２０２もしくは２０３に転送する処理を行う。このようなルータの処理機能は、ＮＡＰＴと呼ばれる公知の処理であるため、ここでは詳しい説明は省略する。
【００４７】
図示のクライアント装置２０４，２０５は、無線ルータＲ２を介してインターネットＮに接続されている。無線ルータＲ２の基本的な機能は、ルータＲ１と同様であるが、クライアント装置２０４，２０５と無線ルータＲ２との間は、無線接続されている。最近は、多くのクライアント装置がＷｉＦｉ機能を搭載しており、無線ルータに対して無線接続することにより、インターネットＮに接続することができる。
【００４８】
このような無線ルータＲ２を用いた場合も、各クライアント装置には、当該ルータから、所定のプライベートＩＰアドレスが付与される。図示の例の場合、クライアント装置２０４には、プライベートＩＰアドレス「192.168.10.1」が付与されており、クライアント装置２０５には、プライベートＩＰアドレス「192.168.10.2」が付与されている。無線ルータＲ２もＮＡＰＴの処理機能を有しており、プライベートＩＰアドレスをポート番号付きのグローバルＩＰアドレスに変換することができる。図示の例では、無線ルータＲ２によって、クライアント装置２０４にはポート番号Ｐ１が付与され、クライアント装置２０５にはポート番号Ｐ２が付与されている。
【００４９】
図において、無線ルータＲ２からインターネットＮへの接続経路脇に記載されている「204: xx.5.3.1(P1) → 100: yy.6.1.1」なる記述は、クライアント装置２０４に対応するグローバルＩＰアドレス「xx.5.3.1(P1)」を送信元とし、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」をあて先とするデータパケットが送信されることを示しており、「205: xx.5.3.1(P2) → 100: yy.6.1.1」なる記述は、クライアント装置２０５に対応するグローバルＩＰアドレス「xx.5.3.1(P2)」を送信元とし、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」をあて先とするデータパケットが送信されることを示している。
【００５０】
図２は、図１に示す通信形態において、クライアント装置２０１〜２０５から対象サーバ装置１００に向けて送信されるＨＴＴＰリクエスト送信用のパケットの構造を示すブロック図である。この例は、ＴＣＰ／ＩＰのプロトコルに従ったデータパケットの構造を示すものであり、ＴＣＰパケットがＩＰパケット内にカプセル化された構造になっている。
【００５１】
すなわち、図２の上段に示すＴＣＰパケットＴＣＰ１は、ＴＣＰヘッダ部Ｈｔ１とＴＣＰデータ部Ｄｔ１とを有しており、対象サーバ装置１００に送信すべき本体の送信データ（この例の場合、Ｗｅｂサーバ１００に宛てたＨＴＴＰリクエスト）がＴＣＰデータ部Ｄｔ１に格納され、ＴＣＰヘッダ部Ｈｔ１には、必要に応じて、送信元ポート番号Ｈｔ１ａおよびあて先ポート番号Ｈｔ１ｂが格納されている。図１に示す例の場合、クライアント装置２０１からのＴＣＰパケットにはポート番号は不要であるが、クライアント装置２０２〜２０５からのＴＣＰパケットには、各ルータによって決められたポート番号Ｐ１，Ｐ２等が、送信元ポート番号Ｈｔ１ａに格納されることになる。
【００５２】
図２の下段に示すＩＰパケットＩＰ１は、ＩＰヘッダ部Ｈｉ１とＩＰデータ部Ｄｉ１とを有しており、ＩＰデータ部Ｄｉ１には、上段に示すＴＣＰパケットがそっくり格納される。ＩＰヘッダ部Ｈｉ１には、送信元ＩＰアドレスＨｉ１ａとあて先ＩＰアドレスＨｉ１ｂとが格納される。
【００５３】
たとえば、図１に示すクライアント装置２０１から送信されるＩＰパケットの場合は、送信元ＩＰアドレスＨｉ１ａには「xx.5.1.1」なるクライアント装置２０１自身に付与されたグローバルＩＰアドレスが格納される。一方、クライアント装置２０２または２０３から送信されるＩＰパケットの場合は、送信元ＩＰアドレスＨｉ１ａには「xx.5.2.1」なるルータＲ１のグローバルＩＰアドレスが格納され、クライアント装置２０４または２０５から送信されるＩＰパケットの場合は、送信元ＩＰアドレスＨｉ１ａには「xx.5.3.1」なる無線ルータＲ２のグローバルＩＰアドレスが格納される。
【００５４】
また、あて先ＩＰアドレスＨｉ１ｂには、対象サーバ装置（Ｗｅｂサーバ）１００のグローバルＩＰアドレス「yy.6.1.1」が格納される。したがって、この図２に示すＩＰパケットＩＰ１は、あて先ＩＰアドレス「yy.6.1.1」によって示されたＷｅｂサーバ１００に届くことになる。Ｗｅｂサーバ１００では、このＩＰパケットＩＰ１にカプセル化されているＴＣＰパケットＴＣＰ１を抽出し、ＴＣＰデータ部Ｄｔ１に含まれている送信データ（ＨＴＴＰリクエスト）を解釈する。そして、返信データとして、このＨＴＴＰリクエストに応じたＨＴＴＰレスポンスを作成する。
【００５５】
図３は、Ｗｅｂサーバ１００が、図２に示すＨＴＴＰリクエスト送信用のパケット（ＩＰパケットＩＰ１）に応じて作成したＨＴＴＰレスポンス返信用のパケット（ＩＰパケットＩＰ２）の構造を示すブロック図である。この例も、ＴＣＰ／ＩＰのプロトコルに従ったデータパケットの構造を示すものであり、ＴＣＰパケットがＩＰパケット内にカプセル化された構造になっている。
【００５６】
具体的には、図３の上段に示すＴＣＰパケットＴＣＰ２は、ＴＣＰヘッダ部Ｈｔ２とＴＣＰデータ部Ｄｔ２とを有しており、ＨＴＴＰリクエストの送信元となるクライアント装置に返信すべき本体の返信データ（たとえば、閲覧要求のあったＷｅｂページに表示すべきテキストや画像データを含むＨＴＴＰレスポンス）がＴＣＰデータ部Ｄｔ２に格納され、ＴＣＰヘッダ部Ｈｔ２には、必要に応じて、送信元ポート番号Ｈｔ２ａおよびあて先ポート番号Ｈｔ２ｂが格納されている。たとえば、図２に示すＴＣＰパケットＴＣＰ１内に送信元ポート番号Ｈｔ１ａが格納されていた場合、図３に示すＴＣＰパケットＴＣＰ２内には、この送信元ポート番号Ｈｔ１ａが、あて先ポート番号Ｈｔ２ｂとして格納されることになる。
【００５７】
図３の下段に示すＩＰパケットＩＰ２は、ＩＰヘッダ部Ｈｉ２とＩＰデータ部Ｄｉ２とを有しており、ＩＰデータ部Ｄｉ２には、上段に示すＴＣＰパケットがそっくり格納される。ＩＰヘッダ部Ｈｉ２には、送信元ＩＰアドレスＨｉ２ａとあて先ＩＰアドレスＨｉ２ｂとが格納される。ここで、送信元ＩＰアドレスＨｉ２ａは、図２に示すＩＰパケットＩＰ１に格納されていたあて先ＩＰアドレスＨｉ１ｂであり、あて先ＩＰアドレスＨｉ２ｂは、図２に示すＩＰパケットＩＰ１に格納されていた送信元ＩＰアドレスＨｉ１ａである。
【００５８】
したがって、図１に示す例の場合、対象サーバ装置１００から返信されるＩＰパケットＩＰ２内の送信元ＩＰアドレスは、いずれも「yy.6.1.1」になり、あて先ＩＰアドレスは、ＨＴＴＰリクエストを送信してきた送信元のクライアント装置のグローバルＩＰアドレスになる。たとえば、図１に示すクライアント装置２０１からのＨＴＴＰリクエストに応じたＨＴＴＰレスポンスであれば、ＩＰパケットＩＰ２内のあて先ＩＰアドレスは「xx.5.1.1」になる。同様に、クライアント装置２０２，２０３からのＨＴＴＰリクエストに応じたＨＴＴＰレスポンスであれば、ＩＰパケットＩＰ２内のあて先ＩＰアドレスは「xx.5.2.1」になり、クライアント装置２０４，２０５からのＨＴＴＰリクエストに応じたＨＴＴＰレスポンスであれば、ＩＰパケットＩＰ２内のあて先ＩＰアドレスは「xx.5.3.1」になる。
【００５９】
かくして、図２に示すようなＨＴＴＰリクエスト送信用のパケットＩＰ１を送信したクライアント装置には、図３に示すようなＨＴＴＰレスポンス返信用のパケットＩＰ２が返信されてくる。返信を受けたクライアント装置では、このＩＰパケットＩＰ２にカプセル化されているＴＣＰパケットＴＣＰ２を抽出し、ＴＣＰデータ部Ｄｔ２に含まれている返信データ（ＨＴＴＰレスポンス）を解釈し、必要な処理を実行する。
【００６０】
ここで、図１〜図３に例示した従来の通信形態には、既に述べたように、個人情報に関するセキュリティを損なう２つの問題がある。
【００６１】
第１の問題は、対象サーバ装置１００側に、クライアント装置の所在を示す送信元アドレスが送信されるため、アクセス元の匿名性、覆面性が失われる点である。図２に示すように、対象サーバ装置１００に届くＩＰパケットＩＰ１には、送信元ＩＰアドレスＨｉ１ａや送信元ポート番号Ｈｔ１ａが含まれているため、図１に示すクライアント装置２０１によってアクセスした場合、アクセス元のグローバルＩＰアドレス「xx.5.1.1」が対象サーバ装置１００の管理者に知られることになり、当該管理者に対する匿名性、覆面性が失われる。
【００６２】
一方、図１に示すクライアント装置２０２〜２０５によってアクセスした場合、少なくとも、ルータＲ１，Ｒ２のグローバルＩＰアドレス「xx.5.2.1」，「xx.5.3.1」が対象サーバ装置１００の管理者に知られることになり、更に、ポート番号Ｐ１，Ｐ２も知られることになる。よって、ポート番号の解析により、アクセス元のクライアント装置まで特定されてしまうおそれもある。したがって、対象サーバ装置１００の管理者が悪意をもった者であった場合、アクセス元のクライアント装置に対して不正な攻撃が行われるおそれもある。
【００６３】
第２の問題は、クライアント装置とサーバ装置との間の通信経路における情報漏洩の問題である。インターネットを利用した通信には、常に情報漏洩の危険性が存在することになるが、特に、図１に示すような無線ルータＲ２を介した通信を行う場合、無線通信経路の盗聴により、情報漏洩の危険性が高まる。前述したとおり、一部のＷｅｂサイトなどでは、ＳＳＬ等を利用したセキュアな通信経路を確立させた後に重要な情報の送受を行う対策を講じているが、一般のＷｅｂサイトにまで普及するには至っていない。したがって、個人ユーザがＷｉＦｉスポットなどを利用して任意のＷｅｂサイトにアクセスした場合、盗聴の危険性が非常に高くなり、情報漏洩が生じやすい。
【００６４】
本発明は、このような問題を解決するために発案されたものであり、任意のサーバ装置に対してネットワークを介してアクセスする際に、アクセス元の匿名性、覆面性を確保するとともに、通信経路における情報漏洩を防ぐことができるパケット通信システムを提供し、個人情報に関するセキュリティを向上させることを目的としている。
【００６５】
＜＜＜  §２．  本発明の基本概念  ＞＞＞
図４は、本発明の基本的な実施形態に係るパケット通信システムを利用した通信形態を示すブロック図である。図１に示す従来例と同様に、アクセスの対象となる対象サーバ装置１００に対して、５台のクライアント装置４０１〜４０５がネットワークＮを介してアクセスしている例が示されている。本発明の特徴は、新たに中継サーバ装置３００を設けるとともに、各クライアント装置４０１〜４０５に、この中継サーバ装置３００を介して対象サーバ装置１００にアクセスする機能を設けた点にある。
【００６６】
各クライアント装置４０１〜４０５は、図１に示す各クライアント装置２０１〜２０５と同様に、パソコン、携帯電話、タブレット型端末など、ネットワークを介した通信機能を備えたコンピュータによって構成されている。また、対象サーバ装置１００は、図１に示す対象サーバ装置１００と同一のものであり、クライアントとなるコンピュータからのアクセスを受けて必要な情報を提供するサーバコンピュータによって構成されている。
【００６７】
なお、本発明に係るパケット通信システムでは、ＴＣＰ／ＩＰプロトコル、ＵＤＰ／ＩＰプロトコルなど、様々な通信プロトコルを利用することが可能であるが、ここでは、説明の便宜上、対象サーバ装置１００がＷｅｂサーバである例を説明し、Ｗｅｂ閲覧で一般的に利用されているＴＣＰ／ＩＰプロトコルを用いて通信を行う実施例を述べることにする。また、図４に示す各クライアント装置４０１〜４０５に対して付与されたＩＰアドレス（グローバルＩＰアドレスおよびプライベートＩＰアドレス）やポート番号、各クライアント装置４０１〜４０５に関するインターネットＮへの接続形態（ルータの構成）は、図１に示す各クライアント装置２０１〜２０５に関するものと同一であるため、説明は省略する。
【００６８】
図１に示す従来のクライアント装置２０１〜２０５（以下、代表して、クライアント装置２００と呼ぶ）と、図４に示す本発明に係るクライアント装置４０１〜４０５（以下、代表して、クライアント装置４００と呼ぶ）と、の相違点は、後者には、送信するパケットを暗号化するとともに受信したパケットを復号する暗号処理機能と、対象サーバ装置１００へ送信すべきパケットの送信先を、中継サーバ装置３００に変更する中継転送機能と、が備わっている点である。一方、本発明に固有の構成要素である中継サーバ装置３００には、クライアント装置４００から受信したパケットを復号して対象サーバ装置１００へ転送するとともに、対象サーバ装置１００から受信したパケットを暗号化してクライアント装置４００へ転送する機能が備わっている。
【００６９】
この図４に示す実施形態に係るパケット通信システムには、大きな２つの特徴が備わっている。第１の特徴は、クライアント装置４００から対象サーバ装置１００へ宛てるべき送信パケットは、まず、中継サーバ装置３００へ送信された後、この中継サーバ装置３００によって対象サーバ装置１００へ転送され、対象サーバ装置１００からクライアント装置４００へ宛てるべき返信パケットは、まず、中継サーバ装置３００へ返信された後、この中継サーバ装置３００によってクライアント装置４００へ転送される点である。そして、第２の特徴は、クライアント装置４００と中継サーバ装置３００との間では、暗号化された状態でデータパケットのやりとりが行われる点である。
【００７０】
上記第１の特徴により、前述した第１の問題が解決できる。すなわち、クライアント装置４００から対象サーバ装置１００へ宛てるべき送信パケットでは、クライアント装置４００のアドレスが送信元アドレスとして格納されているが、中継サーバ装置３００によってこの送信元アドレスが書き換えられ、中継サーバ装置３００から対象サーバ装置１００へ宛てた送信パケットでは、中継サーバ装置３００のアドレスが送信元アドレスとして格納されることになる。このため、対象サーバ装置１００からの返信パケットは、送信パケットの送信元である中継サーバ装置３００宛てに返信されることになり、返信パケットは、中継サーバ装置３００によってクライアント装置４００宛てに転送される。
【００７１】
結局、対象サーバ装置１００に対しては、クライアント装置４００のアドレスは秘匿され、対象サーバ装置１００の管理者に対する匿名性、覆面性が確保されることになる。したがって、万一、対象サーバ装置１００の管理者が悪意をもった者であり、送信元に対して何らかの攻撃を仕掛けた場合であっても、被害を受けるのは中継サーバ装置３００ということになり、クライアント装置４００のセキュリティは確保される。
【００７２】
そして、上記第２の特徴により、前述した第２の問題の一部が解決できる。すなわち、クライアント装置４００と中継サーバ装置３００との間では、暗号化された状態でデータパケットのやりとりが行われるので、これらの間での情報漏洩を防ぐことができる。特に、図４に示す例の場合、クライアント装置４０４，４０５のように、無線ルータＲ２を介してインターネットＮに接続する設定がなされたクライアント装置４００について、無線通信経路の盗聴による情報漏洩の危険性が高くなる。個人ユーザの場合、ＷｉＦｉスポットなどを利用してインターネットＮに接続するケースが多いため、クライアント装置４００とインターネットＮとの間では情報漏洩が生じやすい。
【００７３】
本発明では、ＷｉＦｉスポットなどを利用してインターネットＮに接続するケースであっても、クライアント装置４００と中継サーバ装置３００との間では暗号通信が行われるため、クライアント装置４００とＷｉＦｉスポットとの間の無線通信を盗聴されることにより情報漏洩が生じることを防ぐことができる。
【００７４】
図において、クライアント装置４０１からインターネットＮへの接続経路脇に記載されている「401: xx.5.1.1 → 300: zz.7.1.1」なる記述は、クライアント装置４０１のＩＰアドレス「xx.5.1.1」を送信元とし、中継サーバ装置３００のＩＰアドレス「zz.7.1.1」をあて先とするデータパケットが送信されることを示している。このようなデータパケットの送信を受けた中継サーバ装置３００では、当該データパケットを、自己のＩＰアドレス「zz.7.1.1」を送信元とし、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」をあて先とするデータパケットに変換して、対象サーバ装置１００宛てに送信する。
【００７５】
これに応じて、対象サーバ装置１００は、自己のＩＰアドレス「yy.6.1.1」を送信元とし、中継サーバ装置３００のＩＰアドレス「zz.7.1.1」をあて先とするデータパケットを返信する。このようなデータパケットの返信を受けた中継サーバ装置３００では、当該データパケットを、自己のＩＰアドレス「zz.7.1.1」を送信元とし、クライアント装置４０１のＩＰアドレス「xx.5.1.1」をあて先とするデータパケットに変換して、クライアント装置４０１宛てに返信する。
【００７６】
クライアント装置４０２〜４０５が対象サーバ装置１００にアクセスする場合も、同様に、中継サーバ装置３００への転送処理が行われる。
【００７７】
図４において、ルータＲ１からインターネットＮへの接続経路脇に記載されている「402: xx.5.2.1(P1) → 300: zz.7.1.1」なる記述は、クライアント装置４０２に対応するグローバルＩＰアドレス「xx.5.2.1(P1)」を送信元とし、中継サーバ装置３００のＩＰアドレス「zz.7.1.1」をあて先とするデータパケットが送信されることを示しており、「403: xx.5.2.1(P2) → 300: zz.7.1.1」なる記述は、クライアント装置４０３に対応するグローバルＩＰアドレス「xx.5.2.1(P2)」を送信元とし、中継サーバ装置３００のＩＰアドレス「zz.7.1.1」をあて先とするデータパケットが送信されることを示している。
【００７８】
同様に、図４において、無線ルータＲ２からインターネットＮへの接続経路脇に記載されている「404: xx.5.3.1(P1) → 300: zz.7.1.1」なる記述は、クライアント装置４０４に対応するグローバルＩＰアドレス「xx.5.3.1(P1)」を送信元とし、中継サーバ装置３００のＩＰアドレス「zz.7.1.1」をあて先とするデータパケットが送信されることを示しており、「405: xx.5.3.1(P2) → 300: zz.7.1.1」なる記述は、クライアント装置４０５に対応するグローバルＩＰアドレス「xx.5.3.1(P2)」を送信元とし、中継サーバ装置３００のＩＰアドレス「zz.7.1.1」をあて先とするデータパケットが送信されることを示している。
【００７９】
なお、本発明に係る中継サーバ装置３００に類似した機能を果たすサーバ装置として、プロキシサーバ装置が知られているが、§３以降で詳述するように、本発明に係る中継サーバ装置３００の構成および処理動作は、従来のプロキシサーバ装置とは異なるものである。特に、本発明では、クライアント装置４００から中継サーバ装置３００の間について、暗号化によるセキュア通信が担保されることになる。また、本発明では、特定の通信プロトコルに限らず、あらゆる通信プロトコルに準拠したネットワークサービスが可能になる。
【００８０】
更に、プロキシサーバ装置を利用する場合は、各クライアント装置に対して、使用するアプリケーションプログラムごとにそれぞれプロキシサーバ利用のための設定を行う必要があるが、本発明に係るクライアント装置４００では、後述するように、クライアント用アプリケーションプログラムをインストールすることにより、クライアント装置４００を構成することができ、各アプリケーションプログラムについての個別設定は不要である。
【００８１】
＜＜＜  §３．  本発明の基本的な実施形態  ＞＞＞
図４では、本発明に係るパケット通信システムの全体構成を説明するために、その構成要素である中継サーバ装置３００とクライアント装置４００とを簡単なブロック図として示した。ここでは、中継サーバ装置３００とクライアント装置４００の詳細な構成とデータパケットの流れを示す。
【００８２】
＜３−１．  本発明に係るパケット通信システムの基本構成＞
図５は、本発明の基本的な実施形態に係るパケット通信システムの構成を示すブロック図である。このパケット通信システムは、アクセスの対象となる対象サーバ装置１００に対してネットワークＮを介して接続し、パケット通信を行うためのパケット通信システムであり、中継サーバ装置３００とクライアント装置４００とを有している。
【００８３】
ここで、本発明に固有の構成要素は、図示する中継サーバ装置３００とクライアント装置４００であり、図示されている対象サーバ装置（たとえば、Ｗｅｂサーバ）１００や、ネットワーク（たとえば、インターネット）Ｎは、公知である既存の設備をそのまま利用すればよい。別言すれば、本発明を実施するに際して、アクセスの対象となる対象サーバ装置１００には、特別な工夫を施す必要はなく、一般的なＷｅｂサーバなどの既存の装置を対象サーバ装置１００として利用すればよい。したがって、本願では、対象サーバ装置１００の内部構成についての説明は省略する。
【００８４】
要するに、本発明においてアクセスの対象となる対象サーバ装置１００としては、クライアント装置から送信されてきた送信パケットに対して、何らかの応答を行い、所定の返信パケットを返送する処理機能を有していれば足りる。たとえば、Ｗｅｂサーバの場合、§１で述べたように、ＨＴＴＰリクエストに応じてＨＴＴＰレスポンスを返信する機能をもった一般的なＷｅｂサーバであれば、本発明における対象サーバ装置１００として利用可能であり、本発明に係るパケット通信システムを利用すれば、任意のＷｅｂサーバにアクセスしてＷｅｂページの閲覧が可能である。
【００８５】
ここでは、まず、クライアント装置４００の構成を説明する。クライアント装置４００は、対象サーバ装置１００との間でパケット通信を行う構成要素であり、図示のとおり、パケット送信部４１０、クライアント用暗号化処理部４２０、通信制御部４３０、クライアント用復号処理部４４０、パケット受信部４５０を有している。前述したとおり、クライアント装置４００の実体は、パソコン、携帯電話、タブレット型端末など、ネットワークを介した通信機能を備えたコンピュータである。
【００８６】
したがって、実際には、クライアント装置４００には、ＣＰＵ、メモリ、ディスプレイ、入力機器など、図示されていない様々な構成要素が含まれている。ただ、ここでは便宜上、本発明に係るパケット通信に関与する構成要素のみを図示し、図示されていない構成要素についての説明は省略する。
【００８７】
ここに示す実施例の場合、クライアント装置４００は、所定のＯＳプログラムと、このＯＳプログラムの下で動作する１つもしくは複数のアプリケーションプログラムと、をインストールしたコンピュータによって構成されており、パケット送信部４１０、クライアント用暗号化処理部４２０、クライアント用復号処理部４４０およびパケット受信部４５０は、本発明に係るクライアント用アプリケーションプログラムをコンピュータに組み込んで実行することにより機能する。このクライアント用アプリケーションプログラムは、単独で配布することができ、ユーザは、汎用のコンピュータ（パソコン、携帯電話、タブレット型端末など）に、このクライアント用アプリケーションプログラムをインストールすることにより、本発明に係るクライアント装置４００を構成することができる。
【００８８】
なお、通信制御部４３０は、図示されていない構成要素によって作成された所望の送信データＳを、ＴＣＰ／ＩＰプロトコルに基づいて外部に送信するために、送信用のＩＰパケットＩＰ１０を作成する処理と、ＴＣＰ／ＩＰプロトコルに基づいて外部から送信されてきたＩＰパケットＩＰ６０に含まれている返信データＲを取り出す処理と、を行う構成要素であり、そのような処理機能は、パソコン、携帯電話、タブレット型端末などには、通常、ＯＳプログラムもしくはＯＳプログラムが利用するライブラリプログラムとして備わっている標準機能である。したがって、一般的には、上述した本発明に係るクライアント用アプリケーションプログラムには、通信制御部４３０としての機能を含ませておく必要はない。
【００８９】
一方、中継サーバ装置３００は、本発明を実施するために新たに設けれらた構成要素であり、クライアント装置４００と対象サーバ装置１００との間のパケット通信を中継する役割を果たす。図示のとおり、中継サーバ装置３００は、パケット転送部３１０、中継サーバ用復号処理部３２０、中継サーバ用暗号化処理部３３０、パケット返信部３４０を有している。この中継サーバ装置３００の実体は、インターネットＮに接続する機能をもったサーバコンピュータである。
【００９０】
ここに示す実施例の場合、中継サーバ装置３００は、所定のＯＳプログラムと、このＯＳプログラムの下で動作する１つもしくは複数のアプリケーションプログラムと、をインストールしたコンピュータによって構成されており、パケット転送部３１０、中継サーバ用復号処理部３２０、中継サーバ用暗号化処理部３３０およびパケット返信部３４０は、本発明に係るサーバ用アプリケーションプログラムをコンピュータに組み込んで実行することにより機能する。このサーバ用アプリケーションプログラムは、単独で配布することができ、ユーザは、汎用のサーバ用コンピュータに、このサーバ用アプリケーションプログラムをインストールすることにより、本発明に係る中継サーバ装置３００を構成することができる。
【００９１】
＜３−２．  ＨＴＴＰリクエストの送信プロセス＞
続いて、Ｗｅｂサーバからなる対象サーバ装置１００に対して、クライアント装置４００からＨＴＴＰリクエストを送信する際の処理プロセスを例にとりながら、関連する各構成要素の具体的な処理機能を説明する。
【００９２】
まず、図示されていない構成要素（たとえば、Ｗｅｂブラウザプログラム）によって、ＨＴＴＰリクエストが作成される。このＨＴＴＰリクエストは、送信データＳとして通信制御部４３０に与えられる。通信制御部４３０は、クライアント装置４００を送信元とし対象サーバ装置１００をあて先として、対象サーバ装置１００に対して送信すべき所定の送信データＳをデータ部に含む第１のＩＰパケットＩＰ１０を作成する処理を行う。ここに示す例の場合、送信データＳは、対象サーバ装置１００宛てのＨＴＴＰリクエストということになる。
【００９３】
図６は、通信制御部４３０で作成される第１のＩＰパケットＩＰ１０の構造の一例を示すブロック図である。ここに示す例の場合、対象サーバ装置１００に対して送信すべき送信データＳは、ＨＴＴＰリクエストであるため、この図６に示す第１のＩＰパケットＩＰ１０の内容は、実質的に、図２に示すＩＰパケットＩＰ１の内容と同じである。
【００９４】
具体的には、図６に示す第１のＩＰパケットＩＰ１０は、ＩＰヘッダ部Ｈｉ１０とＩＰデータ部Ｄｉ１０とを含んでおり、ＩＰヘッダ部Ｈｉ１０には、クライアント装置４００のアドレスを示す送信元ＩＰアドレスＨｉ１０ａと、対象サーバ装置１００のアドレスを示すあて先ＩＰアドレスＨｉ１０ｂと、が格納されている。たとえば、図４に示す例において、クライアント装置４０１から対象サーバ装置１００に対してＨＴＴＰリクエストを送信する場合、送信元ＩＰアドレスＨｉ１０ａとして、クライアント装置４０１のＩＰアドレス「xx.5.1.1」が書き込まれ、あて先ＩＰアドレスＨｉ１０ｂとして、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」が書き込まれる。
【００９５】
一方、ＩＰデータ部Ｄｉ１０には、対象サーバ装置１００に対して送信すべき送信データＳ（この例の場合、ＨＴＴＰリクエスト）を含んだＴＣＰパケットＴＣＰ１０が格納されている。このＴＣＰパケットＴＣＰ１０は、ＴＣＰヘッダ部Ｈｔ１０とＴＣＰデータ部Ｄｔ１０とを含んでおり、ＴＣＰデータ部Ｄｔ１０には、送信データＳ（この例の場合、ＨＴＴＰリクエスト）が格納されている。また、ＴＣＰヘッダ部Ｈｔ１０には、送信元ポート番号Ｈｔ１０ａ，あて先ポート番号Ｈｔ１０ｂを格納することができる。クライアント装置４００がルータを介してインターネットＮに接続されている場合は、ルータのＮＡＰＴ機能により送信元ポート番号Ｈｔ１０ａが付与され、ＴＣＰヘッダ部Ｈｔ１０内に書き込まれる。
【００９６】
クライアント用暗号化処理部４２０は、図６に示す第１のＩＰパケットＩＰ１０の少なくとも一部を暗号化して送信用暗号データＣ２０を作成する処理を行う。実際には、ＩＰヘッダ部Ｈｉ１０には、送信元ＩＰアドレスＨｉ１０ａやあて先ＩＰアドレスＨｉ１０ｂが格納されているので、基本的には、暗号化の対象は、ＩＰデータ部Ｄｉ１０ということになる。なお、ＴＣＰヘッダ部Ｈｔ１０内のデータ（たとえば、ポート番号など）を参照したり、書き換えたりする必要がある場合は、ＴＣＰデータ部Ｄｔ１０のみを暗号化の対象とすればよい。もちろん、ＴＣＰデータ部Ｄｔ１０の一部分のみを暗号化の対象としてもよい。このような暗号化処理により、第１のＩＰパケットＩＰ１０は、送信用暗号データＣ２０に変換される。
【００９７】
パケット送信部４１０は、クライアント装置４００を送信元とし、中継サーバ装置３００をあて先として、送信用暗号データＣ２０をデータ部に含む第２のＩＰパケットＩＰ２０を作成して送信する機能を有する。図７は、こうして作成された第２のＩＰパケットＩＰ２０の構造の一例を示すブロック図である。図７の上段に示すとおり、第２のＩＰパケットＩＰ２０は、ＩＰヘッダ部Ｈｉ２０とＩＰデータ部Ｄｉ２０とを含んでいる。一方、図７の下段には、クライアント用暗号化処理部４２０による暗号化処理が示されている。上述したように、クライアント用暗号化処理部４２０は、第１のＩＰパケットＩＰ１０のＩＰデータ部Ｄｉ１０の全部もしくは一部（たとえば、ＴＣＰデータ部Ｄｔ１０）を暗号化したデータとして送信用暗号データＣ２０を作成する。第２のＩＰパケットＩＰ２０のＩＰデータ部Ｄｉ２０には、こうして作成された送信用暗号データＣ２０がそのまま格納される。
【００９８】
いわば、図６に示す第１のＩＰパケットＩＰ１０を、暗号化した状態で、第２のＩＰパケットＩＰ２０内にカプセル化する処理が行われたことになる。そして、第２のＩＰパケットＩＰ２０のヘッダ部Ｈｉ２０には、クライアント装置４００のアドレスを示す送信元ＩＰアドレスＨｉ２０ａと、中継サーバ装置３００のアドレスを示すあて先ＩＰアドレスＨｉ２０ｂと、が格納される。たとえば、図４に示す例において、クライアント装置４０１から対象サーバ装置１００に対してＨＴＴＰリクエストを送信する場合、送信元ＩＰアドレスＨｉ２０ａとして、クライアント装置４０１のＩＰアドレス「xx.5.1.1」が書き込まれ、あて先ＩＰアドレスＨｉ２０ｂとして、中継サーバ装置３００のＩＰアドレス「zz.7.1.1」が書き込まれる。
【００９９】
結局、パケット送信部４１０は、第２のＩＰパケットＩＰ２０として、ＩＰヘッダ部Ｈｉ２０とＩＰデータ部Ｄｉ２０とを含むＩＰパケットを作成する処理を行い、ＩＰデータ部Ｄｉ２０に、送信用暗号データＣ２０を格納することによりカプセル化処理を行い、第２のＩＰパケットＩＰ２０をＴＣＰ／ＩＰのプロトコルに従って送信する処理を行うことになる。
【０１００】
こうして送信された第２のＩＰパケットＩＰ２０は、ネットワークＮを介して、あて先となる中継サーバ装置３００に到達する。図５では、クライアント装置４００から中継サーバ装置３００に至る第２のＩＰパケットＩＰ２０の通信経路が白抜矢印で示されているが、これは、当該通信経路が暗号化通信経路になっていることを示す。したがって、この白抜矢印で示す通信経路上に無線通信路が介在していたために盗聴が行われたとしても、情報漏洩の危険性は排除できる。
【０１０１】
続いて、この第２のＩＰパケットＩＰ２０を受信した中継サーバ装置３００内の処理を、関連する構成要素の機能とともに説明する。
【０１０２】
まず、中継サーバ用復号処理部３２０は、第２のＩＰパケットＩＰ２０を受信し、そのＩＰデータ部Ｄｉ２０に含まれている送信用暗号データＣ２０を復号して、図６に示す第１のＩＰパケットＩＰ１０を復元する処理を行う。もちろん、中継サーバ用復号処理部３２０による復号処理は、クライアント用暗号化処理部４２０で行われた暗号化処理を踏まえて実行される。具体的には、中継サーバ用復号処理部３２０は、第２のＩＰパケットＩＰ２０の送信元であるクライアント装置４００を、送信元ＩＰアドレスＨｉ２０ａに基づいて特定することができるので、クライアント用暗号化処理部４２０で行われた暗号化処理のアルゴリズムとは逆の復号アルゴリズムを、暗号化に用いられた暗号化キーに応じた復号キーを用いて実行することにより、送信用暗号データＣ２０を第１のＩＰパケットＩＰ１０に変換する処理を行うことができる。
【０１０３】
一方、パケット転送部３１０は、中継サーバ用復号処理部３２０によって復元された第１のＩＰパケットＩＰ１０の送信元を、クライアント装置４００から中継サーバ装置３００に変更することにより第３のＩＰパケットＩＰ３０を作成し、作成した第３のＩＰパケットＩＰ３０を送信する機能を有する。
【０１０４】
図８は、こうして作成された第３のＩＰパケットＩＰ３０の構造の一例を示すブロック図である。図示のとおり、第３のＩＰパケットＩＰ３０は、ＩＰヘッダ部Ｈｉ３０とＩＰデータ部Ｄｉ３０とを含んでいる。パケット転送部３１０は、第３のＩＰパケットＩＰ３０のＩＰデータ部Ｄｉ３０に、復元された第１のＩＰパケットＩＰ１０（図６参照）のＩＰデータ部Ｄｉ１０を格納する。図８には、ＩＰデータ部Ｄｉ３０に、ＴＣＰパケットＴＣＰ３０が格納されている状態が示されているが、実は、このＴＣＰパケットＴＣＰ３０は、図６に示すＴＣＰパケットＴＣＰ１０と同じものである。
【０１０５】
従って、図８に示されているＴＣＰヘッダ部Ｈｔ３０は、図６に示されているＴＣＰヘッダ部Ｈｔ１０と同じものであり、図８に示されているＴＣＰデータ部Ｄｔ３０は、図６に示されているＴＣＰデータ部Ｄｔ１０と同じものである。よって、このＴＣＰデータ部Ｄｔ３０には、送信データＳ（この例の場合、ＨＴＴＰリクエスト）が格納されている。同様に、図８に示されている送信元ポート番号Ｈｔ３０ａおよびあて先ポート番号Ｈｔ３０ｂは、図６に示されている送信元ポート番号Ｈｔ１０ａおよびあて先ポート番号Ｈｔ１０ｂと同じものである。
【０１０６】
これに対して、図８に示す第３のＩＰパケットＩＰ３０のＩＰヘッダ部Ｈｉ３０の内容は、図６に示す第１のＩＰパケットＩＰ１０のＩＰヘッダ部Ｈｉ１０の内容とは若干異なっており、送信元ＩＰアドレスＨｉ３０ａとしては、中継サーバ装置３００のアドレスが格納されており、あて先ＩＰアドレスＨｉ３０ｂとしては、対象サーバ装置１００のアドレスが格納されている。すなわち、図６に示す第１のＩＰパケットＩＰ１０の送信元ＩＰアドレスを、クライアント装置４００から中継サーバ装置３００に変更したものが、図８に示す第３のＩＰパケットＩＰ３０ということになる。
【０１０７】
たとえば、図４に示す例において、クライアント装置４０１から対象サーバ装置１００に対してＨＴＴＰリクエストを送信する場合、第３のＩＰパケットＩＰ３０のＩＰヘッダ部Ｈｉ３０には、送信元ＩＰアドレスＨｉ３０ａとして、中継サーバ装置３００のＩＰアドレス「zz.7.1.1」が書き込まれ、あて先ＩＰアドレスＨｉ３０ｂとして、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」が書き込まれる。
【０１０８】
結局、パケット転送部３１０は、第３のＩＰパケットＩＰ３０として、ＩＰヘッダ部Ｈｉ３０とＩＰデータ部Ｄｉ３０とを含むＩＰパケットを作成する処理を行い、ＩＰデータ部Ｄｉ３０には、復元された第１のＩＰパケットＩＰ１０のデータ部Ｄｉ１０を格納し、ＩＰヘッダ部Ｈｉ３０には、送信元ＩＰアドレスＨｉ３０ａとして中継サーバ装置３００のアドレスを格納し、あて先ＩＰアドレスＨｉ３０ｂとして対象サーバ装置１００のアドレスを格納する処理を行い、こうして作成された第３のＩＰパケットＩＰ３０をＴＣＰ／ＩＰのプロトコルに従って送信する処理を行うことになる。
【０１０９】
こうして送信された第３のＩＰパケットＩＰ３０は、ネットワークＮを介して、あて先となる対象サーバ装置１００に到達する。図５では、中継サーバ装置３００から対象サーバ装置１００に至る第３のＩＰパケットＩＰ３０の通信経路が通常の矢印で示されているが、これは、当該通信経路が平文による通常の通信経路になっていることを示す。したがって、この通常の通信経路上で盗聴が行われた場合は、情報漏洩が生じる可能性があるが、対象サーバ装置１００に到達した第３のＩＰパケットＩＰ３０は、平文による通常のＩＰパケットであるため、対象サーバ装置１００内で復号処理などを行う必要はない。これは、対象サーバ装置１００が、暗号通信を前提とした特別な装置である必要はないことを意味する。ここに示す例のように、Ｗｅｂサーバを対象サーバ装置１００とする場合、任意のＷｅｂサーバを対象サーバ装置１００として選択することが可能である。
【０１１０】
以上が、Ｗｅｂサーバからなる対象サーバ装置１００に対して、クライアント装置４００からＨＴＴＰリクエストを送信する際の一連の処理プロセスである。第３のＩＰパケットＩＰ３０のＩＰヘッダ部Ｈｉ３０には、送信元ＩＰアドレスとして、中継サーバ装置３００のアドレスが格納されているため、対象サーバ装置１００に対しては、クライアント装置４００のアドレスは秘匿されることになる。したがって、万一、対象サーバ装置１００の管理者が悪意をもった者であっても、クライアント装置４００については匿名性、覆面性が確保されているため、クライアント装置４００のセキュリティは確保される。
【０１１１】
＜３−３．  ＨＴＴＰレスポンスの返信プロセス＞
続いて、Ｗｅｂサーバからなる対象サーバ装置１００が、クライアント装置４００から中継サーバ装置３００を介して送信されてきたＨＴＴＰリクエストに応じて、ＨＴＴＰレスポンスを作成し、これを返信する際の処理プロセスを例にとりながら、関連する各構成要素の具体的な処理機能を説明する。
【０１１２】
図９は、対象サーバ装置１００によって作成された第４のＩＰパケットＩＰ４０の構造の一例を示すブロック図である。この第４のＩＰパケットＩＰ４０は、対象サーバ装置１００から中継サーバ装置３００に向けて送信される。ここに示す例の場合、対象サーバ装置１００が受信した第３のＩＰパケットＩＰ３０に含まれる送信データＳはＨＴＴＰリクエストであるため、対象サーバ装置１００は、まず、このＨＴＴＰリクエストに応じたＨＴＴＰレスポンスを返信データＲとして作成する。このＨＴＴＰレスポンスには、たとえば、閲覧要求のあったＷｅｂページに表示すべきテキストや画像データが含まれている。
【０１１３】
図９に示す第４のＩＰパケットＩＰ４０は、ＩＰヘッダ部Ｈｉ４０とＩＰデータ部Ｄｉ４０とを含んでおり、ＩＰヘッダ部Ｈｉ４０には、対象サーバ装置１００自身のアドレスを示す送信元ＩＰアドレスＨｉ４０ａと、直接的な返信先である中継サーバ３００のアドレスを示すあて先ＩＰアドレスＨｉ４０ｂと、が格納されている。あて先ＩＰアドレスＨｉ４０ｂが、クライアント装置４００のアドレスではなく、中継サーバ３００のアドレスになっているのは、第３のＩＰパケットＩＰ３０の送信元が中継サーバ３００のアドレスになっていたためである。
【０１１４】
別言すれば、対象サーバ装置１００は、中継サーバ装置３００からＨＴＴＰリクエストが送信されてきたので、これに応じたＨＴＴＰレスポンスを、中継サーバ装置３００に対して返信する処理を行うことになる。これは、一般的なＷｅｂサーバで行われている通常の処理である。具体的には、図４に示す例の場合、第４のＩＰパケットＩＰ４０のＩＰヘッダ部Ｈｉ４０には、送信元ＩＰアドレスＨｉ４０ａとして、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」が書き込まれ、あて先ＩＰアドレスＨｉ４０ｂとして、中継サーバ装置３００のＩＰアドレス「zz.7.1.1」が書き込まれる。
【０１１５】
一方、第４のＩＰパケットＩＰ４０のＩＰデータ部Ｄｉ４０には、中継サーバ装置３００に対して返信すべき返信データＲ（この例の場合、ＨＴＴＰレスポンス）を含んだＴＣＰパケットＴＣＰ４０が格納されている。このＴＣＰパケットＴＣＰ４０は、ＴＣＰヘッダ部Ｈｔ４０とＴＣＰデータ部Ｄｔ４０とを含んでおり、ＴＣＰデータ部Ｄｔ４０には、返信データＲ（この例の場合、ＨＴＴＰレスポンス）が格納されている。また、ＴＣＰヘッダ部Ｈｔ４０には、必要に応じて、送信元ポート番号Ｈｔ４０ａ，あて先ポート番号Ｈｔ４０ｂを格納することができる。
【０１１６】
結局、対象サーバ装置１００からは、図８に示す第３のＩＰパケットＩＰ３０に対する応答として、図９に示す第４のＩＰパケットＩＰ４０が返信されることになる。図５に示すように、中継サーバ装置３００は、このような第４のＩＰパケットＩＰ４０をネットワークＮを介して受信し、次のような処理を行う。
【０１１７】
まず、中継サーバ用暗号化処理部３３０は、この第４のＩＰパケットＩＰ４０を受信し、その少なくとも一部を暗号化して返信用暗号データＣ５０を作成する。実際には、ＩＰヘッダ部Ｈｉ４０には、送信元ＩＰアドレスＨｉ４０ａやあて先ＩＰアドレスＨｉ４０ｂが格納されているので、基本的には、暗号化の対象は、ＩＰデータ部Ｄｉ４０ということになる。なお、ＴＣＰヘッダ部Ｈｔ４０内のデータ（たとえば、ポート番号など）を参照したり、書き換えたりする必要がある場合は、ＴＣＰデータ部Ｄｔ４０のみを暗号化の対象とすればよい。もちろん、ＴＣＰデータ部Ｄｔ４０の一部分のみを暗号化の対象としてもよい。このような暗号化処理により、第４のＩＰパケットＩＰ４０は、返信用暗号データＣ５０に変換される。
【０１１８】
要するに、中継サーバ用暗号化処理部３３０は、図９に示すようなＩＰヘッダ部Ｈｉ４０とＩＰデータ部Ｄｉ４０とを含む第４のＩＰパケットＩＰ４０を受信し、受信した第４のＩＰパケットＩＰ４０のデータ部Ｄｉ４０の全部もしくは一部を暗号化して返信用暗号データＣ５０を作成する処理を行うことになる。
【０１１９】
パケット返信部３４０は、中継サーバ装置３００を送信元とし、クライアント装置４００をあて先として、上記返信用暗号データＣ５０をデータ部に含む第５のＩＰパケットＩＰ５０を作成して送信する機能を有する。図１０は、こうして作成された第５のＩＰパケットＩＰ５０の構造の一例を示すブロック図である。図１０の上段に示すとおり、第５のＩＰパケットＩＰ５０は、ＩＰヘッダ部Ｈｉ５０とＩＰデータ部Ｄｉ５０とを含んでいる。一方、図１０の下段には、中継サーバ用暗号化処理部３３０による暗号化処理が示されている。上述したように、中継サーバ用暗号化処理部３３０は、第４のＩＰパケットＩＰ４０のＩＰデータ部Ｄｉ４０の全部もしくは一部（たとえば、ＴＣＰデータ部Ｄｔ４０）を暗号化したデータとして返信用暗号データＣ５０を作成する。第５のＩＰパケットＩＰ５０のＩＰデータ部Ｄｉ５０には、こうして作成された返信用暗号データＣ５０がそのまま格納される。
【０１２０】
要するに、パケット返信部３４０は、図１０に示すように、ＩＰヘッダ部Ｈｉ５０とＩＰデータ部Ｄｉ５０とを含む第５のＩＰパケットＩＰ５０を作成する処理を行い、ＩＰデータ部Ｄｉ５０には、返信用暗号データＣ５０を格納するカプセル化処理を行い、ＩＰヘッダ部Ｈｉ５０には、中継サーバ装置３００のアドレスを示す送信元ＩＰアドレスＨｉ５０ａと、クライアント装置４００のアドレスを示すあて先ＩＰアドレスＨｉ５０ｂと、を格納する処理を行うことになる。
【０１２１】
この処理は、いわば、図９に示す第４のＩＰパケットＩＰ４０を、暗号化した状態で、第５のＩＰパケットＩＰ５０内にカプセル化する処理と言うことができる。ここで、図４に示す例において、クライアント装置４０１から対象サーバ装置１００に対してＨＴＴＰリクエストを送信し、これに対するＨＴＴＰレスポンスが返信されてきた場合、第５のＩＰパケットＩＰ５０内のＩＰヘッダ部Ｈｉ５０には、送信元ＩＰアドレスＨｉ５０ａとして、中継サーバ装置３００のＩＰアドレス「zz.7.1.1」が書き込まれ、あて先ＩＰアドレスＨｉ５０ｂとして、クライアント装置４０１のＩＰアドレス「xx.5.1.1」が書き込まれる。
【０１２２】
なお、パケット返信部３４０は、第５のＩＰパケットＩＰ５０を作成する際に、返信先となるクライアント装置４０１のＩＰアドレス「xx.5.1.1」をあて先ＩＰアドレスＨｉ５０ｂとしてＩＰヘッダ部Ｈｉ５０に書き込む必要があるので、このクライアント装置４０１のＩＰアドレス「xx.5.1.1」を何らかの方法で入手する必要がある。別言すれば、図９に示す第４のＩＰパケットＩＰ４０のＩＰヘッダ部Ｈｉ４０には、送信元ＩＰアドレスＨｉ４０ａとして対象サーバ装置１００のアドレス「yy.5.1.1」が格納され、あて先ＩＰアドレスＨｉ４０ｂとして中継サーバ装置３００のアドレス「zz.7.1.1」が格納されているだけであり、第５のＩＰパケットＩＰ５０の返信先であるクライアント装置４０１のアドレス「xx.5.1.1」は格納されていない。したがって、パケット返信部３４０は、返信先となるクライアント装置を何らかの方法で特定し、そのアドレスを入手する必要がある。説明の便宜上、この返信先となるクライアント装置の特定方法については、後述する§４−２で述べることにする。
【０１２３】
結局、パケット返信部３４０は、第５のＩＰパケットＩＰ５０として、ＩＰヘッダ部Ｈｉ５０とＩＰデータ部Ｄｉ５０とを含むＩＰパケットを作成する処理を行い、ＩＰデータ部Ｄｉ５０に、返信用暗号データＣ５０を格納することによりカプセル化処理を行い、第５のＩＰパケットＩＰ５０をＴＣＰ／ＩＰのプロトコルに従って送信する処理を行うことになる。
【０１２４】
こうして返信された第５のＩＰパケットＩＰ５０は、ネットワークＮを介して、あて先となるクライアント装置４００に到達する。図５では、中継サーバ装置３００からクライアント装置４００に至る第５のＩＰパケットＩＰ５０の通信経路が白抜矢印で示されているが、これは、当該通信経路が暗号化通信経路になっていることを示す。したがって、この白抜矢印で示す通信経路上に無線通信路が介在していたために盗聴が行われたとしても、情報漏洩の危険性は排除できる。
【０１２５】
続いて、この第５のＩＰパケットＩＰ５０を受信したクライアント装置４００内の処理を、関連する構成要素の機能とともに説明する。
【０１２６】
まず、クライアント用復号処理部４４０は、第５のＩＰパケットＩＰ５０を受信し、そのＩＰデータ部Ｄｉ５０に含まれている返信用暗号データＣ５０を復号して、図９に示す第４のＩＰパケットＩＰ４０を復元する処理を行う。もちろん、クライアント用復号処理部４４０による復号処理は、中継サーバ用暗号化処理部３３０で行われた暗号化処理を踏まえて実行される。具体的には、クライアント用復号処理部４４０は、第５のＩＰパケットＩＰ５０の送信元である中継サーバ装置３００を、送信元ＩＰアドレスＨｉ５０ａに基づいて特定することができるので、中継サーバ用暗号化処理部３３０で行われた暗号化処理のアルゴリズムとは逆の復号アルゴリズムを、暗号化に用いられた暗号化キーに応じた復号キーを用いて実行することにより、返信用暗号データＣ５０を第４のＩＰパケットＩＰ４０に変換する処理を行うことができる。
【０１２７】
一方、パケット受信部４５０は、クライアント用復号処理部４４０によって復元された第４のＩＰパケットＩＰ４０のあて先を、中継サーバ装置３００からクライアント装置４００に変更することにより第６のＩＰパケットＩＰ６０を作成する機能を有する。
【０１２８】
図１１は、こうして作成された第６のＩＰパケットＩＰ６０の構造の一例を示すブロック図である。図示のとおり、第６のＩＰパケットＩＰ６０は、ＩＰヘッダ部Ｈｉ６０とＩＰデータ部Ｄｉ６０とを含んでいる。パケット受信部４５０は、第６のＩＰパケットＩＰ６０のＩＰデータ部Ｄｉ６０に、復元された第４のＩＰパケットＩＰ４０（図９参照）のＩＰデータ部Ｄｉ４０を格納する。図１１には、ＩＰデータ部Ｄｉ６０に、ＴＣＰパケットＴＣＰ６０が格納されている状態が示されているが、実は、このＴＣＰパケットＴＣＰ６０は、図９に示すＴＣＰパケットＴＣＰ４０と同じものである。
【０１２９】
従って、図１１に示されているＴＣＰヘッダ部Ｈｔ６０は、図９に示されているＴＣＰヘッダ部Ｈｔ４０と同じものであり、図１１に示されているＴＣＰデータ部Ｄｔ６０は、図９に示されているＴＣＰデータ部Ｄｔ４０と同じものである。よって、このＴＣＰデータ部Ｄｔ６０には、返信データＲ（この例の場合、ＨＴＴＰレスポンス）が格納されている。同様に、図１１に示されている送信元ポート番号Ｈｔ６０ａおよびあて先ポート番号Ｈｔ６０ｂは、図９に示されている送信元ポート番号Ｈｔ４０ａおよびあて先ポート番号Ｈｔ４０ｂと同じものである。
【０１３０】
これに対して、図１１に示す第６のＩＰパケットＩＰ６０のＩＰヘッダ部Ｈｉ６０の内容は、図９に示す第４のＩＰパケットＩＰ４０のＩＰヘッダ部Ｈｉ４０の内容とは若干異なっており、送信元ＩＰアドレスＨｉ６０ａとしては、対象サーバ装置１００のアドレスが格納されており、あて先ＩＰアドレスＨｉ６０ｂとしては、クライアント装置４００のアドレスが格納されている。すなわち、図９に示す第４のＩＰパケットＩＰ４０のあて先ＩＰアドレスを、中継サーバ装置３００からクライアント装置４００に変更したものが、図１１に示す第６のＩＰパケットＩＰ６０ということになる。
【０１３１】
たとえば、図４に示す例において、クライアント装置４０１から対象サーバ装置１００に対してＨＴＴＰリクエストを送信し、これに対するＨＴＴＰレスポンスが返信されてきた場合、第６のＩＰパケットＩＰ６０のＩＰヘッダ部Ｈｉ６０には、送信元ＩＰアドレスＨｉ６０ａとして、対象サーバ装置１００のＩＰアドレス「yy.6.1.1」が書き込まれ、あて先ＩＰアドレスＨｉ６０ｂとして、クライアント装置４０１のＩＰアドレス「xx.5.1.1」が書き込まれる。
【０１３２】
結局、パケット受信部４５０は、第６のＩＰパケットＩＰ６０として、ＩＰヘッダ部Ｈｉ６０とＩＰデータ部Ｄｉ６０とを含むＩＰパケットを作成する処理を行い、ＩＰデータ部Ｄｉ６０に、復元された第４のＩＰパケットＩＰ４０に含まれていた返信データＲ（この例では、ＨＴＴＰレスポンス）を格納する処理を行うことになる。
【０１３３】
最後に、通信制御部４３０が、この第６のＩＰパケットＩＰ６０のデータ部Ｄｉ６０に含まれている返信データＲ（この例では、ＨＴＴＰレスポンス）を取り出す処理を行う。かくして、送信データＳ（ＨＴＴＰリクエスト）に応じた返信データＲ（ＨＴＴＰレスポンス）が得られることになる。この返信データＲ（ＨＴＴＰレスポンス）は、たとえば、Ｗｅｂブラウザプログラムによって利用され、ディスプレイ画面上にＷｅｂページの表示が行われる。
【０１３４】
＜＜＜  §４．  中継サーバ装置の処理機能についての補足説明  ＞＞＞
上述した§３では、図５を参照しながら、本発明の基本的な実施形態に係るパケット通信システムの基本構成およびＩＰパケットの流れを説明した。ここでは、§３で述べた中継サーバ装置３００の処理機能について、若干の補足説明を行うことにする。
【０１３５】
＜４−１．  受信したパケットの選別＞
図５に示すとおり、中継サーバ装置３００には、クライアント装置４００から送信されてきた第２のＩＰパケットＩＰ２０と、対象サーバ装置１００から送信されてきた第４のＩＰパケットＩＰ４０と、の２通りのＩＰパケットが届くことになる。そして、§３で説明したように、前者は、中継サーバ用復号処理部３２０によって処理され、後者は、中継サーバ用暗号化処理部３３０によって処理される。したがって、実際には、中継サーバ装置３００に届いたＩＰパケットが、第２のＩＰパケットＩＰ２０なのか、第４のＩＰパケットＩＰ４０なのかを判断し、前者であれば中継サーバ用復号処理部３２０による処理対象とし、後者であれば中継サーバ用暗号化処理部３３０の処理対象とする選別処理が必要となる。そのような選別処理を行うための方法としては、いくつかの方法が考えられる。
【０１３６】
(1)   たとえば、第１の方法として、パケット送信部４１０において、第２のＩＰパケットＩＰ２０に対して何らかのマーキングを行う方法を採ることができる。図７に示すとおり、第２のＩＰパケットＩＰ２０は、ＩＰヘッダ部Ｈｉ２０を含んでおり、ここには、図示されている送信元ＩＰアドレスＨｉ２０ａやあて先ＩＰアドレスＨｉ２０ｂの他にも、様々な情報を格納しておくことができる。そこで、パケット送信部４１０が、第２のＩＰパケットＩＰ２０を作成する際に、ＩＰヘッダ部Ｈｉ２０の特定箇所に、「当該ＩＰパケットが第２のＩＰパケットＩＰ２０である」ことを示すパケット識別コードを書き込むようにすればよい。
【０１３７】
この第１の方法を採る場合、外部からのＩＰパケットを受け取った中継サーバ装置３００は、まず、ＩＰヘッダ部の上記特定箇所に、上記パケット識別コードが書き込まれているか否かを判断する。そして、パケット識別コードが書き込まれていた場合には、届いたＩＰパケットを第２のＩＰパケットＩＰ２０であると判断し、中継サーバ用復号処理部３２０の処理対象とし、パケット識別コードが書き込まれていなかった場合には、届いたＩＰパケットを第４のＩＰパケットＩＰ４０であると判断し、中継サーバ用暗号化処理部３３０の処理対象とすればよい。
【０１３８】
(2)   あるいは、第２の方法として、外部からのＩＰパケットを受け取った中継サーバ装置３００は、とりあえず、これを第２のＩＰパケットＩＰ２０であると仮定し、中継サーバ用復号処理部３２０で復号処理を試行し、復号されたパケットのデータ構造に異常がなければ、当該ＩＰパケットを第２のＩＰパケットＩＰ２０であると判断して処理を続けるようにし、異常が認められた場合には、当該ＩＰパケットを第４のＩＰパケットＩＰ４０であると判断して、中継サーバ用暗号化処理部３３０の処理対象とする方法を採ることができる。
【０１３９】
図７に示すように、第２のＩＰパケットＩＰ２０のＩＰデータ部Ｄｉ２０には、送信用暗号データＣ２０がカプセル化されており、この部分を復号すると、第１のＩＰパケットＩＰ１０が復元されるはずである。そして、この復元された第１のＩＰパケットＩＰ１０は、ＩＰパケットとして定められた正規のデータ構造を有しているはずである。したがって、中継サーバ用復号処理部３２０で復号処理を試行した結果、このような正規のデータ構造を有するＩＰパケットが復元されなかった場合は、復号処理の対象となったＩＰパケットは、第２のＩＰパケットＩＰ２０ではなく、第４のＩＰパケットＩＰ４０であると判断することができる。
【０１４０】
(3)   また、第３の方法として、中継サーバ装置３００に、２通りのＩＰアドレスを設定する方法を採ることも可能である。図４に示す実施例は、中継サーバ装置３００に単一のグローバルＩＰアドレス「zz.7.1.1」を設定した例であるが、２通りのＩＰアドレスを設定し、一方をクライアント装置４００に対する送受信窓口として用い、他方を対象サーバ装置１００に対する送受信窓口として用いるようにすれば、いずれの送受信窓口に届いたＩＰパケットであるかを認識することにより、第２のＩＰパケットＩＰ２０と第４のＩＰパケットＩＰ４０との選別が可能である。
【０１４１】
たとえば、クライアント装置４００に対する送受信窓口としてＩＰアドレス「zz.7.1.1」を用い、対象サーバ装置１００に対する送受信窓口としてＩＰアドレス「zz.8.1.1」を用いるようにした場合を考えてみよう。この場合、クライアント装置４００のパケット送信部４１０は、ＩＰアドレス「zz.7.1.1」宛に第２のＩＰパケットＩＰ２０を送信することになり、中継サーバ装置３００のパケット返信部３４０は、ＩＰアドレス「zz.7.1.1」を送信元として第５のＩＰパケットＩＰ５０を返信することになる。一方、中継サーバ装置３００のパケット転送部３１０は、ＩＰアドレス「zz.8.1.1」を送信元として第３のＩＰパケットＩＰ３０を送信することになるので、対象サーバ装置１００からは、ＩＰアドレス「zz.8.1.1」宛に第４のＩＰパケットが返信されてくることになる。
【０１４２】
したがって、中継サーバ装置３００では、ＩＰアドレス「zz.7.1.1」宛にＩＰパケットが届いた場合には、これを第２のＩＰパケットＩＰ２０と判断して中継サーバ用復号処理部３２０の処理対象とし、ＩＰアドレス「zz.8.1.1」宛にＩＰパケットが届いた場合には、これを第４のＩＰパケットＩＰ４０と判断して中継サーバ用暗号化処理部３３０の処理対象とすればよい。
【０１４３】
以上、中継サーバ装置３００に届いたＩＰパケットが、第２のＩＰパケットＩＰ２０なのか、第４のＩＰパケットＩＰ４０なのかを選別する方法の例として、３つの方法を述べたが、もちろん、本発明は、これら３つの方法に限定されるものではなく、この他にも任意の選別方法を採用することができる。
【０１４４】
＜４−２．  返信先となるクライアント装置の特定方法＞
§３−３で説明したとおり、中継サーバ装置３００内のパケット返信部３４０は、図１０に例示するような第５のＩＰパケットＩＰ５０を作成する処理を行う。この第５のＩＰパケットＩＰ５０のＩＰヘッダ部Ｈｉ５０には、送信元ＩＰアドレスＨｉ５０ａとして、中継サーバ装置３００自身のＩＰアドレスが格納されており、あて先ＩＰアドレスＨｉ５０ｂとして、クライアント装置４００のＩＰアドレスが格納されている。したがって、パケット返信部３４０は、このクライアント装置４００のＩＰアドレスを書き込むために、返信先となるクライアント装置を特定する必要がある。
【０１４５】
具体的には、図４に示す実施例の場合、中継サーバ装置３００は、５台のクライアント装置４０１〜４０５から中継依頼のアクセス（第２のＩＰパケットＩＰ２０の送信）を受けることになる。そして、中継サーバ装置３００は、この中継依頼の実行によって対象サーバ装置１００から得られる返信パケットを、依頼元である特定のクライアント装置に返信（第５のＩＰパケットＩＰ５０の送信）する必要がある。
【０１４６】
たとえば、図４に示す実施例において、クライアント装置４０１（ＩＰアドレス「xx.5.1.1」）からの中継依頼（第２のＩＰパケットＩＰ２０の送信）によって対象サーバ装置１００から得られた返信パケットは、第５のＩＰパケットＩＰ５０として、依頼元であるクライアント装置４０１（ＩＰアドレス「xx.5.1.1」）へ返信する必要がある。したがって、中継サーバ装置３００内のパケット返信部３４０は、返信先となるクライアント装置４０１のＩＰアドレス「xx.5.1.1」を、あて先ＩＰアドレスＨｉ５０ｂとして第５のＩＰパケットＩＰ５０内のＩＰヘッダ部Ｈｉ５０に書き込む必要がある。
【０１４７】
ただ、図９に示すように、第４のＩＰパケットＩＰ４０のＩＰヘッダ部Ｈｉ４０には、送信元ＩＰアドレスＨｉ４０ａとして対象サーバ装置１００のアドレス「yy.6.1.1」が格納され、あて先ＩＰアドレスＨｉ４０ｂとして中継サーバ装置３００のアドレス「zz.7.1.1」が格納されているだけであり、第５のＩＰパケットＩＰ５０の返信先であるクライアント装置４０１のアドレス「xx.5.1.1」は格納されていない。したがって、パケット返信部３４０は、返信先となるクライアント装置を何らかの方法で特定し、そのアドレスを入手する必要がある。以下、パケット返信部３４０が返信先となるクライアント装置を特定するための具体的な方法をいくつか述べる。
【０１４８】
(1)   第１の方法は、１台のクライアント装置に１台の中継サーバ装置を割り当て、１対１に対応させた運用を行う方法である。図４に示す実施例では、１台の中継サーバ装置３００が、５台のクライアント装置４０１〜４０５を受け持っているため、パケット返信部３４０は、返信先となるクライアント装置が５台のうちのどれかを特定する必要がある。これに対して、５台の中継サーバ装置３０１〜３０５を設けるようにし、それぞれがクライアント装置４０１〜４０５のいずれか１台をを受け持つようにすれば、各中継サーバ装置３０１〜３０５は、常に、受け持ちの１台のクライアント装置からの中継依頼を受けることになるので、パケット返信部３４０は、常に、受け持ちの１台のクライアント装置に対して第５のＩＰパケットＩＰ５０を返信すればよいことになる。
【０１４９】
要するに、この第１の方法では、複数ｎ台のクライアント装置４００とこれらｎ台のクライアント装置４００のそれぞれに対応づけられたｎ台の中継サーバ装置３００とを設け、各クライアント装置４００のパケット送信部４１０は、それぞれ対応づけられた特定の中継サーバ装置３００宛に第２のＩＰパケットＩＰ２０を送信し、各中継サーバ装置３００のパケット返信部３４０は、それぞれ対応づけられた特定のクライアント装置４００宛に第５のＩＰパケットＩＰ５０を送信するようにすればよい。
【０１５０】
なお、実用上は、複数ｎ台の中継サーバ装置３００として、それぞれハードウェアとして別個独立したサーバ装置を設置する必要はなく、組み込むソフトウェアによって、ハードウェア的には１台のサーバ装置を、複数ｎ台の中継サーバ装置３００として機能させるようにすれば十分である。たとえば、ハードウェア的には１台のサーバ装置に、５つのＩＰアドレス「zz.7.1.1」〜「zz.7.1.5」を設定すれば、当該１台のサーバ装置を、本発明における５台の中継サーバ装置３００として機能させることができる。もちろん、この５台の中継サーバ装置３００については、パケット転送部３１０、中継サーバ用復号処理部３２０、中継サーバ用暗号化処理部３３０、パケット返信部３４０を共通して利用することが可能であり、ハードウェア的には１台のサーバ装置に、上記各構成要素としての機能を実行する共通プログラムをインストールすれば足りる。
【０１５１】
(2)   第２の方法は、対象サーバ装置１００に送信する第３のＩＰパケットＩＰ３０に、中継依頼を行った依頼元のクライアント装置を示す情報を埋め込む方法である。この方法を採る場合は、まず、パケット転送部３１０が、復元された第１のＩＰパケットＩＰ１０の送信元（中継依頼を行った依頼元のクライアント装置）を示す情報を、第３のＩＰパケットＩＰ３０に埋め込む処理を行うようにする。そして、中継サーバ用暗号化処理部３３０が、受信した第４のＩＰパケットＩＰ４０に埋め込まれていた上記送信元を示す情報を読み出してパケット返信部３４０に伝達する処理を行うようにし、パケット返信部３４０が、上記送信元を示す情報をあて先となるクライアント装置４００とする第５のＩＰパケットＩＰ５０を作成するようにすればよい。
【０１５２】
もっとも、この第２の方法を採る場合は、第３のＩＰパケットＩＰ３０に埋め込まれた情報が、そのまま第４のＩＰパケットＩＰ４０にも埋め込まれた状態で、対象サーバ装置１００から戻ってくることが前提となる。そのためには、たとえば、上記送信元を示す情報を、ＴＣＰパケット内のポート番号として埋め込むようにすればよい。
【０１５３】
これまで述べてきた実施例では、パケット転送部３１０は、図８に示すように、ＴＣＰ／ＩＰのプロトコルに従った第３のＩＰパケットＩＰ３０を作成する。そこで、その際に、パケット転送部３１０が、第３のＩＰパケットＩＰ３０に含まれるＴＣＰヘッダ部Ｈｔ３０内に、送信元ポート番号Ｈｔ３０ａとして第１のＩＰパケットＩＰ１０の送信元を示す情報を埋め込む処理を行うようにすればよい。そうすれば、対象サーバ装置１００から返信されてくる第４のＩＰパケットＩＰ４０には、埋め込んだ情報があて先ポート番号Ｈｔ４０ｂとして含まれることになる。
【０１５４】
すなわち、図８に示す第３のＩＰパケットＩＰ３０を受信した対象サーバ装置１００は、図９に示す第４のＩＰパケットＩＰ４０を返信することになるが、その際に、第３のＩＰパケットＩＰ３０内の送信元ＩＰアドレスＨｉ３０ａを、第４のＩＰパケットＩＰ４０内のあて先ＩＰアドレスＨｉ４０ｂとし、第３のＩＰパケットＩＰ３０に含まれるＴＣＰパケットＴＣＰ３０内の送信元ポート番号Ｈｔ３０ａを、第４のＩＰパケットＩＰ４０に含まれるＴＣＰパケットＴＣＰ４０内のあて先ポート番号Ｈｔ４０ｂとする処理が行われる。したがって、必要な情報を、第３のＩＰパケットＩＰ３０内に送信元ポート番号Ｈｔ３０ａとして書き込んでおけば、当該情報は、第４のＩＰパケットＩＰ４０内のあて先ポート番号Ｈｔ４０ｂとして読み出すことが可能になる。
【０１５５】
そこで、パケット返信部３４０は、第４のＩＰパケットＩＰ４０に含まれるＴＣＰヘッダ部Ｈｔ４０内に、あて先ポート番号Ｈｔ４０ｂとして埋め込まれていた情報（中継依頼を行った依頼元のクライアント装置を示す情報）に基づいて、第５のＩＰパケットＩＰ５０の送信先を決定することができる。
【０１５６】
(3)   第３の方法は、中継依頼を行った依頼元のクライアント装置と、第３のＩＰパケットとの対応関係を、中継サーバ装置３００内に記録しておく方法である。図１２は、この第３の方法を採用した本発明の変形例に係るパケット通信システムの構成を示すブロック図である。図５に示す基本的な実施形態と図１２に示す変形例との相違は、前者の中継サーバ装置３００が、後者では中継サーバ装置３００′に置き換えられている点だけである。ここで、図１２に示す中継サーバ装置３００′は、図５に示す中継サーバ装置３００におけるパケット転送部３１０をパケット転送部３１０′に置き換え、パケット返信部３４０をパケット返信部３４０′に置き換え、更に、新たな構成要素として、通信情報記録部３５０を付加したものである。この通信情報記録部３５０は、中継依頼を行った依頼元のクライアント装置と、第３のＩＰパケットとの対応関係を記録しておく機能を果たす。
【０１５７】
中継サーバ装置３００′のパケット転送部３１０′は、基本的な実施形態に係る中継サーバ装置３００のパケット転送部３１０の機能に加えて、更に、第３のＩＰパケットＩＰ３０を送信する際に、復元された第１のＩＰパケットＩＰ１０の送信元を示す情報と、当該第３のＩＰパケットＩＰ３０との対応関係を示す対応関係情報を通信情報記録部３５０に記録する処理を行う。一方、中継サーバ装置３００′のパケット返信部３４０′は、基本的な実施形態に係る中継サーバ装置３００のパケット返信部３４０の機能に加えて、更に、第５のＩＰパケットＩＰ５０を送信する際に、通信情報記録部３５０に記録されている対応関係情報に基づいて、第５のＩＰパケットＩＰ５０の送信先を決定する処理を行う。
【０１５８】
もっとも、この第３の方法を採る場合は、第４のＩＰパケットＩＰ４０内に第３のＩＰパケットＩＰ３０との対応を示す情報が残されていることが前提となる。すなわち、通信情報記録部３５０には、パケット転送部３１０′が第３のＩＰパケットＩＰ３０を送信する際に、第１のＩＰパケットＩＰ１０の送信元を示す情報と、第３のＩＰパケットＩＰ３０との対応関係を示す対応関係情報が記録されているので、パケット返信部３４０′が、この通信情報記録部３５０に記録されている対応関係情報に基づいて、第５のＩＰパケットＩＰ５０の送信先（すなわち、第１のＩＰパケットＩＰ１０の送信元）を決定するためには、第５のＩＰパケットＩＰ５０の元になる第４のＩＰパケットＩＰ４０内に、第３のＩＰパケットＩＰ３０を特定するための情報が含まれている必要がある。
【０１５９】
そのためには、たとえば、第３のＩＰパケットＩＰ３０を特定するための情報を、ＴＣＰパケット内のポート番号として埋め込むようにすればよい。具体的には、パケット転送部３１０′が、ＴＣＰ／ＩＰのプロトコルに従って、図８に示すような第３のＩＰパケットＩＰ３０を作成する際に、当該第３のＩＰパケットＩＰ３０に含まれるＴＣＰヘッダ部Ｈｔ３０内に、当該第３のＩＰパケットＩＰ３０を示すためのパケット識別子をポート番号として埋め込み、当該パケット識別子と復元された第１のＩＰパケットＩＰ１０の送信元を示す情報との対応関係を対応関係情報として通信情報記録部３５０に記録する処理を行えばよい。
【０１６０】
たとえば、図４に示す実施例において、クライアント装置４０１（ＩＰアドレス「xx.5.1.1」）からの中継依頼として、第２のＩＰパケットＩＰ２０が送信され、パケット転送部３１０′が、この第２のＩＰパケットＩＰ２０に基づいて、図８に示すような第３のＩＰパケットＩＰ３０を作成したものとしよう。このとき、パケット転送部３１０′は、ＴＣＰヘッダ部Ｈｔ３０内に、当該第３のＩＰパケットＩＰ３０を示すためのパケット識別子（たとえば、「1234」なるデータ）をポート番号として埋め込む処理をする（送信元ポート番号Ｈｔ３０ａとして埋め込んでもよいし、あて先ポート番号Ｈｔ３０ｂとして埋め込んでもよい）。
【０１６１】
そして、パケット転送部３１０′は、当該パケット識別子（たとえば、「1234」なるデータ）と復元された第１のＩＰパケットＩＰ１０の送信元を示す情報（上例の場合、たとえば、クライアント装置４０１のＩＰアドレス「xx.5.1.1」）との対応関係を、対応関係情報として通信情報記録部３５０に記録する。具体的には、上例の場合、通信情報記録部３５０には、「1234：xx.5.1.1」なる対応関係情報が記録されることになる。
【０１６２】
上記プロセスで作成された第３のＩＰパケットＩＰ３０が対象サーバ装置１００に送信されると、これに応じて、図９に示すような第４のＩＰパケットＩＰ４０が返信されてくる。前述したように、対象サーバ装置１００では、第３のＩＰパケットＩＰ３０内の送信元ポート番号Ｈｔ３０ａを、第４のＩＰパケットＩＰ４０内のあて先ポート番号Ｈｔ４０ｂとし、第３のＩＰパケットＩＰ３０内の送信元ポート番号Ｈｔ３０ａを、第４のＩＰパケットＩＰ４０内のあて先ポート番号Ｈｔ４０ｂとする処理が行われる。したがって、パケット転送部３１０′が第３のＩＰパケットＩＰ３０内のＴＣＰヘッダ部Ｈｔ３０内にポート番号として埋め込んだパケット識別子（上例の場合「1234」）は、第４のＩＰパケットＩＰ４０内のＴＣＰヘッダ部Ｈｔ４０内にポート番号として残存していることになる。
【０１６３】
そこで、パケット返信部３４０′は、第４のＩＰパケットＩＰ４０に含まれるＴＣＰヘッダ部Ｈｔ４０内にポート番号として埋め込まれていたパケット識別子（上例の場合「1234」）を利用して、通信情報記録部３５０に記録されている対応関係情報を参照することにより、第１のＩＰパケットＩＰ１０の送信元に対して、第５のＩＰパケットＩＰ５０を送信することができる。すなわち、上例の場合、パケット返信部３４０′は、通信情報記録部３５０に対して、パケット識別子「1234」を用いた検索を行うことにより、「1234：xx.5.1.1」なる対応関係情報を取得することができるので、第５のＩＰパケットＩＰ５０のＩＰヘッダ部Ｈｉ５０のあて先ＩＰアドレスとして、クライアント装置４０１のＩＰアドレス「xx.5.1.1」を書き込むことができる。
【０１６４】
以上、パケット返信部３４０′が返信先となるクライアント装置を特定するための具体的な方法の例として、３つの方法を述べたが、もちろん、本発明は、これら３つの方法に限定されるものではなく、この他にも任意の特定方法を採用することができる。
【０１６５】
＜＜＜  §５．  ２つの国の領域を跨いだ設置例  ＞＞＞
ここでは、本発明に係るパケット通信システムを、２つの国の領域を跨いで設置した変形例を示すとともに、当該変形例に基づいて得られる付加的な効果を説明する。
【０１６６】
図１３は、本発明に係るパケット通信システムを２つの国の領域を跨いで設置した変形例を示すブロック図である。この変形例に係るパケット通信システムは、１台の中継サーバ装置３００と、４台のクライアント装置４０１〜４０４と、によって構成され、アクセスの対象となる対象サーバ装置１００に対してネットワークＮを介して接続し、パケット通信を行う機能を有している。ここで中継サーバ装置３００および各クライアント装置４０１〜４０４の構成および機能は、これまで述べてきた実施例と全く同様である。
【０１６７】
この変形例の特徴は、２台のクライアント装置４０１，４０２および中継サーバ装置３００が、対象サーバ装置１００と同一のＡ国の領域内に設置されているのに対して、２台のクライアント装置４０３，４０４が、対象サーバ装置１００の設置領域とは異なるＢ国の領域内に設置されている点である。
【０１６８】
要するに、図１３に示す変形例の場合、中継サーバ装置３００が第１国Ａの領域内に設置されており、クライアント装置４０３，４０４が第２国Ｂの領域内に設置されている。このような設置状態において、クライアント装置４０３，４０４が、第１国Ａの領域内に設置されている対象サーバ装置１００に対してアクセスを行う際には、第１国Ａの領域内に設置されて中継サーバ装置３００による中継を介してアクセスを行うことになる。この変形例における具体的なアクセスのプロセスは、既に§３で述べたとおりである。また、このパケット通信システムを利用すれば、アクセス元の匿名性、覆面性を確保するとともに、通信経路における情報漏洩を防ぐことができるようになり、個人情報に関するセキュリティが向上するという特有の効果が得られる点も既に述べたとおりである。
【０１６９】
ただ、この変形例によれば、国外からのアクセスを拒否しているＷｅｂサイト等への外国からのアクセスを可能にする、という付加的な効果が得られる。以下、この付加的な効果について説明しよう。
【０１７０】
図１３に示す例では、Ａ国の領域に設置されたクライアント装置４０１，４０２は、「xxxx@xxx.ne.aa」なるドメイン名が付された無線ルータＲａを介してインターネットＮに接続されており、Ｂ国の領域に設置されたクライアント装置４０３，４０３は、「gggg@ggg.ne.bb」なるドメイン名が付された無線ルータＲｂを介してインターネットＮに接続されている。また、対象サーバ装置１００には、「yyyy@yyy.co.aa」なるドメイン名が付され、中継サーバ装置３００には、「zzzz@zzz.ne.aa」なるドメイン名が付されている。これらの各ドメイン名は、ＤＮＳを利用することにより、特定のグローバルＩＰアドレス（図示省略）に変換される。
【０１７１】
ここで、各ドメイン名の末尾「aa」および「bb」は、各装置が設置されている国を示すトップレベルドメインであり、末尾「aa」のドメイン名が付された装置はＡ国の領域内に設置されていることを示し、末尾「bb」のドメイン名が付された装置はＢ国の領域内に設置されていることを示している。インターネットＮを介したホスト間のアクセスは、基本的には自由であるが、セキュリテイ上の理由や、政治的・経済的な事情により、外国からのアクセスを制限するサイトも少なくない。
【０１７２】
たとえば、図１３に示す例において、対象サーバ装置１００の運営者が、外国からのアクセスを制限する運用を行っており、対象サーバ装置１００にそのような設定がなされていると、末尾「aa」のドメイン名が付されたホストからのアクセスは認容されるが、それ以外のドメイン名が付されたホストからのアクセスは拒絶されてしまう。具体的には、クライアント装置４０１，４０２は、対象サーバ装置１００にアクセスすることは可能であるが、クライアント装置４０３，４０４は、対象サーバ装置１００にアクセスすることができなくなる。
【０１７３】
このような場合であっても、本発明に係るパケット通信システムを利用すれば、クライアント装置４０３，４０４から対象サーバ装置１００へのアクセスが可能になる。すなわち、クライアント装置４０３，４０４から無線ルータＲｂを介して直接的に対象サーバ装置１００にアクセスした場合、アクセス元が末尾「bb」のドメイン名が付された外国のホストであることが確認されてしまうため、当該アクセスは拒絶される。しかしながら、本発明に係るパケット通信システムを利用した場合、クライアント装置４０３，４０４から無線ルータＲｂを介して対象サーバ装置１００にアクセスしようとすると、実際には、当該アクセスは中継サーバ装置３００により中継されることになるので、対象サーバ装置１００に対する直接的なアクセス元は、末尾「aa」のドメイン名が付されたＡ国内のホストということになり、当該アクセスは認容される。
【０１７４】
このように、本発明に係るパケット通信システムを、２つの国の領域を跨いで設置すると、上例のように、国外からのアクセスを拒否しているＷｅｂサイト等への外国からのアクセスを可能にする、という付加的な効果が得られることになる。
【０１７５】
＜＜＜  §６．  その他の変形例  ＞＞＞
最後に、これまで述べてきた基本的な実施形態やその変形例に加えて、更なる変形例の態様を記載しておく。
【０１７６】
(1)   これまで述べてきた実施例では、いずれもＴＣＰ／ＩＰプロトコルを用いた通信を前提としていたが、本発明を実施する上では、ＵＤＰ／ＩＰプロトコルなど、様々な通信プロトコルを利用することが可能である。
【０１７７】
(2)   これまで述べてきた実施例では、対象サーバ装置１００として、Ｗｅｂサーバを用いているが、本発明を実施する上で、対象サーバ装置１００はＷｅｂサーバに限定されるものではなく、メールサーバやデータサーバなどを利用することも可能である。要するに、本発明に係るパケット通信システムは、クライアント・サーバ間通信を行う場合に広く適用可能である。
【０１７８】
(3)   これまで述べてきた実施例では、単一のＩＰパケットの送受を行うプロセスを説明してきたが、単一のＩＰパケットに収容可能なデータ容量には制限があり、実際には、１つのデータを複数のＩＰパケットに分割して送信するケースも少なくない。たとえば、Ｗｅｂページを表示するためにＷｅｂサーバに対して送信するＨＴＴＰリクエストは、通常、単一のＩＰパケットに収容することが可能であるが、これに応じてＷｅｂサーバから返信されるＨＴＴＰレスポンスは、画像データなども含まれているため、複数のＩＰパケットに分割されることが多い。この場合、送信データＳ（ＨＴＴＰリクエスト）として単一のＩＰパケットを送信すると、返信データＲ（ＨＴＴＰレスポンス）として複数のＩＰパケットが返信されることになるが、個々のＩＰパケットの基本的な処理プロセスに変わりはない。
【０１７９】
(4)   対象サーバ装置１００によっては、ＳＳＬの暗号通信などのセキュアな通信を行う設定がなされている場合もあり、その場合は、当該セキュアな通信を確保するために、送信データＳや返信データＲに対して暗号化が行われることになる。この場合、クライアント用暗号化処理部４２０や中継サーバ用暗号化処理部３３０による二重の暗号化を行ってもよいし、これらの処理部４２０，３３０による暗号化を省略するようにしてもよい。
【０１８０】
(5)   図４に示す基本的な実施形態の場合、ルータＲ１によって構築されたサブネットにクライアント装置４０２，４０３が接続され、無線ルータＲ２によって構築されたサブネットにクライアント装置４０４，４０５が接続されている。そして、対象サーバ装置１００は、これらサブネット外に接続されている。このような場合、これまで述べてきたとおりの運用を行えばよいが、対象サーバ装置が同一のサブネット内に接続されたサーバ装置であった場合、当該サーバ装置宛ての送信データＳや、これに応じた返信データＲについては、本発明に固有の暗号化処理や中継サーバ装置３００を介した中継処理を行わないようにすることも可能である。
【０１８１】
たとえば、図４に示す実施例において、ルータＲ１によって構築されたサブネットに、プリンタサーバ１０９が接続されており、クライアント装置４０２から上記プリンタサーバ１０９にアクセスする場合を考えてみる。この場合、アクセス元のクライアント装置４０２とアクセス先のプリンタサーバ１０９は、同一のサブネットに所属しているため、アクセス元の匿名性、覆面性を確保したり、通信経路における情報漏洩を防止する対策をとったりする必要性は低く、データの暗号化を行ったり、中継サーバ装置３００による中継を行ったりする必要性に乏しい。
【０１８２】
そこで、クライアント装置が同一のサブネットに所属する対象サーバ装置にアクセスする場合には、本発明に固有の通信プロセスを実行せず、通常の通信プロセスを行うようにしてもかまわない。具体的には、図５に示すクライアント装置４００内の通信制御部４３０に、アクセスの対象となる対象サーバ装置が、同一のサブネットに所属しているか否かを判定する機能をもたせ、同一のサブネットに所属していた場合には、クライアント用暗号化処理部４２０やパケット送信部４１０を通さずに、第１のＩＰパケットをそのままサブネットに送信する機能をもたせておけばよい。また、クライアント装置４００に同一のサブネットに所属する対象サーバ装置からの返信があった場合には、クライアント用復号処理部４４０やパケット受信部４５０を通さずに、返信されてきたＩＰパケットを通信制御部４３０が直接受信するようにしておけばよい。
【０１８３】
(6)   本発明に係るパケット通信システムは、別な発明に係るシステムと併用して導入することが可能である。たとえば、本願出願人は、本発明に関連する別発明として、国際公開第ＷＯ2017/145984号にネットワーク通信システムの発明を開示している。本発明に係るパケット通信システムは、前記別発明に係るネットワーク通信システムと併用して導入することが可能である。この場合、ネットワークＮには、本発明に係る中継サーバ装置３００と、前記別発明に係る接続仲介装置とが併設されることになるが、これらの装置は、ハードウェア的には単一のサーバ装置によって構成することができる。
【産業上の利用可能性】
【０１８４】
本発明に係るパケット通信システムは、パソコン、携帯電話、タブレット型端末など、ネットワークを介して所望のサーバ装置に接続可能な様々クライアント装置が利用されている状態において、任意のサーバ装置に対するセキュアな通信環境を提供するものであり、産業上、十分な利用可能性を有している。
【符号の説明】
【０１８５】
１００：対象サーバ装置（Ｗｅｂサーバ等）
２００：クライアント装置
２０１〜２０５：クライアント装置
３００，３００′：中継サーバ装置
３１０，３１０′：パケット転送部
３２０：中継サーバ用復号処理部
３３０：中継サーバ用暗号化処理部
３４０，３４０′：パケット返信部
３５０：通信情報記録部
４００：クライアント装置
４０１〜４０５：クライアント装置
４１０：パケット送信部
４２０：クライアント用暗号化処理部
４３０：通信制御部
４４０：クライアント用復号処理部
４５０：パケット受信部
Ｃ２０：送信用暗号データ
Ｃ５０：返信用暗号データ
Ｄｔ１，Ｄｔ２：ＴＣＰデータ部
Ｄｉ１，Ｄｉ２：ＩＰデータ部
Ｈｔ１〜Ｈｔ６０：ＴＣＰヘッダ部
Ｈｔ１ａ〜Ｈｔ６０ａ：送信元ポート番号
Ｈｔ１ｂ〜Ｈｔ６０ｂ：あて元ポート番号
Ｈｉ１〜Ｈｉ６０：ＩＰヘッダ部
Ｈｉ１ａ〜Ｈｉ６０ａ：送信元ＩＰアドレス
Ｈｉ１ｂ〜Ｈｉ６０ｂ：あて元ＩＰアドレス
ＩＰ１，ＩＰ２：ＩＰパケット
ＩＰ１０：第１のＩＰパケット
ＩＰ２０：第２のＩＰパケット
ＩＰ３０：第３のＩＰパケット
ＩＰ４０：第４のＩＰパケット
ＩＰ５０：第５のＩＰパケット
ＩＰ６０：第６のＩＰパケット
Ｎ：ネットワーク（インターネット）
Ｐ１，Ｐ２：ポート番号
Ｒ：返信データ（ＨＴＴＰレスポンス）
Ｒ１：ルータ
Ｒ２，Ｒａ，Ｒｂ：無線ルータ
Ｓ：送信データ（ＨＴＴＰリクエスト）
ＴＣＰ１，ＴＣＰ２：ＴＣＰパケット
【図１】
2019216309.tif 000003
【図２】
2019216309.tif 000004
【図３】
2019216309.tif 000005
【図４】
2019216309.tif 000006
【図５】
2019216309.tif 000007
【図６】
2019216309.tif 000008
【図７】
2019216309.tif 000009
【図８】
2019216309.tif 000010
【図９】
2019216309.tif 000011
【図１０】
2019216309.tif 000012
【図１１】
2019216309.tif 000013
【図１２】
2019216309.tif 000014
【図１３】
2019216309.tif 000015