(57)【要約】【課題】  装置のセキュリティアソシエーションを提供すること。【解決手段】  分散された機器間で対称鍵を生成するステップは、少なくとも１つの機器の公開の値および秘密の値を生成するステップと、帯域外機構を介して他方の機器から公開の値をインポートするステップと、ローカル機器に対応する秘密の値および他方の機器から受信した公開の値の関数として秘密の値を生成するステップとを含む。【選択図】  図１
2005244988.tif 000002
【特許請求の範囲】
【請求項１】
リモートノードとの信頼関係を確立する方法であって、
少なくとも１つのノード上でローカルの公開の値およびローカルの秘密の値を生成するステップと、
帯域外機構を介して別のノードから公開の値を受信するステップと、
前記別のノードから受信した前記公開の値とともに前記ローカルの秘密の値を使用して秘密の値を生成するステップと
を備えたことを特徴とする方法。
【請求項２】
１対のノードの両方で実行され、および前記ノードの両方で生成された前記秘密の値は、対称であることを特徴とする請求項１に記載の方法。
【請求項３】
前記秘密の値を生成するステップは、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ計算を実行するステップを含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記秘密の値をローカルに保持するステップと、
前記別のノードから受信した前記公開の値を使用して前記秘密の値の保護を行うステップと、
前記帯域外機構を介して前記別のノードに前記保護された秘密の値を送信するステップと
をさらに備えたことを特徴とする請求項１に記載の方法。
【請求項５】
前記秘密の値を生成するステップは、Ｒｉｖｅｓｔ−Ｓｈａｍｉｒ−Ａｄｌｅｍａｎ（ＲＳＡ）計算を実行するステップを含むことを特徴とする請求項４に記載の方法。
【請求項６】
前記帯域外機構を介して別のノードから公開の値を受信するステップは、非同期接続を介して前記公開の値を受信するステップを含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記帯域外機構を介して別のノードから公開の値を受信するステップは、外部装置から前記公開の値をダウンロードするステップを含むことを特徴とする請求項１に記載の方法。
【請求項８】
前記外部装置は、携帯情報端末（ＰＤＡ）、フラッシュメモリ、メモリスティック、バーコード、スマートカード、ＵＳＢ互換装置、Ｂｌｕｅｔｏｏｔｈ互換装置、および赤外線互換装置のうちのいずれかであることを特徴とする請求項７に記載の方法。
【請求項９】
１つまたは複数のプロセッサに
公開コード構成要素および秘密コード構成要素を有するローカルの２部コード（ｌｏｃａｌ  ｔｗｏ−ｐａｒｔ  ｃｏｄｅ）を生成させ、
周辺装置を介して別のプロセッサから公開コード構成要素を受信させ、
前記ローカルの秘密コード構成要素、および前記別のプロセッサから受信した前記公開コード構成要素を使用して秘密の値を生成させる
１つまたは複数の命令を備えたことを特徴とするコンピュータ読取可能な媒体。
【請求項１０】
前記１つまたは複数の命令は前記別のプロセッサ上で実行され、および前記秘密の値は、前記別のプロセッサ上で生成された前記秘密の値と対称であることを特徴とする請求項９に記載のコンピュータ読取可能な媒体。
【請求項１１】
前記秘密の値を生成させる１つまたは複数の命令は、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ計算を実行させる１つまたは複数の命令を含むことを特徴とする請求項９に記載のコンピュータ読取可能な媒体。
【請求項１２】
１つまたは複数のプロセッサに
前記別のプロセッサから受信した前記公開コード構成要素を使用して前記秘密の値を符号化させ、
前記符号化された秘密の値を、前記周辺装置を介して前記別のプロセッサに送信させる
１つまたは複数の命令をさらに備えたことを特徴とする請求項９に記載のコンピュータ読取可能な媒体。
【請求項１３】
前記秘密の値を生成させる１つまたは複数の命令は、ＲＳＡ計算を実行させう１つまたは複数の命令を含むことを特徴とする請求項１２に記載のコンピュータ読取可能な媒体。
【請求項１４】
前記周辺装置は、前記１つまたは複数のプロセッサに非同期に接続されることを特徴とする請求項９に記載のコンピュータ読取可能な媒体。
【請求項１５】
前記周辺装置を介して別のプロセッサから公開コード構成要素を受信させる１つまたは複数の命令は、携帯情報端末（ＰＤＡ）、フラッシュメモリ、メモリスティック、バーコード、スマートカード、ＵＳＢ互換装置、Ｂｌｕｅｔｏｏｔｈ互換装置、および赤外線互換装置のうちの１つから前記公開コード構成要素をダウンロードするステップを含むことを特徴とする請求項９に記載のコンピュータ読取可能な媒体。
【請求項１６】
ローカルの公開／秘密鍵の対を生成する鍵生成器と、
帯域外接続を介して別のノードから公開鍵を受信し、前記ローカルの秘密鍵および前記別のノードから受信した公開鍵を使用して共有の秘密値を生成する共有秘密値生成器と
を備えたことを特徴とする装置。
【請求項１７】
前記共有の秘密値は、前記ローカルの公開鍵、および前記別のノードに対応する秘密鍵を使用して前記別のノードで生成された共有の秘密値と対称であることを特徴とする請求項１６に記載の装置。
【請求項１８】
前記別のノードは、サーバであることを特徴とする請求項１６に記載の装置。
【請求項１９】
前記共有秘密値生成器は、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ計算を実行することによって共有の秘密値を生成することを特徴とする請求項１６に記載の装置。
【請求項２０】
前記別のノードから受信された公開鍵を使用して前記秘密の値を符号化し、前記帯域外接続を介して前記符号化された秘密の値を前記別のノードに送信するエンコーダをさらに備えたことを特徴とする請求項１６に記載の装置。
【請求項２１】
前記共有秘密値生成器は、ＲＳＡ計算を実行することによって共有の秘密値を生成することを特徴とする請求項２０に記載の装置。
【請求項２２】
前記帯域外接続は、携帯情報端末（ＰＤＡ）、フラッシュメモリ、メモリスティック、バーコード、スマートカード、ＵＳＢ互換装置、Ｂｌｕｅｔｏｏｔｈ互換装置、および赤外線互換装置のうちのいずれかを含むことを特徴とする請求項１６に記載の装置。
【請求項２３】
２つ以上の処理ノードの間で信頼を確立するプロトコルであって、
少なくとも２つのノードの各々において公開鍵および秘密鍵を生成するステップと、
非同期機構を使用して前記少なくとも２つのノード間で前記公開鍵を交換するステップと、
前記２つのノードのうちの少なくとも１つにおいて共有すべき秘密値を計算するステップと
を備えたことを特徴とするプロトコル。
【請求項２４】
前記共有すべき秘密値を計算するステップは、前記２つのノードのうちのもう一方からの公開鍵および秘密鍵を使用する関数を実行するステップを含むことを特徴とする請求項２３に記載のプロトコル。
【請求項２５】
前記共有すべき秘密値を計算するステップは、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ計算を実行するステップを含むことを特徴とする請求項２４に記載のプロトコル。
【請求項２６】
前記共有すべき秘密値は、前記少なくとも２つのノード上で対称であることを特徴とする請求項２４に記載のプロトコル。
【請求項２７】
前記２つのノードのうちのもう一方からの公開鍵を使用して前記共有すべき秘密値を符号化するステップと、
前記共有すべき符号化された秘密値を前記非同期機構を介して前記２つのノードのうちのもう一方に送信するステップと
をさらに備えたことを特徴とする請求項２３に記載のプロトコル。
【請求項２８】
前記共有すべき秘密値を計算するステップは、ＲＳＡ計算を実行するステップを含むことを特徴とする請求項２７に記載のプロトコル。
【請求項２９】
前記帯域外機構は、携帯情報端末（ＰＤＡ）、フラッシュメモリ、メモリスティック、バーコード、スマートカード、ＵＳＢ互換装置、Ｂｌｕｅｔｏｏｔｈ互換装置、および赤外線互換装置のうちのいずれかを含むことを特徴とする請求項２３に記載のプロトコル。
【請求項３０】
ローカルの公開／秘密鍵対を生成する手段と、
帯域外接続を介して別のノードから公開鍵を受信する手段と、
前記ローカルの秘密鍵および前記別のノードから受信した公開鍵を使用して共有の秘密値を生成する手段と
を備えたことを特徴とする装置。
【請求項３１】
前記共有の秘密値を生成する手段は、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ計算を実行することを特徴とする請求項３０に記載の装置。
【請求項３２】
前記別のノードから受信された公開鍵を使用して前記共有の秘密値を符号化する手段をさらに備えたことを特徴とする請求項３０に記載の装置。
【請求項３３】
前記共有の秘密値を生成する手段は、ＲＳＡ計算を実行することを特徴とする請求項３２に記載の装置。
【請求項３４】
前記帯域外接続は、携帯情報端末（ＰＤＡ）、フラッシュメモリ、メモリスティック、バーコード、スマートカード、ＵＳＢ互換装置、Ｂｌｕｅｔｏｏｔｈ互換装置、および赤外線互換装置のうちのいずれかを含むことを特徴とする請求項３０に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、少なくとも２つのパーティ間の安全なアソシエーションを獲得することに関する。
【背景技術】
【０００２】
秘密鍵暗号方式は、送信側が秘密鍵を使用して送信すべきデータを暗号化し、ネットワーク接続を介して秘密鍵および暗号化されたデータを受信側に別々に、またはいっしょに送信し、受信側が受信したデータを同じ秘密鍵を使用して解読することによって行なわれる。公開鍵基盤（以下「ＰＫＩ」と呼ぶ）は、送信側が受信側に対応する公開鍵を使用して送信すべきデータを暗号化し、ネットワーク接続を介して暗号化されたデータを受信側に送信し、受信側が受信したデータをその秘密鍵を使用して解読することによって行なわれる。しかし、秘密鍵暗号方式の秘密鍵、およびＰＫＩの公開鍵の双方を共有するために必要な信頼性は、特にネットワークを介した複数の機器またはノード間の起動を保護するなどの制約された状況においては、分散されたネットワーク機器間で驚くほどの率で悪化する。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
本明細書では、複数の装置間の安全なネットワークアソシエーションについて記載する。
【課題を解決するための手段】
【０００４】
分散された機器間で対称鍵を生成するステップは、少なくとも１つの機器の公開鍵および秘密鍵の値を生成するステップと、帯域外のサードパーティ機構を介して他方の機器から公開鍵の値を受信するステップと、ローカル機器に対応する秘密鍵の値、および他方の機器から受信した秘密鍵の値の関数として（ａｓ  ａ  ｆｕｎｃｔｉｏｎ  ｏｆ）秘密の値（ｓｅｃｒｅｔ  ｖａｌｕｅ）を生成するステップとを備える。
【０００５】
本発明の範囲は、添付の図面を参照して以下の詳細な説明により理解される。また、以下の詳細な説明から、当業者には様々な変更および修正が明らかであるため、こうした詳細な説明は、本発明の実施形態を示しながらも、例示として提示されているにすぎないものである。
【発明を実施するための最良の形態】
【０００６】
図１に示すネットワーク環境の一例で、クライアント装置とも呼ばれる複数のクライアントコンピューティング装置１０５、１１０、１１５、および１２０は、ネットワーク１００を介して互いに結合されており、並びに少なくとも１つのサーバ装置１２５に結合されている。ネットワーク１００は、有線および／または無線のネットワークを含め従来の様々なネットワークのトポロジおよび種類のうちの任意のものを表すものとする。ネットワーク１００は、さらに公開および／または専用プロトコルを含め、従来の様々なネットワークプロトコルのうちの任意のものを使用することができる。ネットワーク１００は、例えばインターネット、および場合によっては１つまたは複数のローカルエリアネットワーク（ＬＡＮ）の少なくとも一部分を含むことができる。
【０００７】
クライアント装置１０５は、デスクトップパーソナルコンピュータ（ＰＣ）、ワークステーション、メインフレームコンピュータ、インターネット機器、およびゲームコンソールを含む従来の様々なコンピューティング装置のうちの任意のものを含むことができる。さらに、ネットワーク１００に関連付けられているクライアント装置は、有線および／または無線リンクによってネットワーク１００と通信することができる携帯情報端末（ＰＤＡ）１１０、ラップトップコンピュータ１１５、並びにセル方式電話１２０などを含むことができる。さらに、クライアント装置１０５、１１０、１１５、および１２０のうちの１つまたは複数は、同じ種類の装置、あるいは異なる種類の装置を含むことができる。
【０００８】
サーバ装置１２５は、様々なデータおよび／または機能のうちの任意のものをコンピューティング装置１０５、１１０、１１５、および１２０に提供することができる。データは、公開で使用可能であり、または制限して使用され、例えば適切な手数料が支払われている場合のみに使用可能であり、または一部のユーザのみに制限される場合がある。サーバ装置１２５は、ネットワークサーバ、アプリケーションサーバ、Ｗｅｂブレード、またはその任意の組合せのうちの少なくとも１つである。サーバ装置１２５は、コンテンツの供給源である任意の装置であり、クライアント装置１０５、１１０、１１５、および１２０は、こうしたコンテンツを受信する任意の装置を含む。
【０００９】
データ供給源（ｄａｔａ  ｓｏｕｒｃｅ）１３０または１３５では、オペレーティングシステムおよびアプリケーションを含むソフトウェアプログラムは、ロードおよび／または実行できるように、サーバ装置１２５またはクライアント装置１０５、１１０、１１５、および１２０のうちのいずれか１つのために準備され、および／またはそれに提供される。用語の統一のため、以下の説明は、本技術分野で知られているようなオペレーティングシステム、プログラム、およびアプリケーションのうちのいずれかを少なくとも単独で、または組合せて含むいずれかのものを「アプリケーション」と呼ぶこととする。
【００１０】
本明細書では、クライアント装置１０５、１１０、１１５、１２０、サーバ装置１２５、およびデータ供給源１３０および１３５のうちの任意のものの間で安全なアソシエーションについて、図２の実施形態の例を参照して説明する。
【００１１】
特に、図２の実施形態の例は、装置２０５と装置２３０との間で信頼関係がどのように確立されるかを示しており、装置２０５および装置２３０は、クライアント装置１０５、１１０、１１５、１２０、サーバ装置１２５、およびデータ供給源１３０および１３５のいずれか１つを表す。こうした装置は、あるいはネットワークノードとみなすことができる。本明細書に記載した実施形態の例によれば、信頼関係または安全なアソシエーションは、装置間の情報の伝播のために高い信頼度を必要とすることなく、機密の共有を確立することによって実現することができるのである。この信頼関係は、それだけには限定されないが、電子メールなど、情報の交換などの目的のために、または一方のノードから他方のノードにオペレーティングシステム（ＯＳ）をリモートでロードするために確立することができる。
【００１２】
図２の実施形態の例によれば、装置２０５と２３０との間の信頼関係は、装置２０５および２０３が結合して通信を行なうネットワーク１００を介して確立されるのではなく、サードパーティの帯域外すなわち非同期の機構（ｅｎｔｉｔｙ）が使用される。こうした機構は、以下「帯域外機構」（ｏｕｔ−ｏｆ−ｂａｎｄ  ｍｅｃｈａｎｉｓｍ）２４５と呼び、それだけには限定されないが、シリアルケーブル、ＵＳＢケーブル、赤外線接続、携帯情報端末（ＰＤＡ）、フラッシュメモリ、メモリスティック、バーコード、およびスマートカードなどを含むことができる。帯域外機構２４５は、プログラム主導でも、ユーザ介入を必要とするものでもよい。代わりに帯域外機構２４５のシリアルケーブル、ＵＳＢケーブル、および赤外線互換の例がプログラム主導、またはユーザにより実行されるものでもよい。データを宛先の装置にダウンロードするため、帯域外機構２４５として働くＰＤＡ、フラッシュメモリ、メモリスティック、バーコード、スマートカードなどの周辺装置は、一方の装置から他方の装置への物理的転送をする必要があり、したがってユーザの介入が必要となる。
【００１３】
第１の実施形態によれば、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ暗号プロトコルを使用して少なくとも装置２０５および２３０上で対称鍵が確立される。特に、装置２０５の生成器２１５および装置２３０の生成器２３５は各々、それぞれの装置のローカルの公開／秘密鍵対を生成する。装置２０５および２３０で生成された公開鍵の値は、帯域外機構２４５を介して交換される。したがって、帯域外機構２４５を介して他方の装置で生成された公開鍵の値をインポートした後、装置２０５および２３０は、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ計算を実行することによって、インポートされた公開鍵の値およびローカルの秘密鍵の値の関数として共有の秘密の値を生成することができる。Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ計算は、本技術分野では知られており、したがってここでは詳しく説明しない。
【００１４】
つまり、装置２０５上の共有秘密値生成器２２５は、生成器２１５によって生成された秘密鍵の値、および帯域外機構２４５を介して装置２３０からインポートされた公開鍵の値の関数としてＤｉｆｆｉｅ−Ｈｅｌｌｍａｎ共有の秘密の値を生成する。さらに、装置２３０上の共有秘密値生成器２４０は、生成器２３５によって生成された秘密鍵の値、および帯域外機構２４５を介して装置２０５からインポートされた公開鍵の値の関数としてＤｉｆｆｉｅ−Ｈｅｌｌｍａｎ共有の秘密の値を生成する。Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ暗号化技術に関して本技術分野で知られているように、公開鍵を交換することによって、装置２０５および２３０上で生成された共有の秘密鍵の値は同じ、すなわち対称となるが、いずれの装置も秘密鍵の値または共有の秘密の値をネットワークを介してエクスポートする必要はない。そうするのではなく、公開鍵の値のみを一方の装置からもう一方の装置に帯域外機構を介して送信して、必要な信頼度は低いものだけで済むのである。
【００１５】
各装置で生成されたＤｉｆｆｉｅ−Ｈｅｌｌｍａｎ秘密の値は、暗号化／解読、または他の既知の認証の目的に使用される。
【００１６】
図２の実施形態において、Ｒｉｖｅｓｔ−Ｓｈａｍｉｒ−Ａｄｌｅｍａｎ（以下「ＲＳＡ」と呼ぶ）暗号プロトコルを使用して少なくとも装置２０５および２３０の間で共有される秘密の値を確立することもできる。こうした実施形態の例によれば、秘密の値は、装置２０５および２３０のうちの一方で生成され、宛先装置に対応する公開鍵値によって保護されながら、帯域外機構２４５を介して他方のノードにエクスポートされる。
【００１７】
具体的には、ＲＳＡプロトコルを実施するため装置２０５および２３０が公開鍵値を生成することになるが、秘密鍵の値を生成する必要があるのは装置の一方だけである。秘密鍵の値は、共有する秘密の値を生成することになる装置で生成される。装置２０５の生成器２１５、および装置２３０の生成器２３５が各々、それぞれの装置のローカルの公開／秘密鍵対を生成することを前提に引き続きこの実施形態の一例の説明を行なうが、こうした例は限定的なものではない。
【００１８】
装置２０５が共有する秘密の値を生成することになると仮定すると、装置２３０の生成器２３５によって生成された公開鍵の値は、帯域外機構２４５を介して装置２０５にインポートされる。装置２０５上の共有秘密値生成器２２５は、生成器２１５によって生成されたローカルの秘密鍵の値、および帯域外機構２４５を介して装置２３０からインポートされた公開鍵の値の関数としてＲＳＡ秘密の値を生成する。ＲＳＡ暗号化技術に関して本技術分野で知られているように、秘密の値は、インポートされた公開鍵値、すなわち帯域外機構２４５を介して装置２３０から装置２０５にインポートされた公開鍵の値を使用して秘密の値を暗号化することによって装置２３０と共有される。次いで帯域外機構２４５は、秘密の値が装置２３０の公開鍵の値によって保護された状態で、秘密の値を装置２３０にエクスポートするために再度使用される。したがって、装置２０５および２３０は、秘密の値の共有による利点を得るが、これはさらに暗号化／解読、または他の既知の認証のために使用される。
【００１９】
本明細書に記載した実施形態の一実施例は、ブートローダのコードがネットワーク機器のファームウェア中に存在するネットワークを介して安全なブートを提供するステップを備える。こうした例については、ここで図２の実施形態の一例、および図３に示した処理フローの一例を参照して説明する。この説明は例にすぎず、どんな方法にも限定されないものとする。さらに、図３の処理は、説明から明らかになるように、処理の順序を任意に変えることができるため、動作の順序は限定されないものとする。
【００２０】
図３の処理は、図２の一例に関して説明しており、装置２０５はＲＡＤＩＵＳクライアントを表し、装置２３０はＲＡＤＩＵＳサーバを表す。リモート認証ダイヤルインユーザサービス（ＲＡＤＩＵＳ）は、サービス基盤が認証サーバに存在する中央データベース内のユーザプロファイルを維持することができるようにする認証サービスであり、プロファイルは次いでリモートアクセスサーバによってアクセスされる。
【００２１】
ＲＡＤＩＵＳクライアント２０５がＯＳをリモートにロードしようと試みると、そのプロファイルはＲＡＤＩＵＳサーバ２３０に格納され、ステップ３０５で公開／秘密鍵の値がＲＡＤＩＵＳクライアント２０５上の生成器２１５によって生成される。ＲＡＤＩＵＳクライアント２０５で生成された公開鍵の値は、ステップ３１０で帯域外機構２４５を介してＲＡＤＩＵＳサーバ２３０にエクスポートされる。
【００２２】
また、ステップ３０５で、ＲＡＤＩＵＳクライアント２０５での公開／秘密鍵の値の生成と同時に、またはおそらく、ＲＡＤＩＵＳサーバ２３０でのＲＡＤＩＵＳクライアント２０５からの公開鍵の値の受信に応答して、生成器２３５によってＲＡＤＩＵＳサーバ２３０でも公開／秘密鍵の値が生成される。ＲＡＤＩＵＳサーバ２３０で生成された公開鍵の値は、ステップ３１０で、帯域外機構２４５を介してＲＡＤＩＵＳクライアント２０５にエクスポートされる。
【００２３】
ＲＡＤＩＵＳサーバ２３０の生成器２４０は、ステップ３１５で、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ計算を実行することによって共有秘密の値を生成し、生成器２３５によって生成された秘密鍵の値、および帯域外機構２４５を介してＲＡＤＩＵＳクライアント２０５からインポートされた公開鍵の値の関数として共有の秘密値が計算される。
【００２４】
同様に、ＲＡＤＩＵＳクライアント２０５の生成器２２５は、３１５で、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ計算を実行することによって共有秘密の値を生成し、生成器２１５によって生成された秘密鍵値、および帯域外機構２４５を介してＲＡＤＩＵＳクライアント２３０からインポートされた公開鍵値の関数として共有の秘密の値が計算される。
【００２５】
生成器２２５および生成器２４０によって生成された秘密の値は、Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ暗号化技術の原則によれば対称である。
【００２６】
あるいは、ＲＡＤＩＵＳクライアント２０５でのＲＡＤＩＵＳサーバ２３０からのＯＳの安全なブートを、ＲＳＡ暗号化技術を使用して実行することもできる。こうした実施形態について、図２および図４の一例を参照して説明する。さらに、ＲＡＤＩＵＳクライアント２０５がＲＡＤＩＵＳクライアント２０５とＲＡＤＩＵＳサーバ２３０との間の信頼関係の確立を開始するという前提でこの例の説明を行うが、こうした例は限定的なものではない。図３および図４の各ブロックの叙述および数が厳密な順序を示しているのではないことに留意されたい。そうではなく、記載した順序は一例にすぎない。
【００２７】
したがって、図４では、ＲＡＤＩＵＳクライアント２０５がＯＳをリモートでロードしようと試みたとき、そのプロファイルは、ＲＡＤＩＵＳサーバ２３０に格納され、ステップ４０５で、ＲＡＤＩＵＳクライアント２０５の生成器２１５によって公開／秘密鍵の値が生成される。ＲＡＤＩＵＳクライアント２０５で生成された公開鍵の値は、ステップ４１０で、帯域外機構２４５を介してＲＡＤＩＵＳサーバ２３０にエクスポートされる。
【００２８】
また、ステップ４０５で、ＲＡＤＩＵＳクライアント２０５での公開／秘密鍵の値の生成と同時に、またはＲＡＤＩＵＳサーバ２３０でのＲＡＤＩＵＳクライアント２０５からの公開鍵の値の受信に応答して、生成器２３５によってＲＡＤＩＵＳサーバ２３０でも公開／秘密鍵の値が生成される。
【００２９】
ＲＡＤＩＵＳサーバ２３０の生成器２４０は、ステップ４１５で、ＲＳＡ計算を実行することによって共有される秘密の値を生成し、生成器２３５によって生成された秘密鍵の値、および帯域外機構２４５を介してＲＡＤＩＵＳクライアント２０５からインポートされた公開鍵の値の関数として共有の秘密値が計算される。
【００３０】
ＲＡＤＩＵＳサーバ２３０で生成された秘密の値は、ＲＡＤＩＵＳクライアント２０５からインポートされた公開鍵の値によって保護されるように符号化され、ステップ４２０で、帯域外機構２４５を介してＲＡＤＩＵＳクライアント２０５にエクスポートされる。
【００３１】
上述した技術を使用して、電子メール、テレビ会議の安全なリンクの確立などのデータの受渡を含む代替の目的のために、図１に示した装置１０５、１１０、１１５、１２０、サーバ１２５、およびデータ供給源１３０および１３５のうちの任意のものの間の信頼関係を確立することもできる。すなわち、上述した技術は、帯域外機構を使用して、こうしたアソシエーションの目的に関係なく、任意のネットワークノードが他のノードのうち少なくとも１つと信頼関係を得るために必要な信頼度を低減することとなるのである。
【００３２】
さらに、本明細書に記載した実施形態の一例に関して、公開／秘密鍵の値の生成の手法および方法は本技術分野では知られており、したがってここでは詳しく説明しないことに留意されたい。同様に、それだけには限定されないが、本明細書に記載した実施形態の例との関係で使用することができるＤｉｆｆｉｅ−ＨｅｌｌｍａｎプロトコルおよびＲＳＡプロトコルを含む暗号プロトコルも知られており、したがってこうしたプロトコルについては説明しない。
【００３３】
図５は、本明細書に記載した技術を実施するため使用することができる一般のコンピュータ環境５００を示している。コンピュータ環境５００は、コンピューティング環境の一例にすぎず、コンピュータおよびネットワークのアーキテクチャの使用または機能の範囲に関する限定を示唆するものではない。また、コンピュータ環境５００を、コンピュータ環境の例５００に示した構成要素のいずれか１つ、またはその組合せに関連する依存性または必要条件を有しているものと解釈すべきではない。
【００３４】
コンピュータ環境５００では、汎用コンピューティング装置はコンピュータ５０２の形で含まれる。コンピュータ５０２の構成要素は、それだけには限定されないが、１つまたは複数のプロセッサまたは処理ユニット５０４、システムメモリ５０６、およびプロセッサ５０４を含む様々なシステム構成要素をシステムメモリ５０６に結合するシステムバス５０８を含むことができる。
【００３５】
システムバス５０８は、様々なバスアーキテクチャのうちの任意のものを使用するメモリバスまたはメモリコントローラ、周辺バス、高速グラフィックスポート、およびプロセッサまたはローカルバスを含むいくつかの種類のバス構造のうち１つまたは複数を表す。こうしたアーキテクチャは、一例として、業界標準アーキテクチャ（ＩＳＡ）バス、マイクロチャネルアーキテクチャ（ＭＣＡ）バス、拡張ＩＳＡ（ＥＩＳＡ）バス、ビデオ電子装置規格化協会（ＶＥＳＡ）ローカルバス、メザニンバスとしても知られている周辺部品相互接続（ＰＣＩ）バス、ＰＣＴ  Ｅｘｐｒｅｓｓバス、ユニバーサルシリアルバス（ＵＳＢ）、Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ（ＳＤ）バス、またはＩＥＥＥ１３９４、すなわちＦｉｒｅＷｉｒｅバスなどを含むことができる。
【００３６】
コンピュータ５０２は、様々なコンピュータ読取可能な媒体を含むことができる。こうした媒体は、コンピュータ５０２からアクセスできる使用可能な任意の媒体とすることができ、揮発性および不揮発性媒体、リムーバブルおよび固定媒体を含む。
【００３７】
システムメモリ５０６は、ランダムアクセスメモリ（ＲＡＭ）５１０などの揮発性メモリ、および／または読み取り専用メモリ（ＲＯＭ）５１２またはフラッシュＲＡＭなどの不揮発性メモリの形のコンピュータ読取可能な媒体を含む。基本入出力システム（ＢＩＯＳ）５１４は、例えば起動中など、コンピュータ５０２内の要素間での情報の転送を支援する基本ルーチンを含み、ＲＯＭ５１２またはフラッシュＲＡＭに格納されている。ＲＡＭ５１０は一般に、処理ユニット５０４から直接アクセス可能な、および／または処理ユニット５０４が現在処理しているデータおよび／またはプログラムモジュールを含む。
【００３８】
コンピュータ５０２は、他のリムーバブル／固定、揮発性／不揮発性コンピュータ記憶媒体も含むことができる。一例として、図５は、固定不揮発性磁気媒体（図示せず）から読み取り、そこに書き込むハードディスクドライブ５１６、（「フロッピー（登録商標）ディスク」など）リムーバブル不揮発性磁気ディスク５２０から読み取り、あるいはそこに書き込む磁気ディスクドライブ５１８、およびＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、または他の光媒体など、リムーバブル不揮発性光ディスク５２４から読み取り、あるいはそこに書き込む光ディスクドライブ５２２も含むことができる。ハードディスクドライブ５１６、磁気ディスクドライブ５１８、および光ディスクドライブ５２２はそれぞれ、１つまたは複数のデータ媒体インターフェース５２５によってシステムバス５０８に接続されている。あるいは、ハードディスクドライブ５１６、磁気ディスクドライブ５１８、および光ディスクドライブ５２２を、１つまたは複数のインターフェース（図示せず）によってシステムバス５０８に接続することができる。
【００３９】
ディスクドライブおよびその関連のコンピュータ読取可能な媒体は、コンピュータ読取可能命令、データ構造、プログラムモジュール、およびコンピュータ５０２の他のデータの不揮発性記憶装置を提供する。この例は、ハードディスク５１６、リムーバブル磁気ディスク５２０、およびリムーバブル光ディスク５２４を示しているが、磁気カセットまたは他の磁気記憶装置、フラッシュメモリカード、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）または他の光記憶装置、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、電気的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ）など、コンピュータによってアクセス可能なデータを格納できる他の種類のコンピュータ読取可能な媒体を使用してコンピューティングシステムおよびコンピューティング環境を実装することもできることを理解されたい。
【００４０】
一例として、オペレーティングシステム５２６、１つまたは複数のアプリケーションプログラム５２８、他のプログラムモジュール５３０、およびプログラムデータ５３２を含めて、いくつかのプログラムモジュールをハードディスク５１６、磁気ディスク５２０、光ディスク５２４、ＲＯＭ５１２および／またはＲＡＭ５１０に格納することができる。こうしたオペレーティングシステム５２６、１つまたは複数のアプリケーションプログラム５２８、他のプログラムモジュール５３０、およびプログラムデータ５３２のそれぞれ（またはその何らかの組合せ）は、分散されたファイルシステムをサポートする常駐の構成要素のすべてまたは一部を実行することができる。
【００４１】
ユーザは、コマンドおよび情報をキーボード５３４およびポインティング装置５３６（例えば「マウス」）などの入力装置を介してコンピュータ５０２に入力することができる。他の入力装置５３８（具体的には図示せず）には、マイクロフォン、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、シリアルポート、スキャナなどがある。これらおよび他の入力装置は、システムバス５０８に結合されている入力／出力インターフェース５４０を介して処理ユニット５０４に接続されるが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（ＵＳＢ）など他のインターフェースおよびバス構造で接続してもよい。
【００４２】
モニタ５４２または他の種類の表示装置もまた、ビデオアダプタ５４４などのインターフェースを介してシステムバス５０８に接続することができる。モニタ５４２に加えて、他の出力周辺装置は、Ｉ／Ｏインターフェース５４０を介してコンピュータ５０２に接続することができるスピーカ（図示せず）およびプリンタ５４６などの構成要素を含むことができる。
【００４３】
コンピュータ５０２は、リモートコンピューティング装置５４８など１つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク式環境で動作することができる。一例として、リモートコンピューティング装置５４８は、ＰＣ、ポータブルコンピュータ、サーバ、ルータ、ネットワークコンピュータ、ピア装置、または他の共通のネットワークノードなどとすることができる。リモートコンピューティング装置５４８は、コンピュータ５０２に関連して本明細書に記載した要素および特徴の多くまたはすべてを含むことができるポータブルコンピュータとして示されている。あるいは、コンピュータ５０２は、ネットワーク接続外の環境でも動作することができる。
【００４４】
コンピュータ５０２とリモートコンピュータ５４８との間の論理接続は、ローカルエリアネットワーク（ＬＡＮ）５５０および一般の広域ネットワーク（ＷＡＮ）５５２として示されている。こうしたネットワーキング環境は、オフィス、全社規模のコンピュータネットワーク、イントラネット、およびインターネットではごく一般的である。
【００４５】
ＬＡＮネットワーキング環境で実施する場合、コンピュータ５０２は、ネットワークインタフェースまたはアダプタ５５４を介してローカルネットワーク５５０に接続される。ＷＡＮネットワーキング環境で実施する場合、コンピュータ５０２は一般に、モデム５５６、または広域ネットワーク５５２を介して通信を確立する他の手段を含む。モデム５５６は、コンピュータ５０２に内蔵のものでも外付けのものでもよく、Ｉ／Ｏインターフェース５４０または他の適切な機構を介してシステムバス５０８に接続することができる。示したネットワーク接続は例であり、コンピュータ５０２と５４８との間の少なくとも１つの通信リンクを確立する他の手段を使用することができることを理解されたい。
【００４６】
コンピューティング環境５００とともに示したものなど、ネットワーク式環境では、コンピュータ５０２に関連して示したプログラムモジュール、またはその一部をリモートメモリ記憶装置に格納することができる。一例として、リモートアプリケーションプログラム５５８は、リモートコンピュータ５４８のメモリ装置に存在する。説明上、アプリケーションまたはプログラムおよびオペレーティングシステムなどの他の実行可能プログラム構成要素は、本明細書には個別のブロックとして記載されているが、こうしたプログラムおよび構成要素は、様々なときにコンピューティング装置５０２の異なる記憶構成要素に存在し、コンピュータの少なくとも１つのデータプロセッサで実行されることを理解されたい。
【００４７】
本明細書では、様々なモジュールおよび技術を、１つまたは複数のコンピュータ、または他の装置によって実行されるプログラムモジュールなどのコンピュータ実行可能命令の一般的な文脈で説明することができる。一般にプログラムモジュールは、特定のタスクを実行し、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。一般に、プログラムモジュールの機能を、様々な実施形態で必要に応じて結合し、または分散することができる。
【００４８】
これらのモジュールおよび技術の実装を、ある形のコンピュータ読取可能な媒体に格納し、それを介して送信することができる。コンピュータ読取可能な媒体は、コンピュータによってアクセス可能な任意の使用可能な媒体とすることができる。コンピュータ読取可能な媒体は、それだけには限定されないが一例として、「コンピュータ記憶媒体」および「通信媒体」を含むことができる。
【００４９】
「コンピュータ記憶媒体」には、コンピュータ読取可能命令、データ構造、プログラムモジュール、他のデータなど、情報を記憶するための任意の方法または技術で実施される揮発性および不揮発性のリムーバブルおよび固定媒体がある。コンピュータ記憶媒体には、それだけには限定されないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）または他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、または所望の情報の格納に使用でき、コンピュータからアクセスできる他の任意の媒体などがある。
【００５０】
「通信媒体」は一般に、コンピュータ読取可能命令、データ構造、プログラムモジュール、または他のデータを搬送波または他の移送機構などの変調されたデータ信号に組み込む。通信媒体は、任意の情報配送媒体も含むことができる。「変調されたデータ信号」という用語は、信号に情報を符号化するように１つまたは複数のその特性が設定または変更された信号を意味する。単に非限定的な例として、通信媒体には、有線ネットワーク、直接配線された接続などの有線媒体、および音響、ＲＦ、赤外線、その他の無線媒体などの無線媒体がある。また、上記のどんな組合せでもコンピュータ読取可能な媒体の範囲内に含まれる。
【００５１】
本明細書を通じて、記載した特定の特徴、構造、または特性が本発明の少なくとも１つの実施形態に含まれることを意味する「一実施形態」または「実施形態の一例」に言及している。したがって、こうした句の使用は、１つだけではなく複数の実施形態を指している場合がある。さらに、記載した特徴、構造、または特性を、１つまたは複数の実施形態に任意の適したやり方で結合することができる。
【００５２】
しかし、１つまたは複数の特定の詳細の無しに、または他の方法、リソース、材料などを用いて本発明を実施することができることを当業者は理解できよう。他の場合では、単に本発明の態様を不明瞭にするのを避けるために、よく知られている構造、リソース、または動作を示していない、または説明していない。
【００５３】
本発明の実施形態の例および用途を示し、説明してきたが、本発明は上記の正確な構成およびリソースに限定されるものではないことを理解されたい。主張した本発明の範囲から逸脱することなく、当業者に明らかな様々な修正、変更、および変形を、本明細書に開示した本発明の方法およびシステムの構成、操作、および詳細に加えることができる。
【図面の簡単な説明】
【００５４】
【図１】実施形態の一例によるクライアント／ネットワークシステムを示す図である。
【図２】実施形態の一例による装置のアソシエーションを示す図である。
【図３】実施形態の一例による処理フローを示す図である。
【図４】実施形態の一例による別の処理フローを示す図である。
【図５】本明細書に記載した技術を実施するために使用できる一般のコンピュータネットワーク環境を示す図である。
【符号の説明】
【００５５】
１００  ネットワーク
１３０  データ供給源
１３５  データ供給源
２１５  Ｐ／Ｐ生成器
２２５  ＳＳ生成器
２３５  Ｐ／Ｐ生成器
２４０  ＳＳ生成器
２４５  Ｏ／Ｂ機構
５０４  処理ユニット
５０６  システムメモリ
５２５  データメディアインターフェース
５２６  オペレーティングシステム
５２８  アプリケーションプログラム
５３０  プログラムモジュール
５３０  他のプログラムモジュール
５３２  プログラムデータ
５３４  キーボード
５３６  マウス
５３８  他の装置
５４０  Ｉ／Ｏインターフェース
５４２  モニタ
５４４  ビデオアダプタ
５４６  プリンタ
５４８  リモートコンピューティング装置
５５２  インターネット
５５４  ネットワークアダプタ
５５６  モデム
５５８  リモートアプリケーションプログラム
【図１】
2005244988.tif 000003
【図２】
2005244988.tif 000004
【図３】
2005244988.tif 000005
【図４】
2005244988.tif 000006
【図５】
2005244988.tif 000007
【外国語明細書】
2005244988000001.pdf