JP2007509574A - 名前解決のためのシステムおよび方法 - Google Patents

名前解決のためのシステムおよび方法 Download PDF

Info

Publication number
JP2007509574A
JP2007509574A JP2006536581A JP2006536581A JP2007509574A JP 2007509574 A JP2007509574 A JP 2007509574A JP 2006536581 A JP2006536581 A JP 2006536581A JP 2006536581 A JP2006536581 A JP 2006536581A JP 2007509574 A JP2007509574 A JP 2007509574A
Authority
JP
Japan
Prior art keywords
document
computer system
machine location
request
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006536581A
Other languages
English (en)
Other versions
JP5065682B2 (ja
Inventor
サタゴパン マーリ
キャメロン キム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=34522412&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2007509574(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2007509574A publication Critical patent/JP2007509574A/ja
Application granted granted Critical
Publication of JP5065682B2 publication Critical patent/JP5065682B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4547Network directories; Name-to-address mapping for personal communications, i.e. using a personal identifier
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/30Types of network names
    • H04L2101/37E-mail addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/65Telephone numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

さまざまな態様によれば、本発明は、ネットワーク環境において接続されている2つコンピュータシステムまたはノード間でドキュメントにアクセスしてパブリッシュする方法に関する。名前解決のためのシステムおよび方法は、ドキュメントが格納されるパブリッシュ側コンピュータシステムについて、電子メールアドレスなどの識別を示すユーザフレンドリハンドル、およびIPアドレスなどのマシンロケーションを含んでいる識別情報ドキュメントを格納する。次に、システムおよび方法は、初期要求がユーザフレンドリハンドルを含む場合にドキュメントへの初期アクセス要求を代理受信し、ユーザフレンドリハンドルをマシンロケーションと置き換えて、ネットワークユーザがユーザフレンドリハンドルの知識のみを通じて容易にこれらのドキュメントにアクセスできるようにする。

Description

本発明は、分散ネットワーク内の個々のマシンつまりノード上に格納されているドキュメントおよび情報をパブリッシュ(発行)する方法、およびこれらのドキュメントをネットワーク内の他のノードと共有する方法に関する。具体的には、本発明は、そのようなパブリッシュされたドキュメントに別のユーザアクセスを提供するためのシステムおよび方法に関する。
多数の接続されたノードまたはプロセスを有する分散ネットワークまたはシステムにおいて、ネットワークのノード間でファイル、ドキュメント、および情報を共有できる機能は重要である。
ユーザがファイルおよびドキュメントを共有できる従来の方法はいくつかあり、たとえばWebサーバ上にドキュメントをポスティングする方法では、アクセスを誰にも自由にすることも、パスワード保護システムによって事前承認されたユーザに制限することもできる。このシステムについては、2つの問題点がある。第1に、これには通常、サーバコンピュータでドキュメントを保持するためにWebホスティングサービスなどのサードパーティが必要となり、一般には初期セットアップ料金および繰り返し発生する管理費が求められることである。第2に、サードパーティが関与することで、Webサーバ上に格納されているファイルまたはドキュメントに対するユーザの管理が本質的に低下することである。
分散ネットワークのユーザ間でファイルを共有するもう1つの方法は、別のユーザ(「アクセサ」)とファイルを共有したいと望むユーザ(「パブリッシャ」)が、自分のマシンロケーションおよびドキュメントが格納されているマシン上のパス名をアクセサに提供することである。アクセサは、マシンロケーションおよびパス名をWebブラウザまたは他のアクセスプログラムに入力してパブリッシャのマシンに到達することによって、パブリッシャのドキュメントにアクセスする。この状況において、パブリッシャのマシンは通常、承認されているアクセスユーザのみにアクセスを許可するセキュリティシステムを提供する。
マシンロケーションを入力するためには、ユーザはこのマシンロケーションを知る必要がある。マシンロケーションを入力する1つの方法には、インターネットプロトコル(「IP」)アドレスを入力することが含まれる。「IPアドレス」は、インターネット上のコンピュータを識別する一意の数字のストリングである。IPアドレスは、32ビットで0〜255の3桁の数字の4つのセットで構成され、各セットは123.123.023.002のようにピリオドで区切られている。インターネット上のすべてのマシンは、IPアドレスを持つ必要があり、2つのコンピュータシステムが同時に同じIPアドレスを持つことはできない。IPアドレスは、動的または静的にすることができる。静的IPアドレスは、コンピュータシステムに恒久的に割り当てられているIPアドレスである。これはそのシステムによって使用される唯一のIPアドレスである。動的IPアドレスは、たとえば、組織に割り当てられているIPアドレスのグループから実行時に割り当てられるIPアドレスである。IPアドレスは同時に2つのコンピュータシステムに使用することはできないが、各コンピュータシステムは多数の異なるIPアドレスを使用することができる。IPアドレスは、容易に理解できる意味を持たない数字だけを含んでいるため、ユーザフレンドリではない。このような理由から、自分のIPアドレスを覚えることは言うまでもなく、他の人々の所有するマシンのIPアドレスを覚えることにいたってはほとんど不可能である。
ドメインネームシステム(DNS)は、不可解なIPアドレスの代わりに見慣れた文字のストリング(「ドメイン名」)を使用できるようにすることで、マシンロケーションを見つけやすくする。これにより、ユーザは、66.201.69.207を記憶して入力するのではなく、www.microsoft.comと入力することができる。ドメイン名はさらに、電子メールアドレスへの連絡および他のインターネットアプリケーションにも使用される。ドメイン名は、たとえば、インターネットのいたるところに配置された多数のサーバ上でホスティングされるサービスを通じて解決される、つまりドメイン名からIPアドレスに変換される。ただし、DNSには、少なくとも2つの制限事項がある。第1は、名前解決を処理するために、サードパーティの装置であるDNSサーバを使用する必要があることである。第2に、ほとんど誰でも任意のコンピュータシステムに対して特定のマシン名とロケーションを決めることができるため、あまりセキュリティが高くないことである。したがって、従来型のDNSは、コンピュータシステム上でリソースをパブリッシングするにはあまり効果的な方法ではない。
マシンロケーショを入手するもう1つの方法は、公開鍵を使用することである。公開鍵は、特定の人物に関連付けられ、たとえばKP12JSP2345L1298FE23KLKSERQOC38Sのような32の数字と文字から成る、バイトの長ストリングで構成される。公開鍵は通常、インターネットなどの非セキュアな公衆ネットワークのユーザが、信頼されている機関を通じて取得され共有される公開および秘密暗号鍵ペアを使用することにより安全にしかも非公開でデータを交換できるようにするために使用される。公開鍵暗号方式は、メッセージ送信者を認証する、またはメッセージを暗号化するためのインターネット上で最も一般的な方法である。公開鍵を取得するには、いくつかの方法がある。たとえば、公開鍵は、コンピュータシステム上でユーザアカウントを作成する場合にオペレーティングシステムによって作成され、割り当てられる。代替として、公開鍵暗号方式においては、公開鍵および秘密鍵は、認証局によって同じアルゴリズムを使用して同時に作成される。
公開鍵は、ピアネーム解決プロトコル(peer name resolution protocol)(「PNRP」)の使用を通じてマシンロケーションに接続される。これは、各人物の公開鍵をその現在のロケーションと共に一般に提供されているテーブルまたはその他の検索可能なデータ構造に格納する。したがって、ある人物の公開鍵を知っている場合、PNRPを使用して、その関連付けられている現在のマシンロケーション(通常はIPアドレスの形式である)を判定することができる。ただし、IPアドレスと同様に、公開鍵は意味を持たない多数のビットのストリングであり、IPアドレスそのものよりもはるかに記憶することは困難である。
マシンロケーションを判定するさらにもう1つの方法には、マシンロケーションを組み込むまたは含むリンクを(電子メールなどを通じて)受け取ることが含まれる。リンクが選択されると、ブラウザは、リンクに関連付けられているIPアドレスまたは公開鍵を自動的にブラウザに入力する。しかし残念なことに、アクセス側プリンシパルは電子メールを保存し、アクセスするノードがパブリッシュ側のノードのリソースにアクセスしようとするごとに毎回これを見つけて開く必要がある。これは、多大な時間がかかって煩わしく、アクセス側マシンのストレージ容量を浪費する。
本発明は、コンピュータプロセス、コンピューティングシステム、あるいはコンピュータプログラム製品やコンピュータ可読媒体などの製品として実装することができる。コンピュータプログラム製品は、コンピュータシステムによって可読なコンピュータストレージ媒体であり、コンピュータプロセスを実行するために命令のコンピュータプログラムを符号化することができる。コンピュータプログラム製品はさらに、コンピュータシステムによって可読なキャリア上で伝搬される信号であってもよく、コンピュータプロセスを実行するために命令のコンピュータプログラムを符号化することができる。
本発明を特徴付ける本発明のさらに多くの特徴および利点は、以下の詳細な説明および関連図を参照することによって明らかとなろう。
本発明は、ネットワーク環境において共に接続されている2つのコンピュータシステムまたはノードの間でドキュメントにアクセスしてパブリッシュする方法に関する。具体的には、本発明は、ドキュメントが格納されているマシンロケーションとの一致を示すユーザフレンドリハンドルの間の名前解決を行い、ネットワークユーザがユーザフレンドリハンドルの知識を通じてこれらのドキュメントに容易にアクセスできるようにするためのシステムおよび方法に関する。すなわち、ユーザのドキュメントは、ユーザおよび対象のドキュメントを記述するパス名を識別するユーザフレンドリハンドルの使用を通じてアクセスすることができる。これによりドキュメントが格納されているマシンロケーションが解明される。電子メールアドレスは、ユーザフレンドリハンドルの模範的な例であり、IPアドレスまたは公開鍵はマシンロケーションの模範的な例である。ドキュメントが格納されているコンピュータシステムまたはノードは、パブリッシュ側コンピュータシステムまたはノードと呼び、パブリッシュ側ノード上に格納されているドキュメントにアクセスしようとするコンピュータシステムはアクセス側コンピュータシステムまたはノードと呼ぶ。
特定の態様によれば、第1のパブリッシュ側コンピュータシステム上に格納されているドキュメントに第2のアクセス側コンピュータシステムを介してアクセスする方法は、第1のコンピュータシステムからの識別情報ドキュメントが第2のコンピュータシステムに格納される場合に開始される。識別情報ドキュメントは、少なくとも、プリンシパルを識別するユーザフレンドリハンドルおよび第1のコンピュータシステムのマシンロケーションを備えている。ユーザフレンドリハンドルを含むドキュメントへの初期アクセス要求が行われると、これは第2のコンピュータシステムによって代理受信(intercept、傍受)される。第2のコンピュータシステムは、ユーザフレンドリハンドルをマシンロケーションと置き換え、修正済み要求を第1のコンピュータシステムのマシンロケーションに送信する。この方法により、第2のコンピュータシステムは、ユーザフレンドリハンドルに関する知識のみを使用して第1のコンピュータシステム上のドキュメントにアクセスすることができる。第1のコンピュータシステムのマシンロケーション、IPアドレス、または公開鍵についての知識は不要である。
他の態様によれば、本発明は、ネットワーク環境において接続されている複数のノード間でドキュメントをパブリッシュする方法に関する。方法は、パブリッシュ側ノードからアクセス側ノードに識別情報ドキュメントを送信することによって開始する。識別情報ドキュメントは、少なくとも、プリンシパルを識別するユーザフレンドリハンドルおよびパブリッシュ側ノードのマシンロケーションを含んでいる。その後、識別情報ドキュメントはアクセス側ノード上に格納される。アクセス側ノードからパブリッシュ側ノードにドキュメントへの初期アクセス要求が行われると、ユーザフレンドリハンドルはマシンロケーションにより解決される。次に、アクセス側ノードからパブリッシュ側ノードのマシンロケーションにドキュメントへの修正済みアクセス要求が送信される。
さらに他の態様によれば、本発明は、第2のコンピュータシステムから受け取った識別情報ドキュメントを格納するストレージモジュールと、ストレージモジュールに接続された名前解決モジュールを備えるコンピュータシステムに関する。名前解決モジュールは、識別情報ドキュメントのユーザフレンドリハンドルに格納されているドキュメントへのアクセス要求を代理受信し、ユーザフレンドリハンドルを識別情報ドキュメントからのマシンロケーションと置き換えるように要求を修正する。
さらに他の態様によれば、本発明は、名前解決のコンピュータプロセスを実行するための命令のコンピュータプログラムを符号化するコンピュータ可読媒体に関する。プロセスは、パブリッシュ側コンピュータシステムからの識別情報ドキュメントを格納する格納オペレーションで開始する。次に代理受信オペレーションは、初期要求にユーザフレンドリハンドルが含まれる場合に、パブリッシュ側コンピュータシステム上に格納されているドキュメントへの初期アクセス要求を代理受信する。最後に、修正オペレーションは、ユーザフレンドリハンドルをマシンロケーションと置き換えるように要求を修正する。
本発明の態様を組み込む分散環境100が、図1に示されている。環境100は、少なくとも1つのコンピュータシステム102および、場合によっては108、110、152など他のコンピュータシステムを備えている。さまざまなコンピュータシステムは「ノード」または「マシン」と呼ばれる。本明細書で使用されているように、「コンピュータシステム」は広義に解釈され、「テキスト、グラフィックス、記号、オーディオ、ビデオ、および/または数を表示および操作するためのプログラムを実行する1つまたは複数の装置またはマシン」と定義される。ネットワーク内のノードは、ノード108のような電話、ノード110のようなPDA、ノード102および152のようなデスクトップコンピュータ、ラップトップコンピュータ(図示せず)、その他多数のものを非限定に含む、任意の種類のコンピュータシステムであってよい。さらに、コンピュータシステムとして示されているが、ノード102、108、110および152は、代替としてコンピュータシステム内のコンピュータプロセスにすることもできる。代替として、ノード102、108、110および152は、ローカルエリアネットワーク、ワイドエリアネットワーク、または別個のネットワーク通信の組合せにわたって分散された別個のコンピュータシステムの組合せを結合することができる。
コンピュータシステム102、108、110および152のそれぞれは、環境100内で他のノードと通信し、ドキュメント、情報、およびリソースを他のネットワークノードと共有することができる環境100内のノードと見なされる。さらに、ノードは、インターネット106などのネットワーク上に実装されたTCP/IPまたは他のネットワークおよび/または通信プロトコルのような別個のプロトコルを介して通信することができる。つまり、外見的には直接の矢印によって接続されているように示されているが、別個のノード102、108、110および152は実際には、他の間接的な方法を介して他のノードと通信している。実際に、100に示されている接続は、ノードが別のノードと通信できることを示しているにすぎない。
マシン102、108、110および152の間の通信は、前述のように多くの通信プロトコルによって達成することができる。本明細書で使用される通信の定義は、あるノードから別のノードへのメッセージ、イベント、またはその他あらゆる情報の転送に関連する。1つの実施形態において、環境100のノードは、ネットワーク100内のすべての他のノードと通信することができるが、そのような要件は必要ない。第1のノードから第2のノードに情報を伝達するために、第1のノードにはアクセス側ノードのマシンロケーションまたは他の識別情報が必要になる。マシンロケーションを使用することで、送信側ノードは任意の転送プロトコルを使用して情報を送信することができる。
図1には4つのノード102、108、110および152だけが示されているが、ネットワーク環境には他のノードを含めることができる。実際に、環境100のノードの数は、数千から数万以上ものノードを組み込んで非常に大規模なものにすることもできる。したがって、本発明は、本発明に従って実質的に任意の数のノードが情報を通信できるように環境100を必要に応じて拡大する際に有益である。
本発明は、1つのネットワークノードである「パブリッシュ側ノード」上に格納されているリソースをもう1つのネットワークノードである「アクセス側ノード」とパブリッシュまたは共有するためのユーザフレンドリなシステムおよび方法に関する。コンピュータシステム102は、パブリッシュ側ノードの一例であり、1つまたは複数のディレクトリに編成されたデータを備えるデータベース104、またはフォルダ118、120、122、124のようなフォルダを含んでいる。データベース104は、電子ドキュメントを格納して取り出すための汎用ファイルシステムまたは他の編成済みデータシステムに関連している。よってデータベース104は、任意のタイプのデータまたはファイルを含めることができ、本明細書においてこれらを「ドキュメント」と呼ぶ。「ドキュメント」という用語は広義に解釈され、写真、ビデオクリップ、オーディオクリップ、テキストファイル、プレゼンテーション、ソフトウェアコード、またはコンピュータシステムに格納されている他のあらゆるパーソナルリソースを含めることができるが、これらに限定されることはない。ドキュメントは、データベース内で、何らかの方法で記述名を持つフォルダおよびサブフォルダに編成することができるが、これらに限定されない。たとえば、フォルダ118は「jpeg」ファイルを含むので「photos」というタイトルが付けられ、フォルダ120はオーディオクリップを含むのでmusicとラベル表示され、フォルダ122は「mpeg」ファイルを含むのでvideoとラベル表示され、フォルダ124は実行可能コードを含むので「software」とラベル表示される。楕円126は、一般にデータベース104内に任意のタイプのドキュメントを含むフォルダが任意の数だけあることを示している。
1つのデータベース104だけが示されているが、楕円128は、マシン102がデータベース104と同じ方法または異なる方法で編成された複数のデータベースを備えることができることを示している。たとえば、データベース104は、マシンのプリンシパルユーザに固有であり、マシン102に位置するそのプリンシパルのプロファイルに格納することができる。本明細書で使用されているように、「プリンシパル」は広義に解釈され、デジタルに活動することのできる任意の実体として定義されるべきである。プリンシパルは、個々の人々、個人を意味する人々のグループまたは集合、世帯、組織、明示的グループ、および共通の役割の人々、または何らかの属性を共有する人々、さらにこれらの個人が活動に使用する各種電子デバイスを含んでいるが、これらに限定されることはない。もう1つのプリンシパルは、そのプリンシパルにのみにアクセス可能な異なるデータベースをマシン102に格納することができる。
コンピュータシステム102はさらに、コンピュータシステム102によって表されるかまたはこれを使用するプリンシパルに関するさまざまな情報を備える自己識別情報130のセットを保持している。たとえば、この情報は、名前、電子メールアドレス、WebサイトURL、郵便宛先、プリンシパルのコンピュータシステムのマシンロケーション、その他の個人情報、およびこの情報がどのように使用されるかを記述する使用ポリシーを含むことができる。これらのさまざまな識別要素はそれぞれ、これ以降、識別クレームと呼ばれる。重要なことに、識別クレームのセットは少なくとも、コンピュータシステム102およびマシンロケーションを識別するユーザフレンドリハンドルを含んでいる。
コンピュータシステム102は、自己識別情報130の一部または全体を含む識別情報ドキュメント116を作成し、図1の破線矢印によって示されているように識別情報ドキュメント116を環境100内の他の任意のノードに送信することができる。本明細書で使用されているように、「識別情報ドキュメント」は、識別情報ドキュメントを受信するデバイスがプリンシパルおよびプリンシパルの関連するデジタルイベントを認識できるように、あるマシンからもう1つのマシンに送信されるプリンシパルの識別情報のサブセットを意味する。識別情報ドキュメント116の1つの可能なフォーマットの詳細については、図3を参照して以下で説明する。ただし、一般的に言えば、識別情報ドキュメント116は、各種のチャネルにわたり異なるシステム間での情報の転送に適したフォーマットにすることができる。識別情報ドキュメント116をコンピュータシステム102から、コンピュータシステム152などの受信側システムに転送するために使用されるチャネルは、可能なさまざまな媒体のいずれであってもよい。たとえば、電子メール、インスタントメッセージング、電波発信、およびその他多くのメカニズムをチャネルとして使用することができる。さらに、チャネルは機密保護されていてもいなくてもよい。
コンピュータシステム152は、アクセス側ノードの一例であり、受信識別情報ドキュメント116を読み取り、さまざまな変数に応じてこれを受け入れるかまたはこれを拒否する制御モジュール154を含んでいる。たとえば、識別情報ドキュメント116が既知のプリンシパルから発せられている場合、コンピュータシステム152は識別情報ドキュメント116を受け入れて格納する。しかし、識別情報ドキュメント116が不明のプリンシパルから届いた場合、あるいは偽者が開いて変更または偽造する十分な動機付けを持つおそれがある場合、コンピュータシステム152は識別情報ドキュメント116を拒否するか、またはその認証性の確認をさらに求めることができる。
1つの実施形態において、識別情報ドキュメント116が受け入れられると、そこに含まれる識別クレームはコンピュータシステム152の認識済み識別情報データベース156に追加される。このデータベースはこの情報を使用してそれ以降コンピュータシステム102を確認および認証することができ、他の状況では信頼できないそのプリンシパルと対話するチャネルを採用することができる。次に、たとえば、識別情報ドキュメント116によって表されているプリンシパルは確認され、コンピュータシステム102のデータベース104のようなデータベースに格納されているドキュメントなど、コンピュータシステム152上のリソースにアクセスを許可される。
さらに、コンピュータシステム152は、そのデータベース156に識別情報ドキュメント116を受け入れて格納した後、図4〜図6を参照して詳細に説明されるように、コンピュータシステム102のプリンシパルの識別クレームを使用して、コンピュータシステム102のデータベース104に含まれているドキュメントに、より容易および迅速にアクセスすることができるようになる。
しかし、一般には、コンピュータシステム152は、コンピュータシステム102上のドキュメントへのアクセス要求を代理受信する解決モジュール160を備えているが、その要求はコンピュータシステム152を使用するプリンシパルから発することも、または自動的に発生させることもできる。プリンシパルからの初期要求は、たとえばコンピュータシステム102からのユーザフレンドリハンドル識別クレームなどの、ユーザフレンドリハンドルを含んでいる。解決モジュール160は、コンピュータシステム102からも受け取ったユーザフレンドリハンドルをマシンロケーションに変換し、適切な情報をコンピュータシステム152のWebブラウザに入力し、これがコンピュータシステム102上の要求されたデータにアクセスする。解決モジュール160の解決オペレーションにより、コンピュータシステム152のプリンシパルは、コンピュータシステム102のマシンロケーション、IPアドレスまたは公開鍵を記憶している必要はないが、その代わりユーザフレンドリハンドル(および関連するパス)だけを記憶しておく必要がある。
本発明の1つの実施形態において、コンピュータシステム152は自己識別情報(図示せず)も含み、コンピュータシステム102は制御モジュール(図示せず)および認識済み識別データベース(図示せず)も含んでいる。コンピュータシステム152のプリンシパルがコンピュータシステム102のデータベース104内のドキュメントにアクセスするために、コンピュータシステム152のプリンシパルは、データベース104内のドキュメントへのアクセスを許可する前に、その独自の識別情報ドキュメント158をコンピュータシステム102に送信する必要がある。つまり、コンピュータシステム152のプリンシパルが容易に要求を行ってデータベース104内のドキュメントにアクセスするために、識別情報ドキュメント116および158の相互交換がなければならない。代替として、コンピュータシステム102は、確認または認証プロセスを必要とせず、アクセスしようとするプリンシパルがデータベース104に含まれるドキュメントにアクセスできるようにすることもできる。この場合、システム152がデータベース104にアクセスするには、コンピュータシステム102のみが識別情報ドキュメント116をコンピュータシステム152に送信する必要がある。すなわち、必要になるのは、パブリッシュ側ノードからアクセス側ノードへの識別情報ドキュメントの片方向の交換のみである。
図2は、本発明に従って情報を受信および配布してドキュメントをパブリッシュおよび共有する、図1に示された102または152のようなノードの1つを表すコンピュータシステム200を示している。システム200は、少なくとも1つのプロセッサ202およびメモリ204を備えている。プロセッサ202はメモリ204を使用して、データベース104、自己識別情報130、および認識済み識別データベース156などのデータベースにドキュメントを格納する。
コンピュータシステム200は、その最も基本的な構成で、図2において破線206によって表されている。さらに、システム200は、磁気または光ディスクまたはテープを含む追加のストレージ(取外し可能および/または固定)を含むこともできるが、これらに限定されることはない。そのような追加のストレージは、取外し可能ストレージ208および固定ストレージ210によって図2に示されている。コンピュータストレージ媒体は、コンピュータ可読命令、データ構造、プログラムモジュールおよびその他のデータなどの情報のストレージのための任意の方法または技術において実装された揮発性および不揮発性の、取り外し可能および固定の媒体を含んでいる。メモリ204、取外し可能ストレージ208および固定ストレージ210はすべて、コンピュータストレージ媒体の例である。コンピュータストレージ媒体は、RAM、ROM、EEPROM、フラッシュメモリその他のメモリ技術、CD−ROM、DVD(digital versatile disk)その他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージその他の磁気ストレージ装置、あるいは望ましい情報を格納するために使用することができ、システム200によってアクセスすることができる他の媒体を含んでいるが、これらに限定されることはない。そのようなコンピュータストレージ媒体は、システム200の一部にすることができる。コンピューティング装置の構成および種類に応じて、メモリ204は揮発性、不揮発性、またはこの2つの組合せであってもよい。
システム200はまた、装置が、図1に示されている他のノード108、110または152のような他の装置と通信できるようにする通信接続212も含むことができる。さらに、システム200は、キーボード、マウス、ペン、音声入力装置、タッチ入力装置などの入力装置214を備えることができる。ディスプレイ、スピーカ、プリンタなどの出力装置216も含めることができる。これらの装置はすべて当技術分野において周知であり、本明細書において詳細に説明する必要なはい。
コンピュータシステム200は通常、少なくとも何らかの形態のコンピュータ可読媒体を含んでいる。コンピュータ可読媒体は、システム200によってアクセスできる任意の使用可能な媒体にすることができる。一例として、コンピュータ可読媒体は、コンピュータストレージ媒体および通信媒体を備えることができるが、これらに限定されることはない。コンピュータストレージ媒体については、上記で説明してきた。通信媒体は通常、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータを搬送波などの搬送メカニズムのような変調データ信号で組み入れ、任意の情報伝達媒体を含んでいる。「変調データ信号」という用語は、1つまたは複数の特性セットを備える信号、または信号の情報を符号化するような方法で変更された信号を意味する。たとえば、通信媒体は、有線ネットワークまたは直接配線接続のような有線媒体、および音響、RF、赤外線など無線媒体を含んでいるが、これらに限定されることはない。上記の任意の組合せも、コンピュータ可読媒体の範囲に含まれる。
図3は、図1に示されている識別情報ドキュメント116および158の1つまたは両方を表す識別情報ドキュメント300の模範的なフォーマットを示している。データ構造として、識別情報ドキュメント300は、識別クレーム、および公開鍵に結合され埋め込み使用ポリシーによって管理されるその他の属性/プロパティクレームの集合である。XMLは、識別情報ドキュメントのコード化言語として使用することができる。ただし、他のフォーマットも同等に適切であると考えられる。識別情報ドキュメント300の要素は、機密性を保持する必要のある情報を含んでいる場合はオプションで暗号化することもできる。
識別情報ドキュメント300内のデータは、論理コンポーネントのセット302および属性タグのセット316を含む2つのカテゴリに分割することができる。識別情報ドキュメント300は、1)プリンシパル識別子304、2)プリンシパルの1つまたは複数の識別クレーム306、3)表示名およびプリンシパルのゼロまたは複数の選択的に公開された属性308、4)許容可能なフォーマットに収められたプリンシパルの1つまたは複数の鍵310(たとえばX509v3証明書の公開鍵)、5)プリンシパルのプライバシー要件を表す使用ポリシー312、6)データの整合性を保護し、識別情報更新の場合に送信者を認証する識別情報の内容全体にわたるデジタル署名、という6つのプリンシパル論理コンポーネントを備えている。これらの6つの論理コンポーネント302のそれぞれについては、以下で説明する。
プリンシパル識別子304は、識別情報ドキュメント300に含まれている識別クレームのプリンシパルであるプリンシパルを識別するユーザフレンドリハンドルである。好ましいプリンシパル識別子304は、プリンシパルが人物である場合は、プリンシパルの電子メールアドレスである。ただし、プリンシパル識別子は、プリンシパルを一意に識別する任意の種類のユーザフレンドリハンドルとして広義に解釈され、電子メールアドレス、電話番号、携帯電話番号などを含むことができるが、これらに限定されることはない。
識別クレーム306は、識別情報ドキュメントの対象であるプリンシパルに関する追加の構造化された情報を含んでいる。識別クレームは、郵便宛先、電話およびファクシミリ番号、雇用者情報、誕生日などを含むプリンシパルに関する説明情報として広義に解釈されるが、これらに限定されることはない。さらに具体的には、「識別クレーム」は1つの実体(人物、組織など)に関して一意に真である。したがって、場合によっては、電話番号は1人の人物の有効な識別クレームにすることができる。たとえば、携帯電話番号、ダイヤル直通勤務先番号または自宅電話番号は、携帯電話、ダイヤル直通勤務先番号を共有していないかまたは一人暮らしの人に対して有効な識別クレームである。他の場合では、電話は、家族によって共有されている自宅電話番号など、独身者に対しては有効な識別クレームにはならない。そのような場合は、自宅電話番号は、1人の個人ではなく世帯を表す識別クレームとなる。
マシンロケーション308は、プリンシパルのコンピュータシステムの一意のアドレスを提供し、IPアドレスまたは公開鍵を制限なく含むことができる。郵便の住所と同様に、マシンロケーションには、分散ネットワーク内のコンピュータシステムを見つけ、それを接続して通信するために必要である。マシンロケーション308は実際に、プリンシパルが複数のコンピュータシステムを備える場合、またはコンピュータシステムが、ラップトップコンピュータシステムまたはPDAのように携帯型である場合、マシンロケーションの一覧を含むことができる。1つの実施形態において、各マシンロケーションは、そのマシンロケーションに格納されているドキュメントの一覧を含むことができる。たとえばプリンシパルが、「photos」のパス名でjpegファイルを格納する第1のコンピュータシステムと、「music」のパス名で録音を格納する第2のコンピュータシステムを備えている場合、マシンロケーション308は、第1および第2のコンピュータシステムのそれぞれのIPアドレス、および「photos」が第1のコンピュータシステムのマシンロケーションに格納され、「music」が第2のコンピュータシステムのマシンロケーションに格納されていることを示す指示を含むことができる。
鍵部分310は、証明書フォーマット(たとえばX509v3証明書)内に収められた公開鍵など、1つまたは複数の鍵を含んでいる。鍵310は公開鍵であってもよく、認識情報または識別情報の対象として識別情報に含めることができる。証明書が使用される場合、これは自己署名されるかまたは認証局によって発行される。
使用ポリシー312は、識別情報ドキュメント300の内容に対して許容可能な使用に関するプリンシパルの指示を伝達する。たとえば、使用ポリシー312により、識別情報の内容が他の人々に漏洩されてはならないよう指示することができる。図1のデータベース156のような、受信者の認識済み識別情報データベースは、プリンシパルを定義する他の情報と共に使用ポリシーを格納する。
デジタル署名314は、識別情報ドキュメント内のデータに署名する機能をプリンシパルに提供する。XML署名は、署名をドキュメントに関連付けるための、封印中、封印済み、および切り離し済み、という3つの方法を備えている。本発明の1つの実施形態によれば、識別情報ドキュメントは、識別情報内容に署名するときにXML封印済み署名を使用する。
識別情報ドキュメント300は、識別情報ドキュメント316自体に関して6つまたはそれ以上の属性タグ316を伝達することができる。図示されていないが、属性タグは、識別情報ドキュメント300のID値、ドキュメント300のバージョン情報、および/またはドキュメント300が表すプリンシパルのタイプ(人物、コンピュータまたは組織など)を含むことができる。その他の属性タグも採用することができる。
1つの実施形態において、識別情報ドキュメントは、図1および図4と併せてそれぞれ上述されているシステム102および402などの、一次コンピュータシステム上に汎用化された方法で格納されている。
図4は、2つまたはそれ以上のコンピュータシステム402および450の間のドキュメントのアクセスおよび共有またはパブリッシュに関連する機能コンポーネントを示している。つまり図4は、本発明の態様によるソフトウェアコンポーネントまたはモジュールを表している。特に図4は、パブリッシュ側ノードまたはコンピュータシステム402およびアクセス側ノードまたはコンピュータシステム452、さらに本発明によりドキュメントをパブリッシュおよびアクセスするために使用されるこれらの関連モジュールを示している。コンピュータシステム402は、図示されていないモジュールも他にあるが、次のコンポーネントを備えている。1)データベース404、2)識別情報ドキュメントモジュール414、3)ユーザインターフェースモジュール416、4)確認およびパブリッシュモジュール418、5)メモリアクセスモジュール420、6)通信モジュール422、および(vii)自己識別情報データベース424。
図1に示されているデータベース104と同様に、データベース404は、フォルダ406、408、410および412で構成されるドキュメントを含んでいる。この例において、これらのドキュメントは、システム452にパブリッシュされ、システム452によってアクセスされるドキュメントを表している。
ユーザインターフェースモジュール416により、コンピュータシステム402のプリンシパルは、メモリアクセスモジュール420、識別情報モジュール414、および通信モジュール422を制限なく含む他の任意のモジュールにアクセスして制御することができる。本発明、および特に図4に示されている例では、システム402におけるユーザの対話を考慮しているが、そのようなことは本発明の態様を実現する上で必要ではない。
メモリアクセスモジュール420により、コンピュータシステム402および/またはプリンシパルは、データベース402に含まれているデータおよび/または自己識別情報データベース424に含まれているデータなど、システム上に格納されているデータにアクセスすることができる。代替として、コンピュータシステム402は、識別情報ドキュメントモジュール414または確認およびパブリッシュモジュール418など他のモジュールを通じてメモリアクセスモジュール420にアクセスすることができる。プリンシパルは、ユーザインターフェースモジュール416を使用して、メモリアクセスモジュール414を制御する。
識別情報ドキュメントモジュール414は、図3に示されている識別情報ドキュメント300のように、メモリアクセスモジュール414検索を使用して自己識別情報データベース424からデータを引き出すことによって、識別情報ドキュメントを作成する。識別情報ドキュメントモジュール414は、ユーザインターフェースモジュール416を介してプリンシパルからコマンドを受け取り次第識別情報ドキュメントを作成することも、代替としてプリンシパルからの直接のコマンドなしで標準化プロシージャを介して識別情報ドキュメントを作成することもできる。識別情報ドキュメントモジュール414は、ネットワーク内の他のノードへの通信のために、識別情報ドキュメントを通信モジュール422に転送する。他の実施形態において、識別情報ドキュメントは単にメモリに格納されており、要求に応じてドキュメントは通信モジュール422を介してもう1つのシステムに送信される。
通信モジュール422は、コンピュータシステム452のような他のネットワークノードとの間の情報の送受信を含む、コンピュータシステム402およびネットワークの他のノードの間の通信を制御する。一般に、プリンシパルは、ユーザインターフェースモジュール416を介して通信モジュール422を制御し、このプロセスを通じて識別情報ドキュメントがコンピュータシステム452などの他のコンピュータシステムに送信されるよう指示することもできる。通信モジュール422はまた、プリンシパルが、電子メールなど他の情報のタイプをネットワークの他のノードに送信することもできるようにする。
確認およびパブリケーションモジュール420は、通信モジュール422を通じて他のネットワークノードから、データベース404内にあるようなドキュメントをアクセスしてパブリッシュするよう求める要求を受け取る。1つの実施形態において、確認およびパブリケーションモジュール422はゲートキープ機能を実行し、アクセス側コンピュータシステムがパブリッシュされたドキュメントを受信する許可をプリンシパルから得ていることを確認しようとする。許可がある場合、確認およびパブリケーションモジュール420は、メモリアクセスモジュール420を使用して要求されているドキュメントを取り出し、アクセス側コンピュータシステムへの通信のためにそのドキュメントを通信モジュール422に送信することによってパブリッシュする。許可がない場合は、確認およびパブリケーションモジュール420は、パブリッシュを求める要求を拒否するが、これは通信モジュール422を介してアクセサに伝達される。代替実施形態において、確認およびパブリケーションモジュール420はゲートキーパーとしての役割は果たさないが、すべての要求されたドキュメントを取り出してパブリッシュする。
コンピュータシステム452は、図1のノード152と類似したアクセス側ノードの一例であり、次のコンポーネントを備えている。1)通信モジュール454、2)確認モジュール460、3)ストレージモジュール458、4)名前解決モジュール456、および5)ユーザインターフェースモジュール462。
ユーザインターフェースモジュール416と同様に、ユーザインターフェースモジュール462により、コンピュータシステム452のプリンシパルは、通信モジュール422を制限なく含む他の任意のモジュールにアクセスして制御することができる。したがって、たとえばシステム452のプリンシパルは、ユーザインターフェースモジュール416を使用して、パブリッシュ側ノード402にドキュメントをパブリッシュするよう求める要求を送信するよう通信モジュール422に指示することもある。
通信モジュール422と同様に、通信モジュール454は、コンピュータシステム402のような他のネットワークノードとの間の情報の送受信を含む、コンピュータシステム452とネットワークの他のノードの間の通信を制御する。通信モジュール454は、他のネットワークノードから受信する識別情報ドキュメントを確認モジュール460に転送する責任を負っている。
確認モジュール460は、識別情報ドキュメントを変換して、それが信頼できるソース、信頼できるチャネルによってもたらされているか、または他の方法で認証できるかどうかを判定する責任を負っている。識別情報ドキュメントが受け入れられる場合、確認モジュールは識別情報ドキュメントをストレージモジュール458に転送する。本質的に、確認モジュール460は、受信識別情報ドキュメント116を読み取り、さまざまな変数に応じてこれを受け入れるかまたはこれを拒否するという点において図1の制御モジュール154の一部機能に関連している。
ストレージモジュール458は、コンピュータシステム452が後に使用できるように識別情報ドキュメントを格納する。確認モジュール460の場合と同様にストレージモジュール458も、受け入れた識別情報ドキュメントを格納するという点において、図1と併せて示され説明されている制御モジュール154の機能の一部を実行する。
最後に、名前解決モジュール456は、通信モジュール454からユーザフレンドリハンドルの形で別のネットワークノードからパブリッシュされたドキュメントにアクセスするよう求める要求を代理受信する責任を負う。前述のように、要求はほとんどの場合、ユーザインターフェースモジュール462を介してプリンシパルから発せられる。名前解決モジュール456はさらに、代理受信したユーザフレンドリハンドルと一致する(図3のプリンシパル識別子304のような)プリンシパル識別子を持つ識別情報ドキュメントがないかストレージモジュール458を検索し、ユーザフレンドリハンドルを識別情報ドキュメントに示されているマシンロケーションで代用または置き換えるよう要求を修正し、マシンロケーションの形でドキュメントをパブリッシュするよう要求を通信モジュール454に送信する責任を負っている。名前解決モジュール456は、アクセス側ノードからのドキュメントへのアクセス要求を代理受信して、ユーザフレンドリハンドルをパブリッシュ側ノードのマシンロケーションに変換し、適切な情報をコンピュータシステム152のWebブラウザに入力し、これがパブリッシュ側ノード上の要求されたデータにアクセスするという点において、図1の解決モジュール160と類似している。
図5は、図1のコンピュータシステム102または図4のコンピュータシステム402のようなパブリッシュ側コンピュータシステムに位置しているドキュメントを、図1のコンピュータシステム152または図4のコンピュータシステム452のようなアクセス側コンピュータシステムにパブリッシュする方法を示している。フロー500は一般に、アクセス側ノードによって実行されるプロセスに関連する。
フロー500は、格納オペレーション502で始まり、ここでパブリッシュ側ノードからのドキュメントのような識別情報ドキュメントが、図1からの認識済み識別データベース156の場合のように、アクセス側コンピュータシステム上のロケーションに格納される。図3に示されている識別情報ドキュメントと同様に、受信される識別情報ドキュメントは少なくとも、電子メールアドレスなどのパブリッシュ側システムのプリンシパルを識別するユーザフレンドリハンドル、およびIPアドレスなどのプリンシパルのコンピュータシステムのマシンロケーションを含んでいる。それから後に、代理受信オペレーション504は、パブリッシュ側ノードに格納されているパブリッシュ済みドキュメントへの初期アクセス要求を代理受信する。要求は、アクセス側ノードのプリンシパルによって開始された要求、アクセス側コンピュータシステム内の別のモジュールによって開始された要求、または自動要求のいずれかである。要求は、パブリッシュ側ノードのプリンシパルまたはパブリッシュ側ノード自体を識別するユーザフレンドリハンドルを含んでいるかまたはその形態をとる。たとえば、要求は、電子メールアドレスに位置するドキュメントへのアクセスを求める要求であってもよい。
次に、検索オペレーション506は、以前受信して格納した識別情報ドキュメントを検索し、プリンシパル識別子が要求オペレーション504において受け取ったユーザフレンドリハンドルと一致するかどうか判定する。システムが、ステップ506において一致する識別情報ドキュメントを見つけることができない場合、フロー500はNOに分岐し、507において要求が失敗したことをプリンシパルまたは他のモジュールに通知する。要求が失敗したことをプリンシパルに通知すると、プロセス500は終了する。この時点で、プリンシパルはこの要求または別の同様の要求を再入力して、プロセスを最初からやり直す。
代わりに検索オペレーション506において一致する識別情報ドキュメントが見つかった場合、つまり、ステップ504で受け取った電子メールアドレスと一致するプリンシパル識別子を持つ識別情報ドキュメントが見つかった場合、フロー500はYESに分岐して判定オペレーション508に進む。判定オペレーション508は、ステップ506で見つかった識別情報ドキュメントに含まれているマシンロケーションを判定する。
判定オペレーション508に続いて、解決オペレーション510は、ユーザフレンドリハンドル(たとえば電子メールアドレス)をマシンロケーション(たとえばIPアドレス123.123.023.002)と置き換える。次に、送信オペレーション512は、ユーザフレンドリハンドルではなくマシンロケーションの形でドキュメントをパブリッシュするよう求める要求をパブリッシュ側ノードに送信する。
ステップ506およびステップ508から512は裏舞台で行われるので、プリンシパルには明らかにされない。むしろ、プリンシパルにとっては、パブリッシュ済みドキュメントへのアクセス要求が、意味をなさないマシンロケーションではなくユーザフレンドリハンドルの電子メールアドレスの形で伝達されるように見える。このようにして、プリンシパルは、パブリッシュ側のコンピュータシステムのプリンシパルを識別するユーザフレンドリハンドルの知識のみを通じて、異なるコンピュータシステム上に位置するドキュメントにアクセスすることができる。アクセス側システムのプリンシパルは、これらのドキュメントにアクセスするために、IPアドレスのような扱いにくい数字を知る必要も記憶する必要もない。
図6は同様に、パブリッシュ側コンピュータシステム上にあるドキュメントをパブリッシュする方法を示しているが、コンピュータシステム102または402のようなパブリッシュ側ノードによって実行されるプロセス、およびコンピュータシステム152または452のようなアクセス側ノードによって実行されるプロセスの両方を示している。
フロー600は、伝達オペレーション602で開始し、ここで、1つまたは複数のドキュメントのロケーションのパス名およびパブリッシュ側ノードのプリンシパルを識別するユーザフレンドリハンドルを、アクセス側ノードなどの別のノードに伝達する。たとえば、送信オペレーションが、Bobという名前を持つパブリッシュ側ノードのプリンシパルからの「check out my photos at bob@xyz.com/photos.」という内容の電子メールメッセージを含んでいる場合を考察する。代替として、プリンシパルは、パス名およびユーザフレンドリハンドルを、電話、ファックス送信ドキュメント、または他の何らかの手段により、アクセス側ノードまたはプリンシパルに送信することができる。フロー600は、受信オペレーション604に進み、ここでアクセス側マシンはドキュメントのパス名およびパブリッシュ側マシンのプリンシパルを識別するユーザフレンドリハンドルを受け取る。次に、送信オペレーション606は、パブリッシュ側マシンのプリンシパルの識別情報ドキュメント(この例ではBobの識別情報ドキュメント)をアクセス側ノードに送信する。受信オペレーション608は、Bobの識別情報ドキュメントを受け取り、続いて、図1と併せて説明され示されているデータベース156と同様に、認識済み識別データベースに識別情報ドキュメントを格納する格納オペレーション609に進む。
代替実施形態において、確認オペレーション(図示せず)は、受信オペレーション608の後および格納オペレーション609の前に生じる。確認オペレーションは、識別情報ドキュメントによって表されるプリンシパルを認証しようと試み、識別情報ドキュメントを受け入れて格納するかどうかについて決定する。
それから後に、代理受信オペレーション610は、ドキュメントへの初期アクセス要求を代理受信する。初期要求は、プリンシパルまたは他のソースから発せられ、bob@xyz.com/photosのような、ユーザフレンドリハンドル/パスロケーションでドキュメントへのアクセスを求めることができる。次に、解決オペレーション612は、図5で詳細に説明されているプロセス、つまり一致する識別情報ドキュメントを見つけ、マシンロケーションを判定して、ユーザフレンドリハンドルがマシンロケーションに置き換えられるプロセスを使用して、ユーザフレンドリハンドルをマシンロケーションと置き換えることにより、修正済み要求を作成するよう求める初期要求を解決する。
代替実施形態において、解析オペレーション(図示せず)は、ユーザフレンドリハンドルおよびパス名を分離して、初期要求のユーザフレンドリハンドル部分のみとの一致を探す。たとえば、解析オペレーションは、「/photos」を除いて、bob@xyz.comでBobの電子メールを持つプリンシパル識別子を捜す。
さらにもう1つの代替実施形態において、プリンシパルの識別情報ドキュメントは複数のマシンロケーションを含み、追加検索オペレーション(図示せず)は識別情報ドキュメント内の各マシンロケーションを検索して、どのマシンロケーションが代理受信された要求に含まれているパス名を含むか判定する。解決オペレーション612は次に、初期要求に示されたパス名と一致するマシンロケーションに置き換える。
解決オペレーション612を完了した後、送信オペレーション614は、ユーザフレンドリハンドルではなくマシンロケーションを使用してパブリッシュ済みドキュメントへの修正済み要求を送信する。パス名が関与する場合、送信オペレーション614は、そのパスに位置するドキュメントへのアクセス要求をさらに含んでいる。
この時点でフロー600は、受信オペレーション616においてパブリッシュ側マシンに戻り、指定されたパス(この場合は図1のフォルダ118のようなphotosフォルダ)でドキュメントにアクセスするよう求める修正済み要求を受け取る。次に、確認オペレーション618は、アクセス側ノードのプリンシパルが要求されたドキュメントを表示する許可を得ているかどうか判定する。アクセス側プリンシパルが許可を得ていない場合、フロー600は、NOに分岐して拒否オペレーション620に進み、ここでドキュメントへのアクセス要求を拒否してプロセスは終了する。
アクセス側プリンシパルが許可を得ている場合、フロー600は、YESに分岐して位置指定オペレーション622に進み、送信オペレーション614に含まれているパス名を使用して要求されたドキュメントを見つける。最後に、パブリッシュオペレーション624が要求されたドキュメントをパブリッシュし、フロー600は終了する。
本発明の1つの実施形態において、確認オペレーション618は、アクセス側プリンシパルが認識済み識別データベースに一覧されているかどうか、つまり、以前アクセス側プリンシパルがパブリッシュ側ノードにその識別情報ドキュメントを送信したかどうかを確認して判定する。回答が肯定の場合は、確認オペレーション618はYESに分岐してオペレーション622に進む。したがって、本実施形態において、識別情報ドキュメントの相互交換は、ドキュメントがあるマシンによって別のマシンにパブリッシュされるために必要である。これは、ドキュメントをパブリッシュする最も安全な方法である。
本発明の代替実施形態において、確認オペレーション618は、アクセス側プリンシパルがその識別情報ドキュメントを送信することを必要としない。代わりに、確認オペレーション618は、要求されたドキュメントへのアクセスを許可するかどうか判定する際に他の変数を考慮することができるか、または確認オペレーション618および拒否オペレーション620は共にフロー600から省略することもできる。むしろ、フロー600は、受信オペレーション616から位置指定オペレーション622に直接進むことになる。つまり、パブリッシュ側マシンは、識別情報ドキュメントを持つすべての者にそのシステム上のドキュメントへのアクセスを許可するように判定することができる。この方法は、前述の方法に比べてより簡単であるが、識別情報ドキュメントの相互交換を必要とする方法ほど機密保護されていない。
さらにもう1つの代替実施形態において、通知オペレーション(図示せず)は、ドキュメントへのアクセス要求が拒否されたことをアクセス側ノードに通知する。通知を受け取ると、もう1つの送信オペレーション(図示せず)は、アクセス側ノードまたはそのプリンシパルを表す識別情報ドキュメントをパブリッシュ側ノードに送信し、代理受信オペレーション610においてプロセスを最初からやり直すことができる。パブリッシュ側ノードがアクセス側ノードの識別情報ドキュメントを受信している場合、フロー600がYESに分岐して位置指定オペレーション622に進む可能性は、NOに分岐して拒否オペレーション620に進む可能性よりも高くなる。
本発明のさらにもう1つの代替実施形態において、識別情報ドキュメントのマシンロケーション部分は、IPアドレスではなく公開鍵を含むことができる。本明細書で使用されているように、「公開鍵」は広義に解釈され、認識される意味を持たない数字および/または文字から成るプリンシパルに一意のコードとして定義されるべきである。前述のシステムおよび方法は、以下に説明する1つの例外を除いて、先に説明したとおり機能する。
識別情報ドキュメントで公開鍵がマシンロケーションとして使用される場合、公開鍵は、ピアネーム解決プロトコル(「PNRP」)を使用して、IPアドレスのことがあるプリンシパルの現在のマシンロケーションを検索するために使用される。PNRPは一般に、公開鍵および現在のマシンロケーションのハッシュを含む知識の分散システムで構成されている。したがって、公開鍵は、プリンシパルの「現在の」マシンロケーションを見つけるために使用される。本明細書で使用されているように、「現在のマシンロケーション」は、所与の時点のマシンロケーションを意味するように広義に解釈されるべきである。たとえば、コンピュータシステムが動的IPアドレスを使用する場合、その現在のマシンロケーションは、第1の時点から第2の後の時点まで変化することができる。公開鍵およびPNRPの使用により、アクセス側ノードは、パブリッシュ側ノードが動的IPアドレスを使用している場合でも、パブリッシュ側ノードからのドキュメントにアクセスできるようになる。
代替として、現在のマシンロケーションは、マシンがラップトップコンピュータシステムまたはPDAのようにモバイル型である場合、変更することができる。PNRPは、モバイルマシンの現在のマシンロケーションも追跡することができる。さらに、公開鍵およびPNRPの使用により、アクセス側ノードは、パブリッシュ側ノードがモバイル型である場合でも、パブリッシュ側ノードからのドキュメントにアクセスできるようになる。
公開鍵がマシンロケーションとして使用される場合、アクセス側ノードは、パブリッシュ側ノードのドキュメントにアクセスするために、パブリッシュ側ノードの公開鍵を知っている必要がある。アクセス側ノードがパブリッシュ側ノードの公開鍵を入手する唯一の方法は、パブリッシュ側ノードがアクセス側ノードにその鍵を送信することである。このようにして、パブリッシュ側ノードは、その公開鍵を送信する相手を制御することにより、そのリソースにアクセスできる相手を効果的に制御することができる。
図7は、コンピュータシステム102または402のようなパブリッシュ側コンピュータシステム上にあるドキュメントを、コンピュータシステム152または452のようなアクセス側コンピュータシステムにパブリッシュする方法を含む、本発明のさらにもう1つの実施形態を示している。
フロー700は、暗号化されたマシン名、ホストドメイン、および関連する登録済みマシンロケーションを従来型DNSサーバに登録する、登録オペレーションで開始する。DNSサーバは一般に、IPアドレスなどの対応する登録済みマシンロケーションと共に、ホストドメインに付加されたマシン名でテーブルを格納する。ネットワークユーザは、DNSサーバを使用して、特定のマシンの登録済みIPアドレスを検索する。本明細書で使用されているように、「暗号化マシン名」は、人々が通常の機器で理解または使用できない秘密コードに変えられた公開鍵を示すべきである。暗号化マシン名を作成する1つの方法は、公開鍵にアルゴリズムを適用することである。
次に、伝達オペレーション706は、1つまたは複数のドキュメントのロケーションのパス名およびパブリッシュ側ノードのプリンシパルを識別するユーザフレンドリハンドルを伝達する。フロー700は、受信オペレーション706に進み、ここでアクセス側マシンはドキュメントのパス名およびパブリッシュ側マシンのプリンシパルを識別するユーザフレンドリハンドルを受け取る。その後、送信オペレーション708は、パブリッシュ側マシンのプリンシパルの識別情報ドキュメントをアクセス側ノードに送信する。識別情報ドキュメントは、少なくとも、プリンシパル識別子、公開鍵、およびパブリッシュ側ノードのプリンシパルのドメインホストを含んでいる。受信オペレーション610は、識別情報ドキュメントを受け取り、続いて、図1と併せて説明され示されているデータベース156と同様に、認識済み識別データベースに識別情報ドキュメントを格納する格納オペレーション712に進む。
それから後に、代理受信オペレーション712は、ドキュメントへの初期アクセス要求を代理受信する。初期要求は、プリンシパルまたは他のソースから発せられ、ユーザフレンドリハンドル/パスロケーションでドキュメントへのアクセスを求めることができる。次に、解決オペレーション714は、図5で詳細に説明されているプロセスを使用して、公開鍵で初期要求のユーザフレンドリハンドルを解決し、ユーザフレンドリハンドルと一致するプリンシパル識別子で識別情報ドキュメントに記述されているドメインホストを解決する。
次に、変換オペレーション718は、公開鍵に計算を実行して、これを暗号化マシン名に変換し、付加オペレーション720は、暗号化マシン名をドメインホストに付加する。1つの実施形態において、変換オペレーションは、公開鍵にアルゴリズムを実行するステップを備えているが、ここでアルゴリズムは登録オペレーション702のパブリッシュ側ノードによって使用されるアルゴリズムと同じである。アルゴリズムは、多くのネットワークノードによって一般に使用される標準的アルゴリズムであってもよく、あるいはまた、他の何らかの方法でアクセス側ノードによって受信された特有のアルゴリズムであってもよい。
次にフロー700は検索オペレーション722に進み、ここで暗号化されたマシン名/ドメインホストの組合せを使用して、DNSサーバ上の登録済みマシンロケーションを検索する。検索オペレーション722を完了した後、修正オペレーション724は、ユーザフレンドリハンドルを登録済みマシンロケーションで置き換えるよう初期要求を修正し、ユーザフレンドリハンドルではなく登録済みマシンロケーションを使用してパブリッシュ済みドキュメントへの修正済み要求を送信する。パス名が関与する場合、送信オペレーション614は、そのパスに位置するドキュメントへのアクセス要求をさらに含んでいる。
フロー700によって例示されている方法を使用することの利点は、これによりパブリッシュ側マシンが従来型DNSサーバを使用しながら追加のセキュリティ対策を採用することができることである。通常は、DNSアドレスは公開されているので、潜在的なハッカーがDNSサーバを使用してパブリッシュ側ノードのマシン名およびマシンロケーションを知ることができる。次にハッカーは、この情報を使用して、パブリッシュ側ノードのリソースに不正アクセスすることもできる。暗号化マシン名をDNSサーバに登録することで、ハッカーがパブリッシュ側ノードのマシン名を知ることを防止できるが、許可ユーザがパブリッシュ側ノードのリソースにアクセスすることはさらに困難になる。プロセス700により、許可されたアクセス側ノードは、ユーザフレンドリハンドルに関する知識のみでパブリッシュ側ノードのリソースにアクセスすることができる。パブリッシュ側ノードは、パブリッシュ側ノードのリソースにアクセスするために、分かりにくい暗号化マシン名またはドメインホストを知る必要はない。名前解決方法を利用するためには、アクセス側ノードがパブリッシュ側ノードの識別情報ドキュメントを受信する必要があるため、セキュリティが強化される。
本発明についてコンピュータ構造的機能、方法論的作用およびコンピュータ可読媒体に特有の表現で説明してきたが、添付の請求の範囲に定義されている本発明が説明されている特定の構造、作用または媒体に必ずしも限定されないことを理解されたい。一例として、XML以外の異なるフォーマットを使用して識別情報を符号化することもできる。したがって、特定の構造的機能、作用および媒体は、特許請求された本発明を実装する模範的な実施形態として開示されている。
前述の名前解決の方法を使用して、本発明は、パブリッシュ側マシン上の要求されたドキュメントにアクセスするために、アクセス側マシンのプリンシパルがユーザフレンドリハンドルのみを知っていればよいように、パブリッシュ側マシンのプリンシパルを識別するユーザフレンドリハンドルをマシンロケーションに関連付けるかまたは解決することができることを確立した。さらに、関連プロセスは透過的であり、プリンシパルの知識または関与なしで発生する。
前述の仕様、例およびデータは、本発明の構造の製造および使用について詳細に説明している。本発明の多くの実施形態は、本発明の精神および範囲を逸脱することなく実行することができるため、本発明は添付されている特許請求の範囲に属している。
本発明の態様を組み込むノードの通信または分散ネットワークを示す図である。 本発明の特定の態様に従って使用することのできるコンピュータシステムを示す図である。 本発明の特定の態様による識別情報ドキュメントの構造を示す図である。 本発明の態様によるソフトウェア環境を説明する図である。 アクセス側ノードに関して本発明のオペレーションの特徴を示す流れ図である。 アクセス側ノードおよびパブリッシュ側ノードに関して本発明の代替実施形態のオペレーションの特徴を示す流れ図である。 アクセス側ノードおよびパブリッシュ側ノードに関して本発明のさらにもう1つの代替実施形態のオペレーションの特徴を示す流れ図である。

Claims (42)

  1. 第2のコンピュータシステムを介して第1のコンピュータシステム上に格納されているドキュメントにアクセスする方法であって、前記第1および第2のコンピュータシステムがネットワーク環境において接続され、
    前記第1のコンピュータシステムからの識別情報ドキュメントを格納するステップであって、前記識別情報ドキュメントはプリンシパルを識別するユーザフレンドリハンドルおよび前記第1のコンピュータシステムのマシンロケーションを備えるステップと、
    要求が前記ユーザフレンドリハンドルに向けられている場合にドキュメントへのアクセス要求を代理受信するステップと、
    前記ユーザフレンドリハンドルを前記マシンロケーションと置き換えるステップと、
    前記第1のコンピュータシステムのマシンロケーションにドキュメントへのアクセス要求を送信するステップと
    を備えることを特徴とする方法。
  2. 前記ユーザフレンドリハンドルは電子メールアドレスを備えることを特徴とする請求項1に記載の方法。
  3. 前記マシンロケーションはIPアドレスを備えることを特徴とする請求項1に記載の方法。
  4. 前記マシンロケーションは公開鍵を備えることを特徴とする請求項1に記載の方法。
  5. ドキュメントへの前記アクセス要求はプリンシパルが開始した要求を備えることを特徴とする請求項1に記載の方法。
  6. 前記第1のコンピュータシステムから前記識別情報ドキュメントを受信する初期ステップをさらに備えることを特徴とする請求項1に記載の方法。
  7. ネットワーク環境において接続された複数のノード間でドキュメントをパブリッシュする方法であって、
    パブリッシュ側ノードからアクセス側ノードに識別情報ドキュメントを送信するステップであって、前記識別情報ドキュメントはプリンシパルを識別するユーザフレンドリハンドルおよび前記パブリッシュ側ノードのマシンロケーションを備えるステップと、
    前記識別情報ドキュメントを前記アクセス側ノード上に格納するステップと、
    ドキュメントへのアクセス要求内のマシンロケーションにより前記ユーザフレンドリハンドルを解決するステップであって、前記要求が前記アクセス側ノードから前記パブリッシュ側ノードに行われるステップと、
    前記アクセス側ノードから前記パブリッシュ側ノードにドキュメントへのアクセス要求を送信するステップと
    を備えることを特徴とする方法。
  8. 前記ユーザフレンドリハンドルは電子メールアドレスを備えることを特徴とする請求項7に記載の方法。
  9. 前記ユーザフレンドリハンドルは電話番号を備えることを特徴とする請求項7に記載の方法。
  10. 前記マシンロケーションはIPアドレスを備えることを特徴とする請求項7に記載の方法。
  11. 前記マシンロケーションは公開鍵を備えることを特徴とする請求項7に記載の方法。
  12. 前記公開鍵を使用して前記パブリッシュ側ノードの現在のマシンロケーションを判定するステップをさらに備えることを特徴とする請求項11に記載の方法。
  13. 前記パブリッシュ側ノードの暗号化マシン名および登録済みマシンロケーションをDNSサーバに登録するステップと、
    前記ユーザフレンドリハンドルを前記公開鍵により解決するステップと、
    前記公開鍵を前記暗号化マシン名に変換するステップと、
    前記暗号化マシン名を使用して前記DNSサーバ上の前記パブリッシュ側ノードの前記登録済みマシンロケーションを検索するステップと、
    前記登録済みマシンロケーションにドキュメントへの前記アクセス要求を送信するステップと
    をさらに備えることを特徴とする請求項11に記載の方法。
  14. 前記アクセス側ノードは要求されたドキュメントをパブリッシュする前に要求されたドキュメントを検討する許可を前記パブリッシュ側ノードから得ていることを確認するステップをさらに備えることを特徴とする請求項7に記載の方法。
  15. 前記パブリッシュ側ノード上に格納されているドキュメントのパス名を前記アクセス側ノードに伝達するステップをさらに備えることを特徴とする請求項7に記載の方法。
  16. 前記パス名が電子メールによって前記アクセス側ノードに伝達されることを特徴とする請求項15に記載の方法。
  17. 前記パブリッシュ側ノード上に格納されているドキュメントのパス名を前記アクセス側ノードのプリンシパルに伝達するステップをさらに備えることを特徴とする請求項7に記載の方法。
  18. 前記パス名が電話によって前記アクセス側ノードの前記プリンシパルに伝達されることを特徴とする請求項17に記載の方法。
  19. 解決ステップは、
    要求が前記ユーザフレンドリハンドルに向けられている場合にドキュメントへの前記アクセス要求を代理受信するステップと、
    要求内のユーザフレンドリハンドルと一致するユーザフレンドリハンドルを持つ対応する識別情報ドキュメントを見つけるステップと、
    前記対応する識別情報ドキュメントから前記マシンロケーションを判定するステップと、
    前記ユーザフレンドリハンドルを前記マシンロケーションと置き換えるように前記要求を修正するステップとをさらに備えることを特徴とする請求項7に記載の方法。
  20. 前記ユーザフレンドリハンドルと組み合わされたパス名を前記アクセス側ノードに伝達するステップと、
    前記マシンロケーションによる前記ユーザフレンドリハンドルの解決に先立って前記ユーザフレンドリハンドルからの前記パス名を解析するステップと
    をさらに備えることを特徴とする請求項7に記載の方法。
  21. 要求を前記パブリッシュ側ノードに送信する前にドキュメントへの前記アクセス要求に前記パス名を追加するステップをさらに備えることを特徴とする請求項20に記載の方法。
  22. 前記識別情報ドキュメントは前記ユーザフレンドリハンドルによって識別されるプリンシパルの複数のマシンロケーションをさらに備えることを特徴とする請求項7に記載の方法。
  23. ユーザフレンドリハンドルを使用してネットワーク環境内の第1のコンピュータシステム上に格納されているドキュメントにアクセスする方法であって、
    前記第1のコンピュータシステムからの識別情報ドキュメントを格納するステップであって、前記識別情報ドキュメントがプリンシパルを識別するユーザフレンドリハンドルおよび前記第1のコンピュータシステムのマシンロケーションを備えるステップと、
    前記ユーザフレンドリハンドルの形でドキュメントへのアクセス要求を代理受信するステップと、
    前記ユーザフレンドリハンドルを前記マシンロケーションと置き換えるように要求を修正するステップと、
    前記第1のコンピュータシステムの前記マシンロケーションにドキュメントへの前記修正済みアクセス要求を送信するステップと
    を備えることを特徴とする方法。
  24. 前記ユーザフレンドリハンドルは電子メールアドレスであることを特徴とする請求項23に記載の方法。
  25. 前記マシンロケーションはIPアドレスを備えることを特徴とする請求項23に記載の方法。
  26. 前記マシンロケーションは公開鍵を備えることを特徴とする請求項23に記載の方法。
  27. 前記公開鍵を使用して前記パブリッシュ側ノードの現在のマシンロケーションを判定するステップをさらに備えることを特徴とする請求項26に記載の方法。
  28. 前記第1のコンピュータシステムから識別情報ドキュメントを受信する初期ステップをさらに備えることを特徴とする請求項23に記載の方法。
  29. 前記第1のコンピュータシステムからパブリッシュ済みドキュメントを受信するステップをさらに備えることを特徴とする請求項23に記載の方法。
  30. 第2のコンピュータシステムから受信した識別情報ドキュメントを格納するためのストレージモジュールであって、前記識別情報ドキュメントはプリンシパルを識別するユーザフレンドリハンドルおよび前記第2のコンピュータシステムのマシンロケーションを備えるモジュールと、
    前記ユーザフレンドリハンドルに格納されているドキュメントへのアクセス要求を代理受信し、前記ユーザフレンドリハンドルを前記マシンロケーションと置き換えるように前記要求を修正するために前記ストレージモジュールに接続されている名前解決モジュールと
    を備えることを特徴とするコンピュータシステム。
  31. 前記ユーザフレンドリハンドルは電子メールアドレスであることを特徴とする請求項30に記載のコンピュータシステム。
  32. 前記マシンロケーションはIPアドレスを備えることを特徴とする請求項30に記載のコンピュータシステム。
  33. 前記マシンロケーションは公開鍵を備えることを特徴とする請求項30に記載のコンピュータシステム。
  34. 前記第2のコンピュータシステムとの間で通信を送受信するための前記名前解決モジュールに接続されている通信モジュールをさらに備えることを特徴とする請求項30に記載のコンピュータシステム。
  35. 名前解決のためにコンピュータプロセスを実行する命令のコンピュータプログラムを符号化するコンピュータ可読媒体であって、前記コンピュータプロセスは、
    パブリッシュ側コンピュータシステムからの識別情報ドキュメントを格納するステップであって、前記識別情報ドキュメントはプリンシパルを識別するユーザフレンドリハンドルおよび前記パブリッシュ側コンピュータシステムのマシンロケーションを備えるステップと、
    前記パブリッシュ側コンピュータシステム上に格納されているドキュメントへのアクセス要求を代理受信するステップであって、前記要求は前記ユーザフレンドリハンドルを含むステップと、
    前記ユーザフレンドリハンドルを前記マシンロケーションと置き換えるように前記要求を修正するステップとを備えることを特徴とするコンピュータ可読媒体。
  36. 前記ユーザフレンドリハンドルは電子メールアドレスを備えることを特徴とする請求項35に記載のコンピュータプロセス。
  37. 前記マシンロケーションはIPアドレスを備えることを特徴とする請求項35に記載のコンピュータプロセス。
  38. 前記マシンロケーションは公開鍵を備えることを特徴とする請求項35に記載のコンピュータプロセス。
  39. 前記公開鍵を使用して前記パブリッシュ側ノードの現在のマシンロケーションを判定するステップをさらに備えることを特徴とする請求項38に記載のコンピュータプロセス。
  40. 前記パブリッシュ側ノードの暗号化マシン名および登録済みマシンロケーションをDNSサーバに登録するステップと、
    前記ユーザフレンドリハンドルを前記公開鍵により解決するステップと、
    前記公開鍵を前記暗号化マシン名に変換するステップと、
    前記暗号化マシン名を使用して前記DNSサーバ上の前記パブリッシュ側ノードの前記登録済みマシンロケーションを検索するステップと、
    前記登録済みマシンロケーションにドキュメントへの前記アクセス要求を送信するステップと
    をさらに備えることを特徴とする請求項38に記載のコンピュータプロセス。
  41. 前記変換ステップは前記公開鍵にアルゴリズムを実行するステップを備えることを特徴とする請求項40に記載のコンピュータプロセス。
  42. 前記識別情報ドキュメントは前記ユーザフレンドリハンドルによって識別されるプリンシパルの複数のマシンロケーションをさらに備えることを特徴とする請求項35に記載のコンピュータプロセス。
JP2006536581A 2003-10-23 2004-07-29 名前解決のためのシステムおよび方法 Expired - Fee Related JP5065682B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/693,516 2003-10-23
US10/693,516 US8473634B2 (en) 2003-10-23 2003-10-23 System and method for name resolution
PCT/US2004/024341 WO2005045741A2 (en) 2003-10-23 2004-07-29 System and method for name resolution

Publications (2)

Publication Number Publication Date
JP2007509574A true JP2007509574A (ja) 2007-04-12
JP5065682B2 JP5065682B2 (ja) 2012-11-07

Family

ID=34522412

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006536581A Expired - Fee Related JP5065682B2 (ja) 2003-10-23 2004-07-29 名前解決のためのシステムおよび方法

Country Status (11)

Country Link
US (1) US8473634B2 (ja)
EP (2) EP1625511B1 (ja)
JP (1) JP5065682B2 (ja)
KR (1) KR101109371B1 (ja)
CN (1) CN1820264B (ja)
AU (1) AU2004279198B2 (ja)
BR (1) BRPI0406385A (ja)
CA (1) CA2501466A1 (ja)
MX (1) MXPA05006610A (ja)
RU (1) RU2373572C2 (ja)
WO (1) WO2005045741A2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9715500B2 (en) * 2004-04-27 2017-07-25 Apple Inc. Method and system for sharing playlists
US8261058B2 (en) * 2005-03-16 2012-09-04 Dt Labs, Llc System, method and apparatus for electronically protecting data and digital content
US20070271136A1 (en) * 2006-05-19 2007-11-22 Dw Data Inc. Method for pricing advertising on the internet
US7975143B2 (en) * 2006-06-12 2011-07-05 International Business Machines Corporation Method, system, and program product for generating and validating digital signatures
US7995568B2 (en) * 2006-06-12 2011-08-09 International Business Machines Corporation Capturing user interface switch states
US8572751B2 (en) * 2006-06-12 2013-10-29 International Business Machines Corporation Method, system, and program product for preventing unauthorized changes to an electronic document
US20080126950A1 (en) * 2006-11-28 2008-05-29 Patrick Leo Glenski Smart Reply Function on Web Pages
US10552391B2 (en) * 2008-04-04 2020-02-04 Landmark Graphics Corporation Systems and methods for real time data management in a collaborative environment
US8806190B1 (en) 2010-04-19 2014-08-12 Amaani Munshi Method of transmission of encrypted documents from an email application
TWI441498B (zh) * 2011-06-07 2014-06-11 Hon Hai Prec Ind Co Ltd 終端設備及其交換網路協定語音信令的方法
WO2013112015A1 (ko) * 2012-01-27 2013-08-01 삼성전자 주식회사 이동 통신 시스템 환경 에서 재난 메시지를 보안상 효율적으로 관리하는 방법 및 장치
WO2013143137A1 (en) * 2012-03-31 2013-10-03 France Telecom Research & Development Beijing Company Limited Content centric m2m system
KR102264992B1 (ko) 2014-12-31 2021-06-15 삼성전자 주식회사 무선 통신 시스템에서 서버 할당 방법 및 장치
EP3646227A1 (en) * 2017-06-28 2020-05-06 Apple Inc. Entitlement system
US11501010B2 (en) 2020-05-20 2022-11-15 Snowflake Inc. Application-provisioning framework for database platforms
US11249988B2 (en) 2020-05-20 2022-02-15 Snowflake Inc. Account-level namespaces for database platforms
US11593354B2 (en) 2020-05-20 2023-02-28 Snowflake Inc. Namespace-based system-user access of database platforms
CN115543924B (zh) * 2022-11-29 2023-08-15 粤港澳大湾区数字经济研究院(福田) 一种基于可信管理平台的任务处理方法及相关装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001297027A (ja) * 2000-04-13 2001-10-26 Nec Corp データファイル共有装置およびデータファイル共有方法
JP2002229836A (ja) * 2001-02-05 2002-08-16 Njk:Kk ピア・ツー・ピアで情報を共有し活用する方法
JP2002278903A (ja) * 2001-03-15 2002-09-27 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2003218941A (ja) * 2002-01-23 2003-07-31 Murata Mach Ltd 通信装置及びプログラム
JP2004363685A (ja) * 2003-06-02 2004-12-24 Kazuo Oku ユビキタスサーバシステム

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4509119A (en) * 1982-06-24 1985-04-02 International Business Machines Corporation Method for managing a buffer pool referenced by batch and interactive processes
US4660169A (en) * 1983-07-05 1987-04-21 International Business Machines Corporation Access control to a shared resource in an asynchronous system
IT1227711B (it) * 1988-11-18 1991-05-06 Caluso Torino Sistema multiprocessore di elaborazione dati a risorse distribuite condivise e prevenzione di stallo.
US5222238A (en) * 1991-09-05 1993-06-22 International Business Machines Corp. System and method for shared latch serialization enhancement
CA2120381C (en) 1993-04-05 2005-07-26 Gregory Barton Vatt Distributed multi-outlet paging
US6119151A (en) 1994-03-07 2000-09-12 International Business Machines Corp. System and method for efficient cache management in a distributed file system
US5812776A (en) * 1995-06-07 1998-09-22 Open Market, Inc. Method of providing internet pages by mapping telephone number provided by client to URL and returning the same in a redirect command by server
GB9603582D0 (en) * 1996-02-20 1996-04-17 Hewlett Packard Co Method of accessing service resource items that are for use in a telecommunications system
US5872847A (en) * 1996-07-30 1999-02-16 Itt Industries, Inc. Using trusted associations to establish trust in a computer network
US6047376A (en) * 1996-10-18 2000-04-04 Toshiba Information Systems (Japan) Corporation Client-server system, server access authentication method, memory medium stores server-access authentication programs, and issuance device which issues the memory medium contents
US6026433A (en) * 1997-03-17 2000-02-15 Silicon Graphics, Inc. Method of creating and editing a web site in a client-server environment using customizable web site templates
US5937199A (en) * 1997-06-03 1999-08-10 International Business Machines Corporation User programmable interrupt mask with timeout for enhanced resource locking efficiency
US5991810A (en) * 1997-08-01 1999-11-23 Novell, Inc. User name authentication for gateway clients accessing a proxy cache server
US6092196A (en) * 1997-11-25 2000-07-18 Nortel Networks Limited HTTP distributed remote user authentication system
US6219694B1 (en) * 1998-05-29 2001-04-17 Research In Motion Limited System and method for pushing information from a host system to a mobile data communication device having a shared electronic address
CN100359901C (zh) 1999-05-27 2008-01-02 互联网管理系统公司 利用单地址串用于通过各种通信应用来通信的系统和方法
US7100195B1 (en) * 1999-07-30 2006-08-29 Accenture Llp Managing user information on an e-commerce system
US7131001B1 (en) * 1999-10-29 2006-10-31 Broadcom Corporation Apparatus and method for secure filed upgradability with hard wired public key
US7000012B2 (en) * 2000-04-24 2006-02-14 Microsoft Corporation Systems and methods for uniquely identifying networks by correlating each network name with the application programming interfaces of transport protocols supported by the network
JP4742427B2 (ja) * 2001-02-05 2011-08-10 ソニー株式会社 受信装置、受信方法および名前解決方法
US7698433B2 (en) 2001-03-20 2010-04-13 Verizon Business Global Llc User aliases in communication system
US7065587B2 (en) * 2001-04-02 2006-06-20 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith
US7761326B2 (en) * 2001-04-20 2010-07-20 Nippon Telegraph And Telephone Corporation Token type content providing system and token type content providing method and portable user terminal
US20040117404A1 (en) * 2001-07-31 2004-06-17 Crivella Arthur R. System for utilizing audible, visual and textual data with alternative combinable multimedia forms of presenting information for real-time interactive use by multiple users in differnet remote environments
US6990495B1 (en) * 2001-09-05 2006-01-24 Bellsouth Intellectual Property Corporation System and method for finding persons in a corporate entity
US7171457B1 (en) * 2001-09-25 2007-01-30 Juniper Networks, Inc. Processing numeric addresses in a network router
US7373406B2 (en) * 2001-12-12 2008-05-13 Valve Corporation Method and system for effectively communicating file properties and directory structures in a distributed file system
US6990465B1 (en) * 2002-01-25 2006-01-24 Accenture Global Services Gmbh Establishment of preferred business partners using a vendor certification program
US7139840B1 (en) * 2002-06-14 2006-11-21 Cisco Technology, Inc. Methods and apparatus for providing multiple server address translation
US7139828B2 (en) * 2002-08-30 2006-11-21 Ip Dynamics, Inc. Accessing an entity inside a private network
JP2006053581A (ja) 2005-09-30 2006-02-23 Fuji Xerox Co Ltd 画像形成装置及びそのカートリッジ

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001297027A (ja) * 2000-04-13 2001-10-26 Nec Corp データファイル共有装置およびデータファイル共有方法
JP2002229836A (ja) * 2001-02-05 2002-08-16 Njk:Kk ピア・ツー・ピアで情報を共有し活用する方法
JP2002278903A (ja) * 2001-03-15 2002-09-27 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2003218941A (ja) * 2002-01-23 2003-07-31 Murata Mach Ltd 通信装置及びプログラム
JP2004363685A (ja) * 2003-06-02 2004-12-24 Kazuo Oku ユビキタスサーバシステム

Also Published As

Publication number Publication date
WO2005045741A2 (en) 2005-05-19
RU2005120234A (ru) 2006-01-20
AU2004279198B2 (en) 2010-06-17
MXPA05006610A (es) 2005-08-16
EP1625511A4 (en) 2011-08-03
AU2004279198A8 (en) 2008-09-18
JP5065682B2 (ja) 2012-11-07
AU2004279198A1 (en) 2005-06-30
CA2501466A1 (en) 2005-04-23
EP1625511A2 (en) 2006-02-15
EP2728489A1 (en) 2014-05-07
RU2373572C2 (ru) 2009-11-20
CN1820264B (zh) 2011-06-29
EP1625511B1 (en) 2014-03-05
KR101109371B1 (ko) 2012-01-30
CN1820264A (zh) 2006-08-16
EP2728489B1 (en) 2020-02-12
KR20060113352A (ko) 2006-11-02
WO2005045741A3 (en) 2005-12-22
BRPI0406385A (pt) 2005-08-09
US8473634B2 (en) 2013-06-25
US20050091402A1 (en) 2005-04-28

Similar Documents

Publication Publication Date Title
US9300636B2 (en) Secure data exchange technique
KR101130405B1 (ko) 아이덴티티 인식 방법 및 시스템
RU2444054C2 (ru) Одноранговый обмен контактной информацией
JP5065682B2 (ja) 名前解決のためのシステムおよび方法
US7860882B2 (en) Method and system for distributed retrieval of data objects using tagged artifacts within federated protocol operations
US20180139183A1 (en) Signed ephemeral email addresses
US20050114447A1 (en) Method and system for identity exchange and recognition for groups and group members
US20130247139A1 (en) Application identity design
KR20080033239A (ko) 인접한 사람들을 통한 컨택트 정보 획득
US20070255815A1 (en) Software, Systems, and Methods for Secure, Authenticated Data Exchange
WO2007118256A2 (en) Software, systems, and methods for secure, authenticated data exchange

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091016

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100118

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101008

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20101012

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20101012

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20101102

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20101203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120703

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120810

R150 Certificate of patent or registration of utility model

Ref document number: 5065682

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150817

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees