説明

クローンデバイスを識別するために動的な信用証明を使用するシステム及び方法

【解決手段】クライアント通信デバイスとサーバとの間の安全な通信を提供するシステム及び方法。サーバは、ランダムオフセットを生成する。サーバは、ランダムオフセットを、サーバ通信デバイス動的信用証明に加えることによって、サーバ通信デバイス動的信用証明を変更する。サーバは、サーバ通信デバイス動的信用証明を格納する。サーバは、ランダムオフセットを含む信号を、ネットワークを経由して送る。サーバは、動的信用証明を含む信号を、ネットワークを経由して受信する。サーバは、サーバ通信デバイス動的信用証明と、受信した動的信用証明との間の相違を判定する。更に、サーバは、この相違に基づいて、クローン通信デバイスの存在を検出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、ネットワーク化されたデバイス間の安全な通信の維持に関する。更に詳しくは、本発明は、クローンデバイスの存在を識別するために、自動検出技術を使用し、そのようなデバイス間の安全な通信を維持することに関する。
【背景技術】
【0002】
技術の進歩は、より小型でより強力なパーソナル計算デバイスをもたらした。例えば、現在、ポータブル無線電話、携帯情報端末(PDA)、及び小型、軽量でかつユーザによって容易に携帯可能なページングデバイスのような無線計算デバイスを含む様々なポータブルパーソナル計算デバイスが存在する。更に詳しくは、例えば、ポータブル無線電話は更に、無線ネットワークを介して音声パケット及びデータパケットを通信するセル電話を含む。更に、多くのそのようなセルラ電話が、比較的多くの計算機能を増加して製造されており、これによって、小型のパーソナルコンピュータ及びハンドヘルドPDAと等しくなってきている。一般に、これらより小型で、かつより強力なパーソナル計算デバイスは、リソースが厳しく制限されている。例えば、スクリーンサイズ、利用可能なメモリ及びファイルシステムスペースの量、入出力機能及び処理機能の量は、それぞれ、デバイスの小さなサイズによって制限されているかもしれない。そのような厳しいリソース制約のために、例えば、制限されたサイズ、ソフトウェアアプリケーション、及びそのようなパーソナル計算デバイス(クライアント計算デバイス)上に存在するその他の情報の量を維持することが、一般に望ましい。
【0003】
これらパーソナル計算デバイスのうちの幾つかは、しばしばランタイム環境及びソフトウェアプラットフォームと称されるアプリケーションプログラミングインタフェース(API)を利用する。それらは、ローカルコンピュータプラットフォーム上に組み込まれ、例えば、デバイス特有のリソースに対する一般化された要求を提供することによって、そのようなデバイスの動作を単純化するために使用される。更に、幾つかのそのようなAPIはまた、そのようなデバイス上で完全に実行可能なソフトウェアアプリケーションを生成する能力を、ソフトウェア開発者に提供するとして知られている。更に、そのようなAPIは、計算デバイスシステムソフトウェアとソフトウェアアプリケーションとの間に操作上位置され、計算デバイス計算機能が、特別な計算デバイスシステムソースコードを持つことをソフトウェア開発者に対して要求することなく、ソフトウェアアプリケーションの利用が可能とされていることも知られている。更に、APIのような幾つかは、秘密信用証明を用いて、パーソナルデバイス(すなわち、クライアント)と遠隔デバイス(すなわち、サーバ)との間の安全な通信のためのメカニズムを提供するものとして知られている。
【0004】
幾つかについては後で詳述するAPIの例は、カリフォルニア州サンディエゴのQualcomm社によって開発されたBinary Runtime Environment for Wireless(BREW)(登録商標)の現在一般に利用可能なバージョンを含む。BREWは、計算デバイス(典型的には、無線セル電話)のオペレーティングシステム上に存在する薄いベニアとして説明され、パーソナル計算デバイス上で特に見られるハードウェア機能に対するインタフェースを提供する。BREWは更に、デバイスリソースに対する需要に関して、及びBREW APIを含むデバイスのために消費者によって支払われる価格に関して、比較的低コストでパーソナル計算デバイスに設けることができるという少なくとも1つの利点によって特徴付けられる。BREWに関連すると知られている他の機能は、無線サービスオペレータ、ソフトウェア開発者、及び計算デバイス使用者のために様々な利益をもたらすエンドトゥエンドソフトウェア配信プラットフォームを含む。少なくとも1つのそのような現在利用可能なエンドトゥエンドソフトウェア配信プラットフォームは、サーバクライアントアーキテクチャによって配信されるロジックを含む。ここでは、サーバが、例えば、課金、セキュリティ、及びアプリケーション配信機能を実施し、クライアントが、例えば、アプリケーション実行、セキュリティ、及びユーザインタフェース機能を実施する。
【0005】
例えばネットワークされたクライアントとサーバとの間のように、ネットワークされたデバイス間の安全な通信を提供することに関し、一般に、多くのシステムが、発信元デバイス(例えば、クライアント通信デバイス)から宛先デバイス(例えば、サーバ)への送信内に、秘密情報(例えば、1又は複数の信用証明)を部分的に含めることによって、そのような安全な通信を達成する。ここで、宛先デバイスは、この送信で送られた秘密情報の少なくとも一部を、宛先デバイスにアクセス可能な秘密情報の対応するバージョンと比較することによりこの送信を認証する。更に、そのような多くのシステムが、一般に秘密に維持されない公開暗号鍵を用いてこの秘密を暗号化する。多くのシステムにおいて、この送られた秘密情報は、単一の秘密用語のみを含んでいるが、他のシステムは、秘密情報として多くの秘密を提供しうる。
【0006】
不運にも、安全な通信を提供するために秘密情報を使用するようなシステムは、一般に、同じ秘密を提供する任意の2つのデバイスを識別することができない。そのため、そのようなシステムは、有効なクライアントデバイスの識別に使用される有効な秘密情報を提供することによって、有効なクライアントデバイスだと誤って識別させることにより、有効な他のクライアントデバイスをスプーフできる粗悪なクライアントデバイスに対して一般に脆弱である。従って、そのような粗悪なクライアントデバイスは、有効なクライアントデバイスからの通信をスヌープするか、クライアントやサーバデバイスに攻撃をかけることによって、あるいは、有効なクライアントデバイスの安全情報を取得できる他の手段によって、この秘密情報を単に一度取得すればよい。
【0007】
安全な通信を提供するシステムの一例は、ワンタイムパスワードを利用するシステムである。ここでは、例えば、クライアントデバイスは、ワンタイムパスワードが迅速に生成されるシード値がプログラムされるか、あるいは割り当てられる。そのようなワンタイムパスワードはまた、対応するサーバに提供される。これにより、このサーバは、送信内のワンタイムパスワードを、特定のクライアントデバイスに関連するワンタイムパスワードとのマッチングをとることによって、クライアントデバイスからの送信を識別することができる。そのようなシステムの少なくとも幾つかは、送信信号で送られるワンタイムパスワードを生成し、検証するために、クライアントとサーバとの両方において共通のアルゴリズムを利用する。ワンタイムパスワードスキームを利用するクライアントデバイスは、一般に、スヌーピング攻撃に対して顕著な防御を備えているが、クライアントデバイス自体が危険にさらされる場合、そのようなクライアントデバイスは、一般に、効果のないスプーフィング防御しか無い。また、一般に、サーバ自体が危険にさらされている状況では、復元機能はない。
【0008】
安全な通信を提供するシステムの他の例は、安全な通信を達成するために、短命の(暫定的な)鍵の使用を備えたチャレンジレスポンスプロトコルを使用するシステムである。そのようなシステムは、一般に、所望の安全な通信機能を達成するために、複数の往復信号を送る必要がある(すなわち、複数の信号ペアを送受信する必要がある)。複数の往復信号を用いることは、最初の往復を次の往復に関連付ける状態情報を保持するために、サーバを必要とすると知られている。複数の往復信号を用いることは、そのような複数の信号の生成、送信、受信、及び処理の固有のコストを生むという短所が生じる。別の短所は、そのような複数の往復スキームを取り扱うために、サーバにおいて状態情報を維持することに関連するコストとオーバヘッドとの全てである。他のそのようなチャレンジレスポンスプロトコルは、単一の往復信号において所望の安全な通信を達成することができるが、クライアントデバイスではなく、サーバデバイスにおいてそのようなトランザクションを開始することによって行わねばならない。
【0009】
従って、そのような既存のシステムの他の不利な局面を回避しながら、例えば、ワンタイムパスワードスキーム又はチャレンジレスポンスプロトコルの使用に関連付けられたような許可されたデバイスのクローン化又はスプーフィングを検出する能力を含む通信システムであって、ネットワーク化されたデバイスのための安全な通信システムを提供することは有利であろう。一般に、そのような既存のシステムの不利な局面は、システムで使用される比較的高価な処理要求のみならず、より具体的には、例えば、一旦パスワードが漏洩すると、復元機能を許可しないことを含むワンタイムパスワードスキームの使用に関連付けられたような問題、又は、複数の往復信号の使用、サーバ状態情報の使用、及びサーバ起動信号の使用のようなチャレンジレスポンスプロトコルスキームに関連する問題を含む。
【発明の開示】
【0010】
本明細書で開示する実施形態は、例えば、方法、ソフトウェア、及び装置が、クライアント通信デバイスとサーバとの間の安全な通信を提供するために使用される1又は複数の実施形態を含み、上述したニーズに対処する。少なくとも1つの実施形態は、ランダムオフセットを生成することを含んでいる。そのような実施形態はまた、このランダムオフセットをサーバ通信デバイス動的信用証明に加えることによって、サーバ通信デバイス動的信用証明を変更することを含む。そのような実施形態はまた、サーバ通信デバイス動的信用証明を含む。この実施形態はまた、ランダムオフセットを含む信号を、ネットワークを経由して送ることを含む。この実施形態はまた、動的信用証明を含む信号を、ネットワークを経由して受信することを含む。また、この実施形態は、サーバ通信デバイス動的信用証明と、受信した動的信用証明との間の相違を判定することを含む。更に、そのような実施形態はまた、この相違に基づいて、クローン通信デバイスの存在を検出することを含む。
【0011】
少なくとも1つの実施形態は、ランダムオフセットを含む信号を、ネットワークを経由して受信することを含む。そのような実施形態はまた、このランダムオフセットをクライアント通信デバイス動的信用証明に加えることによって、クライアント通信デバイス動的信用証明を変更することを含む。更に、そのような実施形態はまた、この変更されたクライアント通信デバイス動的信用証明を、ネットワークを経由して送ることを含む。
【0012】
少なくとも1つの実施形態は、ランダムオフセットを生成することを含む。そのような実施形態はまた、このランダムオフセットをサーバ通信デバイス動的信用証明に加えることによって、サーバ通信デバイス動的信用証明を変更することを含む。そのような実施形態はまた、ランダムオフセットをサーバ通信デバイス動的信用証明に加えることによって、サーバ通信デバイス動的信用証明を変更することを含む。そのような実施形態はまた、ランダムオフセットを含む信号を、ネットワークを経由して送ることを含む。この実施形態はまた、ランダムオフセットを含む信号を、ネットワークを経由して受信することを含む。この実施形態はまた、ランダムオフセットをクライアント通信デバイス動的信用証明に加えることによって、クライアント通信デバイス動的信用証明を変更することを含む。更に、この実施形態はまた、変更されたクライアント通信デバイス動的信用証明を、ネットワークを経由して送ることを含む。更に、そのような実施形態は、変更されたクライアント通信デバイス動的信用証明を含む信号を、ネットワークを経由して受信することを含む。この実施形態はまた、サーバ通信デバイス動的信用証明と、変更されたクライアント通信デバイス動的信用証明との間の相違を判定することを含む。更に、この実施形態はまた、この相違に基づいて、クローン通信デバイスの存在を検出することを含む。
【0013】
少なくとも1つの実施形態は、ランダムオフセットを生成するように構成されたロジックを含む。そのような実施形態はまた、ランダムオフセットをサーバ通信デバイス動的信用証明に加えることによって、サーバ通信デバイス動的信用証明を変更するように構成されたロジックを含む。この実施形態はまた、サーバ通信デバイス動的信用証明を格納するように構成されたロジックを含む。この実施形態はまた、ランダムオフセットを含む信号を、ネットワークを経由して送るように構成されたロジックを含む。この実施形態はまた、動的信用証明を含む信号を、ネットワークを経由して受信するように構成されたロジックを含む。更に、この実施形態は、サーバ通信デバイス動的信用証明と、受信された動的信用証明との間の相違を判定するように構成されたロジックを含む。更に、この実施形態は、この相違に基づいて、クローン通信デバイスの存在を検出するように構成されたロジックを含む。
【0014】
少なくとも1つの実施形態は、ランダムオフセットを含む信号を、ネットワークを経由して受信するように構成されたロジックを含む。そのような実施形態はまた、ランダムオフセットをクライアント通信デバイス動的信用証明に加えることによって、クライアント通信デバイス動的信用証明を変更するように構成されたロジックを含む。更に、そのような実施形態は、変更されたクライアント通信デバイス動的信用証明を、ネットワークを経由して送るように構成されたロジックを含む。
【0015】
少なくとも1つの実施形態は、ランダムオフセットを生成するように構成されたロジックを含むサーバを含む。そのような実施形態はまた、ランダムオフセットを、サーバ通信デバイス動的信用証明に加えることによって、サーバ通信デバイス動的信用証明を変更するように構成されたロジックを含むサーバを含む。そのような実施形態はまた、サーバ通信デバイス動的信用証明を格納するように構成されたロジックを含むサーバを含む。この実施形態はまた、ランダムオフセットを含む信号を、ネットワークを経由して送るように構成されたロジックを含むサーバを含む。この実施形態はまた、動的信用証明を含む信号を、ネットワークを経由して受信するように構成されたロジックを含むサーバを含む。この実施形態はまた、サーバ通信デバイス動的信用証明と、受信した動的信用証明との間の相違を判定するように構成されたロジックを含むサーバを含む。更に、この実施形態はまた、この相違に基づいて、クローン通信デバイスの存在を検出するように構成されたロジックを含むサーバを含む。そのような実施形態はまた、ランダムオフセットを含む信号を、ネットワーク経由で受信するように構成されたロジックを含むクライアント通信デバイスを含む。そのような実施形態はまた、ランダムオフセットを、クライアント通信デバイス動的信用証明に加えることによって、クライアント通信デバイス動的信用証明を変更するように構成されたロジックを含むクライアント通信デバイスを含む。更に、この実施形態はまた、この変更されたクライアント通信デバイス動的信用証明を、ネットワークを経由して送るように構成されたロジックを含むクライアント通信デバイスを含む。
【0016】
少なくとも1つの実施形態は、ランダムオフセットを生成するように動作可能なコードを含む。そのような実施形態はまた、ランダムオフセットをサーバ通信デバイス動的信用証明に加えることによって、サーバ通信デバイス動的信用証明を変更するように動作可能なコードを含む。そのような実施形態はまた、サーバ通信デバイス動的信用証明を格納するように動作可能なコードを含む。この実施形態はまた、ランダムオフセットを含む信号を、ネットワーク経由で送るように動作可能なコードを含む。この実施形態はまた、動的信用証明を含む信号を、ネットワーク経由で受信するように動作可能なコードを含む。更に、この実施形態は、サーバ通信デバイス動的信用証明と、この受信した動的信用証明との間の相違を判定するように動作可能なコードを含む。更に、この実施形態は、この相違に基づいて、クローン通信デバイスの存在を検出するように動作可能なコードを含む。
【0017】
少なくとも1つの実施形態は、ランダムオフセットを含む信号を、ネットワークを経由して受信するように動作可能なコードを含む。そのような実施形態はまた、ランダムオフセットをクライアント通信デバイス動的信用証明に加えることによって、クライアント通信デバイス動的信用証明を変更するように動作可能なコードを含む。更に、この実施形態は、この変更されたクライアント通信デバイス動的信用証明を、ネットワークを経由して送るように動作可能なコードを含む。
【0018】
少なくとも1つの実施形態は、ランダムオフセットを生成するように動作可能なコードを含む。そのような実施形態はまた、ランダムオフセットをサーバ通信デバイス動的信用証明に加えることによって、サーバ通信デバイス動的信用証明を変更するように動作可能なコードを含む。そのような実施形態はまた、サーバ通信デバイス動的信用証明を格納するように動作可能なコードを含む。そのような実施形態はまた、ランダムオフセットを含む信号を、ネットワークを経由して送るように動作可能なコードを含む。この実施形態はまた、ランダムオフセットを含む信号を、ネットワークを経由して受信するように動作可能なコードを含む。この実施形態はまた、ランダムオフセットを、クライアント通信デバイス動的信用証明に加えることによって、クライアント通信デバイス動的信用証明を変更するように動作可能なコードを含む。この実施形態はまた、この変更された通信デバイス動的信用証明を、ネットワークを経由して送るように動作可能なコードを含む。この実施形態はまた、この変更されたクライアント通信デバイス動的信用証明を含む信号を、ネットワークを経由して受信するように動作可能なコードを含む。更に、この実施形態はまた、サーバ通信デバイス動的信用証明と、この変更されたクライアント通信デバイス動的信用証明との間の相違を判定するように動作可能なコードを含む。更に、この実施形態はまた、この相違に基づいて、クローン通信デバイスの存在を検出するように動作可能なコードを含む。
【0019】
少なくとも1つの実施形態は、ランダムオフセットを生成する手段を含む。そのような実施形態はまた、ランダムオフセットをサーバ通信デバイス動的信用証明に加えることによって、サーバ通信デバイス動的信用証明を変更する手段を含む。そのような実施形態はまた、サーバ通信デバイス動的信用証明を格納する手段を含む。この実施形態はまた、ランダムオフセットを含む信号を、ネットワークを経由して送る手段を含む。この実施形態はまた、動的信用証明を含む信号を、ネットワークを経由して受信する手段を含む。更に、この実施形態はまた、サーバ通信デバイス動的信用証明と、この受信した動的信用証明との間の相違を判定する手段を含む。更に、この実施形態は、この相違に基づいて、クローン通信デバイスの存在を検出する手段を含む。
【0020】
少なくとも1つの実施形態は、ランダムオフセットを含む信号を、ネットワークを経由して受信する手段を含む。この実施形態はまた、ランダムオフセットを、クライアント通信デバイス動的信用証明に加えることによって、クライアント通信デバイス動的信用証明を変更する手段を含む。更に、この実施形態はまた、この変更されたクライアント通信デバイス動的信用証明を、ネットワークを経由して送る手段を含む。
【0021】
少なくとも1つの実施形態は、ランダムオフセットを生成する手段を含むサーバを含む。そのような実施形態はまた、ランダムオフセットを、サーバ通信デバイス動的信用証明に加えることによって、サーバ通信デバイス動的信用証明を変更する手段を含むサーバを含む。そのような実施形態は更に、サーバ通信デバイス動的信用証明を格納する手段を含むサーバを含む。そのような実施形態は更に、ランダムオフセットを含む信号を、ネットワークを経由して送る手段を含むサーバを含む。そのような実施形態は更に、動的信用証明を含む信号を、ネットワークを経由して受信する手段を含むサーバを含む。そのような実施形態は更に、サーバ通信デバイス動的信用証明と、この受信した動的信用証明との間の相違を判定する手段を含むサーバを含む。更に、そのような実施形態は、この相違に基づいて、クローン通信デバイスの存在を検出する手段を含むサーバを含む。更に、この実施形態はまた、ランダムオフセットを含む信号を、ネットワークを経由して受信する手段を含むクライアント通信デバイスを含む。そのような実施形態はまた、ランダムオフセットをクライアント通信デバイス動的信用証明に加えることによって、クライアント通信デバイス動的信用証明を変更する手段を含むクライアント通信デバイスを含む。更に、この実施形態はまた、この変更されたクライアント通信デバイス動的信用証明を、ネットワークを経由して送る手段を含むクライアント通信デバイスを含む。
【0022】
少なくとも1つの実施形態の少なくとも幾つかの利点は、ハンドセットクローン化及びクライアント通信デバイススプーフィングを検出するために使用される従来のハッシュチェーン方法の動作上の欠点と比較して、動作上の利点を含んでいる。例えば、少なくとも1つの実施形態は、クライアント通信デバイス環境全体のスナップショットを含むクライアント通信デバイスの信用証明の全てに対するアクセスを、攻撃者が取得できる場合であっても、クライアントスプーフィング又はクローン化に対する防御を提供するクライアント起動スキーム、1つの往復、及び比較的軽量といった利点を与える。他の長所は、サーバに対する低い処理要求及びストレージオーバヘッド要求である。ここで、サーバは、反復ハッシュを行う必要はなく、相違を検出するための追加のメタデータのストレージも必要もない。クライアント側における動的信用証明の使用は、固有の値を提供する信用証明に対して、最新の“n”個の更新履歴を提供する。対照的に、ハッシュチェーンは、クライアント通信デバイスが、少なくとも毎回使用されたハッシュの数、又は結果として得られたハッシュ値の全履歴を格納することを要求する。更に、その他の長所は、ペイロードサイズが小さく、ハッシュチェーン方法に関連する大きなペイロードサイズとは異なり、送られる情報が、1乃至8バイトのオーダになりうる。
【0023】
少なくとも1つの実施形態の他の長所は、無許可のデバイスが、比較的短い時間の間に、多くの信号を吐き出すリプレー攻撃に打ち勝つ能力を有することである。例えば、クローンデバイスは、(例えば、静的信用証明及び動的信用証明のような)コピーされた信用証明を全て含む複数の信号からなるバーストの実行を試みるかもしれないが、上述した実施形態に記述したように、この提案されたシステムは、サーバ通信デバイス動的信用証明と、対応するクライアント通信デバイス動的信用証明との間の相違を検出するように動作し、それを行っている間、そのような信号バーストを、クローンデバイスの存在の兆候、又は次に危険にさらされた有効なクライアントからのリプレーベースの攻撃の開始として認識することができる。他の長所の中でも、クローンデバイスのこの認識方法は、単一の往復スキームでクローンデバイスの検出が実行され、従来技術のスキームに対して改良されている。
【0024】
本発明の他の局面、長所、及び特徴は、以下のセクションを含む明細書全体の検討後に明らかになるであろう。
【発明を実施するための最良の形態】
【0025】
本明細書に記載された実施形態の前述した局面及び付随する利点は、添付図面と連携した場合に以下の詳細説明に対する参照からより容易に明らかになるであろう。
【0026】
用語“典型的”(exemplary)は、本明細書では、“例、実例、あるいは例示として役立つ”ことを意味するため使用される。本明細書で“典型的”と記載された何れの実施形態も、他の実施形態に対して好適あるいは有利であるとは必ずしも解釈される必要はない。更に、多くの実施形態が、例えば計算デバイスの要素によって実行されるべき動作のシーケンスの観点から記載される。本明細書で記載された様々な動作は、具体的な回路(例えば、特定用途向けIC(ASIC))、1又は複数のプロセッサによって実行されるプログラム命令、又はこれらの組み合わせによって実行されうる)ことが認識されるだろう。更に、本明細書で記載された実施形態はまた、実行されると、関連するプロセッサに、本明細書で記載した機能を実行させる対応するコンピュータ命令のセットを格納しているコンピュータ読取記憶媒体の任意の形態内に全体が組み込まれると考えられる。従って、本発明の様々な局面が、多くの異なる形態で具体化されうる。そして、それらの全ては、クレイムされた主題の範囲内であると考えられる。更に、本明細書に記載した実施形態の各々では、そのような実施形態の対応する形態が、例えば、ある動作を実行するように“構成されたロジック”、又は記載した動作を実行するために“操作可能なコード”として記載されうる。
【0027】
以下の詳細説明は、クライアント通信デバイスとサーバとの間の安全な通信を提供するために使用される方法、システム、ソフトウェア、及び装置を記述する。少なくとも1つの実施形態では、サーバは、ランダムオフセットを生成し、動的信用証明にランダムオフセット番号を加えることにより、動的信用証明を変更する。サーバは、動的信用証明を格納し、クライアント通信装置へランダムオフセット番号を送る。クライアント通信デバイスは、動的信用証明にランダムオフセット番号を加えることにより、動的信用証明を変更する。クライアント通信デバイスは、この変更された動的信用証明を格納する。クライアント通信デバイスは、この変更された動的信用証明をサーバに送る。サーバは、この変更された動的信用証明を受信し、格納された動的信用証明と、受信した動的信用証明との相違を判定し、この相違に基づいて、クローンデバイスが存在するかを判定する。
【0028】
1又は複数の実施形態では、クライアント計算デバイスとサーバとの間に安全な通信を提供するために使用されるシステムは、この計算デバイス上で動作するランタイム環境(API)と連携して動作する。1つのそのようなランタイム環境(API)は、カリフォルニア州サンディエゴのQUALCOMM社によって開発されたBinary Runtime Environment for Wireless(BREW)(登録商標)ソフトウェアプラットフォームの新バージョンであろう。以下の記載における少なくとも1つの実施形態では、クライアント計算デバイスとサーバとの間の安全な通信を提供するために使用されるこのシステムは、例えばBREWソフトウェアプラットフォームの新バージョンのようなランタイム環境(API)を実行する計算デバイス上で実現される。しかしながら、クライアント計算デバイスとサーバとの間の安全な通信を提供するために使用されるシステムの1又は複数の実施形態は、例えば、無線クライアント計算デバイス上でのアプリケーションの実行を制御するように操作可能な他のタイプのランタイム環境(API)を使用するのに適している。
【0029】
図1は、無線ネットワーク104を介して少なくとも1つのアプリケーションダウンロードサーバ106と通信している例えばセルラ電話102のような無線デバイスのソフトウェアアプリケーションコンポーネントの削除及び再ロードのためのシステム100の1つの典型的な実施形態のブロック図を例示する。アプリケーションダウンロードサーバ106は、無線ネットワーク104への無線通信ポータル又は他のデータアクセスを介して、ソフトウェアアプリケーション及びコンポーネントを無線デバイスへ選択的に送信する。図示するように、無線デバイスは、携帯電話102、携帯情報端末108、ここで2方式テキストページャとして示されているページャ110でありうる。あるいは、無線通信ポータルを有しているか、あるいはネットワークやインターネットへの有線接続114を有する個別のコンピュータプラットフォーム112でさえもありうる。従ってこの発明的なシステムは、限定することなく、無線モデム、PCMCIAカード、アクセス端末、パーソナルコンピュータ、アクセス端末、ディスプレイ又はキーパッドを有さない電話、あるいはこれらの任意の組み合わせか、部分的組み合わせを含む無線通信ポータルを含む任意の形態の遠隔モジュール上で実行することができる。
【0030】
アプリケーションダウンロードサーバ106は、ここでは、無線ネットワーク104と通信している他のコンピュータ要素とともに示される。第2のサーバ120とスタンドアロンサーバ122もあり、各サーバは、無線ネットワーク104を介して無線デバイス102,108,110,112に個別のサービス及び処理を提供することができる。更に、好適には、無線デバイス102,108,110,112によってダウンロード可能なソフトウェアアプリケーションを保持する少なくとも1つの格納アプリケーションデータベース118が存在する。アプリケーションダウンロードサーバ106、第2のサーバ120、及びスタンドアロンサーバ122のうちの任意の1つ又は複数において安全な通信を実行するためのロジックを設ける別の実施形態が考慮される。
【0031】
図2には、無線ネットワーク104と、典型的な実施形態の要素の相互関係とを含むシステム100をより十分に例示するブロック図が示されている。このシステム100は、単に典型的なものであり、限定することなく、無線ネットワークキャリア及び/又はサーバを含み、例えば無線クライアント計算デバイス102,108,110,112のような遠隔モジュールが、互いに、及び/又は無線ネットワーク104を経由して接続されたコンポーネントと、エアによって通信する任意のシステムを含む。アプリケーションダウンロードサーバ106及び格納アプリケーションデータベース118は、セルラ電話通信サービスを提供するために必要なサーバ120のような他のサーバとともに、例えばインターネット、安全なLAN、WAN、又は他のネットワークのようなデータリンクを介してキャリアネットワーク200と通信する。図示した実施形態では、サーバ120は、キャリアネットワーク200によって安全な通信を提供するように構成されたロジックを含むサーバ認証モジュール121を含んでいる。そのようなサーバセキュリティモジュール121は、安全な通信を提供するために、例えば無線デバイス102,108,110,112のようなクライアント計算デバイス上に位置したクライアントセキュリティモジュールと連携して動作する。
【0032】
キャリアネットワーク200は、メッセージングサービスコントローラ(MSC)202に送られるメッセージ(データパケットとして送られる)を制御する。キャリアネットワーク200は、ネットワーク、インターネット、及び/又はPOTS(plain ordinary telephone system)によってMSC202と通信する。一般に、キャリアネットワーク200とMSC202との間のネットワーク又はインターネット接続は、データを伝送し、POTSは音声情報を伝送する。MSC202は、多数の基地局(BTS)204に接続される。キャリアネットワークと同様の方式で、MSC202は、一般に、データ伝送のためのネットワーク及び/又はインターネットと、音声情報のためのPOTSとの両方によってBTS204に接続される。BTS204は、ショートメッセージングサービス(SMS)、又は当該技術で知られた他のエアによる方法によって、最終的には、例えばセルラ電話102のような無線デバイスへメッセージをブロードキャストする。
【0033】
例えばセルラ電話102のような(無線クライアント計算デバイスである)無線デバイスは、アプリケーションダウンロードサーバ106から送信されたソフトウェアアプリケーションを受信し実行するコンピュータプラットフォーム206を有している。コンピュータプラットフォーム206は、特定用途向けIC(ASIC208)、あるいは他のプロセッサ、マイクロプロセッサ、論理回路、あるいは他のデータ処理デバイスを含む。ASIC208は、無線デバイスの製造時に組み込まれ、通常はアップグレード可能ではない。ASIC208又は他のプロセッサは、無線デバイスのメモリ212内の任意の常駐プログラムとインタフェースするアプリケーションプログラムインターフェイス(API)210レイヤを実行する。メモリ212は、読出専用メモリ又はランダムアクセスメモリ(ROM及びRAM)、EPROM、フラッシュカード、あるいはコンピュータプラットフォームに一般的な任意のメモリからなる。API210はまた、キャリアネットワーク200を介した安全な通信を提供するために構成されたロジックを含むクライアントセキュリティモジュール214を含んでいる。そのようなクライアント認証モジュール214は、安全な通信を提供するために、クライアントセキュリティモジュール121と共に動作する。コンピュータプラットフォーム206は更に、メモリ212内でアクティブに使用されないアプリケーションを保持することができるローカルデータベース214を含んでいる。ローカルデータベース216は一般にはフラッシュメモリセルであるが、例えば磁気媒体、EPROM、光媒体、テープ、あるいはソフトディスク又はハードディスクのように、当該技術で知られた任意の2次記憶装置でありうる。
【0034】
携帯電話102のような無線クライアント計算デバイスは、例えばゲーム、ニュース、株式モニタのような1又は複数のソフトウェアアプリケーションをアプリケーションダウンロードサーバ106からダウンロードし、アプリケーションが使用されていない場合には、ローカルデータベース216上に保持し、ユーザによって望まれる場合には、ローカルデータベース216上に格納されている常駐アプリケーションを、API210上における実行のためにメモリ212にアップロードする。更に、無線ネットワーク104を介した通信が、クライアント認証モジュール214とサーバ認証モジュール121との間の相互作用及び動作のために、少なくとも部分的に安全な方法で実施される。本発明的なシステム及び方法は、以下に説明するように、無線ネットワーク104を介したそのような安全な通信を提供する。
【0035】
図3は、安全な通信を提供する方法300の1つの典型的な実施形態を図示する。方法300はステップ302で始まり、クライアント通信デバイスが、ネットワークを介して登録信号を送ることにより、遠隔サーバへの登録を開始する。次に、ステップ304において、サーバが、登録信号を受信する。ステップ306では、サーバが、動的信用証明及び静的信用証明の両方を生成し、これら信用証明を遠隔のクライアント通信デバイスに関連付ける。同ステップで、サーバは、将来の参照のために、これら信用証明を格納する。静的信用証明は、特定のクライアントデバイスを識別するためにサーバが生成する信用証明である。そのような静的信用証明は、将来、クライアント通信デバイスによってサーバへ送られる信号である。受信した信号が、本当に特定のクライアント通信デバイスからのものであることを確認するために、サーバは、受信した静的信用証明を、格納された静的信用証明と比較することにより、静的信用証明を使用する。
【0036】
また、動的信用証明は、特定のクライアント通信デバイス(すなわち、そこから来た信号)を識別するために使用されることができるが、そのような動的信用証明は、安全な通信機能を高めるために、定期的に変更又は更新される。1つの実施形態では、動的信用証明は数字である。数字以外の別のタイプの識別子である他の動的信用証明を利用する実施形態は、例えばアルファベット文字、シンボル、制御文字、数列、シンボル列、制御文字列、又は予測可能でかつ検知可能な方法で変更されることが可能な他の識別子を含む。1つの実施形態では、動的信用証明は、2進数ビットの列である。他の実施形態は、例えば8ビット、16ビット、32ビット、及び64ビットのように、動的信用証明を表すために異なるビット数を用いるが、別の実施形態は、それより多くのあるいは少ないビット数を用いる。一般に、使用されるビット数は、セキュリティ要求というよりも、むしろ追跡される履歴の量に基づいて使用される。
【0037】
ステップ308において、サーバは、動的信用証明及び静的信用証明を含む信号を生成し、それをクライアントデバイスへ送る。この信号を送ることはまた、ステップ302で開始された登録ステップの一部である。ステップ308では、そのような2つのみの信用証明が送られるように示されているが、他の実施形態は、異なるタイプの更なる信用証明を送る。更に、図示していないが、他の実施形態もまた、初期登録ステップ中に動的信用証明を変更するために使用されるオフセット(ランダムあるいはその他)を送ることを含みうる。ステップ308の動作に応答して、クライアント通信デバイスは、ステップ310において、動的信用証明及び静的信用証明を含む信号を受信する。ステップ312では、クライアント通信デバイスが、サーバとの将来の通信に使用するために、動的信用証明及び静的信用証明を格納する。ステップ312は、登録手続の完了を表す。
【0038】
ステップ314では、クライアント通信デバイスとサーバとの間での信号の送信が開始され、クライアント通信デバイスに格納された信用証明が、信号に含められ、サーバは、そのような信号を、認証されたデバイスから到来したものと認証することができる。ステップ314に応答して、サーバは、ステップ316において、静的信用証明及び動的信用証明を含む送られた信号を、クライアント通信デバイスから送られたものとして受信する。ステップ318では、サーバが、サーバにおいて格納されている信用証明と、受信した信号に組み込まれた信用証明とを比較することによって信号を認証するように動作する。
【0039】
クライアントデバイスから受信した動的信用証明が、サーバにおいて格納されている動的信用証明と一致しない場合、サーバは、そこから、オリジナルの特定のクライアント通信デバイスのクローンデバイスが存在すると判定することができる。そのような結果は、特定のクライアント通信デバイスであると信じられている1つのデバイスに、更新された動的信用証明が送られ、かつ、動的信用証明の昔のバージョンのコピーを有する他のデバイスが、この古くて更新されていない動的信用証明を送り、実際に認証されたデバイスから過去の時点においてコピーされたものへのなりすましを試みることを示すので、前記判定がなされうる。クローンデバイスを識別するために使用される別の類似シナリオが、図4に示される。このような動作は、潜在的な攻撃者の作業を複雑にする。攻撃者が、例えば物理的なアクセス、悪意のあるクライアントソフトウェアの使用、あるいは登録処理へのハッキング等によって、クライアントデバイスの正確なスナップショットを取得できる場合でさえ、攻撃者はまだ、動的信用証明の正確かつ最新のバージョン(絶えず変化する)を提供しなければならない。さもなければ、クローンデバイスであると識別されるリスクがある。
【0040】
幾つかの実施形態では、サーバデバイスに格納された動的信用証明と、クライアント通信デバイスから受信した動的信用証明との間の矛盾の全てが、クローンデバイスの存在を示すわけではないようにシステムは動作する。幾つかの実施形態は、ランダムオフセットの予期した喪失、あるいは他のシステム動作局面において動作する。クローンデバイスが存在しなくても、しばしば、有効なクライアント通信デバイスにおいて格納されている動的信用証明と、サーバにおいて格納されている動的信用証明との相違が生じる状況が発生するからである。そのような幾つかの実施形態は、例えば、電話が電源を喪失した場合、通信信号が喪失した場合のような異なる動的信用証明内容、あるいは、クライアントデバイスに格納されている動的信用証明の意図した更新が、クローンデバイスの存在以外の理由によって実行不能である他のシナリオを検出する。そのような実施形態では、異なる動的信用証明が予想され(許容され)処理される場合、幾つかの実施形態は、そのような相違の設定された許容を含み、クライアント通信デバイスが、自己をサーバと再同期することを可能にする。上述した認証動作は、無許可のデバイスを検出するために、複数の往復を必要としないという利点を含む。ここで、サーバは、サーバに格納されている動的信用証明と一致しない動的信用証明を含むクライアント通信デバイスから片道信号を受信した時を、即座に判定することができる。これは本当である。なぜなら、サーバは、クライアント通信デバイスがランダムオフセットの受信に成功し、それを処理するかをモニタせず、代わりに、相違の許容の1方向検出に依存するからである。
【0041】
典型的な実施形態では、サーバからの連続送信は、シングルビットセットでランダムオフセットを送ることを含む。ここで、ランダムオフセットは、クライアントデバイスに格納された動的信用証明に加えられ、Hamming Differenceを生じる。別の実施形態では、ランダムオフセットは識別子(例えば番号)を表わす。それは、クライアントデバイスにおいて格納された動的信用証明のどの対応ビットがフリップされねばならないかを識別する。そのような実施形態では、フリップするビット番号を含むランダムオフセットが、クライアントデバイスにおいて格納されている動的信用証明に加えられ、対応するHamming Differenceが生成される。Hamming Distanceは、異なるビット表示番号が存在する場合に生じ、無許可の動的信用証明とは異なるビット数である相違測定単位を表す。そのため、Hamming Distance情報によって、システムは、相違が始まった時、あるいはおおよその時を判定できるようになる。また、典型的な実施形態では、ハッシュチェーンベースのスキームとは異なり、サーバは、以前に使用されたハッシュ値の長い履歴を格納する必要なく、クライアント通信デバイスによって提供された値に対するマッチングを見つけることを試みる。ここで、典型的な実施形態は、アルゴリズムベースの公式(すなわち、1度に1ビットのフリッピング)を用いる。これは、異なる動的信用証明が実際に始まった時の情報の判定のために評価されることが可能な出力を生成する。
【0042】
サーバが、信号を、認可されたソースから到来したものとして認証する場合、サーバは、ステップ320において、ランダムオフセットを生成し、それを、格納された動的信用証明に加える。典型的な実施形態では、この動的信用証明及びランダムオフセットは、32ビットの2進数である。また、そのような実施形態では、1のみからなる32ビットセットで表される2進数である。1つの実施形態では、ランダムオフセットを用いた動的信用証明の変更は、2つの値についてビットワイズの“OR”を実行することにより行なわれる。そのため、動的信用証明の連続した変更(1度に1ビットのフリッピングによる)について、本システムは、変更される動的信用証明を、例えば最初の登録処理で使用された信用証明を含む無変更のオリジナル信用証明とどのように比較したかに基づいて、変更回数を判定することができる。幾つかの実施形態は、クライアント通信デバイスとサーバとの間で交換される信号の各々及び全てについて、動的信用証明に対してそのような変更を行う。一方、他の実施形態は、そのような変更を単に定期的に行う。
【0043】
ステップ322では、サーバが、クライアント通信デバイスへランダムオフセットを送る。これを受けて、ステップ324では、クライアント通信デバイスが、送られたランダムオフセットを受信する。クライアント通信デバイスは、ステップ326において、ランダムオフセットを加えることにより、動的信用証明を更新する。ステップ328では、クライアント通信デバイスは、そのような動的信用証明を、クライアント通信デバイスからサーバに送られる将来の信号に含めることを目的として、送られた動的信用証明を格納する。
【0044】
図4は、複数のクライアント通信デバイスとサーバとの間で一連の信号が交換される1つの実施形態400を例示する。図示するように、11ステージからなるシリーズは、信号交換のセットの1つの例を示す。そのようなステージは、ステージ1 402、ステージ2 404、ステージ3 406、ステージ4 408、ステージ5 410、ステージ6 412、ステージ7 414、ステージ8 416、ステージ9 418、ステージ10 420、及びステージ11 422を含む。更に、この例示はまた、クライアント1 424、クライアント2 426、無線ネットワーク104、及びサーバ428を示す。例示するクライアント1 424は、許可されたデバイスを表すように意図され、クライアント2 426は、クライアント1 424のクローンデバイスを表すように意図されている。
【0045】
ステージ1 402は、サーバ及びクライアントの両方のための初期予備登録状態を表わす。ここで、クライアント1 424のクライアント動的信用証明430は、初期値を持たないものとして示される。同じことが、クライアント2 426のクライアント動的信用証明432についても当てはまる。この登録処理は、クライアント1 424が、登録コマンド436と空の動的信用証明値438とを含む 信号434をサーバ428に送ることによって始まる。サーバ428は、“1100 1000”である最初のサーバ動的信用証明440を含んでいる。ステージ1 402で送られた信号434を受信することに応答して、システムは、ステージ2 404に示す動作を実行する。
【0046】
ステージ2 404は、サーバ428が、クライアント1 424によって送られた登録信号434に対して応答することを示す。ここでは、サーバ428が、サーバ動的信用証明440のコピーを含む信号442を、格納コマンド444とともにクライアント1 424に送る一方、“1100 1000”であるサーバ動的信用証明440を保持する。信号442を受信すると、クライアント1 424は、送られた動的信用証明440を、クライアント動的信用証明430として格納する。
【0047】
ステージ3 406は、クライアント2 426が(クライアント1の内容をクローン化した後)、信号446を、認証コマンド448、及び“1100 1000”からなるクローンクライアント動的信用証明情報438とともにサーバ428に送ることを示す。サーバは、クライアント1 424から到来したものであるか、あるいはクライアント2 426から到来したものであるか分からずに信号1 446を受信し、送られた動的信用証明438を、格納されているサーバ動的信用証明440を用いて認証する。ここで、送られた動的信用証明438と、サーバ動的信用証明440とが一致すると、サーバは、それに応答して、クライアント2を、有効なクライアント通信デバイスとして認証する。ここでは、クローンデバイスが、サーバ428によって、特定の信号を送ったものとしてどのようにして不正確に識別されるかが示される。しかしながら、以下に更に説明するように、本システムは、一般に、クローンを識別するように動作し、システムは更に、実際のクローンデバイスがどのクライアントであろうとも除去する。信号446を認証すると、システムは、ステージ4 408に示す動作を行なう。
【0048】
ステージ4 408は、クライアント2 426が、格納コマンド444と、“0000 0010”からなるランダムオフセット451とを含む信号450を受信することを示す。
【0049】
信号450を受信すると、クライアント2は、ステージ3 406に示すような格納されたクライアント動的信用証明にランダムオフセット451を加え、ステージ4 408に示すような
【数1】

【0050】
からなる格納された動的信用証明の数値結果を得る。ここで、イタリック体の数字は、格納されたクライアント動的信用証明の変更に応じて影響を受けたビットを反映している。この変更されたクライアント信用証明は、クライアント通信デバイスによって将来使用されるために、クライアント通信デバイス内に格納される。
【0051】
少なくとも1つの実施形態では、信号450で送られたランダムオフセット451は、フリップされるビット位置を示す2進数を表わす。例えば、1つの実施形態では、対応する格納された動的信用証明の3番目のビットをフリップする指示は、ランダムオフセット451が、基数10“3”(“0000 0011”)の2進数表示を含むことを意味する。このように、システムは、対応する格納された動的信用証明の3番目のビットをフリップするために、ランダムオフセット451を加える要求を示すものとして、“0000 0011”からなるランダムオフセット内容を解釈するように動作する。他の実施形態では、システムは、動的信用証明の対応する1又は複数のどのビットが操作されるべきかを決定するために、ランダムオフセット451の他のフォーマッティングスキームを解釈するように構成される。
【0052】
ステージ5 410は、クライアント2 426が、クライアント動的信用証明432のコピー及び認証コマンド448とともに信号452をサーバ428に送ることを示す。サーバ428は、この信号452を受信し、送られた動的信用証明438を、格納されているサーバ動的信用証明440と首尾よく比較することにより、この信号を認証するための処理を行う。
【0053】
ステージ6 412は、クライアント2 426が、格納コマンド444及びランダムオフセット451“0010 0000”を含む信号454を受信することを示す。信号454を受信すると、クライアント2は、ステージ5 410に示すような格納されたクライアント動的信用証明432にランダムオフセット451を加え、ステージ4 408に示すような
【数2】

【0054】
からなる格納された動的信用証明の数値結果を得る。ここで、イタリック体の数字は、格納されたクライアント動的信用証明の変更に応じて影響を受けたビットを反映している。
【0055】
ステージ7 414は、クライアント1 424が(クライアント2によってクローン化された後)、信号456を、認証コマンド448、及び“1100 1000”からなるオリジナルのクローンクライアント動的信用証明情報438とともにサーバ428に送ることを示す。サーバは、クライアント1 424から到来したものであるか、あるいはクライアント2 426から到来したものであるか分からずに信号456を受信し、送られた動的信用証明438を、格納されているサーバ動的信用証明440を用いて認証することを試みる。ここで、サーバ428は、個別の2つのビットの不一致を検出し、そこから、前の2つの認証に誤りがあったとの確率が高いと判断する。ここで、1つの実施形態では、サーバ428は、クライアント1 424を、クローンであるか、又はクローンされたかの何れかとしてフラグする。一方、別の実施形態では、サーバ428は、システムポリシーに基づいて、クライアント1 424に、別のチャンスを与える。システムポリシーの例は、例えば、“クライアント通信デバイスをフラグする前に、最大3つまでの連続した不一致を許容する(3ストライクでアウト)”あるいは“一致しない最新の10の要求のうち最大2までを許容する”ことを含む。図示する実施形態では、3ストライクルールを用いるシステムは、クライアント1 424にもう1回チャンスを与え、通信の継続を許可する。
【0056】
ステージ8 416は、クライアント1 424が、格納コマンド444とランダムオフセット451“1000 0000”とを含む信号458を受信することを示す。信号458を受信すると、クライアント1 424は、ステージ7 414に示すような格納されたクライアント動的信用証明430にランダムオフセット451を加え、ステージ8 416に示すような
【数3】

【0057】
からなる格納された動的信用証明の数値結果を得る。ここで、イタリック体の数字は、格納されたクライアント動的信用証明の変更に応じて影響を受けたビットを反映している。
【0058】
ステージ9 418は、クライアント2 426が、信号460を、認証コマンド448、及びクライアント2 426クライアント動的信用証明情報432のコピーとともにサーバ428に送ることを示す。サーバ428は、クライアント1 424から到来したものであるか、あるいはクライアント2 426から到来したものであるか分からずに信号460を受信し、送られた動的信用証明438を、格納されているサーバ動的信用証明440を用いて認証することを試みる。ここで、サーバ428は、1ビットの不一致を検出する。そして、そのような相違は、本実施形態のポリシー内であるので、サーバ428は、この信号を、許可された信号であると識別する。
【0059】
ステージ10 420は、クライアント2 426が、格納コマンド444とランダムオフセット451“0000 1000”とを含む信号462を受信することを示す。信号462を受信すると、クライアント2 426は、ステージ9 418に示すような格納されたクライアント動的信用証明432にランダムオフセット451を加え、ステージ4 408に示すような
【数4】

【0060】
からなる格納された動的信用証明の数値結果を得る。ここで、イタリック体の数字は、格納されたクライアント動的信用証明の変更に応じて影響を受けたビットを反映している。
【0061】
ステージ11 422は、クライアント1 424が、信号464を、認証コマンド448、及び“0100 1000”からなるクライアント動的信用証明情報438のコピーとともにサーバ428に送ることを示す。サーバ428は、クライアント1 424から到来したものであるか、あるいはクライアント2 426から到来したものであるか分からずに信号464を受信し、送られた動的信用証明438を、格納されているサーバ動的信用証明440を用いて認証することを試みる。ここで、サーバ428は、3つの個別のビットの不一致
【数5】

【0062】
を検出する。そして、これから、3ストライク(3つの不一致ビット)アウトのポリシーに基づいて、クローンデバイスが存在する可能性が非常に高いと判定する。そして、サーバ428は、クライアント1 424を、クローンであるか、クローンされたかの何れかであるとフラグする。
【0063】
図5は、クライアント通信デバイスとの安全な通信を行なうように操作可能なサーバ500の1つの典型的な実施形態を図示する。ここに使用される“サーバ”は、例えば、同一又は個別の通信デバイス上で動作する他のロジックにサービスを提供する通信デバイス上で実行するロジックを含む。1つの実施形態では、サーバ500は、クライアント通信デバイスとは別の通信デバイス上で動作するロジックを含み、ネットワークを介してクライアント通信デバイスに接続されている。1つの実施形態では、そのようなネットワークは、少なくとも部分的には無線ネットワーク104である。少なくとも1つのそのような実施形態では、サーバ500は、クライアント通信デバイスから登録信号を受信することに応答して、少なくとも1つの動的信用証明をクライアント通信デバイスに提供する。少なくとも1つの実施形態では、サーバ500は、図1に関して示され記述されたサーバ106,120,122のうちの何れかでありうる。
【0064】
典型的な実施形態に示すように、サーバ500は、メモリ502、ネットワークI/Oインタフェース504、プロセッサ506、及びバス508を含む。メモリ502はRAMメモリとして示されるが、他の実施形態は、構成されたロジックを格納するために備えると知られているあらゆる周知のタイプのメモリ502を含む。更に、メモリ502は、1つのタイプのメモリの1つの連続ユニットとして示されるが、他の実施形態は、メモリ502として、複数の場所及び複数のタイプのメモリを使用する。ネットワークI/Oインタフェース504は、バス508を介して、ネットワークに結合されたデバイスに入出力を提供する。プロセッサ506は、バス508を介して提供される命令及びデータに関して動作する。
【0065】
メモリ502には、サーバ通信デバイス動的信用証明510、ランダムオフセット512、受信した動的信用証明514、相違516、ランダムオフセット512を生成するように構成されたロジック518、ランダムオフセット512をサーバ通信デバイス動的信用証明510に加えることによって、サーバ通信デバイス動的信用証明510を変更するように構成されたロジック520、サーバ通信デバイス動的信用証明510を格納するように構成されたロジック522、ランダムオフセット512を含む信号をネットワークを介して送るように構成されたロジック524、動的信用証明514を含む信号をネットワークを介して受信するように構成されたロジック526、サーバ通信デバイス動的信用証明510と、受信した動的信用証明514との相違516を判定するように構成されたロジック528、及びこの相違516に基づいて、クローン通信デバイスの存在を検出するように構成されたロジック530が記憶されている。
【0066】
少なくとも1つの実施形態では、サーバ通信デバイス動的信用証明510は、複数の2進数ビット532を含む。別の実施形態内では、サーバ通信デバイス動的信用証明510は、32ビットの2進数534を含む。更に、1つの実施形態では、ランダムオフセット512は、複数のビットセットのうち1のみを備えた複数の2進数ビット(536)を含んでいる。更に、1つの実施形態では、相違数516は、複数のランダムオフセット512を用いた複数の変更回数(538)に等しい。更に、少なくとも1つの実施形態は、サーバ通信デバイス動的信用証明510を生成するように構成されたオプションロジック540を含む。更に、少なくとも1つの実施形態は、ネットワークを介して、サーバ通信デバイス動的信用証明510を送るように構成されたオプションロジック542を含む。
【0067】
図6は、サーバとの安全な通信を行なうように動作可能なクライアント通信デバイス600の1つの典型的な実施形態を図示する。ここで用いられる「クライアント通信デバイス」は、例えば、常駐する設定されたロジックを実行する1又は複数の処理回路を含む。そのような計算デバイスは、例えば、マイクロプロセッサ、デジタル信号プロセッサ(DSP)、マイクロコントローラ、ポータブル無線電話、携帯情報端末(PDA)、及びページング装置、あるいは安全な通信のための上述した動作を少なくとも実行するように構成されたロジック及びプロセッサを含むハードウェア、ソフトウェア、及び/又はファームウェアの任意の適切な組み合わせを含む。クライアント通信デバイス600は、少なくともそのような安全な通信に関し、少なくとも1つのサーバ(一般に、遠隔配置される)によってサービス提供される。1つの実施形態では、そのようなネットワークは、少なくとも一部は無線ネットワーク104である。少なくとも1つのそのような実施形態では、クライアント通信デバイス600は、クライアント通信デバイス600から登録信号を送ることに応答して、サーバからの少なくとも1つの動的信用証明を受信する。少なくとも1つの実施形態では、クライアント通信デバイス600は、図1に関して示され記述された無線デバイス102,108,110,112のうちの何れかでありうる。
【0068】
典型的な実施形態に示すように、クライアント通信デバイス600は、メモリ602、ネットワークI/Oインタフェース604、プロセッサ606、及びバス608を含む。メモリ602はRAMメモリとして示されているが、他の実施形態は、設定されたロジックを格納するために備えられたと知られているあらゆる周知のタイプのメモリとして、そのようなメモリ602を含む。更に、メモリ602は、1つのタイプのメモリの1つの連続ユニットとして示されるが、他の実施形態は、メモリ602として、複数の場所及び複数のタイプのメモリを使用する。ネットワークI/Oインタフェース604は、バス608を経由してネットワークに接続されたデバイスに入出力を提供する。プロセッサ606は、バス608を介して提供される命令及びデータについて動作する。
【0069】
メモリ602には、クライアント通信デバイス動的信用証明610、ランダムオフセット612、ランダムオフセット612を含む信号をネットワークを介して受信するように構成されたロジック614、ランダムオフセット612をクライアント通信デバイス動的信用証明610に加えることによって、クライアント通信デバイス動的信用証明610を変更するように構成されたロジック616、及びこの変更されたクライアント通信デバイス動的信用証明610をネットワークを介して送るように構成されたロジック618が記憶されている。
【0070】
少なくとも1つの実施形態では、クライアント通信デバイス動的信用証明610は、複数の2進数ビット620を含む。別の実施形態では、クライアント通信デバイス動的信用証明610は、32ビットの2進数624を含む。更に、1つの実施形態では、ランダムオフセット612は、複数のビットセットのうち1のみを備えた複数の2進数ビット(626)を含む。更に、少なくとも1つの実施形態は、ネットワークを介して登録信号を送るように構成されたオプションロジック628を含む。更に、少なくとも1つの実施形態は、サーバ通信デバイス動的信用証明510をネットワークを介して受信するように構成されたオプションロジック630を含む。更に、少なくとも1つの実施形態は、サーバ通信デバイス動的信用証明510を、クライアント通信デバイス動的信用証明610として格納するように構成されたオプションロジック632を含む。
【0071】
図7は、安全な通信を提供する方法700の1つの典型的な実施形態を図示する。より具体的には、方法700は、動的信用証明を含むメッセージを送信することに向けられる。方法700は、開始ステップ702で始まり、ステップ704に続く。ここでは、サーバ500が、ランダムオフセット512を生成するように動作する。サーバ500はまたステップ706を含む。ここでは、サーバ500は、ランダムオフセット512を、サーバ通信デバイス動的信用証明510に加えることによって、サーバ通信デバイス動的信用証明510を変更するように動作する。サーバ通信デバイス動的信用証明510が一旦変更されると、サーバ500は、ステップ708において、サーバ通信デバイス動的信用証明510を格納するように動作する。次に、ステップ710において、サーバ500は、ランダムオフセット512を含む信号をネットワークを介して送るように動作する。ランダムオフセット512を含む信号の送信に応答して、サーバ500は、ステップ712において、動的信用証明を含む信号を、ネットワークを介して受信するように動作する。この動的信用証明514を含む信号が一旦受信されると、ステップ714において、サーバ500は、サーバ通信デバイス動的信用証明510と、受信した動的信用証明514との間の相違516を判定するように動作する。次に、サーバ通信デバイス動的信用証明510と、受信した動的信用証明514との相違516を得るステップ714の判定に応答して、ステップ716において、サーバ500は、この相違516に基づいて、クローン通信デバイスの存在を検出する処理を行う。
【0072】
少なくとも1つの実施形態では、方法700は更に、オプションステップ720を含む。ここでは、システムが、サーバ通信デバイス動的信用証明510を生成するように動作する。更に、他の実施形態は、ステップ722を含む。ここでは、システムが、ネットワークを介して、サーバ通信デバイス動的信用証明510を送るように動作する。また、少なくとも1つの実施形態では、ステップ704が、ステップ724に示されるように変更され、ランダムオフセット512が、複数のビットセットのうち1のみを備えた複数の2進数ビット(536)を含む。更に、少なくとも1つの実施形態では、ステップ706が、サーバ通信デバイス動的信用証明510が複数の2進数ビット(532)を含むステップ726のように変更される。更に、少なくとも1つの実施形態では、ステップ706が、サーバ通信デバイス動的信用証明510が32ビット2進数(532)であるステップ728のように変更される。更に、少なくとも1つの実施形態では、ステップ714が、相違数516が、複数のランダムオフセットを用いた複数の変更回数と等しいステップ730のように変更される。
【0073】
図8は、安全な通信を提供する方法800の1つの典型的な実施形態を図示する。より具体的には、方法800は、動的信用証明を含むメッセージを送ることに向けられる。方法800は、開始ステップ802で始まり、ステップ804に続く。ここでは、クライアント通信デバイス600が、ランダムオフセット612を含む信号をネットワークを介して受信するように動作する。この方法800はまた、ステップ806を含む。ここでは、クライアント通信デバイス600が、ランダムオフセット612をクライアント通信デバイス動的信用証明610に加えることによって、クライアント通信デバイス動的信用証明610を変更するように動作する。クライアント通信デバイス動的信用証明610が一旦変更されると、クライアント通信デバイス600はステップ808において、この変更されたクライアント通信デバイス動的信用証明600を、ネットワークを介して送るように動作する。
【0074】
少なくとも1つの実施形態では、方法800は更に、オプションステップ812を含む。このステップでは、システムは更に、登録信号をネットワークを介して送るように動作する。更に、他の実施形態は更にステップ814を含む。このステップでは、システムは更に、サーバ通信デバイス動的信用証明510をネットワークを介して受信するように動作する。更に、少なくとも1つの実施形態では、追加ステップ816が含まれる。このステップでは、システムは、サーバ通信デバイス動的信用証明510を、クライアント通信デバイス動的信用証明610として格納するように動作する。また、少なくとも1つの実施形態では、ステップ804は、ステップ818に示すように変更される。このステップでは、ランダムオフセット612は、複数のビットセットのうち1のみを備えた複数の2進数ビット(626)を含む。更に、少なくとも1つの実施形態では、ステップ806がステップ820に示すように変更される。このステップでは、クライアント通信デバイス動的信用証明610が、複数の2進数ビット(620)を含む。更に、少なくとも1つの実施形態では、ステップ806が、ステップ822に示すように変更される。このステップでは、クライアント通信デバイス動的信用証明610は、32ビットの2進数(624)である。
【0075】
これら熟練者であれば、更に、ここで開示された実施形態に関連して記載された様々な説明的論理ブロック、モジュール、回路、及びアルゴリズムステップが、電子工学ハードウェア、コンピュータソフトウェア、あるいはこれらの組み合わせとして実現されることを理解するであろう。ハードウェアとソフトウェアとの相互互換性を明確に説明するために、様々に例示された部品、ブロック、モジュール、回路、及びステップが、それらの機能に関して一般的に記述された。それら機能がハードウェアとして又はソフトウェアとして実現されているかは、特定のアプリケーション及びシステム全体に課せられている設計制約に依存する。熟練した技術者であれば、各特定のアプリケーションに応じて変更した方法で上述した機能を実施しうる。しかしながら、この適用判断は、本発明の範囲から逸脱したものと解釈されるべきではない。
【0076】
ここで開示された実施形態に関連して記述された方法やアルゴリズムのステップは、ハードウェアや、プロセッサによって実行されるソフトウェアモジュールや、これらの組み合わせによって直接的に具現化される。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD−ROM、あるいは当該技術分野で知られているその他の型式の記憶媒体に収納されうる。典型的な記憶媒体は、プロセッサがそこから情報を読み取り、またそこに情報を書き込むことができるようにプロセッサに結合される。
【0077】
又は、記憶媒体はプロセッサに統合されうる。このプロセッサと記憶媒体は、ASIC内に存在することができる。ASICは、計算デバイス又はユーザ端末内に存在することもできる。あるいはこのプロセッサと記憶媒体は、計算デバイス又はユーザ端末内のディスクリート部品として存在しうる。
【0078】
開示された実施形態における上述の記載は、当該技術分野におけるいかなる人であっても、本発明の活用又は利用を可能とするように提供される。これらの実施形態への様々な変形例もまた、当該技術分野における熟練者に対しては明らかであって、ここで定義された一般的な原理は、本発明の主旨又は範囲を逸脱せずに他の実施形態にも適用されうる。このように、本発明は、ここで示された実施形態に制限されるものではなく、ここで記載された原理と新規の特徴に一致した最も広い範囲に相当するものを意図している。
【図面の簡単な説明】
【0079】
【図1】図1は、クライアント計算デバイスとサーバとの間の安全な通信のためのシステムの1つの実施形態の高次ブロック図である。
【図2】図2は、クライアント計算デバイスとサーバとの間の安全な通信のためのシステムの1つの実施形態の準高次ブロック図である。
【図3】図3は、クライアント通信装置とサーバとの間の安全な通信のためのシステムの1つの実施形態を図示するフローチャートである。
【図4】図4は、クライアント通信装置とサーバとの間の安全な通信を達成するために、信号を使用した手順の1つの実施形態を図示するブロック図である。
【図5】図5は、クライアント通信デバイスとサーバとの間の安全な通信のためのシステムに使用されるサーバの1つの実施形態のブロック図である。
【図6】図6は、クライアント通信デバイスとサーバとの間の安全な通信のためのシステムに使用されるクライアント通信デバイスの1つの実施形態のブロック図である。
【図7】図7は、クライアント通信デバイスとサーバとの間の安全な通信のためのシステムの1つの実施形態を図示するフローチャートである。
【図8】図8は、クライアント通信デバイスとサーバとの間の安全な通信のためのシステムの1つの実施形態を図示するフローチャートである。

【特許請求の範囲】
【請求項1】
クローン通信デバイスを検出する方法であって、
ランダムオフセットを生成することと、
前記ランダムオフセットを、サーバ通信デバイス動的信用証明に加えることによって、前記サーバ通信デバイス動的信用証明を変更することと、
前記サーバ通信デバイス動的信用証明を格納することと、
前記ランダムオフセットを含む信号をネットワークを介して送ることと、
動的信用証明を含む信号をネットワークを介して受信することと、
前記サーバ通信デバイス動的信用証明と、前記受信した動的信用証明との間の相違を判定することと、
前記相違に基づいて、クローン通信デバイスの存在を検出することと
を含む方法。
【請求項2】
サーバ通信デバイス動的信用証明を生成することと、
前記サーバ通信デバイス動的信用証明をネットワークを介して送ることと
を更に含む請求項1の方法。
【請求項3】
前記サーバ通信デバイス動的信用証明は、複数の2進数ビットを含み、
前記ランダムオフセットは、複数のビットセットのうち1のみを備えた複数の2進数ビットを含む請求項1の方法。
【請求項4】
前記相違数は、複数のランダムオフセットを用いた複数の変更回数と等しい請求項1の方法。
【請求項5】
前記サーバ通信デバイス動的信用証明は、32ビットの2進数である請求項1の方法。
【請求項6】
クローン通信デバイスを検出する方法であって、
ランダムオフセットを含む信号をネットワークを介して受信することと、
前記ランダムオフセットを、クライアント通信デバイス動的信用証明に加えることによって、前記クライアント通信デバイス動的信用証明を変更することと、
前記変更されたクライアント通信デバイス動的信用証明を、前記ネットワークを介して送ることと
を含む方法。
【請求項7】
登録信号をネットワークを介して送ることと、
サーバ通信デバイス動的信用証明をネットワークを介して受信することと、
前記サーバ通信デバイス動的信用証明を、クライアント通信デバイス動的信用証明として格納することと
を更に含む請求項6の方法。
【請求項8】
前記クライアント通信デバイス動的信用証明は、複数の2進数ビットを含み、
前記ランダムオフセットは、複数のビットセットのうち1のみを備えた複数の2進数ビットを含む請求項6の方法。
【請求項9】
前記クライアント通信デバイス動的信用証明は、32ビットの2進数である請求項6の方法。
【請求項10】
クローン通信デバイスを検出する方法であって、
ランダムオフセットを生成することと、
前記ランダムオフセットを、サーバ通信デバイス動的信用証明に加えることによって、前記サーバ通信デバイス動的信用証明を変更することと、
前記サーバ通信デバイス動的信用証明を格納することと、
前記ランダムオフセットを含む信号を、ネットワークを介して送ることと、
前記ランダムオフセットを含む信号を、ネットワークを介して受信することと、
前記ランダムオフセットを、クライアント通信デバイス動的信用証明に加えることによって、前記クライアント通信デバイス動的信用証明を変更することと、
前記変更されたクライアント通信デバイス動的信用証明を前記ネットワークを介して送ることと、
前記変更されたクライアント通信デバイス動的信用証明を含む信号を、ネットワークを介して受信することと、
前記サーバ通信デバイス動的信用証明と、前記変更されたクライアント通信デバイス動的信用証明との間の相違を判定することと、
前記相違に基づいて、クローン通信デバイスの存在を検出することと
を含む方法。
【請求項11】
サーバ通信デバイス動的信用証明を生成することと、
前記サーバ通信デバイス動的信用証明を、ネットワークを介して送ることと、
登録信号をネットワークを介して送ることと、
前記サーバ通信デバイス動的信用証明を、ネットワークを介して受信することと、
前記サーバ通信デバイス動的信用証明を、クライアント通信デバイス動的信用証明として格納することと
を更に含む請求項10の方法。
【請求項12】
クローン通信デバイスを検出するサーバであって、
ランダムオフセットを生成するように構成されたロジックと、
前記ランダムオフセットを、サーバ通信デバイス動的信用証明に加えることによって、前記サーバ通信デバイス動的信用証明を変更するように構成されたロジックと、
前記サーバ通信デバイス動的信用証明を格納するように構成されたロジックと、
前記ランダムオフセットを含む信号を、ネットワークを介して送るように構成されたロジックと、
動的信用証明を含む信号を、ネットワークを介して受信するように構成されたロジックと、
前記サーバ通信デバイス動的信用証明と、前記受信した動的信用証明との間の相違を判定するように構成されたロジックと、
前記相違に基づいて、クローン通信デバイスの存在を検出するように構成されたロジックと
を含むサーバ。
【請求項13】
サーバ通信デバイス動的信用証明を生成するように構成されたロジックと、
前記サーバ通信デバイス動的信用証明をネットワークを介して送るように構成されたロジックと
を更に含む請求項12のサーバ。
【請求項14】
前記サーバ通信デバイス動的信用証明は、複数の2進数ビットを含み、
前記ランダムオフセットは、複数のビットセットのうち1のみを備えた複数の2進数ビットを含む請求項12のサーバ。
【請求項15】
前記相違数は、複数のランダムオフセットを用いた複数の変更回数と等しい請求項12のサーバ。
【請求項16】
前記サーバ通信デバイス動的信用証明は、32ビットの2進数である請求項12のサーバ。
【請求項17】
クローン通信デバイスを検出するためにシステム内で動作可能なクライアント通信デバイスであって、
ランダムオフセットを含む信号をネットワークを介して受信するように構成されたロジックと、
前記ランダムオフセットを、クライアント通信デバイス動的信用証明に加えることによって、前記クライアント通信デバイス動的信用証明を変更するように構成されたロジックと、
前記変更されたクライアント通信デバイス動的信用証明を、前記ネットワークを介して送るように構成されたロジックと
を含むクライアント通信デバイス。
【請求項18】
登録信号をネットワークを介して送るように構成されたロジックと、
サーバ通信デバイス動的信用証明をネットワークを介して受信するように構成されたロジックと、
前記サーバ通信デバイス動的信用証明を、クライアント通信デバイス動的信用証明として格納するように構成されたロジックと
を更に含む請求項17のクライアント通信デバイス。
【請求項19】
前記クライアント通信デバイス動的信用証明は、複数の2進数ビットを含み、
前記ランダムオフセットは、複数のビットセットのうち1のみを備えた複数の2進数ビットを含む請求項17のクライアント通信デバイス。
【請求項20】
前記クライアント通信デバイス動的信用証明は、32ビットの2進数である請求項17のクライアント通信デバイス。
【請求項21】
クローン通信デバイスを検出するシステムであって、
ランダムオフセットを生成し、
前記ランダムオフセットを、サーバ通信デバイス動的信用証明に加えることによって、前記サーバ通信デバイス動的信用証明を変更し、
前記サーバ通信デバイス動的信用証明を格納し、
前記ランダムオフセットを含む信号を、ネットワークを介して送り、動的信用証明を含む信号を、ネットワークを介して受信し、
前記サーバ通信デバイス動的信用証明と、前記受信された動的信用証明との間の相違を判定し、
前記相違に基づいて、クローン通信デバイスの存在を検出するように構成されたロジックを含むサーバと、
前記ランダムオフセットを含む信号を、ネットワークを介して受信し、
前記ランダムオフセットを、クライアント通信デバイス動的信用証明に加えることによって、前記クライアント通信デバイス動的信用証明を変更し、
前記変更されたクライアント通信デバイス動的信用証明を前記ネットワークを介して送るように構成されたロジックを含むクライアント通信デバイスと
を含むシステム。
【請求項22】
前記サーバは更に、
サーバ通信デバイス動的信用証明を生成し、
前記サーバ通信デバイス動的信用証明を、ネットワークを介して送るように構成されたロジックを含み、
前記クライアント通信デバイスは更に、
登録信号をネットワークを介して送り、
前記サーバ通信デバイス動的信用証明を、ネットワークを介して受信し、
前記サーバ通信デバイス動的信用証明を、クライアント通信デバイス動的信用証明として格納するように構成されたロジックを含む請求項21のシステム。
【請求項23】
コンピュータ読取可能媒体に組み込まれ、クローン通信デバイスを検出することが可能なコンピュータプログラムであって、
ランダムオフセットを生成するように動作可能なコードと、
前記ランダムオフセットを、サーバ通信デバイス動的信用証明に加えることによって、前記サーバ通信デバイス動的信用証明を変更するように動作可能なコードと、
前記サーバ通信デバイス動的信用証明を格納するように動作可能なコードと、
前記ランダムオフセットを含む信号を、ネットワークを介して送るように動作可能なコードと、
動的信用証明を含む信号を、ネットワークを介して受信するように動作可能なコードと、
前記サーバ通信デバイス動的信用証明と、前記受信した動的信用証明との間の相違を判定するように動作可能なコードと、
前記相違に基づいて、クローン通信デバイスの存在を検出するように動作可能なコードと
を備えるコンピュータプログラム。
【請求項24】
サーバ通信デバイス動的信用証明を生成するように動作可能なコードと、
前記サーバ通信デバイス動的信用証明をネットワークを介して送るように動作可能なコードと
を更に含む請求項23のコンピュータプログラム。
【請求項25】
前記サーバ通信デバイス動的信用証明は、複数の2進数ビットを含み、
前記ランダムオフセットは、複数のビットセットのうち1のみを備えた複数の2進数ビットを含む請求項23のコンピュータプログラム。
【請求項26】
前記相違数は、複数のランダムオフセットを用いた複数の変更回数と等しい請求項23のコンピュータプログラム。
【請求項27】
前記サーバ通信デバイス動的信用証明は、32ビットの2進数である請求項23のコンピュータプログラム。
【請求項28】
コンピュータ読取可能媒体に組み込まれ、ランダムオフセットを用いて動的信用証明を変更することが可能なコンピュータプログラムであって、
ランダムオフセットを含む信号をネットワークを介して受信するように動作可能なコードと、
前記ランダムオフセットを、クライアント通信デバイス動的信用証明に加えることによって、前記クライアント通信デバイス動的信用証明を変更するように動作可能なコードと、
前記変更されたクライアント通信デバイス動的信用証明を、前記ネットワークを介して送るように動作可能なコードと
を備えるコンピュータプログラム。
【請求項29】
登録信号をネットワークを介して送るように動作可能なコードと、
サーバ通信デバイス動的信用証明をネットワークを介して受信するように動作可能なコードと、
前記サーバ通信デバイス動的信用証明を、クライアント通信デバイス動的信用証明として格納するように動作可能なコードと
を更に含む請求項28のコンピュータプログラム。
【請求項30】
前記クライアント通信デバイス動的信用証明は、複数の2進数ビットを含み、
前記ランダムオフセットは、複数のビットセットのうち1のみを備えた複数の2進数ビットを含む請求項28のコンピュータプログラム。
【請求項31】
前記クライアント通信デバイス動的信用証明は、32ビットの2進数である請求項28のコンピュータプログラム。
【請求項32】
コンピュータ読取可能媒体に組み込まれ、クローン通信デバイスを検出することが可能なコンピュータプログラムであって、
ランダムオフセットを生成するように動作可能なコードと、
前記ランダムオフセットを、サーバ通信デバイス動的信用証明に加えることによって、前記サーバ通信デバイス動的信用証明を変更するように動作可能なコードと、
前記サーバ通信デバイス動的信用証明を格納するように動作可能なコードと、
前記ランダムオフセットを含む信号を、ネットワークを介して送るように動作可能なコードと、
前記ランダムオフセットを含む信号を、ネットワークを介して受信するように動作可能なコードと、
前記ランダムオフセットを、クライアント通信デバイス動的信用証明に加えることによって、前記クライアント通信デバイス動的信用証明を変更するように動作可能なコードと、
前記変更されたクライアント通信デバイス動的信用証明を前記ネットワークを介して送るように動作可能なコードと、
前記変更されたクライアント通信デバイス動的信用証明を含む信号を、ネットワークを介して受信するように動作可能なコードと、
前記サーバ通信デバイス動的信用証明と、前記変更された動的信用証明との間の相違を判定するように動作可能なコードと、
前記相違に基づいて、クローン通信デバイスの存在を検出するように動作可能なコードと
を備えるコンピュータプログラム。
【請求項33】
サーバ通信デバイス動的信用証明を生成することと、
前記サーバ通信デバイス動的信用証明を、ネットワークを介して送ることと、
登録信号をネットワークを介して送ることと、
前記サーバ通信デバイス動的信用証明を、ネットワークを介して受信することと、
前記サーバ通信デバイス動的信用証明を、クライアント通信デバイス動的信用証明として格納することと
を更に含む請求項32のコンピュータプログラム。
【請求項34】
クローン通信デバイスを検出するサーバであって、
ランダムオフセットを生成する手段と、
前記ランダムオフセットを、サーバ通信デバイス動的信用証明に加えることによって、前記サーバ通信デバイス動的信用証明を変更する手段と、
前記サーバ通信デバイス動的信用証明を格納する手段と、
前記ランダムオフセットを含む信号を、ネットワークを介して送る手段と、
動的信用証明を含む信号を、ネットワークを介して受信する手段と、
前記サーバ通信デバイス動的信用証明と、前記受信した動的信用証明との間の相違を判定する手段と、
前記相違に基づいて、クローン通信デバイスの存在を検出する手段と
を含むサーバ。
【請求項35】
サーバ通信デバイス動的信用証明を生成する手段と、
前記サーバ通信デバイス動的信用証明をネットワークを介して送る手段と
を更に含む請求項34のサーバ。
【請求項36】
前記サーバ通信デバイス動的信用証明は、複数の2進数ビットを含み、
前記ランダムオフセットは、複数のビットセットのうち1のみを備えた複数の2進数ビットを含む請求項34のサーバ。
【請求項37】
前記相違数は、複数のランダムオフセットを用いた複数の変更回数と等しい請求項34のサーバ。
【請求項38】
前記サーバ通信デバイス動的信用証明は、32ビットの2進数である請求項34のサーバ。
【請求項39】
クローン通信デバイスを検出するためにシステム内で動作可能なクライアント通信デバイスであって、
ランダムオフセットを含む信号をネットワークを介して受信する手段と、
前記ランダムオフセットを、クライアント通信デバイス動的信用証明に加えることによって、前記クライアント通信デバイス動的信用証明を変更する手段と、
前記変更されたクライアント通信デバイス動的信用証明を、前記ネットワークを介して送る手段と
を含むクライアント通信デバイス。
【請求項40】
登録信号をネットワークを介して送る手段と、
サーバ通信デバイス動的信用証明をネットワークを介して受信する手段と、
前記サーバ通信デバイス動的信用証明を、クライアント通信デバイス動的信用証明として格納する手段と
を更に含む請求項39のクライアント通信デバイス。
【請求項41】
前記クライアント通信デバイス動的信用証明は、複数の2進数ビットを含み、
前記ランダムオフセットは、複数のビットセットのうち1のみを備えた複数の2進数ビットを含む請求項39のクライアント通信デバイス。
【請求項42】
前記クライアント通信デバイス動的信用証明は、32ビットの2進数である請求項39のクライアント通信デバイス。
【請求項43】
クローン通信デバイスを検出するシステムであって、
ランダムオフセットを生成し、
前記ランダムオフセットを、サーバ通信デバイス動的信用証明に加えることによって、前記サーバ通信デバイス動的信用証明を変更し、
前記サーバ通信デバイス動的信用証明を格納し、前記ランダムオフセットを含む信号を、ネットワークを介して送り、
前記動的信用証明を含む信号を、ネットワークを介して受信し、前記サーバ通信デバイス動的信用証明と、前記変更された動的信用証明との間の相違を判定し、
前記相違に基づいて、クローン通信デバイスの存在を検出する手段を含むサーバと、
前記ランダムオフセットを含む信号を、ネットワークを介して受信し、
前記ランダムオフセットを、クライアント通信デバイス動的信用証明に加えることによって、前記クライアント通信デバイス動的信用証明を変更し、
前記変更されたクライアント通信デバイス動的信用証明を前記ネットワークを介して送る手段を含むクライアント通信デバイスと
を含むシステム。
【請求項44】
前記サーバは更に、サーバ通信デバイス動的信用証明を生成し、前記サーバ通信デバイス動的信用証明を、ネットワークを介して送る手段を含み、
前記クライアント通信デバイスは更に、登録信号をネットワークを介して送り、前記サーバ通信デバイス動的信用証明を、ネットワークを介して受信し、前記サーバ通信デバイス動的信用証明を、クライアント通信デバイス動的信用証明として格納する手段を含む請求項43のシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公表番号】特表2008−521348(P2008−521348A)
【公表日】平成20年6月19日(2008.6.19)
【国際特許分類】
【出願番号】特願2007−543172(P2007−543172)
【出願日】平成17年11月15日(2005.11.15)
【国際出願番号】PCT/US2005/041328
【国際公開番号】WO2006/055545
【国際公開日】平成18年5月26日(2006.5.26)
【出願人】(595020643)クゥアルコム・インコーポレイテッド (7,166)
【氏名又は名称原語表記】QUALCOMM INCORPORATED
【Fターム(参考)】