JP4705990B2 - 信頼性のある分散型ピアツーピアネットワークを確立するシステム - Google Patents

信頼性のある分散型ピアツーピアネットワークを確立するシステム Download PDF

Info

Publication number
JP4705990B2
JP4705990B2 JP2009185480A JP2009185480A JP4705990B2 JP 4705990 B2 JP4705990 B2 JP 4705990B2 JP 2009185480 A JP2009185480 A JP 2009185480A JP 2009185480 A JP2009185480 A JP 2009185480A JP 4705990 B2 JP4705990 B2 JP 4705990B2
Authority
JP
Japan
Prior art keywords
peer
user
file
computer
peer network
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.)
Expired - Lifetime
Application number
JP2009185480A
Other languages
English (en)
Other versions
JP2010033580A (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.)
Sightsound Technologies Inc
Original Assignee
Sightsound Technologies Inc
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
Application filed by Sightsound Technologies Inc filed Critical Sightsound Technologies Inc
Publication of JP2010033580A publication Critical patent/JP2010033580A/ja
Application granted granted Critical
Publication of JP4705990B2 publication Critical patent/JP4705990B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Description

本発明は、信頼性のある分散型ピアツーピアネットワークの方法及びシステムに関する。
インターネットを介して電子的に映画を売るビジネスに重要なことは、効果的な電子的配布及び/又はファイル共有することである。通信手段を介してコンピュータファイル(デジタル化映画を含む)を共有する方法は、電子的配布及びファイル転送についてのインターネットの急増に伴って、重要性が増している。ファイル共有及び/又はピアツーピアネットワーク(例えば、グヌーテラ)を作成することにより、従来型のサービスソフトウエアを持たないコンピュータワークステーションのユーザが、コンピュータファイルを配付することが可能となる。
従来から、サービスコンピュータ(例えば、マイクロソフト(登録商標)ウインドウズ2000サーバーを実行するコンピュータ)により、集中型ネットワークアーキテクチャを用いてクライアント側のワークステーションにコンピュータファイルを配布するタスクを実行した。ファイル共有及び/又はピアツーピアネットワークの出現により、冗長な貯蔵庫として働く多数のコンピュータワークステーション(例えば、ホストノード)からなり、各々が同じコンピュータファイルを転送できる分散型ネットワークアーキテクチャへの道が与えられた。現在のファイル共有及び/又はピアツーピアネットワークのいくつかは、開放的で信頼性のない方法で通信している。更に、信頼性があるピアツーピアネットワークは、メンバー及び彼らに関するIPアドレスの識別を集中化処理することにより、信頼性があるピアツーピアネットワークを確立していた。
本発明は、新規で改良された方法及びシステムを提供し、信頼性がある分散型ピアツーピアネットワークを確立する。それはコンピュータデバイス間でのコンピュータファイルの共有、信頼性のあるチャットセッション、及び信頼性があるピアツーピアネットワークの他の適用についてのものである。更に、本発明はまた、新規で改良された方法及びシステムを提供し、信頼性がある分散型ピアツーピアネットワークを用いて、ファイルの実際のダウンロードの前に、ファイル共有を介して、ファイル特性又は特質を識別することができる。本発明は、コンピュータデバイスに存在し、ファイル共有処理中に信頼性があるピアツーピア方法によりユーザが自動的に対話(interact)できるソフトウエアプログラムであることができる。
添付の図面に於いて、本発明の好ましい実施例、及び本発明を実施する好ましい方法が示されている。
信頼性がある分散型ピアツーピアネットワークを確立する目的に対して、本発明の開示内容を実行する為に用いられる説明図であり、コンピューティングが、信頼性がある分散型ピアツーピアネットワークの確立に関連して、接続され得る構成が記載されている。 コンピュータプログラミングフローチャートである。 コンピュータプログラミングフローチャートである。 コンピュータプログラミングフローチャートである。 コンピュータプログラミングフローチャートである。 コンピュータプログラミングフローチャートである。 コンピュータプログラミングフローチャートである。 コンピュータプログラミングフローチャートである。 コンピュータプログラミングフローチャートである。
図面に於いて、同じ参照番号は、数図を通じて同等又は同じ部分を表している。特に図1を参照すると、信頼性がある分散型ピアツーピアネットワークを確立するためのシステムが示されている。システムは、多数のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11))から構成され、各々は通信手段(20)への接続を有し、通信プロトコル(例えば、FTPプロトコル(150)、HTTPプロトコル(151)、チャットプロトコル(152)、ファイル共有プロトコル(153))を用いる手段、通信プログラム(例えば、電子メールプログラム(130))を用いる手段、コンピュータファイルを転送又はダウンロードする手段を有している。システムは、多数のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11))から構成され、各々はユーザインターフェイス(20)を有し、各コンピュータデバイスのユーザは該ユーザインターフェイス(20)を介してインターフェイスする。システムは、多数のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11))から構成され、各々は演算命令を処理するプロセッサ(21)を具えている。システムは、多数のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11))から構成され、各々は夫々のコンピュータデバイスに対して記憶手段を与えるRAM(22)を具えている。
システムは、多数のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11))から構成され、各々は夫々のコンピュータデバイスに対して不揮発性の記憶手段又はストレージ手段を付与するストレージ(23)を具えている。システムは、多数のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11))から構成され、各々は各コンピュータデバイスを通信手段(30)に接続するトランシーバ(24)を具え、通信は、該トランシーバ(24)を介してコンピュータデバイス間を伝送される。デバイス”A”(10)は、デバイス”B”(11)から別れ、離れ、区別される。
ピアツーピアネットワークプログラム(40)は、コンピュータデバイス(例えば、デバイス”A”(10))のユーザインターフェイス(20)に接続され、デバイス”A”(10)のユーザがピアツーピアネットワークプログラム(40)に情報を入力することを可能にするのが好ましい。コンピュータデバイス(例えば、デバイス”A”(10))のピアツーピアネットワークプログラム(40)は、他のコンピュータデバイス(例えば、デバイス”B”(11))のピアツーピアネットワークプログラム(40)と対話できる。
本発明は、信頼性がある分散型ピアツーピアネットワークを確立する方法に関する。該方法は、最初にピアツーピアネットワークプログラム(40)をインストールするステップを含む。次に、オペレーティングシステム(25)の暗号API(70)手段を介して、暗号化及び復号化鍵を作成するステップがあるのが好ましい。次に、本発明により実施される各コンピュータデバイスの識別可能なネットワーク情報を含むサーチ可能な暗号文ファイルを作成するステップがあるのが好ましく、暗号文ファイルは、他のそのようなコンピュータデバイスの各々と共有され得る。次に、データ及び/又は他の情報を、特定のコンピュータファイルに添付し、又はデータ及び/又は他の情報を、特定のコンピュータファイルに関連づけ、本発明により作られる信頼性がある分散型ピアツーピアネットワークのファイル共有機能に含めるステップがあるのが好ましい。
次に、公開鍵(電子メール、CD−ROM、その他のようなものであるが、これらに限定されない)を、或るコンピュータデバイスから、所定の信頼性のあるネットワークに属する他のメンバーのコンピュータデバイスに配布し、信頼性のあるピアツーピアネットワークのメンバー間で、暗号化されたファイルを復号する際に用いる為に、そのような公開鍵を用意するステップがあるのが好ましい。
次に、それによって、信頼性のあるピアツーピアネットワークのメンバーが、分散手段を介して、信頼性のあるピアツーピアネットワークの他のメンバーを見つけるステップがあるのが好ましい。次に、これらに限定されないが、例えば、信頼性のあるチャットセッション、信頼性のあるファイル共有、その他のような種々の通信目的に、信頼性のあるピアツーピアネットワークを用いるステップがあるのが好ましい。
図面に於いて、同じ参照番号は、数図を通じて同等又は同じ部分を表している。図面、特に図1から図9を参照すると、コンピュータデバイスであるデバイス”A”(10)、デバイス”B”(11)のオペレーティングシステム(25)の機能を引き出す装置(40)が開示されている。装置(40)は、コンピュータデバイスであるデバイス”A”(10)、デバイス”B”(11)のオペレーティングシステム(25)に接続されている。装置(40)は、コンピュータデバイスであるデバイス”A”(10)のオペレーティングシステム(25)の機能を引き出して、他のコンピュータデバイスであるデバイス”B”(11)の装置(40)に合わせる手段を具え、復号化鍵(例えば、ユーザAの公開鍵(80)、ユーザBの公開鍵(81))を電子的又は手動手段を介して共有し、暗号化された”ファインドミー”ファイル(例えば、ユーザAのファインドミーファイル(100)、ユーザBのファインドミーファイル(101))を公開型で信頼性のないファイル共有ネットワークを介して共有し、コンピュータデバイスであるデバイス”A”(10)、デバイス”B”(11)間に、信頼性のあるピアツーピアネットワーク、信頼性のあるピアツーピアネットワークのメンバーの実時間の位置と、信頼性のあるピアツーピアネットワークを構成するコンピュータデバイス間の通信と、信頼性のあるピアツーピアネットワークを構成するコンピュータデバイス間のファイル共有とを確立する。
図1は、信頼性のある分散型ピアツーピアネットワークを確立する目的で、本発明を開示内容を実行するのに用いられる説明図であり、信頼性のある分散型ピアツーピアネットワークを確立することに関連して、コンピュータデバイスが接続され得る構成を示している。
図2は、本発明の開示内容の全て又は一部を実施することができるソフトウエア(例えば、ピアツーピアネットワークプログラム(40))をインストールする目的で、本発明の開示内容を実施するのに用いられるコンピュータプログラミングフローチャートである。
図3は、この発明の開示内容を実施するのに用いられるコンピュータプログラミングフローチャートであり、オペレーティングシステム(例えば、オペレーティングシステム(25))の機能を自動的に引き出して、暗号化鍵及び復号化鍵を作成するのに、ピアツーピアネットワークプログラム(40)が如何に設計され得るかを示している。
図4は、この発明の開示内容を実施するのに用いられるコンピュータプログラミングフローチャートであり、信頼性のあるピアツーピアネットワークを作成する分散型制御手続きを作成する為に必要な情報を含むサーチ可能な暗号文ファイルを自動的に作成し、コンピュータデバイスのユーザがユーザ情報を手動で入力することを自動的に許し、オペレーティングシステム(例えば、オペレーティングシステム(25))から引き出されたピアツーピアネットワーク情報をサーチ可能なファイルに自動的に挿入し及びユーザ情報を自動的に挿入し、暗号化鍵(図3参照)を用いるサーチ可能なファイルを自動的に暗号化し、ストレージデバイス(例えば、ストレージデバイス(23))上のサーチ可能なファイルフォルダに、暗号化されサーチ可能な暗号文ファイルを自動的に保存する為に、ピアツーピアネットワークプログラム(40)が如何に設計され得るかを示している。
図5は、この発明の開示内容を実施するのに用いられるコンピュータプログラミングフローチャートであり、データ及び/又は情報(例えば、ファイル属性、ファイル特性、その他)をコンピュータファイルに自動的に添付する為に、ピアツーピアネットワークプログラム(40)が如何に設計され得るかを示している。
図6は、この発明の開示内容を実施するのに用いられるコンピュータプログラミングフローチャートであり、復号化鍵(例えば、公開鍵)をユーザの特定の受信者(例えば、信頼性のあるピアツーピアネットワークのメンバー)に自動的に配布する為に、ピアツーピアネットワークプログラム(40)が如何にコンピュータデバイスのユーザをアシストできるかを示している。
図7は、この発明の開示内容を実施するのに用いられるコンピュータプログラミングフローチャートであり、ピアツーピアネットワークプログラム(40)が、特定の且つ以前から認識しているユーザ(例えば、信頼性のあるピアツーピアネットワークのメンバー)によって制御され、又は操作されるコンピュータデバイスに関するネットワーク情報(例えば、IPアドレス)を含むコンピュータファイル(例えば、ユーザAファインドミーファイル(100))に対してネットワークを共有する開放型(信頼性のない)ファイルを如何に自動的にサーチし、1又は2以上のコンピュータファイル(例えば、ユーザAファインドミーファイル(100))を如何に自動的にダウンロードし、コンピュータファイル(例えば、ユーザAファインドミーファイル(100))を如何に自動的に復号し、ネットワーク情報(例えば、IPアドレス)を如何に自動的に抽出し、ネットワーク情報(例えば、IPアドレス)を信頼性のあるメンバーのリスト(例えば、信頼性のあるメンバーのリスト(140))の特定の且つ以前から認識しているユーザ(例えば、信頼性のあるピアツーピアネットワークのメンバー)に夫々如何に自動的に関連づけることができるかを示している。
図8は、この発明の開示内容を実施するのに用いられるコンピュータプログラミングフローチャートであり、ピアツーピアネットワークプログラム(40)が如何に通信プロトコル(例えば、チャットプロトコル(152))の機能を引き出して、特定の且つ以前から認識しているユーザ(例えば、信頼性のあるピアツーピアネットワークのメンバー)とチャットセッションを確立するかを示している。
図9は、この発明の開示内容を実施するのに用いられるコンピュータプログラミングフローチャートであり、ピアツーピアネットワークプログラム(40)が、信頼性のあるメンバーのリスト(140)のIPアドレスを用いて信頼性のあるピアツーピアネットワークを如何に自動的に確立し、通信プロトコル(例えば、ファイル共有プロトコル(153))の機能を如何に自動的に引き出して、信頼性のあるメンバーのリスト(140)のユーザによって制御され又は操作されるコンピュータデバイス上で、コンピュータファイルのサーチ及び検索を実行するのかを示している。
図1から図9を参照して、本発明の好ましい実施例は、以下にて構成される。
(10) デバイス”A”
(11) デバイス”B”
(12) デバイス”C”
(13) デバイス”D”
(20) ユーザインターフェイス
(21) プロセッサ
(22) RAM
(23) ストレージ
(24) トランシーバ
(25) オペレーティングシステム
(30) 通信手段
(41) セットアップ実行ファイル
(40) ピアツーピアネットワークプログラム
(50) ユーザ情報ファイル
(60) ファインドミーフォルダ
(61) サーチされたファインドミー結果のフォルダ
(62) 信頼性のあるサーチフォルダ
(70) 暗号API
(71) 暗号化サービスプロバイダ
(72) アプリケーションプログラミングインターフェイス
(80) ユーザA公開鍵
(81) ユーザB公開鍵
(82) ユーザC公開鍵
(83) ユーザD公開鍵
(90) ユーザA秘密鍵
(91) ユーザB秘密鍵
(92) ユーザC秘密鍵
(93) ユーザD秘密鍵
(100) ユーザAファインドミーファイル
(101) ユーザBファインドミーファイル
(102) ユーザCファインドミーファイル
(103) ユーザDファインドミーファイル
(110) ユーザA公開鍵BLOB
(111) ユーザB公開鍵BLOB
(112) ユーザC公開鍵BLOB
(113) ユーザD公開鍵BLOB
(120) ファイル情報ストリーム
(130) 電子メールプログラム
(140) 信頼性のあるメンバーのリスト
(150) FTPプロトコル
(151) HTTPプロトコル
(152) チャットプロトコル
(153) ファイル共有プロトコル
図1から図9に於いて、以下の構成要素は、既に市販されている。デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)、ユーザインターフェイス(20)、プロセッサ(21)、RAM(22)、ストレージ(23)、トランシーバ(24)、オペレーティングシステム(25)、通信手段(30)、暗号API(70)、暗号化サービスプロバイダ(71)、アプリケーションプログラミングインターフェイス(72)、ユーザA公開鍵(80)、ユーザB公開鍵(81)、ユーザC公開鍵(82)、ユーザD公開鍵(83)、ユーザA秘密鍵(90)、ユーザB秘密鍵(91)、ユーザC秘密鍵(92)、ユーザD秘密鍵(93)、ユーザA公開鍵BLOB(110)、ユーザB公開鍵BLOB(111)、ユーザC公開鍵BLOB(112)、ユーザD公開鍵BLOB(113)、電子メールプログラム(130)、FTPプロトコル(150)、HTTPプロトコル(151)、チャットプロトコル(152)、及びファイル共有プロトコル(153)である。ピアツーピアネットワークプログラム(40)、セットアップ実行ファイル(41)、ユーザ情報ファイル(50)、ファインドミーフォルダ(60)、サーチされたファインドミー結果のフォルダ(61)、信頼性のあるサーチフォルダ(62)、ユーザAファインドミーファイル(100)、ユーザBファインドミーファイル(101)、ユーザCファインドミーファイル(102)、ユーザDファインドミーファイル(103)、ファイル情報ストリーム(120)、及び信頼性のあるメンバーのリスト(140)は、本発明に於ける新たなる開示である。
デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)は、演算機能を実行できる手段である(ウェブサーバー、PC、Mac、PalmPC、ラップトップの様なものであるが、これらに限定されない)。デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)はまた、他のデバイスと電子的に通信できる手段である。デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)はまた、他のコンピュータデバイスにコンピュータファイル(例えば、ユーザAファインドミーファイル(100))を送信する手段である。デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)はまた、情報及び/又はリクエストを他のコンピュータデバイスに送信する手段である。デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)は、ビデオディスプレイ、オーディオスピーカ、及び他の演算周辺デバイスを含む。本発明は、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)のみには限られない。
ユーザインターフェイス(20)(マイクロソフト(登録商標)社インターネットエクスプローラのようなウェブブラウザソフトウエア、キーボード、マウス、ビデオモニタ、スピーカのようなものであるが、これらに限定されない)は、コンピュータデバイス(例えば、デバイス”A”(10))のユーザがコンピュータデバイスにインターフェイスできる手段である。ユーザインターフェイス(20)は、コンピュータデバイスのユーザが他のコンピュータデバイスのリクエストを伝送するのに用いられることができ、ユーザインターフェイス(20)の内容をコンピュータデバイスのユーザに示すことができる手段である。ユーザインターフェイス(20)は、他のコンピュータデバイスから伝送されるリクエストを受信し、実行することができる手段である。ユーザインターフェイス(20)はまた、ハイパーテキスト伝送プロトコル(”HTTP”)を用いてデバイスの中の他の何れかのデバイス(例えば、デバイス”C”(12))のユーザの代わりに、インターネットを介して、複数のデバイス(例えば、デバイス”A”(10))のリクエストを作ることができるクライアントプログラムである手段である。
プロセッサ(21)は、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))の手段であって、オペレーティングシステム(25)、該オペレーティングシステム(25)又はコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))の他の演算周辺デバイス上を動作する他のコンピュータプログラムの命令を電子的に処理する。
プロセッサ(21)はまた、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))の手段であって、他の周辺デバイスソフトウエア及び/又はコンピュータデバイスのファームウエアデバイスの命令を電子的に処理する。
RAM(22)は、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のオペレーティングシステム(25)により用いられる手段であって、コンピュータファイル、オペレーティングシステム(25)によって用いられるコンピュータプログラム又は他のコンピュータ情報(ユーザAファインドミーファイル(100)のようなものであるが、これに限定されない)、オペレーティングシステム(25)又はコンピュータデバイスの他のコンピュータ周辺デバイス上を動作するコンピュータプログラムを一時的に格納する。
ストレージ(23)は、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))内の手段、又はコンピュータデバイスに接続される手段であって、コンピュータデバイスのRAM(22)からのコンピュータプログラム又はコンピュータファイル(ユーザAファインドミーファイル(100)のようなものであるが、これに限定されない)のデジタル符号の電子的コピーを電子的に格納する。
トランシーバ(24)(電話モデム、ケーブルモデム、ネットワークインターフェイスカード、その他のようなものであるが、これに限定されない)は、通信手段(30)を介して通信信号を電子的に送受信する手段である。トランシーバ(24)は、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))及び/又はそのオペレーティングシステム(25)のソフトウエア及び/又はファームウエアにより用いられ、又は接続された手段であって、通信手段(30)を介して電子的に通信する。トランシーバ(24)は、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))に接続され、通信手段(30)に接続されている。
オペレーティングシステム(25)(マイクロソフト(登録商標)社ウインドウズ2000のようなものであるが、これに限定されない)は、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))の演算機能を可能にする手段である。
通信手段(30)(電話線、ケーブルTV線、同軸ケーブル、光ファイバ、ラジオ、携帯電話、衛星通信、シリアルケーブル、パラレルケーブル、赤外線通信、レーザー通信、ユニバーサルシリアルバス(USB)ケーブル、インターネット、LAN、イーサネット(登録商標)、一般的なネットワークのようなものであるが、これに限定されない)は、接続されたコンピュータデバイスが、それによって電子的に通信できる手段である。
通信手段(30)はまた、接続されたコンピュータデバイスが、それによって標準的な通信プロトコル(ハイパーテキスト伝送プロトコル(”HTTP”);ファイル伝送プロトコル(FTP)その他のようなものであるが、これらに限定されない)を呼び出し、信号及び/又はコンピュータプログラム又はコンピュータファイル(ユーザAファインドミーファイル(100)のようなものであるが、これらに限定されない)を送受信できる手段である。
通信手段(30)はまた、それに接続されたコンピュータデバイスが、暗号化された通信プロトコル(安全ソケット層(SSL)、伝送層安全(TLS)、仮想プライベートネットワーク(VPN)その他のようなものであるが、これに限定されない)を呼び出して、暗号化された信号を送受信できる手段である。
通信手段(30)はまた、コンピュータネットワークの世界的広域システム、又は”インターネット”として知られるネットワークのネットワークを含み得る手段であり、該手段にて何れか1つのコンピュータデバイスに於けるユーザは、他のコンピュータ装置から情報を入手できる。通信手段(30)は、トランシーバ(70)、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))に接続される。
ピアツーピアネットワークプログラム(40)は、複数のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))上にて作動できる手段である。ピアツーピアネットワークプログラム(40)はまた、オペレーティングシステム(25)又はその通信プログラムに命令して、通信手段(30)を介して他のコンピュータデバイス(例えば、デバイス”C”(12))と通信する手段である。コンピュータデバイス(例えば、デバイス”D”(13))のピアツーピアネットワークプログラム(40)はまた、コンピュータデバイス(例えば、デバイス”A”(10))のピアツーピアネットワークプログラム(40)に命令して、デバイス”A”(10)及びデバイス”D”(13)のピアツーピアネットワークプログラム(40)の機能が実行されている間中、デバイス”A”(10)のオペレーティングシステム(25)に問い掛け又は命令を伝送する手段である。
コンピュータデバイス(例えば、デバイス”D”(13))のピアツーピアネットワークプログラム(40)はまた、通信手段(30)を介してコンピュータデバイス(例えば、デバイス”A”(10))のピアツーピアネットワークプログラム(40)から命令を受信する手段である。
コンピュータデバイス(例えば、デバイス”A”(10))のピアツーピアネットワークプログラム(40)はまた、通信手段(30)を介して他のコンピュータデバイス(例えば、デバイス”C”(12))から伝送されたコンピュータファイル(例えば、ユーザCファインドミーファイル(102))から伝達を自動的に受信し、その電子的コピーを第1のコンピュータデバイス(例えば、デバイス”A”(10))のRAM(22)内に自動的に格納する手段である。ピアツーピアネットワークプログラム(40)はまた、コンピュータデバイス(例えば、デバイス”A”(10))のオペレーティングシステム(25)に自動的に命令して、RAM(22)からコンピュータファイル(例えば、ユーザCファインドミーファイル(102))を呼び出し、その電子的コピーをストレージ(23)に格納する手段である。
ピアツーピアネットワークプログラム(40)は、ピアツーピアネットワークプログラム(40)の機能実行が完成すると、コンピュータデバイス(例えば、デバイス”Av(10))のユーザインターフェイス(20)にメッセージを伝送する手段である。
ピアツーピアネットワークプログラム(40)はまた、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のユーザが信頼性のある通信ネットワークを確立することを可能にする手段である。ピアツーピアネットワークプログラム(40)はまた、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のユーザが信頼性のある通信ネットワークを利用して通信セッション(例えば、チャットセッション)を確立することを可能にする手段である。ピアツーピアネットワークプログラム(40)はまた、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のユーザが信頼性のある通信ネットワークを利用して、コンピュータデバイス間のファイルを共有することを可能にする手段である。
ピアツーピアネットワークプログラム(40)はまた、通信プロトコル(例えば、FTPプロトコル(150))を利用して、コンピュータファイル(例えば、ユーザAファインドミーファイル(100))を、通信手段(30)を介して、ピアツーピアネットワークプログラム(40)にて作動する他のコンピュータデバイスに自動的に送信する手段である。ピアツーピアネットワークプログラム(40)は、コンピュータコーディングソフトウエア(コンピュータ言語C++、C♯、アクティブサーバページ、XML、ビジュアルベーシック、アクティブXコントロール、ジャバスクリプトその他にて記載されたプログラムのようなものであるが、これに限定されない)にて具体化され、上記の機能を実行する。
セットアップ実行ファイル(41)は、種々の手段(例えば、ダウンロード経由、CD−ROMその他)を介してコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))に伝送され得る手段である。セットアップ実行ファイル(41)は、ファイル自身を通常の処理である”ダブルクリック”することにより、機能がコンピュータデバイスのユーザにより呼び出されることができる手段である。セットアップ実行ファイル(41)は、ピアツーピアネットワークプログラム(40)のコピーを含む手段である。
セットアップ実行ファイル(41)は、ピアツーピアネットワークプログラム(40)をコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))に自動的にインストールし、コンピュータデバイスのオペレーティングシステム(25)に対し、ピアツーピアネットワークプログラム(40)が適切に機能するのに必要な修正をする手段である。
ユーザ情報ファイル(50)は、ピアツーピアネットワークプログラム(40)のコピーを実行するコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のユーザによって手入力された情報からピアツーピアネットワークプログラム(40)によって作成されるコンピュータファイル(テキストドキュメントのようなものであるが、これに限定されない)である。
ユーザ情報ファイル(50)はまた、ホストコンピュータデバイスに固有の情報を含み、ピアツーピアネットワークプログラム(40)がホストオペレーティングシステム(25)のアプリケーションプログラミングインターフェイス(72)を利用することにより、該情報が自動的に収集されるコンピュータファイルである。
ファインドミーフォルダ(60)は、ホストコンピュータデバイス(例えば、デバイス”B”(11))のストレージ(23)内のフォルダ位置であり、コンピュータデバイスに関する信頼性のあるネットワーク情報を含むサーチ可能なファイル(例えば、ユーザBファインドミーファイル(101))及びそのユーザが格納される。
ファインドミーフォルダ(60)は、ピアツーピアネットワークプログラム(40)が最初にインストールされると、セットアップ実行ファイル(41)によって作成される。ファインドミーフォルダ(60)はまた、ピアツーピアネットワークプログラム(40)が最初にインストールされた後に、自動的又は夫々のユーザのリクエストの何れかにより、ピアツーピアネットワークプログラム(40)によって作成される。多数のファインドミーフォルダ(60)は、本発明の実施例を含む各コンピュータデバイスに存在している。
サーチされたファインドミー結果のフォルダ(61)は、ホストコンピュータデバイス(例えば、デバイス”B”(11))のストレージ(23)内のフォルダ位置であり、ピアツーピアネットワークプログラム(40)によって実行される特定のサーチクエリーの結果であるコンピュータファイル(例えば、ユーザAファインドミーファイル(100)、ユーザCファインドミーファイル(102)、ユーザDファインドミーファイル(103))が、ピアツーピアネットワークプログラム(40)によって格納される。
サーチされたファインドミー結果のフォルダ(61)は、ピアツーピアネットワークプログラム(40)が最初にインストールされると、セットアップ実行ファイル(41)によって作成され得る。サーチされたファインドミー結果のフォルダ(61)はまた、ピアツーピアネットワークプログラム(40)が最初にインストールされた後に、自動的又は夫々のユーザのリクエストの何れかにより、ピアツーピアネットワークプログラム(40)によって作成される。多数のサーチされたファインドミー結果のフォルダ(61)は、本発明の実施例を含む各コンピュータデバイスに存在している。
信頼性のあるサーチフォルダ(62)は、ホストコンピュータデバイス(例えば、デバイス”B”(11))のストレージ(23)内のフォルダ位置であって、ピアツーピアネットワークプログラム(40)によって実行される特定のサーチ問い合わせの結果であるコンピュータファイル(例えば、ドキュメント、表計算、オーディオファイル(例えば、ASF、WMA、MP3、WAV、AUI)、ビデオファイル(例えば、ASF、WMV、AVI、MPEG)、実行可能なプログラム(例えば、EXE)その他)が、ピアツーピアネットワークプログラム(40)によって格納される。
信頼性のあるサーチフォルダ(62)は、ピアツーピアネットワークプログラム(40)のコピーを実行する他のコンピュータデバイスによってサーチされる。信頼性のあるサーチフォルダ(62)は、他のコンピュータデバイスがファイル共有プロトコル(153)を用いて、ピアツーピアネットワークプログラム(40)のコピーを実行することによってサーチされる。信頼性のあるサーチフォルダ(62)は、ピアツーピアネットワークプログラム(40)が最初にインストールされると、セットアップ実行ファイル(41)によって作成される。信頼性のあるサーチフォルダ(62)はまた、ピアツーピアネットワークプログラム(40)が最初にインストールされた後に、自動的又は夫々のユーザのリクエストの何れかにより、ピアツーピアネットワークプログラム(40)によって作成され得る。多数の信頼性のあるサーチフォルダ(62)は、本発明の実施例を含む各コンピュータデバイスに存在している。
暗号API(70)は、オペレーティングシステム(例えば、オペレーティングシステム(25))の手段であり、コンピュータプログラム及び/又はアプリケーションがオペレーティングシステム(例えば、マイクロソフト(登録商標)暗号API、アプリケーションプログラミングインターフェイス)の暗号化機能を実行することを可能にする。
暗号API(70)はまた、オペレーティングシステム(25)の手段であり、暗号化機能を含み、ピアツーピアネットワークプログラム(40)が暗号化及び復号化機能を実行するのに用いることができる。暗号API(70)はまた、オペレーティングシステム(25)の手段であり、データを暗号化又は復号化し、デジタル証明を用いた認証機能を有する。
暗号API(70)はまた、オペレーティングシステム(25)の手段であり、証明ストア(例えば、暗号化サービスプロバイダ(71))内の証明の不揮発性記憶域、公開鍵、秘密鍵を維持し管理する証明管理機能を供給する。
暗号API(70)はまた、オペレーティングシステム(25)の手段であり、証明を出力中の伝送及び/又はメッセージに組み入れ、及び受信された伝送及び/又はメッセージ内の受信されたデジタル証明を確認する。
暗号化サービスプロバイダ(71)は、暗号API(70)の手段であり、公開鍵/秘密鍵のペアを不揮発性メモリ(例えば、マイクロソフト(登録商標)CSP)内のセッションからセッションに格納する。暗号化サービスプロバイダ(71)はまた、暗号API(70)の手段であり、暗号化形式の公開鍵/秘密鍵のペアをオペレーティングシステム(例えば、オペレーティングシステム(25))のシステムレジストリに格納する。
アプリケーションプログラミングインターフェイス(72)は、オペレーティングシステム(例えば、オペレーティングシステム(25))の手段であり、ピアツーピアネットワークプログラム(40)がホストコンピュータ(例えば、マイクロソフト(登録商標)Win32API)に関する特定の情報をプログラム的に取り出すことを可能にする。
アプリケーションプログラミングインターフェイス(72)はまた、オペレーティングシステム(例えば、オペレーティングシステム(25))の手段であり、ホストコンピュータのネットワーク構成についての特定のIPアドレス情報をプログラム的に取り出すことを可能にする。アプリケーションプログラミングインターフェイス(72)は、暗号API(70)、暗号化サービスプロバイダ(71)、及び他の同様のアプリケーションプログラミングインターフェイスの機能を有する。
ユーザA公開鍵(80)は、或る秘密鍵(例えば、ユーザA秘密鍵(90))を用いて暗号化されたファイルを復号するのに用いられる手段であり、該秘密鍵はユーザA公開鍵(80)とともに、公開/秘密鍵のペアを作成する。ユーザA公開鍵(80)はまた、暗号API(70)を用いるピアツーピアネットワークプログラム(40)によって作成される手段である。ユーザA公開鍵(80)はまた、暗号化サービスプロバイダ(71)によってホストコンピュータデバイス(例えば、デバイス”A”(10))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。
ユーザA公開鍵(80)はまた、種々の手段を介して(例えば、通信手段(30)、フロッピィディスク、電子メールプログラム(130)その他を介して)、他のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))に伝送され得る手段である。ユーザA公開鍵(80)はまた、暗号化サービスプロバイダ(71)によって、他のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。ユーザA公開鍵(80)はまた、或る秘密鍵(例えば、ユーザA秘密鍵(90))にて暗号化された他のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))上のファイルを復号できる手段である。
ユーザB公開鍵(81)は、或る秘密鍵(例えば、ユーザB秘密鍵(91))を用いて暗号化されたファイルを復号するのに用いられる手段であり、該秘密鍵はユーザB公開鍵(81)とともに、公開/秘密鍵のペアを作成する。ユーザB公開鍵(81)はまた、暗号API(70)を用いるピアツーピアネットワークプログラム(40)によって作成される手段である。ユーザB公開鍵(81)はまた、暗号化サービスプロバイダ(71)によってホストコンピュータデバイス(例えば、デバイス”B”(11))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。
ユーザB公開鍵(81)はまた、種々の手段を介して(例えば、通信手段(30)、フロッピィディスク、電子メールプログラム(130)その他を介して)、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”C”(12)、及びデバイス”D”(13))に伝送され得る手段である。ユーザB公開鍵(81)はまた、暗号化サービスプロバイダ(71)によって、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”C”(12)、及びデバイス”D”(13))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。ユーザB公開鍵(81)はまた、或る秘密鍵(例えば、ユーザB秘密鍵(91))にて暗号化された他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”C”(12)、及びデバイス”D”(13))上のファイルを復号できる手段である。
ユーザC公開鍵(82)は、或る秘密鍵(例えば、ユーザC秘密鍵(92))を用いて暗号化されたファイルを復号するのに用いられる手段であり、該秘密鍵はユーザC公開鍵(82)とともに、公開/秘密鍵のペアを作成する。ユーザC公開鍵(82)はまた、暗号API(70)を用いるピアツーピアネットワークプログラム(40)によって作成される手段である。ユーザC公開鍵(82)はまた、暗号化サービスプロバイダ(71)によってホストコンピュータデバイス(例えば、デバイス”C”(12))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。
ユーザC公開鍵(82)はまた、種々の手段を介して(例えば、通信手段(30)、フロッピィディスク、電子メールプログラム(130)その他を介して)、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”D”(13))に伝送され得る手段である。ユーザC公開鍵(82)はまた、暗号化サービスプロバイダ(71)によって、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”D”(13))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。ユーザC公開鍵(82)はまた、或る秘密鍵(例えば、ユーザC秘密鍵(92))にて暗号化された他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”D”(13))上のファイルを復号できる手段である。
ユーザD公開鍵(83)は、或る秘密鍵(例えば、ユーザD秘密鍵(93))を用いて暗号化されたファイルを復号するのに用いられる手段であり、該秘密鍵はユーザD公開鍵(83)とともに、公開/秘密鍵のペアを作成する。ユーザD公開鍵(83)はまた、暗号API(70)を用いるピアツーピアネットワークプログラム(40)によって作成される手段である。ユーザD公開鍵(83)はまた、暗号化サービスプロバイダ(71)によってホストコンピュータデバイス(例えば、デバイス”D”(13))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。
ユーザD公開鍵(83)はまた、種々の手段を介して(例えば、通信手段(30)、フロッピィディスク、電子メールプログラム(130)その他を介して)、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”C”(12))に伝送され得る手段である。ユーザD公開鍵(83)はまた、暗号化サービスプロバイダ(71)によって、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”C”(12))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。ユーザD公開鍵(83)はまた、或る秘密鍵(例えば、ユーザD秘密鍵(93))にて暗号化された他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”C”(12))上のファイルを復号できる手段である。
ユーザA秘密鍵(90)は、或る公開鍵(例えば、ユーザA公開鍵(80))を用いて復号化されたファイルを暗号化するのに用いられ、該公開鍵はユーザA秘密鍵(90)とともに、公開/秘密鍵のペアを作成する。ユーザA公開鍵(90)はまた、暗号API(70)を用いるピアツーピアネットワークプログラム(40)によって作成される手段である。ユーザA秘密鍵(90)はまた、暗号化サービスプロバイダ(71)によってホストコンピュータデバイス(例えば、デバイス”A”(10))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。
ユーザB秘密鍵(91)は、或る公開鍵(例えば、ユーザB公開鍵(81))を用いて復号化されたファイルを暗号化するのに用いられ、該公開鍵はユーザB秘密鍵(91)とともに、公開/秘密鍵のペアを作成する。ユーザB公開鍵(91)はまた、暗号API(70)を用いるピアツーピアネットワークプログラム(40)によって作成される手段である。ユーザB秘密鍵(91)はまた、暗号化サービスプロバイダ(71)によってホストコンピュータデバイス(例えば、デバイス”B”(11))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。
ユーザC秘密鍵(92)は、或る公開鍵(例えば、ユーザC公開鍵(82))を用いて復号化されたファイルを暗号化するのに用いられ、該公開鍵はユーザC秘密鍵(92)とともに、公開/秘密鍵のペアを作成する。ユーザC公開鍵(92)はまた、暗号API(70)を用いるピアツーピアネットワークプログラム(40)によって作成される手段である。ユーザC秘密鍵(92)はまた、暗号化サービスプロバイダ(71)によってホストコンピュータデバイス(例えば、デバイス”C”(12))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。
ユーザD秘密鍵(93)は、或る公開鍵(例えば、ユーザD公開鍵(83))を用いて復号化されたファイルを暗号化するのに用いられ、該公開鍵はユーザD秘密鍵(93)とともに、公開/秘密鍵のペアを作成する。ユーザD公開鍵(93)はまた、暗号API(70)を用いるピアツーピアネットワークプログラム(40)によって作成される手段である。ユーザD秘密鍵(93)はまた、暗号化サービスプロバイダ(71)によってホストコンピュータデバイス(例えば、デバイス”D”(13))のストレージ(23)上の不揮発性メモリ内に格納され得る手段である。
ユーザAファインドミーファイル(100)は、ピアツーピアネットワークプログラム(40)によって作成されるコンピュータファイル(例えば、テキストファイル)である。ユーザAファインドミーファイル(100)は、デバイス”A”(10)及びそのユーザに関する情報を含む。ユーザAファインドミーファイル(100)は、以下のような情報を含むことができる。デバイス”A”(10)のシステム名;デバイス”A”(10)のユーザ名;デバイス”A”(10)のIPアドレスその他である。ユーザAファインドミーファイル(100)は、ピアツーピアネットワークプログラム(40)によって作成され、ユーザ情報ファイル(50)からの情報を含むことができる。ユーザAファインドミーファイル(100)は、ピアツーピアネットワークプログラム(40)によって作成され、アプリケーションプログラミングインターフェイス(72)を用いて、ピアツーピアネットワークプログラム(40)によって得られる情報を含むことができる。ユーザAファインドミーファイル(100)は、ピアツーピアネットワークプログラム(40)が開始する度に、ピアツーピアネットワークプログラム(40)によって作成されることができ、何れの古いバージョンのユーザAファインドミーファイル(100)も、新たなバージョンに上書きされることができ、デバイス”A”(10)及び/又はそのユーザに関する情報を変更する要因となる。ユーザAファインドミーファイル(100)は、平文形式及び/又は暗号文形式で存在する。
ユーザAファインドミーファイル(100)は、デバイス”A”(10)の暗号API(70)を使用し、ユーザA秘密鍵(90)を用いて、ピアツーピアネットワークプログラム(40)によって暗号化され得る。ユーザAファインドミーファイル(100)は、デバイス”A”(10)の暗号API(70)を使用し、ユーザA公開鍵(80)を用いて、ピアツーピアネットワークプログラム(40)によって復号化され得る。ユーザAファインドミーファイル(100)は、他のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))の暗号API(70)を使用し、ユーザA公開鍵(80)を用いて、ピアツーピアネットワークプログラム(40)によって復号化され得る。ユーザAファインドミーファイル(100)は、通信手段(30)を介して、デバイス”A”(10)から他のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))に伝送され得る。
ユーザBファインドミーファイル(101)は、ピアツーピアネットワークプログラム(40)によって作成されるコンピュータファイル(例えば、テキストファイル)である。ユーザBファインドミーファイル(101)は、デバイス”B”(11)及びそのユーザに関する情報を含む。ユーザBファインドミーファイル(101)は、以下のような情報を含むことができる。デバイス”B”(11)のシステム名;デバイス”B”(11)のユーザ名;デバイス”B”(11)のIPアドレスその他である。ユーザBファインドミーファイル(101)は、ピアツーピアネットワークプログラム(40)によって作成され、ユーザ情報ファイル(50)からの情報を含むことができる。ユーザBファインドミーファイル(101)は、ピアツーピアネットワークプログラム(40)によって作成され、アプリケーションプログラミングインターフェイス(72)を用いて、ピアツーピアネットワークプログラム(40)によって得られる情報を含むことができる。
ユーザBファインドミーファイル(101)は、ピアツーピアネットワークプログラム(40)が開始する度に、ピアツーピアネットワークプログラム(40)によって作成されることができ、何れの古いバージョンのユーザBファインドミーファイル(101)も、新たなバージョンに上書きされることができ、デバイス”B”(11)及び/又はそのユーザに関する情報を変更する要因となる。ユーザBファインドミーファイル(101)は、平文形式及び/又は暗号文形式で存在する。
ユーザBファインドミーファイル(101)は、デバイス”B”(11)の暗号API(70)を使用し、ユーザB秘密鍵(91)を用いて、ピアツーピアネットワークプログラム(40)によって暗号化され得る。ユーザBファインドミーファイル(101)は、デバイス”B”(11)の暗号API(70)を使用し、ユーザB公開鍵(81)を用いて、ピアツーピアネットワークプログラム(40)によって復号化され得る。ユーザBファインドミーファイル(101)は、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”C”(12)、及びデバイス”D”(13))の暗号API(70)を使用し、ユーザB公開鍵(81)を用いて、ピアツーピアネットワークプログラム(40)によって復号化され得る。ユーザBファインドミーファイル(101)は、通信手段(30)を介して、デバイス”B”(11)から他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”C”(12)、及びデバイス”D”(13))に伝送され得る。
ユーザCファインドミーファイル(102)は、ピアツーピアネットワークプログラム(40)によって作成されるコンピュータファイル(例えば、テキストファイル)である。ユーザCファインドミーファイル(102)は、デバイス”C”(12)及びそのユーザに関する情報を含む。ユーザCファインドミーファイル(102)は、以下のような情報を含むことができる。デバイス”C”(12)のシステム名;デバイス”C”(12)のユーザ名;デバイス”C”(12)のIPアドレスその他である。ユーザCファインドミーファイル(102)は、ピアツーピアネットワークプログラム(40)によって作成され、ユーザ情報ファイル(50)からの情報を含むことができる。ユーザCファインドミーファイル(102)は、ピアツーピアネットワークプログラム(40)によって作成され、アプリケーションプログラミングインターフェイス(72)を用いて、ピアツーピアネットワークプログラム(40)によって得られる情報を含むことができる。
ユーザCファインドミーファイル(102)は、ピアツーピアネットワークプログラム(40)が開始する度に、ピアツーピアネットワークプログラム(40)によって作成されることができ、何れの古いバージョンのユーザCファインドミーファイル(102)も、新たなバージョンに上書きされることができ、デバイス”C”(12)及び/又はそのユーザに関する情報を変更する要因となる。ユーザCファインドミーファイル(102)は、平文形式及び/又は暗号文形式で存在する。
ユーザCファインドミーファイル(102)は、デバイス”C”(12)の暗号API(70)を使用し、ユーザC秘密鍵(92)を用いて、ピアツーピアネットワークプログラム(40)によって暗号化され得る。ユーザCファインドミーファイル(102)は、デバイス”C”(12)の暗号API(70)を使用し、ユーザC公開鍵(82)を用いて、ピアツーピアネットワークプログラム(40)によって復号化され得る。ユーザCファインドミーファイル(102)は、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”D”(13))の暗号API(70)を使用し、ユーザC公開鍵(82)を用いて、ピアツーピアネットワークプログラム(40)によって復号化され得る。ユーザCファインドミーファイル(102)は、通信手段(30)を介して、デバイス”C”(12)から他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”D”(13))に伝送され得る。
ユーザDファインドミーファイル(103)は ピアツーピアネットワークプログラム(40)によって作成されるコンピュータファイル(例えば、テキストファイル)である。ユーザDファインドミーファイル(103)は、デバイス”D”(13)及びそのユーザに関する情報を含む。ユーザDファインドミーファイル(103)は、以下のような情報を含むことができる。デバイス”D”(13)のシステム名;デバイス”D”(13)のユーザ名;デバイス”D”(13)のIPアドレスその他である。ユーザDファインドミーファイル(103)は、ピアツーピアネットワークプログラム(40)によって作成され、ユーザ情報ファイル(50)からの情報を含むことができる。ユーザDファインドミーファイル(103)は、ピアツーピアネットワークプログラム(40)によって作成され、アプリケーションプログラミングインターフェイス(72)を用いて、ピアツーピアネットワークプログラム(40)によって得られる情報を含むことができる。
ユーザDファインドミーファイル(103)は、ピアツーピアネットワークプログラム(40)が開始する度に、ピアツーピアネットワークプログラム(40)によって作成されることができ、何れの古いバージョンのユーザDファインドミーファイル(102)も、新たなバージョンに上書きされることができ、デバイス”D”(13)及び/又はそのユーザに関する情報を変更する要因となる。ユーザDファインドミーファイル(103)は、平文形式及び/又は暗号文形式で存在する。
ユーザDファインドミーファイル(103)は、デバイス”D”(13)の暗号API(70)を使用し、ユーザC秘密鍵(93)を用いて、ピアツーピアネットワークプログラム(40)によって暗号化され得る。ユーザDファインドミーファイル(103)は、デバイス”D”(13)の暗号API(70)を使用し、ユーザC公開鍵(83)を用いて、ピアツーピアネットワークプログラム(40)によって復号化され得る。ユーザDファインドミーファイル(103)は、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”C”(12))の暗号API(70)を使用し、ユーザD公開鍵(83)を用いて、ピアツーピアネットワークプログラム(40)によって復号化され得る。ユーザDファインドミーファイル(103)は、通信手段(30)を介して、デバイス”D”(13)から他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”C”(12))に伝送され得る。
ユーザA公開鍵BLOB(110)は、暗号化サービスプロバイダ(71)の外で公開鍵(例えば、復号鍵)を格納する手段である。また、ユーザA公開鍵BLOB(110)は、暗号API(70)を用いてピアツーピアネットワークプログラム(40)により作成される手段である。また、ユーザA公開鍵BLOB(110)は、ユーザA公開鍵(80)を格納及び転送するために使用される手段である。また、ユーザA公開鍵BLOB(110)は、通信手段(30)を介してデバイス”A”(10)から他のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))に伝送される手段である。他のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のピアツーピアネットワークプログラム(40)は、暗号API(70)を使用し、ユーザA公開鍵BLOB(110)からユーザA公開鍵(80)を取り出し、他のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))の暗号化サービスプロバイダに、夫々ユーザA公開鍵(80)を保存する。
ユーザB公開鍵BLOB(111)は、暗号化サービスプロバイダ(71)の外で公開鍵(例えば、復号鍵)を格納する手段である。また、ユーザB公開鍵BLOB(111)は、暗号API(70)を用いてピアツーピアネットワークプログラム(40)により作成される手段である。また、ユーザB公開鍵BLOB(111)は、ユーザB公開鍵(81)を格納及び転送するために使用される手段である。また、ユーザB公開鍵BLOB(111)は、通信手段(30)を介してデバイス”B”(11)から他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”C”(12)、及びデバイス”D”(13))に伝送される手段である。他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”C”(12)、及びデバイス”D”(13))のピアツーピアネットワークプログラム(40)は、暗号API(70)を使用し、ユーザB公開鍵BLOB(111)からユーザB公開鍵(81)を取り出し、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”C”(12)、及びデバイス”D”(13))の暗号化サービスプロバイダに、夫々ユーザB公開鍵(81)を保存する。
ユーザC公開鍵BLOB(112)は、暗号化サービスプロバイダ(71)の外で公開鍵(例えば、復号鍵)を格納する手段である。また、ユーザC公開鍵BLOB(112)は、暗号API(70)を用いてピアツーピアネットワークプログラム(40)により作成される手段である。また、ユーザC公開鍵BLOB(112)は、ユーザC公開鍵(82)を格納及び転送するために使用される手段である。また、ユーザC公開鍵BLOB(112)は、通信手段(30)を介してデバイス”C”(12)から他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”D”(13))に伝送される手段である。他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”D”(13))のピアツーピアネットワークプログラム(40)は、暗号API(70)を使用し、ユーザC公開鍵BLOB(112)からユーザC公開鍵(82)を取り出し、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”D”(13))の暗号化サービスプロバイダに、夫々ユーザC公開鍵(82)を保存する。
ユーザD公開鍵BLOB(113)は、暗号化サービスプロバイダ(71)の外で公開鍵(例えば、復号鍵)を格納する手段である。また、ユーザD公開鍵BLOB(113)は、暗号API(70)を用いてピアツーピアネットワークプログラム(40)により作成される手段である。また、ユーザD公開鍵BLOB(113)は、ユーザD公開鍵(83)を格納及び転送するために使用される手段である。また、ユーザD公開鍵BLOB(113)は、通信手段(30)を介してデバイス”D”(13)から他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”C”(12))に伝送される手段である。他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”C”(12))のピアツーピアネットワークプログラム(40)は、暗号API(70)を使用し、ユーザD公開鍵BLOB(113)からユーザD公開鍵(83)を取り出し、他のコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、及びデバイス”C”(12))の暗号化サービスプロバイダに、夫々ユーザD公開鍵(83)を保存する。
ファイル情報ストリーム(120)は、情報データのストリームであり、コンピュータファイルの全ファイル構造を構成する複数のストリームの一つに組み込まれている。複数のストリームは、ファイル情報ストリーム(120)が結び付けられると共に、ストレージ(23)(例えば、マイクロソフトNTFSストレージデバイス)に格納されたコンピュータファイルの全ファイル構造を構成する。また、ファイル情報ストリーム(120)は、データのストリームであり、コンピュータファイルに付加され、結び付けられ、又は関連付けされている。ファイル情報ストリーム(120)は、コンピュータファイル名、作成日、作成者、コンピュータファイルが作成されたシステム、コンピュータファイルの説明等の情報が含められ得る。ファイル情報ストリーム(120)は、アプリケーションプログラミングインターフェイス(72)を用いて、ピアツーピアネットワークプログラム(40)によって作成される。ファイル情報ストリーム(120)は、アプリケーションプログラミングインターフェイス(72)と、ユーザインターフェイス(20)を介してユーザに表示される関連情報とを用いて、ピアツーピアネットワークプログラム(40)によってアクセスされ得る。データは、如何なるタイプのデータのデジタル信号であってよい。例えば、ビテオデジタル信号、オーディオデジタル信号である。しかし、これらに限定されることはない。
電子メールプログラム(130)は、あるコンピュータデバイスから他のコンピュータデバイスへコンピュータメッセージを転送又は交換可能とする手段であり、あるトランスポートコントロールプロトコル/インターネットプロトコル通信規約(例えば、シンプルメールトランスファプログラム、ポストオフィスプログラム3、インターネットメッセージアクセスプロトコル等)を用いている。電子メールプログラム(130)は、テキスト情報、添付コンピュータファイル等を含み得る。
電子メールプログラム(130)は、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)及びデバイス”D”(13))のユーザに、公開鍵BLOB( 例えば、ユーザA公開鍵BLOB(110)、ユーザB公開鍵BLOB(111) 、ユーザC公開鍵BLOB(112)、及びユーザD公開鍵BLOB(113))を、送信元のコンピュータデバイスから他のコンピュータデバイスに、手動で又は電子的に転送することを可能にする手段である。
また、電子メールプログラム(130)は、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)及びデバイス”D”(13))のユーザに、ユーザファインドミーファイル( 例えば、ユーザAファインドミーファイル(100)、ユーザBファインドミーファイル(101) 、ユーザCファインドミーファイル(102)、及びユーザDファインドミーファイル(103))の名前を、送信元のコンピュータデバイスから他のコンピュータデバイスに、手動で又は電子的に転送することを可能にする手段である。
また、電子メールプログラム(130)は、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のピアツーピアネットワークプログラム(40)に、公開鍵BLOB( 例えば、ユーザA公開鍵BLOB(110)、ユーザB公開鍵BLOB(111) 、ユーザC公開鍵BLOB(112)、及びユーザD公開鍵BLOB(113))を、送信元のコンピュータデバイスから他のコンピュータデバイスに、自動的に又は電子的に転送することを可能にする手段である。
また、電子メールプログラム(130)は、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のピアツーピアネットワークプログラム(40)に、ユーザファインドミーファイル( 例えば、ユーザAファインドミーファイル(100)、ユーザBファインドミーファイル(101) 、ユーザCファインドミーファイル(102)、及びユーザDファインドミーファイル(103))の名前を、送信元のコンピュータデバイスから他のコンピュータデバイスに、自動的に又は電子的に転送することを可能にする手段である。
信頼性のあるメンバーのリスト(140)は、ピアツーピアネットワークプログラム(40)内の名簿であり、ユーザファインドミーファイル(例えば、ユーザAファインドミーファイル(100)、ユーザBファインドミーファイル(101) 、ユーザCファインドミーファイル(102)、及びユーザDファインドミーファイル(103))とコンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のIPアドレスとを、夫々関連づける。信頼性のあるメンバーのリスト(140)は、ピアツーピアネットワークプログラム(40)が開始される度に更新され得る。信頼性のあるメンバーのリスト(140)は、ピアツーピアネットワークプログラム(40)のユーザの要求によって、更新又はリフレッシュされ得る。信頼性のあるメンバーのリスト(140)に載ったIPアドレスは、ピアツーピアネットワークプログラム(40)によって用いられ、信頼性のある分散型ピアツーピアネットワークが確立される。
FTPプロトコル(150)は、典型的なインターネットプロトコルであり、ファイルトランスファプロトコルとして知られている。FTPプロトコル(150)は、インターネット上のコンピュータデバイス間でコンピュータファイルを転送及び/又は交換する最も簡単な方法として一般に知られている。ピアツーピアネットワークプログラム(40)は、FTPプロトコル(150)を使用することにより、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))間で、通信手段(30)を介してコンピュータファイルを転送及び/又は交換できる。ピアツーピアネットワークプログラム(40)は、FTPプロトコル(150)を使用することにより、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))間で、通信手段(30)を介して通信させる。
HTTPプロトコル(151)は、典型的なインターネットプロトコルであり、ハイパーテキストトランスファプロトコルとして知られている。HTTPプロトコル(151)は、インターネット上のコンピュータデバイス間でコンピュータファイルを転送及び/又は交換する普通の方法として一般に知られている。ピアツーピアネットワークプログラム(40)は、HTTPプロトコル(151)を使用することにより、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))間で、通信手段(30)を介してコンピュータファイルを転送及び/又は交換できる。ピアツーピアネットワークプログラム(40)は、HTTPプロトコル(151)を使用することにより、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))との間で、通信手段(30)を介して通信させる。
チャットプロトコル(152)は、コンピュータデバイス間で電子通信するためのシステムである。チャットプロトコル(152)は、一連の規則及び約束事を含んでおり、インターネットリレーチャット(IRC)として知られており、典型的なインターネットプロトコルである。チャットプロトコル(152)は、一般的に、通信手段(例えば、通信手段(30))を使用して、コンピュータデバイス(例えば、デバイス”A”(10))のユーサーと他のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))の他のユーザ間で、打ち込まれた(typed-in)メッセージのリアルタイム変換に用いられる。チャットプログラム(152)は、ピアツーピアネットワークプログラム(40)を使用することにより、ピアツーピアネットワークプログラム(40)が確立できる、信頼性のある分散型ピアツーピアネットワークと共同して、コンピュータデバイス(例えば、デバイス”A”(10))のユーサーと他のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))の他のユーザとの間で、プライベートチャットセッションを確立する。
ファイル共有プロトコル(152)は、他のインターネットプロトコル(例えば、FTPプロトコル(150)、HTTPプロトコル(151)等)を活用するために使用される
規則及び約束事の組であり、これによって、コンピュータデバイスのユーザにより入力されたクエリーに合うコンピュータファイルを求めて、コンピュータデバイス(例えば、デバイス”A”(10)、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のストレージデバイス(例えば、ストレージ(23))の指定されたファイルフォルダをサーチできる。ファイル共有プロトコル(152)は、ピアツーピアネットワークプログラム(40)により使用されて、ピアツーピアネットワークプログラム(40)が確立できる、信頼性のある分散型ピアツーピアネットワークと共同して、コンピュータデバイス(例えば、デバイス”A”(10))のユーザにより手動で入力されたリクエストに基づいて、他のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))のストレージデバイス(23)にある指定されたファイルフォルダ(例えば、信頼性のあるサーチフォルダ(62))のコンピュータファイルのサーチ及び検索を実行できる。
ユーザインターフェイス(20)によって、セットアップ実行ファイル(41)(例えば、CD−ROM、ストレージ(23)等にあるセットアップ実行ファイル(41))に接続しているコンピュータデバイスのユーザは、セットアップ実行ファイル(41)をダブルクリックして、インストールプロセスを開始する。
次に、セットアップ実行ファイル(41)は、ピアツーピアネットワークプログラム(40)をストレージ(23)にコピーすることを始める。次に、セットアップ実行ファイル(41)は、ユーザからの情報をリクエストし、ユーザは、ユーザインターフェイス(20)を介してその情報を入力する。次に、セットアップ実行ファイル(41)は、そのユーザ情報をユーザ情報ファイル(50)としてストレージ(23)に保存する。
次に、セットアップ実行ファイル(41)は、必要なあらゆる変更をオペレーティングシステム(25)のシステムレジストリに行う。
次に、セットアップ実行ファイル(41)は、ファインドミーフォルダ(60)、サーチされたファインドミー結果のフォルダ(61)、及び信頼性のあるサーチフォルダ(62)をストレージ(23)に作成する。これらのステップは、ピアツーピアネットワークプログラム(40)を実行する予定である各コンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、及びデバイス”D”(13))について行われる。
次に、ピアツーピアネットワークプログラム(40)の最初の使用の後、ピアツーピアネットワークプログラム(40)は、ホストコンピュータデバイスのユーザにそのユーザ(例えばユーザA)を識別する名前を入力するように促す。
次に、ピアツーピアネットワークプログラム(40)は、公開/秘密鍵のペアを作成するために、オペレーションシステム(25)の暗号API(70)の暗号機能を呼び出す(例えば、ピアツーピアネットワークプログラム(40)は、ウインドウズの暗号APIの”CryptAcquireContext”機能を呼び出す)。
次に、暗号API(70)は、暗号化サービスプロバイダ(71)に処理を戻す(例えば、ウインドウズの暗号化APIは、ピアツーピアネットワークプログラム(40)に対するマイクロソフトRSA/Sチャンネル暗号化サービスプロバイダに処理を戻す)。
次に、ピアツーピアネットワークプログラム(40)は、オペレーティングシステム(25)の暗号化API(70)の暗号化機能を呼び出し、暗号化サービスプロバイダ(71)に指示して、公開/秘密鍵のペアの作成を実行させる(例えば、ピアツーピアネットワークプログラム(40)は、ウインドウズの”CryptGenKey”関数を呼び出す)。
次に、暗号化API(70)は、暗号化サービスプロバイダ(71)に指示する(例えば、ウインドウズの暗号化APIは、マイクロソフトRSA/Sチャンネル暗号化サービスプロバイダに公開/秘密鍵(例えば、ユーザA公開鍵(80)及びユーザA秘密鍵(81))のペアを作成するように指示する)。
次に、ピアツーピアネットワークプログラム(40)は、ユーザAファインドミーファイル(100)のプレインテキストバージョン(例えば、テキストファイル)を作成する。現段階では、ユーザAファインドミーファイル(100)はブランクファイルである。
次に、ピアツーピアネットワークプログラム(40)は、オペレーティングシステム(25)のアプリケーションプログラミングインターフェイス(72)の機能を呼び出し、ホストコンピュータデバイス(例えば、デバイス”A”(10))の識別可能なネットワーク情報を得る(例えば、ピアツーピアネットワークプログラム(40)は、ウインドウズAPIの”CurrentIpAddress”関数を呼び出す)。
次に、アプリケーションプログラミングインターフェイス(72)は、オペレーティングシステム(25)に問い合わせを行い、ホストコンピュータデバイス(例えば、デバイス”A”(10))の識別可能なネットワーク情報を得る。そして、アプリケーションプログラミングインターフェイス(72)は、その識別可能なネットワーク情報をピアツーピアネットワークプログラム(40)に送る。
次に、ピアツーピアネットワークプログラム(40)は、識別可能なネットワーク情報を、ユーザAファインドミーファイル(100)のプレインテキストバージョンに書き込む。
次に、ピアツーピアネットワークプログラム(40)は、オペレーティングシステム(25)の暗号化API(70)の暗号化機能を呼び出し(例えば、ピアツーピアネットワークプログラム(40)は、ウインドウズ暗号化APIの”CPEncrypt”関数を呼び出す)、秘密鍵(例えば、ユーザA秘密鍵(90))でユーザAファインドミーファイル(100)を暗号化する。この時点で、ピアツーピアネットワークプログラム(40)は、本発明の他の実施例を実行するように構成される。
次に、ユーザインターフェイス(20)を用いて、ユーザがピアツーピアネットワークプログラム(40)を開始する度に、ピアツーピアネットワークプログラム(40)は、オペレーティングシステム(25)のアプリケーションプログラミングインターフェイス(72)の機能を用いて、ファイル情報ストリーム(120)を欠くコンピュータファイルを探して、信頼性のあるサーチフォルダ(62)を自動的にサーチする(例えば、ピアツーピアネットワークプログラム(40)は、ウインドウズのAPIの”FileSystemObject”オブジェクトモデルを呼び出して、コンピュータファイルを開け、書き込み、作成し、及びテストする)。
次に、ファイル情報ストリーム(120)を欠く信頼性のあるサーチフォルダ(62)の各々の各コンピュータファイルについて、ピアツーピアネットワークプログラム(40)は、オペレーティングシステム(25)のアプリケーションプログラミングインターフェイス(72)の機能を呼び出し、ユーザ情報ファイル(50)を開け、ユーザ情報ファイル(50)からの情報をファイル情報ストリーム(120)に書き込む(例えば、ピアツーピアネットワークプログラム(40)は、ウインドウズのAPIの”FileSystemObject”オブジェクトモデルを呼び出して、コンピュータファイルを開け、書き込み、作成し、及びテストする)。
また、ピアツーピアネットワークプログラム(40)によって、ホストコンピュータデバイスのユーザは、関係する各コンピュータファイルのファイル情報ストリーム(120)に他の情報を手動で入力でき、ピアツーピアネットワークプログラム(40)は、オペレーティングシステム(25)のアプリケーションプログラミングインターフェイス(72)の機能を呼び出して、このタスクを完了する。そして、ピアツーピアネットワークプログラム(40)は、ユーザが手動で入力した情報をファイル情報ストリーム(120)に書き込む(例えば、ピアツーピアネットワークプログラム(40)は、ウインドウズのAPIの”FileSystemObject”オブジェクトモデルを呼び出して、コンピュータファイルを開け、書き込み、作成し、及びテストする)。
次に、コンピュータデバイス(例えば、デバイス”A”(10))のユーザ(例えば、ユーザA)は、ユーザインターフェイス(20)を介してピアツーピアネットワークプログラム(40)にコマンドを入力し、彼らの関係する公開鍵(例えば、ユーザA公開鍵(80))を、別のコンピュータデバイスの別のユーザである受信者、又は他のコンピュータデバイスの他のユーザである複数の受信者にエクスポートする。ユーザAは、受信者又は複数の受信者の電子メールアドレスを入力する。
次に、ピアツーピアネットワークプログラム(40)は、オペレーティングシステム(25)の暗号化API(70)の機能を呼び出して、ユーザA公開鍵(80)を転送可能なコンピュータファイルを作成する(例えば、ピアツーピアネットワークプログラム(40)は、ウインドウズの暗号化APIの”CryptExportKey”関数を呼び出して、ユーザA公開鍵の公開鍵BLOB(110)を生成する)。
次に、ピアツーピアネットワークプログラム(40)は、デバイス”A”(10)の電子メールプログラム(130)に指示し、ユーザAファインドミーファイル(110)の名前及びユーザA公開鍵BLOB(110)のコピーが、受信者又は複数の受信者に送信される。
次に、受信者のコンピュータデバイス(例えば、デバイス”B”(11))の電子メールプログラム(130)に、ユーザAからの送信から、ユーザAファインドミーファイル(110)の名前と、ユーザA公開鍵BLOB(110)のコピーとを受け取る。
次に、デバイス”B”(11)のユーザは(ユーザAからの送信から、ユーザAファインドミーファイル(110)の名前と、ユーザA公開鍵BLOB(110)のコピーとを受け取った後)、ユーザインターフェイス(20)を介して、ユーザA公開鍵(80)をインポートするように、ピアツーピアネットワークプログラム(40)に指示する。
次に、ピアツーピアネットワークプログラム(40)は、デバイス”B”(11)のオペレーティングシステム(25)の暗号化API(70)に指示し、ユーザA公開鍵(80)は、ユーザA公開鍵BLOB(110)から暗号化サービスプロバイダ(71)にインポートされる(例えば、ピアツーピアネットワークプログラム(40)は、ウインドウズの暗号化APIの”CryptImportKey”関数を呼び出し、ウインドウズの暗号化APIは、ユーザA公開鍵BLOB(110)からユーザA公開鍵(80)を取り出し、そして、ウインドウズの暗号化APIは、マイクロソフトRSA/Sチャンネル暗号化サービスプロバイダにユーザA公開鍵(80)をインポートする)。
次に、ピアツーピアネットワークプログラム(40)は、(電子メール送信から受け取った)ユーザAファインドミーファイル(100)の名前及びユーザA公開鍵(80)間の関係を確立する(又はマッピングする)信頼性のあるメンバーリスト(140)に、エントリーを書き込む。
次に、デバイス”A”(10)のユーザ(例えば、ユーザA)は、デバイス”A”(10)のユーザインターフェイス(20)を介してピアツーピアネットワークプログラム(40)に指示し、通信手段(30)への接続を介して、信頼性のあるメンバーリスト(140)に載った(通信手段(30)に接続された)メンバー(ピアツーピアネットワークプログラム(40)が確立できる、信頼性のあるピアツーピアネットワークのメンバーである)を、(通信手段(30)を介して)サーチする。
次に、ピアツーピアネットワークプログラム(40)は、信頼性のあるメンバーリスト(140)のコンピュータファイル名のリストにアクセスし、ファイル共有プロトコル(153)を用いて、信頼性のないピアツーピアネットワークのサーチリクエストを実行し、信頼性のあるメンバーリスト(140)に載ったコンピュータファイル名に合致するコンピュータファイル名を探す。
次に、別のコンピュータデバイス(例えば、デバイス”B”(11))のピアツーピアネットワークプログラム(40)は、種々のコンピュータファイル(例えば、ユーザ”ファインドミー”ファイル)のサーチリクエストを受信し、送信プロトコル(例えば、FTPプロトコル(150)、HTTPプロトコル(151))を用いて、サーチリクエストと合致するコンピュータファイル(例えば、ユーザBファインドミーファイル(101))を、デバイス”A”(10)に送信する。
次に、デバイス”A”(10)のピアツーピアネットワークプログラム(40)は、送信からユーザBファインドミーファイル(101)を受け取り、デバイス”A”(10)のストレージ(23)のファインドミー結果のフォルダ(61)内にユーザBファインドミーファイル(101)を保存する。
次に、ピアツーピアネットワークプログラム(40)は、デバイス”A”(10)のオペレーティングシステム(25)の暗号化API(70)に指示し、暗号化サービスプロバイダ(71)を利用して、信頼性のあるメンバーリスト(140)内のユーザAファインドミーファイル(101)に関する公開鍵を用いてユーザAファインドミーファイル(101)を復号化する(例えば、ピアツーピアネットワークプログラム(40)は、ウインドウズの暗号化APIの”CPDecrypt”関数を呼び出し、ウインドウズの暗号化APIは、マイクロソフトRSA/Sチャンネル暗号化サービスプロバイダからユーザB公開鍵(81)を呼び出し、そして、ウインドウズの暗号化APIは、ユーザBファインドミーファイル(101)を復号化し、ユーザBファインドミーファイル(101)のプレインテキストバージョンを作成する)。
次に、デバイス”A”(10)のピアツーピアネットワークプログラム(40)は、ユーザBファインドミーファイル(101)のプレインテキストバージョンを開けて、識別可能なネットワーク情報(例えば、デバイス”B”(11)のIPアドレス)を読み出す。そして、信頼性のあるメンバーリスト(140)にエントリーを書き込む。該メンバーリスト(140)は、デバイス”B”(11)の識別可能なネットワーク情報、ユーザBファインドミーファイル(101)の名前、及びユーザBの名前を含む。この時点で、デバイス”A”(10)のユーザは、信頼性のあるメンバーリスト(140)内のメンバー毎に載ったIPアドレスを利用して、ピアツーピアネットワークプログラム(40)を用いて、信頼性のある分散型ピアツーピアネットワークを確立できる。
ピアツーピアネットワークプログラム(40)のユーザは、信頼性のある分散型ピアツーピアネットワークを利用して、信頼性のあるチャットセッションを確立できる。これは、コンピュータデバイス(例えば、デバイス”A”(10))のユーザが、ユーザインターフェイス(20)を介して、ピアツーピアネットワークプログラム(40)に指示する場合に達成されて、信頼性のあるメンバーリスト(140)に載ったユーザが決めたメンバーとチャットセッションを確立できる。
次に、ピアツーピアネットワークプログラム(40)は、メンバーの信頼性のあるメンバーリスト(140)内の識別可能なネットワーク情報(例えば、メンバーのIPアドレス)を読み出し、そして、ピアツーピアネットワークプログラム(40)は、チャットプロトコル(152)を用いて、チャットセッションリクエストをメンバー(例えば、ユーザB、ユーザC、ユーザD等)のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)等)に送信する。
そして、各コンピュータデバイスは、デバイス”A”(10)の信頼性のあるメンバーリスト(140)内にメンバー毎に載った識別可能なネットワーク情報に合致する、識別可能なネットワーク情報(例えば、IPアドレス)を利用して、通信手段(30)に接続される。各コンピュータデバイスは、チャットプロトコル(152)を利用して、デバイス”A”(10)から送信されたチャットセッションリクエストを受信する。そして、各コンピュータデバイスは、コンピュータデバイス各々のユーザインターフェイス(20)を介して、個々のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)等)のユーザ(例えば、ユーザB、ユーザC、ユーザD等)に通知する。これにて、信頼性のあるネットワークのメンバーによってチャットセッションが開始される。
次に、個々のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)等)のユーザ(例えば、ユーザB、ユーザC、ユーザD等)は、コンピュータデバイス各々のユーザインターフェイス(20)を介して、チャットセッションを受け入れる又は拒否するように、ピアツーピアネットワークプログラム(40)に指示する。
個々のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)等)のユーザ(例えば、ユーザB、ユーザC、ユーザD等)が、コンピュータデバイス各々のユーザインターフェイス(20)を介して、チャットセッションを拒否するようにピアツーピアネットワークプログラム(40)に指示する場合、ピアツーピアネットワークプログラム(40)は、チャットプロトコル(152)を利用して、チャットセッションを拒否し、デバイス”A”(10)のピアツーピアネットワークプログラム(40)に拒否通知を送信する。そして、デバイス”A”(10)のピアツーピアネットワークプログラム(40)は、デバイス”A”(10)のユーザ(例えば、ユーザA)に、チャットセッションが拒否された旨を通知する。そして、デバイス”B”(11)のピアツーピアネットワークプログラム(40)は、チャットプロトコル(152)を利用して、チャットセッションを終了する。
個々のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)等)のユーザ(例えば、ユーザB、ユーザC、ユーザD等)が、コンピュータデバイス各々のユーザインターフェイス(20)を介して、チャットセッションを受け入れるようにピアツーピアネットワークプログラム(40)に指示する場合、ピアツーピアネットワークプログラム(40)は、チャットプロトコル(152)を利用してチャットセッションを受け入れ、そして、ピアツーピアネットワークプログラム(40)は、チャットプロトコル(152)を利用してチャットセッションを維持する。
ピアツーピアネットワークプログラム(40)のユーザは、信頼性のある分散型ピアツーピアネットワークを利用して、信頼性のあるファイル共有又はサーチを行える。これは、コンピュータデバイス(例えば、デバイス”A”(10))のユーザが、ユーザインターフェイス(20)を介してピアツーピアネットワークプログラム(40)に指示する場合に達成され、ユーザインターフェイス(20)を介して所望のコンピュータファイル名を入力することによって、信頼性のあるメンバーリスト(140)に載ったメンバーにコントロール又は動作されるコンピュータデバイスのファイルサーチが確立される。
次に、ピアツーピアネットワークプログラム(40)は、メンバーの信頼性のあるメンバーリスト(140)内の識別可能なネットワーク情報(例えば、メンバーのIPアドレス)を読み出し、そして、ピアツーピアネットワークプログラム(40)は、ファイル共有プロトコル(153)を用いて、ユーザAによりリクエストされたコンピュータファイルのサーチリクエストを、メンバー(例えば、ユーザB、ユーザC、ユーザD等)の信頼性のあるメンバーリスト(140)内に載ったコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)等)に送信する。
各コンピュータデバイスは、デバイス”A”(10)の信頼性のあるメンバーリスト(140)内にメンバー毎に載った識別可能なネットワーク情報に合致する、識別可能なネットワーク情報(例えば、IPアドレス)を利用して、通信手段(30)に接続される。ピアツーピアネットワークプログラム(40)は実行されており、各コンピュータデバイスは、ファイル共有プロトコル(153)を利用して、デバイス”A”(10)から送信されるファイルサーチリクエストを受信する。そして、個々のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)等)のピアツーピアネットワークプログラム(40)は、信頼性のあるサーチフォルダ(62)内でリクエストされたファイルをサーチする。
個々のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)等)のピアツーピアネットワークプログラム(40)によって、リクエストされたコンピュータファイルが、各々の信頼性のあるサーチフォルダ(62)内に配置されていない場合、ピアツーピアネットワークプログラム(40)は応答しない。
個々のコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)等)のピアツーピアネットワークプログラム(40)によって、リクエストされたコンピュータファイルが、各々の信頼性のあるサーチフォルダ(62)内に配置されている場合、ピアツーピアネットワークプログラム(40)は、適合するコンピュータファイルに関係するファイルストリーム(120)内で見つけられるあらゆる情報と共に、適合するコンピュータファイル名を、デバイス”A”(10)のピアツーピアネットワークプログラム(40)に送信する。
次に、デバイス”A”(10)のピアツーピアネットワークプログラム(40)は、サーチリクエストに応答した任意の及び/又は全てのコンピュータデバイス(例えば、デバイス”B”(11)、デバイス”C”(12)、デバイス”D”(13)等)から受信した、コンピュータファイル名と、適合するコンピュータファイルに関係するファイル情報ストリーム(120)で見つけられるあらゆる情報とを、ユーザインターフェイス(20)を介して表示する。
次に、デバイス”A”(10)のユーザは、ユーザインターフェイス(20)を介して、ピアツーピアネットワークプログラム(40)が信頼性のあるピアツーピアネットワークを介してダウンロードすべき1つのコンピューターファイル又は複数のコンピューターファイルを選択する。
次に、信頼性のあるメンバーリスト(140)内にあり、ユーザAに選択された特定の1つのコンピューターファイル又は複数のコンピューターファイルに関係する識別可能なネットワーク情報(例えば、1つのコンピュータデバイス及び/又は複数のコンピュータデバイスのIPアドレス)を利用し、デバイス”A”(10)のピアツーピアネットワークプログラム(40)は、通信プロトコル(例えば、FTPプロトコル(150)、HTTPプロトコル(151))を用いて、1つのコンピュータデバイス及び/又は複数のコンピュータデバイスにダウンロードリクエストを送信する。
次に、ユーザAに選択された1つのコンピューターファイル又は複数のコンピューターファイルを含む1つのコンピュータデバイス及び/又は複数のコンピュータデバイスの各々におけるピアツーピアネットワークプログラム(40)は、通信プロトコル(例えば、FTPプロトコル(150)、HTTPプロトコル(151))を用いて、1つのコンピューターファイル又は複数のコンピューターファイルのダウンロードを開始する。
次に、デバイス”A”(10)のピアツーピアネットワークプログラム(40)は、ダウンロードされた1つのコンピューターファイル又は複数のコンピューターファイルを信頼性のあるサーチフォルダ(62)に受け取って保存する。
説明目的で示した前述の実施例において発明を詳細に説明したが、このような詳細な説明は単にその目的のためであり、特許請求の範囲に記載されている場合を除き、当該分野の専門家であれば、発明の精神及び範囲から逸脱することなく変形を成し得ることは理解されるべきである。

Claims (2)

  1. 通信手段を介して接続された複数のコンピュータデバイスを具えるシステムにおいて、
    前記複数のコンピュータデバイスの各コンピュータデバイスは、
    ピアツーピアネットワークプログラムを実行するプロセッサと、
    メンバーリストを格納するストレージと、
    前記通信手段を介して、その他のコンピュータデバイスと通信するトランシーバと、
    を具えており、
    前記ピアツーピアネットワークプログラムを実行する前記プロセッサは、ファイルを暗号化及び復号化する暗号化アプリケーションプログラミングインターフェイスを使用して、前記プロセッサを具えるコンピュータデバイスに係る公開鍵及び秘密鍵の対を作成し、
    前記ピアツーピアネットワークプログラムを実行する前記プロセッサは、前記プロセッサを具えるコンピュータデバイスのIPアドレスを含むファインドミーファイルを作成し、前記暗号化アプリケーションプログラミングインターフェイスを使用して、前記秘密鍵を用いて前記ファインドミーファイルを暗号化し、前記ファインドミーファイルの名前及び前記公開鍵を、前記トランシーバを用いて前記その他のコンピュータデバイスに送信し、
    前記ピアツーピアネットワークプログラムを実行する前記プロセッサは、前記プロセッサを具えるコンピュータデバイスが前記その他のコンピュータデバイスの各々のファインドミーファイルの名前及び公開鍵を前記トランシーバを用いて受信すると、受信した名前を有するファインドミーファイルのサーチリクエストを前記その他のコンピュータデバイスに前記トランシーバを用いて送信し、
    前記ピアツーピアネットワークプログラムを実行する前記プロセッサは、前記プロセッサを具えるコンピュータデバイスが前記その他のコンピュータデバイスの各々のファインドミーファイルを前記トランシーバを用いて受信すると、受信した公開鍵を用いて受信したファインドミーファイルを復号化して、前記ストレージの所定の第1フォルダ内に保存し、前記その他のコンピュータデバイスの各々のIPアドレスを前記メンバーリストに記載し、
    前記ピアツーピアネットワークプログラムを実行する前記プロセッサは、前記プロセッサを具えるコンピュータデバイスが、前記その他のコンピュータデバイスの各々から前記プロセッサを具えるコンピュータデバイスのファインドミーファイルのサーチリクエストを、前記トランシーバを用いて受信すると、前記プロセッサを具えるコンピュータデバイスのファインドミーファイルを前記その他のコンピュータデバイスの各々に前記トランシーバを用いて送信し、
    前記ピアツーピアネットワークプログラムを実行する前記プロセッサは、前記メンバーリストにIPアドレスが記載されたコンピュータデバイスと前記プロセッサを具えるコンピュータデバイスとの間で、チャットセッションを確立し、又は、ファイルの共有若しくはサーチを行うシステム。
  2. 前記ピアツーピアネットワークプログラムを実行する前記プロセッサは、前記プロセッサを具えるコンピュータデバイスのユーザによって手入力された情報と、前記プロセッサを具えるコンピュータデバイスのオペレーションシステムを利用して自動的に収集した情報とを用いて、前記プロセッサを具えるコンピュータデバイスに固有の情報を含むユーザ情報ファイルを作成し、
    前記ストレージの所定の第2フォルダは、前記メンバーリストにIPアドレスが記載されたコンピュータデバイスと前記プロセッサを具えるコンピュータデバイスとの間で、共有又はサーチされるファイルを格納し、前記ピアツーピアネットワークプログラムを実行する前記プロセッサは、前記ユーザ情報ファイルからの情報を含む情報データであるファイル情報ストリームを作成し、前記共有又はサーチされるファイルには、前記ファイル情報ストリームが付加されている、請求項1に記載のシステム。
JP2009185480A 2000-11-10 2009-08-10 信頼性のある分散型ピアツーピアネットワークを確立するシステム Expired - Lifetime JP4705990B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/710,380 2000-11-10
US09/710,380 US7903822B1 (en) 2000-11-10 2000-11-10 Method and system for establishing a trusted and decentralized peer-to-peer network

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002541509A Division JP4598361B2 (ja) 2000-11-10 2001-11-08 信頼性のある分散型ピアツーピアネットワークを確立する方法及びシステム

Publications (2)

Publication Number Publication Date
JP2010033580A JP2010033580A (ja) 2010-02-12
JP4705990B2 true JP4705990B2 (ja) 2011-06-22

Family

ID=24853808

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2002541509A Expired - Lifetime JP4598361B2 (ja) 2000-11-10 2001-11-08 信頼性のある分散型ピアツーピアネットワークを確立する方法及びシステム
JP2009185480A Expired - Lifetime JP4705990B2 (ja) 2000-11-10 2009-08-10 信頼性のある分散型ピアツーピアネットワークを確立するシステム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2002541509A Expired - Lifetime JP4598361B2 (ja) 2000-11-10 2001-11-08 信頼性のある分散型ピアツーピアネットワークを確立する方法及びシステム

Country Status (9)

Country Link
US (4) US7903822B1 (ja)
EP (1) EP1332428B1 (ja)
JP (2) JP4598361B2 (ja)
AU (1) AU2002220218A1 (ja)
CY (1) CY1114950T1 (ja)
DK (1) DK1332428T3 (ja)
ES (1) ES2428867T3 (ja)
PT (1) PT1332428E (ja)
WO (1) WO2002039253A1 (ja)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7903822B1 (en) * 2000-11-10 2011-03-08 DMT Licensing, LLC. Method and system for establishing a trusted and decentralized peer-to-peer network
JP4339557B2 (ja) * 2002-07-05 2009-10-07 富士通株式会社 情報共有方法、情報共有装置及び情報共有プログラム
US9178940B2 (en) 2005-04-12 2015-11-03 Tiversa Ip, Inc. System and method for detecting peer-to-peer network software
USRE47628E1 (en) * 2005-04-12 2019-10-01 Kroll Information Assurance, Llc System for identifying the presence of peer-to-peer network software applications
US8606941B2 (en) * 2007-05-02 2013-12-10 Murata Machinery, Ltd. Relay server and relay communication system
US8671121B2 (en) * 2007-11-26 2014-03-11 International Business Machines Corporation Model augmentation in a model-driven application development environment
EP2099165A1 (en) * 2008-03-03 2009-09-09 Thomson Licensing Deterministic back-off method and apparatus for peer-to-peer communications
US8286171B2 (en) 2008-07-21 2012-10-09 Workshare Technology, Inc. Methods and systems to fingerprint textual information using word runs
US9092636B2 (en) 2008-11-18 2015-07-28 Workshare Technology, Inc. Methods and systems for exact data match filtering
JP4770962B2 (ja) * 2009-03-31 2011-09-14 ブラザー工業株式会社 通信装置
JP4770961B2 (ja) * 2009-03-31 2011-09-14 ブラザー工業株式会社 通信装置
US10783326B2 (en) 2013-03-14 2020-09-22 Workshare, Ltd. System for tracking changes in a collaborative document editing environment
US20120136862A1 (en) 2010-11-29 2012-05-31 Workshare Technology, Inc. System and method for presenting comparisons of electronic documents
US11030163B2 (en) 2011-11-29 2021-06-08 Workshare, Ltd. System for tracking and displaying changes in a set of related electronic documents
US9170990B2 (en) 2013-03-14 2015-10-27 Workshare Limited Method and system for document retrieval with selective document comparison
US9613340B2 (en) 2011-06-14 2017-04-04 Workshare Ltd. Method and system for shared document approval
US10880359B2 (en) 2011-12-21 2020-12-29 Workshare, Ltd. System and method for cross platform document sharing
US10574729B2 (en) 2011-06-08 2020-02-25 Workshare Ltd. System and method for cross platform document sharing
US10963584B2 (en) * 2011-06-08 2021-03-30 Workshare Ltd. Method and system for collaborative editing of a remotely stored document
KR20140031468A (ko) * 2012-08-31 2014-03-13 주식회사 팬택 휴대 단말 및 이의 컨텐츠 공유 방법
US20140179229A1 (en) * 2012-12-24 2014-06-26 Arthur Lin Peer-to-peer wireless transmission system and method thereof
US10911492B2 (en) 2013-07-25 2021-02-02 Workshare Ltd. System and method for securing documents prior to transmission
US9870462B2 (en) * 2014-09-22 2018-01-16 Intel Corporation Prevention of cable-swap security attack on storage devices
US9641400B2 (en) 2014-11-21 2017-05-02 Afero, Inc. Internet of things device for registering user selections
US20160180100A1 (en) 2014-12-18 2016-06-23 Joe Britt System and method for securely connecting network devices using optical labels
US10291595B2 (en) 2014-12-18 2019-05-14 Afero, Inc. System and method for securely connecting network devices
US9832173B2 (en) 2014-12-18 2017-11-28 Afero, Inc. System and method for securely connecting network devices
US11182551B2 (en) 2014-12-29 2021-11-23 Workshare Ltd. System and method for determining document version geneology
US10133723B2 (en) 2014-12-29 2018-11-20 Workshare Ltd. System and method for determining document version geneology
US10045150B2 (en) 2015-03-30 2018-08-07 Afero, Inc. System and method for accurately sensing user location in an IoT system
US9704318B2 (en) 2015-03-30 2017-07-11 Afero, Inc. System and method for accurately sensing user location in an IoT system
US9717012B2 (en) 2015-06-01 2017-07-25 Afero, Inc. Internet of things (IOT) automotive device, system, and method
US9699814B2 (en) 2015-07-03 2017-07-04 Afero, Inc. Apparatus and method for establishing secure communication channels in an internet of things (IoT) system
US9729528B2 (en) * 2015-07-03 2017-08-08 Afero, Inc. Apparatus and method for establishing secure communication channels in an internet of things (IOT) system
US10015766B2 (en) 2015-07-14 2018-07-03 Afero, Inc. Apparatus and method for securely tracking event attendees using IOT devices
US11763013B2 (en) 2015-08-07 2023-09-19 Workshare, Ltd. Transaction document management system and method
KR101757550B1 (ko) * 2015-10-21 2017-07-13 재단법인대구경북과학기술원 기기 간 파일 송수신 시스템 및 기기 간 파일 송수신 방법
US9793937B2 (en) 2015-10-30 2017-10-17 Afero, Inc. Apparatus and method for filtering wireless signals
US10178530B2 (en) 2015-12-14 2019-01-08 Afero, Inc. System and method for performing asset and crowd tracking in an IoT system
US10523437B2 (en) * 2016-01-27 2019-12-31 Lg Electronics Inc. System and method for authentication of things
KR101795695B1 (ko) * 2016-07-14 2017-12-01 주식회사 코인플러그 메신저 서비스를 통하여 송수신하는 데이터에 대한 기록 서비스 및 검증 서비스를 제공하는 방법, 및 이를 이용한 서버
US10666658B2 (en) * 2017-01-30 2020-05-26 Ncr Corporation Trusted network entity secure connectivity
US11743321B2 (en) 2021-11-12 2023-08-29 Microsoft Technology Licensing, Llc Linked file engagement

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11259348A (ja) * 1998-01-26 1999-09-24 Internatl Business Mach Corp <Ibm> ボリュ―ムのスナップショット・コピ―を行う装置及び方法
JP2000137641A (ja) * 1998-10-05 2000-05-16 Backweb Technologies Ltd 分散クライアントベ―スのデ―タキャッシングシステム
WO2000028428A1 (en) * 1998-11-06 2000-05-18 Mitsubishi Denki Kabushiki Kaisha Agent method and computer system

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0664477B2 (ja) 1980-08-04 1994-08-22 富士通株式会社 音声合成装置
JPH01303988A (ja) 1988-06-01 1989-12-07 Hitachi Ltd 連続画像符号化方法および復号方法ならびに符号化装置および復号装置
US5099235A (en) 1990-05-14 1992-03-24 Hughes Aircraft Company Method for transferring data through a network of intelligent control stations using decentralized control techniques
JPH05341793A (ja) * 1991-04-19 1993-12-24 Pioneer Electron Corp カラオケ演奏装置
DE69328325T2 (de) 1992-05-18 2000-08-24 Canon K.K., Tokio/Tokyo Kodierungs- und Dekodierungsvorrichtung
JP2528446B2 (ja) 1992-09-30 1996-08-28 株式会社ハドソン 音声画像処理装置
JPH06314092A (ja) * 1993-04-28 1994-11-08 Toshiba Corp 文字画像用記録再生装置
US5918018A (en) 1996-02-09 1999-06-29 Secure Computing Corporation System and method for achieving network separation
US6167432A (en) * 1996-02-29 2000-12-26 Webex Communications, Inc., Method for creating peer-to-peer connections over an interconnected network to facilitate conferencing among users
JPH10155040A (ja) 1996-09-30 1998-06-09 Nissin Electric Co Ltd ダイアルアップ接続通信機器の呼び出し方法、および、それを用いた監視制御システム
JP3592004B2 (ja) * 1996-10-31 2004-11-24 キヤノン株式会社 情報共有管理システム及び情報共有システム管理装置と方法
US5987376A (en) * 1997-07-16 1999-11-16 Microsoft Corporation System and method for the distribution and synchronization of data and state information between clients in a distributed processing system
EA002886B1 (ru) 1997-11-13 2002-10-31 Хайперспейс Коммьюникейшнз, Инк. Система пересылки файлов
WO2000007329A1 (fr) * 1998-07-30 2000-02-10 Sony Corporation Systeme de traitement de contenu
US6363154B1 (en) * 1998-10-28 2002-03-26 International Business Machines Corporation Decentralized systems methods and computer program products for sending secure messages among a group of nodes
JP2000165943A (ja) * 1998-11-24 2000-06-16 Kyocera Corp 加入者情報管理システム
US6256737B1 (en) 1999-03-09 2001-07-03 Bionetrix Systems Corporation System, method and computer program product for allowing access to enterprise resources using biometric devices
US6980660B1 (en) * 1999-05-21 2005-12-27 International Business Machines Corporation Method and apparatus for efficiently initializing mobile wireless devices
US20010044879A1 (en) * 2000-02-18 2001-11-22 Moulton Gregory Hagan System and method for distributed management of data storage
US6751603B1 (en) * 2000-05-16 2004-06-15 Sun Microsystems, Inc. Autocomplete method and apparatus for data file selection
US6701344B1 (en) * 2000-07-31 2004-03-02 The Boeing Company Distributed game environment
US7903822B1 (en) * 2000-11-10 2011-03-08 DMT Licensing, LLC. Method and system for establishing a trusted and decentralized peer-to-peer network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11259348A (ja) * 1998-01-26 1999-09-24 Internatl Business Mach Corp <Ibm> ボリュ―ムのスナップショット・コピ―を行う装置及び方法
JP2000137641A (ja) * 1998-10-05 2000-05-16 Backweb Technologies Ltd 分散クライアントベ―スのデ―タキャッシングシステム
WO2000028428A1 (en) * 1998-11-06 2000-05-18 Mitsubishi Denki Kabushiki Kaisha Agent method and computer system

Also Published As

Publication number Publication date
US20140304501A1 (en) 2014-10-09
US8245036B2 (en) 2012-08-14
EP1332428B1 (en) 2013-07-31
DK1332428T3 (da) 2013-11-04
AU2002220218A1 (en) 2002-05-21
JP2010033580A (ja) 2010-02-12
US20120278617A1 (en) 2012-11-01
WO2002039253A1 (en) 2002-05-16
EP1332428A1 (en) 2003-08-06
JP4598361B2 (ja) 2010-12-15
ES2428867T3 (es) 2013-11-12
EP1332428A4 (en) 2008-03-05
JP2004513453A (ja) 2004-04-30
US7903822B1 (en) 2011-03-08
PT1332428E (pt) 2013-08-22
CY1114950T1 (el) 2016-12-14
US8769273B2 (en) 2014-07-01
US20110022839A1 (en) 2011-01-27

Similar Documents

Publication Publication Date Title
JP4705990B2 (ja) 信頼性のある分散型ピアツーピアネットワークを確立するシステム
US7127613B2 (en) Secured peer-to-peer network data exchange
US7937752B2 (en) Systems and methods for authenticating communications in a network medium
US7533172B2 (en) Advertisements for peer-to-peer computing resources
US8738750B2 (en) System and method for efficient replication of and access to application specific environments and data
JP4596554B2 (ja) 暗号化されたhttpsネットワーク・パケットを、セキュアなウェブ・サーバ外部での復号なしに特定のurl名および他のデータにマッピングするための、方法およびシステム(マッピングすること)
US7376834B2 (en) System and method for securely controlling communications
US20060195595A1 (en) System and method for globally and securely accessing unified information in a computer network
EP2172852A2 (en) System and method for globally and securely accessing unified information in a computer network
JP2003233589A (ja) 複数のユーザ間で個人用機器を安全に共有する方法
US20070220563A1 (en) Method and apparatus for media sharing
US20070271106A1 (en) System and method for secure internet channeling agent
WO2004079581A1 (en) Virtual private network between computing network and remote device
JP2010510568A (ja) リソース伝送方法及び情報提供方法
US11729334B2 (en) Communication system, device, and recording medium for remote access to electronic device through relaying device and converter
CN102714653A (zh) 用于访问私人数字内容的***和方法
KR100419400B1 (ko) 인터넷 기반의 실시간 도면 공동 작업 및 커뮤니케이션시스템의 운용 방법
JP2006018430A (ja) 情報処理装置、ネットワークシステム、プログラム、データ構造及び記憶媒体
KR20030088253A (ko) 피투피 기반의 원격지 컴퓨터 관리를 위한 연결요청중계시스템 및 그 방법
US11218540B1 (en) System and method for efficient replication of and access to application specific environments and data
JP5178734B2 (ja) P2pシステムにおけるピア管理サーバー及びピア管理方法
Kaplan Collaborative framework for high-performance p2p-based data transfer in scientific computing
KR20080022489A (ko) 데이터 전송 제어 방법, 콘텐트 전송 제어 방법 및 drm상호 호환 시스템

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100104

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100914

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101207

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101210

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110111

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110308

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110314

R150 Certificate of patent or registration of utility model

Ref document number: 4705990

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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

EXPY Cancellation because of completion of term