説明

情報処理装置、情報処理方法、およびプログラム

【課題】所定のコマンドに対する受信機器の応答時間に基づいて通信距離を判別する。
【解決手段】ランダムチャレンジ受信制御部41は、送信側の端末からのランダムチャレンジ(RC)を受信し、認証データ生成部42に供給する。ランダムチャレンジ受信制御部41はRCを受信した旨を表すRC受信メッセージを送信側に送信する。認証データ生成部42は、RCに対してハッシュ処理を施し、その結果得られた認証データを応答メッセージ生成部43に供給する。応答メッセージ送信制御部44は、送信側からの応答要求コマンドを受信する前のタイミングで、応答メッセージ生成部43を制御して、認証データを含む応答メッセージを生成させるとともに、応答要求コマンドを受信したとき、その応答メッセージを送信先の端末に送信する。本発明は、コンテンツ提供システムに適用できる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法、およびプログラムに関し、特に、通信相手との通信時間を適切に計測することができるようにした情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【0002】
近年、インターネットに代表される公共性のある広域に亘るネットワーク(以下、WAN(Wide Area Network)と称する)や一般家屋等に設けられる局所的なネットワーク(以下、LAN(Local Area Network)と称する)の普及に伴い、それらのネットワークを介した各種データ通信が盛んに行われている。
【0003】
映像や音楽コンテンツなどを、ネットワークを通して伝送する場合は、著作権保護のために、通信相手の機器との間で、認証および鍵交換を行い、コンテンツを暗号化して伝送することが行われている(例えば、非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】DTCP Specification Volume 1 Version 1.3 (Information Version) http://www.dtcp.com/daTa/info_20040107_dtcp_Vol_1_1p3.pdf
【発明の概要】
【発明が解決しようとする課題】
【0005】
ここにおいて、著作権の観点からは、家庭内でのコピーや伝送は許可するが、WANで接続された他の家庭との間でのコンテンツの伝送を制限したい場合がある。例えば、テレビジョン放送を録画したコンテンツは、私的利用の範囲(家庭内)で利用できるが、インターネットを通して、他人に伝送するのは著作権を侵害すると考えられるので、このような制限が必要となる。
【0006】
この制限の下では、著作権保護されたコンテンツを送信する機器(送信機器)は、そのコンテンツを受信する通信相手の機器(受信機器)が同一LAN内にあるか、WAN(インターネット)を通して接続されているかを判断する必要がある。
【0007】
例えば、IPアドレスから通信相手が同一サブネット内にあるかどうかを調べることや、IP通信パケットが通過したIPルータの数(Hop Count)を使うことで通信相手がWAN(インターネット)を通して接続されているかを知ることができる。
【0008】
しかしながら、WAN(インターネット)を経由した通信であってもVPN(Virtual Private Network)などの技術を使えば、IPルータを経由せずに接続されている同一サブネットであるかように接続することが可能である。すなわち不正にコンテンツを入手することが可能である。
【0009】
本発明はこのような状況に鑑みてなされたものであり、所定のコマンドに対する受信機器の応答時間に基づいて通信距離を判別し、例えば送信機器と同一LANに接続されているか否かを判定することを目的とする。
【課題を解決するための手段】
【0010】
本発明の第1の側面の情報処理装置は、記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置であって、前記プロセッサが、前記プログラムを実行することにより、応答を要求するコマンドを受信装置に送信することを制御する送信制御ステップと、前記受信装置との間で共有する共有データに基づいて、期待値を生成する期待値生成ステップと、前記共有データに基づいて生成された認証データを含んだ前記応答を前記受信装置から受信することを制御する受信制御ステップと、前記期待値生成ステップにより生成された前記期待値と、前記受信制御ステップにより受信された前記認証データに基づいて、前記受信装置を認証する認証ステップと、前記受信装置に対して前記応答を要求する前記コマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、前記認証ステップによる認証結果、および前記計測ステップにより計測された前記応答時間に基づいて、前記受信装置に対する送信データの送信可否を判定する判定ステップとを含む処理を行ない、前記送信制御ステップは、さらに、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信することを制御する情報処理装置である。
【0011】
前記期待値生成ステップには、前記コマンドが送信される前に、前記共有データに基づいて、前記認証ステップによる認証に用いられる前記期待値を生成させるようにすることができる。
【0012】
前記プロセッサが、前記応答時間が所定の閾値以下ではない場合、前記送信制御ステップの制御により送信される前記コマンドが何番目に送信されるものであるのかを示すカウント値を1だけインクリメントするカウントステップも含む処理を行うようにすることができ、前記送信制御ステップには、前記カウント値が1だけインクリメントされたことに対応して、新たな前記コマンドを送信することを制御させるようにすることができる。
【0013】
前記期待値生成ステップには、前記新たなコマンドが送信される前に、前記共有データに基づいて、前記認証ステップによる認証に用いられる新たな前記期待値を生成させ、
前記受信制御ステップには、前記新たなコマンドにより要求された前記応答であって、新たな前記認証データを含んだ前記応答を前記受信装置から受信することを制御させ、
前記認証ステップには、前記期待値生成ステップにより生成された前記新たな期待値と、前記受信制御ステップにより受信された前記新たな認証データに基づいて、前記受信装置を認証させるようにすることができる。
【0014】
前記送信制御ステップには、前記送信データの送信可否を判定するのに、前記コマンドを最大N回送信することを制御させるようにすることができる。
【0015】
前記送信制御ステップには、さらに、前記コマンドを送信することを制御する前に、前記共有データを前記受信装置に送信することを制御させるようにすることができる。
【0016】
前記期待値生成ステップには、前記共有データに対してハッシュ処理を施し、前記期待値を生成させるようにすることができる。
【0017】
前記期待値生成ステップには、前記共有データに対して前記ハッシュ処理を施して得られる処理結果に対して、再度、前記ハッシュ処理を施して得られたデータを前記期待値とさせるようにすることができる。
【0018】
前記期待値生成ステップには、前記共有データである擬似乱数に対して、前記受信装置と共有する秘密鍵を利用したHMAC(Keyed-Hashing for Message Authentication, IETF RFC 2104)アルゴリズムによる前記ハッシュ処理を施し、前記期待値を生成させるようにすることができる。
【0019】
前記期待値生成ステップには、前記共有データに対して前記ハッシュ処理を施し、その結果得られたデータを前記期待値とさせるようにすることができる。
【0020】
前記期待値生成ステップには、前記共有データと前記情報処理装置固有の情報に対して、前記ハッシュ処理を施し、その結果得られたデータを前記期待値とさせるようにすることができる。
【0021】
前記期待値生成ステップには、前記共有データに対して前記ハッシュ処理を施して得られたデータを複数個に分割し、分割されたデータからN個の前記期待値を生成させるようにすることができる。
【0022】
前記期待値生成ステップには、前記共有データに対して前記ハッシュ処理を繰り返し施し、そのハッシュ処理毎に得られたデータから、N個の前記認証データを生成させるようにすることができる。
【0023】
前記認証ステップには、前記期待値と前記認証データとが一致する場合、前記受信装置を、前記送信データを送信すべき対象であるものとして認証させ、前記期待値と前記認証データとが一致しない場合、前記受信装置を、前記送信データを送信すべき対象ではないものとして認証させるようにすることができる。
【0024】
前記判定ステップには、前記受信装置が前記送信データを送信すべき対象であるものとして認証され、且つ、前記応答時間が所定の時間以下である場合、前記受信装置に対する前記送信データの送信が可であると判定させ、前記受信装置が前記送信データを送信すべき対象ではないものとして認証されたか、または前記応答時間が前記所定の時間以下ではない場合、前記受信装置に対する前記送信データの送信が不可であると判定させるようにすることができる。
【0025】
前記所定の時間は、同一のローカルネットワーク内に接続された前記受信装置と前記情報処理装置との間で要する通信時間であるようにすることができる。
【0026】
前記送信制御ステップには、前記送信データの送信可否が判定されたことに対応して、前記送信データの送信可否の判定の終了を示す判定終了情報も前記受信装置に送信することを制御させるようにすることができる。
【0027】
前記送信制御ステップには、前記応答時間が所定の閾値以下であって、前記期待値と前記認証データとが一致する場合、前記受信装置に対する前記送信データの送信可否が可であるとの判定がなされて終了したことを表す前記判定終了情報を送信することを制御させるようにすることができる。
【0028】
前記送信制御ステップには、前記応答時間が所定の閾値以下ではないか、前記期待値と前記認証データとが一致しない場合、前記受信装置に対する前記送信データの送信可否が不可であるとの判定がなされて終了したことを表す前記判定終了情報を送信することを制御させるようにすることができる。
【0029】
前記プロセッサが、前記判定ステップにより前記受信装置に対する前記データの送信が可であると判定された場合、前記受信装置に対する前記送信データの送信を許可し、前記判定ステップにより前記受信装置に対する前記データの送信が不可であると判定された場合、前記受信装置に対する前記送信データの送信を禁止する送信制御ステップも含む処理を行なうようにすることができる。
【0030】
前記送信制御ステップには、前記送信データとして、コンテンツを送信することを制御させるようにすることができる。
【0031】
前記プログラムを記録する記録部をさらに設けるようにすることができる。
【0032】
前記記録部は、ROM(Read Only Memory)又はハードディスクの少なくとも一方であるようにすることができる。
【0033】
前記プロセッサには、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0034】
前記情報処理装置には、ユーザにより操作される操作部として、キーボード又はマウスの少なくとも一方を設けるようにすることができ、前記プロセッサには、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0035】
前記受信装置は、前記受信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、前記プロセッサには、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行させるようにすることができる。
【0036】
前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに設けるようにすることができ、前記プロセッサには、前記プログラムを、前記記録部から前記保持部にロードして実行させるようにすることができる。
【0037】
前記プロセッサは、CPU(Central Processing Unit)であるようにすることができる。
【0038】
前記プロセッサが、前記送信制御部と、前記期待値生成部と、前記受信制御部と、前記認証部と、前記計測部と、前記計測部とを含む処理の処理結果に対応した出力を行わせる出力制御ステップも含む処理を行なうようにすることができる。
【0039】
本発明の第1の側面のプログラムは、記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置の情報処理用のプログラムであって、前記プロセッサが、応答を要求するコマンドを前記受信装置に送信することを制御する送信制御ステップと、前記受信装置との間で共有する共有データに基づいて、期待値を生成する期待値生成ステップと、前記共有データに基づいて生成された認証データを含んだ前記応答を前記受信装置から受信することを制御する受信制御ステップと、前記期待値生成ステップにより生成された前記期待値と、前記受信制御ステップの制御により受信された前記認証データに基づいて、前記受信装置を認証する認証ステップと、前記受信装置に対して前記応答を要求する前記コマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、前記認証ステップによる認証結果、および前記計測ステップにより計測された前記応答時間に基づいて、前記受信装置に対する送信データの送信可否を判定する判定ステップとを含む処理を行なうために実行するプログラムであって、前記送信制御ステップは、さらに、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信することを制御するプログラムである。
【0040】
前記期待値生成ステップには、前記コマンドが送信される前に、前記共有データに基づいて、前記認証ステップによる認証に用いられる前記期待値を生成させるようにすることができる。
【0041】
前記プロセッサが、前記応答時間が所定の閾値以下ではない場合、前記送信制御ステップの制御により送信される前記コマンドが何番目に送信されるものであるのかを示すカウント値を1だけインクリメントするカウントステップも含む処理を行うために実行する前記プログラムであって、前記送信制御ステップには、前記カウント値が1だけインクリメントされたことに対応して、新たな前記コマンドを送信することを制御させるようにすることができる。
【0042】
前記期待値生成ステップには、前記新たなコマンドが送信される前に、前記共有データに基づいて、前記認証ステップによる認証に用いられる新たな前記期待値を生成させ、前記受信制御ステップには、前記新たなコマンドにより要求された前記応答であって、新たな前記認証データを含んだ前記応答を前記受信装置から受信することを制御させ、前記認証ステップには、前記期待値生成ステップにより生成された前記新たな期待値と、前記受信制御ステップの制御により受信された前記新たな認証データに基づいて、前記受信装置を認証させるようにすることができる。
【0043】
前記送信制御ステップには、前記送信データの送信可否を判定するのに、前記コマンドを最大N回送信することを制御させるようにすることができる。
【0044】
前記送信制御ステップには、さらに、前記コマンドを送信することを制御する前に、前記共有データを前記受信装置に送信することを制御させるようにすることができる。
【0045】
前記期待値生成ステップには、前記共有データに対してハッシュ処理を施し、前記期待値を生成させるようにすることができる。
【0046】
前記期待値生成ステップには、前記共有データに対して前記ハッシュ処理を施して得られる処理結果に対して、再度、前記ハッシュ処理を施して得られたデータを前記期待値とさせるようにすることができる。
【0047】
前記認証ステップには、前記期待値と前記認証データとが一致する場合、前記受信装置を、前記送信データを送信すべき対象であるものとして認証させ、前記期待値と前記認証データとが一致しない場合、前記受信装置を、前記送信データを送信すべき対象ではないものとして認証させるようにすることができる。
【0048】
前記判定ステップには、前記受信装置が前記送信データを送信すべき対象であるものとして認証され、且つ、前記応答時間が所定の時間以下である場合、前記受信装置に対する前記送信データの送信が可であると判定させ、前記受信装置が前記送信データを送信すべき対象ではないものとして認証されたか、または前記応答時間が前記所定の時間以下ではない場合、前記受信装置に対する前記送信データの送信が不可であると判定させるようにすることができる。
【0049】
前記所定の時間は、同一のローカルネットワーク内に接続された前記受信装置と前記情報処理装置との間で要する通信時間であるようにすることができる。
【0050】
前記送信制御ステップには、前記送信データの送信可否が判定されたことに対応して、前記送信データの送信可否の判定の終了を示す判定終了情報も前記受信装置に送信することを制御させるようにすることができる。
【0051】
前記送信制御ステップには、前記応答時間が所定の閾値以下であって、前記期待値と前記認証データとが一致する場合、前記受信装置に対する前記送信データの送信可否が可であるとの判定がなされて終了したことを表す前記判定終了情報を送信することを制御させるようにすることができる。
【0052】
前記送信制御ステップには、前記応答時間が所定の閾値以下ではないか、前記期待値と前記認証データとが一致しない場合、前記受信装置に対する前記送信データの送信可否が不可であるとの判定がなされて終了したことを表す前記判定終了情報を送信することを制御させるようにすることができる。
【0053】
前記プロセッサが、前記判定ステップにより前記受信装置に対する前記データの送信が可であると判定された場合、前記受信装置に対する前記送信データの送信を許可し、前記判定ステップにより前記受信装置に対する前記データの送信が不可であると判定された場合、前記受信装置に対する前記送信データの送信を禁止する送信許可制御ステップも含む処理を行なうために実行するプログラムとすることができる。
【0054】
前記送信制御ステップには、前記送信データとして、コンテンツを送信することを制御させるようにすることができる。
【0055】
前記情報処理装置には、前記プログラムを記録する記録部も設けるようにすることができる。
【0056】
前記記録部は、ROM又はハードディスクの少なくとも一方であるようにすることができる。
【0057】
前記プロセッサには、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0058】
前記情報処理装置には、ユーザにより操作される操作部として、キーボード又はマウスの少なくとも一方を設けるようにすることができ、前記プロセッサには、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0059】
前記受信装置は、前記受信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、前記プロセッサには、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行させるようにすることができる。
【0060】
前記情報処理装置には、前記プロセッサにより実行される前記プログラムを一時的に保持する保持部も設けるようにすることができ、前記プロセッサには、前記プログラムを、前記記録部から前記保持部にロードして実行させるようにすることができる。
【0061】
前記プロセッサは、CPUであるようにすることができる。
【0062】
前記プロセッサが、前記送信制御ステップと、前記期待値生成ステップと、前記受信制御ステップと、前記認証ステップと、前記計測ステップと、前記判定ステップとを含む処理の処理結果に対応した出力を行わせる出力制御ステップも含む処理を行なうために実行するようにすることができる。
【0063】
本発明の第1の側面の情報処理方法は、受信装置に対する送信データの送信可否を判定する情報処理装置の情報処理方法であって、前記情報処理装置は、コマンド送信部と、期待値生成部と、受信部と、認証部と、計測部と、判定部とを備え、前記コマンド送信部が、応答を要求するコマンドを受信装置に送信するコマンド送信ステップと、前記期待値生成部が、前記受信装置との間で共有する共有データに基づいて、期待値を生成する期待値生成ステップと、前記受信部が、前記共有データに基づいて生成された認証データを含んだ前記応答を前記受信装置から受信する受信ステップと、前記認証部が、前記期待値生成ステップの処理で生成された前記期待値と、前記受信ステップの処理で受信された前記認証データに基づいて、前記受信装置を認証する認証ステップと、前記計測部が、前記受信装置に対して前記応答を要求する前記コマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、前記判定部が、前記認証ステップでの認証結果、および前記計測ステップの処理で計測された前記応答時間に基づいて、前記受信装置に対する前記送信データの送信可否を判定する判定ステップとを含み、前記送信ステップは、さらに、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信する情報処理方法である。
【0064】
本発明の第1の側面によれば、応答を要求するコマンドが受信装置に送信され、前記受信装置との間で共有する共有データに基づいて、期待値が生成され、前記共有データに基づいて生成された認証データを含んだ前記応答が前記受信装置から受信され、生成された前記期待値と、受信された前記認証データに基づいて、前記受信装置が認証され、前記受信装置に対して前記応答を要求する前記コマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間が計測され、認証による認証結果、および計測された前記応答時間に基づいて、前記受信装置に対する前記送信データの送信可否が判定される。そして、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データが送信される。
【0065】
本発明の第2の側面の情報処理装置は、記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置であって、送信装置と共有する共有データから生成された認証データに基づく認証結果、および前記送信装置からの、応答を要求するコマンドに対する応答時間に基づいて、送信データの送信可否を判定する前記送信装置により、前記送信データの送信可否の判定対象とされる前記情報処理装置であって、前記プロセッサが、前記プログラムを実行することにより、前記送信装置から前記コマンドを受信することを制御する受信制御ステップと、前記共有データに基づいて、前記認証データを生成する認証データ生成ステップと、前記認証データ生成ステップにより生成された前記認証データを含む、前記コマンドに対する前記応答を生成する応答生成ステップと、前記送信装置から送信されてきた前記コマンドが受信されたとき、前記応答を前記送信装置に送信することを制御する送信制御ステップとを含む処理を行ない、前記受信制御ステップは、前記送信装置からの前記送信データも受信することを制御する情報処理装置である。
【0066】
前記認証データ生成ステップには、前記コマンドが受信される前に、前記共有データに基づいて、前記認証データを生成させるようにすることができる。
【0067】
前記受信制御ステップには、前記送信装置から前記コマンドを最大N回受信することを制御させ、前記送信制御ステップには、前記コマンドが受信される毎に、前記コマンドにより要求された前記応答を前記送信装置に送信することを制御させるようにすることができる。
【0068】
前記受信制御ステップには、前記コマンドを受信する前に、前記送信装置からの前記共有データを受信することを制御させ、前記認証データ生成ステップには、前記共有データが受信されたことに対応し、受信された前記共有データに基づいて、前記認証データを生成させるようにすることができる。
【0069】
前記送信制御ステップには、前記共有データが受信されたことに対応して、前記共有データを受信した旨を示す受信情報も送信することを制御させるようにすることができる。
【0070】
前記認証データ生成ステップには、前記共有データに対してハッシュ処理を施し、前記認証データを生成させるようにすることができる。
【0071】
前記認証データ生成ステップには、前記共有データに対して前記ハッシュ処理を施して得られる処理結果に対して、再度、前記ハッシュ処理を施して得られたデータを前記認証データとさせるようにすることができる。
【0072】
前記期待値生成ステップには、前記共有データである擬似乱数に対して、前記送信装置と共有する秘密鍵を利用したHMACアルゴリズムによる前記ハッシュ処理を施し、前記認証データを生成させるようにすることができる。
【0073】
前記認証データ生成ステップには、前記共有データに対して前記ハッシュ処理を施し、その結果得られたデータを前記認証データとさせるようにすることができる。
【0074】
前記認証データ生成ステップには、前記共有データと前記情報処理装置固有の情報に対して、前記ハッシュ処理を施し、その結果得られたデータを前記認証データとさせるようにすることができる。
【0075】
前記認証データ生成ステップには、前記共有データに対して前記ハッシュ処理を施して得られたデータを複数個に分割し、分割されたデータからN個の前記認証データを生成させるようにすることができる。
【0076】
前記認証データ生成ステップには、前記共有データに対して前記ハッシュ処理を繰り返し施し、そのハッシュ処理毎に得られたデータから、N個の前記認証データを生成させるようにすることができる。
【0077】
前記受信制御ステップには、前記送信装置による前記送信データの送信可否の判定の終了を示す判定終了情報も前記送信装置から受信させるようにすることができる。
【0078】
前記送信装置は、前記応答時間が所定の閾値以下であって、前記期待値と前記認証データとが一致する場合、前記情報処理装置に対する前記送信データの送信可否が可であるとの判定がなされて終了したことを表す前記判定終了情報を送信するものであり、前記受信制御ステップには、前記送信装置からの前記判定終了情報を受信させるようにすることができる。
【0079】
前記送信装置は、前記応答時間が所定の閾値以下ではないか、又は前記期待値と前記認証データとが一致しない場合、前記情報処理装置に対する前記送信データの送信可否が不可であるとの判定がなされて終了したことを表す前記判定終了情報を送信するものであり、前記受信制御ステップには、前記送信装置からの前記判定終了情報を受信させるようにすることができる。
【0080】
前記プログラムを記録する記録部をさらに設けるようにすることができる。
【0081】
前記記録部は、ROM又はハードディスクの少なくとも一方であるようにすることができる。
【0082】
前記プロセッサには、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0083】
前記情報処理装置には、ユーザにより操作される操作部として、キーボード又はマウスの少なくとも一方を設けるようにすることができ、前記プロセッサには、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0084】
前記送信装置は、前記送信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、前記プロセッサには、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行させるようにすることができる。
【0085】
前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに設けるようにすることができ、前記プロセッサには、前記プログラムを、前記記録ステップから前記保持部にロードして実行させるようにすることができる。
【0086】
前記プロセッサは、CPUであるようにすることができる。
【0087】
前記プロセッサが、前記受信制御ステップと、前記認証データ生成ステップと、前記応答生成ステップと、前記送信制御ステップとを含む処理の処理結果に対応した出力を行わせる出力制御ステップを含む処理を行なうようにすることができる。
【0088】
本発明の第2の側面のプログラムは、記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置であって、送信装置と共有する共有データから生成された認証データに基づく認証結果、および前記送信装置からの、応答を要求するコマンドに対する応答時間に基づいて、送信データの送信可否を判定する前記送信装置により、前記送信データの送信可否の判定対象とされる前記情報処理装置の情報処理用のプログラムであって、前記プロセッサが、前記送信装置から前記コマンドを受信することを制御する受信制御ステップと、前記共有データに基づいて、前記認証データを生成する認証データ生成ステップと、前記認証データ生成ステップにより生成された前記認証データを含む、前記コマンドに対する前記応答を生成する応答生成ステップと、前記送信装置から送信されてきた前記コマンドが受信されたとき、前記応答を前記送信装置に送信することを制御する送信制御ステップとを含む処理を行なうために実行するプログラムであって、前記受信制御ステップは、前記送信装置からの前記送信データも受信することを制御するプログラムである。
【0089】
前記認証データ生成ステップには、前記コマンドが受信される前に、前記共有データに基づいて、前記認証データを生成させるようにすることができる。
【0090】
前記受信制御ステップには、前記送信装置から前記コマンドを最大N回受信することを制御させ、前記送信制御ステップには、前記コマンドが受信される毎に、前記コマンドにより要求された前記応答を前記送信装置に送信することを制御させるようにすることができる。
【0091】
前記受信制御ステップには、前記コマンドを受信することを制御する前に、前記送信装置からの前記共有データを受信することを制御させ、前記認証データ生成ステップには、前記共有データが受信されたことに対応し、受信された前記共有データに基づいて、前記認証データを生成させるようにすることができる。
【0092】
前記送信制御ステップには、前記共有データが受信されたことに対応して、前記共有データを受信した旨を示す受信情報も送信することを制御させるようにすることができる。
【0093】
前記認証データ生成ステップには、前記共有データに対してハッシュ処理を施し、前記認証データを生成させるようにすることができる。
【0094】
前記認証データ生成ステップには、前記共有データに対して前記ハッシュ処理を施して得られる処理結果に対して、再度、前記ハッシュ処理を施して得られたデータを前記認証データとさせるようにすることができる。
【0095】
前記受信制御ステップには、前記送信装置による前記送信データの送信可否の判定の終了を示す判定終了情報も前記送信装置から受信することを制御させるようにすることができる。
【0096】
前記送信装置は、前記応答時間が所定の閾値以下であって、前記期待値と前記認証データとが一致する場合、前記情報処理装置に対する前記送信データの送信可否が可であるとの判定がなされて終了したことを表す前記判定終了情報を送信するものであり、前記受信制御ステップには、前記送信装置からの前記判定終了情報を受信することを制御させるようにすることができる。
【0097】
前記送信装置は、前記応答時間が所定の閾値以下ではないか、又は前記期待値と前記認証データとが一致しない場合、前記情報処理装置に対する前記送信データの送信可否が不可であるとの判定がなされて終了したことを表す前記判定終了情報を送信するものであり、前記受信制御ステップには、前記送信装置からの前記判定終了情報を受信することを制御させるようにすることができる。
【0098】
前記情報処理装置は、前記プログラムを記録する記録部も設けるようにすることができる。
【0099】
前記記録部は、ROM又はハードディスクの少なくとも一方であるようにすることができる。
【0100】
前記プロセッサには、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0101】
前記情報処理装置には、ユーザにより操作される操作部として、キーボード又はマウスの少なくとも一方を設けるようにすることができ、前記プロセッサには、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0102】
前記送信装置は、前記送信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、前記プロセッサには、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行させるようにすることができる。
【0103】
前記情報処理装置には、前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに設けるようにすることができ、前記プロセッサには、前記プログラムを、前記記録部から前記保持部にロードして実行させるようにすることができる。
【0104】
前記プロセッサは、CPUであるようにすることができる。
【0105】
前記プロセッサが、前記受信制御ステップと、前記認証データ生成ステップと、前記応答生成ステップと、前記送信制御ステップとを含む処理の処理結果に対応した出力を行わせる出力制御ステップも含む処理を行なうために実行するプログラムとすることができる。
【0106】
本発明の第2の側面の情報処理方法は、送信装置と共有する共有データから生成された認証データに基づく認証結果、および前記送信装置からの、応答を要求するコマンドに対する応答時間に基づいて、送信データの送信可否を判定する前記送信装置により、前記送信データの送信可否の判定対象とされる情報処理装置の情報処理方法であって、前記情報処理装置は、受信部と、認証データ生成部と、応答生成部と、送信部とを備え、前記受信部が、前記送信装置から前記コマンドを受信する受信ステップと、前記認証データ生成部が、前記共有データに基づいて、前記認証データを生成する認証データ生成ステップと、前記応答生成部が、前記認証データ生成ステップの処理で生成された前記認証データを含む、前記コマンドに対する前記応答を生成する応答生成ステップと、前記送信部が、前記送信装置から送信されてきた前記コマンドが受信されたとき、前記応答を前記送信装置に送信する送信ステップとを含み、前記受信ステップは、前記送信装置からの前記送信データも受信する情報処理方法である。
【0107】
本発明の第2の側面によれば、前記送信装置から前記コマンドが受信され、前記共有データに基づいて、前記認証データが生成され、生成された前記認証データを含む、前記コマンドに対する前記応答が生成され、前記送信装置から送信されてきた前記コマンドが受信されたとき、前記応答が前記送信装置に送信される。また、前記送信装置からの前記送信データが受信される。
【0108】
本発明の第3の側面の情報処理装置は、記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置であって、前記プロセッサが、前記プログラムを実行することにより、受信装置との間で共有する共有データをもとに、コマンド認証データと、応答期待値データを生成する認証データ生成ステップと、前記コマンド認証データを含み、応答を要求するコマンドを前記受信装置に送信することを制御するコマンド送信制御ステップと、前記コマンドに対する受信装置からの前記応答を受信することを制御する応答受信制御ステップと、前記応答期待値データと、前記受信装置から受信した前記応答に含まれる応答認証データに基づいて前記受信装置を認証する認証ステップと、前記受信装置に対して前記コマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、前記認証ステップによる認証結果、および前記計測ステップにより計測された応答時間に基づいて、前記受信装置に対する送信データの送信可否を判定する判定ステップと、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信することを制御する送信データ送信制御部とを含む処理を行なう情報処理装置である。
【0109】
前記認証データ生成ステップには、前記コマンドが送信される前に、前記共有データをもとに、前記コマンド認証データと、前記応答期待値データを生成させるようにすることができる。
【0110】
前記プロセッサが、前記応答時間が所定の閾値よりも大きい場合、前記コマンド送信制御ステップの制御により送信される前記コマンドが何番目に送信されるものであるのかを示すカウント値を1だけインクリメントするカウントステップも含む処理を行うようにすることができ、前記コマンド送信制御ステップには、前記カウント値が1だけインクリメントされたことに対応して、新たな前記コマンドを送信することを制御させるようにすることができる。
【0111】
前記認証データ生成ステップには、前記新たなコマンドが送信される前に、前記共有データをもとに、新たな前記コマンド認証データと、新たな前記応答期待値データを生成させ、前記応答受信制御ステップには、前記新たなコマンドにより要求される前記応答であって、新たな前記応答認証データを含んだ前記応答を前記受信装置から受信することを制御させ、前記認証ステップには、前記新たな応答期待値データと、前記受信装置から受信した前記応答に含まれる前記新たな応答認証データに基づいて前記受信装置を認証させるようにすることができる。
【0112】
前記コマンド送信制御ステップには、前記送信データの送信可否を判定するのに、前記コマンドを最大N回送信することを制御させるようにすることができる。
【0113】
前記プロセッサが、前記コマンドが送信される前に、所定の送信情報を前記受信装置に送信することを制御する情報送信制御ステップと、前記コマンドが送信される前に、前記所定の送信情報に対する応答を前記受信装置から受信することを制御する情報応答受信制御ステップとをさらに含む処理を行なうようにすることができる。
【0114】
前記情報送信制御ステップには、前記コマンド送信制御ステップの制御において前記コマンドを送信可能なリトライ可能数を含む前記送信情報を、前記受信装置に送信することを制御させ、前記情報応答受信制御ステップには、前記送信情報を受信した前記受信装置により決定されたリトライ数を含む、前記送信情報に対する前記応答を受信することを制御させ、前記コマンド送信制御ステップには、前記コマンドを、最大、前記リトライ数だけ送信することを制御させるようにすることができる。
【0115】
前記情報送信制御ステップには、TCPコネクション経由で、前記所定の送信情報を前記受信装置に送信することを制御させ、前記応答受信制御ステップには、前記TCPコネクション経由で、前記所定の送信情報に対する応答を前記受信装置から受信することを制御させるようにすることができる。
【0116】
前記コマンド送信制御ステップには、UDPを用いて、前記コマンドを前記受信装置に送信することを制御させ、前記応答受信制御ステップには、前記UDPを用いて、前記コマンドに対する前記応答を受信することを制御させるようにすることができる。
【0117】
前記プロセッサが、前記コマンドが送信される前に、前記共有データを前記受信装置に送信することを制御する共有データ送信制御ステップも含む処理を行うようにすることができる。
【0118】
前記認証データ生成ステップには、前記共有データに対してハッシュ処理を施し、前記コマンド認証データと前記応答期待値データを生成させるようにすることができる。
【0119】
前記認証ステップには、前記応答期待値データと前記応答認証データとが一致する場合、前記受信装置を、前記送信データを送信すべき対象であるものとして認証させ、前記応答期待値データと前記応答認証データとが一致しない場合、前記受信装置を、前記送信データを送信すべき対象ではないものとして認証させるようにすることができる。
【0120】
前記判定ステップには、前記受信装置が前記送信データを送信すべき対象であるものとして認証され、且つ、前記応答時間が所定の時間以下である場合、前記受信装置に対する前記送信データの送信が可であると判定させ、前記受信装置が前記送信データを送信すべき対象ではないものとして認証されたか、または前記応答時間が所定の時間よりも大きい場合、前記受信装置に対する前記送信データの送信が不可であると判定させるようにすることができる。
【0121】
前記所定の時間は、同一のローカルネットワーク内に接続された前記受信装置と前記情報処理装置との間で要する通信時間であるようにすることができる。
【0122】
前記記録部は、ROM又はハードディスクの少なくとも一方であるようにすることができる。
【0123】
前記プロセッサには、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0124】
前記情報処理装置には、ユーザにより操作される操作部として、キーボード又はマウスの少なくも一方を設けるようにすることができ、前記プロセッサには、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0125】
前記受信装置は、前記受信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、前記プロセッサには、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行させるようにすることができる。
【0126】
前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに設けるようにすることができ、前記プロセッサには、前記プログラムを、前記記録部から前記保持部にロードして実行させるようにすることができる。
【0127】
前記プロセッサは、CPU(Central Processing Unit)であるようにすることができる。
【0128】
前記プロセッサが、前記認証データ生成ステップと、前記コマンド送信制御ステップと、前記応答受信制御ステップと、前記認証ステップと、前記計測ステップと、前記判定ステップとを含む処理の処理結果に対応する出力を行わせる出力制御ステップも含む処理を行なうようにすることができる。
【0129】
本発明の第3の側面のプログラムは、記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置の情報処理用のプログラムであって、前記プロセッサが、受信装置との間で共有する共有データをもとに、コマンド認証データと、応答期待値データを生成する認証データ生成ステップと、前記コマンド認証データを含み、応答を要求するコマンドを前記受信装置に送信することを制御するコマンド送信制御ステップと、前記コマンドに対する受信装置からの前記応答を受信することを制御する応答受信制御ステップと、前記応答期待値データと、前記受信装置から受信した前記応答に含まれる応答認証データに基づいて前記受信装置を認証する認証ステップと、前記受信装置に対して前記応答を要求するコマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、前記認証ステップの処理による認証結果、および前記計測ステップの処理で計測された応答時間に基づいて、前記受信装置に対する送信データの送信可否を判定する判定ステップと、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信することを制御する送信データ送信制御部とを含む処理を行なうために実行するプログラムである。
【0130】
前記認証データ生成ステップには、前記コマンドが送信される前に、前記共有データをもとに、前記コマンド認証データと、前記応答期待値データを生成させるようにすることができる。
【0131】
前記プロセッサが、前記応答時間が所定の閾値よりも大きい場合、前記コマンド送信制御ステップの制御により送信される前記コマンドが何番目に送信されるものであるのかを示すカウント値を1だけインクリメントするカウントステップも含む処理を行なうために実行する前記プログラムであって、前記コマンド送信制御ステップには、前記カウント値が1だけインクリメントされたことに対応して、新たな前記コマンドを送信することを制御させるようにすることができる。
【0132】
前記認証データ生成ステップには、前記新たなコマンドが送信される前に、前記共有データをもとに、新たな前記コマンド認証データと、新たな前記応答期待値データを生成させ、前記応答受信制御ステップは、前記新たなコマンドにより要求される前記応答であって、新たな前記応答認証データを含んだ前記応答を前記受信装置から受信することを制御させ、前記認証ステップには、前記新たな応答期待値データと、前記受信装置から受信した前記応答に含まれる前記新たな応答認証データに基づいて前記受信装置を認証させるようにすることができる。
【0133】
前記コマンド送信制御ステップには、前記送信データの送信可否を判定するのに、前記コマンドを最大N回送信することを制御させるようにすることができる。
【0134】
前記プロセッサが、前記コマンドが送信される前に、所定の送信情報を前記受信装置に送信することを制御する情報送信制御ステップと、前記コマンドが送信される前に、前記所定の送信情報に対する応答を前記受信装置から受信することを制御する情報応答受信制御ステップとをさらに含む処理を行なうために実行するプログラムとすることができる。
【0135】
前記情報送信制御ステップには、前記コマンド送信制御ステップの制御において前記コマンドを送信可能なリトライ可能数を含む前記送信情報を、前記受信装置に送信することを制御させ、前記情報応答受信制御ステップには、前記送信情報を受信した前記受信装置により決定されたリトライ数を含む、前記送信情報に対する前記応答を受信することを制御させ、前記コマンド送信制御ステップには、前記コマンドを、最大、前記リトライ数だけ送信することを制御させるようにすることができる。
【0136】
前記情報送信制御ステップには、TCPコネクション経由で、前記所定の送信情報を前記受信装置に送信することを制御させ、前記応答受信制御ステップには、前記TCPコネクション経由で、前記所定の送信情報に対する応答を前記受信装置から受信することを制御させるようにすることができる。
【0137】
前記コマンド送信制御ステップには、UDPを用いて、前記コマンドを前記受信装置に送信することを制御させ、前記応答受信制御ステップには、前記UDPを用いて、前記コマンドに対する前記応答を受信することを制御させるようにすることができる。
【0138】
前記プロセッサが、前記コマンドが送信される前に、前記共有データを前記受信装置に送信することを制御する共有データ送信制御ステップも含む処理を行なうために実行するプログラムとすることができる。
【0139】
前記認証データ生成ステップには、前記共有データに対してハッシュ処理を施し、前記コマンド認証データと前記応答期待値データを生成させるようにすることができる。
【0140】
前記認証ステップには、前記応答期待値データと前記応答認証データとが一致する場合、前記受信装置を、前記送信データを送信すべき対象であるものとして認証させ、前記応答期待値データと前記応答認証データとが一致しない場合、前記受信装置を、前記送信データを送信すべき対象ではないものとして認証させるようにすることができる。
【0141】
前記判定ステップには、前記受信装置が前記送信データを送信すべき対象であるものとして認証され、且つ、前記応答時間が所定の時間以下である場合、前記受信装置に対する前記送信データの送信が可であると判定させ、前記受信装置が前記送信データを送信すべき対象ではないものとして認証されたか、または前記応答時間が所定の時間よりも大きい場合、前記受信装置に対する前記送信データの送信が不可であると判定させるようにすることができる。
【0142】
前記所定の時間は、同一のローカルネットワーク内に接続された前記受信装置と前記情報処理装置との間で要する通信時間であるようにすることができる。
【0143】
前記情報処理装置は、前記プログラムを記録する前記記録部も設けるようにすることができる。
【0144】
前記記録部は、ROM又はハードディスクの少なくとも一方であるようにすることができる。
【0145】
前記プロセッサには、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0146】
前記情報処理装置には、ユーザにより操作される操作部として、キーボード又はマウスの少なくも一方を設けるようにすることができ、前記プロセッサには、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0147】
前記受信装置は、前記受信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、前記プロセッサには、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行させるようにすることができる。
【0148】
前記情報処理装置には、前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに設けるようにすることができ、前記プロセッサには、前記プログラムを、前記記録部から前記保持部にロードして実行させるようにすることができる。
【0149】
前記プロセッサは、CPUであるようにすることができる。
【0150】
前記プロセッサが、前記認証データ生成ステップと、前記コマンド送信制御ステップと、前記応答受信制御ステップと、前記認証ステップと、前記計測ステップと、前記判定ステップとを含む処理の処理結果に対応する出力を行わせる出力制御ステップも含む処理を行なうために実行するプログラムとすることができる。
【0151】
本発明の第3の側面の情報処理方法は、受信装置に対する送信データの送信可否を判定する情報処理装置の情報処理方法であって、前記情報処理装置は、認証データ生成部と、コマンド送信部と、応答受信部と、認証部と、計測部と、判定部と、送信データ送信部とを備え、前記認証データ生成部が、前記受信装置との間で共有する共有データをもとに、コマンド認証データと、応答期待値データを生成する認証データ生成ステップと、前記コマンド送信部が、前記コマンド認証データを含み、応答を要求するコマンドを前記受信装置に送信するコマンド送信ステップと、前記応答受信部が、前記コマンドに対する受信装置からの前記応答を受信する応答受信ステップと、前記認証部が、前記応答期待値データと、前記受信装置から受信した前記応答に含まれる応答認証データに基づいて前記受信装置を認証する認証ステップと、前記計測部が、前記受信装置に対して前記応答を要求するコマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、前記判定部が、前記認証ステップによる認証結果、および前記計測ステップで計測された応答時間に基づいて、前記受信装置に対する前記送信データの送信可否を判定する判定ステップと、前記送信データ送信部が、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信する送信データ送信ステップとを含む情報処理方法である。
【0152】
本発明の第3の側面によれば、前記受信装置との間で共有する共有データをもとに、コマンド認証データと、応答期待値データが生成され、前記コマンド認証データを含み、応答を要求するコマンドが前記受信装置に送信され、前記コマンドに対する受信装置からの前記応答が受信され、前記応答期待値データと、前記受信装置から受信した前記応答に含まれる応答認証データに基づいて前記受信装置が認証され、前記受信装置に対して前記応答を要求するコマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間が計測され、認証による認証結果、および計測された応答時間に基づいて、前記受信装置に対する前記送信データの送信可否が判定される。そして、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データが送信される。
【0153】
本発明の第4の側面の情報処理装置は、記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置であって、前記情報処理装置に対して応答を要求するコマンドに対する応答時間に基づいて送信データの送信可否を判定する送信装置により、前記送信データの送信可否の判定対象とされる前記情報処理装置であって、前記プロセッサが、前記プログラムを実行することにより、前記送信装置との間で共有する共有データから、コマンド期待値データおよび応答認証データを生成する生成ステップと、前記送信装置から送信されてきた前記コマンドが受信されたことに対応して、前記応答認証データを含む応答を前記送信装置に送信することを制御する応答送信制御ステップと、前記コマンドに含まれるコマンド認証データと、前記生成ステップにより生成された前記コマンド期待値データに基づいて前記送信装置を認証する認証ステップと、前記送信装置により前記送信データの送信が可であると判定されたことに対応して、前記送信装置から送信されてくる前記送信データを受信することを制御する送信データ受信制御部とを含む処理を行なう情報処理装置である。
【0154】
前記生成ステップには、前記コマンドが受信される前に、前記共有データに基づいて、前記コマンド期待値データおよび前記応答認証データを生成させるようにすることができる。
【0155】
前記プロセッサが、前記送信装置からの前記コマンドを最大N回受信することを制御するコマンド受信制御ステップも含む処理を行うようにすることができ、前記応答送信制御ステップには、前記コマンドが受信される毎に、前記コマンドにより要求された前記応答を前記送信装置に送信することを制御させるようにすることができる。
【0156】
前記プロセッサが、前記コマンドが受信される前に、所定の送信情報を前記送信装置から受信することを制御する情報受信制御ステップと、前記コマンドが受信される前に、前記所定の送信情報に対する応答を前記送信装置に送信することを制御する情報応答送信制御ステップとをさらに含む処理を行なうようにすることができる。
【0157】
前記情報受信制御ステップには、前記送信装置において前記コマンドを送信可能なリトライ可能数を含む前記送信情報を、前記受信装置から受信することを制御させ、前記情報応答送信制御ステップには、前記リトライ可能数に基づき決定される前記回数Nを含む前記応答を送信することを制御させるようにすることができる。
【0158】
前記情報受信制御ステップには、TCPコネクション経由で、前記所定の送信情報を前記送信装置から受信することを制御させ、前記情報応答送信制御ステップには、前記TCPコネクション経由で、前記所定の送信情報に対する応答を前記送信装置に送信することを制御させるようにすることができる。
【0159】
前記プロセッサが、UDPを用いて、前記コマンドを前記送信装置から受信するコマンド受信制御ステップも含む処理を行うようにすることができ、前記応答送信制御ステップには、前記コマンドが受信されたことに対応して、前記UDPを用いて、前記コマンドに対する前記応答を前記送信装置に送信することを制御させるようにすることができる。
【0160】
前記プロセッサが、前記コマンドが受信される前に、前記共有データを前記送信装置から受信することを制御する共有データ受信制御ステップも含む処理を行うようにすることができ、前記生成ステップには、受信された前記共有データに基づいて、前記コマンド期待値データおよび前記応答認証データを生成させるようにすることができる。
【0161】
前記生成ステップには、前記共有データに対してハッシュ処理を施し、前記コマンド期待値データおよび前記応答認証データを生成させるようにすることができる。
【0162】
前記応答送信制御ステップには、前記コマンド認証データと前記コマンド期待値データとが一致する場合、前記コマンドが受信されたことに対応して、前記送信装置において生成される応答期待値データと一致する前記応答認証データを含む前記応答を前記送信装置に送信することを制御させるようにすることができる。
【0163】
前記応答送信制御ステップには、前記コマンド認証データと前記コマンド期待値データとが一致しない場合、前記コマンドが受信されたことに対応して、前記送信装置において生成される前記応答期待値データと一致しない前記応答認証データを含む前記応答を前記送信装置に送信することを制御させるようにすることができる。
【0164】
前記記録部は、ROM又はハードディスクの少なくとも一方であるようにすることができる。
【0165】
前記プロセッサには、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0166】
前記情報処理装置には、ユーザにより操作される操作部として、キーボード又はマウスの少なくも一方を設けるようにすることができ、前記プロセッサには、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0167】
前記送信装置は、前記送信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、前記プロセッサには、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行させるようにすることができる。
【0168】
前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに設けるようにすることができ、前記プロセッサは、前記プログラムを、前記記録部から前記保持部にロードして実行させるようにすることができる。
【0169】
前記プロセッサは、CPUであるようにすることができる。
【0170】
前記プロセッサが、前記前記認証データ生成ステップと、前記コマンド送信制御ステップと、前記応答受信制御ステップと、前記認証ステップと、前記計測ステップと、前記判定ステップとを含む前記処理の処理結果に対応する出力を行わせる出力制御ステップも含む処理を行なわせるようにすることができる。
【0171】
本発明の第4の側面のプログラムは、記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置であって、前記情報処理装置に対して応答を要求するコマンドに対する応答時間に基づいて送信データの送信可否を判定する送信装置により、前記送信データの送信可否の判定対象とされる前記情報処理装置の情報処理用のプログラムであって、前記プロセッサが、前記送信装置との間で共有する共有データから、コマンド期待値データおよび応答認証データを生成する生成ステップと、前記送信装置から送信されてきた前記コマンドが受信されたことに対応して、前記応答認証データを含む応答を前記送信装置に送信することを制御する応答送信制御ステップと、前記コマンドに含まれるコマンド認証データと、前記生成ステップの処理で生成された前記コマンド期待値データに基づいて前記送信装置を認証する認証ステップと、前記送信装置により前記送信データの送信が可であると判定されたことに対応して、前記送信装置から送信されてくる前記送信データを受信することを制御する送信データ受信制御部とを含む処理を行なうために実行するプログラムである。
【0172】
前記生成ステップには、前記コマンドが受信される前に、前記共有データに基づいて、前記コマンド期待値データおよび前記応答認証データを生成させるようにすることができる。
【0173】
前記プロセッサが、前記送信装置からの前記コマンドを最大N回受信することを制御するコマンド受信制御ステップも含む処理を行なうために実行する前記プログラムであって、前記応答送信制御ステップには、前記コマンドが受信される毎に、前記コマンドにより要求された前記応答を前記送信装置に送信することを制御させるようにすることができる。
【0174】
前記プロセッサが、前記コマンドが受信される前に、所定の送信情報を前記送信装置から受信することを制御する情報受信制御ステップと、前記コマンドが受信される前に、前記所定の送信情報に対する応答を前記送信装置に送信することを制御する情報応答送信制御ステップとをさらに含む処理を行なうために実行するプログラムとすることができる。
【0175】
前記情報受信制御ステップには、前記送信装置において前記コマンドを送信可能なリトライ可能数を含む前記送信情報を、前記受信装置から受信することを制御させ、前記情報応答送信制御ステップには、前記リトライ可能数に基づき決定される前記回数Nを含む前記応答を送信することを制御させるようにすることができる。
【0176】
前記情報受信制御ステップには、TCPコネクション経由で、前記所定の送信情報を前記送信装置から受信することを制御させ、前記情報応答送信制御ステップには、前記TCPコネクション経由で、前記所定の送信情報に対する応答を前記送信装置に送信することを制御させるようにすることができる。
【0177】
前記プロセッサが、UDPを用いて、前記コマンドを前記送信装置から受信することを制御するコマンド受信制御ステップも含む処理を行なうために実行する前記プログラムであって、前記応答送信制御ステップには、前記コマンドが受信されたことに対応して、前記UDPを用いて、前記コマンドに対する前記応答を前記送信装置に送信することを制御させるようにすることができる。
【0178】
前記プロセッサが、前記コマンドが受信される前に、前記共有データを前記送信装置から受信することを制御する共有データ受信制御ステップも含む処理を行なうために実行する前記プログラムであって、前記生成ステップには、受信された前記共有データに基づいて、前記コマンド期待値データおよび前記応答認証データを生成させるようにすることができる。
【0179】
前記生成ステップには、前記共有データに対してハッシュ処理を施し、前記コマンド期待値データおよび前記応答認証データを生成させるようにすることができる。
【0180】
前記応答送信制御ステップには、前記コマンド認証データと前記コマンド期待値データとが一致する場合、前記コマンドが受信されたことに対応して、前記送信装置において生成される応答期待値データと一致する前記応答認証データを含む前記応答を前記送信装置に送信することを制御させるようにすることができる。
【0181】
前記応答送信制御ステップには、前記コマンド認証データと前記コマンド期待値データとが一致しない場合、前記コマンドが受信されたことに対応して、前記送信装置において生成される前記応答期待値データと一致しない前記応答認証データを含む前記応答を前記送信装置に送信することを制御させるようにすることができる。
【0182】
前記情報処理装置には、前記プログラムを記録する記録部も設けるようにすることができる。
【0183】
前記記録部は、ROM又はハードディスクの少なくとも一方であるようにすることができる。
【0184】
前記プロセッサには、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0185】
前記情報処理装置には、ユーザにより操作される操作部として、キーボード又はマウスの少なくも一方を設けるようにすることができ、前記プロセッサには、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行させるようにすることができる。
【0186】
前記送信装置は、前記送信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、前記プロセッサには、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行させるようにすることができる。
【0187】
前記情報処理装置には、前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに設けるようにすることができ、前記プロセッサには、前記プログラムを、前記記録部から前記保持部にロードして実行させるようにすることができる。
【0188】
前記プロセッサは、CPUであるようにすることができる。
【0189】
前記プロセッサが、前記生成ステップと、前記応答送信制御ステップと、前記認証ステップとを含む処理による処理結果に対応する出力を行わせる出力制御ステップも含む処理を行うために実行するプログラムとすることができる。
【0190】
本発明の第4の側面の情報処理方法は、情報処理装置に対して応答を要求するコマンドに対する応答時間に基づいて送信データの送信可否を判定する送信装置により、前記送信データの送信可否の判定対象とされる前記情報処理装置の情報処理方法であって、前記情報処理装置は、生成部と、応答送信部と、認証部と、送信データ送信部とを備え、前記生成部が、前記送信装置との間で共有する共有データから、コマンド期待値データおよび応答認証データを生成する生成ステップと、前記応答送信部が、前記送信装置から送信されてきた前記コマンドが受信されたことに対応して、前記応答認証データを含む応答を前記送信装置に送信する応答送信ステップと、前記認証部が、前記コマンドに含まれるコマンド認証データと、前記生成ステップの処理で生成された前記コマンド期待値データに基づいて前記送信装置を認証する認証ステップと、前記送信データ受信部が、前記送信装置により前記送信データの送信が可であると判定されたことに対応して、前記送信装置から送信されてくる前記送信データを受信する送信データ受信ステップとを含む情報処理方法である。
【0191】
本発明の第4の側面によれば、前記送信装置との間で共有する共有データから、コマンド期待値データおよび応答認証データが生成され、前記送信装置から送信されてきた前記コマンドが受信されたことに対応して、前記応答認証データを含む応答が前記送信装置に送信され、前記コマンドに含まれるコマンド認証データと、生成された前記コマンド期待値データに基づいて前記送信装置が認証される。そして、前記送信装置により前記送信データの送信が可であると判定されたことに対応して、前記送信装置から送信されてくる前記送信データが受信される。
【発明の効果】
【0192】
本発明の第1および第3の側面によれば、受信装置の応答時間を適切に計測することができる。
【0193】
本発明の第2および第4の側面によれば、送信装置における応答時間の適切な計測に必要な情報を提供することができる。
【図面の簡単な説明】
【0194】
【図1】本発明を適用した情報通信システムの利用例を示す図である。
【図2】図1の端末の構成例を示すブロック図である。
【図3】図2の送信可否判定部の構成例を示すブロック図である。
【図4】図2の応答制御部の構成例を示すブロック図である。
【図5】送信可否判定処理および応答処理を説明するフローチャートである。
【図6】期待値および認証データの生成方法を説明する図である。
【図7】期待値および認証データの他の生成方法を説明する図である。
【図8】図1の端末の動作を説明する図である。
【図9】図2の送信可否判定部の他の構成例を示すブロック図である。
【図10】図2の応答制御部の他の構成例を示すブロック図である。
【図11】他の送信可否判定処理を説明するフローチャートである。
【図12】他の応答処理を説明するフローチャートである。
【図13】図1の端末の動作を説明する他の図である。
【図14】図1の端末の動作を説明する他の図である。
【図15】図1の端末の動作を説明する他の図である。
【図16】パーソナルコンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【0195】
図1は、本発明を適用した端末11からなる情報通信システムの構成例を示している。
【0196】
LAN1−1,1−2(以下、個々に区別する必要がない場合、単位、LAN1と称する。他の場合についても同様である)がインターネットに代表されるWAN2を介して相互に接続されている。
【0197】
LAN1−1は、例えば、家屋内に設けられ、特定の個人(あるいは、家族)が使用する程度の規模のものであり、それには、スイッチングハブ(図示せず)を介して、パーソナルコンピュータやAV機器等の端末11−1および端末11−2が接続されている。LAN1−1と端末11−1および11−2との接続は、例えば、Ethernet(登録商標)(100BASE-TX)等の高速インタフェースによる。端末11−1および11−2は、LAN1−1およびWAN2を介して、LAN1−2に接続することができる。
【0198】
LAN1−2は、LAN1−1と同様に構成されており、それには、端末11−3が接続されている。
【0199】
各端末11は、本情報通信システムに登録された正規の機器であり、図2に示すように、送信可否判定部21、応答制御部22、通信部23、および送信データ格納部24を含んで構成されている。
【0200】
送信可否判定部21は、他の端末11(受信側の端末11)に所定のデータを送信する際に、通信部23を介して、受信側の端末11(正確には、その応答制御部22)と後述するように通信することで、受信側の端末11が本情報通信システムにおける正規の機器であるか否かを認証するとともに、所定の要求に対する受信側の端末11の応答時間を、受信側の端末11との通信時間として計測する。
【0201】
送信可否判定部21は、受信側の端末11の認証結果および応答時間に基づく通信距離の判別結果に基づいて、受信側の端末11に対するデータの送信可否を判定する。
【0202】
例えば、受信側の端末11が、送信側の端末11と異なるLAN1に接続されている場合(WAN2を介して接続され、いわゆる通信距離が長い場合)、応答時間は、同じLAN1に接続されている場合(通信距離が短い場合)に比べて長くなるので、例えば、通信が同一LAN1内に制限されているとき、送信可否判定部21は、計測した応答時間から受信側の端末11が送信側の端末11と同じLAN1に接続されているか否かを判定し、その判定結果と受信側の端末11の認証結果に基づいて、データ送信の可否を判定する。
【0203】
すなわち図1の例では、端末11−1(送信側)が端末11−2(受信側)にデータを送信する場合、端末11−1の送信可否判定部21は、計測した端末11−2の応答時間から、端末11−2がLAN1−1に接続されていることを判定し、データ送信を行う。一方、端末11−1が端末11−3にデータを送信する場合、端末11−1の送信可否判定部21は、計測した端末11−3の応答時間から、端末11−3はLAN1−1と異なるLAN(LAN1−2)に接続されていることを判定し、データ送信を行わない。
【0204】
なおこのような通信距離による通信制御は、映画などのコンテンツを一定の地域に対して先行配給し、他の地域には後日配給するなどのコンテンツ配給ビジネスに適用することができる。
【0205】
図2に戻り、応答制御部22は、送信側の端末11から所定のデータの送信を受ける際、通信部23を介して、送信側の端末11(正確には、その送信可否判定部21)と後述するように通信することで、送信側の端末11における認証および応答時間の適切な計測に必要な情報を送信側の端末11に送信する。
【0206】
通信部23は、LAN1に接続されており、同一のLAN1内の端末11、又はWAN2を介して異なるLAN1に接続されている端末11との通信を行う。
【0207】
送信データ格納部24は、受信側の端末11に送信される、所定のデータが格納されている。
【0208】
図3は、端末11の送信可否判定部21の構成例を示している。
【0209】
ランダムチャレンジ生成部31は、所定ビット数の疑似乱数(以下、ランダムチャレンジと称する)を生成し、ランダムチャレンジ送信制御部32および期待値生成部33に供給する。
【0210】
ランダムチャレンジ送信制御部32は、ランダムチャレンジ生成部31から供給されたランダムチャレンジを、通信部23を介して、受信側の端末11に送信する。ランダムチャレンジ送信制御部32はまた、通信部23を介して、受信側の端末11から送信されてきた、ランダムチャレンジを受信した旨のメッセージ(以下、RC受信メッセージと称する)を受信し、そのときRC受信メッセージを受信した旨をコマンド送信制御部34に通知する。
【0211】
期待値生成部33は、ランダムチャレンジ生成部31から供給されたランダムチャレンジに対して、例えば、受信側の端末11と共有する秘密鍵を利用したHMAC(Keyed-Hashing for Message Authentication, IETF RFC 2104)アルゴリズムによるハッシュ処理(いわゆる鍵付きハッシュ処理)を施して、受信側の端末11でランダムチャレンジから生成される認証データの期待値を生成し、判定部35に供給する。期待値生成部33はまた、端末11に予め設定された端末11固有の情報(例えば、機器ID)とランダムチャレンジを連結したものに鍵付きハッシュ処理を施して期待値を生成することもできる。
【0212】
なお、ハッシュ処理で利用される秘密鍵は、本情報通信システムの正規の機器に所定のタイミングで安全に配信される。
【0213】
コマンド送信制御部34は、ランダムチャレンジ送信制御部32から、RC受信メッセージを受信した旨が通知されたとき、又は判定部35からの指示に従って、応答を要求するコマンド(以下、応答要求コマンドと称する)を、通信部23を介して、受信側の端末11に送信する。
【0214】
コマンド送信制御部34又は、通信部23を介して、送信した応答要求コマンドに対する応答として、受信側の端末11から送信されてきたメッセージ(以下、応答メッセージと称する)を受信し、それを判定部35に供給する。応答メッセージには、ランダムチャレンジ送信制御部32により送信されたランダムチャレンジから生成された認証データが組み込まれている。
【0215】
コマンド送信制御部34又は、応答要求コマンドを送信した後、応答時間計測部36を制御して、応答時間の計測を開始させるとともに、その応答要求コマンドに対する応答としての応答メッセージを受信したとき、応答時間の計測を終了させる。
【0216】
判定部35は、コマンド送信制御部34からの応答メッセージに組み込まれている認証データと、期待値生成部33で生成されたその認証データの期待値に基づいて、受信側の端末11が、本情報通信システムにおける正規の機器であるかの認証を行う。判定部35はまた、応答時間計測部36で計測された応答時間が所定の時間TLを越えているか否かを判定して、通信距離の判別(送信側の端末11と同一のLAN1に接続されているかの判定)を行う。
【0217】
判定部35は、受信側の端末11の認証結果および通信距離の判別結果に基づいて、データの送信可否の判定を行う。判定部35は、その判定結果に基づいて、通信部23を制御し、送信データ格納部24に格納されているデータを、受信側の端末11に送信させる。
【0218】
応答時間計測部36は、コマンド送信制御部34からの指示に従って、内蔵するタイマを動作させ、受信側の端末11の応答時間を計測する。
【0219】
図4は、端末11の応答制御部22の構成例を示している。
【0220】
ランダムチャレンジ受信制御部41は、通信部23を介して、送信側の端末11(正確には、その送信可否判定部21)から送信されてきたランダムチャレンジを受信し、それを認証データ生成部42に供給する。ランダムチャレンジ受信制御部41はまた、通信部23を介して、RC受信メッセージ(ランダムチャレンジを受信した旨を表すメッセージ)を、送信側の端末11に送信し、そのときRC受信メッセージを送信した旨を応答メッセージ送信制御部44に通知する。
【0221】
認証データ生成部42は、ランダムチャレンジ受信制御部41から供給されたランダムチャレンジに対して、送信側の端末11(送信可否判定部21の期待値生成部33)における場合と同様の鍵付きハッシュ処理を施して、第三者が予測できない認証データを生成し、応答メッセージ生成部43に供給する。
【0222】
応答メッセージ生成部43は、応答メッセージ送信制御部44の制御に従って、認証データ生成部42から供給された認証データを組み込んだ応答メッセージを生成し、応答メッセージ送信制御部44に供給する。
【0223】
応答メッセージ送信制御部44は、通信部23を介して、送信側の端末11から送信されてきた応答要求コマンドを受信する。
【0224】
応答メッセージ送信制御部44は、応答要求コマンドを受信する前のタイミングで(送信側の端末11から応答要求コマンドが送信されてくる前のタイミングで)、応答メッセージ生成部43を制御して、受信する応答要求コマンドに対応した認証データが組み込まれた応答メッセージを生成させるとともに、応答要求コマンドを受信したとき、通信部23を介して、その応答メッセージを送信先の端末11に送信する。
【0225】
次に、図5のフローチャートを参照して、送信可否判定処理を行う場合の端末11の送信可否判定部21(図2,3)の動作を説明する。
【0226】
ステップS1において、端末11(送信側の端末11)の送信可否判定部21のランダムチャレンジ生成部31は、ランダムチャレンジを生成し、それをランダムチャレンジ送信制御部32および期待値生成部33に供給する。
【0227】
ステップS2において、ランダムチャレンジ送信制御部32は、供給されたランダムチャレンジを、通信部23を介して受信側の端末11に送信し、ステップS3において、期待値生成部33は、供給されたランダムチャレンジに対して鍵付きハッシュ処理を施して、受信側の端末11で生成される認証データの期待値を生成する。
【0228】
なおこの例の場合、送信側の端末11は、データ送信の可否を判定するのに、最大N(=1,2,・・・)回応答要求コマンドを送信するので、ここでは、送信され得るN個の応答要求コマンドに応じた認証データのN個の期待値が生成される。
【0229】
N個の期待値は、例えば、ランダムチャレンジに対して鍵付きハッシュ処理を施した結果得られたデータを複数個に分割し、その分割して得られたデータからN個の期待値を生成することができる。図6の例の場合、ランダムチャレンジに対して鍵付きハッシュ処理を施した結果得られたデータが、N個に分割されて、N個の期待値1乃至期待値Nが生成される。
【0230】
また、ランダムチャレンジに対する鍵付きハッシュ処理を、複数回繰り返して行い、その処理毎に得られたデータから、N個の期待値を生成することができる。図7の例の場合、ランダムチャレンジに対する鍵付きハッシュ処理がN回繰り返して行われ、その処理毎に得られたN個のデータが期待値となる。図7中、期待値1は、ランダムチャレンジに鍵付きハッシュ処理が1回施された結果得られたものであり、期待値2は、期待値1に、鍵付きハッシュ処理がさらに施された結果得られたものである。
【0231】
図5に戻り、ステップS4において、ランダムチャレンジ送信制御部32は、後述するように受信側の端末11から送信されてきた、ステップS2で送信されたランダムチャレンジを受信した旨を示すRC受信メッセージを(ステップS23)、通信部23を介して受信し、その旨をコマンド送信制御部34に通知する。ステップS5において、コマンド送信制御部34は、応答要求コマンドが何番目に送信されるものか(送信の順番)を示すカウンタiに1を初期設定する。
【0232】
次に、ステップS6において、コマンド送信制御部34は、通信部23を介して、応答要求コマンドを受信側の端末11に送信し、ステップS7において、応答時間計測部36を制御して、応答時間の計測を開始させる。
【0233】
ステップS8において、コマンド送信制御部34は、後述するように受信側の端末11から送信されてきた、ステップS6で送信された応答要求コマンドに対する応答しての応答メッセージを、通信部23を介して受信して、判定部35に供給し、ステップS9において、応答時間計測部36を制御して、応答時間の計測を終了させる。すなわちステップS7で開始しステップS9で終了する時間計測で得られた時間が受信側の端末11の応答時間となる。
【0234】
ステップS10において、判定部35は、コマンド送信制御部34から供給された応答メッセージに組み込まれている認証データと、期待値生成部33により生成された、その認証データの期待値(具体的には、カウンタiが示す順番に送信された応答要求コマンド(以下、第i番目に送信された応答要求コマンドと称する)に対応する期待値)とが一致するか否かを判定し、一致すると判定した場合、受信側の端末11を、情報通信システムにおける正規の端末であると認証し、ステップS11に進む。
【0235】
ステップS11において、判定部35は、応答時間計測部36で計測された、第i番目に送信された応答要求コマンドに対する受信側の端末11の応答時間が所定の時間TLを越えているか否かを判定する。時間TLは、例えば、同一LAN1に接続された端末11間で要する通信時間である。すなわち応答時間が時間TLを越える場合、受信側の端末11は、送信側の端末11と異なるLAN1に接続され、また、時間TLを越えない場合(応答時間=時間TLを含む)、同一のLAN1に接続されていると判定することができる(通信距離を判別することができる)。
【0236】
ステップS11で、時間TLを越えると判定された場合、ステップS12に進み、判定部35は、その結果を、コマンド送信制御部34に通知し、コマンド送信制御部34はそのとき、カウンタiを1だけインクリメントする。
【0237】
ステップS13において、コマンド送信制御部34は、カウンタi=N+1であるか否かを判定する。カウンタi=N+1ではないと判定された場合には、所定時間経過後、ステップS6に戻る。ステップS13で、カウンタi=N+1であると判定されたとき(すなわち、応答要求コマンドの送信がN回行われたとき)、又はステップS10で、受信側の端末11が本情報通信システムにおける正規の機器ではないと判定されたとき、ステップS14に進み、その旨を、判定部35に通知する。判定部35はそのとき、受信側の端末11へのデータ送信を不可とし、通信部23を制御して、送信データ格納部24に格納されているデータの受信側の端末11に対する送信を禁止する。
【0238】
ステップS11で、第i番目に送信された応答要求コマンドに対する応答時間が、時間TLを越えないと判定された場合、すなわち、受信側の端末11が、本情報通信システムにおける正規の機器であり、かつ、例えば送信側の端末11と同じLAN1に接続されている端末11であるとき、ステップS15に進み、判定部35は、通信部23を制御して、送信データ格納部24に格納されているデータを、受信側の端末11に送信させる。
【0239】
ステップS14又はステップS15で、受信側の端末11に対するデータ送信可否が判定されたとき、判定部35は、通信部23を介して、送信可否判定が終了した旨を表すメッセージ(以下、判定終了メッセージと称する)を受信側の端末11に送信する。その後、送信可否判定処理は、処理を終了する。
【0240】
次に、図5のフローチャートを参照して、応答処理を行う場合の端末11の応答制御部22(図2,4)の動作を説明する。
【0241】
ステップS21において、端末11(受信側の端末11)の応答制御部22のランダムチャレンジ受信制御部41は、送信先の端末11から送信されてきたランダムチャレンジを(ステップS2)、通信部23を介して受信し、認証データ生成部42に供給する。ステップS22において、認証データ生成部42は、ランダムチャレンジ受信制御部41から供給されたランダムチャレンジに対して、送信側の端末11の送信可否判定部21(期待値生成部33)における鍵付きハッシュ処理(ステップS3)と同様の鍵付きハッシュ処理を施し、認証データを生成し、応答メッセージ生成部43に供給する。
【0242】
なおこの例では、最大N個の応答要求コマンドを受信し得るので、その応答要求コマンドに対応する期待値と対比される(ステップS10)N個の認証データが生成される。N個の認証データは、期待値の生成方法(図6,7)と同じ方法で生成される。
【0243】
このように認証データが生成されると、ステップS23において、ランダムチャレンジ受信制御部41は、通信部23を介して、RC受信メッセージを送信側の端末11に送信し、その旨を、応答メッセージ送信制御部44に通知する。
【0244】
ステップS24において、応答メッセージ送信制御部44は、これから受信する応答要求コマンドが何番目に受信されるものかを示すカウンタjに1を初期設定し、ステップS25において、応答メッセージ生成部43を制御して、カウンタjが示す順番に受信される応答要求コマンド(以下、第j番目に受信される応答要求コマンドと称する)に対応する認証データを組み込んだ応答メッセージを生成させる。
【0245】
次に、ステップS26において、応答メッセージ送信制御部44は、送信先の端末11から送信されてきた応答要求コマンドを(ステップS6)、通信部23を介して受信すると、ステップS27において、ステップS25で生成された第j番目に受信される応答要求コマンドに応じた認証データが組み込まれた応答メッセージを、通信部23を介して、送信側の端末11に送信する。これにより上述したように送信側の端末11で(ステップS10で)、第j番目に受信された(第i番目に送信された)応答要求コマンドに対応する認証データと、第i番目に送信された(第j番目に受信された)応答要求コマンドの期待値とが比較される。
【0246】
ステップS28において、受信側の端末11の応答制御部22の応答メッセージ送信制御部44は、送信側の端末11から送信される判定終了メッセージ(ステップS16)が受信されたか否かを判定し、所定の時間内に受信されていないと判定した場合、ステップS29に進む。ステップS29において、応答メッセージ送信制御部44は、カウンタjを1だけインクリメントし、ステップS30で、カウンタj=N+1であるか否かを判定する。
【0247】
ステップS30で、カウンタj=N+1ではないと判定されたとき(すなわち、応答要求コマンドをN回受信されていないとき)、ステップS25に戻り、次に受信される応答要求コマンドに対して、それ以降の処理を実行する。
【0248】
ステップS28で、判定終了メッセージが受信されたとき、又はステップS30で、カウンタj=N+1であると判定されたとき(すなわち、応答要求コマンドがN回受信されたとき)、応答制御部22は、応答処理を終了する。
【0249】
以上のように、ランダムチャレンジから生成された認証データ(ステップS22)とその期待値(ステップS3)とに基づいて認証された受信側の端末11についてのみ応答時間に基づく通信距離の判別を行うようにしたので(ステップS10でNOの判定がなされた場合、ステップS11の処理がスキップされるので)、正規の機器のようになりすました機器にデータが送信されることを防止することができる(正規の機器のようになりすました機器が応答要求コマンドを受信し、応答要求メッセージを送信して、その機器にデータが送信されることはない)。
【0250】
また送信側の端末11で、応答要求コマンドに、新たに生成したランダムチャレンジを込み込んで受信側の端末11に送信し(ステップS6)、受信側の端末11で、応答要求コマンドを受信したとき(ステップS26)、予め生成された認証データ(ステップS22)と、その応答要求コマンドに組み込まれたランダムチャレンジとを連結して、又は両者の論理演算を行って新たな認証データを生成し、それを組み込んだ応答メッセージを返信することもできる(ステップS27)。なおこのとき送信側の端末11では、ステップS10で新たな認証データと比較される期待値が、ステップS3で生成された期待値と、応答要求コマンドに組み込まれたランダムチャレンジと連結されて、又は両者の論理演算が行われて生成される。
【0251】
このように応答要求コマンドに組み込んだランダムチャレンジを利用して認証データおよび期待値が生成されるようにすることで、受信側の端末11は、送信側の端末11からの応答要求コマンドを受信した後でなければ、応答メッセージを送信することができなくなる。したがって、応答時間を短縮するために、応答要求コマンドを受信する前に応答メッセージを送信するなどといった不正行為を防止することができる。
【0252】
また、以上のように、受信側の端末11において、応答要求コマンドを受信する前に、認証データおよびそれが組み込まれた応答メッセージを生成するようにしたので(ステップS22,S25)、応答要求コマンドを受信した後直ちに応答メッセージを送信側の端末11に返信することができる(ステップS27)。
【0253】
例えば、応答要求コマンドを受信した後に、認証データおよび応答要求メッセージを生成するようになされている場合、送信側の端末11で計測される応答時間に、その処理にかかる時間が含まれてしまうので、通信時間としての応答時間を正確に計測することができない。しかしながら本発明のように応答要求コマンドを受信した後直ちに応答メッセージを送信することができるようにしておくことにより、通信時間としての応答時間が正確に計測される。
【0254】
また、以上においては、送信側の端末11がランダムチャレンジを生成し(ステップS1)、受信側の端末11に提供するようにしたが(ステップS2)、受信側の端末11が生成して送信側の端末11に提供するようにすることもできる。
【0255】
また、以上においては、秘密鍵を送信側の端末11と受信側の端末11で共有している場合を例として説明したが、秘密鍵の共有がない場合には、デフィー・ヘルマン鍵交換(Diffie-Hellman key exchange)のアルゴリズムなどを使って鍵の共有を行うことができる。この場合は、鍵交換した相手は、応答時間を測定する相手であることの証明書などを基に確認される。鍵交換の後、鍵交換で得られた鍵そのものを認証データと期待値とすることもできるし、上記のように乱数に交換した鍵での鍵付きハッシュ処理を施し、認証データや期待値を得るようにすることもできる。
【0256】
また以上においては、送信側の端末11において、受信側の端末11で生成された応答の認証データ(以下、認証データRRと称する)(ステップS22)と送信側の端末11で生成された応答の期待値(以下、期待値QRと称する)(ステップS3)とに基づき受信側の端末11が認証されたが(ステップS10)、受信側の端末11においても、送信側の端末11からの応答要求コマンドの認証データ(以下、認証データRSと称する)とその期待値(以下、期待値QSと称する)とに基づき送信側の端末11の認証を行うようにすることができる。
【0257】
図5の例では、受信側の端末11は、応答要求コマンドを受ければ(ステップS26)、直ちに応答メッセージを送り返すので(ステップS27)、例えば、図8に示すように、送信側の端末11(送信機器)と同一のLAN1に第3の機器xを挿入し、はじめに機器xが受信機器に応答要求コマンドを送って(S111)、受信機器から応答メッセージを取得しておき(S112)、そして送信機器から応答要求コマンドが来たときに(S121)、取得した応答メッセージを返すことで(S122)、機器xは、正規の機器になりすますことができる。
【0258】
そこで受信側の端末11においても、応答メッセージを返信する際に、送信側の端末11を認証すれば、このような不正を防止することができる(不正な機器に応答メッセージを返信することを防止することができる)。
【0259】
図9は、送信可否判定部21の、図10は、応答制御部22の、このように受信側の端末11でも送信側の端末11の認証がなされる場合の構成例を示している。
【0260】
送信可否判定部21のランダムチャレンジ生成部51は、図3のランダムチャレンジ生成部31と同様に、所定ビット数の疑似乱数列を、ランダムチャレンジRCとして生成し、期待値生成部52および認証データ生成部53に供給する。
【0261】
期待値生成部52は、ランダムチャレンジ生成部51から供給されたランダムチャレンジRCに対して、例えば、受信側の端末11と共有する秘密鍵を利用した受信側の端末11(認証データ生成部73)における場合と同様の鍵付きハッシュ処理を施して、受信側の端末11の認証データRRの期待値QR(対応する認証データRRと同値の期待値QR)を生成し、応答認証部57に供給する。
【0262】
認証データ生成部53は、ランダムチャレンジ生成部51から供給されたランダムチャレンジRCに対して、受信側の端末11と共有する秘密鍵を利用した鍵付きハッシュ処理を施して、第三者が予測できないコマンドの認証データRSを生成し、応答要求コマンド送信部55に供給する。
【0263】
制御コマンド通信制御部54は、開始コマンド等の制御コマンドCCを受信側の端末11に送信したり、受信側の端末11から送信されてきた、制御コマンドCCに対する応答メッセージCCRを受信する。
【0264】
応答要求コマンド送信部55は、認証データ生成部53により生成された認証データRSを含む、応答要求コマンドMCを、通信部23を介して、受信側の端末11に送信する。
【0265】
応答受信部56は、送信された応答要求コマンドMCに対する応答として、受信側の端末11から送信されてきた応答メッセージMCRを、通信部23を介して受信し、そこに組み込まれている応答の認証データRRを応答認証部57に供給する。
【0266】
応答認証部57は、応答受信部56からの応答の認証データRRと、期待値生成部52で生成されたその認証データRRの期待値QRに基づいて、受信側の端末11が、本情報通信システムにおける正規の機器であるかの認証を行い、その認証結果を、制御判定部58に通知する。
【0267】
制御判定部58は、応答時間計測部59で計測された、応答要求コマンドMCに対する受信側の端末11の応答時間RTTが所定の時間TLを越えているか否かを判定して、通信距離の判別(送信側の端末11と同一のLAN1に接続されているかの判定)を行う。
【0268】
制御判定部58は、受信側の端末11の認証結果および通信距離の判別結果に基づいて、受信側の端末11に対するデータの送信可否の判定を行う。制御判定部58は、その判定結果に基づいて、通信部23を制御し、送信データ格納部24に格納されているデータを、受信側の端末11に送信させる。
【0269】
応答時間計測部59は、応答要求コマンド送信部55および応答受信部56からの通知に応じて、応答要求コマンドMCに対する、受信側の端末11の応答時間RTTを計測する。
【0270】
次に、応答制御部22の構成(図10)を説明する。
【0271】
制御応答通信制御部71は、通信部23を介して、送信側の端末11から送信されてきた制御コマンドCCを受信したり、その制御コマンドCCに対する応答メッセージCCRを送信側の端末11に送信する。
【0272】
期待値生成部72は、制御応答通信制御部71により受信された制御コマンドCCに含まれるランダムチャレンジRCに対して、送信側の端末11と共有する秘密鍵を利用した送信側の端末11(認証データ生成部53)における場合と同様の鍵付きハッシュ処理を施して、送信側の端末11のコマンド認証データRSの期待値QS(対応する認証データRSと同値の期待値QS)を生成し、コマンド認証部76に供給する。
【0273】
認証データ生成部73は、制御応答通信制御部71により受信された制御コマンドCCに含まれるランダムチャレンジRCに対して、送信側の端末11と共有する秘密鍵を利用した鍵付きハッシュ処理を施して、第三者が予測できない応答の認証データRRを生成し、応答送信部74に供給する。
【0274】
応答送信部74は、コマンド認証部76による認証結果に基づいて、認証データ生成部73により生成された応答の認証データRRを含む、送信側の端末11からの応答要求コマンドMCに対する応答メッセージMCRを、通信部23を介して送信側の端末11に送信する。
【0275】
応答要求コマンド受信部75は、送信側の端末11から送信されてきた応答要求コマンドMCを、通信部23を介して受信し、そこに組み込まれているコマンドの認証データRSをコマンド認証部76に供給する。
【0276】
コマンド認証部76は、応答要求コマンド受信部75からのコマンドの認証データRSと、期待値生成部72で生成されたその認証データRSの期待値QSに基づいて、送信側の端末11が、本情報通信システムにおける正規の機器であるかの認証を行い、その認証結果を、応答送信部74に通知する。
【0277】
次に、図9の送信可否判定部21の動作を、図11のフローチャートを参照して説明する。
【0278】
ステップS51において、端末11の送信可否判定部21の制御コマンド通信制御部54は、受信側の機器と、TCPコネクションを確立する。TCPコネクションのためのポート番号は予め送信側の端末11と受信側の機器の間で合意されているものとする。送信側の機器と受信側の機器の間で事前にTCPコネクションが確立している場合はこのステップを省略してよい。
【0279】
制御コマンド通信制御部54は、確立したTCPコネクションを介して、応答時間RTTの計測を開始する旨を表す開始コマンド(制御コマンドCC)を受信側の機器に送信する。この開始コマンドCCには、セッション番号SID、ランダムチャレンジRC、送信側の端末11が実行可能な、1セッションでの応答時間RTTの計測のリトライ数(計測回数)ksが含まれている。
【0280】
セッション番号SIDは、これから行われる受信側の機器に対する一連の認証処理(1つのセッション)に割り当てられた番号であり、この番号を送信側と受信側とで共有することにより、セッション毎に認証処理を区別することができる。
【0281】
また応答時間RTTの計測のために必要なデータ(例えば、応答要求コマンドMCやその応答メッセージMCR)の通信は、パケットの再送を行わないUDPでなされるので、通信状態によっては、データが途中で消滅してしまうなど、応答時間RTTの計測が適切に行われない場合も考えられる。またネットワーク内の他の通信の影響を受けて、パケットの伝送に遅延が生じることもある。そこで応答時間RTTの計測を何回かリトライ(再施行)できるようになされている。このリトライの回数は、送信側の機器と受信側の機器の設定によって異なることもあるので、この例ではここで送信側の機器のリトライ数(例えば、最大のリトライ数)ksが受信側の機器に通知される。
【0282】
次に、ステップS52において、制御コマンド通信制御部54は、開始コマンドCCに対する、受信側の機器からの応答メッセージCCRを受信する。
【0283】
この応答メッセージCCRには、開始コマンドCCに含まれていたセッション番号SIDの他、受信側が決定した1セッションでの応答時間RTT計測のリトライ数k、および応答要求コマンドMCを受信するためのUDPポート番号pbが含まれている。すなわち開始コマンドCCとその応答メッセージCCRの授受により、送信側の端末11と受信側の機器は、応答時間RTTの計測のリトライ数(計測回数)kとセッション番号SID、および応答要求コマンドMCとその応答メッセージMCRの授受のために利用するUDPポート番号pbを合意する。
【0284】
なお受信側の機器は、開始コマンドCCを介して通知された送信側の端末11で実行可能な応答時間RTT計測のリトライ数ksと受信側が実行可能の応答時間RTT計測のリトライ数のうちの小さい方を、今回の応答時間RTT計測のリトライ数kに決定し、応答メッセージCCRを介して送信側の機器に通知する。
【0285】
ステップS53において、期待値生成部52は、ランダムチャレンジ生成部51により生成されたランダムチャレンジRCに対して、受信側の端末11の応答制御部22(認証データ生成部73)における鍵付きハッシュ処理と同様の鍵付きハッシュ処理を施し、受信側の機器の認証データRRの期待値QRを生成する。
【0286】
この例の場合、応答時間RTT計測が最大k回行われるので(応答要求コマンドMCの応答メッセージMCRが最大k回受信されるので)、受信され得るk個の応答メッセージMCRに含まれる認証データRRそれぞれの期待値QRが生成される。
【0287】
またこのとき認証データ生成部53は、ランダムチャレンジ生成部51により生成されたランダムチャレンジRCに対して鍵付きハッシュ処理を施して、コマンドの認証データRSを生成する。
【0288】
この例の場合、応答時間RTT計測が最大k回行われるので(応答要求コマンドMCが最大k回送信されるので)、送信され得るk個の応答要求コマンドMCそれぞれの認証データRSが生成される。
【0289】
ステップS54において、制御判定部58に内蔵されるカウンタiの値が1に初期設定される。このとき期待値生成部52は、カウンタiの値に対応する期待値QR(例えば、第i番目に生成された期待値QRi)を応答認証部57に供給する。また認証データ生成部53は、カウンタiの値に対応する認証データRSiを、応答要求コマンド送信部55に供給する。
【0290】
ステップS55において、応答要求コマンド送信部55は、セッション番号SID、認証データ生成部53から供給された認証データRSi(k個の認証データRSのうちのカウンタiの値に対応する認証データRSi)、およびシーケンス番号Ci(カウンタiの値を表す番号)を含む応答要求コマンドMCを、制御コマンドCCの応答CCRに含まれていたUDPポート番号pbでのUDP通信で、受信側の機器に送信する。
【0291】
応答要求コマンド送信部55は、応答要求コマンドMCを送信したとき、その旨の通知STRを応答時間計測部59に行う。これにより応答時間計測部59は、応答時間の計測を開始する。
【0292】
ステップS56において、応答受信部56は、受信側の機器からの応答メッセージMCRを受信したか否かを判定し、受信していないと判定した場合、ステップS57に進み、所定時間以上応答を待っているか否かを判定する(ステップS55で応答時間RTT計測が開始されてから所定の時間経過したか否かを判定する)。
【0293】
ステップS57で、まだ所定の時間経過していないと判定された場合、ステップS56に戻り、それ以降の処理が実行される。一方ステップS57で所定の時間経過したと判定された場合、ステップS62に進み、カウンタiの値がリトライ数kより小さいか否かが判定され(応答時間RTTの計測がk回行われたか否かが判定され)、小さいと判定された場合(k回行われていない場合)、ステップS63に進み、カウンタiの値が1だけインクリメントされて、ステップS55に戻る。
【0294】
応答要求コマンドMCを送るUDPでは、パケットが通信相手に届かないことがあるので、送信側の端末11は、応答要求コマンドMCを送った後、所定時間が経っても応答メッセージMCRが受信されない場合は、この回の計測は失敗したものとして、次の応答時間RTTの計測が開始される(ステップS55以降の処理が開始される)。
【0295】
ステップS56で、応答メッセージMCRが受信されたと判定された場合、ステップS58に進み、応答受信部56は、受信した応答メッセージMCRに含まれている応答の認証データRRj、およびシーケンス番号Cjを読み出し、応答認証部57に供給する。
【0296】
応答認証部57は、応答受信部56から供給されたシーケンス番号Cjが、カウンタiの値(送信された応答要求コマンドMCのシーケンス番号Ci)と一致するか否かを判定する。
【0297】
なお応答メッセージMCRのシーケンス番号Cjと応答要求コマンドMCのシーケンス番号Ciを確認することの効果については後述する。
【0298】
ステップS58で、一致しないと判定された場合、ステップS56に戻り、それ以降の処理が行われ、一致すると判定された場合、ステップS59に進む。
【0299】
ステップS59において、応答受信部56は、応答メッセージMCRを受信した旨の通知ENDを応答時間計測部59に行う。応答時間計測部59は、ステップS55で開始した応答時間RTT計測を終了し、計測結果(応答時間RTT)を、制御判定部58に供給する。
【0300】
ステップS60において、応答認証部57は、応答受信部56から供給された応答の認証データRRjと、期待値生成部52により生成された、その認証データRRjの期待値QRiとが一致するか否かを判定し、一致すると判定した場合、受信側の端末11を、本情報通信システムにおける正規の端末であると認証し、ステップS61に進む。
【0301】
ステップS61において、制御判定部58は、応答時間計測部59から供給された応答時間RTTが、所定の規定時間TLより大きいか否かを判定する。
【0302】
規定時間TLは、応答時間RTTが、送信側の端末11と受信側の機器が同一LAN1に接続されていたならば、それを超えないであろう時間である。すなわち応答時間RTTが規定時間TLより大きければ、受信側の機器は送信側の端末11と同一のLAN1に接続されていないと判定することができる。一方、応答時間RTTが規定時間TLより大きくない(それ以下である場合)、受信側の機器は送信側の端末11と同一LAN1に接続されていると判定することができる。
【0303】
ステップS61で、YESの判定がなされたとき(第i回目の応答時間RTT計測で、受信側の機器が送信側の端末11と同一のLAN1に接続されているものではないと判定されたとき)、ステップS62に進み、制御判定部58は、カウンタiの値がkより小さい値か否か(応答時間RTT計測がk回リトライされたか否か)を判定し、小さいと判定した場合(応答時間RTT計測がまだk回行われていない場合)、ステップS63に進み、カウンタiの値が1だけインクリメントされる。このとき期待値生成部52は、カウンタiの新たな値に対応する期待値QRiを応答認証部57に供給し、認証データ生成部53は、カウンタiの新たな値に対応する認証データRSiを、応答要求コマンド送信部55に供給する。
【0304】
その後ステップS55に戻り、それ以降の処理が行われる。すなわち応答時間RTTが規定時間TL内になる応答メッセージMCRが得られるまで、最大k回、応答時間RTTの計測が行われる。
【0305】
ステップS61で、NOの判定がなされたとき(応答時間RTTが規定時間TL以下となる応答メッセージMCRが得られたとき)、ステップS64に進む。
【0306】
ステップS64に進み、制御判定部58は、受信側の機器は、送信データを送信できる機器(正規の機器であって、送信側の端末11と同じLAN1に接続されている機器)である旨を、通信部23(図3)に通知する。これにより通信部23は、所定の送信データを送信データ格納部24から読み出して、受信側の機器(端末11)に送信する。
【0307】
ステップS62で、カウンタiの値が、k以上であると判定された場合(応答時間RTTの計測をk回行っても、応答時間RTTが規定時間TL以下になる応答が得られなかった場合)、ステップS65に進み、制御判定部58は、受信側の機器は、ローカルネットワーク外の機器(送信側の端末11と同じLAN1に接続されていない機器)である旨を、制御コマンド通信制御部54に通知する。これにより制御コマンド通信制御部54は、受信側の機器の認証が失敗した旨を示す終了コマンドCCを、受信側の機器に送信する。
【0308】
ステップS60で、応答の認証データRRjとその期待値QRi一致しないと判定された場合、ステップS66に進み、制御判定部58は、受信側の機器は、不正な機器である旨を、制御コマンド通信制御部54に通知する。これにより制御コマンド通信制御部54は、受信側の機器の認証が失敗した旨を示す終了コマンドCCを、受信側の機器に送信する。
【0309】
以上のようにして送信可否判定処理が行われる。
【0310】
なお以上においては、ステップS53においてk個の認証データRSを生成したが、それに代えて、ステップS55において、応答要求コマンドMCを送信する毎にそのコマンドに使う認証データRSを毎回生成するようにしてもよい。
【0311】
次に、図10の応答制御部22の動作を、図12のフローチャートを参照して説明する。
【0312】
ステップS81において、受信側の端末11の応答制御部22の制御応答通信制御部71は、送信側の機器と協働して、TCPコネクションを確立し、そのTCPコネクションを介して送信側の機器から送信されてきた、開始コマンドCC(ステップS51)を受信する。制御応答通信制御部71は、受信した開始コマンドCCに含まれているランダムチャレンジRCを、期待値生成部72および認証データ生成部73に供給する。
【0313】
次にステップS82において、応答要求コマンド受信部75は、送信側の機器から送信されてくる応答要求コマンドMCを受信するためのUDPポート番号pbを決定する。
【0314】
応答要求コマンド受信部75はまた、制御コマンドCCに含まれている送信側の機器が実行可能な応答時間RTT計測のリトライ数ksと、受信側の端末11が対応可能な応答時間RTTの計測のリトライ数のいずれか小さい方を、今回の応答時間RTTの計測のリトライ数kに決定する。
【0315】
ステップS83において、制御応答通信制御部71は、ステップS81で受信された制御コマンドCCに含まれていたセッション番号SID、応答時間RTTの計測のリトライ数k、およびUDPポート番号pbを含む応答メッセージCCRを、ステップS81で確立されたTCPコネクトを介して送信側の機器に送信する。送信側の機器は、ここで送信された応答メッセージCCRを受信する(ステップS52)。
【0316】
ステップS84において、認証データ生成部73は、制御応答通信制御部71から供給されたランダムチャレンジRCに対して鍵付きハッシュ処理を施して、応答の認証データRRを生成する。
【0317】
この例の場合、応答時間RTT計測が最大k回行われるので(応答要求コマンドMCの応答メッセージMCRが最大k回送信されるので)、送信され得るk個の応答メッセージMCRそれぞれの認証データRRが生成される。
【0318】
期待値生成部72は、制御応答通信制御部71から供給されたランダムチャレンジRCに対して、送信側の端末11の送信可否判定部21(認証データ生成部53)における鍵付きハッシュ処理と同様の鍵付きハッシュ処理を施し、送信側の端末11の認証データRSの期待値QSを生成する。
【0319】
この例の場合、応答時間RTT計測が最大k回行われるので(応答要求コマンドMCが最大k回受信されるので)、受信され得るk個の応答要求コマンドMCに含まれる認証データRSそれぞれの期待値QSが生成される。
【0320】
ステップS85において、コマンド認証部76に内蔵されているカウンタjの値が1に初期設定される。
【0321】
ステップS86において、コマンドが受信されるまで待機され、コマンドが受信されたと判定された場合、ステップS87に進み、受信されたコマンドが応答要求コマンドMC(ステップS55)であるか否かを判定し、応答要求コマンドMCであると判定された場合、ステップS88に進む。
【0322】
ステップS88において、受信されたコマンドに含まれるシーケンス番号Ciとカウンタjが比較され、シーケンス番号Ciがカウンタj以上の値であることが確認される。カウンタj以上の値である場合、ステップS89に進み、カウンタjがシーケンス番号Ciの値に設定される。
【0323】
これは、コマンドが欠落した場合、順番どおりに来なかった場合に、カウンタjをシーケンス番号Ciに合致させるための対策である。
【0324】
期待値生成部72はこのとき、カウンタjの値に対応する期待値QS(例えば、第j番目に生成された期待値QSj)をコマンド認証部76に供給する。また認証データ生成部73は、カウンタjの値に対応する認証データRRjを、応答送信部74に供給する。
【0325】
次にステップS90において、コマンド認証部76は、応答要求コマンド受信部75により受信された応答要求コマンドMCに組み込まれている認証データRSiと、期待値生成部72により生成された期待値QSj(カウンタjが示す順番に生成された期待値)とが一致するか否かを判定し、一致すると判定した場合、送信側の端末11を、本情報通信システムにおける正規の端末であると認証し、ステップS91に進む。
【0326】
ステップS91において、コマンド認証部76は、送信側の端末11が正規の機器である旨を、応答送信部74に通知する。これにより応答送信部74は、セッション番号SID、カウンタjの値を表すシーケンス番号Cj、認証データ生成部73から供給された認証データRRjを含む応答メッセージMCRを、送信側の機器に送信する。
【0327】
一方ステップS90で、一致しないと判定された場合、ステップS92に進み、コマンド認証部76は、その旨を、応答送信部74に通知する。これにより応答送信部74は、セッション番号SID、カウンタjの値を表すシーケンス番号Cj、および送信側の機器における受信側の機器の認証(ステップS60)が失敗するような認証データRR(=××)を含む応答メッセージMCRを、送信側の機器に送信する。
【0328】
ステップS91又はステップS92で、応答メッセージMCRが送信されたとき、ステップS93で、カウンタjの値が1だけインクリメントされ、その後、ステップS86に戻り、それ以降の処理が実行される。
【0329】
また、ステップS88において、カウンタjの値が受信されたコマンドに含まれるシーケンス番号Ciよりも小さい場合も、ステップS86に戻り、それ以降の処理が実行される。
【0330】
ステップS87で、受信されたコマンドが応答要求コマンドではないと判定された場合(終了コマンドCC(ステップS65,S66)であるとき)、処理は終了する。
【0331】
次に図11のステップS58の処理について説明する。ステップS58の処理では、受信側の機器からの応答メッセージMCRのシーケンス番号Cjと応答要求コマンドMCのシーケンス番号Ci(カウンタiの値)が一致するか否かが判定されるが、このように応答要求コマンドMCと応答メッセージMCRの対応関係を確認するようにしたので、応答要求コマンドMCに対応しない応答メッセージMCR(他の応答要求コマンドMCの応答メッセージMCR)に基づいて応答時間RTTによる距離判定が行われない。
【0332】
例えば、図13に示すように、受信側の機器で、第1番目の応答要求コマンドMCに対する応答メッセージMCRの送信に時間がかかり(ステップS91,S92)、送信側の端末11で、タイムアウトと判定されて(ステップS57)、第2番目の応答要求コマンドMCが受信側の機器に送信されたものとする。第1番目の応答要求コマンドMCに対する応答メッセージMCRは、第2番目の応答要求コマンドMCが送信された後(ステップS55)、第2番目の応答要求コマンドMCとの関係でタイムアウトとならない間(ステップS57)に送信側の端末11に受信されたものとする(ステップS56)。
【0333】
しかしながらこの場合本発明では、受信側の機器からの第1番目の応答メッセージMCRのシーケンス番号(=1)と、第2番目の応答要求コマンドMCのシーケンス番号(=2)が一致しないと判定され、送信側の端末11は、第2番目の応答要求コマンドMCに対する応答メッセージMCRが受信されるまで待機することになり(ステップS56に戻る)、対応しない応答メッセージMCRが受信されても応答時間RTTによる距離判定は行われない。
【0334】
次に、不正に対する端末11の動作を具体的に説明する。
【0335】
例えば図8に示した送信機器と同一のLAN1に接続された不正な機器xが、受信機器から応答を得るために応答要求コマンドを送信するものとする。しかしながら、機器xは、受信機器と共有する秘密鍵を有していないので、受信機器での送信機器の認証に必要な認証データRSを得ることができない。したがって図14に示すように、機器xが、不適当な認証データRS(=?)を含む応答要求コマンドMCを受信機器に送信するが、受信機器からは、受信機器の認証が失敗する認証データRR(=××)を含む応答メッセージMCRが送信されてくる(ステップS92)。したがって機器xが、その後、送信機器からの応答要求コマンドMCに対して、その応答メッセージMCRを送信機器に送信して応答しても、送信機器において、機器xは認証されず、送信データは機器xに送信されない。
【0336】
そこで図15に示すように、不正の機器xは、送信機器から応答要求コマンドMCを受けてそれを受信機器に送信し、受信機器から、適当な認証データRRを含む応答メッセージMCRを取得する。そして機器xは、取得した応答メッセージMCRを、送信機器に送信することも考えられる。
【0337】
しかしながらこの例の場合、応答要求コマンドMCは、送信機器から機器x、そして機器xから受信機器に送信され、応答メッセージMCRが、受信機器から機器xに、そして機器xから送信機器へ伝送されるので、応答要求コマンドMCと応答メッセージMCRの伝送路が、通常の伝送経路(送信機器と受信機器間の伝送路)より長くなる。したがってこの場合、結局応答時間RTTが規定時間TLより長くなるので、機器xは、送信機器と同一LAN1に接続されていないものとして、機器xには送信データが提供されない。
【0338】
上述した一連の処理は、ハードウエアにより実現させることもできるが、ソフトウエアにより実現させることもできる。一連の処理をソフトウエアにより実現する場合には、そのソフトウエアを構成するプログラムがコンピュータにインストールされ、そのプログラムがコンピュータで実行されることより、上述した送信可否判定部21および応答制御部22が機能的に実現される。
【0339】
図16は、上述のような送信可否判定部21および応答制御部22として機能するコンピュータ101の一実施の形態の構成を示すブロック図である。CPU(Central Processing Unit)111にはバス115を介して入出力インタフェース116が接続されており、CPU111は、入出力インタフェース116を介して、ユーザから、キーボード、マウスなどよりなる入力部117から指令が入力されると、例えば、ROM(Read Only Memory)112、ハードディスク114、又はドライブ120に装着される磁気ディスク131、光ディスク132、光磁気ディスク133、若しくは半導体メモリ134などの記録媒体に格納されているプログラムを、RAM(Random Access Memory)113にロードして実行する。これにより、上述した各種の処理が行われる。さらに、CPU111は、その処理結果を、例えば、入出力インタフェース116を介して、LCD(Liquid Crystal Display)などよりなる出力部118に必要に応じて出力する。なお、プログラムは、ハードディスク114やROM112に予め記憶しておき、コンピュータ101と一体的にユーザに提供したり、磁気ディスク131、光ディスク132、光磁気ディスク133,半導体メモリ134等のパッケージメディアとして提供したり、衛星、ネットワーク等から通信部119を介してハードディスク114に提供することができる。
【0340】
なお、本明細書において、記録媒体により提供されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0341】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【符号の説明】
【0342】
1 LAN, 11 端末, 21 送信可否判定部, 22 応答制御部, 23 通信部, 24 送信データ格納部, 31 ランダムチャレンジ生成部, 32 ランダムチャレンジ送信制御部, 33 期待値生成部, 34 コマンド送信制御部, 35 判別部, 36 応答時間計測部, 41 ランダムチャレンジ受信制御部, 42 認証データ生成部, 43 応答メッセージ生成部, 44 応答メッセージ送信制御部, 51 ランダムチャレンジ生成部, 52 期待値生成部, 53 認証データ生成部, 54 制御コマンド通信制御部, 55 応答要求コマンド送信部, 56 応答受信部, 57 応答認証部, 58 制御判定部, 59 応答時間計測部, 71 制御応答通信制御部, 72 期待値生成部, 73 認証データ生成部, 74 応答送信部, 75 応答要求コマンド受信部, 76 コマンド認証部

【特許請求の範囲】
【請求項1】
記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置において、
前記プロセッサが、前記プログラムを実行することにより、
応答を要求するコマンドを受信装置に送信することを制御する送信制御ステップと、
前記受信装置との間で共有する共有データに基づいて、期待値を生成する期待値生成ステップと、
前記共有データに基づいて生成された認証データを含んだ前記応答を前記受信装置から受信することを制御する受信制御ステップと、
前記期待値生成ステップにより生成された前記期待値と、前記受信制御ステップにより受信された前記認証データに基づいて、前記受信装置を認証する認証ステップと、
前記受信装置に対して前記応答を要求する前記コマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、
前記認証ステップによる認証結果、および前記計測ステップにより計測された前記応答時間に基づいて、前記受信装置に対する送信データの送信可否を判定する判定ステップと
を含む処理を行ない、
前記送信制御ステップは、さらに、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信することを制御する
情報処理装置。
【請求項2】
前記期待値生成ステップは、前記コマンドが送信される前に、前記共有データに基づいて、前記認証ステップによる認証に用いられる前記期待値を生成する
請求項1に記載の情報処理装置。
【請求項3】
前記プロセッサが、前記応答時間が所定の閾値以下ではない場合、前記送信制御ステップの制御により送信される前記コマンドが何番目に送信されるものであるのかを示すカウント値を1だけインクリメントするカウントステップも含む処理を行い、
前記送信制御ステップは、前記カウント値が1だけインクリメントされたことに対応して、新たな前記コマンドを送信することを制御する
請求項2に記載の情報処理装置。
【請求項4】
前記期待値生成ステップは、前記新たなコマンドが送信される前に、前記共有データに基づいて、前記認証ステップによる認証に用いられる新たな前記期待値を生成し、
前記受信制御ステップは、前記新たなコマンドにより要求された前記応答であって、新たな前記認証データを含んだ前記応答を前記受信装置から受信することを制御し、
前記認証ステップは、前記期待値生成ステップにより生成された前記新たな期待値と、前記受信制御ステップにより受信された前記新たな認証データに基づいて、前記受信装置を認証する
請求項3に記載の情報処理装置。
【請求項5】
前記送信制御ステップは、前記送信データの送信可否を判定するのに、前記コマンドを最大N回送信することを制御する
請求項4に記載の情報処理装置。
【請求項6】
前記送信制御ステップは、さらに、前記コマンドを送信することを制御する前に、前記共有データを前記受信装置に送信することを制御する
請求項1に記載の情報処理装置。
【請求項7】
前記期待値生成ステップは、前記共有データに対してハッシュ処理を施し、前記期待値を生成する
請求項1に記載の情報処理装置。
【請求項8】
前記期待値生成ステップは、前記共有データに対して前記ハッシュ処理を施して得られる処理結果に対して、再度、前記ハッシュ処理を施して得られたデータを前記期待値とする
請求項7に記載の情報処理装置。
【請求項9】
前記期待値生成ステップは、前記共有データである擬似乱数に対して、前記受信装置と共有する秘密鍵を利用したHMAC(Keyed-Hashing for Message Authentication, IETF RFC 2104)アルゴリズムによる前記ハッシュ処理を施し、前記期待値を生成する
請求項7に記載の情報処理装置。
【請求項10】
前記期待値生成ステップは、前記共有データに対して前記ハッシュ処理を施し、その結果得られたデータを前記期待値とする
請求項7に記載の情報処理装置。
【請求項11】
前記期待値生成ステップは、前記共有データと前記情報処理装置固有の情報に対して、前記ハッシュ処理を施し、その結果得られたデータを前記期待値とする
請求項10に記載の情報処理装置。
【請求項12】
前記期待値生成ステップは、前記共有データに対して前記ハッシュ処理を施して得られたデータを複数個に分割し、分割されたデータからN個の前記期待値を生成する
請求項7に記載の情報処理装置。
【請求項13】
前記期待値生成ステップは、前記共有データに対して前記ハッシュ処理を繰り返し施し、そのハッシュ処理毎に得られたデータから、N個の前記認証データを生成する
請求項7に記載の情報処理装置。
【請求項14】
前記認証ステップは、
前記期待値と前記認証データとが一致する場合、前記受信装置を、前記送信データを送信すべき対象であるものとして認証し、
前記期待値と前記認証データとが一致しない場合、前記受信装置を、前記送信データを送信すべき対象ではないものとして認証する
請求項1に記載の情報処理装置。
【請求項15】
前記判定ステップは、
前記受信装置が前記送信データを送信すべき対象であるものとして認証され、且つ、前記応答時間が所定の時間以下である場合、前記受信装置に対する前記送信データの送信が可であると判定し、
前記受信装置が前記送信データを送信すべき対象ではないものとして認証されたか、または前記応答時間が前記所定の時間以下ではない場合、前記受信装置に対する前記送信データの送信が不可であると判定する
請求項14に記載の情報処理装置。
【請求項16】
前記所定の時間は、同一のローカルネットワーク内に接続された前記受信装置と前記情報処理装置との間で要する通信時間である
請求項15に記載の情報処理装置。
【請求項17】
前記送信制御ステップは、前記送信データの送信可否が判定されたことに対応して、前記送信データの送信可否の判定の終了を示す判定終了情報も前記受信装置に送信することを制御する
請求項1に記載の情報処理装置。
【請求項18】
前記送信制御ステップは、前記応答時間が所定の閾値以下であって、前記期待値と前記認証データとが一致する場合、前記受信装置に対する前記送信データの送信可否が可であるとの判定がなされて終了したことを表す前記判定終了情報を送信することを制御する
請求項17に記載の情報処理装置。
【請求項19】
前記送信制御ステップは、前記応答時間が所定の閾値以下ではないか、前記期待値と前記認証データとが一致しない場合、前記受信装置に対する前記送信データの送信可否が不可であるとの判定がなされて終了したことを表す前記判定終了情報を送信することを制御する
請求項17に記載の情報処理装置。
【請求項20】
前記プロセッサが、
前記判定ステップにより前記受信装置に対する前記データの送信が可であると判定された場合、前記受信装置に対する前記送信データの送信を許可し、
前記判定ステップにより前記受信装置に対する前記データの送信が不可であると判定された場合、前記受信装置に対する前記送信データの送信を禁止する
送信制御ステップも含む処理を行なう
請求項1に記載の情報処理装置。
【請求項21】
前記送信制御ステップは、前記送信データとして、コンテンツを送信することを制御する
請求項1に記載の情報処理装置。
【請求項22】
前記プログラムを記録する記録部を
さらに備える請求項1に記載の情報処理装置。
【請求項23】
前記記録部は、ROM(Read Only Memory)又はハードディスクの少なくとも一方である
請求項22に記載の情報処理装置。
【請求項24】
前記プロセッサは、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項22に記載の情報処理装置。
【請求項25】
前記情報処理装置は、ユーザにより操作される操作部として、キーボード又はマウスの少なくとも一方を備え、
前記プロセッサは、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項24に記載の情報処理装置。
【請求項26】
前記受信装置は、前記受信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、
前記プロセッサは、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行する
請求項22に記載の情報処理装置。
【請求項27】
前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに備え、
前記プロセッサは、前記プログラムを、前記記録部から前記保持部にロードして実行する
請求項22に記載の情報処理装置。
【請求項28】
前記プロセッサは、CPU(Central Processing Unit)である
請求項27に記載の情報処理装置。
【請求項29】
前記プロセッサが、前記送信制御部と、前記期待値生成部と、前記受信制御部と、前記認証部と、前記計測部と、前記計測部とを含む処理の処理結果に対応した出力を行わせる出力制御ステップも含む処理を行なう
請求項22に記載の情報処理装置。
【請求項30】
記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置の情報処理用のプログラムであって、
前記プロセッサが、
応答を要求するコマンドを前記受信装置に送信することを制御する送信制御ステップと、
前記受信装置との間で共有する共有データに基づいて、期待値を生成する期待値生成ステップと、
前記共有データに基づいて生成された認証データを含んだ前記応答を前記受信装置から受信することを制御する受信制御ステップと、
前記期待値生成ステップにより生成された前記期待値と、前記受信制御ステップの制御により受信された前記認証データに基づいて、前記受信装置を認証する認証ステップと、
前記受信装置に対して前記応答を要求する前記コマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、
前記認証ステップによる認証結果、および前記計測ステップにより計測された前記応答時間に基づいて、前記受信装置に対する送信データの送信可否を判定する判定ステップと
を含む処理を行なうために実行するプログラムであって、
前記送信制御ステップは、さらに、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信することを制御する
プログラム。
【請求項31】
前記期待値生成ステップは、前記コマンドが送信される前に、前記共有データに基づいて、前記認証ステップによる認証に用いられる前記期待値を生成する
請求項30に記載のプログラム。
【請求項32】
前記プロセッサが、前記応答時間が所定の閾値以下ではない場合、前記送信制御ステップの制御により送信される前記コマンドが何番目に送信されるものであるのかを示すカウント値を1だけインクリメントするカウントステップも含む処理を行うために実行する前記プログラムであって、
前記送信制御ステップは、前記カウント値が1だけインクリメントされたことに対応して、新たな前記コマンドを送信することを制御する
請求項31に記載のプログラム。
【請求項33】
前記期待値生成ステップは、前記新たなコマンドが送信される前に、前記共有データに基づいて、前記認証ステップによる認証に用いられる新たな前記期待値を生成し、
前記受信制御ステップは、前記新たなコマンドにより要求された前記応答であって、新たな前記認証データを含んだ前記応答を前記受信装置から受信することを制御し、
前記認証ステップは、前記期待値生成ステップにより生成された前記新たな期待値と、前記受信制御ステップの制御により受信された前記新たな認証データに基づいて、前記受信装置を認証する
請求項32に記載のプログラム。
【請求項34】
前記送信制御ステップは、前記送信データの送信可否を判定するのに、前記コマンドを最大N回送信することを制御する
請求項33に記載のプログラム。
【請求項35】
前記送信制御ステップは、さらに、前記コマンドを送信することを制御する前に、前記共有データを前記受信装置に送信することを制御する
請求項30に記載のプログラム。
【請求項36】
前記期待値生成ステップは、前記共有データに対してハッシュ処理を施し、前記期待値を生成する
請求項30に記載のプログラム。
【請求項37】
前記期待値生成ステップは、前記共有データに対して前記ハッシュ処理を施して得られる処理結果に対して、再度、前記ハッシュ処理を施して得られたデータを前記期待値とする
請求項36に記載のプログラム。
【請求項38】
前記認証ステップは、
前記期待値と前記認証データとが一致する場合、前記受信装置を、前記送信データを送信すべき対象であるものとして認証し、
前記期待値と前記認証データとが一致しない場合、前記受信装置を、前記送信データを送信すべき対象ではないものとして認証する
請求項30に記載のプログラム。
【請求項39】
前記判定ステップは、
前記受信装置が前記送信データを送信すべき対象であるものとして認証され、且つ、前記応答時間が所定の時間以下である場合、前記受信装置に対する前記送信データの送信が可であると判定し、
前記受信装置が前記送信データを送信すべき対象ではないものとして認証されたか、または前記応答時間が前記所定の時間以下ではない場合、前記受信装置に対する前記送信データの送信が不可であると判定する
請求項38に記載のプログラム。
【請求項40】
前記所定の時間は、同一のローカルネットワーク内に接続された前記受信装置と前記情報処理装置との間で要する通信時間である
請求項39に記載のプログラム。
【請求項41】
前記送信制御ステップは、前記送信データの送信可否が判定されたことに対応して、前記送信データの送信可否の判定の終了を示す判定終了情報も前記受信装置に送信することを制御する
請求項30に記載のプログラム。
【請求項42】
前記送信制御ステップは、前記応答時間が所定の閾値以下であって、前記期待値と前記認証データとが一致する場合、前記受信装置に対する前記送信データの送信可否が可であるとの判定がなされて終了したことを表す前記判定終了情報を送信することを制御する
請求項41に記載のプログラム。
【請求項43】
前記送信制御ステップは、前記応答時間が所定の閾値以下ではないか、前記期待値と前記認証データとが一致しない場合、前記受信装置に対する前記送信データの送信可否が不可であるとの判定がなされて終了したことを表す前記判定終了情報を送信することを制御する
請求項41に記載のプログラム。
【請求項44】
前記プロセッサが、
前記判定ステップにより前記受信装置に対する前記データの送信が可であると判定された場合、前記受信装置に対する前記送信データの送信を許可し、
前記判定ステップにより前記受信装置に対する前記データの送信が不可であると判定された場合、前記受信装置に対する前記送信データの送信を禁止する
送信許可制御ステップも含む処理を行なうために実行する
請求項30に記載のプログラム。
【請求項45】
前記送信制御ステップは、前記送信データとして、コンテンツを送信することを制御する
請求項30に記載のプログラム。
【請求項46】
前記情報処理装置は、前記プログラムを記録する記録部も備える
請求項30に記載のプログラム。
【請求項47】
前記記録部は、ROM又はハードディスクの少なくとも一方である
請求項46に記載のプログラム。
【請求項48】
前記プロセッサは、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項46に記載のプログラム。
【請求項49】
前記情報処理装置は、ユーザにより操作される操作部として、キーボード又はマウスの少なくとも一方を備え、
前記プロセッサは、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項48に記載のプログラム。
【請求項50】
前記受信装置は、前記受信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、
前記プロセッサは、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行する
請求項46に記載のプログラム。
【請求項51】
前記情報処理装置は、前記プロセッサにより実行される前記プログラムを一時的に保持する保持部も備え、
前記プロセッサは、前記プログラムを、前記記録部から前記保持部にロードして実行する
請求項46に記載のプログラム。
【請求項52】
前記プロセッサは、CPUである
請求項51に記載のプログラム。
【請求項53】
前記プロセッサが、前記送信制御ステップと、前記期待値生成ステップと、前記受信制御ステップと、前記認証ステップと、前記計測ステップと、前記判定ステップとを含む処理の処理結果に対応した出力を行わせる出力制御ステップも含む処理を行なうために実行する
請求項46に記載のプログラム。
【請求項54】
受信装置に対する送信データの送信可否を判定する情報処理装置の情報処理方法において、
前記情報処理装置は、
コマンド送信部と、
期待値生成部と、
受信部と、
認証部と、
計測部と、
判定部と
を備え、
前記コマンド送信部が、応答を要求するコマンドを受信装置に送信するコマンド送信ステップと、
前記期待値生成部が、前記受信装置との間で共有する共有データに基づいて、期待値を生成する期待値生成ステップと、
前記受信部が、前記共有データに基づいて生成された認証データを含んだ前記応答を前記受信装置から受信する受信ステップと、
前記認証部が、前記期待値生成ステップの処理で生成された前記期待値と、前記受信ステップの処理で受信された前記認証データに基づいて、前記受信装置を認証する認証ステップと、
前記計測部が、前記受信装置に対して前記応答を要求する前記コマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、
前記判定部が、前記認証ステップでの認証結果、および前記計測ステップの処理で計測された前記応答時間に基づいて、前記受信装置に対する前記送信データの送信可否を判定する判定ステップと
を含み、
前記送信ステップは、さらに、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信する
情報処理方法。
【請求項55】
記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置であって、送信装置と共有する共有データから生成された認証データに基づく認証結果、および前記送信装置からの、応答を要求するコマンドに対する応答時間に基づいて、送信データの送信可否を判定する前記送信装置により、前記送信データの送信可否の判定対象とされる前記情報処理装置において、
前記プロセッサが、前記プログラムを実行することにより、
前記送信装置から前記コマンドを受信することを制御する受信制御ステップと、
前記共有データに基づいて、前記認証データを生成する認証データ生成ステップと、
前記認証データ生成ステップにより生成された前記認証データを含む、前記コマンドに対する前記応答を生成する応答生成ステップと、
前記送信装置から送信されてきた前記コマンドが受信されたとき、前記応答を前記送信装置に送信することを制御する送信制御ステップと
を含む処理を行ない、
前記受信制御ステップは、前記送信装置からの前記送信データも受信することを制御する
情報処理装置。
【請求項56】
前記認証データ生成ステップは、前記コマンドが受信される前に、前記共有データに基づいて、前記認証データを生成する
請求項55に記載の情報処理装置。
【請求項57】
前記受信制御ステップは、前記送信装置から前記コマンドを最大N回受信することを制御し、
前記送信制御ステップは、前記コマンドが受信される毎に、前記コマンドにより要求された前記応答を前記送信装置に送信することを制御する
請求項56に記載の情報処理装置。
【請求項58】
前記受信制御ステップは、前記コマンドを受信する前に、前記送信装置からの前記共有データを受信することを制御し、
前記認証データ生成ステップは、前記共有データが受信されたことに対応し、受信された前記共有データに基づいて、前記認証データを生成する
請求項56に記載の情報処理装置。
【請求項59】
前記送信制御ステップは、前記共有データが受信されたことに対応して、前記共有データを受信した旨を示す受信情報も送信することを制御する
請求項58に記載の情報処理装置。
【請求項60】
前記認証データ生成ステップは、前記共有データに対してハッシュ処理を施し、前記認証データを生成する
請求項55に記載の情報処理装置。
【請求項61】
前記認証データ生成ステップは、前記共有データに対して前記ハッシュ処理を施して得られる処理結果に対して、再度、前記ハッシュ処理を施して得られたデータを前記認証データとする
請求項60に記載の情報処理装置。
【請求項62】
前記期待値生成ステップは、前記共有データである擬似乱数に対して、前記送信装置と共有する秘密鍵を利用したHMACアルゴリズムによる前記ハッシュ処理を施し、前記認証データを生成する
請求項60に記載の情報処理装置。
【請求項63】
前記認証データ生成ステップは、前記共有データに対して前記ハッシュ処理を施し、その結果得られたデータを前記認証データとする
請求項60に記載の情報処理装置。
【請求項64】
前記認証データ生成ステップは、前記共有データと前記情報処理装置固有の情報に対して、前記ハッシュ処理を施し、その結果得られたデータを前記認証データとする
請求項63に記載の情報処理装置。
【請求項65】
前記認証データ生成ステップは、前記共有データに対して前記ハッシュ処理を施して得られたデータを複数個に分割し、分割されたデータからN個の前記認証データを生成する
請求項60に記載の情報処理装置。
【請求項66】
前記認証データ生成ステップは、前記共有データに対して前記ハッシュ処理を繰り返し施し、そのハッシュ処理毎に得られたデータから、N個の前記認証データを生成する
請求項60に記載の情報処理装置。
【請求項67】
前記受信ステップは、前記送信装置による前記送信データの送信可否の判定の終了を示す判定終了情報も前記送信装置から受信する
請求項55に記載の情報処理装置。
【請求項68】
前記送信装置は、前記応答時間が所定の閾値以下であって、前記期待値と前記認証データとが一致する場合、前記情報処理装置に対する前記送信データの送信可否が可であるとの判定がなされて終了したことを表す前記判定終了情報を送信するものであり、
前記受信制御ステップは、前記送信装置からの前記判定終了情報を受信することを制御する
請求項67に記載の情報処理装置。
【請求項69】
前記送信装置は、前記応答時間が所定の閾値以下ではないか、又は前記期待値と前記認証データとが一致しない場合、前記情報処理装置に対する前記送信データの送信可否が不可であるとの判定がなされて終了したことを表す前記判定終了情報を送信するものであり、
前記受信制御ステップは、前記送信装置からの前記判定終了情報を受信することを制御する
請求項67に記載の情報処理装置。
【請求項70】
前記プログラムを記録する記録部を
さらに備える請求項55に記載の情報処理装置。
【請求項71】
前記記録部は、ROM又はハードディスクの少なくとも一方である
請求項70に記載の情報処理装置。
【請求項72】
前記プロセッサは、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項70に記載の情報処理装置。
【請求項73】
前記情報処理装置は、ユーザにより操作される操作部として、キーボード又はマウスの少なくとも一方を備え、
前記プロセッサは、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項72に記載の情報処理装置。
【請求項74】
前記送信装置は、前記送信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、
前記プロセッサは、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行する
請求項70に記載の情報処理装置。
【請求項75】
前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに備え、
前記プロセッサは、前記プログラムを、前記記録ステップから前記保持部にロードして実行する
請求項70に記載の情報処理装置。
【請求項76】
前記プロセッサは、CPUである
請求項75に記載の情報処理装置。
【請求項77】
前記プロセッサが、前記受信制御ステップと、前記認証データ生成ステップと、前記応答生成ステップと、前記送信制御ステップとを含む処理の処理結果に対応した出力を行わせる出力制御ステップを含む処理を行なう
請求項70に記載の情報処理装置。
【請求項78】
記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置であって、送信装置と共有する共有データから生成された認証データに基づく認証結果、および前記送信装置からの、応答を要求するコマンドに対する応答時間に基づいて、送信データの送信可否を判定する前記送信装置により、前記送信データの送信可否の判定対象とされる前記情報処理装置の情報処理用のプログラムであって、
前記プロセッサが、
前記送信装置から前記コマンドを受信することを制御する受信制御ステップと、
前記共有データに基づいて、前記認証データを生成する認証データ生成ステップと、
前記認証データ生成ステップにより生成された前記認証データを含む、前記コマンドに対する前記応答を生成する応答生成ステップと、
前記送信装置から送信されてきた前記コマンドが受信されたとき、前記応答を前記送信装置に送信することを制御する送信制御ステップと
を含む処理を行なうために実行するプログラムであって、
前記受信制御ステップは、前記送信装置からの前記送信データも受信することを制御する
プログラム。
【請求項79】
前記認証データ生成ステップは、前記コマンドが受信される前に、前記共有データに基づいて、前記認証データを生成する
請求項78に記載のプログラム。
【請求項80】
前記受信制御ステップは、前記送信装置から前記コマンドを最大N回受信することを制御し、
前記送信制御ステップは、前記コマンドが受信される毎に、前記コマンドにより要求された前記応答を前記送信装置に送信することを制御する
請求項79に記載のプログラム。
【請求項81】
前記受信制御ステップは、前記コマンドを受信することを制御する前に、前記送信装置からの前記共有データを受信することを制御し、
前記認証データ生成ステップは、前記共有データが受信されたことに対応し、受信された前記共有データに基づいて、前記認証データを生成する
請求項79に記載のプログラム。
【請求項82】
前記送信制御ステップは、前記共有データが受信されたことに対応して、前記共有データを受信した旨を示す受信情報も送信することを制御する
請求項81に記載のプログラム。
【請求項83】
前記認証データ生成ステップは、前記共有データに対してハッシュ処理を施し、前記認証データを生成する
請求項78に記載のプログラム。
【請求項84】
前記認証データ生成ステップは、前記共有データに対して前記ハッシュ処理を施して得られる処理結果に対して、再度、前記ハッシュ処理を施して得られたデータを前記認証データとする
請求項83に記載のプログラム。
【請求項85】
前記受信制御ステップは、前記送信装置による前記送信データの送信可否の判定の終了を示す判定終了情報も前記送信装置から受信することを制御する
請求項78に記載のプログラム。
【請求項86】
前記送信装置は、前記応答時間が所定の閾値以下であって、前記期待値と前記認証データとが一致する場合、前記情報処理装置に対する前記送信データの送信可否が可であるとの判定がなされて終了したことを表す前記判定終了情報を送信するものであり、
前記受信制御ステップは、前記送信装置からの前記判定終了情報を受信することを制御する
請求項85に記載のプログラム。
【請求項87】
前記送信装置は、前記応答時間が所定の閾値以下ではないか、又は前記期待値と前記認証データとが一致しない場合、前記情報処理装置に対する前記送信データの送信可否が不可であるとの判定がなされて終了したことを表す前記判定終了情報を送信するものであり、
前記受信制御ステップは、前記送信装置からの前記判定終了情報を受信することを制御する
請求項85に記載のプログラム。
【請求項88】
前記情報処理装置は、前記プログラムを記録する記録部も備える
請求項78に記載のプログラム。
【請求項89】
前記記録部は、ROM又はハードディスクの少なくとも一方である
請求項88に記載のプログラム。
【請求項90】
前記プロセッサは、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項88に記載のプログラム。
【請求項91】
前記情報処理装置は、ユーザにより操作される操作部として、キーボード又はマウスの少なくとも一方を備え、
前記プロセッサは、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項90に記載のプログラム。
【請求項92】
前記送信装置は、前記送信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、
前記プロセッサは、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行する
請求項88に記載のプログラム。
【請求項93】
前記情報処理装置は、前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに備え、
前記プロセッサは、前記プログラムを、前記記録部から前記保持部にロードして実行する
請求項88に記載のプログラム。
【請求項94】
前記プロセッサは、CPUである
請求項93に記載のプログラム。
【請求項95】
前記プロセッサが、前記受信制御ステップと、前記認証データ生成ステップと、前記応答生成ステップと、前記送信制御ステップとを含む処理の処理結果に対応した出力を行わせる出力制御ステップも含む処理を行なうために実行する
請求項88に記載のプログラム。
【請求項96】
送信装置と共有する共有データから生成された認証データに基づく認証結果、および前記送信装置からの、応答を要求するコマンドに対する応答時間に基づいて、送信データの送信可否を判定する前記送信装置により、前記送信データの送信可否の判定対象とされる情報処理装置の情報処理方法において、
前記情報処理装置は、
受信部と、
認証データ生成部と、
応答生成部と、
送信部と
を備え、
前記受信部が、前記送信装置から前記コマンドを受信する受信ステップと、
前記認証データ生成部が、前記共有データに基づいて、前記認証データを生成する認証データ生成ステップと、
前記応答生成部が、前記認証データ生成ステップの処理で生成された前記認証データを含む、前記コマンドに対する前記応答を生成する応答生成ステップと、
前記送信部が、前記送信装置から送信されてきた前記コマンドが受信されたとき、前記応答を前記送信装置に送信する送信ステップと
を含み、
前記受信ステップは、前記送信装置からの前記送信データも受信する
情報処理方法。
【請求項97】
記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置において、
前記プロセッサが、前記プログラムを実行することにより、
受信装置との間で共有する共有データをもとに、コマンド認証データと、応答期待値データを生成する認証データ生成ステップと、
前記コマンド認証データを含み、応答を要求するコマンドを前記受信装置に送信することを制御するコマンド送信制御ステップと、
前記コマンドに対する受信装置からの前記応答を受信することを制御する応答受信制御ステップと、
前記応答期待値データと、前記受信装置から受信した前記応答に含まれる応答認証データに基づいて前記受信装置を認証する認証ステップと、
前記受信装置に対して前記コマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、
前記認証ステップによる認証結果、および前記計測ステップにより計測された応答時間に基づいて、前記受信装置に対する送信データの送信可否を判定する判定ステップと、
前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信することを制御する送信データ送信制御部と
を含む処理を行なう
情報処理装置。
【請求項98】
前記認証データ生成ステップは、前記コマンドが送信される前に、前記共有データをもとに、前記コマンド認証データと、前記応答期待値データを生成する
請求項97に記載の情報処理装置。
【請求項99】
前記プロセッサが、前記応答時間が所定の閾値よりも大きい場合、前記コマンド送信制御ステップの制御により送信される前記コマンドが何番目に送信されるものであるのかを示すカウント値を1だけインクリメントするカウントステップも含む処理を行い、
前記コマンド送信制御ステップは、前記カウント値が1だけインクリメントされたことに対応して、新たな前記コマンドを送信することを制御する
請求項98に記載の情報処理装置。
【請求項100】
前記認証データ生成ステップは、前記新たなコマンドが送信される前に、前記共有データをもとに、新たな前記コマンド認証データと、新たな前記応答期待値データを生成し、
前記応答受信制御ステップは、前記新たなコマンドにより要求される前記応答であって、新たな前記応答認証データを含んだ前記応答を前記受信装置から受信することを制御し、
前記認証ステップは、前記新たな応答期待値データと、前記受信装置から受信した前記応答に含まれる前記新たな応答認証データに基づいて前記受信装置を認証する
請求項97に記載の情報処理装置。
【請求項101】
前記コマンド送信制御ステップは、前記送信データの送信可否を判定するのに、前記コマンドを最大N回送信することを制御する
請求項100に記載の情報処理装置。
【請求項102】
前記プロセッサが、
前記コマンドが送信される前に、所定の送信情報を前記受信装置に送信することを制御する情報送信制御ステップと、
前記コマンドが送信される前に、前記所定の送信情報に対する応答を前記受信装置から受信することを制御する情報応答受信制御ステップと
をさらに含む処理を行なう
請求項97に記載の情報処理装置。
【請求項103】
前記情報送信制御ステップは、前記コマンド送信制御ステップの制御において前記コマンドを送信可能なリトライ可能数を含む前記送信情報を、前記受信装置に送信することを制御し、
前記情報応答受信制御ステップは、前記送信情報を受信した前記受信装置により決定されたリトライ数を含む、前記送信情報に対する前記応答を受信することを制御し、
前記コマンド送信制御ステップは、前記コマンドを、最大、前記リトライ数だけ送信することを制御する
請求項102に記載の情報処理装置。
【請求項104】
前記情報送信制御ステップは、TCPコネクション経由で、前記所定の送信情報を前記受信装置に送信することを制御し、
前記応答受信制御ステップは、前記TCPコネクション経由で、前記所定の送信情報に対する応答を前記受信装置から受信することを制御する
請求項102に記載の情報処理装置。
【請求項105】
前記コマンド送信制御ステップは、UDPを用いて、前記コマンドを前記受信装置に送信することを制御し、
前記応答受信制御ステップは、前記UDPを用いて、前記コマンドに対する前記応答を受信することを制御する
請求項97に記載の情報処理装置。
【請求項106】
前記プロセッサが、前記コマンドが送信される前に、前記共有データを前記受信装置に送信することを制御する共有データ送信制御ステップも含む処理を行う
請求項97に記載の情報処理装置。
【請求項107】
前記認証データ生成ステップは、前記共有データに対してハッシュ処理を施し、前記コマンド認証データと前記応答期待値データを生成する
請求項97に記載の情報処理装置。
【請求項108】
前記認証ステップは、
前記応答期待値データと前記応答認証データとが一致する場合、前記受信装置を、前記送信データを送信すべき対象であるものとして認証し、
前記応答期待値データと前記応答認証データとが一致しない場合、前記受信装置を、前記送信データを送信すべき対象ではないものとして認証する
請求項97に記載の情報処理装置。
【請求項109】
前記判定ステップは、
前記受信装置が前記送信データを送信すべき対象であるものとして認証され、且つ、前記応答時間が所定の時間以下である場合、前記受信装置に対する前記送信データの送信が可であると判定し、
前記受信装置が前記送信データを送信すべき対象ではないものとして認証されたか、または前記応答時間が所定の時間よりも大きい場合、前記受信装置に対する前記送信データの送信が不可であると判定する
請求項108に記載の情報処理装置。
【請求項110】
前記所定の時間は、同一のローカルネットワーク内に接続された前記受信装置と前記情報処理装置との間で要する通信時間である
請求項109に記載の情報処理装置。
【請求項111】
前記記録部は、ROM又はハードディスクの少なくとも一方である
請求項97に記載の情報処理装置。
【請求項112】
前記プロセッサは、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項97に記載の情報処理装置。
【請求項113】
前記情報処理装置は、ユーザにより操作される操作部として、キーボード又はマウスの少なくも一方を備え、
前記プロセッサは、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項112に記載の情報処理装置。
【請求項114】
前記受信装置は、前記受信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、
前記プロセッサは、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行する
請求項97に記載の情報処理装置。
【請求項115】
前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに備え、
前記プロセッサは、前記プログラムを、前記記録部から前記保持部にロードして実行する
請求項97に記載の情報処理装置。
【請求項116】
前記プロセッサは、CPU(Central Processing Unit)である
請求項115に記載の情報処理装置。
【請求項117】
前記プロセッサが、前記認証データ生成ステップと、前記コマンド送信制御ステップと、前記応答受信制御ステップと、前記認証ステップと、前記計測ステップと、前記判定ステップとを含む処理の処理結果に対応する出力を行わせる出力制御ステップも含む処理を行なう
請求項97に記載の情報処理装置。
【請求項118】
記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置の情報処理用のプログラムであって、
前記プロセッサが、
受信装置との間で共有する共有データをもとに、コマンド認証データと、応答期待値データを生成する認証データ生成ステップと、
前記コマンド認証データを含み、応答を要求するコマンドを前記受信装置に送信することを制御するコマンド送信制御ステップと、
前記コマンドに対する受信装置からの前記応答を受信することを制御する応答受信制御ステップと、
前記応答期待値データと、前記受信装置から受信した前記応答に含まれる応答認証データに基づいて前記受信装置を認証する認証ステップと、
前記受信装置に対して前記応答を要求するコマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、
前記認証ステップの処理による認証結果、および前記計測ステップの処理で計測された応答時間に基づいて、前記受信装置に対する送信データの送信可否を判定する判定ステップと、
前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信することを制御する送信データ送信制御部と
を含む処理を行なうために実行するプログラム。
【請求項119】
前記認証データ生成ステップは、前記コマンドが送信される前に、前記共有データをもとに、前記コマンド認証データと、前記応答期待値データを生成する
請求項118に記載のプログラム。
【請求項120】
前記プロセッサが、前記応答時間が所定の閾値よりも大きい場合、前記コマンド送信制御ステップの制御により送信される前記コマンドが何番目に送信されるものであるのかを示すカウント値を1だけインクリメントするカウントステップも含む処理を行なうために実行する前記プログラムであって、
前記コマンド送信制御ステップは、前記カウント値が1だけインクリメントされたことに対応して、新たな前記コマンドを送信することを制御する
請求項119に記載のプログラム。
【請求項121】
前記認証データ生成ステップは、前記新たなコマンドが送信される前に、前記共有データをもとに、新たな前記コマンド認証データと、新たな前記応答期待値データを生成し、
前記応答受信制御ステップは、前記新たなコマンドにより要求される前記応答であって、新たな前記応答認証データを含んだ前記応答を前記受信装置から受信することを制御し、
前記認証ステップは、前記新たな応答期待値データと、前記受信装置から受信した前記応答に含まれる前記新たな応答認証データに基づいて前記受信装置を認証する
請求項118に記載のプログラム。
【請求項122】
前記コマンド送信制御ステップは、前記送信データの送信可否を判定するのに、前記コマンドを最大N回送信することを制御する
請求項121に記載のプログラム。
【請求項123】
前記プロセッサが、
前記コマンドが送信される前に、所定の送信情報を前記受信装置に送信することを制御する情報送信制御ステップと、
前記コマンドが送信される前に、前記所定の送信情報に対する応答を前記受信装置から受信することを制御する情報応答受信制御ステップと
をさらに含む処理を行なうために実行する
請求項118に記載のプログラム。
【請求項124】
前記情報送信制御ステップは、前記コマンド送信制御ステップの制御において前記コマンドを送信可能なリトライ可能数を含む前記送信情報を、前記受信装置に送信することを制御し、
前記情報応答受信制御ステップは、前記送信情報を受信した前記受信装置により決定されたリトライ数を含む、前記送信情報に対する前記応答を受信することを制御し、
前記コマンド送信制御ステップは、前記コマンドを、最大、前記リトライ数だけ送信することを制御する
請求項123に記載のプログラム。
【請求項125】
前記情報送信制御ステップは、TCPコネクション経由で、前記所定の送信情報を前記受信装置に送信することを制御し、
前記応答受信制御ステップは、前記TCPコネクション経由で、前記所定の送信情報に対する応答を前記受信装置から受信することを制御する
請求項123に記載のプログラム。
【請求項126】
前記コマンド送信制御ステップは、UDPを用いて、前記コマンドを前記受信装置に送信することを制御し、
前記応答受信制御ステップは、前記UDPを用いて、前記コマンドに対する前記応答を受信することを制御する
請求項118に記載のプログラム。
【請求項127】
前記プロセッサが、前記コマンドが送信される前に、前記共有データを前記受信装置に送信することを制御する共有データ送信制御ステップも含む処理を行なうために実行する請求項118に記載のプログラム。
【請求項128】
前記認証データ生成ステップは、前記共有データに対してハッシュ処理を施し、前記コマンド認証データと前記応答期待値データを生成する
請求項118に記載のプログラム。
【請求項129】
前記認証ステップは、
前記応答期待値データと前記応答認証データとが一致する場合、前記受信装置を、前記送信データを送信すべき対象であるものとして認証し、
前記応答期待値データと前記応答認証データとが一致しない場合、前記受信装置を、前記送信データを送信すべき対象ではないものとして認証する
請求項118に記載のプログラム。
【請求項130】
前記判定ステップは、
前記受信装置が前記送信データを送信すべき対象であるものとして認証され、且つ、前記応答時間が所定の時間以下である場合、前記受信装置に対する前記送信データの送信が可であると判定し、
前記受信装置が前記送信データを送信すべき対象ではないものとして認証されたか、または前記応答時間が所定の時間よりも大きい場合、前記受信装置に対する前記送信データの送信が不可であると判定する
請求項129に記載のプログラム。
【請求項131】
前記所定の時間は、同一のローカルネットワーク内に接続された前記受信装置と前記情報処理装置との間で要する通信時間である
請求項130に記載のプログラム。
【請求項132】
前記情報処理装置は、前記プログラムを記録する前記記録部も備える
請求項118に記載のプログラム。
【請求項133】
前記記録部は、ROM又はハードディスクの少なくとも一方である
請求項132に記載のプログラム。
【請求項134】
前記プロセッサは、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項132に記載のプログラム。
【請求項135】
前記情報処理装置は、ユーザにより操作される操作部として、キーボード又はマウスの少なくも一方を備え、
前記プロセッサは、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項134に記載のプログラム。
【請求項136】
前記受信装置は、前記受信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、
前記プロセッサは、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行する
請求項132に記載のプログラム。
【請求項137】
前記情報処理装置は、前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに備え、
前記プロセッサは、前記プログラムを、前記記録部から前記保持部にロードして実行する
請求項132に記載のプログラム。
【請求項138】
前記プロセッサは、CPUである
請求項137に記載のプログラム。
【請求項139】
前記プロセッサが、前記認証データ生成ステップと、前記コマンド送信制御ステップと、前記応答受信制御ステップと、前記認証ステップと、前記計測ステップと、前記判定ステップとを含む処理の処理結果に対応する出力を行わせる出力制御ステップも含む処理を行なうために実行する
請求項132に記載のプログラム。
【請求項140】
受信装置に対する送信データの送信可否を判定する情報処理装置の情報処理方法において、
前記情報処理装置は、
認証データ生成部と、
コマンド送信部と、
応答受信部と、
認証部と、
計測部と、
判定部と、
送信データ送信部と
を備え、
前記認証データ生成部が、前記受信装置との間で共有する共有データをもとに、コマンド認証データと、応答期待値データを生成する認証データ生成ステップと、
前記コマンド送信部が、前記コマンド認証データを含み、応答を要求するコマンドを前記受信装置に送信するコマンド送信ステップと、
前記応答受信部が、前記コマンドに対する受信装置からの前記応答を受信する応答受信ステップと、
前記認証部が、前記応答期待値データと、前記受信装置から受信した前記応答に含まれる応答認証データに基づいて前記受信装置を認証する認証ステップと、
前記計測部が、前記受信装置に対して前記応答を要求するコマンドが送信されたときから、前記受信装置からの前記応答が受信されるまでの間の応答時間を計測する計測ステップと、
前記判定部が、前記認証ステップによる認証結果、および前記計測ステップで計測された応答時間に基づいて、前記受信装置に対する前記送信データの送信可否を判定する判定ステップと、
前記送信データ送信部が、前記受信装置に対する前記送信データの送信が可であると判定されたことに対応して、前記受信装置に対して前記送信データを送信する送信データ送信ステップと
を含む情報処理方法。
【請求項141】
記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置であって、前記情報処理装置に対して応答を要求するコマンドに対する応答時間に基づいて送信データの送信可否を判定する送信装置により、前記送信データの送信可否の判定対象とされる前記情報処理装置において、
前記プロセッサが、前記プログラムを実行することにより、
前記送信装置との間で共有する共有データから、コマンド期待値データおよび応答認証データを生成する生成ステップと、
前記送信装置から送信されてきた前記コマンドが受信されたことに対応して、前記応答認証データを含む応答を前記送信装置に送信することを制御する応答送信制御ステップと、
前記コマンドに含まれるコマンド認証データと、前記生成ステップにより生成された前記コマンド期待値データに基づいて前記送信装置を認証する認証ステップと、
前記送信装置により前記送信データの送信が可であると判定されたことに対応して、前記送信装置から送信されてくる前記送信データを受信することを制御する送信データ受信制御部と
を含む処理を行なう情報処理装置。
【請求項142】
前記生成ステップは、前記コマンドが受信される前に、前記共有データに基づいて、前記コマンド期待値データおよび前記応答認証データを生成する
請求項141に記載の情報処理装置。
【請求項143】
前記プロセッサが、前記送信装置からの前記コマンドを最大N回受信することを制御するコマンド受信制御ステップも含む処理を行い、
前記応答送信制御ステップは、前記コマンドが受信される毎に、前記コマンドにより要求された前記応答を前記送信装置に送信することを制御する
請求項142に記載の情報処理装置。
【請求項144】
前記プロセッサが、
前記コマンドが受信される前に、所定の送信情報を前記送信装置から受信することを制御する情報受信制御ステップと、
前記コマンドが受信される前に、前記所定の送信情報に対する応答を前記送信装置に送信することを制御する情報応答送信制御ステップと
をさらに含む処理を行なう請求項143に記載の情報処理装置。
【請求項145】
前記情報受信制御ステップは、前記送信装置において前記コマンドを送信可能なリトライ可能数を含む前記送信情報を、前記受信装置から受信することを制御し、
前記情報応答送信制御ステップは、前記リトライ可能数に基づき決定される前記回数Nを含む前記応答を送信することを制御する
請求項144に記載の情報処理装置。
【請求項146】
前記情報受信制御ステップは、TCPコネクション経由で、前記所定の送信情報を前記送信装置から受信することを制御し、
前記情報応答送信制御ステップは、前記TCPコネクション経由で、前記所定の送信情報に対する応答を前記送信装置に送信することを制御する
請求項144に記載の情報処理装置。
【請求項147】
前記プロセッサが、UDPを用いて、前記コマンドを前記送信装置から受信するコマンド受信制御ステップも含む処理を行い、
前記応答送信制御ステップは、前記コマンドが受信されたことに対応して、前記UDPを用いて、前記コマンドに対する前記応答を前記送信装置に送信することを制御する
請求項141に記載の情報処理装置。
【請求項148】
前記プロセッサが、前記コマンドが受信される前に、前記共有データを前記送信装置から受信することを制御する共有データ受信制御ステップも含む処理を行い、
前記生成ステップは、受信された前記共有データに基づいて、前記コマンド期待値データおよび前記応答認証データを生成する
請求項141に記載の情報処理装置。
【請求項149】
前記生成ステップは、前記共有データに対してハッシュ処理を施し、前記コマンド期待値データおよび前記応答認証データを生成する
請求項141に記載の情報処理装置。
【請求項150】
前記応答送信制御ステップは、前記コマンド認証データと前記コマンド期待値データとが一致する場合、前記コマンドが受信されたことに対応して、前記送信装置において生成される応答期待値データと一致する前記応答認証データを含む前記応答を前記送信装置に送信することを制御する
請求項141に記載の情報処理装置。
【請求項151】
前記応答送信制御ステップは、前記コマンド認証データと前記コマンド期待値データとが一致しない場合、前記コマンドが受信されたことに対応して、前記送信装置において生成される前記応答期待値データと一致しない前記応答認証データを含む前記応答を前記送信装置に送信することを制御する
請求項150に記載の情報処理装置。
【請求項152】
前記記録部は、ROM又はハードディスクの少なくとも一方である
請求項141に記載の情報処理装置。
【請求項153】
前記プロセッサは、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項141に記載の情報処理装置。
【請求項154】
前記情報処理装置は、ユーザにより操作される操作部として、キーボード又はマウスの少なくも一方を備え、
前記プロセッサは、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項153に記載の情報処理装置。
【請求項155】
前記送信装置は、前記送信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、
前記プロセッサは、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行する
請求項141に記載の情報処理装置。
【請求項156】
前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに備え、
前記プロセッサは、前記プログラムを、前記記録部から前記保持部にロードして実行する
請求項141に記載の情報処理装置。
【請求項157】
前記プロセッサは、CPUである
請求項156に記載の情報処理装置。
【請求項158】
前記プロセッサが、前記前記認証データ生成ステップと、前記コマンド送信制御ステップと、前記応答受信制御ステップと、前記認証ステップと、前記計測ステップと、前記判定ステップとを含む前記処理の処理結果に対応する出力を行わせる出力制御ステップも含む処理を行なう
請求項141に記載の情報処理装置。
【請求項159】
記録部から読み出されたプログラムを実行するプロセッサを備える情報処理装置であって、前記情報処理装置に対して応答を要求するコマンドに対する応答時間に基づいて送信データの送信可否を判定する送信装置により、前記送信データの送信可否の判定対象とされる前記情報処理装置の情報処理用のプログラムであって、
前記プロセッサが、
前記送信装置との間で共有する共有データから、コマンド期待値データおよび応答認証データを生成する生成ステップと、
前記送信装置から送信されてきた前記コマンドが受信されたことに対応して、前記応答認証データを含む応答を前記送信装置に送信することを制御する応答送信制御ステップと、
前記コマンドに含まれるコマンド認証データと、前記生成ステップの処理で生成された前記コマンド期待値データに基づいて前記送信装置を認証する認証ステップと、
前記送信装置により前記送信データの送信が可であると判定されたことに対応して、前記送信装置から送信されてくる前記送信データを受信することを制御する送信データ受信制御部と
を含む処理を行なうために実行するプログラム。
【請求項160】
前記生成ステップは、前記コマンドが受信される前に、前記共有データに基づいて、前記コマンド期待値データおよび前記応答認証データを生成する
請求項159に記載のプログラム。
【請求項161】
前記プロセッサが、前記送信装置からの前記コマンドを最大N回受信することを制御するコマンド受信制御ステップも含む処理を行なうために実行する前記プログラムであって、
前記応答送信制御ステップは、前記コマンドが受信される毎に、前記コマンドにより要求された前記応答を前記送信装置に送信することを制御する
請求項160に記載のプログラム。
【請求項162】
前記プロセッサが、
前記コマンドが受信される前に、所定の送信情報を前記送信装置から受信することを制御する情報受信制御ステップと、
前記コマンドが受信される前に、前記所定の送信情報に対する応答を前記送信装置に送信することを制御する情報応答送信制御ステップと
をさらに含む処理を行なうために実行する請求項161に記載のプログラム。
【請求項163】
前記情報受信制御ステップは、前記送信装置において前記コマンドを送信可能なリトライ可能数を含む前記送信情報を、前記受信装置から受信することを制御し、
前記情報応答送信制御ステップは、前記リトライ可能数に基づき決定される前記回数Nを含む前記応答を送信することを制御する
請求項162に記載のプログラム。
【請求項164】
前記情報受信制御ステップは、TCPコネクション経由で、前記所定の送信情報を前記送信装置から受信することを制御し、
前記情報応答送信制御ステップは、前記TCPコネクション経由で、前記所定の送信情報に対する応答を前記送信装置に送信することを制御する
請求項162に記載のプログラム。
【請求項165】
前記プロセッサが、UDPを用いて、前記コマンドを前記送信装置から受信することを制御するコマンド受信制御ステップも含む処理を行なうために実行する前記プログラムであって、
前記応答送信制御ステップは、前記コマンドが受信されたことに対応して、前記UDPを用いて、前記コマンドに対する前記応答を前記送信装置に送信することを制御する
請求項159に記載のプログラム。
【請求項166】
前記プロセッサが、前記コマンドが受信される前に、前記共有データを前記送信装置から受信することを制御する共有データ受信制御ステップも含む処理を行なうために実行する前記プログラムであって、
前記生成ステップは、受信された前記共有データに基づいて、前記コマンド期待値データおよび前記応答認証データを生成する
請求項159に記載のプログラム。
【請求項167】
前記生成ステップは、前記共有データに対してハッシュ処理を施し、前記コマンド期待値データおよび前記応答認証データを生成する
請求項159に記載のプログラム。
【請求項168】
前記応答送信制御ステップは、前記コマンド認証データと前記コマンド期待値データとが一致する場合、前記コマンドが受信されたことに対応して、前記送信装置において生成される応答期待値データと一致する前記応答認証データを含む前記応答を前記送信装置に送信することを制御する
請求項159に記載のプログラム。
【請求項169】
前記応答送信制御ステップは、前記コマンド認証データと前記コマンド期待値データとが一致しない場合、前記コマンドが受信されたことに対応して、前記送信装置において生成される前記応答期待値データと一致しない前記応答認証データを含む前記応答を前記送信装置に送信することを制御する
請求項168に記載のプログラム。
【請求項170】
前記情報処理装置は、前記プログラムを記録する記録部も備える
請求項159に記載のプログラム。
【請求項171】
前記記録部は、ROM又はハードディスクの少なくとも一方である
請求項170に記載のプログラム。
【請求項172】
前記プロセッサは、前記情報処理装置に対するユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項170に記載のプログラム。
【請求項173】
前記情報処理装置は、ユーザにより操作される操作部として、キーボード又はマウスの少なくも一方を備え、
前記プロセッサは、前記操作部に対する前記ユーザ操作が行われたことに対応して、前記プログラムを実行する
請求項172に記載のプログラム。
【請求項174】
前記送信装置は、前記送信装置に対するユーザ操作が行われたことに対応して、前記プログラムとは異なる所定のプログラムを実行するものであり、
前記プロセッサは、前記所定のプログラムが実行されたことに対応して、前記プログラムを実行する
請求項170に記載のプログラム。
【請求項175】
前記情報処理装置は、前記プロセッサにより実行される前記プログラムを一時的に保持する保持部をさらに備え、
前記プロセッサは、前記プログラムを、前記記録部から前記保持部にロードして実行する
請求項170に記載のプログラム。
【請求項176】
前記プロセッサは、CPUである
請求項175に記載のプログラム。
【請求項177】
前記プロセッサが、前記生成ステップと、前記応答送信制御ステップと、前記認証ステップとを含む処理による処理結果に対応する出力を行わせる出力制御ステップも含む処理を行うために実行する
請求項170に記載のプログラム。
【請求項178】
情報処理装置に対して応答を要求するコマンドに対する応答時間に基づいて送信データの送信可否を判定する送信装置により、前記送信データの送信可否の判定対象とされる前記情報処理装置の情報処理方法において、
前記情報処理装置は、
生成部と、
応答送信部と、
認証部と、
送信データ送信部と
を備え、
前記生成部が、前記送信装置との間で共有する共有データから、コマンド期待値データおよび応答認証データを生成する生成ステップと、
前記応答送信部が、前記送信装置から送信されてきた前記コマンドが受信されたことに対応して、前記応答認証データを含む応答を前記送信装置に送信する応答送信ステップと、
前記認証部が、前記コマンドに含まれるコマンド認証データと、前記生成ステップの処理で生成された前記コマンド期待値データに基づいて前記送信装置を認証する認証ステップと、
前記送信データ受信部が、前記送信装置により前記送信データの送信が可であると判定されたことに対応して、前記送信装置から送信されてくる前記送信データを受信する送信データ受信ステップと
を含む情報処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2011−35941(P2011−35941A)
【公開日】平成23年2月17日(2011.2.17)
【国際特許分類】
【出願番号】特願2010−248717(P2010−248717)
【出願日】平成22年11月5日(2010.11.5)
【分割の表示】特願2005−511989(P2005−511989)の分割
【原出願日】平成16年6月24日(2004.6.24)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】