(57)【要約】【課題】  広域情報共有流通サービスシステムにおいて、遊休資源の公共利用を促進し、かつ私的に利用される資源に対するセキュリティに充分な保証を与える。【解決手段】  情報ネットワークを構成するノードマシン１において、私的に利用されるプライベートゾーン内に置かれる資源２と、公的サービスに利用されるパブリックゾーン内に置かれる資源３と、プライベートゾーンとパブリックゾーンとの間で、プライベートゾーン内に置かれる資源２のセキュリティを管理するセキュリティ管理手段４とを備える。【選択図】      図１
2005050286.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを構成するノードマシンにおいて、
私的に利用されるプライベートゾーンに置かれる資源と、
公的サービスに利用されるパブリックゾーンに置かれる資源と、
該プライベートゾーンとパブリックゾーンとの間で、プライベートゾーンに置かれる資源のセキュリティを管理するセキュリティ管理手段とを備えることを特徴とするネットワークノードマシン。
【請求項２】
前記ネットワークノードマシンにおいて、
該ネットワークノードマシン上で動作し、前記セキュリティ管理手段を用いてプライベートゾーンとパブリックゾーンとの間のセキュリティバリア機能を実現するノードセキュリティ管理手段を更に備えることを特徴とする請求項1記載のネットワークノードマシン。
【請求項３】
複数の前記ネットワークノードマシン上でそれぞれ動作するノードセキュリティ管理手段によってコミュニティが形成され、該コミュニティが階層構造を有することを特徴とする請求項２記載のネットワークノードマシン。
【請求項４】
前記コミュニティの階層構造において、各コミュニティに対応するネットワークノードマシン上の前記ノードセキュリティ管理手段のうちに、上位コミュニティとのインタフェース機能を有するコミュニティセキュリティ管理手段を備えることを特徴とする請求項３記載のネットワークノードマシン。
【請求項５】
前記コミュニティセキュリティ管理手段が、前記コミュニティへの前記ノードセキュリティ管理手段の加入の可否を管理することを特徴とする請求項４記載のネットワークノードマシン。
【請求項６】
前記ネットワークノードマシンが、前記コミュニティへの加入を要求するノードセキュリティ管理手段の属性に対応して、加入後に公的サービス用に提供すべき資源を含む条件を記述したパブリックポリシーへのアクセス許可判定用の属性条件を記憶するアクセス許可属性条件記憶手段を更に備え、
前記コミュニティセキュリティ管理手段が、該記憶内容を用いてコミュニティへの加入の可否を管理することを特徴とする請求項５記載のネットワークノードマシン。
【請求項７】
前記コミュニティセキュリティ管理手段が、他のコミュニティのノードセキュリティ管理手段からの、自コミュニティに対応するネットワークノードマシン内のプライベートゾーンに置かれた資源へのアクセスの可否を管理することを特徴とする請求項４記載のネットワークノードマシン。
【請求項８】
前記コミュニティセキュリティ管理手段が動作するネットワークノードマシンが、前記自コミュニティ内のプライベートゾーンに置かれた資源へのアクセスを要求する他コミュニティのノードセキュリティ管理手段の属性に対応して、アクセス許可判定用の属性条件を記憶するアクセス許可属性条件記憶手段を更に備え、
前記コミュニティセキュリティ管理手段が該記憶内容を用いてアクセスの可否を管理することを特徴とする請求項７記載のネットワークノードマシン。
【請求項９】
前記コミュニティセキュリティ管理手段が動作するネットワークノードマシンが、上位のコミュニティ、下位のコミュニティ、および前記コミュニティの階層構造においてセキュリティが確認された通信経路に対応する論理アドレスを格納するコミュニティ管理データ記憶手段を更に備え、
前記コミュニティセキュリティ管理手段が、該記憶内容を用いてコミュニティのセキュリティ管理を行なうことを特徴とする請求項４記載のネットワークノードマシン。
【請求項１０】
私的に利用されるプライベートゾーンに置かれる資源と、
公的サービスに利用されるパブリックゾーンに置かれる資源と、
該プライベートゾーンとパブリックゾーンとの間で、プライベートゾーンに置かれる資源のセキュリティを管理するセキュリティ管理手段とを備え、ネットワークによって相互に接続されるノードマシンによって構成されることを特徴とする情報ネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、個々の計算資源・情報資源をPublic Zone とPrivate Zoneとに切り分け、他からのアクセスを排除する資源をPrivate Zone 内に置き、公共の利用に供すべき資源をPublic Zone内に置いて管理することによって、セキュリティの保証を与えると同時に、個々の資源の公共利用を促進させることを可能とする情報流通ネットワーク内資源の管理方式である。
【０００２】
今後、グリッド・コンピューティングやユビキタス・コンピューティングなど、公共性を考慮した広域情報共有流通サービスにおいて、広域ネットワーク上の各種の計算資源および情報資源を公共利用することが一般的となってくることが予想されるが、そのような情報流通サービス環境において本発明による資源管理方式は、多くの広域情報流通サービスの基盤を与えるものであり、その利用分野は多岐にわたる。
【背景技術】
【０００３】
従来、インターネット中のWEB情報やソフトウェア資源（音楽ソフト、ビデオソフトなど）などを、個々の目的ごとに個別に利用するということが種々のインターネットビジネスで行われているが、公共的に利用される資源と私的に使用される資源を明確に区別して、統一的にアクセスセキュリティの管理を行うということがなく、資源がアドホックに利用されてきた。従来方式では統一化されたセキュリティシステムを内包したネットワーク環境という概念が欠如していたため、個々の情報資源に対するセキュリティは個別に管理されるという方法が取られてきた。このため、セキュリティに対する統一的方法によって十分な保証を与えるということが困難であった。
【０００４】
このようなセキュリティ管理やアクセス制御の従来技術として次の文献がある。
【特許文献１】特開２００２−７３５０６号公報「ファイル交換方法」
【特許文献２】特開２００３−１２２６３５号公報「アクセス権制御システム」  特許文献１には、電子データファイルを受信者が正しく受信したことを送信者側で確認することができるファイル交換方法が開示されている。
【０００５】
特許文献２には、データの提供元としてのクライアント機器からのアクセス権の問い合わせに対応して、ピアツーピアでのデータ交換を行なう際のアクセス権の制御を処理能力の高いサーバ側で行なうことにより、複雑なアクセス権制御を適切に処理できる技術が開示されている。
【０００６】
しかしながら、このような従来技術においては、公共的に利用される資源と私的に使用される資源とを明確に区別しながら、特に私的に利用される資源のセキュリティに充分な保証を与えることはできないという問題点があった。
【０００７】
次に、インターネット中には多くの計算資源や情報資源が有効に活用されず休眠状態にあり、社会的に多大な資源の無駄が生じており、これらの遊休資源を公共利用という観点で有効利用することが、資源の無駄を省くという観点から重要なこととなる。しかしながら、従来はこのような遊休資源を活用する統一的な技術が存在しないという問題点もあった。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、上述の問題点に鑑み、個々の計算資源および情報資源をパブリックゾーンとプライベートゾーンとに切り分け、他からのアクセスを排除する資源をプライベートゾーン内においてセキュリティの保証を与えると同時に、公共の利用に供すべき資源をパブリックゾーン内において管理し、個々の資源の公共利用を促進させることである。
【課題を解決するための手段】
【０００９】
図１は本発明のネットワークノードマシンの原理構成ブロック図である。
図１においてネットワークノードマシン１は、私的に利用されるプライベートゾーン内におかれる資源２と、公的サービスに利用されるパブリックゾーン内におかれる資源３と、プライベートゾーンとパブリックゾーンとの間でプライベートゾーン内に置かれる資源２のセキュリティを管理するセキュリティ管理手段４、例えばハードウエアとしてのセキュリティ管理装置、またはソフトウエアルーチンとを備えている。
【００１０】
また本発明のネットワークノードマシン１は、例えばネットワークノードマシン上で動作するエージェントであって、セキュリティ管理手段４を用いてセキュリティバリア機能を実現するノードセキュリティ管理手段を更に備えることもでき、この場合ネットワークノードマシン1上でそれぞれ動作するノードセキュリティ管理手段、例えば複数のエージェントによってコミュニティが形成され、そのコミュニティが階層構造を有することもでき、更にその階層構造において各コミュニティに対応するネットワークノードマシン１上のノードセキュリティ管理手段、例えばエージェントのうちに上位コミュニティとのインタフェース機能を有するコミュニティセキュリティ管理手段、例えばポータルエージェントを備えることもできる。
【００１１】
また本発明においてコミュニティセキュリティ管理手段、例えばポータルエージェントはコミュニティへのノードセキュリティ管理手段、例えばエージェントの加入の可否を管理することもでき、この場合ネットワークノードマシン１が、コミュニティへの加入を要求するノードセキュリティ管理手段の属性に対応して、加入後に公的サービス用に提供すべき資源を含む条件を記述したパブリックポリシーへのアクセス許可判定用の属性条件を記憶するアクセス許可属性条件記憶手段を更に備え、コミュニティセキュリティ管理手段、例えばポータルエージェントがその記憶内容を用いてコミュニティへの加入の可否を管理することもできる。
【００１２】
また本発明においてコミュニティセキュリティ管理手段、例えばポータルエージェントが他のコミュニティのノードセキュリティ管理手段、例えばエージェントからの自コミュニティに対応するネットワークノードマシン1内のプライベートゾーンにおかれた資源２へのアクセスの可否を管理することもでき、この場合コミュニティセキュリティ管理手段が動作するネットワークノードマシン１が、自コミュニティ内のプライベートゾーンにおかれた資源２へのアクセスを要求する他コミュニティのノードセキュリティ管理手段の属性に対応して、アクセス許可判定用の属性条件を記憶するアクセス許可属性条件記憶手段を更に備え、コミュニティセキュリティ管理手段がその記憶内容を用いてアクセスの可否を管理することもできる。
【００１３】
本発明においてコミュニティセキュリティ管理手段、例えばポータルエージェントが動作するネットワークノードマシン１が、上位のコミュニティ、下位のコミュニティ、およびコミュニティの階層構造においてセキュリティが確認された通信経路に対応する論理アドレスを格納するコミュニティ管理データ記憶手段、例えばコミュニティ管理テーブルを更に備え、コミュニティセキュリティ管理手段がその記憶内容を用いてコミュニティのセキュリティ管理を行なうこともできる。
【００１４】
本発明の情報ネットワークシステムは、私的に利用されるプライベートゾーン内に置かれる資源と、公的サービスに利用されるパブリックゾーン内に置かれる資源と、プライベートゾーンとパブリックゾーンとの間でプライベートゾーン内に置かれる資源のセキュリティを管理するセキュリティ管理手段とを備え、ネットワークによって相互に接続されるノードマシンによって構成される。
【発明の効果】
【００１５】
本発明によれば、プライベートゾーン内の資源のセキュリティを保証し、かつ遊休資源を公共の利用に供する情報流通環境を構築することができ、グリッドコンピューティングや、ユビキタスコンピューティングなど広域ネットワーク中に散在する各種の計算資源や情報資源を有効利用して、大規模計算や、広域情報処理サービスを行なう情報流通環境を構築することができる。
【００１６】
また本発明はマルチエージェント方式をベースとし、あるエージェントの下位コミュニティを１つの資源と見なし、コミュニティへのアクセス管理とハードウエア資源／ソフトウエア資源へのアクセス管理を同一のセキュリティ管理システムで統一的に扱うことにより、セキュリティ管理装置／ソフトウエアを、簡潔かつ経済的に実現することができる。
【発明を実施するための最良の形態】
【００１７】
発明の実施形態の説明として、まず本発明の特徴について説明する。
インターネットに接続された各種の計算機システムや情報端末を用いるユーザの間で直接情報交換を行うPeer to Peer（P2P）通信環境において、端末ユーザを含む各種ユーザの間の対等な情報通信のサービスが行われる。このサービスを実現するためにネットワーク中には多くの中継ノードが存在し、これらのノード間でメッセージの中継・転送が制御されることになる。この中継ノードは、通信キャリアや個々の企業・団体が持つServer MachineであったりRouting Machineであったりする。これらのマシンはネットワーク中のユーザには直接見えないところに存在し、アドレスの探索・転送、ルーティング制御、メッセージの変換・転送・中継などの通信制御が行われる。また、ユーザの情報端末は、高位のサービス機能としてアドレスの探索・転送やメッセージの中継・転送のサービスなど、ネットワークノードマシンとしての機能も持つ。Ｐ２Ｐネットワークのセキュリティを考えるにあたって、このような物理ネットワーク層の機能と構成を明確にしておく必要がある。なお、以下の説明ではネットワークノードマシンをノードマシンと略称する。
【００１８】
一方、ネットワークユーザにとっては物理ネットワークの構造を意識せずに、各種の階層のユーザ・グループをネットワーク中に自由に構成でき、また異なるユーザ・グループ間でP2P通信を行えることが必要である。本発明では個々のユーザ・グループのことをコミュニティと呼び、階層化されたコミュニティの間で形成されるネットワークを論理ネットワークとよぶ。
【００１９】
ユーザがコミュニティを形成し、コミュニティ間にまたがるP2P通信を行うとき、特に問題となるのはコミュニティ間の通信においてセキュリティを保証することである。Ｐ２Ｐネットワークのセキュリティを保証するために、物理ネットワーク層と同様、論理ネットワーク層の機能と構成を明確にし、物理ネットワーク層と論理ネットワーク層の関係、インタフェースを明確にする必要がある。
【００２０】
本発明は、物理ネットワークを意識することなく、セキュリティが保証された論理ネットワークとして個々のコミュニティを構成できるような情報ネットワークのアーキテクチャを提示し、その上でのセキュリティ管理の方式を提示するものである。
【００２１】
すなわち、本発明では柔軟な論理ネットワークを設定可能にすると同時にセキュリティを確保するために、物理ネットワーク上の各ノードに設置されるノードマシンには公共サービス空間（Public Zone）と私的利用空間（Private Zone）を備えたアーキテクチャを考える。
【００２２】
本発明によるアーキテクチャでは、Public Zone と Private Zoneとの間にセキュリティバリア（Security Barrier）を設け、セキュリティを確保する（セキュリティバリアの詳細については後述する）。
【００２３】
本発明では、Public Zone と Private Zone の２層化の概念を、論理ネットワーク層においてはコミュニティ管理機能として具体化し、また物理ネットワーク層においてはP2P エージェント間通信管理ゾーン（Agent Communication Control Zone; ACC）の機能として具体化する。
【００２４】
ここで、エージェントとは、他のエージェントあるいはマシンからの（メッセージなどによる）要求を受けて、独立並行してその要求の処理を行うソフトウェアである。
また、上記のノードマシンとはハードウェア環境（情報端末、パーソナルコンピュータ、サーバーマシンなどのプロセッサ装置）を指す。エージェントはソフトウェアで実装され、ノードマシン上で動作する。ひとつのノードマシン上では複数のエージェントが動作する。セキュリティ管理を行う枠組み、すなわち、Public機能、Private機能、Security Barrier機能の実装はエージェントによって行われる。 Public資源の管理、Private資源の管理、Security Barrier機能（セキュリティ管理部）はエージェントの機能として実現される。エージェント間通信管理ゾーンはノードマシンが持つ既存の物理ネットワーク通信管理部とエージェントとのインタフェース部としてソフトウェアで実装される。
【００２５】
階層性をもった論理ネットワークにおいては、ある階層でのコミュニティはその上位からは、ひとつのエージェントとして扱われる。各資源もひとつのエージェントとして扱われる。したがって、すべてのコミュニティならびに資源に対しては、階層構造をもつマルチエージェントの中で、そのセキュリティ管理がエージェントのセキュリティ管理として統一的に行われる（上位層から見ればエージェントと資源は等価なものである。以下の説明では、文脈によってエージェントあるいは資源という語を用いるが、エージェント＝資源である）。
【００２６】
このアーキテクチャは次のような思想にもとづくものである。冒頭に述べたように、P2P通信環境においては物理ネットワーク上に非常に多くのノードマシンが分散して存在し、ひとつの情報共有流通空間を形成する。各ノードマシンはユーザには直接見えないところで、経路制御や通信制御、メッセージやアドレス情報など各種情報の変換・転送、キャッシング（一時的な保管）などを行う。ノードマシンの処理には、そのノードのユーザの私的利益を目的とするプライベートな処理ばかりではなく、情報流通のための公共サービスの処理も多く含まれる。したがって、これからの情報共有流通ネットワーク環境においては、各ノードマシンには私的目的の処理のみならず、公共的なサービス処理も提供することが求められる。そこで、ノードマシンには Public Zone と Private Zone をあらかじめ設定しておき、Public Zoneにおいて情報共有流通のための公共サービス機能を持たせる。Public Zone は、ユーザが情報ネットワークのサービスを享受するための義務あるいは投資として、契約によってあるいはTAXとしてあらかじめ公共の場を提供するためのものである。
【００２７】
図２は本発明における情報共有・流通環境の説明図である。同図において、環境１０はノードマシン１１が相互に接続された物理ネットワーク１２を備え、ノードマシン１１にはPrivate  Zone１３とPublic  Zone１４とが設定され、両者の間にSecurity  Barrier１５が存在する。
【００２８】
インターネットなどにより情報共有・流通環境を形成する情報ネットワークの各ノードにはノードコンピュータが配置され、メッセージやデータの中継・転送を行う。ネットワーク中を流れるメッセージやデータには転送先にしか見せない秘密の情報が含まれて、それらの情報を他人が許可なく勝手に覗いたり、改竄したりできないようにするセキュリティ管理が欠かせない。
【００２９】
ノードマシンには各ノードに閉じた情報（そのマシンの中で閉じて個別に管理し、外部からはアクセスさせないデータや処理など）が存在し（たとえば、このノードマシンが個人の端末あるいはデータベースを管理している場合など）、それは排他的（Private）なリソースとして管理される必要がある。
【００３０】
一方、ネットワークノードにおいて、各ノードコンピュータはメッセージ／データの（中継）転送制御を行う機能をもつ必要があり、この機能は公共（Public）の機能である。また、あるノードマシンは、公共サービス用のリソース（たとえばWebのホームページなど）をもち、これを公共財として提供することも考えられる。 この場合そのリソースへのアクセス（読み出し）操作がPublicサービスとなる。
【００３１】
あるいは、Chatなどの黒板サービスでは、メモリ空間とそのメモリへの読み書き操作が公共サービスとなる。
本発明の原理的発想は各ノードマシンが、Publicな機能とPrivateな機能の2層の機能構造を持ち、Public機能とPrivate機能の間にはSecurity Barrierを設けて、Private資源へのアクセスに対してアクセス条件をチェックするという点にある。
【００３２】
本発明の主要な点は、ネットワーク中の各ノードマシンにPublic Zone  とPrivate Zoneの2層構造を持たせてセキュリティ管理を行う枠組みと、Public機能、Private機能の詳細例、Security Barrierの構成法を示すことにある。
上記でノードマシンはハードウェア環境（あるいは装置）を指す。セキュリティ管理を行う枠組み、すなわち、Public機能、Private機能、Security Barrier機能の実装はソフトウェア・エージェントによって行われる。エージェントはソフトウェアで実装され、ノードマシン上で動作する。ひとつのノードマシン上には複数のエージェントが動作する。Public資源の管理、Private資源の管理、Security Barrier機能（セキュリティ管理部）はエージェントの機能として実現される。
【００３３】
このようなアーキテクチャを想定するとき、重要な問題はセキュリティの保証である。セキュリティについては、暗号化技術、認証技術など既存の技術を用いることを前提として考える。Public Zone と Private Zone の間にはセキュリティバリアを設け、Private Zone への侵入をガードする。一方、Public Zone は公共広場と位置付け、各種のデータやメッセージが（一時的な保管も含めて）自由に通り抜けることを許す。コミュニティ管理システムも後述するポータルエージェントのPrivate Zoneとして位置付け、セキュリティチェックにパスしたものだけがそのコミュニティ内にアクセスすることが許される。
【００３４】
セキュリティバリアは実施例2で後述するようにポータルエージェント内に設けられる。具体的には、ポータルエージェント機能を持つノードマシン内に、セキュリティ管理装置あるいはソフトウェアルーチンを設け、各ポータルエージェント内のセキュリティ管理部はこの装置あるいはルーチンを用いてセキュリティを管理する。
【００３５】
図３はPublic  ZoneとPrivate  Zoneとの説明図である。
物理ネットワーク１２中のノードマシン１１は Private Zone１３ と Public Zone１４をもつ。 Private Zone 、 Public Zone はそれぞれ論理ネットワーク管理部（コミュニティ管理エージェント）と物理ネットワーク管理部（ACC）に設定される。
【００３６】
Public Zoneはオープンな領域であり、以下のような公共のアプリケーションサービスを行う。
他サービスサイト（ノードマシン）のアドレス探索
アドレスキャッシング
ルーティング
メッセージ転送
メッセージ配送
関連情報のキャッシング
その他
【００３７】
Private Zoneはそのノードマシン所有者固有のアプリケーションサービスを行う。
コミュニティ間通信の安全性確保（コミュニティ空間の通信管理）
コミュニティのセキュリティ管理
コミュニティ間のセキュアー通信
コミュニティへのアクセス保護
コミュニティ内ユーザへのサービスアプリケーション
【００３８】
Public Zone からPrivate ZoneへのアクセスはSecurity Barrier によってガードされる。
Public Zone と Private Zone は、コミュニティ管理システムの中で論理ネットワーク管理部と物理ネットワーク管理部の両方に存在し、それぞれ論理ネットワーク上および物理ネットワーク上での公共サービス処理と私的目的のための処理とを区別して管理する。具体的には論理ネットワーク上でのPublic Zone管理はコミュニティ管理部によって行なわれ、物理ネットワーク上でのPublic Zone管理はエージェント間通信管理ゾーン（Agent Communication Control Zone; ACC）において行なわれる。
【００３９】
以上において本発明の特徴に関する一般的説明を行なったが、続いて本発明の実施形態における論理ネットワークおよび物理ネットワークの構成とその具体的動作を実施例１として説明する。
【００４０】
コミュニティの構造と管理
本発明では、個々のユーザおよびユーザが属すコミュニティ（企業や私的グループなど各種のコミュニティ）を柔軟に論理ネットワークとして構成できるアーキテクチャを考える。コミュニティは図４に示すように階層構造をなす。個々のユーザはそのどこかのコミュニティに属している。このコミュニティ構造は社会における企業や団体の組織形成構造に対応するものである。コミュニティはいろいろな活動目的に応じて形成されるので、個人はその活動目的によって複数のコミュニティに属すことができる。
【００４１】
前述のように、コミュニティは階層構造をもつ（これは人間社会における組織構造と類似している。）各コミュニティにはエージェントが存在し、それぞれのエージェントはそれ自身このコミュニティの下位のコミュニティ（子コミュニティともいう）を構成している。図４の例では、たとえば、トップレベルにコミュニティA,E，Fがあり、コミュニティAの中にコミュニティBとDが存在し、コミュニティBの中にコミュニティCが存在する。コミュニティBとDはコミュニティAにおいては、エージェントB,Dとして振舞う。aからoまでは各最下位のエージェント（すなわちその下にはコミュニティが存在しないプリミティブなエージェント）である。たとえばユーザ端末などはプリミティブエージェントと考えることができる。
【００４２】
コミュニティは排他的ではなく、複数の重なりを持つ（ひとつ以上のエージェントを共有する）ことが許される。この場合、複数のコミュニティに属すエージェントはそれぞれのコミュニテイにおいて異なる役割・振舞いを持つことになる。図４でたとえば、エージェントｃとｄは、それぞれ、コミュニティBとD、コミュニティCとDに属している。ただし、自分と同位および上位コミュニティを下位のコミュニティに持つことは許されない（この構造は、DAG（非循環の有向グラフ）構造 である）。
【００４３】
Peer to Peer通信とはエージェント同士の通信をさす。図４ではこのプリミティブエージェント間の通信が示されている。（たとえば、ユーザ端末間の通信に対応する。）この図では、Peer to Peer通信を行っているエージェントの間が線で結ばれている（たとえば、aとb、aとh、jとoなど）。
【００４４】
本発明では、個人ならびにコミュニティはすべてエージェントとして扱われる。個人およびコミュニティはそれぞれ属性をもっており、この属性の管理はエージェントの持つコミュニティ管理機能の一環として行われる。
【００４５】
このコミュニティ構造を論理ネットワークとして構成すると図５に示すようなネットワーク・トポロジーとなる。各コミュニティは（ポータルエージェントの）非公開資源（Private資源）として管理される（ポータルエージェントは下位コミュニティを一つの資源として管理する）。
【００４６】
図５において、コミュニティUは全宇宙に対応し、システムにただひとつ存在するものである。すべてのコミュニティはこのコミュニティUの傘下に構成されることになる。この意味で、UのことをUniversal Communityとよぶ。
【００４７】
このように模式化することにより、各エージェントには階層構造を反映させた名前付けができ、それぞれのコミュニティおよびプリミティブエージェントをユニークに同定することができる。なお、例えばコミュニティＣの矢印で示される○印とａ、およびｃの外側の点線の楕円がコミュニティＢを表す。
【００４８】
エージェントの名前はコミュニティUを基点として、下位のコミュニティをたどっていく形で与えられる。これをエージェントの絶対名称という。絶対名称はUniversal Communityからのそのエージェントに到るパス（Downward Path）を表している。プリミティブエージェントｃ の絶対名称はA.B.c あるいは A.D.cである。エージェントｃがコミュニティBの中で振舞う場合はA.B.c という名前を持ち、コミュニティDの中で振舞う場合はA.D.cという名前を持つということである。
【００４９】
一方各エージェントは相対的な名称を持つこともできる（相対的な名前で同定される）。これは、参照側からのアクセスパス構造を反映させた名前付けとなる。たとえば、エージェントｃがエージェントeから参照される場合はその名前はA.B.c あるいは A.D.cとなる。（この場合もｃの振舞いによって二通りの名称が付けられることに注意。）この名称はエージェントeからエージェントｃに至るパスを表していることがわかる。また、エージェントaがエージェントｈ から同定される場合はE!A.B.a という名前となる。この場合パス構造は、まずエージェントｈをその要素としてもつコミュニティE（これはコミュニティUではエージェントEに他ならない）に行き（Upward Path）、コミュニティU内でエージェントAに渡り（Bridging;！記号は同一コミュニティ内の他のエージェントに渡ることを意味する）、その後は、A.B.aと下位のコミュニティに下っていって（Downward Path）エージェントａに到ることをあらわしている。
【００５０】
相対的な名前付けは双方向性を持っている。つまり、たとえば、a から見て h は B.A！E.h という名前で同定でき、一方 h から見てa は E！A.B.ａ という名前で同定できる。
図６はコミュニティとポータルエージェントとの関係の説明図である。同図において、例えば最下位のコミュニティＣのポータルエージェントは、その上位のコミュニティBの内部ではＣという１つのエージェントとして存在することが示されている。
【００５１】
各コミュニティは図７に示されるような上位コミュニティおよび下位コミュニティなどを示すコミュニティ管理テーブルを持ち、コミュニティの階層トポロジーを管理する。あるコミュニティは上位の層から見ればひとつのエージェントとして振舞う。各コミュニティには1個のポータルエージェント（コミュニティ管理エージェント）が存在し、上位コミュニティとのインタフェース機能をもつ。下位コミュニティはポータルエージェントにとっては一つの資源として扱われ、ポータルエージェントによって管理される。セキュリティ管理機能はポータルエージェントが持つインタフェース機能のうちの重要なものである。
【００５２】
コミュニティ管理テーブルのエントリーには、上位コミュニティの論理名および下位コミュニティ（のエージェント）の論理名と、その属性情報が保持される。この属性情報の中に、当該コミュニティのセキュリティ管理テーブル（当該エージェントの属性、ならびに当該エージェントへのアクセス許可属性条件表）をもち、コミュニティ（およびそのコミュニティに所属する端末ユーザ）間のP2P通信経路設定に際してはセキュリティのチェックが行われる。
【００５３】
コミュニティの管理はポータルエージェントによって行われる。ポータルエージェントはコミュニティ管理テーブルを用いて、コミュニティの管理およびメッセージ／データ中継・転送の際の通信パス制御を行う。コミュニティ管理テーブルは上位コミュニティテーブルと下位コミュニティテーブルよりなる。上位コミュニティテーブルには上位コミュニティ（上位コミュニティのポータルエージェントの名前）が登録されており、下位コミュニティテーブルには下位コミュニティ（下位コミュニティのポータルエージェントの名前）が登録されている。またPeer to Peerで一度確立された通信パス（相手方Peerエージェントの論理ネットワークアドレス）はキャッシュテーブルに登録され、2度目以降の通信に際してはキャッシュした論理アドレスを用いて直接通信できるようにする。
【００５４】
ポータルエージェントは下位コミュニティをひとつの資源として扱い、セキュリティ管理を行う。ポータルエージェントはセキュリティ管理テーブルを持ち、コミュニティ内へのアクセスに際して、セキュリティチェックを行う。セキュリティバリアとはこの機能のことである。セキュリティチェックによってP2P通信が許可されると論理ネットワーク上の通信経路が設定される。その経路が設定されれば以下当該ユーザ間でP2P通信が行える。
【００５５】
なおポータルエージェントはPrivate資源として下位コミュニティテーブルと、論理アドレスキャッシュテーブルと、後述するPublicポリシーとを持ち、Public資源として少なくとも上位コミュニティテーブルを持ち、特別な機能として他のエージェントのコミュニティへの加入、脱退を管理する機能を持つ。これに対してプリミティブエージェントは、加入・脱退を管理する機能を持たず、また下位コミュニティテーブルが常に空となっているエージェントである。またコミュニティはポータルエージェントや（プリミティブ）エージェントと別に存在するものではなく、１個のポータルエージェントと、任意個数の（プリミティブ）エージェントが作る論理的なネットワークによってコミュニティが形成される。
【００５６】
図８はP2P通信経路管理とその短絡経路管理の様子を示す。P2P通信の要求が発生するたびにセキュリティチェックを行うことは、コミュニティ管理のオーバヘッドが問題となる。このオーバヘッドを軽減するために、過去にセキュリティチェックが行われ、セキュリティ通信が保証されているコミュニティの間の通信については、その通信経路をバイパスする短絡経路を作り、エージェント管理テーブル内の論理アドレスキャッシュテーブルにその経路をキャッシュする。
【００５７】
一度Peer to Peer通信が行われると2度目以降のPeer to Peer通信を効率化するためにPeer to Peerを行うエージェント間でバイパスが張られる。このバイパス情報は図７に示した、ソース側エージェントのコミュニティ管理テーブル内のキャッシュテーブルに登録されて、Peer to Peer直接通信の制御に用いられる。たとえば、ユーザaとユーザhがP2P通信を行う場合、第1回目の通信においてはコミュニティ間通信経路a.B.A.U.E.h に沿ってセキュリティチェックが施され、セキュリティチェックにパスすればaとhの間に物理ネットワーク上の通信パスが設定される。
【００５８】
たとえば、エージェントaとエージェントｈとの間のPeer to Peer通信について考える。このとき、コミュニティBとコミュニティEとの間でセキュリティチェックがなされた後通信路が張られると、そのセキュリティは保証されているので、頻繁にP2P通信が行われる場合、BとEの間で論理バイパスが張られる。以降コミュニティBに属す（エージェントaと同じセキュリティ属性を所有している）エージェントと、コミュニティEに属す（エージェントｈと同じセキュリティ属性を所有している）エージェントとの間の通信はこの論理バイパスを用いて行われる。論理ネットワーク上の通信パスと物理ネットワーク上の通信パスとのインタフェース管理については次の図９において説明する。
【００５９】
図９は論理ネットワークと物理ネットワークとのインタフェースの説明図である。
図５〜図８に示したコミュニティ管理は概念的な論理ネットワーク空間についてのものであり、前述の名前付け規則およびパス追跡によって通信を行うことは効率が悪く非現実的である。そこで、各ポータルエージェントには、論理ネットワークと物理ネットワークの間のインタフェース機能を持たせる。プリミティブエージェントについては、ネットワーク機能自体ポータルエージェントと同等であるので、プリミティブエージェント自身も論理・物理インタフェース機能を持つことになる。以下エージェントというときはコミュニティのポータルエージェント、およびプリミティブエージェントの両方を指すものとする。
【００６０】
ポータルエージェントのコミュニティ管理テーブルは、論理ネットワーク空間の管理テーブルとして利用される。一方各エージェントに設置されているエージェント間通信管理ゾーン（ACC；Agent Communication Control Zone）は、論理・物理アドレス変換テーブルを用いて論理・物理アドレス変換を行う。論理・物理アドレス変換テーブルは論理アドレスと物理アドレスの間の対応表であり、物理アドレスをキャッシュするキャッシュテーブル部を持つ。キャッシュアドレスについては、論理アドレスキャッシュ表から物理アドレスキャッシュ表への対応が登録されており、この対応によって論理アドレスから物理アドレスへの変換が行われる。
【００６１】
論理ネットワークと物理ネットワークのインタフェース
論理ネットワークはコミュニティ・トポロジーを形成する仮想的なネットワークである。P2P通信のアプリケーションは物理ネットワークの構造を意識することなく、この論理ネットワーク空間上で記述される。
【００６２】
論理ネットワークの柔軟性を確保し、かつP2P通信を効率的に行うために実際のP2P通信に際してはTCP/IPなどの物理ネットワーク・プロトコルを用いる。前述の図２は論理ネットワーク・物理ネットワーク間インタフェースの構成概念も示している。
論理ネットワーク層と物理ネットワーク層との間のインタフェース管理と論理・物理アドレス変換はエージェント間通信管理ゾーン（Agent Communication Control Zone; ACC）によって行われる。
【００６３】
論理ネットワーク上のP2P通信路が設定されるときには、P2P通信を行うユーザ（コミュニティ）の物理ネットワーク上のアドレスが確定しているので、実際の通信に際してはACCによって論理ネットワーク上のアドレスから物理ネットワーク上のアドレスに変換し、インターネット・プロトコルなどの物理ネットワーク・プロトコルを用いて、商用のルーティング管理システムを利用して通信が行われる。
【００６４】
次にPublic  ZoneとPrivate  Zoneの構成と具体的動作について、実施例２として説明する。柔軟な論理ネットワークを設定できると同時にセキュリティを確保するために、物理ネットワーク上の各ノードに設置されるノードマシンには、公共サービス空間（Public Zone）と私用空間（Private Zone）を備えたアーキテクチャを考える（ セキュリティについては、暗号化技術、認証技術など既存の技術を用いることを前提とする）。
【００６５】
Public Zone と Private Zone をもつアーキテクチャの概念を示す図２において、Public Zone１４ と Private Zone１３の間にはセキュリティバリア１５を設け、Private Zone１３への侵入をガードする。セキュリティバリア１５は具体的にはセキュリティ管理装置、あるいはセキュリティ管理ルーチンによって構成し、全ノードマシン１１に設置される。
【００６６】
一方、Public Zone は公共広場と位置付け、各種のデータやメッセージが（一時的な保管も含めて）自由に通り抜けることを許す。コミュニティ管理システムもポータルエージェントのPrivate Zone として位置付け、セキュリティチェックにパスしたものだけがそのコミュニティにアクセスすることが許される。
【００６７】
Public Zone と Private Zone は、コミュニティ管理システムの中で論理ネットワーク管理部と物理ネットワーク管理部の両方に存在し、それぞれ論理ネットワーク上および物理ネットワーク上での公共サービス処理と、私的目的のための処理とに区別して管理される。具体的には論理ネットワーク上でのPublic Zone管理はコミュニティ管理部によって行なわれ、物理ネットワーク上でのPublic Zone管理はACCにおいて行なわれる。
【００６８】
個々のノードマシンのハードウェア資源（CPU、メインメモリ、補助メモリ（ハードウェアディスクなど）、ルータ／ハブスイッチ、周辺装置類）はそれぞれPublic ZoneとPrivate Zoneとに切り分けられる。この概念を図１０に示す。ハードウェア資源それぞれのPublic ZoneとPrivate Zoneへの割り当て、およびアクセス管理はオペレーティングシステムと連携して行われる。たとえば、OSの仮想空間管理、プロセス間ワークエリアの保護など既存の方式がそのまま、Public Zone管理にまで拡張される。Public Zoneをひとつのシステムプロセスとして扱うことによって、そこからPrivate Zoneへのアクセスを排除することができる。
【００６９】
各公共資源の割り当てはそのノードマシンのシステム生成時に行われる。ノードマシン走行中の管理では、外部からのアクセス要求処理をひとつのタスクとして扱い（以下外部プロセスとよぶ）、そのプロセスが資源アクセスを行う際にプロセスのセキュリティ属性をチェックすることによってアクセスの管理が行われる。
【００７０】
たとえば、CPUについては、プロセススケジューラがCPU割り当て時間を管理する（CPU時間の一定割合を外部アクセスプロセスに割り当てる。）メインメモリについてはオペレーティングシステムのメモリ管理機能によって管理が行われる。メモリ管理では、メモリ領域をPublic Zoneの領域とPrivate Zoneの領域とに切り分け、外部プロセスからのアクセスに対してはセキュリティ属性のチェックを行い、Private Zoneの領域へのアクセス制御を行う。補助メモリの場合には、たとえばシステム生成時に領域のパーティションを行い、実行中はPrivate Zoneへの外部プロセスからのアクセスに対してセキュリティ属性のチェックを行い、領域へのアクセスを制御する。周辺装置類については公共資源として提供するものをPublic Zone内に置くことをシステム生成時に宣言しておく。
ソフトウェア資源については、Public Zoneに置いて公共サービスに提供するものとして、メッセージのルーティング、メッセージ転送、他サービスの探索、メッセージ転送のためのアドレスキャッシング、関連情報のキャッシングなどを考える。特にセキュリティ管理部はPublic ZoneとPrivate Zoneの境界で作動し、すべての外部アクセスを監視する。
【００７１】
各ノードマシンのハードウェア装置類の一部をPublicな資源として公共に提供する場合、その公共提供装置類は私用資源と切り分けて管理される。公共資源と私的使用資源との間ではSecurity Barrierによって、外部からのアクセスは排除される。
【００７２】
Security Barrierはその詳細を後述するセキュリティ管理部２０によって実現される。ハードウェア資源のどの程度を公共資源として提供するかは、このノードマシンの所有者（あるいは所有エージェント）がコミュニティに加入する際に、Taxあるいは義務契約に従って定められる。たとえば、図１０では外部メモリ２１、メインメモリ２２の何％か、ＣＰＵ２３の使用時間の何％か、端末装置類２４のうち、たとえばプリンタなどを公共資源として提供することを表している。もちろん、公共資源として提供しない場合もあるが、この場合は公共資源を０％（Null）として扱えばよいので、方式の一般性は失われない。
ポータルエージェントは資源属性（コミュニティ属性）の管理、およびセキュリティチェック処理に関して、以下のことを行う。
【００７３】
コミュニティに加入するエージェントに対して、新規加入エージェントの加入条件（契約）の管理を行う。契約を受理するエージェントに対してそのコミュニティ内のエージェントへのアクセス許可属性を付与する。
【００７４】
コミュニティ外に対して見せる（このコミュニティがエージェントとして振舞う）ときのエージェント属性を管理する。
Publicとして提供する機能の選択・管理を行う。Publicとして提供する機能はコミュニティへの加入契約によって定められる。
【００７５】
ポータルエージェントのセキュリティ管理部（セキュリティバリア）は以下のように動作する。このセキュリティ管理部は、物理的にはポータルエージェントが割り付けられているノードマシンに置かれている。
【００７６】
他コミュニティのエージェントからのメッセージはメッセージ受信部で受信される。このメッセージにはメッセージのコンテンツに加えて送信元エージェントの属性が付されており、これらは暗号化されている（図１１）。
【００７７】
メッセージ受信部で受信したメッセージはその送信先が他のコミュニティであれば、Public Zone内で処理され、他のコミュニティに転送される。このとき、Public Zoneに置かれている、メッセージのルーティング・転送、他サービスの探索、メッセージ転送のためのアドレスキャッシング、関連情報のキャッシング、などの公共サービスルーティンが動作する。
【００７８】
メッセージの送信先がこのコミュニティ内のPrivate資源であれば、ポータルエージェント内のセキュリティ管理部がこのメッセージ中の属性部を解読し、その送信元の属性がアクセス許可条件にかなうものであるか否かを検査する。許可条件にかなう場合はPrivate資源へのアクセスを許可する（図１２〜図１５）。
【００７９】
Private資源へのアクセスは次の場合がある。
Private資源がコミュニティ内エージェントの場合：このメッセージを当該エージェントに転送する。（図１６）
Private資源が自ノード内のハードウェア資源あるいはソフトウェア資源（データ、プログラム）の場合： Private Zone内の資源のなかでアクセス許可属性にかなうものへのアクセスを許可する（図１２〜図１５）。
【００８０】
図１１はメッセージの生成過程を示す。メッセージの送出側（エージェントＡ）で、メッセージコンテンツに自分の属性を加えてメッセージを生成し、これを暗号化してメッセージの送出を行う。メッセージの受信側（エージェントB）ではまず暗号解読を行ったのち、メッセージの解釈を行う。暗号化と解読、認証の方法については、利用できる最新の技術を用いるものとする。
【００８１】
図１２はコミュニティ外部からのコミュニティ内の資源に対するセキュリティ管理の一般的な方法を示している。
(1) コミュニティ外エージェントからのアクセス要求メッセージは、  まずそれがPublic Zone１４へのアクセスかPrivate Zone１３へのアクセスかをチェックする。
【００８２】
(2) Public Zone１４へのアクセスの場合は、そのままアクセスを許す。
(3) Private Zone１３へのアクセス、あるいは通信の場合は、メッセージの暗号を解読して、メッセージの中に示されている要求エージェントの属性を取り出す。
【００８３】
(4) コミュニティのポータルエージェント内には、このコミュニティへの通信を許す許可条件が述語論理によって記述されたアクセス許可属性条件表３１（ポータルエージェントが持つ下位コミュニティテーブルに対するPrivateポリシー）が備えられており、要求エージェントの属性がこの許可条件を満たすかどうかをチェックする。
【００８４】
(5) この条件判定で真となれば、この資源３０へのアクセスを許可する。
資源は、コミュニティあるいはハードウェア資源、ソフトウェア資源（プログラムおよびデータ）である。個々の資源にはそれへのアクセ  ス許可属性条件表が資源属性として与えられている。許可属性条件表（Privateポリシー）はこの資源が生成されるときに付与されている。
【００８５】
図１３は図１２のエージェントにエージェント間通信管理ゾーン（ＡＣＣ）３２を追加したものである。他のエージェントから送られるメッセージに対して、ＡＣＣ３２は論理アドレスと物理アドレスとの変換を行い、そのメッセージはPublic  Zone１４内でPublic  ZoneへのアクセスとPrivate    Zoneへのアクセスに振り分けられる。
【００８６】
図１４はアクセス管理を行なうエージェントの機能構成を示す。同図において、一般的なエージェントＹは他のエージェントＸから送られるメッセージを解釈し、メッセージに対応するオブジェクト３６、または３７に対して操作要求を行なうメッセージ解釈部３５、Private資源３０へのオブジェクト３７のアクセスを監視するセキュリティ管理部２０、Public  Zone１４に含まれる公開サービス用プログラムであり、例えばエージェントＸの持つ属性によって３６、または３７のいずれかが実体化されるオブジェクト、エージェント固有の属性を保持するエージェント属性テーブル３８、外部に完全に公開され、後述するPublicポリシに従って割り付けられるPublic資源３９、ユーザが利用する資源であり、セキュリティ管理部２０の管理の下に外部からのアクセスも可能なPrivate資源３０、およびユーザによって定義されたPrivate資源３０へのアクセスルール、または個々のPrivate資源３０に付随するアクセスルールとしてのPrivateポリシー４０を備えている。
【００８７】
図１５は図１４のエージェントにエージェント間通信管理ゾーン（ＡＣＣ）３２を加えたノードマシンの構成を示す。前述のようにＡＣＣによって受信、送信メッセージに対するアドレス変換が行なわれる。このようにＡＣＣ３２はノードマシンに設けられ、ノードマシンが持つ既存の物理ネットワーク通信管理部とエージェントとのインタフェースとしてソフトウエアによって実装される。
【００８８】
図１６はコミュニティ外部からのコミュニティ内エージェントとの通信（アクセス）に対するセキュリティ管理の方法を示している。
(1)コミュニティ外エージェントからのアクセス要求メッセージに対しては、まずそれがPublic Zone１４へのアクセスかPrivate Zone１３へのアクセスかをチェックする。
【００８９】
(2)Public Zone１４へのアクセスの場合は、そのままアクセスを許す。
(3)Private Zone１３へのアクセスあるいは通信の場合は、メッセージの暗号を解読して、メッセージの中に示されている要求エージェントの属性を取り出す。
【００９０】
(4)コミュニティのポータルエージェント内には、このコミュニティへの    通信を許す許可条件が述語論理によって記述されたアクセス許可属性条件表３１が備えられており、要求エージェントの属性がこの許可条件を満たすかどうかをチェックする。
【００９１】
(5)この条件判定で真となれば、このメッセージをコミュニティ内に伝達する。
コミュニティ内エージェントへの通信許可条件は、ポータルエージェントの持つ下位コミュニティテーブルへのアクセス許可属性条件表として与えられている。アクセス許可属性条件表はこのコミュニティが生成されるときに付与されている。
【００９２】
Public資源へのアクセス管理は図１７に示すように行われる。
(1)コミュニティ外エージェントからのアクセス要求メッセージは、まずそれがPublic Zone１４へのアクセスかPrivate Zone１３へのアクセスかをチェックする。
【００９３】
(2)Public Zone１４へのアクセスの場合は、そのままアクセスを許す。
(3)メッセージ転送先がコミュニティ外部の他エージェントの場合は、このメッセージを当該エージェントに転送する。
【００９４】
次にエージェントがコミュニティに加入するときのコミュニティとPublicポリシーとの関係などを実施例３として説明する。エージェントがコミュニティに加入するためには何らかの資格（属性）を持っていなければならず、コミュニティに加入した後はコミュニティに対して何らかの貢献（サービスの提供）をしなければならない。この枠組みをノード属性とPublicポリシーという仕組みを使って実現する。
【００９５】
Publicポリシーとは、エージェントがコミュニティに加入するために提供しなければならないサービスのルールを記述したものであり、たとえば述語論理形式で与えられている。
エージェントがコミュニティに加入するときの動作を以下に示す。
【００９６】
(1)エージェントは自分のエージェント属性とそのノード（エージェントが動作するマシン環境）の属性の一部をコミュニティのポータルエージェントに提示する。
(2)ポータルエージェントは、自分の管理しているコミュニティ加入条件と加入依頼をしてきたエージェントの属性を照らし合わせ、そのエージェントのコミュニティへの加入の可否を決定する。
【００９７】
(3)ポータルエージェントは加入依頼をしてきたエージェントに対してPublicポリシーを送信する。加入依頼をしたエージェントはPublicポリシーを受理し、適切なサービスをコミュニティに対して提供する旨のメッセージを返す（加入契約の成立）。さらに、ポータルエージェントは自分の管理しているエージェントの名前リストを更新する。
【００９８】
Publicポリシーはエージェント属性と、エージェントがコミュニティ内で提供しなければならないサービス群との対応ルール（述語論理式など）で構成されており、Publicポリシーを受理したエージェントはそのサービスをエージェントが属するノード（ハードウェア資源）のPublic Zoneにおいて提供しなければならない。
【００９９】
図１８はエージェントがコミュニティに加入する際の加入資格審査の説明図である。外部エージェントから加入要求メッセージを受けるとこのメッセージは暗号解読された後、（加入要求メッセージはPrivate Zoneへの通信とみなし）セキュリティ管理部２０で処理される。セキュリティ管理部２０のアクセス許可属性条件表３１の中には、Publicポリシー（加入要求エージェントが持つべき属性と加入契約義務条項）に対するアクセス許可条件が記されており、この条件を満たすか否かをチェックする。この条件を満たすならば、加入契約として資源提供の義務に従うかについて加入要求エージェントとの間でネゴシエーション（メッセージのやりとり）を行う。ネゴシエーションでは、提供資源項目とその量（ハードウェア資源（メモリ、CPUなど）の提供比率など）の契約確認メッセージを加入要求エージェントに流し、その返答を得たのち、契約成立となる。加入属性条件と加入契約が満たされれば、そのエージェントがこのコミュニティ内のエージェントとして活動することが許される。（このエージェントの動作環境を整える。）
図１９はこのコミュニティ加入資格審査に対応したエージェントの機能構成を示す。図１４と比較すると、メッセージ解釈部３５に代わって、加入契約条件として与えられるPublicポリシーとエージェント属性テーブル３８を参照してPublic資源３９へのアクセスのために割り付けるべきオブジェクト３６を決定するポリシ解釈部４５、オブジェクトの生成、消滅を管理するオブジェクト管理部４６が備えられている。
【０１００】
より具体的な状況と動作例を以下に説明する。
(1)例えばいまリサーチコミュニティAというコミュニティがあるとする。
(2)リサーチコミュニティAに加入するためにはエージェントはACM#MemberかIEEE#Memberという属性を持っていなければならない。また、リサーチコミュニティAのPublicポリシーには、”属性ACM#Memberを持っているエージェントは100ＭＢのディスクの自由使用サービスを提供し、属性IEEE#Memberを持っているエージェントは500ＭＢのディスクの自由使用サービスを提供する”という加入条件（契約）が書いてある。
【０１０１】
(3)いま、3つのエージェントX,Y,ZがリサーチコミュニティAに加入しようとしている状況を考える。Xは属性ACM#Memberを持ち、Yは属性IEEE#Memberを持ち、Zは属性AAAI#Memberを持っているとする。この状況において、XとYはリサーチコミュニティAに加入できるが、Zは加入することができない。
【０１０２】
(4)また、リサーチコミュニティAのポータルエージェントが発行するPublicポリシーに従ってXは100ＭＢ、Yは500ＭＢのディスクスペースをコミュニティ内に提供しなければならない。
【０１０３】
上記エージェントXの内部動作を図２０に従って説明する。
(1)ノード属性の一部であるACM#Member属性を送信し、リサーチコミュニティAのポータルエージェントからPublicポリシーを取得する。
【０１０４】
(2)ポリシー解釈部４５は、リサーチコミュニティAのポータルエージェントから受け取ったPublicポリシーを解析して、“100ＭＢのディスクスペースの提供”というオブジェクトを導出し、オブジェクト管理部４６へ通知する。オブジェクト管理部４６はオブジェクト３６を生成する。このときのオブジェクトはファイル（または容量が100ＭＢのディレクトリ）に対するRead,Write操作をするオブジェクトである。
【０１０５】
図２０でエージェントY，Zのコミュニティ加入資格審査について説明すると、(3)でエージェントYからその属性IEEE#Memberとともに、また(5)でエージェントZからその属性AAAI#Memberとともに、コミュニティ加入要求メッセージがリサーチコミュニティAのポータルエージェントに送られ、ポータルエージェントからエージェントYに対しては(4)でPublicポリシーの含まれたメッセージが送信され、エージェントZに対しては(6)でコミュニティ加入不許可のメッセージが送信される。
【０１０６】
最後に他コミュニティ内のエージェントからのPrivate資源へのアクセスに対する制御を実施例４として説明する。複数のエージェント（ノード）が互いに通信を行うということは、互いのPublic Zone内で動作しているPublicオブジェクトを通じて情報のやり取りを行うということを意味している。通常、PublicオブジェクトはPublic実行環境のアクセス制御によってPublic資源のみにアクセス可能であり、Private Zone内のPrivate資源にアクセスできない。しかし、エージェントの属性によっては通信相手のエージェントのPrivate資源にアクセスすることも可能である。この仕組みをPrivateポリシーと通信相手のエージェント属性を照らし合わせることで実現する。Privateポリシーとはエージェント属性と資源に対するアクセス可否を対応させる述語論理等で記述されたルールのことである。Privateポリシーはユーザ自ら定義することもできるし、資源そのものに付加することもできる。以下にこの仕組みの動作手順を示す。
【０１０７】
この例では、Private（およびPublic）資源（メモリ領域、データ、プログラムなど）をオブジェクトとみなし、オブジェクトへのアクセス操作およびその資源のアクセス許可条件（資源属性）がそのオブジェクトに与えられている。（データとしてたとえば、文書、映画、音楽などを考えれば分かりやすい。）
操作は、データオブジェクトの場合は、読み出しあるいは書き込みであり、プログラムの場合はその実行である。資源オブジェクトへのアクセスとはその操作ルーチンの実行を意味する。
【０１０８】
操作ルーチンはPublic Zoneに置かれている。資源がPublicの場合は、資源本体はPublic Zoneに置かれ、操作ルーチンの起動は自由に行われる。なお、ここでの操作ルーチンは、例えば図１４のオブジェクト３６の持つ操作ルーチンに相当する。
【０１０９】
一方、資源がPrivateの場合は、その資源本体はPrivate Zoneに置かれており、Private Zone内の資源本体へのアクセスについてセキュリティ管理が行われる。つまり、操作ルーチンの起動に際して、セキュリティ属性のチェックが行われる。
【０１１０】
以下、例を用いて説明する。
(1)エージェントXはエージェントYに情報Iを要求する。この時、Xは自分の属性の一部をYに提示する。
【０１１１】
(2)Yは情報Iを操作するためにYのPublic Zoneにオブジェクトを生成する。このとき、オブジェクトの属性はXの属性に設定される。このオブジェクトは図１４のオブジェクト３７に相当し、その操作はセキュリティ管理部２０の監視の下に行なわれる。
【０１１２】
(3)オブジェクト３７は情報Iについての操作をセキュリティ管理部２０に要求する。
(4)セキュリティ管理部２０はPrivateポリシー４０とオブジェクトの属性を照らし合わせて、オブジェクト３７のアクセス可否を決定する。
【０１１３】
(5)アクセス可能であればYはXに情報Iに関して返答し、アクセス不可であれば拒否と返答する。
以下に具体的な例を図２１を用いて説明する。
【０１１４】
リサーチコミュニティBには属性ACM#Memberを持つエージェントX,Yと属性IEEE#Memberを持つエージェントZが加入しており、PublicポリシーによりX,Y,Zにファイル検索というサービスが提供されているとする。また、Xは自分のPrivate Zoneに“属性ACM#Memberを持つエージェントのみ閲覧可能”というPrivateポリシーが付加された論文ファイルを保持しているとする。
【０１１５】
この状況では、YはXから論文ファイルを検索しダウンロードできる。一方、ZはXから論文ファイルを検索することはできるが、ダウンロードして閲覧することはできない。
このときのXの内部動作は以下のようになる。
【０１１６】
(1)論文ファイル検索（論文ファイルに対するSearch,Read操作）に対応するオブジェクトの属性がACM#Memberに設定される。
(2)ファイル検索オブジェクトはファイル操作をセキュリティ管理部に要求する。なおファイル検索オブジェクトも、例えば図１４のオブジェクト３７に相当する。
【０１１７】
(3)セキュリティ管理部２０はファイル検索オブジェクトの要求が論文ファイルのPrivateポリシー４０に合致しているかどうかを検査する。
(4)この場合はアクセスが許可されるので、ファイル検索オブジェクトはPrivate資源３０内の論文ファイルにアクセスすることができ、論文ファイルに対するファイル操作が完了する。
（エージェントZの場合はここでアクセスに失敗する。すなわちファイル検索オブジェクトにはファイル検索操作とファイル閲覧操作が定義されており、エージェントZからの要求に対するファイル閲覧操作はセキュリティ管理部によって禁止される。）
【産業上の利用可能性】
【０１１８】
本発明は広域情報流通サービス産業は当然のこととして、計算資源や情報資源をPublic  ZoneとPrivate  Zoneとに分離して、Private  Zoneへのアクセスセキュリティを保証するためのソフトウエアや関連するハードウエアの製造産業などにおいて利用可能である。
【図面の簡単な説明】
【０１１９】
【図１】本発明のネットワークノードマシンの原理構成を示すブロック図である。
【図２】本発明における情報共有・流通環境の説明図である。
【図３】Public  ZoneとPrivate  Zoneとの説明図である。
【図４】異なるコミュニティの間のピアツーピア通信の説明図である。
【図５】コミュニティの階層構造の説明図である。
【図６】コミュニティとポータルエージェントとの関係の説明図である。
【図７】ポータルエージェントによるコミュニティ管理の説明図である。
【図８】コミュニティの階層構造とピアツーピア通信経路管理の説明図である。
【図９】論理ネットワークと物理ネットワークとのインタフェースの説明図である。
【図１０】ノードマシンのPublic  ZoneとPrivate  Zoneの切り分けの説明図である。
【図１１】メッセージの生成過程とエージェント間のメッセージ送信の説明図である。
【図１２】Private資源へのアクセスに対するセキュリティ管理の説明図である。
【図１３】エージェント間通信管理ゾーンが追加されたエージェントの説明図である。
【図１４】アクセス管理を行なうエージェントの機能構成を示すブロック図である。
【図１５】エージェント間通信管理ゾーンが追加されたノードマシンの機能構成を示すブロック図である。
【図１６】ポータルエージェントによるセキュリティ管理の説明図である。
【図１７】Public資源へのアクセス管理の説明図である。
【図１８】コミュニティへの加入可否の審査の説明図である。
【図１９】コミュニティ加入資格審査に対応したエージェントの機能構成を示すブロック図である。
【図２０】３つのエージェントX，YおよびZに対するコミュニティ加入資格審査の説明図である。
【図２１】エージェント間通信におけるPrivate  Zone内のデータに対するアクセス管理の説明図である。
【符号の説明】
【０１２０】
１、１１      （ネットワーク）ノードマシン
２      プライベートゾーン内の資源
３      パブリックゾーン内の資源
４            セキュリティ管理手段
１０      情報共有・流通環境
１２      物理ネットワーク
１３      Private  Zone
１４      Public  Zone
１５      セキュリティバリア
２０      セキュリティ管理部
２１      外部メモリ
２２      メインメモリ
２３      ＣＰＵ
２４      端末装置類
３０      Private資源
３１      アクセス許可属性条件表
３２      エージェント間通信管理ゾーン（ACC）
３５      メッセージ解釈部
３６、３７      オブジェクト
３８      エージェント属性テーブル
３９      Public資源
４０      Privateポリシー
４５      ポリシー解釈部
４６      オブジェクト管理部
【図１】
2005050286.tif 000003
【図２】
2005050286.tif 000004
【図３】
2005050286.tif 000005
【図４】
2005050286.tif 000006
【図５】
2005050286.tif 000007
【図６】
2005050286.tif 000008
【図７】
2005050286.tif 000009
【図８】
2005050286.tif 000010
【図９】
2005050286.tif 000011
【図１０】
2005050286.tif 000012
【図１１】
2005050286.tif 000013
【図１２】
2005050286.tif 000014
【図１３】
2005050286.tif 000015
【図１４】
2005050286.tif 000016
【図１５】
2005050286.tif 000017
【図１６】
2005050286.tif 000018
【図１７】
2005050286.tif 000019
【図１８】
2005050286.tif 000020
【図１９】
2005050286.tif 000021
【図２０】
2005050286.tif 000022
【図２１】
2005050286.tif 000023