(57)【要約】本発明は、ホームネットワークなどにおける装置の間の許容される通信レベルを決定するための方法、近接性チェックサーバ、システム及びコンピュータプログラムを提供する。１以上の改ざん耐性装置、いわゆる近接性チェックサーバを追加することによって、装置間の距離を推定するためのラウンド・トリップ・タイム測定が、当該装置間の許容される通信量を決定するため実行される。特定の実施例では、１つの改ざん耐性近接性サーバが、オープンプラットフォーム上の信頼されたアプリケーションとして実現される通信装置間の距離を計算する。
2008514085.tif 000002
【特許請求の範囲】
【請求項１】
第１装置と第２装置との間の許容される通信のレベルを決定する方法であって、
第１近接性チェックサーバによって、該第１近接性チェックサーバと前記第１装置との間の第１距離を確実に決定するため、前記第１装置との通信プルトコルを実行するステップと、
第２近接性チェックサーバによって、該第２近接性チェックサーバと前記第２装置との間の第２距離を確実に決定するため、前記第２装置との通信プルトコルを実行するステップと、
前記決定された第１距離と第２距離が所定のルールを充足しているか判断するステップと、
前記第１装置と前記第２装置との間の許容される通信のレベルを決定するステップと、
を有する方法。
【請求項２】
前記第１近接性チェックサーバは、前記通信プロトコルにおけるラウンド・トリップ・タイムを測定することによって、前記第１距離を推定する、請求項１記載の方法。
【請求項３】
前記第１及び第２近接性チェックサーバは、同一の近接性チェックサーバである、請求項１記載の方法。
【請求項４】
前記決定された第１距離と、前記決定された第２距離と、前記近接性チェックサーバ間の距離の和が所定の閾値以下である場合であって、かつその場合に限って、前記所定のルールは充足される、請求項１記載の方法。
【請求項５】
前記決定された第１距離と前記決定された第２距離の何れもが所定の閾値以下である場合、前記所定のルールが充足される、請求項１記載の方法。
【請求項６】
複数の近接性チェックサーバのセットが使用される、請求項１記載の方法。
【請求項７】
前記第１近接性チェックサーバは、ネットワークにおける分散ポイントに配置される、請求項１記載の方法。
【請求項８】
前記第１装置と前記近接性チェックサーバとの間の第１距離を決定するチャレンジレスポンスプロトコルは、前記第１装置と前記近接性チェックサーバとの間の認証プロトコルの一部である、請求項１記載の方法。
【請求項９】
前記第１近接性チェックサーバによって、前記決定された第１距離を有する第１近接性証明書を生成するステップと、
前記第２近接性チェックサーバによって、前記決定された第２距離を有する第２近接性証明書を生成するステップと、
をさらに有する、請求項１記載の方法。
【請求項１０】
潜在的に重複した、
前記第１装置によって、前記第１近接性チェックサーバからの第１近接性証明書を要求するステップと、
前記第２装置によって、前記第２近接性チェックサーバからの第２近接性証明書を要求するステップと、
をさらに有し、その後に実行される、
前記第１装置によって、前記第１近接性証明書を前記第２装置に通信するステップと、
前記第２装置によって、前記第１近接性証明書から前記決定された第１距離と、前記第２近接性証明書から前記決定された第２距離とが前記所定のルールを充足しているか検証するステップと、
をさらに有する、請求項９記載の方法。
【請求項１１】
潜在的に重複した、
前記第２装置によって、前記第１近接性チェックサーバからの前記第１近接性証明書を要求するステップと、
前記第２装置によって、前記第２近接性チェックサーバからの前記第２近接性証明書を要求するステップと、
をさらに有し、その後に実行される、
前記第２装置によって、前記第１近接性証明書からの決定された第１距離と、前記第２近接性証明書からの決定された第２距離とが、前記所定のルールを充足するか検証するステップと、
をさらに有する、請求項９記載の方法。
【請求項１２】
前記近接性証明書は、距離測定が実行されたときの情報を有する、請求項９記載の方法。
【請求項１３】
前記第１装置は、前記第１近接性チェックサーバからの前記第１近接性証明書を要求するステップにおいて乱数を追加し、
前記近接性チェックサーバは、前記近接性証明書を生成するステップにおいて前記乱数を前記第１近接性証明書に追加する、請求項９記載の方法。
【請求項１４】
前記第１近接性チェックサーバによって、前記第１近接性チェックサーバと前記第１装置との間の距離と、前記チェックサーバの第２ボトムと前記第２装置との間の距離とに基づき、前記第１装置と前記第２装置との間の距離を決定するステップと、
前記第１近接性チェックサーバによって、前記第１装置と前記第２装置との間の距離に関する決定された情報を有する距離証明書を生成するステップと、
をさらに有する、請求項１記載の方法。
【請求項１５】
前記第１装置と前記第２装置の少なくとも１つによる、
前記近接性チェックサーバからの前記第１装置と前記第２装置との間の距離に対する距離証明書を要求するステップと、
前記近接性チェックサーバから前記距離証明書を抽出するステップと、
前記距離が所定の閾値以下であるか検証するステップと、
をさらに有する、請求項１４記載の方法。
【請求項１６】
前記第１装置と前記第２装置の少なくとも１つによる、
前記近接性チェックサーバが当該要求に対する回答を生成する、所定の閾値に対する前記第１装置と前記第２装置との間の決定された距離を前記近接性チェックサーバに検証するよう要求するステップと、
前記近接性チェックサーバから前記回答を抽出するステップと、
をさらに有する、請求項１４記載の方法。
【請求項１７】
前記距離証明書は、距離測定が実行されたときの情報を有する、請求項１４記載の方法。
【請求項１８】
前記第１装置は、前記第１近接性チェックサーバからの前記距離証明書を要求するステップにおいて乱数を追加し、
前記近接性チェックサーバは、前記距離証明書を生成するステップにおいて前記乱数を前記距離証明書に追加する、請求項１４記載の方法。
【請求項１９】
前記距離の決定は、無線リンクを介した通信を必要とする、請求項１記載の方法。
【請求項２０】
前記第１装置は、該第１装置と前記第２装置との間の接続を確立するよう前記第１近接性チェックサーバに要求し、
前記第１近接性チェックサーバは、前記第１近接性チェックサーバから前記第１装置までの距離と、前記第２近接性チェックサーバから前記第２装置までの距離とが前記所定のルールを充足する場合、前記接続を確立する、請求項１記載の方法。
【請求項２１】
第１装置と第２装置値の間の許容される通信レベルの決定を可能にする近接性チェックサーバであって、
前記第１装置と前記第２装置との少なくとも１つとの通信プロトコル中にメッセージを送信するよう構成される送信手段と、
前記通信プロトコル中にメッセージを受信するよう構成される受信手段と、
前記通信プロトコルを実行するよう構成される改ざん耐性処理手段と、
前記通信プロトコルの実行中に距離を測定するよう構成される改ざん耐性測定手段と、
距離証明書と近接性証明書との少なくとも１つを生成するようさらに構成される改ざん耐性処理手段と、
前記距離証明書と前記近接性証明書との少なくとも１つを暗号的に署名するよう構成される改ざん耐性署名手段と、
を有する近接性チェックサーバ。
【請求項２２】
ラウンド・トリップ・タイムに基づき距離を推定するよう構成される改ざん耐性推定手段をさらに有する、請求項２１記載の近接性チェックサーバ。
【請求項２３】
当該近接性チェックサーバは、ネットワーク装置に一体化される、請求項２１記載の近接性チェックサーバ。
【請求項２４】
当該近接性チェックサーバは、ドングルとして実現される、請求項２１記載の近接性チェックサーバ。
【請求項２５】
ネットワークに接続される第１装置と、第２装置と、改ざん耐性近接性チェックサーバとを有するシステムであって、
前記近接性チェックサーバは、請求項１記載の方法を利用して、前記第１装置と前記第２装置との距離を検証するよう構成されるシステム。
【請求項２６】
前記第１装置と前記第２装置との少なくとも１つは、プログラム可能装置上で実行されるソフトウェアプリケーションとして実現される、請求項２５記載のシステム。
【請求項２７】
近接性チェックサーバによって使用される第１装置と第２装置との間の許容される通信レベルの決定を可能にするコンピュータプログラムであって、請求項１９記載の近接性チェックサーバのプログラム可能装置に、
第１ラウンド・トリップ・タイムを確実に決定するため、第１装置との通信プロトコルを実行するステップと、
前記第１近接性チェックサーバと前記第１装置との間の第１距離を推定するステップと、
前記決定された第１距離に基づく情報を有する証明書を生成するステップと、
を実行させるコンピュータ実行可能な命令を有するコンピュータプログラム。
【請求項２８】
前記証明書は、前記決定された第１距離を有する第１近接性証明書である、請求項２７記載のコンピュータプログラム。
【請求項２９】
第２ラウンド・トリップ・タイムを確実に決定するため、第２装置との通信プロトコルを実行するステップと、
前記第２ラウンド・トリップ・タイムに基づき、前記近接性チェックサーバと前記第２装置との間の第２距離を推定するステップと、
前記第１装置と前記第２装置との間の距離に基づく情報を有する証明書を生成するステップと、
を実行するためのさらなる命令を有する、請求項２８記載のコンピュータプログラム。
【請求項３０】
第１によって使用される該第１装置と第２装置との間の許容される通信レベルの決定を可能にするコンピュータプログラムであって、プログラム可能装置に、
前記第１装置自体に対して近接性チェックサーバからの第１近接性証明書を要求するステップと、
前記第２装置に対して前記第２装置と前記近接性チェックサーバとの少なくとも１つからの第２近接性証明書を要求するステップと、
所定のルールに従って、前記第１近接性証明書と前記第２近接性証明書を検証するステップと、
前記ルールが充足されたか否かに応じて、前記許容される通信レベルを決定するステップと、
実行させるコンピュータ実行可能な命令を有するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、第１装置と第２装置との間の許可されている通信レベルを決定する方法に関する。本発明はさらに、第１装置と第２装置との間の許可されている通信レベルの決定を可能にする近接性チェックサーバに関する。本発明はまた、ネットワークに接続される第１装置と第２装置とを有するシステムに関する。本発明はさらに、近接性チェックサーバによって使用される、第１装置と第２装置との間の許可されている通信レベルの決定を可能にするコンピュータプログラムプロダクトに関する。本発明はまた、第１装置によって使用される第１装置と第２装置との間の許可されている通信レベルの決定を可能にするコンピュータプログラムプロダクトに関する。
【背景技術】
【０００２】
セキュア認証チャネル（ＳＡＣ）は、ホームネットワークなどにおいて１つの装置から他の装置に送られるデジタルコンテンツをプロテクトするのに一般的に使用されている。ＳＡＣの一例は、セットトップボックスとデジタルテレビなどとの間のＩＥＥＥ１３９４接続に対して規定されるようなＤＴＣＰ（ｈｔｔｐ：／／ｗｗｗ．ｄｔｃｐ．ｃｏｍ／ｄａｔａ／ｉｎｆｏ＿２００４０１０７＿ｄｔｃｐ＿Ｖｏｌ＿１＿ｌｐ３．ｐｄｆから入手可能なＤｉｇｉｔａｌ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ  ｓｐｅｃｉｆｉｃａｔｉｏｎ，Ｖｏｌｕｍｅ  １（ｉｎｆｏｒｍａｔｉｏｎ  Ｖｅｒｓｉｏｎ），ｒｅｖｉｓｉｏｎ  １．３，Ｊａｎｕａｒｙ  ７，２００４）。この例では、ＳＡＣの地理的範囲は、最大許容ケーブル長により制限される。装置間の基礎となるトランスポート機構としてインターネットプロトコル（ＩＰ）を利用するときには、このような物理的制約は存在しない。しかしながら、コンテンツプロバイダは、一般に関係する装置の緊切さを依然として求める。その理由は、近接する装置は１つのホームネットワークに属している可能性が高いため、これが複数の家計の間のコンテンツの共有を回避するということである。
【０００３】
異なる設定及び異なるスケールにおいて、配信者は、配信コンテンツがターゲットエリアのユーザ間では共有可能であるが、これらのユーザからターゲットエリア外のユーザに配布されないことを要求する。例えば、コンテンツは著作権ライセンスが支払われた１つの国に限定されるべきであり、衛星の電波到達範囲に限定されるべきである。これは、コンテンツを交換することが許可されているユーザ間の距離を限定することによってある程度まで実現することが可能である。
【０００４】
国際特許出願ＷＯ２００４０１４０３７は、第１通信装置と第２通信装置との間の認証された距離の測定を第１通信装置が実行するための方法であって、第１通信装置と第２通信装置が共通の秘密を共有し、当該共通の秘密が第１通信装置と第２通信装置との間の距離の測定を実行するのに利用される方法を記載している。
【０００５】
測定装置がセキュアな時間概念を有する場合に限って、クエリの送信とレスポンスの受信との間の時間（ラウンド・トリップ・タイム，ＲＴＴ）の測定は信頼できるものとなる。家電機器などのクローズドシステムでは、これは通常は問題とはならない。しかしながら、ＷｉｎｄｏｕｗｓやＬｉｎｕｘを実行するＰＣなどのオープンシステムでは、これは実現することが困難であるかもしれない。その理由は、このようなシステム上で実行される信頼されたアプリケーション（ＳＡＣを確立するのに必要とされる秘密を含むアプリケーション）は、一般にはセキュアクロックにアクセスすることができない。信頼されたアプリケーションは、ハッカーが「クロックスプーフィング（ｃｌｏｃｋ  ｓｐｏｏｆｉｎｇ）ドライバを挿入したり、又はオペレーティングシステムのシステムクロックを変更することを可能にするオープンオペレーティングシステム上で実行され、ソフトウェアに「ウォールクロック（ｗａｌｌ−ｃｌｏｃｋ）タイム又はリアルタイムクロックを通知する。このクロックのスプーフィングは、距離の測定に影響を与えるため、システムクロック値が自在に変更されることを可能にする（例えば、スローダウンなど）。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明の課題は、アプリケーションを実行する通信装置間の許容された通信レベルを決定するため、これら２つの装置の位置及び／又はこれらの間の相対距離に関する高い信頼性により生成された情報へのアクセスをオープンシステム上で実行されるアプリケーションに可能にする導入部に記載された方法を提供することである。
【課題を解決するための手段】
【０００７】
上記課題は、第１近接性チェックサーバによって、該第１近接性チェックサーバと前記第１装置との間の第１距離を確実に決定するため、前記第１装置との通信プルトコルを実行するステップと、第２近接性チェックサーバによって、該第２近接性チェックサーバと前記第２装置との間の第２距離を確実に決定するため、前記第２装置との通信プルトコルを実行するステップと、前記決定された第１距離と第２距離が所定のルールを充足しているか判断するステップと、前記第１装置と前記第２装置との間の許容される通信のレベルを決定するステップとを有する方法により実現される。
【０００８】
本発明によると、いわゆる１以上の近接性チェックサーバ（ＰＣＳ）が、認証された距離測定を実行する。各ＰＣＳは、当該測定を高い信頼性により実行し、このため、改ざん耐性でなければならない。改ざん耐性装置は、これらの処理の機能が、例えば、スクリュードライバ、ワイヤカッター、鉄の半田付けなどの容易に利用可能なツール及び技術を当業者が利用することによって、又はプログラム可能装置上のアプリケーションソフトウェア又はソフトウェアドライバをインストール又は変更することによっては変更することができない処理を実行する装置である。改ざん耐性を実現するため、ＰＣＳは、クローズドハードウェアベースサブシステムを有するようにしてもよい。また、ＰＣＳは、ホームネットワークに直接接続されるスタンドアローン装置であってもよい。あるいは、ＰＣＳは、ルータ又はネットワークインタフェースモジュールなどの他の装置の信頼されたサブシステムであってもよい。さらなる他の実施例では、ＰＣＳは、信頼されたハードウェア部分と適切なドライバソフトウェアを有するドングル（ＵＳＢ、ＲＳ２３２、パラレルポート）から構成されてもよい。
【０００９】
ここで、ホームネットワーク上の２つの装置が地理的にローカライズされたＳＡＣを確立することを所望する場合、ＰＣＳは、各装置との距離を測定する。１つのＰＣＳが第１ＰＣＳと第２ＰＣＳとの両方として動作するとき、それは双方の距離測定を実行し、ＰＣＳ間の距離はゼロであると知られる（及び暗黙的に認証される）。その後、決定された第１距離と第２距離が所定のルールを充足しているか判断される。可能なルールの第１の例として、第１距離と第２距離の両方の測定値を生成した１つのＰＣＳのケースでは、当該ルールは、決定された第１距離と第２距離の和が所定の閾値以下に維持されるというものにすることができる。これにより、これらの装置は、例えば、それらがデジタルコンテンツを交換することを可能にするため、十分近接しているとみなすことができる。従って、第１装置と第２装置との最大距離は、例えば、通信されるコンテンツに含まれる値やシステムワイドな定数など、当該閾値より大きくなることはない。ルールの第２の例として、また１つのＰＣＳのケースでは、決定された第１距離と第２距離の両方が、閾値以下となるべきである。このケースでは、第１装置と第２装置は共に、ＰＣＳの周囲の円形のエリアに制限される。ルールの第３の例として、異なる２つのＰＣＳのケースでは、決定された第１距離と、決定された第２距離と、ＰＣＳ間の既知の距離との和が、閾値以下となるべきである。ルールの第４の例として、既知の又は戦略的に選択された位置にある２つの異なるＰＣＳのケースでは、決定された第１距離と第２距離はそれぞれある閾値以下であるべきである。本例では、当該ルールは、第１装置と第２装置の双方が、距離測定を実行した各ＰＣＳの周囲の円形エリアの範囲内にあるか検証する。
【００１０】
通信プロトコルは、好ましくは、第１装置のみ又は第２装置のみしかチャレンジに対するレスポンスを提供することができないようなチャレンジレスポンスプロトコルである。
【００１１】
さらなる効果として、上記課題は、既存のネットワーキングハードウェア及びソフトウェアを変更することなく実現可能である。ＰＣＳのみが、既存のネットワークに追加されればよい。
【００１２】
本発明は、例えば、ホームネットワーク及び認証ドメインの分野と共に、分散ネットワーク（部分的により遠隔的かつより大型の）において利用可能である。
【００１３】
従属クレーム２は、本発明の実施例を記載している。当該実施例では、距離測定は、ラウンド・トリップ・タイム測定である。これらのラウンド・トリップ・タイム測定から、距離が推定され、好ましくはまた認証される。しかしながら、ラウンド・トリップ・タイムに基づき第１及び第２距離を推定する代わりに、ラウンド・トリップ・タイムがまた、第１及び第２距離のための指標として直接的に利用することも可能である。
【００１４】
従属クレーム３は、本発明の実施例を記載している。当該実施例では、第１近接性チェックサーバと第２近接性チェックサーバが１つであって、かつ同一であるような唯一の近接性チェックサーバが存在する。近接性チェックサーバは、第１装置と第２装置との双方の距離を決定する。同一の近接性チェックサーバが双方の測定に利用されるため、これらの距離は、例えば、装置間の距離に対する上限を実現するよう加算することが可能であり、又は、両方の装置が近接性チェックサーバと制限された距離の範囲内にいるか否か決定するのに利用可能である。
【００１５】
従属クレーム４は、本発明の実施例を記載している。決定された第１距離と、決定された第２距離と、ＰＣＳ間の距離との和が、閾値以下となる場合に限って、当該装置は、それらがあるレベルにおいて通信すること可能にするのに十分近接しているとみなされる。第１近接性チェックサーバと第２近接性チェックサーバが同一である場合（請求項３に記載されるように）、第１近接性チェックサーバと第２近接性チェックサーバとの間の距離はゼロとされる。
【００１６】
従属クレーム５は、本発明の実施例を記載している。このケースでは、距離の和の代わりに、各距離が各自の所定の閾値以下であるべきである。これらの閾値は、装置が互いに通信することが可能とされる近接性チェックサーバの周囲のターゲットエリアを決定する。好ましくは、最適なプロテクションのため、近接性チェックサーバは、装置がコンテンツを交換することが可能とされている地理的エリア（又はエリアの一部）の中心近傍に配置される。ターゲットエリアは、衛星到達可能範囲又は特定の司法管轄にマッチするよう構成される制限されたエリアとすることが可能である。
【００１７】
本発明の効果的な実施例が、請求項６に記載されている。複数の近接性チェックサーバが、測定精度を向上させるのに利用可能である。まず、最も近くにある近接性チェックサーバと装置との距離を測定することが可能であり、より正確な測定が可能となる。さらに、これは、装置間の通信がシンプルな円と異なる形状を有することが可能とされるエリアを可能にする。より多くのサーバが追加されるに従って、ターゲットエリアの形状をより複雑にすることが可能である。異なる近接性チェックサーバが第１装置及び第２装置との距離を測定するのに利用される場合、合計の距離は各近接性チェックサーバとの間の（既知の）距離だけ増大される。
【００１８】
次に、追加的な近接性チェックサーバを利用して、各近接性チェックサーバと距離が測定される同一の装置との間の複数の距離測定を実行することによって、第１装置又は第２装置の位置をより正確に決定することが可能であり、これにより、より正確に装置の位置を決定することが可能である。
【００１９】
本発明の効果的な実施例が、請求項７に記載されている。近接性チェックサーバが、例えば、無線ネットワークアクセスポイント、電話スイッチポイント又はケーブル分配ステーションなどに配置されている場合、本方法は、特定のユーザセット（特定の近所や町など）がターゲットエリアの一部となるように、近接性チェックサーバの位置を選択することを可能にする。
【００２０】
本発明の効果的な実施例が、請求項８に記載されている。ラウンド・トリップ・タイム測定と認証プロトコルを統合することによって、近接性チェックサーバになりすますことはより困難になり、第１装置は、ＰＣＳが近接性測定を実行するための認証を有することを確信することができる。第１装置は、ＰＣＳの一意的な識別子への認証されたアクセスを行うことができる。
【００２１】
従属クレーム９は、本発明の方法の他の実施例を記載している。当該実施例によると、近接性チェックサーバは、近接性証明サーバとして機能し、測定された各距離に対して第１近接性証明書を生成する。近接性証明書は、特定の装置とＰＣＳとの間の距離又はラウンド・トリップ・タイムに関する情報と、メッセージが真正であり、改ざんされていないことを決定するのに利用可能な暗号署名とを含むデータ構造である。この暗号署名は、例えば、対称暗号化又は公開鍵暗号化を利用することが可能である。
【００２２】
従属クレーム１０は、本発明による方法のさらなる実現形態を記載している。当該実現形態では、各装置は、近接性チェックサーバから各自の近接性証明書を抽出し、その後、各装置はこれらの近接性証明書を交換することが可能である。これらの近接性証明書から抽出された距離に関する所定のルールを適用することによって、各装置の間の許可された通信レベルが取得可能となる。これは、対称的に（双方の装置において）、又は１つの装置によってのみ実行することが可能である（好ましくは、コンテンツのプロテクションを保護するのに最も関心のある装置）。本実施例では、ＰＣＳは、要求に応じて距離測定を実行しさえすればよく、このため、ＰＣＳは容易かつ低コストにより実現できる。
【００２３】
従属クレーム１１は、本発明による方法のさらなる実施例を記載している。当該実現形態では、第２装置が、近接性チェックサーバから双方の近接性証明書を抽出する。これらの近接性証明書から抽出された距離に対する所定のルールを適用することによって、各装置の間の許容される通信レベルが取得可能である。
【００２４】
装置が近接性証明書を要求した後、近接性証明書を送信するのは近接性チェックサーバ次第である。近接性チェックサーバは、すでにローカルに利用可能な近接性チェックを送信可能であるか、又は例えば、当該リクエストが明示的又は暗黙的に新たな証明書を要求しているか否かに応じて、又は近接性証明書が最近生成されたものであるか否かに応じて、新たな近接性証明書を生成することができる。
【００２５】
従属クレーム１２は、本発明による方法の効果的な実施例を記載している。近接性証明書が依然として有効な意味を有することを確認するため、距離測定の時間が近接性証明書に含まれる。
【００２６】
従属クレーム１３は、本発明による方法の効果的な実施例を記載している。当該実施例では、第１装置は、近接性証明書リクエストに乱数を挿入し、その後、近接性チェックサーバは、近接性証明書陸エスの乱数を有する近接性証明書を署名する。この近接性証明書の乱数は、近接性証明書がリクエストがされた後に生成されたか第１装置が検証することを可能にする。
【００２７】
従属クレーム１４は、本発明による方法の実施例を記載している。当該実施例によると、近接性チェックサーバは、距離証明サーバとして機能し、第１装置と第２装置との間の距離に対して距離証明書を生成する。距離証明書は、２つの特定装置の間の距離に関する情報と、メッセージが真正であり、改ざんされていないことを決定するのに利用可能な暗号署名とを有するデータ構造である。この暗号署名は、例えば、対称暗号化又は公開鍵暗号化を利用することが可能である。決定された第１距離及び第２距離は、当該装置間の距離を計算するため、近接性チェックサーバによって利用される。この証明書は、他方の装置が十分近接しているか検証するため、２つの装置の何れか又は双方によって抽出可能である。
【００２８】
従属クレーム１５は、本発明による方法のさらなる実施例を記載している。当該実現形態では、第１装置又は第２装置若しくはその両方が、近接性チェックサーバから第１装置と第２装置との間の距離に対する距離証明書を要求する。距離証明書が近接性チェックサーバにおいてすでに利用可能でなくなっている場合、又はそれがもはや有効でない場合、近接性チェックサーバは必要な測定を実行し、距離証明書を生成する、その後、当該距離証明書は、要求元の装置によって抽出することが可能となる。その後、当該距離は、第１装置と第２装置との間の通信が許容される範囲を決定するため、所定の閾値と比較することが可能である。
【００２９】
従属クレーム１６は、本発明による方法のさらなる実施例を記載している。当該実現形態では、第１装置又は第２装置（若しくはその両方）が、近接性チェックサーバに第１装置と第２装置との間の距離を検証するよう要求する。これは、これらの装置が当該装置間の正確な距離について限られた知識しか有しないという効果を有する。それらは、許容された範囲内にいるかしか知らない。この回答は、当該距離が所定の閾値以下であるか否かしか指定しない距離証明書としてみなすことが可能である。
【００３０】
従属クレーム１７は、本発明による方法の効果的な実施例を記載している。距離証明書が依然として有効な意味を有することを確認するため、距離証明書の時間が距離証明書に含まれる。
【００３１】
従属クレーム１８は、本発明による方法の効果的な実施例を記載している。当該実施例では、第１装置は、距離証明書リクエストに乱数を挿入し、その後、近接性チェックサーバは、距離証明書リクエストの乱数を有する距離証明書を署名する。距離証明書のこの乱数は、距離証明書が当該リクエストがされた後に生成されたものであるか否か第１装置が検証することを可能にする。
【００３２】
本発明による近接性チェックサーバの効果的な実現形態が、請求項１９に記載されている。当該実現形態によると、無線通信の到達範囲内のローカル装置のみが（又はこのようなローカル装置に直接接続される装置）、近接性証明書又は距離証明書を取得することが可能となるように、限定された到達範囲を有する無線通信リンクが近接性チェックサーバにより利用される。近接性チェックを強化するため、ラウンド・トリップ・タイム測定などの異なる距離測定がまた実行されることが好ましい。
【００３３】
本発明のさらなる実施例が、請求項２０に記載されている。当該実施例では、近接性チェックサーバは、各装置間のセキュアな接続の確立に参入し、これは、各装置と近接性チェックサーバとの距離が測定された後になって始めて、そして予想距離が所定のルールを充足していることが近接性チェックサーバによって決定された場合に限って実行される。
【００３４】
本発明のさらなる課題は、オープンプラットフォーム上で実行されるアプリケーションが、当該アプリケーションを実行する通信装置間の許容される通信レベルを決定するため、２つの装置間の相対距離及び／又はそれらの位置に関する情報を確実に生成することを可能にする近接性チェックサーバを提供することである。
【００３５】
上記さらなる課題は、第１装置と第２装置値の間の許容される通信レベルの決定を可能にする近接性チェックサーバであって、前記第１装置と前記第２装置との少なくとも１つとの通信プロトコル（２００）中にメッセージを送信するよう構成される送信手段と、前記通信プロトコル中にメッセージを受信するよう構成される受信手段と、前記通信プロトコルを実行するよう構成される改ざん耐性処理手段と、前記通信プロトコルの実行中に距離を測定するよう構成される改ざん耐性測定手段と、距離証明書と近接性証明書との少なくとも１つを生成するようさらに構成される改ざん耐性処理手段と、前記距離証明書と前記近接性証明書との少なくとも１つを暗号的に署名するよう構成される改ざん耐性署名手段とを有する近接性チェックサーバによって実現される。
【００３６】
本発明による処理手段は、当該距離が測定される第１装置と第２装置との距離を推定し、その後、距離証明書を生成及び署名する手段を有するか、又は処理手段は、第１装置との距離を推定し、その後、近接性証明書を生成及び署名する手段を有する。
【００３７】
本発明による近接性チェックサーバの効果的な実現形態が、請求項２２に記載されている。当該実現形態によると、近接性チェックサーバはさらに、ラウンド・トリップ・タイムを距離推定値に変換する手段を有する。
【００３８】
本発明による近接性チェックサーバの効果的な実現形態が、請求項２３に記載されている。当該実現形態によると、近接性チェックサーバは、例えば、ネットワークルータ又はネットワークインタフェースモジュールとすることが可能なネットワーク装置に一体化される。
【００３９】
本発明による近接性チェックサーバの効果的な実現形態が、請求項２４に記載されている。当該実現形態によると、近接性チェックサーバは、ＵＳＢ、ＲＳ２３２、パラレルポート、Ｂｌｕｅｔｏｏｔｈ、８０２．１１、ＩＲＤＡなどの一般的なインタフェースを利用してシステムに接続可能なドングルとして一般的に知られている改ざん耐性モジュールに実現される。
【００４０】
本発明はさらに、ネットワークに接続される改ざん耐性近接性チェックサーバを有するシステムであって、前記近接性チェックサーバは、上記方法を利用して、前記第１装置と前記第２装置との距離を検証するよう構成される本発明によるシステムにより特徴付けされる。
【００４１】
本発明によるシステムのさらなる実現形態は、請求項２６に記載されている。第１装置又は第２装置（若しくはその両方）は、標準的なオペレーティングシステムを実行するコンピュータなどのオープンシステム上で実行されるソフトウェア実現形態とすることが可能である。
【００４２】
本発明はさらに、請求項２７〜３０記載のコンピュータプログラムにより特徴付けされる。
【発明を実施するための最良の形態】
【００４３】
図１は、第１装置（装置Ａ）１０１と第２装置（装置Ｂ）１０２との間のタイムライン１００に沿った最新のセキュア認証チャネル（ＳＡＣ）プロトコルを示す。装置Ａと装置Ｂはそれぞれ、これらの装置のアイデンティティＩＤＸと公開鍵Ｋｐｕｂ，Ｘを鍵保証センター（ＫＩＣ）署名を介し保証する装置証明書ＣｅｒｔＸ（Ｘ＝Ａ，Ｂ）を有する。さらに、これらの装置はそれぞれ、各自の証明された公開鍵に係る秘密鍵を有する。ステップ１１１と１１２において、これらの装置は、各自の証明書と乱数を交換する。一例となる実現形態では、装置Ａは、ステップ１１１において装置Ｂに証明書ＣｅｒｔＡ＝ｓｉｇｎＫＩＣ（ＩＤＡ‖Ｋｐｕｂ，Ａ）と乱数ＲＡとを通信する。同様に、装置Ｂは、ステップ１１２において、装置Ａに証明書ＣｅｒｔＢ＝ｓｉｇｎＫＩＣ（ＩＤＢ‖Ｋｐｕｂ，Ｂ）と乱数ＲＢとを通信する。通信ステップ１１１と１１２は、任意の順序で行われてもよく、又は重複して行われてもよい。証明書の署名の検証後、装置はステップ１１３及び１１４においてレスポンスを交換する（それはまた、任意の順序又は重複して実行されてもよい）。装置Ａは、ステップ１１３において、装置ＢにレスポンスｓｉｇｎＡ（ＲＢ‖Ｋｐｕｂ，Ｂ（ＫＡ））を通信する。ここで、ＫＡは装置Ａからのセッションキーの貢献（ｃｏｎｔｒｉｂｕｔｉｏｎ）である。当該レスポンスＫｐｕｂ，Ｂ（ＫＡ）において、ＫＡは装置Ｂの公開鍵により暗号化される。ステップ１１４では、同様の通信が装置Ｂから装置Ａに逆方向に行われる。その後、双方の装置は、署名及びレスポンスを検証し、キーの貢献ＫＡ及びＫＢからＳＡＣキーを計算する。
【００４４】
図２において、本発明の第１実施例が示される。各種装置がネットワーク環境２００内で通信している。本実施例では、信頼されたアプリケーション２０６が第１装置（装置Ａ）２０１上で実行され、第２装置（装置Ｂ）２０２とのＳＡＣを確立することを目的とする。装置Ａと装置Ｂは、送信手段２２１／２４１と、受信手段２２２／２４２と、処理手段２２３／２４３などを有する。あるタイプのサービス検出プロトコルが装置ＡとＢを接続し、そのうちの何れかがイニシエータ（ｉｎｉｔｉａｔｏｒ）として動作するかもしれない。装置Ｂとの通信チャネルを確立する前に、装置Ａ上の信頼されたアプリケーションは、それがコンテンツの共有などの特定のアクションを実行しようと決定する前に、それが同じホームネットワークに属していることを保証するため、装置Ｂが装置Ａから所定の最大距離の範囲内にいるか検証することを所望する。
【００４５】
信頼されたアプリケーションがオープンアーキテクチャを有する装置上で実行されている場合、それは自らのシステムクロックを利用して、当該距離を高い信頼性により決定することはできない。その代わりに、当該距離を高い信頼性により決定するため、改ざん耐性近接性チェックサーバ（ＰＣＳ）２０３が、ＰＣＳと各装置Ａ及びＢとの間の２つのラウンド・トリップ・タイムの測定を実行するのに利用される。装置Ａと装置Ｂとの間の距離は、当該測定を利用して推定される。
【００４６】
ＰＣＳ２０３は、送信手段２１１と、受信手段２１２と、処理手段２１３と、改ざん耐性測定手段２１４と、推定手段２１５と、署名手段２１６とを有する。コンピュータプログラムプロダクト２０７及び２０８が、ロードされると、装置２０２と２０３のプログラム可能装置にそれぞれ本発明による方法を実現するのに必要な各ステップを実行させる命令を搬送するようにしてもよい。
【００４７】
本発明による方法によりプロテクトされるべきコンテンツは、音声又は映像コンテンツとすることができるが、またユーザプロファイル、テキスト文書、ウェブカム画像（例えば、玄関の近傍又は自宅環境内など）、インテリジェントホームモニタリング及びコントロールサービスなどの他のタイプのコンテンツにも適用可能である。
【００４８】
プロトコルに関与するすべてのエンティティ、すなわち、装置Ａ及びＢとＯＣＳは、ＲＳＡ公開鍵暗号システムを効果的に利用するかもしれない。すべての署名が、ＩＳＯ／ＩＥＣ９７９６−２：１９９７（Ｅ）に従ってメッセージリカバリを与え、生成されるかもしれない。公開鍵暗号化は、ＰＫＣＳ＃１バージョン２．１セクション７．２に従って実行されるかもしれない。暗号化はまた、ＰＫＣＳ＃１バージョン２．１セクション７．１（ＲＳＡＥＳ−ＯＡＥＰ）に従って実行することができる。プロトコルの認証及び鍵交換部分は、ＩＳＯ／ＩＥＣ１１７７０−３：１９９９（Ｅ）セクション７．６に従うかもしれない。
【００４９】
ＰＵＦ（Ｐｈｙｓｉｃａｌ  Ｕｎｃｌｏｎｅａｂｌｅ  Ｆｕｎｃｔｉｏｎ）を実現することによって、装置ＡとＢがＰＣＳの完全性と真正性を検証することを可能にするため、ＰＣＳをさらにプロテクトすることが可能である。ＰＵＦは、当該機能が容易に評価し、物理システムが特性化することが困難となるように、物理システム２２９／２４９により実現される機能である。
【００５０】
好ましくは、装置Ａ及びＢは、それらのＲＡＩ（Ｒｅｖｏｃａｔｉｏｎ＆Ａｕｔｈｏｒｉｚａｔｉｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ）が最新のものであることを保証する（例えば、ＲＡＩを互いに同期させることによって、又はネットワーク上の他のサービスによって）。ＲＡＩは、装置及びＰＣＳを識別子、セキュアリンクに参入するため認証され、失効された装置を特定するデータ構造（リストなど）である。失効及び認証リストは、光ディスクなどの物理的な配布媒体を介し、（公開された）配信によって、及び他の手段によって装置Ａと装置Ｂに配布可能である。さらに、２つの通信装置は、各自のＲＡＩを交換してもよい。装置Ａと装置Ｂの双方は、好ましくは、さらなる通信を受け付ける前にＲＡＩに対して各証明書をチェックする。ＰＣＳは、好ましくは、コストを低く抑えるため、当該プロセスには関与しない。
【００５１】
実験結果（図３に示される）は、ホームネットワーク内の各装置に対するラウンド・トリップ・タイムと、同一のホームネットワーク内に双方が存在しない各装置間のラウンド・トリップ・タイムを区別する閾値３０１が存在することを示している。
【００５２】
ラウンド・トリップ・タイムは、送信の物理的長さと、接続における中間ホップ及びルータの個数とを含むいくつかのファクタにより決定される。
【００５３】
短距離の接続については、ホップとルータが、ラウンド・トリップ・タイムに対して貢献する主要なファクタであり、ラウンド・トリップ・タイムは、接続の長さに対する良好な推定値を構成する。
【００５４】
ＰＣＳと第１装置との間の距離が増大すると、ネットワーク要素（ルータ、モデム、ネットワークインタフェース、ハブ、スイッチなど）の個数と送信リンクの長さもまた増大する。これらの効果は、ラウンド・トリップ・タイムを増大させる。一例として、図３は、ローカルネットワーク内のリンクと、ローカルネットワークのノードからローカルネットワーク外のノードへのリンクとを明確に区別するのに利用することが可能である。
【００５５】
短距離接続に対して測定されるラウンド・トリップ・タイムは、主としてルータの遅延によるものであるが、それにもかかわらず、宅内接続と宅外接続とを区別する手段としてラウンド・トリップ・タイムを利用することが可能である。実験は、ローカルネットワークの遅延が、ルータステップ毎に約０．１ｍｓである一方、外部ネットワークとのＷＡＮリンクが少なくとも１０ｍｓの遅延をもたらすことを証明した。ローカルＷｉＦｉリンクでさえ、約３ｍｓの遅延しか追加しない。従って、ネットワーク内の通信の遅延とローカルネットワーク外の装置との通信の遅延との間には明確な相違が存在する。ホームネットワークが高いネットワークロードを有する場合に限って、ホームネットワーク内の装置の間のラウンド・トリップ・タイムは、閾値を超えて増大するかもしれない。従って、高いネットワークロードの場合、検証は失敗する可能性があるが、この場合には、コンテンツの共有は可能でないかもしれず、又は望ましくないかもしれない。
【００５６】
図４Ａは、ラウンド・トリップ・タイム測定を有するＳＡＣプロトコルの第１実施例を示す。装置Ａ２０１及び装置Ｂ２０２とＰＣＳ２０３はそれぞれ、装置のアイデンティティＩＤＸと公開鍵Ｋｐｕｂ，Ｘを鍵発行センター（ＫＩＣ）の署名を介し保証する装置証明書ＣｅｒｔＸ（Ｘ＝Ａ，Ｂ，ＰＣＳ）を有する。さらに、各装置は、各自の公開鍵に係る秘密鍵を有する。第１実施例では、公開鍵暗号化のみが利用される。
【００５７】
タイムライン４００は、上記装置の間の通信を示す。装置Ａは、おそらくそれのＲＡＩの利用を介してＰＣＳを選択し、セキュアリンク確立プロトコルを開始する。このため、装置Ａは通信ステップ４０１において、それの装置証明書ＣｅｒｔＡとそれの選択のＰＣＳのアイデンティティＩＤＰＣＳを装置Ｂに送信する。当該証明書は、ＣｅｒｔＡ＝ｓｉｇｎＫＩＣ（ＩＤＡ‖Ｋｐｕｂ，Ａ‖．．．）と同様であるかもしれない。これに応答して、装置Ｂは、ステップ４０２において自らの証明書を送信し、好ましくは、ＰＣＳアイデンティティを確認する。
【００５８】
装置Ａと装置Ｂの何れもが、受信した証明書が有効なＫＩＣ署名を有していることを検証する。何れかの署名が偽のものである場合、Ａ及び／又はＢはプロトコルを中断することを決定するかもしれない。さらに、Ａは、Ｂがセキュアリンクに参入するのに認証されることを保証するかもしれない。このため、ＡはそれのＲＡＩを利用して、Ｂが認証されていることを検証する。Ｂが認証されていない場合、Ａはプロトコルを中断する。
【００５９】
ラウンド・トリップ・タイム（ＲＴＴ）測定プロトコルを開始するため、装置Ａは通信ステップ４１１において、自らの身元をＰＣＳに明らかにするため、それの証明書ＣｅｒｔＡを送信する。当該通信は、好ましくは、乱数ＮＡ（ナンス（ｎｏｎｃｅ））を有し、任意的には、特定されたＰＣＳに対する測定値の要求された個数ＭＡの測定値を有する。ナンスは、近接性証明書の測定結果の新しさの検証を可能にする。
【００６０】
その後、ＰＣＳは、受信した証明書が有効なＫＩＣ署名を有していることを検証し、これにより、装置Ａのアイデンティティを信用することができる。当該署名が偽である場合、ＰＣＳはプロトコルを中止する。ＲＴＴ測定を準備するため、ＰＣＳは通信ステップ４１２において、Ｋｐｕｂ，Ａ（Ｒ１‖Ｒ２）などのＡの公開鍵を利用して暗号化される乱数ペアＲ１とＲ２により応答する。これにより、ＰＣＳは、Ａのみがこれらの数を取得することができることを保証する（従って、Ａのアイデンティティの信頼）。Ｒ１及びＲ２は、ＲＴＴ測定を開始及び終了するのに利用される。
【００６１】
装置Ａは、通信ステップ４１３においてメッセージを解読し、Ｒ１を返し、その後、ＰＣＳはステップ４１４において、第３の乱数Ｒ３を返す。Ｒ３を受信すると、装置Ａは通信ステップ４１５において、ＰＣＳと即座に
（外１）
2008514085.tif 000003
を通信する。ＰＣＳは、乱数Ｒ３の送信と結果
（外２）
2008514085.tif 000004
の受信との間の時間を、ラウンド・トリップ・タイムの推定値として測定する。
【００６２】
通信ステップ４１２〜４１５は、任意的には複数のラウンド・トリップ・タイム測定を実行するため繰り返すことが可能であり、それから、最小、平均及び最大ラウンド・トリップ・タイム測定値と共に、失敗した測定回数を計算することが可能である。繰り返し回数は、予め決定されていてもよく、又はステップ４１１において通信されてもよい。
【００６３】
返された値が実際に
（外３）
2008514085.tif 000005
の予想値であるとＰＣＳが検証した後、ラウンド・トリップ・タイム測定値に関する情報を有するＲＴＴＡ情報を生成する。このため、ラウンド・トリップ・タイム測定値ＲＴＴＡに関する情報は、１つのラウンド・トリップ・タイム測定に関する情報を有するが、それはまた、最小、平均及び最大ラウンド・トリップ・タイムと、任意的に失敗した測定回数を有してもよい（複数のラウンド・トリップ・タイム測定がされた場合）。
【００６４】
情報ＲＴＴＡは、実際の測定された距離を有してもよいが、その代わりに、当該距離が所定の閾値以下であるか、又は装置Ａにより設定され、例えば通信ステップ４１１においてＰＣＳに通信された閾値以下であるかに関する質問の回答を有することも可能である。これら２つのケースでは、閾値は好ましくは、近接性証明書の一部であるべきである。
【００６５】
その後、ＰＣＳは、装置ＡのアイデンティティＩＤＡと、ラウンド・トリップ・タイム測定に関する情報ＲＴＴＡとを有する署名された近接性証明書ＰＣｅｒｔＡ＝ｓｉｇｎＰＣＳ（ＮＡ‖ＩＤＡ‖ＲＴＴＡ）を生成する。当該証明書はまた、好ましくは、通信ステップ４１１において含まれていた場合には、ナンスＮＡを有する。近接性証明書は、ＰＣＳによってそれの秘密鍵により署名され、その後、署名された近接性証明書は、ＰＣＳと装置Ａとの間のラウンド・トリップ・タイムの証明として、ステップ４１６において装置Ａに通信される。好ましくは、ＰＣＳの装置証明書自体もまた、装置Ａに通信される。この装置証明書は、装置ＡがＰＣＳ証明書の署名を検証し、その後、近接性証明書のチェックサーバ署名を検証することを可能にする。
【００６６】
このプロトコルの効果は、ＰＣＳが各測定の対する１つの公開鍵処理に加えて、高々１つの秘密鍵処理しか実行する必要がないということである。これは、ＰＣＳを可能な限り安価に維持する。
【００６７】
当該プロトコルの変形では、通信ステップ４１２は繰り返される測定においては実行されず、その代わりに、第１通信ステップ４１２が乱数生成装置のシードを送信する（通信ステップ４１２のそれぞれにおける各乱数の代わりに）。
【００６８】
同じラウンド・トリップ・タイム測定プロトコルを利用して、装置Ｂはまた、装置ＢとＰＣＳとの間の距離に対する近接性証明書を取得することが可能である。これはステップ４１２〜４２６に示されている。近接性証明書抽出プロトコル４２１〜４２６は、プロトコルステップ４１１〜４１６の前後又はその間に実行されてもよい。近接性証明書の抽出は、ＳＡＣプロトコルの開始４０１〜４０２の後の要求により、又は定期的な間隔による近接性証明書を要求するスタンドアローンプロセスの一部として実行することが可能である。
【００６９】
装置Ａと装置Ｂの何れもが各自の近接性証明書を取得すると、それらは認証鍵交換プロトコルを継続することができる。（任意的には、プロトコルは、ステップ４１１〜４１６／４２１〜４２６の前でなく後に、ステップ４０１〜４０２が実行される場合に開始される。）このため、装置Ａは、ステップ４０３において、好ましくは、ＩＳＯ／ＩＥＣ１１７７０−３に従ってフォーマットされたメッセージを装置Ｂに送信する。必須フィールドに加えて（アイデンティティＩＤＡ、キー貢献ＫＡ及びナンスＮ１）、Ａは、それがＲＴＴ測定に対して使用したＰＣＳのアイデンティティＩＤＰＣＳ、新しい近接性証明書に含まれるラウンド・トリップ・タイムＲＴＴＡ、及びそれが装置Ｂの証明書を検証するのに使用した失効認証情報の識別情報ＲＡＩＡ（生成又はバージョン番号など）を有する。装置Ｂは、ステップ４０４において同様のメッセージより応答し、装置Ａはステップ４０５において、ナンスＮ２を装置Ｂに返す。
【００７０】
その後、何れも装置も受信したメッセージのフォーマットを検証し、何か誤りがあればプロトコルを中断する。さらに、装置Ａは、ＲＴＴ測定を実行するため、装置Ｂが装置Ａと同じＰＣＳを利用したことを保証するかもしれない。何か誤りがあれば、何れかの装置がプロトコルを中断するかもしれない。最後に、装置Ａ（及び／又は装置Ｂ）は、ＲＴＴＡ及びＲＴＴＢの組み合わせが、各々が所定の閾値以下である、又は合計が所定の閾値以下であるなどのいくつかの基準に従うことを検証する。当該ケースに該当しない場合には、装置Ａ（及び／又は装置Ｂ）は、Ｂとの距離が大きすぎると判断し、プロトコルを中断する。ソースリンクが確立されると、ＫＡとＫＢの何れかの組み合わせが、セッションキーを構成するのに利用されるかもしれない（例えば、ＫＡのみを利用して、又は双方のハッシュを利用して）。
【００７１】
当該実施例の変形では、近接性チェックサーバは、近接性チェックサーバの到達範囲内の互換性のある通信装置（２６２）を有するローカル装置（又は当該ローカル装置に接続される装置）のみが、近接性証明書又は距離証明書を取得することが可能である。近接性チェックを強化するため、ラウンド・トリップ・タイムなどの異なる距離測定方法がまた実行されることが好ましい。
【００７２】
図４Ｂを利用して、ラウンド・トリップ・タイム測定を有するＳＡＣプロトコルの第２実施例が示される。本実施例では、簡単化されたラウンド・トリップ・タイム測定がステップ４６１〜４６４（それぞれ４７１〜４７４）において実行され、プロトコルの残りは第１実施例と同様である。
【００７３】
ステップ４６１は、もとのステップ４１１に等しい。ラウンド・トリップ・タイム（ＲＴＴ）測定プロトコルを開始するため、装置Ａは、通信ステップ４６１において、ＰＣＳに対して自らの身元を明らかにするため、それの証明書ＣｅｒｔＡを送信する。この通信は、好ましくは、乱数ＮＡ（ナンス）と、任意的には、特定されたＰＣＳに対する要求された個数ＭＡの測定値を有する。当該ナンスは、近接性証明書の測定結果の新しさの検証を可能にする。
【００７４】
その後、ＰＣＳは、それが装置Ａのアイデンティティを信頼することができるように、受信した証明書が有効なＫＩＣ署名を有することを検証する。当該署名が偽である場合、ＰＣＳはプロトコルを中断する。ＲＴＴ測定を実行するため、ＰＣＳは通信ステップ４６２において、乱数Ｒ１により応答する。Ｒ１を受信すると、装置Ａは、通信ステップ４６３において乱数を署名し、それを返す。通信ステップ４６２〜４６３は、任意的には、複数のラウンド・トリップ・タイム測定を実行するため繰り返すことが可能であり、それから、最小、平均及び最大ラウンド・トリップ・タイム測定値などと共に、失敗した測定回数を計算することができる。繰り返し回数は、予め決定されていてもよく、ステップ４６１において通信されていてもよい。
【００７５】
測定実行後、ＰＣＳは、装置ＡのアイデンティティＩＤＡと、ラウンド・トリップ・タイム測定値に関する情報ＲＴＴＡとを有する署名された近接性証明書ＰＣｅｒｔＡ＝ｓｉｇｎＰＣＳ（ＮＡ‖ＩＤＡ‖ＲＴＴＡ）を生成する。当該証明書はまた、好ましくは、通信ステップ４６１において含まれていた場合には、ナンスＮＡを有する。近接性証明書は、それの秘密鍵によりＰＣＳによって署名され、その後、署名された近接性証明書が、ステップ４６４において、ＰＣＳと装置Ａとの間のラウンド・トリップ・タイムの証明として装置Ａに通信される。好ましくは、ＰＣＳの装置証明書自体がまた、装置Ａに通信される。
【００７６】
当該プロトコルの残りは、第１実施例に記載されるものと同様である。
【００７７】
図５は、ラウンド・トリップ・タイム測定を有するＳＡＣプロトコルの第３実施例を示す。第３実施例では、公開鍵暗号化が装置Ａ及びＢにより使用され、ＰＣＳは対称暗号化しか使用しない。プロトコルは、ステップ５１１〜５１８（及び５２１〜５２８）と置換されるステップ４１１〜４１６（及び４２１〜４２６）を除き、また追加的なステップ５０５〜５０８の必要を除き、上述したものと同様である。
【００７８】
ラウンド・トリップ・タイム（ＲＴＴ）測定プロトコルを開始するため、装置Ａは通信ステップ５１１において、ナンスＮ１と、任意的には、要求された個数ＭＡの測定値とを特定されたＰＣＳに送信する。その後、ＰＣＳはステップ５１２において、識別情報ＩＤＰＣＳを返す。装置Ａは、ＩＤＰＣＳを利用してＰＣＳと共有する鍵Ｋｒｏｏｔに対するそれのキーブロックを検索する。装置Ａは、各種鍵を各種ＰＣＳと共有するかもしれない。このため、ＰＣＳは、各種鍵を各種装置と共有するかもしれない。ステップ５１３において、装置Ａは、ルート鍵を用いて暗号化されたそれの識別情報ＩＤＡと、ＰＣＳの第ｊ装置鍵ＫＰＣＳ，ｊにより暗号化されたルート鍵自体を有するＫｒｏｏｔ（ＩＤＡ）‖ｊ‖ＫＰＣＳ，ｊ（Ｋｒｏｏｔ）を返す。Ｋｒｏｏｔ（ＩＤＡ）は、それが正しいＩＤＡを受信したことを決定するため、ＰＣＳに対して十分な冗長性を有することが仮定される。例えば、ＩＤＡの４０ビットなどが、暗号化アルゴリズムのブロックサイズを完成させるため、既知の値によって補充される。ステップ５１４において、ＰＣＳは、ルート鍵Ｋｒｏｏｔ（Ｒ１‖Ｒ２）を利用して暗号化された２つの乱数を返す。その後、装置Ａは、解読後にステップ５１５において、ラウンド・トリップ・タイム測定の準備ができたことを通知するため、第１乱数Ｒ１を返す。ＰＣＳは、ステップ５１６において第３乱数Ｒ３を送信し、ラウンド・トリップ・タイム測定のためのタイマーをスタートする。装置Ａは、受信後即座に、ステップ５１７においてＲ２とＲ３の排他的論理和を返す。ＰＣＳは、ラウンド・トリップ・タイム測定を終了させるため、タイマーをストップし、当該結果が予想とおりであることを検証する。ステップ５１４〜５１７は、ラウンド・トリップ・タイムに関する統計量を収集するため繰り返されてもよい。ステップ５１８において、ＰＣＳは、ルート鍵を用いてすべてが暗号化されたナンスＮ１、測定されたラウンド・トリップ・タイムに関する情報ＲＴＴＡ及び近接性証明書ＰＣｅｒｔＡを返す。ナンスＮ１を含めることにより（当該通信に含められ、ルート鍵により暗号化され、任意的に近接性証明書に含められる）、Ｎ１によるタンパリングが近接性証明書を破壊するように暗号化フォーマットが選択されるため、近接性証明書の新しさを保証する。近接性証明書ＰＣｅｒｔＡ＝ＫＰＣＳ（Ｎ１‖ＩＤＰＣＳ‖ＩＤＡ‖ＲＴＴＡ）は、ＰＣＳのアイデンティティＩＤＰＣＳ、装置ＡのアイデンティティＩＤＡ及び測定されたラウンド・トリップ・タイムＲＴＴＡに関する情報を含む。近接性証明書は、ＰＣＳに一意的な鍵を用いて暗号化される。
【００７９】
ステップ５２１〜５２８において、装置ＢとＰＣＳとの間の同様のプロトコルが実行される。
【００８０】
装置Ａと装置Ｂの双方が各自の近接性証明書を取得すると、それらは認証鍵交換プロトコルを開始又は継続することができる。装置Ａは、ステップ５０３において、好ましくはＩＳＯ／ＩＥＣ１１７７０−３規格に従ってフォーマット化され、アイデンティティＩＤＢ、新たなナンスＮＢ、共にＢの公開鍵により暗号化されたアイデンティティＩＤＡ及び鍵貢献ＫＡ、装置Ｂのアイデンティティ証明書及び任意的にＲＡＩを有するメッセージを装置Ｂに送信する。装置Ｂは、ステップ５０４において同様のメッセージにより応答する。
【００８１】
近接性証明書は、受信装置が鍵を有していないＰＣＳによって対称暗号化により暗号化されるため、装置Ａは、ステップ５０５において、ナンスＮ３と共に装置Ｂに対する近接性証明書を通信する。ＰＣＳは、それが近接性証明書を生成したものであることを検証し、ステップ５０６において、装置Ａが当該情報を解読及び検証可能となるように、すべてが適用可能なルート鍵を用いて暗号化されたナンスＮ３と共に、当該情報からの関連する情報を返す。
【００８２】
その後、両方の装置が受信したメッセージのフォーマットを検証し、何か誤りがあれば、プロトコルを中断する。さらに、装置Ａは、装置Ｂがそれが使用したものと同一のＰＣＳを利用して、ＲＴＴ測定を実行したことを保証するかもしれない。何か誤りがあれば、何れかの装置がプロトコルを中断するかもしれない。最終的に、装置Ａ（及び／又は装置Ｂ）が、ＲＴＴＡ及びＲＴＴＢにおける情報の組み合わせが、各々が所定の閾値以下である、又は合計が所定の閾値以下であるなどの基準に従っていることを検証する。そうでない場合、装置Ｂ（及び／又は装置Ｂ）は、Ｂとの距離が大きすぎると判断し、プロトコルを中断する。セキュアリンクが確立されると、ＫＡ及びＫＢの何れかの組み合わせが、セッション鍵を構成するのに利用可能である（ＫＡのみを利用して、又は両方のハッシュを利用してなど）。
【００８３】
図６は、異なる２つのＰＣＳによるラウンド・トリップ・タイム測定を有するＳＡＣプロトコルの第４実施例を示す。この図は第１実施例と同様に、同一のプロトコルが使用されていることを示しているが、その他のプロトコルもまた利用可能である。異なる２つのＰＣＳ（ＰＣＳ１（２０３）とＰＣＳ２（２０４））が使用され、ＰＣＳ２はＰＣＳ１と同様のものであるが、異なる位置に配置されている。２つの異なる位置にあるこれらのＰＣＳは、当該２つの装置の位置及び／又は距離のより正確な決定を可能にする。さらに、装置Ａ及びＢによって適用されるルールは、２つのＰＣＳが、ＰＣＳの組み合わせが許可されているテーブルを有するなどによって使用されることを考慮しなければならない。
【００８４】
図７は、近接性証明書の代わりに距離証明書を生成する異なる２つのＰＣＳによるラウンド・トリップ・タイム測定を有するＳＡＣプロトコルの第５実施例を示す。本実施例では、ＰＣＳは、ＰＣＳの間の距離を決定するため、ステップ７０１〜７０３（又はラウンド・トリップ・タイム測定プロトコルのより高度なバージョンのためのさらなるステップ）においてラウンド・トリップ・タイム測定プロトコルを実行する。ＰＣＳが固定された位置にあるため、又はＰＣＳの位置が本来的に装置が位置することが許可されている地域を規定しているため（装置の間の実際の距離に関係なく）、この距離がわかっている場合、これらのステップは省略されてもよい。
【００８５】
ステップ７０４において、ＰＣＳ１は、ＰＣＳ１と装置Ａとの間の距離をＰＣＳ２に通信し、ＰＣＳ２が装置Ａと装置Ｂとの間の距離を計算することを可能にする。近接性証明書の代わりに、距離証明書がステップ４２６において返され、当該距離に関する情報を規定する（例えば、装置自体又はそれがある閾値以下であるか否かだけ）。
【００８６】
ステップ７０５は、反対方向であるが、７０４と同様に動作する。いくつかのアプリケーションでは、ステップ７０４と７０５の１つのみが実行される必要がある。
【００８７】
異なる請求項からの特徴の組み合わせを含む代替が可能である。上記説明において、「有する」という用語は他の要素又はステップを排除するものでなく、「ある」という用語は複数を排除せず、単一のプロセッサ又は他のユニットはまた、請求項に記載される複数の手段の機能を実現するかもしれない。
【図面の簡単な説明】
【００８８】
【図１】図１は、最新のＳＡＣプロトコルを示す。
【図２】図２は、本発明の第１実施例を示す。
【図３】図３は、ラウンド・トリップ・タイム測定を示す。
【図４】図４は、近接性証明書を生成するためのラウンド・トリップ・タイム測定プロトコルを有するＳＡＣ確立プロトコルの第１の例を示す。
【図５】図５は、近接性証明書を生成するためのラウンド・トリップ・タイム測定プロトコルを有するＳＡＣ確立プロトコルの第２の例を示す。
【図６】図６は、異なるＰＣＳを有するＳＡＣ確立プロトコルの一例を示す。
【図７】図７は、距離証明書を生成するＰＣＳを有するＳＡＣ確立プロトコルの一例を示す。
【図１】
2008514085.tif 000006
【図２】
2008514085.tif 000007
【図３】
2008514085.tif 000008
【図４Ａ】
2008514085.tif 000009
【図４Ｂ】
2008514085.tif 000010
【図５】
2008514085.tif 000011
【図６】
2008514085.tif 000012
【図７】
2008514085.tif 000013
【国際調査報告】
2008514085.tif 000014
2008514085.tif 000015
2008514085.tif 000016