(57)【特許請求の範囲】
【請求項１】
ネットワーク内のエンド・ユーザのプライバシ保護の方法であって、
１つまたは複数のエンド・ユーザに関連するユーザ消費データを受信するステップであって、前記ユーザ消費データは、少なくとも、関心プロファイルのスライスと、関心プロファイルの前記スライスの関連する関心グループｉｄとを含み、前記ユーザ消費データは、ネットワーク匿名化層を介して受信される、ステップと、
分散ハッシュ・テーブル（ＤＨＴ）ルーティング機構に基づいて複数の媒介物ノードの中からの関心グループ・アグリゲータ・ノードに前記ユーザ消費データをルーティングするステップであって、前記関心グループ・アグリゲータ・ノードは、前記ユーザ消費データ内で表される前記関心グループｉｄに関連する、ステップと
を含む方法。
【請求項２】
前記ネットワーク匿名化層は、オニオン・ルーティング・フレームワークに基づき、前記オニオン・ルーティング・フレームワークは、前記１つまたは複数のユーザのローカル・クライアントと前記複数の媒介物ノードとの間の匿名通信を提供する、請求項１に記載の方法。
【請求項３】
前記方法は、アプリケーション・プログラミング・インターフェース（ＡＰＩ）層を介してＳｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＯＡＰ）に基づいて前記１つまたは複数のエンド・ユーザの中からのエンド・ユーザのローカル・クライアントから命令を受信するステップをさらに含み、前記ローカル・クライアントは、前記命令を送信するのにウェブ・サービスＡＰＩを利用し、前記命令は、前記エンド・ユーザに関連する情報を示す、請求項１に記載の方法。
【請求項４】
ルーティングおよびマッピング層は、前記ＤＨＴルーティング機構を実施するＰＡＳＴＲＹフレームワークに基づき、前記ＰＡＳＴＲＹフレームワークは、前記複数の媒介物ノードの間でのデータのルーティングを提供する、請求項１に記載の方法。
【請求項５】
受信する前記ステップは、前記複数の媒介物ノードの中からランダムに選択されたプロファイル・スライス・コレクタ・ノードによって、前記１つまたは複数のエンド・ユーザの中からのエンド・ユーザのローカル・クライアントから前記ユーザ消費データを収集するステップを含む、請求項１に記載の方法。
【請求項６】
前記方法は、少なくとも前記受信されたユーザ消費データに基づいて前記１つまたは複数のエンド・ユーザの中からのエンド・ユーザのローカル・クライアントに情報を提供するステップをさらに含み、前記情報は、前記ユーザ消費データに基づいて前記エンド・ユーザに提供されるパーソナライズされたコンテンツおよび推奨サービスを示す、請求項１に記載の方法。
【請求項７】
前記情報は、前記ローカル・クライアントによって実行される隠しＴＯＲサーバへのＴＯＲ隠しサービスに基づいて前記関心グループ・アグリゲータ・ノードによって前記ローカル・クライアントに提供される、請求項６に記載の方法。
【請求項８】
前記方法は、
匿名チャネルを介して前記１つまたは複数のエンド・ユーザの中からのエンド・ユーザのローカル・クライアントから匿名ルックアップ呼び出しを受信するステップであって、前記匿名呼び出しは、前記複数の媒介物ノードの中からのランダムな媒介物ノードによって受信される、ステップと、
作成された転送する匿名チャネル上で逆の経路を介して前記ランダムな媒介物ノードを介して前記ローカル・クライアントに情報を提供するステップと
をさらに含む、請求項１に記載の方法。
【請求項９】
少なくとも１つのローカル・クライアント（１１２）に接続可能なプライバシ保護ミドルウェア・システム（１０４）を含むネットワーク内のエンド・ユーザのプライバシを保護するプライバシ保護システム（１０４）であって、プライバシ保護ミドルウェア・システム（１０４）は、複数の媒介物ノードを含み、少なくとも１つの媒介物ノードは、
プロセッサ（２０２）と、
前記プロセッサ（２０２）に結合されたメモリ（２０６）であって、前記メモリ（２０６）は、
少なくとも１つのエンド・ユーザの前記少なくとも１つのローカル・クライアント（１１２）からユーザ消費データを受信するように構成されたネットワーキング・モジュール（２１８）であって、前記ユーザ消費データ（２２４）は、少なくとも、関心プロファイルのスライスと、前記少なくとも１つのエンド・ユーザの関連する関心グループｉｄとを含み、前記ユーザ消費データ（２２４）は、ネットワーク匿名化層（２５０）を介して受信される、ネットワーキング・モジュール（２１８）と、
分散ハッシュ・テーブル（ＤＨＴ）ルーティング機構に基づいて前記複数の媒介物ノードの中からの関心グループ・アグリゲータ・ノードに前記ユーザ消費データ（２２４）をルーティングするように構成されたルーティング・モジュール（２１６）であって、前記関心グループ・アグリゲータ・ノードは、前記ユーザ消費データ（２２４）の前記関心グループｉｄに関連する、ルーティング・モジュール（２１６）と
を含む、メモリ（２０６）と
を含むバックエンド・ミドルウェア・システム（１１４）を実施する、プライバシ保護システム（１０４）。
【請求項１０】
前記ネットワーキング・モジュール（２１８）は、ＴＯＲ機構に基づいて情報を交換するように構成される、請求項９に記載のプライバシ保護ミドルウェア・システム（１０４）。
【請求項１１】
前記メモリ（２０６）は、アプリケーション・プログラミング・インターフェース（ＡＰＩ）層（２５４）を介してウェブ・サービスに基づいて前記少なくとも１つのローカル・クライアントから命令を受信するように構成されたアプリケーション・インターフェース・モジュール（２１４）をさらに含み、前記命令は、前記エンド・ユーザに関連する情報を示す、請求項９に記載のプライバシ保護ミドルウェア・システム（１０４）。
【請求項１２】
前記アプリケーション・インターフェース・モジュール（２１４）は、ｓｕｂｓｃｒｉｖｅ  ＡＰＩ、ｕｐｌｏａｄ  ＡＰＩ、ｒｅｃｅｉｖｅＰＵＳＨＲｅｃｏｍｍｅｎｄａｔｉｏｎ  ＡＰＩ、およびｌｏｏｋｕｐＰＵＬＬＲｅｃｏｍｍｅｎｄａｔｉｏｎ  ＡＰＩのうちの少なくとも１つまたは複数をサポートする、請求項１１に記載のプライバシ保護ミドルウェア・システム（１０４）。
【請求項１３】
前記複数の媒介物ノードの中での変更に起因する激動にうまく対処するために永続ストレージ層（２５６）を介して前記ユーザ消費データ（２２４）を格納するように構成されたストレージ・モジュール（２１２）をさらに含む、請求項９に記載のプライバシ保護ミドルウェア・システム（１０４）。
【請求項１４】
前記ストレージ・モジュール（２１２）は、
グループの対称暗号化鍵に基づいて前記ユーザ消費データのセグメントを暗号化し、
１つまたは複数の媒介物ノードにまたがって前記ユーザ消費データを複製するために、前記複数の媒介物ノードの中からの前記１つまたは複数の媒介物ノード上で前記暗号化されたセグメントを格納する
ようにさらに構成される、請求項１３に記載のプライバシ保護ミドルウェア・システム（１０４）。
【請求項１５】
前記グループの対称暗号化鍵は、前記複数の媒介物ノードの中からの各媒介物ノードについて一意であり、各媒介物ノードの前記グループの対称暗号化鍵は、前記１つまたは複数の媒介物ノードに複製される、請求項１４に記載のプライバシ保護ミドルウェア・システム（１０４）。
【請求項１６】
前記ネットワーキング・モジュール（２１８）は、前記少なくとも１つのローカル・クライアント（１１２）の隠しＴＯＲサーバを介するＴＯＲ隠しサービスに基づいて前記少なくとも１つのローカル・クライアント（１１２）に情報を提供するようにさらに構成され、前記ネットワーキング・モジュール（２１８）と前記隠しＴＯＲサーバとの間の通信は、前記少なくとも１つのローカル・クライアント（１１２）に関連するメールボックスｉｄに基づく、請求項９に記載のプライバシ保護ミドルウェア・システム（１０４）。
【請求項１７】
１つまたは複数のエンド・ユーザに関連するユーザ消費データを受信するステップであって、前記ユーザ消費データは、少なくとも、関心プロファイルのスライスと、関心プロファイルの前記スライスの関連する関心グループｉｄとを含み、前記ユーザ消費データは、ネットワーク匿名化層を介して受信される、ステップと、
分散ハッシュ・テーブル（ＤＨＴ）ルーティング機構に基づいて複数の媒介物ノードの中からの関心グループ・アグリゲータ・ノードに前記ユーザ消費データをルーティングするステップであって、前記関心グループ・アグリゲータ・ノードは、前記ユーザ消費データ内で表される前記関心グループｉｄに関連する、ステップと
を含む方法を実行するコンピュータ可読プログラム・コードを実装されたコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本主題は、通信システムに関し、排他的ではなく具体的には、推奨サービスの提供と同時のエンド・ユーザのプライバシ保護に関する。
【背景技術】
【０００２】
ワールド・ワイド・ウェブを介して入手可能な膨大な量のコンテンツのおかげで、サービス・プロバイダによって提供されるコンテンツにアクセスするエンド・ユーザは、コンテンツの選択を行う際に、しばしば、サービス・プロバイダ、検索エンジン、ウェブ・パブリッシャ、および広告主による助力を提供される。コンテンツ・ベースの推奨、協調推奨、その他などの従来既知の技法が、エンド・ユーザによるそのような選択を可能にするための推奨を生成するのに使用される。コンテンツ・ベースの推奨では、エンド・ユーザは、過去にエンド・ユーザによって使用されたか好まれたコンテンツ、サービス、もしくは製品に類似しまたはエンド・ユーザの関心もしくは選択と一致するコンテンツ、サービス、もしくは製品を推奨される。協調推奨では、エンド・ユーザは、類似するまたは同一の関心または選択を有する他のエンド・ユーザによって使用されまたは好まれたコンテンツ、サービス、または製品に類似するコンテンツ、サービス、または製品を推奨される。コンテンツ・ベースの推奨の例では、映画レビュー・ウェブサイトは、エンド・ユーザが特定のカテゴリの映画、たとえばアニメーション映画を定期的に見ることを監視することができる。したがって、アニメーション映画が見るために使用可能になるたびに、エンド・ユーザに、関連する支払を行うことによって映画をダウンロードするための、たとえば通知またはアラートなどの推奨を提供することができる。
【０００３】
同様に、協調フィルタリングとも称する協調推奨では、サービス・プロバイダは、的を絞られた広告をエンド・ユーザに提供することができ、これらの広告は、エンド・ユーザに類似する関心およびプリファレンスを有する他のエンド・ユーザによって好まれた製品またはサービスに関する。たとえば、インターネット・プロトコル・テレビジョン（ＩＰＴＶ）サービス・プロバイダは、テレビ番組または映画がエンド・ユーザの関心と一致する関心を有する他のエンド・ユーザによって見られた場合に、そのテレビ番組または映画をエンド・ユーザに推奨することができる。
【０００４】
エンド・ユーザに助力を提供し、関連するコンテンツを提供するこれらの技法のすべての中で、現在のユーザは、彼らの個人情報および潜在的に機密の情報にますます懸念を感じつつある。たとえば、ｅ−ストアのエンド・ユーザは、他のエンド・ユーザへの匿名の推奨を行うための彼の注文履歴またはレーティングの利用に異議を唱えない可能性があるが、そのエンド・ユーザが、そのエンド・ユーザが購入したかレーティングした特定のアイテムを他のエンド・ユーザに知られたくないと思う可能性がある。
【発明の概要】
【課題を解決するための手段】
【０００５】
この課題を解決するための手段は、推奨サービスの提供に関するエンド・ユーザのプライバシ保護に関する概念を導入するために提供される。この課題を解決するための手段は、請求される主題の本質的特徴を識別することを意図されたものではなく、請求される主題の範囲を区切りまたは限定する際の使用を意図されたものでもない。
【０００６】
一実施形態では、推奨サービスの提供に関するプライバシ保護をエンド・ユーザに提供する方法が説明される。この方法は、１つまたは複数のエンド・ユーザに関連するユーザ消費データを受信するステップであって、ユーザ消費データは、少なくとも、関心プロファイルのスライスと、関心プロファイルのスライスの関連する関心グループｉｄとを含み、ユーザ消費データは、ネットワーク匿名化層を介して受信される、ステップを含む。この方法は、分散ハッシュ・テーブル（ＤＨＴ）ルーティング機構に基づいて複数の媒介物ノードの中からの関心グループ・アグリゲータ・ノードにユーザ消費データをルーティングするステップであって、関心グループ・アグリゲータ・ノードは、ユーザ消費データ内で表される関心グループｉｄに関連する、ステップをさらに含む。
【０００７】
もう１つの実施態様では、少なくとも１つのローカル・クライアントに接続されたプライバシ保護ミドルウェア・システムを含むネットワーク内のエンド・ユーザのプライバシを保護するプライバシ保護システムが説明される。プライバシ保護ミドルウェア・システムは、複数の媒介物ノードを含み、少なくとも１つの媒介物ノードは、バックエンド・ミドルウェア・システムを実施する。バックエンド・ミドルウェア・システムは、プロセッサと、プロセッサに結合されたメモリとを含むことができる。メモリは、少なくとも１つのエンド・ユーザの少なくとも１つのローカル・クライアントからユーザ消費データを受信するように構成されたネットワーキング・モジュールであって、ユーザ消費データは、少なくとも、関心プロファイルのスライスと、少なくとも１つのエンド・ユーザの関連する関心グループｉｄとを含み、ユーザ消費データは、ネットワーク匿名化層を介して受信される、ネットワーキング・モジュールを含むことができる。メモリは、ＤＨＴルーティング機構に基づいて複数の媒介物ノードの中からの関心グループ・アグリゲータ・ノードにユーザ消費データをルーティングするように構成されたルーティング・モジュールであって、関心グループ・アグリゲータ・ノードは、ユーザ消費データの関心グループｉｄに関連する、ルーティング・モジュールをさらに含むことができる。
【０００８】
もう１つの実施態様では、方法を実行するコンピュータ可読プログラム・コードを実装されたコンピュータ可読媒体が説明される。この方法は、ユーザ消費データを受信するステップであって、１つまたは複数のエンド・ユーザに関連するは、受信され、ユーザ消費データは、少なくとも、関心プロファイルのスライスと、関心プロファイルのスライスの関連する関心グループｉｄとを含み、ユーザ消費データは、ネットワーク匿名化層を介して受信される、ステップを含むことができる。この方法は、分散ハッシュ・テーブル（ＤＨＴ）ルーティング機構に基づいて複数の媒介物ノードの中からの関心グループ・アグリゲータ・ノードにユーザ消費データをルーティングするステップであって、関心グループ・アグリゲータ・ノードは、ユーザ消費データ内で表される関心グループｉｄに関連する、ステップをさらに含む。
【０００９】
詳細な説明は、添付図面を参照して説明される。図面では、符号の左端の桁が、その符号が初めて現れる図面を識別する。同一の符号が、複数の図面を通じて、同様の特徴および構成要素を参照するのに使用される。本主題の実施形態によるシステムおよび／または方法のいくつかの実施形態を、これから、例としてのみ、添付図面を参照して説明する。
【図面の簡単な説明】
【００１０】
【図１】本主題の実施形態による、プライバシ保護システムの例示的なネットワーク環境実施態様を示す図である。
【図２（ａ）】本主題の実施形態による、プライバシ保護ミドルウェア・システムのコンポーネントを概略的に示す図である。
【図２（ｂ）】本主題の実施形態による、バックエンド・ミドルウェア・システムのコンポーネントを概略的に示す図である。
【図３】本主題の実施形態による、エンド・ユーザにプライバシ保護を提供する方法を示す図である。
【発明を実施するための形態】
【００１１】
本文書では、単語「例示的な」は、本明細書で「例、実例、または例示として働く」を意味するのに使用される。本明細書で「例示的な」として説明される本主題の任意の実施形態または実施態様は、必ずしも、他の実施形態より好ましいまたは有利と解釈されるべきものではない。
【００１２】
当業者は、本明細書の任意のブロック図が本主題の原理を実施する例示的システムの概念図を表すことを了解するに違いない。同様に、任意のフロー・チャート、流れ図、状態遷移図、擬似コード、および類似物が、コンピュータ可読媒体内で実質的に表されるようなプロセスを表し、したがってコンピュータまたはプロセッサが明示的に図示されていようといまいと、そのようなコンピュータまたはプロセッサによって実行され得ることを了解されたい。
【００１３】
エンド・ユーザの個人情報に対するプライバシを提供するシステムおよび方法を説明する。システムおよび方法を、さまざまなネットワークを介して通信するさまざまな分散サーバおよび通信デバイス内で実施することができる。説明される方法を実施できる分散サーバおよびコンピューティング・システムは、中央ディレクトリ・サーバ、データベース・サーバ、ファイル・サーバ、印刷サーバ、ウェブ・サーバ、アプリケーション・サーバ、ノートブック、タブレット、パーソナル・コンピュータ、セット・トップ・デバイス、携帯電話機、および類似物を含むが、これらに限定されない。本明細書の説明は、推奨サービスを提供するパーソナル・コンピュータおよび分散サーバを参照するが、当業者が理解するように、方法およびシステムを、エンド・ユーザのプライバシを保護するためにエンド・ユーザに接続性を提供する他のサーバおよびコンピューティング・システム内で実施することができる。
【００１４】
推奨サービスおよびパーソナライズされたコンテンツが、さまざまなネットワークを介してサービス・プロバイダによって異なるエンド・ユーザに提供されるが、本明細書で説明される方法およびシステムは、アクセス独立であり、Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ（ＧＳＭ）、広帯域符号分割多元接続（Ｗ−ＣＤＭＡ）、符号分割多元接続（ＣＤＭＡ）、無線ローカル・エリア・ネットワーク（ＷＬＡＮ）、有線、ローカル・エリア・ネットワーク（ＬＡＮ）、および接続性を提供する他のネットワークを含む複数のアクセス・タイプをサポートする。
【００１５】
一実施形態では、本主題は、ネットワークを介してサービス・プロバイダによって推奨されるサービスを利用するかコンテンツを見るのに彼らのクライアント・デバイスを使用するエンド・ユーザの個人情報およびプライベート情報を保護するプライバシ保護のシステムおよび方法を開示する。
【００１６】
従来、多くのサービス・プロバイダは、エンド・ユーザの個人的な詳細、プリファレンス、および選択に基づいて、ビデオ、オーディオ、ニュース、広告などを含むコンテンツを提供するサービスなど、エンド・ユーザに提供されるサービスをパーソナライズすることを試みた。このために、サービス・プロバイダは、エンド・ユーザの年齢、性別、および位置などのエンド・ユーザの個人情報、エンド・ユーザの過去のアクション、またはエンド・ユーザの関心に類似する関心を有すると識別された他のエンド・ユーザによる過去のプリファレンスのいずれかに基づいてエンド・ユーザが関心を持つ可能性があるサービス、コンテンツ、または製品を推奨するのに、コンテンツ・ベースの推奨および／または協調推奨などの技法を使用する。
【００１７】
たとえば、従来のコンテンツ・ベースの推奨手法では、エンド・ユーザ、たとえばユーザＡが、特定の著者によって執筆された書籍を購入した場合に、サービス・プロバイダは、同一の著者によって執筆された他の書籍または同一のもしくは関連する主題に関する他の書籍などを購入するようにユーザＡに提案することができる。類似するが別の従来の手法すなわち協調推奨手法では、サービス・プロバイダは、エンド・ユーザＡの関心プロファイルに類似する関心プロファイルを有する可能性がある他のエンド・ユーザを判定し、他のエンド・ユーザによって好まれたコンテンツまたは製品をエンド・ユーザＡに推奨する。そのために、複数のエンド・ユーザの関心プロファイルの作成と、類似する関心を有するエンド・ユーザの関心グループを確かめるためのエンド・ユーザの関心プロファイルの照合とが、従来既知の方法を使用して実行される。同様に、エンド・ユーザの関心プロファイルを、エンド・ユーザの関心およびアクティビティに基づいて異なるスライスにセグメント化することもできる。たとえば、ブラウジング履歴全体がエンド・ユーザの関心プロファイルを含む場合に、関心プロファイルのスライスを、少数のｕｎｉｆｉｅｄ  ｒｅｓｏｕｒｃｅ  ｌｏｃａｔｏｒ（ＵＲＬ）のみを含む小さいサブセットとすることができる。したがって、エンド・ユーザの関心プロファイル全体を、複数の小さいプロファイル・スライスに分割して、関心プロファイルの各スライスが、ユーザのアイデンティティを推論するのに十分な情報をそれ自体では明らにしなくなるのに十分に小さいことを保証することができる。エンド・ユーザの関心プロファイルのスライス化は、従来既知の方法を使用して実行される。当技術分野で従来既知の詳細は、簡潔さのために省略する。
【００１８】
もう１つの例では、エンド・ユーザ、たとえばユーザＢが、アドベンチャ・スポーツに関心を持つ場合に、サービス・プロバイダは、やはりアドベンチャ・スポーツに関心を持つ他のエンド・ユーザを見つけることを試みる。アドベンチャ・スポーツに関心を持つ他のエンド・ユーザのいずれかが、任意のアクティビティを実行する場合に、サービス・プロバイダは、ユーザＢがそのアクティビティへの関心を明示的に表していない可能性がある場合であっても、同一のアクティビティを実行するようにユーザＢに提案するはずである。この従来の手法は、類似する関心プロファイルすなわち類似する関心を有するエンド・ユーザが、同一の個人的なプリファレンスを有する高い確率を有すると仮定するものである。
【００１９】
サービス・プロバイダによって実施される従来の技法は、エンド・ユーザの個人的なプリファレンス、選択などに関する情報の収集を必要とする。従来、サービス・プロバイダは、ログ・ファイル、アプリケーション履歴ファイル、またはエンド・ユーザのクライアント・デバイス上で保存される他の個人的に識別可能な情報を分析することによるなど、さまざまな手段を介してエンド・ユーザに関する情報を監視し、収集する。別の従来の技法では、サービス・プロバイダは、エンド・ユーザに関する情報を収集するために、ハイパーテキスト転送プロトコル（ｈｔｔｐ）クッキーなどのテキスト・ファイルを保存することができる。たとえば、ウェブ・ポータルは、フォント・サイズ、ディスプレイ・ウィジェットの配置など、エンド・ユーザのプリファレンスを格納するためにエンド・ユーザのウェブ・ブラウザのｈｔｔｐクッキーを含むユーザ・プリファレンス・データを保存することができる。さらに、ユーザ・プリファレンス・データは、エンド・ユーザのブラウジング詳細を格納し、これをウェブ・ポータルに送信することもできる。
【００２０】
したがって、エンド・ユーザの個人的な選択に基づいて推奨サービス、パーソナライズされたコンテンツ、サービス、または製品をエンド・ユーザに提供することを試みて、サービス・プロバイダは、しばしば、エンド・ユーザのアクティビティに関する情報を監視し、収集する。ある種の状況で、サービス・プロバイダによって収集された情報に基づいてエンド・ユーザを識別することが可能になる。これは、エンド・ユーザの個人情報または機密情報を危険にさらすことをもたらし、エンド・ユーザを潜在的なプライバシ侵害にさらすか、エンド・ユーザを広告主またはスパマなどの標的にする可能性がある。さらに、極端な場合に、エンド・ユーザが、個人情報窃盗、クレジット・カード濫用などのさまざまな犯罪の被害者である場合がある。
【００２１】
さらに、今日、エンド・ユーザが、高速通信サポートを介して仮想ソーシャル・ネットワークを通じて各他のユーザに接続される時に、エンド・ユーザは、ＳｔｕｍｂｌｅＵｐｏｎ（登録商標）、ＧｏｏｇｌｅＮｅｗｓ（商標）、Ｆｏｕｒｓｑｕａｒｅ（登録商標）、Ｆａｃｅｂｏｏｋ（登録商標）、Ｙａｈｏｏ！（登録商標）、およびｔｗｉｔｔｅｒ（商標）などの広いクラスのアプリケーションにプライベート情報および個人情報を常に共有している。明らかにされる機密の個人情報の性質は、ロケーション・ベースのサービス（ＬＢＳ）の位置およびｕｎｉｆｏｒｍ  ｒｅｓｏｕｒｃｅ  ｌｏｃａｔｏｒ（ＵＲＬ）リコメンダ・システムのブラウジング履歴など、アプリケーションのタイプに依存するが、オンライン・ソーシャル・ネットワーク（ＯＳＮ）のすべてを包含するフレームワークへのこれらのアプリケーションの注入（ＯＳＮは、推奨サービスを提供する「ワンストップショップ（あらゆる商品を備えた総合店舗）」として働き始めている）は、ユーザの個人情報をこれまで以上に高いリスクにさらしている。
【００２２】
最近、推奨サービス、パーソナライズされたコンテンツ、およびサービスをそれでも提供しながらプライバシを保つ、異なる手法が提案された。これらの手法は、ＬＢＳから推奨システムおよびＯＳＮまでのアプリケーション・シナリオに応じて変化する。
【００２３】
そのような既存の手法の１つは、エンド・ユーザに個人情報のプライバシを提供する集中化された解決策に基づく。そのような集中化された解決策では、単一の信頼される媒介物が、エンド・ユーザのプライベート情報を安全に保ち、エンド・ユーザのアイデンティティをコンテンツ・プロバイダおよびサービス・プロバイダに対して匿名に保つために、エンド・ユーザの代わりにサービス・プロバイダに要求を提供し、推奨を受信する。しかし、そのような集中化された解決策は、単一の信頼される媒介物がエンド・ユーザ情報を悪意を持って使用しないものとして信頼されるとい信頼モデルの非実用的な仮定に基づく。
【００２４】
さらに、ある種の手法は、集中化された媒介物がエンド・ユーザによって信頼されない場合の集中化された解決策を提供する。そのような状況では、信頼されない集中化された媒介物からエンド・ユーザに匿名性を提供するために、媒介物によって受信されるデータが、暗号化された形になり、先験的に既知の別のエンド・ユーザ、たとえばオンライン・ソーシャル・ネットワーク内のソーシャル・フレンドである所期の受取人によってのみ暗号化解除できるように、エンド・ユーザの間で通信される情報は、エンド・ユーザの間で相互に共有される暗号化鍵を用いて暗号化される。しかし、この手法は、集中化された媒介物によるビジネス・モデルおよびアプリケーションの使用を除外し、これは、交換される情報内のデータが媒介物によって見られる時に、そのデータが暗号化されない形になる通信を必要とする。たとえば、ある場合に、サービス・プロバイダが、集約された消費データに基づいてエンド・ユーザの関心に一致する広告を提供することを望む。そのようなアプリケーションを、これらの集中化された解決策の手法でサポートすることはできない。
【００２５】
同様に、集中化された媒介物が信頼されないが、それでも推奨サービスなどのサービスをエンドユーザに提供する他の手法では。パーソナライズされたコンテンツおよび推奨サービスを提供するために、集中化された媒介物は、エンド・ユーザのプリファレンスおよび個人的関心に関するエンド・ユーザ消費データを匿名で受信することができる。しかし、ある時間の期間に渡る匿名エンド・ユーザの通常の関心を監視して、エンド・ユーザを分離し、そのエンド・ユーザを、ユーザ消費データから識別されたそのユーザのそのような通常の関心に基づいて特定の人にリンクすることができる。そのような状況では、エンド・ユーザの個人情報およびプライベート情報は、高いリスクにさらされ、誤用される可能性がある。したがって、これらの集中化されていない解決策は、集中化された媒介物をサポートしないので、リンカビリティ攻撃（ｌｉｎｋａｂｉｌｉｔｙ  ａｔｔａｃｋ）をこうむりがちである。
【００２６】
非集中化された媒介物手法を実現する、ユーザのプライベート情報を保護するもう１つの解決策は、エンド・ユーザと非集中化された複数の媒介物との間の暗号化されない通信を活用することができる、分散ハッシュ・テーブル（ＤＨＴ）ベースの匿名パブリッシングおよびサブスクライビング（ａｎｏｎｙｍｏｕｓ  ｐｕｂｌｉｓｈｉｎｇ  ａｎｄ  ｓｕｂｓｃｒｉｂｉｎｇ）技法の使用である。これらの技法は、エンド・ユーザが、個人的関心を匿名でアップロードする（サブスクライブする）ことと、サービス・プロバイダによって提供される（パブリッシュされる）情報を匿名で受信することとを可能にする。ＤＨＴベースの技法の使用は、エンド・ユーザ匿名性を可能にするが、ＤＨＴ技法は、モバイル・デバイスなどの制限されたコンピューティング能力を有するシン・クライアントによってサポートされない。ＤＨＴ技法は、当業者によって理解されるように、すべてのクライアントがＤＨＴルーティング機構自体の一部になることを必要とするので、シン・クライアントは主にサポートされない。さらに、エンド・ユーザは、実施されるＤＨＴ技法の一部なので、ネットワークとのエンド・ユーザの変動する接続性は、エンド・ユーザの安定した参加を提供せず、パーソナライズされたコンテンツおよび推奨サービス提供システム全体の性能を劣化させる。したがって、そのようなＤＨＴ技法の直接実施は、特にエンド・ユーザがモバイル・デバイスを介して接続される場合の、今日のプライバシを保つパーソナライゼーション・サービスの多数の動作シナリオをサポートすることができない。
【００２７】
したがって、既存の解決策は、信頼考慮事項に起因して制限された保護を提供するか、または暗号化された／暗号化されていないデータの選択および制限されたタイプのコンピューティング・デバイスのサポートに起因して制限されたアプリケーションおよびデバイスのサポートを提供するかのいずれかである。
【００２８】
本主題の実施態様によれば、エンド・ユーザの個人情報に対する真のプライバシを提供するシステムおよび方法が説明される。一実施態様では、本明細書で説明されるシステムおよび方法は、シン・クライアントをサポートし、データが、受取人だけがデータを暗号化解除し、見ることのできる形で暗号化されるなど、通信に暗号化されたデータの使用を必要としない、主に共謀しない媒介物の分散コレクションを提供するプライバシ保護の非集中化された解決策に基づく。説明されるシステムおよび方法は、ＬＢＳ、推奨システム、およびＯＳＮなど、異なる変化したアプリケーション・シナリオについてエンド・ユーザの個人情報に対するプライバシをも提供する。この主題の一実施形態によれば、本明細書で説明されるシステムおよび方法を、ユーザが、有線ネットワークを介してまたは異なる手段を介して提供される無線ネットワークを介してのいずれかで接続される可能性があるさまざまなシナリオで実施することができる。前に説明したように、システムおよび方法を、通信に関して定義されたさまざまな異なる標準規格に従ってネットワークと通信することができるさまざまな処理デバイス内および通信デバイス内で実施することができる。
【００２９】
本明細書で説明されるシステムおよび方法は、一方では、アプリケーションおよびビジネス・モデルの使用を制限せずに、各エンド・ユーザおよび彼らのプライベート情報に匿名性を提供することによって、エンド・ユーザのプライベート情報に対する真の保護を提供し、他方では、限られた計算能力を有するモバイル・デバイスなどのシン・クライアントを含む任意のコンピューティング・デバイスを利用してパーソナライズされたコンテンツおよび推奨サービスを受信する能力をエンド・ユーザに提供する。一実施形態では、プライバシ保護システムは、ローカル・クライアントを有する複数のエンド・ユーザとプライバシ保護ミドルウェア・システムとを含む。
【００３０】
この主題の一実施形態によれば、パーソナライズされたコンテンツおよび推奨サービスを非集中化された手法を介してエンド・ユーザに提供するために、エンド・ユーザの関心プロファイルが、エンド・ユーザの個人的選択およびプリファレンスに基づいて生成される。エンド・ユーザの関心プロファイルに基づいて、エンド・ユーザが関連することのできる関心グループが、識別される。一実施形態では、エンド・ユーザのクライアント・デバイスにインストールされたローカル・クライアントは、ＬＢＳ、推奨システム、およびＯＳＮなど、さまざまなアプリケーション・シナリオに基づいて、エンド・ユーザに関連する関心プロファイルおよび関心グループを評価することができる。そのようなクライアント・デバイスの例は、メインフレーム・コンピュータ、ワークステーション、パーソナル・コンピュータ、デスクトップ・コンピュータ、ミニコンピュータ、サーバ、マルチプロセッサ・システム、およびラップトップなどのコンピューティング・デバイスと、携帯情報端末、スマートフォン、携帯電話機などのセルラ通信デバイスなどを含むが、これらに限定はされない。さらに、関心プロファイルおよび関心グループを、ソフトウェア・ツール、ファームウェア、アプリケーション・プラグインなどとして実施された論理に基づいて評価することができる。
【００３１】
ローカル・クライアントは、さまざまなアプリケーションを介して収集されたエンド・ユーザの個人的選択およびプリファレンスに基づいてエンド・ユーザの関心プロファイルを生成することができる。前記実施態様では、関心プロファイル生成を、エンド・ユーザの個人的選択およびプリファレンスを判定し、分析するためのアプリケーション・プログラミング・インターフェース（ＡＰＩ）を介するさまざまなアプリケーションを用いる情報のコンパイルに基づくものとすることができる。関心プロファイルを生成する方法は当技術分野で既知なので、その説明は、簡潔さのために除外する。
【００３２】
もう１つの実施態様では、ローカル・クライアントは、キー／値対のセットとしてエンド・ユーザに関する情報を格納することができ、ここで、キーは、アイテム、またはアイテムに関連するカテゴリもしくはタグを格納する。たとえばウェブサイト、曲、ビデオなどのアイテムに関連するメタデータが、キーとして格納される。それと同時に、キーに対応する値も格納される。値は、対応するキーへのエンド・ユーザの関心レベルを示す。
【００３３】
その後、キー／値対のさまざまなセットを、当技術分野で既知の技法に基づいて、エンド・ユーザが関係する可能性がある、有望なグループを判定するために分析することができる。たとえば、一実施態様では、キー／値対のさまざまなセットに基づくメタタグを生成することができ、これらのメタタグを、関心グループの事前定義のリストと比較することができ、エンド・ユーザが関係するグループのグループ・アイデンティティ（ｉｄ）を判定することができる。類似するまたは同一の関心を有するエンド・ユーザは、ｌｏｃａｌ  ｓｅｎｓｉｔｉｖｉｔｙ  ｈａｓｈｉｎｇ（ＬＳＨ）技法またはセマンティック・ベースのクラスタ化などの従来の技法を使用して、同一のグループに分類される。さらに、１人のエンド・ユーザを、１つまたは複数の関心グループに分類することができる。たとえば、アイテムＸおよびＹに関心を持つエンド・ユーザＣを、たとえばグループｉｄ  １００およびｉｄ  ２００によって表されるグループに分類することができ、アイテムＸ、Ｙ、およびＺに関心を持つエンド・ユーザＤを、たとえばグループｉｄ  １００、ｉｄ  ２００、およびｉｄ  ３００によって表される２つの関心グループに分類することができる。ローカル・クライアントによって行われる処理と、その結果として生成されるデータとを、エンド・ユーザのコンピューティング・デバイスの外部に送信してはならないことを了解されたい。
【００３４】
エンド・ユーザ、たとえばＡがインターネット・プロトコル・テレビジョン（ＩＰＴＶ）を利用する一例で、個人情報を、見られた番組、録画された番組、およびエンド・ユーザＡによって番組に関してセットされたアラームに基づいてコンパイルすることができる。エンド・ユーザＡは、料理番組を見て、新しいレシピおよび変更されたレシピに関係する番組を録画し、著名な旅行番組ついてアラームを格納することができる。さらに、個人的選択に基づいて、エンド・ユーザＡは、ＩＰＴＶのサービス・プロバイダからのコンテンツ・カテゴリ料理およびライフスタイルにサブスクライブ済みであるものとすることもできる。そのような収集された情報に基づいて、エンド・ユーザのローカル・クライアントは、エンド・ユーザが、料理およびライフスタイルに関心を有することを識別することができ、エンド・ユーザＡを関心グループｉｄ  ０９およびｉｄ  ５４を有する関心グループ料理およびライフスタイルに関連付けることができる。
【００３５】
さらに、本主題のもう１つの実施態様によれば、関心グループおよび対応する関心グループｉｄとエンド・ユーザとの関連付けを、異なるエンド・ユーザによって利用される異なるアプリケーション・シナリオに基づくものとすることもできる。たとえば、ＩＰＴＶアプリケーションについて上で説明したように、関心グループｉｄを、エンド・ユーザが最もよくあてはまる関心グループに依存してエンド・ユーザに関連付けることができ、ここで、関心グループは、エンド・ユーザの選択とその分類との網羅的なリストに基づいて事前に定義されるものとすることができる。
【００３６】
同様に、ＬＢＳ応用例に関して、エンド・ユーザを、分類されたユーザ選択に基づくのではなく、エンド・ユーザの現在位置に基づいて、異なる関心グループおよび対応する関心グループｉｄに関連付けることができる。たとえば、ある都市の区域α内でローミングし、ＬＢＳを利用するエンド・ユーザＷを、関心グループαおよび関心グループｉｄ  ２２に関連付けることができる。同様に、その都市の区域γ内でローミングし、ＬＢＳを利用するすべてのエンド・ユーザを、関心グループγおよび対応する関心グループｉｄ  ６８に関連付けることができる。一実施態様では、ＬＢＳの関心グループを、エンド・ユーザの位置の緯度および経度に基づくものとすることができる。さらに、ＯＳＮと同様に、関心グループを、エンド・ユーザのソーシャル・サークル（またはコミュニティ）に基づくものとすることができ、ここで、ソーシャル・サークルは、類似する関心、民族性、地方、および宗教を有する異なるエンド・ユーザをグループ化することができる。ＯＳＮ上の異なるソーシャル・サークルは、エンド・ユーザが彼らの関心および思想を共有することを可能にし、インスタント・メッセージングおよび電子メールなどのさまざまな手段を介してお互いの間で通信することをも可能にすることを理解されたい。
【００３７】
エンド・ユーザが関連付けられる関心グループを、変化するエンド・ユーザ選択およびエンド・ユーザ要求に基づいて時々変更し、更新することができることが、当業者によって了解されるはずである。エンド・ユーザを、関心プロファイルの変化に基づいて、ある関心グループから別の関心グループに移すこともできる。さらに、ＬＢＳの状況で、エンド・ユーザの関心グループを、エンド・ユーザの現在位置に基づいて、時々更新することができることを了解されたい。また、ローカル・クライアントは、１つまたは複数のアプリケーション・シナリオから収集された情報に基づいて、エンド・ユーザの関心グループを選択することもできる。たとえば、エンド・ユーザＭが、関心グループ「料理およびライフスタイル」に関連し、区域α内でＬＢＳを利用してもいる場合に、ユーザＭを、類似する関心を有し、同一区域内でローミングする他のエンド・ユーザを有する関心グループ￥に関連付けることができる。
【００３８】
本主題の一実施態様では、エンド・ユーザのクライアント・デバイスは、直接にまたはネットワークを介してのいずれかで、プライバシ保護ミドルウェア・システムに接続される。クライアント・デバイスにインストールされたローカル・クライアントは、アプリケーション要件に基づいて、プライバシ保護ミドルウェア・システムとの相互作用に使用する異なるミドルウェアＡＰＩをインスタンス化することができる。
【００３９】
プライバシ保護ミドルウェア・システムは、シン・クライアントをサポートし、所期の受取人だけが見るためにデータを暗号化解除できるデータ暗号化を必要としない、主に共謀しない媒介物ノードの分散コレクションを含む。プライバシ保護ミドルウェア・システムの媒介物ノードは、ワークステーション、パーソナル・コンピュータ、デスクトップ・コンピュータ、マルチプロセッサ・システム、ラップトップ、ネットワーク・コンピュータ、ミニコンピュータ、サーバなどのうちの１つまたは複数とすることができる。これらの媒介物ノードは、１つまたは複数のクライアント・デバイスのコンピューティング・リソースに関係し、協力してホスティングされる能力を有することができる。また、プライバシ保護ミドルウェア・システムは、１つまたは複数の共謀しないサード・パーティによって寄付されまたはホスティングされる媒介物ノード上で動作することもできる。
【００４０】
一実施態様では、プライバシ保護ミドルウェア・システムは、同一の関心グループｉｄに関連するエンド・ユーザが、パーソナライズされたコンテンツおよび推奨サービスを受信するために分散媒介物ノードのプールの中からのいくつかの共通の媒介物ノードでユーザ消費データを匿名で集結させる、プライバシ保護のための分散媒介物ノードの非集中化された解決策を実施する。各媒介物ノードは、関連するエンド・ユーザへの、関心グループの性質に関係するパーソナライズされたコンテンツの配布および推奨サービスのサポートを可能にするために、対応する関心グループｉｄに関連する関心グループをホスティングする。
【００４１】
たとえば、彼らの関心プロファイルに基づいて同一の関心グループｉｄ  １５６に関連するエンド・ユーザＡおよびＢのローカル・クライアントは、彼らの消費データを共通の媒介物ノードＲで集結することができる。さらに、エンド・ユーザＡのローカル・クライアントは、彼の関心に基づいて別の関心グループｉｄ  １９０に彼を関連付けるものとすることもでき、ここで、関心グループｉｄ  １９０は、プライバシ保護ミドルウェア・システムの別の媒介物ノードＳによってホスティングされる。そのようなシナリオでは、彼らのそれぞれのローカル・クライアントによって、類似する関心に基づいてやはり関心グループｉｄ  １９０に関連付けられたものとすることができる他のエンド・ユーザＤ、Ｆ、およびＪも、同一の媒介物ノードＳに関連する。さらに、前記例では、関心グループｉｄ  １９０を、カテゴリ、スポーツに関係するものとすることができる場合に、したがって、関心グループｉｄ  １９０をホスティングする媒介物ノードＳは、スポーツ・コンテンツおよびスポーツに関連する推奨サービスをエンド・ユーザＡ、Ｄ、Ｆ、およびＪに配送することを可能にすることができる。
【００４２】
本主題の実施態様によれば、プライバシ保護ミドルウェア・システムは、エンド・ユーザに真のプライバシ保護を提供するために機能性のグループを実施する。プライバシ保護ミドルウェア・システムによって実施される機能性は、この説明で理解および説明の簡単さのために異なる層に関して説明される。異なる層は、前記機能性をサポートする異なるフレームワークをインスタンス化する。
【００４３】
プライバシ保護ミドルウェア・システムは、ネットワーク匿名化の層を実施する。ネットワーク匿名化層は、エンド・ユーザが、それでもミドルウェア媒介物ノードが暗号化されたチャネルを介して暗号化されない形でエンド・ユーザのユーザ消費データを有することを可能にしながら、エンド・ユーザがプライバシ保護ミドルウェア・システムの媒介物ノードと匿名で通信することを可能にする。一方では、匿名ネットワーク層は、エンド・ユーザの匿名をサポートし、その一方で、プライバシ保護ミドルウェア・システムがプッシュ推奨を匿名で配送することを可能にする。プッシュ推奨が、エンド・ユーザによって開始された明示的な要求なしでエンド・ユーザに提供されるコンテンツであることが、当業者によって理解されるはずである。
【００４４】
一実施態様では、プライバシ保護ミドルウェア・システムのネットワーク匿名化層は、オニオン・ルーティング機構など、クライアント／リレー・ベースのルーティング機構を利用する。もう１つの実施形態では、Ｔｈｅ  Ｏｎｉｏｎ  Ｒｏｕｔｅｒ（ＴＯＲ）フレームワークを利用して、エンド・ユーザに匿名性を提供することができる。ＴＯＲフレームワークの実施態様は、エンド・ユーザの位置およびすべてのエンド・ユーザのアイデンティティを隠蔽するために、バウンシング・サーバ（ｂｏｕｎｃｉｎｇ  ｓｅｒｖｅｒ）として働く媒介物ノードのネットワークを介してエンド・ユーザのプライベート・データおよび機密データのルーティングを可能にする。さらに、匿名化層でのＴＯＲフレームワークの使用は、モバイル・デバイスなどのシン・クライアントへのサポートを可能にする。したがって、エンド・ユーザへの匿名性の提供とは別に、ネットワーク匿名化層の使用は、エンド・ユーザにさまざまなタイプの通信デバイスを使用する柔軟性をも提供する。ネットワーク匿名化層がＴＯＲフレームワークを利用すると説明されたが、ＴＯＲの機能性に類似する機能性を提供するすべての他のフレームワークを、プライバシ保護ミドルウェア・システムのネットワーク匿名化層内で実施できることを了解されたい。
【００４５】
本主題のもう１つの実施態様では、プライバシ保護ミドルウェア・システムは、ルーティングおよびマッピング層をも実施する。前記実施態様では、プライバシ保護ミドルウェア・システムのルーティングおよびマッピング層は、関心グループｉｄに対応する媒介物ノードを判定するために実施される。説明されるように、異なる媒介物ノードは、異なる関心グループおよび対応する関心グループｉｄの用命に応じるので、ルーティングおよびマッピング層は、各関心グループに対応する媒介物ノードを判定する。本主題の実施態様によれば、ＰＡＳＴＲＹフレームワークが、プライバシ保護ミドルウェア・システムのルーティングおよびマッピング層のＤＨＴルーティングに基づいてルーティングおよびマッピング機能性を実施するために利用される。ルーティングおよびマッピング層がＤＨＴルーティングに関するＰＡＳＴＲＹフレームワークを利用することを説明したが、ＰＡＳＴＲＹフレームワークの機能性に類似する機能性を提供する任意の他のフレームワークを、プライバシ保護ミドルウェア・システムのルーティングおよびマッピング層で実施できることを了解されたい。
【００４６】
もう１つの実施態様によれば、プライバシ保護ミドルウェア・システムは、ローカル・クライアントとプライバシ保護ミドルウェア・システムとの間の相互作用を可能にするためにＡＰＩ層を実施することもできる。前記実施態様では、ＡＰＩ層は、ｓｕｂｓｃｒｉｖｅ  ＡＰＩ、ｕｐｌｏａｄ  ＡＰＩ、ｒｅｃｅｉｖｅＰＵＳＨＲｅｃｏｍｍｅｎｄａｔｉｏｎ  ＡＰＩ、およびｌｏｏｋｕｐＰＵＬＬＲｅｃｏｍｍｅｎｄａｔｉｏｎ  ＡＰＩを実施することができる。ｓｕｂｓｃｒｉｖｅ  ＡＰＩを、ローカル・クライアントを介する関心グループへのサブスクライブのためにエンド・ユーザによってインスタンス化することができる。ｕｐｌｏａｄ  ＡＰＩを、エンド・ユーザの関心プロファイルのスライスをアップロードするためにローカル・クライアントによってインスタンス化することができる。受信プッシュ推奨を、ホスティングされる関心グループの性質に基づいて、エンド・ユーザのローカル・クライアントへのプッシュ推奨の送信のために媒介物ノードによって開始することができる。さらに、ルックアッププル推奨を、ローカル・クライアントの明示的に開始された要求を介してプル推奨を受信するために媒介物ノードによってインスタンス化することができる。一実施態様では、ＡＰＩ層は、プライバシ保護ミドルウェア・システム内の説明されたＡＰＩをサポートするためにＳｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ（ＳＯＡＰ）ベースのウェブ・サービスを実施する。ＳＯＡＰベースのウェブ・サービスは、ＴＯＲフレームワークを実施する基礎になるネットワーク匿名化層の上で匿名で呼び出すことができるハイパーテキスト転送プロトコル（ＨＴＴＰ）ベースのウェブ・サービスである。さらに、ＨＴＴＰベースのＳＯＡＰウェブ・サービスを、ＴＯＲ上で中継されるＨＴＴＰトラフィックをもサポートするＴＯＲフレームワークのＳＯＣＫＳプロキシへのクライアントをポイントすることによって、シームレスな形で呼び出すことができる。ローカル・クライアントとプライバシ保護ミドルウェア・ソフトウェアとの間の相互作用が、ＳＯＡＰウェブ・サービスＡＰＩに基づくものとして説明されたが、ＳＯＡＰウェブ・サービスの機能性に類似する機能性を提供するすべての他のウェブ・サービスを、プライバシ保護ミドルウェア・システムのＡＰＩ層内で実施できることを了解されたい。
【００４７】
本主題のもう１つの実施態様では、プライバシ保護ミドルウェア・システムは、エンド・ユーザの関心プロファイルに基づいてエンド・ユーザのローカル・クライアントによって提供されるユーザ消費データを格納するために永続ストレージ層をも含むことができる。永続ストレージ層の実施態様は、プライバシ保護ミドルウェア・システムが、プライバシ保護ミドルウェア・システムの媒介物ノードでの変更および更新に起因して引き起こされる激動にうまく対処することを可能にすることができる。動作中に、特定の関心グループをホスティングする各媒介物ノードは、ユーザ消費データが媒介物ノードによって失われる時、または媒介物ノードがダウンしておらず、別の媒介物ノードがグループのホスティングを開始する時など、将来の事例のために異なるユーザのユーザ消費データを格納することができる。そのような事例では、全エンド・ユーザからもう一度ユーザ消費データを受信することではなく、永続ストレージ層データを介する媒介物ノードからのユーザ消費データの取出が、すばやく面倒ではない交合を可能にすることができる。言い替えると、激動の下で、新しい中間ノードは、関心グループの以前にアップロードされたユーザ消費データを取り出すことができなければならない。
【００４８】
しかし、一実施態様では、異なるグループに現れるまれなＵＲＬなど、リンカビリティ攻撃を防ぐために、単一の媒介物ノードがグループにまたがって関係する永続ユーザ消費全体を見るために別の媒介物ノードのユーザ消費データ全体を受信することがなくなるように、ユーザ消費データを分離し、異なる媒介物ノードに格納することができる。前記実施態様では、異なる媒介物ノードで格納されるユーザ消費データの完全性を保証するために、媒介物ノードは、ユーザ消費データの格納の前に、グループの対称暗号化鍵に基づいてデータを暗号化することもでき、ここで、異なる媒介物ノードにまたがって格納されるユーザ消費データは、関心グループの媒介物ノードによって保持されるそのグループの対称暗号化鍵を介してのみ暗号化解除することができる。
【００４９】
さらに、中間ノードでのデータ破壊またはデータ消失の状況では、中間ノードは、使用可能なグループの対称暗号化鍵に基づいて、異なる中間ノードからユーザ消費データを回復することができることを了解されたい。しかし、中間ノードがダウンし、働いていない状況では、ダウンした媒介物ノードの関心グループのホスティングを引き受けるすべての他のノードが、永続ストレージ層を介して異なる中間ノードからユーザ消費データを回復するために、グループの対称暗号化鍵を所有しなければならない。このために、適格な媒介物ノード複製が、ダウンした媒介物ノードの関心グループをホスティングする際に、以前に集約されたグループ消費を取り出すことができるように、各中間ノードは、１つまたは複数の適格な媒介物ノード複製すなわち、ＤＨＴ複製プロトコルを使用してＤＨＴプロトコルに従って指定される媒介物ノード複製にグループの対称鍵を通信することもできる。
【００５０】
一実施態様では、永続ストレージ層は、ユーザ消費データの格納にＣＡＳＳＡＮＤＲＡフレームワークを利用することができる。永続ストレージ層が、ユーザ消費データの格納にＣＡＳＳＡＮＤＲＡフレームワークを利用することを説明したが、ＣＡＳＳＡＮＤＲＡフレームワークの機能性に類似する機能性を提供する任意の他のフレームワークを、プライバシ保護ミドルウェア・システムの永続ストレージ層で実施できることを了解されたい。
【００５１】
プライバシ保護ミドルウェア・システムの各媒介物ノードは、機能性のグループの実施のために上で説明した層のうちの１つまたは複数をインスタンス化することができる。各媒介物ノードは、説明されたもの以外の機能性を追加するために他の層および論理を実施することもできる。
【００５２】
本明細書で説明されるプライバシ保護システムは、類似する関心グループの（すなわち、共通の関心を有する）エンド・ユーザが、共通の媒介物ノードに匿名で集結し、この媒介物ノードに彼らの消費データを匿名でアップロードし、集約されたグループ消費を永続的に格納し、匿名機構を介して集結ノードで計算された推奨を受信することをも可能にする機構を提供する。さらに、プライバシ保護システムは、モバイル・デバイスなどのシン・クライアントの使用に関してエンド・ユーザに柔軟性を提供する。したがって、プライバシ保護システムは、広範囲のアプリケーション・シナリオにインターフェースおよびＡＰＩを公開する機能性を提供する。
【００５３】
この説明および図面が、単に、本主題の原理を示すことに留意されたい。したがって、当業者が、本明細書で明示的に説明されず、図示されないが、本主題の原理を具体化し、その趣旨および範囲に含まれるさまざまな配置を考案できることを了解されたい。さらに、本明細書で列挙されるすべての例は、主に、当技術を促進するために本発明人によって貢献される本主題および概念の原理を理解する際に読者を助ける教育的目的のみのためであることが特に意図され、そのような具体的に列挙される例および条件への限定なしに解釈されなければならない。さらに、本主題の原理、態様、および実施形態ならびにその特定の例を列挙する本明細書のすべての言明は、その同等物を包含することが意図されている。
【００５４】
また、本明細書で使用される時に当業者は、単語ｄｕｒｉｎｇ（〜中に）、ｗｈｉｌｅ（〜の間に）、およびｗｈｅｎ（〜時に）が、開始するアクションの際に瞬間的に行われるアクションを意味する正確な用語ではなく、初期アクションとその初期アクションによって開始される反応との間に、伝搬遅延など、短いが穏当な遅延があってもよいことをも了解するであろう。さらに、単語「ｃｏｎｎｅｃｔｅｄ（接続された）」および「ｃｏｕｐｌｅｄ（結合された）」は、説明の明瞭さのために終始使用され、直接接続または間接接続のいずれをも含むことができる。
【００５５】
エンド・ユーザにプライバシ保護を提供するシステムおよび方法が実施される形を、図１〜３に関して詳細に説明した。プライバシ保護を提供する説明されるシステムおよび方法の諸態様を、任意の個数の異なるコンピューティング・システム、伝送環境、および／または構成で実施することができるが、諸実施形態は、次の例示的なシステムの文脈で説明される。
【００５６】
図１に、本主題の実施形態による、パーソナライズされたコンテンツおよび推奨システムにアクセスすると同時のエンド・ユーザの個人情報およびプライベート情報のプライバシのためのプライバシ保護システム１０２のネットワーク環境１００実施態様を示す。本明細書で説明されるプライバシ保護システム１０２を、ルータ、ブリッジ、サーバ、コンピューティング・デバイス、ストレージ・デバイスなどを含むさまざまなネットワーク・デバイスを含む任意のネットワーク環境内で実施することができる。一実施態様では、プライバシ保護システム１０２は、第１のネットワーク１０６−１を介して、以下で個別におよび集合的にクライアント・デバイス１０８と称する１つまたは複数のクライアント・デバイス１０８−１、１０８−２、１０８−３、…、１０８−Ｎに接続されたプライバシ保護ミドルウェア・システム１０４を含む。
【００５７】
プライバシ保護ミドルウェア・システム１０４は、ラップトップ・コンピュータ、デスクトップ・コンピュータ、ノートブック、ワークステーション、メインフレーム・コンピュータ、サーバなど、さまざまなコンピューティング・デバイスとして実施され得る。プライバシ保護ミドルウェア・システム１０４が、エンティティとして図示されるが、プライバシ保護ミドルウェア・システム１０４を、ネットワーク上で分散された複数の媒介物ノードを含む分散コンピューティング・システムとして実施することもでき、ここで、各ノードは、ラップトップ・コンピュータ、デスクトップ・コンピュータ、ノートブック、ワークステーション、メインフレーム・コンピュータ、サーバなど、コンピューティング・デバイスとして実施され得る。さらに、媒介物ノードを、データの通信および交換のために中間ネットワーク１０６−２を介して接続することができる。
【００５８】
プライバシ保護ミドルウェア・システム１０４を、異なるサービス・プロバイダ１１０と情報を交換するために、別の第２の中間ネットワーク１０６−２に接続することもできる。単純さのために、第１のネットワーク１０６−１、媒介物ネットワーク１０６−３、および第２の中間ネットワーク１０６−２を、以下では個別におよび集合的にネットワーク１０６と称する。
【００５９】
ネットワーク１０６は、無線ネットワーク、有線ネットワーク、またはその組合せとすることができる。ネットワーク１０６を、お互いに相互接続され、単一の大きいネットワークとして機能する個々のネットワークの組合せ、たとえばインターネットまたはイントラネットとすることができる。ネットワーク１０６を、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、インターネット、イントラネット、ピア・ツー・ピア・ネットワーク、および仮想プライベート・ネットワーク（ＶＰＮ）を含む任意の公衆ネットワークまたは私有ネットワークとすることができ、ネットワーク１０６は、ルータ、ブリッジ、サーバ、コンピューティング・デバイス、ストレージ・デバイスなどのさまざまなネットワーク・デバイスを含むことができる。さらに、第１のネットワーク１０６−１、媒介物ネットワーク１０６−２、および第３のネットワーク１０６−３が、同一のまたは異なるネットワークを実施することができ、それぞれ同一のまたは異なる通史プロトコルを実施することができることを了解されたい。たとえば、第１のネットワーク１０６−１は、ＧＳＭ／ＵＭＴＳベースのネットワークを実施することができ、媒介物ネットワーク１０６−２および第３のネットワーク１０６−３は、ＣＤＭＡベースのネットワークを実施することができる。もう１つの例では、第１のネットワーク１０６−１媒介物ネットワーク１０６−２、および第３のネットワーク１０６−３は、インターネットなど、同一のネットワークとすることができる。
【００６０】
クライアント・デバイス１０８のそれぞれは、それぞれのクライアント・デバイス１０８とプライバシ保護ミドルウェア・システム１０４との間でネットワーク１０６を介して情報を交換するためにローカル・クライアント１１２を実施することができる。ローカル・クライアントが、クライアント・デバイス１０８上で動作するアプリケーションまたは機能モジュールであることを了解されたい。前に説明したように、クライアント・デバイス１０８は、サービス・プロバイダ１１０によって提供されるサービスを利用しまたはコンテンツを見るためにエンド・ユーザによって使用される。クライアント・デバイス１０８は、ラップトップ・コンピュータ、デスクトップ・コンピュータ、ノートブック、ワークステーション、メインフレーム・コンピュータ、セット・トップ・ボックス、メディア・プレイヤ、ならびに携帯電話機および携帯情報端末などのシン・クライアントなどのコンピューティング・デバイスを含むことができる。クライアント・デバイス１０８は、エンド・ユーザがネットワーク１０６を介してプライバシ保護ミドルウェア・システム１０４と情報を交換するのを容易にする。さらに、プライバシ保護ミドルウェア・システム１０４を、ネットワーク１０６を介してサービス・プロバイダ１１０に接続することができる。ローカル・クライアント１１２を、クライアント・デバイス１０８−３に関して図示したが、各クライアント・デバイス１０８が、プライバシ保護ミドルウェア・システム１０４と通信するためにローカル・クライアント１１２を含むはずであることを理解されたい。
【００６１】
動作中に、エンド・ユーザのアクティビティに基づくエンド・ユーザの関心プロファイルが、各クライアント・デバイス１０８上で動作するローカル・クライアント１１２によって生成され、ローカルに保存される。たとえば、エンド・ユーザの関心プロファイルを、エンド・ユーザに対応するプロファイル情報に基づいて生成することができる。プロファイル情報は、たとえば、エンド・ユーザによって訪問されたウェブサイト、エンド・ユーザによって再生されまたはダウンロードされた曲またはビデオ、エンド・ユーザによって使用された製品または利用されもしくはレビューされたサービスなどを示すことができる。生成された関心プロファイルに基づいて、ローカル・クライアント１１２は、エンド・ユーザを１つまたは複数の事前に定義された関心グループに分類する。関心グループを、類似する関心および選択を共有するエンド・ユーザのグループと理解することができる。本主題の一実施態様では、エンド・ユーザの変化する関心および好みに基づくすべての可能な関心グループの網羅的リスティングを、ローカル・クライアント１１２を用いて使用可能とすることができる。さらに、ローカル・クライアント１１２を、時々、関心グループのそのようなリスティングおよびそれらの分類パラメータを用いて更新することができる。
【００６２】
エンド・ユーザのプライバシの保護を保証するために、プロファイル・スライス化およびプライバシ保護ミドルウェア・システム１０４へのスライス化された関心プロファイル送信の技法が、ローカル・クライアント１１２によって利用される。一実施態様では、エンド・ユーザのプロファイル情報を、ローカル・クライアント１１２によって、各セグメントがキー／値対の１つまたは複数のセットを含む複数のセグメントにスライス化することができる。ローカル・クライアント１１２は、エンド・ユーザのプロファイル情報のセグメント自体が、完全な関心プロファイルを構成し、エンド・ユーザのアイデンティティを推論するのに使用できる十分なプロファイル情報を含まないことを保証することもできる。さらに、エンド・ユーザ関心プロファイルの各セグメントおよびエンド・ユーザがその中で特徴を表された関心グループを示すグループｉｄが、ローカル・クライアント１１２によってプライバシ保護ミドルウェア・システム１０４に送信される。
【００６３】
エンド・ユーザについて識別された事前に定義された関心グループのうちの１つまたは複数に基づいて、ローカル・クライアント１０８は、エンド・ユーザに対応する関連するプロファイル情報をプライバシ保護ミドルウェア・システム１０４に送信することができる。たとえば、プロファイル情報に基づいて、エンド・ユーザは、映画、スポーツ、および電子ブックなど複数の関心グループに分類されている可能性がある。ローカル・クライアント１１２は、エンド・ユーザが分類された関心グループに基づいて、関心プロファイルの関連するスライスを関連する関心グループに送信することができる。各関心グループが、プライバシ保護ミドルウェア・システム１０４の特定の媒介物ノードによってホスティングされる可能性があるので、特定の関心グループに関連する関心プロファイルのスライスを、その特定の関心グループをホスティングする中間ノードに送信することができる。
【００６４】
本主題の一実施態様では、エンド・ユーザのローカル・クライアント１１２は、エンド・ユーザの関心およびアクティビティではなく、利用されたアプリケーションに基づいてエンド・ユーザを関心グループに関連付けることもできる。たとえば、エンド・ユーザ・クライアント・デバイス１０８上の異なるアプリケーションから収集されたエンド・ユーザのアクティビティおよび彼らの関心とは別に、ローカル・クライアントは、位置ベースの推奨サービスを提供するために、エンド・ユーザの位置に基づいてエンド・ユーザを関心グループに関連付けることができる。エンド・ユーザが、エンド・ユーザの現在位置に基づいて関心グループに関連付けられる状況で、エンド・ユーザが、エンド・ユーザの位置に関係する推奨サービスを受信できることを了解されたい。たとえば、ＬＢＳ推奨サービスを利用するエンド・ユーザのローカル・クライアント１１２は、エンド・ユーザがパリでローミングしている時に、エンド・ユーザを関心グループ・パリに関連付けることができる。同様に、ローカル・クライアントは、エンド・ユーザによって利用されるオンライン・ソーシャル・ネットワークに基づいて、エンド・ユーザを関心グループに関連付けることもできる。関心グループが、オンライン・ソーシャル・ネットワーク内でエンド・ユーザがサブスクライブした異なるコミュニティまたはソーシャル・サークルに対応することが、当業者によって了解されるはずである。
【００６５】
前に説明したように、プライバシ保護ミドルウェア・システム１０４は、エンド・ユーザのプライバシ保護のために分散媒介物ノードの非集中化された解決策を実施し、ここで、同一の関心グループｉｄに関連するエンド・ユーザは、パーソナライズされたコンテンツおよび推奨サービスを受信するために、分散媒介物ノードのプールの中からのいくつかの共通の媒介物ノードに彼らのユーザ消費データを集結する。ユーザ消費データが、エンド・ユーザの関心プロファイルのスライスとすることができるエンド・ユーザに対応する関連するプロファイル情報を含むことができることを理解されたい。
【００６６】
そのような状況で、映画に関係する任意のエンド・ユーザのプロファイル情報を、プライバシ保護ミドルウェア・システム１０４のある媒介物ノードに送信することができ、スポーツに関係する任意のエンド・ユーザのプロファイル情報を、プライバシ保護ミドルウェア・システム１０４の別の媒介物ノードに送信することができる。したがって、任意の関心グループに関するプロファイル情報を収集する任意の媒介物ノードは、その関心グループの関心グループ・アグリゲータ・ノード（ｉｎｔｅｒｅｓｔ  ｇｒｏｕｐ  ａｇｇｒｅｇａｔｏｒ  ｎｏｄｅ）と称し、各関心グループ・アグリゲータ・ノードは、アグリゲータ・ノードｉｄと称するアイデンティティ番号を割り当てられる。単純さのために、ある媒介物ノードに関連するアグリゲータ・ノードｉｄが、その媒介物ノードによってホスティングされる関心グループと同一であると考える。たとえば、映画に関係する関心グループの関心グループｉｄが９９である場合に、関心グループ映画に関する情報を収集し、関心グループｉｄ  ９９に関連する媒介物ノードを、関心グループ・アグリゲータ・ノード９９と呼ぶことができる。
【００６７】
一実施態様で、異なる関心グループの関心グループ・アグリゲータ・ノードとして働く媒介物ノードは、ネットワーク１１６−２を介してサービス・プロバイダ１１０から推奨サービスおよびパーソナライズされたコンテンツを要求するためにすべての関連するエンド・ユーザのユーザ消費を交合することができる。各エンド・ユーザのローカル・クライアント１１２は、関連する関心グループ・アグリゲータ・ノードのそれぞれにユーザ消費データを提供するので、各関心グループ・アグリゲータ・ノードは、関心グループに属するエンド・ユーザによって利用されるサービスの好まれるカテゴリを識別し、これをサービス・プロバイダ１１０に提供して、推奨およびパーソナライズされたコンテンツを入手することができる。
【００６８】
本主題の実施態様によれば、プライバシ保護ミドルウェア・システム１０４の各媒介物ノードを、エンド・ユーザのプライベート情報および個人情報に真のプライバシを提供するバックエンド・ミドルウェア・システム１１４として実施することができる。媒介物ノードのそれぞれによって実施されるバックエンド・ミドルウェア・システム１１４は、クライアント・デバイス１０８上で動作するローカル・クライアント１１２とプライバシ保護ミドルウェア・システム１０４との間のセキュア通信を容易にすることができる。さらに、バックエンド・ミドルウェア・システム１１４は、暗号化された通信および暗号化されていない通信が広範囲のアプリケーションおよびビジネス・モデルの使用を可能にするためにサポートされるように、プライバシ保護ミドルウェア・システム１０４とサービス・プロバイダとの間の通信を可能にすることもできる。
【００６９】
本主題の一実施対応では、バックエンド・ミドルウェア・システム１１４は、プライバシ保護ミドルウェア・システム１０４の複数の機能性をサポートするために異なるフレームワークを用いてインスタンス化される、複数の層を含むことができる。機能性を提供するのに利用されるフレームワークと一緒の異なる層の機能を、異なる図面に関して本明細書で後で説明する。
【００７０】
関心グループの関心グループ・アグリゲータ・ノードとして働く各媒介物ノードは、パーソナライズされたコンテンツおよび推奨サービスをエンド・ユーザに提供する。バックエンド・ミドルウェア・システム１１４として実施される媒介物ノードは、本明細書で後で説明されるさまざまなフレームワークおよび技法を介してインスタンス化されるさまざまな層を実施することによって、エンド・ユーザのプライバシが保たれることを保証し、プライバシ保護ミドルウェア・システム１０４は、推奨サービスが提供される特定のクライアント・デバイス１０８を知らない。一実施態様では、クライアント・デバイス１０８を、エンド・ユーザに関するサービスのカスタマイズされた推奨を生成するために、エンド・ユーザに対応する関心プロファイルに基づいて、受信された推奨サービスをさらに処理するように構成することができる。クライアント・デバイス１０８およびプライバシ保護ミドルウェア・システム１０４の実施態様の詳細は、本明細書で後で他の図面に関連して説明する。
【００７１】
例示的なプライバシ保護ミドルウェア・システム１０４を、本主題の図２（ａ）および図２（ｂ）に関して説明する。
【００７２】
図２（ａ）に、本主題の実施形態による、各媒介物ノードがバックエンド・ミドルウェア・システム１１４を実施する、複数の媒介物ノードを実施するプライバシ保護ミドルウェア・システム１０４を示す。本主題によれば、ローカル・クライアント１１２およびプライバシ保護ミドルウェア・システム１０４は、ネットワーク１０６のさまざまなコンポーネントを介して、お互いに通信的に結合される。図２（ｂ）に、プライバシ保護ミドルウェア・システム１０４の各媒介物ノードで実施されるバックエンド・ミドルウェア・システム１１４のコンポーネントを示す。バックエンド・ミドルウェア・システム１１４のコンポーネントのさまざまな機能性を、図２（ａ）および２（ｂ）に示された異なるモジュールに関して説明する。
【００７３】
さらに、上で説明したように、複数の媒介物ノードを実施するプライバシ保護ミドルウェア・システム１０４は、ネットワーク１０６を介してエンド・ユーザのローカル・クライアント１１２と通信することができる。多くの場合に、送信するステーション、交換するステーション、および通信リンクを含む図示されたもの以外の複数のネットワーク・エンティティが、プライバシ保護ミドルウェア・システム１０４とローカル・クライアントとの間にある可能性があるが、これらは、本説明の簡潔さのために省略されている。同様に、さまざまな肯定応答および確認ネットワーク・エンティティも、明瞭さのために省略されている。
【００７４】
プライバシ保護ミドルウェア・システム１０４のバックエンド・ミドルウェア・システム１１４は、１つまたは複数のプロセッサ２０２、インターフェース２０４、およびプロセッサ２０２に結合されたメモリ２０６などのメモリを含む。一実施形態では、説明されるバックエンド・ミドルウェア・システム１１４を、プライバシ保護ミドルウェア・システム１０４の媒介物ノードによって実施することができる。
【００７５】
プロセッサ２０２を、１つまたは複数のマイクロプロセッサ、マイクロコンピュータ、マイクロコントローラ、ディジタル信号プロセッサ、中央処理装置、状態機械、論理回路網、および／または動作命令に基づいて信号を操作する任意のデバイスとして実施することができる。他の能力の中でも、プロセッサ２０２は、メモリ２０６に格納されたコンピュータ可読命令を取り出し、実行するように構成される。
【００７６】
「プロセッサ」としてラベルを付けられたすべての機能ブロックを含む図面に示されたさまざまな要素の機能を、専用ハードウェアならびに適当なソフトウェアに関連してソフトウェアを実行することのできるハードウェアの使用を介して提供することができる。プロセッサによって提供される時に、単一の専用プロセッサ、単一の共有されるプロセッサ、またはそのうちのいくつかを共有できる複数の個別のプロセッサによって機能を提供することができる。さらに、用語「プロセッサ」の明示的使用は、ソフトウェアを実行できるハードウェアを排他的に指すと解釈されてはならず、限定なしに、暗黙のうちにディジタル信号プロセッサ（ＤＳＰ）ハードウェア、ネットワーク・プロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、ソフトウェアを格納する読取り専用メモリ（ＲＯＭ）、ランダム・アクセス・メモリ（ＲＡＭ）、および不揮発性ストレージを含むことができる。通常のおよび／またはカスタムの他のハードウェアを含めることもできる。
【００７７】
インターフェース２０４は、さまざまなソフトウェア・インターフェースおよびハードウェア・インターフェース、たとえば、キーパッド、ユーザ・インターフェース・スクリーン、および外部ディスプレイなどの周辺デバイスのインターフェースを含むことができる。一実施態様では、インターフェース２０４は、各媒介物ノードをプライバシ保護ミドルウェア・システム１０４の別の媒介物ノードに結合することができる。インターフェース２０４は、無線ＬＡＮ（ＷＬＡＮ）、セルラ、または衛星などの無線ネットワークを含むさまざまなネットワークおよびプロトコル・タイプ内でのサービス・プロバイダ１１０との通信を容易にすることもできる。
【００７８】
メモリ２０６は、たとえばスタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）およびダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）などの揮発性メモリならびに／または読取り専用メモリ（ＲＯＭ）、消去可能プログラム可能ＲＯＭ、フラッシュ・メモリ、ハード・ディスク、光ディスク、および磁気テープなどの不揮発性メモリを含む、当技術分野で既知の任意のコンピュータ可読媒体を含むことができる。メモリ２０６は、モジュール２０８およびデータ２１０を含むことができる。モジュール２０８は、とりわけ、特定のタスクを実行するか特定の抽象データ型を実施する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。データ２１０は、とりわけ、モジュール２０８のうちの１つまたは複数によって処理され、受け取られ、生成されるデータを格納するリポジトリとして働く。
【００７９】
モジュール２０８は、エンド・ユーザのプライベート情報および個人情報に対するプライバシ保護を提供するために異なる機能性を実施する。前に説明したように、各バックエンド・ミドルウェア・システム１１４は、異なる層によってそのような機能性を実施する。一実施態様では、モジュール２０８は、さまざまなフレームワークをインスタンス化することによって異なる層によって実施される機能性を実施する。
【００８０】
モジュール２０８は、さらに、たとえばストレージ・モジュール２１２、アプリケーション・インターフェース・モジュール２１４、ルーティング・モジュール２１６、ネットワーキング・モジュール２１８、および他のモジュール２２０を含む。他のモジュール２２０は、バックエンド・ミドルウェア・システム１１４上で論理およびルーチンを補うプログラムを含むことができる。データ２１０は、関心グループｉｄデータ２２２、ユーザ消費データ２２４、および他のデータ２２６など、１つまたは複数のモジュール２０８の実行の結果として生成されるデータを含む。関心グループｉｄデータ２２２は、対応する媒介物ノードのためにバックエンド・ミドルウェア・システム１１４によってホスティングされる関心グループに関連する情報に関係するものとすることができる。さらに、ユーザ消費データ２２４は、関心グループに関連する異なるエンド・ユーザに関するデータを含むことができる。さらに、他のデータ２２６は、他のモジュール２２０によって生成されたデータを含むことができる。
【００８１】
単純さのために、さまざまな機能性を実施し、関連するフレームワークをインスタンス化するために対応するモジュールと一緒にバックエンド・ミドルウェア・システム１１４によって実施される異なる層を、図２（ｂ）に示した。異なる層の機能性が、ある種のモジュールに関して説明されるが、モジュールの組合せを利用して、１つまたは複数の説明される層の機能性を提供できることを了解されたい。さらに、説明される層の機能性を提供するために説明されるものより少数のモジュールをも了解されたい。
【００８２】
図２（ｂ）に関して参照すると、バックエンド・ミドルウェア・システム１１４は、ネットワーク匿名化層２５０、ルーティングおよびマッピング層２５２、ＡＰＩ層２５４、および永続ストレージ層を含む異なる層を含む。ネットワーク匿名化層２５０は、エンド・ユーザのローカル・クライアント１１２が、所期の受取人だけが見るためにデータを暗号化解除できるデータ暗号化の要件を全く伴わずに、匿名でプライバシ保護ミドルウェア・システム１０４の媒介物ノードと通信することを可能にする。ネットワーク匿名化層２５０は、一方では、エンド・ユーザの匿名性をサポートし、他方では、バックエンド・ミドルウェア・システム１１４がＰＵＳＨ推奨をエンド・ユーザに匿名で配送することを可能にする。一実施態様では、匿名化層２５０は、リレーが重いコンピューティング暫定チャネルを可能にするのと同時に、シン・クライアントが推奨サービスをも利用することを可能にするクライアント／リレー・ベースのルーティング機構に基づいて情報を通信することができる。一実施態様では、ネットワーキング・モジュール２１８は、ネットワーク匿名化層によってサポートされる機能性の実施に必要なフレームワークを実施するように構成される。
【００８３】
ルーティングおよびマッピング層２５２は、関心グループｉｄに対応する媒介物ノードの判定をサポートする。前に説明したように、異なる媒介物ノードが、異なる関心グループに応じ、各媒介物ノードが、関心グループの関心グループ・アグリゲータ・ノードとして働くので、ルーティングおよびマッピング層２５２は、すべての関心グループの関心グループ・アグリゲータ・ノードの判定をサポートする。一実施態様では、ルーティング・モジュール２１６が、ルーティングおよびマッピング層によってサポートされる機能性を実施するのに必要なフレームワークを実施する。
【００８４】
同様に、ＡＰＩ層２５４は、ローカル・クライアントとプライバシ保護ミドルウェア・システム１０４の媒介物ノードとの間の相互作用を可能にすることができる。一実施態様では、アプリケーション・インターフェース・モジュール２１４が、ＡＰＩ層２５４の機能性をサポートするためにフレームワークおよびウェブ・サービスを実施することができる。さらに、永続ストレージ層２５６は、関心プロファイルに基づいてエンド・ユーザのローカル・クライアント１１２によって提供されるユーザ消費データ２２４を格納することができる。永続ストレージ層２５６の実施態様は、プライバシ保護ミドルウェア・システム１０４が媒介物ノードの変更および更新に起因して引き起こされる激動にうまく対処することを可能にすることができる。もう１つの実施態様では、ストレージ・モジュール２１２を、エンド・ユーザのローカル・クライアント１１２によって提供されるユーザ消費データの格納をサポートするためにフレームワークを実施するように構成することができる。
【００８５】
動作中に、エンド・ユーザのローカル・クライアント１１２は、パーソナライズされたコンテンツおよび推奨サービスを入手するために、プライバシ保護ミドルウェア・システム１０４の媒介物ノードにユーザ消費データ２２４を提供する。一実施態様では、ネットワーキング・モジュール２１８が、エンド・ユーザのローカル・クライアントとプライバシ保護ミドルウェア・システム１０４の媒介物ノードとの間の匿名通信をサポートするために、ＴＯＲなどのオニオン・ルーティング・フレームワークをインスタンス化する。さらに、一実施態様では、アプリケーション・インターフェース・モジュール２１４を、エンド・ユーザのローカル・クライアントとプライバシ保護ミドルウェア・システム１０４の媒介物ノードとの間の相互作用をインスタンス化するために、ウェブ・サービスに基づくさまざまなＡＰＩを実施するように構成することができる。前記実施態様では、アプリケーション・インターフェース・モジュール２１４は、ｓｕｂｓｃｒｉｖｅ  ＡＰＩ、ｕｐｌｏａｄ  ＡＰＩ、ｒｅｃｅｉｖｅ−ＰＵＳＨ−Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  ＡＰＩ、ｌｏｏｋ−ｕｐ−ＰＵＬＬ−Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  ＡＰＩなどの複数のＡＰＩをウェブ・サービスとしてサポートすることができる。
【００８６】
一例では、エンド・ユーザのユーザ消費データ２２４を提供するために、エンド・ユーザのローカル・クライアント１１２は、関心グループに関連する他の情報と一緒に、関心プロファイルのスライスをプライバシ保護ミドルウェア・システム１０４にアップロードすることができる。このために、エンド・ユーザのローカル・クライアント１１２は、プライバシ保護ミドルウェア・システム１０４の中間ノード上のウェブ・サービスｕｐｌｏａｄ  ＡＰＩを呼び出すことができ、各媒介物ノードは、バックエンド・ミドルウェア・システム１１４を実施する。参照のために、エンド・ユーザから関心プロファイルのスライスを受信する中間ノードを、情報の交換に関するプロファイル・スライス・コレクタと称する。一実施態様では、ローカル・クライアント１１２は、１つの実例で、関心グループの関心プロファイルのスライス、関心グループに関連するユーザ詳細、および関心グループに関するユーザ・プリファレンスを含む、ある関心グループに関連するユーザ消費データ２２４全体をプライバシ保護ミドルウェア・システム１０４に送信することができる。もう１つの実施態様では、ローカル・クライアント１１２は、異なる実例で、異なるセグメント内の関心グループに関連する同一のユーザ消費データを送信することができる。
【００８７】
一実施態様では、関心プロファイルのスライスをアップロードするために、中間ノードをランダムに識別することができる。たとえば、エンド・ユーザ、たとえばＡが、関心グループ・アグリゲータ・ノード８８に関心プロファイルのスライスをアップロードするために、エンド・ユーザＡのローカル・クライアント１１２は、複数の媒介物ノードの中から中間ノードをランダムに選択することができる。そのようなシナリオでは、エンド・ユーザＡのローカル・クライアント１１２は、関心グループ・アグリゲータ・ノード２００として参照される、関心グループ２００をホスティングする中間ノードを選択することができる。関心グループ・アグリゲータ・ノード２００が、ユーザに関してプロファイル・スライス・コレクタと呼ばれることを了解されたい。したがって、エンド・ユーザＡのローカル・クライアント１１２は、関心プロファイルのスライスを、関心グループ２００をホスティングするプロファイル・スライス・コレクタにアップロードすることができる。エンド・ユーザのローカル・クライアント１１２とプライバシ保護ミドルウェア・システム１０４との間の異なる通信中に、そのユーザのプロファイル・スライス・コレクタとして働く中間ノードをランダムに変更し、また匿名で判定できることをも了解されたい。たとえば、エンド・ユーザＡについて、関心グループ・アグリゲータ・ノード２００への関心グループ８８に関連する関心プロファイルのスライスのアップロードの後に、エンド・ユーザＡのローカル・クライアント１１２は、関心プロファイルの別のスライスをもう一度アップロードすることができる。関心プロファイルの第２のスライスを、ここで、別の関心グループ５００に関連付けることができる。関心プロファイルの第２のスライスをアップロードするために、エンド・ユーザＡのローカル・クライアント１１２は、ここで、関心グループ１７をホスティングする別の媒介物ノードすなわち関心グループ・アグリゲータ・ノード１７を、そのプロファイル・スライス・コレクタとしてランダムに識別することができる。
【００８８】
さらに、関心グループ・アグリゲータ・ノード８８の関心プロファイルのスライスが関心グループ・アグリゲータ・ノード２００によって受信されまたは関心グループ・アグリゲータ・ノード５００の関心プロファイルの第２のスライスが関心グループ・アグリゲータ・ノード１７によって受信される前記状況で、関心プロファイルのそれぞれのスライスを、ＤＨＴルーティング機構に基づいて、ルーティングおよびマッピング層２５２のルーティング・モジュール２１６によって関連する関心グループ・アグリゲータ・ノードに転送することができる。ルーティング機構の詳細は、この説明で後で指定される。
【００８９】
もう１つの実施態様では、エンド・ユーザの関心プロファイルのスライスをアップロードするために、中間ノードを、各エンド・ユーザに特に割り振ることができ、エンド・ユーザのローカル・クライアント１１２は、割り振られた中間ノードを介してのみＡＰＩを呼び出すことができる。さらに、本主題のもう１つの実施態様では、一特定の中間ノードを、エンド・ユーザとプライバシ保護ミドルウェア・システム１０４との間のすべての通信のために全エンド・ユーザのプロファイル・スライス・コレクタとして割り振ることができる。
【００９０】
本主題の一実施態様では、エンド・ユーザの関心プロファイルのスライスを提供されるようにランダムに識別された中間ノードは、ローカル・クライアント１１２によって連絡される。前に説明したように、エンド・ユーザと中間ノードとの間の匿名通信をサポートし、エンド・ユーザのプライバシを保護するために、エンド・ユーザとプライバシ保護ミドルウェア・システム１０４との間の通信は、ネットワーク匿名化層２５０によってインスタンス化されるフレームワークに基づく。前記実施態様では、ネットワーキング・モジュール２１８は、匿名通信のためにＴＯＲフレームワークをインスタンス化し、ＴＯＲ技法を介してエンド・ユーザの関心プロファイルのスライスを受信することができる。
【００９１】
たとえば、エンド・ユーザのローカル・クライアント１１２は、エンド・ユーザＡの関心プロファイルのスライスを、ＴＯＲサーバを介するＴＯＲ技法に基づいて、ランダムに識別されたプロファイル・スライス・コレクタに転送することができる。ＴＯＲ技法が、複数の中間ホッピングおよびルーティング・サーバを利用することによって、２つのエンティティの間の情報の匿名交換を提供することが、当業者によって理解されるはずである。情報は、暗号化されたチャネルを介して交換されるので、これは、一方では、情報に対するセキュリティを提供し、他方では、情報の暗号化を必要とせず、広範囲のアプリケーションおよびビジネス・モデルを使用可能にする。
【００９２】
一実施態様では、エンド・ユーザと中間ノードとの間の通信に利用されるＴＯＲサーバを、プライバシ保護ミドルウェア・システム１０４自体のさまざまな中間ノードによって実施することができる。もう１つの実施態様では、全世界で使用可能なＴＯＲサーバを、エンド・ユーザとプライバシ保護ミドルウェア・システム１０４との間の通信のために利用することができる。
【００９３】
ローカル・クライアント１１２によってＴＯＲサーバを介してプロファイル・スライス・コレクタに送信されるエンド・ユーザの関心プロファイルのスライスは、バックエンド・ミドルウェア・システム１１４内のネットワーキング・モジュール２１８によって、ＴＯＲオーバーレイの出口ノードを介して入手される。前に説明したように、その後、関心プロファイルのスライスを、ルーティング・モジュール２１６によって関心グループ・アグリゲータ・ノードのルーティングすることができる。一実施態様では、ある中間ノードから別の中間ノードへの情報のルーティングは、ルーティングおよびマッピング層２５２によって使用可能にされる。一実施態様では、ルーティングおよびマッピング層２５２のルーティング・モジュール２１６は、情報のルーティングのためにＤＨＴルーティング技法に基づいてＰＡＳＴＲＹ（登録商標）フレームワークをインスタンス化することができる。たとえば、エンド・ユーザＡについて、関心グループ８８に関連し、関心グループ・アグリゲータ・ノード８８のためのものである関心プロファイルのスライスが、関心グループ・アグリゲータ・ノード２００によって受信される場合に、ルーティング・モジュール２１６は、関心プロファイルのスライスを、ＤＨＴルーティングに基づいてＰＡＳＴＲＹ（登録商標）フレームワークを介して関心グループ・アグリゲータ・ノード２００に転送することができる。ＤＨＴルーティングの機構は、当技術分野で周知なので、その機構の詳細は、簡潔さのために省略する。
【００９４】
前に説明したように、中間ノードによって実施されるバックエンド・ミドルウェア・システムの永続ストレージ層２５６は、エンド・ユーザから受信された情報の格納を可能にすることができる。関心プロファイル・アグリゲータ・ノードは、ルーティング・モジュール２１６を介して異なるプロファイル・スライス・コレクタからプロファイル情報のスライスを含むユーザ消費データを受信した時に、その情報を永続ストレージ層２５６を介して格納することができる。ストレージ・モジュール２１２は、たとえば、情報の格納を可能にするＣＡＳＳＡＮＤＲＡフレームワークなど、永続ストレージ能力と共に非集中化された手法をサポートするフレームワークを実施することができる。
【００９５】
プライバシ保護ミドルウェア・システム１０４の１つまたは複数の異なる媒介物ノードが、そのそれぞれの媒介物グループをホスティングすることができない状況が発生する場合がある。そのような状況では、これらの媒介物ノードによって格納されたユーザ消費データ２２４が、失われる可能性があり、パーソナライズされたコンテンツを提供するサービスおよび推奨サービスが、中断される可能性がある。したがって、一実施形態では、各媒介物ノードのストレージ・モジュール２１２は、異なるエンド・ユーザのユーザ消費データを格納する。
【００９６】
一実施態様では、一特定の関心グループに関連する異なるユーザのユーザ消費データ２２４は、ユーザ消費データ２２４に格納されることとは別に、セグメント化され、複数の媒介物ノードを介して複製もされる。情報のセグメント化および複製は、単一故障点の状況の除去を保証する。情報の分離および複製が、任意の１つの媒介物ノードが別の媒介物ノードのユーザ消費データ２２４全体を入手する必要がないことを保証し、これによって、リンカビリティ攻撃の可能性を除去することを了解されたい。
【００９７】
永続ストレージ層２５６の実施は、プライバシ保護ミドルウェア・システム１０４が、プライバシ保護ミドルウェア・システム１０４の媒介物ノードでの変更および更新に起因して引き起こされる激動にうまく対処することを可能にすることができる。
【００９８】
動作中に、特定の関心グループをホスティングする各媒介物ノードは、ユーザ消費データが媒介物ノードによって失われる時、または媒介物ノードがダウンしておらず、別の媒介物ノードがグループのホスティングを開始する時など、将来の事例のために異なるユーザの集約されたユーザ消費データ２２４を格納することができる。そのような事例では、全エンド・ユーザからもう一度ユーザ消費データを受信することではなく、永続ストレージ層データを介する媒介物ノードからのユーザ消費データの取出が、すばやく面倒ではない交合を可能にすることができる。言い替えると、激動の下で、新しい中間ノードは、関心グループの以前にアップロードされたユーザ消費データを取り出すことができなければならない。
【００９９】
しかし、一実施態様では、異なるグループに現れるまれなＵＲＬなど、リンカビリティ攻撃を防ぐために、単一の媒介物ノードがグループにまたがって関係するユーザ消費全体を見るために別の媒介物ノードのユーザ消費データ全体を受信することがなくなるように、ユーザ消費データ２２４を分離し、異なる媒介物ノードに格納することができる。前記実施態様では、異なる媒介物ノードで格納されるユーザ消費データの完全性を保証するために、媒介物ノードは、ユーザ消費データの格納の前に、グループの対称暗号化鍵に基づいてデータを暗号化することもでき、ここで、異なる媒介物ノードにまたがって格納されるユーザ消費データは、関心グループの媒介物ノードによって保持されるそのグループの対称暗号化鍵を介してのみ暗号化解除することができる。
【０１００】
さらに、中間ノードでのデータ破壊またはデータ消失の状況では、中間ノードは、使用可能なグループの対称暗号化鍵に基づいて、異なる中間ノードからユーザ消費データを回復することができることを了解されたい。しかし、中間ノードがダウンし、働いていない状況では、ダウンした媒介物ノードの関心グループのホスティングを引き受けるすべての他のノードが、永続ストレージ層を介して異なる中間ノードからユーザ消費データを回復するために、グループの対称暗号化鍵を所有しなければならない。このために、適格な媒介物ノード複製が、ダウンした媒介物ノードの関心グループをホスティングする際に、以前に集約されたグループ消費を取り出すことができるように、各中間ノードは、１つまたは複数の適格な媒介物ノード複製すなわち、ＤＨＴ複製プロトコルを使用してＤＨＴプロトコルに従って指定される媒介物ノード複製にグループの対称鍵を通信することもできる。
【０１０１】
媒介物ノード複製が複数のグループ対称鍵を獲得し、適格な複製の役割を引き受けるための弾力性を改善するために、追加のチェックを組み込んで、グループの対称鍵を所有する任意の媒介物ノード複製と比較して、主媒介物ノード複製のみによるアクセスを保証することができる。このために、ユーザ消費データを照会する中間ノードは、関心グループの関心グループ・アグリゲータ・ノードとして働くために、ＤＨＴ近傍証明書（ＤＨＴ  ｎｅｉｇｈｂｏｒｈｏｏｄ  ｃｅｒｔｉｆｉｃａｔｅ）を提示することができる。ＤＨＴ近傍証明書を、報告された近傍を監査することによって動的に検証することができる。標準的なＤＨＴルーティング・セキュリティ機構と結合されたこの機構は、単一の媒介物ノードが多数のグループのユーザ消費データを見るのを防ぎ、これによって、リンカビリティ攻撃を防ぐ。
【０１０２】
一実施態様では、永続ストレージ層２５６は、プライバシ保護システム１０２の複数の異なる媒介物ノードにまたがって１つの媒介物ノードのユーザ消費データを格納するために、ＣＡＳＳＮＤＲＡフレームワークを実施することができる。
【０１０３】
さらに、異なる複数の媒介物ノードに渡ってデータをセグメント化し、複製する、ＣＡＳＳＡＮＤＲＡフレームワークを実施するストレージ・モジュール２１２は、グループの対称鍵に基づいて、より後の場合にデータ集約を可能にする。これは、新しい媒介物ノードがユーザ消費データ２２４の最小限の消失を伴って関心グループのホスティングを再開することを可能にする。たとえば、ある媒介物ノードが関心グループをホスティングすることができない、たとえば、関心グループ５４４の関心グループ・アグリゲータ・ノード５４４の状況において。そのような状況では、関心グループ５４４に関連するユーザ消費データ２２４は、ＣＡＳＳＡＮＤＲＡフレームワークに基づいて、プライバシ保護ミドルウェア・システム１０４の他の媒介物ノードを用いて格納されるはずである。新しい中間ノードが、関心グループ・アグリゲータ・ノード５４４のホスティングを引き受ける場合に、その媒介物ノードには、ＣＡＳＳＡＮＤＲＡフレームワークに基づいて他の媒介物ノードから関心グループ５４４に関連するユーザ消費データが提供されるはずである。
【０１０４】
もう１つの実施態様では、関心プロファイル・アグリゲータ・ノードは、エンド・ユーザに情報を提供することもできる。この情報は、新しいまたは更新されたユーザ消費データ２２４が、匿名ルックアップ手順を介してエンド・ユーザから関心プロファイル・アグリゲータ・ノードによって受信される場合、または、関心プロファイル・アグリゲータ・ノードが情報をエンド・ユーザに提供する（プッシュする）ことを望む、より後の場合のいずれかに提供され得る。
【０１０５】
関心プロファイル・アグリゲータ・ノードが、匿名ルックアップ手順を介してエンド・ユーザから新しいまたは更新されたユーザ消費データ２２４を受信する状況で、最終的に新しいまたは更新されたユーザ消費２２４データを受信する関心グループ・アグリゲータ・ノードは、パーソナライズされたコンテンツおよび推奨サービスをエンド・ユーザに提供することによって応答することができる。最終的に新しいまたは更新されたユーザ消費データ２２４を受信する関心グループ・アグリゲータ・ノードを、ユーザ消費データ２２４に関連する関心グループをホスティングする媒介物ノードとすることができる。たとえば、エンド・ユーザＡのローカル・クライアント１１２が、ランダムに選択されたプロファイル・スライス・コレクタ、たとえばプロファイル・スライス・コレクタΦにエンド・ユーザＡの更新された位置を提供できる時に、そのプロファイル・スライス・コレクタのルーティング・モジュール２１６は、エンド・ユーザＡの更新された位置を、更新された位置の関心プロファイルをホスティングする適当な関心プロファイル・アグリゲータ・ノード、たとえば関心プロファイル・アグリゲータ・ノードαにルーティングすることができる。その状況で、関心プロファイル・アグリゲータ・ノードαは、更新された位置の近くの名所に関する推奨サービスを提供することができる。このために、関心プロファイル・アグリゲータ・ノードαのアプリケーション・インターフェース・モジュール２１４は、エンド・ユーザＡに提供される必要な情報を交合することができ、関心プロファイル・アグリゲータ・ノードαのルーティング・モジュール２１６は、交合された情報をプロファイル・スライス・コレクタΦにルーティングすることができる。その後、プロファイル・スライス・コレクタ２１８のネットワーキング・モジュール２１８は、複数のＴＯＲサーバを介するＴＯＲ機構に基づいて、交合された情報をエンド・ユーザＡに提供することができる。
【０１０６】
同様に、関心プロファイル・アグリゲータ・ノードは、いずれかの更新されたユーザ消費データ２２４が、エンド・ユーザについて受信されない時であっても、たとえば以前に使用可能であったユーザ消費データ２２４に基づいて、エンド・ユーザに情報を提供することもできる。そのような状況は、すべての規則的な時間間隔の後の場合の情報の提供、サブスクリプション情報の提供、更新された関心および他の類似する関心を保持するエンド・ユーザの好みに基づくユーザへの推奨の提供などを含むことができる。しかし、プライバシ保護ミドルウェア・システム１０４は、エンド・ユーザが媒介物ノードと匿名で通信することを可能にするので、エンド・ユーザのアイデンティティは、媒介物ノードに未知であり、エンド・ユーザのアイデンティティに基づくまたはエンド・ユーザとプロファイル・スライス・コレクタのうちの１つとの間の既に確立されたリンクなしのエンド・ユーザへの直接の情報の提供は、不可能である。
【０１０７】
したがって、そのような状況では、エンド・ユーザと独立に通信するために、ＡＰＩ層２５４およびネットワーク匿名化層２５０は、それぞれユーザのローカル・クライアントおよびバックエンド・ミドルウェア・システム１１４でＴＯＲクライアントおよびＴＯＲ隠しサーバ（ＴＯＲ  ｈｉｄｄｅｎ  ｓｅｒｖｅｒ）をインスタンス化することによってＴＯＲ隠しサービス（ＴＯＲ  ｈｉｄｄｅｎ  ｓｅｒｖｉｃｅ）を利用することができる。動作中に、関心プロファイル・アグリゲータ・ノードのアプリケーション・インターフェース・モジュール２１４は、ＰＵＳＨウェブ・サービスＡＰＩを呼び出すことができる。さらに、ＰＵＳＨ  ＡＰＩのインスタンス化時に、関心プロファイル・アグリゲータ・ノードのネットワーキング・モジュール２１８は、エンド・ユーザのローカル・クライアント１１２内の隠しＴＯＲサーバとの通信のためのＴＯＲ機構に基づいて、関心プロファイル・アグリゲータ・ノードのローカルＳＯＣＫＳプロキシを呼び出すことができる。ＴＯＲ機構が、ユーザがお互いと匿名で通信することを可能にすることに加えて、匿名で情報を受信するためにユーザが隠しＴＯＲサーバを実行することをも可能にすることが、当業者によって理解されるはずである。したがって、ネットワーキング・モジュール２１８は、ローカル・クライアント１１２によって実行される隠しＴＯＲサーバと通信し、ローカル・クライアント１１２のｒｅｃｅｉｖｅＰＵＳＨＲｅｃｏｍｍｅｎｄａｔｉｏｎウェブ・サービスＡＰＩへの呼び出しを行う。通信されるローカル・クライアント１１２は、ローカル・クライアント１１２が初めてｓｕｂｓｃｒｉｖｅ  ＡＰＩを呼び出す間に関心グループ・アグリゲータ・ノードに供給されるローカル・クライアント１１２に関連するメールボックスｉｄに基づいて識別される。したがって、関心グループ・アグリゲータ・ノードに情報を提供するためにｓｕｂｓｃｒｉｖｅ  ＡＰＩを呼び出したことが一度もないエンド・ユーザのローカル・クライアント１１２が、関心グループ・アグリゲータ・ノードから直接に情報を受信できないはずであることを了解されたい。
【０１０８】
上で説明したシステムおよび方法に基づいて、プライバシ保護システム１０２は、パーソナライズされたコンテンツおよび推奨サービスを提供すると同時に、エンド・ユーザのプライバシ保護を可能にする。プライバシ保護システム１０２は、データ暗号化を必要とせず、これによってアプリケーションおよびビジネス・モデルの使用を制限せずに、暗号化されたチャネルの使用を介するエンド・ユーザの匿名性を可能にする。プライバシ保護システム１０２は、非集中化された分散機構の実施によって、エンド・ユーザへのリンカビリティ攻撃の可能性をも除去する。さらに、プライバシ保護システム１０２は、ＬＢＳ、リコメンダ・システム、およびＯＳＮなど、さまざまなアプリケーション・シナリオをサポートすると同時に、シン・クライアントの使用を可能にする。
【０１０９】
図３（ａ）に、本主題の実施形態による、エンド・ユーザにプライバシ保護を提供する方法３００を示す。方法３００が説明される順序は、限定として解釈されることを意図されたものではなく、任意の個数の説明される方法ブロックを、方法３００または代替の方法を実施するために任意の順序で組み合わせることができる。さらに、個々のブロックを、本明細書で説明される主題の趣旨および範囲から逸脱せずに、方法から削除することができる。さらに、方法を、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはその組合せで実施することができる。
【０１１０】
方法を、コンピュータ実行可能命令の全般的な文脈で説明することができる。一般に、コンピュータ実行可能命令は、特定の機能を実行するか特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造、手続き、モジュール、関数などを含む。この方法を、機能が通信ネットワークを介してリンクされたリモート処理デバイスによって実行される分散コンピューティング環境で実践することもできる。分散コンピューティング環境では、コンピュータ実行可能命令を、メモリ・ストレージ・デバイスを含む、ローカルとリモートとの両方のコンピュータ記憶媒体内に配置することができる。
【０１１１】
当業者は、この方法のステップを、プログラムされたコンピュータによって実行できることをたやすく了解する。本明細書では、いくつかの実施形態は、プログラム記憶デバイス、たとえば、機械可読またはコンピュータ可読であり、命令の機械実行可能またはコンピュータ実行可能なプログラムを符号化するディジタル・データ記憶媒体を含むことも意図され、前記命令は、説明される方法のステップの一部またはすべてを実行する。プログラム記憶デバイスは、たとえば、ディジタル・メモリ、磁気ディスクまたは磁気テープなどの磁気記憶媒体、ハード・ドライブ、または光学的に可読のディジタル・データ記憶媒体とすることができる。実施形態は、例示的な方法の前記ステップを実行するように構成された通信ネットワークと通信デバイスとの両方を包含することも意図されている。
【０１１２】
図３を参照すると、この方法を、本主題の実施態様に従って、プライバシ保護ミドルウェア・システム１０２によって実施することができる。ブロック３０２では、複数のエンド・ユーザのうちの１つのローカル・クライアントからのユーザ消費データを、データを匿名でルーティングするさまざまな機構を介して受信することができる。一例では、ユーザ消費データは、オニオン・ルーティングなどのクライアント／リレー・ベースの機構を介して受信される。一実施態様では、Ｔｈｅ  Ｏｎｉｏｎ  Ｒｏｕｔｉｎｇ（ＴＯＲ）機構を利用して、ローカル・クライアントと媒介物ノードとの間の匿名通信を可能にすることができる。ユーザ消費データは、関心プロファイルのスライス、関心グループＩｄを含むことができる。スライスに関連する、エンド・ユーザのプリファレンスなど。ユーザ消費データは、エンド・ユーザのさまざまなサブスクリプション、耽溺、およびアクティビティに基づいてユーザの関心を示すことができる。一実施態様では、エンド・ユーザのローカル・クライアントから受信されるユーザ消費データは、ＴＯＲ機構を介し、ＴＯＲ出口サーバからである。さらに、ユーザ消費データを、プロファイル・スライス・コレクタと称する、複数の媒介物サーバの中からのランダムな中間ノードによって受信することができる。もう１つの態様では、エンド・ユーザが、ＬＢＳ、ＯＳＮ、ＩＰＴＶ、およびＩＰマルチメディア・システム（ＩＭＳ）などのさまざまなアプリケーション・シナリオを利用しつつある間に、ユーザ消費データを受信することができる。
【０１１３】
ブロック３０４では、プロファイル・スライス・コレクタによって受信されたユーザ消費データを、分散ハッシュ・テーブル（ＤＨＴ）ルーティング機構に基づいて、関連する関心グループ・アグリゲータ・ノードにルーティングする。ＤＨＴルーティング機構は、媒介物ノードの中での情報の匿名ルーティングを可能にすることができる。異なる関心グループが、異なる媒介物ノードによってホスティングされるので、ランダムに選択されたプロファイル・スライス・コレクタによって収集されたユーザ消費データは、そのユーザ消費データ関連する関心グループをホスティングする関心グループ・アグリゲータ・ノードにルーティングされる。一実施態様では、ルーティングは、ＤＨＴルーティング機構を実施するＰＡＳＴＲＹ（登録商標）フレームワークを介して使用可能にされるものとすることができる。
【０１１４】
ブロック３０６では、ユーザ消費データを、関心グループ・アグリゲータ・ノードで格納する。一実施態様では、激動の状況で、新しい関心グループ・アグリゲータが、関心グループの以前にアップロードされたユーザ消費データを取り出すことができるようになるように、ユーザ消費データは、関心グループ・アグリゲータ・ノードでおよびそれに対応して１つまたは複数の媒介物ノードで格納される。さらに、格納されたユーザ消費データは、各アグリゲータ・ノードがそれ自体の関心グループのユーザ消費データだけにアクセスできるようになっている。言い替えると、リンカビリティ攻撃を防ぐために、単一の媒介物ノードが別の関心グループにまたがって永続消費全体にアクセスを有することがないことが保証される。
【０１１５】
複製によるユーザ消費データの格納は、媒介物ノードの間での激動の最小化を可能にし、単一故障点の状況の除去をも保証する。動作中に、異なる媒介物ノードでユーザ消費データを格納するために、ユーザ消費データを、グループの対称暗号化鍵に基づいて分離し、暗号化することができ、ここで、異なる媒介物ノードにまたがって格納されるユーザ消費データは、その関心グループの媒介物ノードによって保持されるグループの対称暗号化鍵を介してのみ暗号化解除され得る。
【０１１６】
さらに、中間ノードでのデータ破壊またはデータ消失に起因する激動の状況では、中間ノードは、使用可能なグループの対称暗号化鍵に基づいて、異なる中間ノードからユーザ消費データを回復することができることを了解されたい。しかし、中間ノードがダウンし、働いていない状況では、ダウンした媒介物ノードの関心グループのホスティングを引き受けるすべての他のノードが、異なる中間ノードからユーザ消費データを回復するために、グループの対称暗号化鍵を所有しなければならない。このために、適格な媒介物ノード複製が、ダウンした媒介物ノードの関心グループをホスティングする際に、以前に集約されたグループ消費を取り出すことができるように、各中間ノードは、１つまたは複数の適格な媒介物ノード複製すなわち、ＤＨＴ複製プロトコルを使用してＤＨＴプロトコルに従って指定される媒介物ノード複製にグループの対称鍵を通信することができる。
【０１１７】
一実施態様では、ユーザ消費データは、ＣＡＳＳＡＮＤＲＡ（登録商標）フレームワークに基づいて、複数の媒介物ノードの中からの１つまたは複数の媒介物ノードで複製もされる。一実施態様では、前に説明したように、複製は、単一連絡点の障害からの回復可能性を保証するために、１つまたは複数の媒介物ノードにまたがって、セグメント化されたユーザ消費データについて行われる。さらに、ＣＡＳＳＡＮＤＲＡ（登録商標）は、複数の媒介物ノードの間の変更に起因する媒介物ノードの間の激動にうまく対処することを可能にする。
【０１１８】
ブロック３０８では、パーソナライズされたコンテンツおよび推奨サービスを、エンド・ユーザに提供する。一実施態様では、パーソナライズされたコンテンツおよび推奨サービスを提供するために、情報が、ＴＯＲ隠しサービスを介してエンド・ユーザのローカル・クライアントに提供される。もう１つの実施態様では、情報は、新しいまたは更新されたユーザ消費データが匿名ルックアップ手順を介してエンド・ユーザから受信される時に提供される。新しいまたは更新されたユーザ消費データが匿名ルックアップ手順を介して受信される状況で、関心グループ・アグリゲータ・ノードは、更新されたユーザ消費データがそれを介して受信されたプロファイル・スライス・コレクタに、エンド・ユーザに提供される情報を提供することができる。
【０１１９】
エンド・ユーザのプライベート情報および個人情報に対するプライバシを提供する方法およびシステムの実施形態を、構造的特徴および／または方法に固有の言葉で説明したが、本発明が、必ずしも説明された特定の特徴または方法に限定されないことを理解されたい。そうではなく、特定の特徴および方法は、エンド・ユーザのプライバシ保護の例示的実施形態として開示されるものである。
【図１】
0006009065.tif 000002
【図２（ａ）】
0006009065.tif 000003
【図２（ｂ）】
0006009065.tif 000004
【図３】
0006009065.tif 000005