JP2005311747A - サーバ装置、要求発行機器、要求受諾機器、通信システム及びプログラム - Google Patents

サーバ装置、要求発行機器、要求受諾機器、通信システム及びプログラム Download PDF

Info

Publication number
JP2005311747A
JP2005311747A JP2004126428A JP2004126428A JP2005311747A JP 2005311747 A JP2005311747 A JP 2005311747A JP 2004126428 A JP2004126428 A JP 2004126428A JP 2004126428 A JP2004126428 A JP 2004126428A JP 2005311747 A JP2005311747 A JP 2005311747A
Authority
JP
Japan
Prior art keywords
request
communication
common key
signal
information
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.)
Pending
Application number
JP2004126428A
Other languages
English (en)
Inventor
Junji Yoshida
順二 吉田
信二 ▲浜▼井
Shinji Hamai
Chiyoko Matsumi
知代子 松見
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2004126428A priority Critical patent/JP2005311747A/ja
Publication of JP2005311747A publication Critical patent/JP2005311747A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】 LANを介してインターネットに接続された機器同士で、不正アクセスができないピアツーピア通信を容易に実現する。
【解決手段】 要求発行機器102は、要求受諾機器103との通信を行う際、機器102及び103の各機器IDを含む接続要求パケット227をサーバ装置101に送信する。サーバ装置101は、パケット227から機器102及び103の各機器IDを取得するとともに、機器103に接続要求パケット236を送信する。機器103は、パケット236に応答して、サーバ装置101に接続機器登録要求パケット208を送信するとともに、機器間の通信を開始するTCP接続開始パケット210を機器102に送信する。サーバ装置101は、互いに接続を確立したことがある一対の機器の機器IDの組を含む接続機器リストを備え、パケット208に応答して、取得された機器102及び103の機器IDの組を接続機器リストに追加する。
【選択図】図2

Description

本発明は、TCP/IPプロトコル群を用いた通信システムであり、例えばインターネット等のネットワークに接続された機器間においてピアツーピア接続によって通信するためのサーバ装置と、接続要求信号を発行する要求発行機器と、接続要求信号を受諾する要求受諾機器と、サーバ装置、要求発行機器及び要求受諾機器を含む通信システムとに関する。本発明はさらに、プログラムに従って動作する装置、又はプログラムに従って動作する装置にてなるシステムを、サーバ装置、要求発行機器、要求受諾機器又は通信システムとして動作させるプログラムに関する。
近年、xDSLや光ファイバケーブルなどのブロードバンド環境が整ったことにより、企業、一般家庭を問わずインターネットが急速に普及してきている。また、パーソナルコンピュータ(PC)だけでなく、テレビジョン受像機やDVDレコーダなどのAV機器や、エアコンディショナー、冷蔵庫のような白物家庭電気製品もインターネットに接続できるようになってきている。本願明細書では、上記インターネットなどのネットワークに接続されて通信する機器を、「通信機器」又は「機器」という。
家庭や企業内のローカルエリアネットワーク(以下、LANという。)からインターネットに接続する場合には、ネットワーク・アドレス変換(Network Address Translation;以下、NATという。)機能やネットワーク・アドレス・ポート変換(Network Address Port Translation;以下、NAPTという。)機能を有するルータ装置を用いるのが一般的になっている。
インターネットに接続された機器間において通信する場合には、機器毎に一意に割り当てられたグローバルIPアドレスが使用される。しかし、インターネットに接続する機器の急増により、グローバルIPアドレスの数が不足する傾向にある。そのため、インターネットに直接的には接続されずにLANを介してインターネットに接続された機器においては、RFC1918により規定されたLAN内においてのみ一意であるプライベートIPアドレスが使用されることが多い。ただし、プライベートIPアドレスはインターネット上においては一意ではなく、またその使用を許されていないため、プライベートIPアドレスを有する機器は、そのままではインターネットに接続された他の機器と通信できない。
NATもしくはNAPT機能は、こうした問題を解決するもので、プライベートIPアドレスとグローバルIPアドレスの相互変換を行い、LANに接続されかつプライベートIPアドレスが割り当てられた機器が、インターネットに接続された他の機器と通信できるようにする。
以下、NAPT機能の仕組みについて、図14乃至図16を用いて説明する。
図14は、従来技術に係る通信システムのネットワーク構成の一例を示すブロック図である。図14において、要求受諾機器13とNAPT機能を有するルータ装置104とはLAN106を介して接続され、ルータ装置104は、そのWAN側のポートにおいてインターネット(WAN)105に接続されている。サーバ装置11と、要求発行機器12もまた、インターネット(WAN)105に接続されている。
本願明細書では、いわゆるインターネットをLANと明確に区別するために、インターネットをWAN(Wide Area Network)と表記することにする。
図15は、NAPT機能を用いた通信の通信シーケンス図の一例である。図15において、パケット21は、要求受諾機器13からルータ装置104に送信されるパケットであり、パケット23は、ルータ装置104においてパケット21に対して往路変換処理のステップS22を実行することにより、ルータ装置104からサーバ装置11に送信されるパケットである。同様に、パケット25は、サーバ装置11からルータ装置104に送信されるパケットであり、パケット27は、ルータ装置104においてパケット25に対して復路変換処理のステップS26を実行することにより、ルータ装置104から要求受諾機器13に送信されるパケットである。また、図16は、ルータ装置104のNAPTテーブルの一例を示す表であり、ルータ装置104内のテーブルメモリ(図示せず。)には、このNAPTテーブルの内容が記憶されている。
ここで、図14に示されたように、サーバ装置11にはグローバルIPアドレス“130.74.23.6”が割り当てられ、ルータ装置104のWAN側にはグローバルIPアドレス“202.204.16.13”が割り当てられており、また要求受諾機器13にはプライベートIPアドレス“192.168.1.3”が割り当てられているものとする。
インターネット上においての通信に用いられるIPパケットには、送信元(ソース)を特定する発信元IPアドレスフィールド(以下、SAという。)と、宛先(ディスティネーション)を指定する宛先IPアドレスフィールド(以下、DAという。)が含まれている。また、通信プロトコルとして、TCP(Transmission Control Protocol)やUDP(User Datagram Protocol)を使用する場合には、IPパケットには、さらに送信元(ソース)のポート番号である発信元ポート番号フィールド(以下、SPという。)と宛先(ディスティネーション)のポート番号である宛先ポート番号フィールド(以下、DPという。)が含まれる。
要求受諾機器13が、サーバ装置11とTCP通信する場合には、例えば図15に示されたパケット21をルータ装置104に送信する。パケット21には、発信元を特定するSA“192.168.1.3”及びSP“2000”と、宛先を示すDA“130.743.23.6”及びDP“1200”とが含まれている。
ルータ装置104は、受信したパケット21に往路変換処理のステップS22を実行し、処理後のパケット23を、宛先であるサーバ装置11に送信する。往路変換処理のステップS22において、ルータ装置104は、プライベートIPアドレスであるSA“192.168.1.3”を、ルータ装置104のWAN側グローバルIPアドレスである“202.204.16.13”に置換し、同時にSP“2000”をルータ装置104のWAN側ポート番号“3400”に置換する。このとき、ルータ装置104は、図16のように、IPアドレス“192.168.1.3”及び“202.204.16.13”とポート番号“2000”及び“3400”との組を、NAPTテーブルに保存しておく。
さて、サーバ装置11はパケット23を受信すると、所定の応答処理のステップS24を行った後、パケット23に対する応答として、パケット25をルータ装置104に送信する。パケット25には、発信元を特定するSA“130.743.23.6”及びSP“1200”と、宛先を示すDA“202.204.16.13”及びDP“3400”とが含まれている。
ルータ装置104は、パケット25を受信すると、NAPTテーブルを参照し、パケット25に復路変換処理のステップS26を実行し、処理後のパケット27を要求受諾機器13に送信する。復路変換処理のステップS26において、ルータ装置104は、まずNAPTテーブルからDA“202.204.16.13”とDP“3400”の組を参照する。ここではこの組は存在しているので、ルータ装置104は、パケット25上のDAを“202.204.16.13”から“192.168.1.3”に置換し、パケット25上のDPを“3400”から“2000”に置換する。
NAPTテーブル内のデータは、その通信中は保持され、通信が終了すると破棄される。
以上の動作により、LANに接続されかつプライベートIPアドレスを持つ機器から、インターネットに接続された他の機器へ接続を確立して通信を開始することができる。ただし、この場合だと、反対に、インターネットに接続された機器から、LANに接続されかつプライベートIPアドレスを持つ機器への通信を開始することができない。
そこでこれを解決するために、静的NAPTと呼ばれる機能がある。すなわち、予め静的なNAPTテーブルをルータ装置104上に設定しておく。静的なNAPTテーブルの内容は、図16のNAPTテーブルと同様であるが、この場合WAN側のポート番号は、設定時に未使用のポート番号を指定しなければならない。静的NAPT機能を用いると、例えばインターネット側の機器から、設定されたグローバルIPアドレスとポート番号に対してパケットを送信すると、ルータ装置104が図15と同様にIPアドレスとポート番号の変換を行うことにより、LANに接続されかつプライベートIPアドレスを持つ要求受諾機器13にパケットが到達することになる。これにより、インターネットに接続された機器から、LANに接続されかつプライベートIPアドレスを持つ機器へ通信できるようになる。
ところで、ルータ装置104のグローバルIPアドレスは常に一定であるとは限らない。例えば、PPP(Point-to-Point Protocol)を用いてインターネットサービスプロバイダと接続し、又はDHCP(Dynamic Host Configuration Protocol)によりIPアドレスが動的に割り当てられる場合には、インターネットに接続する毎にグローバルIPアドレスが変わることがある。このため、接続先機器のグローバルIPアドレスを把握しておくのは困難となる。また、静的NAPTを用いていると、通信していない間も、LANに接続された機器へのアクセスが可能となるため、セキュリティが低くなってしまう。
こうした課題を解決するための通信システムが、特許文献1において提案されており、以下、図14乃至図17を用いて、特許文献1において提案されている通信システムについて説明する。
図17は、図14の通信システムの通信シーケンスの一例を示すシーケンス図である。ここで、図14に示されたように、要求発行機器12には、グローバルIPアドレスとして“8.117.12.109”が割り当てられているものとする。また要求受諾機器13は、一意に割り当てられた機器IDを内部のメモリ(図示せず。)に格納しているものとする。
要求受諾機器13は、定期的に、機器IDをペイロードに持つ機器登録パケット31を、UDPを用いてサーバ装置11に送信する。UDPパケットである機器登録パケット31のSAには、要求受諾機器13のプライベートIPアドレスである“192.168.1.3”が書き込まれているが、機器登録パケット31がルータ装置104を通るときに、上記説明したようにNAPT機能によって機器登録パケット31のSAとSPが変換され、サーバ装置11に送信される。サーバ装置11は、受信した機器登録パケット31を参照し、ステップS32において要求受諾機器13の機器ID、グローバルIPアドレス及びポート番号の組を保存しておく。
要求受諾機器13は、定期的に機器登録パケット31をサーバ装置11に送信するため、ルータ装置104のグローバルIPアドレスもしくはWAN側ポート番号が変更になった場合でも、ステップS32や、同様のステップS32Aなどが実行されることにより、サーバ装置11に保存された要求受諾機器13の機器ID、グローバルIPアドレス及びポート番号の組は自動的に更新される。
一方、要求発行機器12が要求受諾機器13との通信を所望する場合には、要求発行機器12は、まずサーバ装置11にTCP接続開始パケット33を送信することによってサーバ装置11とのTCP接続を確立し、接続相手である要求受諾機器13の機器IDを書き込んだ接続要求パケット34をサーバ装置11に送信する。サーバ装置11は、接続要求パケット34を受信すると、ステップS35において、内部のメモリ(図示せず。)に格納している機器IDリストを参照し、接続要求パケット34内に含まれた機器IDの情報と同じ機器IDの情報が存在すれば、この機器IDに関連付けられているIPアドレス及びポート番号が示す機器に対して、UDPを用いて接続要求通知パケット36を送信する。接続要求通知パケット36は、機器登録パケット31に対する応答としてルータ装置104に送信されるため、ルータ装置104においてIPアドレスとポート番号の変換が行われ、要求受諾機器13に到達できる。要求受諾機器13は、接続要求通知パケット36を受信すると、サーバ装置11に対してTCP接続開始パケット37を送信することによってサーバ装置11とのTCP接続を確立する。
以降、要求発行機器12が、TCP接続開始パケット33により開始されたTCP接続を用いてコマンド信号38をサーバ装置11に送信すると、サーバ装置11は、TCP接続開始パケット37により開始されたTCP接続を用いてコマンド信号38を要求受諾機器13に転送できるようになる。同様にして、要求受諾機器13が、TCP接続開始パケット37により開始されたTCP接続を用いてサーバ装置11にパケットを送信すると、サーバ装置11は、TCP接続開始パケット33により開始されたTCP接続を用いてこのパケットを要求発行機器12に転送する。
以上のようにして、サーバ装置11を中継することにより、インターネットに接続されかつグローバルIPアドレスを持つ機器である要求発行機器12と、LANに接続されかつプライベートIPアドレスを持つ機器である要求受諾機器13との間において、通信できるようになる。別のLANに接続された要求発行機器12が存在しかつ別のルータ装置を通してインターネットに接続されている場合でも、同様の動作により要求受諾機器13と通信できる。
また、特許文献2では、インターネットに接続されかつグローバルIPアドレスをそれぞれ有するが、互いのグローバルIPアドレスを知らない機器間において直接伝送を行うための、すなわちピアツーピア伝送を行うための情報処理システムが開示されている。グローバルIPアドレスを有するクライアント間であるパーソナルコンピュータ同士の接続をピアツーピア接続とし、その他のクライアント間の接続を、サーバを経由したクライアント・サーバ型接続とさせる。ピアツーピア接続はサーバから取得した互いのグローバルIPアドレスに基づいて確立され、クライアント・サーバ型接続からピアツーピア型接続への一部遷移によって、サーバに対するトラフィックの一局集中を避けることができる。
特許3445986号公報。 特開2003−203023号公報。
上記説明した特許文献1記載の通信システムは、常にサーバ装置11経由により通信するので、例えば機器間において動画データのように大容量のデータを伝送しようとすると、サーバ装置11に多大な負荷がかかるという問題があった。特に複数組の通信が同時に行われると、複数台のサーバ装置により分散処理を行っても対応できない可能性もある。
また、特許文献2記載の情報処理システムは、グローバルIPアドレスを持つ機器同士でのみピアツーピア伝送を行うようになっており、LANに接続されかつプライベートIPアドレスを持つ機器の場合はピアツーピア伝送を行わないようになっている。
本発明の目的は以上の問題点を解決し、プライベートIPアドレスをそれぞれ有しかつ異なるLANを介してそれぞれインターネットに接続された機器間においてピアツーピア伝送を実現し、かつ不正アクセスを許さないサーバ装置、要求発行機器、要求受諾機器及び通信システムを提供することにある。また、本発明の別の目的は、本発明はさらに、プログラムに従って動作する装置、又はプログラムに従って動作する装置にてなるシステムを、サーバ装置、要求発行機器、要求受諾機器又は通信システムとして動作させるプログラムを提供することにある。
第1の発明に係るサーバ装置は、ネットワークにそれぞれ接続された要求発行機器と要求受諾機器とを含む複数の機器と、上記ネットワークに接続されたサーバ装置とを備えた通信システムにおいて設けられ、上記要求発行機器から上記要求受諾機器への接続要求信号を転送するサーバ装置であって、
上記複数の機器のうち互いに接続を確立した一対の機器の識別情報の組を含む接続機器リストを格納するための接続機器リスト格納手段を備え、
上記要求受諾機器から定期的に送信される機器登録信号を受信し、
上記要求発行機器から送信される第1のTCP接続開始信号を受信することにより上記要求発行機器との間の第1のTCP接続を確立し、
上記確立された第1のTCP接続を用いて、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含みかつ上記要求受諾機器との接続の確立を要求する第1の接続要求信号を上記要求発行機器から受信し、
上記受信された第1の接続要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得するとともに、上記機器登録信号に対する応答信号として上記要求受諾機器に第2の接続要求信号を送信し、
上記要求受諾機器から送信された接続機器登録要求信号に応答して、上記取得された上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組を、上記接続機器リスト格納手段に格納された上記接続機器リストに追加することを特徴とする。
上記第1の発明に係るサーバ装置において、
上記第1の接続要求信号は、上記要求受諾機器のパスワード情報をさらに含み、
上記サーバ装置は、上記第1の接続要求信号に含まれた上記パスワード情報を上記第2の接続要求信号に付加して送信することを特徴とする。
上記第1の発明に係るサーバ装置は、
上記第1の接続要求信号を受信した後であってかつ上記第2の接続要求信号を送信する前に、上記要求受諾機器に第3の接続要求信号を送信し、上記第3の接続要求信号に対する応答信号として第2のTCP接続開始信号を上記要求受諾機器から受信することにより上記要求受諾機器との間において第2のTCP接続を確立し、
上記確立された第2のTCP接続を用いて、上記要求受諾機器に上記第2の接続要求信号を送信することを特徴とする。
上記第1の発明に係るサーバ装置は、
上記要求発行機器から送信される第3のTCP接続開始信号を受信することにより上記要求発行機器との間の第3のTCP接続を確立し、
上記確立された第3のTCP接続を用いて上記要求発行機器から送信され、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含み、かつ上記要求受諾機器との2回目以降の接続の確立を要求する第1の通信要求信号を受信し、
上記受信された第1の通信要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得し、上記接続機器リスト格納手段に格納された上記接続機器リストが、上記取得された上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組を含むときに、上記機器登録信号に対する応答信号として上記要求受諾機器に第2の通信要求信号を送信することを特徴とする。
上記第1の発明に係るサーバ装置は、上記第1の通信要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得した後であってかつ上記第2の通信要求信号を送信する前に、上記接続機器リスト格納手段に格納された上記接続機器リストが、上記第1の通信要求信号から取得された上記要求受諾機器の識別情報及び上記第1の通信要求信号から取得された上記要求発行機器の識別情報の組を含まないときには、上記第3のTCP接続を用いて上記要求発行機器にエラー通知信号を送信し、通信を中止することを特徴とする。
上記第1の発明に係るサーバ装置は、
上記第1の接続要求信号を受信した後であってかつ上記第2の接続要求信号を送信する前に、上記要求受諾機器に第3の接続要求信号を送信し、上記第3の接続要求信号に対する応答信号として第2のTCP接続開始信号を上記要求受諾機器から受信することにより上記要求受諾機器との間において第2のTCP接続を確立し、
上記確立された第2のTCP接続を用いて、上記要求受諾機器に上記第2の接続要求信号を送信し、
上記第1の通信要求信号を受信した後であってかつ上記第2の通信要求信号を送信する前に、上記要求受諾機器に第4の接続要求信号を送信し、上記第4の接続要求信号に対する応答信号として第4のTCP接続開始信号を上記要求受諾機器から受信することにより上記要求受諾機器との間において第4のTCP接続を確立し、
上記確立された第4のTCP接続を用いて、上記要求受諾機器に上記第2の通信要求信号を送信することを特徴とする。
上記第1の発明に係るサーバ装置において、
上記機器登録信号は上記要求受諾機器の機器IDを含み、
上記第1の接続要求信号は、上記要求受諾機器の上記機器IDと、上記要求発行機器の機器IDと、上記要求発行機器に関連付けられたIPアドレス及びポート番号とを含み、
上記サーバ装置は、
上記複数の機器にそれぞれ関連付けられたIPアドレス及びポート番号と、上記各機器の機器IDとからなる上記各機器に係る機器情報の組を含む機器情報リストを格納するための機器情報格納手段をさらに備え、
上記機器登録信号に含まれた上記要求受諾機器の機器IDと、上記機器登録信号の発信元IPアドレス及び発信元ポート番号とを、上記要求受諾機器に係る機器情報の組として、上記機器情報格納手段に格納された上記機器情報リストに追加し、
上記第1の接続要求信号を受信した後でありかつ上記第2の接続要求信号を送信する前に、上記第1の接続要求信号に含まれた上記要求受諾機器の機器IDを、上記機器情報格納手段に格納された上記機器情報リストから検索し、上記機器情報リスト上で、上記第1の接続要求信号に含まれる要求受諾機器の機器IDと一致した機器IDを含む機器情報の組に係る機器を上記要求受諾機器として識別し、上記機器情報リスト上で、上記識別された要求受諾機器に係る機器情報の組に含まれるIPアドレス及びポート番号を上記要求受諾機器に関連付けられたIPアドレス及びポート番号として識別し、
上記識別された要求受諾機器に対して、上記識別されたIPアドレス及びポート番号を宛先として、上記受信された第1の接続要求信号に含まれる上記要求発行機器に関連付けられたIPアドレス及びポート番号を含む第2の接続要求信号を送信し、
上記要求受諾機器から送信された接続機器登録要求信号に応答して、上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組として、上記要求受諾機器の機器ID及び上記要求発行機器の機器IDの組を上記接続機器リストに追加することを特徴とする。
上記第1の発明に係るサーバ装置において、
上記第1の通信要求信号は、上記要求受諾機器の上記機器IDと、上記要求発行機器の機器IDと、上記要求発行機器に関連付けられたIPアドレス及びポート番号とを含み、
上記サーバ装置は、
上記第1の通信要求信号を受信した後でありかつ上記第2の通信要求信号を送信する前に、上記第1の通信要求信号から、上記要求発行機器の識別情報及び上記要求受諾機器の識別情報として上記要求受諾機器の機器ID及び上記要求発行機器の機器IDを取得し、上記接続機器リスト格納手段に格納された上記接続機器リストが上記取得された要求受諾機器の機器ID及び上記要求発行機器の機器IDの組を含むとき、上記第1の通信要求信号に含まれた上記要求受諾機器の機器IDを、上記機器情報格納手段に格納された上記機器情報リストから検索し、上記機器情報リスト上で、上記第1の通信要求信号に含まれる要求受諾機器の機器IDと一致した機器IDを含む機器情報の組に係る機器を上記要求受諾機器として識別し、上記機器情報リスト上で、上記識別された要求受諾機器に係る機器情報の組に含まれるIPアドレス及びポート番号を上記要求受諾機器に関連付けられたIPアドレス及びポート番号として識別し、
上記識別された要求受諾機器に対して、上記識別されたIPアドレス及びポート番号を宛先として、上記受信された第1の通信要求信号に付加された上記要求発行機器に関連付けられたIPアドレス及びポート番号を含む第2の通信要求信号を送信することを特徴とする。
上記第1の発明に係るサーバ装置は、
送受信する信号を暗号化しかつ復号化するための第1及び第2の通信用共通鍵と、上記第1の通信用共通鍵を生成するための第2の共通鍵作成情報と、上記第2の通信用共通鍵を生成するための第4の共通鍵作成情報とを生成し、上記第1の通信用共通鍵を用いて受信する信号の復号化を実行し、上記第2の通信用共通鍵を用いて送信する信号の暗号化を実行する第1の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を格納した証明書情報格納手段とを備え、
上記第1の接続要求信号を受信する前に、上記要求発行機器に上記サーバ証明書情報を送信し、
上記要求発行機器から、上記サーバ証明書情報に応答して生成された第1の共通鍵作成情報を上記第1のTCP接続を用いて受信し、上記受信された第1の共通鍵作成情報に応答して上記第1の暗号通信手段により第2の共通鍵作成情報を生成し、上記第1の共通鍵作成情報及び上記第2の共通鍵作成情報に基づいて上記第1の暗号通信手段により第1の通信用共通鍵を生成する一方、上記第2の共通鍵作成情報を上記要求発行機器に上記第1のTCP接続を用いて送信し、上記第1の通信用共通鍵と同一の通信用共通鍵を上記第1の共通鍵作成情報及び上記第2の共通鍵作成情報に基づいて上記要求発行機器に生成させることにより上記第1の通信用共通鍵を上記要求発行機器との間で共有し、
上記要求発行機器から、上記生成された第1の通信用共通鍵を用いて暗号化された上記第1の接続要求信号を上記第1のTCP接続を用いて受信し、上記受信された第1の接続要求信号を、上記第1の通信用共通鍵を用いて上記第1の暗号通信手段により復号化し、
上記第2の接続要求信号を送信する前に、上記要求受諾機器に上記サーバ証明書情報を送信し、
上記要求受諾機器から、上記サーバ証明書情報に応答して生成された第3の共通鍵作成情報を上記第2のTCP接続を用いて受信し、上記受信された第3の共通鍵作成情報に応答して上記第1の暗号通信手段により第4の共通鍵作成情報を生成し、上記第3の共通鍵作成情報及び上記第4の共通鍵作成情報に基づいて上記第1の暗号通信手段により第2の通信用共通鍵を生成する一方、上記第4の共通鍵作成情報を上記要求受諾機器に上記第2のTCP接続を用いて送信し、上記第2の通信用共通鍵と同一の通信用共通鍵を上記第3の共通鍵作成情報及び上記第4の共通鍵作成情報に基づいて上記要求受諾機器に生成させることにより上記第2の通信用共通鍵を上記要求受諾機器との間で共有し、
上記第1の接続要求信号を受信した後であり、上記第2の通信用共通鍵を上記要求受諾機器との間で共有した後であり、かつ上記第2の接続要求信号を送信する前に、上記生成された第2の通信用共通鍵を用いて上記第1の暗号通信手段により上記第2の接続要求信号を暗号化することを特徴とする。
上記第1の発明に係るサーバ装置において、
上記第1の暗号通信手段はさらに、送受信する信号を暗号化しかつ復号化するための第3及び第4の通信用共通鍵と、上記第3の通信用共通鍵を生成するための第6の共通鍵作成情報と、上記第4の通信用共通鍵を生成するための第8の共通鍵作成情報とを生成し、上記第3の通信用共通鍵を用いて受信する信号の復号化を実行し、上記第4の通信用共通鍵を用いて送信する信号の暗号化を実行し、
上記サーバ装置は、
上記要求発行機器との間で上記第3のTCP接続を確立した後であってかつ上記第1の通信要求信号を受信する前に、上記要求発行機器から第5の共通鍵作成情報を上記第3のTCP接続を用いて受信し、上記受信された第5の共通鍵作成情報に応答して上記第1の暗号通信手段により第6の共通鍵作成情報を生成し、上記第5の共通鍵作成情報及び上記第6の共通鍵作成情報に基づいて上記第1の暗号通信手段により第3の通信用共通鍵を生成する一方、上記第6の共通鍵作成情報を上記要求発行機器に上記第3のTCP接続を用いて送信し、上記第3の通信用共通鍵と同一の通信用共通鍵を上記第5の共通鍵作成情報及び上記第6の共通鍵作成情報に基づいて上記要求発行機器に生成させることにより上記第3の通信用共通鍵を上記要求発行機器との間で共有し、
上記要求発行機器から、上記生成された第3の通信用共通鍵を用いて暗号化された上記第1の通信要求信号を上記第3のTCP接続を用いて受信し、上記受信された第1の通信要求信号を、上記第3の通信用共通鍵を用いて上記第1の暗号通信手段により復号化し、
上記要求受諾機器との間で上記第4のTCP接続を確立した後であってかつ上記第2の通信要求信号を送信する前に、上記要求受諾機器から第7の共通鍵作成情報を上記第4のTCP接続を用いて受信し、上記受信された第7の共通鍵作成情報に応答して上記第1の暗号通信手段により第8の共通鍵作成情報を生成し、上記第7の共通鍵作成情報及び上記第8の共通鍵作成情報に基づいて上記第1の暗号通信手段により第4の通信用共通鍵を生成する一方、上記第8の共通鍵作成情報を上記要求受諾機器に上記第4のTCP接続を用いて送信し、上記第4の通信用共通鍵と同一の通信用共通鍵を上記第7の共通鍵作成情報及び上記第8の共通鍵作成情報に基づいて上記要求受諾機器に生成させることにより上記第4の通信用共通鍵を上記要求受諾機器との間で共有し、
上記第1の通信要求信号を受信した後であり、上記第4の通信用共通鍵を上記要求受諾機器との間で共有した後であり、かつ上記第2の通信要求信号を送信する前に、上記第4の通信用共通鍵を用いて上記第1の暗号通信手段により上記第2の通信要求信号を暗号化することを特徴とする。
第2の発明に係る要求発行機器は、ネットワークにそれぞれ接続された要求発行機器と要求受諾機器とを含む複数の機器と、上記ネットワークに接続されたサーバ装置とを備えた通信システムにおいて設けられ、上記サーバ装置及び上記要求受諾機器と通信する要求発行機器であって、
上記要求受諾機器と最初に通信する場合には、上記サーバ装置に第1のTCP接続開始信号を送信することによって上記サーバ装置との間の第1のTCP接続を確立し、上記確立された第1のTCP接続を用いて、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含みかつ上記要求受諾機器との接続の確立を要求する第1の接続要求信号を上記サーバ装置に送信し、
上記要求受諾機器と2回目以降に通信する場合には、上記サーバ装置に第3のTCP接続開始信号を送信することによって上記サーバ装置との間の第3のTCP接続を確立し、上記確立された第3のTCP接続を用いて、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含みかつ上記要求受諾機器との2回目以降の接続の確立を要求する第1の通信要求信号を上記サーバ装置に送信し、
上記要求受諾機器から送信されかつ上記要求発行機器と上記要求受諾機器との間の通信を要求する通信開始信号を受信し、上記受信された通信開始信号に応答して上記要求発行機器と上記要求受諾機器との間の通信を受諾し、上記要求受諾機器との間の通信を開始することを特徴とする。
上記第2の発明に係る要求発行機器は、
上記要求受諾機器のパスワード情報を格納したパスワード情報格納手段を備え、
上記パスワード情報格納手段に格納された上記パスワード情報を上記第1の接続要求信号に付加して送信することを特徴とする。
上記第2の発明に係る要求発行機器は、上記第1の通信要求信号を送信した後に、上記第3のTCP接続を用いて上記サーバ装置からエラー通知信号を受信したときには、通信を中止することを特徴とする。
上記第2の発明に係る要求発行機器において、上記第1の接続要求信号及び上記第1の通信要求信号は、上記要求発行機器の識別情報として上記要求機器の機器IDを含み、上記要求受諾機器の識別情報として上記要求受諾機器の機器IDを含み、さらに、上記要求発行機器に関連付けられたIPアドレス及びポート番号を含むことを特徴とする。
上記第2の発明に係る要求発行機器は、
送受信する信号を暗号化しかつ復号化するための第1及び第3の通信用共通鍵と、上記第1の通信用共通鍵を生成するための第1の共通鍵作成情報と、上記第3の通信用共通鍵を生成するための第5の共通鍵作成情報とを生成し、上記第1及び第3の通信用共通鍵を用いて送信する信号の暗号化を実行する第2の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を認証する第1の証明書情報認証手段とを備え、
上記第1の接続要求信号を送信する前に、上記サーバ装置から上記サーバ証明書情報を受信し、
上記受信されたサーバ証明書情報を上記第1の証明書情報認証手段により認証し、上記受信されたサーバ証明書情報が正規であるか否かを確認し、
上記受信されたサーバ証明書情報を正規であると確認したとき、上記第2の暗号通信手段により第1の共通鍵作成情報を生成し、上記生成された第1の共通鍵作成情報を上記第1のTCP接続を用いて上記サーバ装置に送信し、上記サーバ装置から、上記第1の共通鍵作成情報に応答して生成された第2の共通鍵作成情報を上記第1のTCP接続を用いて受信し、上記第1の共通鍵作成情報及び上記第2の共通鍵作成情報に基づいて上記第2の暗号通信手段により第1の通信用共通鍵を生成する一方、上記第1の通信用共通鍵と同一の通信用共通鍵を上記第1の共通鍵作成情報及び上記第2の共通鍵作成情報に基づいて上記サーバ装置に生成させることにより上記第1の通信用共通鍵を上記サーバ装置との間で共有し、
上記第1の通信用共通鍵を生成して上記サーバ装置との間で共有した後であってかつ上記第1の接続要求信号を送信する前に、上記第1の通信用共通鍵を用いて上記第2の暗号通信手段により上記第1の接続要求信号を暗号化し、上記暗号化された上記第1の接続要求信号を上記第1のTCP接続を用いて上記サーバ装置に送信し、
上記第3のTCP接続を確立した後であってかつ上記第1の通信要求信号を送信する前に、上記第2の暗号通信手段により第5の共通鍵作成情報を生成し、上記生成された第5の共通鍵作成情報を上記第3のTCP接続を用いて上記サーバ装置に送信し、上記サーバ装置から、上記第5の共通鍵作成情報に応答して生成された第6の共通鍵作成情報を上記第3のTCP接続を用いて受信し、上記第5の共通鍵作成情報及び上記第6の共通鍵作成情報に基づいて上記第2の暗号通信手段により第3の通信用共通鍵を生成する一方、上記第3の通信用共通鍵と同一の通信用共通鍵を上記第5の共通鍵作成情報及び上記第6の共通鍵作成情報に基づいて上記サーバ装置に生成させることにより上記第3の通信用共通鍵を上記サーバ装置との間で共有し、
上記要求発行機器は、上記第3の通信用共通鍵を生成して上記サーバ装置との間で共有した後であってかつ上記第1の通信要求信号を送信する前に、上記第3の通信用共通鍵を用いて上記第2の暗号通信手段により上記第1の通信要求信号を暗号化し、上記暗号化された上記第1の通信要求信号を上記第3のTCP接続を用いて上記サーバ装置に送信することを特徴とする。
第3の発明に係る要求受諾機器は、ネットワークにそれぞれ接続された要求発行機器と要求受諾機器とを含む複数の機器と、上記ネットワークに接続されたサーバ装置とを備えた通信システムにおいて設けられ、上記サーバ装置及び上記要求発行機器と通信する要求受諾機器であって、
機器登録信号を上記サーバ装置に定期的に送信し、
上記機器登録信号に対する応答信号として、上記要求発行機器と上記要求受諾機器との接続の確立を要求する第2の接続要求信号を上記サーバ装置から受信したとき、上記受信された第2の接続要求信号に応答して、上記要求発行機器の所定の識別情報及び上記要求受諾機器の所定の識別情報の組を上記サーバ装置に登録させるための接続機器登録要求信号を上記サーバ装置に送信するとともに、上記要求発行機器と上記要求受諾機器との間の通信を開始する通信開始信号を上記要求発行機器に送信し、
上記機器登録信号に対する応答信号として、上記要求発行機器と上記要求受諾機器との2回目以降の接続の確立を要求する第2の通信要求信号を上記サーバ装置から受信したとき、上記受信された第2の通信要求信号に応答して上記通信開始信号を上記要求発行機器に送信し、
上記要求発行機器が上記通信開始信号に応答して上記要求受諾機器と上記要求発行機器との間の通信を受諾した後に、上記要求発行機器との通信を開始することを特徴とする。
上記第3の発明に係る要求受諾機器は、
上記要求受諾機器のパスワード情報を格納したパスワード情報格納手段を備え、
パスワード情報をさらに含む上記第2の接続要求信号を、上記第2のTCP接続を用いて上記サーバ装置から受信し、
上記第2の接続要求信号に含まれたパスワード情報が、上記パスワード情報格納手段に格納された上記要求受諾機器のパスワード情報と一致しているときに、上記サーバ装置に上記接続機器登録要求信号を送信するとともに上記要求発行機器に上記通信開始信号を送信することを特徴とする。
上記第3の発明に係る要求受諾機器は、
上記機器登録信号を上記サーバ装置に送信した後であって上記第2の接続要求信号を受信する前に、上記機器登録信号に対する応答信号として上記サーバ装置から第3の接続要求信号を受信したときに、上記受信された第3の接続要求信号に対する応答信号として第2のTCP接続開始信号を上記サーバ装置に送信することにより上記サーバ装置との間において第2のTCP接続を確立し、
上記確立された第2のTCP接続を用いて上記サーバ装置から上記第2の接続要求信号を受信し、
上記機器登録信号を上記サーバ装置に送信した後であって上記第2の通信要求信号を受信する前に、上記機器登録信号に対する応答信号として上記サーバ装置から第4の接続要求信号を受信したときに、上記受信された第4の接続要求信号に対する応答信号として第4のTCP接続開始信号を上記サーバ装置に送信することにより上記サーバ装置との間において第4のTCP接続を確立し、
上記確立された第4のTCP接続を用いて上記サーバ装置から上記第2の通信要求信号を受信することを特徴とする。
上記第3の発明に係る要求受諾機器は、上記機器登録信号に上記要求受諾機器の機器IDを付加して上記サーバ装置に送信し、
上記第2の接続要求信号及び上記第2の通信要求信号は、上記要求発行機器に関連付けられたIPアドレス及びポート番号を含み、
上記要求受諾機器は、上記サーバ装置から受信された上記第2の接続要求信号及び上記第2の通信要求信号に含まれる上記要求発行機器に関連付けられたIPアドレス及びポート番号を宛先として上記通信開始信号を送信することを特徴とする。
上記第3の発明に係る要求受諾機器は、
送受信する信号を暗号化しかつ復号化するための第2及び第4の通信用共通鍵と、上記第2の通信用共通鍵を生成するための第3の共通鍵作成情報と、上記第4の通信用共通鍵を生成するための第7の共通鍵作成情報とを生成し、上記第2及び第4の通信用共通鍵を用いて受信する信号の復号化を実行する第3の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を認証する第2の証明書情報認証手段とを備え、
上記第2の接続要求信号を受信する前に、上記サーバ装置から上記サーバ証明書情報を受信し、
上記受信されたサーバ証明書情報を上記第2の証明書情報認証手段により認証し、上記受信されたサーバ証明書情報が正規であるか否かを確認し、
上記受信されたサーバ証明書情報を正規であると確認したとき、上記第3の暗号通信手段により第3の共通鍵作成情報を生成し、上記生成された第3の共通鍵作成情報を上記第2のTCP接続を用いて上記サーバ装置に送信し、上記サーバ装置から、上記第3の共通鍵作成情報に応答して生成された第4の共通鍵作成情報を上記第2のTCP接続を用いて受信し、上記第3の共通鍵作成情報及び上記第4の共通鍵作成情報に基づいて上記第3の暗号通信手段により第2の通信用共通鍵を生成する一方、上記第2の通信用共通鍵と同一の通信用共通鍵を上記第3の共通鍵作成情報及び上記第4の共通鍵作成情報に基づいて上記サーバ装置に生成させることにより上記第2の通信用共通鍵を上記サーバ装置との間で共有し、
上記サーバ装置から、上記第2の通信用共通鍵を用いて暗号化された上記第2の接続要求信号を、上記第2のTCP接続を用いて受信し、上記受信された第2の接続要求信号を、上記第2の通信用共通鍵を用いて上記第3の暗号通信手段により復号化し、
上記第4のTCP接続を確立した後であってかつ上記第2の通信要求信号を受信する前に、上記第3の暗号通信手段により第7の共通鍵作成情報を生成し、上記生成された第7の共通鍵作成情報を上記第4のTCP接続を用いて上記サーバ装置に送信し、上記サーバ装置から、上記第7の共通鍵作成情報に応答して生成された第8の共通鍵作成情報を上記第4のTCP接続を用いて受信し、上記第7の共通鍵作成情報及び上記第8の共通鍵作成情報に基づいて上記第3の暗号通信手段により第4の通信用共通鍵を生成する一方、上記第4の通信用共通鍵と同一の通信用共通鍵を上記第7の共通鍵作成情報及び上記第8の共通鍵作成情報に基づいて上記サーバ装置に生成させることにより上記第4の通信用共通鍵を上記サーバ装置との間で共有し、
上記サーバ装置から、上記第4の通信用共通鍵を用いて暗号化された上記第2の通信要求信号を、上記第4のTCP接続を用いて受信し、上記受信された第2の通信要求信号を、上記第4の通信用共通鍵を用いて上記第3の暗号通信手段により復号化することを特徴とする。
第4の発明に係る通信システムは、ネットワークにそれぞれ接続された要求発行機器と要求受諾機器とを含む複数の機器と、上記ネットワークに接続されたサーバ装置とを備え、上記要求発行機器から上記要求受諾機器への接続要求信号を上記サーバ装置が転送し、上記要求発行機器と上記要求受諾機器との間で通信する通信システムであって、
上記サーバ装置は、上記複数の機器のうち互いに接続を確立した一対の機器の識別情報の組を含む接続機器リストを格納するための接続機器リスト格納手段を備え、
上記要求受諾機器は、機器登録信号を上記サーバ装置に定期的に送信し、
上記要求発行機器は、上記要求受諾機器と通信する際に、上記サーバ装置に第1のTCP接続開始信号を送信することによって上記サーバ装置との間の第1のTCP接続を確立し、上記確立された第1のTCP接続を用いて、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含みかつ上記要求受諾機器との接続の確立を要求する第1の接続要求信号を上記サーバ装置に送信し、
上記サーバ装置は、上記要求発行機器から送信された上記第1の接続要求信号に応答して、上記第1の接続要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得するとともに、上記機器登録信号に対する応答信号として上記要求受諾機器に第2の接続要求信号を送信し、
上記要求受諾機器は、上記サーバ装置から送信された上記第2の接続要求信号に応答して、上記サーバ装置に接続機器登録要求信号を送信するとともに、上記要求発行機器と上記要求受諾機器との間の通信を開始する通信開始信号を上記要求発行機器に送信し、
上記サーバ装置は、上記要求受諾機器から送信された接続機器登録要求信号に応答して、上記取得された上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組を、上記接続機器リスト格納手段に格納された上記接続機器リストに追加し、
上記要求発行機器は、上記要求受諾機器から送信された上記通信開始信号に応答して上記要求発行機器と上記要求受諾機器との間の通信を受諾し、上記要求受諾機器と上記要求発行機器との間の通信を開始することを特徴とする。
上記第4の発明に係る通信システムにおいて、
上記要求発行機器及び上記要求受諾機器は、上記要求受諾機器のパスワード情報を格納したパスワード情報格納手段を備え、
上記要求発行機器は、上記要求発行機器のパスワード情報格納手段に格納された上記パスワード情報を上記第1の接続要求信号に付加して送信し、
上記サーバ装置は、上記第1の接続要求信号に付加された上記パスワード情報を上記第2の接続要求信号に付加して送信し、
上記要求受諾機器は、上記要求発行機器から送信された上記第2の接続要求信号に付加されたパスワード情報が、上記要求受諾機器のパスワード情報格納手段に格納された上記パスワード情報と一致しているときに、上記サーバ装置に上記接続機器登録要求信号を送信するとともに上記要求発行機器に上記通信開始信号を送信することを特徴とする。
上記第4の発明に係る通信システムにおいて、
上記サーバ装置は、上記第1の接続要求信号に応答した後であってかつ上記第2の接続要求信号を送信する前に、上記要求受諾機器に第3の接続要求信号を送信し、
上記要求受諾機器は、上記送信された第3の接続要求信号に応答して上記サーバ装置に第2のTCP接続開始信号を送信することによって、上記サーバ装置との間において第2のTCP接続を確立し、
上記サーバ装置は、上記確立された第2のTCP接続を用いて、上記要求受諾機器に上記第2の接続要求信号を送信することを特徴とする。
上記第4の発明に係る通信システムにおいて、
上記要求発行機器は、上記要求受諾機器と2回目以降に通信する際に、上記サーバ装置に第3のTCP接続開始信号を送信することによって上記サーバ装置との間の第3のTCP接続を確立し、上記確立された第3のTCP接続を用いて、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含みかつ上記要求受諾機器との2回目以降の接続の確立を要求する第1の通信要求信号を上記サーバ装置に送信し、
上記サーバ装置は、上記要求発行機器から送信された上記第1の通信要求信号に応答して、上記第1の通信要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得し、上記接続機器リスト格納手段に格納された上記接続機器リストが、上記取得された上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組を含むときに、上記機器登録信号に対する応答信号として上記要求受諾機器に第2の通信要求信号を送信し、
上記要求受諾機器は、上記送信された第2の通信要求信号に応答して上記通信開始信号を上記要求発行機器に送信し、
上記要求発行機器は、上記要求受諾機器から送信された上記通信開始信号に応答して上記要求発行機器と上記要求受諾機器との間の通信を受諾し、上記要求受諾機器と上記要求発行機器との間の通信を開始することを特徴とする。
上記第4の発明に係る通信システムにおいて、上記サーバ装置は、上記第1の通信要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得した後であってかつ上記第2の通信要求信号を送信する前に、上記接続機器リスト格納手段に格納された上記接続機器リストが、上記第1の通信要求信号から取得された上記要求受諾機器の識別情報及び上記第1の通信要求信号から取得された上記要求発行機器の識別情報の組を含まないときには、上記第3のTCP接続を用いて上記要求発行機器にエラー通知信号を送信し、通信を中止することを特徴とする。
上記第4の発明に係る通信システムにおいて、
上記サーバ装置は、上記第1の接続要求信号に応答した後であってかつ上記第2の接続要求信号を送信する前に、上記要求受諾機器に第3の接続要求信号を送信し、
上記要求受諾機器は、上記送信された第3の接続要求信号に応答して上記サーバ装置に第2のTCP接続開始信号を送信することによって、上記サーバ装置との間において第2のTCP接続を確立し、
上記サーバ装置は、上記確立された第2のTCP接続を用いて、上記要求受諾機器に上記第2の接続要求信号を送信し、
上記サーバ装置は、上記第1の通信要求信号に応答した後であってかつ上記第2の通信要求信号を送信する前に、上記要求受諾機器に第4の接続要求信号を送信し、
上記要求受諾機器は、上記送信された第4の接続要求信号に応答して上記サーバ装置に第4のTCP接続開始信号を送信することによって、上記サーバ装置との間において第4のTCP接続を確立し、
上記サーバ装置は、上記確立された第4のTCP接続を用いて、上記要求受諾機器に上記第2の通信要求信号を送信することを特徴とする。
上記第4の発明に係る通信システムにおいて、
上記サーバ装置は、上記複数の機器にそれぞれ関連付けられたIPアドレス及びポート番号と、上記各機器の機器IDとからなる上記各機器に係る機器情報の組を含む機器情報リストを格納するための機器情報格納手段をさらに備え、
上記要求受諾機器は、上記機器登録信号に上記要求受諾機器の機器IDを付加して上記サーバ装置に送信し、
上記サーバ装置は、上記機器登録信号に付加された上記要求受諾機器の機器IDと、上記機器登録信号の発信元IPアドレス及び発信元ポート番号とを、上記要求受諾機器に係る機器情報の組として、上記機器情報格納手段に格納された上記機器情報リストに追加し、
上記要求発行機器は、上記要求受諾機器の上記機器IDと、上記要求発行機器の機器IDと、上記要求発行機器に関連付けられたIPアドレス及びポート番号とを上記第1の接続要求信号に付加して上記サーバ装置に送信し、
上記サーバ装置は、上記第1の接続要求信号に応答した後でありかつ上記第2の接続要求信号を送信する前に、上記第1の接続要求信号に含まれた上記要求受諾機器の機器IDを、上記機器情報格納手段に格納された上記機器情報リストから検索し、上記機器情報リスト上で、上記第1の接続要求信号に含まれた要求受諾機器の機器IDと一致した機器IDを含む機器情報の組に係る機器を上記要求受諾機器として識別し、上記機器情報リスト上で、上記識別された要求受諾機器に係る機器情報の組に含まれるIPアドレス及びポート番号を上記要求受諾機器に関連付けられたIPアドレス及びポート番号として識別し、
上記サーバ装置は、上記識別された要求受諾機器に対して、上記識別されたIPアドレス及びポート番号を宛先として、上記受信された第1の接続要求信号に付加された上記要求発行機器に関連付けられたIPアドレス及びポート番号を含む第2の接続要求信号を送信し、
上記要求受諾機器は、上記サーバ装置から受信された上記第2の接続要求信号に含まれる上記要求発行機器に関連付けられたIPアドレス及びポート番号を宛先として上記通信開始信号を送信し、
上記サーバ装置は、上記要求受諾機器から送信された接続機器登録要求信号に応答して、上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組として、上記要求受諾機器の機器ID及び上記要求発行機器の機器IDの組を上記接続機器リストに追加することを特徴とする。
上記第4の発明に係る通信システムにおいて、
上記要求発行機器は、上記要求受諾機器の上記機器IDと、上記要求発行機器の機器IDと、上記要求発行機器に関連付けられたIPアドレス及びポート番号とを上記第1の通信要求信号に付加して上記サーバ装置に送信し、
上記サーバ装置は、上記第1の通信要求信号に応答した後でありかつ上記第2の通信要求信号を送信する前に、上記第1の通信要求信号から、上記要求発行機器の識別情報及び上記要求受諾機器の識別情報として上記要求受諾機器の機器ID及び上記要求発行機器の機器IDを取得し、上記接続機器リスト格納手段に格納された上記接続機器リストが上記取得された要求受諾機器の機器ID及び上記要求発行機器の機器IDの組を含むとき、上記第1の通信要求信号に含まれた上記要求受諾機器の機器IDを、上記機器情報格納手段に格納された上記機器情報リストから検索し、上記機器情報リスト上で、上記第1の通信要求信号に含まれる要求受諾機器の機器IDと一致した機器IDを含む機器情報の組に係る機器を上記要求受諾機器として識別し、上記機器情報リスト上で、上記識別された要求受諾機器に係る機器情報の組に含まれるIPアドレス及びポート番号を上記要求受諾機器に関連付けられたIPアドレス及びポート番号として識別し、
上記サーバ装置は、上記識別された要求受諾機器に対して、上記識別されたIPアドレス及びポート番号を宛先として、上記受信された第1の通信要求信号に付加された上記要求発行機器に関連付けられたIPアドレス及びポート番号を含む第2の通信要求信号を送信し、
上記要求受諾機器は、上記サーバ装置から受信された上記第2の通信要求信号に含まれる上記要求発行機器に関連付けられたIPアドレス及びポート番号を宛先として上記通信開始信号を送信することを特徴とする。
上記第4の発明に係る通信システムにおいて、
上記サーバ装置は、送受信する信号を暗号化しかつ復号化するための第1及び第2の通信用共通鍵と、上記第1の通信用共通鍵を生成するための第2の共通鍵作成情報と、上記第2の通信用共通鍵を生成するための第4の共通鍵作成情報とを生成し、上記第1の通信用共通鍵を用いて受信する信号の復号化を実行し、上記第2の通信用共通鍵を用いて送信する信号の暗号化を実行する第1の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を格納した証明書情報格納手段とを備え、
上記要求発行機器は、送受信する信号を暗号化しかつ復号化するための第1の通信用共通鍵と、上記第1の通信用共通鍵を生成するための第1の共通鍵作成情報とを生成し、上記第1の通信用共通鍵を用いて送信する信号の暗号化を実行する第2の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を認証する第1の証明書情報認証手段とを備え、
上記要求受諾機器は、送受信する信号を暗号化しかつ復号化するための第2の通信用共通鍵と、上記第2の通信用共通鍵を生成するための第3の共通鍵作成情報とを生成し、上記第2の通信用共通鍵を用いて受信する信号の復号化を実行する第3の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を認証する第2の証明書情報認証手段とを備え、
上記サーバ装置は、上記第1の接続要求信号を受信する前に、上記要求発行機器に上記サーバ証明書情報を送信し、
上記要求発行機器は、上記送信されたサーバ証明書情報を上記第1の証明書情報認証手段により認証して上記サーバ証明書情報が正規であるか否かを確認し、上記サーバ証明書情報を正規であると確認したとき、上記第2の暗号通信手段により第1の共通鍵作成情報を生成し、上記生成された第1の共通鍵作成情報を上記第1のTCP接続を用いて上記サーバ装置に送信し、
上記サーバ装置は、上記送信された第1の共通鍵作成情報に応答して上記第1の暗号通信手段により第2の共通鍵作成情報を生成し、上記生成された第2の共通鍵作成情報を上記要求発行機器に上記第1のTCP接続を用いて送信し、
上記サーバ装置及び上記要求発行機器はそれぞれ、上記第1の共通鍵作成情報及び上記第2の共通鍵作成情報に基づいて上記第1及び第2の暗号通信手段により第1の通信用共通鍵を生成して共有し、
上記要求発行機器は、上記第1の通信用共通鍵を生成して上記サーバ装置との間で共有した後であってかつ上記第1の接続要求信号を送信する前に、上記第1の通信用共通鍵を用いて上記第2の暗号通信手段により上記第1の接続要求信号を暗号化し、上記暗号化された上記第1の接続要求信号を上記第1のTCP接続を用いて上記サーバ装置に送信し、
上記サーバ装置は、上記第1の通信用共通鍵を用いて暗号化されて送信された第1の接続要求信号を、上記第1の通信用共通鍵を用いて上記第1の暗号通信手段により復号化し、
上記サーバ装置は、上記第2の接続要求信号を送信する前に、上記要求受諾機器に上記サーバ証明書情報を送信し、
上記要求受諾機器は、上記送信されたサーバ証明書情報を上記第2の証明書情報認証手段により認証して上記サーバ証明書情報が正規であるか否かを確認し、上記サーバ証明書情報を正規であると確認したとき、上記第3の暗号通信手段により第3の共通鍵作成情報を生成し、上記生成された第3の共通鍵作成情報を上記第2のTCP接続を用いて上記サーバ装置に送信し、
上記サーバ装置は、上記送信された第3の共通鍵作成情報に応答して上記第1の暗号通信手段により第4の共通鍵作成情報を生成し、上記生成された第4の共通鍵作成情報を上記要求受諾機器に上記第2のTCP接続を用いて送信し、
上記サーバ装置及び上記要求受諾機器はそれぞれ、上記第3の共通鍵作成情報及び上記第4の共通鍵作成情報に基づいて上記第1及び第3の暗号通信手段により第2の通信用共通鍵を生成して共有し、
上記サーバ装置は、上記第1の接続要求信号を受信した後であり、上記第2の通信用共通鍵を生成して上記要求受諾機器との間で共有した後であり、かつ上記第2の接続要求信号を送信する前に、上記生成された第2の通信用共通鍵を用いて上記第1の暗号通信手段により上記第2の接続要求信号を暗号化し、暗号化された上記第2の接続要求信号を上記第2のTCP接続を用いて上記要求受諾機器に送信し、
上記要求受諾機器は、上記第2の通信用共通鍵を用いて暗号化されて送信された第2の接続要求信号を、上記第2の通信用共通鍵を用いて上記第3の暗号通信手段により復号化することを特徴とする。
上記第4の発明に係る通信システムにおいて、
上記第1の暗号通信手段はさらに、送受信する信号を暗号化しかつ復号化するための第3及び第4の通信用共通鍵と、上記第3の通信用共通鍵を生成するための第6の共通鍵作成情報と、上記第4の通信用共通鍵を生成するための第8の共通鍵作成情報とを生成し、上記第3の通信用共通鍵を用いて受信する信号の復号化を実行し、上記第4の通信用共通鍵を用いて送信する信号の暗号化を実行し、
上記第2の暗号通信手段はさらに、送受信する信号を暗号化しかつ復号化するための第3の通信用共通鍵と、上記第3の通信用共通鍵を生成するための第5の共通鍵作成情報とを生成し、上記第3の通信用共通鍵を用いて送信する信号の暗号化を実行し、
上記第3の暗号通信手段はさらに、送受信する信号を暗号化しかつ復号化するための第4の通信用共通鍵と、上記第4の通信用共通鍵を生成するための第7の共通鍵作成情報とを生成し、上記第4の通信用共通鍵を用いて受信する信号の復号化を実行し、
上記要求発行機器は、上記第3のTCP接続を確立した後であってかつ上記第1の通信要求信号を送信する前に、上記第2の暗号通信手段により第5の共通鍵作成情報を生成し、上記生成された第5の共通鍵作成情報を上記第3のTCP接続を用いて上記サーバ装置に送信し、
上記サーバ装置は、上記送信された第5の共通鍵作成情報に応答して上記第1の暗号通信手段により第6の共通鍵作成情報を生成し、上記生成された第6の共通鍵作成情報を上記要求発行機器に上記第3のTCP接続を用いて送信し、
上記サーバ装置及び上記要求発行機器はそれぞれ、上記第5の共通鍵作成情報及び上記第6の共通鍵作成情報に基づいて上記第1及び第2の暗号通信手段により第3の通信用共通鍵を生成して共有し、
上記要求発行機器は、上記第3の通信用共通鍵を生成して上記サーバ装置との間で共有した後であってかつ上記第1の通信要求信号を送信する前に、上記第3の通信用共通鍵を用いて上記第2の暗号通信手段により上記第1の通信要求信号を暗号化し、上記暗号化された上記第1の通信要求信号を上記第3のTCP接続を用いて上記サーバ装置に送信し、
上記サーバ装置は、上記第3の通信用共通鍵を用いて暗号化されて送信された第1の通信要求信号を、上記第3の通信用共通鍵を用いて上記第1の暗号通信手段により復号化し、
上記要求受諾機器は、上記第4のTCP接続を確立した後であってかつ上記第2の通信要求信号を受信する前に、上記第3の暗号通信手段により第7の共通鍵作成情報を生成し、上記生成された第7の共通鍵作成情報を上記第4のTCP接続を用いて上記サーバ装置に送信し、
上記サーバ装置は、上記送信された第7の共通鍵作成情報に応答して上記第1の暗号通信手段により第8の共通鍵作成情報を生成し、上記生成された第8の共通鍵作成情報を上記要求受諾機器に上記第4のTCP接続を用いて送信し、
上記サーバ装置及び上記要求受諾機器はそれぞれ、上記第7の共通鍵作成情報及び上記第8の共通鍵作成情報に基づいて上記第1及び第3の暗号通信手段により第4の通信用共通鍵を生成して共有し、
上記サーバ装置は、上記第1の通信要求信号を受信した後であり、上記第4の通信用共通鍵を生成して上記要求受諾機器との間で共有した後であり、かつ上記第2の通信要求信号を送信する前に、上記第4の通信用共通鍵を用いて上記第1の暗号通信手段により上記第2の通信要求信号を暗号化し、暗号化された上記第2の通信要求信号を上記第4のTCP接続を用いて上記要求受諾機器に送信し、
上記要求受諾機器は、上記第4の通信用共通鍵を用いて暗号化されて送信された第2の通信要求信号を、上記第4の通信用共通鍵を用いて上記第3の暗号通信手段により復号化することを特徴とする。
第5の発明に係るプログラムは、
プログラムに従って動作する装置を、上記第1の発明に係るサーバ装置、上記第2の発明に係る要求発行機器、又は上記第3の発明に係る要求受諾機器として動作させ、
プログラムに従って動作する複数の装置にてなるシステムを、上記第4の発明に係る通信システムとして動作させることを特徴とする。
従って、本発明によれば、サーバ装置を利用することにより、プライベートIPアドレスをそれぞれ有しかつ異なったLANを介してそれぞれインターネットに接続された機器である要求発行機器と要求受諾機器との間において、ピアツーピア通信を実現でき、かつ不正アクセスを許さないサーバ装置、要求発行機器、要求受諾機器及び通信システムを容易に提供することができる。本発明はさらに、インターネットに接続されたコンピュータ又は機器に読み込まれたときに、当該コンピュータ又は機器をサーバ装置、要求発行機器、要求受諾機器又は通信システムとして動作させるプログラムとして提供することもできる。
以下、本発明の実施形態について図1乃至図13を参照して説明する。
図1は、本発明の実施形態に係る通信システムのネットワーク構成の一例を示すブロック図である。要求発行機器102とNAPT機能を有するルータ装置104aとは要求発行側LAN106aを介して接続され、ルータ装置104aは、そのWAN側のポートにおいてインターネット(WAN)105に接続されている。同様に、要求受諾機器103とNAPT機能を有するルータ装置104bとは要求受諾側LAN106bを介して接続され、ルータ装置104bは、そのWAN側のポートにおいてインターネット(WAN)105に接続されている。サーバ装置101もまたインターネット(WAN)105に接続されている。
本実施形態の通信システムによれば、インターネット105にそれぞれ接続された要求発行機器102と要求受諾機器103とを含む複数の機器と、インターネット105に接続されたサーバ装置101とを備え、要求発行機器102から要求受諾機器103への接続要求メッセージをサーバ装置101が転送し、要求発行機器102と要求受諾機器103との間で通信する通信システムが提供される。この通信システムにおいて、サーバ装置101は、互いに接続を確立したことがある一対の機器の識別情報の組を含む接続機器リストを格納するための接続機器リスト格納手段を備えているが、本実施形態では、サーバ装置101内のテーブルメモリ(図示せず。)に格納された図13の機器情報リストを接続機器リストとして参照する。要求受諾機器103は、機器登録パケット201をサーバ装置101に定期的に送信している。要求発行機器102は、以前に接続を確立したことがない要求受諾機器103と最初に通信する際に、図2乃至図4の通信シーケンスに従い、まず、サーバ装置101にTCP接続開始パケット221を送信することによってサーバ装置101との間のTCP接続を確立し、確立されたTCP接続を用いて、要求発行機器102及び要求受諾機器の各機器IDと要求受諾機器103のパスワードとを含みかつ要求受諾機器103との接続の確立を要求する接続要求パケット227をサーバ装置101に送信する。サーバ装置101は、送信された接続要求パケット227に応答して、接続要求パケット227から要求発行機器102及び要求受諾機器の各機器IDを取得するとともに、機器登録パケット201に対する応答信号として要求受諾機器103に接続要求パケット236を送信する。要求受諾機器103は、送信された接続要求パケット236に応答して、接続機器登録要求パケット208をサーバ装置101に送信するとともに、要求発行機器102と要求受諾機器103との間の通信を開始するTCP接続開始パケット210を要求発行機器102に送信する。サーバ装置101は、送信された接続機器登録要求パケット208に応答して、接続要求パケット227から取得された要求受諾機器103の機器ID及び要求発行機器102の機器IDの組を、接続機器リストに追加する。要求発行機器102は、要求受諾機器103から送信されたTCP接続開始パケット210に応答して要求発行機器102と要求受諾機器103との間の通信を受諾し、要求受諾機器103と要求発行機器102との間の通信を開始する。
一方、要求発行機器102は、互いに接続を確立したことがある要求受諾機器103と通信する際に、図5乃至図7の通信シーケンスに従い、まず、サーバ装置101にTCP接続開始パケット221を送信することによってサーバ装置101との間のTCP接続を確立し、確立されたTCP接続を用いて、要求発行機器102の機器ID及び要求受諾機器の機器IDを含みかつ要求受諾機器103との接続の確立を要求する通信要求パケット227aをサーバ装置101に送信する。サーバ装置101は、送信された通信要求パケット227aに応答して、通信要求パケット227aから要求発行機器102の機器IDと要求受諾機器103の機器IDとを取得し、接続機器リストとして参照される機器情報リストが、取得された要求受諾機器103の機器ID及び要求発行機器102の機器IDの組を含むときに、機器登録パケット201に対する応答信号として上記要求受諾機器に第2の通信要求パケット236a信号を送信する。要求受諾機器103は、送信された通信要求パケット236aに応答してTCP接続開始パケット210を要求発行機器102に送信する。要求発行機器102は、要求受諾機器103から送信されたTCP接続開始パケット210に応答して要求発行機器102と要求受諾機器103との間の通信を受諾し、要求受諾機器103と要求発行機器102との間の通信を開始する。
本実施形態において、サーバ装置101、要求発行機器102及び要求受諾機器103は、専用の通信機器として構成されてもよく、又は、以下に説明される各ステップを実行するためのプログラムによって動作される汎用のコンピュータとして構成されてもよい。
本実施形態においては、図1に示すように、サーバ装置101にはグローバルIPアドレスとして“130.74.23.6”が割り当てられ、サーバ装置101は、それ自体のグローバルIPアドレスを格納したメモリ(図示せず。)と、機器情報リストを格納したテーブルメモリ(図示せず。)とを備えているものとする。要求発行機器102にはプライベートIPアドレスとして“192.168.1.11”が割り当てられ、要求受諾機器103にはプライベートIPアドレスとして“192.168.1.3”が割り当てられ、要求発行機器102は、それ自体のプライベートIPアドレス及びポート番号を格納したメモリ(図示せず。)を備え、要求受諾機器103は、それ自体のプライベートIPアドレス及びポート番号を格納したメモリ(図示せず。)を備えているものとする。ルータ装置104aにはグローバルIPアドレスとして“4.17.168.2”が割り当てられ、ルータ装置104bにはグローバルIPアドレスとして“202.204.16.13”が割り当てられているものとする。ルータ装置104aは、そのWAN側のポート番号及びそのグローバルIPアドレスと、要求発行機器102のプライベートIPアドレス及びポート番号とを含む、図16と同様のNAPTテーブル(図9を参照)の内容をその内部のテーブルメモリ(図示せず。)に格納している。ルータ装置104bもまた、そのWAN側のポート番号及びそのグローバルIPアドレスと、要求受諾機器103のプライベートIPアドレス及びポート番号とを含むNAPTテーブルの内容をその内部のテーブルメモリ(図示せず。)に格納している。
また、要求発行機器102は、一意に割り当てられた機器ID“1051”をその内部のメモリに格納し、要求受諾機器103は、一意に割り当てられた機器ID“2133”をその内部のメモリに格納しているものとする。これらの機器IDは、ピアツーピア通信を行う本実施形態の各機器に対して一意に定められた識別情報であって、例えば、当該機器の製造業者によって割り当てられた識別番号、又はMACアドレスを用いることが可能であるが、それらに限定されるものではない。
さらに要求受諾機器103は、秘密情報であるパスワードをその内部のメモリに格納しているものとする。後述するように要求受諾機器103とのピアツーピア通信を行うことを希望する要求発行機器102は、要求受諾機器102のパスワード及び機器IDと、ルータ装置104aのグローバルIPアドレス及びWAN側ポート番号とを予め取得して内部のメモリに格納しておく必要がある。
図2乃至図7は、図1の通信システムにおいて実行される通信シーケンスの一例を示すシーケンス図である。また、図10乃至図12に、図2乃至図7の通信シーケンスにおいて用いるいくつかのパケットの一例が示されている。
本発明の実施形態において、要求発行機器102が以前に通信したことがない要求受諾機器103との最初の通信を所望したときには、図2乃至図4の通信シーケンスに従って接続を確立し、要求発行機器102が以前に通信を行ったことがある要求受諾機器103との2回目以降の通信を所望したときには、図5乃至図7の通信シーケンスに従って接続を確立する。本実施形態において、通信システム中の各構成要素(すなわち、要求発行機器102、サーバ装置101及び要求受諾機器103)が最初の通信と2回目以降の通信とを識別するために、最初の通信では、要求発行機器102が要求受諾機器103のパスワードを送信し、2回目以降の通信では、要求発行機器102が要求受諾機器103のパスワードを送信しないものとする。それにより、サーバ装置101は、図3のパケット227又は図6のパケット227aを要求発行機器102から受信した場合に、受信したパケットがパスワードを含んでいるならばそれを最初の通信における接続要求パケット227であると判断し、図2の通信シーケンスに従って動作し、受信したパケットがパスワードを含んでいないならばそれを2回目以降の通信における通信要求パケット227aであると判断して、図5の通信シーケンスに従って動作する。同様に、要求受諾機器103は、図4のパケット236又は図7のパケット236aをサーバ装置101から受信した場合に、受信したパケットがパスワードを含んでいるならばそれを最初の通信における接続要求パケット236であると判断し、図2の通信シーケンスに従って動作し、受信したパケットがパスワードを含んでいないならばそれを2回目以降の通信における通信要求パケット236aであると判断して、図5の通信シーケンスに従って動作する。
要求受諾機器103は、定期的に、又は所定の周期を有して周期的に、要求受諾機器103の機器IDをペイロードに持つ機器登録パケット201を、UDPを用いてサーバ装置101に送信する。図10(a)に示すように、要求受諾側LAN106b内において、機器登録パケット201のSAには“192.168.1.3”が書き込まれ、SPには“2000”が書き込まれている。機器登録パケット201はルータ装置104bを介してサーバ装置101に送信され、機器登録パケット201がルータ装置104bを通るときに、ルータ装置104bは、そのNAPT機能により、機器登録パケット201上のSAを“202.204.16.13”に変換し、機器登録パケット201上のSPを“3400”に変換する。図10(b)に示された、NAPT機能によって変換された後の機器登録パケット201は、インターネット(WAN)105経由によりサーバ装置101に送信される。
サーバ装置101は、インターネット105を介してサーバ装置101に接続された各機器に係る機器情報の組を含む機器情報リストを格納するためのテーブルメモリ(図示せず。)を備えている。図13に、サーバ装置101内のテーブルメモリに格納した機器情報リストの一例を示す。図13の機器情報リストにおいて、機器情報の組は、インターネット(WAN)105に接続された複数の機器にそれぞれ関連付けられたIPアドレス及びポート番号と、上記各機器の機器IDとからなる。図13の機器情報リストは、上記機器情報の組に含まれる機器IDによって示される機器との間ですでに接続を確立した機器(以下、既接続機器という。)の機器IDをさらに含み、それによって、機器情報リストは、すでに互いに接続を確立したことがある一対の機器の機器IDの組(すなわち、上記機器情報の組に含まれる機器IDと、この機器IDによって示される機器との間ですでに接続を確立した機器の機器IDとの組)を含む接続機器リストとしても参照されることが可能である。変形例として、接続機器リストは、機器情報リストのためのテーブルメモリとは別の記憶装置に格納されていてもよい。
サーバ装置101は、受信した機器登録パケット201のSA、SP及びペイロードを参照し、ステップS202において、要求受諾機器103の機器IDと、ルータ装置104bのグローバルIPアドレスと、ルータ装置104bのWAN側のポート番号との組を、要求受諾機器103に対応する機器情報の組(すなわち、機器情報リストにおける要求受諾機器103のための項目)として、サーバ装置101内のテーブルメモリに格納して保存する。本実施形態では、ルータ装置104bのグローバルIPアドレスとWAN側のポート番号とを、要求受諾機器103に関連付けられたIPアドレス及びポート番号として参照する。すなわち、サーバ装置101が要求受諾機器103に対してパケットを送信するときに、要求受諾機器103をインターネット105に接続するルータ装置104bのグローバルIPアドレス及びWAN側のポート番号を宛先として参照する。
要求受諾機器103は、定期的に機器登録パケット201をサーバ装置101に送信するので、ルータ装置104bのグローバルIPアドレスもしくはWAN側ポート番号が変更になった場合でも、ステップS202や同様のステップS202aが定期的に実行されることにより、サーバ装置101上の機器情報リストは自動的に更新される。
以下、最初に、要求発行機器102が要求受諾機器103と初めて通信する場合について説明する。要求発行機器102は、要求受諾機器103と通信したことがあるか否かについての情報を内部のメモリ(図示せず。)に記憶している。要求発行機器102が、以前に通信を確立したことのない要求受諾機器103とのデータ通信を所望する場合には、このことを通知する接続要求メッセージを、サーバ装置101を介して要求受諾機器103に伝達する。要求発行機器102は、接続要求メッセージを要求受諾機器103に伝達するために、最初に、要求発行機器102とサーバ装置101との間において第1の接続要求シーケンスのステップS203を実行する。
第1の接続要求シーケンスのステップS203は、要求発行機器102及び要求受諾機器103の各機器ID、要求受諾機器103のパスワード、要求発行機器102に関連付けられたIPアドレス及びポート番号のような秘密情報を伝送する必要があるので、本実施形態ではSSLを用いて暗号化される。まず、後述の接続要求パケット227の送信などを暗号化するために用いられるSSL通信について図3及び図8を用いて説明する。
図8は、要求発行機器102及び要求受諾機器103に対してサーバ装置101の正当性を認証するための認証局装置51を示すブロック図であって、特に、サーバ装置101の正当性を証明するためのサーバ証明書データ65の配付及び認証方法を示す図である。図8では、ルータ装置104a及び104bなどは認証に関する説明では本質的ではないので省略した。図8において、認証局装置(CA)51は、固有のCA公開鍵52及びCA秘密鍵53のペアを認証局装置51のメモリ(図示せず。)に格納し、また、サーバ装置101は、固有のサーバ秘密鍵61及びサーバ公開鍵62のペアと、認証局装置51によって発行されたサーバ証明書データ65とを、サーバ装置101のメモリ(図示せず。)に格納している。サーバ証明書データ65は、サーバ公開鍵62と、認証局装置51によって生成された署名64とを備えて構成される。
図2の第1の接続要求シーケンスのステップS203及び第2の接続要求シーケンスのステップS206の処理を実行するために、まず予め、サーバ装置101は、以下に説明する処理に従って、認証局装置51からサーバ証明書データ65を発行してもらう必要がある。
認証局装置51は、予めCA公開鍵52とCA秘密鍵53のペアを格納したメモリ(図示せず。)を備えている。サーバ装置101は、まずサーバ公開鍵62とサーバ秘密鍵61のペアを生成する。サーバ装置101は、サーバ公開鍵62とサーバ装置101に関する情報とを、サーバ証明書データ要求パケット63として認証局装置51に送信し、サーバ証明書データ65の発行を依頼する。認証局装置51は、サーバ証明書データ要求パケット63を受信すると、CA秘密鍵53を用いて、サーバ装置101から受信した情報やその他必要な情報から署名64を生成し、サーバ装置101から受信した情報やその他必要な情報及び署名64を組み合わせたデータをサーバ証明書データ65としてサーバ装置101に対して発行する。発行されたサーバ証明書データ65は、サーバ証明書データ発行パケット54として、認証局装置51からサーバ装置101に送信される。サーバ装置101は、受信したサーバ証明書データ65をサーバ装置101の内部のメモリに格納しておく。
また、クライアント装置である要求発行機器102及び要求受諾機器103は、予め認証局装置51からCA公開鍵52を取得し、内部のメモリに格納しておく。なお、一般に、CA公開鍵52は、認証局装置51の情報などと合わせたCA証明書データパケット55の形態でクライアント装置(すなわちサーバ装置101と通信する他の機器)などに配布される。要求発行機器102及び要求受諾機器103は、後述のように、サーバ装置101からのサーバ証明書データパケット224を介してサーバ証明書データ65を受信すると、要求発行機器102及び要求受諾機器103のそれぞれの証明書情報認証処理部(図示せず。)を用いて、内部のメモリに格納しているCA公開鍵52でサーバ証明書データ65内の署名64を認証することにより、サーバ証明書データ65内のサーバ公開鍵62の正当性を確認することができる。
実際に、要求発行機器102とサーバ装置101の間においての秘密通信である第1の接続要求シーケンスのステップS203は、以下説明するように実行される。
図3は、第1の接続要求シーケンスS203の詳細な処理を示すシーケンス図であり、SSL通信を用いて接続要求パケット227を送信するためのフローを示す図である。図3において、参照番号73は秘密通信に用いる通信用共通鍵を示す。
サーバ装置101は、送受信する信号を暗号化しかつ復号化するための通信用共通鍵73及び83を生成し、生成した通信用共通鍵73を用いて、要求発行機器102との間で送受信する信号の暗号化及び復号化を実行し、通信用共通鍵83を用いて、要求受諾機器103との間で送受信する信号の暗号化及び復号化を実行する暗号通信処理部をさらに備えるものとする(図示せず。)。サーバ装置101の暗号通信処理部は、通信用共通鍵73を生成するためのサーバ装置側通信用共通鍵作成情報72と、通信用共通鍵83を生成するためのサーバ装置側通信用共通鍵作成情報82とをさらに生成する。要求発行機器102は、送受信する信号を暗号化しかつ復号化するための通信用共通鍵73を生成し、生成した通信用共通鍵73を用いて、サーバ装置101との間で送受信する信号の暗号化及び復号化を実行する暗号通信処理部と、サーバ証明書データ65を認証する証明書情報認証処理部とをさらに備えるものとする(いずれも図示せず。)。要求発行機器102の暗号通信処理部は、通信用共通鍵73を生成するための要求発行機器側通信用共通鍵作成情報71をさらに生成する。
SSL通信において、クライアント側である要求発行機器102は、まず、TCP接続開始パケット221を、ルータ装置104aを介してサーバ装置101に送信することによって、TCP接続によるサーバ装置101との通信開始を要求する。ここで、図9に、ルータ装置104aの内部のメモリに格納しているNAPTテーブルの一例を示す。TCP接続開始パケット221がルータ装置104aを通るときに、ルータ装置104aは、そのNAPT機能を用いて、上記NAPTテーブルに従って、TCP接続開始パケット221上のSAを“192.168.1.11”から“4.17.168.2”に変換し、TCP接続開始パケット221上のSPを“1500”から“7000”に変換する。また、ルータ装置104aが要求発行機器102宛のパケットを受信するとき、当該パケットのDAに対して上記の変換と逆の変換を実行し、当該パケットのDPに対しても別の変換を実行して要求発行機器102に送信する。以下、本願明細書では、説明の簡単化のためにルータ装置104aのNAPT処理動作について言及することを省略するが、実際に要求発行機器102がインターネット(WAN)105上のサーバ装置101又は他の機器との間でパケットを送受信する際には、常にルータ装置104aを介して送受信し、常にルータ装置104aが当該パケットに対してNAPT処理を実行するものとする。
次いで、要求発行機器102とサーバ装置101は、暗号化仕様交渉のステップを実行することにより、秘密通信で用いる暗号化方式の仕様を相互に確認する。要求発行機器102は、最初に、TCP接続開始パケット221で確立されたTCP接続(以下、第1のTCP接続という。)を用いて、暗号化通信開始要求パケット(client_helloパケットともいう。)222をサーバ装置101に送信する。暗号化通信開始要求パケット222の中には、使用可能なSSLのバージョン、使用可能な暗号化方式のリスト、セッションIDなどが書き込まれ、その中に、要求発行機器102が生成した乱数ClientHello.randamも含まれている。サーバ装置101は、暗号化通信開始要求パケット222を受信し、通信を開始することを了承すると、第1のTCP接続を用いて暗号化通信開始応答パケット(server_helloパケットともいう。)223を要求発行機器102に送信する。この暗号化通信開始応答パケット223は、使用するSSLのバージョン(要求発行機器102とサーバ装置101との両方がサポートする中で最も高いバージョン)、セッションID、使用する暗号化方式などを含み、さらに、サーバ装置101において乱数ClientHello.randamと同様に生成された乱数ServerHello.randamを含んでいる。以下この第1の接続要求シーケンスのステップS203では、暗号化通信開始応答パケット223において指定されたSSLのバージョン及び暗号化方式が使用される。これらの乱数ClientHello.randam及びServerHello.randamは、32ビットのタイムスタンプと、28バイトの乱数(もしくは十分安全な疑似乱数)として、要求発行機器102とサーバ装置101それぞれが独立に生成する。これらの乱数ClientHello.randam及びServerHello.randamをそれぞれ含む暗号化通信開始要求パケット222及び暗号化通信開始応答パケット223は、暗号化されずに送信される。
次にサーバ装置101は、要求発行機器102にサーバ証明書データパケット224を送信する。要求発行機器102へのサーバ証明書データパケット224の送信は、暗号化通信開始応答パケット223送信の後に限らず、後述される要求発行機器側通信用共通鍵作成情報パケット225の受信の前であれば(例えば、第1の接続要求シーケンスのステップS203の前)、いつでもよい。要求発行機器102の証明書情報認証処理部は、上記説明したように、内部に格納しているCA公開鍵52を用いて、送信されたサーバ証明書データパケット224内のサーバ証明書データ65が正規のものであるか否かを確認する。
要求発行機器102は、その証明書情報認証処理部を用いて、送信されたサーバ証明書データ65が正規のものであると確認すると、要求発行機器側通信用共通鍵作成情報71及びサーバ装置側通信用共通鍵作成情報72の送受信を含む、共通鍵作成情報交換のステップを開始する。
共通鍵作成情報交換のステップにおいて、最初に、要求発行機器102は、要求発行機器102の暗号通信処理部により要求発行機器側通信用共通鍵作成情報71を生成して内部のメモリ(図示せず。)に格納するとともに、この生成された共通鍵作成情報71を含む要求発行機器側通信用共通鍵作成情報パケット225を、第1のTCP接続を用いてサーバ装置101に送信する。サーバ装置101は、送信された要求発行機器側通信用共通鍵作成情報パケット225に応答して、サーバ装置101の暗号通信処理部により、サーバ装置側通信用共通鍵作成情報72を生成して内部のメモリ(図示せず。)に格納するとともに、この生成された共通鍵作成情報72を含むサーバ装置側通信用共通鍵作成情報パケット226を、第1のTCP接続を用いて要求発行機器102に送信する。要求発行機器102及びサーバ装置101は、双方の共通鍵作成情報71及び72に基づいて、それぞれの暗号通信処理部により同一の通信用共通鍵73をそれぞれ生成する。これにより、要求発行機器102とサーバ装置101とで通信用共通鍵73を共有することができる。
共通鍵作成情報交換の実施形態は、SSLの鍵交換において使用される暗号化方式によって変化する。RSA暗号化方式を使用する場合において、要求発行機器102の暗号通信処理部は、要求発行機器側通信用共通鍵作成情報71として、プリマスタシークレット(Pre Master Secret:PMS)と呼ばれる48バイトの乱数を生成し、サーバ証明書データ65に含まれるサーバ公開鍵62を用いて上記生成されたPMSを暗号化する。次いで、要求発行機器102は、第1のTCP接続を用いて、暗号化されたPMSをサーバ装置101に送信する。サーバ装置101は暗号通信処理部を使用し、暗号化された状態で受信したPMSを、自分の持っているサーバ秘密鍵61を用いて復号化することによって、送信されたPMSを取得する。一方、サーバ装置側通信用共通鍵作成情報72の生成及び送信は省略される。サーバ装置101及び要求発行機器102は、このPMSを使って通信用共通鍵73を作成する(詳細後述)ことにより鍵共有を行う。
ディフィー−ヘルマン(Diffie-Hellman)暗号化方式を使用する場合は、要求発行機器102及びサーバ装置101は、ディフィー−ヘルマン鍵共有に用いるための2つのパラメータ(すなわち素数pとその素数の原始根g)について予め同意している。サーバ証明書パケット224を受信した後、要求発行機器102は乱数aを生成し、pを法とするgの最小の正の剰余を要求発行機器側通信用共通鍵作成情報71として計算し、この共通鍵作成情報71を含む要求発行機器側通信用共通鍵作成情報パケット225をサーバ装置101に送信する一方、サーバ装置101は乱数bを生成し、pを法とするgの最小の正の剰余をサーバ装置側通信用共通鍵作成情報72として計算し、この共通鍵作成情報72を含むサーバ装置側通信用共通鍵作成情報パケット226を要求発行機器102に送信する。従って、互いに送信されるこれらの共通鍵作成情報が、ディフィー−ヘルマン公開鍵として用いられる。さらに、これらの共通鍵作成情報71及び72を送信するときに、要求発行機器102及びサーバ装置101のそれぞれの署名を付加してもよい。
また、同じディフィー−ヘルマン暗号化方式でも、固定ディフィー−ヘルマン暗号化方式の場合には、サーバ装置101からの情報はサーバ証明書データ65に含まれる値を使用するので、この場合はサーバ装置側通信用共通鍵作成情報72の生成及び送信は省略される。
以上のように、要求発行機器102及びサーバ装置101の間において共通鍵作成情報71及び72が交換されると、これらの共通鍵作成情報71及び72を用いることによって、後の通信において秘密鍵として用いるための通信用共通鍵73が生成される。通信用共通鍵73を生成するためには、互いに交換された共通鍵作成情報71及び72から、最初にプリマスタシークレット(PMS)を生成する。RSA暗号化方式の場合には、PMSは、上述のように要求発行機器側通信用共通鍵作成情報71である。ディフィー−ヘルマン暗号化方式の場合には、両者のディフィー−ヘルマン公開鍵を用いてPMSを生成する。すなわち、サーバ装置101は、受信したpを法とするgの最小の正の剰余をb乗した値の、pを法とする最小の正の剰余を計算してPMSとし、要求発行機器102は、受信したpを法とするgの最小の正の剰余をa乗した値の、pを法とする最小の正の剰余を計算してPMSとする。ディフィー−ヘルマン暗号化方式を用いた場合において、要求発行機器102及びサーバ装置101のそれぞれにおいて計算されたPMSは、pを法とするgabの最小の正の剰余に等しい。
PMSから通信用共通鍵73を作成するためには、MD5(Message Digest 5)とSHA(Secure Hash Algorithm)との2つのハッシュアルゴリズムを使用し、以下のように計算する。
[数1]
共通鍵master_secret
= MD5(PMS || SHA('A' || PMS || ClientHello.randam || ServerHello.randam)) ||
MD5(PMS || SHA('BB' || PMS || ClientHello.randam || ServerHello.randam)) ||
MD5(PMS || SHA('CCC' || PMS || ClientHello.randam || ServerHello.randam))
ここで「||」はビット列の連結を表す。
以降、要求発行機器102及びサーバ装置101は、数1を用いて計算された共通鍵master_secretを通信用共通鍵73として用いて、接続要求パケット227の暗号化及び復号化を行うことにより、秘密通信を行うことが可能となる。すなわち、要求発行機器102及びサーバ装置101の間での通信用共通鍵73の共有が完了すると、要求発行機器102は、第1の接続要求パケット227を送信する前に、接続相手である要求受諾機器103の機器IDと、要求発行機器102の機器IDと、要求受諾機器103のパスワードと、要求発行側のIPアドレス及びポート番号(すなわち、要求発行機器102に関連付けられかつ通信に用いるためのIPアドレス及びポート番号)とを含むデータを通信用共通鍵73を用いて要求発行機器102の暗号通信手段により暗号化する。ここで、要求発行機器102に関連付けられたIPアドレス及びポート番号は、要求発行機器102をインターネット105に接続するルータ装置104aのグローバルIPアドレス及びWAN側ポート番号である。要求発行機器102は、この暗号化されたデータをペイロードとする接続要求パケット227を生成し、生成された接続要求パケット227を、第1のTCP接続を用いてサーバ装置101に送信する。詳しくは、要求発行機器102は、図10(c)に示された接続要求パケット227をルータ装置104aに送信し、ルータ装置104aは受信した接続要求パケット227に対してNAPT処理を実行し、図10(d)に示されたNAPT処理後の接続要求パケット227をサーバ装置101に送信する。一方、サーバ装置101は、秘密情報として暗号化されたデータを含む接続要求パケット227を、第1のTCP接続を用いて要求発行機器102から受信すると、通信用共通鍵73を用いて、上記暗号化されたデータをサーバ装置101の暗号通信処理部により復号化する。
接続要求パケット227に書き込まれたルータ装置104aのWAN側グローバルIPアドレスとWAN側ポート番号は、後のTCP接続開始パケット210とデータ通信シーケンスのステップS211に係るパケットとを送受信する際に使用される。すなわち、要求受諾機器103が要求発行機器102にTCP接続開始パケット210を送信するとき、ルータ装置104aのWAN側グローバルIPアドレス及びWAN側ポート番号がこの送信されたパケットに書き込まれており、このパケットに書き込まれたルータ装置104aのWAN側グローバルIPアドレス及びWAN側ポート番号は、ルータ装置104aのNAPT機能を用いて要求発行機器102のプライベートIPアドレス及びポート番号に変換できるものとする。要求発行機器102と要求受諾機器103が、TCP接続開始パケット210によって確立されたTCP接続上においてデータ通信シーケンスのステップS211に係るパケットを送受信する際(後述)にも、このパケットに書き込まれたルータ装置104aのWAN側グローバルIPアドレス及びWAN側ポート番号は、ルータ装置104aのNAPT機能を用いて要求発行機器102のプライベートIPアドレス及びポート番号と相互変換できるものとする。
例えば、要求発行機器102が要求受諾機器103からのTCP接続開始パケット210を受信するためのポート番号を“1600”とすると、このときのルータ装置104aのNAPTテーブルは図9のようになる。
図9のNAPTテーブルの2行目が、要求発行機器102が要求受諾機器103からのTCP接続開始パケット210とその後のデータ通信シーケンスのステップS211におけるパケットとを受信するための変換テーブルである。要求受諾機器103は、グローバルIPアドレス“4.17.168.2”及びポート番号“5000”を有するルータ装置104aに対してTCP接続を確立するためにTCP接続開始パケット210を送信すると、ルータ装置104aのNAPT機能により、TCP接続開始パケット210上に書き込まれたルータ装置104aのIPアドレスとポート番号が要求発行機器102のプライベートIPアドレスとポート番号とに変換されて、最終的に、要求受諾機器103は、要求発行機器102に対してTCP接続を確立することができる。
サーバ装置101は、接続要求パケット227を受信すると、ステップS204において、内部のテーブルメモリに格納している図13の機器情報リストを参照し、受信された接続要求パケット227に含まれている接続相手である要求受諾機器103の機器ID“2133”を機器情報リストから検索する。機器情報リスト上で“2133”と一致した機器IDが見つかると、サーバ装置101は、この機器ID“2133”を含む機器情報の組に係る機器を接続相手の要求受諾機器103として識別し、また、機器情報リスト上で、識別された要求受諾機器103に係る機器情報の組に含まれるIPアドレス“202.204.16.13”及びポート番号“3400”を、要求受諾機器103に関連付けられたIPアドレス及びポート番号として識別する。サーバ装置101はまた、要求受諾機器103に関連付けられたIPアドレス及びポート番号を識別することに加えて、接続要求パケット227に含まれた要求発行機器102の機器ID及び要求受諾機器103の機器IDの組を、後のステップS209のために、内部のメモリに保存しておく。
サーバ装置101は、受信された接続要求パケット227に含まれた要求発行機器102に関連付けられたIPアドレス及びポート番号を要求受諾機器103に対してすぐには送信せず、まず、要求受諾機器103に関連付けられている(すなわち、機器ID“2133”と同じ機器情報の組に含まれた)IPアドレス“202.204.16.13”及びポート番号“3400”を宛先として有する接続要求通知パケット205をUDPを用いて送信する。接続要求通知パケット205は、機器登録パケット201に対する応答信号としてルータ装置104bに送信されるので、ルータ装置104bにおいてIPアドレス及びポート番号の変換が行われ、要求受諾機器103に到達できる。図11(a)及び(b)に示すように、接続要求通知パケット205は、要求受諾機器103への接続要求が存在することを通知するための接続要求通知フラグを含んでいる。
要求受諾機器103は、接続要求通知パケット205を受信すると、サーバ装置101との間において第2の接続要求シーケンスS206を実行する。
図4は、第2の接続要求シーケンスS206の詳細な処理を示すシーケンス図である。第2の接続要求シーケンスのステップS206もまた、第1の接続要求シーケンスのステップS203と同様に、要求発行機器102に関連付けられたIPアドレス及びポート番号と要求受諾機器103のパスワードのような秘密情報を伝送する必要があるので、本実施形態ではSSLを用いて暗号化される。ここで、要求受諾機器103は、送受信する信号を暗号化しかつ復号化するための通信用共通鍵83を生成し、生成した通信用共通鍵83を用いて、サーバ装置101との間で送受信する信号の暗号化及び復号化を実行する暗号通信処理部と、サーバ証明書データ65を認証する証明書情報認証処理部とをさらに備えるものとする(いずれも図示せず。)。要求受諾機器103の暗号通信処理部は、通信用共通鍵83を生成するための要求受諾機器側通信用共通鍵作成情報81をさらに生成する。サーバ装置101と要求受諾機器103との間での秘密通信である第2の接続要求シーケンスのステップS206は、以下説明するように実行される。
SSL通信において、クライアント側である要求受諾機器103は、まず、TCP接続開始パケット231を、ルータ装置104bを介してサーバ装置101に送信することによって、TCP接続によるサーバ装置101との通信開始を要求する。TCP接続開始パケット231がルータ装置104bを通るときに、ルータ装置104bは、機器登録パケット201の送信時に用いたNAPT機能を使用し、TCP接続開始パケット231上のSA及びSPを変換する。また、ルータ装置104bが要求受諾機器103宛のパケットを受信するとき、当該パケットのDAに対して上記の変換と逆の変換を実行し、当該パケットのDPに対しても別の変換を実行して要求受諾機器103に送信する。以下、本願明細書では、説明の簡単化のためにルータ装置104bのNAPT処理動作について言及することを省略するが、実際に要求受諾機器103がパケットを送受信する際には、常にルータ装置104bを介して送受信し、常にルータ装置104bが当該パケットに対してNAPT処理を実行するものとする。
次いで、要求受諾機器103とサーバ装置101は、暗号化仕様交渉のステップを実行することにより、秘密通信で用いる暗号化方式の仕様を相互に確認する。要求受諾機器103は、最初に、TCP接続開始パケット231で確立されたTCP接続(以下、第2のTCP接続という。)を用いて、暗号化通信開始要求パケット(client_helloパケットともいう。)232をサーバ装置101に送信する。暗号化通信開始要求パケット232の中には、使用可能なSSLのバージョン、使用可能な暗号化方式のリスト、セッションIDなどが書き込まれ、その中に、要求受諾機器103が生成した乱数ClientHello.randamも含まれている。サーバ装置101は、要求受諾機器103から暗号化通信開始要求パケット232を受信すると、第2のTCP接続を用いて暗号化通信開始応答パケット(server_helloパケットともいう。)233を要求受諾機器103に送信する。この暗号化通信開始応答パケット233は、使用するSSLのバージョン(要求発行機器102とサーバ装置101との両方がサポートする中で最も高いバージョン)、セッションID、使用する暗号化方式などを含み、さらに、サーバ装置101において生成された乱数ServerHello.randamを含んでいる。以下この第2の接続要求シーケンスのステップS206では、暗号化通信開始応答パケット233において指定されたSSLのバージョン及び暗号化方式が使用される。これらの乱数ClientHello.randam及びServerHello.randamは、32ビットのタイムスタンプと、28バイトの乱数(もしくは十分安全な疑似乱数)として、要求受諾機器103とサーバ装置101それぞれが独立に生成する。これらの乱数ClientHello.randam及びServerHello.randamをそれぞれ含む暗号化通信開始要求パケット232及び暗号化通信開始応答パケット233は、暗号化されずに送信される。
次にサーバ装置101は、要求受諾機器103にサーバ証明書データパケット224を送信する。要求受諾機器103へのサーバ証明書データパケット224の送信は、暗号化通信開始応答パケット233送信の後に限らず、後述される要求受諾機器側通信用共通鍵作成情報パケット234の受信の前であれば(例えば、第2の接続要求シーケンスのステップS206の前)、いつでもよい。要求受諾機器103の証明書情報認証処理部は、図8を参照して要求発行機器102の場合について説明したときと同様に、内部に格納しているCA公開鍵52を用いて、送信されたサーバ証明書データパケット224内のサーバ証明書データ65が正規のものであるか否かを確認する。
要求受諾機器103は、その証明書情報認証処理部を用いて、送信されたサーバ証明書データ65が正規のものであると確認すると、以下、要求受諾機器側通信用共通鍵作成情報81及びサーバ装置側通信用共通鍵作成情報82の送受信を含む、共通鍵作成情報交換のステップを開始する。
共通鍵作成情報交換のステップにおいて、最初に、要求受諾機器103は、要求受諾機器103の暗号通信処理部により要求受諾機器側通信用共通鍵作成情報81を生成して内部のメモリ(図示せず。)に格納するとともに、この生成された共通鍵作成情報81を含む要求受諾機器側通信用共通鍵作成情報パケット234を、第2のTCP接続を用いてサーバ装置101に送信する。サーバ装置101は、送信された要求受諾機器側通信用共通鍵作成情報パケット234に応答して、サーバ装置101の暗号通信処理部により、サーバ装置側通信用共通鍵作成情報82を生成して内部のメモリ(図示せず。)に格納するとともに、この生成された共通鍵作成情報82を含むサーバ装置側通信用共通鍵作成情報パケット235を、第2のTCP接続を用いて要求受諾機器103に送信する。要求受諾機器103及びサーバ装置101は、双方の共通鍵作成情報81及び82に基づいて、それぞれの暗号通信処理部により同一の通信用共通鍵83をそれぞれ生成する。通信用共通鍵83を生成するためには、第1の接続要求シーケンスのステップS203の場合について説明されたときと同様にRSA暗号化方式又はディフィー−ヘルマン暗号化方式などを用いて、生成された共通鍵作成情報81及び82を互いに交換し、サーバ装置101及び要求受諾機器103の各暗号通信処理部は、これらの共通鍵作成情報81及び82を用いることによって、後の通信で秘密鍵として用いるための通信用共通鍵83をそれぞれ生成する。
これにより、サーバ装置101及び要求受諾機器103の間において通信用共通鍵83を共有することができ、サーバ装置101及び要求受諾機器103は、通信用共通鍵83を用いて、接続要求パケット236の暗号化及び復号化を行うことで、秘密通信を行うことが可能となる。すなわち、第1の接続要求パケット227を受信した後であってかつ第2の接続要求パケット236を送信する前に、サーバ装置101及び要求受諾機器103の間での通信用共通鍵83の共有が完了すると、サーバ装置101は、接続要求パケット227に含まれた、通信に用いるルータ装置104aのグローバルIPアドレス“4.17.168.2”及びポート番号“5000”と要求受諾機器103のパスワードとを含むデータを、通信用共通鍵83を用いてサーバ装置101の暗号通信処理部により暗号化する。サーバ装置101は、この暗号化されたデータをペイロードとして含む接続要求パケット236を生成し、生成された接続要求パケット236を、機器登録パケット201に対する応答信号として、第2のTCP接続を用いて要求受諾機器103に送信する。詳しくは、サーバ装置101は、図2のステップS204においてサーバ装置101の機器情報リスト内で要求受諾機器103のものとして識別されたIPアドレス及びポート番号を宛先として、図11(b)に示された接続要求パケット236をルータ装置104bに送信し、ルータ装置104bは受信した接続要求パケット236に対してNAPT処理を実行し、図11(a)に示されたNAPT処理後の接続要求パケット236を要求受諾機器103に送信する。一方、要求受諾機器103は、秘密情報として暗号化されたデータを含む接続要求パケット236をサーバ装置から第2のTCP接続を用いて受信すると、通信用共通鍵83を用いて、上記暗号化されたデータを要求受諾機器103の暗号通信処理部により復号化する。以上のようにして、要求発行機器102が要求受諾機器103とのデータ通信を所望することを伝達する接続要求メッセージが、要求発行機器102から要求受諾機器103に伝達される。
要求受諾機器103は、ステップS107において、パケット236によって受信したパスワードが、要求受諾機器103内のメモリに格納された要求受諾機器103のパスワードと一致した正しいものであるか否かを認証する。パスワードが正しければ、要求受諾機器103は、第2のTCP接続を用いて接続機器登録要求パケット208をサーバ装置101に送信する。接続機器登録要求パケット208は、図11(e)及び(f)に示されたように、要求発行機器102とのこれ以降の接続を常に許可することをサーバ装置101に登録させるための接続機器登録要求フラグを含む。一方、パケット236で受信したパスワードが不正なものであれば、要求受諾機器103は処理を中断する。
サーバ装置101は、接続機器登録要求パケット208を受信すると、ステップS209において、図13に示すように、機器情報リスト上の要求受諾機器103のための項目において、要求受諾機器103への既接続機器の機器IDリストに、要求発行機器102の機器IDである“1051”を追加する。これにより、機器情報リストは、すでに接続を確立したことがある要求発行機器102の機器ID及び要求受諾機器103の機器IDの組を含む接続機器リストとしても参照されることが可能であり、以後、要求発行機器102が要求受諾機器103との接続の確立を所望した場合、図5乃至図7の通信シーケンス(後述)に従って接続を確立することができる。
また、要求発行機器102がサーバ装置101に機器登録パケット201を定期的に送信したことにより機器情報リストに要求発行機器102のための項目が存在する場合には、サーバ装置101は、要求受諾機器103への既接続機器の機器IDリストに要求発行機器102の機器IDを追加することと同時に、要求発行機器102との既接続機器の機器IDリストに要求受諾機器103の機器IDを追加してもよい。それにより、以後、要求受諾機器103が要求発行機器102との接続を所望した場合でも、図5乃至図7の通信シーケンスに従って接続を確立することができる。
要求受諾機器103は、接続機器登録要求パケット208を送信すると、次に、接続要求パケット236に含まれているIPアドレス“4.17.168.2”とポート番号“5000”に関連付けられた機器に対してTCP接続開始パケット210を送信する。パケット210は、前述のようにルータ装置104aのNAPT機能により要求発行機器102に到達し、それによって、要求受諾機器103は、要求発行機器102とのTCP接続を確立することができる。
以上のようにして、サーバ装置101を利用することで、プライベートIPアドレスをそれぞれ有しかつ異なったLAN106a,106bに接続された機器である要求発行機器102と要求受諾機器103との間で、データ通信を行うことができるようになる。
次に、図5乃至図7を参照して、要求発行機器102が以前に一度でも通信したことのある要求受諾機器103と2回目以降に通信する場合について説明する。要求発行機器102と要求受諾機器103との間で通信を開始する前に、要求受諾機器103がサーバ装置101に機器登録パケット201を定期的に送信しかつサーバ装置101がステップS202及びS202aを実行することは、図2の場合と同様である。
要求発行機器102が、以前に通信したことのある要求受諾機器103とのデータ通信を所望する場合には、このことを通知する通信要求メッセージを、サーバ装置101を介して要求受諾機器103に伝達する。要求発行機器102は、通信要求メッセージを要求受諾機器103に伝達するために、最初に、要求発行機器102とサーバ装置101との間において,図2の第1の接続要求シーケンスのステップS203に代えて、図5の第1の通信要求シーケンスのステップS203aを実行する。第1の通信要求シーケンスのステップS203aは、詳しくは図6に示されたように、接続要求パケット227に代えて、パスワードを含まない通信要求パケット227aを送信するということを除いて、図3の第1の接続要求シーケンスのステップS203と同様である。ただし、第1の通信要求シーケンスのステップS203aにおいて、サーバ装置101によるサーバ証明書データパケット224の送信と、要求発行機器102によるサーバ証明書データ65の認証とは省略されてもよい。また、説明の簡単化のために、図6における共通鍵作成情報71及び72と通信用共通鍵73とは、図3の通信シーケンスと同じ参照番号で示されているが、これらは、一般には、図3の場合とは異なるものである。
通信要求パケット227aは、図12(a)及び(b)に示されたように、接続相手である要求受諾機器103の機器IDと、要求発行機器102の機器IDと、通信に用いるための要求発行機器102に関連付けられたIPアドレス及びポート番号とを含む。ここで、通信要求パケット227aに含まれる通信用のIPアドレス及びポート番号は、接続要求パケット227に含まれた通信用のIPアドレス及びポート番号と同様に、それぞれルータ装置104aのWAN側グローバルIPアドレスとWAN側ポート番号であり、これらグローバルIPアドレス及びポート番号は、図2の場合と同様に、後のTCP接続開始パケット210とデータ通信シーケンスのステップS211に係るパケットとを送受信する際に使用される。
サーバ装置101は、通信要求パケット227aを受信して、パケット227aに含まれた要求発行機器102の機器ID“1051”と要求受諾機器103の機器ID“2133”とを取得すると、ステップS212において、内部のテーブルメモリに格納している図13の機器情報リストを参照し、接続機器リストが、要求発行機器102の機器ID“1051”と接続相手である要求受諾機器103の機器ID“2133”との組を含むか否かを決定する。そのために、サーバ装置101は、最初に、接続相手である要求受諾機器103の機器ID“2133”を機器情報リストから検索する。機器情報リスト上で“2133”と一致した機器IDが見つかると、サーバ装置101は、この機器ID“2133”を有する機器を接続相手の要求受諾機器103として識別し、次に、機器ID“2133”を有する機器の既接続機器の機器IDリストを検索する。要求発行機器102の機器ID“1051”が要求受諾機器103によって登録された既接続機器の機器IDリストに含まれているか否かを確認する。要求受諾機器の既接続機器の機器IDリストに、通信要求パケット227aに含まれている要求発行機器102の機器ID“1051”が含まれていれば、サーバ装置101は、ステップS204において、機器情報リスト上で、識別された要求受諾機器103に係る機器情報の組に含まれるIPアドレス及びポート番号を要求受諾機器103に関連付けられたIPアドレス及びポート番号として識別する。
一方、ステップS212において、要求発行機器102の機器IDが既接続機器の機器IDとして機器情報リストに登録されていない場合には、サーバ装置はエラー通知パケット213を要求発行機器102に送信し、要求発行機器102は、エラー通知パケット213を受信すると、ステップS209において処理の中断を決定する。また、要求発行機器102は、処理を中断することに代わって、要求受諾機器103のパスワードを含む接続要求パケット227(図3を参照)をサーバ装置101に送信してもよい。要求発行機器102がエラー通知パケット213に応答して接続要求パケット227を送信した場合には、以後の通信シーケンスは、図2のステップS204以降のステップと同様に実行される。
機器情報リストに要求発行機器102の機器ID“1051”が既接続機器の機器IDとして含まれていることを確認すると、次に、サーバ装置101は、サーバ装置101は、要求受諾機器103に関連付けられている(すなわち、機器ID“2133”と同じ機器情報の組に含まれた)IPアドレス“202.204.16.13”及びポート番号“3400”を宛先として有する接続要求通知パケット205をUDPを用いて送信する。図2の通信シーケンスと同様に、接続要求通知パケット205は、機器登録パケット201に対する応答信号としてルータ装置104bに送信されるため、ルータ装置104bにおいてIPアドレス及びポート番号の変換が行われ、要求受諾機器103に到達できる。
要求受諾機器103は、接続要求通知パケット205に応答して、サーバ装置101との間で第2の通信要求シーケンスのステップS206aを開始する。第2の通信要求シーケンスのステップS206aは、接続要求パケット236に代えて、パスワードを含まない通信要求パケット236aを送信するということを除いて、図4の第2の接続要求シーケンスのステップS206と同様である。ただし、第2の通信要求シーケンスのステップS206aにおいて、サーバ装置101によるサーバ証明書データパケット224の送信と、要求受諾機器103によるサーバ証明書データ65の認証とは省略されてもよい。また、説明の簡単化のために、図7における共通鍵作成情報81及び82と通信用共通鍵83とは、図4の通信シーケンスと同じ参照番号で示されているが、これらは、一般には、図4の場合とは異なるものである。
通信要求パケット236aは、図12(c)及び(d)に示されたように、通信要求パケット227aに含まれ、要求発行機器102に関連付けられた、通信に用いるためのIPアドレス“4.17.168.2”及びポート番号“5000”をペイロードとして含む。以上のようにして、これらIPアドレス及びポート番号とともに、要求発行機器102が以前に接続を確立したことのある要求受諾機器103とのデータ通信を所望することを伝達する通信要求メッセージが、要求発行機器102から要求受諾機器103に伝達される。
要求受諾機器103は、図2の場合と同様に、通信要求パケット236aに含まれているIPアドレス“4.17.168.2”とポート番号“5000”が示す機器に対してTCP接続開始パケット210を送信すると、前述のようにルータ装置104aのNAPT機能により、要求発行機器102とのTCP接続を確立することができる。以降、要求発行機器102と要求受諾機器103とは、確立されたTCP接続を用いてデータ通信シーケンスのステップS211を行えるようになる。
以上のようにして、サーバ装置101を利用することで、プライベートIPアドレスをそれぞれ有しかつ異なったLANに接続された機器である要求発行機器102と要求受諾機器103との間で通信できるようになる。
なお、要求発行機器102がグローバルIPアドレスを保有し、直接インターネット(WAN)105に接続されている場合でも、同様の動作で要求発行機器102と要求受諾機器103との間において通信できる。また、要求受諾機器103がグローバルIPアドレスを保有し、直接インターネット(WAN)105に接続されている場合でも、同様の動作で要求発行機器102と要求受諾機器103との間において通信できる。いずれの場合でも、ルータ装置によってIPアドレスやポート番号の変換が行われないだけで、それ以外の動作は上記説明と同様の動作となる。
本実施形態では、サーバ装置101、要求発行機器102及び要求受諾機器103はインターネット(WAN)105に接続されているが、本発明の実施形態はそれに限定されず、サーバ装置101、要求発行機器102及び要求受諾機器103は、その他の公開されたネットワーク及び/又は専用のネットワークに接続されるように構成されてもよい。
また、ルータ装置104aやルータ装置104bが、NAPT機能ではなくNAT機能のみ有している場合でも同様の動作で要求発行機器102と要求受諾機器103との間において通信できる。この場合、ルータ装置においてポート番号の変換は行われない。
また、要求発行機器102は、TCP接続開始パケット210を受信するためのIPアドレスとポート番号の組み合わせを常に図9のようなNAPTテーブルに設定したままでもよいし、又は、第1の接続要求シーケンスS203においてTCP接続開始パケット221を送信する際にこの組み合わせをNAPTテーブルに設定し、データ通信シーケンスのステップS211が終了するとこの組み合わせをNAPTテーブルから削除するようにしてもよい。NAPTテーブルの設定は、静的NAPTを用いてもよいし、ユニバーサル・プラグ・アンド・プレイ(Universal Plug and Play)などの機能を用いてもよい。
また、第1の接続要求シーケンスのステップS203におけるTCP接続開始パケット221により開始されるTCP接続を介した通信と、第2の接続要求シーケンスのステップS206におけるTCP接続開始パケット231により開始されるTCP接続を介した通信とは、SSL(Secure Sockets Layer)とは異なる暗号化通信を用いてもよい。又は、これらステップS203及びS206におけるTCP通信の暗号化は省略されてもよい。この場合、ステップS203において、要求発行機器102は、TCP接続開始パケット221を送信してTCP接続を確立した後すぐに接続要求パケット227を送信し、ステップS206において、サーバ装置101は、TCP接続開始パケット231を受信した後すぐに接続要求パケット236を送信してもよい。
また、データ通信シーケンスのステップS211の処理は、ステップS203及びS206と同様に、SSLなどの暗号化通信を用いて実行してもよい。また、ステップS211におけるデータの送受信は、UDPなど他の伝送プロトコルを用いて実行してもよい。
説明された実施形態の通信システムでは、要求発行機器102が要求受諾機器103と通信したことがあるか否かについての情報を内部のメモリに記憶し、要求発行機器102が要求受諾機器103のパスワードを送信するか否かによって、図2乃至図4の通信シーケンスであるのか、あるいは図5乃至図7の通信シーケンスであるのかが、サーバ装置101及び要求受諾機器103にも判断されるようになっていた。しかしながら、要求発行機器102が要求受諾機器103と通信したことがあるか否かについての情報は、サーバ装置101によって記憶されていてもよい。この場合、サーバ装置101は、要求発行機器102から要求受諾機器103宛てのパケットを受信したときに、要求発行機器102と要求受諾機器103の最初の通信であるにもかかわらず当該パケットにパスワードが付加されていないならば、要求発行機器102に対してパスワードの再送信を要求したり、要求発行機器102にエラー通知パケットを送信して通信を終了したりすることができる。
また、実施形態の通信システムでは、変形例として、パケット内におけるパスワードの有無によって最初の通信と2回目以降の通信とを区別することに代えて、パケット内の所定のフラグによって最初の通信と2回目以降の通信とを区別してもよい。この場合、サーバ装置101は、パケット227又は227aを要求発行機器102から受信したときに、受信したパケット内の上記フラグが最初の通信であることを示しているならば図2の通信シーケンスに従って動作し、受信したパケット内の上記フラグが2回目以降の通信であることを示しているならば図5の通信シーケンスに従って動作する。同様に、要求受諾機器103は、パケット236又は236aをサーバ装置101から受信したときに、受信したパケット内の上記フラグが最初の通信であることを示しているならば図2の通信シーケンスに従って動作し、受信したパケット内の上記フラグが2回目以降の通信であることを示しているならば図5の通信シーケンスに従って動作する。
説明された実施形態の通信システムでは、要求発行機器102が要求発行機器102の機器ID“1051”と要求受諾機器103の機器ID“2133”とをサーバ装置101に送信することによって、サーバ装置101に機器情報リストを参照させて、機器ID“1051”で示される機器が機器ID“2133”で示される機器の既接続機器として登録されているか否かを判断させていた。しかしながら、要求発行機器102はその機器ID“1051”をサーバ装置101に送信せず、サーバ装置101は、機器IDとは異なる要求発行機器102の識別情報を用いて、要求発行機器102が要求受諾機器103の既接続機器であるか否かを判断してもよい。例えば、サーバ装置101は、図2のステップS209において、要求発行機器102に関連付けられたIPアドレスを要求受諾機器103の既接続機器として機器情報リストに追加し、次いで、図5の通信シーケンスにおいて、要求発行機器102から要求受諾機器103との通信を要求する通信要求パケット227a(ただし、要求発行機器102の機器IDを含まない)を受信した際に、ステップS212において、この通信要求パケット227aの発信元IPアドレスとサーバ装置101内の機器情報リストとを参照して、要求発行機器102が要求受諾機器103の既接続機器であるか否かを判断してもよい。
また、要求受諾機器103は、パケット208を送信してサーバ装置101にサーバ装置101内の機器情報リストに登録させた既接続機器の機器IDを、必要に応じて削除できるようにしてもよい。削除する際には、要求受諾機器103はサーバ装置101に接続機器登録削除要求パケットを送信し、サーバ装置101に、サーバ装置101の機器情報リスト内に既接続機器として登録された要求発行機器102の機器IDを削除させる。
また、図10乃至図12に示す機器登録パケット201、接続要求パケット227、接続要求通知パケット205、接続機器登録要求パケット208、接続要求パケット236、通信要求パケット227a及び通信要求パケット236aは一例であって、これらのパケットには、他のフィールドが含まれていてもよいし、各フィールドの順序が異なっていてもよい。
また、図1から図13で用いているIPアドレス、ポート番号及び機器IDは一例であって、他の値であっても構わない。
以上説明したように、本実施形態では、異なるLANを介してそれぞれインターネット(WAN)に接続された機器同士で、不正アクセスができないピアツーピア通信を容易に実現する通信システムを提供する。この通信システムにおいて、サーバ装置101は、要求発行機器102からの接続要求パケット227を、要求受諾機器103に中継する。接続要求パケット227には、要求発行機器102にパケットを到達させることができるルータ装置104aのIPアドレス及びポート番号が付加されている。要求受諾機器103は、接続要求パケット227に含まれているIPアドレス及びポート番号宛に接続することで、要求発行機器102と要求受諾機器103との間でピアツーピア通信を行うことができる。また接続要求パケット227に要求受諾機器103のパスワードを付加し、要求受諾機器103がパスワードの確認を行うことで、不正な機器からの接続要求を受け付けないようにする。また要求受諾機器103は、一度接続を行った機器の機器IDをサーバ装置101の機器情報リストに登録しておくと、要求発行機器102はパスワードを含まない通信要求メッセージをサーバ装置101経由で要求受諾機器103に送信することで、より容易に要求発行機器102と要求受諾機器103との間でピアツーピア通信を行うことができる。
本発明はさらに別の実施形態として、図2乃至図7に示された処理に係る各ステップを含むプログラムとして提供してもよく、あるいは、上記プログラムを記録し、コンピュータが読み取り可能な記録媒体として提供してもよい。この場合、上記プログラムを、インターネットに接続されたコンピュータ又は機器に読み込ませて、上記プログラム中の各ステップを当該コンピュータ又は機器に実行させることにより、当該コンピュータ又は機器を、以上説明された実施形態におけるサーバ装置101、要求発行機器102、及び/又は要求受諾機器103として動作させることができる。上記プログラムを記録した記録媒体の例として、CD−ROM及びDVD−ROM等の光記録媒体、フレキシブルディスク及びハードディスク等の磁気記録媒体、又は半導体記憶装置などが可能であるが、それらに制限されない。また、上記プログラムは、インターネットなどのネットワークを介して分配されてもよい。
以上説明したように、本発明によれば、異なるLANを介してそれぞれインターネット(WAN)に接続された機器同士で、不正アクセスができないピアツーピア通信を容易に実現する通信システムを提供することができる。
本発明の実施形態に係る通信システムの構成を示すブロック図である。 図1の通信システムにおいて実行される通信シーケンスであって、要求発行機器102が要求受諾機器103と最初に通信する場合の通信シーケンスを示すシーケンス図である。 図2の第1の接続要求シーケンスS203の詳細な処理を示すシーケンス図である。 図2の第2の接続要求シーケンスS206の詳細な処理を示すシーケンス図である。 図1の通信システムにおいて実行される通信シーケンスであって、要求発行機器102が要求受諾機器103と2回目以降に通信する場合の通信シーケンスを示すシーケンス図である。 図2の第1の通信要求シーケンスS203aの詳細な処理を示すシーケンス図である。 図2の第2の通信要求シーケンスS206aの詳細な処理を示すシーケンス図である。 図1の要求発行機器102及び要求受諾機器103に対してサーバ装置101の正当性を認証するための認証局装置51を示すブロック図である。 図1のルータ装置104aの内部のメモリに格納しているNAPTテーブルの一例を示す表である。 (a)は図2のLAN側での機器登録パケット201の構成を示す図であり、(b)は図2のWAN側での機器登録パケット201の構成を示す図であり、(c)は図3のLAN側での接続要求パケット227の構成を示す図であり、(d)は図3のWAN側での接続要求パケット227の構成を示す図である。 (a)は図2のLAN側での接続要求通知パケット205の構成を示す図であり、(b)は図2のWAN側での接続要求通知パケット205の構成を示す図であり、(c)は図4のLAN側での接続要求パケット236の構成を示す図であり、(d)は図4のWAN側での接続要求パケット236の構成を示す図であり、(e)は図2のLAN側での接続機器登録要求パケット208の構成を示す図であり、(f)は図2のWAN側での接続機器登録要求パケット208の構成を示す図である。 (a)は図6のLAN側での通信要求パケット227aの構成を示す図であり、(b)は図6のWAN側での通信要求パケット227aの構成を示す図であり、(c)は図7のLAN側での通信要求パケット236aの構成を示す図であり、(d)は図7のWAN側での通信要求パケット236aの構成を示す図である。 図1のサーバ装置101で保存している機器情報リストの一例を示す表である。 従来技術に係る通信システムの構成の一例を示すブロック図である。 ルータ装置104のNAPT機能を用いた通信の通信シーケンスの一例を示すシーケンス図である。 ルータ装置104のNAPTテーブルの一例を示す表である。 図14の通信システムの通信シーケンスの一例を示すシーケンス図である。
符号の説明
51…認証局(CA)装置、
52…CA公開鍵、
53…CA秘密鍵、
54…サーバ証明書データ発行パケット、
55…CA証明書データパケット、
61…サーバ秘密鍵、
62…サーバ公開鍵、
63…サーバ証明書データ要求パケット、
64…署名、
65…サーバ証明書データ、
71…要求発行機器側通信用共通鍵作成情報、
72…サーバ装置側通信用共通鍵作成情報、
81…要求受諾機器側通信用共通鍵作成情報、
82…サーバ装置側通信用共通鍵作成情報、
73,83…通信用共通鍵、
101…サーバ装置、
102…要求発行機器、
103…要求受諾機器、
104a,104b…ルータ装置、
105…インターネット(WAN)、
106a,106b…LAN、
201…機器登録パケット、
205…接続要求通知パケット、
208…接続機器登録要求パケット、
210,221,231…TCP接続開始パケット、
222,232…暗号化通信開始要求パケット、
223,233…暗号化通信開始応答パケット、
224…サーバ証明書データパケット、
225…要求発行機器側通信用共通鍵作成情報パケット、
226,235…サーバ装置側通信用共通鍵作成情報パケット、
227,236…接続要求パケット、
227a,236a…通信要求パケット、
234…要求受諾機器側通信用共通鍵作成情報パケット。

Claims (34)

  1. ネットワークにそれぞれ接続された要求発行機器と要求受諾機器とを含む複数の機器と、上記ネットワークに接続されたサーバ装置とを備えた通信システムにおいて設けられ、上記要求発行機器から上記要求受諾機器への接続要求信号を転送するサーバ装置であって、
    上記複数の機器のうち互いに接続を確立した一対の機器の識別情報の組を含む接続機器リストを格納するための接続機器リスト格納手段を備え、
    上記要求受諾機器から定期的に送信される機器登録信号を受信し、
    上記要求発行機器から送信される第1のTCP接続開始信号を受信することにより上記要求発行機器との間の第1のTCP接続を確立し、
    上記確立された第1のTCP接続を用いて、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含みかつ上記要求受諾機器との接続の確立を要求する第1の接続要求信号を上記要求発行機器から受信し、
    上記受信された第1の接続要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得するとともに、上記機器登録信号に対する応答信号として上記要求受諾機器に第2の接続要求信号を送信し、
    上記要求受諾機器から送信された接続機器登録要求信号に応答して、上記取得された上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組を、上記接続機器リスト格納手段に格納された上記接続機器リストに追加することを特徴とするサーバ装置。
  2. 上記第1の接続要求信号は、上記要求受諾機器のパスワード情報をさらに含み、
    上記サーバ装置は、上記第1の接続要求信号に含まれた上記パスワード情報を上記第2の接続要求信号に付加して送信することを特徴とする請求項1記載のサーバ装置。
  3. 上記第1の接続要求信号を受信した後であってかつ上記第2の接続要求信号を送信する前に、上記要求受諾機器に第3の接続要求信号を送信し、上記第3の接続要求信号に対する応答信号として第2のTCP接続開始信号を上記要求受諾機器から受信することにより上記要求受諾機器との間において第2のTCP接続を確立し、
    上記確立された第2のTCP接続を用いて、上記要求受諾機器に上記第2の接続要求信号を送信することを特徴とする請求項1又は2記載のサーバ装置。
  4. 上記要求発行機器から送信される第3のTCP接続開始信号を受信することにより上記要求発行機器との間の第3のTCP接続を確立し、
    上記確立された第3のTCP接続を用いて上記要求発行機器から送信され、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含み、かつ上記要求受諾機器との2回目以降の接続の確立を要求する第1の通信要求信号を受信し、
    上記受信された第1の通信要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得し、上記接続機器リスト格納手段に格納された上記接続機器リストが、上記取得された上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組を含むときに、上記機器登録信号に対する応答信号として上記要求受諾機器に第2の通信要求信号を送信することを特徴とする請求項1又は2記載のサーバ装置。
  5. 上記第1の通信要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得した後であってかつ上記第2の通信要求信号を送信する前に、上記接続機器リスト格納手段に格納された上記接続機器リストが、上記第1の通信要求信号から取得された上記要求受諾機器の識別情報及び上記第1の通信要求信号から取得された上記要求発行機器の識別情報の組を含まないときには、上記第3のTCP接続を用いて上記要求発行機器にエラー通知信号を送信し、通信を中止することを特徴とする請求項4記載のサーバ装置。
  6. 上記第1の接続要求信号を受信した後であってかつ上記第2の接続要求信号を送信する前に、上記要求受諾機器に第3の接続要求信号を送信し、上記第3の接続要求信号に対する応答信号として第2のTCP接続開始信号を上記要求受諾機器から受信することにより上記要求受諾機器との間において第2のTCP接続を確立し、
    上記確立された第2のTCP接続を用いて、上記要求受諾機器に上記第2の接続要求信号を送信し、
    上記第1の通信要求信号を受信した後であってかつ上記第2の通信要求信号を送信する前に、上記要求受諾機器に第4の接続要求信号を送信し、上記第4の接続要求信号に対する応答信号として第4のTCP接続開始信号を上記要求受諾機器から受信することにより上記要求受諾機器との間において第4のTCP接続を確立し、
    上記確立された第4のTCP接続を用いて、上記要求受諾機器に上記第2の通信要求信号を送信することを特徴とする請求項4又は5記載のサーバ装置。
  7. 上記機器登録信号は上記要求受諾機器の機器IDを含み、
    上記第1の接続要求信号は、上記要求受諾機器の上記機器IDと、上記要求発行機器の機器IDと、上記要求発行機器に関連付けられたIPアドレス及びポート番号とを含み、
    上記サーバ装置は、
    上記複数の機器にそれぞれ関連付けられたIPアドレス及びポート番号と、上記各機器の機器IDとからなる上記各機器に係る機器情報の組を含む機器情報リストを格納するための機器情報格納手段をさらに備え、
    上記機器登録信号に含まれた上記要求受諾機器の機器IDと、上記機器登録信号の発信元IPアドレス及び発信元ポート番号とを、上記要求受諾機器に係る機器情報の組として、上記機器情報格納手段に格納された上記機器情報リストに追加し、
    上記第1の接続要求信号を受信した後でありかつ上記第2の接続要求信号を送信する前に、上記第1の接続要求信号に含まれた上記要求受諾機器の機器IDを、上記機器情報格納手段に格納された上記機器情報リストから検索し、上記機器情報リスト上で、上記第1の接続要求信号に含まれる要求受諾機器の機器IDと一致した機器IDを含む機器情報の組に係る機器を上記要求受諾機器として識別し、上記機器情報リスト上で、上記識別された要求受諾機器に係る機器情報の組に含まれるIPアドレス及びポート番号を上記要求受諾機器に関連付けられたIPアドレス及びポート番号として識別し、
    上記識別された要求受諾機器に対して、上記識別されたIPアドレス及びポート番号を宛先として、上記受信された第1の接続要求信号に含まれる上記要求発行機器に関連付けられたIPアドレス及びポート番号を含む第2の接続要求信号を送信し、
    上記要求受諾機器から送信された接続機器登録要求信号に応答して、上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組として、上記要求受諾機器の機器ID及び上記要求発行機器の機器IDの組を上記接続機器リストに追加することを特徴とする請求項1乃至6のうちのいずれか1つに記載のサーバ装置。
  8. 上記第1の通信要求信号は、上記要求受諾機器の上記機器IDと、上記要求発行機器の機器IDと、上記要求発行機器に関連付けられたIPアドレス及びポート番号とを含み、
    上記サーバ装置は、
    上記第1の通信要求信号を受信した後でありかつ上記第2の通信要求信号を送信する前に、上記第1の通信要求信号から、上記要求発行機器の識別情報及び上記要求受諾機器の識別情報として上記要求受諾機器の機器ID及び上記要求発行機器の機器IDを取得し、上記接続機器リスト格納手段に格納された上記接続機器リストが上記取得された要求受諾機器の機器ID及び上記要求発行機器の機器IDの組を含むとき、上記第1の通信要求信号に含まれた上記要求受諾機器の機器IDを、上記機器情報格納手段に格納された上記機器情報リストから検索し、上記機器情報リスト上で、上記第1の通信要求信号に含まれる要求受諾機器の機器IDと一致した機器IDを含む機器情報の組に係る機器を上記要求受諾機器として識別し、上記機器情報リスト上で、上記識別された要求受諾機器に係る機器情報の組に含まれるIPアドレス及びポート番号を上記要求受諾機器に関連付けられたIPアドレス及びポート番号として識別し、
    上記識別された要求受諾機器に対して、上記識別されたIPアドレス及びポート番号を宛先として、上記受信された第1の通信要求信号に付加された上記要求発行機器に関連付けられたIPアドレス及びポート番号を含む第2の通信要求信号を送信することを特徴とする、請求項4乃至6のうちのいずれか1つに従属した請求項7記載のサーバ装置。
  9. 送受信する信号を暗号化しかつ復号化するための第1及び第2の通信用共通鍵と、上記第1の通信用共通鍵を生成するための第2の共通鍵作成情報と、上記第2の通信用共通鍵を生成するための第4の共通鍵作成情報とを生成し、上記第1の通信用共通鍵を用いて受信する信号の復号化を実行し、上記第2の通信用共通鍵を用いて送信する信号の暗号化を実行する第1の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を格納した証明書情報格納手段とを備え、
    上記第1の接続要求信号を受信する前に、上記要求発行機器に上記サーバ証明書情報を送信し、
    上記要求発行機器から、上記サーバ証明書情報に応答して生成された第1の共通鍵作成情報を上記第1のTCP接続を用いて受信し、上記受信された第1の共通鍵作成情報に応答して上記第1の暗号通信手段により第2の共通鍵作成情報を生成し、上記第1の共通鍵作成情報及び上記第2の共通鍵作成情報に基づいて上記第1の暗号通信手段により第1の通信用共通鍵を生成する一方、上記第2の共通鍵作成情報を上記要求発行機器に上記第1のTCP接続を用いて送信し、上記第1の通信用共通鍵と同一の通信用共通鍵を上記第1の共通鍵作成情報及び上記第2の共通鍵作成情報に基づいて上記要求発行機器に生成させることにより上記第1の通信用共通鍵を上記要求発行機器との間で共有し、
    上記要求発行機器から、上記生成された第1の通信用共通鍵を用いて暗号化された上記第1の接続要求信号を上記第1のTCP接続を用いて受信し、上記受信された第1の接続要求信号を、上記第1の通信用共通鍵を用いて上記第1の暗号通信手段により復号化し、
    上記第2の接続要求信号を送信する前に、上記要求受諾機器に上記サーバ証明書情報を送信し、
    上記要求受諾機器から、上記サーバ証明書情報に応答して生成された第3の共通鍵作成情報を上記第2のTCP接続を用いて受信し、上記受信された第3の共通鍵作成情報に応答して上記第1の暗号通信手段により第4の共通鍵作成情報を生成し、上記第3の共通鍵作成情報及び上記第4の共通鍵作成情報に基づいて上記第1の暗号通信手段により第2の通信用共通鍵を生成する一方、上記第4の共通鍵作成情報を上記要求受諾機器に上記第2のTCP接続を用いて送信し、上記第2の通信用共通鍵と同一の通信用共通鍵を上記第3の共通鍵作成情報及び上記第4の共通鍵作成情報に基づいて上記要求受諾機器に生成させることにより上記第2の通信用共通鍵を上記要求受諾機器との間で共有し、
    上記第1の接続要求信号を受信した後であり、上記第2の通信用共通鍵を上記要求受諾機器との間で共有した後であり、かつ上記第2の接続要求信号を送信する前に、上記生成された第2の通信用共通鍵を用いて上記第1の暗号通信手段により上記第2の接続要求信号を暗号化することを特徴とする請求項3又は6記載のサーバ装置。
  10. 上記第1の暗号通信手段はさらに、送受信する信号を暗号化しかつ復号化するための第3及び第4の通信用共通鍵と、上記第3の通信用共通鍵を生成するための第6の共通鍵作成情報と、上記第4の通信用共通鍵を生成するための第8の共通鍵作成情報とを生成し、上記第3の通信用共通鍵を用いて受信する信号の復号化を実行し、上記第4の通信用共通鍵を用いて送信する信号の暗号化を実行し、
    上記サーバ装置は、
    上記要求発行機器との間で上記第3のTCP接続を確立した後であってかつ上記第1の通信要求信号を受信する前に、上記要求発行機器から第5の共通鍵作成情報を上記第3のTCP接続を用いて受信し、上記受信された第5の共通鍵作成情報に応答して上記第1の暗号通信手段により第6の共通鍵作成情報を生成し、上記第5の共通鍵作成情報及び上記第6の共通鍵作成情報に基づいて上記第1の暗号通信手段により第3の通信用共通鍵を生成する一方、上記第6の共通鍵作成情報を上記要求発行機器に上記第3のTCP接続を用いて送信し、上記第3の通信用共通鍵と同一の通信用共通鍵を上記第5の共通鍵作成情報及び上記第6の共通鍵作成情報に基づいて上記要求発行機器に生成させることにより上記第3の通信用共通鍵を上記要求発行機器との間で共有し、
    上記要求発行機器から、上記生成された第3の通信用共通鍵を用いて暗号化された上記第1の通信要求信号を上記第3のTCP接続を用いて受信し、上記受信された第1の通信要求信号を、上記第3の通信用共通鍵を用いて上記第1の暗号通信手段により復号化し、
    上記要求受諾機器との間で上記第4のTCP接続を確立した後であってかつ上記第2の通信要求信号を送信する前に、上記要求受諾機器から第7の共通鍵作成情報を上記第4のTCP接続を用いて受信し、上記受信された第7の共通鍵作成情報に応答して上記第1の暗号通信手段により第8の共通鍵作成情報を生成し、上記第7の共通鍵作成情報及び上記第8の共通鍵作成情報に基づいて上記第1の暗号通信手段により第4の通信用共通鍵を生成する一方、上記第8の共通鍵作成情報を上記要求受諾機器に上記第4のTCP接続を用いて送信し、上記第4の通信用共通鍵と同一の通信用共通鍵を上記第7の共通鍵作成情報及び上記第8の共通鍵作成情報に基づいて上記要求受諾機器に生成させることにより上記第4の通信用共通鍵を上記要求受諾機器との間で共有し、
    上記第1の通信要求信号を受信した後であり、上記第4の通信用共通鍵を上記要求受諾機器との間で共有した後であり、かつ上記第2の通信要求信号を送信する前に、上記第4の通信用共通鍵を用いて上記第1の暗号通信手段により上記第2の通信要求信号を暗号化することを特徴とする請求項6に従属した請求項9記載のサーバ装置。
  11. ネットワークにそれぞれ接続された要求発行機器と要求受諾機器とを含む複数の機器と、上記ネットワークに接続されたサーバ装置とを備えた通信システムにおいて設けられ、上記サーバ装置及び上記要求受諾機器と通信する要求発行機器であって、
    上記要求受諾機器と最初に通信する場合には、上記サーバ装置に第1のTCP接続開始信号を送信することによって上記サーバ装置との間の第1のTCP接続を確立し、上記確立された第1のTCP接続を用いて、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含みかつ上記要求受諾機器との接続の確立を要求する第1の接続要求信号を上記サーバ装置に送信し、
    上記要求受諾機器と2回目以降に通信する場合には、上記サーバ装置に第3のTCP接続開始信号を送信することによって上記サーバ装置との間の第3のTCP接続を確立し、上記確立された第3のTCP接続を用いて、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含みかつ上記要求受諾機器との2回目以降の接続の確立を要求する第1の通信要求信号を上記サーバ装置に送信し、
    上記要求受諾機器から送信されかつ上記要求発行機器と上記要求受諾機器との間の通信を要求する通信開始信号を受信し、上記受信された通信開始信号に応答して上記要求発行機器と上記要求受諾機器との間の通信を受諾し、上記要求受諾機器との間の通信を開始することを特徴とする要求発行機器。
  12. 上記要求受諾機器のパスワード情報を格納したパスワード情報格納手段を備え、
    上記パスワード情報格納手段に格納された上記パスワード情報を上記第1の接続要求信号に付加して送信することを特徴とする請求項11記載の要求発行機器。
  13. 上記第1の通信要求信号を送信した後に、上記第3のTCP接続を用いて上記サーバ装置からエラー通知信号を受信したときには、通信を中止することを特徴とする請求項11又は12記載の要求発行機器。
  14. 上記第1の接続要求信号及び上記第1の通信要求信号は、上記要求発行機器の識別情報として上記要求機器の機器IDを含み、上記要求受諾機器の識別情報として上記要求受諾機器の機器IDを含み、さらに、上記要求発行機器に関連付けられたIPアドレス及びポート番号を含むことを特徴とする請求項11乃至13のうちのいずれか1つに記載の要求発行機器。
  15. 送受信する信号を暗号化しかつ復号化するための第1及び第3の通信用共通鍵と、上記第1の通信用共通鍵を生成するための第1の共通鍵作成情報と、上記第3の通信用共通鍵を生成するための第5の共通鍵作成情報とを生成し、上記第1及び第3の通信用共通鍵を用いて送信する信号の暗号化を実行する第2の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を認証する第1の証明書情報認証手段とを備え、
    上記第1の接続要求信号を送信する前に、上記サーバ装置から上記サーバ証明書情報を受信し、
    上記受信されたサーバ証明書情報を上記第1の証明書情報認証手段により認証し、上記受信されたサーバ証明書情報が正規であるか否かを確認し、
    上記受信されたサーバ証明書情報を正規であると確認したとき、上記第2の暗号通信手段により第1の共通鍵作成情報を生成し、上記生成された第1の共通鍵作成情報を上記第1のTCP接続を用いて上記サーバ装置に送信し、上記サーバ装置から、上記第1の共通鍵作成情報に応答して生成された第2の共通鍵作成情報を上記第1のTCP接続を用いて受信し、上記第1の共通鍵作成情報及び上記第2の共通鍵作成情報に基づいて上記第2の暗号通信手段により第1の通信用共通鍵を生成する一方、上記第1の通信用共通鍵と同一の通信用共通鍵を上記第1の共通鍵作成情報及び上記第2の共通鍵作成情報に基づいて上記サーバ装置に生成させることにより上記第1の通信用共通鍵を上記サーバ装置との間で共有し、
    上記第1の通信用共通鍵を生成して上記サーバ装置との間で共有した後であってかつ上記第1の接続要求信号を送信する前に、上記第1の通信用共通鍵を用いて上記第2の暗号通信手段により上記第1の接続要求信号を暗号化し、上記暗号化された上記第1の接続要求信号を上記第1のTCP接続を用いて上記サーバ装置に送信し、
    上記第3のTCP接続を確立した後であってかつ上記第1の通信要求信号を送信する前に、上記第2の暗号通信手段により第5の共通鍵作成情報を生成し、上記生成された第5の共通鍵作成情報を上記第3のTCP接続を用いて上記サーバ装置に送信し、上記サーバ装置から、上記第5の共通鍵作成情報に応答して生成された第6の共通鍵作成情報を上記第3のTCP接続を用いて受信し、上記第5の共通鍵作成情報及び上記第6の共通鍵作成情報に基づいて上記第2の暗号通信手段により第3の通信用共通鍵を生成する一方、上記第3の通信用共通鍵と同一の通信用共通鍵を上記第5の共通鍵作成情報及び上記第6の共通鍵作成情報に基づいて上記サーバ装置に生成させることにより上記第3の通信用共通鍵を上記サーバ装置との間で共有し、
    上記要求発行機器は、上記第3の通信用共通鍵を生成して上記サーバ装置との間で共有した後であってかつ上記第1の通信要求信号を送信する前に、上記第3の通信用共通鍵を用いて上記第2の暗号通信手段により上記第1の通信要求信号を暗号化し、上記暗号化された上記第1の通信要求信号を上記第3のTCP接続を用いて上記サーバ装置に送信することを特徴とする請求項11乃至13のうちのいずれか1つに記載の要求発行機器。
  16. ネットワークにそれぞれ接続された要求発行機器と要求受諾機器とを含む複数の機器と、上記ネットワークに接続されたサーバ装置とを備えた通信システムにおいて設けられ、上記サーバ装置及び上記要求発行機器と通信する要求受諾機器であって、
    機器登録信号を上記サーバ装置に定期的に送信し、
    上記機器登録信号に対する応答信号として、上記要求発行機器と上記要求受諾機器との接続の確立を要求する第2の接続要求信号を上記サーバ装置から受信したとき、上記受信された第2の接続要求信号に応答して、上記要求発行機器の所定の識別情報及び上記要求受諾機器の所定の識別情報の組を上記サーバ装置に登録させるための接続機器登録要求信号を上記サーバ装置に送信するとともに、上記要求発行機器と上記要求受諾機器との間の通信を開始する通信開始信号を上記要求発行機器に送信し、
    上記機器登録信号に対する応答信号として、上記要求発行機器と上記要求受諾機器との2回目以降の接続の確立を要求する第2の通信要求信号を上記サーバ装置から受信したとき、上記受信された第2の通信要求信号に応答して上記通信開始信号を上記要求発行機器に送信し、
    上記要求発行機器が上記通信開始信号に応答して上記要求受諾機器と上記要求発行機器との間の通信を受諾した後に、上記要求発行機器との通信を開始することを特徴とする要求受諾機器。
  17. 上記要求受諾機器のパスワード情報を格納したパスワード情報格納手段を備え、
    パスワード情報をさらに含む上記第2の接続要求信号を、上記第2のTCP接続を用いて上記サーバ装置から受信し、
    上記第2の接続要求信号に含まれたパスワード情報が、上記パスワード情報格納手段に格納された上記要求受諾機器のパスワード情報と一致しているときに、上記サーバ装置に上記接続機器登録要求信号を送信するとともに上記要求発行機器に上記通信開始信号を送信することを特徴とする請求項16記載の要求受諾機器。
  18. 上記機器登録信号を上記サーバ装置に送信した後であって上記第2の接続要求信号を受信する前に、上記機器登録信号に対する応答信号として上記サーバ装置から第3の接続要求信号を受信したときに、上記受信された第3の接続要求信号に対する応答信号として第2のTCP接続開始信号を上記サーバ装置に送信することにより上記サーバ装置との間において第2のTCP接続を確立し、
    上記確立された第2のTCP接続を用いて上記サーバ装置から上記第2の接続要求信号を受信し、
    上記機器登録信号を上記サーバ装置に送信した後であって上記第2の通信要求信号を受信する前に、上記機器登録信号に対する応答信号として上記サーバ装置から第4の接続要求信号を受信したときに、上記受信された第4の接続要求信号に対する応答信号として第4のTCP接続開始信号を上記サーバ装置に送信することにより上記サーバ装置との間において第4のTCP接続を確立し、
    上記確立された第4のTCP接続を用いて上記サーバ装置から上記第2の通信要求信号を受信することを特徴とする請求項16又は17記載の要求受諾機器。
  19. 上記要求受諾機器は、上記機器登録信号に上記要求受諾機器の機器IDを付加して上記サーバ装置に送信し、
    上記第2の接続要求信号及び上記第2の通信要求信号は、上記要求発行機器に関連付けられたIPアドレス及びポート番号を含み、
    上記要求受諾機器は、上記サーバ装置から受信された上記第2の接続要求信号及び上記第2の通信要求信号に含まれる上記要求発行機器に関連付けられたIPアドレス及びポート番号を宛先として上記通信開始信号を送信することを特徴とする請求項16乃至18のうちのいずれか1つに記載の要求受諾機器。
  20. 送受信する信号を暗号化しかつ復号化するための第2及び第4の通信用共通鍵と、上記第2の通信用共通鍵を生成するための第3の共通鍵作成情報と、上記第4の通信用共通鍵を生成するための第7の共通鍵作成情報とを生成し、上記第2及び第4の通信用共通鍵を用いて受信する信号の復号化を実行する第3の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を認証する第2の証明書情報認証手段とを備え、
    上記第2の接続要求信号を受信する前に、上記サーバ装置から上記サーバ証明書情報を受信し、
    上記受信されたサーバ証明書情報を上記第2の証明書情報認証手段により認証し、上記受信されたサーバ証明書情報が正規であるか否かを確認し、
    上記受信されたサーバ証明書情報を正規であると確認したとき、上記第3の暗号通信手段により第3の共通鍵作成情報を生成し、上記生成された第3の共通鍵作成情報を上記第2のTCP接続を用いて上記サーバ装置に送信し、上記サーバ装置から、上記第3の共通鍵作成情報に応答して生成された第4の共通鍵作成情報を上記第2のTCP接続を用いて受信し、上記第3の共通鍵作成情報及び上記第4の共通鍵作成情報に基づいて上記第3の暗号通信手段により第2の通信用共通鍵を生成する一方、上記第2の通信用共通鍵と同一の通信用共通鍵を上記第3の共通鍵作成情報及び上記第4の共通鍵作成情報に基づいて上記サーバ装置に生成させることにより上記第2の通信用共通鍵を上記サーバ装置との間で共有し、
    上記サーバ装置から、上記第2の通信用共通鍵を用いて暗号化された上記第2の接続要求信号を、上記第2のTCP接続を用いて受信し、上記受信された第2の接続要求信号を、上記第2の通信用共通鍵を用いて上記第3の暗号通信手段により復号化し、
    上記第4のTCP接続を確立した後であってかつ上記第2の通信要求信号を受信する前に、上記第3の暗号通信手段により第7の共通鍵作成情報を生成し、上記生成された第7の共通鍵作成情報を上記第4のTCP接続を用いて上記サーバ装置に送信し、上記サーバ装置から、上記第7の共通鍵作成情報に応答して生成された第8の共通鍵作成情報を上記第4のTCP接続を用いて受信し、上記第7の共通鍵作成情報及び上記第8の共通鍵作成情報に基づいて上記第3の暗号通信手段により第4の通信用共通鍵を生成する一方、上記第4の通信用共通鍵と同一の通信用共通鍵を上記第7の共通鍵作成情報及び上記第8の共通鍵作成情報に基づいて上記サーバ装置に生成させることにより上記第4の通信用共通鍵を上記サーバ装置との間で共有し、
    上記サーバ装置から、上記第4の通信用共通鍵を用いて暗号化された上記第2の通信要求信号を、上記第4のTCP接続を用いて受信し、上記受信された第2の通信要求信号を、上記第4の通信用共通鍵を用いて上記第3の暗号通信手段により復号化することを特徴とする請求項18記載の要求受諾機器。
  21. ネットワークにそれぞれ接続された要求発行機器と要求受諾機器とを含む複数の機器と、上記ネットワークに接続されたサーバ装置とを備え、上記要求発行機器から上記要求受諾機器への接続要求信号を上記サーバ装置が転送し、上記要求発行機器と上記要求受諾機器との間で通信する通信システムであって、
    上記サーバ装置は、上記複数の機器のうち互いに接続を確立した一対の機器の識別情報の組を含む接続機器リストを格納するための接続機器リスト格納手段を備え、
    上記要求受諾機器は、機器登録信号を上記サーバ装置に定期的に送信し、
    上記要求発行機器は、上記要求受諾機器と通信する際に、上記サーバ装置に第1のTCP接続開始信号を送信することによって上記サーバ装置との間の第1のTCP接続を確立し、上記確立された第1のTCP接続を用いて、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含みかつ上記要求受諾機器との接続の確立を要求する第1の接続要求信号を上記サーバ装置に送信し、
    上記サーバ装置は、上記要求発行機器から送信された上記第1の接続要求信号に応答して、上記第1の接続要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得するとともに、上記機器登録信号に対する応答信号として上記要求受諾機器に第2の接続要求信号を送信し、
    上記要求受諾機器は、上記サーバ装置から送信された上記第2の接続要求信号に応答して、上記サーバ装置に接続機器登録要求信号を送信するとともに、上記要求発行機器と上記要求受諾機器との間の通信を開始する通信開始信号を上記要求発行機器に送信し、
    上記サーバ装置は、上記要求受諾機器から送信された接続機器登録要求信号に応答して、上記取得された上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組を、上記接続機器リスト格納手段に格納された上記接続機器リストに追加し、
    上記要求発行機器は、上記要求受諾機器から送信された上記通信開始信号に応答して上記要求発行機器と上記要求受諾機器との間の通信を受諾し、上記要求受諾機器と上記要求発行機器との間の通信を開始することを特徴とする通信システム。
  22. 上記要求発行機器及び上記要求受諾機器は、上記要求受諾機器のパスワード情報を格納したパスワード情報格納手段を備え、
    上記要求発行機器は、上記要求発行機器のパスワード情報格納手段に格納された上記パスワード情報を上記第1の接続要求信号に付加して送信し、
    上記サーバ装置は、上記第1の接続要求信号に付加された上記パスワード情報を上記第2の接続要求信号に付加して送信し、
    上記要求受諾機器は、上記要求発行機器から送信された上記第2の接続要求信号に付加されたパスワード情報が、上記要求受諾機器のパスワード情報格納手段に格納された上記パスワード情報と一致しているときに、上記サーバ装置に上記接続機器登録要求信号を送信するとともに上記要求発行機器に上記通信開始信号を送信することを特徴とする請求項21記載の通信システム。
  23. 上記サーバ装置は、上記第1の接続要求信号に応答した後であってかつ上記第2の接続要求信号を送信する前に、上記要求受諾機器に第3の接続要求信号を送信し、
    上記要求受諾機器は、上記送信された第3の接続要求信号に応答して上記サーバ装置に第2のTCP接続開始信号を送信することによって、上記サーバ装置との間において第2のTCP接続を確立し、
    上記サーバ装置は、上記確立された第2のTCP接続を用いて、上記要求受諾機器に上記第2の接続要求信号を送信することを特徴とする請求項21又は22記載の通信システム。
  24. 上記要求発行機器は、上記要求受諾機器と2回目以降に通信する際に、上記サーバ装置に第3のTCP接続開始信号を送信することによって上記サーバ装置との間の第3のTCP接続を確立し、上記確立された第3のTCP接続を用いて、上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを含みかつ上記要求受諾機器との2回目以降の接続の確立を要求する第1の通信要求信号を上記サーバ装置に送信し、
    上記サーバ装置は、上記要求発行機器から送信された上記第1の通信要求信号に応答して、上記第1の通信要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得し、上記接続機器リスト格納手段に格納された上記接続機器リストが、上記取得された上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組を含むときに、上記機器登録信号に対する応答信号として上記要求受諾機器に第2の通信要求信号を送信し、
    上記要求受諾機器は、上記送信された第2の通信要求信号に応答して上記通信開始信号を上記要求発行機器に送信し、
    上記要求発行機器は、上記要求受諾機器から送信された上記通信開始信号に応答して上記要求発行機器と上記要求受諾機器との間の通信を受諾し、上記要求受諾機器と上記要求発行機器との間の通信を開始することを特徴とする請求項21又は22記載の通信システム。
  25. 上記サーバ装置は、上記第1の通信要求信号から上記要求発行機器の識別情報と上記要求受諾機器の識別情報とを取得した後であってかつ上記第2の通信要求信号を送信する前に、上記接続機器リスト格納手段に格納された上記接続機器リストが、上記第1の通信要求信号から取得された上記要求受諾機器の識別情報及び上記第1の通信要求信号から取得された上記要求発行機器の識別情報の組を含まないときには、上記第3のTCP接続を用いて上記要求発行機器にエラー通知信号を送信し、通信を中止することを特徴とする請求項24記載の通信システム。
  26. 上記サーバ装置は、上記第1の接続要求信号に応答した後であってかつ上記第2の接続要求信号を送信する前に、上記要求受諾機器に第3の接続要求信号を送信し、
    上記要求受諾機器は、上記送信された第3の接続要求信号に応答して上記サーバ装置に第2のTCP接続開始信号を送信することによって、上記サーバ装置との間において第2のTCP接続を確立し、
    上記サーバ装置は、上記確立された第2のTCP接続を用いて、上記要求受諾機器に上記第2の接続要求信号を送信し、
    上記サーバ装置は、上記第1の通信要求信号に応答した後であってかつ上記第2の通信要求信号を送信する前に、上記要求受諾機器に第4の接続要求信号を送信し、
    上記要求受諾機器は、上記送信された第4の接続要求信号に応答して上記サーバ装置に第4のTCP接続開始信号を送信することによって、上記サーバ装置との間において第4のTCP接続を確立し、
    上記サーバ装置は、上記確立された第4のTCP接続を用いて、上記要求受諾機器に上記第2の通信要求信号を送信することを特徴とする請求項24又は25記載の通信システム。
  27. 上記サーバ装置は、上記複数の機器にそれぞれ関連付けられたIPアドレス及びポート番号と、上記各機器の機器IDとからなる上記各機器に係る機器情報の組を含む機器情報リストを格納するための機器情報格納手段をさらに備え、
    上記要求受諾機器は、上記機器登録信号に上記要求受諾機器の機器IDを付加して上記サーバ装置に送信し、
    上記サーバ装置は、上記機器登録信号に付加された上記要求受諾機器の機器IDと、上記機器登録信号の発信元IPアドレス及び発信元ポート番号とを、上記要求受諾機器に係る機器情報の組として、上記機器情報格納手段に格納された上記機器情報リストに追加し、
    上記要求発行機器は、上記要求受諾機器の上記機器IDと、上記要求発行機器の機器IDと、上記要求発行機器に関連付けられたIPアドレス及びポート番号とを上記第1の接続要求信号に付加して上記サーバ装置に送信し、
    上記サーバ装置は、上記第1の接続要求信号に応答した後でありかつ上記第2の接続要求信号を送信する前に、上記第1の接続要求信号に含まれた上記要求受諾機器の機器IDを、上記機器情報格納手段に格納された上記機器情報リストから検索し、上記機器情報リスト上で、上記第1の接続要求信号に含まれた要求受諾機器の機器IDと一致した機器IDを含む機器情報の組に係る機器を上記要求受諾機器として識別し、上記機器情報リスト上で、上記識別された要求受諾機器に係る機器情報の組に含まれるIPアドレス及びポート番号を上記要求受諾機器に関連付けられたIPアドレス及びポート番号として識別し、
    上記サーバ装置は、上記識別された要求受諾機器に対して、上記識別されたIPアドレス及びポート番号を宛先として、上記受信された第1の接続要求信号に付加された上記要求発行機器に関連付けられたIPアドレス及びポート番号を含む第2の接続要求信号を送信し、
    上記要求受諾機器は、上記サーバ装置から受信された上記第2の接続要求信号に含まれる上記要求発行機器に関連付けられたIPアドレス及びポート番号を宛先として上記通信開始信号を送信し、
    上記サーバ装置は、上記要求受諾機器から送信された接続機器登録要求信号に応答して、上記要求発行機器の識別情報及び上記要求受諾機器の識別情報の組として、上記要求受諾機器の機器ID及び上記要求発行機器の機器IDの組を上記接続機器リストに追加することを特徴とする請求項21乃至26のうちのいずれか1つに記載の通信システム。
  28. 上記要求発行機器は、上記要求受諾機器の上記機器IDと、上記要求発行機器の機器IDと、上記要求発行機器に関連付けられたIPアドレス及びポート番号とを上記第1の通信要求信号に付加して上記サーバ装置に送信し、
    上記サーバ装置は、上記第1の通信要求信号に応答した後でありかつ上記第2の通信要求信号を送信する前に、上記第1の通信要求信号から、上記要求発行機器の識別情報及び上記要求受諾機器の識別情報として上記要求受諾機器の機器ID及び上記要求発行機器の機器IDを取得し、上記接続機器リスト格納手段に格納された上記接続機器リストが上記取得された要求受諾機器の機器ID及び上記要求発行機器の機器IDの組を含むとき、上記第1の通信要求信号に含まれた上記要求受諾機器の機器IDを、上記機器情報格納手段に格納された上記機器情報リストから検索し、上記機器情報リスト上で、上記第1の通信要求信号に含まれる要求受諾機器の機器IDと一致した機器IDを含む機器情報の組に係る機器を上記要求受諾機器として識別し、上記機器情報リスト上で、上記識別された要求受諾機器に係る機器情報の組に含まれるIPアドレス及びポート番号を上記要求受諾機器に関連付けられたIPアドレス及びポート番号として識別し、
    上記サーバ装置は、上記識別された要求受諾機器に対して、上記識別されたIPアドレス及びポート番号を宛先として、上記受信された第1の通信要求信号に付加された上記要求発行機器に関連付けられたIPアドレス及びポート番号を含む第2の通信要求信号を送信し、
    上記要求受諾機器は、上記サーバ装置から受信された上記第2の通信要求信号に含まれる上記要求発行機器に関連付けられたIPアドレス及びポート番号を宛先として上記通信開始信号を送信することを特徴とする、請求項24乃至26のうちのいずれか1つに従属した請求項27記載の通信システム。
  29. 上記サーバ装置は、送受信する信号を暗号化しかつ復号化するための第1及び第2の通信用共通鍵と、上記第1の通信用共通鍵を生成するための第2の共通鍵作成情報と、上記第2の通信用共通鍵を生成するための第4の共通鍵作成情報とを生成し、上記第1の通信用共通鍵を用いて受信する信号の復号化を実行し、上記第2の通信用共通鍵を用いて送信する信号の暗号化を実行する第1の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を格納した証明書情報格納手段とを備え、
    上記要求発行機器は、送受信する信号を暗号化しかつ復号化するための第1の通信用共通鍵と、上記第1の通信用共通鍵を生成するための第1の共通鍵作成情報とを生成し、上記第1の通信用共通鍵を用いて送信する信号の暗号化を実行する第2の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を認証する第1の証明書情報認証手段とを備え、
    上記要求受諾機器は、送受信する信号を暗号化しかつ復号化するための第2の通信用共通鍵と、上記第2の通信用共通鍵を生成するための第3の共通鍵作成情報とを生成し、上記第2の通信用共通鍵を用いて受信する信号の復号化を実行する第3の暗号通信手段と、上記サーバ装置の正当性を証明するためのサーバ証明書情報を認証する第2の証明書情報認証手段とを備え、
    上記サーバ装置は、上記第1の接続要求信号を受信する前に、上記要求発行機器に上記サーバ証明書情報を送信し、
    上記要求発行機器は、上記送信されたサーバ証明書情報を上記第1の証明書情報認証手段により認証して上記サーバ証明書情報が正規であるか否かを確認し、上記サーバ証明書情報を正規であると確認したとき、上記第2の暗号通信手段により第1の共通鍵作成情報を生成し、上記生成された第1の共通鍵作成情報を上記第1のTCP接続を用いて上記サーバ装置に送信し、
    上記サーバ装置は、上記送信された第1の共通鍵作成情報に応答して上記第1の暗号通信手段により第2の共通鍵作成情報を生成し、上記生成された第2の共通鍵作成情報を上記要求発行機器に上記第1のTCP接続を用いて送信し、
    上記サーバ装置及び上記要求発行機器はそれぞれ、上記第1の共通鍵作成情報及び上記第2の共通鍵作成情報に基づいて上記第1及び第2の暗号通信手段により第1の通信用共通鍵を生成して共有し、
    上記要求発行機器は、上記第1の通信用共通鍵を生成して上記サーバ装置との間で共有した後であってかつ上記第1の接続要求信号を送信する前に、上記第1の通信用共通鍵を用いて上記第2の暗号通信手段により上記第1の接続要求信号を暗号化し、上記暗号化された上記第1の接続要求信号を上記第1のTCP接続を用いて上記サーバ装置に送信し、
    上記サーバ装置は、上記第1の通信用共通鍵を用いて暗号化されて送信された第1の接続要求信号を、上記第1の通信用共通鍵を用いて上記第1の暗号通信手段により復号化し、
    上記サーバ装置は、上記第2の接続要求信号を送信する前に、上記要求受諾機器に上記サーバ証明書情報を送信し、
    上記要求受諾機器は、上記送信されたサーバ証明書情報を上記第2の証明書情報認証手段により認証して上記サーバ証明書情報が正規であるか否かを確認し、上記サーバ証明書情報を正規であると確認したとき、上記第3の暗号通信手段により第3の共通鍵作成情報を生成し、上記生成された第3の共通鍵作成情報を上記第2のTCP接続を用いて上記サーバ装置に送信し、
    上記サーバ装置は、上記送信された第3の共通鍵作成情報に応答して上記第1の暗号通信手段により第4の共通鍵作成情報を生成し、上記生成された第4の共通鍵作成情報を上記要求受諾機器に上記第2のTCP接続を用いて送信し、
    上記サーバ装置及び上記要求受諾機器はそれぞれ、上記第3の共通鍵作成情報及び上記第4の共通鍵作成情報に基づいて上記第1及び第3の暗号通信手段により第2の通信用共通鍵を生成して共有し、
    上記サーバ装置は、上記第1の接続要求信号を受信した後であり、上記第2の通信用共通鍵を生成して上記要求受諾機器との間で共有した後であり、かつ上記第2の接続要求信号を送信する前に、上記生成された第2の通信用共通鍵を用いて上記第1の暗号通信手段により上記第2の接続要求信号を暗号化し、暗号化された上記第2の接続要求信号を上記第2のTCP接続を用いて上記要求受諾機器に送信し、
    上記要求受諾機器は、上記第2の通信用共通鍵を用いて暗号化されて送信された第2の接続要求信号を、上記第2の通信用共通鍵を用いて上記第3の暗号通信手段により復号化することを特徴とする請求項23又は26記載の通信システム。
  30. 上記第1の暗号通信手段はさらに、送受信する信号を暗号化しかつ復号化するための第3及び第4の通信用共通鍵と、上記第3の通信用共通鍵を生成するための第6の共通鍵作成情報と、上記第4の通信用共通鍵を生成するための第8の共通鍵作成情報とを生成し、上記第3の通信用共通鍵を用いて受信する信号の復号化を実行し、上記第4の通信用共通鍵を用いて送信する信号の暗号化を実行し、
    上記第2の暗号通信手段はさらに、送受信する信号を暗号化しかつ復号化するための第3の通信用共通鍵と、上記第3の通信用共通鍵を生成するための第5の共通鍵作成情報とを生成し、上記第3の通信用共通鍵を用いて送信する信号の暗号化を実行し、
    上記第3の暗号通信手段はさらに、送受信する信号を暗号化しかつ復号化するための第4の通信用共通鍵と、上記第4の通信用共通鍵を生成するための第7の共通鍵作成情報とを生成し、上記第4の通信用共通鍵を用いて受信する信号の復号化を実行し、
    上記要求発行機器は、上記第3のTCP接続を確立した後であってかつ上記第1の通信要求信号を送信する前に、上記第2の暗号通信手段により第5の共通鍵作成情報を生成し、上記生成された第5の共通鍵作成情報を上記第3のTCP接続を用いて上記サーバ装置に送信し、
    上記サーバ装置は、上記送信された第5の共通鍵作成情報に応答して上記第1の暗号通信手段により第6の共通鍵作成情報を生成し、上記生成された第6の共通鍵作成情報を上記要求発行機器に上記第3のTCP接続を用いて送信し、
    上記サーバ装置及び上記要求発行機器はそれぞれ、上記第5の共通鍵作成情報及び上記第6の共通鍵作成情報に基づいて上記第1及び第2の暗号通信手段により第3の通信用共通鍵を生成して共有し、
    上記要求発行機器は、上記第3の通信用共通鍵を生成して上記サーバ装置との間で共有した後であってかつ上記第1の通信要求信号を送信する前に、上記第3の通信用共通鍵を用いて上記第2の暗号通信手段により上記第1の通信要求信号を暗号化し、上記暗号化された上記第1の通信要求信号を上記第3のTCP接続を用いて上記サーバ装置に送信し、
    上記サーバ装置は、上記第3の通信用共通鍵を用いて暗号化されて送信された第1の通信要求信号を、上記第3の通信用共通鍵を用いて上記第1の暗号通信手段により復号化し、
    上記要求受諾機器は、上記第4のTCP接続を確立した後であってかつ上記第2の通信要求信号を受信する前に、上記第3の暗号通信手段により第7の共通鍵作成情報を生成し、上記生成された第7の共通鍵作成情報を上記第4のTCP接続を用いて上記サーバ装置に送信し、
    上記サーバ装置は、上記送信された第7の共通鍵作成情報に応答して上記第1の暗号通信手段により第8の共通鍵作成情報を生成し、上記生成された第8の共通鍵作成情報を上記要求受諾機器に上記第4のTCP接続を用いて送信し、
    上記サーバ装置及び上記要求受諾機器はそれぞれ、上記第7の共通鍵作成情報及び上記第8の共通鍵作成情報に基づいて上記第1及び第3の暗号通信手段により第4の通信用共通鍵を生成して共有し、
    上記サーバ装置は、上記第1の通信要求信号を受信した後であり、上記第4の通信用共通鍵を生成して上記要求受諾機器との間で共有した後であり、かつ上記第2の通信要求信号を送信する前に、上記第4の通信用共通鍵を用いて上記第1の暗号通信手段により上記第2の通信要求信号を暗号化し、暗号化された上記第2の通信要求信号を上記第4のTCP接続を用いて上記要求受諾機器に送信し、
    上記要求受諾機器は、上記第4の通信用共通鍵を用いて暗号化されて送信された第2の通信要求信号を、上記第4の通信用共通鍵を用いて上記第3の暗号通信手段により復号化することを特徴とする請求項26に従属した請求項29記載の通信システム。
  31. プログラムに従って動作する装置を、請求項1乃至10のうちのいずれか1つのサーバ装置として動作させることを特徴とするプログラム。
  32. プログラムに従って動作する装置を、請求項11乃至15のうちのいずれか1つの要求発行機器として動作させることを特徴とするプログラム。
  33. プログラムに従って動作する装置を、請求項16乃至20のうちのいずれか1つの要求受諾機器として動作させることを特徴とするプログラム。
  34. プログラムに従って動作する複数の装置にてなるシステムを、請求項21乃至30のうちのいずれか1つの通信システムとして動作させることを特徴とするプログラム。
JP2004126428A 2004-04-22 2004-04-22 サーバ装置、要求発行機器、要求受諾機器、通信システム及びプログラム Pending JP2005311747A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004126428A JP2005311747A (ja) 2004-04-22 2004-04-22 サーバ装置、要求発行機器、要求受諾機器、通信システム及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004126428A JP2005311747A (ja) 2004-04-22 2004-04-22 サーバ装置、要求発行機器、要求受諾機器、通信システム及びプログラム

Publications (1)

Publication Number Publication Date
JP2005311747A true JP2005311747A (ja) 2005-11-04

Family

ID=35439997

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004126428A Pending JP2005311747A (ja) 2004-04-22 2004-04-22 サーバ装置、要求発行機器、要求受諾機器、通信システム及びプログラム

Country Status (1)

Country Link
JP (1) JP2005311747A (ja)

Similar Documents

Publication Publication Date Title
JP4729602B2 (ja) サーバ装置、通信機器、通信システム、プログラム及び記録媒体
JP3769580B2 (ja) 情報処理装置、情報処理方法および情報処理プログラム
JP4081724B1 (ja) クライアント端末、中継サーバ、通信システム、及び通信方法
US7870261B2 (en) Information processing device, an information processing method, and a computer program to securely connect clients on an external network to devices within an internal network
JP4033868B2 (ja) IPv6ネットワークで認証を処理する方法及びその装置
US7349396B2 (en) Content distribution system
US8037538B2 (en) Access control processing method
EP1719324A1 (en) Method and system for proxy-based secure end-to-end tcp/ip communications
US20100077204A1 (en) Information processing apparatus, management apparatus, communication system and computer readable medium
JP4962117B2 (ja) 暗号通信処理方法及び暗号通信処理装置
KR20040108533A (ko) 콘텐츠 송신 장치, 콘텐츠 수신 장치 및 콘텐츠 전송 방법
JP5012173B2 (ja) 暗号通信処理方法及び暗号通信処理装置
JP2005210285A (ja) 通信装置、ディジタル署名発行方法、ディジタル署名送信方法、及び、プログラム
US20030188012A1 (en) Access control system and method for a networked computer system
WO2009101848A1 (ja) 処理分散システム、認証サーバ、分散サーバ及び処理分散方法
WO2009082950A1 (fr) Procédé, dispositif et système de distribution de clés
JP2006109152A (ja) ネットワーク上で通信を行う接続要求機器、応答機器、接続管理装置、及び通信システム
JP2004254271A (ja) ネットワーク機器、ネットワークシステム、および、グループ管理方法
JP6056970B2 (ja) 情報処理装置、端末機、情報処理システム及び情報処理方法
JP2005303784A (ja) サーバ装置、要求発行機器、要求受諾機器、通信システム、通信方法及びプログラム
JP2005311747A (ja) サーバ装置、要求発行機器、要求受諾機器、通信システム及びプログラム
JP2002247023A (ja) セッション共有鍵共有方法、ネットワーク端末認証方法、ネットワーク端末および中継装置
KR20070017329A (ko) 프록시에 의한 안전한 단말간 tcp/ip 통신 방법 및통신 시스템
JP2009081710A (ja) 通信機器及び通信機器に用いられる通信方法