(57)【要約】【課題】  中央サーバの効率性を犠牲にすることなく、必要な中央サーバが少なくて済む純粋なピアツーピア・ネットワークの利点を利用したピアツーピア・ネットワークを提供する。【解決手段】  ピアツーピア・ネットワークでは検索をクライアントからクライアントへ伝搬させる。認証プロセスと許可プロセスによって、各クライアント内のリソースを選択的に検索する。検索要求中に認証情報を含めてもよいし、クライアントの外部にある認証プロセスで認証を実行してもよい。許可はクライアントの外部にあるプロセスで実行する。認証または許可の後にのみ、特定のクライアントのリソースにアクセスすることができる。このシステムによって、ピアツーピア・ネットワーク環境における安全な伝搬検索とリソース・アクセスが実現する。ピアツーピア通信をより効率的に容易にするために、このネットワークはさらにピアツーピア・ネットワークに接続されたクライアントのリストを保持するサーバを備えてもよい。
2005521143.tif 000002
【特許請求の範囲】
【請求項１】
ピアツーピア・ネットワークにおいて、第１のクライアントが開始したリソース検索を安全に実行する方法であって、前記リソース検索は前記第１のクライアントを表わす証明書信号を有する検索要求に含まれており、
前記検索要求を前記第１のクライアントから第２のクライアントへ転送するステップであって、前記第２のクライアントは複数の第２のリソースを有し、前記複数の第２のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、ステップと、
前記第２のクライアントにおいて、前記証明書信号と前記複数の第２のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記第２のリソースを選択的に検索するステップと、
前記検索要求を前記第２のクライアントから第３のクライアントへ転送するステップであって、前記第３のクライアントは複数の第３のリソースを有し、前記複数の第３のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、ステップと、
前記第３のクライアントにおいて、前記証明書信号と前記複数の第３のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記第３のリソースを選択的に検索するステップと
を備えた
方法。
【請求項２】
さらに、
前記第３のクライアントにおいて、前記複数の第３のリソースを選択的に検索する前記ステップによってリソース一致を確認するステップと、
前記リソース一致を表わす一致信号を前記第３のクライアントから前記第１のクライアントへ転送するステップと
を備えた、
請求項１に記載の方法。
【請求項３】
前記証明書信号は前記第１のクライアントを表わすＩＤ信号を含み、
前記第２のリソースの前記アクセス属性および前記第３のリソースの前記アクセス属性は複数のクライアントのうちの少なくとも１つを表わす許可信号を含み、前記複数のクライアントは前記第１のクライアントを含み、
前記第２の複数のリソースを選択的に検索する前記ステップでは、前記ＩＤ信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索し、
前記第３の複数のリソースを選択的に検索する前記ステップでは、前記ＩＤ信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索する、
請求項１または２に記載の方法。
【請求項４】
前記証明書信号は前記第１のクライアントを表わすＩＤ信号を含み、
前記第２のリソースの前記アクセス属性および前記第３のリソースの前記アクセス属性は複数のクライアントのうちの少なくとも１つを表わす許可信号を含み、前記複数のクライアントは前記第１のクライアントを含み、
前記第２の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第２のクライアントから前記第１のクライアント、前記第２のクライアント、および前記第３のクライアントの外部にある認証プロセスへ前記ＩＤ信号を転送するステップと、
これに応答して、前記認証プロセスから前記第１のクライアントを表わす認証済み信号を受信するステップと、
前記認証済み信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索するステップと
を含み、
前記第３の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第３のクライアントから前記許可プロセスへ前記ＩＤ信号を転送するステップと、
これに応答して、前記許可プロセスから前記第１のクライアントを表わす認証済み信号を受信するステップと、
前記認証済み信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索するステップと
を含む、
請求項１〜３のうちの１項に記載の方法。
【請求項５】
さらに、
前記第２のクライアントにおいて、前記ＩＤ信号および前記受信した認証済み信号を前記第２のクライアントのキャッシュ・メモリに格納するステップと、
前記第２のクライアントにおいて、前記第２のクライアントから前記認証プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信した認証信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信した認証信号を見つけた場合、前記第２のクライアントから前記認証プロセスへ転送する前記ステップを実行せず、
前記第２の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記認証済み信号を使用し、それにより前記第２のクライアントと前記認証プロセスとの間の通信を低減する、
請求項４に記載の方法。
【請求項６】
さらに、
前記第３のクライアントにおいて、前記ＩＤ信号および前記受信した認証済み信号を前記第３のクライアントのキャッシュ・メモリに格納するステップと、
前記第３のクライアントにおいて、前記第３のクライアントから前記認証プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信した認証信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信した認証信号を見つけた場合、前記第３のクライアントから前記認証プロセスへ転送する前記ステップを実行せず、
前記第３の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記認証済み信号を使用し、それにより前記第３のクライアントと前記認証プロセスとの間の通信を低減する、
請求項４に記載の方法。
【請求項７】
前記第２のクライアントが前記認証プロセスから前記認証信号を受信しなかった場合、前記検索要求を前記第２のクライアントから前記第３のクライアントへ転送する前記ステップ、および前記複数の第３のリソースを選択的に検索する前記ステップを実行しない、
請求項４に記載の方法。
【請求項８】
前記証明書信号が前記第１のクライアントを表わすＩＤ信号を含み、
前記第２のクライアントの前記アクセス属性および前記第３のクライアントの前記アクセス属性が複数のクライアント・クラスのうちの少なくとも１つを表わす認証信号を含み、
前記第２の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第２のクライアントから前記第２のクライアントの外部にある許可プロセスへ前記ＩＤ信号を転送するステップと、
前記複数のクライアント・クラスのうち前記ＩＤ信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
前記クライアント・クラス信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索するステップと
を備え、
前記第３の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第３のクライアントから前記第３のクライアントの外部にある許可プロセスへ前記ＩＤ信号を転送するステップと、
前記複数のクライアント・クラスのうち前記ＩＤ信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
前記クライアント・クラス信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索するステップと
を備えた、
請求項１〜７のうちの１項に記載の方法。
【請求項９】
さらに、
前記第２のクライアントにおいて、前記ＩＤ信号および前記受信したクライアント・クラスを前記第２のクライアントのキャッシュ・メモリに格納するステップと、
前記第２のクライアントにおいて、前記第２のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を求めて前記キャッシュ・メモリを検索するステップと、
前記第３のクライアントにおいて、前記ＩＤ信号および前記受信したクライアント・クラス信号を前記第３のクライアントのキャッシュ・メモリに格納するステップと、
前記第３のクライアントにおいて、前記第３のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を見つけた場合、前記第２のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
前記第２の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記クライアント・キャッシュ信号を使用し、それにより前記第２のクライアントと前記許可プロセスとの間の通信を低減し、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信したクライアント・クラス信号を見つけた場合、前記第３のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
前記第３の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記クライアント・クラス信号を使用し、それにより前記第３のクライアントと前記認証プロセスとの間の通信を低減する、
請求項８に記載の方法。
【請求項１０】
複数のクライアントを有するピアツーピア・ネットワークに含まれるクライアントであって、
前記複数のクライアントのうちの第２のクライアントからリソース検索要求を受信するピアツーピア・ネットワーク・ディスパッチャであって、前記検索要求は前記複数のクライアントのうちの開始クライアントから開始し、前記検索要求は前記開始クライアントを表わすＩＤ信号を含む証明書信号を含む、ピアツーピア・ネットワーク・ディスパッチャと、
複数のリソースを格納するメモリであって、前記複数のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、メモリと、
前記証明書信号と前記複数のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記複数のリソースのうちの少なくとも１つを選択的に検索する検索エンジンと
を備えた
クライアント。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はピアツーピア・ネットワークの分野に関する。
【背景技術】
【０００２】
現在に至るまで、地球規模の大組織または他の大組織内の全組織レベルのデータとコンテンツの配付は中央化されたコンテンツ・リポジトリを用いてそのようなデータとコンテンツを複製して配付することにより行なっていた。すなわち、データは地球規模で分散しているにもかかわらず、特定の地域内に位置するクライアントにコンテンツを供給する任に当たる中央サーバを用いていたから地理的領域のある場所内でしか当該データを利用することができなかった。
【０００３】
ピアツーピア（Ｐ２Ｐ）コンピューティングの登場によって、この方式が変化した。すなわち、中央化されたサーバにコンテンツを格納しそこから供給する方式からクライアント側にコンテンツの少なくとも一部を格納しそこから供給する方式に力点が移動した。Ｐ２Ｐモデルでは、コンテンツ提供者はローカルのクライアントにおいてコンテンツを管理し、コンテンツにアクセスするすべての者とコンテンツを共用する。このモデルでは、コンテンツの作成、蓄積、およびセキュリティについてクライアント側に重点が置かれる。
【０００４】
このＰ２Ｐ方式にはいくつかの利点かある。コンテンツに対する責任をクライアント側に移動させることにより、様々なリソースに対するサーバ側の管理を大幅に低減させることができる。サーバのマネージャはコンテンツの保全性に責任を負う必要がない。コンテンツの中央化された配付によって生じる問題点を無くすことができる。
【０００５】
ピアツーピア・リソース共用システムには少なくとも３つのアーキテクチャ上の方式がある。すなわち、中央化された制御を伴うＰ２Ｐ、中央化された制御を伴わない純粋なＰ２Ｐ、そして前２者の側面の一部を組み込んだハイブリッド方式である。
【０００６】
中央化されたコントローラを備えたＰ２Ｐの一例としてＮａｐｓｔｅｒと呼ばれているシステムを挙げることができる。Ｎａｐｓｔｅｒでは、接続されているクライアントのリストを保守するために中央サーバを用いている。すべてのクライアントは中央サーバに接続している。中央サーバは共用リソースを求めてクライアントのディスクを走査するとともに、共用リソースのディレクトリとインデックスを保持している。リソースを検索するクライアントは中央サーバが保持しているディレクトリとインデックスについてその検索を実行する。クライアントは自分が求めているリソースが存在する場所が分かったら（すなわち自分が検索しているファイルを保持しているクライアントが分かったら）、その適切なクライアントに直接に接続して当該リソースを転送する。
【０００７】
Ｎａｐｓｔｅｒはウェブに基づいていないから、ブラウザで実行するものではない。それは個別のクライアントで実行するスタンドアーン型のアプリケーションであり、データ通信とデータ転送用にＴＣＰ／ＩＰを使用している。Ｎａｐｓｔｅｒは情報の収集者と規制者として機能する中央サーバに依存しているから、クライアントは匿名性を保証されない。また、中央サーバが故障した場合、Ｎａｐｓｔｅｒシステムは脆弱である。
【０００８】
中央化された制御を備えない純粋なＰ２Ｐの好例としてＧｎｕｔｅｌｌａと呼ばれているシステムを挙げることができる。ＧｎｕｔｅｌｌａはＧｎｕｔｅｌｌａプロトコルを使用するようなＰ２Ｐシステムを特定するために使用する一般用語である。そのプロトコルが実際に何であるかという単一の解釈はない。しかし、Ｇｎｕｔｅｌｌａに基づいたシステムで明示されている共通の構成要素がいくつか存在する。それらのうちで主要なものはＧｎｕｔｅｌｌａには中央サーバがいらないという点である。このシステムでは、各クライアントはシステム中の既知のクライアントをピング（ping）することにより他のクライアントを継続的に追跡している。分散検索はあるクライアントから増大し続ける環におけるすぐ隣のクライアントへ答がみつかるまで、あるいはその検索がタイムアウトになるまで伝搬される。検索応答は同様にして検索者に返送される。
【０００９】
Ｎａｐｓｔｅｒと同様に、Ｇｎｕｔｅｌｌａもウェブに基づいていないから、クライアント環境でアプリケーションとして実行する。Ｇｎｕｔｅｌｌａは真に匿名のリソース共用システムである。検索を容易にするためのサーバを使用していないから、クライアントは臨時のピア情報（peer information）を確立する必要がある。検索者は応答者のアイデンティティを知らず、応答者は検索者のアイデンティティを知らない。したがって、認証（authentication）または許可（authorization)のための検査はなく、信頼は暗に仮定されているにすぎない。
【００１０】
Ｇｎｕｔｅｌｌａに基づいたシステムの深刻な問題点は信頼性がないことによる評価である。どのクライアントが接続されておりどのクライアントがそうでないのかを追跡する中央サーバがないから、クライアントは隣接するクライアントが活動中で接続されているのか否かを知る術がない。これでは、信頼性のあるパフォーマンスはとても得られない。
【００１１】
Ｐ２Ｐシステムを実現する第３の方法はＷｅｂ  Ｍｋと呼ばれているものである。これは実際の製品というよりは実現方法であり、「分散コンテンツ管理およびピアツーピア・コンテンツ・ネットワークの出現」（２００１年１月）（The Emergence of Distributed Content Management and Peer-to-Peer Content Networks, January 2001)なる名称のＰ２Ｐコンピューティングの登場に関するガートナーの報告書（Gartner Report）に記載されている。これはウェブ・サーバとウェブ・ブラウザを使用するウェブに基づいた方式である。これらのウェブ・ブラウザはユーザによって構成可能であるとともに、リソース共用機能を組み込んでいるものが望ましい。上記ウェブ・サーバは複数のインデックスを保持しており、様々な種類のデータにアクセスすることができる。この種のシステムはソフトウェア・エージェントすなわちロボット（Bot)を用いてサービス（たとえば複数のリソースの抽出と統合、チャト機能、変更の通知など）を提供する。検索要求はサーバに格納し、リアルタイムまたはバッチ・プロセスで実行しうるように設定することができる。検索結果は適切なクライアントに通知する。
【非特許文献１】「分散コンテンツ管理およびピアツーピア・コンテンツ・ネットワークの出現」（２００１年１月、ガートナーの報告書）（The Emergence of Distributed Content Management and Peer-to-Peer Content Networks, January 2001, Gartner Report)
【発明の開示】
【発明が解決しようとする課題】
【００１２】
現在のＰ２Ｐシステムの弱点を解決しながら、Ｐ２Ｐネットワークの利点に適合しうるシステムが求められている。また、中央サーバの効率性を犠牲にすることなく、必要な中央サーバが少なくて済むという純粋なＰ２Ｐネットワークの利点を利用したＰ２Ｐネットワークが求められている。さらに、中央サーバを必要とすることなく、クライアントのリソースに安全にアクセスするとともにそれを安全に制御するＰ２Ｐネットワークが求められている。
【課題を解決するための手段】
【００１３】
第１の側面において、本発明はピアツーピア・ネットワークにおいて、第１のクライアントが開始したリソース検索を安全に実行する方法を提供する。前記リソース検索は前記第１のクライアントを表わす証明書信号を有する検索要求に含まれている。
前記方法は、
前記検索要求を前記第１のクライアントから第２のクライアントへ転送するステップであって、前記第２のクライアントは複数の第２のリソースを有し、前記複数の第２のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、ステップと、
前記第２のクライアントにおいて、前記証明書信号と前記複数の第２のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記第２のリソースを選択的に検索するステップと、
前記検索要求を前記第２のクライアントから第３のクライアントへ転送するステップであって、前記第３のクライアントは複数の第３のリソースを有し、前記複数の第３のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、ステップと、
前記第３のクライアントにおいて、前記証明書信号と前記複数の第３のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記第３のリソースを選択的に検索するステップと
を備えている。
【００１４】
前記方法は、さらに、
前記第３のクライアントにおいて、前記複数の第３のリソースを選択的に検索する前記ステップによってリソース一致を確認するステップと、
前記リソース一致を表わす一致信号を前記第３のクライアントから前記第１のクライアントへ転送するステップと
を備えているのが望ましい。
【００１５】
望ましくは、
前記証明書信号は前記第１のクライアントを表わすＩＤ信号を含み、
前記第２のリソースの前記アクセス属性および前記第３のリソースの前記アクセス属性は複数のクライアントのうちの少なくとも１つを表わす許可信号を含み、前記複数のクライアントは前記第１のクライアントを含み、
前記第２の複数のリソースを選択的に検索する前記ステップでは、前記ＩＤ信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索し、
前記第３の複数のリソースを選択的に検索する前記ステップでは、前記ＩＤ信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索する。
【００１６】
望ましくは、
前記証明書信号は前記第１のクライアントを表わすＩＤ信号を含み、
前記第２のリソースの前記アクセス属性および前記第３のリソースの前記アクセス属性は複数のクライアントのうちの少なくとも１つを表わす許可信号を含み、前記複数のクライアントは前記第１のクライアントを含み、
前記第２の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第２のクライアントから前記第１のクライアント、前記第２のクライアント、および前記第３のクライアントの外部にある認証プロセスへ前記ＩＤ信号を転送するステップと、
これに応答して、前記認証プロセスから前記第１のクライアントを表わす認証済み信号を受信するステップと、
前記認証済み信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索するステップと
を含み、
前記第３の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第３のクライアントから前記許可プロセスへ前記ＩＤ信号を転送するステップと、
これに応答して、前記許可プロセスから前記第１のクライアントを表わす認証済み信号を受信するステップと、
前記認証済み信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索するステップと
を含む。
【００１７】
前記方法は望ましくは、さらに、
前記第２のクライアントにおいて、前記ＩＤ信号および前記受信した認証済み信号を前記第２のクライアントのキャッシュ・メモリに格納するステップと、
第２のクライアントにおいて、前記第２のクライアントから前記認証プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信した認証信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信した認証信号を見つけた場合、前記第２のクライアントから前記認証プロセスへ転送する前記ステップを実行せず、
前記第２の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記認証済み信号を使用し、それにより前記第２のクライアントと前記認証プロセスとの間の通信を低減する。
【００１８】
前記方法は、さらに、
前記第３のクライアントにおいて、前記ＩＤ信号および前記受信した認証済み信号を前記第３のクライアントのキャッシュ・メモリに格納するステップと、
第３のクライアントにおいて、前記第３のクライアントから前記認証プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信した認証信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信した認証信号を見つけた場合、前記第３のクライアントから前記認証プロセスへ転送する前記ステップを実行せず、
前記第３の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記認証済み信号を使用し、それにより前記第３のクライアントと前記認証プロセスとの間の通信を低減する。
【００１９】
望ましくは、
前記第２のクライアントが前記認証プロセスから前記認証信号を受信しなかった場合、前記検索要求を前記第２のクライアントから前記第３のクライアントへ転送する前記ステップ、および前記複数の第３のリソースを選択的に検索する前記ステップを実行しない。
【００２０】
望ましくは、
前記証明書信号が前記第１のクライアントを表わすＩＤ信号を含み、
前記第２のクライアントの前記アクセス属性および前記第３のクライアントの前記アクセス属性が複数のクライアント・クラスのうちの少なくとも１つを表わす認証信号を含み、
前記第２の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第２のクライアントから前記第２のクライアントの外部にある許可プロセスへ前記ＩＤ信号を転送するステップと、
前記複数のクライアント・クラスのうち前記ＩＤ信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
前記クライアント・クラス信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索するステップと
を備え、
前記第３の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第３のクライアントから前記第３のクライアントの外部にある許可プロセスへ前記ＩＤ信号を転送するステップと、
前記複数のクライアント・クラスのうち前記ＩＤ信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
前記クライアント・クラス信号が、前記対応するアクセス属性に含まれる前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索するステップと
を備える。
【００２１】
前記方法は望ましくは、さらに、
前記第２のクライアントにおいて、前記ＩＤ信号および前記受信したクライアント・クラスを前記第２のクライアントのキャッシュ・メモリに格納するステップと、
前記第２のクライアントにおいて、前記第２のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を見つけた場合、前記第２のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
前記第２の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記クライアント・キャッシュ信号を使用し、それにより前記第２のクライアントと前記許可プロセスとの間の通信を低減する。
【００２２】
前記方法は望ましくは、さらに、
前記第３のクライアントにおいて、前記ＩＤ信号および前記受信したクライアント・クラス信号を前記第３のクライアントのキャッシュ・メモリに格納するステップと、
前記第３のクライアントにおいて、前記第３のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信したクライアント・クラス信号を見つけた場合、前記第３のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
前記第３の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記クライアント・クラス信号を使用し、それにより前記第３のクライアントと前記認証プロセスとの間の通信を低減する。
【００２３】
前記ピアツーピア・ネットワークは第１のクライアント，第２のクライアント、および第３のクライアントを含む複数のクライアント（前記複数のクライアントの各々は一意のクライアント・アドレスを有する）とクライアント・アドレスのリストを有するサーバとを備えているのが望ましい。
前記方法はさらに、
クライアント・アドレスの前記リストの第１の部分を備えた第１のシード・リストを前記サーバから前記第１のクライアントへ転送するステップと、
クライアント・アドレスの前記リストの第２の部分を備えた第２のシード・リストを前記サーバから前記第２のクライアントへ転送するステップと
を備え、
前記第１のシード・リストは前記第２のクライアントに対応する第２のクライアント・アドレスを含み、前記第２のシード・リストは前記第３のクライアントに対応する第３のクライアント・アドレスを含み、
前記検索要求を前記第１のクライアントから前記第２のクライアントへ転送する前記ステップにおいて、前記第１のシード・リストに含まれる前記第２のクライアント・アドレスによって前記第２のクライアントへ転送し、
前記検索要求を前記第２のクライアントから前記第３のクライアントへ転送する前記ステップにおいて、前記第２のシード・リストに含まれる前記第３のクライアント・アドレスによって前記第３のクライアントへ転送する。
【００２４】
前記複数のクライアントの各々は常時、前記ピアツーピア・ネットワークに接続している、または前記ピアツーピア・ネットワークから切断されているのが望ましい。
前記方法は、さらに、
前記サーバにおいて、前記複数のクライアントのうち前記ピアツーピア・ネットワークに接続しているものを確認するステップと、
前記サーバにおいて、確認する前記ステップによって接続クライアントのアドレスのリストを作成するステップと、
前記サーバにおいて、前記接続クライアントのアドレスのリストから前記第１のシード・リストおよび前記第２のシード・リストを作成するステップと
を備えている。
【００２５】
前記方法は、さらに、
前記複数のクライアントのうちの１つが前記ピアツーピア・ネットワークに接続したことに応答して、接続信号を前記複数のクライアントのうちの前記１つから前記サーバへ転送するステップと、
これに応答して、前記複数のクライアントのうちの前記１つに対応する新たに接続したクライアントのアドレスを接続クライアントのアドレスの前記リストに付加するステップと
を備えているのが望ましい。
【００２６】
第２の側面において、本発明は複数のクライアントを有するピアツーピア・ネットワークに含まれるクライアントを提供する。
前記クライアントは、
前記複数のクライアントのうちの第２のクライアントからリソース検索要求を受信するピアツーピア・ネットワーク・ディスパッチャであって、前記検索要求は前記複数のクライアントのうちの開始クライアントから開始し、前記検索要求は前記開始クライアントを表わすＩＤ信号を含む証明書信号を含む、ピアツーピア・ネットワーク・ディスパッチャと、
複数のリソースを格納するメモリであって、前記複数のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、メモリと、
前記証明書信号と前記複数のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記複数のリソースのうちの少なくとも１つを選択的に検索する検索エンジンと
を備えている。
【００２７】
望ましくは、
前記ピアツーピア・ネットワーク・ディスパッチャは、
前記ＩＤ信号を前記クライアントの外部にある認証プロセスへ転送し、
前記認証プロセスが前記ＩＤ信号を認証した場合、認証済み信号を受信し、
前記検索エンジンは、
前記認証プロセスから前記認証済み信号を受信しない場合、前記複数のリソースをすべて検索しない。
【００２８】
望ましくは、
前記ピアツーピア・ネットワーク・ディスパッチャは、
前記認証プロセスから前記認証済み信号を受信した場合、前記リソース検索要求を前記複数のクライアントのうちの第３のクライアントへ転送し、
または、
前記認証プロセスから前記認証済み信号を受信しない場合、前記リソース検索要求を前記第３のクライアントへ転送しない。
【００２９】
望ましくは、
前記アクセス属性は前記対応するリソースへのアクセスを許可されたクライアントのクラスを表わすものであり、
前記ピアツーピア・ネットワーク・ディスパッチャは、
前記ＩＤ信号を前記クライアントの外部にある認証プロセスへ転送し、
これに応答して、クライアント・クラス信号を受信し、
前記検索エンジンは、
前記クライアント・クラス信号と前記複数のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記複数のリソースのうちの前記少なくとも１つを選択的に検索する。
【００３０】
望ましくは、
前記ピアツーピア・ネットワークはさらにサーバと一意のクライアント・アドレスを有する複数のクライアントの各々とを備え、
前記クライアントはさらに前記サーバからクライアント・アドレスのシード・リストを受信して格納するシード・リスト受信器を備え、
前記ピアツーピア・ネットワーク検索ディスパッチャは前記リソース検索要求を前記シード・リストのクライアント・アドレスへ転送する。
【００３１】
ピアツーピア・ネットワークにおいて第１のクライアントが開始したリソース検索を安全に実行する方法を実現することは好都合である。前記リソース検索は前記第１のクライアントを表わす証明書信号を有する検索要求に含まれている。
前記方法は、
前記検索要求を前記第１のクライアントから第２のクライアントへ転送するステップと、
前記検索要求を前記第２のクライアントから第３のクライアントへ転送するステップであって、前記第３のクライアントは複数の第３のリソースを有し、前記複数の第３のリソースの各々は対応する少なくとも１つのアクセス属性を備えている、ステップと、
前記第３のクライアントにおいて、前記証明書信号と前記複数の第３のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記複数の第３のリソースを選択的に検索するステップと
を備えている。
【００３２】
前記ピアツーピア・ネットワークは第１のクライアント，第２のクライアント、および第３のクライアントを含む複数のクライアント（前記複数のクライアントの各々は一意のクライアント・アドレスを有する）とクライアント・アドレスのリストを有するサーバとを備えているのが望ましい。
前記方法はさらに、
クライアント・アドレスの前記リストの第１の部分を備えた第１のシード・リストを前記サーバから前記第１のクライアントへ転送するステップと、
クライアント・アドレスの前記リストの第２の部分を備えた第２のシード・リストを前記サーバから前記第２のクライアントへ転送するステップと
を備え、
前記第１のシード・リストは前記第２のクライアントに対応する第２のクライアント・アドレスを含み、前記第２のシード・リストは前記第３のクライアントに対応する第３のクライアント・アドレスを含み、
前記検索要求を前記第１のクライアントから前記第２のクライアントへ転送する前記ステップにおいて、前記第１のシード・リストに含まれる前記第２のクライアント・アドレスによって前記第２のクライアントへ転送し、
前記検索要求を前記第２のクライアントから前記第３のクライアントへ転送する前記ステップにおいて、前記第２のシード・リストに含まれる前記第３のクライアント・アドレスによって前記第３のクライアントへ転送する。
【００３３】
本発明の好適な実例はピアツーピア・ネットワークにおいて第１のクライアントが開始したリソース検索を安全に実行する方法を提供する。前記リソース検索は前記第１のクライアントを表わす証明書信号を有する検索要求に含まれている。
前記方法は、
前記検索要求を前記第１のクライアントから第２のクライアントへ転送するステップと、
前記検索要求を前記第２のクライアントから第３のクライアントへ転送するステップであって、前記第３のクライアントは複数の第３のリソースを有し、前記複数の第３のリソースの各々は対応する少なくとも１つのアクセス属性を備えている、ステップと、
前記第３のクライアントにおいて、前記証明書信号と前記複数の第３のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記複数の第３のリソースを選択的に検索するステップと
を備えている。
【００３４】
本発明の別の実例は複数のクライアントを有するピアツーピア・ネットワークに含まれるクライアントを提供する。
前記クライアントは、
前記複数のクライアントのうちの第２のクライアントからリソース検索要求を受信するピアツーピア・ネットワーク・ディスパッチャであって、前記検索要求は前記複数のクライアントのうちの開始クライアントから開始し、前記検索要求は前記開始クライアントを表わすＩＤ信号を含む証明書信号を含む、ピアツーピア・ネットワーク・ディスパッチャと、
複数のリソースを格納するメモリであって、前記複数のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、メモリと、
前記証明書信号と前記複数のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記複数のリソースのうちの少なくとも１つを選択的に検索する検索エンジンと
を備えている。
【００３５】
本発明の別の実例はピアツーピア・ネットワークにおいて第１のクライアントが開始したリソース検索を安全に実行する方法を提供する。前記リソース検索は前記第１のクライアントを表わす証明書信号を有する検索要求に含まれている。
前記方法は、
前記リソース要求を前記第１のクライアントから第２のクライアントへ転送するステップ
を備えており、
前記第２のクライアントは複数の第２のリソースを有し、
前記複数の第２のリソースの各々は少なくとも１つの対応するアクセス属性を備えている。
前記方法は、
前記第２のクライアントにおいて、前記証明書信号と前記複数の第２のリソースのうちの前記少なくとも１つのアクセス属性とを比較することにより、前記複数の第２のリソースを選択的に検索するステップ
を備えている。
前記方法は、さらに、
前記検索要求を前記第２のクライアントから第３のクライアントへ転送するステップ
を備えており、
前記第３のクライアントは複数の第３のリソースを有し、
前記複数の第３のリソースの各々は少なくとも１つの対応するアクセス属性を備えている。
前記方法は、さらに、
前記第３のクライアントにおいて、前記証明書信号と前記複数の第３のリソースのうちの前記少なくとも１つのアクセス属性とを比較することにより、前記複数の第３のリソースを選択的に検索するステップ
を備えている。
【発明を実施するための最良の形態】
【００３６】
これらの実施形態はここに示した革新的な教示の多くの有利な使用方法の例示にすぎないということに留意することが重要である。一般に、本願の明細書でなされた記述は均等物および特許請求の範囲に記載された様々な発明を必ずしも限定するものではない。また、一部の記述は一部の発明的特徴に適用しうるが他の発明的特徴には適用できない。一般に、特に反対の意が示されていない限り、単数の構成要素は複数形をしており逆もまた真であるが、これにより一般性が失われることはない。
【００３７】
好適な実施形態は全組織レベルのイントラネット環境内のピーツーピア（Ｐ２Ｐ）型のリソース共用に関する。好適な実施形態はＰ２Ｐ型リソース共用のためのハイブリッド・システムである。それはサーバおよびクライアント・コンポーネントの双方から成る。それは上述した３つのＰ２Ｐアーキテクチャの機能をサポートするのに加え、追加の機能をいくつかサポートしている
【００３８】
クライアントはクライアント・コンピュータで実行されるアプリケーションであり、修正された純粋なＰ２Ｐクライアントとして動作する。システムは信頼できるＩＰリポジトリ、全組織的システムによるセキュリティ統合、検索結果をより良好にする拡張クライアント側データベース、および基本的なネットワーク動作軽減策を備えている。そして、これらの特性が相まって全組織的環境用のＰ２Ｐサービスを実現している。
【００３９】
〔好適な実施形態の特徴〕
信頼できるＩＰリポジトリ−−−各クライアントは始めにサーバに「名乗り」、接続されているクライアントのＩＰアドレスのリストを要求する。サーバは接続されているクライアントのシード（seed）リストを送付する。（シード・リストなる用語を用いたのは各クライアントは接続されている他のクライアントのうち限られた数のものしか知る必要がないからである。）サーバはクライアントのリストを保持し各クライアントを周期的にピングすることにより、接続されているクライアントの現在のリストを保守している。
【００４０】
認証および許可−−−各リソースに付随するメタデータにはファイル記述の他にセキュリティ情報およびアクセス制御情報がある。セキュリティ検査はローカル・アカウントに基づいてもよいし、全組織レベルのセキュリティに基づいてもよい。
【００４１】
拡張クライアント・データベース−−−各クライアントは自分が共用しているリソースのデータベースを保持している。このデータベースはファイルの名前と特徴を含んでいるだけでなくファイルを説明するユーザ定義のメタデータも含んでいる。
【００４２】
軽減されたネットワーク動作−−−純粋なＰ２Ｐネットワークと異なり、クライアントは他のクライアントを継続的にピングする必要はない。その代わり、クライアントはサーバからＩＰアドレスのリストを周期的にダウンロードすることにより、接続されている他のクライアントを常時監視している。各クライアントは受信したリスト中の各クライアントにハンドシェークを送信する。別のクライアントから確認応答を受信したら、当該クライアントを元のクライアントのリストに付加する。
【００４３】
純粋なＰ２Ｐプロトコルに基づいている−−−大部分のパケット通信と同様に、検索と検索応答はクライアントの間で純粋なＰ２Ｐプロトコルに類似したプロトコルを用いて行なう。
【００４４】
この方式によれば、Ｐ２Ｐ環境内で中央サーバの概念を使用することが可能になる。その結果、高度に拡張されたＰ２Ｐリソース共用システムが実現する。したがって、このシステムは既存のＰ２Ｐ方式の上に構築するものであるが、追加の機能を備えている。
【００４５】
図１は本発明の好適な実施形態に従って動作するＰ２Ｐネットワークとシステムのブロック図である。イントラネット・バックボーン１００はＰ２Ｐサーバ１０２および認証・許可プロセス１０４を複数のクライアント１〜Ｙ（１０６〜１２０）に接続している。各クライアントはＩＰ  １〜ＩＰ  Ｙで示す、当該クライアントを表わす対応するアドレスを備えている。また、イントラネット１００はクライアント間の通信も容易にしている。これにより、Ｐ２Ｐ通信が可能になる。
【００４６】
図２は本発明の好適な実施形態に従って動作するＰ２Ｐネットワークとシステムにおけるサーバのブロック図である。サーバ１０２はイントラネットおよびクライアントとの通信を容易にするネットワーク・インタフェース２０２によってイントラネット・バックボーン１００に接続されている。クライアントがイントラネットに接続すると、ネットワーク・インタフェース２０２がクライアント接続信号を受信し、クライアント接続機能２０４がそれを処理して接続したクライアントのアドレスを接続クライアント・リスト２０６に付加する。接続信号に応答して、シード・リスト生成器２０８が、接続したクライアント用にシード・リストを生成する。このシード・リストはサーバがクライアントに供給した複数のシード・リスト２１０の一部である。好適な実施形態では、このシード・リストはすべてのシード・リストを格納しているメモリに格納されているように示されている。メモリへの記憶は任意構成要素である。シード・リストはランダムに生成してもよいし、多数の基準に従って生成してもよい。基準の例としては地理的特徴やクライアントの特徴などがある。たとえば、シード・リストは特定の国または地域（たとえばアメリカ合衆国や欧州など）に存在するクライアントに限定することができる。あるいは、シード・リストは共通の属性（たとえば技術や販売など）を共有する接続クライアント・クラスに限定することができる。また、シード・リストはクライアントからの距離（この距離にはネットワーク応答時間が含まれる）に従って生成してもよい。この場合、近接しているクライアントをシード・リストに含める。別の実施形態では、単位検索時間内に検索しうるクライアント数を最大化して最適なネットワーク相互接続を生成するために、以前のシード・リストに従ってシード・リストを生成している。さらに、このような方法を用いてＰ２Ｐネットワーク内に検索アイランド（island）を形成してもよい。また、サーバ１０２は接続したクライアントが予期される確認応答信号を出すか否かをテストすることにより、接続クライアントＩＰアドレス２０６を保守している。確認応答信号を受信しない場合、当該クライアントのアドレスをリストから削除する。サーバは接続クライアントにＰＩＮＧ信号を周期的に送信するが、所定時間内に確認応答ＰＯＮＧ信号を受信しない場合、サーバは当該クライアントが非接続であると判断して当該クライアントのアドレスをリスト２０６から削除するのが望ましい。
【００４７】
図３は本発明の好適な実施形態に従って動作するＰ２Ｐネットワークとシステムの認証・許可プロセスのブロック図である。認証・許可プロセス１０４は別のネットワーク・セキュリティ・サーバに存在するのが望ましいが、サーバ１０２中に存在してもよい。認証・許可プロセスはイントラネットおよびクライアントとの通信を容易にするネットワーク・インタフェース３０２によってイントラネット・バックボーン１００に接続されている。クライアントはリソース検索を行なう前に、認証・許可プロセスがリソース検索の認証および／または許可を与えるように要求する。（「Ａおよび／またはＢ」は「ＡおよびＢ、Ａ、またはＢ」を表わす。）
【００４８】
認証が必要な場合、クライアントは認証要求信号をプロセス１０４に送付する。ネットワーク・インタフェース３０２がこの認証要求を受信し、それを認証証明書検査３０４へ転送する。その証明書はＳＥＡＲＣＨ要求を開始したクライアントを表わすものであり、ＳＥＡＲＣＨ要求信号中に含まれている。あるクライアントがこのＳＥＡＲＣＨ要求を受信し要求元クライアントの認証を望む場合、証明書をプロセス１０４に転送する。証明書には検索を開始したクライアントのクライアントＩＤと対応するパスワードが含まれているのが望ましい。プロセス１０４は所定のクライアントＩＤとパスワードから成るテーブルを備えている。クライアントＩＤ３０６とパスワード３０８が認証要求信号に含まれているものと一致したら、要求元クライアントは確認される。そして、プロセス１０４は認証信号を要求元クライアントに返送する。当業者が認識しうるように、他に多くの認証プロセスが知られており、上述した認証プロセスはそれらのものと置換することができる。
【００４９】
許可が必要な場合、クライアントは許可要求信号をプロセス１０４に送付する。ネットワーク・インタフェース３０２がこの許可要求を受信し、それを許可プロセス３１０へ転送する。証明書はＳＥＡＲＣＨ要求を開始したクライアントを表わすものであり、ＳＥＡＲＣＨ要求信号中に含まれている。あるクライアントが、ＳＥＡＲＣＨ要求を受信し、要求元クライアントはどのリソースに対してアクセスが許可されているのかを確認することを望む場合、証明書はプロセス１０４に転送される。証明書にはＳＥＡＲＣＨを開始したクライアントのクライアントＩＤが含まれているのが望ましい。プロセス１０４は所定のクライアントＩＤ３１２とアクセス制御３１４から成るテーブルを備えている。許可要求に応答して、プロセス１０４は対応するアクセス制御信号を有する許可信号を要求元クライアントに返送する。アクセス制御信号３１４はあるクライアントが自分のピア（peer）で検索するのを許可されたリソースの種別すなわちクライアント・クラスを表わすものである。様々なアクセス制御すなわちクライアント・クラスの例として、技術に関するリソース、市場調査に関するリソース、および人事管理に関するリソースが挙げられる。各アクセス制御は多数のサブカテゴリを有する。たとえば、技術にはネットワーク、集積回路、およびオペレーティング・システムの各サブカテゴリが含まれる。各クライアントは各サブカテゴリに対して一意にアクセスしうるように許可されている。たとえば、技術部門に属すクライアントは技術ネットワークに関するリソースおよびオペレーティング・システムに関するリソースを検索しうるように許可されているが、人事問題に関する管理上のリソースおよび技術上の集積回路に関するリソースを検索しうるようには許可されていない。
【００５０】
好適な実施形態では、認証プロセスおよび許可プロセスの双方をクライアントが出す単一の要求信号によって行なうとともに、ＳＥＡＲＣＨ要求およびＧＥＴ要求の双方について行なうことができる。別の実施形態では、許可のみまたは認証のみを使用する。また、引き続くＳＥＡＲＣＨ要求およびＧＥＴ要求の認証および／または許可のための通信が重複するのを避けるために、認証および／または許可をクライアントのキャッシュに格納してもよい。これにより、ネットワークの通信量を低減することができる。
【００５１】
図４は本発明の好適な実施形態に従って動作するＰ２Ｐネットワークとシステムにおけるクライアントのブロック図である。このクライアントはイントラネット・バックボーン１００に接続されたパーソナル・コンピュータで動作するプロセスであるのが望ましい。別の実施形態では、このプロセスは他のコンピューティング装置（たとえばラップトップ型ＰＣ、ＰＤＡ、および対話型民生用装置〔たとえばセット・トップ・ボックス、テレビ、ステレオ、携帯電話機、または他の種類のリソース格納装置〕）で動作可能である。ディスパッチャ／ネットワーク・インタフェース４０２はサーバ、認証・許可プロセス、および他のクライアントとイントラネット・バックボーン１００を介して通信するのを容易にしている。ディスパッチャはイントラネット・バックボーン上で受信する少なくとも３つの信号に応答する。３つの信号とはＰＩＮＧ、ＳＥＡＲＣＨ、およびＧＥＴである。また、クライアントはＰＩＮＧ、ＳＥＡＲＣＨ、およびＧＥＴの各コマンドを開始するのに加え、サーバ１０２および認証・許可プロセス１０４と通信する。コマンドに応答して、ディスパッチャ４０２はＰＩＮＧコマンドをピング／ポング・プロセス４０４へ転送する。ピング／ポング・プロセス４０４はＰＩＮＧコマンドの受領に対して確認応答のＰＯＮＧコマンドを用いて応答する。ＳＥＡＲＣＨコマンドとＧＥＴコマンドはディスパッチャ４０２が検索プロセッサ４０５と取得プロセッサ４０６へ転送する。しかし、ＳＥＡＲＣＨコマンドまたはＧＥＴコマンドを処理する前に、認証・許可プロセス４０８がこれらのコマンドを評価する。プロセス４０８は少なくとも３つのコンポーネントを備えているが、それらはすべて任意コンポーネントである。許可の第１のコンポーネントは予め定められているとともに、要求元クライアントのＩＤに基づくものである。この実施形態では、外部の認証プロセス１０４を必要としない。第２のコンポーネントと第３のコンポーネントは外部の認証・許可１０４が実行する認証と許可である。これら３つのコンポーネントを様々に組み合わせることにより、多数の実施形態を実現することができる。また、認証・許可は許可済みのクライアントのＩＤおよび／またはクライアントＩＤ４１２に付随するアクセス制御を格納する任意構成要素のキャッシュを備えていてもよい。この情報をキャッシュ４１０に格納することにより、図３のプロセスに対して認証要求および／または許可要求を繰り返す回数を低減することが可能になる。
【００５２】
ＳＥＡＲＣＨコマンドが認証されなかったら、Ｐ２Ｐシステムにおける次のピアにそれを伝搬させる必要はない。これにより、ネットワークの通信量を低減することができる。また、認証の失敗は要求元クライアントに通知する必要はない。これにより、イントラネットのハッキング（hacking)を防止することができる。なぜなら、検索要求者は検索の結果が得られなかった理由（リソースが存在しなかったのか、あるいは検索者が認証されなかったのか）を知ることができないからである。ＳＥＡＲＣＨ要求が認証されたら、当該ＳＥＡＲＣＨ要求に合致するリソース４２２を求めてクライアントのメモリ３２０を検索する。リソースの検索はアクセス制御とリソース属性を備えたメタデータ４２４を検索することにより行なうのが望ましい。検索プロセス４０４は認証されたアクセス制御と各リソースに付随するアクセス制御とを比較することにより、検索しうるのはどのリソースであるのかを判断する。一致したら、そのリソースを検索する。検索はリソースの属性を検索することにより行なうのが望ましい。属性にはファイル種別、ファイル・サイズ、日付、作成者などがある。属性にはリソースに関する追加の情報を提供する（たとえば作成者が手動で作成した）注釈や要約も含まれる。これにより、キーワード検索が容易になる。あるいは、リソース自体のより徹底した検索を実行してもよい。一致したら、検索を開始したクライアントに肯定信号を返送する。
【００５３】
ＧＥＴ要求を開始するのは通常、ＳＥＡＲＣＨ要求を開始し、さらにＧＥＴ要求を受信したクライアントから肯定的な検索結果を受信したクライアントである。取得プロセス４０６による実行の前に、ＧＥＴ要求を許可および／または認可する。その後、ＧＥＴ要求によって特定された特定のリソースを要求元クライアントに転送する。
【００５４】
留意点を挙げると、ＰＩＮＧコマンドはディスパッチャ４０２が直接に転送するが、ＳＥＡＲＣＨ要求とＧＥＴ要求は事実上、カスタム・ファイアウォール４０８の後ろに隠されている。すべての要求（ＰＩＮＧ、ＳＥＡＲＣＨ、ＧＥＴ）は他のすべてのクライアントに利用可能に見える。しかし、クライアントから応答がないということはＧＥＴまたはＳＥＡＲＣＨを保護するセキュリティ措置が講じられていたということも意味する。たとえば、検索が失敗しても「該当項目なし（no items found）」信号を返送しない。したがって、クライアントは検索から応答を受信しない場合であっても、項目が保護されていたのか、あるいは項目が単に存在しないだけなのかを知ることができない。
【００５５】
図４のクライアントはＳＥＡＲＣＨ要求とＧＥＴ要求の開始も行なう。ＳＥＡＲＣＨ要求を開始するとき、検索用語は通常、クライアントの操作者から受領する。ＳＥＡＲＣＨ・ＧＥＴ要求プロセッサ４３０はその検索用語を、クライアントＩＤおよびパスワードに加えそのＩＰアドレスを含む、クライアントの証明書４３２とともにパッケージする。次いで、検索要求をシード・リスト４３４に含まれるＩＰアドレスを有するクライアントに転送する。シード・リスト４３４にはサーバ１０２から受信したＩＰアドレスを含まれている。証明書４３２は上述した認証プロセスと許可プロセスで使用する。検索結果として特定のクライアントにある特定のリソースが必要な場合、ＳＥＡＲＣＨ・ＧＥＴ要求プロセッサ４３０はそのリソースＩＤを証明書情報とともにＧＥＴ要求中にパッケージし、そのＧＥＴ要求を対応するクライアントに送付する。
【００５６】
Ｐ２Ｐ検索伝搬プロセスのさらなる部分として、検索プロセス４０５が処理するＳＥＡＲＣＨ要求をシード・リスト４３４に含まれている他のアドレスにも転送する。これにより、リソース検索をシード・リストのクライアント・アドレスに転送するピーツーピア型ネットワーク検索ディスパッチャを実現すことができる。しかし、タイムアウトが発生した場合または認証プロセスが失敗した場合には、ＳＥＡＲＣＨ要求を伝搬しない。
【００５７】
図５は本発明の好適な実施形態に従ってシード・リストを生成して保守する、クライアントとサーバとの間の相互作用を含むプロセス・フロー図である。表示を明確にするために、クライアント内で実行するプロセスを左にサーバ内で実行するプロセスを右に示す。ステップ５００で開始する。クライアントはネットワークに接続するまでステップ５００に留まる。接続にはＰ２Ｐネットワークへの接続を容易にするプログラムの実行が含まれるのが望ましい。そのようなプログラムは電源投入後のデスクトップ型パーソナル・コンピュータにおいて実行することができる。同様に、そのようなプログラムはバックボーンに物理的に接続した後の携帯型ラップトップ・パーソナル・コンピュータ上のクライアントにおいて実行することができる。
【００５８】
その後、ステップ５０２において、クライアントは当該クライアントのアドレスを含む接続信号をサーバに送信する。サーバはステップ５０４において接続信号を受信したのち、クライアントのアドレスを接続クライアント・アドレス・リストに付加する（ステップ５０６）。ステップ５０８において、上述したシード・リスト作成方法を含む任意の方法を用いて当該クライアント用のシード・リストを作成する。このシード・リストはステップ５１０においてサーバから送信し、ステップ５１２において当該クライアントが受信する。ステップ５１２ではさらにシード・リストに搭載されているクライアントにＰＩＮＧ信号を送信し、それらがＰ２Ｐネットワークに接続されているか否かを検査する。ステップ５２２において、確認応答を返さないクライアントをシード・リストから削除する。ステップ５１４において当該クライアントが切断していたら、プロセスはステップ５００に戻って再接続を待ち受ける。切断は常に起こりうる。切断は多数の異なるイベント（たとえば、クライアントの電源をＯＦＦした場合、操作者がクライアントのＰ２Ｐプログラムを終了した場合など）の結果である可能性がある。クライアントは自分がネットワークから切断されたことをサーバに自発的に通知する必要はない。接続中の場合、ステップ５１６において、クライアントは受信したすべてのＰＩＮＧ信号に対して確認応答する。ＰＩＮＧ信号はサーバまたは他のクライアントから受信する。ＰＩＮＧ信号に対しては通常、ＰＯＮＧ信号を用いて確認応答する。ステップ５２０において、ＰＩＮＧ要求、ＳＥＡＲＣＨ要求、およびＧＥＴ要求を実行して他のクライアントと通信する。シード・リストに搭載されているクライアントがＰＩＮＧ要求、ＳＥＡＲＣＨ要求、またはＧＥＴ要求に応答しない場合、あるいは接続すなわち束縛されていない場合、当該クライアントはネットワークから切断されているものと判断されるから、ステップ５２２においてシード・リストから削除する。ステップ５２４において、シード・リストをリフレッシュする必要があるか否かを判断する。ＹＥＳの場合、ステップ５２６において、シード・リストをリフレッシュする要求をサーバに送信する。シード・リストをリフレッシュするのはステップ５２２において少なくとも１つのクライアントを削除したことを含むいくつかの理由からである。あるいは、シード・リストのリフレッシュは操作者からの特定の入力や新たな検索の開始に応答して、またはある期間の後もしくは不活動の後に行なってもよい。他の実施形態では、サーバはネットワークの振舞いを再構成するためにリフレッシュを開始する。シード・リストのリフレッシュは全体リフレッシュまたは部分リフレッシュとして行なう。たとえば、シード・リストが始めに１０個のクライアントを含んでおり、そのうちの４つのクライアントが切断している場合、シード・リストのリフレッシュによって新たに４つのクライアント・アドレスを要求することができるようになる。あるいは、最初に開始した検索が技術に関するリソースに基づくものであり、２番目に開始した検索が販売に関するリソースに基づくものであった場合、それに従ってシード・リスト全体を置換して異なる種類のリソースを求める検索を最適化することができる。サーバでは、ステップ５２８において、接続クライアント・アドレス・リストを保守する。これはサーバから接続リストに搭載されているクライアントにＰＩＮＧ信号を周期的に送信することにより行なう。予期した確認応答信号（たとえばＰＯＮＧ信号）を受信しない場合、当該クライアントを接続クライアント・リストから削除する。次いで、ステップ５３０において、サーバはシード・リスト・リフレッシュ要求を受信済みである否かを判断する。ＮＯの場合、ステップ５０４に戻る。ＹＥＳの場合、サーバはステップ５３２において接続クライアントＩＰアドレス・リストからシード・リスト・リフレッシュを作成し、ステップ５３４において要求元クライアントに当該シード・リストを送付する。ステップ５３６において、クライアントはリフレッシュ済みのシード・リストを受信し、新たなクライアントにＰＩＮＧ信号を送信する。ステップ５２２において、確認応答しない新たなクライアントはすべてシード・リストから削除する。図５のプロセスによれば、シード・リストはクライアントにおいて確立・保守し、接続クライアントＩＰアドレス・リストはサーバにおいて保守する。認識すべき点を挙げると、別の実施形態では、サーバはＰＩＮＧ信号に対する非応答を含むすべての非確認応答に応答して接続リストからクライアントを削除する。たとえば、クライアントがサーバからのＰＩＮＧを必要とすることなく確認応答信号を周期的に送信するようにしてもよい。そして、所定時間内に確認応答を受信しない場合、ステップ５２８において当該クライアントを接続リストから削除する。あるいは、条件が許す場合にはクライアントが切断信号を自発的に送信するようにしてもよい。そして、サーバはそれに応答して接続リストから当該クライアントを削除する。留意点を挙げると、好適な実施形態では、シード・リストに搭載されているクライアントには通常、ＰＩＮＧ要求を送信しない。なぜなら、ステップ５１２とステップ５３６のＰＩＮＧ要求で十分だからである。これにより、分散検索型Ｐ２Ｐネットワークにおけるネットワーク通信量を顕著に低減できるという利点が得られる。
【００５９】
図６は本発明の好適な実施形態に従いクライアントがＰＩＮＧ、ＳＥＡＲＣＨ、ＧＥＴの各要求を処理するプロセス・フロー図である。ステップ６００においてクライアントがＰＩＮＧを受信したら、当該クライアントはステップ６０２でＰＯＮＧを送信する。ステップ６０４においてＳＥＡＲＣＨを受信したら、ステップ６０６で認証を実行し、ステップ６０８で検索タイムアウトを検査する。認証については下で詳述する。認証に合格し検索がタイムアウトしていない場合、ステップ６１０において検索要求をシード・リスト中の他のクライアントに転送する。ステップ６１２において、検索を要求または開始したクライアントが検索しうるのはどのリソースであるのかを確認する。選定または許可されたリソースについて、ステップ６１４において、検索要求との一致を求めてリソースのメタデータを検索する。ステップ６１６においてリソース一致があったら、ステップ６０８において、要求元クライアントへ返送するためにリソース一致を表わす信号を用いてクライアントに応答する。プロセスはステップ６０４、６０６、６０８、６１８のいずれかからステップ６２０に進み、ＧＥＴ要求を受信しているか否かを判断する。ＧＥＴ要求は通常、クライアントが、ＳＥＡＲＣＨ要求を開始しステップ６１８で生成された一致信号を受信したのちに開始する。ＧＥＴ要求を受信したら、ステップ６２２において、要求元クライアントが当該リソースを受領しうるように許可されているか否かを判断する。許可されている場合、ステップ６２４において、ＧＥＴ要求を開始したクライアントに当該リソースを送付する。認識すべき点を挙げると、ステップ６０８においてタイムアウトした場合、またはステップ６０６において認証に失敗した場合、検索を伝搬しない。当業者がさらに認識すべき点を挙げると、認証に失敗した場合に検索の伝搬を禁止しながら、ステップ６０６の認証プロセスとステップ６１２の確認プロセスとを組み合わせてもよい。
【００６０】
図７はクライアントの外部にある認証プロセスと通信する必要のない認証プロセスのプロセス・フロー図である。図７のプロセスは図６のステップ６１２とステップ６２２においてクライアントで実行する。ステップ７００において、検索要求を開始したクライアントのＩＤ証明書を検査する。この証明書の検査はクライアントＩＤと所定のリストとの単純な比較、要求元クライアントのＩＰアドレスの確認、チェックサムの検査、暗号手法、セキュリティ証明書、またはＳＥＡＲＣＨ要求もしくはＧＥＴ要求に応答する、クライアントの外部のプロセスによる認証を必要としない他の方法によって行なうことができる。ステップ７０２において、リソース・アクセス制限と開始したクライアントの証明書とを比較する。たとえば、クライアント１はリソース２とリソース３にアクセスすることができ、クライアント２はリソース５とリソース６にアクセスすることができる、と事前に定めることができる。あるいは、あるＩＰゲートウェイを出たクライアントはリソースに対して限定されたアクセス権しか有さず、他のクライアントはリソースに対して無制限のアクセス権を有する、というように予め定めることもできる。これに応じて、ステップ７０４では要求元クライアントが検索しうる特定のリソースまたは要求元クライアントに送付しうる特定のリソースを確認する。図７に示すプロセスには外部の許可プロセスおよび／または認証プロセスを必要とすることなく、分散Ｐ２Ｐネットワークにおいて選択的リソース共用を実現できるという利点がある（上記選択は要求元クライアントを表わす証明書に従って行なう）。
【００６１】
図８は本発明の好適な実施形態に従う、クライアントと当該クライアントの外部にある認証プロセスとの間の通信のプロセス・フロー図である。説明を明確にするために、クライアント・プロセスは図８の左側で処理し、外部認証プロセスは図８の右側で処理する。図８のプロセスは図６のステップ６１２またはステップ６２２に示すプロセスをより詳細に示すものである。ステップ８００において、以前のＳＥＡＲＣＨ要求またはＧＥＴ要求の際に実行したＩＤ証明書の以前の認証を求めてクライアント・キャッシュを検査する。以前の認証がない場合、ステップ８０２においてＩＤ証明書を外部認証プロセス（たとえば図１のプロセス１０４）に送付する。ステップ８０４において、外部認証プロセスは上記証明書を受信したのち、上記証明書に含まれている名前およびパスワードが当該外部認証プロセスに格納されている名前およびパスワードと一致するか否かを検査する。一致する場合、ステップ８０６において、認証信号を当該クライアントに返す。一致しない場合、認証を拒否する。この認証信号はステップ８０８において当該クライアントが受信したのち、ステップ８１０において、ＳＥＡＲＣＨ要求またはＧＥＴ要求の際に受信した証明書とともにクライアント・キャッシュに格納する。その後、ステップ８１２において、リソース・アクセス制御とＩＤ証明書とを比較する。たとえば、クライアント１はリソース２とリソース３にアクセスすることができ、クライアント２はリソース５とリソース６にアクセスすることができる、と事前に定めることができる。あるいは、あるＩＰゲートウェイを出たクライアントはリソースに対して限定されたアクセス権しか有さず、他のクライアントはリソースに対して無制限のアクセス権を有する、というように予め定めることもできる。ステップ８１４において、要求元クライアントが検索しうるリソースまたは要求元クライアントに送付しうるリソースを確認する。図８に示すプロセスには中央制御された認証プロセスを用いて分散Ｐ２Ｐネットワークにおいて選択的リソース共用を実現できるという利点がある。従業員が日常的に採用されたり退職したりしている大組織では、認証の中央制御によって、分散検索型Ｐ２Ｐネットワーク・システムにおいて検索を実行しうる者を安全に管理することが可能になる。また、以前の認証をキャッシングすることにより、認証に要するネットワーク通信量を顕著に低減することが可能になる。
【００６２】
図９は本発明の好適な実施形態に従う、クライアントと当該クライアントの外部にある許可プロセスとの間の通信のプロセス・フロー図である。説明を明確にするために、クライアント・プロセスは図９の左側で処理し、外部許可プロセスは図９の右側で処理する。図９のプロセスは図６のステップ６１２またはステップ６２２に示すプロセスをより詳細に示すものである。ステップ９００において、以前のＳＥＡＲＣＨ要求またはＧＥＴ要求の際に実行したＩＤ証明書の以前の許可アクセス制限を求めてクライアント・キャッシュを検査する。以前の許可がない場合、ステップ９０２においてＩＤ証明書を外部許可プロセス（たとえば図１のプロセス１０４）に送付する。ステップ９０４において、外部許可プロセスはＩＤ証明書を受信したのち、ＩＤ証明書に付随するアクセス制御を確認する。これに応答して、ステップ９０６において、許可アクセス制御信号を当該クライアントに返送する。この許可アクセス制御信号はステップ９０８において当該クライアントが受信したのち、ステップ９１０において、ＳＥＡＲＣＨ要求またはＧＥＴ要求の際に受信した証明書とともにクライアント・キャッシュに格納する。その後、ステップ９１２において、要求元クライアントに付随する許可アクセス制御とリソース・アクセス制御とを比較する。ステップ９１４において、要求元クライアントが検索しうるリソースまたは要求元クライアントに送付しうるリソースを確認する。図９に示すプロセスには中央制御された許可プロセスを用いて分散Ｐ２Ｐネットワークにおいて選択的リソース共用を実現できるという利点がある。従業員が職能を定期的に変更し、それにより異なる種類の情報にアクセスすることが必要になる大組織では、許可の中央制御によって、分散検索型Ｐ２Ｐネットワーク・システムにおいて人が検索しうるリソースの種別を安全に管理することが可能になる。また、以前の許可をキャッシングすることにより、許可に要するネットワーク通信量を顕著に低減することが可能になる。
【００６３】
したがって、提供するものは現在のＰ２Ｐシステムの弱点を解決しながら上述したＰ２Ｐネットワークの利点に適合するシステムである。このＰ２Ｐネットワークは中央サーバの効率性を犠牲にすることなく純粋なＰ２Ｐネットワークの、必要とする中央サーバ数の少なさを利用している。また、このＰ２Ｐネットワークは中央サーバを必要とすることなくクライアント・リソースに対する安全なアクセスと制御を実現している。サーバ機能とセキュリティ機能は独立に動作することができる。たとえば、図１のＰ２Ｐネットワークは拡張Ｐ２Ｐ検索伝搬をサーバに提供する認証・許可機能１０４がなくとも動作させることができる。あるいは、図１のＰ２Ｐネットワークは認証機能および／または許可機能を用いてＰ２Ｐ検索伝搬を提供するＰ２Ｐサーバがなくとも動作させることができる。サーバ１０２と認証・許可１０４とを組み合わせると、効率的で安全なＰ２Ｐ検索伝搬ネットワークが実現する。このような組み合わせシステムには地球規模の大組織または他の大組織用のイントラネット・アプリケーションに有利な用途がある。
【００６４】
当業者が理解しうるように、本発明はハードウェアまたはソフトウェアで、あるいはハードウェアとソフトウェアの組み合わせで実現することができる。好適な実施形態とともに開示した本発明の原理に従うシステムまたは方法は上述したもしくは特許請求の範囲に記載した個々の機能またはステップを実行する個別の構成要素、または開示したもしくは特許請求の範囲に記載した機能もしくはステップのうちの任意のもののパフォーマンスを組み合わせた少なくとも１つの構成要素を備えた単一のコンピュータ・システムで実現することができ、あるいは、当業者に公知の任意の好適な手段によって相互接続された分散コンピュータ・システム中に構成することができる。
【００６５】
当業者が理解しうるように、好適な実施形態とともに開示した本発明の原理によれば、本発明および本発明の原理は特定の種類のコンピュータ・システムに限定されず、上述した機能および上述した方法ステップを実行しうるように構成された任意の汎用コンピュータで使用することができる。当業者が理解しうるように、上述したようなコンピュータの操作は当該コンピュータの操作または制御で使用する、媒体に格納されたコンピュータ・プログラムによって行なう。当業者が理解しうるように、このコンピュータ媒体はコンピュータ・プログラム製品を保持または格納するために使用することができ、コンピュータの備品（たとえばメモリ）の形をとることができ、あるいは、可搬媒体（たとえばディスク）の形をとることができる。
【００６６】
本発明は特定のコンピュータ・プログラム、論理もしくは言語、または命令に限定されないが、当業者に公知の好適なプログラム、論理もしくは言語、または命令を用いて実施することができる。ここに開示した発明の原理を限定することなく、そのようなコンピュータ・システムは特に少なくとも１つのコンピュータ読み取り可能な媒体を備えている。このコンピュータ読み取り可能な媒体はコンピュータにデータ、命令、メッセージまたはメッセージ・パケット、および他のコンピュータ読み取り可能な情報を当該コンピュータ読み取り可能な媒体から読み取ることを可能にするものである。コンピュータ読み取り可能な媒体には不揮発性メモリ（たとえばＲＯＭ、フラッシュ・メモリ、フロッピー（登録商標）・ディスク、ディスク駆動装置メモリ、ＣＤＲＯＭ、および他の永続記憶装置）が含まれる。また、コンピュータ読み取り可能な媒体にはたとえば揮発性記憶装置（たとえばＲＡＭ、バッファ、キャッシュ・メモリ、およびネットワーク回路）も含まれる。
【００６７】
また、コンピュータ読み取り可能な媒体には一時状態媒体中のコンピュータ読み取り可能情報も含まれる。一時状態媒体にはコンピュータがこのようなコンピュータ読み取り可能情報を読み取るのを可能にするネットワーク・リンクおよび／またはネットワーク・インタフェース（たとえば有線ネットワークまたは無線ネットワーク）が含まれる。
【００６８】
以上、本発明の特定の実施形態を開示したが、当業者が理解しうる点を挙げると、本発明の本旨と範囲の内でこの特定の実施形態を変更することができる。したがって、本発明の範囲は特定の実施形態に限定されない。特許請求の範囲は本発明の範囲の内の任意のそしてすべての応用、変更、および実施形態を包含するものである。
【図面の簡単な説明】
【００６９】
【図１】本発明の好適な実施形態に従って動作するＰ２Ｐネットワークのブロック図である。
【図２】本発明の好適な実施形態に従って動作するＰ２Ｐネットワークにおけるサーバのブロック図である。
【図３】本発明の好適な実施形態に従って動作するＰ２Ｐネットワークにおける認証・許可プロセスのブロック図である。
【図４】本発明の好適な実施形態に従って動作するＰ２Ｐネットワークにおけるクライアントのブロック図である。
【図５】本発明の好適な実施形態に従いシード・リストを生成・保守する、クライアントとサーバとの間の相互作用を含むプロセス・フロー図である。
【図６】本発明の好適な実施形態に従う、クライアントによるＰＩＮＧ、ＳＥＡＲＣＨ、ＧＥＴの各要求の処理のプロセス・フロー図である。
【図７】クライアントの外部にある認証プロセスと通信する必要のない認証プロセスのプロセス・フロー図てある。
【図８】本発明の好適な実施形態に従う、クライアントと当該クライアントの外部にある認証プロセスとの間の通信のプロセス・フロー図である。
【図９】本発明の好適な実施形態に従う、クライアントと当該クライアントの外部にある許可プロセスとの間の通信のプロセス・フロー図である。
【符号の説明】
【００７０】
１００  イントラネット・バックボーン
１０２  Ｐ２Ｐサーバ
１０４  認証・許可プロセス
１０６  クライアント１
１０８  クライアント２
１１０  クライアント３
１１２  クライアント４
１１４  クライアント５
１１６  クライアント６
１１８  クライアントＸ
１２０  クライアントＹ
２０２  ネットワーク・インタフェース
２０４  クライアント接続信号
２０６  接続クライアントＩＰアドレス
２０８  シード・リスト生成器
２１０  シード・リスト
３０２  ネットワーク・インタフェース
３０４  認証証明書検査
３０６  クライアントＩＤ
３０８  パスワード
３１０  認証プロセス
３１２  クライアントＩＤ
３１４  アクセス制御
４０２  ディスパッチャ／ネットワーク・インタフェース
４０４  ピング／ポング・プロセス
４０５  検索プロセッサ
４０６  取得プロセッサ
４０８  認証・許可プロセス
４１０  キャッシュ
４２０  メモリ
４２２  リソース
４２４  メタデータ
４３０  ＳＥＡＲＣＨ要求／ＧＥＴ要求
４３２  クライアントの証明書
４３４  シード・リスト
【図１】
2005521143.tif 000003
【図２】
2005521143.tif 000004
【図３】
2005521143.tif 000005
【図４】
2005521143.tif 000006
【図５】
2005521143.tif 000007
【図６】
2005521143.tif 000008
【図７】
2005521143.tif 000009
【図８】
2005521143.tif 000010
【図９】
2005521143.tif 000011
【手続補正書】
【提出日】平成16年2月16日(2004.2.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１のクライアントによる検索要求によって開始されたリソース検索を安全に実行する、ピアツーピア・ネットワークにおいて使用される方法であって、前記検索要求は前記リソース検索は前記第１のクライアントを表わす証明書信号を備えており、
前記検索要求を前記第１のクライアントから第２のクライアントへ転送するステップであって、前記第２のクライアントは複数の第１のリソースを有し、前記複数の第１のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、ステップと、
前記証明書信号と前記複数の第１のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記第２のクライアントにおいて、前記複数の第１のリソースを選択的に検索するステップと、
前記検索要求を前記第２のクライアントから第３のクライアントへ転送するステップであって、前記第３のクライアントは複数の第２のリソースを有し、前記複数の第２のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、ステップと、
前記証明書信号と前記複数の第２のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記第３のクライアントにおいて、前記複数の第２のリソースを選択的に検索するステップと
を備えた
方法。
【請求項２】
さらに、
前記第３のクライアントにおいて、前記複数の第２のリソースを選択的に検索する前記ステップによってリソース一致を確認するステップと、
前記リソース一致を表わす一致信号を前記第３のクライアントから前記第１のクライアントへ転送するステップと
を備えた、
請求項１に記載の方法。
【請求項３】
前記証明書信号は前記第１のクライアントを表わすＩＤ信号を含み、
前記第１のリソースの前記アクセス属性および前記第２のリソースの前記アクセス属性は複数のクライアントのうちの少なくとも１つに付随する許可信号を含み、前記複数のクライアントは前記第１のクライアントを含み、
さらに、
前記第２の複数のリソースを選択的に検索する前記ステップでは、前記ＩＤ信号が前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索し、
前記第３の複数のリソースを選択的に検索する前記ステップでは、前記ＩＤ信号が前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索する、
請求項１または２に記載の方法。
【請求項４】
前記証明書信号は前記第１のクライアントを表わすＩＤ信号を含み、
前記第１のリソースの前記アクセス属性および前記第２のリソースの前記アクセス属性は複数のクライアントのうちの少なくとも１つに付随する許可信号を含み、前記複数のクライアントは前記第１のクライアントを含み、
前記第２の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第２のクライアントから前記第１のクライアント、前記第２のクライアント、および前記第３のクライアントの外部にある認証プロセスへ前記ＩＤ信号を転送するステップと、
これに応答して、前記認証プロセスから前記第１のクライアントに付随する認証信号を受信するステップと、
前記認証信号が前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索するステップと
を含み、
前記第３の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第３のクライアントから前記許可プロセスへ前記ＩＤ信号を転送するステップと、
これに応答して、前記許可プロセスから前記第１のクライアントに付随する認証信号を受信するステップと、
前記認証信号が前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索するステップと
を含む、
請求項１〜３のうちの１項に記載の方法。
【請求項５】
さらに、
前記第２のクライアントにおいて、前記ＩＤ信号および前記受信した認証信号をキャッシュ・メモリに格納するステップと、
前記第２のクライアントにおいて、前記第２のクライアントから前記認証プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信した認証信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信した認証信号を見つけた場合、前記第２のクライアントから前記認証プロセスへ転送する前記ステップを実行せず、
前記第２の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記認証信号を使用する、
請求項４に記載の方法。
【請求項６】
さらに、
前記第３のクライアントにおいて、前記ＩＤ信号および前記受信した認証信号をキャッシュ・メモリに格納するステップと、
前記第３のクライアントにおいて、前記第３のクライアントから前記認証プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信した認証信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信した認証信号を見つけた場合、前記第３のクライアントから前記認証プロセスへ転送する前記ステップを実行せず、
前記第３の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記認証信号を使用する、
請求項４に記載の方法。
【請求項７】
前記第２のクライアントが前記認証プロセスから前記認証信号を受信しなかった場合、前記検索要求を前記第２のクライアントから前記第３のクライアントへ転送する前記ステップ、および前記複数の第２のリソースを選択的に検索する前記ステップを実行しない、
請求項４に記載の方法。
【請求項８】
前記証明書信号が前記第１のクライアントを表わすＩＤ信号を含み、
前記第１のリソースの前記アクセス属性および前記第２のリソースの前記アクセス属性が複数のクライアント・クラスのうちの少なくとも１つに付随する認証信号を含み、
前記第２の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第２のクライアントから前記第２のクライアントの外部にある許可プロセスへ前記ＩＤ信号を転送するステップと、
前記複数のクライアント・クラスのうち前記ＩＤ信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
前記クライアント・クラス信号が前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索するステップと
を備え、
前記第３の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第３のクライアントから前記第３のクライアントの外部にある許可プロセスへ前記ＩＤ信号を転送するステップと、
前記複数のクライアント・クラスのうち前記ＩＤ信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
前記クライアント・クラス信号が前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索するステップと
を備えた、
請求項１〜７のうちの１項に記載の方法。
【請求項９】
さらに、
前記第２のクライアントにおいて、前記ＩＤ信号および前記受信したクライアント・クラス信号を前記第２のクライアントのキャッシュ・メモリに格納するステップと、
前記第２のクライアントにおいて、前記第２のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を求めて前記キャッシュ・メモリを検索するステップと、
前記第３のクライアントにおいて、前記ＩＤ信号および前記受信したクライアント・クラス信号を前記第３のクライアントのキャッシュ・メモリに格納するステップと、
前記第３のクライアントにおいて、前記第３のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって、前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を見つけた場合、前記第２のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
前記第２の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記クライアント・キャッシュ信号を使用し、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信したクライアント・クラス信号を見つけた場合、前記第３のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
前記第３の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記クライアント・クラス信号を使用する、
請求項８に記載の方法。
【請求項１０】
複数のクライアントを有するピアツーピア・ネットワークにおいて使用するクライアント装置であって、
前記複数のクライアントのうちの第２のクライアントからリソース検索要求を受信するピアツーピア・ネットワーク・ディスパッチャであって、前記検索要求は前記複数のクライアントのうちの開始クライアントから開始し、前記検索要求は前記開始クライアントを表わすＩＤ信号を含む証明書信号を含む、ピアツーピア・ネットワーク・ディスパッチャと、
複数のリソースを格納するメモリであって、前記複数のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、メモリと、
前記証明書信号と前記複数のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記複数のリソースのうちの少なくとも１つを選択的に検索する検索エンジンと
を備えた
クライアント装置。
【請求項１１】
コンピュータ上で実行したときに請求項１〜９のうちの１項のすべてのステップを実行するように適合したプログラム・コードを備えた
コンピュータ・プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
Ｐ２Ｐシステムを実現する第３の方法はＷｅｂ  Ｍｋと呼ばれているものである。これは実際の製品というよりは実現方法であり、「分散コンテンツ管理およびピアツーピア・コンテンツ・ネットワークの出現」（２００１年１月）（The Emergence of Distributed Content Management and Peer-to-Peer Content Networks, January 2001)なる名称のＰ２Ｐコンピューティングの登場に関するガートナーの報告書（Gartner Report）に記載されている。これはウェブ・サーバとウェブ・ブラウザを使用するウェブに基づいた方式である。これらのウェブ・ブラウザはユーザによって構成可能であるとともに、リソース共用機能を組み込んでいるものが望ましい。上記ウェブ・サーバは複数のインデックスを保持しており、様々な種類のデータにアクセスすることができる。この種のシステムはソフトウェア・エージェントすなわちロボット（Bot)を用いてサービス（たとえば複数のリソースの抽出と統合、チャト機能、変更の通知など）を提供する。検索要求はサーバに格納し、リアルタイムまたはバッチ・プロセスで実行しうるように設定することができる。検索結果は適切なクライアントに通知する。
ウーヤン・キムら「インターネットにおけるピアツーピア・コンピューティング用の安全なプラットフォーム」（システム科学に関する第３５回年次ハワイ国際会議の会報、第３９４８〜３９５７頁、ＸＰＰ００２２５  ２００２年１０月１８日、ロス  アラミトス、カリフォルニア州、アメリカ合衆国、アイトリプルイー・コンピュータ科学、アメリカ合衆国  ＩＳＢＮ：０−７６９５−１４３５−９）（Wooyoung Kim et al:"a secure platform for peer-to-peer computing in the Internet" Proceeding of the 35th annual Hawaii International conference on system science, pages 3948-3957, XP00225 1810 2002, Los Alamitos, CA, USA, IEEE Compt. Soc, USA ISBN:0-7695-1435-9)には、サービスが広告をするｅサービス・インフラストラクチャが開示されている。発見し、動的かつ安全な方法で相互運用する。
アドバンスト・リアリティ「アドバンスト・リアリティはすべてのアプリケーションを協働的にするピアツーピア協働プラットフォームを発表する」（アドバンスト・リアリティ出版発行、２００１年１２月１０日、ＸＰ００２２５１８１１）（Advanced reality:"Advanced Reality Introduces Peer-to-peer collaboration platform that makes any application collaborative", Advanced Reality Press Release, 10 December 2001, XP002251811）には、企業とソフトウェア開発者が既存のアプリケーションおよび新たなアプリケーションを安全なリアルタイム協働機能で強化しうるようにするプレゼンスＡＲが開示されている。
【非特許文献１】「分散コンテンツ管理およびピアツーピア・コンテンツ・ネットワークの出現」（２００１年１月、ガートナーの報告書）（The Emergence of Distributed Content Management and Peer-to-Peer Content Networks, January 2001, Gartner Report)
【非特許文献２】ウーヤン・キムら「インターネットにおけるピアツーピア・コンピューティング用の安全なプラットフォーム」（システム科学に関する第３５回年次ハワイ国際会議の会報、第３９４８〜３９５７頁、ＸＰＰ００２２５  ２００２年１０月１８日、ロス  アラミトス、カリフォルニア州、アメリカ合衆国、アイトリプルイー・コンピュータ科学、アメリカ合衆国  ＩＳＢＮ：０−７６９５−１４３５−９）（Wooyoung Kim et al:"a secure platform for peer-to-peer computing in the Internet" Proceeding of the 35th annual Hawaii International conference on system science, pages 3948-3957, XP002251810 2002, Los Alamitos, CA, USA, IEEE Compt. Soc, USA ISBN:0-7695-1435-9)
【非特許文献３】アドバンスト・リアリティ「アドバンスト・リアリティはすべてのアプリケーションを協働的にするピアツーピア協働プラットフォームを導入する」（アドバンスト・リアリティ出版発行、２００１年１２月１０日、ｘｐ００２２５１８１１）（Advanced reality:"Advanced Reality Introduces Peer-to-peer collaboration platform that makes any application collaborative", Advanced Reality Press Release, 10 December 2001, xp002251811）
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
第１の側面において、本発明はピアツーピア・ネットワークにおいて、第１のクライアントが開始したリソース検索を安全に実行する方法を提供する。前記リソース検索は前記第１のクライアントを表わす証明書信号を有する検索要求に含まれている。
前記方法は、
前記検索要求を前記第１のクライアントから第２のクライアントへ転送するステップであって、前記第２のクライアントは複数の第１のリソースを有し、前記複数の第１のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、ステップと、
前記証明書信号と前記複数の第１のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記第２のクライアントにおいて、前記複数の第１のリソースを選択的に検索するステップと、
前記検索要求を前記第２のクライアントから第３のクライアントへ転送するステップであって、前記第３のクライアントは複数の第２のリソースを有し、前記複数の第２のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、ステップと、
前記証明書信号と前記複数の第２のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記第３のクライアントにおいて、前記複数の第２のリソースを選択的に検索するステップと
を備えている。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】変更
【補正の内容】
【００１４】
前記方法は、さらに、
前記第３のクライアントにおいて、前記複数の第２のリソースを選択的に検索する前記ステップによってリソース一致を確認するステップと、
前記リソース一致を表わす一致信号を前記第３のクライアントから前記第１のクライアントへ転送するステップと
を備えているのが望ましい。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】変更
【補正の内容】
【００１５】
望ましくは、
前記証明書信号は前記第１のクライアントを表わすＩＤ信号を含み、
前記第１のリソースの前記アクセス属性および前記第２のリソースの前記アクセス属性は複数のクライアントのうちの少なくとも１つに付随する許可信号を含み、前記複数のクライアントは前記第１のクライアントを含み、
さらに、
前記第２の複数のリソースを選択的に検索する前記ステップでは、前記ＩＤ信号が前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索し、
前記第３の複数のリソースを選択的に検索する前記ステップでは、前記ＩＤ信号が前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索する。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】変更
【補正の内容】
【００１６】
望ましくは、
前記証明書信号は前記第１のクライアントを表わすＩＤ信号を含み、
前記第１のリソースの前記アクセス属性および前記第２のリソースの前記アクセス属性は複数のクライアントのうちの少なくとも１つに付随する許可信号を含み、前記複数のクライアントは前記第１のクライアントを含み、
前記第２の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第２のクライアントから前記第１のクライアント、前記第２のクライアント、および前記第３のクライアントの外部にある認証プロセスへ前記ＩＤ信号を転送するステップと、
これに応答して、前記認証プロセスから前記第１のクライアントに付随する認証信号を受信するステップと、
前記認証信号が前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索するステップと
を含み、
前記第３の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第３のクライアントから前記許可プロセスへ前記ＩＤ信号を転送するステップと、
これに応答して、前記許可プロセスから前記第１のクライアントに付随する認証信号を受信するステップと、
前記認証信号が前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索するステップと
を含む。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】変更
【補正の内容】
【００１７】
前記方法は望ましくは、さらに、
前記第２のクライアントにおいて、前記ＩＤ信号および前記受信した認証信号をキャッシュ・メモリに格納するステップと、
前記第２のクライアントにおいて、前記第２のクライアントから前記認証プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信した認証信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信した認証信号を見つけた場合、前記第２のクライアントから前記認証プロセスへ転送する前記ステップを実行せず、
前記第２の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記認証信号を使用する。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
前記方法は、さらに、
前記第３のクライアントにおいて、前記ＩＤ信号および前記受信した認証信号をキャッシュ・メモリに格納するステップと、
前記第３のクライアントにおいて、前記第３のクライアントから前記認証プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信した認証信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信した認証信号を見つけた場合、前記第３のクライアントから前記認証プロセスへ転送する前記ステップを実行せず、
前記第３の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記認証信号を使用する。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
望ましくは、
前記第２のクライアントが前記認証プロセスから前記認証信号を受信しなかった場合、前記検索要求を前記第２のクライアントから前記第３のクライアントへ転送する前記ステップ、および前記複数の第２のリソースを選択的に検索する前記ステップを実行しない。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
望ましくは、
前記証明書信号が前記第１のクライアントを表わすＩＤ信号を含み、
前記第１のリソースの前記アクセス属性および前記第２のリソースの前記アクセス属性が複数のクライアント・クラスのうちの少なくとも１つに付随する認証信号を含み、
前記第２の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第２のクライアントから前記第２のクライアントの外部にある許可プロセスへ前記ＩＤ信号を転送するステップと、
前記複数のクライアント・クラスのうち前記ＩＤ信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
前記クライアント・クラス信号が前記許可信号と実質的に一致する場合、前記第２の複数のリソースのうちの１つを検索するステップと
を備え、
前記第３の複数のリソースを選択的に検索する前記ステップが、さらに、
前記第３のクライアントから前記第３のクライアントの外部にある許可プロセスへ前記ＩＤ信号を転送するステップと、
前記複数のクライアント・クラスのうち前記ＩＤ信号に関連付けられているものを表わすクライアント・クラス信号を前記許可プロセスから受信するステップと、
前記クライアント・クラス信号が前記許可信号と実質的に一致する場合、前記第３の複数のリソースのうちの１つを検索するステップと
を備えている。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
前記方法は望ましくは、さらに、
前記第２のクライアントにおいて、前記ＩＤ信号および前記受信したクライアント・クラス信号を前記第２のクライアントのキャッシュ・メモリに格納するステップと、
前記第２のクライアントにおいて、前記第２のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって、前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を見つけた場合、前記第２のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
前記第２の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記クライアント・キャッシュ信号を使用する。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
前記方法は望ましくは、さらに、
前記第３のクライアントにおいて、前記ＩＤ信号および前記受信したクライアント・クラス信号を前記第３のクライアントのキャッシュ・メモリに格納するステップと、
前記第３のクライアントにおいて、前記第３のクライアントから前記許可プロセスへ転送する前記ステップの前に、前記ＩＤ信号および前記受信したクライアント・キャッシュ信号を求めて前記キャッシュ・メモリを検索するステップと
を備え、
前記キャッシュ・メモリを検索する前記ステップによって前記キャッシュ・メモリに格納されている前記ＩＤ信号および前記受信したクライアント・クラス信号を見つけた場合、前記第３のクライアントから前記許可プロセスへ転送する前記ステップを実行せず、
前記第３の複数のリソースのうちの１つを検索する前記ステップでは前記キャッシュ・メモリに格納されている前記クライアント・クラス信号を使用する。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
前記ピアツーピア・ネットワークは第１のクライアント，第２のクライアント、および第３のクライアントを含む複数のクライアント（前記複数のクライアントの各々は一意のクライアント・アドレスを有する）とクライアント・アドレスのリストを有するサーバとを備えているのが望ましい。
前記方法はさらに、
クライアント・アドレスの前記リストの第１の部分を備えた第１のシード・リストを前記サーバから前記第１のクライアントへ転送するステップと、
クライアント・アドレスの前記リストの第２の部分を備えた第２のシード・リストを前記サーバから前記第２のクライアントへ転送するステップと
を備え、
前記第１のシード・リストは前記第２のクライアントに対応する第２のクライアント・アドレスを含み、前記第２のシード・リストは前記第３のクライアントに対応する第３のクライアント・アドレスを含み、
前記検索要求を前記第１のクライアントから前記第２のクライアントへ転送する前記ステップにおいて、前記第１のシード・リストに含まれる前記第２のクライアント・アドレスによって前記第２のクライアントへ転送し、
前記検索要求を前記第２のクライアントから前記第３のクライアントへ転送する前記ステップにおいて、前記第２のシード・リストに含まれる前記第３のクライアント・アドレスによって前記第３のクライアントへ転送する。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
前記複数のクライアントの各々は常時、前記ピアツーピア・ネットワークに接続している、または前記ピアツーピア・ネットワークから切断されているのが望ましい。
前記方法は、さらに、
前記サーバにおいて、前記複数のクライアントのうち前記ピアツーピア・ネットワークに接続しているものを確認するステップと、
前記サーバにおいて、確認する前記ステップによって接続クライアントのアドレスのリストを作成するステップと、
前記サーバにおいて、前記接続クライアントのアドレスのリストから前記第１のシード・リストおよび前記第２のシード・リストを作成するステップと
を備えている。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
前記方法は、さらに、
前記複数のクライアントのうちの１つが前記ピアツーピア・ネットワークに接続したことに応答して、接続信号を前記複数のクライアントのうちの前記１つから前記サーバへ転送するステップと、
前記サーバにおいて、これに応答して、前記複数のクライアントのうちの前記１つに対応する新たに接続したクライアントのアドレスを接続クライアントのアドレスの前記リストに付加するステップと
を備えているのが望ましい。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
第２の側面において、本発明は複数のクライアントを有するピアツーピア・ネットワークに含まれるクライアント装置を提供する。
前記クライアント装置は、
前記複数のクライアントのうちの第２のクライアントからリソース検索要求を受信するピアツーピア・ネットワーク・ディスパッチャであって、前記検索要求は前記複数のクライアントのうちの開始クライアントから開始し、前記検索要求は前記開始クライアントを表わすＩＤ信号を含む証明書信号を含む、ピアツーピア・ネットワーク・ディスパッチャと、
複数のリソースを格納するメモリであって、前記複数のリソースの各々は少なくとも１つの対応するアクセス属性を備えている、メモリと、
前記証明書信号と前記複数のリソースの各々の前記少なくとも１つのアクセス属性とを比較することにより、前記複数のリソースのうちの少なくとも１つを選択的に検索する検索エンジンと
を備えている。
【手続補正１７】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
望ましくは、
前記ピアツーピア・ネットワーク・ディスパッチャは、
前記ＩＤ信号を前記クライアントの外部にある認証プロセスへ転送し、
前記認証プロセスが前記ＩＤ信号を認証した場合、認証済み信号を受信し、
前記検索エンジンは、
前記認証プロセスから前記認証済み信号を受信しない場合、前記複数のリソースをすべて検索しない。
【手続補正１８】
【補正対象書類名】明細書
【補正対象項目名】００２８
【補正方法】変更
【補正の内容】
【００２８】
望ましくは、
前記認証プロセスから前記認証済み信号を受信しない場合、前記ピアツーピア・ネットワーク・ディスパッチャは前記リソース検索を前記複数のクライアントのうちの第３のクライアントへ転送しない。
【手続補正１９】
【補正対象書類名】明細書
【補正対象項目名】００６８
【補正方法】変更
【補正の内容】
【００６８】
以上、本発明の特定の実施形態を開示したが、当業者が理解しうる点を挙げると、本発明の範囲の内でこの特定の実施形態を変更することができる。したがって、本発明の範囲は特定の実施形態に限定されない。特許請求の範囲は本発明の範囲の内の任意のそしてすべての応用、変更、および実施形態を包含するものである。


【国際調査報告】
2005521143.tif 000012
2005521143.tif 000013
2005521143.tif 000014
2005521143.tif 000015