(57)【特許請求の範囲】
【請求項１】
ソースノードに対するターゲットノードのプロキシミティを決定する方法であって、
前記ソースノードから前記ターゲットノードにクエリを通信する段階と、
前記ターゲットノードから前記ソースノードに、前記クエリに基づいて応答を生成するために必要な処理時間の測定を有する該応答を通信する段階と、
前記ソースノードにおいて前記応答を受信する段階と、
前記クエリの通信と前記応答の受信との間のクエリ応答時間の測定を決定する段階と、
前記クエリ応答時間の測定と前記処理時間の測定との差に依存する通信時間に基づいて前記ターゲットノードの前記プロキシミティを決定する段階と、
を有し、
前記クエリと前記応答とは、暗号プロトコルの少なくとも一部に対応する、
方法。
【請求項２】
前記クエリと前記応答とは、暗号鍵交換プロトコルの少なくとも一部に対応する請求項１記載の方法。
【請求項３】
前記鍵交換プロトコルは、ニーダム−シュローダ鍵交換プロトコルに対応する請求項２記載の方法。
【請求項４】
前記クエリと前記応答とは、ＯＣＰＳプロトコルの少なくとも一部に対応する請求項１記載の方法。
【請求項５】
前記ターゲットノードにおける前記処理時間の測定は、予め決められる請求項１記載の方法。
【請求項６】
前記プロキシミティを決定する段階は、
前記通信時間を、ローカルノードとリモートノードとを区別する閾値と比較する段階を有する請求項１記載の方法。
【請求項７】
前記プロキシミティに基づいて前記ターゲットノードとの通信を制限する段階を更に有する請求項１記載の方法。
【請求項８】
前記応答は、前記ターゲットノードにより暗号署名される請求項１記載の方法。
【請求項９】
ソースノードからクエリを受信し、前記ソースノードに対応応答を伝送するよう構成される通信装置と、
前記クエリを処理し、前記クエリから前記応答を生成するよう構成されるプロセッサと、
を有し、
前記応答は、前記クエリを処理し前記応答を生成するために必要な処理時間の測定を有し、
前記クエリと前記応答とは、暗号プロトコルの少なくとも一部に対応する、
ネットワーク上のノード。
【請求項１０】
前記プロセッサは、暗号鍵交換プロトコルの一部として、前記クエリを処理し前記応答を生成するよう構成される請求項９記載のノード。
【請求項１１】
前記鍵交換プロトコルは、ニーダム−シュローダ鍵交換プロトコルに対応する請求項１０記載のノード。
【請求項１２】
前記クエリと前記応答とは、前記ソースノードにより開始されるＯＣＰＳプロトコルの少なくとも一部に対応する請求項９記載のノード。
【請求項１３】
前記処理時間の測定は、予め決められる請求項９記載のノード。
【請求項１４】
前記プロセッサは更に、前記応答を暗号署名するよう構成される請求項９記載のノード。
【請求項１５】
ターゲットノードにクエリを伝送し、前記ターゲットノードから対応応答を受信するよう構成される通信装置と、
プロセッサと、
を有し、
前記ターゲットノードからの前記対応応答は、前記ターゲットノードにおいて前記対応応答を生成するために必要な処理時間の測定を有し、
前記プロセッサは、前記クエリを生成し、前記応答を受信し、前記クエリの生成と前記応答の受信との間のクエリ応答時間を測定し、前記クエリ応答時間と前記処理時間の測定との差に依存する通信時間に基づいて、前記ノードに対する前記ターゲットノードのプロキシミティを決定するよう構成され、
前記クエリと前記応答とは、暗号プロトコルの少なくとも一部に対応する、
ネットワーク上のノード。
【請求項１６】
前記プロセッサは、暗号鍵交換プロトコルの一部として、前記クエリを生成し、前記応答を受信するよう構成される請求項１５記載のノード。
【請求項１７】
前記鍵交換プロトコルは、ニーダム−シュローダ鍵交換プロトコルに対応する請求項１６記載のノード。
【請求項１８】
前記クエリと前記応答とは、前記ノードにより開始されるＯＣＰＳプロトコルの少なくとも一部に対応する請求項１５記載のノード。
【請求項１９】
前記処理時間の測定は、予め決められる請求項１５記載のノード。
【請求項２０】
前記プロセッサは、前記通信時間の、ローカルノードとリモートノードとを区別する閾値との比較に基づいて前記プロキシミティを決定するよう構成される請求項１５記載のノード。
【請求項２１】
前記プロセッサは更に、前記プロキシミティに基づいて前記ターゲットノードとの次の通信を制御するよう構成される請求項１５記載のノード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信セキュリティの分野に係わり、特に、ネットワーク上のノードのプロキシミティを検証するシステム及び方法に係る。
【背景技術】
【０００２】
ネットワークセキュリティは、しばしば、ネットワーク上の「ローカル」ノードと「リモート」ノードを識別することにより高められる。例えば、ローカルノードは、一般的に、特定の物理環境内に位置付けられ、また、この物理環境内のユーザは、ネットワークにアクセスすることが認可されると考えられる。その一方で、リモートノードは、非認可の物理的アクセスを可能にしてしまう。更に、ネットワーク上の非認可の侵入者は、一般的に、ネットワークに遠隔から、電話又は他の通信チャネルを介してアクセスする。リモートノードを介する非認可アクセスに対するネットワークの感受性によって、ネットワークセキュリティは、リモートノードに厳しいセキュリティ手段及び／又はアクセス制限を課し、同時にこれらの同じ制限をローカルノードには課さないことにより高めることが可能である。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本発明は、ネットワーク上のノードがローカルかリモートであるかの決定を容易にするシステム及び方法を提供することを目的とする。本発明は更に、ネットワーク上のノードがローカルか又はリモートであるかのセキュアな決定を容易にするシステム及び方法を提供することを目的とする。本発明は更に、この決定を、ネットワーク上のノードの真正性を検証するシステム及び方法に組み込むことを目的とする。
【課題を解決するための手段】
【０００４】
これらの目的及び他の目的は、ソースノードに対するターゲットノードのプロキシミティの決定を容易にするようオープン・コピー・プロテクション・システム（ＯＣＰＳ）といったノード検証プロトコルに、タイミングパラメータを含むシステム及び方法により達成される。ノード検証プロトコルは、クエリ応答手順を有し、この手順では、ソースノードがクエリをターゲットノードに通信し、そして、ターゲットノードが対応する応答をソースノードに通信する。ソースノードは、このクエリ応答手順を行うために必要な時間の測定に基づいて、ソースノードとターゲットノードとの間の距離の下限を設定する。この手順を行うために必要な時間は、クエリを処理し応答を生成するために必要な時間のみならず、クエリ及び応答を通信するのに必要な時間も含んでいる。ターゲットノードは、クエリを処理しソースノードに対し応答を生成するのに必要な時間の測定を有する。ソースノードは、この時間を全クエリ応答時間から引き算し、それにより、通信に費やされた時間を決定する。この通信時間は、ターゲットノードがソースノードに対しローカルであるか又はリモートであるか決定するために閾値と比較される。
【発明を実施するための最良の形態】
【０００５】
全図において、同じ参照番号は、同じ構成要素、又は、実質的に同じ機能を行う構成要素を示す。
【０００６】
図１は、ノード１１０のネットワーク１５０を示す例示的なブロック図である。これらのノードのうちの１つノードＤ１１０は、他のノード１１０から離れているものとして図示する。本発明では、各ノード１１０は、互いのノード１１０のプロキシミティを決定可能なよう構成される。本発明の一般的な実施例において、プロキシミティ決定は、他のノードが「ローカル」であるか又は「リモート」であるかの決定に制限される。しかし、より詳細な距離の決定を、本願に開示する技術を用いて達成することが可能である。
【０００７】
図２は、本発明に従い、ソースノード１１０Ｓに対するターゲットノード１１０Ｔのプロキシミティを決定するクエリ応答プロトコルを実行するソースノード１１０Ｓ及びターゲットノード１１０Ｔを示す例示的なブロック図である。ソースノード１１０Ｓは、クエリを始動するプロセッサ２１０と、クエリをターゲットノード１１０Ｔに伝送する通信装置２２０を有する。ターゲットノード１１０Ｔは、クエリを受信し、対応する応答を、その通信装置２３０を介して戻す。この応答が、通信されたクエリに対応することを確実にするために、プロトコルは、ターゲットノード１１０Ｔに、プロセッサ２４０によりクエリの少なくとも一部を処理し、この処理の結果をこの応答に盛り込むことを求める。
【０００８】
ソースノード１１０Ｓは、図２に、Ｔｑｕｅｒｙ−ｒｅｓｐｏｎｓｅ２８０と示す、クエリ応答処理に費やされた時間を測定するよう構成される。このクエリ応答時間２８０は、ターゲットノード１１０Ｔにおいてクエリを処理し応答を生成する時間、即ち、Ｔｐｒｏｃｅｓｓ２７０のみならず、クエリと応答を通信する時間、即ち、Ｔｃｏｍｍｕｎｉｃａｔｅ２６０も含む。本発明では、ターゲットノード１１０Ｔは、ソースノード１１０Ｓに与えられる応答の中にこの処理時間２７０の測定を含むよう構成される。ソースノード１１０Ｓは、通信時間２６０を決定するためにクエリ応答時間２８０からこの処理時間２７０を引き算する。既知の技術を用いて、ソース１１０Ｓとターゲット１１０Ｔとの間の距離は、この決定された通信時間２６０を用いて計算可能である。上述したように、一般的な実施例では、この通信時間２６０は、ターゲット１１０Ｔが、ソース１１０Ｓのローカルであるか又はソース１１０Ｓからリモートであるかを決定するために用いられる。この決定は、本発明の好適な実施例では、通信時間２６０を、一般的に数ミリ秒以下である公称閾値と比較することにより行われる。通信時間２６０が閾値より下である場合、ターゲット１１０Ｔは、ローカルにあると決定される。通信時間２６０が閾値より上である場合、ターゲット１１０Ｔは、リモートにあると決定される。
【０００９】
一般的な実施例では、ソース１１０Ｓは、リモート／ローカルプロキシミティ決定を用いて、ターゲット１１０Ｔとの次の通信を制御する。例えば、一部のファイルはローカルノードのみに転送可能であったり、リモートノードとの全ての通信は暗号化される必要があったりする。任意選択的に、複数の閾値レベルを決定して、リモートターゲットノードがソースノードと同じ国内に位置付けられているか等、距離の様々な範囲を区別してもよい。
【００１０】
尚、非認可ノードは、偽の処理時間を与えることにより上述の処理を覆すことが可能である。本発明の１つの好適な実施例では、上述のクエリ応答処理は、一般的に、１回以上のクエリ応答手順が関連する鍵交換処理といったノード認証処理に組み込まれる。クエリ応答処理をノード認証処理に組み込むことにより、報告される処理時間は、認証されたものであると確認される。
【００１１】
例えば、ＯＣＰＳプロトコルは、認証段階、鍵交換段階、鍵生成段階、及び後続のデータ伝送段階を有する。鍵交換段階は、Menezes外による「Handbook of Applied Cryptography」に記載されるような修正ニーダム−シュローダ（Needham-Schroeder）鍵交換プロトコルにより行われる。
【００１２】
認証段階において、ソースノード１１０Ｓ及びターゲットノード１１０Ｔのそれぞれは、互いの公開鍵を認証する。
【００１３】
鍵交換段階の始まりにおいて、ソース１１０Ｓは、ターゲット１１０Ｔの公開鍵を用いて、乱数及びランダム鍵を暗号化し、両方の暗号を、ターゲット１１０Ｔに伝送する。本発明では、ソースノード１１０Ｓは、これらの暗号が、ターゲット１１０Ｔに伝送されるときにタイマを始動する。
【００１４】
ターゲット１１０Ｔは、ターゲットの秘密鍵を用いて、乱数及びランダム鍵を解読する。ターゲット１１０Ｔは、新しい乱数及び新しいランダム鍵を生成し、また、その新しい乱数、その新しいランダム鍵、及び解読されたソース１１０Ｓからの乱数を、ソース１１０Ｓの公開鍵を用いて暗号化し、それにより、ソース１１０Ｓに通信されるべき応答を形成する。ターゲット１１０Ｔは任意選択的に、ターゲットの秘密鍵を用いてその応答に署名をする。本発明では、ターゲット１１０Ｔは更に、署名された応答内に、解読、暗号化、及び署名を行うのに必要な時間の測定を含む。この処理時間は、任意選択的に、ソースの公開鍵を用いて暗号化される。この解読、暗号化、及び署名の処理は、一般的に、所与のターゲットノードにおける時間と同じ量の時間を費やすので、ターゲットノードは、この処理を行う時間の測定として所定の処理時間を与えるよう構成されることが好適である。応答に署名をすることにより、ターゲット１１０Ｔは、報告された処理時間を、現在の応答における他のパラメータと関連付け、それにより、暗号化された処理時間の、ソース１１０Ｓの公開鍵を用いて暗号化された別の時間との非認可の差し替えを不可能にする。
【００１５】
ソースノード１１０Ｓは、応答を受信すると、前出のタイマを終了する。ソースノード１１０Ｓは、ターゲット１１０Ｔの公開鍵を用いて、署名されたメッセージを検証し、ソース１１０Ｓの秘密鍵を用いて、応答からの乱数及びランダム鍵を解読する。応答内の処理時間が暗号されている場合は、このときに、処理時間も、ソース１１０Ｓによりソース１１０Ｓの秘密鍵を用いて解読される。本発明では、ソース１１０Ｓは、処理時間を、ソース１１０Ｓからの暗号化されたクエリの伝送とターゲット１１０Ｔからの暗号化された応答の受信の間にタイマにより測定された経過時間から引き算して、ソース１１０Ｓとターゲット１１０Ｔとの間の往復通信時間を決定する。
【００１６】
鍵交換を確認するために、ソース１１０Ｓは、解読された新しい乱数をターゲット１１０Ｔに戻す。ソース１１０Ｓ及びターゲット１１０Ｔは共に、適切な解読された乱数の受信に基づいて次の通信を制御する。本発明では、ソース１１０Ｓは更に、決定された通信時間に基づいて次の通信も制御する。
【００１７】
両方のノードが確認されると、ソース１１０Ｓとターゲット１００Ｔとの間の次の通信は、ランダム鍵、公開鍵、及びセッションインデックスの組合わせであるセッション鍵を用いてその通信を暗号化する。
【００１８】
上述は、本発明の原理を説明するに過ぎない。従って、当業者は、本願には明示的に説明又は図示されないが、本発明の原理を具現化し、従って、特許請求の精神及び範囲内である様々な構成を考えることが可能であろう。例えば、上述したＯＣＰＳプロトコル、ターゲットノード１１０Ｔは、暗号化された応答の伝送と、ソース１１０Ｓからの解読された乱数の受信との間の処理を計時することにより、ソースノード１１０Ｓのプロキシミティを決定するよう構成されてもよい。この実施例では、ソース１１０Ｓは、暗号化された応答を処理し、ソース１１０Ｓによりデジタル的に署名され、解読された乱数を有する最後の鍵交換メッセージにおいて解読された乱数を伝送するために必要な時間の測定を有するよう構成される。ターゲット１１０Ｔは、この処理時間を、その伝送と受信との間の測定時間から引き算して、往復ターゲット−ソース通信時間を決定し、それにより、ターゲット１１０Ｔに対するソース１１０Ｓのプロキシミティを決定する。これらの及び他のシステム構成及び最適化特徴は、本開示を鑑みて当業者には明らかであろうし、また、これらは、本願の特許請求の範囲に含まれる。
【図面の簡単な説明】
【００１９】
【図１】ノードネットワークを示す例示的なブロック図である。
【図２】本発明に従いクエリ応答プロトコルを実施するソースノード及びターゲットノードを示す例示的なブロック図である。
【図１】
0004464918.tif 000002
【図２】
0004464918.tif 000003