(57)【要約】  本発明は、信頼できる第３者を利用せずに、通信システムにおける互いに未知の２つの通信当事者間での信頼できる関係の確立を提供する。本発明は、信頼できる関係の確立の目的に限られた非インタラクティブな作業証明と、問題インスタンスの解を求めるためのこのような作業証明を利用して、通信当事者間で転送すべき情報に暗号で署名を行うこと、並びに、この作業証明を検証し、該検証が肯定の結果をもたらす場合には、信頼できる関係を得るためのセッション・オブジェクトを生成することに基づいている。【選択図】図２
2008545353.tif 000002
【特許請求の範囲】
【請求項１】
信頼できる第３者を利用せずに、通信システムにおいて互いに未知の２つの通信当事者間で信頼できる関係を確立するための方法であって、
（ｉ）前記２つの通信当事者のうちの第１の通信当事者側で、
前記２つの通信当事者の少なくとも識別子と、前記第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
前記第１の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
前記導き出された問題インスタンスの解を求めるステップと、
前記問題インスタンスの解を求めるため、前記信頼できる関係の確立の目的に限られた作業証明を生成するステップと、
前記データ及び前記作業証明を前記第２の通信当事者に転送するステップと、を実行し、その後、
（ｉｉ）前記第２の通信当事者側で、
前記問題インスタンスの解を求めるための前記作業証明を検証するステップと、
前記検証ステップが肯定の結果をもたらす場合、前記信頼できる関係を得るためのセッション・オブジェクトを生成して、これを前記第１の通信当事者に送信するステップと、
を実行する、
ことを含む方法。
【請求項２】
信頼できる第３者を利用せずに、通信システムにおいて互いに未知の２つの通信当事者間で信頼できる関係の確立を開始するための方法であって、該方法は、前記２つの通信当事者のうちの第１の通信当事者側で行われ、
前記２つの通信当事者の少なくとも識別子と、前記第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
前記第１の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
前記導き出された問題インスタンスの解を求めるステップと、
前記問題インスタンスの解を求めるため、前記信頼できる関係の確立の目的に限られた作業証明を生成するステップと、
前記データ及び前記作業証明を前記第２の通信当事者に転送するステップと、
を含む方法。
【請求項３】
信頼できる第３者を利用せずに、通信システムにおいて互いに未知の２つの通信当事者間で信頼できる関係の確立を完了するための方法であって、該方法は、前記２つの通信当事者の第２の通信当事者側で行われ、
第１の通信当事者から受信した問題インスタンスの解を求めるため前記信頼できる関係の確立の目的に限られた作業証明を、前記２つの通信当事者の少なくとも識別子と前記第１の通信当事者から前記第２の通信当事者へ転送すべき情報とを含むデータと共に検証するステップと、
前記検証ステップが肯定の結果をもたらす場合、前記信頼できる関係を得るためのセッション・オブジェクトを生成して、これを前記第１の通信当事者に送信するステップと、
を含む方法。
【請求項４】
前記作業証明が前記問題インスタンスに対する解であり、前記データセットが前記第１の通信当事者の公開鍵を含む、
ことを特徴とする請求項１から３の何れか１項に記載の方法。
【請求項５】
前記作業証明が、前記問題インスタンスに対する解の知識証明に基づくデジタル署名であり、前記作業証明が、前記問題インスタンスの解を公開せず、前記デジタル署名が、前記データセットの全て又は一部にわたって計算される、
ことを特徴とする請求項１から３の何れか１項に記載の方法。
【請求項６】
前記暗号計算を実行する前記ステップが、前記作成済みのデータセットの少なくとも一部に対して擬似ランダム関数を実行するステップを含む、
ことを特徴とする請求項１又は２に記載の方法。
【請求項７】
前記暗号計算を実行する前記ステップが更に、前記擬似ランダム関数の結果を問題インスタンスにマッピングするためのマッピング関数を実行するステップを含む、
ことを特徴とする請求項６に記載の方法。
【請求項８】
前記解を求めるステップが失敗した場合、前記作成済みのデータセットの少なくとも一部を修正し、該修正済みのデータセットに基づいて前記暗号計算を実行するステップを更に含む、
ことを特徴とする請求項１又は２に記載の方法。
【請求項９】
前記作業証明を検証する前記ステップが、
前記第１の通信当事者側での前記暗号計算のベースとなる前記データセットに基づいて前記暗号計算を実行するステップと、
前記受信した作業証明が前記暗号計算の実行に対応することを検証するステップと、
を含むことを特徴とする請求項１又は３に記載の方法。
【請求項１０】
データセットを作成する前記ステップが、前記データセット内にタイムスタンプを作成するステップを更に含む、
ことを特徴とする請求項１又は２に記載の方法。
【請求項１１】
前記作業証明を検証する前記ステップは、タイムスタンプが有効であるようにチェックを行うステップを含む、
ことを特徴とする請求項１又は３に記載の方法。
【請求項１２】
前記セッション・オブジェクトが暗号鍵を含む、
ことを特徴とする請求項１又は３に記載の方法。
【請求項１３】
前記生成したセッション・オブジェクトの送信前に暗号化を行うステップを更に含む、
ことを特徴とする請求項１又は３に記載の方法。
【請求項１４】
前記セッション・オブジェクトを暗号化する前記ステップが、前記作成済みのデータセットに含まれる前記第１の通信当事者の公開鍵に基づいて行われる、
ことを特徴とする請求項１３に記載の方法。
【請求項１５】
通信システムにおける通信装置であって、信頼できる第３者を利用せずに第１の通信当事者としての前記通信装置と第２の通信当事者との間での信頼できる関係の確立を開始するように構成される通信装置において、
前記２つの通信当事者が互いに未知の当事者であり、前記通信装置が、
前記２つの通信当事者の少なくとも識別子と、前記第１の通信当事者から前記第２の通信当事者へ転送すべき情報とを含むデータセットを作成するように構成される作成器と、
前記第１の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すように構成される実行器と、
前記導き出された問題インスタンスの解を求めるように構成される解決器と、
前記問題インスタンスの解を求めるため、前記信頼できる関係の確立の目的に限られる作業証明を生成するように構成される生成器と、
前記データ及び前記作業証明を前記第２の通信当事者に送信し、前記第２の通信当事者からセッション・オブジェクトを受信するように構成される送受信器と、
を備えることを特徴とする通信装置。
【請求項１６】
通信システムにおける通信装置であって、信頼できる第３者を利用せずに第１の通信当事者としての前記通信装置と第２の通信当事者との間での信頼できる関係の確立を開始するように構成される通信装置において、
前記２つの通信当事者が互いに未知の当事者であり、前記通信装置が、
前記２つの通信当事者の少なくとも識別子と、前記第１の通信当事者から前記第２の通信当事者へ転送すべき情報とを含むデータセットを作成する手段と、
前記第１の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出す手段と、
前記導き出された問題インスタンスの解を求める手段と、
前記問題インスタンスの解を求めるため、前記信頼できる関係の確立の目的に限られる作業証明を生成する手段と、
前記データ及び前記作業証明を前記第２の通信当事者に送信し、前記第２の通信当事者からセッション・オブジェクトを受信する手段と、
を含むことを特徴とする通信装置。
【請求項１７】
前記実行器は、前記作成器により作成された前記データセットの少なくとも一部において擬似ランダム関数を実行するように更に構成される、
ことを特徴とする請求項１５に記載の通信装置。
【請求項１８】
前記実行器は、前記擬似ランダム関数の結果を問題インスタンスにマッピングするためのマッピング関数を実行するように更に構成される、
ことを特徴とする請求項１７に記載の通信装置。
【請求項１９】
前記解決器は、
前記解決器が前記問題インスタンスの解を求めることができなかった場合、前記作成済みのデータセットの少なくとも一部を前記作成器に修正させて、該修正済みのデータセットに基づいて前記実行器に前記暗号計算を実行させる、
ように更に構成されている、
ことを特徴とする請求項１５に記載の通信装置。
【請求項２０】
前記生成器は、前記問題インスタンスに対する解として前記作業証明を生成するように更に構成され、前記データセットは、前記第１の通信当事者の公開鍵を含む、
ことを特徴とする請求項１５に記載の通信装置。
【請求項２１】
前記生成器は、前記問題インスタンスに対する解の知識証明に基づいてデジタル署名として前記作業証明を生成するように更に構成され、前記作業証明は前記問題インスタンスの解を公開せず、前記デジタル署名は前記データセットの全て又は一部にわたって計算される、
ことを特徴とする請求項１５に記載の通信装置。
【請求項２２】
前記作成器が、前記データセット内にタイムスタンプを作成するように更に構成される、
ことを特徴とする請求項１５に記載の通信装置。
【請求項２３】
通信システムにおける通信装置であって、信頼できる第３者を利用せずに第１の通信当事者と第２の通信当事者としての前記通信装置との間での信頼できる関係の確立を完了するように構成される通信装置において、
前記２つの通信当事者が互いに未知の当事者であり、前記通信装置が、
問題インスタンスに対する解を得るための前記信頼できる関係の確立の目的に限られる作業証明を、前記２つの通信当事者の少なくとも識別子と前記第１の通信当事者から前記第２の通信当事者へ転送すべき情報とを含むデータと共に前記第１の通信当事者から受信するように構成される送受信器と、
前記受信した作業証明を検証するように構成される検証器と、
前記検証器が肯定の結果をもたらす場合、前記信頼できる関係を得るためのセッション・オブジェクトを生成するように構成される生成器と、
を備え、
前記送受信器が、前記生成器によって生成された前記セッション・オブジェクトを前記第１の通信当事者に送信するように更に構成される、
ことを特徴とする通信装置。
【請求項２４】
通信システムにおける通信装置であって、信頼できる第３者を利用せずに第１の通信当事者と第２の通信当事者としての前記通信装置との間での信頼できる関係の確立を完了するように構成される通信装置において、
前記２つの通信当事者は互いに未知の当事者であり、前記通信装置が、
問題インスタンスに対する解を得るための前記信頼できる関係の確立の目的に限られる作業証明を、前記２つの通信当事者の少なくとも識別子と前記第１の通信当事者から前記第２の通信当事者へ転送すべき情報とを含むデータと共に前記第１の通信当事者から受信する手段と、
前記受信した作業証明を検証する手段と、
前記検証器が肯定の結果をもたらす場合、前記信頼できる関係を得るためのセッション・オブジェクトを生成する手段と、
前記生成器によって生成された前記セッション・オブジェクトを前記第１の通信当事者に送信する手段と、
を含む通信装置。
【請求項２５】
前記検証器が、
前記第１の通信当事者側での前記暗号計算のベースとなるデータセットに基づいて暗号計算を実行し、
前記受信した作業証明が前記暗号計算の実行に対応することを検証する、
ように更に構成される、
ことを特徴とする請求項２３に記載の通信装置。
【請求項２６】
前記検証器は、タイムスタンプが有効であるようにチェックを行うよう更に構成される、
ことを特徴とする請求項２３に記載の通信装置。
【請求項２７】
前記生成器は、暗号鍵を含むセッション・オブジェクトを生成するように更に構成される、
ことを特徴とする請求項２３に記載の通信装置。
【請求項２８】
前記生成器は、前記セッション・オブジェクトの送信前に、前記生成したセッション・オブジェクトを暗号化するように更に構成される、
ことを特徴とする請求項２３に記載の通信装置。
【請求項２９】
前記生成器は、前記第１の通信当事者の公開鍵に基づいて前記セッション・オブジェクトを暗号化するように更に構成される、
ことを特徴とする請求項２８に記載の通信装置。
【請求項３０】
信頼できる第３者を利用せずに、通信システムにおいて互いに未知の２つの通信当事者間で信頼できる関係を確立するシステムであって、
（ｉ）第１の通信当事者としての少なくとも１つの第１の通信装置であって、
前記２つの通信当事者の少なくとも識別子と、前記第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータセットを作成するように構成される作成器と、
前記第１の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すように構成される実行器と、
前記導き出された問題インスタンスの解を求めるように構成される解決器と、
前記問題インスタンスの解を求めるため、前記信頼できる関係の確立の目的に限られる作業証明を生成するように構成される第１の生成器と、
前記データ及び前記作業証明を前記第２の通信当事者に送信し、前記第２の通信当事者からセッション・オブジェクトを受信するように構成される第１の送受信器と、
を含む第１の通信装置と、
（ｉｉ）前記第２の通信当事者としての少なくとも１つの第２の通信装置であって、
前記問題インスタンスの解を求めるための前記信頼できる関係の確立の目的に限られる前記作業証明を、前記２つの通信当事者の少なくとも前記識別子と、前記第１の通信当事者から前記第２の通信当事者へ転送すべき情報とを含む前記データと共に前記第１の通信当事者から受信するように構成される第２の送受信器と、
前記受信した作業証明を検証するように構成される検証器と、
前記検証器が肯定の結果をもたらす場合、前記信頼できる関係を得るための前記セッション・オブジェクトを生成するように構成される第２の生成器と、
を含む第２の通信装置と、
を備え、
前記第２の送受信器は、前記第２の生成器によって生成された前記セッション・オブジェクトを前記第１の通信当事者に送信するように更に構成される、
ことを特徴とするシステム。
【請求項３１】
コンピュータ可読媒体上で具現化され、且つ通信システム内の通信装置のデジタル処理手段のメモリにロード可能なコンピュータプログラム製品であって、前記コンピュータプログラム製品が、
前記デジタル処理手段上で実行されたときに、
２つの通信当事者の少なくとも識別子と、第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
前記第１の通信当事者の識別子に関連する前記作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
前記導き出された問題インスタンスの解を求めるステップと、
前記問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を生成するステップと、
前記データ及び前記作業証明を前記第２の通信当事者に転送するステップと、
を実行するためのソフトウェアコード部を含む、
ことを特徴とするコンピュータプログラム製品。
【請求項３２】
コンピュータ可読媒体上で具現化され、且つ通信システムにおいて通信装置のデジタル処理手段のメモリにロード可能なコンピュータプログラム製品であって、前記コンピュータプログラム製品が、
前記デジタル処理手段上で実行されたときに、
前記第１の通信当事者から受信した問題インスタンスに対する解を得るため、前記信頼できる関係の確立の目的に限られる作業証明を、２つの通信当事者の少なくとも識別子と第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータと共に検証するステップと、
前記検証ステップが肯定の結果をもたらす場合、前記信頼できる関係を得るためのセッション・オブジェクトを生成して、これを前記第１の通信当事者に送信するステップと、
を実行するためのソフトウェアコード部を含む、
ことを特徴とするコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号プロトコルの分野を対象とし、未知の通信当事者間における信頼できる関係の確立に関する。詳細には、本発明は、信頼できる第３者を利用せずに、通信システムにおいて互いに未知の２つの通信当事者間での信頼できる関係を確立する手段に関する。通信システムは、例えば、インターネット又はアドホック・ネットワークである。
【背景技術】
【０００２】
近年、通信技術は、ユーザの数及び通信サービスのユーザによる利用量の点では広く行き渡ってきている。このことはまた、既存の通信システムを介して交換される情報量及びデータ量の莫大な増加をもたらした。
【０００３】
これにより、通信システムのユーザにとっては、ユーザが受け取る莫大な情報量の取り扱い、特に要求していない情報や望ましくない情報の取り扱いに関する問題が顕著に現れてきた。このようなスパミング情報（スパミング：すなわち、何らかの電子通信媒体を利用して、要求していないメッセージを無差別に大量に送信すること）は、望ましい「本物の」情報の量を圧倒的に容易に上回ることがある。このような状況は、ユーザが、ユーザの望む「本物の」情報を選別して取り出すことを少なくとも面倒な及び／又は困難なものにするだけでなく、例えば個人用メール・ボックスの保存スペースなどの情報システムの容量のオーバーロードを生じ易くする原因にもなる。
【０００４】
現在、上記で概説した問題は、インターネットにおいて、特にアドホック・ネットワーク及び／又はセンサネットワークにおいて蔓延している。しかしながら、この問題は、上記のタイプのネットワークに限られたことではなく、特に、未知の（場合によっては未登録の）通信当事者が存在するあらゆる通信システムに関連する問題である。現状の認識から判断して、上記の問題は、例えば、集中型ネットワーク及び／又はユーザ管理機能、セキュリティ機能、又は同様のもの等を処理する中央当事者を有していない通信システムについて特に当てはまる。このようなシステムを表す一実施例として、ピアツーピア（Ｐ２Ｐ）システムなどにおける分散型システム環境について述べることができる。この問題に関する既存の事例には以下が含まれる。
−電子メール。開放型電子メール・インフラストラクチャの要件は、事前に互いの紹介を行うことなく、誰でもが電子メールを他の誰かに送信できることである。
−ＷＷＷ（ワールド・ワイド・ウェブ）サイト自体により管理される永続的ユーザ識別子を有するＷＷＷサイト。
−例えば移動通信装置のような極度にリソースが制約された装置により、例えば、無線プロキシミティ・ネットワークを通じて提供されるネットワーク・サービス。
【０００５】
これらの状況又は設定の多くにおいて、統一的な特徴として、ユーザの「識別子」は、（中央当事者により統制されないため）任意に生成される可能性があり、いずれの中央当事者によっても管理を受けない点が挙げられる。
【０００６】
悪意のある当事者により実行された場合、ユーザ（又はユーザ機器）又はネットワーク要素などの１当事者が複数の識別子を偽って請求するような状況は、文献で「シビル・アタック」と呼ばれてきた。すなわち、この「シビル・アタック」は、一種の悪意のある識別子の偽造と考えることができ、この結果、悪意のある当事者が複数の（偽造された）識別子を他の当事者に提示するという点で、識別子とエンティティとの間に想定される対応付けを損ねるものである。
【０００７】
「シビル・アタック」は、文献で広く論じられており、最初に紹介されたのは、Ｊｏｈｎ  Ｒ．  Ｄｏｕｃｅｕｒによる「シビル・アタック」、ピアツーピアシステムに関する第１回国際ワークショップ（ＩＰＴＰＳ０２）の会報、米国マサチューセッツ州ケンブリッジ、２００２年３月である(非特許文献１)。
【０００８】
シビル・アタックにより引き起こされる問題は、悪意のある当事者が、例えばインターネット上でワーム及びトロイの木馬並びに他のマルウェアを介してネットワーク接続されたコンピュータの相当量及び場合によっては莫大な量を制御することができるという危険性により悪化する。すなわち、システムの重要な部分が悪意のある当事者により制御され、これによって、例えば、セキュリティの脅威に対抗するために実際に意図されたシステムの冗長性が損なわれる可能性がある。その結果、既存の正当な認証及び識別子が危殆化され、悪意のある当事者の制御下に置かれる可能性がある。
【０００９】
このような問題は、現在インターネット上に存在するスパム（すなわち要求していない大量の電子メール）問題の土台を成すものである。
【００１０】
上述のＤｏｕｃｅｕｒの論文で提案されているような公知の従来技術による解決策は、識別子を証明するように構成された信頼できる第３者をシステムの中に組み入れるというものである。しかしながら、このような信頼できる第３者は、通信システムに対する（例えば管理又は実装に関する）追加のコスト及び労力を伴うことになる。
【００１１】
上記の問題を解決又は少なくとも軽減する別のアプローチは、「作業証明（ｐｒｏｏｆ−ｏｆ−ｗｏｒｋ）」というキーワードにより参照される。概説すれば、作業証明システムとは、通信当事者などの装置が何らかの「作業」を行ったことを証明するのに用いるシステムであり、通常は、装置が幾らかの処理時間及び／又は容量を費やしたことを意味する。従って、例えばスパム阻止などに関して、電子メールの送信を望むいずれのコンピュータも、受信機が該コンピュータからの電子メールを受け入れる前に上記のような作業証明を生成する必要がある。この着想は、当事者が、どちらかといえば無用の作業を実施することで正当で「良い性質」であることを証明しなければならず、これにより不正利用又は違法行為を阻止する。
【００１２】
作業証明に関しては幾つかの従来技術が存在する。
【００１３】
例えば、Ｍｉｃｒｏｓｏｆｔの研究における「ｐｅｎｎｙ  ｂｌａｃｋ」プロジェクトが、作業証明に関する論文をｈｔｔｐ：／／ｒｅｓｅａｒｃｈ．ｍｉｃｒｏｓｏｆｔ．ｃｏｍ／ｒｅｓｅａｒｃｈ／ｓｖ／ＰｅｎｎｙＢｌａｃｋで提示している。
【００１４】
作業証明という着想は、Ｃ．  Ｄｗｏｒｋ及びＭ．  Ｎａｏｒによる論文「Ｐｒｉｃｉｎｇ  ｖｉａ  Ｐｒｏｃｅｓｓｉｎｇ  ｏｒ  Ｃｏｍｂａｔｔｉｎｇ  Ｊｕｎｋ  Ｍａｉｌ（迷惑メールの処理又は対抗にかかる価格設定）」、Ｃｏｍｐｕｔｅｒ  Ｓｃｉｅｎｃｅ（１９９３年、会報ＣＲＹＰＴＯ’９２）の講義ノート、ｐｐ．１３７〜１４７に提示されている(非特許文献２)。この論文では、署名方式に基づく作業証明も用いられている。しかしながら、この論文では、上記方式は作業証明の適用性を限定しておらず、更に明らかにもしていない。従って、上記方式は、上記問題の解決に適したものではなく、すなわち、例えば新しい識別子を互いに導入するようなものではない。
【００１５】
本来セッション・オブジェクト枯渇攻撃に対抗するように設計されたクライアント・パズルというコンセプトを通じて、インタラクティブな作業証明が導入された。このクライアント・パズルは、Ａ．  Ｊｕｅｌｓ及びＪ．  Ｂｒａｉｎａｒｄによる論文「Ｃｌｉｅｎｔ  Ｐｕｚｚｌｅｓ：  Ａ  Ｃｒｙｐｔｏｇｒａｐｈｉｃ  Ｃｏｕｎｔｅｒｍｅａｓｕｒｅ  Ａｇａｉｎｓｔ  Ｃｏｎｎｅｃｔｉｏｎ  Ｄｅｐｌｅｔｉｏｎ  Ａｔｔａｃｋｓ（クライアント・パズル：接続枯渇攻撃に対抗する暗号対策）」、Ｓ．  Ｋｅｎｔ編集、ＮＤＳＳ’９９会報（ネットワーク及び分散型セキュリティシステム）、ｐ．１５１〜１６５、（１９９９年）に紹介されている(非特許文献３)。これらのプロトコルは、作業証明の適用性を限定することはできるが、インタラクティブなものであり、従って、例えば蓄積転送型ネットワークにおいて適用可能ではない。更に、上記問題を解決するためにこのようなプロトコルをどのように使用できるか、即ち、新たな識別子を互いに導入する方法については提案されておらず、示唆さえなされていない。
【００１６】
「ｂｒｅａｄ  ｐｕｄｄｉｎｇ  ｐｒｏｔｏｃｏｌｓ」という概念を通じて、コンピュータの処理能力を単に浪費するのではなく、何か「有用な」ことを行うために作業証明を利用するという着想が導入された。これは、Ｍ．  Ｊａｋｏｂｓｓｏｎ及びＡ．  Ｊｕｅｌｓによる「Ｐｒｏｏｆｓ  ｏｆ  ｗｏｒｋ  ａｎｄ  ｂｒｅａｄ  ｐｕｄｄｉｎｇ  ｐｒｏｔｏｃｏｌｓ（作業証明及びブレッド・プディング・プロトコル）」、通信及びマルチメディア・セキュリティに関するＩＦＩＰ  ＴＣ６及びＴＣ１１共同作業会議（ＣＭＳ’９９）の会報、１９９９年９月、ベルギー、ルーバンで紹介された(非特許文献４)。
【００１７】
しかしながら、従来技術による上述のアプローチのいずれも上記の状況、特にＳｙｂｉｌ  Ａｔｔａｃｋに関連する好適な解決策を提供するものではない。従って、公知の従来技術は、本発明の基礎となる問題を実際に許容可能な方法で解決するのには適していないことになる。
【００１８】
このように、信頼できる第３者が存在しないときに互いに未知の２つの通信当事者の紹介の改善を可能にする上記の問題及び欠点に対する解決策が依然として必要とされている。
【００１９】
【非特許文献１】Ｊｏｈｎ  Ｒ．  Ｄｏｕｃｅｕｒによる「シビル・アタック」、ピアツーピアシステムに関する第１回国際ワークショップ（ＩＰＴＰＳ０２）の会報、米国マサチューセッツ州ケンブリッジ、２００２年３月
【非特許文献２】Ｃ．  Ｄｗｏｒｋ及びＭ．  Ｎａｏｒによる論文「Ｐｒｉｃｉｎｇ  ｖｉａ  Ｐｒｏｃｅｓｓｉｎｇ  ｏｒ  Ｃｏｍｂａｔｔｉｎｇ  Ｊｕｎｋ  Ｍａｉｌ（迷惑メールの処理又は対抗にかかる価格設定）」、Ｃｏｍｐｕｔｅｒ  Ｓｃｉｅｎｃｅ（１９９３年、会報ＣＲＹＰＴＯ’９２）の講義ノート、ｐｐ．１３７〜１４７
【非特許文献３】Ａ．  Ｊｕｅｌｓ及びＪ．  Ｂｒａｉｎａｒｄによる論文「Ｃｌｉｅｎｔ  Ｐｕｚｚｌｅｓ：  Ａ  Ｃｒｙｐｔｏｇｒａｐｈｉｃ  Ｃｏｕｎｔｅｒｍｅａｓｕｒｅ  Ａｇａｉｎｓｔ  Ｃｏｎｎｅｃｔｉｏｎ  Ｄｅｐｌｅｔｉｏｎ  Ａｔｔａｃｋｓ（クライアント・パズル：接続枯渇攻撃に対抗する暗号対策）」、Ｓ．  Ｋｅｎｔ編集、ＮＤＳＳ’９９会報（ネットワーク及び分散型セキュリティシステム）、ｐ．１５１〜１６５、（１９９９年）
【非特許文献４】Ｍ．  Ｊａｋｏｂｓｓｏｎ及びＡ．  Ｊｕｅｌｓによる「Ｐｒｏｏｆｓ  ｏｆ  ｗｏｒｋ  ａｎｄ  ｂｒｅａｄ  ｐｕｄｄｉｎｇ  ｐｒｏｔｏｃｏｌｓ（作業証明及びブレッド・プディング・プロトコル）」、通信及びマルチメディア・セキュリティに関するＩＦＩＰ  ＴＣ６及びＴＣ１１共同作業会議（ＣＭＳ’９９）の会報、１９９９年９月、ベルギー、ルーバン
【発明の開示】
【発明が解決しようとする課題】
【００２０】
従って、本発明の目的は、従来技術に内在する上記欠点を取り除き、その結果として改善された方法、通信装置、システム及びコンピュータプログラム製品を提供することである。
【課題を解決するための手段】
【００２１】
本発明の第１の態様によれば、本発明の目的は、例えば、信頼できる第３者を利用せずに、通信システムにおいて互いに未知の２つの通信当事者間で信頼できる関係を確立するための方法により達成され、該方法は、
（ｉ）２つの通信当事者のうちの第１の通信当事者側で、
２つの通信当事者の少なくとも識別子と、第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
第１の通信当事者の識別子に関連する作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
導き出された問題インスタンスの解を求めるステップと、
問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を生成するステップと、
データ及び作業証明を第２の通信当事者に転送するステップと、
を実行し、その後、
（ｉｉ）第２の通信当事者側で、
問題インスタンスの解を求めるための作業証明を検証するステップと、
検証ステップが肯定の結果をもたらす場合、信頼できる関係を得るためのセッション・オブジェクトを生成して、第１の通信当事者に送信するステップと、
を実行する、
ことを含む。
【００２２】
本発明の第２の態様によれば、本発明の目的は、例えば、信頼できる第３者を利用せずに、通信システムにおいて互いに未知の２つの通信当事者間で信頼できる関係の確立を開始するための方法により達成され、該方法は、２つの通信当事者のうちの第１の通信当事者側で行われ、
２つの通信当事者の少なくとも識別子と、第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
第１の通信当事者の識別子に関連する作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
導き出された問題インスタンスの解を求めるステップと、
問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を生成するステップと、
データ及び作業証明を第２の通信当事者に転送するステップと、
を含む。
【００２３】
本発明の第３の態様によれば、本発明の目的は、例えば、信頼できる第３者を利用せずに、通信システムにおいて互いに未知の２つの通信当事者間で信頼できる関係の確立を完了するための方法により達成され、該方法は、２つの通信当事者の第２の通信当事者側で行われ、
第１の通信当事者から受信した問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を、２つの通信当事者の少なくとも識別子と第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータと共に検証するステップと、
検証ステップが肯定の結果をもたらす場合、信頼できる関係を得るためのセッション・オブジェクトを生成して、これを上記第１の通信当事者に送信するステップと、
を含む。
【００２４】
更に好適な展開によれば、以下の１又はそれ以上が適用される。
−作業証明は問題インスタンスに対する解であり、データセットは、第１の通信当事者の公開鍵を含む。
−作業証明は、問題インスタンスに対する解の知識証明に基づくデジタル署名であり、作業証明は問題インスタンスの解を公開せず、デジタル署名は、データセットの全て又は一部にわたって計算される。
−暗号計算を実行するステップは、作成済みのデータセットの少なくとも一部に対して擬似ランダム関数を実行するステップを含む。
−暗号計算を実行するステップは、擬似ランダム関数の結果を問題インスタンスにマッピングするためのマッピング関数を実行するステップを更に含む。
−本方法は、解を求めるステップが失敗した場合、作成済みのデータセットの少なくとも一部を修正し、該修正済みのデータセットに基づいて暗号計算を実行するステップを更に含む。
−作業証明を検証するステップは、第１の通信当事者側での暗号計算のベースとなるデータセットに基づいて暗号計算を実行するステップと、受信した作業証明が暗号計算の実行に対応することを検証するステップとを含む。
−データセットを作成するステップは、このデータセット内にタイムスタンプを作成するステップを更に含む。
−作業証明を検証するステップは、タイムスタンプが有効であるようにチェックを行うステップを含む。
−セッション・オブジェクトは暗号鍵を含む。
−本方法は、生成したセッション・オブジェクトの送信前に暗号化を行うステップを更に含む。及び／又は、
−セッション・オブジェクトを暗号化するステップは、作成済みのデータセットに含まれる第１の通信当事者の公開鍵に基づいて行われる。
【００２５】
本発明の第４の態様によれば、本発明の目的は、例えば、信頼できる第３者を利用せずに第１の通信当事者としての通信装置と第２の通信当事者との間での信頼できる関係の確立を開始するように構成された通信システム内の通信装置により達成され、これら２つの通信当事者は互いに未知の当事者であり、該通信装置が、
２つの通信当事者の少なくとも識別子と、第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータセットを作成するように構成される作成器と、
第１の通信当事者の識別子に関連する作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すように構成される実行器と、
導き出された問題インスタンスの解を求めるように構成される解決器と、
問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を生成するように構成される生成器と、
データ及び作業証明を第２の通信当事者に送信し、第２の通信当事者からセッション・オブジェクトを受信するように構成される送受信器と、
を備える。
【００２６】
本発明の第５の態様によれば、本発明の目的は、例えば、信頼できる第３者を利用せずに第１の通信当事者としての通信装置と第２の通信当事者との間での信頼できる関係の確立を開始するように構成された通信システム内の通信装置により達成され、これら２つの通信当事者は互いに未知の当事者であり、該通信装置が、
２つの通信当事者の少なくとも識別子と、第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータセットを作成する手段と、
第１の通信当事者の識別子に関連する作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出す手段と、
導き出された問題インスタンスの解を求める手段と、
問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られる作業証明を生成する手段と、
データ及び作業証明を第２の通信当事者に送信し、第２の通信当事者からセッション・オブジェクトを受信する手段と、
を含む。
【００２７】
更に好適な展開によれば、以下の１又はそれ以上が適用される。
−実行器は、作成器により作成されたデータセットの少なくとも一部において擬似ランダム関数を実行するように更に構成される。
−実行器は、擬似ランダム関数の結果を問題インスタンスにマッピングするためのマッピング関数を実行するように更に構成される。
−解決器は、該解決器が問題インスタンスの解を求められなかった場合、作成済みのデータセットの少なくとも一部を作成器に修正させて、該修正済みのデータセットに基づいて実行器に暗号計算を実行させるように更に構成される。
−生成器は、問題インスタンスに対する解として作業証明を生成するように更に構成され、データセットは第１の通信当事者の公開鍵を含む。
−生成器は、問題インスタンスに対する解の知識証明に基づいてデジタル署名として作業証明を生成するように更に構成され、作業証明は問題インスタンスの解を公開せず、デジタル署名はデータセットの全て又は一部にわたって計算される。及び／又は、
−作成器はデータセット内にタイムスタンプを作成するように更に構成される。
【００２８】
本発明の第６の態様によれば、本発明の目的は、例えば、信頼できる第３者を利用せずに第１の通信当事者と第２の通信当事者としての通信装置との間での信頼できる関係の確立を完了するように構成された通信システム内の通信装置により達成され、これら２つの通信当事者は互いに未知の当事者であり、該通信装置が、
問題インスタンスに対する解を得るため、信頼できる関係の確立の目的に限られる作業証明を、２つの通信当事者の少なくとも識別子と第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータと共に第１の通信当事者から受信するように構成される送受信器と、
受信した作業証明を検証するように構成される検証器と、
検証器が肯定の結果をもたらす場合、信頼できる関係を得るためのセッション・オブジェクトを生成するように構成される生成器と、
を備え、
送受信器は、生成器によって生成されたセッション・オブジェクトを第１の通信当事者に送信するように更に構成される。
【００２９】
本発明の第７の態様によれば、本発明の目的は、例えば、信頼できる第３者を利用せずに第１の通信当事者と第２の通信当事者としての通信装置との間での信頼できる関係の確立を完了するように構成された通信システム内の通信装置により達成され、これら２つの通信当事者は互いに未知の当事者であり、通信装置が、
問題インスタンスに対する解を得るため信頼できる関係の確立の目的に限られる作業証明を、２つの通信当事者の少なくとも識別子と第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータと共に第１の通信当事者から受信する手段と、
検証器が肯定の結果をもたらす場合、信頼できる関係を得るためのセッション・オブジェクトを生成する手段と、
生成器によって生成されたセッション・オブジェクトを第１の通信当事者に送信する手段と、
を含む。
【００３０】
更に好適な展開によれば、以下の１又はそれ以上が適用される。
−検証器は、第１の通信当事者側での暗号計算のベースとなるデータセットに基づいて暗号計算を実行して、受信した作業証明が暗号計算の実行に対応することを検証するように更に構成される。
−検証器は、タイムスタンプが有効になるようにチェックを行うように更に構成される。
−生成器は、暗号鍵を含むセッション・オブジェクトを生成するように更に構成される。
−生成器は、セッション・オブジェクトの送信前に、生成したセッション・オブジェクトを暗号化するように更に構成される。及び／又は、
−生成器は、第１の通信当事者の公開鍵に基づいてセッション・オブジェクトを暗号化するように更に構成される。
【００３１】
本発明の第８の態様によれば、本発明の目的は、例えば、信頼できる第３者を利用せずに通信システムにおいて互いに未知の２つの通信当事者間で信頼できる関係を確立するシステムにより達成され、該システムは、
（ｉ）第１の通信当事者としての本発明の第４又は第５の態様の何れか一方の態様による少なくとも１つの第１の通信装置と、
（ｉｉ）第２の通信当事者としての本発明の第６又は第７の態様の何れか一方の態様による少なくとも１つの第２の通信装置と、
を備える。
【００３２】
本発明の第９の態様によれば、本発明の目的は、例えば、コンピュータ可読媒体上で具現化され、且つ通信システム内の通信装置のデジタル処理手段のメモリにロード可能なコンピュータプログラム製品であって、該製品がデジタル処理手段上で実行された場合、本発明の第１又は第２の態様の何れか一方の態様によるステップを実行するためのソフトウェアコード部を備えるコンピュータプログラム製品により達成される。
【００３３】
本発明の第１０の態様によれば、本発明の目的は、例えば、コンピュータ可読媒体上で具現化され、且つ通信システム内の通信装置のデジタル処理手段のメモリにロード可能なコンピュータプログラム製品であって、該製品がデジタル処理手段上で実行された場合、本発明の第１又は第３の態様の何れか一方の態様によるステップを実行するためのソフトウェアコード部を備えるコンピュータプログラム製品により達成される。
【００３４】
本発明の複数の実施形態によれば、作業証明に対する２つの基本的な使用例が存在する。第１の使用例では、知識証明プロトコルが用いられ、従って、作業証明は情報を秘匿するというプロパティを有することになる。すなわち、生成された問題インスタンスの解が作業証明によって公開されるのではなく、解かれた問題インスタンスのみが公開される。第２の使用例では、知識証明プロトコルは用いられず、従って、作業証明は情報を秘匿するものではない。すなわち、この作業証明では問題インスタンスの解も公開される。しかしながら、この場合でさえも、第１の通信当事者により作成されたデータセットで定められる限定された適用性に起因して、（情報を秘匿するものではないとしても）この作業証明を別の目的に利用することはできないので、通信当事者間での信頼できる関係を適切に確立することができる。
【００３５】
本発明の利点は、信頼できる第３者が存在しないときに互いに未知の２つの通信当事者の紹介が行われることである。
【００３６】
本発明の実施形態の利点は、非インタラクティブな及び／又は情報を秘匿する作業証明、すなわち、証明自体を公開しない作業証明を、互いに未知の２つの通信当事者の紹介のために提供することである。
【００３７】
本発明の実施形態の更なる利点は、作業証明に基づく署名方式の利用を提示することである。
【００３８】
有利には、本発明の実施形態は、ある量の労力が費やされたことの証明を通して、識別子と（おそらく公開鍵を含む）関連データとを導入する方法に対する実行可能な解決策を提供する。換言すれば、何らかの作業が行われたことの証明を用いて任意の情報に暗号で署名を行う方法に対する解決策が好適に提供される。
【００３９】
更に、提示される解決策により以下の利点のすべてが達成される。
−解かれた問題であることを示す証拠は公開されず、従って、攻撃者は作業証明それ自体を実行することにより利益を得ることはない。
−提示されるプロトコルは非インタラクティブなものであり、蓄積転送型ネットワークで利用することができるものである。
−証拠は公開されず（上記を参照）、Ｆｉａｔ−Ｓｈａｍｉｒヒューリスティックを介してその証拠を利用して、公開鍵を含む任意のデータに署名することができ、この結果、順方向秘匿性（Ｆｏｒｗａｒｄ  Ｓｅｃｒｅｃｙ）が得られる。
【００４０】
最終的に、本発明に関連する計算上の構成は（完全に）パラメータ化することが可能であり、従って、重すぎることがないため実施可能である。
【発明を実施するための最良の形態】
【００４１】
以下、添付図面を参照しながら本発明について更に詳述する。
【００４２】
本発明について非限定的な特定の実施例を参照しながら本明細書で説明する。当業者であれば、本発明がこの実施例に限定されるわけではなく、より広範に適用可能であることは理解されるであろう。
【００４３】
詳細には、本発明は一般に、暗号プロトコルの分野を対象とし、例えば、インターネット及び何らかのアドホック・ネットワーク又はセンサネットワークなどの、それぞれのアーキテクチャを有するあらゆる環境において未知の通信当事者間での信頼できる関係の確立に関するものである。
【００４４】
本明細書に示される実施形態についての説明は、本発明の基礎をなす基本的な一般概念の特定の実施を意味し、従って、本発明は、与えられたあらゆる具体的な実施例に限定されるものではない。
【００４５】
概説すれば、本発明は、信頼できる第３者が存在しないときに、互いに未知の２つの通信当事者間での信頼できる関係を導入すなわち確立する暗号プロトコルを実装するための一般的フレーム・ワークを提示するものである。
【００４６】
図１は、本発明の１つの実施形態に従う汎用プロトコルのフローチャートを示す。描かれているプロトコルの通信当事者が、証明器Ｐ（すなわち証明側）及び検証器Ｖ（すなわち検証側）により示されている。図１に従う汎用プロトコルは以下の通りである。
【００４７】
証明器通信当事者Ｐは、データのセットＡを作成することにより検証器通信当事者Ｖとの信頼できる関係の確立を開始する（ステップＳ１）。作成されたデータセットＡには、例えば、Ｐ用の識別子、Ｖ用の識別子、及びソルトＳ＿１（すなわち「初期ベクトル」、例えば鍵導出関数への入力として使用される一連のランダムビット）が含まれる。セットＡはまた、公開鍵又は公開鍵の暗号ハッシュ、タイムスタンプ及び／又は検証器Ｖに送信すべきメッセージなどの補助データを含んでもよい。
【００４８】
第２のステップであるステップＳ２で、証明器は、暗号計算と呼ぶことができる算出を実行する。この算出は、作成されたデータセットＡに基づいて実行される。上述の作業証明というコンセプトに照らせば、これらの計算は、基本的に例えば別の当事者へのメッセージの送信を望む当事者によって行われるべき「作業」である。
【００４９】
本実施形態によれば、図１のステップＳ２の計算は、例示的にＳ２１からＳ２２までのステップに細分化することができる。
【００５０】
ステップＳ２１で、証明器は、作成済みのデータセットＡに適用される擬似ランダム関数ｈの結果としてのビット列Ｓ、すなわちＳ＝ｈ（ａ）の計算を行う。この擬似ランダム関数は、例えば、（ＳＨＡ１などの）ある種の暗号ハッシュ関数とすることができる。ステップＳ２２で、問題インスタンスに対して任意のビット列をマッピングするためにマッピング関数ｍを適用することにより、証明器Ｐは、自ら解くことになる計算上の問題ｘ、すなわちｘ＝ｍ（ｓ）を作成／導出する。この問題インスタンスは、解を求めるのが平均して（非常に）困難である（例えば、問題のサイズでは超多項式を解く試みを必要とする）。ｘ＝ｍ（ｓ）は、Ｐが計算を行う「困難な」問題インスタンスを示す記述式とする。
【００５１】
ステップＳ３で、証明器Ｐは、問題インスタンスｘを解いて、解ｗを求める。
【００５２】
問題に解がなければ、すなわちステップＳ４で「いいえ」であれば、証明器Ｐは、計算のベースとなる最初に作成されたデータセットＡの少なくとも一部を修正し、この修正のためにステップＳ１に戻り、ステップＳ２の暗号計算及びステップＳ３の解法を再び開始する。例えば、セットＡのソルトＳ＿１を変更することができる。
【００５３】
ステップＳ４で「はい」であれば、すなわち問題インスタンスｘに解ｗがあれば、プロトコルはステップＳ５に進み、そこで、証明器Ｐは、問題インスタンスの解について、及び更に上述の計算の実行についての作業証明を生成する。この生成された作業証明は、その適用性において、関与する通信当事者間での信頼できる関係の確立に限定される。
【００５４】
ステップＳ６で、証明器Ｐは、作業証明ｐ（ｗ）と、入力セットＭ及びＡとを第２の通信当事者すなわち検証器Ｖに送信する。
【００５５】
証明器Ｐから受信した作業証明ｐ（ｗ）の検証（ステップＳ７）において、検証器Ｖは、最初に、ステップＳ７１で、それぞれの暗号計算ｍ（ｈ（ａ））を実行し、すなわち問題インスタンスｘの再計算を行う。次のステップＳ７２で、検証器Ｖは、セットＡから導き出された問題ｘに対する解ｗについての知識に作業証明ｐ（ｗ）が対応していることを確認する。
【００５６】
ステップＳ７１及びＳ７２の検証が肯定結果をもたらさない場合、すなわちステップＳ７３で「いいえ」であれば、検証器はプロトコルの実行を中断し、すなわち、信頼できる関係は確立されない。この場合、ＰからＶに送信されるメッセージは、信頼できる通信当事者から送信されたものとは見なされない。これらのメッセージに関する取り扱い、及びこの場合の処理の進め方の決定は、（検証器Ｖの）ローカル・セキュリティ・ポリシに左右される。ステップＳ７３で「はい」の場合、すなわち、作業証明が正しかったことにより証明器Ｐの紹介（ＰとＶとの間での信頼できる関係）が受け入れられた場合には、検証器Ｖは、実行されたばかりの紹介プロトコルなしで通信を行うのに必要なあらゆる情報を生成して証明器Ｐに送信する。本質的に、この情報は、いわゆるセッション・オブジェクトにより本明細書で表されるものである。上記情報又はセッション・オブジェクトはまた、セットＡ又はＭの何れかに含まれる情報を用いて暗号化し、暗号形式でＰに送信することができる。これらのステップは、図１のＳ８、Ｓ８１及びＳ８２でそれぞれ示されている。
【００５７】
ステップＳ３の関数ｗ＝ｓｏｌｖｅ（ｘ）は、ステップＳ７２からＳ７３までの確認関数に比べて著しく計算が困難でなければならない。そうでなければ、検証器Ｖは、Ｐとほぼ同量の作業量を費やす必要があり、結果として信頼性がほとんど得られなくなる。
本発明の実施形態によれば、ステップＳ６２でのセッション・オブジェクトの暗号化は、以下の２つの方法で実施することができる。
ｉ．）問題インスタンスｘは情報の暗号化に使用できる公開鍵を表わし、この情報は（証明器側及び検証器側の双方が既知である）ｘを用いて解読することもできる。但し、これは、ステップＳ８２で送信された情報が、問題インスタンスｘの解を得たい何れの敵対ノードによっても（任意の時間内で）解読できることを意味する。
ｉｉ．）或いは、セットＭ又はセットＡ内の情報は証明器Ｐの公開鍵を含む。この場合、検証器Ｖは、この公開鍵を用いて情報又はセッション・オブジェクトを暗号化することができ、これにより、セッション・オブジェクトをこの公開鍵に限ることができる。
【００５８】
以下では、本発明の実施形態の上述の２つの使用例について説明する。
【００５９】
セットＡの情報が、作業証明の適用性を証明器Ｐに限定するようなものである場合、ｐ（ｗ）は、ｗを出力する関数（例えばｗ＝ｐ（ｗ））となることができる。これは、セットＭとセットＡとが互いに等しいことを要件とする。作業証明の有用性を証明器Ｐに限ることは、Ｐの識別子に対応する公開鍵をセットＡに含めることにより達成できる。これにより、個別の知識証明プロトコルが不要になる。この場合、解いた問題インスタンスの解（すなわち、いわゆる証拠）は、作業証明により公開される。しかしながら、このことは、作業証明の適用性が限定されているので、提案された方法の実行に対してどのような問題も引き起こすものではない。
【００６０】
別の使用例では知識証明プロトコルが用いられる。この場合、作業証明は通常通り解かれた問題インスタンスを公開するが、この問題インスタンスの対応する解（すなわち証拠）は公開しない。この理由として、検証器Ｖは、作業証明を検証するために（常に）問題インスタンスを知っている必要があるが、知識証明を用いる場合、検証器Ｖは、問題インスタンスの解を知る必要がないためである。
【００６１】
知識証明ｐ（ｗ）はまた、セットＡから導き出された鍵ペアを用いて、特にセットＡにより定められた証明器Ｐの公開鍵を用いてセットＭに対して行われる署名として理解することができる。署名器（すなわち証明器Ｐ）により作成された疑似ランダム・チャレンジ・データと共に知識証明を利用することは、Ｆｉａｔ−Ｓｈａｍｉｒヒューリスティックと呼ばれ、公開鍵署名方式を生成するのに一般に用いられている。
【００６２】
使用される知識証明プロトコルは、入力セットＭに対してＦｉａｔ−Ｓｈａｍｉｒヒューリスティックを使用することに限られた本発明の実施形態によるものである。これらの入力Ｍは、例えば、ステップＳ１で作成されたデータセットＡの要素の一部を組み合わせたものとすることができる。しかしながら、知識証明プロトコルの疑似ランダム関数により生成される乱数が、ステップＳ２２の問題インスタンスｘ又はステップＳ２２のビット列ｓと同じである場合、具体的な暗号プロトコルがその時点で機能しなくなる可能性がある。従って、このような機能不良を防止するために、セットＭの中に異なるソルトＳ＿２を含めるようにしてもよい。
【００６３】
別の選択肢として、検証器は、作業証明が（有効期限の点で）十分に「新鮮」なものであることを要求することができる。このようにすれば、検証器は、セットＭ又はセットＡの何れかがタイムスタンプを含んでいることを検証し、そのタイムスタンプが有効なタイムスタンプであること、すなわち、そのタイムスタンプの値が将来の値ではなく、十分に最近（例えば過去１分以内）に作成された値であり、必要な精度で作成されていることをチェックする。
【００６４】
かなり詳細且つ例示的に上述した方法又はプロトコルはまた、実質的に以下のより一般的なステップに対応することも理解できよう。
証明器Ｐは、証明器Ｐと検証器Ｖとの間でセッションｑを識別するあるセットから計算上難かしい問題を導き出す。
この問題が解かれる。
（任意選択的に）証明器Ｐと検証器Ｖとの間のセッションｑに限られた別のメッセージが、Ｆｉａｔ−Ｓｈａｍｉｒヒューリスティック及び知識証明を用いて署名される。
検証器Ｖは、セッションｑに基づいて具体的なセッション・オブジェクトと応答し、上記セッション・オブジェクトは証明器Ｐに送信される。
【００６５】
中核となる基本的な考え方は、証明器Ｐが、作業証明を用いて新たなセッション又は（公開鍵のような）識別子を検証器Ｖに紹介することができ、検証器Ｖが上記証明を受け入れた場合、証明器Ｐと検証器Ｖとの間の将来の通信において、この証明（又は類似の証明）を再び行う必要がないようにするというものである。
【００６６】
証明器Ｐが自ら問題インスタンスｘを解くことができる（図１のステップＳ２３及びＳ２４を参照のこと）ので、上記問題インスタンスｘが可解であることは明らかであるが、この問題インスタンスｘは、証明器Ｐがある問題を解いたこと、すなわち何らかの「作業」を行ったことをコミットしている点に更に留意されたい。この「作業」は、未知の２つの当事者を互いに「紹介」するのに必要な労力の量に相応する十分な量の労力を構成するように、システムをパラメータ化することができる。証明器Ｐ又は敵対するノードが行うことのできる事前計算量は、データセットＡにどのような要素が含まれることが必要とされるかに依存する。
【００６７】
図２は、本発明の実施形態に従う汎用プロトコルの別の図表である。図２では、本実施形態の方法又はプロトコルの進行が矢印で示されており、データセットＡの作成から始まり、証明器Ｐ側でのセッション・オブジェクトの受信で終了する。この接続図では、関係する異なる通信当事者側で行われる処理は、水平の実線で分離されて垂直方向に並べられている点に留意されたい。この処理はまた、証明器及び検証器それぞれを示すそれぞれの文字Ｐ及びＶで指示する連結括弧によっても示されている。
【００６８】
更に、図１及び図３において同じ参照番号及び記号は、同じパラメータ、処理及び情報をそれぞれ示している。従って、図２は、図１と比較した場合、すなわち時間的な進行の点ではなくむしろ論理的な進行という点で別の表現であると推測できるが、全く同様の方法やプロトコルを例示したものである。従って、図２の詳細な説明については省略し、図１の説明を参照する。
【００６９】
要約してより一般的に述べれば、本発明は、信頼できる第３者を利用せずに、通信システムにおいて互いに未知の２つの通信当事者間で信頼できる関係を確立するための方法を提供し、該方法は、
（ｉ）２つの通信当事者のうちの第１の通信当事者側で、
２つの通信当事者の少なくとも識別子と、第１の通信当事者から第２の通信当事者へ転送すべき情報とを含むデータセットを作成するステップと、
第１の通信当事者の識別子に関連する作成済みのデータセットに基づいて暗号計算を実行して、問題インスタンスを導き出すステップと、
導き出された問題インスタンスの解を求めるステップと、
問題インスタンスの解を求めるため、信頼できる関係の確立の目的に限られた作業証明を生成するステップと、
データ及び作業証明を第２の通信当事者に転送するステップと、
を実行し、その後、
（ｉｉ）第２の通信当事者側で、
問題インスタンスの解を求めるための作業証明を検証するステップと、
上記検証ステップが肯定の結果をもたらす場合、信頼できる関係を得るためのセッション・オブジェクトを生成して、これを第１の通信当事者に送信するステップと、
を実行すること、
を含む。
【００７０】
既に上述したように、上記作業証明に対する２つの基本的使用例がある。第１の使用例では、知識証明プロトコルが用いられ、従って、作業証明は、情報を秘匿するというプロパティを有することになる。すなわち、生成された問題インスタンスの解が作業証明によって公開されるのではなく、解かれた問題インスタンスのみが公開される。第２の使用例では、知識証明プロトコルは用いられず、従って、作業証明は情報を秘匿するものではない。すなわち、この作業証明では問題インスタンスの解も公開する。しかしながら、この場合でも、通信当事者（すなわち証明器と検証器）間での信頼できる関係を適切に確立することができ、なぜなら、第１の通信当事者（すなわち証明器）により作成されたデータセットで定められる限定された適用性に起因して、（情報を秘匿するものではないとしても）この作業証明を別の目的に利用することはできないからである。要するに、知識証明プロトコルを用いる（問題インスタンスの解が公開されない）か、証明器の公開鍵がデータセットＡの中に存在しなければならないかの何れかとなる。
【００７１】
すなわち、第１及び第２の通信当事者側において、すなわち、例えば図１のステップＳ１からＳ８２において行われるそれぞれの方法段階を含む方法が提供される。
【００７２】
本発明の別の態様によれば、第１の通信当事者Ｐ側において、すなわち、例えば図１のステップＳ１からＳ６において行われるそれぞれの方法段階を含む方法が提供される。
【００７３】
本発明の別の実施形態によれば、第２の通信当事者Ｖ側において、すなわち、例えば図１のステップＳ７からＳ８２において行われるそれぞれの方法段階を含む方法も提供される。
【００７４】
本発明の基本的な着想によれば、生成された作業証明は、２つの通信当事者ＰとＶとを互いに紹介し合うという適用性に限られる。作業証明は、前記問題インスタンスに対する直接的な解であるか、又は証明器Ｐを検証器Ｖに紹介するデータセットを介してＦｉａｔ−Ｓｈａｍｉｒヒューリスティックで使用される解の知識証明に基づくデジタル署名とすることができる。
【００７５】
以下のセクションでは、本発明の実施形態に従うプロトコルの実施について、同じ実施形態を具現化する第１の詳細な実施例としてごく手短に説明する。下記の実施例は、離散対数及び公開鍵暗号システムについての知識に基づく知識証明に基づくものである。通信当事者は、ここでもまたＰ（証明器）とＶ（検証器）とにより示されている。
【００７６】
使用するグローバル・パラメータ及び演算を以下のように定義する。
ｑ、ｐの双方が素数であるような整数ｑ＝２ｐ＋１とする。
｜＜ｇ＞｜＝ｐであるように、ｇを巡回乗法群のｑを法とする生成元とする。群の演算は、ｑを法とする乗算である。ｇはｑを法とする平方剰余とする。
ｈ（ｋ，ｍ）をセキュア・ハッシュ・アルゴリズム１（ＳＨＡ１）に基づくＨＭＡＣ関数（ＨＭＡＣ：メッセージ認証のための鍵付ハッシング）とする。
ｉｄ＿Ｐ及びｉｄ＿Ｖを証明器Ｐ及び検証器Ｖの識別子を表わすビット列とする。
｜｜は、（ビット列を含む）文字列の連結演算子の意味とする。
Ｋ＿Ｐをある暗号システムにおけるＰの公開鍵とする。
【００７７】
このようにして実装されるプロトコルは以下のようになる。
１．Ｐはビット列Ｓ＿１をランダムに選択する。
２．ａｕｘを、例えばセッションをブートするか、又はＰからＶに送信するのに必要とされるある（補助）情報を表わすビット列とする。
ａ．この情報（又はメッセージ）が既存のメッセージｍの最上部にピギーバックされると、ａｕｘは当該メッセージｍの表示を含まなければならない。
ｂ．作業証明が「新鮮」であることが要求される場合、ビット列ａｕｘは、タイムスタンプを含む必要がある。
【００７８】
すなわち、作成されたデータセットＡ＝｛ｉｄ＿Ｐ，ｉｄ＿Ｖ，Ｋ＿Ｐ  Ｓ＿１，ａｕｘ｝となる。
３．Ｐは、ｘ＝ｈ（Ｓ＿１，ｉｄ＿Ｐ  ｜｜  ｉｄ＿Ｖ  ｜｜  ａｕｘ）を計算する。
４．Ｐは、ｇを底とするｘの離散対数の解を求め、結果として、ｇ＾ｗ＝ｘ  ｍｏｄ  ｑであるようなｗを得る。上記ｗが存在しなければ、ステップ１に戻り、別のＳ＿１を選択する。
５．Ｐは、ビット列ｓ＿２及びｓ＿３をランダムに選択する。
６．Ｐは、ｒ＝ｈ（ｓ＿２，ｉｄ＿Ｐ  ｜｜  ｉｄ＿Ｖ  ｜｜  Ｋ＿Ｐ  ｜｜  ａｕｘ）を計算する。
７．Ｐは、Ｇ＝ｇ＾ｓ＿３  ｍｏｄ  ｑを計算する。
８．Ｐは、ｃ＝ｓ＿３＋ｒ  ｗを計算する。
９．Ｐは、G、ｓ＿１、ｓ−２、ｃ、ｉｄ＿Ｐ、ｉｄ＿Ｖ、Ｋ＿Ｐ及びａｕｘをＶに送信する。
１０．Ｖは、ｒ＝ｈ（ｓ−２，ｉｄ＿Ｐ  ｜｜  ｉｄ＿Ｖ  ｜｜  Ｋ＿ｐ  ｜｜  ａｕｘ）を計算する。
１１．Ｖは、ｘ＝ｈ（Ｓ＿１，ｉｄ＿｜｜  ｉｄ＿Ｖ  ｜｜  ａｕｘ）を計算する。
１２．Ｖは、ｇ＾ｃ＝Ｇ  ｘ＾ｒかどうかをチェックする。そうであれば、Ｖは知識証明を受け入れる。そうでなければ、Ｖはプロトコルを中断し、２つの当事者を互いに紹介することは行わない。
１３．ａｕｘがタイムスタンプを含む場合、Ｖは、タイムスタンプが有効であること、すなわち、正しい精度を有し、十分に最近のものであり、将来のものではないことをチェックする。
１４．Ｖは、場合によっては暗号鍵を含む１つのセッション・オブジェクトを生成し、ｋ＿ｐを用いてこのセッション・オブジェクトを暗号化し、これをＰに返信する。
【００７９】
従って、このようにして実装されたプロトコルは、Ｓｃｈｎｏｒｒ識別、すなわち離散対数の標準的な知識証明に基づくものとする。
【００８０】
以下のセクションでは、本発明の実施形態に従うプロトコルの実施について同じ実施形態を具現化する第２の詳細な実施例としてごく手短に説明する。以下の実施例は、暗号ハッシュ関数の原像についての知識を用いて、セットＡを証明器Ｐに限ることに基づいている。すなわち、知識証明プロトコルは必要とせず、セットＡ及びセットＭは互いに等しいものである。
【００８１】
使用するグローバルなパラメータ及び演算は以下のように定義される。
ｈ（ｋ）をＳＨＡ１関数などのハッシュ関数とする。
ｍｓｂ（ｎ、ｘ）がｘの最上位ビットｎを表わすものとする。
ｉｄ＿Ｐ及びｉｄ＿Ｖを証明器Ｐ及び検証器Ｖの識別子を表わすビット列とする。
｜｜は、（ビット列を含む）文字列の連結演算子の意味とする。
Ｋ＿Ｐをある暗号システムにおけるＰの公開鍵とする。
ｎを１から１６０までの間の整数とする。
【００８２】
上記のようにして実装されるプロトコルは以下のようになる。
１’．ａｕｘを、例えばセッションをブートするか、又はＰからＶに送信するのに必要とされるある（補助）情報を表わすビット列とする。
ａ．この情報（又はメッセージ）が既存のメッセージｍの最上部にピギーバックされると、ａｕｘは当該メッセージｍの表示を含まなければならない。
ｂ．作業証明が「新鮮」であることが要求される場合、ビット列ａｕｘは、タイムスタンプを含む必要がある。
【００８３】
すなわち、作成されたデータセットＡ＝｛ｉｄ＿Ｐ，ｉｄ＿Ｖ，Ｋ＿Ｐ，ａｕｘ｝となる。
２’．ｘ＝ｉｄ＿Ｐ  ｜｜  ｉｄ＿Ｖ  ｜｜  Ｋ＿Ｐ  ｜｜  ａｕｘとする。
３’．ｍｓｂ（ｎ，ｘ）＝ｍｓｂ（ｎ，ｈ（ｗ））であるようなｗを計算する。
４’．Ｐは、Ａ＝｛ｉｄ＿Ｐ，ｉｄ＿Ｖ，Ｋ＿Ｐ  ａｎｄ  ａｕｘ｝  ａｎｄ  ｗをＶに送信する。
５’．Ｖは、受信したＡにより定義される、ｘ’＝ｉｄ＿Ｐ  ｜｜  ｉｄ＿Ｖ  ｜｜  Ｋ＿Ｐ  ｜｜  ａｕｘを計算する。
６’．Ｖは、ｍｓｂ（ｎ，ｘ’）＝ｍｓｂ（ｎ，ｈ（ｗ））であることをチェックする。
７’．ａｕｘがタイムスタンプを含む場合、Ｖは、タイムスタンプが有効であること、すなわち、正しい精度を有し、十分に最近のものであり、将来のものではないことをチェックする。
８’．Ｖは、場合によっては暗号鍵を含む１つのセッション・オブジェクトを生成し、ｋ＿ｐを用いてこのセッション・オブジェクトを暗号化し、これをＰに返信する。
【００８４】
図３は、本発明の別の実施形態による２つの通信装置のブロック図を示す。この図に関して、本発明によるシステムの実施形態も図示されているが、但し、このシステムはまた、３つ以上のこうした通信装置も同様に含むことができる。図３の矢印は、個々のブロック間の物理的及び／又は論理的な接続並びに処理のフローを示している。
【００８５】
本実施形態によれば、Ｐで示される第１の通信装置は、図１及び図２の証明器に対応し、Ｖで示される第２の通信装置は、図１及び図２の検証器に対応する。
【００８６】
通信装置Ｐは、信頼できる第３者を利用せずに、通信装置Ｐ自体と第２の通信装置Ｖとの間の信頼できる関係の確立の開始、すなわちＶ側での通信装置Ｐ自体の紹介の開始を希望する。本実施形態による装置Ｐは、作成器Ｐ１、実行器Ｐ２、解決器Ｐ３、生成器Ｐ４及び送受信器Ｐ５を備える。
【００８７】
作成器Ｐ１は、データセットＡを作成（図１のステップＳ１を参照のこと）し、このセットを実行器Ｐ２に渡すように具現化される。次いで、実行器Ｐ２は、証明器Ｐの識別子に関連する上記データセットに基づいて暗号計算を実行して、問題インスタンスを導き出す。この目的のために、実行器Ｐ２は、以下の処理のうちの１又はそれ以上を実行するように構成することができる。
作成器により作成されたデータセットの少なくとも一部について擬似ランダム関数を実行（図１のステップＳ２１を参照のこと）すること、
上記擬似ランダム関数の結果を問題インスタンスにマッピングするためのマッピング関数を実行（図１のステップＳ２２を参照のこと）すること。
【００８８】
本発明の別の実施形態によれば、実行器Ｐ２は、上記処理のうちの１つ又はそれ以上の処理を実行する別の手段、例えば、マッピング処理用のマッパーを含むことができる。
【００８９】
実行器Ｐ２は、導き出された問題インスタンスを解決器Ｐ３に供給し、該解決器Ｐ３は、上記問題インスタンスの解を求めるように構成されている（図１のステップＳ３を参照のこと）。解決器Ｐ３側で計算済みの問題インスタンスの解が求まると、装置Ｐの生成器Ｐ４は、問題インスタンスの解を求めるための作業証明を生成する（図１のステップＳ５を参照のこと）。導き出された問題インスタンスの解が入手できなければ（すなわち、図１のステップＳ５で「いいえ」であれば）、解決器Ｐ３は、例えば、作成済みのデータセットの少なくとも一部を作成器Ｐ１に修正させ、該修正されたデータセットに基づいてそれぞれの処理を再開するように構成される。図２では、この処理は、解決器Ｐ３から作成器Ｐ１に戻る矢印によって示されている。
【００９０】
次いで、装置Ｐの送受信器Ｐ５は、作業証明及び関連する情報（すなわちデータ）を第２の通信装置Ｖに送信する。
【００９１】
通信装置Ｖは、装置Ｐが開始した信頼できる関係の確立を完成する必要があるので、第２の通信当事者として機能する。本実施形態による装置Ｖは、送受信器Ｖ１、検証器Ｖ２及び生成器Ｖ３を備える。
【００９２】
送受信器Ｖ１は最初に、暗号計算を実行するために署名済みの情報及び作業証明を第１の装置Ｐから受信し、次いでこのデータを検証器Ｖ２に渡す。検証器Ｖ２は、送受信器Ｖ１から受信した作業証明を検証する（図１のステップＳ７を参照のこと）。この目的のために、検証器Ｖ２は、以下の処理のうちの１又はそれ以上を実行するよう構成することができる。
第１の通信当事者側における暗号計算のベースとなるデータセットに基づいて暗号計算を実行すること。
受信した作業証明が暗号計算の実行に対応することを検証すること。
タイムスタンプが有効であることをチェックすること。
【００９３】
本発明の別の実施形態によれば、検証器はまた、（図１のステップＳ７１及びＳ７２に相当する）上記処理のうちの１又はそれ以上を実行する別の手段、例えば、タイムスタンプをチェックするチェッカを含むことができる。
【００９４】
次いで、検証器が肯定の結果をもたらす場合、生成器Ｖ３は、信頼できる関係を得るためのセッション・オブジェクトのような必要な情報を生成する。この場合、生成器Ｖ３は、生成したセッションキーを送受信器Ｖ１に渡してこれを第１の通信当事者Ｐに送信し、その結果、装置Ｐの送受信器Ｐ４がこのセッションキーを受信する。
【００９５】
上記生成器はまた、
暗号鍵を含むセッション・オブジェクトを生成し、
セッション・オブジェクトの送信前に生成済みのセッション・オブジェクトを暗号化し、及び／又は、
第１の通信当事者の公開鍵に基づいてセッション・オブジェクトを暗号化する、
別の手段を実行又は含むように構成することができるようにする。
【００９６】
図３の２つの通信装置Ｐ及びＶの何れか一方は、移動型であるか非移動型であるかにかかわらず、例えばネットワーク要素又は端末装置とすることができる。
【００９７】
従って、図３に示す通信装置（従って、通信装置に含まれるシステム）は、添付の請求項に定められるように、信頼できる関係を確立する方法で使用するように構成される。
【００９８】
一般に、本発明による署名器又は検証器などの上述の機能エレメントは、該機能エレメントが、それぞれの部品の上述の機能を実行するように適合されている場合にのみ、ハードウェア及び／又はソフトウェアの何れかの形式の何れかの公知の手段によってそれぞれ実装することができることに留意されたい。例えば、装置Ｖの検証器は、受信した作業証明を検証するように構成され、従って添付の請求項で定められるように、マイクロプロセッサなどの何らかのデータ処理ユニットにより実装することができる。上述の部品はまた、個々の機能ブロックで、又は個々の装置により実現することもでき、或いは、上述の部品の１又はそれ以上は、単一の機能ブロックにおいて又は単一の装置により実現することができる。同様に、上記図３の例図は、例証の目的であり、いかなる点でも本発明の実施を限定するものではない。
【００９９】
更に、ソフトウェアコード部分として実装される可能性の高い方法段階、及び、ピアエンティティのうちの１つにおいてプロセッサを用いて実行される方法段階は、独立したソフトウェアコードであり、Ｃ、Ｃ＋＋及びアセンブラなどの何らかの公知の又は将来開発されるプログラム言語を用いて仕様化することができる。ピアエンティティのうちの１つにおいてハードウェアコンポーネントとして実装される可能性が高い方法段階、及び／又は装置或いは手段は、独立したハードウェアであり、一例として、例えばＡＳＩＣコンポーネント又はＤＳＰコンポーネントを用いたＭＯＳ、ＣＭＯＳ、ＢｉＣＭＯＳ、ＥＣＬ、ＴＴＬ、その他などのあらゆる公知の又は将来開発されるハードウェア技術、又はこれらの何らかのハイブリッド技術を用いて実装することができる。一般に、何れの方法段階も、本発明の着想を変えることなくソフトウェアとして又はハードウェアによって実施するのに好適である。本装置及び手段は、個々の装置として実装することができるが、これは、装置の機能性が保たれている限り、システム全体に分散して実装されることを除外するものではない。このような原理及び類似の原理は、当業者には公知のものと考えるべきものである。
【０１００】
提案したプロトコル並びに構成は、アクティブな中間者からの攻撃に際して、識別子が検証されるか、或いはセッション・オブジェクトを用いて機密性を保護又は完全な真正性を提供するケース向けに設計されていないが、提案のプロトコル及び構成はこうした攻撃を少なくとも遅くするのには適してしいる。むしろ、本発明の着想は、２つの当事者を紹介して、これら２つの当事者間でセッションを確立することができるように適用可能である。従って、本発明は、例えばアドホック・ネットワーク及びオーバーレイ・ネットワーク又は信用システムなどにおいて、基本的なセキュリティ問題を解決するためのシステム内の（少なくとも）構成要素として適用可能であるばかりでなく、有用でもある。本発明は、例えば、（電子メール又はインスタント・メッセージなどの）メッセージフィルタリング・システム又はアドホック・ネットワークのインプリンティング問題に適用することができる。更に別のアプリケーションの実施例として、ファイティング・スパム、及びブラウザ閲覧のアクセス・コントロール、並びに、認可方式に対する信用のブートストラップ（低レベル）がある。更に、本発明は、中間者からの攻撃を全て阻止できないまでも、少なくともある程度までは少なくとも遅くして、これによって上記攻撃に対抗するのに適している。
【０１０１】
要約すれば、本発明は、作業証明を用いて未知の２つの通信当事者を互いに紹介し合うためのプロトコルを作成する方法の可能性を提示し、この作業証明は何か他の目的のために再利用又は利用することはできず、更に、別の作業証明を必要とすることなくこの（１回の）紹介に基づいて別の通信を行うことができるようにされる。すなわち、本発明は、別の目的のために「何者も」作業証明を再利用できないように該作業証明を限る機能を提案し、すなわち、本作業証明は、公開鍵又はセッション・オブジェクトを別の当事者に紹介するなどの定められた目的に対する適用性に基本的に限定される。このようにして、「誰でも」（例えば、別の通信当事者とのセッションの確立を試みる通信当事者）、Ｆｉａｔ−Ｓｈａｍｉｒヒューリスティックと共に知識証明プロトコルを適用することにより、作業証明によって定められた解を用いて「何にでも」（すなわち或るデータセットに）署名を行うことができるようにさせる。
【０１０２】
換言すれば、本発明は、信頼できる第３者を利用せずに、通信システムにおける互いに未知の２つの通信当事者間での信頼できる関係の確立を提供するものである。本発明は、信頼できる関係の確立の目的に限られた非インタラクティブな作業証明と、問題インスタンスの解を求めるためのこのような作業証明を利用して、通信当事者間で転送すべき情報に暗号で署名を行うこと、並びに、この作業証明を検証し、該検証が肯定の結果をもたらす場合には、信頼できる関係を得るためのセッション・オブジェクトを生成することに基づいている。
【０１０３】
以上、添付図面に従って実施例を参照しながら本発明を説明してきたが、本発明がこれらに限定されるものではないことは明らかである。むしろ、当業者には明らかなように、本発明は、添付の請求項で開示される本発明の着想の範囲から逸脱することなく様々に修正を行うことが可能である。
【図面の簡単な説明】
【０１０４】
【図１】本発明の実施形態による汎用プロトコルのフロー図を示す。
【図２】本発明の実施形態による汎用プロトコルの別の例示的な表現である。
【図３】本発明の実施形態による２つの通信装置のブロック図を示す。
【図１】
2008545353.tif 000003
【図２】
2008545353.tif 000004
【図３】
2008545353.tif 000005
【国際調査報告】
2008545353.tif 000006
2008545353.tif 000007