(57)【要約】【課題】クラウドベースの環境におけるリモートキー管理の技術を提供する。【解決手段】協調クラウドベース環境においてリモートキー管理サービスを容易にするためのシステム及び方法を開示する。一実施形態において、本明細書に説明するリモートキー管理アーキテクチャ及び技術は、コンテンツアクセスに関連付けられた理由コードのローカルキー暗号化及び自動生成を与える。理由コードは、キー暗号化の第２の（リモート）層を制御するためにリモートクライアントデバイス（例えば、企業クライアント）によって使用される。リモートクライアントデバイスは、キー暗号化の第２の層のクライアント側制御及び構成可能性を与える。【選択図】図１
2014081940.tif 000002
【特許請求の範囲】
【請求項１】
協調クラウドベース環境においてリモートキー管理サービスを容易にするためのキーサービスエンジンであって、
プロセッサと、
コンテンツ要求によって示されたデータ項目がリモートキー管理機能性に関連付けられているという判断に応答して、該コンテンツ要求に関連付けられた理由を列挙する理由コードを含むリモートキー要求を開始するように構成されたキーサービスプロキシデバイスと、
前記コンテンツ要求を処理して該コンテンツ要求に関連付けられた前記理由を識別し、かつこれに応答して対応する理由コードを生成するように前記プロセッサに指示するように構成された理由エンジンと、
を含むことを特徴とするキーサービスエンジン。
【請求項２】
前記コンテンツ要求は、アップロード要求を含み、
前記リモートキー要求は、暗号化された暗号化キーを暗号化する要求を含む、
ことを特徴とする請求項１に記載のキーサービスエンジン。
【請求項３】
前記コンテンツ要求は、アクセス要求を含み、
前記リモートキー要求は、２回暗号化された暗号化キーを暗号化する要求を含む、
ことを特徴とする請求項１に記載のキーサービスエンジン。
【請求項４】
ローカルキー暗号化キー（ＫＥＫ）を使用して暗号化キーを暗号化及び暗号解読するように構成されたキー暗号化／暗号解読（Ｅ／Ｄ）エンジン、
を更に含むことを特徴とする請求項１に記載のキーサービスエンジン。
【請求項５】
受信したコンテンツ要求を処理して該コンテンツ要求に関連付けられたメタデータを識別するように構成されたメタデータエンジン、
を更に含み、
前記リモートキー要求は、前記メタデータを更に含む、
ことを特徴とする請求項１に記載のキーサービスエンジン。
【請求項６】
１回暗号化されたキーによる暗号化又は２回暗号化されたキーによる暗号解読のために前記リモートキー要求をリモートクライアントシステムに送信するように構成されたクライアントインタフェース、
を更に含み、
前記クライアントインタフェースは、それに応答してそれぞれ前記２回暗号化されたキー又は前記１回暗号化されたものを受信するように構成される、
ことを特徴とする請求項１に記載のキーサービスエンジン。
【請求項７】
前記クライアントインタフェースは、暗号化要求に応答して前記リモートクライアントコンピュータシステムによって開始されたリモートキー暗号化キー（ＫＥＫ）を受信するように更に構成され、
前記リモートＫＥＫは、前記暗号化された暗号化キーを２回暗号化するためにリモートキー管理システムによって利用される、
ことを特徴とする請求項６に記載のキーサービスエンジン。
【請求項８】
前記コンテンツ要求を受信するように構成されたクラウドベースのプラットフォームインタフェース、
を更に含み、
前記クラウドベースのプラットフォームは、データストアと通信し、暗号化キーに関連付けられたローカル又はリモートキー暗号化キーを格納するか又はそれにアクセスするように該データストアに指示する、
ことを特徴とする請求項１に記載のキーサービスエンジン。
【請求項９】
協調クラウドベース環境においてリモートキー管理サービスを容易にするための協調システムであって、
プロセッサと、
前記プロセッサによって実行された時に協調システムをして、
暗号化キーを使用してコンテンツ要求によって示されたコンテンツ項目を暗号化させ、
ローカルキー暗号化キー（ＫＥＫ）を使用して前記暗号化キーを暗号化させ、
前記コンテンツ項目がリモートキー管理機能性に関連付けられているかを判断させ、かつ
前記コンテンツ項目がリモートキー管理機能性に関連付けられている場合に、
前記コンテンツ要求に関連付けられた理由コードを判断させ、かつ
前記暗号化された暗号化キーと前記理由コードとを含むリモートキー暗号化要求を開始させる、
命令が格納されたメモリユニットと、
を含むことを特徴とする協調システム。
【請求項１０】
前記命令は、更に、前記プロセッサによって実行された時に、協調システムをして前記リモートキー暗号化要求を開始することに応答して２回暗号化された暗号化キーを受信させることを特徴とする請求項９に記載の協調システム。
【請求項１１】
前記命令は、更に、前記プロセッサによって実行された時に、協調システムをして前記リモートキー暗号化要求を開始することに応答してリモートＫＥＫを受信させることを特徴とする請求項９に記載の協調システム。
【請求項１２】
前記ローカルＫＥＫをランダムに選択するように構成されることを特徴とする請求項９に記載の協調システム。
【請求項１３】
前記命令は、更に、前記プロセッサによって実行された時に協調システムをして、
前記コンテンツ要求を受信させ、かつ
前記コンテンツ要求を処理して該コンテンツ項目要求がアップロード要求であると判断させ、かつ
前記コンテンツ項目要求によって示された前記コンテンツ項目を識別させる、
ことを特徴とする請求項９に記載の協調システム。
【請求項１４】
協調クラウドベース環境においてリモートキー管理サービスを容易にするための協調システムであって、
プロセッサと、
前記プロセッサによって実行された時に協調システムをして、
受信したコンテンツ要求に関連付けられたコンテンツ項目がリモートキー管理機能性に関連付けられているかを判断させ、かつ
前記コンテンツ項目が前記リモートキー管理機能性に関連付けられている場合に、
前記コンテンツ要求に関連付けられた理由コードを識別し、かつ該コンテンツ要求に対する理由を列挙する理由コードを生成させ、
データストアから２回暗号化された暗号化キーにアクセスさせ、かつ
前記２回暗号化された暗号化キーと前記理由コードとを含むリモートキー暗号解読要求を開始させる、
命令が格納されたメモリユニットと、
を含むことを特徴とする協調システム。
【請求項１５】
前記命令は、更に、前記プロセッサによって実行された時に協調システムをして、
前記コンテンツ要求を受信し、かつ該コンテンツ要求に関連付けられた前記コンテンツ項目を識別させる、
ことを特徴とする請求項１４に記載の協調システム。
【請求項１６】
前記命令は、更に、前記プロセッサによって実行された時に協調システムをして、
前記リモートキー暗号解読要求を開始することに応答して、リモートキー暗号化キー（ＫＥＫ）を使用して暗号化されていない時の前記２回暗号化された暗号化キーを含む１回暗号化された暗号化キーを受信させ、
データストアからローカルＫＥＫにアクセスさせ、かつ
前記ローカルＫＥＫを使用して前記１回暗号化された暗号化キーを暗号解読して暗号化キーを生じさせる、
ことを特徴とする請求項１４に記載の協調システム。
【請求項１７】
前記命令は、更に、前記プロセッサによって実行された時に協調システムをして、
前記コンテンツ要求を通じて要求された前記コンテンツ項目である暗号化されたコンテンツ項目に前記データストアからアクセスさせ、かつ
前記暗号化キーを使用して前記暗号化されたコンテンツ項目を暗号解読させる、
ことを特徴とする請求項１６に記載の協調システム。
【請求項１８】
前記命令は、更に、前記プロセッサによって実行された時に協調システムをして前記コンテンツ項目要求に応答して前記暗号解読されたコンテンツ項目を供給させることを特徴とする請求項１６に記載の協調システム。
【請求項１９】
機械可読ストレージ媒体であって、
プロセッサによって実行された時に該プロセッサをして、
コンテンツ要求に関連付けられた理由を列挙する理由コードを含み、暗号化された暗号化キーを暗号化又は暗号解読する要求を含むリモートキー要求を受信させ、
１組の予め構成された規則に規則ストアからアクセスさせ、
前記組の予め構成された規則と前記理由とに基づいて前記リモートキー要求を受諾するか又は拒否するか否かを判断させる、
実行可能な命令、
を含むことを特徴とする機械可読ストレージ媒体。
【請求項２０】
前記命令は、更に、プロセッサによって実行された時に該プロセッサをして、
キルスイッチがアサートされたと判断させ、
前記予め構成された規則と前記理由とに無関係に設定されている前記キルスイッチに基づいて前記リモートキーを拒否させる、
ことを特徴とする請求項１９に記載の機械可読ストレージ媒体。
【請求項２１】
前記コンテンツ要求は、アップロード要求を含み、
前記リモートキー要求は、暗号化された暗号化キーを暗号化する要求を含む、
ことを特徴とする請求項１９に記載の機械可読ストレージ媒体。
【請求項２２】
前記コンテンツ要求は、アクセス要求を含み、
前記リモートキー要求は、２回暗号化された暗号化キーを暗号解読する要求を含む、
ことを特徴とする請求項１９に記載の機械可読ストレージ媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
〔関連出願への相互参照〕
本出願は、内容が引用により本明細書に組み込まれている２０１２年１０月１７日出願の「クラウドベースの環境における暗号化キー管理のための適応アーキテクチャ」という名称の米国特許仮出願番号第６１／７１５，２０８号（代理人整理番号６１５９９０−８０５７．ＵＳ００）に対する優先権及びそれからの利益を主張するものである。
【背景技術】
【０００２】
企業設定及び／又は他の組織的設定における電子及びデジタルコンテンツ使用は、プロジェクト、タスク、及びワークフロー管理の好ましい機構になっており、従って、デジタルコンテンツ及び文書の協調及び共有の能率化に対する必要性を有する。このような協調環境では、複数のユーザは、共有作業空間においてコンテンツ及びファイルを共有し、アクセスし、かつそうでなければそれに対してアクション又はタスクを行う。この共有されたアクセス及び協調は、いずれの数のユーザもいずれかの所定の時間にファイルへのアクセスを有する場合があるので、データの高い利用可能性（例えば、ファイルをダウンロード及びアップロードする自由な機能）を要求する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
協調環境は、共有作業空間におけるコンテンツ及びファイルのアクセスに対するセキュリティ機構を追加する特徴又は機構を含むことができる。残念ながら、これらの機構は、セキュリティ機構の様々なクライアントレベルの制御を与えず、従って、上述の問題を克服するシステム、並びに付加的な利益を与えるシステムに対する必要性が存在する。
【０００４】
全体的に、一部の従来の又は関連のシステム及びそれらの付随する限界の本明細書の例は、網羅的ではなく例示的であることを意図している。既存の又は従来のシステムの他の限界は、以下を読むと当業者に明らかになるであろう。
【図面の簡単な説明】
【０００５】
【図１】リモートキー管理サービスを容易にする機能を有するクラウドサービス及び／又はクラウドストレージアカウントのホストサーバを有するシステムの例示的な図である。
【図２】リモートキー管理サービスを容易にする機能を有するホストされたクラウドサービス及び／又はクラウドストレージアカウントの一例として作業項目及び作業空間を編成するための企業又は他の組織的設定に配備されたウェブベース又はオンライン協調プラットフォームを示す図である。
【図３】作業空間にアクセスする権限が与えられた様々なデバイスを通じて複数の協力者によりアクセス可能なクラウドベース、オンライン、又はウェブベースの協調環境における作業空間の例示的な図である。
【図４Ａ】アップロード要求に応答してリモートキー管理サービスを容易にするための協調クラウドベース環境における構成要素の作動を示す例示的なデータフロー図である。
【図４Ｂ】アクセス要求に応答してリモートキー管理サービスを容易にするための協調クラウドベース環境における構成要素の作動を示す例示的なデータフロー図である。
【図５】協調クラウドベース環境においてリモートキー管理サービスを容易にするためのキーサービスエンジンにおける構成要素の例を示すブロック図である。
【図６】協調クラウドベース環境においてリモートキー管理サービスを容易にするためのリモートキーサービスエンジンにおける構成要素の例を示すブロック図である。
【図７】アップロード要求に応答して協調クラウドベース環境においてリモートキー管理サービスを容易にするための例示的な処理を示す流れ図である。
【図８】アクセス要求に応答して協調クラウドベース環境においてリモートキー管理サービスを容易にするための例示的な処理を示す流れ図である。
【図９】機械をして本明細書に説明する方法のいずれか１つ又はそれよりも多くを行わせるための１組の命令を内部で実行することができるコンピュータシステムの例示的な形態の機械の概略図である。
【発明を実施するための形態】
【０００６】
以下の説明及び図面は、例示的であり、制限的と解釈すべきではない。本発明の開示を完全に理解することができるように多くの特定の細部に対して説明する。しかし、特定の関連では、公知であるか又は従来の細部は、説明を不明瞭にすることを回避するために説明を割愛している。本発明の開示における一実施形態又は実施形態への言及は、同じ実施形態の言及である得るが、必ずしも同じ実施形態の言及であるわけではなく、このような言及は、実施形態の少なくとも１つを意味する。
【０００７】
本明細書における「一実施形態」又は「実施形態」への言及は、実施形態に関連して説明する特定の特徴、構造、又は特性が本発明の開示の少なくとも１つの実施形態に含まれることを意味する。本明細書の様々な箇所での「一実施形態では」という語句が出てきても、必ずしも全て同じ実施形態も指しているわけではなく、別の実施形態又は代替的な実施形態も他の実施形態と相互に排他的ではない。更に、一部の実施形態によって示すことができるが他に実施形態によって示すことはできない様々な特徴が説明される。同様に、一部の実施形態に対して要件とすることができるが他の実施形態に対しては要件とすることはできない様々な要件も説明される。
【０００８】
本明細書で使用する用語は、一般的に、当業技術において、本発明の開示という関連において、及び各語が使用される特定の内容において普通の意味を有する。本発明の開示を説明するのに使用する特定の用語は、本発明の開示の説明に関する実務者への付加的な指針になるように以下で又は本明細書の他の箇所で説明する。便宜上、特定の用語は、例えば、イタリック及び／又は引用符を使用して強調表示する場合がある。強調表示の使用は、用語の範囲及び意味に影響を及ぼさず、用語の範囲及び意味は、同じ関連においては強調表示されるか否かに関わらず同じである。同じことを１つよりも多い方法で言うことができることは認められるであろう。
【０００９】
その結果、代替言語及び同義語を本明細書に説明する用語のいずれか１つ又はそれよりも多くに対して使用することができ、用語が精緻化されるか又は本明細書に説明されるか否かに関わらず、いずれの特定の重要度も置くべきではない。特定の用語の同義語が示される。１つ又はそれよりも多くの同義語の説明部分は、他の同義語の使用を排除しない。本明細書に説明するあらゆる用語の例を含む本明細書のあらゆる箇所での例の使用は、例示的なものにすぎず、本発明の開示又はあらゆる例証の用語の範囲及び意味を更に制限することを意図していない。同様に、本発明の開示は、本明細書に示す様々な実施形態に限定されない。
【００１０】
本発明の開示の範囲を更に制限する意図なく、本発明の開示の実施形態による計器、装置、方法、及び関連の結果の例を以下に示している。読者の便宜を図るために例において表題又は副題が使用される場合があり、これは、いずれの点においても本発明の開示の範囲を制限しないことに注意すべきである。別段の定義がない限り、本明細書で使用する全ての専門用語及び科学用語は、本明細書が属する技術分野の当業者により一般的に理解されるものと同じ意味を有する。矛盾が生じた場合に、定義を含む本明細書が優先されることとする。
【００１１】
協調環境は、データ項目（又はファイル）暗号化を使用してセキュリティを与える特徴又は機構を含むことができる。ファイル暗号化特徴は、例えば、データ又はコンテンツ項目（例えば、ファイル）を暗号化するのに使用される使用された暗号化キーを暗号化する段階を含むことができる。しかし、データ暗号化を通じてセキュリティを与える既存の機構は、クライアント側（例えば、企業側）の制御及び構成可能性を与えるものではない。
【００１２】
本発明の開示の実施形態は、協調クラウドベース環境においてリモートキー管理サービスを容易にするためのシステム及び方法を含む。より具体的には、本明細書に説明するリモートキー管理アーキテクチャ及び技術は、コンテンツアクセスに関連付けられた理由コードのローカルキー暗号化及び自動生成を与える。理由コードは、キー暗号化の第２の（リモート）層を制御するためにリモートクライアントデバイス（例えば、企業クライアント）によって使用される。リモートクライアントデバイスは、キー暗号化の第２の層のクライアント側制御及び構成可能性を与える。
【００１３】
様々な実施形態において、リモートキー管理エンジンは、１組の予め定義されたクライアント構成可能な規則に少なくとも部分的に基づいて対応する暗号化キーを暗号化又は暗号解読すべきか否かを判断するために、生成されたアクセス理由を処理することができる規則エンジンの使用を通じてクライアント側制御及び構成可能性を与える。更に、様々な実施形態において、リモートキル機能を容易にするためのキルスイッチが、クライアントに与えられる。
【００１４】
図１は、リモートキー管理サービスを容易にする機能を備えたクラウドサービス及び／又はクラウドストレージアカウントのホストサーバ１００を有するシステムの例示的な図を示している。
【００１５】
クライアントデバイス１０２は、別のデバイス、サーバ、及び／又はホストサーバ１００及び／又は通知サーバ１５０のような他のシステムとの有線、無線、セルラー接続を含む接続を確立することができるあらゆるシステム及び／又はデバイス、及び／又はデバイス／システムのあらゆる組合せとすることができる。クライアントデバイス１０２は、典型的には、デバイス１０２及び／又はホストサーバ１００及び／又は通知サーバ１５０の間で交換される情報及びデータを提示するディスプレイ及び／又は他の出力機能性を含む。
【００１６】
例えば、クライアントデバイス１０２は、モバイルデバイス、手持ち式デバイス又は携帯式デバイス、又は非携帯式デバイスを含むことができ、かつサーバデスクトップ、デスクトップコンピュータ、コンピュータクラスター、又はノートコンピュータ、ラップトップコンピュータ、手持ち式コンピュータ、パームトップコンピュータ、モバイル電話、セル電話、スマートフォン、ＰＤＡ、Ｂｌａｃｋｂｅｒｒｙデバイス、Ｔｒｅｏ、手持ち式タブレット（例えば、ｉＰａｄ、Ｇａｌａｘｙ、Ｘｏｏｍタブレットのような）、タブレットＰＣ、シンクライアント、手持ち式コンソール、手持ち式ゲームデバイス又はコンソール、ｉＰｈｏｎｅ、及び／又はあらゆるプラットフォーム、又はいずれかのオペレーティングシステム（例えば、ＭａｃベースのＯＳ（ＯＳ  Ｘ、ｉＯＳのような）、Ｗｉｎｄｏｗｓ（登録商標）ベースのＯＳ（Ｗｉｎｄｏｗｓ（登録商標）  Ｍｏｂｉｌｅ、Ｗｉｎｄｏｗｓ（登録商標）７のような）、Ａｎｄｒｏｉｄ、Ｂｌａｃｋｂｅｒｒｙ  ＯＳ、組み込みＬｉｎｕｘ（登録商標）プラットフォーム、Ｐａｌｍ  ＯＳ、Ｓｙｍｂｉａｎプラットフォーム上で稼動するあらゆる他の携帯式デバイス、モバイルデバイス、手持ち式デバイスなどを含む携帯式デバイスのうちのいずれかとすることができるがこれらに限定されない。一実施形態において、クライアントデバイス１０２、ホストサーバ１００、及びアプリサーバ１１０は、ネットワーク１０６を通じて結合される。一部の実施形態において、デバイス１０２及びホストサーバ１００を直接に互いに接続することができる。
【００１７】
クライアントデバイス１０２上の入力機構は、タッチスクリーンキーパッド（シングルタッチ、マルチタッチ、２Ｄ又は３Ｄの動作感知などを含む）、物理的キーパッド、マウス、ポインタ、トラックパッド、動き検出器（例えば、１軸加速度計、２軸加速度計、３軸加速度計などを含む）、光センサ、キャパシタンスセンサ、抵抗センサ、温度センサ、近接センサ、圧電デバイス、デバイス向き検出器（例えば、電子コンパス、傾倒感知センサ、回転センサ、ジャイロスコープ、加速度計）、又は以上の組合せを含むことができる。
【００１８】
上述の入力機構又は他の１つ又はそれよりも多くを通してのクライアントデバイス１０２でのユーザ作動を示す受信又は検出された信号は、ネットワーク１０６を通じてウェブベース協調環境又はオンライン協調プラットフォーム（例えば、ホストサーバ１００による）にアクセスする様々なユーザ又は協力者（例えば、協力者１０８）により、開示する技術に使用することができる。
【００１９】
協調プラットフォーム又は環境では、１人又はそれよりも多くのユーザがアクセス可能な作業項目（例えば、閲覧、編集、更新、修正、注釈、ダウンロード、試聴、タグ付け、又は他の方法で操作するなど）を有する作業空間が使用される。作業項目は、電子デバイス（例えば、デバイス１０２）を通じて閲覧する又はこれにアクセス可能なあらゆるタイプのデジタル又は電子コンテンツを一般的に含むことができる。デジタルコンテンツとしては．ｐｄｆファイル．ｄｏｃ、スライド（例えば、Ｐｏｗｅｒｐｏｉｎｔスライド）、画像、オーディオファイル、マルチメディアコンテンツ、ウェブページ、ブログなどを含むことができる。作業空間は、協調プラットフォームにおける１組のデジタルコンテンツのあらゆる群を一般的に指すことができる。ユーザによって又は他の手段を通じて群を識別、作成、又は指定することができる。例えば、このユーザは、クリエータユーザ又は管理ユーザとすることができる。
【００２０】
一般的に、作業空間は、その中に含まれるコンテンツにアクセス可能な１組のユーザ又は協力者（例えば、協力者１０８）に関連付けることができる。所定の作業空間においてコンテンツにアクセスする各ユーザ又は協力者のアクセス（例えば、許可又は規則に基づく）のレベルは、同じである場合があり、又はユーザ間で変動する場合がある。各ユーザは、作業空間におけるあらゆるコンテンツピースに対する固有の組のアクセス権を有する場合があり、又は各ユーザは、異なるコンテンツピースに対する異なるアクセス権を有する場合がある。アクセス権は、作業空間に関連付けられたユーザ、及び／又は特定のコンテンツピースを作成して作業空間にアップロードしたユーザ、又はあらゆる他の指定されたユーザ又は協力者により指定される場合がある。
【００２１】
一般的に、協調プラットフォームにより、複数のユーザ又は協力者は、各ユーザが遠隔操作で自分自身のユーザデバイスを通じて特定の作業項目に対して行われている編集、改訂、コメント、又は注釈を見ることができるように、作業項目に対する行為にアクセス又はこれを協調することができる。例えば、ユーザは、他のユーザがアクセスするように作業空間に文書をアップロードすることができる（例えば、閲覧、編集、コメント、署名、又は他の方法による操作に向けて）。ユーザは、オンラインプラットフォームにログインして、既存の作業空間に又は新しい作業空間に文書（又はあらゆる他のタイプの作業項目）をアップロードすることができる。文書は、作業空間における既存のユーザ又は協力者と共有することができる。
【００２２】
オンライン協調環境の概略図及び作業空間とユーザ／協力者の関係は、図２の例を更に参照して示している。協力者が複数のデバイスを通じてアクセス可能な複数の作業項目を有する作業空間の概略図は、図３の例を更に参照して示している。
【００２３】
一実施形態において、クライアントデバイス１０２は、ネットワーク１０６上でホストサーバ１００及び／又はピープル検索エンジン１５０と通信する。一般的に、クライアントデバイス１０２、ホストサーバ１００、及び／又はピープル検索エンジン１５０が通信するホストサーバネットワーク１０６は、セルラーネットワーク、電話回線網、インターネットのようなオープンネットワーク、又はイントラネット及び／又はエクストラネットのような専用回線網、又はそのあらゆる組合せとすることができる。例えば、インターネットは、オープンシステム相互接続（ＯＳＩ）、ＦＴＰ、ＵＰｎＰ、ｉＳＣＳＩ、ＮＳＦ、ＩＳＤＮ、ＰＤＨ、ＲＳ−２３２、ＳＤＨ、ＳＯＮＥＴなどであるがこれらに限定されないあらゆる公知又は便利なプロトコルを通じてファイル転送、リモートログイン、電子メール、ニュース、ＲＳＳ、クラウドベースのサービス、インスタントメッセージ、ビジュアルボイスメール、プッシュメール、ＶｏＩＰ、及び他のサービスを提供することができる。
【００２４】
ネットワーク１０６は、全体的に又は部分的に共同してクライアントデバイス１０２及びホストサーバ１００との接続性を与えるように作動する異なるネットワークのあらゆる集合とすることができ、かつサービスを受けるシステム及びデバイスには１つ又はそれよりも多くのネットワークのように見える場合がある。一実施形態において、クライアントデバイス１０２への及びそこからの通信は、インターネットのようなオープンネットワーク、又はイントラネット及び／又はエクストラネットのような専用回線網などによって達成することができる。一実施形態において、通信は、セキュアソケットレイヤ（ＳＳＬ）又はトランスポートレイヤセキュリティ（ＴＬＳ）のようなセキュアな通信プロトコルによって達成することができる。
【００２５】
更に、一例として、通信は、汎ヨーロッパデジタル移動通信システム（ＧＳＭ（登録商標））、パーソナル通信サービス（ＰＣＳ）、デジタル高度移動電話サービス（Ｄ−Ａｍｐｓ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｗｉ−Ｆｉ、固定無線データ、２Ｇ、２．５Ｇ、３Ｇ、４Ｇ、ＩＭＴ−Ａｄｖａｎｃｅｄ，プレ４Ｇ、３Ｇ  ＬＴＥ、３ＧＰＰ  ＬＴＥ、ＬＴＥ  Ａｄｖａｎｃｅｄ、モバイルＷｉＭａｘ、ＷｉＭａｘ  ２、無線ＭＡＮ−Ａｄｖａｎｃｅｄネットワーク、ＧＳＭ（登録商標）進化型高速データレート（ＥＤＧＥ）、汎用パケット無線サービス（ＧＰＲＳ）、ｅｎｈａｎｃｅｄ  ＧＰＲＳ、ｉＢｕｒｓｔ、ＵＭＴＳ、ＨＳＰＤＡ、ＨＳＵＰＡ、ＨＳＰＡ、ＵＭＴＳ−ＴＤＤ、１ｘＲＴＴ、ＥＶ−ＤＯ、ＴＣＰ／ＩＰ、ＳＭＳ、ＭＭのようなメッセージングプロトコル、拡張可能メッセージングアンドプレゼンスブロトコル（ＸＭＰＰ）、リアルタイムメッセージングブロトコル（ＲＴＭＰ）、インスタントメッセージアンドプレゼンスブロトコル（ＩＭＰＰ）、インスタントメッセージ、ＵＳＳＤ、ＩＲＣ、又はあらゆる他の無線データネットワーク又はメッセージングプロトコルのような技術で有効にされるＷｉＭａｘ、ローカルエリアネットワーク（ＬＡＮ）、無線ＬＡＮ（ＷＬＡＮ）、パーソナルエリアネットワーク（ＰＡＮ）、キャンパスエリアネットワーキング（ＣＡＮ）、メトロポリタンエリアネットワーク（人）、広域通信網（ＷＡＮ）、無線ＷＡＮ（ＷＷＡＮ）のうちの１つ又はそれよりも多くなどであるがこれらに制限されない１つ又はそれよりも多くのネットワーク上で与えることができる。
【００２６】
一実施形態において、作業空間において発生する作業項目又は他の活動に対して行われたアクションは、リアルタイムで又は準リアルタイムで検出することができる。ホストサーバは、複数の活動の１つ又はそれよりも多くに対して通知又は通知イベントを生成して、各通知に対して１つ又はそれよりも多くの受取り側を選択することができる。その後に、様々な機構又は外部のメッセージ送信アプリケーションを使用して、ウェブインタフェースを通じたものを含む例えば電子メール及び／又はＳＭＳを通じて、協調プラットフォームにアクセスするようにユーザ又は協力者に通知することができる。
【００２７】
図２は、ホストされたクラウドファイル共有、協調サービス、及び／又はリモートキー管理サービスを容易にする機能を有するクラウドストレージサービスの１つの例として、作業項目２１５、２３５、２５５及び作業空間２０５、２２５、２４５を編成する企業又は他の組織的環境２５０に配備されたウェブベース又はオンライン協調プラットフォームの図を示している。
【００２８】
プロジェクトに関して協調するか又は共同で文書に対して作業するウェブベースプラットフォームは、個々のユーザが使用して協力者間に共有することができる。更に、会社（例えば、企業環境）、会社内の部署、学術機関、学術機関内の部署、クラス又はコース環境を含むがこれらに限定されない組織化された環境、又はあらゆる他のタイプの組織又は組織化された環境に協調プラットフォームを配備することができる。
【００２９】
組織的環境に配備された時に、複数の作業空間（例えば、作業空間Ａ〜Ｎ）を作成して、異なるプロジェクト又は様々な作業の流れをサポートすることができる。各作業空間は、固有の関連の作業項目を有することができる。例えば、作業空間Ａ２０５を作業項目２１５に関連付けることができ、作業空間Ａ２２５を作業項目２３５に関連付けることができ、作業空間Ｎを作業項目２５５に関連付けることができる。作業項目２１５、２３５、及び２５５は、各作業空間に固有とすることができるが、固有ではなくてもよい。例えば、特定のワード文書を１つの作業空間（例えば、作業空間Ａ２０５）にのみ関連付けることができ、又は複数の作業空間（例えば、作業空間Ａ２０５及び作業空間Ｂ２２５のような）に関連付けることができる。
【００３０】
一般的に、各作業空間は、１組のユーザ又はそれに関連付けられた協力者を有する。例えば、作業空間Ａ２０５は、複数のユーザ又は協力者２０６に関連付けられる。一部の事例では、企業内に配備された作業空間は、特定の部署とすることができる。例えば、作業空間Ｂは、部署２１０及び例示的なユーザＡ２０８ように示す数人のユーザに関連付けることができ、作業空間Ｎ２４５は、部署２１２及び２１６及び例示的なユーザＢ２１４ように示されたユーザに関連付けることができる。
【００３１】
作業空間に関連付けられた各ユーザは、作業空間に関連付けられた作業項目に一般的にアクセス可能である。アクセスのレベルは、特定の作業空間及び／又は特定の作業項目に関連付けられた許諾に依存する場合がある。許諾は、作業空間に設定するか、又は作業項目当たりで個々に設定することができる。例えば、作業空間の作成者（例えば、作業空間Ｂを作成するユーザＡ２０８の１人）は、例えば他の関連のユーザ及び／又は提携した部署２１０に関連付けられたユーザに向けて全ての作業項目２３５に適用可能な１つの許諾設定を設定することができる。作成者であるユーザＡ２０８は、各作業項目に向けて異なる許諾設定を設定することができ、許諾設定は、異なるユーザのための同じである場合もあれば、異なるユーザに向けて変わる場合もある。
【００３２】
各作業空間Ａ、Ｂ、…、Ｎでは、アクションが所定のユーザによって作業項目に行われたか又はいずれかの他の活動が作業空間において検出された時に、同じ作業空間における他のユーザに通知することができる（例えば、リアルタイムで、又は準リアルタイムで、又はリアルタイムでではなく）。リアルタイム通知をトリガする活動は、制限ではなく一例として、作業空間における協力者の追加、削除、修正、作業空間における作業項目のアップロード、ダウンロード、追加、削除、作業空間における議論する話題の作成を含むことができる。
【００３３】
具体的には、本発明の開示に説明する技術に従ってダウンロード又は編集された項目又はコンテンツ（コンテンツ項目）により、通知を生成することができる。このような通知を関連のユーザに送って、ダウンロード、編集、変更、修正、新しいファイル、対立するバージョン、編集されたか又は修正されたファイルのアップロードを取り囲むアクションを通知することができる。
【００３４】
一実施形態において、通知が提示されるウェブベース協調プラットフォームのユーザインタフェースでは、ユーザは、ユーザインタフェースを通じて、アクション項目（例えば、タスク）を作成し、例えば、作業項目２１５に関連付けられた協力者を含む他のユーザにアクション項目を委任することができる。協力者２０６は、同じ作業空間Ａ２０５にいる場合があり、又はユーザは、新たに紹介された協力者を含むことができる。同様に、議論する話題を作業空間（例えば、作業空間Ａ、Ｂ又はＮのような）において作成することができる同じユーザインタフェースでは、作業項目上のアクション可能なイベントを作成し、及び／又は所定の作業空間２０６の協力者又は他のユーザのような他のユーザに委任及び／又は割り当てることができる。同じユーザインタフェースを通じて、複数のユーザ又は協力者からのタスクステータス及び更新を示して反映させることができる。一部の事例では、ユーザは、同じユーザインタフェースを通じてタスク（例えば、検閲又は承認又は拒否するなど）を行うことができる。
【００３５】
図３は、作業空間にアクセスする権限が与えられた様々なデバイスを通じて複数の協力者３２２によりアクセス可能なオンライン又はウェブベース協調環境における作業空間の例示的な図を示している。
【００３６】
ユーザ３１６、３１８、及び３２０の各々は、複数の異なるデバイスを個々に使用して、自分が関連付けられた作業空間３０２における作業項目３２４（例えば、コンテンツ項目）にアクセスし、及び／又は操作することができる。例えば、ユーザ３１６、３１８、３２０は、作業項目３２４が関連しているプロジェクト上の協力者とすることができる。作業項目３２４が協調環境（例えば、クラウドベースの環境）によるので、各ユーザは、いつでもかついずれかのデバイスを使用するいずれかの物理的位置から（例えば、自分が有するデバイス又はいずれかの共有／公的／貸与者デバイスを含む）作業項目３２４にアクセス可能である。
【００３７】
プラットフォーム及び／又はアプリケーションとは独立した機構に従って作業空間３０２から編集又は閲覧作業項目にアクセス可能である。ユーザには、他のユーザによって作業項目３２４に行われたアクセス、編集、修正、及び／又はアップロード関連のアクション、又は作業空間３０２において検出されたいずれかの他のタイプの作動を通知することができる。例えば、ユーザ３１６が文書を修正した場合に、リアルタイム又は準リアルタイムで、又はリアルタイムでではなく、他の協力者３１８及び３２０の一方又は両方に修正を通知することができる。電子メール、ＳＭＳの１つ又はそれよりも多くを含む様々なフォーマットで、又はユーザが協調プラットフォームにアクセスするのに使用するユーザインタフェース内のポップアップウインドウを通じて所定のユーザに関連付けられたデバイスの全てのうちのいずれかを通じて通知を送ることができる。複数の通知の場合に、ユーザ優先度及び／又はユーザとの関連性（例えば、黙示的又は明示的）に基づいて優先して（例えば、ユーザインタフェース内の順序付け）各通知を示すことができる。
【００３８】
例えば、ウェブベース協調環境におけるユーザの現在又は最近の活動に基づいて判断されたユーザとの関連性に従ってユーザデバイス上のユーザインタフェースを通じて、取りわけ、ダウンロード、アクセス、読み取り、書き込み、編集、又はアップロード関連の活動の通知をフィードストリームに提示することができる。
【００３９】
一実施形態において、通知フィードストリームは、招待されたユーザが招待状を受諾し、及び／又は既存のユーザからの招待状の受領を通じて新しいアカウントの作成に成功した時の更新を含む。招待されたユーザは、新しいアカウントが作成された状態で、改善した特徴を有するアカウントを受信する。新しいユーザは、招待状を送った既存のユーザに自動的に接続することができる。システムは、両方のユーザに自分たちが共通の作業空間内の協力者でありたいことを問い合わせるように自動的に促すことができる。
【００４０】
協調環境（例えば、協調クラウドベース環境）による作業項目には、作業項目に閲覧、編集、処理、又は他の操作を実行することに向けて、複数の異なるデバイス（例えば、デバイス３０４〜３１４）を通じてユーザ（例えば、ユーザ３１６、３１８、及び３２０）がアクセス可能である。デバイスは、クラウドベースのプラットフォーム又はサービス又は他のバックエンドウェブサービス（以下「クラウドベースの協調プラットフォームアプリケーション」）使用するサーバにアクセスするアプリケーション、及び作業項目に閲覧、編集、処理、又は他の操作を行うアプリケーションを含むことができる。このようなアプリケーション間の通信は、一般的にＯＳの通信機構により容易にされる。例えば、Ａｎｄｒｏｉｄ  ＯＳでは、通信機構は、「インテント」に基づいている。上述したように、基本的な通信機構は、一般的にセキュアではなく、アプリケーションの間に渡されるあらゆるデータは、デバイス上の全ての他のアプリケーションに可視である。
【００４１】
図４Ａ及び図４Ｂは、実施形態によるそれぞれアップロード要求及びアクセス要求に応答してリモートキー管理サービスを容易にする協調クラウドベース環境における構成要素の作動を示す例示的なデータフロー図を示している。より具体的には、図４Ａ及び図４Ｂの例は、企業クライアントがデータ項目（例えば、クラウドベースのプラットフォームにおけるデータファイル）へのアップロード及び／又はアクセスに対する直接の制御を有することを可能にするリモートキー管理サービスを企業クライアントに提供するように構成されたクラウドベースのプラットフォームを示している。
【００４２】
図４Ａ及び図４Ｂの例に示すように、クラウドベースのプラットフォームは、コンテンツインタフェース４１２、コンテンツ暗号化／暗号解読エンジン４１４、キーサービスエンジン４１６、及びデータストア４１５を含む。企業クライアントは、リモートキーサービスエンジン４２０を含む。付加的な又は少数の構成要素／モジュール／エンジンが、クラウドベースのプラットフォーム及び／又は企業クライアントで可能である。
【００４３】
アップロード要求に応答してリモートキー管理サービスを容易にするための協調クラウドベース環境４００における構成要素の作動を示す図４Ａを最初に参照すると、クラウドベースのプラットフォームは、最初に、コンテンツインタフェース４１２でコンテンツ要求４０１を受信する。コンテンツインタフェース４１２は、コンテンツ要求４０１を処理し、要求がデータ項目４０２をアップロードする要求を含むと判断する。コンテンツインタフェースは、その後に、コンテンツ暗号化／暗号解読エンジン４１４にデータ項目４０２又はその指示を渡す。コンテンツ暗号化／暗号解読エンジン４１４は、暗号化キー４０４を選択し、選択した暗号化キー４０４を使用して様々な暗号化方法のいずれかに従ってデータ項目を暗号化し、従って、暗号化されたデータ項目４０３が得られる。
【００４４】
コンテンツ暗号化／暗号解読エンジン４１４は、その後に、キーサービスエンジン４１６に暗号化キーを渡す。暗号化／暗号解読エンジン４１４は、データストア４１５に暗号化されたデータ項目４０３を渡すことができる。代替的に又は追加的に、暗号化されたデータ項目４０３（又はそれへのハンドル又はそのインジケータ）をキーサービスエンジン４１６に渡すことができる。キーサービスエンジン４１６は、暗号化されたデータ項目４０３（又はそのハンドル又はインジケータ）を使用して、１つ又はそれよりも多くのキー暗号化キーを暗号化されたデータ項目４０３に関連付けることができる。１つ又はそれよりも多くのキー暗号化キーは、後でデータストア４１５内の暗号化されたデータ４０３に関連付けるか、及び／又はそうでなければこれと共に格納することができる。
【００４５】
引き続き図４Ａの例に関して、キーサービスエンジン４１６は、ローカルキー暗号化キー（ＫＥＫ）を選択し、ローカルＫＥＫを使用して暗号化キー４０４を暗号化し、従って、暗号化された暗号化キーが得られる。ローカルＫＥＫは、例えば、ランダムに選択することができる。暗号化を行うために使用されたローカルＫＥＫは、必要に応じて、その後の暗号解読を目的としてシステムによって確認かつ維持される。
【００４６】
キーサービスエンジン４１６はまた、コンテンツ（アップロード）要求４０１を処理し、コンテンツ要求に対してメタデータ及び理由を識別し、理由に関連付けられたコードを生成する。一例としてかつ非制限的に、メタデータは、要求を開始するインターネットプロトコル（ＩＰ）アドレス、要求に関連付けられたユーザ識別子（ＩＤ）、要求に関連付けられたファイル識別子（ＩＤ）などを含むことができる。他のメタデータも可能である。一例としてかつ非制限的に、理由は、アップロードデータ項目要求を与えるため、ダウンロード又はアクセスデータ項目要求を与えるため、保守要求を与えるため、別のアクションを行う（例えば、テキスト抽出要求を行う）ため、バックエンドサービスなどを与えるためを含むことができる。他の理由も可能である。各理由は、理由コードを用いて符号化することができる。
【００４７】
キーサービスエンジン４１６はまた、リモートキー要求４０６を生成して企業クライアントに要求を送信する。図４Ａの例に示すように、リモートキー要求４０６は、暗号化された暗号化キー、生成された理由コード、及び／又はコンテンツ要求４０１に関連付けられた識別又は生成されたメタデータを含む。例示的なキーサービスエンジン４１６のコンテンツを図５に示すと共に図５を参照してより詳細に説明する。
【００４８】
リモートキーサービスエンジン４２０は、暗号化された暗号化キー、生成された理由コード、及び／又はコンテンツ要求に関連付けられて識別又は生成されたメタデータを含むリモートキー要求を受信し、理由コード及び／又はメタデータを処理し、１つ又はそれよりも多くの予め構成された規則に基づいて要求を受諾すべきか又は拒否すべきかを判断する構成可能な規則処理エンジンを含む。例えば、特定の理由コードを用いて要求を拒否する、特定のＩＰアドレスからの要求を拒否する、ユーザＩＤ基づいて特定のユーザを拒否するなどの規則を生成することができる。例示的なリモートキーサービスエンジン４２０のコンテンツを図６に示すと共に図６を参照してより詳細に説明する。
【００４９】
リモートキーサービスエンジン４２０が要求を受諾した場合に、リモートキーサービスエンジン４２０は、リモートＫＥＫを選択し、リモートＫＥＫを使用して暗号化された暗号化キーを暗号化し、従って、２回暗号化されたキー４０８が得られる。リモートキーサービスエンジン４２０は、その後に、２回暗号化されたキー４０８及びリモートＫＥＫを用いてリモートキー要求４０６に応答する。代替的に、リモートＫＥＫ及び／又は２回暗号化されたキー４０８は、企業クライアントに関連付けられたリモートデータストアに格納することができる。
【００５０】
最後に、キーサービスエンジン４１６は、データストアに２回暗号化されたキー４０８、リモートＫＥＫ、及びローカルＫＥＫをデータストア４１５に格納するように指示する。２回暗号化されたキー４０８、リモートＫＥＫ、及びローカルＫＥＫは、データストア４１５に格納するか、及び／又はそうでなければデータストア４１５内の対応する暗号化されたデータ項目４０３に関連付けることができる。代替的に、リモートＫＥＫ及び／又は２回暗号化されたキーが遠隔操作で格納された場合に、ＫＥＫ及び／又は２回暗号化されたキーに関する情報（例えば、ＩＤ）は、暗号化されたデータ項目４０３に関連付けるか、及び／又は暗号化されたデータ項目４０３と共に格納することができる。
【００５１】
アクセス要求に応答してリモートキー管理サービスを容易にするための協調クラウドベース環境４００における構成要素の作動を示す別の例データフロー図を示す図４Ｂを次に参照すると、クラウドベースのプラットフォームは、最初に、コンテンツインタフェース４１２でコンテンツ要求４３１を受信する。コンテンツインタフェース４１２は、コンテンツ要求４３１を処理し、要求がデータ項目４４５にアクセス（又はダウンロード）する要求を含むと判断し、キーサービスエンジン４１６にアクセス要求４３３を渡す。
【００５２】
キーサービスエンジン４１６は、最初に、要求されたデータ項目４４５がリモートキー管理機能性に関連付けられるか否かを判断する。例えば、各データ項目は、企業に関連付けることができ、キーサービスエンジン４１６は、データ項目に関連付けられた企業を識別して、企業がキー管理機能性を有するか否かを判断することができる。代替的に又は追加的に、企業又はクライアントは、個別的に（又は項目単位で）キーを取り扱い及び／又はそうでなければ管理することができる。図４Ｂ７の例では、キーサービスエンジン４１６は、要求されたデータ項目４４５がリモートキー管理機能性に関連付けられると判断する。
【００５３】
キーサービスエンジン４１６は、その後に、データ項目４４５及びアクセスに関連付けられた情報を判断し及び／又はそうでなければ識別してデータストア４１５からこの情報を受信又は検索する。図４Ｂの例では、データ項目４４５に関連付けられた情報は、２回暗号化されたキー４３５、リモートＫＥＫ、及びローカルＫＥＫを含む。上述したように、一部の実施形態において、リモートＫＥＫ及び／又は２回暗号化されたキーは、遠隔操作で格納することができる。キーサービスエンジン４１６は、コンテンツ（アクセス）要求４３１を処理し、コンテンツ要求に対してメタデータ及び理由を識別して、理由に関連付けられたコードを生成する。キーサービスエンジン４１６は、その後に、２回暗号化されたキー、理由コード、メタデータ、及びリモートＫＥＫを含むリモートキー要求４３７を生成する。例示的なキーサービスエンジン４１６のコンテンツを図５に示すと共に図５を参照してより詳細に説明する。
【００５４】
上述したように、リモートキーサービスエンジン４２０は、２回暗号化された暗号化キー、生成された理由コード、コンテンツ要求に関連付けられて識別又は生成されたメタデータ、及び／又はリモートＫＥＫを含むリモートキー要求を受信する構成可能な規則処理エンジンを含む。リモートキーサービスエンジン４２０は、理由コード及び／又はメタデータを処理して、１つ又はそれよりも多くの予め構成された規則に基づいて要求を受諾すべきか又は拒否すべきかを判断する。上述したように、特定の理由コードを用いて要求を拒否する、特定のＩＰアドレスからの要求を拒否する、ユーザＩＤなどに基づいて特定のユーザを拒否するなどの規則を生成することができる。例示的なリモートキーサービスエンジン４２０のコンテンツを図６に示すと共に図６を参照してより詳細に説明する。
【００５５】
リモートキーサービスエンジン４２０が要求を受諾した場合に、リモートキーサービスエンジン４２０は、リモートＫＥＫを使用して２回暗号化されたキーを暗号解読して、キーサービスエンジン４１６に１回暗号化されたキー４３９を戻す。キーサービスエンジン４１６は、１回暗号化されたキー４３９を受信するとローカルＫＥＫを使用して１回暗号化されたキー４３９を暗号解読し、従って、暗号化キー４４１が得られる。キーサービスエンジン４１６は、その後に、暗号化されたデータ項目４４３を暗号解読し、従って、データ項目４４５が得られるようにコンテンツ暗号化／暗号解読エンジン４１４に暗号化キー４４１を供給する。コンテンツ暗号化／暗号解読エンジン４１４は、コンテンツインタフェース４１２にデータ項目４４５を供給し、コンテンツインタフェース４１２は、次に、データ項目４４５を用いてコンテンツ要求４３１に応答する。
【００５６】
図５は、協調クラウドベース環境においてリモートキー管理サービスを容易にするためのキーサービスエンジン５００における構成要素の例を示すブロック図を示している。キーサービスエンジン５００は、図４Ａ及び図４Ｂのキーサービスエンジン４１６とすることができるが、代替構成も可能である。
【００５７】
キーサービスエンジン５００は、一般的にクラウドベースのサービスとすることができるウェブベース又はオンライン協調環境の一部とすることができる。キーサービスエンジン５００は、例えば、要求インタフェース５０５、キーサービスプロキシ５１０、キー暗号化／暗号解読エンジン５１５、理由生成エンジン５２０、メタデータエンジン５２５、及び企業クライアントインタフェース５３０を含むことができる。付加的な又はより少ない構成要素／モジュール／エンジンをキーサービスエンジン５００及び／又は各示す構成要素内に含めることができる。更に、キーサービスエンジン５００の一部として含まれると示されているが、構成要素／モジュール／エンジンは、物理的に及び／又は機能的に分散させることができる。
【００５８】
要求インタフェース５０５は、クラウドベースのプラットフォームの他の構成要素と通信するように構成することができる。同様に、企業クライアントインタフェース５３０は、リモートクライアントデバイス（例えば、企業クライアントコンピュータ又はデバイス）の構成要素と通信するように構成することができる。
【００５９】
要求インタフェース５０５及び／又は企業クライアントインタフェース５３０キーサービスエンジン５００は、ホスト及び外部エンティティによりサポートされたいずれかの公知の及び／又は便利な通信プロトコルを通じてキーサービスエンジン５００の外部であるエンティティとネットワークにおけるデータを仲介することを可能にするネットワークモジュールとすることができる。例えば、要求インタフェース５０５及び／又は企業クライアントインタフェース５３０は、ネットワークアダプタカード、無線ネットワークインタフェースカード（例えば、ＳＭＳインタフェース、ＷｉＦｉインタフェース、１Ｇ、２Ｇ、３Ｇ、３．５Ｇ、４Ｇ、ＬＴＥなどを含むがこれらに限定されない移動通信規格の様々な生成のためのインタフェース）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ルータ、アクセスポイント、無線ルータ、スイッチ、多層スイッチ、ブロトコルコンバータ、ゲートウェイ、ブリッジ、ブリッジルータ、ハブ、デジタルメディア受信機、及び／又は中継器のうちの１つ又はそれよりも多くを含むことができるネットワークインタフェースとすることができる。
【００６０】
本明細書で使用する時の「モジュール」、「マネージャ」、「ハンドラ」、「検出器」、「インタフェース」、又は「エンジン」は、汎用、専用、又は共有プロセッサ、及び典型的にプロセッサによって実行されるファームウエア又はソフトウエアモジュールを含む。実施特定の又は他の考慮事項により、モジュール、マネージャ、ハンドラ、又はエンジンは、集中型又は機能分散型とすることができる。モジュール、マネージャ、ハンドラ、又はエンジンは、プロセッサによる実行に向けてコンピュータ可読（ストレージ）媒体において実施される汎用又は専用ハードウエア、ファームウエア、又はソフトウエアを含むことができる。本明細書で使用する時のコンピュータ可読媒体又はコンピュータ可読ストレージ媒体は、全て、制定法に従う（例えば、米国においては「３５  Ｕ．Ｓ．Ｃ．  １０１」に従う）媒体を含み、かつ特に除外が有効であるべきコンピュータ可読（ストレージ）媒体を含む特許請求の範囲に必要である範囲で本質的に制定法に従うものではない全ての媒体を除外することを意図される。公知の制定法に従うコンピュータ可読媒体はハードウエア（例えば、少し例を挙げればレジスタ、ランダムアクセスメモリ（ＲＡＭ）、不揮発性（ＮＶ）データストア）を含むが、ハードウエアに制限される場合もあれば、制限されない場合もある。
【００６１】
キーサービスエンジン５００の一実施形態は、コンテンツ要求によって示されたデータ項目がリモートキー管理機能性に関連付けられるという判断に応答してリモートキー要求を開始するように構成されたいずれかのデバイスを含むことができるキーサービスプロキシ５１０を含む。
【００６２】
キーサービスエンジン５００の一実施形態は、暗号化キーに向けて暗号化及び暗号解読の第１の層を与えることができるキー暗号化／暗号解読エンジン５１５を含む。アップロード要求中に、図４Ａで上述したように、キー暗号化／暗号解読エンジン５１５は、受信したデータ項目を暗号化するために選択及び使用される暗号化キーを暗号化する。例えば、キー暗号化／暗号解読エンジン５１５は、暗号化キーを暗号化するキー暗号化キーを選択することができる。一実施形態において、キー暗号化キーはランダムに選択されるが、キー暗号化キーは、他の方法で選択することもできる。キーの暗号化が完全である状態で、キーサービスエンジン５００は、データストア内にキー暗号化キー（ＫＥＫ）を格納することができる。１つ又はそれよりも多くの実施形態において、本明細書に説明する構成要素により転送されるＫＥＫは、キー暗号化キー識別子（ＩＤ）とすることができる。
【００６３】
アクセス（又はダウンロード）要求中に、図４Ｂで上述したように、キー暗号化／暗号解読エンジン５１５は、データストア（又はメモリ）からキー暗号化キーにアクセスし、キー暗号化キーを使用して、２回暗号化されたキーを暗号解読するリモートキー要求に応答して受信した１回暗号化されたキーを暗号解読することができる。
【００６４】
キーサービスエンジン５００の一実施形態は、コンテンツ要求を処理し、コンテンツ要求に関連付けられた理由を識別して、これに応答して対応する理由コードを生成することができる理由生成エンジン５２０を含む。
【００６５】
キーサービスエンジン５００の一実施形態は、受信したコンテンツ要求を処理してコンテンツ要求に関連付けられたメタデータを識別することができるメタデータエンジン５２５を含む。一実施形態において、リモートキー要求は、メタデータを含むことができる。
【００６６】
図６は、協調クラウドベース環境においてリモートキー管理サービスを容易にするためのリモートキーサービスエンジン６００における構成要素の例を示すブロック図を示している。リモートキーサービスエンジン６００は、図４Ａ及び図４Ｂのキーサービスエンジン４２０とすることができるが、代替構成も可能である。
【００６７】
リモートキーサービスエンジン６００は、一般的にクラウドベースのサービスとすることができるウェブベース又はオンライン協調環境の一部とすることができる。リモートキーサービスエンジン６００は、例えば、プラットフォームインタフェース６０５、キー暗号化／暗号解読エンジン６１０、規則構成エンジン６１５、規則処理エンジン６２０、キルスイッチ６２５、及びクライアント構成インタフェース６３０を含むことができる。付加的な又はより少ない構成要素／モジュール／エンジンをリモートキーサービスエンジン６００及び／又は各示す構成要素内に含めることができる。更に、リモートキーサービスエンジン６００の一部として含まれると示されているが、構成要素／モジュール／エンジンは、物理的に及び／又は機能的に分散させることができる。更に、一部の実施形態において、リモートキーサービスエンジン６００は、キーサービスエンジン５００とすることができ、各々は、同じ構成要素の１つ又はそれよりも多くを有する。
【００６８】
プラットフォームインタフェース６０５は、例えば、図５のキーサービスエンジン５００のようなクラウドベースのプラットフォームの構成要素と通信するように構成することができる。同様に、クライアント構成インタフェース６３０は、クライアント（例えば、企業クライアントコンピュータ又はデバイス）が規則構成エンジン６１５を通じて規則を構成することを可能にするように構成することができる。
【００６９】
プラットフォームインタフェース６０５及び／又はクライアント構成インタフェース６３０は、リモートキーサービスエンジン６００が、ホスト及び外部エンティティによりサポートされたいずれかの公知の及び／又は便利な通信プロトコルを通じてリモートキーサービスエンジン６００の外部であるエンティティとネットワークにおけるデータを仲介することを可能にするネットワークモジュールとすることができる。例えば、プラットフォームインタフェース６０５及び／又はクライアント構成インタフェース６３０は、ネットワークアダプタカード、無線ネットワークインタフェースカード（例えば、ＳＭＳインタフェース、ＷｉＦｉインタフェース、１Ｇ、２Ｇ、３Ｇ、３．５Ｇ、４Ｇ、ＬＴＥなどを含むがこれらに限定されない移動通信規格の様々な生成のためのインタフェース）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ルータ、アクセスポイント、無線ルータ、スイッチ、多層スイッチ、ブロトコルコンバータ、ゲートウェイ、ブリッジ、ブリッジルータ、ハブ、デジタルメディア受信機、及び／又は中継器のうちの１つ又はそれよりも多くを含むことができるネットワークインタフェースとすることができる。
【００７０】
本明細書で使用する時の「モジュール」、「マネージャ」、「ハンドラ」、「検出器」、「インタフェース」、又は「エンジン」は、汎用、専用、又は共有プロセッサ、及び典型的にプロセッサによって実行されるファームウエア又はソフトウエアモジュールを含む。実施特定の又は他の考慮事項により、モジュール、マネージャ、ハンドラ、又はエンジンは、集中型又は機能性分散型とすることができる。モジュール、マネージャ、ハンドラ、又はエンジンは、プロセッサによる実行に向けてコンピュータ可読（ストレージ）媒体において実施される汎用又は専用ハードウエア、ファームウエア、又はソフトウエアを含むことができる。本明細書で使用する時のコンピュータ可読媒体又はコンピュータ可読ストレージ媒体は、全て、制定法に従う（例えば、米国においては「３５  Ｕ．Ｓ．Ｃ．  １０１」に従う）媒体を含み、かつ特に除外が有効であるべきコンピュータ可読（ストレージ）媒体を含む特許請求の範囲に必要である範囲で本質的に制定法に従うものではない全ての媒体を除外することを意図される。公知の制定法に従うコンピュータ可読媒体はハードウエア（例えば、少し例を挙げればレジスタ、ランダムアクセスメモリ（ＲＡＭ）、不揮発性（ＮＶ）データストア）を含むが、ハードウエアに制限される場合もあれば、制限されない場合もある。
【００７１】
キーサービスエンジン６００の一実施形態は、リモートクライアントデバイスにおいて暗号化キーに向けて暗号化及び暗号解読の第２の層を与えることができるキー暗号化／暗号解読エンジン６１０を含む。リモート暗号化要求中に、図４Ａで上述したように、キー暗号化／暗号解読エンジン６１０は、リモートキー暗号化キーを使用して受信した１回暗号化された暗号化キーを暗号化する。一実施形態において、キー暗号化／暗号解読エンジン６１０は、その後に、クラウドベースのプラットフォームのキーサービスエンジンに２回暗号化された暗号化キー及び／又はリモートＫＥＫを供給することができる。リモート暗号解読要求中に、図４Ｂで上述したように、キー暗号化／暗号解読エンジン６１０は、リモートキー暗号化キーを使用して２回暗号化された暗号化キーを暗号解読する。
【００７２】
リモートキーサービスエンジン６００の一実施形態は、規則のクライアント構成を容易にすることができる規則構成エンジン６１５を含む。例えば、特定の理由コードを用いて要求を拒否する、特定のＩＰアドレスからの要求を拒否する、ユーザＩＤ基づいて特定のユーザを拒否するなどの規則を生成することができる。
【００７３】
リモートキーサービスエンジン６００の一実施形態は、暗号化された暗号化キー、生成された理由コード、及び／又はコンテンツ要求に関連付けられて識別又は生成されたメタデータを含むリモートキー要求を受信し、理由コード及び／又はメタデータを処理して１つ又はそれよりも多くの予め構成された規則に基づいて要求を受諾すべきか又は拒否すべきかを判断することができる規則処理エンジン６２０を含む。例えば、特定の理由コードを用いて要求を拒否する、特定のＩＰアドレスからの要求を拒否する、ユーザＩＤ基づいて特定のユーザを拒否するなどの規則を生成することができる。例示的なリモートキーサービスエンジン４２０のコンテンツを図６に示すと共に図６を参照してより詳細に説明する。
【００７４】
リモートキーサービスエンジン６００の一実施形態は、予め構成された規則及び理由とは無関係に設定することができるキルスイッチを含む。設定された状態で、キルスイッチは、予め構成された規則及び理由とは無関係にリモートキー要求を拒否する。
【００７５】
図７は、コンテンツ項目アップロード要求に応答して協調クラウドベース環境においてリモートキー管理サービスを容易にするための例示的な処理を示す流れ図７００を示している。例えば、図４Ａ及び図４Ｂのクラウドベースのプラットフォームのようなクラウドベースのプラットフォームの構成要素は、取りわけ、例示的な処理７００を行うことができる。
【００７６】
開始するために、処理７１０で、クラウドベースのプラットフォームは、生ファイル（例えば、コンテンツ又はデータ項目）のアップロードに向けて要求を受信する。アップロードの要求を協調クラウドベース環境内部にある別の機械、ウェブアプリケーションサーバ、外部ユーザ（協力者）機械などから受信することができる。一実施形態において、例えば、図４Ａ及び図４Ｂのコンテンツインタフェース４１２のようなコンテンツインタフェースは、クラウドベースのプラットフォームでアップロードの要求を受信することができる。処理７１２で、クラウドベースのプラットフォームは、暗号化キーを使用して生ファイルを暗号化する。一実施形態において、例えば、図４Ａ及び図４Ｂの暗号化／暗号解読エンジン４１４のようなコンテンツ暗号化／暗号解読エンジンは、生ファイルを暗号化することができる。
【００７７】
処理７１４で、クラウドベースのプラットフォームは、ローカルキー暗号化キー（ＫＥＫ）を使用して暗号化キーを暗号化する。一実施形態において、例えば、図４Ａ及び図４Ｂのキーサービスエンジン４１６のようなキーサービスエンジンは、ローカルＫＥＫを使用して暗号化キーを暗号化することができる。キーサービスエンジンは、ランダムに又はいずれかの他の公知の方法でローカルＫＥＫを選択することができる。
【００７８】
判断処理７１６で、クラウドベースのプラットフォームは、コンテンツ（アップロード）要求及び／又は特定のコンテンツ項目がリモートキー管理機能性に関連付けられるか否かを判断する。一実施形態において、例えば、図４Ａ及び図４Ｂのキーサービスエンジン４１６のようなキーサービスエンジンは、リモートキー管理の判断を行うことができる。例えば、各データ項目は、企業に関連付けることができ、キーサービスエンジンは、データ項目に関連付けられた企業を識別して、企業がキー管理機能性を有するか否かを判断することができる。代替的に又は追加的に、企業又はクライアントは、個別的に（又は項目単位で）キーを取り扱い及び／又はそうでなければ管理することができる。すなわち、キーサービスエンジンは、要求されたデータ項目がリモートキー管理機能性に関連付けられると判断することができる。
【００７９】
コンテンツ（アップロード）要求及び／又は特定のコンテンツ項目がリモートキー管理機能性に関連付けられていない場合に、処理７１８で、クラウドベースのプラットフォームは、暗号化されたコンテンツ又はデータ項目及び関連の１回暗号化された暗号化キー及びローカルＫＥＫをデータストアに格納する。しかし、コンテンツ（アップロード）要求及び／又は特定のコンテンツ項目がリモートキー管理機能性に関連付けられている場合に、処理７２０で、クラウドベースのプラットフォームは、コンテンツ要求に関連付けられたメタデータを識別して、処理７２２で、コンテンツ要求に関連付けられた理由コードを判断する。一実施形態において、例えば、図４Ａ及び図４Ｂのキーサービスエンジン４１６のようなキーサービスエンジンは、本明細書に説明するように、コンテンツ要求に関連付けられたメタデータを識別し、理由を判断し、かつ対応する理由コードを生成することができる。
【００８０】
一実施形態において、コンテンツ要求に関連付けられたメタデータを識別する段階は、コンテンツ要求に関連付けられた補助的情報を識別し及び／又は他の方法で判断する段階を含む。例えば、メタデータは、要求を開始するインターネットプロトコル（ＩＰ）アドレス、要求に関連付けられたユーザ識別子（ＩＤ）、要求に関連付けられたファイル識別子（ＩＤ）などを含むことができるが、これらに限定されない。他のメタデータも可能である。
【００８１】
一実施形態において、理由コードを判断する段階は、最初にコンテンツ要求の理由を識別し、その後に、理由に関連付けられたコードを生成する段階を含む。一例としてかつ非制限的に、理由は、アップロードデータ項目要求を与えるため、ダウンロード又はアクセスデータ項目要求を与えるため、保守要求を与えるため、別のアクションを行う（例えば、テキスト抽出要求を行う）ため、バックエンドサービスなどを与えるためなどを含むことができる。他の理由も可能である。各理由は、理由コードを用いて符号化することができる。
【００８２】
処理７２４で、クラウドベースのプラットフォームは、暗号化された暗号化キーを暗号化するリモートキー要求を開始する。本明細書に説明するように、リモートキー要求は、暗号化された暗号化キー（本明細書では１回暗号化された暗号化キーとも呼ばれる）、コンテンツ要求に関連付けられて識別又は生成されたメタデータ、及び生成された理由コードを含む。例えば、図４Ａ及び図４Ｂのキーサービスエンジン４１６のようなキーサービスエンジンは、リモートキー管理要求を開始することができる。
【００８３】
判断処理７２６で、リモート企業クライアントシステムは、理由がｏｋであるか否かを判断する。例えば、図４Ａ及び図４Ｂのリモートキーサービスエンジン４２０のようなリモートキーサービスエンジンは、その理由が許容可能であると判断することができる。より具体的には、例えば、図６の規則処理エンジン６２０のような規則処理エンジンは、この判断を行うことができる。リモート企業クライアントシステムが、理由が許容可能でない（すなわち、理由は拒否される）と判断した場合に、処理７２８で、クラウドベースのプラットフォームは、拒否を受信し、任意的に処理７３０でコンテンツ要求要求側（例えば、コンテンツ要求を開始するシステム又はユーザ）に通知する。
【００８４】
処理７３２で、クラウドベースのプラットフォームは、２回暗号化された暗号化キー及びリモートＫＥＫを受信し、処理７３４で、関連付けられた２回暗号化された暗号化キー、ローカルＫＥＫ、及びリモートＫＥＫと共に暗号化ファイルを格納する。最後に、処理７３６で、クラウドベースのプラットフォームは、コンテンツ項目要求側に任意的に確認応答を供給する。一実施形態において、確認は、コンテンツ要求受信後のいずれの時間にも行うことができる。
【００８５】
図８は、コンテンツ項目アクセス要求に応答して協調クラウドベース環境においてリモートキー管理サービスを容易にするための例示的な処理８００を示す流れ図８００を示している。例えば、図４Ａ及び図４Ｂのクラウドベースのプラットフォームのようなクラウドベースのプラットフォームの構成要素は、取りわけ、例示的な処理８００を行うことができる。
【００８６】
開始するために、処理８１０で、クラウドベースのプラットフォームは、ファイル（例えば、コンテンツ又はデータ項目）をダウンロードするためにアクセス要求を受信する。アクセスの要求は、協調クラウドベース環境内部にある別の機械、ウェブアプリケーションサーバ、外部ユーザ（協力者）機械などから受信することができる。一実施形態において、例えば、図４Ａ及び図４Ｂのコンテンツインタフェース４１２のようなコンテンツインタフェースは、クラウドベースのプラットフォームでアップロードの要求を受信することができる。
【００８７】
判断処理８１２で、クラウドベースのプラットフォームは、コンテンツ（アクセス）要求及び／又は特定のコンテンツ項目がリモートキー管理機能性に関連付けられるか否かを判断する。一実施形態において、例えば、図４Ａ及び図４Ｂのキーサービスエンジン４１６のようなキーサービスエンジンは、リモートキー管理の判断を行うことができる。例えば、各データ項目は、企業に関連付けることができ、キーサービスエンジンは、データ項目に関連付けられた企業を識別して、企業がキー管理機能性を有するか否かを判断することができる。代替的に又は追加的に、企業又はクライアントは、個別的に（又は項目単位で）キーを取り扱い及び／又はそうでなければ管理することができる。すなわち、キーサービスエンジンは、要求されたデータ項目がリモートキー管理機能性に関連付けられると判断することができる。
【００８８】
コンテンツ（アクセス）要求及び／又は特定のコンテンツ項目がリモートキー管理機能性に関連付けられていない場合に、処理は、以下の処理８３２で続行される。しかし、コンテンツ（アクセス）要求及び／又は特定のコンテンツ項目がリモートキー管理機能性に関連付けられている場合に、処理８１４で、クラウドベースのプラットフォームは、コンテンツ要求に関連付けられたメタデータを識別し、処理８１６で、コンテンツ要求に関連付けられた理由コードを判断する。一実施形態において、例えば、図４Ａ及び図４Ｂのキーサービスエンジン４１６のようなキーサービスエンジンは、本明細書に説明するように、コンテンツ要求に関連付けられたメタデータを識別し、理由を判断し、かつ対応する理由コードを生成することができる。
【００８９】
一実施形態において、コンテンツ要求に関連付けられたメタデータを識別する段階は、コンテンツ要求に関連付けられた補助的情報を識別し及び／又は他の方法で判断する段階を含む。例えば、メタデータは、要求を開始するインターネットプロトコル（ＩＰ）アドレス、要求に関連付けられたユーザ識別子（ＩＤ）、要求に関連付けられたファイル識別子（ＩＤ）などを含むことができるが、これらに限定されない。他のメタデータも可能である。
【００９０】
一実施形態において、理由コードを判断する段階は、最初にコンテンツ要求の理由を識別し、その後に、理由に関連付けられたコードを生成する段階を含む。一例としてかつ非制限的に、理由は、アップロードデータ項目要求を与えるため、ダウンロード又はアクセスデータ項目要求を与えるため、保守要求を与えるため、別のアクションを行う（例えば、テキスト抽出要求を行う）ため、バックエンドサービスなどを与えるためなどを含むことができる。他の理由も可能である。各理由は、理由コードを用いて符号化することができる。
【００９１】
処理８２２で、クラウドベースのプラットフォームは、データストアから２回暗号化された暗号化キー、ローカルＫＥＫ、及びリモートＫＥＫにアクセスする。処理８２４で、クラウドベースのプラットフォームは、暗号化された暗号化キーを暗号化するリモートキー要求を開始する。本明細書に説明するように、リモートキー要求は、２回暗号化された暗号化キー、コンテンツ要求に関連付けられて識別又は生成されたメタデータ、生成された理由コード、及びリモートＫＥＫを含む。例えば、図４Ａ及び図４Ｂのキーサービスエンジン４１６のようなキーサービスエンジンは、リモートキー管理要求を開始することができる。
【００９２】
判断処理８２４で、リモート企業クライアントシステムは、理由がｏｋであるか否かを判断する。例えば、図４Ａ及び図４Ｂのリモートキーサービスエンジン４２０のようなリモートキーサービスエンジンは、その理由が許容可能であると判断することができる。より具体的には、例えば、図６の規則処理エンジン６２０のような規則処理エンジンは、この判断を行うことができる。リモート企業クライアントシステムが、理由が許容可能でない（すなわち、理由は拒否される）と判断した場合に、処理８２６で、クラウドベースのプラットフォームは、拒否を受信し、任意的に処理８２８でコンテンツ要求要求側（例えば、コンテンツ要求を開始するシステム又はユーザ）に通知する。
【００９３】
処理８３０で、クラウドベースのプラットフォームは、１回暗号化された暗号化キーを受信し、処理８３２で、データストアからコンテンツ要求に関連付けられて暗号化されたデータ項目にアクセスする。様々な実施形態において、クラウドベースのプラットフォームは、ローカルＫＥＫが処理８１８で以前にアクセスされなかった場合に、データストアからローカルＫＥＫにアクセス可能である。
【００９４】
処理８３４で、クラウドベースのプラットフォームは、ローカルＫＥＫを使用して暗号化されたデータ暗号化キーを暗号解読する。
【００９５】
処理８３６で、クラウドベースのプラットフォームは、暗号化されていない暗号化キーを使用して暗号化されたデータ項目を暗号解読する。最後に、クラウドベースのプラットフォームは、コンテンツ要求に応答して暗号解読されたファイルコンテンツ項目を要求側に供給する。
【００９６】
図９は、機械をして本明細書に説明する方法のいずれか１つ又はそれよりも多くを行わせる１組の命令を実行することができるコンピュータシステムの例示的な形態の機械の概略図を示している。
【００９７】
代替的な実施形態において、機械は、独立型デバイスとして作動するか、又は他の機械に接続することができる（例えば、ネットワーク化）。ネットワーク化された配備では、機械は、サーバ／クライアントネットワーク環境におけるサーバ又はクライアント機械の機能で、又はピア・ツー・ピア（又は分散型）ネットワーク環境におけるピア機械で作動させることができる。
【００９８】
機械は、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ（ＰＣ）、タブレットＰＣ、ラップトップコンピュータ、セットトップボックス（ＳＴＢ）、携帯情報端末（ＰＤＡ）、セルラー電話、ｉＰｈｏｎｅ、ｉＰａｄ、ブラックベリー、プロセッサ、電話、ウェブ機器、ネットワークルータ、スイッチ又はブリッジ、コンソール、手持ち式コンソール、（手持ち式）ゲーム機、音楽プレーヤ、いずれかの携帯式、モバイル、手持ち式デバイス、又はその機械により取るべきアクションを指定する１組の命令（順次的な又は他の方法の）を実行することができるいずれかの機械とすることができる。
【００９９】
機械可読媒体又は機械可読ストレージ媒体を単一の媒体であるように例示的な実施形態に示すが、「機械可読媒体」及び「機械可読ストレージ媒体」という用語は、１つ又はそれよりも多くの組の命令を格納する単一の媒体又は複数の媒体（例えば、集中型又は分散型データベース及び／又は関連のキャッシュ及びサーバ）を含むと取るべきである。「機械可読媒体」及び「機械可読ストレージ媒体」という用語は、機械による実行に向けて１組の命令を格納、符号化、又は担持することができ、かつ機械をして本発明に開示する技術及び革新の方法のいずれか１つ又はそれよりも多くを行わせるあらゆる媒体も含むと取るものとする。
【０１００】
一般的に、本発明の開示の実施形態を実施するために実行されるルーチンは、オペレーティングシステム又は特定のアプリケーション、構成要素、プログラム、オブジェクト、モジュール、又は「コンピュータプログラム」と呼ぶ命令のシーケンスの一部として実施することができる。コンピュータプログラムは、一般的に、コンピュータ内の様々なメモリ及びストレージデバイスにおいて様々な時に設定され、かつコンピュータ内の１つ又はそれよりも多くの処理ユニット又はプロセッサにより読み込まれて実行された時にコンピュータをして本発明の開示の様々な態様に関わっている要素を実行する演算を行わせる１つ又はそれよりも多くの命令を含む。
【０１０１】
更に、実施形態を完全に機能するコンピュータ及びコンピュータシステムとの関連に説明したが、当業者は、様々な実施形態を様々な形態でプログラム製品として販売することができ、かつ本発明の開示は、実際に販売を行うために使用される特定のタイプの機械又はコンピュータ可読媒体とは無関係に等しく適用されることを認識するであろう。
【０１０２】
機械可読ストレージ媒体、機械可読媒体、又はコンピュータ可読（ストレージ）媒体の更に別の例は、取りわけ、揮発性及び不揮発性メモリデバイス、フロッピー（登録商標）ディスク及び他の着脱式のディスク、ハードディスクドライブ、光ディスク（例えば、コンパクトディスク読取専用メモリ（ＣＤ−ＲＯＭ）、デジタルビデオディスク（ＤＶＤ）など）のような記録することができるタイプの媒体、及びデジタル及びアナログ通信リンクのような送信タイプ媒体を含むがこれらに限定されない。
【０１０３】
ネットワークインタフェースデバイスは、機械７００が、ホスト及び外部エンティティによりサポートされるいずれかの公知の及び／又は便利な通信プロトコルを通じてホストサーバの外部にあるエンティティとネットワーク内でデータを仲介することを可能にする。ネットワークインタフェースデバイスは、ネットワークアダプタカード、無線ネットワークインタフェースカード、ルータ、アクセスポイント、無線ルータ、スイッチ、多層スイッチ、プロトコルコンバータ、ゲートウェイ、ブリッジ、ブリッジルータ、ハブ、デジタルメディア受信機、及び／又は中継器のうちの１つ又はそれよりも多くを含むことができる。
【０１０４】
ネットワークインタフェースデバイスは、一部の実施形態において、コンピュータネットワーク内でプロキシデータにアクセスする許諾を抑制及び／又は管理し、かつ異なる機械及び／又はアプリケーション間の異なるレベルの委託を追跡することができるファイアウォールを含むことができる。ファイアウォールは、例えば、これらの異なるエンティティ間のトラヒック及びリソース共有の流れを調節するために特定の１組の機械とアプリケーション、機械と機械、及び／又はアプリケーションとアプリケーション間の所定の組のアクセス権を実施することができるハードウエア及び／又はソフトウエア構成要素のいずれかの組合せを有するあらゆる数のモジュールとすることができる。ファイアウォールは、更に、例えば、個人、機械、及び／又はアプリケーションによるオブジェクトのアクセス及び運用権、及び許諾の権利が成り立つ状況を含む許諾を詳細に示すアクセス制御リストを管理及び／又はそれへのアクセスを有する。
【０１０５】
ファイアウォールの機能に実施するか又はそれに含めることができる他のネットワークセキュリティ機能は、例えば、本発明の開示の新しい技術から逸脱することなく、侵入防止、侵入検出、次世代ファイアウォール、パーソナルファイアウォールなどとすることができるがこれらに制限されない。
【０１０６】
文脈上明確に逆が要求されない限り、本発明の説明及び特許請求の範囲を通じて「ｃｏｍｐｒｉｓｅ」及び「ｃｏｍｐｒｉｓｉｎｇ」などのような語は、排他的又は網羅的な意味ではなく、包含的な意味、すなわち、「を含むがこれに限定されない」という意味で解釈されなければならない。本明細書で使用する時の用語「接続された」、「結合された」、又はそのいずれかの変形は、２つ又はそれよりも多くの要素間の直接的、間接的とは無関係のあらゆる接続又は結合を意味すると共に、要素間の結合又は接続は、物理的なもの、論理的なもの、又はその組合せとすることができる。更に、本出願に使用する時の「本明細書」、「上記」、「下記」、及び類似の趣旨の語は、全体として本出願を指し、本出願のいずれの特定の部分も指すのではないものとする。文脈が許す場合に、単数又は複数を使用する上述の「発明を実施するための形態」内の言葉は、それぞれ複数又は単数を含むことができる。２つ又はそれよりも多くの項目のリストに関連した「又は」という語は、リスト内の項目のいずれか、リスト内の項目の全て、及びリスト内の項目のいずれかの組合せといった語の解釈の全てを包含する。
【０１０７】
本発明の開示の実施形態の上述の詳しい説明は、網羅的であること又は先に開示した正確な形態に教示を制限することを意図しているものではない。本発明の開示の特定の実施形態及び本発明の開示の例は、例示を目的として本明細書に説明しているが、当業技術の当業者が認識するように、様々な同等の修正が本発明の範囲で可能である。例えば、処理又はブロックは、所定の順序に示されているが、代替的な実施形態において、異なる順序で段階を有するルーチンを実行するか、又はブロックを有するシステムを使用することができ、代案及び／又は部分組合せを与えるために、一部の処理又はブロックは、削除、追加、細分化、結合、及び／又は変更することができる。これらの処理又はブロックの各々は、様々な異なる方法で行うことができる。また、処理又はブロックは、連続で行われるように示されているが、これらの処理又はブロックは、代わりに並列に行うことができ、又は異なる時間に行うことができる。更に、本明細書に説明したいずれの特定の番号も例にすぎず、代替的な実施では、異なる値又は範囲を使用することができる。
【０１０８】
本明細書に示す本発明の開示の教示は、必ずしも上述のシステムではなく他のシステムにも適用することができる。上述の様々な実施形態の要素及び行為は、更に別の実施形態を与えるために結合することができる。
【０１０９】
添付出願文書に列挙することができる一切を含むあらゆる特許及び出願及び上述の他の参考文献は、引用により本明細書に組み込まれている。本発明の開示の態様は、必要に応じて、本発明の開示の更に別の実施形態を与えるために上述の様々な参考文献のシステム、機能、及び概念を使用するように修正することができる。
【０１１０】
上述の「発明を実施するための形態」に照らして上記及び他の変更を本発明の開示に行うことができる。以上の説明では本発明の開示のある一定の実施形態を説明して発明を実施するための形態を説明したが、上記が本文中でいかに詳細に説明されていても、本発明の教示は、様々な方法で実施することができる。システムの細部は、例の詳細ではかなり変わる場合があるが、依然として本明細書に開示する主題により包含される。上述したように、本発明の開示のある一定の特徴又は態様を説明する時に使用した特定の用語は、その用語が関連する本発明の開示のいずれかの特定の特性、特徴、又は態様に制限されるように用語が本明細書で定義し直されたことを意味すると取るべきではない。一般的に、上述の「発明を実施するための形態」の節で明示的にこのような条件を定義しない限り、特許請求の範囲に使用される用語は、本明細書に開示する特定の実施形態に本発明の開示を限定すると解釈すべきでない。従って、本発明の開示の実際の範囲は、開示する実施形態だけではなく、特許請求の範囲に従って本発明の開示を実行する又は実施する全ての同等の方法も包含する。
【０１１１】
本発明の開示のある一定の態様は、ある一定の請求項の形態で以下に呈示されているが、本発明者は、あらゆる数の請求項の形態で本発明の開示の様々な態様を考えている。例えば、本発明の開示の１つの態様のみが「３５  Ｕ．Ｓ．Ｃ．§１１２」第６項に従って手段及び機能の請求項として説明されるが、他の態様も、同様に手段及び機能の請求項として又はコンピュータ可読媒体に具現化されるなどで他の形態に具現化することができる。（「３５  Ｕ．Ｓ．Ｃ．§１１２」第６項に従って取り扱われることを意図したいずれの請求項も「するための手段」という語で始まることになる。）従って、本出願人は、本発明の開示の他の態様に対してこのような追加の請求項の形態を求めるために、本出願を出願後に付加的な請求項を追加する権利を保持する。
【符号の説明】
【０１１２】
１００  ホストサーバ
１０２  クライアントデバイス
１０６  ネットワーク
１２５  企業環境又は他の組織
１７５  協力者
【図１】
2014081940.tif 000003
【図２】
2014081940.tif 000004
【図３】
2014081940.tif 000005
【図４Ａ】
2014081940.tif 000006
【図４Ｂ】
2014081940.tif 000007
【図５】
2014081940.tif 000008
【図６】
2014081940.tif 000009
【図７】
2014081940.tif 000010
【図８】
2014081940.tif 000011
【図９】
2014081940.tif 000012
【外国語明細書】
2014081940000001.pdf