JPWO2005069535A1 - 暗号化通信方法、暗号化通信システム、ノード装置、名前解決サーバ及びプログラム - Google Patents

暗号化通信方法、暗号化通信システム、ノード装置、名前解決サーバ及びプログラム Download PDF

Info

Publication number
JPWO2005069535A1
JPWO2005069535A1 JP2005517033A JP2005517033A JPWO2005069535A1 JP WO2005069535 A1 JPWO2005069535 A1 JP WO2005069535A1 JP 2005517033 A JP2005517033 A JP 2005517033A JP 2005517033 A JP2005517033 A JP 2005517033A JP WO2005069535 A1 JPWO2005069535 A1 JP WO2005069535A1
Authority
JP
Japan
Prior art keywords
address
communication
name resolution
node device
encrypted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2005517033A
Other languages
English (en)
Other versions
JP4752510B2 (ja
Inventor
石川 雄一
雄一 石川
藤田 範人
範人 藤田
明夫 飯島
明夫 飯島
岩田 淳
淳 岩田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2005517033A priority Critical patent/JP4752510B2/ja
Publication of JPWO2005069535A1 publication Critical patent/JPWO2005069535A1/ja
Application granted granted Critical
Publication of JP4752510B2 publication Critical patent/JP4752510B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/59Network arrangements, protocols or services for addressing or naming using proxies for addressing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/164Implementing security features at a particular protocol layer at the network layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

クライアントノード(A1a)の通信相手が暗号化通信対象ノード(C1)である場合に、クライアントノード内のDNS Poroxy部(A12a)は、アプリケーションの通信相手ノードに対する名前解決要求への応答を、通信相手ノードの本来のIPアドレスから通信相手に応じて異なるループバックアドレスに書き換える。クライアントノード内の通信暗号化モジュール(A13a)は、アプリケーションが送信したデータパケットの宛先ループバックアドレスによって、通信相手および通信相手との通信に利用する暗号化通信路を識別する。このようにすることにより、独立したプロセスとして動作する通信暗号化モジュールを用いて、同時に複数の通信相手ノードと直接暗号化通信できるようになる。

Description

本発明は、不特定多数のノードが接続されているオープンなネットワーク上において、特定のグループに属する複数のノード間で相互にセキュアな通信を行う暗号化通信方法、暗号化通信システム、ノード装置、名前解決サーバ及びこれらを実現するためのプログラムに関する。
従来より、RFC2401やRFC3546等に記載されているように、不特定多数のノードが接続されているオープンなネットワーク(インターネット、公衆ホットスポットなど)上において、ノード、サーバ、ゲートウェイ装置などのノード間で通信を暗号化し、外部の第3者が通信内容を覗き見ることができないセキュアな通信路を提供するために、種々の暗号化通信方法が利用されている。
この種の暗号化通信方法を実現する通信暗号化プロトコルの例としては、暗号化するレイヤによって、以下のように大別される。
○レイヤ4(トランスポートレイヤ)以上
SSL(Secure Socket Layer)、TLS(Transport Layer Security)、SSH(Secure Shell)
○レイヤ3(ネットワークレイヤ)以下
IPsec、L2TP(Layer 2 Tunneling Protocol ) over IPsec、Ethernet(登録商標) over IPsec
これらの通信暗号化プロトコルを利用し、他のノードと暗号化された通信を行う場合、従来の暗号化通信方法は、通信暗号化の形態により以下の3つに分類できる。
(1)Webブラウザや電子メールアプリケーションなどの個々のアプリケーションにおいて通信暗号化を行う形態
(2)通信暗号化モジュールを利用して通信暗号化を行う形態
(3)OS(Operating System)のカーネル部が提供する機能を利用して通信暗号化を行う形態
形態(1)の暗号化通信方法の場合、前述したレイヤ4以上の通信暗号化プロトコルが利用される。例えば、“example.com”のドメインネームをもつ通信相手に対して、HTTP(Hyper Text Transfer Protocol)通信を暗号化したい場合、Webブラウザにおいて、“https://example.com/index.html”などのURL(Universal Resource Locator)を入力し、通信相手とのHTTP通信をSSLで暗号化する。このような通信暗号化形態は、当然ながら、アプリケーションが通信暗号化プロトコルをサポートしない限り利用することが出来ない。
形態(2)の通信暗号化モジュールを利用して通信暗号化を行う場合、主に前述したレイヤ4以上の通信暗号化プロトコルが利用される。通信暗号化モジュールは、独立したプロセスとして動作し、アプリケーションと通信相手とが送受信するデータパケットをインターセプトし、暗号化/復号化を行った後に通信相手/アプリケーションに送信する。通信暗号化モジュールの例としては、任意のTCP(Transport Control Protocol)コネクションをSSL暗号化するstunnelや、任意のTCPコネクションをSSHで暗号化トンネリングを行うSSHポートフォワーディングなどがある。
この形態(2)の通信暗号化方法では、形態(3)の通信暗号化方法と同様に、アプリケーションが通信暗号化プロトコルをサポートしているかどうかに依存することなく通信を暗号化することができるため、任意のアプリケーションの通信を暗号化することができる。さらに、この通信暗号化の形態においては、形態(3)の通信暗号化方法と異なりアプリケーションを意識した通信の暗号化が可能であり、特定のアプリケーションに関する通信のみ暗号化を行うといったことが可能である。
この形態(2)の通信暗号化方法による通信暗号化処理の概要を図25に示す。通信暗号化モジュールA13xは、通信の暗号化処理を行う通信暗号化部A131xと暗号化通信の対象ノード(以下、暗号化通信対象ノードと称す)C1のアドレスと暗号化通信路設定情報の組が唯一登録された暗号化通信路設定テーブルA132xとを含み、それ自体が独立したプロセスとして動作する。通信暗号化モジュールA13xにおいてアプリケーションA11xの送信したデータパケットに対して通信暗号化処理を行うためには、アプリケーションA11xがデータパケットを通信暗号化モジュールA13xに一旦渡し、必要な暗号化処理を行った後に、通信暗号化モジュールA13xがデータパケットを本来の通信相手へ送信する、という手順がとられる。そのため、アプリケーションA11xにおいては、通信相手として直接本来の通信相手のIPアドレスを指定するのではなく、ループバックアドレスである127.0.0.1(および必要に応じてプロセス(通信暗号化モジュール)の受信ポート番号)を宛先アドレスとして指定してデータパケットを送信し、通信暗号化モジュールA13xがデータパケットを受信できるようにする。通信暗号化モジュールA13xは、アプリケーションA11xからデータパケットを受信すると、通信暗号化部A131xの暗号・復号化処理部A1311xにより暗号化通信路設定テーブルA132xを参照し、予め設定されている通信相手(図25では、IPアドレス1.2.3.4のノード)に対して、暗号化通信設定情報に従ってデータパケットを暗号化し(図25では、プロトコル:SSL、暗号化アルゴリズム:DES、電子証明書ID:11を利用する)、アドレス変換部A1312xにより宛て先をIPアドレス1.2.3.4に書き換えて送信する。
なお、本形態(2)の暗号化通信方法では、図25に示したようにクライアントノードA1xが内部に通信暗号化モジュールA13xを含む構成以外に、通信暗号化モジュールが通信暗号化プロキシノードとして外部のノードにおいて提供されている構成もある。この場合、アプリケーションはこの外部ノードのIPアドレスを宛先アドレスに指定してデータパケットを送信する。通信暗号化モジュールは受信したデータパケットに対して必要な暗号化処理を行った後、予め設定された通信相手(暗号化通信対象ノードのIPアドレスが指定される)へとデータパケットを送信する。
形態(3)のOSのカーネル部が提供する機能を利用して通信暗号化を行う暗号化通信方法の場合、主に前述したレイヤ3以下の通信暗号化プロトコルが利用される。例えば、1.2.3.4というIPアドレスをもつ通信相手との間で全てのIPパケットを暗号化したい場合、OSの設定において通信相手(IPアドレス=1.2.3.4)との間にトランスポートモードまたはトンネリングモードでのIPsec設定を行う。
この形態(3)の暗号化通信方法では、形態(2)の暗号化通信方法と同様にアプリケーションが通信暗号化プロトコルをサポートしているかどうかに依存することなく通信を暗号化することができるため、任意のアプリケーションの通信を暗号化することができる。ただし本通信暗号化の形態(3)においては一般的に、形態(2)の暗号化通信方法と異なりアプリケーションを意識することなく、予め設定されたIPアドレスを持つ通信相手との通信が全て暗号化されるため、特定のアプリケーションに関する通信のみ暗号化を行うといったことはできない。
この形態(3)の暗号化通信方法における通信暗号化処理の概要を図26に示す。通信の暗号化処理を行う通信暗号化部A141yと暗号化通信対象ノードのアドレスおよび暗号化通信路の設定情報が登録された暗号化通信路設定部A142yは、OSのカーネル部内のデータ送受信部A14yに含まれる。アプリケーションA11xが送信する全てのデータパケットは送信処理のためデータ送受信部A14yに渡され、データ送受信部A14y内の通信暗号化部A141yが、データパケットの宛先アドレスを元に暗号化通信路設定部A142yを参照し、宛先アドレスが暗号化通信対象ノードとして登録されている場合(図26においては宛先アドレスが1.2.3.4、5.6.7.8の場合)は、登録されている暗号化通信路設定情報(図26においては、例えばプロトコル:IPSec、暗号化アルゴリズム:DES、電子証明書ID:11)に従って、暗号化処理を行い通信相手に送信する。
前述した通信暗号化モジュールを利用する暗号化通信方法は、特定のアプリケーションに関する通信のみを暗号化することが可能であり、かつアプリケーションが通信暗号化プロトコルをサポートしているかどうかに依存することなく通信暗号化を実現することができるという利点を有する。しかしながら、通信暗号化モジュールに予め設定されている単一の通信相手としか暗号化通信を行うことができないという問題がある。その理由は次の通りである。
レイヤ4レベルの通信暗号化モジュールの場合は、宛先ポートごとに通信相手を設定することが可能であるが、1つの宛先ポートに対しては単一の通信相手しか設定できない。すなわち、アプリケーションからは、宛先ポート番号を通信相手により変えない限り、予め設定されている単一の通信相手としか暗号化通信を行うことができない。しかしながら通信相手ごとに宛先ポートを変えることは基本的には不可能である(プロトコルごとに、httpなら80番、smtpなら25番と、デフォルトのポート番号が決まっているため)。そのため、従来の通信暗号化モジュールによって提供される暗号化通信方法では、単一のノードへの暗号化通信路を提供するのみであり、複数の暗号化通信路を用いた暗号化通信には利用することができなかった。
本発明の目的は、複数のノードに対して暗号化通信路を構築することで、複数のノードと直接暗号化通信を行うことを可能とする、通信暗号化モジュールを利用した暗号化通信方法を提供することである。
本発明に係る暗号化通信方法は、ネットワークに接続された他のノード装置と暗号化通信を行うアプリケーションが、自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスが宛先アドレスに設定されたデータパケットを送信するステップaと、独立したプロセスとして動作する通信暗号化モジュールが、前記アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、通信相手IPアドレスとループバックアドレスとの対応を複数保持する第1の暗号化通信路設定テーブルから、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレスを読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記データパケットを暗号化して送信するステップbとを備えることを特徴とする。
また、本発明に係る暗号化通信方法は、ネットワークに接続された他のノード装置と暗号化通信を行うクライアントノード上のアプリケーションが、宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを送信するステップaと、通信暗号化ノードに設けられ独立したプロセスとして動作する通信暗号化モジュールが、前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、通信相手IPアドレスと第1のインターセプト用アドレスとの対応を複数保持する第1の暗号化通信路設定テーブルから、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレスを読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信するステップbとを備えることを特徴とする。
また、本発明に係る暗号化通信方法は、ネットワークに接続された他のノード装置と暗号化通信を行うアプリケーションが、宛先アドレスに前記他のノード装置のIPアドレスが設定されたデータパケットを送信するステップaと、カーネル部のデータ送受信部に設けられたリダイレクト部が、前記アプリケーションから他のノード装置宛に送信された前記データパケットをインターセプトし、暗号化対象とするデータパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを保持するリダイレクトテーブルを参照し、前記リダイレクトテーブルに保持された判断基準に基づいて当該データパケットが暗号化対象となるデータパケットかどうかを判断し、暗号化対象となるデータパケットの場合には前記書き換えルールに従ってデータパケットの所定の情報を書き換えて前記データパケットを通信暗号化モジュールにリダイレクトするステップbと、前記通信暗号化モジュールが、前記データ送受信部よりリダイレクトされる前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を記憶する暗号化通信路設定テーブルを参照して、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報を書き換え前記他のノード装置の宛先IPアドレスを設定した前記データパケットを前記他のノード装置に暗号化して送信するステップcとを備えることを特徴とする。
また、本発明に係る暗号化通信方法は、ネットワークに接続された他のノード装置と暗号化通信を行うクライアントノード上のアプリケーションが、宛先アドレスに前記他のノード装置のIPアドレスに対応するインターセプト用アドレスが設定されたデータパケットを送信するステップaと、通信暗号化ノードにおけるカーネル部のデータ送受信部に設けられたリダイレクト部が、前記アプリケーションから送信された前記データパケットをインターセプトし、暗号化対象とするデータパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを保持するリダイレクトテーブルを参照し、前記リダイレクトテーブルに保持された判断基準に基づいて当該データパケットが暗号化対象となるデータパケットかどうかを判断し、暗号化対象となるデータパケットの場合には前記書き換えルールに従ってデータパケットの所定の情報を書き換えて前記データパケットを前記通信暗号化ノードに設けられた通信暗号化モジュールにリダイレクトするステップbと、前記通信暗号化モジュールが、前記データ送受信部よりリダイレクトされる前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を記憶する暗号化通信路設定テーブルを参照して、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報を書き換え前記他のノード装置の宛先IPアドレスを設定した前記データパケットを前記他のノード装置に暗号化して送信するステップcとを備えることを特徴とする。
また、本発明に係るノード装置は、ネットワークに接続された他のノード装置と通信を行うアプリケーションと、独立したプロセスとして動作する通信暗号化モジュールとを備え、前記通信暗号化モジュールは、通信相手IPアドレスと自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスとの対応を保持する第1の暗号化通信路設定テーブルと、前記アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレスを前記第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記データパケットを暗号化して送信する第1の通信暗号化部とを備えることを特徴とする。
また、本発明に係るノード装置は、ネットワークに接続された他のノード装置と通信を行うアプリケーションと、独立したプロセスとして動作する通信暗号化モジュールと、カーネル部に設けられたデータ送受信部とを備え、前記データ送受信部は、暗号化対象とするデータパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを保持するリダイレクトテーブルと、前記アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトし、前記リダイレクトテーブルに保持された判断基準に基づいて当データパケットが暗号化対象となるデータパケットかどうかを判断し、暗号化対象となるデータパケットの場合には前記書き換えルールに従ってデータパケットの所定の情報を書き換えて前記データパケットを前記通信暗号化モジュールにリダイレクトするリダイレクト部とを備え、前記通信暗号化モジュールは、前記データ送受信部よりリダイレクトされる前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を記憶する暗号化通信路設定テーブルと、前記暗号化通信路設定テーブルを参照して、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報を書き換え前記他のノード装置の宛先IPアドレスを設定した前記データパケットを前記他のノード装置に暗号化して送信する通信暗号化部とを備えることを特徴とする。
また、本発明に係るノード装置は、ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置であって、独立したプロセスとして動作する通信暗号化モジュールを備え、前記通信暗号化モジュールは、通信相手IPアドレスと第1のインターセプト用アドレスとの対応を保持する第1の暗号化通信路設定テーブルと、前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレスを前記第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信する第1の通信暗号化部とを備えることを特徴とする。
また、本発明に係る通信暗号化ノード装置は、ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置であって、独立したプロセスとして動作する通信暗号化モジュールと、カーネル部に設けられたデータ送受信部と、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、前記データ送受信部は、インターセプト用アドレスと自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスとの対応を保持するリダイレクトテーブルと、前記アプリケーションより送信された宛先アドレスにインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたインターセプト用アドレスに対応するループバックアドレスを前記リダイレクトテーブルから読み出し、前記データパケットの宛先アドレスを前記読み出したループバックアドレスに書き換えることにより前記データパケットを前記通信暗号化モジュールにリダイレクトするリダイレクト部とを備え、前記通信暗号化モジュールは、通信相手IPアドレスと、ループバックアドレスと、通信相手との通信に利用される暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルと、前記データ送受信部よりリダイレクトされた前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を前記暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信する通信暗号化部とを備え、前記名前解決プロキシ部は、暗号化通信対象ノードを特定する特定条件と暗号化通信路設定情報との対応を保持する設定テーブルと、前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置の情報が前記設定テーブルに保持された何れかの特定条件にマッチするかどうかを判定する通信方式解決部と、前記マッチした特定条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記暗号化通信路設定テーブルに登録すると共に、当該対応中の前記ループバックアドレスと他の通信セッションで使用されていないインターセプト用アドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部と、前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスに対応するインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする。
また、本発明に係る通信暗号化ノード装置は、ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置であって、独立したプロセスとして動作する通信暗号化モジュールと、カーネル部に設けられたデータ送受信部と、前記クライアントノードが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、前記データ送受信部は、インターセプト用アドレスと通信相手識別情報の書き換えルールとの対応を保持するリダイレクトテーブルと、前記クライアントノード装置から他のノード装置宛に送信されたデータパケットをインターセプトし、前記リダイレクトテーブルを参照して、前記データパケットの宛先アドレスとして指定されているインターセプト用アドレスに対応する通信相手識別情報の書き換えルールに従って前記データパケットの通信相手識別情報を書き換えた後、前記データパケットの宛先アドレスを自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスに書き換えて前記通信暗号化モジュールにリダイレクトするリダイレクト部とを備え、前記通信暗号化モジュールは、通信相手IPアドレスと、通信相手識別情報と、通信相手との通信に利用される暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルと、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報に対応する通信相手IPアドレス及び暗号化通信路設定情報を前記暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信する通信暗号化部とを備え、前記名前解決プロキシ部は、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードである場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないインターセプト用アドレスとの対応中の前記インターセプト用アドレスに置き換えた名前解決応答を前記クライアントノード装置に送信する名前解決クエリ・応答送受信部と、前記他のノード装置が暗号化通信対象ノードである場合に、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない通信相手識別情報との対応を前記暗号化通信路設定テーブルに登録するとともに、前記他の通信セッションで使用されていない通信相手識別情報への書き換えルールと他の通信セッションで使用されていないインターセプト用アドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部とを備えることを特徴とする。
また、本発明に係る名前解決サーバは、ドメイン名に対応するIPアドレスを解決する名前解決クエリに対して、前記名前解決クエリのクエリ元において前記名前解決クエリに対する応答結果を利用して行われる通信は暗号化を行うべき対象であるかどうかを前記ドメイン名に基づいて識別し、暗号化通信を行うべき対象であると判断された場合に、前記ドメイン名に対応するIPアドレスに加えて、前記暗号化通信を行うために必要な情報を含む名前解決応答を応答することを特徴とする。
また、本発明に係る暗号化通信システムは、ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するノード装置と、前記アプリケーションが前記他のノード装置のIPアドレスを解決するための名前解決サーバとを備え、前記ノード装置は、独立したプロセスとして動作する通信暗号化モジュールを備え、前記通信暗号化モジュールは、通信相手IPアドレスと自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスとの対応を保持する第1の暗号化通信路設定テーブルと、前記アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレスを前記第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記データパケットを暗号化して送信する第1の通信暗号化部とを備えることを特徴とする。
また、本発明に係る暗号化通信システムは、ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置と、前記クライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置と、前記アプリケーションが前記他のノード装置のIPアドレスを解決するための名前解決サーバとを備え、前記通信暗号化ノード装置は、独立したプロセスとして動作する通信暗号化モジュールと、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために前記名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、前記通信暗号化モジュールは、通信相手IPアドレスと第1のインターセプト用アドレスとの対応を保持する第1の暗号化通信路設定テーブルと、前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレスを前記第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信する第1の通信暗号化部とを備えることを特徴とする。
また、本発明に係る暗号化通信システムは、ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するノード装置と、前記アプリケーションが前記他のノード装置のIPアドレスを解決するための名前解決サーバとを備え、前記ノード装置は、独立したプロセスとして動作する通信暗号化モジュールと、カーネル部に設けられたデータ送受信部と、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、前記データ送受信部は、暗号化通信対象ノードのIPアドレスと通信相手識別情報の書き換えルールとの対応を保持するリダイレクトテーブルと、アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトし、前記データパケットの宛先IPアドレスとリダイレクトテーブルに登録されている暗号化通信対象ノードのIPアドレスとを比較して前記データパケットが暗号化対象か否かを判断し、前記データパケットが暗号化対象である場合には、リダイレクトテーブル上の対応する通信相手識別情報の書き換えルールに従って前記データパケットの通信相手識別情報を書き換えた後、前記データパケットの宛先アドレスを自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスに書き換えて前記通信暗号化モジュールにリダイレクトするリダイレクト部とを備え、前記通信暗号化モジュールは、通信相手IPアドレスと、通信相手識別情報と、通信相手との通信に利用される暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルと、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報に対応する通信相手IPアドレス及び暗号化通信路設定情報を前記暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信する通信暗号化部とを備え、前記名前解決サーバは、名前解決に関連する機能に加えて、暗号化通信対象ノードを特定する特定条件と暗号化通信路設定情報との対応を保持する設定テーブルと、前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置の情報が前記設定テーブルに保持された何れかの特定条件にマッチするかどうかを判定する通信方式解決部と、前記マッチした特定条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備え、前記名前解決プロキシ部は、前記暗号化通信路設定情報が付加された前記名前解決応答を前記名前解決サーバから受信したときに、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない通信相手識別情報との対応を前記暗号化通信路設定テーブルに登録するとともに、暗号化通信対象ノードのIPアドレスと前記他の通信セッションで使用されていない通信相手識別情報の書き換えルールとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部と、前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする。
また、本発明に係る暗号化通信システムは、ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置と、前記クライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置と、前記アプリケーションが前記他のノード装置のIPアドレスを解決するための名前解決サーバとを備え、前記通信暗号化ノード装置は、独立したプロセスとして動作する通信暗号化モジュールと、カーネル部に設けられたデータ送受信部と、前記クライアントノードが前記他のノード装置のIPアドレスを解決するために前記名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、前記データ送受信部は、インターセプト用アドレスと通信相手識別情報の書き換えルールとの対応を保持するリダイレクトテーブルと、前記クライアントノード装置から他のノード装置宛に送信されたデータパケットをインターセプトし、前記リダイレクトテーブルを参照して、前記データパケットの宛先アドレスとして指定されているインターセプト用アドレスに対応する通信相手識別情報の書き換えルールに従って前記データパケットの通信相手識別情報を書き換えた後、前記データパケットの宛先アドレスを自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスに書き換えて前記通信暗号化モジュールにリダイレクトするリダイレクト部とを備え、前記通信暗号化モジュールは、通信相手IPアドレスと、通信相手識別情報と、通信相手との通信に利用される暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルと、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報に対応する通信相手IPアドレス及び暗号化通信路設定情報を前記暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信する通信暗号化部とを備え、前記名前解決サーバは、名前解決に関連する機能に加えて、暗号化通信対象ノードを特定する特定条件と暗号化通信路設定情報との対応を保持する設定テーブルと、前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置の情報が前記設定テーブルに保持された何れかの特定条件にマッチするかどうかを判定する通信方式解決部と、前記マッチした特定条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備え、前記名前解決プロキシ部は、前記暗号化通信路設定情報が付加された前記名前解決応答を前記名前解決サーバから受信したときに、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない通信相手識別情報との対応を前記暗号化通信路設定テーブルに登録するとともに、前記他の通信セッションで使用されていない通信相手識別情報への書き換えルールと他の通信セッションで使用されていないインターセプト用アドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部と、前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前期インターセプト用アドレスに置き換えた名前解決応答を前記クライアントノード装置に送信する名前解決クエリ・応答送受信部とを備えることを特徴とする。
また、本発明に係るプログラムは、ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するノード装置を構成するコンピュータを、独立したプロセスとして動作する通信暗号化モジュールに設けられた通信暗号化手段、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ手段、として機能させるプログラムであり、前記通信暗号化手段は、前記アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレスを、通信相手IPアドレスとループバックアドレスとの対応を複数保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記データパケットを暗号化して送信するものであることを特徴とする。
また、本発明に係るプログラムは、ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置を構成するコンピュータを、独立したプロセスとして動作する通信暗号化モジュールに設けられた通信暗号化手段、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ手段、として機能させるプログラムであり、前記通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレスを、通信相手IPアドレスと第1のインターセプト用アドレスとの対応を複数保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信するものであることを特徴とする。
また、本発明に係るプログラムは、ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するノード装置を構成するコンピュータを、独立したプロセスとして動作する通信暗号化モジュールに設けられた通信暗号化手段、カーネル部のデータ送受信部に設けられたリダイレクト手段、として機能させるプログラムであり、前記リダイレクト手段は、前記アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトし、暗号化対象とするデータパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを保持するリダイレクトテーブルに保持された判断基準に基づいて当該データパケットが暗号化対象となるデータパケットかどうかを判断し、暗号化対象となるデータパケットの場合には前記書き換えルールに従ってデータパケットの所定の情報を書き換えて前記データパケットを前記通信暗号化モジュールにリダイレクトするものであり、前記通信暗号化手段は、前記データ送受信部よりリダイレクトされる前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を記憶する暗号化通信路設定テーブルを参照して、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報を書き換え前記他のノード装置の宛先IPアドレスを設定した前記データパケットを前記他のノード装置に暗号化して送信するものであることを特徴とする。
また、本発明に係るプログラムは、名前解決サーバを構成するコンピュータを、ドメイン名に対応するIPアドレスを解決する名前解決クエリ及び前記名前解決クエリに対する応答である名前解決応答を送受信する名前解決クエリ・応答送受信手段、前記名前解決クエリに対して、前記名前解決クエリのクエリ元において前記名前解決クエリに対する応答結果を利用して行われる通信は暗号化を行うべき対象であるかどうかを前記ドメイン名に基づいて識別する通信方式解決手段であって、前記名前解決クエリ・応答送受信手段が受信した名前解決クエリに対して、前記名前解決クエリ及び前記名前解決クエリに対する応答の何れかに含まれる情報に基づいて、前記名前解決クエリのクエリ元において前記名前解決クエリに対する応答結果を利用して行われる通信が暗号化通信を行うべき対象であるかどうかを識別し、暗号化通信を行うべき対象であると判断した場合は、前記名前解決クエリ・応答送受信手段を通じて、前記ドメイン名に対応するIPアドレスに加えて、前記暗号化通信を行うために必要な情報を含む名前解決応答を応答する通信方式解決手段、として機能させることを特徴とする。
第一の効果は、通信暗号化モジュールを利用した暗号化通信を行う場合においても、クライアントノードと複数の通信相手ノードとの間に直接暗号化通信路を構築し、通信相手ノードに応じて暗号化通信路を使い分けることできることにある。この結果、同時に複数の通信相手ノードと直接暗号化通信することが可能である。
その理由は、通信暗号化モジュールが、アプリケーションより送信された宛先アドレスにループバックアドレスまたはインターセプト用アドレスが設定されたデータパケットを受信し、通信相手IPアドレスとループバックアドレスまたはインターセプト用アドレスとの対応を複数保持する暗号化通信路設定テーブルから、前記データパケットの宛先アドレスに設定されたループバックアドレスまたはインターセプト用アドレスに対応する通信相手IPアドレスを読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記データパケットを暗号化して送信するからである。または、カーネル部のデータ送受信部に設けられたリダイレクト部が、アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトし、暗号化対象とするデータパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを保持するリダイレクトテーブルを参照し、前記リダイレクトテーブルに保持された判断基準に基づいて当該データパケットが暗号化対象となるデータパケットかどうかを判断し、暗号化対象となるデータパケットの場合には前記書き換えルールに従ってデータパケットの所定の情報を書き換えて前記データパケットを前記通信暗号化モジュールにリダイレクトし、前記通信暗号化モジュールが、前記データ送受信部よりリダイレクトされる前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を記憶する暗号化通信路設定テーブルを参照して、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報を書き換え前記他のノード装置の宛先IPアドレスを設定した前記データパケットを前記他のノード装置に暗号化して送信するからである。
第二の効果は、CUGをドメイン名およびドメイン名条件によって指定することが可能であり、クライアントノードが参加するCUGの規模(CUGに参加する暗号化通信対象ノードの数)やCUG構成の変更(つまり、新規ノードの参加、既参加ノードの脱退)頻度に依らず、CUGの設定コストが一定であることにある。
その理由は、アプリケーションが通信相手の名前解決を要求する際に送受信するDNSメッセージの内容によって、通信相手のノード種別を判断するためである。
第三の効果は、クライアントノードが暗号化通信対象ノードとの通信を行う際、通信暗号化を通信暗号化モジュール及びOSカーネル部のデータ送受信部の何れで行うかを予め決められた判断基準に基づいて柔軟に使いわけることができることである。
その理由は、クライアントノードが通信暗号化モジュールと通信暗号化機能を持つデータ送受信部とを含み、かつ通信暗号化にあたってこれらを予め決められた判断基準に基づいて使い分けるようにしているためである。
第四の効果は、CUGの設定をDNSサーバまたは通信暗号化ノードにおいて一元管理することが可能である点にある。この結果、CUGに参加する各ノードにおける設定が不要となる。
その理由は、通信相手が暗号化通信対象ノード(CUG参加ノード)である場合は、DNSサーバまたは通信暗号化ノードがクライアントノードからの通信相手の名前解決要求に対して、名前解決結果と共に通信相手が暗号化通信対象ノードである旨を回答するためである。
第五の効果は、通信暗号化モジュールを追加インストールすることができないクライアントノードであっても、外部の通信暗号化ノードをDNSサーバに設定することによって、複数通信相手ノードとの暗号化通信を可能となる点にある。
その理由は、通信暗号化ノードにおいて、クライアントノードからの名前解決要求を受け付け、名前解決要求の内容からクライアントノードの通信相手ノードが暗号化通信対象ノードであるか否かの判断を行い、通信相手ノードが暗号化通信対象ノードである場合には、クライアントが送信したデータパケットの暗号化処理を行うためである。
第六の効果は、アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトして通信暗号化モジュールにリダイレクトする構成にあっては、アプリケーションは、ループバックアドレス宛ではなく、通信相手のIPアドレス宛にデータパケットを送信することができるため、アプリケーションにおいて通信の記録をとる場合、通信相手のIPアドレスを記録することができるという効果がある。
図1は、本発明の第一の実施例の構成を示すブロック図である。 図2は、本発明の第一の実施例の暗号化通信路設定テーブルの例を示す図である。 図3は、本発明の第一の実施例のCUG設定テーブルの例を示す図である。 図4は、本発明の第一及び第四の実施例のDNS Proxy部の名前解決要求受け付け時の動作を示す流れ図である。 図5は、本発明の第二の実施例の前提例の構成を示すブロック図である。 図6は、本発明の第二の実施例の前提例におけるDNS Proxy部の名前解決要求受け付け時の動作を示す流れ図である。 図7は、本発明の第二の実施例の前提例における暗号化通信路設定テーブルの例を示す図である。 図8は、本発明の第二の実施例の構成を示すブロック図である。 図9は、本発明の第二の実施例のDNS Proxy部の名前解決要求受け付け時の動作を示す流れ図である。 図10は、本発明の第二の実施例のCUG設定テーブルの例を示す図である。 図11は、本発明の第三の実施例の構成を示すブロック図である。 図12は、本発明の第三の実施例のCUG設定データベースの例を示す図である。 図13は、本発明の第三の実施例の変形例におけるクライアントノードの構成を示すブロック図である。 図14は、本発明の第四の実施例の構成を示すブロック図である。 図15は、本発明の第四の実施例の暗号化通信路設定テーブルの例を示す図である。 図16は、本発明の第四の実施例の変形例におけるクライアントノードの構成を示すブロック図である。 図17は、本発明の第四の実施例の他の変形例におけるクライアントノードの構成を示すブロック図である。 図18は、本発明の第五の実施例の構成を示すブロック図である。 図19は、本発明の第五の実施例のリダイレクトテーブルの例を示す図である。 図20は、本発明の第五の実施例の暗号化通信路設定テーブルの例を示す図である。 図21は、本発明の第五の実施例のクライアントノードの動作を示す流れ図である。 図22は、本発明の第六の実施例の構成を示すブロック図である。 図23は、本発明の第六の実施例のDNS Proxy部の名前解決要求受け付け時の動作を示す流れ図である。 図24は、本発明の第六の実施例の変形例における通信暗号化ノードの構成を示すブロック図である。 図25は、通信暗号化モジュールを利用する従来の暗号通信システムの構成を示す図である。 図26は、OSのカーネル部の通信暗号化機能を利用する従来の暗号通信システムの構成を示す図である。
次に、本発明の第一の実施例について図面を参照して詳細に説明する。
図1を参照すると、本発明の第一の実施例は、クライアントノードA1aとDNS(Domain Name System)サーバB1aと暗号化通信対象ノードC1と通常通信対象ノードD1とによって実現される。クライアントノードA1aとDNSサーバB1aと暗号化通信対象ノードC1と通常通信対象ノードD1はネットワークE1を介して接続されている。ここで、暗号化通信対象ノードC1は、クライアントノードA1aとの間で暗号化通信を行うノード、通常通信対象ノードD1は、クライアントノードA1aとの間で暗号化されていない通常の通信を行うノードである。
クライアントノードA1aは、アプリケーションA11xと、DNS Proxy部A12aと、通信暗号化モジュールA13aと、データ送受信部A14xとを含む。データ送受信部A14xはデータパケットの送受信を行う部分で、カーネル部に設けられている。
アプリケーションA11xは、Webブラウザや電子メールソフトや、ビデオ会議ソフトなどコンピュータを使って、それぞれの目的を実現するためのソフトウェアであり、通信相手の名前をIPアドレスに解決するよう要求する機能を有する。
ここで、本明細書の範囲の記載において、「名前」とは、一つまたは複数の、IPアドレスまたはIPアドレス範囲が、直接的または間接的に対応付けられている全ての識別子を意味する(すなわち、「名前」を与えられると、直接的または間接的に、一つまたは複数の、IPアドレスまたはIPアドレス範囲を特定することができることを意味する。ここで、IPアドレスまたはIPアドレス範囲から「名前」を特定できる必要は必ずしも無い)語として用いる。例えば以下のような識別子が「名前」に該当する。
・A←→1.2.3.4 という対応関係を持つ識別子A(1.2.3.4はIPアドレスの例)
・B←→1.2.3.0/24 という対応関係を持つ識別子B(1.2.3.0/24はIPアドレス範囲の例)
・C←→1.2.3.4 C←→5.6.7.8 という対応関係を持つ識別子C
・D←→A という対応関係を持つ識別子D
現状インターネットで利用されている名前の代表例としては、ドメイン名(例えばsato.biglobe.ne.jpやsuzuki.nec.com等が挙げられる。ドメイン名はFQDN(Fully Qualified Domain Name)とも呼ばれる)が挙げられる。
また、名前から名前に対応付けられた一つまたは複数の、IPアドレスまたはIPアドレス範囲を特定することは、一般的に名前解決と呼ばれる。名前解決を行う仕組みとして代表的なものにDNSが挙げられる。DNSを利用することで、ドメイン名をIPアドレスに解決することが出来る。この他にもNIS(Network Information Service)や、WINS(Windows(登録商標) Internet Name Service)などが、名前解決を行う仕組みの例として挙げられる。本明細書においては、「名前解決」を上記の例に限定せず、「名前から名前に対応付けられた一つまたは複数の、IPアドレスまたはIPアドレス範囲を特定すること」全てを意味する語として用いる(例えば、文字列を入力するとその文字列に対応付けられたIPアドレスを表示するようなCGI(Common Gateway Interface)を有するWebサーバも名前解決を行う仕組みに該当する)。
以下の説明では、説明を簡単にするため、名前としてドメイン名を、名前解決を行う仕組みとしてDNSをそれぞれ例にとり説明するが、以下の説明は全ての名前および名前解決を行う仕組みに適用することが可能である。適用する際には、以下の説明においてドメイン名を名前に、DNSを名前解決にそれぞれ読み替える(例えばDNSサーバ→名前解決サーバ、DNSクエリメッセージ→名前解決クエリメッセージ、DNSレスポンスメッセージ→名前解決レスポンスメッセージ等)ものとする。
さて、本実施例においてアプリケーションA11xは、DNS Proxy部A12aに割り当てられたループバックアドレス(例えば127.0.0.1)宛にDNSクエリメッセージを送信することで通信相手のドメイン名→IPアドレスの解決を要求する。従って、アプリケーションA11xが送信したDNSクエリメッセージは、DNS Proxy部A12aが受信することになる。なお、ループバックアドレスとは、自ノード内で閉じた通信を行うために利用されるIPアドレスのことであり、一般的には127.0.0.0/8の範囲にあるIPアドレスが該当する。
アプリケーションA11xは、DNS Proxy部A12aより受信したDNSレスポンスメッセージの名前解決結果に含まれるIPアドレスを送信データパケットの宛先アドレスに指定して、データを送信する。
なお、一般的にアプリケーションからの名前解決要求を受けてDNSクエリメッセージを作成・送信する機能、及びDNSサーバより受信したDNSレスポンスメッセージから名前解決結果を取得してアプリケーションに渡す機能は、ノードの基本ソフトウェア(OS(Operating System)とも呼ぶ)のシステム関数として提供されることが多いが、本明細書では前記も含め、説明を簡単にするために「アプリケーションがDNSメッセージを送・受信する」と表現することにする。
DNS Proxy部A12aは、DNSクエリ・応答送受信部A121aと、通信方式解決部A122aと、暗号化通信路設定部A123aと、DNSサーバアドレス設定テーブルA124aと、CUG(Closed User Group)設定テーブルA125aとを含む。
DNS Proxy部A12aは、アプリケーションA11xによる名前解決要求を受けてアプリケーションA11xの通信相手のIPアドレスをDNSサーバB1aにより解決すると共に、通信相手のノード種別(通信相手のノード種別とは、通信相手が暗号化通信対象ノードであるか通常通信の対象ノード(以下、通常通信対象ノードと称す)であるかの種別を意味する)を判断し、通信相手が暗号化通信対象ノードである場合には、通信相手のIPアドレスをループバックアドレスにマッピングし、そのループバックアドレスと暗号化通信対象ノードのIPアドレスとを通信暗号化モジュールA13aに設けられる暗号化通信路設定テーブルA132aに登録し、アプリケーションA11xに対して、マッピングしたループバックアドレスを名前解決結果として回答する機能を有する。通信相手が通常通信対象ノードの場合は、このようなマッピングや登録は行わず、通信相手のIPアドレスを名前解決結果として回答する。
以下、DNS Proxy部A12aの構成について説明する。まずDNSクエリ・応答送受信部A121aについて説明する。
DNSクエリ・応答送受信部A121aは、アプリケーションA11xからDNSクエリメッセージを受信すると、DNSサーバアドレス設定テーブルA124aに登録されている外部DNSサーバB1aに対してDNSクエリメッセージを送信する。DNSクエリメッセージの応答として、外部DNSサーバB1aからDNSレスポンスメッセージを受信すると、DNSレスポンスメッセージに含まれる名前解決結果を通信方式解決部A122aに渡す。通信方式解決部A122aに渡す名前解決結果には、名前解決の対象となったドメイン名(つまりアプリケーションA11xの通信相手のドメイン名)や解決されたIPアドレス(つまり通信相手のIPアドレス)が含まれる。通信方式解決部A122aに名前解決結果を渡したDNSクエリ・応答送受信部A121aは、通信方式解決部A122aから判断結果を受け取り、その判断結果に応じて、アプリケーションA11xに対してDNSレスポンスメッセージを送信することになる。ここで、DNSクエリ・応答送受信部A121aのDNSレスポンスメッセージ送信処理は、アプリケーションA11xの通信相手のノード種別によって次の二つのパターンに分かれる。
・通信相手が通常通信対象ノードである場合
この場合、DNSクエリ・応答送受信部A121aには通信方式解決部A122aからアプリケーションA11xの通信相手が通常通信対象ノードであるとの判断結果が通知される。このとき、DNSクエリ・応答送受信部A121は、外部DNSサーバB1aによって解決された名前解決結果をそのままアプリケーションA11xに通知する。
・通信相手が暗号化通信対象ノードである場合
この場合、DNSクエリ・応答送受信部A121aには通信方式解決部A122aからループバックアドレスが通知される。このとき、DNSクエリ・応答送受信部A121aは、外部DNSサーバB1aによって解決されたアプリケーションA11xの通信相手のIPアドレスを通信方式解決部A122aから通知されたループバックアドレスに書き換え、アプリケーションA11xに通知する。
次に通信方式解決部A122aについて説明する。通信方式解決部A122aは、DNSクエリ・応答送受信部A121aから渡された名前解決結果を元にCUG設定テーブルA125aを参照し、アプリケーションA11xの通信相手のノード種別を判断する。さらに、アプリケーションA11xの通信相手が暗号化通信対象ノードである場合には、CUG設定テーブルA125aを参照して当該通信相手の通信に用いる暗号化通信路の設定情報を把握する。
ここで、通信方式解決部A122aはノード種別判断に用いる通信相手の識別子として、ドメイン名を利用することが可能である。ドメイン名を用いてアプリケーションA11xの通信相手のノード種別を判断する場合、通信方式解決部A122aは、通信相手のドメイン名の全てまたは一部がCUG設定テーブルA125aにおいて暗号化通信対象ノードのドメイン名として登録されているか否かをチェックする。例えば、通信相手のドメイン名がsato.biglobe.ne.jpである場合は、CUG設定テーブルA125aにおいてドメイン名 sato.biglobe.ne.jpまたは、sato.biglobe.ne.jpが該当するドメイン名条件(例えばsato.*(前方ラベルがsatoであるドメイン名を示す)のようなドメインプレフィックスや、*.biglobe.ne.jp(後方ラベルがbiglobe.ne.jpであるドメイン名を示す)のようなドメインサフィックス、*.biglobe.*(biglobeというラベルを含む任意のドメイン名を示す) のような任意のドメイン名条件などが挙げられる) が暗号化通信対象ノードのドメイン名として登録されているか否かをチェックする。
通信方式解決部A122aは、ドメイン名の他にIPアドレスを利用して通信相手のノード種別を判断することも出来る。この場合、通信方式解決部A122aは、通信相手のIPアドレスの全てまたは一部がCUG設定テーブルA125aにおいて暗号化通信対象ノードのIPアドレスとして登録されているか否かをチェックする。例えば、通信相手のIPアドレスが133.11.64.24である場合は、CUG設定テーブルA125においてIPアドレス133.11.64.24または、133.11.64.24が含まれるIPアドレス範囲(例えば133.11.64.0/24や133.11.0.0/16など)が暗号化通信対象ノードのIPアドレスとして登録されているか否かをチェックする。
通信方式解決部A122aは、上記のような方法で、アプリケーションA11xの通信相手のノード種別を判断した後、通常通信対象ノードであると判断した場合、その旨をDNSクエリ・応答送受信部A121aに通知する。逆に通信相手のノード種別が暗号化通信対象ノードである場合は、DNSクエリ・応答送受信部A121aから渡された名前解決結果及び通信相手との通信に用いる暗号化通信路設定情報を暗号化通信路設定部A123aに渡し、暗号化通信路設定部A123aからループバックアドレスを受け取る。受け取ったループバックアドレスは、DNSクエリ・応答送受信部A121aに渡す。
次に暗号化通信路設定部A123aについて説明する。暗号化通信路設定部A123aは、通信方式解決部A122aから名前解決結果及び暗号化通信路設定情報を渡されると、名前解決結果に含まれるアプリケーションA11xの通信相手のIPアドレスを、ループバックアドレスへマッピングし、そのループバックアドレスを通信方式解決部A122aに通知する機能を有する。マッピングするループバックアドレスは、暗号化通信路設定テーブルA132aを参照し、他の通信セッションで使用されていないものを選択する。また、選択したループバックアドレスと通信方式解決部A122aから渡された名前解決結果及び暗号化通信路設定情報との対応関係を暗号化通信路設定テーブルA132aに登録する機能を有する。
次にDNSサーバアドレス設定テーブルA124aについて説明する。DNSサーバアドレス設定テーブルA124aには、外部DNSサーバB1aのアドレスが登録される。DNSサーバアドレス設定テーブルA124aは、DNSクエリ・応答送受信部A121aがDNSクエリメッセージを送信する際に参照される。
次に、CUG設定テーブルA125aについて説明する。CUG設定テーブルA125aには、クライアントノードA1が参加するCUG(Closed User Group)に関する情報が登録されている。ここでCUGとは二つ以上の特定のノードから構成されるグループのことであり、グループ内の通信は暗号化され、グループ外の第三者からはのぞき見られないようになっている。すなわち、クライアントノードA1aが参加するCUGの他のノードは、クライアントノードA1aにとって暗号化通信対象ノードとなる。CUG設定テーブルA125aは、通信方式解決部A122aがアプリケーションA11xの通信相手のノード種別を判断する際に参照される。具体的に、CUG設定テーブルA125aには、クライアントノードA1aが参加しているCUGのノード(つまり暗号化通信対象ノード)の識別情報が登録される。CUG設定テーブルA125aに登録されるノードの識別情報は、例えばドメイン名条件(例えば、*.myfriends.comが登録されている場合は、*.myfriends.comに該当するドメイン名(例えばsato.myfriends.com)を持つ通信相手が暗号化通信対象ノードとなる)、あるいはIPアドレス範囲(例えば、10.1.0.0/16が登録されている場合は、10.1.0.0/16に含まれるIPアドレス(例えば10.1.2.1)を持つ通信相手が暗号化通信対象ノードとなる)などである。
その他、CUG設定テーブルA125aには必須の登録情報ではないが、CUGのノードと通信をする際に利用する暗号化通信路の設定情報を登録しておくこともできる。暗号化通信路の設定情報としては、具体的には例えば、通信プロトコル(例えばIPSecやSSL(Secure Socket Layer)、TLS(Transport Layer Security)等)と電子証明書ID(電子証明書とは自身の存在を証明するための電子的な証明書であり、例えば、ITU-T(International Telecommunication Union-Telecommunication Standardization Sector)勧告のX.509等が挙げられる。本説明において電子証明書のIDとは、アプリケーションA11xがセッションで利用すべき電子証明書を選択するために利用する識別子を意味する)、暗号化アルゴリズム(例えばDES(Data Encryption Standard)や3DES(triple-DES)、AES(Advanced Encryption Standard)等)などが使用される。
CUG設定テーブルA125aの例を図3に示す。図3に示すCUG設定テーブル201には、暗号化通信対象ノードの識別情報としてドメイン名条件が、暗号化通信路の設定情報として通信プロトコルと電子証明書ID、暗号化アルゴリズムがそれぞれ登録されている。例えば、図3に示すCUG設定テーブル201の4番目のエントリには、*.myfriends.comのドメイン名条件に該当するドメイン名を持つ通信相手ノード(例えば、yamada.myfriends.comやsato.myfriends.com)が暗号化通信対象ノードであり、それらのノードとは、通信プロトコル:SSL、電子証明書ID:11、暗号化アルゴリズム:DESを用いて暗号化通信を行うという設定がなされている。
DNS Proxy部A12aがCUG設定テーブルA125aとして図3で示したテーブル201を保持している場合、通信方式解決部A122aは通信相手のノード種別を通信相手のドメイン名を利用して判断する。例えば、通信相手のドメイン名が、taro.nec.co.jpである場合、当該ドメイン名は、テーブル201の2番目のエントリに登録されており、このため、通信方式解決部A122aは、通信相手が暗号化通信対象ノードであると判断する。通信相手のドメイン名が、yamada.myfriends.comである場合、当該ドメイン名自体はテーブル201に登録されていないが、ドメインサフィックス:myfriends.comがテーブル201の4番目のエントリに登録されているため、この場合も通信方式解決部A122aは通信相手が暗号化通信対象ノードであると判断する。通信相手のドメイン名がテーブル201に登録されているドメイン名のいずれにも合致しない場合、通信方式解決部A122aは通信相手が通常通信対象ノードであると判断する。
以上がDNS Proxy部A12aの構成である。
次に通信暗号化モジュールA13aの構成について説明する。通信暗号化モジュールA13aは、通信暗号化部A131aと暗号化通信路設定テーブルA132aとを含む。
まず通信暗号化部A131aについて説明する。通信暗号化部A131aは、アプリケーションA11xから受信したデータパケットの宛先ループバックアドレスを基に暗号化通信路設定テーブルA132aを参照して、アプリケーションA11xの通信相手を識別し、通信に用いる暗号化通信路を把握して通信を暗号化する機能を有する。また、外部の通信相手ノードから受信したデータパケットに対して復号化処理を施し、アプリケーションA11xに転送する機能を有する。通信暗号化部A131aは、暗号・復号化処理部A1311aとアドレス変換部A1312aとを含む。
暗号・復号化処理部A1311aは、アプリケーションA11xから受信したデータパケットの宛先ループバックアドレスを元に暗号化通信路設定テーブルA132aを参照し、このテーブルに登録されている暗号化通信路設定情報に従って、受信したデータパケットに暗号化処理を施す機能を有する。また、外部の通信相手ノードから受信したデータパケットの送信元アドレスを元に暗号化通信路設定テーブルA132aを参照し、このテーブルに登録されている暗号化通信路設定情報に従って、受信したデータパケットに復号化処理を施す機能を有する。
アドレス変換部A1312aは、アプリケーションA11xから受信したデータパケットの宛先ループバックアドレスを元に暗号化通信路設定テーブルA132aを参照し、宛先ループバックアドレスを暗号化通信路設定テーブルA132aにおいて対応付けられている通信相手のIPアドレスに変換する機能を有する。また、外部の通信相手ノードから受信したデータパケットの送信元アドレスを元に暗号化通信路設定テーブルA132aを参照し、送信元アドレスを暗号化通信路設定テーブルA132aにおいて対応付けられているループバックアドレスに変換する機能を有する。
次に暗号化通信路設定テーブルA132aについて説明する。暗号化通信路設定テーブルA132aには、暗号化通信路設定部A123aによって、ループバックアドレスとループバックアドレスに対応する通信相手のIPアドレス及び同通信相手との通信に使用すべき暗号化通信路設定情報が登録される。つまり、暗号化通信路設定テーブルA132aは、暗号化通信対象ノードとなる通信相手毎に、そのIPアドレス、割り当てられたループバックアドレス及び暗号化通信路設定情報が保持される。このテーブルA132aは、暗号化通信路設定部A123aがアプリケーションA11xの通信相手のIPアドレスを、ループバックアドレスへマッピングする際、及び通信暗号化部A131aが通信の暗号化処理を行う際に参照される。図2に暗号化通信路設定テーブルA132aの例を示す。暗号化通信路設定テーブルに登録される暗号化通信路設定情報の例としては、通信プロトコル、利用する電子証明書のID、暗号化アルゴリズムなどが挙げられる。
通信暗号化モジュールA13aが暗号化通信路設定テーブルA132aとして図2に示したテーブル101を保持しているケースを想定し、通信暗号化部A131aがアプリケーションA11xから宛先アドレス127.1.1.1のデータパケットを受信した場合の通信暗号化処理の例を説明する。アドレス変換部A1311aはデータパケットを受信すると、データパケットを暗号・復号化処理部A1311aに渡す。暗号・復号化処理部A1311aは、暗号化通信路設定テーブルA132aを参照して、宛先アドレス127.1.1.1に該当するエントリを把握する。この場合、テーブル101の2番目のエントリが該当し、その結果、通信に利用する暗号化通信路の設定情報として、通信プロトコル:SSL、電子証明書ID:10、暗号化アルゴリズム:3DESを取得する。暗号・復号化処理部A1311aは、アプリケーションA11xから受信したデータパケットを前記暗号化通信路の設定情報に従って、SSLプロトコルで定められた手順により3DESアルゴリズムで暗号化した後、アドレス変換部A1312aに渡す。アドレス変換部A1312aも同様に暗号化通信路設定テーブルA132aを参照して、宛先アドレス127.1.1.1に該当するエントリを引き、通信相手のIPアドレスを把握する。この場合、通信相手のIPアドレスとして133.11.64.24が把握され、アドレス変換部A1312aは宛先アドレスを127.1.1.1から133.11.64.24に変換した後、送信する。
また、IPアドレス133.11.64.24の外部ノードから3DESアルゴリズムで暗号化されたデータパケットをSSLプロトコルにより受信した場合、通信暗号化部A131aは、暗号化処理の場合と同様に暗号化通信路設定テーブルA132aを参照し、暗号・復号化処理部A1311aにおいて復号化を行った後、アドレス変換部A1312aが送信元IPアドレスを133.11.64.24から127.1.1.1に変換してアプリケーションA11xに送信する。
以上の例では、暗号・復号化処理を行った後にアドレス変換を行う動作例を説明したが、これとは逆にアドレス変換を行った後に暗号・復号化処理を行うことも可能である。また、アドレス変換と暗号・復号化処理を同時並行に行うことも可能である。
次にDNSサーバB1aについて説明する。DNSサーバB1aは、DNSクエリメッセージにより要求された名前解決を行い、解決結果をDNSレスポンスメッセージによって要求元に通知する。DNSサーバB1aは、DNS応答・クエリ送受信部B11aと名前解決部B12aとアドレス解決用データベースB13aとを含み、これらはそれぞれ以下の機能を有する。
DNS応答・クエリ送受信部B11aは、クライアントノードA1aからDNSクエリメッセージを受信し、同メッセージに含まれる名前解決要求を名前解決部B12aに渡す。また、名前解決部B12aから渡された名前解決結果をDNSレスポンスメッセージによってクライアントノードA1に通知する。
名前解決部B12aは、アドレス解決用データベースB13aを参照してDNS応答・クエリ送受信部B11aから渡された名前解決要求に対する解決処理を行い、名前解決結果をDNS応答・クエリ送受信部B11aに渡す。
アドレス解決用データベースB13aは、ドメイン名とそれに対応するIPアドレスが登録されている。
次に、本実施例において、アプリケーションA11xが暗号化通信対象ノードC1または通常通信対象ノードD1と通信を行う際のクライアントノードA1aの動作について詳細に説明する。
クライアントノードA1aの動作は、アプリケーションA11xが通信相手のドメイン名に対する名前解決要求を行った際の動作と、通信相手に対してデータパケットを送信した際の動作に、大きく分けられる。
まず、アプリケーションA11xが名前解決要求を行う際のクライアントノードA1aの動作について説明する。
アプリケーションA11xは、ループバックアドレス宛(例えば127.0.0.1)に、DNSクエリメッセージを送信し、通信相手の名前解決を要求する。アプリケーションA11xが送信したDNSクエリメッセージは、DNS Proxy部A12a(具体的にはDNS Proxy部A12a内部のDNSクエリ・応答送受信部A121a)が受信する。その後の処理はDNS Proxy部A12aで行われる。
図4を参照して、DNS Proxy部A12aがアプリケーションA11xからDNSクエリメッセージを受信した際の動作について説明する。
アプリケーションA11xからDNSクエリメッセージを受信すると(ステップS101)、DNSクエリ・応答送受信部A121aは、DNSサーバアドレス設定テーブルA124aに登録されている外部DNSサーバB1aに、受信したDNSクエリメッセージを転送し(ステップS102)、応答としてDNSサーバB1aからDNSレスポンスメッセージを受信する(ステップS103)。
DNSクエリ応答送受信部A121aは、受信したDNSレスポンスメッセージから名前解決結果を取り出し、通信方式解決部A122aに渡す。通信方式解決部A122aは、渡された名前解決結果を元に、CUG設定テーブルA125aを参照して、通信相手の種別(暗号化通信対象ノード、通常通信対象ノードのどちらであるか)を判断する(ステップS104)。また、通信相手が暗号化通信対象ノードである場合には、CUG設定テーブルA125aに登録されている暗号化通信路設定情報を把握する。
まず、通信相手が通常通信対象ノードである場合について説明する。この場合、通信方式解決部A122aからDNSクエリ・応答送受信部A121aに判断結果が通知され、DNSクエリ・応答送受信部A121aは、DNSサーバB1aから受信したDNSレスポンスメッセージをアプリケーションA11xに転送する(ステップS106)。
アプリケーションA11xは、DNSレスポンスメッセージを受信すると、受信したDNSレスポンスメッセージにより通知された通信相手のIPアドレスに対する通信を開始する。この場合、アプリケーションA11xが送信したデータパケットは、通信暗号化モジュールを経由せずに通信相手に直接送信され、通信相手とは通常の通信が行われることになる。
次に、通信相手が暗号化通信対象ノードである場合について説明する。この場合、通信方式解決部A122aは、DNSクエリ・応答送受信部A121aから渡された名前解決結果と、CUG設定テーブルA125aから取得した暗号化通信路設定情報とを暗号化通信路設定部A123aに渡す。暗号化通信路設定部A123aは、名前解決結果を受け取ると、暗号化通信路設定テーブルA132aを参照し、アプリケーションA11xの通信相手のIPアドレスを、他の通信セッションで使用されていないループバックアドレスへマッピングし、マッピングしたループバックアドレスを通信方式解決部A122aに通知する。また、暗号化通信路設定部A123aは、マッピングしたループバックアドレスと、通信方式解決部A122aから渡された名前解決結果に含まれる通信相手のIPアドレス及び暗号化通信路設定情報の対応関係を暗号化通信路設定テーブルA132aに登録する(ステップS105)。
通信方式解決部A122aは、暗号化通信路設定部A123aから渡されたループバックアドレスをDNSクエリ・応答送受信部A121aに通知する。DNSクエリ・応答送受信部A121aは、通信方式解決部A122aからループバックアドレスを通知されると、外部DNSサーバB1aから渡された名前解決結果に含まれる通信相手のアドレスをそのループバックアドレスに書き換え、DNSレスポンスメッセージを作成し、アプリケーションA11xに送信する。つまり、アプリケーションA11xには、通信相手のドメイン名に対する名前解決結果として、暗号化通信路設定部A123aが選択したループバックアドレスが通知されることになる(ステップS106)。
アプリケーションA11xは、DNSレスポンスメッセージを受信すると、名前解決結果に含まれるループバックアドレスを通信相手の真のアドレスと認識して、そのループバックアドレス宛にデータパケットを送信する。この結果、アプリケーションA11xが送信したデータパケットは通信暗号化モジュールA13aによってインターセプトされ、通信暗号化のための処理が行われることになる。
以上が、アプリケーションA11xが名前解決要求を行った際のクライアントノードA1の動作である。
次にアプリケーションA11xが通信相手に対してデータパケットを送信した場合の動作について説明する。
アプリケーションA11xは、DNS Proxy部A12aからDNSレスポンスメッセージを受信すると、DNSレスポンスメッセージで通知された名前解決結果に含まれるアドレス宛にデータパケットを送信する。
まず通信相手が通常通信対象ノードである場合の動作について述べる。この場合、アプリケーションA11xには名前解決結果として通信相手のIPアドレスが通知され、アプリケーションA11xはそのIPアドレス宛にデータパケットを送信する。このため、データパケットは通信暗号化モジュールA13aを経由せず通信相手に直接送信されることになる。
次に、通信相手が暗号化通信対象ノードである場合の動作について述べる。この場合、アプリケーションA11xには名前解決結果としてループバックアドレスが通知される。アプリケーションA11xは通知されたループバックアドレス宛にデータパケットを送信する。この結果、ループバックアドレス宛に送信されたデータパケットは通信暗号化モジュールA13aによって受信される。通信暗号化モジュールA13aの内部では、データパケットは通信暗号化部A131aによって処理される。
通信暗号化部A131aは、アプリケーションA11xからデータパケットを受信すると、データパケットの宛先ループバックアドレスを基に、暗号化通信路設定テーブルA132aを参照し、アプリケーションA11xの通信相手との通信に使用すべき暗号化通信路の設定情報及び通信相手のIPアドレスを取得する。そして、通信暗号化部A131aは、取得した暗号化通信路の設定情報を利用して、暗号・復号化処理部A1311aにおいてアプリケーションA11xから受信したデータパケットに対して暗号化処理を行い、アドレス変換部A1312aにおいてデータパケットの宛て先ループバックアドレスを通信相手のIPアドレスに書き換えて、通信相手に対して暗号化通信路経由で送信する。
なお、以上の説明では、DNS Proxy部A12aが外部DNSサーバB1aから通信相手の名前解決結果を受け取った後に通信相手のノード種別を判断する方法を説明したが、本実施例では他の方法として、DNS Proxy部A12aが外部DNSサーバB1aに通信相手の名前解決を要求する前に通信相手のノード種別を判断する方法を採ることも可能である。但し、この場合は通信相手のIPアドレスに基づいてノード種別を判断することは不可能であるため、ドメイン等に基づいてノード種別を判断することになる。この場合、例えば通信相手のノード種別に応じて、名前解決を要求する(すなわちDNSクエリメッセージを送信する)DNSサーバを変えるといった制御を行うことが可能になるため、暗号化通信を行うグループ専用のDNSサーバを構築できるといった利点がある。
次に本実施例の効果について説明する。
本実施例では、DNS Proxy部A12aが、クライアントノードA1の内部においてアプリケーションA11xが通信相手の名前解決を要求する際にDNSサーバB1aと送受信するDNSメッセージをインターセプトし、DNSメッセージに含まれる情報から通信相手の種別を判断し、通信相手が暗号化通信対象ノードである場合には、DNSレスポンスメッセージを通信相手のIPアドレスをループバックアドレスに書き換えて、アプリケーションA11xに応答する。さらに、DNSレスポンスメッセージにより通知するループバックアドレスは、アプリケーションA11xの通信相手によって変える。このため、アプリケーションA11xからデータパケットを受信した通信暗号化モジュールA13aは、宛先ループバックアドレスによりアプリケーションA11xの通信相手を識別し、その通信相手との通信に利用すべき暗号化通信路を識別することができる。したがってクライアントノードA1は、複数の通信相手と同時に直接暗号化通信を行うことができる。
また、本実施例では前述のとおり、DNSメッセージをインターセプトして通信相手の種別を判断するため、通信相手の種別をドメイン名により判断することが可能であり、暗号化通信対象ノードの識別情報をドメイン名によって指定することが可能である。識別情報をドメイン名により指定することで、IPアドレスで指定する場合と異なり、通信相手のIPアドレスが動的に変化する(例えばDHCPでIPアドレスが払い出される場合)状況下でも設定を変更する必要がない。さらに、暗号化通信対象ノードをドメイン名条件(例えばsato.*(前方ラベルがsatoであるFQDNを示す)のようなドメインプレフィックスや、*.biglobe.ne.jp(後方ラベルがbiglobe.ne.jpであるFQDNを示す)のようなドメインサフィックス、*.biglobe.*(biglobeというラベルを含む任意のFQDNを示す) のような条件など) によって指定することも可能であるため、複数のノードから成るグループにおいて設定が共通する暗号化通信路を用いた通信を行う場合には、グループを構成するノードのドメイン名条件を共通化しておくことで (例えば、グループ内ノードのドメインサフィックスを*.myfriends.comとする等) 、グループ単位で設定を行うことができ、設定コストを軽減できる。単にグループ単位で設定を行うだけであれば、例えば10.2.1.0/24などのようなIPアドレススコープを利用することも可能だが、グループを構成するノードのIPアドレスが同一のIPアドレススコープに属していなければ、IPアドレススコープをグループの識別情報として利用することは出来ず、任意のノードから自由にグループを構成するということはできない。これに対して、ドメイン名はIPアドレスに依存せずに自由につけることが可能であり、グループを自由に構成することが出来る。
通信相手の種別(暗号化通信対象かどうかの種別)をドメイン名により判断すれば上述したような効果が得られるが、本発明は、ドメイン名で判断する場合に限定されず、IPアドレスにより判断するようにしてもよい。ドメイン名だけでなく、IPアドレスによって通信相手の種別を判断してもよい点は、第一の実施例だけでなく、以下に説明するすべての実施例においても同じである。
次に本発明の第二の実施例について説明するが、その前に第二の実施例の前提例について図面を参照して詳細に説明する。
図5を参照すると、本発明の第二の実施例の前提例は、本発明の第一の実施例と比較して、本発明の第一の実施例における通信暗号化モジュールA13aの機能が、独立したプロセスにより提供されるのではなく、OSのカーネル部におけるデータ送受信部A14bの機能として提供される点が主に異なる。すなわち、本前提例において、データ送受信部A14bは、通信暗号化部A141bと暗号化通信路設定テーブルA142bとを含む。また、DNS Proxy部A12b内の暗号化通信路設定部A123bは、データ送受信部A14b内の暗号化通信路設定テーブルA142bに対して暗号化通信路の設定を行う。以下、本前提例について、本発明の第一の実施例と異なる点(すなわち、暗号化通信路設定部A123b及びデータ送受信部A14b)を中心に説明する。
まず、暗号化通信路設定部A123bについて説明する。暗号化通信路設定部A123bは、データ送受信部A14bに含まれる暗号化通信路設定テーブルA142bに、暗号化通信対象ノードのIPアドレスと当該暗号化通信対象ノードとの通信に利用する暗号化通信路設定情報とを登録する機能を有する。具体的には、暗号化通信路設定部A123bは、通信方式解決部A122aから渡されたアプリケーションA11xの通信相手の名前解決結果に含まれる通信相手のIPアドレス及び、該通信相手との通信に用いる暗号化通信路設定情報を、暗号化通信路設定テーブルA142bに登録する。
本前提例においては、暗号化通信路設定部A123bは、本発明の第一の実施例と異なり、暗号化通信対象ノードである通信相手のIPアドレスのループバックアドレスへの変換は行わない。その理由は次のとおりである。本発明の第一の実施例においては、通信暗号化モジュールA13a(通信暗号化部A131a)が独立したプロセスであるため、通信暗号化モジュールA13aがアプリケーションA11xの送信したデータパケットをインターセプトできるよう、暗号化通信路設定部A123aが通信相手のIPアドレスをループバックアドレスにマッピングしていた。これに対して、本前提例では、通信暗号化部A141bはデータ送受信部A14bに含まれるため、アプリケーションA11xが送信する全てのデータパケットをインターセプトすることができる。このため、アプリケーションA11xが送信するデータパケットのインターセプトを目的とした、通信相手のIPアドレスのループバックアドレスへのマッピングが不要である。
次にデータ送受信部A14bについて説明する。データ送受信部A14bは、通信暗号化部A141bと暗号化通信路設定テーブルA142bとを含む。アプリケーションA11xが外部のノードに対して送信する全てのデータパケットは、データ送受信部A14bによりインターセプトされ、送信処理が行われる。
暗号化通信路設定テーブルA142bには、暗号化通信対象ノードのIPアドレスと当該暗号化通信対象ノードとの通信に利用する暗号化通信路設定情報とが登録されている。登録は、暗号化通信路設定部A123bにより動的に行われる。暗号化通信路設定テーブルA142bの例を図7のテーブル301に示す。本例では、通信相手のIPアドレスと暗号化通信路設定情報として通信プロトコル、電子証明書ID、暗号化アルゴリズムが登録されている。
通信暗号化部A141bは、本発明の第一の実施例における通信暗号化部A131aと異なり、受信データパケットのアドレス変換を行う機能は持たず、暗号・復号化処理を行う機能のみを有する。その理由は、本発明の第一の実施例においては、通信暗号化部A131aはインターセプトしたデータパケットの宛先アドレスはループバックアドレスに変換されていたため、アプリケーションA11xの通信相手のIPアドレスに変換し直す必要があったが、本前提例においては、通信暗号化部A141bはアプリケーションA11xの送信したデータパケットを宛先アドレスに依らずインターセプトすることができるためである。
通信暗号化部A141bは、暗号・復号化処理部A1411bを含む。暗号・復号化処理部A1411bは、本発明の第一の実施例における暗号化・復号化処理部A1311aと同様の機能を有する。すなわち、インターセプトしたデータパケットの宛先アドレスを元に暗号化通信路設定テーブルA142bを参照して、データパケットの送信に利用すべき暗号化通信路の設定情報を把握し、これに従ってデータパケットを暗号化する。
以下、通信暗号化部A141bの動作例について説明する。例として、データ送受信部A14bが暗号化通信路設定テーブルA142bとして図7に例示したテーブル301を保持していると仮定し、データ送受信部A14bが宛先アドレス133.11.64.24のデータパケットをインターセプトしたケースについて説明する。
データ送受信部A14bがデータパケットをインターセプトすると、通信暗号化部A141bは、暗号化通信路設定テーブルA142bを参照する。図7の場合、暗号化通信路設定テーブルA142bの2番目のエントリがインターセプトしたデータパケットに該当する。通信暗号化部A141bは、2番目のエントリに登録されている設定情報(通信プロトコル:IPSec、電子証明書ID:10、暗号化アルゴリズム:3DES)に従ってデータパケットを暗号化した後、送信する。
以上がデータ送受信部A14bの構成である。
次に、本前提例において、アプリケーションA11xが暗号化通信対象ノードC1または通常通信対象ノードD1と通信を行う際のクライアントノードA1bの動作について詳細に説明する。
クライアントノードA1bの動作は、アプリケーションA11xが通信相手のドメイン名に対する名前解決要求を行った際の動作と、通信相手に対してデータパケットを送信した際の動作に、大きく分けられる。
まず、アプリケーションA11xが名前解決要求を行う際のクライアントノードA1bの動作について説明する。
アプリケーションA11xは、本発明の第一の実施例と同様に、ループバックアドレス宛(例えば127.0.0.1)にDNSクエリメッセージを送信し、通信相手の名前解決を要求する。アプリケーションA11xが送信したDNSクエリメッセージは、DNS Proxy部A12b(具体的にはDNS Proxy部A12b内部のDNSクエリ・応答送受信部A121a)が受信する。その後の処理はDNS Proxy部A12bで行われる。
図6を参照して、DNS Proxy部A12bがアプリケーションA11xからDNSクエリメッセージを受信した際の動作について説明する。
アプリケーションA11xからDNSクエリメッセージを受信してから、外部DNSサーバからDNSレスポンスメッセージを受信し、通信相手のノード種別を判断するまでのDNS Proxy部A12bの動作(図6のステップS201〜S204)は、本発明の第一の実施例におけるDNS Proxy部A12aの動作と同様である。また、通信相手のノード種別が通常通信対象ノードである場合の動作も本発明の第一の実施例における動作と同様である。
通信相手のノード種別が暗号化通信対象ノードである場合の暗号化通信路設定部A123bの動作(図6のステップS205)のみが本発明の第一の実施例と異なる。すなわち、暗号化通信路設定部A123bは、通信方式解決部A122aから名前解決結果および暗号化通信路の設定情報を受け取ると、これらの情報を暗号化通信路設定テーブルA142bに登録する(ステップS205)。登録後、DNSクエリ・応答送受信部A121aは、DNSサーバB1bから受け取った名前解決結果を含むDNSレスポンスメッセージをアプリケーションA11xに送信する(ステップS206)。
次にアプリケーションA11xが通信相手に対してデータパケットを送信した場合の動作について説明する。
本前提例においては、本発明の第一の実施例と異なり、DNS Proxy部A12bは、DNSサーバB1bが解決した通信相手のIPアドレスを通信相手のノード種別に依らず、そのままアプリケーションへと通知する。アプリケーションA11xは、DNS Proxy部A12bからDNSレスポンスメッセージを受信すると、通知されたIPアドレス(すなわち通信相手のIPアドレス)宛にデータパケットを送信する。ここで、送信されたデータパケットは、すべてデータ送受信部A14bによってインターセプトされる。
データ送受信部A14bがデータパケットをインターセプトすると、通信暗号化部A141bは、受信したデータパケットの宛先IPアドレスを元に暗号化通信路設定テーブルA142bを参照し、宛先IPアドレスが暗号化通信路対象ノードのIPアドレスとして登録されているか否かをチェックする。そして、暗号化通信路対象ノードの場合は、データパケットに暗号化処理を施した後、送信し、通常通信対象ノードの場合は、データパケットをそのまま送信する。
以上の説明では、DNS Proxy部A12bが外部DNSサーバB1aから通信相手の名前解決結果を受け取った後に通信相手のノード種別を判断する旨説明したが、本発明の第一の実施例と同様、本前提例においても同様に他の方法として、DNS Proxy部A12bが外部DNSサーバB1aに通信相手の名前解決を要求する前に通信相手のノード種別を判断する方法を採ることも可能である。
さて、本発明の第二の実施例について図面を参照して詳細に説明する。
図8を参照すると、本発明の第二の実施例は、クライアントノードA1cが、本発明の第一の実施例で説明した通信暗号化モジュールA13a及び前述した前提例で説明したデータ送受信部A14b(すなわち、データ送受信部A14bは通信暗号化部A141bと暗号化通信路設定部A142bとを含む)の両方を含む点が本発明の第一の実施例と異なる。すなわち、本実施例では、クライアントノードA1cが通信暗号化モジュールA13aにおける通信暗号化機能とデータ送受信部A14bにおける通信暗号化機能の両方を有する。
クライアントノードA1cを構成する各モジュールは、DNS Proxy部A12cの通信方式解決部A122c及び暗号化通信路設定部A123cを除き、本発明の第一の実施例及び前記前提例における当該各モジュールと同様の機能を有する。
まず、通信方式解決部A122cについて説明する。通信方式解決部A122cは、本発明の第一の実施例及び前記前提例における該当部が持つ機能に加え、アプリケーションA11xの通信相手が暗号化通信対象ノードである場合には、予め指定された判断基準に従って、通信相手と行う通信の暗号化を、通信暗号化モジュールA13a及びデータ送受信部A14bのどちら(または両方)で行うのかを判断し、判断結果を暗号化通信路設定部A123cに通知する機能を有する。
具体的な判断基準としては、例えばCUG(すなわち暗号化通信対象ノード(のグループ))毎に定めることができる。例えば、*.myfriends.comのドメイン名を持つ通信相手と暗号化通信を行う際は、データ送受信部A14bにより通信暗号化を行い、*.mycompany.comのドメイン名を持つ通信相手と暗号化通信を行う際は、通信暗号化モジュールA13aにより通信暗号化を行うなどと定め、CUG設定テーブルA125aに登録しておく。また、通信相手との通信に用いる暗号化通信路の設定情報を元に定めるようにしてもよい。例えば通信プロトコルがIPSecである暗号化通信路を利用する場合は、データ送受信部A14bにより通信暗号化を行い、通信プロトコルがSSLである暗号化通信路を利用する場合は、通信暗号化モジュールA13aにより通信暗号化を行うなどと定め、通信方式解決部A122cに設定しておく。
次に、暗号化通信路設定部A123cについて説明する。暗号化通信路設定部A123cは、通信方式解決部A122cから通知された判断結果に基づいて、暗号化通信路設定テーブルA132a及び暗号化通信路設定テーブルA142bのいずれか(または両方)に暗号化通信路設定情報の登録を行う機能を有する。
以下、本実施例における通信方式解決部A122c及び暗号化通信路設定部A123cの動作を図9を参照して詳細に説明する。
通信方式解決部A122cは、DNSクエリ・応答送受信部A121aから通信相手の名前解決結果を受取ると、CUG設定テーブルA125aを参照して、通信相手が暗号化通信対象ノードであるか否かを判断し(ステップS301)、暗号化通信対象ノードである場合は、この通信相手との通信に利用する暗号化通信路設定情報を把握すると共に、予め決められた判断基準に従って通信相手との通信の暗号化をどこで行うかを判断する(ステップS302)。その後、通信相手の名前解決結果と、通信相手との通信に用いる暗号化通信路設定情報と、通信相手との通信をどこで暗号化するかについての判断結果とを暗号化通信路設定部A123cに渡す。
暗号化通信路設定部A123cは、上記の情報を通信方式解決部A122cから渡されると、前記判断結果に基づいて暗号化通信路設定情報の登録処理を行う。処理内容は前記判断結果により以下の3つに分かれる。
(1)通信暗号化モジュールA13aにおいて通信暗号化を行うと判断した場合
この場合、本発明の第一の実施例における暗号化通信路設定部A123cと同様に、暗号化通信路設定テーブルA132aを参照して、通信相手のIPアドレスを他の通信セッションで使用されていないループバックアドレスにマッピングし、ループバックアドレスと名前解決結果に含まれる通信相手のIPアドレス及び通信相手との通信に利用する暗号化通信路の設定情報を暗号化通信路設定テーブルA132aに登録する(ステップS303)。また、前記ループバックアドレスを通信方式解決部A122cに渡す。
(2)データ送受信部A14bにおいて通信暗号化を行うと判断した場合
この場合、本発明の第二の実施例の前提例における暗号化通信路設定部A123cと同様に、通信方式解決部A122cから渡されたアプリケーションA11xの通信相手の名前解決結果に含まれる通信相手のIPアドレス及び、通信相手との通信に用いる暗号化通信路設定情報を、暗号化通信路設定テーブルA142bに登録する(ステップS304)。
(3)通信暗号化モジュールA13a及びデータ送受信部A14bの両方において通信暗号化を行うと判断した場合
この場合、上記(1)及び(2)の動作を行う(ステップS305)。
通信方式解決部A122cは、暗号化通信路設定部A123cからループバックアドレスを渡された場合(すなわち上記(1)及び(3)の場合)、前記ループバックアドレスをDNSクエリ・応答送受信部A121に渡す。この場合、アプリケーションA11xには結果的に前記ループバックアドレスが通信相手の名前解決結果として通知され(ステップS306)、アプリケーションA11xが送信したデータパケットは、通信暗号化モジュールA13aによりインターセプトされて暗号化処理が施されることになる。さらに、上記(3)の場合には、通信暗号化モジュールA13aにより暗号化処理が施された後、データ送受信部A14bにおいても暗号化処理が施されることになる。上記(2)の場合には、アプリケーションA11xの通信相手のIPアドレスをDNSクエリ・応答送受信部A121aに渡す。この場合、アプリケーションA11xには結果的に通信相手のIPアドレスが通信相手の名前解決結果として通知され(ステップS306)、アプリケーションA11xが送信したデータパケットは、データ送受信部A14bにおいて暗号化処理が施されることになる。
上記動作の具体例を以下に述べる。なお、ここでは、DNS Proxy部A12cがCUG設定テーブルA125aとして図10に例示したテーブル401を保持しているものとし、さらに予め決められた判断基準については「通信プロトコルがIPSecである暗号化通信路を利用する場合は、データ送受信部A14bにより通信暗号化を行い、通信プロトコルがSSLである暗号化通信路を利用する場合は、通信暗号化モジュールA13aにより通信暗号化を行う」と定められているものとする。また、アプリケーションA11xの通信相手のドメイン名がtom.myfamily.comである場合について説明する。
通信方式解決部A122cは、DNSクエリ・応答送受信部A121aから名前解決結果を渡されると、CUG設定テーブルA125aを参照して、アプリケーションA11xの通信相手のノード種別を判断する。この場合、テーブル401の5番目のエントリが該当し、通信相手が暗号化通信対象ノードであると判断され、通信相手との通信に用いる暗号化通信路の設定情報としてプロトコル:IPSec、電子証明書ID:12、暗号化アルゴリズム:3DESが取得される。また、この場合、通信相手との暗号化通信路にはIPSecが利用されるため、通信方式解決部A122cは、予め決められた判断基準に従って通信相手との通信をデータ送受信部A14bにおいて暗号化すべきと判断する。通信方式解決部A122cは、DNSクエリ・応答送受信部A121aから渡された名前解決結果に加えて、上記の「通信相手のノード種別:暗号化通信対象ノード、通信相手との通信に用いる暗号化通信路の設定情報:プロトコル:IPSec、電子証明書ID:12、暗号化アルゴリズム:3DES、通信相手との通信を暗号化すべきモジュール:データ送受信部A14b」の情報を暗号化通信路設定部A123に渡す。暗号化通信部A123cは、上記の情報を受取ると、名前解決結果に含まれるアプリケーションA11xの通信相手のIPアドレスと、通信相手との通信に用いる暗号化通信路の設定情報を暗号化通信路設定テーブルA142bに登録する。通信方式解決部A122cは、アプリケーションA11xの通信相手のノード種別をDNSクエリ・応答送受信部A121aに渡す。結果として、アプリケーションA11xには通信相手のIPアドレスが通信相手の名前解決結果として通知され、アプリケーションA11xが送信したデータパケットは、データ送受信部A14bにおいて暗号化処理が施されることになる。
以上の説明では、DNS Proxy部A12cが外部DNSサーバB1aから通信相手の名前解決結果を受け取った後に通信相手のノード種別を判断する旨説明したが、本発明の第一の実施例と同様、本実施例においても同様に他の方法として、DNS Proxy部A12cが外部DNSサーバB1aに通信相手の名前解決を要求する前に通信相手のノード種別を判断する方法を採ることも可能である。
次に本実施例の効果について説明する。本実施例では、通信暗号化モジュールA13aの提供する通信暗号化機能とデータ送受信部A14bの提供する通信暗号化機能を、予め決められた判断基準に応じて柔軟に使い分けることが出来る。例えば、通信相手のサポートする通信プロトコルに応じて通信暗号化するモジュールを使い分けることで、通信相手がサポートしている通信プロトコルが限定されている場合(例えばIPSecのみサポート)でも、通信相手との暗号化通信を実現することが可能となる。
次に本発明の第三の実施例について図面を参照して詳細に説明する。
図11を参照すると、本発明の第三の実施例は、本発明の第一の実施例と比較して、DNS Proxy部A12d内に通信方式解決部およびCUG設定テーブルが含まれず、これらのモジュールがDNSサーバB1dに含まれる点が異なる。本実施例においては、アプリケーションA11xの通信相手のノード種別及び通信相手が暗号化通信対象ノードである場合に用いる暗号化通信路の設定情報が、クライアントノードA1d内部ではなく、外部のDNSサーバB1dによって解決される。
以下、本実施例について本発明の第一の実施例と異なる部分(すなわちDNS Proxy部A12dおよびDNSサーバB1d)を中心に説明する。
まずDNS Proxy部A12dについて説明する。本実施例においてDNS Proxy部A12dは、アプリケーションA11xの通信相手の名前解決および通信相手のノード種別(及び通信相手が暗号化通信対象端末の場合は通信相手との通信に用いる暗号化通信路設定情報)解決をDNSサーバB1dに対して要求し、通信相手が暗号化通信対象端末である場合にはDNSサーバB1dが解決した暗号化通信路の設定情報を暗号化通信路設定テーブルA132aに登録する機能を有する。
DNSクエリ・応答送受信部A121dは、外部DNSサーバB1dに対してアプリケーションA11xの通信相手の名前解決を要求する機能に加えて、外部DNSサーバB1dに対してアプリケーションA11xの通信相手のノード種別及び通信相手が暗号化通信対象ノードである場合に通信相手との通信に用いる暗号化通信路の設定情報の解決を要求する機能を持つ。DNSクエリ・応答送受信部A121dは、アプリケーションA11xからDNSクエリメッセージを受信すると、同メッセージをDNSサーバB1dに転送し、応答として受信するDNSレスポンスメッセージの受信処理を行う。DNSサーバB1dから受信するDNSレスポンスメッセージには、アプリケーションA11xの通信相手の名前解決結果に加え、通信相手のノード種別情報が含まれ、更に通信相手が暗号化通信対象ノードである場合には、通信相手との通信に用いる暗号化通信路の設定情報が含まれる。
DNSレスポンスメッセージによって、通信相手が通常通信対象ノードであると通知された場合、DNSクエリ・応答送受信部A121dは、受信メッセージに含まれる通信相手の名前解決結果をアプリケーションA11xにDNSレスポンスメッセージによって通知する。逆に、通信相手が暗号化通信対象ノードであると通知された場合、DNSクエリ・応答送受信部A121dは、暗号化通信路設定部A123dに対して通信相手の名前解決結果及び通信相手との通信に利用すべき暗号化通信路の設定情報を渡す。その後、暗号化通信路設定部A123dからループバックアドレスを受け取り、通信相手のIPアドレスを、通知されたループバックアドレスに書き換えた名前解決結果をDNSレスポンスメッセージよってアプリケーションA11xに通知する。
暗号化通信路設定部A123dは、本発明の第一の実施例における暗号化通信部A123dと同様の機能を有する。
DNSサーバアドレス設定テーブルA124aには、外部DNSサーバB1dのアドレスが登録されている。
以上がDNS Proxy部A12dの構成である。
次に、DNSサーバB1dについて説明する。DNSサーバB1dは、通常のDNSサーバが持つ名前解決機能に加えて、名前解決要求の対象であるノードの種別を解決する機能を持ち、更にそのノードが暗号化通信対象ノードである場合には、そのノードとの通信に用いる暗号化通信路の設定情報を解決する機能を持つ。
DNSサーバB1dは、DNS応答・クエリ送受信部B11dと名前解決部B12aとアドレス解決用データベースB13aと通信方式解決部B14dとCUG設定データベースB15dとを含む。以下それぞれについて説明する。
DNS応答・クエリ送受信部B11dは、クライアントノードA1dから受け取った名前解決要求(具体的には、受信したDNSクエリメッセージに含まれる名前解決対象のドメイン名やクライアントノードA1dの識別子(例えばIPアドレスやドメイン名など)など)を名前解決部B12aに渡し、名前解決部B12aから名前解決結果(具体的には前記名前解決要求に含まれる情報に加えて、解決結果のIPアドレスなどが含まれる)を受け取る。また、通信方式解決部B14dに前記名前解決結果を渡し、通信方式解決部B14dから名前解決要求の対象のノードの種別情報を受け取る。更に、名前解決要求対象ノードが暗号化通信ノードである場合は、そのノードとの通信に用いる暗号化通信路の設定情報を受け取る。DNS応答・クエリ送受信部B11dは、名前解決部B12a及び通信方式解決部B14dから受け取った情報を元にDNSレスポンスメッセージを作成し、クライアントノードA1dに送信する。
名前解決部B12aは、DNS応答・クエリ送受信部B11dから名前解決要求を渡されると、アドレス解決用データベースB13aを参照して、名前解決を行い、名前解決結果をDNS応答・クエリ送受信部B11dに渡す。
アドレス解決用データベースB13aには、ドメイン名とそれに対応するIPアドレスが登録されている。
通信方式解決部B14dは、DNS応答・クエリ送受信部B11dから名前解決結果を渡されると、CUG設定データベースB15dを参照して、通信相手の種別を解決し、通信相手が暗号化通信対象ノードである場合は、更にそのノードとの通信に用いる暗号化通信路の設定情報を解決する。解決動作の具体例は後述する。前記処理を行った後、解決結果をDNS応答・クエリ送受信部B11dに渡す。
CUG設定データベースB15dには、暗号化通信対象ノードの識別情報が登録される。この他に通信を行う際に利用する暗号化通信路の設定情報を登録することもできる。なお、これらの情報は図3のテーブル201で示すように登録しておくことが出来る。また、暗号化通信対象ノードの識別情報を、個々のクライアントノードもしくはクライアントノードのグループ毎にCUG設定データベースB15dに登録しておくことも出来る。このような登録方法を採ることによって、同一のノードに対する通信方式の解決要求であってもクライアントノードによって異なる通信方式を解決するといった制御を行うことが可能となる。例えば、あるノードの種別を特定のクライアントノードに対してのみ暗号化通信対象ノードとして解決することによって、特定のクライアントノードからのみ暗号化通信を許可するという制御が可能になる。
CUG設定データベースB15dの具体例を図12に示す。図12に示すCUG設定データベースB15dは、下記(1)、(2)の2種類のテーブルから構成され、クライアントノード毎あるいはそのグループ毎に暗号化通信対象ノードの識別情報と通信を行う際に利用する暗号化通信路の設定情報が登録されている。
(1)暗号化通信対象ノードの識別情報と通信を行う際に利用する暗号化通信路の設定情報が登録されたテーブル。テーブル502〜504が該当する。テーブル502〜504には、暗号化通信対象ノードの識別情報がドメイン名の形で登録され、暗号化通信路の設定情報(暗号化通信路仕様)として、通信プロトコル、電子証明書ID、暗号化アルゴリズムが登録されている。
(2)クライアントノードの識別情報と、当該クライアントノードからのDNSクエリメッセージ受信を契機とした通信方式解決の際に参照される上記(1)テーブルの識別子が登録されたテーブル。テーブル501が該当する。テーブル501には、クライアントノードの識別情報がIPアドレスの形で登録されており、当該IPアドレスを持つクライアントノードからのDNSクエリメッセージ受信を契機とした通信方式解決の際に参照されるテーブル502〜504の識別子が登録されている。
以下、DNSサーバB1dが図12に示すCUG設定データベースB15dを保持している場合の、通信方式解決動作の具体例を説明する。
例えば、IPアドレスが1.2.3.4であるクライアントノードからDNSクエリメッセージを受信した場合、まずテーブル501が参照され、クライアントノード識別情報(IPアドレス:1.2.3.4)が合致する1番目のエントリが引かれる。次に1番目のエントリの登録内容に基づいて、Table ID 1のテーブル、すなわちテーブル502が参照される。クライアントノードが名前解決を要求したドメイン名がkojima.jinji.nec.comである場合は、テーブル502の1番目のエントリが引かれ、通信方式は、[通信ノード種別:暗号化通信対象ノード、通信プロトコル:SSL、電子証明書ID:jinji.nec.com、暗号化アルゴリズム:3DES]のように解決される。
また、IPアドレスが5.6.7.8であるクライアントノードが上記と同様にkojima.jinji.nec.comの名前解決を要求した場合には、最終的にテーブル503の2番目のエントリが引かれ、通信方式は、[通信ノード種別:暗号化通信対象ノード、通信プロトコル:IPSec、電子証明書ID:soumu-jinji.nec.com、暗号化アルゴリズム:AES]のように上記とは異なる通信方式が解決される。
さらに、IPアドレスが133.11.23.24であるクライアントノードが上記と同様にkojima.jinji.nec.comの名前解決を要求した場合には、テーブル504が参照されることになるが、そこにはkojima.jinji.nec.comにマッチするエントリが登録されていないため、通信方式は、[通信ノード種別:通常通信対象ノード]のように解決される。
次に本実施例におけるクライアントノードA1d及びDNSサーバB1dの動作を説明する。
まず、クライアントノードA1dの動作について説明する。クライアントノードA1dの動作は、アプリケーションA11xが通信相手のドメイン名に対する名前解決要求を行った際の動作と、通信相手に対してデータパケットを送信した際の動作に分けられるが、後者については本発明の第一の実施例で説明した動作と同一のため、説明を省略する。名前解決要求時の動作については、本発明の第一の実施例と比較して外部DNSサーバからDNSレスポンスメッセージを受信した後の動作(図4のステップS104以降)が、本発明の第一の実施例と異なる。以下、外部DNSサーバからDNSレスポンスメッセージ受信した後の動作を説明する。
DNSクエリ・応答送受信部A121dは、DNSサーバB1dからDNSレスポンスメッセージを受信すると、同メッセージに含まれる通信相手のノード種別情報をチェックする。通信相手が通常通信対象ノードである場合には、DNSサーバB1dから受信したDNSレスポンスメッセージに含まれる名前解決結果を元に、新たにDNSレスポンスメッセージを作成し、アプリケーションA11xに送信する。通信相手が暗号通信対象ノードである場合には、DNSサーバB1dから受信したDNSレスポンスメッセージに含まれる通信相手の名前解決結果及びその通信相手との通信に用いる暗号化通信路の設定情報を暗号化通信路設定部A123dに渡す。暗号化通信路A123dは、本発明の第一の実施例における動作と同様の手順で、暗号化通信路設定テーブルA132aに暗号通信対象ノードの情報を登録し、DNSクエリ・応答送受信部A121dにループバックアドレスを通知する。
DNSクエリ・応答送受信部A121dは、通信相手のIPアドレスを暗号化通信路設定部A123dから通知されたループバックアドレスに書き換え、DNSレスポンスメッセージによりアプリケーションA11xに通知する。
アプリケーションA11xは、DNSレスポンスメッセージを受信すると、宛先アドレスにDNSレスポンスメッセージによって通知された名前解決結果に含まれるアドレスを指定して、データパケットを送信する。
次に、DNSサーバB1dの動作を説明する。DNSサーバB1dは、クライアントノードA1dからDNSクエリメッセージを受信すると、クライアントノードA1dの通信相手の名前解決を行う。また、クライアントノードA1dがその通信相手と通信する際に採るべき通信方式を解決する。具体的には、通信相手のノード種別を解決し、そのノードがクライアントノードA1dにとって暗号化通信対象ノードである場合には、更にそのノードとの通信に用いる暗号化通信路の設定情報を解決する。DNSサーバB1dは、以上の解決結果を、DNSレスポンスメッセージによってクライアントノードA1dに送信する。
なお、以上の説明ではクライアントノードA1dの構成として、本発明の第一の実施例と同様にアプリケーションA11xが送信したデータパケットの暗号化機能を通信暗号化モジュールA13aが提供する構成について説明したが、本実施例において、クライアントノードA1dの構成として、本発明の第二の実施例と同様にデータパケットの暗号化機能を通信暗号化モジュールA13aおよびデータ送受信部A14b双方において提供する構成をとることも可能である。図13にこの場合のクライアントノードA1fの構成を示す。この場合、暗号化通信路設定部A123fおよびデータ送受信部A14bが本発明の第二の実施例における暗号化通信路設定部A123cおよびデータ送受信部A14bと同様の機能を持つ。
図13に示されるクライアントノードA1fは、独立したプロセスとして動作する通信暗号化モジュールA13aと、カーネル部に設けられたデータ送受信部A14bと、アプリケーションA11xが他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部A12fとを備える。
通信暗号化モジュールA13aは、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルA132aと、アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を暗号化通信路設定テーブルA132aから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信する通信暗号化部A131aとを備える。
データ送受信部A14bは、通信相手IPアドレスと暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルA142bと、アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが暗号化通信路設定テーブルA142bに登録されていた場合に、対応する暗号化通信路設定情報を暗号化通信路設定テーブルA142bから読み出し、前記データパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信する通信暗号化部A141bとを備える。
図示しない名前解決サーバは、名前解決に関連する機能に加えて、暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、名前解決クエリまたは名前解決応答に含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部と、前記マッチしたドメイン名条件に対応する暗号化通信路設定情報及び前記判定の結果を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備える。そして、名前解決プロキシ部A12fは、前記暗号化通信路設定情報及び前記判定の結果が付加された前記名前解決応答を前記名前解決サーバから受信したときに、通信の暗号化を前記通信暗号化モジュールで行うと判定された場合は前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を暗号化通信路設定テーブルA132aに登録し、通信の暗号化を前記データ送受信部で行うと判定された場合は前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスとの対応を暗号化通信路設定テーブルA142bに登録する暗号化通信路設定部A123fと、通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部A121aとを備える。
次に本実施例の効果について説明する。本実施例では、暗号化通信対象ノードの識別情報と通信に用いる暗号化通信路の設定情報がDNSサーバB1dによって一元管理される。このため、個々のクライアントノードにおいて前記情報を設定・保持しておく必要がない。特に複数のクライアントノードでグループを構成して通信を行う場合、暗号化通信路の設定情報等に変更があっても、DNSサーバB1dにおいて1度変更を行うだけで済み、DNSサーバB1d上の前記情報をグループ内で効率的に共有することが出来る。
次に、本発明の第四の実施例について図面を参照して詳細に説明する。
図14を参照すると、本発明の第四の実施例は、本発明の第一の実施例と比較して、クライアントノードA1gにDNS Proxy部および通信暗号化モジュールが含まれず、これらのモジュールが外部の通信暗号化ノードF1aに含まれる点が異なる。すなわち、本実施例は、主に以下の2点において、本発明の第一の実施例と異なる。
(1)クライアントノードA1gの通信相手のノード種別(すなわち通信相手が暗号化通信対象ノードであるか通常通信対象ノードであるか)、及び通信相手が暗号化通信対象ノードである場合における当該通信相手との通信に用いる暗号化通信路の設定情報が、通信暗号化ノードF1aによって解決される。
(2)クライアントノードA1gが暗号化通信対象ノードと通信を行う際、通信の暗号化処理が通信暗号化ノードF1aによって行われる。
以下、本実施例について、本発明の第一の実施例と異なる点を中心に説明する。
まずクライアントノードA1gについて説明する。クライアントノードA1gは、アプリケーションA11xとデータ送受信部A14xとを含む。アプリケーションA11xとデータ送受信部A14xは、本発明の第一の実施例の説明におけるものと同様の機能を持つ。本実施例において、クライアントノードA1gにはDNSサーバとして通信暗号化ノードF1aのアドレスが設定されている。
次に通信暗号化ノードF1aについて説明する。通信暗号化ノードF1aは、DNS Proxy部F12aと通信暗号化モジュールA13aとデータ送受信部A14xとを含む。
まずDNS Proxy部F12aについて説明する。DNS Proxy部F12aは、本発明の第一の実施例におけるDNS Proxy部A12aと同様の構成を採り、クライアントノードA1gの通信相手のノード種別を判断し、暗号化通信路の設定情報を暗号化通信路設定テーブルF132aに登録するという機能を持つが、本発明の第一の実施例におけるDNS Proxy部A12aとは以下の2点で異なる。
(1)外部クライアントノードA1gからの名前解決要求を受信処理する。
(2)クライアントノードA1gの通信相手が暗号化通信対象ノードである場合には、その通信相手に対する名前解決要求に対して、その通信相手のIPアドレスをインターセプト用アドレスに変換し、名前解決結果として通知する。ここで、インターセプト用アドレスとは、クライアントノードA1gの送信データパケットにおいて宛先アドレスとして指定された場合に、通信暗号化ノードF1aが当該データパケットをインターセプトすることが可能となるアドレスを意味する。具体例としては、通信暗号化ノードF1a自身のIPアドレス等が挙げられるが、詳しくは後述する。なお、後述するようにインターセプト用アドレスとして通信相手のIPアドレスを直接利用する場合もあり、その場合は上記の通信相手のIPアドレスからインターセプト用アドレスへの変換後も、名前解決結果として通信相手のIPアドレスが通知されることになる。
以下、DNS Proxy部F12aを構成する各モジュールについて説明する。
DNSクエリ・応答送受信部F121aは、DNSレスポンス・クエリメッセージの送受信を外部クライアントノードA1gに対して行うという点以外は、本発明の第一の実施例におけるDNSクエリ・応答送受信部A121aと同様の機能を持つ。
通信方式解決部F122aは、本発明の第一の実施例における通信方式解決部A122aと同様の機能を持つ。
暗号化通信路設定部F123aは、本発明の第一の実施例における暗号化通信路設定部A123aと比較して、通信方式解決部F122aから渡された名前解決結果に含まれるクライアントノードA1gの通信相手のIPアドレスを、ループバックアドレスではなくインターセプト用アドレスへマッピングするという点が異なる。具体的な動作は以下のとおりである。
暗号化通信路設定部F123aは、通信方式解決部F122aから名前解決結果を渡されると、暗号化通信路設定テーブルF132aを参照して他の通信セッションで使用されていないインターセプト用アドレスを選択し、名前解決結果に含まれるクライアントノードA1gの通信相手のIPアドレスを、前記インターセプト用アドレスへマッピングし、前記インターセプト用アドレスをDNSクエリ・応答送受信部F121aに通知する。また、選択したインターセプト用アドレスと通信方式解決部F122aから渡された名前解決結果およびクライアントノードA1gの通信相手との通信に利用すべき暗号化通信路の設定情報との対応関係を暗号化通信路設定テーブルF132aに登録する。
DNSサーバアドレス設定テーブルA124aには、本発明の第一の実施例におけるDNSサーバアドレス設定テーブルA124aと同様の情報が登録されている。
CUG設定データベースF125aには、本発明の第一の実施例におけるCUG設定テーブルA125aと同様に暗号化通信対象ノード(CUG参加ノード)の識別情報と通信を行う際に利用する暗号化通信路の設定情報が登録され、通信方式解決部F122aがクライアントノードA1gの通信相手の種別を判断する際に参照される。また、CUG設定データベースF125aは、本発明の第一の実施例におけるCUG設定テーブルA125aと同様に、暗号化通信対象ノード毎にノード識別情報と暗号化通信路の設定情報を登録しておくことが可能であり、複数の暗号化通信対象ノードをまとめて一つのグループとして扱い、グループ毎にノード識別情報と暗号化通信路の設定情報を登録しておくことも可能である。さらに、CUG設定データベースF125aは、本発明の第三の実施例におけるCUG設定データベースB15dと同様に、暗号化通信対象ノードの識別情報と通信を行う際に利用する暗号化通信路の設定情報の情報をクライアントノードもしくはクライアントノードのグループ毎に登録しておくことも可能であり、その場合、例えば図12のような形で情報が登録される。
以上がDNS Proxy部F12aの構成である。
次に、通信暗号化モジュールF13aについて説明する。
通信暗号化部F131aは、クライアントノードA1が暗号化通信対象ノードに対して送信するデータパケットの暗号化処理を行う。以下、暗号化処理の具体的手順について説明する。
クライアントノードA1gが暗号化通信対象ノードと通信を行う場合、クライアントノードA1gから送信されるデータパケットの宛先アドレスには、インターセプト用アドレスが指定されており(暗号化通信対象ノードに対する名前解決要求に対しては、DNS Proxy部F12aによりインターセプト用アドレスが名前解決結果として通知されるため)、前記データパケットは全て通信暗号化ノードF1aがインターセプトすることになる。インターセプトされたデータパケットは通信暗号化部F131aに渡される。通信暗号化部F131aは、インターセプトしたデータパケットの宛先アドレスを元に暗号化通信路設定テーブルF132aを参照し、宛先インターセプト用アドレスと対応付けられている通信相手のIPアドレス及びその通信相手との通信に利用する暗号化通信路の設定情報を把握する。そして、把握した暗号化通信路の設定情報に従ってインターセプトしたデータパケットを暗号化し、クライアントノードA1gの通信相手に送信する。
以下、上記で説明した通信暗号化処理の具体例を説明する。具体例としては、通信暗号化モジュールF12aが暗号化通信路設定テーブルF132aとして図15に示したテーブル601を保持しているケースを想定し、通信暗号化ノードF1aが、クライアントノードA1gの送信した宛先アドレスfe80::3090のデータパケットをインターセプトした場合の例を説明する。
通信暗号化部F131aは、まず暗号化通信路設定テーブルF132aを参照して、宛先アドレスfe80::3090に該当するエントリを把握する。この場合、テーブル601の2番目のエントリが該当し、その結果、通信暗号化部F131aは通信に利用する暗号化通信路の設定情報として、通信プロトコル:SSL、電子証明書ID:10、暗号化アルゴリズム:3DESを取得する。次に通信暗号化部F131aは、インターセプトしたデータパケットの宛先アドレスを、fe80::3090から通信相手のIPアドレスであるaa91::1001に書き換え、暗号化通信路の設定情報に従って、3DESアルゴリズムで暗号化した後、SSLプロトコルで通信相手に送信する。
以上が、通信暗号化部F131aによる通信暗号化処理の具体的手順である。
暗号化通信路設定テーブルF132aには、クライアントノードA1gの通信相手の名前解決結果(通信相手のIPアドレスなど)及び前記通信相手との通信に用いる暗号化通信路の設定情報と、それらに対応するインターセプト用アドレスが登録される。暗号化通信路設定テーブルF132aは、暗号化通信路設定部F123aがクライアントノードA1gの通信相手のIPアドレスを、インターセプト用アドレスへマッピングする際、及び通信暗号化部F131aが通信の暗号化処理を行う際に参照される。図15に暗号化通信路設定テーブルF123aの例を示した。
図15に示した暗号化通信路設定テーブル601では、名前解決結果に含まれる情報として、クライアントノードA1gの通信相手のIPアドレス及びドメイン名が、対応するインターセプト用アドレス毎に登録されている。
次に、インターセプト用アドレスとして利用できるIPアドレスについて説明する。
インターセプト用アドレスとしては、例えば以下の二つのアドレスが利用できる。
(1)通信暗号化ノードF1a自身のIPアドレス
(2)クライアントノードA1gが属するサブネットのアドレス範囲に含まれない任意のアドレス
(1)の通信暗号化ノードF1a自身のIPアドレスをインターセプト用アドレスとして利用する場合、通信暗号化ノードF1aには複数のIPアドレスが割り当てられていることが必要となる。その理由は、通信暗号化ノードF1aは、クライアントノードA1gが送信したデータパケットの宛先アドレスに指定されているインターセプト用アドレスによってクライアントノードA1gの通信相手を識別するため、同時に複数の通信相手もしくはクライアントノードの利用を想定する場合には、複数のインターセプト用アドレスを使い分けることが必要になるためである。また、インターセプト用アドレスが多くあるほど、より多くの通信相手もしくはクライアントノードの利用が可能となるため、通信暗号化ノードF1aにはできるだけ多くのIPアドレスが割り当てられている方が都合が良い。
(2)のクライアントノードA1gが属するサブネットのアドレス範囲に含まれない任意のアドレスをインターセプト用アドレスとして利用する場合、通信暗号化ノードF1aはクライアントノードA1gのデフォルトゲートウェイとなっている必要がある。デフォルトゲートウェイとなることで、クライアントノードA1gが自身の属するサブネットのアドレス範囲に含まれないアドレス宛にデータパケットを送信した場合、そのデータパケットはルーティング処理のために通信暗号化ノードF1aを経由することになる。クライアントノードA1gの通信相手がクライアントノードA1gの属するサブネット外に存在する場合は、通信相手のIPアドレスを直接インターセプト用アドレスとして利用することが可能である。
次に、本実施例において、クライアントノードA1gが通信相手の名前解決を要求してから、その通信相手と通信を行うまでの通信暗号化ノードF1aの動作を説明する。
通信暗号化ノードF1aの動作は、クライアントノードA1gからDNSクエリを受信した際の動作とクライアントノードA1gが送信したデータパケットをインターセプトした場合の動作に分けられる。
まず、図2を参照してクライアントノードA1gからDNSクエリを受信した際の動作について説明する。
通信暗号化ノードF1aがクライアントノードA1gからDNSクエリメッセージを受信する(ステップS101)と、DNSクエリ・応答送受信部F121aがDNSサーバアドレス設定テーブルF124aに登録されている外部DNSサーバB1aに、受信したDNSクエリメッセージを送信し(ステップS102)、応答としてDNSサーバB1aからDNSレスポンスメッセージを受信する(ステップS103)。
DNSクエリ・応答送受信部F121aは、受信したDNSレスポンスメッセージから名前解決結果を取り出し、通信方式解決部F122aに渡す。
通信方式解決部F122aは、渡された名前解決結果を元に、CUG設定データベースF125aを参照して、通信相手のノード種別(暗号化通信対象ノード、通常通信対象ノードのどちらであるか)を判断する(ステップS104)。その後の動作は通信相手の種別により異なる。
まず、通信相手が通常通信対象ノードである場合について説明する。この場合、通信方式解決部F122aからDNSクエリ・応答送受信部F121aに判断結果が通知され、DNSクエリ・応答送受信部F121aが、DNSサーバB1から通知された名前解決結果を元に新たにDNSレスポンスメッセージを作成し、クライアントノードA1gに送信する(ステップS106)。
クライアントノードA1gは、DNSレスポンスメッセージを受信すると、受信したDNSレスポンスメッセージにより通知された通信相手のIPアドレスを宛先アドレスとしてデータパケットを送信する。この場合、クライアントノードA1gが送信したデータパケットは、通信暗号化ノードF1aを経由せずに通信相手に直接送信され、通信相手とは通常の通信が行われることになる。
次に、通信相手が暗号化通信対象ノードである場合について説明する。この場合、通信方式解決部F122aは、クライアントノードA1gの通信相手との通信に利用する暗号化通信路の設定情報をCUG設定データベースF125aから把握し、DNSクエリ・応答送受信部F121aから渡された名前解決結果と共に暗号化通信路設定部F123aに渡す。
暗号化通信路設定部F123aは、名前解決結果及び暗号化通信路の設定情報を受け取ると、暗号化通信路設定テーブルF132aを参照し、クライアントノードA1gの通信相手のIPアドレスを、他の通信セッションで使用されていないインターセプト用アドレスへマッピングする。暗号化通信路設定部F123aは、マッピングしたインターセプト用アドレスを通信方式解決部F122aに通知する。また、暗号化通信路設定部F123aは、インターセプト用アドレスと、通信方式解決部F122aから渡された名前解決結果及び通信相手との通信に利用する暗号化通信路設定情報の対応関係を暗号化通信路設定テーブルF123aに登録する(ステップS105)。
通信方式解決部F122aは、暗号化通信路設定部F123aから渡されたインターセプト用アドレスをDNSクエリ・応答送受信部F121aに渡す。
DNSクエリ・応答送受信部F121aは、通信方式解決部F122aからインターセプト用アドレスを通知されると、外部DNSサーバB1aから渡された名前解決結果に含まれる通信相手のアドレスをインターセプト用アドレスに書き換え、DNSレスポンスメッセージを作成し、クライアントノードA1gに送信する。つまり、クライアントノードA1gには、通信相手のドメイン名に対する名前解決結果として、暗号化通信路設定部F123aが選択したインターセプト用アドレスが通知されることになる(ステップS106)。
クライアントノードA1gは、DNSレスポンスメッセージを受信すると、名前解決結果に含まれるインターセプト用アドレスを宛先アドレスに指定してデータパケットを送信する。この結果、前記データパケットは通信暗号化ノードF1aによってインターセプトされ、暗号化処理が行われることになる。
以上が、通信暗号化ノードF1aがクライアントノードA1gからDNSクエリを受信した際の動作である。
次に通信暗号化ノードF1aがクライアントノードA1gの送信したデータパケットをインターセプトした場合の動作について説明する。
通信暗号化ノードF1aが、クライアントノードA1gが送信したデータパケットをインターセプトすると、通信暗号化部F131aは、データパケットの宛先アドレス(インターセプト用アドレスが指定されている)を基に暗号化通信路設定テーブルF132aを参照し、クライアントノードA1gの通信相手との通信に利用すべき暗号化通信路の設定情報及び通信相手のIPアドレスを取得する。そして、通信暗号化部F131aは、取得した暗号化通信路の設定情報を利用して、暗号・復号化処理部F1311aにおいてインターセプトしたデータパケットに対して暗号化処理を行い、アドレス変換部A1312aにおいてデータパケットの宛て先アドレスをインターセプト用アドレスから通信相手のIPアドレスに書き換えて、通信相手に対して送信する。
なお、以上の説明では通信暗号化ノードF1aの構成として、クライアントノードA1gが送信したデータパケットの暗号化機能を本発明の第一の実施例と同様に通信暗号化モジュールF13aが提供する構成について説明したが、本実施例において、通信暗号化ノードF1aの構成として、本発明の第二の実施例と同様にデータパケットの暗号化機能を通信暗号化モジュールF13aおよびデータ送受信部F14b双方において提供する構成をとることも可能である。図16にこの場合の通信暗号化ノードF1bの構成を示す。この場合、暗号化通信路設定部F123cおよびデータ送受信部F14bは本発明の第二の実施例における暗号化通信路設定部F123cおよびデータ送受信部F14bと同様の機能を持つ。
図16に示す通信暗号化ノードF1cは、独立したプロセスとして動作する通信暗号化モジュールF13aと、カーネル部に設けられたデータ送受信部F14bと、アプリケーションが他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部F12cとを備える。
通信暗号化モジュールF13aは、通信相手IPアドレスと第1のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルF132aと、前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を暗号化通信路設定テーブルF132aから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを、前記読み出した暗号化通信路設定情報に従って暗号化して送信する通信暗号化部F131aとを備える。
データ送受信部F14bは、通信相手IPアドレスと第2のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルF142bと、前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を暗号化通信路設定テーブルからF142b読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを、前記読み出した暗号化通信路設定情報に従って暗号化して送信する通信暗号化部F141bとを備える。
名前解決プロキシ部F12cは、暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持するCUG設定テーブルF125aと、名前解決クエリまたは名前解決応答に含まれる他のノード装置のドメイン名がCUG設定テーブルG125aに保持された何れかのドメイン名条件にマッチするかどうか、及びマッチした場合に通信の暗号化を通信暗号化モジュールF13a及びデータ送受信部F14bの何れで行うかを判定する通信方式解決部F122cと、通信方式解決部F122cにおいて通信の暗号化を通信暗号化モジュールF13aで行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を暗号化通信路設定テーブルF132aに登録し、通信方式解決部F122cにおいて通信の暗号化をデータ送受信部F14bで行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を暗号化通信路設定テーブルF142bに登録する暗号化通信路設定部F123cと、通信方式解決部F122cにおいて通信の暗号化を通信暗号化モジュールF13aで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、通信方式解決部F122cにおいて通信の暗号化をデータ送受信部F14bで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部F121aとを備える。
また、以上の説明では通信相手のノード種別と、通信相手が暗号化通信対象端末であった場合にその通信相手との通信に利用する暗号化通信路設定情報の解決を通信暗号化ノードF1aの内部で行う構成について説明したが、本実施例において、本発明の第三の実施例と同様に、上記解決をDNSサーバB1aで行う構成を採ることも可能である。この場合、DNSサーバB1aの構成は、本発明の第三の実施例の説明における図11に示したDNSサーバB1bと同様の構成を採り、通信暗号化ノードF1aは、図17に示す構成を採る。この場合、DNSクエリ・応答送受信部F121dは、本発明の第三の実施例におけるDNSクエリ・応答送受信部A121dと同様の機能を持つ。
図17に示す通信暗号化ノードF1dは、独立したプロセスとして動作する通信暗号化モジュールF13aと、アプリケーションが他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部F12dとを備える。
通信暗号化モジュールF13aは、通信相手IPアドレスとインターセプト用アドレスと暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルF132aと、アプリケーションより送信された宛先アドレスにインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を暗号化通信路設定テーブルF132aから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを、前記読み出した暗号化通信路設定情報に従って暗号化して送信する通信暗号化部F131aとを備える。
図示しない名前解決サーバは、名前解決に関連する機能に加えて、暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、名前解決クエリまたは名前解決応答に含まれる他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定する通信方式解決部と、前記マッチしたドメイン名条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備える。そして、名前解決プロキシ部F12dは、前記暗号化通信路設定情報が付加された前記名前解決応答を前記名前解決サーバから受信したときに、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないインターセプト用アドレスとの対応を暗号化通信路設定テーブルF132aに登録する暗号化通信路設定部F123dと、前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスに対応するインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部F121dとを備える。
また、図16と図17との組み合わせ、つまり、図16と同様に通信暗号化ノードの通信暗号化モジュール及びデータ送受信部の何れかで暗号化を行い、且つ、図17と同様に暗号化対象ノードの判定と暗号化場所の判定を名前解決サーバで実行するようにした暗号化通信システムも考えられる。この場合の通信暗号化ノードは、図16の通信暗号化ノードF1CにおけるDNS Proxy部F12cの通信方式解決部F122c及びCUG設定テーブルF125aの機能を省略した構成になる。
次に本実施例の効果について説明する。本実施例では、通信相手の種別判断及び、暗号化通信対象ノードに対する通信暗号化処理が各クライアントノード内ではなく、外部の通信暗号化ノードで行われる。このため、クライアントノードに通信暗号化モジュールをインストールできない場合でも利用することが可能である。さらに、クライアントノード内で通信相手の種別判断及び、暗号化通信対象ノードに対する通信暗号化処理を行う場合と比較して、クライアントノードにかかる負荷が軽減されるため、計算能力が比較的低いノード(例えば携帯電話やPDA等)でも利用することが出来る。
次に本発明の第五の実施例について図面を参照して詳細に説明する。
図18を参照すると、本発明の第五の実施例は、クライアントノードA1zと暗号化通信対象ノードC1と通常通信対象ノードD1とによって実現される。クライアントノードA1zと暗号化通信対象ノードC1と通常通信対象ノードD1はネットワークE1を介して接続されている。
クライアントノードA1zは、アプリケーションA11xと通信暗号化モジュールA13zとデータ送受信部A14zとを含む。
アプリケーションA11xは、Webブラウザや電子メールソフトや、ビデオ会議ソフトなどコンピュータを使って、それぞれの目的を実現するためのソフトウェアである。
データ送受信部A14zは、クライアントノードA1zのOSのカーネル部に存在し、データパケットの送受信処理を行う。アプリケーションA11xが送信した全てのデータパケットは一旦データ送受信部A14zにインターセプトされ、このうち、暗号化通信対象ノード宛てのデータパケットは通信暗号化モジュールA13zにリダイレクトされ、通常通信対象ノード宛てのデータパケットはそのまま通常通信対象ノードに送信される。
データ送受信部A14zは、リダイレクト部A141zとリダイレクトテーブルA142zとを含む。
まず、リダイレクト部A141zについて説明する。リダイレクト部A141zは、アプリケーションA11xが送信したデータパケットのうち、暗号化通信対象ノード宛てのデータパケットを通信暗号化モジュールA13zにリダイレクトする機能を有する。また、通信暗号化モジュールA13zがアプリケーションA11xに宛てて送信するデータパケットの中継処理を行う機能を有する。以下、各機能について具体的に説明する。
(1)アプリケーションA11xが送信したデータパケットのリダイレクト機能
データ送受信部A14zがアプリケーションA11xの送信したデータパケットをインターセプトすると、リダイレクト部A141zは、リダイレクトテーブルA142zを参照し、そのデータパケットが暗号化通信対象ノード宛てか否か(以下、データパケット種別と呼ぶ)を判断する。データパケット種別の判断基準としては、例えば、データパケットの宛先IPアドレスが挙げられる。この場合、リダイレクトテーブルA142zにおいて、インターセプトしたデータパケットの宛先IPアドレスが暗号化通信対象ノードのIPアドレスとして登録されている場合には、当該データパケットのデータパケット種別を暗号化通信対象ノード宛であると判断する。
データパケットが暗号化通信対象ノード宛のものであると判断された場合、リダイレクト部A141zは、通信暗号化モジュールA13zへ当該データパケットをリダイレクトする。また、通信暗号化モジュールA13zにおいては、リダイレクトされたデータパケットを送信すべき通信相手を識別できるようにする必要があることから、リダイレクト部A141zは、データパケットに含まれる情報を書き換え、通信暗号化モジュールA13zが、データパケットに含まれる情報から、データパケットを送信すべき通信相手を識別できるようにする。以下、リダイレクトとパケット情報の書き換えについて具体的に説明する。
○リダイレクト
リダイレクトは、データパケットの宛先IPアドレスをループバックアドレスに書き換えることで行う。ループバックアドレスは一般的に127.0.0.0/8に含まれるIPアドレスが該当する。ループバックアドレスは自ノード内に閉じた通信を行うためのIPアドレスアドレスであり、当該データパケットをループバックアドレス宛に送信することで、通信暗号化モジュールA13zが当該データパケットをインターセプトすることが可能となる。
○パケット情報書き換え
パケットに含まれる情報は、予め定められたルールに従って書き換える。書き換えの対象となる情報(すなわち、通信暗号化モジュールA13zにおいてデータパケットの宛先通信相手の識別に利用する情報、以下通信相手識別情報と呼ぶ)の例としては、宛て先IPアドレス、宛先ポート番号などがある。以下、通信相手識別情報の例について説明する。
・宛先IPアドレス
前述の通り、リダイレクトのために宛先IPアドレスは、ループバックアドレスに書き換えられるが、通信相手(データパケットの宛先IPアドレス)毎に異なるループバックアドレスに書き換えることで、通信暗号化モジュールA13zは受け取ったデータパケットの宛先ループバックアドレスから、データパケットの通信相手を識別することが可能となる。例えば、1.2.3.4宛てのデータパケットは、宛先IPアドレス:127.1.1.1に、5.6.7.8宛てのデータパケットは、宛先IPアドレス:127.2.2.2に、それぞれ書き換える(リダイレクトする)といったルールが挙げられる。
・宛先ポート番号
インターセプトした宛先ポート番号を通信相手毎(データパケットの宛先IPアドレス毎)に異なる宛先ポート番号に書き換えることで、通信暗号化モジュールA13zは、受け取ったデータパケットの宛先ポート番号から、データパケットの通信相手を識別することが可能となる。例えば、1.2.3.4宛てのデータパケットは、宛先IPアドレス:127.0.0.1、ポート番号:30000に、5.6.7.8宛てのデータパケットは、宛先IPアドレス:127.0.0.1、ポート番号:30100に、書き換える(リダイレクトする)といったルールが挙げられる。
この他にも、送信元IPアドレスや、送信元ポート番号などが通信相手識別情報の例として挙げられる。以上の例は、パケットのヘッダ情報であったが、リダイレクト部A141zがペイロード部分に通信相手識別情報となりえる新規情報を付加するなどの書き換えルールも考えられる。また、複数の通信相手識別情報を組み合わせて使うことも考えられる。
(2)通信暗号化モジュールA13zが送信したデータパケットの中継機能
通信暗号化モジュールA13zがループバックアドレス宛に送信したデータパケットをアプリケーションA11xに中継する。
次にリダイレクトテーブルA142zについて説明する。リダイレクトテーブルA142zには、データパケット種別の判断基準と、通信相手識別情報の書き換えルールが登録されている。図19にリダイレクトテーブルA142zの例を示す。図19に示すテーブル1001には通信相手IPアドレスとループバックアドレスの組が登録されている。ここで、通信相手IPアドレスがデータパケット種別の判断基準、ループバックアドレスが通信相手識別情報の書き換えルールに対応する。すなわち、データパケットが暗号化通信対象ノード宛であるかどうかはそのデータパケットの宛先IPアドレスと同じ通信相手IPアドレスがテーブル1001に登録されているかどうかで判断され、データパケットが暗号化通信対象ノード宛であった場合、その宛先IPアドレスが、対応するルールバックアドレスに書き換えられる。例えば、データ送受信部A14zが133.11.64.24宛てのデータパケットをインターセプトした際には、宛先IPアドレスが127.1.1.1に書き換えられて通信暗号化モジュールA13zにリダイレクトされる。
以上がデータ送受信部A14zの構成である。
次に通信暗号化モジュールA13zについて説明する。通信暗号化モジュールA13zは、アプリケーションA11xと暗号化通信対象ノードC1との通信の暗号化を行う通信暗号化モジュールA13zとを有する。通信暗号化モジュールA13zは、通信暗号化部A131zと暗号化通信路設定テーブルA132zとを含む。
まず通信暗号化部A131zについて説明する。通信暗号化部A131zは、リダイレクト部A141zからリダイレクトされたデータパケットの通信相手識別情報を基に、暗号化通信路設定テーブルA132zを参照して、アプリケーションA11xの通信相手を識別し、通信に用いる暗号化通信路を把握して通信を暗号化する機能を有する。また、外部の通信相手ノードから受信したデータパケットに対して復号化処理を施し、アプリケーションA11xに転送する機能を有する。通信暗号化部A131zは、暗号・復号化処理部A1311zとアドレス変換部A1312zとを含む。
暗号・復号化処理部A1311zは、リダイレクト部A141zからリダイレクトされたデータパケットの通信相手識別情報を元に暗号化通信路設定テーブルA132zを参照し、そのテーブルに登録されている暗号化通信路設定情報に従って受信したデータパケットに暗号化処理を施す機能を有する。また、外部の通信相手ノードから受信したデータパケットの送信元アドレスを元に暗号化通信路設定テーブルA132aを参照し、そのテーブルに登録されている暗号化通信路設定情報に従って受信したデータパケットに復号化処理を施す機能を有する。
アドレス変換部A1312zは、リダイレクト部A141zからリダイレクトされたデータパケットの通信相手識別情報を元に暗号化通信路設定テーブルA132zを参照し、通信相手識別情報をリダイレクト部A141zにより書き換えられる前の状態に戻す。たとえば、通信相手識別情報が宛先ループバックアドレスである場合は、その宛先ループバックアドレスを暗号化通信路設定テーブルA132zにおいて対応付けられている通信相手のIPアドレスに変換する。この例のように、通信相手識別情報がIPアドレスの場合は不要であるが、それ以外の場合にはさらに、アドレス変換部A1312zは、リダイレクトされたデータパケットの宛先IPアドレスをループバックアドレスから通信相手のIPアドレスに書き換える。
また、アドレス変換部A1312zは、外部の通信相手ノードから受信したデータパケットの送信元アドレスを元に暗号化通信路設定テーブルA132zを参照し、その送信元アドレスを暗号化通信路設定テーブルA132zにおいて対応付けられているループバックアドレスに変換する機能を有する。
次に暗号化通信路設定テーブルA132zについて説明する。暗号化通信路設定テーブルA132zには、通信相手識別情報の書き換えルールと、その通信相手識別情報に対応付けられた通信相手との通信に使用すべき暗号化通信路設定情報が登録される。なお、前記書き換えルールは、リダイレクトテーブルA142zと同一のものが登録されている。図20のテーブル1102に暗号化通信路設定テーブルA132zの例を示す。テーブル1102において、通信相手識別情報はデータパケットの宛先IPアドレスであり、書き換えルールとして宛先アドレスをループバックアドレスから通信相手のIPアドレスへ変更するべきことが登録されている(通信相手IPアドレスとルールバックアドレスの組)。暗号化通信路設定テーブルA132zに登録される暗号化通信路設定情報の具体例としては通信プロトコル(例えばIPSecやSSL(Secure Socket Layer)、TLS(Transport Layer Security)等)と電子証明書ID(電子証明書とは自身の存在を証明するための電子的な証明書であり、例えば、ITU-T(International Telecommunication Union-Telecommunication Standardization Sector)勧告のX.509等が挙げられる。本説明において電子証明書のIDとは、アプリケーションA11xがセッションで利用すべき電子証明書を選択するために利用する識別子を意味する)、暗号化アルゴリズム(例えばDES(Data Encryption Standard)や3DES(triple-DES)、AES(Advanced Encryption Standard)等)などが挙げられる。
次に、通信暗号化モジュールA13zが暗号化通信路設定テーブルA132zとして図20に示したテーブル1102を保持しているケースを想定し、通信暗号化部A131zが宛先アドレス127.1.1.1のデータパケットを受け取った場合の通信暗号化処理の例を説明する。
アドレス変換部A1321zは、データパケットを受信すると、データパケットを暗号・復号化処理部A1311zに渡す。暗号・復号化処理部A1311zは、暗号化通信路設定テーブルA132zを参照して、宛先アドレス127.1.1.1に該当するエントリを把握する。この場合、テーブル101の2番目のエントリが該当し、その結果、通信に利用する暗号化通信路の設定情報として、通信プロトコル:SSL、電子証明書ID:10、暗号化アルゴリズム:3DESを取得する。暗号・復号化処理部A1311zは、アプリケーションA11xから受信したデータパケットを前記暗号化通信路の設定情報に従って、SSLプロトコルで定められた手順により3DESアルゴリズムで暗号化した後、アドレス変換部A1312zに渡す。アドレス変換部A1312zも同様に暗号化通信路設定テーブルA132zを参照して、宛先アドレス127.1.1.1に該当するエントリを引き、通信相手のIPアドレスを把握する。この場合、通信相手のIPアドレスとして133.11.64.24が把握され、アドレス変換部A1312zは宛先アドレスを127.1.1.1から133.11.64.24に書き換えた後、送信する。
また、IPアドレス133.11.64.24の外部ノードから3DESアルゴリズムで暗号化されたデータパケットをSSLプロトコルにより受信した場合は、暗号化処理の場合と同様に暗号化通信路設定テーブルA132zを参照し、暗号・復号化処理部A1311zにおいて復号化を行った後、アドレス変換部A1312zにおいて宛先アドレスを133.11.64.24から127.1.1.1に書き換えた後、アプリケーションA11xに送信する。
なお、以上の例では、暗号・復号化処理を行った後にアドレス変換を行う動作例を説明したが、これとは逆にアドレス変換を行った後に暗号・復号化処理を行うことも可能である。また、アドレス変換と暗号・復号化処理を同時並行に行うことも可能である。
次に本実施例においてアプリケーションA11xが外部通信相手ノードと通信を行う際のクライアントノードA1zの動作について、図21を参照して詳細に説明する。
アプリケーションA11xが通信相手ノード宛にデータパケットを送信すると、データパケットは、データ送受信部A14zにインターセプトされる(ステップS1001)。リダイレクト部A141zは、インターセプトしたデータパケットの宛先IPアドレスを元に、リダイレクトテーブルA142zを参照し、その宛先IPアドレスが、暗号化通信対象ノード宛であるか通常通信対象ノード宛であるかを判断する(ステップS1002)。通常通信対象ノード宛である場合には、データパケットはそのまま通常通信対象ノードに送信される(ステップS1006)。暗号化通信対象ノード宛である場合には、リダイレクトテーブルA142zに登録されている通信相手識別情報の書き換えルールに基づいて通信相手識別情報の書き換えを行い、書き換えを行った後、宛先IPアドレスをループバックアドレスに指定して、通信暗号化モジュールにリダイレクトする(ステップS1003)。
通信暗号化モジュールA131zがリダイレクトされたデータパケットを受け取ると、暗号・復号化処理部A1311zがデータパケットの通信相手識別情報を元に暗号化通信路設定テーブルA132zを参照し、その通信相手識別情報に該当する暗号化通信路設定情報を把握し、設定情報に従ってデータパケットを暗号化する(ステップS1004)。その後、アドレス変換部A1312zが、データパケットの通信相手識別情報を元に暗号化通信路設定テーブルA132zを参照し、登録されている書き換えルールに従って、前記通信相手識別情報をアプリケーションA11xがデータパケットを送信した時点のものに書き換える。また、受け取ったデータパケットの宛先IPアドレスをループバックアドレスから通信相手のIPアドレスに変更する(ステップS1005)。その後、アドレス変換部A1312zは、データパケットを通信相手に送信する(ステップS1006)。
なお、以上の説明では通信暗号化を通信暗号化モジュールのみで行う構成について説明したが、本実施例において、本発明の第二の実施例と同様に、通信暗号化モジュールによる通信暗号化機能とOSのカーネル部のデータ送受信部によって提供される通信暗号化機能を併用することも可能である。
次に本実施例の効果について説明する。本実施例では、リダイレクト部A141zが、データ送受信部A14zのインターセプトしたデータパケットを通信暗号化モジュールへリダイレクトする際に、データパケットの通信相手識別情報をデータパケットの宛先IPアドレス(すなわちアプリケーションA11xの通信相手のIPアドレス)に応じて書き換える。このため、データパケットのリダイレクトを受けた通信暗号化モジュールは、受け取ったデータパケットの通信相手識別情報に基づいてデータパケットを送信すべき通信相手を識別し、その通信相手との通信に利用すべき暗号化通信路を識別することが可能となる。したがって、クライアントノードA1は複数の通信相手と同時に直接暗号化通信を行うことが出来る。
また、アプリケーションA11xは、ループバックアドレス宛ではなく、通信相手のIPアドレス宛にデータパケットを送信することができる。これにより、アプリケーションにおいて通信の記録をとる場合、通信相手のIPアドレスとして、第1の実施例では、実際の相手のIPアドレスとは異なる、ループバックアドレスが記録されてしまうのに対し、本実施例では、実際の相手のIPアドレスが記録されるため、ログレベルでの矛盾が起こらないという効果がある。
次に本発明の第六の実施例について図面を参照して詳細に説明する。
図22を参照すると、本発明の第六の実施例は、クライアントノードA1αとDNSサーバB1aと暗号化通信対象ノードC1と通常通信対象ノードD1とによって実現され、クライアントノードA1αと暗号化通信対象ノードC1と通常通信対象ノードD1はネットワークE1を介して接続されている。またクライアントノードA1αは、アプリケーションA11xとDNS Proxy部A12αと通信暗号化モジュールA13αとデータ送受信部A14αとを含む。すなわち、本実施例は、本発明の第五の実施例の構成にDNSサーバB1aとDNS Proxy部A12αとを加えた構成を有する。
アプリケーションA11xは、Webブラウザや電子メールソフトや、ビデオ会議ソフトなどコンピュータを使って、それぞれの目的を実現するためのソフトウェアである。
データ送受信部A14αは、クライアントノードA1αのOSのカーネル部に存在し、データパケットの送受信処理を行う。アプリケーションA11xが送信した全てのデータパケットはデータ送受信部A14αに一旦インターセプトされ、このうち、暗号化通信対象ノード宛てのデータパケットは通信暗号化モジュールA13αにリダイレクトされ、通常通信対象ノード宛てのデータパケットはそのまま通常通信対象ノードに送信される。このデータ送受信部A14αは、リダイレクト部A141αとリダイレクトテーブルA142αとを含む。リダイレクト部A141αは、第五の実施例におけるリダイレクト部A141zと同様の機能を有し、リダイレクトテーブルA142αは、第五の実施例におけるリダイレクトテーブルA142zと同様の構成を有し、例えば図19に示したテーブル1101のような構成を有する。
通信暗号化モジュールA13αは、アプリケーションA11xと暗号化通信対象ノードC1との通信の暗号化を行う機能を有する。通信暗号化モジュールA13αは、通信暗号化部A131αと暗号化通信路設定テーブルA132αとを含み、通信暗号化部A131αは、暗号・復号化処理部A1311αとアドレス変換部A1312αとを含む。通信暗号化部A131αは、第五の実施例における通信暗号化部A131zと同様の機能を有し、暗号化通信路設定テーブルA132αは、第五の実施例における暗号化通信路設定テーブルA132zと同様の構成を有し、例えば図20に示したテーブル1102のような構成を有する。
DNS Proxy部Α12αは、DNSクエリ・応答送受信部Α121αと、通信方式解決部Α122αと、名前解決部Α123αと、DNSサーバアドレス設定テーブルΑ124αと、CUG設定テーブルΑ125αとを含む。このDNS Proxy部Α12αは、アプリケーションΑ11xによる名前解決要求を受けてアプリケーションΑ11xの通信相手のIPアドレスを解決すると共に、通信相手のノード種別を判断し、通信相手が暗号化通信対象ノードである場合には、通信相手のIPアドレスをループバックアドレスにマッピングし、そのマッピング関係を暗号化通信路設定テーブルA132α及びリダイレクトテーブルA142αに登録する。なお、本発明の第一の実施例とは異なり、アプリケーションA11xに対しては、マッピングしたループバックアドレスではなく、通信相手のIPアドレスをそのまま名前解決結果として回答する。
以下、DNS Proxy部Α12αの構成について説明する。
まずDNSクエリ・応答送受信部Α121αについて説明する。DNSクエリ・応答送受信部Α121αは、アプリケーションΑ11xからDNSクエリメッセージを受信すると、DNSサーバアドレス設定テーブルΑ124αに登録されている外部DNSサーバB1aに対してDNSクエリメッセージを送信する。また、DNSクエリメッセージの応答として、外部DNSサーバB1aからDNSレスポンスメッセージを受信すると、DNSレスポンスメッセージに含まれる名前解決結果を通信方式解決部Α122αに渡す。以上の機能は、本発明の第一の実施例におけるDNSクエリ・応答送受信部A121aと同様であるが、名前解決結果をアプリケーションA11xに回答する機能は、本発明の第一の実施例におけるDNSクエリ・応答送受信部A121aと異なる。すなわち、本実施例におけるDNSクエリ・応答送受信部A121αは、通信相手の種別によらず、外部DNSサーバB1aにて解決された通信相手のIPアドレスをそのまま、名前解決結果としてアプリケーションA11xに回答する。
通信方式解決部Α122αは、本発明の第一の実施例における通信方式解決部A122aと同様の機能を有する。
次に暗号化通信路設定部Α123αについて説明する。暗号化通信路設定部Α123αは、通信方式解決部Α122αから渡された名前解決結果に含まれるアプリケーションΑ11xの通信相手のIPアドレスを、ループバックアドレスへマッピングする機能を有する。なお、暗号化通信路設定部Α123αは、本発明の第一の実施例における暗号化通信路設定部A123aとは異なり、マッピングしたループバックアドレスのDNSクエリ・応答送受信部A121αへの通知は行わない。マッピングするループバックアドレスは、暗号化通信路設定テーブルΑ132αを参照し、他の通信セッションで使用されていないものを選択する。選択したループバックアドレスと通信方式解決部Α122αから渡された名前解決結果との対応関係はリダイレクトテーブルA142α及び暗号化通信路設定テーブルΑ132αに登録し、暗号化通信路設定テーブルΑ132αにはさらに、通信方式解決部Α122αから渡された暗号化通信路設定情報を登録する。
DNSサーバアドレス設定テーブルΑ124α及び、CUG設定テーブルΑ125αには、本発明の第一の実施例における該当各モジュールと同様の情報が登録されており、本発明の第一の実施例における該当各モジュールと同様の形で参照される。
以上がDNS Proxy部Α12αの構成である。
次に本実施例においてアプリケーションA11xが外部通信相手ノードと通信を行う際のクライアントノードA1αの動作について説明する。
クライアントノードA1αの動作は、アプリケーションA11xが通信相手のドメイン名に対する名前解決要求を行った際の動作と、通信相手に対してデータパケットを送信した際の動作に、大きく分けられる。
まず、アプリケーションA11xが名前解決要求を行う際のクライアントノードA1αの動作について説明する。
アプリケーションA11xは、ループバックアドレス宛(例えば127.0.0.1)に、DNSクエリメッセージを送信し、通信相手の名前解決を要求する。アプリケーションA11xが送信したDNSクエリメッセージは、DNS Proxy部A12α(具体的にはDNS Proxy部A12α内部のDNSクエリ・応答送受信部A121α)が受信する。その後の処理はDNS Proxy部A12αで行われる。
図23を参照して、DNS Proxy部A12αがアプリケーションA11xからDNSクエリメッセージを受信した際の動作について説明する。
アプリケーションA11xからDNSクエリメッセージを受信すると(ステップS1101)、DNSクエリ・応答送受信部A121αは、DNSサーバアドレス設定テーブルA124αに登録されている外部DNSサーバB1aに、受信したDNSクエリメッセージを転送し(ステップS1102)、応答としてDNSサーバB1aからDNSレスポンスメッセージを受信する(ステップS1103)。
DNSクエリ応答送受信部A121αは、受信したDNSレスポンスメッセージから名前解決結果を取り出し、通信方式解決部A122αに渡す。
通信方式解決部A122αは、渡された名前解決結果を元に、CUG設定テーブルA125αを参照して、通信相手の種別(暗号化通信対象ノード、通常通信対象ノードのどちらであるか)を判断する(ステップS1104)。また、通信相手が暗号化通信対象ノードである場合には、CUG設定テーブルA125αに登録されている暗号化通信路設定情報を把握する。
まず、通信相手が通常通信対象ノードである場合について説明する。この場合、通信方式解決部A122αからDNSクエリ・応答送受信部A121αに判断結果が通知され、DNSクエリ・応答送受信部A121αが、DNSサーバB1aから受信したDNSレスポンスメッセージをアプリケーションA11xに転送する(ステップS1106)。
アプリケーションA11xは、DNSレスポンスメッセージを受信すると、受信したDNSレスポンスメッセージにより通知された通信相手のIPアドレス宛に直接データパケットを送信する。データパケットは、カーネル部のリダイレクト部A141αにインターセプトされ、リダイレクトテーブルの登録情報に基づき、通常通信対象端末宛と判断される。この結果、アプリケーションA11xが送信したデータパケットは通信暗号化モジュールを経由せずに通信相手に直接送信され、通信相手とは通常の通信が行われることになる。
次に、通信相手が暗号化通信対象ノードである場合について説明する。この場合、通信方式解決部A122αは、DNSクエリ・応答送受信部A121αから渡された名前解決結果と、前記で把握した暗号化通信路設定情報を暗号化通信路設定部A123αに渡す。暗号化通信路設定部A123αは名前解決結果を受け取ると、暗号化通信路設定テーブルA132αを参照し、アプリケーションA11xの通信相手のIPアドレスを、他の通信セッションで使用されていないループバックアドレスへマッピングする。暗号化通信路設定部A123αは、ループバックアドレスと、通信方式解決部A122αから渡された名前解決結果の対応関係をリダイレクトテーブルA142α及び暗号化通信路設定テーブルA132αへ登録する。さらに、暗号化通信路設定テーブルには暗号化通信路設定情報を登録する(ステップS1105)。
本実施例では本発明の第一の実施例とは異なり、 DNSクエリ・応答送受信部A121αは通信相手の種別によらず、DNSサーバB1aが解決した通信相手のIPアドレスを名前解決結果としてそのまま、アプリケーションA11xに応答する(ステップS1106)。
アプリケーションA11xは、DNSレスポンスメッセージを受信すると、通信相手のIPアドレス宛に直接データパケットを送信する。データパケットは、カーネル部のリダイレクト部A141αにインターセプトされ、リダイレクトテーブルの登録情報に基づき、暗号化通信対象ノード宛と判断され、通信暗号化モジュール経由で転送される。
以上が、アプリケーションA11xが名前解決要求を行った際のクライアントノードA1αの動作である。
アプリケーションA11xが通信相手に対してデータパケットを送信した場合の動作は、第五の実施例と同様であり、図21に示されるような動作となる。
なお、以上の説明では通信暗号化を通信暗号化モジュールのみで行う構成について説明したが、本実施例において、本発明の第二の実施例と同様に、通信暗号化モジュールによる通信暗号化機能とOSのカーネル部のデータ送受信部によって提供される通信暗号化機能を併用することも可能である。
また、以上の説明では通信相手のノード種別と、通信相手が暗号化通信対象端末であった場合にその通信相手との通信に利用する暗号化通信路設定情報の解決をクライアントノードA1aの内部で行う構成について説明したが、本実施例において、本発明の第三の実施例と同様に、上記解決をDNSサーバB1aで行う構成を採ることも可能である。この場合、DNSサーバB1aの構成は、本発明の第三の実施例の説明における図11に示したDNSサーバB1bと同様の構成を採る。また、クライアントノードF1α内部のDNS Proxy部A12αは、図17に示したDNS Proxy部F12dと同様にDNSクエリ・応答送受信部と暗号化通信路設定部とDNSサーバアドレス設定テーブルとで構成され、DNSクエリ・応答送受信部は、アプリケーションが他のノード装置のIPアドレスを解決するために送信した名前解決クエリを名前解決サーバに送信し、他のノード装置が暗号化通信対象ノードかどうかの判定結果と暗号化通信路設定情報と他のノード装置のIPアドレスとを含む名前解決応答を名前解決サーバから受信し、名前解決応答に含まれる他のノード装置のIPアドレスを名前解決応答としてアプリケーションに送信する。また、暗号化通信路設定部は、他のノード装置が暗号化通信対象ノードである場合に、他のノード装置のIPアドレスと他の通信セッションで使用されていない通信相手識別情報と前記暗号化通信路設定情報との対応を暗号化通信路設定テーブルに登録するとともに、暗号化通信対象ノードのIPアドレスと他の通信セッションで使用されていない通信相手識別情報の書き換えルールとの対応をリダイレクトテーブルに登録する。
さらに、以上の説明では、クライアントノード内部において、
(1)通信相手のノード種別および、通信相手が暗号化通信対象ノードである場合における該通信相手との通信に用いる暗号化通信路の設定情報の解決
(2)暗号化通信対象ノードと通信を行う際の通信の暗号化・復号化処理
を行う構成について説明したが、本実施例において、本発明の第四の実施例と同様に、上記処理をクライアントノード外部の通信暗号化ノードによって処理することも可能である。この場合、クライアントノードは、本発明の第四の実施例におけるクライアントノードA1gと同様の構成をとる。また、通信暗号化ノードは図24に示す通信暗号化ノードF1αに示す如き構成をとる。
図24に示す通信暗号化ノードF1αは、独立したプロセスとして動作する通信暗号化モジュールA13αと、カーネル部に設けられたデータ送受信部A14αと、クライアントノードのアプリケーションが他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部A12αとを備える。
データ送受信部A14αは、インターセプト用アドレスとループバックアドレスとの対応を保持するリダイレクトテーブルA142αと、クライアントノードのアプリケーションより送信された宛先アドレスにインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたインターセプト用アドレスに対応するループバックアドレスをリダイレクトテーブルA142αから読み出し、前記データパケットの宛先アドレスを前記読み出したループバックアドレスに書き換えることにより前記データパケットを前記通信暗号化モジュールA13αにリダイレクトするリダイレクト部A141αとを備える。
通信暗号化モジュールA13αは、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルA132αと、データ送受信部A14αよりリダイレクトされた前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を暗号化通信路設定テーブルA132αから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを、前記読み出した暗号化通信路設定情報に従って暗号化して送信する通信暗号化部A131αとを備える。
名前解決プロキシ部A12αは、暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持するCUG設定テーブルA125αと、名前解決クエリまたは名前解決応答に含まれる他のノード装置のドメイン名がCUG設定テーブルA125αに保持された何れかのドメイン名条件にマッチするかどうかを判定する通信方式解決部A122αと、前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を暗号化通信路設定テーブルA132αに登録すると共に、当該対応中の前記ループバックアドレスと他の通信セッションで使用されていないインターセプト用アドレスとの対応をリダイレクトテーブルA142αに登録する暗号化通信路設定部A123αと、名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記インターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部A121αとを備える。
また、通信暗号化ノードが図24に示す通信暗号化ノードF1αに示す如き構成をとる場合も、本発明の第三の実施例と同様に、上記(1)の解決をDNSサーバB1bで行う構成をとることも可能である。この場合、DNSサーバの構成は、本発明の第三の実施例の説明における図11に示したDNSサーバB1bと同様の構成を採る。また、クライアントノードF1α内部のDNS Proxy部A12αは、図17に示したDNS Proxy部F12dと同様にDNSクエリ・応答送受信部と暗号化通信路設定部とDNSサーバアドレス設定テーブルとで構成され、DNSクエリ・応答送受信部は、アプリケーションが他のノード装置のIPアドレスを解決するために送信した名前解決クエリを名前解決サーバに送信し、他のノード装置が暗号化通信対象ノードかどうかの判定結果と暗号化通信路設定情報と他のノード装置のIPアドレスとを含む名前解決応答を名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードである場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないインターセプト用アドレスとの対応中の前記インターセプト用アドレスに置き換えた名前解決応答を前記クライアントノード装置に送信する。また、暗号化通信路設定部は、前記他のノード装置が暗号化通信対象ノードである場合に、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない通信相手識別情報との対応を前記暗号化通信路設定テーブルに登録するとともに、前記他の通信セッションで使用されていない通信相手識別情報への書き換えルールと他の通信セッションで使用されていないインターセプト用アドレスとの対応を前記リダイレクトテーブルに登録する。
次に本実施例の効果について説明する。本実施例では、第六の実施例と同様の効果が得られるとともに、DNSメッセージをインターセプトして通信相手の種別を判断するため、通信相手の種別をドメイン名により判断することが可能であり、暗号化通信対象ノードの識別情報をドメイン名によって指定することが可能になる。
以上本発明の実施例について説明したが、本発明は以上の実施例にのみ限定されず、その他各種の付加変更が可能である。また、本発明のクライアントノード装置、通信暗号化ノード装置、名前解決サーバは、その有する機能をハードウェア的に実現することは勿論、コンピュータとプログラムとで実現することができる。プログラムは、磁気ディスクや半導体メモリ等のコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られ、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施例におけるクライアントノード装置、通信暗号化ノード装置、名前解決サーバとして機能させる。

Claims (184)

  1. ネットワークに接続された他のノード装置と暗号化通信を行うアプリケーションが、自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスが宛先アドレスに設定されたデータパケットを送信するステップaと、
    独立したプロセスとして動作する通信暗号化モジュールが、前記アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、通信相手IPアドレスとループバックアドレスとの対応を複数保持する第1の暗号化通信路設定テーブルから、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレスを読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記データパケットを暗号化して送信するステップbと
    を備えることを特徴とする暗号化通信方法。
  2. 請求項1に記載の暗号化通信方法において、
    通信方式解決部が、前記アプリケーションが前記他のノードのIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答の何れかに含まれるドメイン名に基づいて、前記他のノード装置が暗号化通信対象ノードかどうかを判定するステップcと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録するステップdと、
    名前解決クエリ・応答送受信部が、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信するステップeと
    を更に備え、この後に前記ステップa、bを行なうことを特徴とする暗号化通信方法。
  3. 請求項2に記載の暗号化通信方法において、
    前記ステップc、d、eの処理が前記アプリケーションが動作するノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  4. 請求項2に記載の暗号化通信方法において、
    前記ステップcの処理が名前解決サーバで実行され、前記ステップd、eの処理が前記アプリケーションが動作するノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  5. 請求項2に記載の暗号化通信方法において、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする暗号化通信方法。
  6. 請求項1に記載の暗号化通信方法において、
    通信方式解決部が、前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定するステップcと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録するステップdと、
    名前解決クエリ・応答送受信部が、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信するステップeと
    を更に備え、この後に前記ステップa、bを行なうことを特徴とする暗号化通信方法。
  7. 請求項6に記載の暗号化通信方法において、
    前記ステップc、d、eの処理が前記アプリケーションが動作するノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  8. 請求項6に記載の暗号化通信方法において、
    前記ステップcの処理が名前解決サーバで実行され、前記ステップd、eの処理が前記アプリケーションが動作するノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  9. 請求項1に記載の暗号化通信方法において、
    前記アプリケーションが、宛先アドレスに前記他のノードのIPアドレスが設定されたデータパケットを送信するステップfと、
    カーネル部に設けられたデータ送受信部が、前記アプリケーションより送信された宛先アドレスに前記他のノードのIPアドレスが設定されたデータパケットを受信し、通信相手IPアドレスを保持する第2の暗号化通信路設定テーブルに前記データパケットの宛先アドレスに設定された通信相手IPアドレスが登録されていた場合、前記データパケットを暗号化して送信するステップgと
    を更に備えることを特徴とする暗号化通信方法。
  10. 請求項9に記載の暗号化通信方法において、
    通信方式解決部が、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答に含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定するステップcと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記第2の暗号化通信路設定テーブルに登録するステップdと、
    名前解決クエリ・応答送受信部が、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信し、それ以外の場合には前記他のノード装置のIPアドレスを含む名前解決応答を前記アプリケーションに送信するステップeと
    を更に備え、この後に前記ステップa、b及び前記ステップf、gの何れかを行なうことを特徴とする暗号化通信方法。
  11. 請求項10に記載の暗号化通信方法において、
    前記ステップc、d、eの処理が前記アプリケーションが動作するノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  12. 請求項10に記載の暗号化通信方法において、
    前記ステップcの処理が名前解決サーバで実行され、前記ステップd、eの処理が前記アプリケーションが動作するノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  13. 請求項10に記載の暗号化通信方法において、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする暗号化通信方法。
  14. 請求項10に記載の暗号化通信方法において、
    通信方式解決部が、前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定するステップcと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記第2の暗号化通信路設定テーブルに登録するステップdと、
    名前解決クエリ・応答送受信部が、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信し、それ以外の場合には前記他のノード装置のIPアドレスを含む名前解決応答を前記アプリケーションに送信するステップeと
    を更に備え、この後に前記ステップa、b及び前記ステップf、gの何れかを行なうことを特徴とする暗号化通信方法。
  15. 請求項14に記載の暗号化通信方法において、
    前記ステップc、d、eの処理が前記アプリケーションが動作するノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  16. 請求項14に記載の暗号化通信方法において、
    前記ステップcの処理が名前解決サーバで実行され、前記ステップd、eの処理が前記アプリケーションが動作するノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  17. ネットワークに接続された他のノード装置と暗号化通信を行うクライアントノード上のアプリケーションが、宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを送信するステップaと、
    通信暗号化ノードに設けられ独立したプロセスとして動作する通信暗号化モジュールが、前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、通信相手IPアドレスと第1のインターセプト用アドレスとの対応を複数保持する第1の暗号化通信路設定テーブルから、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレスを読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信するステップbと
    を備えることを特徴とする暗号化通信方法。
  18. 請求項17に記載の暗号化通信方法において、
    通信方式解決部が、前記アプリケーションが前記他のノードのIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答の何れかに含まれるドメイン名に基づいて、前記他のノード装置が暗号化通信対象ノードかどうかを判定するステップcと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録するステップdと、
    名前解決クエリ・応答送受信部が、前記名前解決応答に含まれる前記他のノード装置のIPアドレスに対応する第1のインターセプト用アドレスを名前解決応答として前記アプリケーションに送信するステップeと
    を更に備え、この後に前記ステップa、bを行なうことを特徴とする暗号化通信方法。
  19. 請求項18に記載の暗号化通信方法において、
    前記ステップc、d、eの処理が前記通信暗号化ノードに設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  20. 請求項18に記載の暗号化通信方法において、
    前記ステップcの処理が名前解決サーバで実行され、前記ステップd、eの処理が前記通信暗号化ノードに設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  21. 請求項18に記載の暗号化通信方法において、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする暗号化通信方法。
  22. 請求項17に記載の暗号化通信方法において、
    通信方式解決部が、前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定するステップcと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録するステップdと、
    名前解決クエリ・応答送受信部が、前記名前解決応答に含まれる前記他のノード装置のIPアドレスに対応する第1のインターセプト用アドレスを名前解決応答として前記アプリケーションに送信するステップeと
    を更に備え、この後に前記ステップa、bを行なうことを特徴とする暗号化通信方法。
  23. 請求項22に記載の暗号化通信方法において、
    前記ステップc、d、eの処理が前記通信暗号化ノードに設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  24. 請求項22に記載の暗号化通信方法において、
    前記ステップcの処理が名前解決サーバで実行され、前記ステップd、eの処理が前記通信暗号化ノードに設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  25. 請求項17に記載の暗号化通信方法において、
    前記アプリケーションが、宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを送信するステップfと、
    前記通信暗号化ノードのカーネル部に設けられたデータ送受信部が、前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、通信相手IPアドレスと第2のインターセプト用アドレスとの対応を複数を保持する第2の暗号化通信路設定テーブルから、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレスを読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信するステップgと
    を更に備えることを特徴とする暗号化通信方法。
  26. 請求項25に記載の暗号化通信方法において、
    通信方式解決部が、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答に含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定するステップcと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録するステップdと、
    名前解決クエリ・応答送受信部が、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信するステップeと
    を更に備え、この後に前記ステップa、b及び前記ステップf、gの何れかを行なうことを特徴とする暗号化通信方法。
  27. 請求項26に記載の暗号化通信方法において、
    前記ステップc、d、eの処理が前記通信暗号化ノードに設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  28. 請求項26に記載の暗号化通信方法において、
    前記ステップcの処理が名前解決サーバで実行され、前記ステップd、eの処理が前記通信暗号化ノードに設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  29. 請求項26に記載の暗号化通信方法において、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする暗号化通信方法。
  30. 請求項25に記載の暗号化通信方法において、
    通信方式解決部が、前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定するステップcと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録するステップdと、
    名前解決クエリ・応答送受信部が、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信するステップeと
    を更に備え、この後に前記ステップa、b及び前記ステップf、gの何れかを行なうことを特徴とする暗号化通信方法。
  31. 請求項30に記載の暗号化通信方法において、
    前記ステップc、d、eの処理が前記通信暗号化ノードに設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  32. 請求項30に記載の暗号化通信方法において、
    前記ステップcの処理が名前解決サーバで実行され、前記ステップd、eの処理が前記通信暗号化ノードに設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  33. ネットワークに接続された他のノード装置と暗号化通信を行うアプリケーションが、宛先アドレスに前記他のノード装置のIPアドレスが設定されたデータパケットを送信するステップaと、
    カーネル部のデータ送受信部に設けられたリダイレクト部が、前記アプリケーションから他のノード装置宛に送信された前記データパケットをインターセプトし、暗号化対象とするデータパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを保持するリダイレクトテーブルを参照し、前記リダイレクトテーブルに保持された判断基準に基づいて当該データパケットが暗号化対象となるデータパケットかどうかを判断し、暗号化対象となるデータパケットの場合には前記書き換えルールに従ってデータパケットの所定の情報を書き換えて前記データパケットを通信暗号化モジュールにリダイレクトするステップbと、
    前記通信暗号化モジュールが、前記データ送受信部よりリダイレクトされる前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を記憶する暗号化通信路設定テーブルを参照して、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報を書き換え前記他のノード装置の宛先IPアドレスを設定した前記データパケットを前記他のノード装置に暗号化して送信するステップcと
    を備えることを特徴とする暗号化通信方法。
  34. 請求項33に記載の暗号化通信方法において、
    通信方式解決部が、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答の何れかに含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定するステップdと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードである場合に、暗号化対象とする前記データパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを前記リダイレクトテーブルに登録すると共に、前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を前記暗号化通信路設定テーブルに登録するステップeと
    を更に備え、この後に前記ステップa、b、cを行なうことを特徴とする暗号化通信方法。
  35. 請求項34に記載の暗号化通信方法において、
    前記通信相手識別情報は、通信の宛先IPアドレス、通信の宛先ポート番号、通信の送信元ポート番号及び通信の送信元IPアドレスのうちの少なくとも1つあることを特徴とする暗号化通信方法。
  36. 請求項34に記載の暗号化通信方法において、
    前記ステップd、eの処理が前記アプリケーションが動作するノード装置(A1α)に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  37. 請求項34に記載の暗号化通信方法において、
    前記ステップdの処理が名前解決サーバで実行され、前記ステップeの処理が前記アプリケーションが動作するノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  38. 請求項34に記載の暗号化通信方法において、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする暗号化通信方法。
  39. 請求項33に記載の暗号化通信方法において、
    通信方式解決部が、前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定するステップdと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードである場合に、暗号化対象とする前記データパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを前記リダイレクトテーブルに登録すると共に、前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を前記暗号化通信路設定テーブルに登録するステップeと
    を更に備え、この後に前記ステップa、b、cを行なうことを特徴とする暗号化通信方法。
  40. 請求項39に記載の暗号化通信方法において、
    前記通信相手識別情報は、通信の宛先IPアドレス、通信の宛先ポート番号、通信の送信元ポート番号及び通信の送信元IPアドレスのうちの少なくとも1つあることを特徴とする暗号化通信方法。
  41. 請求項39に記載の暗号化通信方法において、
    前記ステップd、eの処理が前記アプリケーションが動作するノード装置(A1α)に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  42. 請求項39に記載の暗号化通信方法において、
    前記ステップdの処理が名前解決サーバで実行され、前記ステップeの処理が前記アプリケーションが動作するノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  43. ネットワークに接続された他のノード装置と暗号化通信を行うクライアントノード上のアプリケーションが、宛先アドレスに前記他のノード装置のIPアドレスに対応するインターセプト用アドレスが設定されたデータパケットを送信するステップaと、
    通信暗号化ノードにおけるカーネル部のデータ送受信部に設けられたリダイレクト部が、前記アプリケーションから送信された前記データパケットをインターセプトし、暗号化対象とするデータパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを保持するリダイレクトテーブルを参照し、前記リダイレクトテーブルに保持された判断基準に基づいて当該データパケットが暗号化対象となるデータパケットかどうかを判断し、暗号化対象となるデータパケットの場合には前記書き換えルールに従ってデータパケットの所定の情報を書き換えて前記データパケットを前記通信暗号化ノードに設けられた通信暗号化モジュールにリダイレクトするステップbと、
    前記通信暗号化モジュールが、前記データ送受信部よりリダイレクトされる前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を記憶する暗号化通信路設定テーブルを参照して、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報を書き換え前記他のノード装置の宛先IPアドレスを設定した前記データパケットを前記他のノード装置に暗号化して送信するステップcと
    を備えることを特徴とする暗号化通信方法。
  44. 請求項43に記載の暗号化通信方法において、
    通信方式解決部が、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答の何れかに含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定するステップdと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードである場合に、暗号化対象とする前記データパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを前記リダイレクトテーブルに登録すると共に、前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を前記暗号化通信路設定テーブルに登録するステップeと
    を更に備え、この後に前記ステップa、b、cを行なうことを特徴とする暗号化通信方法。
  45. 請求項44に記載の暗号化通信方法において、
    前記通信相手識別情報は、通信の宛先IPアドレス、通信の宛先ポート番号、通信の送信元ポート番号及び通信の送信元IPアドレスのうちの少なくとも1つあることを特徴とする暗号化通信方法。
  46. 請求項44に記載の暗号化通信方法において、
    前記ステップd、eの処理が前記通信暗号化ノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  47. 請求項44に記載の暗号化通信方法において、
    前記ステップdの処理が名前解決サーバで実行され、前記ステップeの処理が前記通信暗号化ノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  48. 請求項44に記載の暗号化通信方法において、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする暗号化通信方法。
  49. 請求項43に記載の暗号化通信方法において、
    通信方式解決部が、前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定するステップdと、
    暗号化通信路設定部が、前記他のノード装置が暗号化通信対象ノードである場合に、暗号化対象とする前記データパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを前記リダイレクトテーブルに登録すると共に、前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を前記暗号化通信路設定テーブルに登録するステップeと
    を更に備え、この後に前記ステップa、b、cを行なうことを特徴とする暗号化通信方法。
  50. 請求項49に記載の暗号化通信方法において、
    前記通信相手識別情報は、通信の宛先IPアドレス、通信の宛先ポート番号、通信の送信元ポート番号及び通信の送信元IPアドレスのうちの少なくとも1つあることを特徴とする暗号化通信方法。
  51. 請求項49に記載の暗号化通信方法において、
    前記ステップd、eの処理が前記通信暗号化ノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  52. 請求項49に記載の暗号化通信方法において、
    前記ステップdの処理が名前解決サーバで実行され、前記ステップeの処理が前記通信暗号化ノード装置に設けられた名前解決プロキシ部で実行されることを特徴とする暗号化通信方法。
  53. ネットワークに接続された他のノード装置と通信を行うアプリケーションと、
    独立したプロセスとして動作する通信暗号化モジュールとを備え、
    前記通信暗号化モジュールは、
    通信相手IPアドレスと自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスとの対応を保持する第1の暗号化通信路設定テーブルと、
    前記アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレスを前記第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記データパケットを暗号化して送信する第1の通信暗号化部と
    を備えることを特徴とするノード装置。
  54. 請求項53記載のノード装置において、
    前記第1の暗号化通信路設定テーブルは、前記通信相手IPアドレスと前記ループバックアドレスとの対応を複数保持することを特徴とするノード装置。
  55. 請求項54記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答の何れかに含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決部と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と
    を更に備えることを特徴とするノード装置。
  56. 請求項54記載のノード装置において、
    前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決部と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と
    を更に備えることを特徴とするノード装置。
  57. 請求項53記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記ループバックアドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記ループバックアドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とするノード装置。
  58. 請求項53記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記ループバックアドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記ループバックアドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とするノード装置。
  59. 請求項53記載のノード装置において、
    カーネル部に設けられたデータ送受信部を更に備え、
    前記データ送受信部は、
    通信相手IPアドレスを保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが前記第2の暗号化通信路設定テーブルに登録されていた場合に前記データパケットを暗号化して送信する第2の通信暗号化部とを備えることを特徴とするノード装置。
  60. 請求項59記載のノード装置において、
    前記第1の暗号化通信路設定テーブルは、前記通信相手IPアドレスと前記ループバックアドレスとの対応を複数保持することを特徴とするノード装置。
  61. 請求項60記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答に含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とするノード装置。
  62. 請求項60記載のノード装置において、
    前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とするノード装置。
  63. 請求項59記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記ループバックアドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記ループバックアドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記第2の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレスに対応づけて保持し、
    前記第2の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記通信相手IPアドレスに対応する暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部と、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記通信方式解決部において通信の暗号化を前記データ送受信部で行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とするノード装置。
  64. 請求項59記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記ループバックアドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記ループバックアドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記第2の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレスに対応づけて保持し、
    前記第2の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記通信相手IPアドレスに対応する暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部と、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記通信方式解決部において通信の暗号化を前記データ送受信部で行うと判定された場合に前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とするノード装置。
  65. 請求項59記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記名前解決プロキシ部は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と、
    前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの前記対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部とを備えることを特徴とするノード装置。
  66. 請求項53記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記ループバックアドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記ループバックアドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決プロキシ部は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と、
    前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記他のノード装置のIPアドレスと前記暗号化通信路設定情報と他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部とを備えることを特徴とするノード装置。
  67. 請求項54記載のノード装置において、
    カーネル部に設けられたデータ送受信部と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部と更にを備え、
    前記データ送受信部は、
    通信相手IPアドレスを保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが前記第2の暗号化通信路設定テーブルに登録されていた場合に前記データパケットを暗号化して送信する通信暗号化部とを備え、
    前記名前解決プロキシ部は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうか、暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかの判定結果と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部とを備えることを特徴とするノード装置。
  68. 請求項53記載のノード装置において、
    カーネル部に設けられたデータ送受信部と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部と更にを備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記ループバックアドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記ループバックアドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記データ送受信部は、
    通信相手IPアドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが前記第2の暗号化通信路設定テーブルに登録されていた場合に、対応する暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信する第2の通信暗号化部とを備え、
    前記名前解決プロキシ部は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかの判定結果と暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスと前記暗号化通信路設定情報との対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと前記暗号化通信路設定情報との対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部とを備えることを特徴とするノード装置。
  69. 請求項55記載のノード装置において、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とするノード装置。
  70. 請求項61記載のノード装置において、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とするノード装置。
  71. ネットワークに接続された他のノード装置と通信を行うアプリケーションと、
    独立したプロセスとして動作する通信暗号化モジュールと、
    カーネル部に設けられたデータ送受信部とを備え、
    前記データ送受信部は、
    暗号化対象とするデータパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを保持するリダイレクトテーブルと、
    前記アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトし、前記リダイレクトテーブルに保持された判断基準に基づいて当データパケットが暗号化対象となるデータパケットかどうかを判断し、暗号化対象となるデータパケットの場合には前記書き換えルールに従ってデータパケットの所定の情報を書き換えて前記データパケットを前記通信暗号化モジュールにリダイレクトするリダイレクト部とを備え、
    前記通信暗号化モジュールは、
    前記データ送受信部よりリダイレクトされる前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を記憶する暗号化通信路設定テーブルと、
    前記暗号化通信路設定テーブルを参照して、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報を書き換え前記他のノード装置の宛先IPアドレスを設定した前記データパケットを前記他のノード装置に暗号化して送信する通信暗号化部とを備えることを特徴とするノード装置。
  72. 請求項71に記載のノード装置において、
    前記リダイレクトテーブルは、暗号化通信対象ノードのIPアドレスと、自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスとの対応を保持し、
    前記リダイレクト部は、前記インターセプトしたデータパケットの宛先アドレスに設定されたIPアドレスに対応するループバックアドレスが前記リダイレクトテーブルに保持されていた場合に、前記データパケットの宛先アドレスを前記対応するループバックアドレスに書き換えることにより前記データパケットを前記通信暗号化モジュールにリダイレクトし、
    前記暗号化通信路設定テーブルは、通信相手IPアドレスと、ループバックアドレスと、通信相手との通信に利用される暗号化通信路設定情報との対応を保持し、
    前記通信暗号化部は、前記データ送受信部よりリダイレクトされた前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を前記暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信することを特徴とするノード装置。
  73. 請求項71に記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答の何れかに含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決部と、
    前記他のノード装置が暗号化通信対象ノードである場合に、暗号化対象とする前記データパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを前記リダイレクトテーブルに登録すると共に、前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を前記暗号化通信路設定テーブルに登録する暗号化通信路設定部と
    を更に備えることを特徴とするノード装置。
  74. 請求項72に記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記暗号化通信路設定テーブルに登録すると共に、当前記対応中の前記他のノード装置のIPアドレスと前記ループバックアドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とするノード装置。
  75. 請求項72に記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決部と、
    前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記暗号化通信路設定テーブルに登録すると共に、当前記対応中の前記他のノード装置のIPアドレスと前記ループバックアドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とするノード装置。
  76. 請求項72に記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記暗号化通信路設定テーブルに登録すると共に、当該対応中の前記他のノード装置のIPアドレスと前記ループバックアドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とするノード装置。
  77. 請求項71に記載のノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記リダイレクトテーブルは、暗号化通信対象ノードのIPアドレスと前記通信相手識別情報の書き換えルールとの対応を保持し、
    前記リダイレクト部は、前記インターセプトしたデータパケットの宛先IPアドレスと前記リダイレクトテーブルに登録されている暗号化通信対象ノードのIPアドレスとを比較して前記データパケットが暗号化対象か否かを判断し、前記データパケットが暗号化対象である場合には、リダイレクトテーブル上の対応する通信相手識別情報の書き換えルールに従って前記データパケットの通信相手識別情報を書き換えた後、前記データパケットの宛先アドレスを自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスに書き換えて前記通信暗号化モジュールにリダイレクトし、
    前記暗号化通信路設定テーブルは、通信相手IPアドレスと、通信相手識別情報と、通信相手との通信に利用される暗号化通信路設定情報との対応を保持し、
    前記通信暗号化部は、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報に対応する通信相手IPアドレス及び暗号化通信路設定情報を前記暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決プロキシ部は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない通信相手識別情報と前記暗号化通信路設定情報との対応を前記暗号化通信路設定テーブルに登録するとともに、暗号化通信対象ノードのIPアドレスと前記他の通信セッションで使用されていない通信相手識別情報の書き換えルールとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部とを備えることを特徴とするノード装置。
  78. 請求項71に記載のノード装置において、
    前記通信相手識別情報は、通信の宛先IPアドレス、通信の宛先ポート番号、通信の送信元ポート番号及び通信の送信元IPアドレスのうちの少なくとも一つであることを特徴とするノード装置。
  79. 請求項73記載のノード装置において、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とするノード装置。
  80. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置であって、
    独立したプロセスとして動作する通信暗号化モジュールを備え、
    前記通信暗号化モジュールは、
    通信相手IPアドレスと第1のインターセプト用アドレスとの対応を保持する第1の暗号化通信路設定テーブルと、
    前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレスを前記第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信する第1の通信暗号化部と
    を備えることを特徴とする通信暗号化ノード装置。
  81. 請求項80記載の通信暗号化ノード装置において、
    第1の暗号化通信路設定テーブルは、通信相手IPアドレスと第1のインターセプト用アドレスとの対応を複数保持することを特徴とする通信暗号化ノード装置。
  82. 請求項81記載の通信暗号化ノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答に含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決部と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスに対応する第1のインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部と
    を備えることを特徴とする通信暗号化ノード装置。
  83. 請求項81記載の通信暗号化ノード装置において、
    前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決部と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスに対応する第1のインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部と
    を備えることを特徴とする通信暗号化ノード装置。
  84. 請求項80記載の通信暗号化ノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスに対応する第1のインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする通信暗号化ノード装置。
  85. 請求項80記載の通信暗号化ノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスに対応する第1のインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする通信暗号化ノード装置。
  86. 請求項80記載の通信暗号化ノード装置において、
    カーネル部に設けられたデータ送受信部とを備え、
    前記データ送受信部は、
    通信相手IPアドレスと第2のインターセプト用アドレスとの対応を保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレスを前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信する通信暗号化部とを備えることを特徴とする通信暗号化ノード装置。
  87. 請求項86記載の通信暗号化ノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答に含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と
    を更に備えることを特徴とする通信暗号化ノード装置。
  88. 請求項86記載の通信暗号化ノード装置において、
    前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と
    を更に備えることを特徴とする通信暗号化ノード装置。
  89. 請求項86記載の通信暗号化ノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記第2の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第2の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部と、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記通信方式解決部において通信の暗号化を前記データ送受信部で行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記通信方式解決部において通信の暗号化を前記データ送受信部で行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする通信暗号化ノード装置。
  90. 請求項86記載の通信暗号化ノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記第2の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第2の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部と、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記通信方式解決部において通信の暗号化を前記データ送受信部で行うと判定された場合に前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記通信方式解決部において通信の暗号化を前記データ送受信部で行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする通信暗号化ノード装置。
  91. 請求項80記載の通信暗号化ノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記名前解決プロキシ部は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部とを備えることを特徴とする通信暗号化ノード装置。
  92. 請求項80記載の通信暗号化ノード装置において、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決プロキシ部は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスと前記暗号化通信路設定情報との対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスと前記暗号化通信路設定情報との対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部とを備えることを特徴とする通信暗号化ノード装置。
  93. 請求項80記載の通信暗号化ノード装置において、
    カーネル部に設けられたデータ送受信部と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、
    前記データ送受信部は、
    通信相手IPアドレスと第2のインターセプト用アドレスとの対応を保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレスを前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信する通信暗号化部とを備え、
    前記名前解決プロキシ部は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうか、暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかの判定結果と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部とを備えることを特徴とする通信暗号化ノード装置。
  94. 請求項80記載の通信暗号化ノード装置において、
    カーネル部に設けられたデータ送受信部と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記データ送受信部は、
    通信相手IPアドレスと第2のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信する通信暗号化部とを備え、
    前記名前解決プロキシ部は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうか、暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかの判定結果及び暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスと前記暗号化通信対象ノードとの対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスと前記暗号化通信路設定情報との対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスと前記暗号化通信路設定情報との対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスと前記暗号化通信路設定情報との対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部とを備えることを特徴とする通信暗号化ノード装置。
  95. 請求項82記載の通信暗号化ノード装置において、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする通信暗号化ノード装置。
  96. 請求項82記載の通信暗号化ノード装置において、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする通信暗号化ノード装置。
  97. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置であって、
    独立したプロセスとして動作する通信暗号化モジュールと、
    カーネル部に設けられたデータ送受信部と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、
    前記データ送受信部は、
    インターセプト用アドレスと自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスとの対応を保持するリダイレクトテーブルと、
    前記アプリケーションより送信された宛先アドレスにインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたインターセプト用アドレスに対応するループバックアドレスを前記リダイレクトテーブルから読み出し、前記データパケットの宛先アドレスを前記読み出したループバックアドレスに書き換えることにより前記データパケットを前記通信暗号化モジュールにリダイレクトするリダイレクト部とを備え、
    前記通信暗号化モジュールは、
    通信相手IPアドレスと、ループバックアドレスと、通信相手との通信に利用される暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルと、
    前記データ送受信部よりリダイレクトされた前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を前記暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信する通信暗号化部とを備え、
    前記名前解決プロキシ部は、
    暗号化通信対象ノードを特定する特定条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置の情報が前記設定テーブルに保持された何れかの特定条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチした特定条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記暗号化通信路設定テーブルに登録すると共に、当該対応中の前記ループバックアドレスと他の通信セッションで使用されていないインターセプト用アドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスに対応するインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする通信暗号化ノード装置。
  98. 請求項97に記載の通信暗号化ノード装置において、
    前記設定テーブルは、前記特定条件としてドメイン名条件を保持し、
    前記通信方式解決部は、前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定し、
    前記暗号化通信路設定部は、前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記暗号化通信路設定テーブルに登録することを特徴とする通信暗号化ノード装置。
  99. 請求項97に記載の通信暗号化ノード装置において、
    前記設定テーブルは、前記特定条件としてIPアドレス条件を保持し、
    前記通信方式解決部は、前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうかを判定し、
    前記暗号化通信路設定部は、前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記暗号化通信路設定テーブルに登録することを特徴とする通信暗号化ノード装置。
  100. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置であって、
    独立したプロセスとして動作する通信暗号化モジュールと、
    カーネル部に設けられたデータ送受信部と、
    前記クライアントノードが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、
    前記データ送受信部は、
    インターセプト用アドレスと通信相手識別情報の書き換えルールとの対応を保持するリダイレクトテーブルと、
    前記クライアントノード装置から他のノード装置宛に送信されたデータパケットをインターセプトし、前記リダイレクトテーブルを参照して、前記データパケットの宛先アドレスとして指定されているインターセプト用アドレスに対応する通信相手識別情報の書き換えルールに従って前記データパケットの通信相手識別情報を書き換えた後、前記データパケットの宛先アドレスを自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスに書き換えて前記通信暗号化モジュールにリダイレクトするリダイレクト部とを備え、
    前記通信暗号化モジュールは、
    通信相手IPアドレスと、通信相手識別情報と、通信相手との通信に利用される暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルと、
    前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報に対応する通信相手IPアドレス及び暗号化通信路設定情報を前記暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信する通信暗号化部とを備え、
    前記名前解決プロキシ部は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードである場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないインターセプト用アドレスとの対応中の前記インターセプト用アドレスに置き換えた名前解決応答を前記クライアントノード装置に送信する名前解決クエリ・応答送受信部と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない通信相手識別情報との対応を前記暗号化通信路設定テーブルに登録するとともに、前記他の通信セッションで使用されていない通信相手識別情報への書き換えルールと他の通信セッションで使用されていないインターセプト用アドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部とを備えることを特徴とする通信暗号化ノード装置。
  101. 請求項100に記載の通信暗号化ノード装置において、
    前記通信相手識別情報は、通信の宛先IPアドレス、通信の宛先ポート番号、通信の送信元ポート番号及び通信の送信元IPアドレスのうちの少なくとも一つであることを特徴とする通信暗号化ノード装置。
  102. ドメイン名に対応するIPアドレスを解決する名前解決クエリに対して、前記名前解決クエリのクエリ元において前記名前解決クエリに対する応答結果を利用して行われる通信は暗号化を行うべき対象であるかどうかを前記ドメイン名に基づいて識別し、暗号化通信を行うべき対象であると判断された場合に、前記ドメイン名に対応するIPアドレスに加えて、前記暗号化通信を行うために必要な情報を含む名前解決応答を応答することを特徴とする名前解決サーバ。
  103. 請求項102に記載の名前解決サーバにおいて、
    前記名前解決クエリ及び前記名前解決クエリに対する応答である前記名前解決応答を送受信する名前解決クエリ・応答送受信部と、
    前記名前解決クエリに対して、前記名前解決クエリのクエリ元において前記名前解決クエリに対する応答結果を利用して行われる通信は暗号化を行うべき対象であるかどうかを前記ドメイン名に基づいて識別する通信方式解決部とを備え、
    前記名前解決クエリ・応答送受信部が受信した名前解決クエリに対して、前記通信方式解決部は、前記名前解決クエリ及び前記名前解決クエリに対する応答の何れかに含まれる情報に基づいて、前記名前解決クエリのクエリ元において前記名前解決クエリに対する応答結果を利用して行われる通信が暗号化通信を行うべき対象であるかどうかを識別し、暗号化通信を行うべき対象であると判断した場合は、前記名前解決クエリ・応答送受信部は、前記ドメイン名に対応するIPアドレスに加えて、前記暗号化通信を行うために必要な情報を含む名前解決応答を応答することを特徴とする名前解決サーバ。
  104. 請求項103に記載の名前解決サーバにおいて、
    暗号化通信を行うべき対象となるドメイン名の少なくとも一部が設定されたデータベースを更に備え、
    前記通信方式解決部は、前記名前解決にかかるドメイン名が前記データベース上に設定されたドメイン名にマッチするかどうかを調べることにより、前記名前解決クエリのクエリ元において前記名前解決クエリに対する応答結果を利用して行われる通信が暗号化通信を行うべき対象であるかどうかを識別することを特徴とする名前解決サーバ。
  105. 請求項104に記載の名前解決サーバにおいて、
    前記データベースには、前記名前解決クエリのクエリ元毎に、暗号化通信を行うべき対象となるドメイン名の少なくとも一部が設定されることを特徴とする名前解決サーバ。
  106. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するノード装置と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するための名前解決サーバとを備え、
    前記ノード装置は、独立したプロセスとして動作する通信暗号化モジュールを備え、
    前記通信暗号化モジュールは、
    通信相手IPアドレスと自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスとの対応を保持する第1の暗号化通信路設定テーブルと、
    前記アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレスを前記第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記データパケットを暗号化して送信する第1の通信暗号化部と
    を備えることを特徴とする暗号化通信システム。
  107. 請求項106記載の暗号化通信システムにおいて、
    前記第1の暗号化通信路設定テーブルは、前記通信相手IPアドレスと前記ループバックアドレスとの対応を複数保持することを特徴とする暗号化通信システム。
  108. 請求項106記載の暗号化通信システムにおいて、
    前記名前解決サーバは、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答の何れかに含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決部を備え、
    前記ノード装置は、
    前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを更に備えることを特徴とする暗号化通信システム。
  109. 請求項106記載の暗号化通信システムにおいて、
    前記名前解決サーバは、前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決部を備え、
    前記ノード装置は、
    前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを更に備えることを特徴とする暗号化通信システム。
  110. 請求項106記載の暗号化通信システムにおいて、
    前記ノード装置は、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために前記名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記ループバックアドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記ループバックアドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決サーバは、名前解決に関連する機能に加えて、
    暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチしたドメイン名条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備え、
    前記名前解決プロキシ部は、
    前記暗号化通信路設定情報が付加された前記名前解決応答を前記名前解決サーバから受信したときに、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  111. 請求項106記載の暗号化通信システムにおいて、
    前記ノード装置は、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために前記名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部を更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記ループバックアドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記ループバックアドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決サーバは、名前解決に関連する機能に加えて、
    暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備え、
    前記名前解決プロキシ部は、
    前記暗号化通信路設定情報が付加された前記名前解決応答を前記名前解決サーバから受信したときに、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  112. 請求項107記載の暗号化通信システムにおいて、
    前記ノード装置は、カーネル部に設けられたデータ送受信部を更に備え、
    前記データ送受信部は、
    通信相手IPアドレスを保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが前記第2の暗号化通信路設定テーブルに登録されていた場合に前記データパケットを暗号化して送信する第2の通信暗号化部とを備え、
    前記名前解決サーバは、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答に含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部を備え、
    前記ノード装置は、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  113. 請求項107記載の暗号化通信システムにおいて、
    前記ノード装置は、カーネル部に設けられたデータ送受信部を更に備え、
    前記データ送受信部は、
    通信相手IPアドレスを保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが前記第2の暗号化通信路設定テーブルに登録されていた場合に前記データパケットを暗号化して送信する第2の通信暗号化部とを備え、
    前記名前解決サーバは、前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部を備え、
    前記ノード装置は、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  114. 請求項106記載の暗号化通信システムにおいて、
    前記ノード装置は、
    カーネル部に設けられたデータ送受信部と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために前記名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記ループバックアドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記ループバックアドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記データ送受信部は、
    通信相手IPアドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが前記第2の暗号化通信路設定テーブルに登録されていた場合に、対応する暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信する第2の通信暗号化部とを備え、
    前記名前解決サーバは、名前解決に関連する機能に加えて、
    暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部と、
    前記マッチしたドメイン名条件に対応する暗号化通信路設定情報及び前記判定の結果を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備え、
    前記名前解決プロキシ部は、
    前記暗号化通信路設定情報及び前記判定の結果が付加された前記名前解決応答を前記名前解決サーバから受信したときに、通信の暗号化を前記通信暗号化モジュールで行うと判定された場合は前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、通信の暗号化を前記データ送受信部で行うと判定された場合は前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  115. 請求項106記載の暗号化通信システムにおいて、
    前記ノード装置は、
    カーネル部に設けられたデータ送受信部と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために前記名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを更に備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記ループバックアドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記ループバックアドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記データ送受信部は、
    通信相手IPアドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが前記第2の暗号化通信路設定テーブルに登録されていた場合に、対応する暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信する第2の通信暗号化部とを備え、
    前記名前解決サーバは、名前解決に関連する機能に加えて、
    暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部と、
    前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報及び前記判定の結果を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備え、
    前記名前解決プロキシ部は、
    前記暗号化通信路設定情報及び前記判定の結果が付加された前記名前解決応答を前記名前解決サーバから受信したときに、通信の暗号化を前記通信暗号化モジュールで行うと判定された場合は前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、通信の暗号化を前記データ送受信部で行うと判定された場合は前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  116. 請求項108記載の暗号化通信システムにおいて、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする暗号化通信システム。
  117. 請求項112記載の暗号化通信システムにおいて、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする暗号化通信システム。
  118. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置と、
    前記クライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するための名前解決サーバとを備え、
    前記通信暗号化ノード装置は、
    独立したプロセスとして動作する通信暗号化モジュールと、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために前記名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、
    前記通信暗号化モジュールは、
    通信相手IPアドレスと第1のインターセプト用アドレスとの対応を保持する第1の暗号化通信路設定テーブルと、
    前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレスを前記第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信する第1の通信暗号化部とを備えることを特徴とする暗号化通信システム。
  119. 請求項118記載の暗号化通信システムにおいて、
    前記第1の暗号化通信路設定テーブルは、通信相手IPアドレスと第1のインターセプト用アドレスとの対応を複数保持することを特徴とする暗号化通信システム。
  120. 請求項118記載の暗号化通信システムにおいて、
    前記名前解決サーバは、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答の何れかに含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決部を備え、
    前記通信暗号化ノード装置の前記名前解決プロキシ部は、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスに対応する第1のインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  121. 請求項118記載の暗号化通信システムにおいて、
    前記名前解決サーバは、前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決部を備え、
    前記通信暗号化ノード装置の前記名前解決プロキシ部は、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスに対応する第1のインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  122. 請求項118記載の暗号化通信システムにおいて、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決サーバは、名前解決に関連する機能に加えて、
    暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチしたドメイン名条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備え、
    前記名前解決プロキシ部は、
    前記暗号化通信路設定情報が付加された前記名前解決応答を前記名前解決サーバから受信したときに、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  123. 請求項118記載の暗号化通信システムにおいて、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記名前解決サーバは、名前解決に関連する機能に加えて、
    暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレスにマッチするかどうかを判定する通信方式解決部と、
    前記マッチしたIPアドレスに対応する暗号化通信路設定情報を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備え、
    前記名前解決プロキシ部は、
    前記暗号化通信路設定情報が付加された前記名前解決応答を前記名前解決サーバから受信したときに、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  124. 請求項118記載の暗号化通信システムにおいて、
    前記通信暗号化ノード装置は、カーネル部に設けられたデータ送受信部を更に備え、
    前記データ送受信部は、
    通信相手IPアドレスと第2のインターセプト用アドレスとの対応を保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレスを前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信する通信暗号化部とを備え、
    前記名前解決サーバは、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答の何れかに含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部を備え、
    前記通信暗号化ノード装置の前記名前解決プロキシ部は、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  125. 請求項118記載の暗号化通信システムにおいて、
    前記通信暗号化ノード装置は、カーネル部に設けられたデータ送受信部を更に備え、
    前記データ送受信部は、
    通信相手IPアドレスと第2のインターセプト用アドレスとの対応を保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレスを前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信する通信暗号化部とを備え、
    前記名前解決サーバは、前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部を備え、
    前記通信暗号化ノード装置の前記名前解決プロキシ部は、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  126. 請求項118記載の暗号化通信システムにおいて、
    前記通信暗号化ノード装置は、
    カーネル部に設けられたデータ送受信部と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記データ送受信部は、
    通信相手IPアドレスと第2のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信する通信暗号化部とを備え、
    前記名前サーバは、
    暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部とを備え、
    前記名前解決プロキシ部は、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記通信方式解決部において通信の暗号化を前記データ送受信部で行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記通信方式解決部において通信の暗号化を前記データ送受信部で行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  127. 請求項118記載の暗号化通信システムにおいて、
    前記通信暗号化ノード装置は、
    カーネル部に設けられたデータ送受信部と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、
    前記第1の暗号化通信路設定テーブルは、通信相手との通信に利用される暗号化通信路設定情報を前記通信相手IPアドレス及び前記第1のインターセプト用アドレスに対応づけて保持し、
    前記第1の通信暗号化部は、前記受信したデータパケットの宛先アドレスに設定された前記第1のインターセプト用アドレスに対応する暗号化通信路設定情報を前記第1の暗号化通信路設定テーブルから読み出し、前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信し、
    前記データ送受信部は、
    通信相手IPアドレスと第2のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルと、
    前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信する通信暗号化部とを備え、
    前記名前サーバは、
    暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決部とを備え、
    前記名前解決プロキシ部は、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記通信方式解決部において通信の暗号化を前記データ送受信部で行うと判定された場合に前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定部と、
    前記通信方式解決部において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記通信方式解決部において通信の暗号化を前記データ送受信部で行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  128. 請求項120記載の暗号化通信システムにおいて、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする暗号化通信システム。
  129. 請求項124記載の暗号化通信システムにおいて、
    前記通信方式解決部は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とする暗号化通信システム。
  130. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するノード装置と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するための名前解決サーバとを備え、
    前記ノード装置は、
    独立したプロセスとして動作する通信暗号化モジュールと、
    カーネル部に設けられたデータ送受信部と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、
    前記データ送受信部は、
    暗号化通信対象ノードのIPアドレスと通信相手識別情報の書き換えルールとの対応を保持するリダイレクトテーブルと、
    アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトし、前記データパケットの宛先IPアドレスとリダイレクトテーブルに登録されている暗号化通信対象ノードのIPアドレスとを比較して前記データパケットが暗号化対象か否かを判断し、前記データパケットが暗号化対象である場合には、リダイレクトテーブル上の対応する通信相手識別情報の書き換えルールに従って前記データパケットの通信相手識別情報を書き換えた後、前記データパケットの宛先アドレスを自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスに書き換えて前記通信暗号化モジュールにリダイレクトするリダイレクト部とを備え、
    前記通信暗号化モジュールは、
    通信相手IPアドレスと、通信相手識別情報と、通信相手との通信に利用される暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルと、
    前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報に対応する通信相手IPアドレス及び暗号化通信路設定情報を前記暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信する通信暗号化部とを備え、
    前記名前解決サーバは、名前解決に関連する機能に加えて、
    暗号化通信対象ノードを特定する特定条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置の情報が前記設定テーブルに保持された何れかの特定条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチした特定条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備え、
    前記名前解決プロキシ部は、
    前記暗号化通信路設定情報が付加された前記名前解決応答を前記名前解決サーバから受信したときに、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない通信相手識別情報との対応を前記暗号化通信路設定テーブルに登録するとともに、暗号化通信対象ノードのIPアドレスと前記他の通信セッションで使用されていない通信相手識別情報の書き換えルールとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  131. 請求項130に記載の暗号化通信システムにおいて、
    前記設定テーブルは、前記特定条件としてドメイン名条件を保持し、
    前記通信方式解決部は、前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定し、
    前記名前解決応答・クエリ送受信部は、前記マッチしたドメイン名条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信することを特徴とする暗号化通信システム。
  132. 請求項130に記載の暗号化通信システムにおいて、
    前記設定テーブルは、前記特定条件としてIPアドレス条件を保持し、
    前記通信方式解決部は、前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうかを判定し、
    前記名前解決応答・クエリ送受信部は、前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信することを特徴とする暗号化通信システム。
  133. 請求項130に記載の暗号化通信システムにおいて、
    前記通信相手識別情報は、通信の宛先IPアドレス、通信の宛先ポート番号、通信の送信元ポート番号及び通信の送信元IPアドレスのうちの少なくとも一つであることを特徴とする暗号化通信システム。
  134. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置と、
    前記クライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置と、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するための名前解決サーバとを備え、
    前記通信暗号化ノード装置は、
    独立したプロセスとして動作する通信暗号化モジュールと、
    カーネル部に設けられたデータ送受信部と、
    前記クライアントノードが前記他のノード装置のIPアドレスを解決するために前記名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ部とを備え、
    前記データ送受信部は、
    インターセプト用アドレスと通信相手識別情報の書き換えルールとの対応を保持するリダイレクトテーブルと、
    前記クライアントノード装置から他のノード装置宛に送信されたデータパケットをインターセプトし、前記リダイレクトテーブルを参照して、前記データパケットの宛先アドレスとして指定されているインターセプト用アドレスに対応する通信相手識別情報の書き換えルールに従って前記データパケットの通信相手識別情報を書き換えた後、前記データパケットの宛先アドレスを自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスに書き換えて前記通信暗号化モジュールにリダイレクトするリダイレクト部とを備え、
    前記通信暗号化モジュールは、
    通信相手IPアドレスと、通信相手識別情報と、通信相手との通信に利用される暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルと、
    前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報に対応する通信相手IPアドレス及び暗号化通信路設定情報を前記暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信する通信暗号化部とを備え、
    前記名前解決サーバは、名前解決に関連する機能に加えて、
    暗号化通信対象ノードを特定する特定条件と暗号化通信路設定情報との対応を保持する設定テーブルと、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置の情報が前記設定テーブルに保持された何れかの特定条件にマッチするかどうかを判定する通信方式解決部と、
    前記マッチした特定条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信する名前解決応答・クエリ送受信部とを備え、
    前記名前解決プロキシ部は、
    前記暗号化通信路設定情報が付加された前記名前解決応答を前記名前解決サーバから受信したときに、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない通信相手識別情報との対応を前記暗号化通信路設定テーブルに登録するとともに、前記他の通信セッションで使用されていない通信相手識別情報への書き換えルールと他の通信セッションで使用されていないインターセプト用アドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定部と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前期インターセプト用アドレスに置き換えた名前解決応答を前記クライアントノード装置に送信する名前解決クエリ・応答送受信部とを備えることを特徴とする暗号化通信システム。
  135. 請求項134に記載の暗号化通信システムにおいて、
    前記設定テーブルは、前記特定条件としてドメイン名条件を保持し、
    前記通信方式解決部は、前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が前記設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定し、
    前記名前解決応答・クエリ送受信部は、前記マッチしたドメイン名条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信することを特徴とする暗号化通信システム。
  136. 請求項134に記載の暗号化通信システムにおいて、
    前記設定テーブルは、前記特定条件としてIPアドレス条件を保持し、
    前記通信方式解決部は、前記名前解決応答に含まれる前記他のノード装置のIPアドレスが前記設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうかを判定し、
    前記名前解決応答・クエリ送受信部は、前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報を前記名前解決応答に付加して送信することを特徴とする暗号化通信システム。
  137. 請求項134に記載の暗号化通信システムにおいて、
    前記通信相手識別情報は、通信の宛先IPアドレス、通信の宛先ポート番号、通信の送信元ポート番号及び通信の送信元IPアドレスのうちの少なくとも一つであることを特徴とする暗号化通信システム。
  138. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するノード装置を構成するコンピュータを、
    独立したプロセスとして動作する通信暗号化モジュールに設けられた通信暗号化手段、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ手段、として機能させるプログラムであり、
    前記通信暗号化手段は、前記アプリケーションより送信された、自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスが宛先アドレスに設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレスを、通信相手IPアドレスとループバックアドレスとの対応を複数保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記データパケットを暗号化して送信するものであることを特徴とするプログラム。
  139. 請求項138に記載のプログラムにおいて、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答の何れかに含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決手段と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段と
    を備えることを特徴とするプログラム。
  140. 請求項138に記載のプログラムにおいて、
    前記名前解決プロキシ手段は、
    前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決手段と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段と
    を備えることを特徴とするプログラム。
  141. 請求項138に記載のプログラムにおいて、
    前記通信暗号化手段は、前記受信したデータパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が、暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定する通信方式解決手段と、
    前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えるものであることを特徴とするプログラム。
  142. 請求項138に記載のプログラムにおいて、
    前記通信暗号化手段は、前記受信したデータパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが、暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうかを判定する通信方式解決手段と、
    前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えるものであることを特徴とするプログラム。
  143. 請求項138に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが、通信相手IPアドレスを保持する第2の暗号化通信路設定テーブルに登録されていた場合に前記データパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答に含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  144. 請求項138に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが、通信相手IPアドレスを保持する第2の暗号化通信路設定テーブルに登録されていた場合に前記データパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  145. 請求項138に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記通信暗号化モジュールに設けられた前記通信暗号化手段は、前記アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信するものであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが、通信相手IPアドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルに登録されていた場合に、対応する暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が、暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのドメイン名条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決手段と、
    前記通信方式解決手段において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記通信方式解決手段において通信の暗号化を前記データ送受信部で行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記通信方式解決手段において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  146. 請求項138に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記通信暗号化モジュールに設けられた前記通信暗号化手段は、前記アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信するものであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが、通信相手IPアドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルに登録されていた場合に、対応する暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが、暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決手段と、
    前記通信方式解決手段において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記通信方式解決手段において通信の暗号化を前記データ送受信部で行うと判定された場合に前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記通信方式解決手段において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  147. 請求項138に記載のプログラムにおいて、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段と、
    前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの前記対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  148. 請求項138に記載のプログラムにおいて、
    前記通信暗号化手段は、前記受信したデータパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段と、
    前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記他のノード装置のIPアドレスと前記暗号化通信路設定情報と他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  149. 請求項138に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記通信暗号化モジュールに設けられた通信暗号化手段は、前記アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレスを、通信相手IPアドレスとループバックアドレスとの対応を複数保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記データパケットを暗号化して送信するものであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが、通信相手IPアドレスを保持する第2の暗号化通信路設定テーブルに登録されていた場合に前記データパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうか、暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかの判定結果と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  150. 請求項138に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記通信暗号化モジュールに設けられた通信暗号化手段は、前記アプリケーションより送信された宛先アドレスにループバックアドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信するものであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された通信相手IPアドレスが、通信相手IPアドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルに登録されていた場合に、対応する暗号化通信路設定情報を前記第2の暗号化通信路設定テーブルから読み出し、前記データパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかの判定結果と暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスと前記暗号化通信路設定情報との対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと前記暗号化通信路設定情報との対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  151. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置を構成するコンピュータを、
    独立したプロセスとして動作する通信暗号化モジュールに設けられた通信暗号化手段、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ手段、として機能させるプログラムであり、
    前記通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレスを、通信相手IPアドレスと第1のインターセプト用アドレスとの対応を複数保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信するものであることを特徴とするプログラム。
  152. 請求項151に記載のプログラムにおいて、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答に含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決手段と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  153. 請求項151に記載のプログラムにおいて、
    前記名前解決プロキシ手段は、
    前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決手段と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  154. 請求項151に記載のプログラムにおいて、
    前記通信暗号化手段は、前記受信したデータパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスと第1のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が、暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定する通信方式解決手段と、
    前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスに対応する第1のインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  155. 請求項151に記載のプログラムにおいて、
    前記通信暗号化手段は、前記受信したデータパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスと第1のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが、暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうかを判定する通信方式解決手段と、
    前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスに対応する第1のインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  156. 請求項151に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレスを、通信相手IPアドレスと第2のインターセプト用アドレスとの対応を保持する第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答に含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  157. 請求項151に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレスを、通信相手IPアドレスと第2のインターセプト用アドレスとの対応を保持する第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうか、及び暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  158. 請求項151に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記通信暗号化モジュールに設けられた通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスと第1のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスと第2のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が、暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのドメイン名条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決手段と、
    前記通信方式解決手段において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記通信方式解決手段において通信の暗号化を前記データ送受信部で行うと判定された場合に前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記通信方式解決手段において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記通信方式解決手段において通信の暗号化を前記データ送受信部で行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  159. 請求項151に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記通信暗号化モジュールに設けられた通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスと第1のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスと第2のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが、暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうか、及びマッチした場合に通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかを判定する通信方式解決手段と、
    前記通信方式解決手段において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記通信方式解決手段において通信の暗号化を前記データ送受信部で行うと判定された場合に前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段と、
    前記通信方式解決手段において通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記通信方式解決手段において通信の暗号化を前記データ送受信部で行うと判定された場合に前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  160. 請求項151に記載のプログラムにおいて、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  161. 請求項151に記載のプログラムにおいて、
    前記通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスと第1のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであると判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスと前記暗号化通信路設定情報との対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスと前記暗号化通信路設定情報との対応を前記第1の暗号化通信路設定テーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  162. 請求項151に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレスを、通信相手IPアドレスと第2のインターセプト用アドレスとの対応を保持する第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうか、暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかの判定結果と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスとの対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスとの対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  163. 請求項151に記載のプログラムにおいて、
    前記コンピュータを、更にカーネル部のデータ送受信部に設けられた通信暗号化手段として機能させるプログラムであり、
    前記通信暗号化モジュールに設けられた通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第1のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第1のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスと第1のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第1の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記データ送受信部に設けられた通信暗号化手段は、前記アプリケーションより送信された宛先アドレスに第2のインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定された第2のインターセプト用アドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスと第2のインターセプト用アドレスと暗号化通信路設定情報との対応を保持する第2の暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうか、暗号化通信対象ノードである場合には通信の暗号化を前記通信暗号化モジュール及び前記データ送受信部の何れで行うかの判定結果及び暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスと前記暗号化通信対象ノードとの対応中の前記第1のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスと前記暗号化通信路設定情報との対応中の前記第2のインターセプト用アドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段と、
    前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記通信暗号化モジュールで行うと判定された場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第1のインターセプト用アドレスと前記暗号化通信路設定情報との対応を前記第1の暗号化通信路設定テーブルに登録し、前記他のノード装置が暗号化通信対象ノードであり且つ通信の暗号化を前記データ送受信部で行うと判定された場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスと他の通信セッションで使用されていない第2のインターセプト用アドレスと前記暗号化通信路設定情報との対応を前記第2の暗号化通信路設定テーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  164. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するノード装置を構成するコンピュータを、
    独立したプロセスとして動作する通信暗号化モジュールに設けられた通信暗号化手段、カーネル部のデータ送受信部に設けられたリダイレクト手段、として機能させるプログラムであり、
    前記リダイレクト手段は、前記アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトし、暗号化対象とするデータパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを保持するリダイレクトテーブルに保持された判断基準に基づいて当該データパケットが暗号化対象となるデータパケットかどうかを判断し、暗号化対象となるデータパケットの場合には前記書き換えルールに従ってデータパケットの所定の情報を書き換えて前記データパケットを前記通信暗号化モジュールにリダイレクトするものであり、
    前記通信暗号化手段は、前記データ送受信部よりリダイレクトされる前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を記憶する暗号化通信路設定テーブルを参照して、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報を書き換え前記他のノード装置の宛先IPアドレスを設定した前記データパケットを前記他のノード装置に暗号化して送信するものであることを特徴とするプログラム。
  165. 請求項164に記載のプログラムにおいて、
    前記コンピュータを、さらに前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ手段として機能させるプログラムであり、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信する名前解決クエリ及びその応答である名前解決応答の何れかに含まれるドメイン名に基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決手段と、
    前記他のノード装置が暗号化通信対象ノードである場合に、暗号化対象とする前記データパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを前記リダイレクトテーブルに登録すると共に、前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を前記暗号化通信路設定テーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  166. 請求項164に記載のプログラムにおいて、
    前記コンピュータを、さらに前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ手段として機能させるプログラムであり、
    前記名前解決プロキシ手段は、
    前記他のノード装置のIPアドレスに基づいて前記他のノード装置が暗号化通信対象ノードかどうかを判定する通信方式解決手段と、
    前記他のノード装置が暗号化通信対象ノードである場合に、暗号化対象とする前記データパケットを判断するための判断基準と通信相手識別情報の書き換えルールとを前記リダイレクトテーブルに登録すると共に、前記データパケットの前記通信相手識別情報の書き換えルールと前記アプリケーションの他のノード装置のIPアドレスとの対応を前記暗号化通信路設定テーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  167. 請求項164に記載のプログラムにおいて、
    前記リダイレクト手段は、アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトし、前記データパケットの宛先アドレスに設定されたIPアドレスに対応するループバックアドレスが、暗号化通信対象ノードのIPアドレスとループバックアドレスとの対応を保持するリダイレクトテーブルに保持されていた場合に、前記データパケットの宛先アドレスを前記対応するループバックアドレスに書き換えることにより前記データパケットを前記通信暗号化モジュールにリダイレクトするものであり、
    前記通信暗号化手段は、前記データ送受信部よりリダイレクトされた前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信するものであることを特徴とするプログラム。
  168. 請求項164に記載のプログラムにおいて、
    前記コンピュータを、さらに前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ手段として機能させるプログラムであり、
    前記リダイレクト手段は、アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトし、前記データパケットの宛先アドレスに設定されたIPアドレスに対応するループバックアドレスが、暗号化通信対象ノードのIPアドレスとループバックアドレスとの対応を保持するリダイレクトテーブルに保持されていた場合に、前記データパケットの宛先アドレスを前記対応するループバックアドレスに書き換えることにより前記データパケットを前記通信暗号化モジュールにリダイレクトするものであり、
    前記通信暗号化手段は、前記データ送受信部よりリダイレクトされた前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が、暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定する通信方式解決手段と、
    前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記暗号化通信路設定テーブルに登録すると共に、当該対応中の前記他のノード装置のIPアドレスと前記ループバックアドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定手段と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  169. 請求項164に記載のプログラムにおいて、
    前記コンピュータを、さらに前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ手段として機能させるプログラムであり、
    前記リダイレクト手段は、アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトし、前記データパケットの宛先アドレスに設定されたIPアドレスに対応するループバックアドレスが、暗号化通信対象ノードのIPアドレスとループバックアドレスとの対応を保持するリダイレクトテーブルに保持されていた場合に、前記データパケットの宛先アドレスを前記対応するループバックアドレスに書き換えることにより前記データパケットを前記通信暗号化モジュールにリダイレクトするものであり、
    前記通信暗号化手段は、前記データ送受信部よりリダイレクトされた前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが、暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうかを判定する通信方式解決手段と、
    前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記暗号化通信路設定テーブルに登録すると共に、当該対応中の前記他のノード装置のIPアドレスと前記ループバックアドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定手段と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスを前記対応中の前記ループバックアドレスに置き換えた名前解決応答を前記アプリケーションに送信する名前解決クエリ・応答送受信手段とを備えることを特徴とするプログラム。
  170. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置を構成するコンピュータを、
    独立したプロセスとして動作する通信暗号化モジュールに設けられた通信暗号化手段、カーネル部のデータ送受信部に設けられたリダイレクト手段、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ手段、として機能させるプログラムであり、
    前記リダイレクト手段は、前記アプリケーションより送信された宛先アドレスにインターセプト用アドレスが設定されたデータパケットを受信し、前記データパケットの宛先アドレスに設定されたインターセプト用アドレスに対応するループバックアドレスを、インターセプト用アドレスとループバックアドレスとの対応を保持するリダイレクトテーブルから読み出し、前記データパケットの宛先アドレスを前記読み出したループバックアドレスに書き換えることにより前記データパケットを前記通信暗号化モジュールにリダイレクトするものであり、
    前記通信暗号化手段は、前記データ送受信部よりリダイレクトされた前記データパケットの宛先アドレスに設定されたループバックアドレスに対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスとループバックアドレスと暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスに前記読み出した通信相手IPアドレスを設定したデータパケットを前記読み出した暗号化通信路設定情報に従って暗号化して送信するものであることを特徴とするプログラム。
  171. 請求項170に記載のプログラムにおいて、
    前記名前解決プロキシ手段は、
    前記名前解決クエリ及び前記名前解決応答の何れかに含まれる前記他のノード装置のドメイン名が、暗号化通信対象ノードを特定するドメイン名条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのドメイン名条件にマッチするかどうかを判定する通信方式解決手段と、
    前記マッチしたドメイン名条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記暗号化通信路設定テーブルに登録すると共に、当該対応中の前記ループバックアドレスと他の通信セッションで使用されていないインターセプト用アドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定手段と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスに対応するインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信手段と
    を備えることを特徴とするプログラム。
  172. 請求項170に記載のプログラムにおいて、
    前記名前解決プロキシ手段は、
    前記名前解決応答に含まれる前記他のノード装置のIPアドレスが、暗号化通信対象ノードを特定するIPアドレス条件と暗号化通信路設定情報との対応を保持する設定テーブルに保持された何れかのIPアドレス条件にマッチするかどうかを判定する通信方式解決手段と、
    前記マッチしたIPアドレス条件に対応する暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないループバックアドレスとの対応を前記暗号化通信路設定テーブルに登録すると共に、当該対応中の前記ループバックアドレスと他の通信セッションで使用されていないインターセプト用アドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定手段と、
    前記名前解決サーバから受信した名前解決応答に含まれる前記他のノード装置のIPアドレスに対応するインターセプト用アドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信手段と
    を備えることを特徴とするプログラム。
  173. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するノード装置を構成するコンピュータを、
    独立したプロセスとして動作する通信暗号化モジュールに設けられた通信暗号化手段、カーネル部のデータ送受信部に設けられたリダイレクト手段、前記アプリケーションが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ手段、として機能させるプログラムであり、
    前記リダイレクト手段は、アプリケーションから他のノード装置宛に送信されたデータパケットをインターセプトし、前記データパケットの宛先IPアドレスと、暗号化通信対象ノードのIPアドレスと通信相手識別情報の書き換えルールとの対応を保持するリダイレクトテーブルに登録されている暗号化通信対象ノードのIPアドレスとを比較して前記データパケットが暗号化対象か否かを判断し、前記データパケットが暗号化対象である場合には、リダイレクトテーブル上の対応する通信相手識別情報の書き換えルールに従って前記データパケットの通信相手識別情報を書き換えた後、前記データパケットの宛先アドレスを自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスに書き換えて前記通信暗号化モジュールにリダイレクトするものであり、
    前記通信暗号化手段は、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報に対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスと通信相手識別情報と暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを名前解決応答として前記アプリケーションに送信する名前解決クエリ・応答送受信手段と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記他のノード装置のIPアドレスと他の通信セッションで使用されていない通信相手識別情報と前記暗号化通信路設定情報との対応を前記暗号化通信路設定テーブルに登録するとともに、暗号化通信対象ノードのIPアドレスと前記他の通信セッションで使用されていない通信相手識別情報の書き換えルールとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  174. ネットワークに接続された他のノード装置と通信を行うアプリケーションが動作するクライアントノード装置に前記ネットワークを通じて接続された通信暗号化ノード装置を構成するコンピュータを、
    独立したプロセスとして動作する通信暗号化モジュールに設けられた通信暗号化手段、カーネル部のデータ送受信部に設けられたリダイレクト手段、前記クライアントノードが前記他のノード装置のIPアドレスを解決するために名前解決サーバに送信する名前解決クエリ及びその応答である名前解決応答を中継する名前解決プロキシ手段、として機能させるプログラムであり、
    前記リダイレクト手段は、前記クライアントノード装置から他のノード装置宛に送信されたデータパケットをインターセプトし、インターセプト用アドレスと通信相手識別情報の書き換えルールとの対応を保持するリダイレクトテーブルを参照して、前記データパケットの宛先アドレスとして指定されているインターセプト用アドレスに対応する通信相手識別情報の書き換えルールに従って前記データパケットの通信相手識別情報を書き換えた後、前記データパケットの宛先アドレスを自ノード内で閉じた通信を行うためのIPアドレスであるループバックアドレスに書き換えて前記通信暗号化モジュールにリダイレクトするものであり、
    前記通信暗号化手段は、前記データ送受信部よりリダイレクトされた前記データパケットの前記通信相手識別情報に対応する通信相手IPアドレス及び暗号化通信路設定情報を、通信相手IPアドレスと通信相手識別情報と暗号化通信路設定情報との対応を保持する暗号化通信路設定テーブルから読み出し、前記データパケットの宛先アドレスを前記読み出した通信相手IPアドレスに書き換え且つ前記読み出した暗号化通信路設定情報に従って前記データパケットを暗号化して送信するものであり、
    前記名前解決プロキシ手段は、
    前記アプリケーションが前記他のノード装置のIPアドレスを解決するために送信した前記名前解決クエリを前記名前解決サーバに送信し、前記他のノード装置が暗号化通信対象ノードかどうかの判定結果と暗号化通信路設定情報と前記他のノード装置のIPアドレスとを含む名前解決応答を前記名前解決サーバから受信し、前記他のノード装置が暗号化通信対象ノードである場合に、前記名前解決応答に含まれる前記他のノード装置のIPアドレスを、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていないインターセプト用アドレスとの対応中の前記インターセプト用アドレスに置き換えた名前解決応答を前記クライアントノード装置に送信する名前解決クエリ・応答送受信手段と、
    前記他のノード装置が暗号化通信対象ノードである場合に、前記暗号化通信路設定情報と前記名前解決応答で解決された前記他のノード装置のIPアドレスと他の通信セッションで使用されていない通信相手識別情報との対応を前記暗号化通信路設定テーブルに登録するとともに、前記他の通信セッションで使用されていない通信相手識別情報への書き換えルールと他の通信セッションで使用されていないインターセプト用アドレスとの対応を前記リダイレクトテーブルに登録する暗号化通信路設定手段とを備えることを特徴とするプログラム。
  175. 請求項164に記載のプログラムにおいて、
    前記通信相手識別情報は、通信の宛先IPアドレス、通信の宛先ポート番号、通信の送信元ポート番号及び通信の送信元IPアドレスのうちの少なくとも1つであることを特徴とするプログラム。
  176. 請求項173に記載のプログラムにおいて、
    前記通信相手識別情報は、通信の宛先IPアドレス、通信の宛先ポート番号、通信の送信元ポート番号及び通信の送信元IPアドレスのうちの少なくとも1つであることを特徴とするプログラム。
  177. 請求項174に記載のプログラムにおいて、
    前記通信相手識別情報は、通信の宛先IPアドレス、通信の宛先ポート番号、通信の送信元ポート番号及び通信の送信元IPアドレスのうちの少なくとも1つであることを特徴とするプログラム。
  178. 請求項141に記載のプログラムにおいて、
    前記通信方式解決手段は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とするプログラム。
  179. 請求項143に記載のプログラムにおいて、
    前記通信方式解決手段は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とするプログラム。
  180. 請求項152に記載のプログラムにおいて、
    前記通信方式解決手段は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とするプログラム。
  181. 請求項165に記載のプログラムにおいて、
    前記通信方式解決手段は、暗号化通信の対象ノードのドメイン名の少なくとも一部が登録された設定テーブルを参照して、前記他のノード装置が暗号化通信対象ノードかどうかを判定することを特徴とするプログラム。
  182. 名前解決サーバを構成するコンピュータを、
    ドメイン名に対応するIPアドレスを解決する名前解決クエリ及び前記名前解決クエリに対する応答である名前解決応答を送受信する名前解決クエリ・応答送受信手段、
    前記名前解決クエリに対して、前記名前解決クエリのクエリ元において前記名前解決クエリに対する応答結果を利用して行われる通信は暗号化を行うべき対象であるかどうかを前記ドメイン名に基づいて識別する通信方式解決手段であって、前記名前解決クエリ・応答送受信手段が受信した名前解決クエリに対して、前記名前解決クエリ及び前記名前解決クエリに対する応答の何れかに含まれる情報に基づいて、前記名前解決クエリのクエリ元において前記名前解決クエリに対する応答結果を利用して行われる通信が暗号化通信を行うべき対象であるかどうかを識別し、暗号化通信を行うべき対象であると判断した場合は、前記名前解決クエリ・応答送受信手段を通じて、前記ドメイン名に対応するIPアドレスに加えて、前記暗号化通信を行うために必要な情報を含む名前解決応答を応答する通信方式解決手段、
    として機能させることを特徴とするプログラム。
  183. 請求項182に記載のプログラムにおいて、
    前記通信方式解決手段は、前記名前解決にかかるドメイン名が、暗号化通信を行うべき対象となるドメイン名の少なくとも一部が設定されたデータベース上に設定されたドメイン名にマッチするかどうかを調べることにより、前記名前解決クエリのクエリ元において前記名前解決クエリに対する応答結果を利用して行われる通信が暗号化通信を行うべき対象であるかどうかを識別することを特徴とするプログラム。
  184. 請求項183に記載のプログラムにおいて、
    前記データベースは、前記名前解決クエリのクエリ元毎に、暗号化通信を行うべき対象となるドメイン名の少なくとも一部を設定するものであることを特徴とするプログラム。
JP2005517033A 2004-01-14 2005-01-12 暗号化通信システム Expired - Fee Related JP4752510B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005517033A JP4752510B2 (ja) 2004-01-14 2005-01-12 暗号化通信システム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2004006541 2004-01-14
JP2004006541 2004-01-14
JP2005517033A JP4752510B2 (ja) 2004-01-14 2005-01-12 暗号化通信システム
PCT/JP2005/000219 WO2005069535A1 (ja) 2004-01-14 2005-01-12 暗号化通信システム

Publications (2)

Publication Number Publication Date
JPWO2005069535A1 true JPWO2005069535A1 (ja) 2008-04-24
JP4752510B2 JP4752510B2 (ja) 2011-08-17

Family

ID=34792146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005517033A Expired - Fee Related JP4752510B2 (ja) 2004-01-14 2005-01-12 暗号化通信システム

Country Status (5)

Country Link
US (1) US8356169B2 (ja)
EP (1) EP1710953B1 (ja)
JP (1) JP4752510B2 (ja)
TW (1) TW200529623A (ja)
WO (1) WO2005069535A1 (ja)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7505418B1 (en) * 2004-11-01 2009-03-17 Empirix Inc. Network loopback using a virtual address
JP2007102387A (ja) * 2005-10-03 2007-04-19 Fujitsu Ltd ストレージシステム,暗号化パス切替え方法,暗号化パス切替え用プログラムおよびそのプログラムを記録した記録媒体
US8375120B2 (en) * 2005-11-23 2013-02-12 Trend Micro Incorporated Domain name system security network
US20070214502A1 (en) * 2006-03-08 2007-09-13 Mcalister Donald K Technique for processing data packets in a communication network
US20080016215A1 (en) * 2006-07-13 2008-01-17 Ford Daniel E IP address pools for device configuration
US8230235B2 (en) 2006-09-07 2012-07-24 International Business Machines Corporation Selective encryption of data stored on removable media in an automated data storage library
US8332635B2 (en) * 2007-05-29 2012-12-11 International Business Machines Corporation Updateable secure kernel extensions
US8422674B2 (en) * 2007-05-29 2013-04-16 International Business Machines Corporation Application-specific secret generation
US7886162B2 (en) * 2007-05-29 2011-02-08 International Business Machines Corporation Cryptographic secure program overlays
US8433927B2 (en) * 2007-05-29 2013-04-30 International Business Machines Corporation Cryptographically-enabled privileged mode execution
US7984186B2 (en) * 2007-08-27 2011-07-19 Dnsstuff, Llc Method, system, and apparatus for discovering user agent DNS settings
US7747780B2 (en) * 2007-08-27 2010-06-29 DNSStuff, INC. Method, system and apparatus for discovering user agent DNS settings
US8332636B2 (en) * 2007-10-02 2012-12-11 International Business Machines Corporation Secure policy differentiation by secure kernel design
US10805840B2 (en) 2008-07-03 2020-10-13 Silver Peak Systems, Inc. Data transmission via a virtual wide area network overlay
US10164861B2 (en) 2015-12-28 2018-12-25 Silver Peak Systems, Inc. Dynamic monitoring and visualization for network health characteristics
JP4871373B2 (ja) * 2009-06-19 2012-02-08 任天堂株式会社 情報処理システムおよび情報処理装置
US20110119487A1 (en) * 2009-11-13 2011-05-19 Velocite Systems, LLC System and method for encryption rekeying
US9277538B2 (en) * 2010-12-22 2016-03-01 Telefonaktiebolaget L M Ericsson (Publ) Node selection in a packet core network
US10270755B2 (en) 2011-10-03 2019-04-23 Verisign, Inc. Authenticated name resolution
US9565161B2 (en) 2012-05-24 2017-02-07 International Business Machines Corporation Automatically replacing localhost as hostname in URL with fully qualified domain name or IP address
GB201314733D0 (en) 2013-08-16 2013-10-02 Sparkle Coupon Services Ltd A data processing method and system
GB201314732D0 (en) 2013-08-16 2013-10-02 Sparkle Coupon Services Ltd A data transmission method and system
US10110712B2 (en) 2014-06-04 2018-10-23 Nicira, Inc. Efficient packet classification for dynamic containers
US9774707B2 (en) * 2014-06-04 2017-09-26 Nicira, Inc. Efficient packet classification for dynamic containers
US9948496B1 (en) 2014-07-30 2018-04-17 Silver Peak Systems, Inc. Determining a transit appliance for data traffic to a software service
US9875344B1 (en) 2014-09-05 2018-01-23 Silver Peak Systems, Inc. Dynamic monitoring and authorization of an optimization device
US9794271B2 (en) 2014-10-29 2017-10-17 At&T Mobility Ii Llc Restricting communications between subscriber machines
US10530734B2 (en) 2014-12-16 2020-01-07 Verisign, Inc. Balancing visibility in the domain name system
US10084820B2 (en) * 2015-02-27 2018-09-25 Konica Minolta Laboratory U.S.A., Inc. Method and system for IPSec security for IPP-USB data
KR101702102B1 (ko) * 2015-08-13 2017-02-13 주식회사 케이티 인터넷 연결 장치, 중앙 관리 서버 및 인터넷 연결 방법
US10791085B2 (en) 2015-11-12 2020-09-29 Verisign, Inc. Techniques for directing a domain name service (DNS) resolution process
JP2017098666A (ja) * 2015-11-19 2017-06-01 富士通株式会社 通信装置,及び暗号化通信の異常検出方法
CN107301090B (zh) * 2016-04-14 2020-11-03 华为技术有限公司 在存储服务器中为应用设置数据处理路径的方法及装置
US10110614B2 (en) 2016-07-28 2018-10-23 Verisign, Inc. Strengthening integrity assurances for DNS data
US9967056B1 (en) 2016-08-19 2018-05-08 Silver Peak Systems, Inc. Forward packet recovery with constrained overhead
US10999240B1 (en) 2016-08-31 2021-05-04 Verisign, Inc. Client controlled domain name service (DNS) resolution
US10771394B2 (en) * 2017-02-06 2020-09-08 Silver Peak Systems, Inc. Multi-level learning for classifying traffic flows on a first packet from DNS data
US10892978B2 (en) 2017-02-06 2021-01-12 Silver Peak Systems, Inc. Multi-level learning for classifying traffic flows from first packet data
US11044202B2 (en) 2017-02-06 2021-06-22 Silver Peak Systems, Inc. Multi-level learning for predicting and classifying traffic flows from first packet data
US11070523B2 (en) * 2017-04-26 2021-07-20 National University Of Kaohsiung Digital data transmission system, device and method with an identity-masking mechanism
US11212210B2 (en) 2017-09-21 2021-12-28 Silver Peak Systems, Inc. Selective route exporting using source type
US10374803B2 (en) 2017-10-06 2019-08-06 Stealthpath, Inc. Methods for internet communication security
US10361859B2 (en) 2017-10-06 2019-07-23 Stealthpath, Inc. Methods for internet communication security
US10367811B2 (en) 2017-10-06 2019-07-30 Stealthpath, Inc. Methods for internet communication security
US10375019B2 (en) 2017-10-06 2019-08-06 Stealthpath, Inc. Methods for internet communication security
US10397186B2 (en) 2017-10-06 2019-08-27 Stealthpath, Inc. Methods for internet communication security
US10630642B2 (en) 2017-10-06 2020-04-21 Stealthpath, Inc. Methods for internet communication security
US10958668B1 (en) 2017-12-21 2021-03-23 Palo Alto Networks, Inc. Finding malicious domains with DNS query pattern analysis
CN108200058B (zh) * 2018-01-02 2020-08-04 武汉斗鱼网络科技有限公司 聊天加密方法、装置、电子终端及可读存储介质
US11190487B2 (en) * 2018-02-28 2021-11-30 Palo Alto Networks, Inc. Identifying security risks and enforcing policies on encrypted/encoded network communications
US10637721B2 (en) 2018-03-12 2020-04-28 Silver Peak Systems, Inc. Detecting path break conditions while minimizing network overhead
EP3769489A4 (en) * 2018-03-22 2021-12-15 Akamai Technologies, Inc. TRAFFIC FORWARDING AND DISAMBIGUATION USING LOCAL PROXYS AND ADDRESSES
CN110557360B (zh) * 2018-06-04 2023-09-15 精品科技股份有限公司 讯息传输的系统与方法
US11558423B2 (en) 2019-09-27 2023-01-17 Stealthpath, Inc. Methods for zero trust security with high quality of service
US12069103B2 (en) 2022-02-23 2024-08-20 Cisco Technology, Inc. Implementing policy based on unique addresses or ports
US20230269217A1 (en) * 2022-02-23 2023-08-24 Cisco Technology, Inc. Binding flows to unique addresses or ports

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10112739A (ja) * 1996-10-03 1998-04-28 Nec Telecom Syst Ltd モデム装置
JPH114249A (ja) * 1997-06-12 1999-01-06 Nec Corp データ暗号化/復号化lan間接続装置
JP2001320403A (ja) * 2000-05-11 2001-11-16 Mitsubishi Electric Systemware Corp メール送信装置、メール受信装置、メール送信方法、メール受信方法及びコンピュータに実行させるためのプログラムを記録したコンピュータ読みとり可能な記録媒体

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5548646A (en) * 1994-09-15 1996-08-20 Sun Microsystems, Inc. System for signatureless transmission and reception of data packets between computer networks
JP2000099429A (ja) * 1998-09-25 2000-04-07 Nippon Telegr & Teleph Corp <Ntt> ネットワーク接続状態判別方法及びその装置
JP2000183951A (ja) * 1998-12-18 2000-06-30 Pfu Ltd 暗号化システムおよび記録媒体
JP4186446B2 (ja) * 2001-09-11 2008-11-26 株式会社日立製作所 アドレス変換方法
US7631084B2 (en) * 2001-11-02 2009-12-08 Juniper Networks, Inc. Method and system for providing secure access to private networks with client redirection
TW200527870A (en) * 2004-01-14 2005-08-16 Nec Corp Encrypted communication method, encrypted communication system, node device and program
US20060236124A1 (en) * 2005-04-19 2006-10-19 International Business Machines Corporation Method and apparatus for determining whether to encrypt outbound traffic

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10112739A (ja) * 1996-10-03 1998-04-28 Nec Telecom Syst Ltd モデム装置
JPH114249A (ja) * 1997-06-12 1999-01-06 Nec Corp データ暗号化/復号化lan間接続装置
JP2001320403A (ja) * 2000-05-11 2001-11-16 Mitsubishi Electric Systemware Corp メール送信装置、メール受信装置、メール送信方法、メール受信方法及びコンピュータに実行させるためのプログラムを記録したコンピュータ読みとり可能な記録媒体

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
CSND200400337009, 馬場達也, ""インターネットのツボを押さえる! DNSの仕組み完全解説 第8回DNSをIPv6に対応させる"", NETWORK WORLD, 20030301, Vol.8,No.3, p.74−80, JP, 株式会社IDGジャパン *
CSNG200400130009, 山井成良,久保武志,岡山聖彦,山外芳伸,宮下卓也, ""DNSにおける別名ドメインの管理・運用手法"", 情報処理学会論文誌, 20021115, 第43巻,第11号, p.3458−3467, JP, 社団法人情報処理学会 *
CSNG200500279016, 石川雄一,藤田範人,岩田淳, ""マルチレイヤDNSによるネットワーク制御カスタマイゼーション"", 電子情報通信学会技術研究報告, 20030912, Vol.103,No.314, p.91−94, JP, 社団法人電子情報通信学会 *
CSNJ200510005203, 藤田範人,石川雄一,岩田淳,飯島明夫, ""DNSを用いたスケーラブルなVPNアーキテクチャ"", 電子情報通信学会2004年総合大会講演論文集 通信2, 20040308, B−6−200, p.200, JP, 社団法人電子情報通信学会 *
CSNJ200910037220, 中島彦之, ""CUG多重形成のための自動鍵選択セキュア通信方式"", 電子情報通信学会1997年通信ソサイエティ大会講演論文集2 通信ソサイエティ, 19970813, B−7−142, p.220, JP, 社団法人電子情報通信学会 *
JPN6011003465, 中島彦之, ""CUG多重形成のための自動鍵選択セキュア通信方式"", 電子情報通信学会1997年通信ソサイエティ大会講演論文集2 通信ソサイエティ, 19970813, B−7−142, p.220, JP, 社団法人電子情報通信学会 *
JPN6011003466, 藤田範人,石川雄一,岩田淳,飯島明夫, ""DNSを用いたスケーラブルなVPNアーキテクチャ"", 電子情報通信学会2004年総合大会講演論文集 通信2, 20040308, B−6−200, p.200, JP, 社団法人電子情報通信学会 *
JPN6011003472, 山井成良,久保武志,岡山聖彦,山外芳伸,宮下卓也, ""DNSにおける別名ドメインの管理・運用手法"", 情報処理学会論文誌, 20021115, 第43巻,第11号, p.3458−3467, JP, 社団法人情報処理学会 *
JPN6011003474, 馬場達也, ""インターネットのツボを押さえる! DNSの仕組み完全解説 第8回DNSをIPv6に対応させる"", NETWORK WORLD, 20030301, Vol.8,No.3, p.74−80, JP, 株式会社IDGジャパン *
JPN6011003565, 石川雄一,藤田範人,岩田淳, ""マルチレイヤDNSによるネットワーク制御カスタマイゼーション"", 電子情報通信学会技術研究報告, 20030912, Vol.103,No.314, p.91−94, JP, 社団法人電子情報通信学会 *

Also Published As

Publication number Publication date
TW200529623A (en) 2005-09-01
JP4752510B2 (ja) 2011-08-17
EP1710953A1 (en) 2006-10-11
EP1710953B1 (en) 2018-03-07
EP1710953A4 (en) 2014-09-24
US8356169B2 (en) 2013-01-15
WO2005069535A1 (ja) 2005-07-28
US20070160200A1 (en) 2007-07-12

Similar Documents

Publication Publication Date Title
JP4752510B2 (ja) 暗号化通信システム
JP4483786B2 (ja) 暗号化通信方法
JP4154615B2 (ja) Sipサーバ共有モジュール装置、sipメッセージ中継方法、及びプログラム
US7177932B2 (en) Method, gateway and system for transmitting data between a device in a public network and a device in an internal network
US7948921B1 (en) Automatic network optimization
TWI413389B (zh) 使用裝置之網頁服務的跨網路漫遊和方法
US8730966B2 (en) Anonymization using anonymizing device and packet server in which anonymous address is generated based on prefix acquired from server
US7925693B2 (en) NAT access control with IPSec
RU2543304C2 (ru) Способ и устройство, для ретрансляции пакетов
US8117273B1 (en) System, device and method for dynamically securing instant messages
JP2004128782A (ja) 鍵交換代理ネットワークシステム
US8978126B2 (en) Method and system for TCP turn operation behind a restrictive firewall
EP1980084B1 (en) Packet redirection in a communication network
CA2884382C (en) Method and system for tcp turn operation behind a restrictive firewall
Henderson et al. The Host Identity Protocol (HIP) Experiment Report
JP7391496B2 (ja) パケット通信システム
US11888840B2 (en) Apparatus and method for selection and transmission of server certificate
JP6762735B2 (ja) 端末間通信システム及び端末間通信方法及びコンピュータプログラム
JP6075871B2 (ja) ネットワークシステム、通信制御方法、通信制御装置及び通信制御プログラム
JP2006352567A (ja) サービス提供装置および通信制御プログラム
Lu Novel method for transferring access control list rules to synchronize security protection in a locator/identifier separation protocol environment with cross‐segment host mobility
JP2022153317A (ja) 中継装置及びローカルブレイクアウトの転送方法
Tschofenig et al. CORE C. Bormann Internet-Draft Universitaet Bremen TZI Intended status: Standards Track S. Lemay Expires: January 9, 2017 Zebra Technologies
Tschofenig et al. CORE C. Bormann Internet-Draft Universitaet Bremen TZI Intended status: Standards Track S. Lemay Expires: February 25, 2017 Zebra Technologies
Rahman et al. CoRE Working Group A. Castellani Internet-Draft University of Padova Intended status: Informational S. Loreto Expires: September 13, 2012 Ericsson

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110329

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110509

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140603

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4752510

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees