(57)【要約】      （修正有）【課題】モバイルデバイスのコンテキストに基づくアクセス制御を提供する。【解決手段】クラス情報２０６は、ファイル内容２０２について指定されたデータ保護クラスを識別する情報を含む。データ保護クラスは、ファイル内容又はキーチェーンアイテム２０２に関連付けられたアプリケーションによって指定される。データ保護クラスは、データ保護クラスに関連付けられたファイル内容２０２についてファイル鍵２０４を暗号化するのに用いられる、対応するクラス鍵２０８を有する。クラス鍵２０８は、データ保護クラスに関連付けられたポリシーに従って、アクセス、削除などがなされる。ファイル内容２０２は、ファイル内容２０２に関連付けられたデータ保護クラスポリシーが満たされる場合にのみ、アクセスされる。暗号化済ファイル鍵２０４は、ファイルメタデータ２１０に記憶される。【選択図】図２
2015228216.tif 000002
【特許請求の範囲】
【請求項１】
モバイルデバイスが、暗号化済ファイルへのアクセスを求める要求を受け取る工程と、
前記モバイルデバイスが、前記暗号化済ファイルに関連付けられたポリシーであって、前記暗号化済ファイルへのアクセスを許可するために必要なコンテキストを指定するポリシーを判定する工程と、
前記モバイルデバイスの現在のコンテキストを判定する工程と、
前記必要なコンテキストに対して前記現在のコンテキストを比較する工程と、
前記現在のコンテキストが前記必要なコンテキストに対応する場合に前記暗号化済ファイルへのアクセスを許可する工程と、
を有することを特徴とする方法。
【請求項２】
前記暗号化済ファイルは、複数のデータ保護ポリシーを含むデータ保護クラスに関連付けられていることを特徴とする請求項１に記載の方法。
【請求項３】
前記必要なコンテキストは、前記モバイルデバイスに対してパスワード保護が有効にされているという要件を含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記必要なコンテキストは、前記モバイルデバイスに対して設定されたパスワードの強度が閾値強度よりも高いという要件を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記必要なコンテキストは、暗号鍵がネットワーク接続を介してサーバからダウンロードされるという要件を含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記必要なコンテキストは、前記モバイルデバイスが指定された場所の近くにあるという要件を含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記暗号化済ファイルへのアクセスを許可する工程は、前記データ保護クラスに関連付けられた暗号鍵を提供する工程を含むことを特徴とする請求項２に記載の方法。
【請求項８】
１つ以上のプロセッサによって実行された場合に、
モバイルデバイスが、暗号化済ファイルへのアクセスを求める要求を受け取る工程と、
前記モバイルデバイスが、前記暗号化済ファイルに関連付けられたポリシーであって、前記暗号化済ファイルへのアクセスを許可するために必要なコンテキストを指定するポリシーを判定する工程と、
前記モバイルデバイスの現在のコンテキストを判定する工程と、
前記必要なコンテキストに対して前記現在のコンテキストを比較する工程と、
前記現在のコンテキストが前記必要なコンテキストに対応する場合に前記暗号化済ファイルへのアクセスを許可する工程と、
を実行させることを特徴とするプログラム。
【請求項９】
前記暗号化済ファイルは、複数のデータ保護ポリシーを含むデータ保護クラスに関連付けられていることを特徴とする請求項８に記載のプログラム。
【請求項１０】
前記必要なコンテキストは、前記モバイルデバイスに対してパスワード保護が有効にされているという要件を含むことを特徴とする請求項８に記載のプログラム。
【請求項１１】
前記必要なコンテキストは、前記モバイルデバイスに対して設定されたパスワードの強度が閾値強度よりも高いという要件を含むことを特徴とする請求項８に記載のプログラム。
【請求項１２】
前記必要なコンテキストは、暗号鍵がネットワーク接続を介してサーバからダウンロードされるという要件を含むことを特徴とする請求項８に記載のプログラム。
【請求項１３】
前記必要なコンテキストは、前記モバイルデバイスが指定された場所の近くにあるという要件を含むことを特徴とする請求項８に記載のプログラム。
【請求項１４】
前記暗号化済ファイルへのアクセスを許可する工程は、前記データ保護クラスに関連付けられた暗号鍵を提供する工程を含むことを特徴とする請求項９に記載のプログラム。
【請求項１５】
１つ以上のプロセッサと、
１つ以上の命令列を含むコンピュータ可読媒体とを備えるシステムであって、
前記１つ以上の命令列は、前記１つ以上のプロセッサによって実行された場合に、
モバイルデバイスが、暗号化済ファイルへのアクセスを求める要求を受け取る工程と、
前記モバイルデバイスが、前記暗号化済ファイルに関連付けられたポリシーであって、前記暗号化済ファイルへのアクセスを許可するために必要なコンテキストを指定するポリシーを判定する工程と、
前記モバイルデバイスの現在のコンテキストを判定する工程と、
前記必要なコンテキストに対して前記現在のコンテキストを比較する工程と、
前記現在のコンテキストが前記必要なコンテキストに対応する場合に前記暗号化済ファイルへのアクセスを許可する工程と、
を実行させることを特徴とするシステム。
【請求項１６】
前記暗号化済ファイルは、複数のデータ保護ポリシーを含むデータ保護クラスに関連付けられていることを特徴とする請求項１５に記載のシステム。
【請求項１７】
前記必要なコンテキストは、前記モバイルデバイスに対してパスワード保護が有効にされているという要件を含むことを特徴とする請求項１５に記載のシステム。
【請求項１８】
前記必要なコンテキストは、前記モバイルデバイスに対して設定されたパスワードの強度が閾値強度よりも高いという要件を含むことを特徴とする請求項１５に記載のシステム。
【請求項１９】
前記必要なコンテキストは、暗号鍵がネットワーク接続を介してサーバからダウンロードされるという要件を含むことを特徴とする請求項１５に記載のシステム。
【請求項２０】
前記必要なコンテキストは、前記モバイルデバイスが指定された場所の近くにあるという要件を含むことを特徴とする請求項１５に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
＜関連出願への相互参照＞
本出願は、「コンテキストベースのデータアクセス制御」という名称で２０１４年５月３０日に出願された米国仮出願第６２／００５，９４３号への優先権を主張し、この仮出願の内容は参照によりその全体が本明細書に組み込まれる。
【０００２】
＜技術分野＞
本開示は総括的にコンピューティングデバイスでのデータの暗号化に関する。
【背景技術】
【０００３】
データを記憶及び処理するためにモバイルデバイスが用いられる。しばしば、モバイルデバイスに記憶されたデータは、慎重に扱うべき個人情報（例えば、名前、住所、クレジットカード情報、パスワードなど）又は企業秘密情報（例えば、顧客情報、医療記録など）を含む。近年のモバイルデバイスはしばしば、モバイルデバイスに記憶されたデータを暗号化し、所定の条件下（例えば、デバイスがアンロックされた場合、有効なパスワードが入力された場合など）においてのみデータを利用可能にするように構成される。
【発明の概要】
【０００４】
一部の実装では、モバイルデバイスに記憶された暗号化済データ（例えば、アプリケーションデータ、キーチェーンデータ、記憶されたパスワードなど）は、モバイルデバイスのコンテキストに基づいてアクセスされうる（例えば、復号されたり、利用可能にされたりしうる）。コンテキストは、現在のデバイス状態（例えば、ロックされている、アンロックされている、最初のアンロックの後など）を含みうる。コンテキストは、現在のデバイス設定（たとえば、パスワードが有効／無効、パスワードの強度など）を含みうる。コンテキストは、モバイルデバイスによって受け取られているデータ（例えば、指紋スキャン、入力されたパスコード、位置情報、受け取られた暗号化鍵、時間情報）を含みうる。
【０００５】
特定の実装は、少なくとも以下の利点を与える。コンテキストベースのアクセス制御は、モバイルデバイスに記憶された慎重に扱うべきデータがいつアクセスされてもよいかを指定する際に多大な柔軟性を許容しうる。コンテキストベースのアクセス制御は、承認された時間で、承認された場所で及び承認された人によって、慎重に扱うべきデータがアクセスされることを保証できる。コンテキストベースのアクセス制御は、慎重に扱うべきデータへのアクセスを一層容易にすることによって、ユーザ体験を向上できる。
【０００６】
１つ以上の実装の詳細が添付の図面及び以下の記載において説明される。他の特徴、側面及び潜在的な利点は、記載及び図面から並びに特許請求の範囲から明らかだろう。
【図面の簡単な説明】
【０００７】
【図１】モバイルデバイスのストレージに書き込まれたデータを暗号化及び復号するように構成された例示のモバイルデバイスのブロック図である。
【０００８】
【図２】モバイルデバイスでコンテキストベースのデータアクセス制御を実行するための例示の暗号化鍵階層を説明するブロック図である。
【０００９】
【図３】コンテキストベースのデータアクセス制御及び図２の暗号化鍵階層を用いてファイルを復号するための例示のプロセスを説明する図である。
【００１０】
【図４】データ保護クラスポリシーに基づいてクラス鍵を読み出すための例示のプロセスを説明する図である。
【００１１】
【図５】コンテキストベースのアクセス制御のための例示のプロセスのフロー図である。
【００１２】
【図６】図１〜図５の機能及びプロセスを実装できる例示のコンピューティングデバイスのブロック図である。
【００１３】
さまざまな図面における同様の参照シンボルは同様の要素を示す。
【発明を実施するための形態】
【００１４】
図１は、モバイルデバイス１００のストレージに書き込まれたデータを暗号化及び復号するように構成された例示のモバイルデバイス１００のブロック図である。一部の実装では、モバイルデバイス１００はデータ保護モジュール１０２を伴って構成されうる。例えば、データ保護モジュール１０２は、モバイルデバイス１００のチップセットに組み立てられた専用のセキュリティ・コプロセッサによって実行されるソフトウェアモジュールでありうる。例えば、セキュリティ・コプロセッサは、アプリケーションプロセッサから分離しており、モバイルデバイス１００の全ての暗号化／復号機能及びセキュリティ機能を扱う。セキュリティ・コプロセッサは、自身のセキュアブート及びアプリケーションプロセッサから分離した個別化されたソフトウェアアップデートを利用する。それはまた、データ保護鍵管理のための全ての暗号動作を提供し、たとえカーネルが不正アクセス（compromise）されたとしてもデータ保護の完全性を維持する。
【００１５】
一部の実装では、セキュリティ・コプロセッサは暗号化されたメモリを用い、ハードウェア乱数生成器を含む。セキュリティ・コプロセッサとアプリケーションプロセッサとの間の通信は、割り込み駆動型メールボックス及び共有メモリデータバッファに隔離される。一部の実装では、セキュリティ・コプロセッサには、システムの他の部分へアクセスできない自身の一意識別子（ＵＩＤ）が製造中に供給される。デバイスが始動する際に、短期鍵が作成され、ＵＩＤに組み合わされ、モバイルデバイス１００のメモリ空間のうちセキュリティ・コプロセッサの部分を暗号化するのに用いられる。加えて、セキュリティ・コプロセッサによってモバイルデバイス１００のファイルシステムに保存されたデータは、ＵＩＤに組み合わされた鍵（例えばパスコード、パスワード１０４）で暗号化される。
【００１６】
一部の実装では、セキュリティ・コプロセッサは、タッチ識別センサ１０６からの指紋データの処理を担当する。例えば、タッチＩＤセンサ１０６は指紋を受け取る（例えばスキャンする）ことができ、セキュリティ・コプロセッサは登録された指紋と一致するかどうか判定できる。指紋が登録された指紋の１つと一致するとセキュリティ・コプロセッサが判定した場合に、セキュリティ・コプロセッサはモバイルデバイス１００、モバイルデバイス１００に記憶されたアプリケーションデータ及び／又はモバイルデバイス１００に記憶されたキーチェーンデータ（例えば、記憶されたパスワード、ユーザ情報など）へのアクセスを可能にする。タッチＩＤセンサ１０６とセキュリティ・コプロセッサとの間の通信は、チップセット及びアプリケーションプロセッサがタッチＩＤセンサのデータにアクセスできないように構成される。
【００１７】
一部の実装では、セキュリティ・コプロセッサは、アクセス制御及び／又は暗号化動作に必要となるデータを取得するためにモバイルデバイス１００の他の構成要素に直接アクセスできる。例えば、セキュリティ・コプロセッサは、モバイルデバイス１００で動作する他のアプリケーション及び／又はプロセスによって位置データ及び／又は時間データがスプーフされ得ないように、位置プロセッサ（例えば、ＧＰＳ）及びシステムクロックに直接アクセス可能できる。
【００１８】
一部の実装では、データ保護モジュール１０２は、暗号化鍵の階層を構築し管理することによってモバイルデバイス１００のデータ（例えば、アプリケーションデータ、キーチェーンデータなど）を保護できる。データ保護モジュール１０２は、各ファイルをデータ保護クラスに割り当てることによって、ファイル単位（又はキーチェーンアイテム単位）でデータを保護できる。例えば、データ保護モジュール１０２は、各ファイルを暗号化するのに用いられるデータ保護クラス鍵をロック及びアンロックする（暗号化及び復号する）ことによってアクセシビリティを制御できる。
【００１９】
一部の実装では、モバイルデバイス１００は、アプリケーション１０８を含みうる。例えば、アプリケーション１０８は、モバイルデバイス１００のデータストレージ（例えば、メモリ、ハードディスク、フラッシュメモリなど）に記憶される必要があるデータを生成できる。アプリケーション１０８は、データ（例えば、ファイルデータ１１２）を含む書き込み要求１１０をデータ保護モジュール１０２へ送信できる。書き込み要求１１０を送信する際に、アプリケーション１０８はファイルデータ１１２についてデータ保護クラスを指定できる。例えば、データ保護クラスは、ファイルがいつアクセス又は復号されうるかを制御するポリシーに関連付けられうる。
【００２０】
一部の実装では、書き込み要求１１０を受け取ると、データ保護モジュール１０２は、指定されたデータ保護クラスに対応するクラス暗号化鍵でファイルデータ１１２を暗号化でき、暗号化済ファイルデータ１１２を暗号化済ファイルデータストア１１４に書き込むことができる。例えば、ファイルデータ１１２は、上述のセキュリティ・コプロセッサによって生成された暗号化鍵を用いて暗号化されうる。一部の実装では、鍵は乱数生成器（例えば、上述のハードウェア乱数生成器）によって生成されうる。一部の実装では、鍵はパスワード１０４及び／又はセキュリティ・コプロセッサＵＩＤに基づいて生成されうる。
【００２１】
一部の実装では、アプリケーション１０８は、モバイルデバイス１００の暗号化済キーチェーンデータを記憶又はアクセスできる。例えば、暗号化済キーチェーンデータ（例えば、パスワード、クレジットカード情報、ユーザ識別情報など）はデータベース１２０に記憶されうる。データベース１２０内の各エントリ又はアイテムは、アイテム単位の鍵を用いて個別に暗号化されうる。各アイテムは、アイテムがいつアクセス又は復号されうるかを制御するポリシーを指定するデータ保護クラスに関連付けられうる。例えば、アプリケーション１０８は、キーチェーンアイテム１１８を含む書き込み要求１１６をデータ保護モジュール１０２へ送信できる。例えば、書き込み要求１１６は、キーチェーンアイテム１１８についてデータ保護クラスを指定できる。キーチェーン書き込み要求１１６の受け取りに応じて、データ保護モジュール１０２は、データ保護クラスに関連付けられた暗号化鍵を用いてキーチェーンアイテム１１８を暗号化でき、暗号化済キーチェーンアイテム１１８を暗号化キーチェーンデータベース１２０に記憶できる。
【００２２】
一部の実装では、書き込み要求において無効なデータ保護クラスが指定された場合に、データ保護モジュール１０２はキーチェーンアイテム又はデータファイルを書き込まないだろう。例えば、モバイルデバイス１００でパスワードが有効にされ設定されることを要求するポリシーに、指定されたデータ保護クラスが関連付けられており、モバイルデバイス１００がパスワード保護されていないならば、データ保護モジュール１０２は、キーチェーンアイテム又はファイルデータを暗号化キーチェーンデータベース１２０又は暗号化済ファイルデータストア１１４に暗号化及び書き込みしないだろう。その代わりに、データ保護モジュール１０２は、書き込み動作について無効なデータ保護クラスが指定されたことを示すエラーをアプリケーション１０８に返すだろう。
【００２３】
以下の段落ではファイル、ファイル内容、ファイルメタデータなどの観点でコンテキストベースのアクセス制御メカニズムを記載するが、キーチェーンデータ、キーチェーンアイテム、キーチェーンメタデータ、その他同様のものを保護するために同様のメカニズムが用いられうる。例えば、キーチェーンデータベース内の各キーチェーンアイテム（エントリ）は、以下で個別のファイルについて記載されるのと同じコンテキストベースのアクセス制御メカニズムを用いて処理及び保護されうる。キーチェーンアイテムとファイルとは異なる（例えば、データベース内のエントリ対個別のファイル）が、以下に記載される暗号化鍵階層、暗号化メカニズム及び／又はコンテキストベースのアクセス制御メカニズムは、キーチェーンアイテムと個別のファイルとの両方についてアクセス制御を提供するのに用いられうる。
【００２４】
図２は、モバイルデバイスでコンテキストベースのデータアクセス制御を実行するための例示の暗号化鍵階層を説明するブロック図２００である。例えば、ファイル（又はキーチェーンアイテム）２０２はファイル単位（又はアイテム単位）の鍵２０４を用いて暗号化されうる。ファイル鍵２０４はデータ保護モジュール１０２によって（例えばセキュリティ・コプロセッサを用いて）生成されうる。
【００２５】
一部の実装では、ファイルメタデータ２１０はクラス情報２０６を含みうる。例えば、クラス情報２０６は、ファイル内容２０２について指定されたデータ保護クラスを識別する情報を含みうる。データ保護クラスは、上述のように、ファイル内容又はキーチェーンアイテム２０２に関連付けられたアプリケーションによって指定されうる。
【００２６】
一部の実装では、ファイル鍵２０４はクラス鍵２０８を用いて暗号化されうる。例えば、データ保護クラスは、データ保護クラスに関連付けられたファイル内容２０２についてファイル鍵２０４を暗号化するのに用いられる、対応するクラス鍵２０８を有しうる。クラス鍵２０８は、以下にさらに記載されるように、データ保護クラスに関連付けられたポリシーに従って、アクセス、削除などがなされうる。よって、ファイル内容２０２は、ファイル内容２０２に関連付けられたデータ保護クラスポリシーが満たされる場合にのみ、アクセスされうる。暗号化済ファイル鍵２０４はファイルメタデータ２１０に記憶されうる。
【００２７】
一部の実装では、ファイルメタデータ２１０はファイルシステム鍵２１２を用いて暗号化されうる。例えば、ファイルシステム鍵２１２は、デバイスハードウェア鍵（例えば、セキュリティ・コプロセッサＵＩＤ、デバイス識別子など）に基づいて生成されうる。ファイルシステム鍵２１２は、ファイルメタデータ２１０及びファイル内容２０２が、ハードウェア鍵２１４に対応するモバイルデバイスによってのみアクセスされうることを保証する。
【００２８】
一部の実装では、ファイルシステム鍵２１２はモバイルデバイスのすべてのデータをアクセス不能にするために削除されうる。例えば、データ保護モジュール１０２は、暗号化済ファイルメタデータ２１０を復号するのを防ぐために、モバイルデバイス１００のメモリ又はディスクからファイルシステム鍵２１２を削除でき、それによってファイル鍵２０４及びファイルコンテンツ２０２へのアクセスを防ぐ。例えば、ユーザはモバイルデバイス１００からすべてのデータを一掃する（wipe）ための入力を提供できる。ユーザ入力に応答して、データ保護モジュール１０２はすべてのデータをアクセス不要にするために、ファイルシステム鍵２１２を削除できる（例えば、システムはシステムデータ鍵２１２なしにファイルを復号できない）。
【００２９】
一部の実装では、クラス鍵２０８はハードウェア鍵２１４を用いて暗号化されうる。例えば、モバイルデバイス１００でパスコード保護が無効（例えば、モバイルデバイス１００にアクセスするためにパスコード／パスワードが要求されない）ならば、クラス鍵２０８はハードウェア鍵２１４のみを用いて暗号化されうる。パスコード保護が有効ならば、クラス鍵２０８はハードウェア鍵２１４とパスコード鍵２１６との組み合わせ（例えば連結、ハッシュなど）を用いて暗号化されうる。例えば、ユーザが使用のためにモバイルデバイス１００をアンロックする際に、ユーザ入力（例えばモバイルデバイス１００への入力としてパスコードをタイプすること）によってパスコード鍵が受け取られうる。モバイルデバイス１００が（例えば無活動の期間の後に自動的に、ユーザの入力に応答して手動で）ロックされた際に、パスコード鍵は削除されうる。
【００３０】
一部の実装では、モバイルデバイス１００をアンロックし、モバイルデバイス１００に記憶されたデータを復号するのにバイオメトリックスのユーザデータが用いられうる。例えば、モバイルデバイス１００は、モバイルデバイス１００のユーザから指紋データを受け取るように構成されうる。ユーザは、モバイルデバイス１００の指紋スキャナ上に指を置ける。指紋スキャナは指の指紋の画像をキャプチャできる。指紋はスキャナからデータ保護モジュール１０２へ送信されうる。データ保護モジュール１０２は、当該指紋がモバイルデバイスの（例えばパスコード、パスワードによる）認証済ユーザの登録された指紋に対応することを判定することによって指紋を検証できる。
【００３１】
指紋アクセス（例えばタッチＩＤ）が有効ならば、データ保護モジュールはパスコード鍵２１６をある期間の間、記憶するだろう。例えば、パスコード鍵２１６はデバイスがロックされた際に削除されないだろう。その代わりに、パスコード鍵又はそれと同等のものは、モバイルデバイス１００によって有効な指紋がキャプチャされるまで、使用不能にされるだろう。
【００３２】
図３は、コンテキストベースのデータアクセス制御及び図２の暗号化鍵階層を用いてファイルを復号するための例示のプロセス３００を説明する。ステップ３０２で、データ保護モジュール１０２は、ファイル識別子を含むファイル読み取り要求を受け取ることができる。例えば、ファイル識別子は、以前にデータ保護モジュール１０２により暗号化されたファイルに対応しうる。ステップ３０４で、データ保護モジュール１０２は、暗号化済ファイル内容３０６及び暗号化済ファイルメタデータ３０８を取得するためにファイル識別子を使用できる。例えば、要求された暗号化済ファイル内容３０６は、ファイル鍵と、暗号化済ファイルに関連付けられたデータ保護クラスを識別する情報とを含む暗号化済ファイルメタデータ３０８に関連付けられうる。
【００３３】
ステップ３１０で、データ保護モジュール１０２は、暗号化済ファイルメタデータ３０８を復号できる。例えば、暗号化済ファイルメタデータ３０８は、復号済ファイルメタデータ３１４を生成するために、ファイルシステム鍵３１２を用いて復号されうる。ステップ３１６で、データ保護モジュール１０２は、復号済ファイルメタデータ３１４から、データ保護クラス情報３１８及び暗号化済ファイル鍵３２０を抽出できる。
【００３４】
ステップ３２２で、データ保護モジュール１０２は、暗号化済クラス鍵を読み出せる。例えば、データ保護モジュール１０２は、要求されたファイルに関連付けられたデータ保護クラスを識別するために、クラス情報３１８を使用できる。データ保護クラスが識別されると、データ保護モジュールは、クラスに関連付けられたデータ保護ポリシーを取得できる。モバイルデバイス１００の現在の状態又はコンテキストが（以下にさらに記載される）データ保護ポリシーによって指定された規則を満たさないならば、データ保護モジュールは、ファイル要求に応答してエラー３２４を返すだろう。暗号化済クラス鍵が削除されたか、別の方法で利用不可能であるならば、データ保護モジュール１０２は、ファイル要求に応答してエラー３２４を返すだろう。モバイルデバイス１００の現在の状態又はコンテキストが（以下にさらに記載するような）データ保護ポリシーによって指定された規則を満たすならば、データ保護モジュールは、データ保護クラスに関連付けられた暗号化済クラス鍵３２８を読み出す又は取得することができる。
【００３５】
ステップ３２８で、データ保護モジュール１０２は、暗号化済クラス鍵３２６を復号できる。例えば、暗号化済クラス鍵は、ハードウェア鍵３３０（例えば、図２のハードウェア鍵２１４）及び／又はユーザパスコード３３２（例えば、図２のパスコード鍵２１６）を用いて暗号化されうる。例えば、モバイルデバイス１００は、ユーザパスコードなしに構成されることができ、暗号化済クラス鍵は、ハードウェア鍵３３０のみを用いて暗号化／復号されうる。これにかえて、モバイルデバイス１００は、ユーザパスコード３３２とともに構成されることができ、暗号化済クラス鍵は、ハードウェア鍵３３０とユーザパスコード３２２との組み合わせ（例えば、連結、ハッシュなど）を用いて暗号化／復号されうる。例えば、ユーザはモバイルデバイス１００でパスワード保護を有効及び／又は無効にできる。
【００３６】
一部の実装では、ユーザは、モバイルデバイス１００へのバイオメトリック・アクセスを有効にできる。例えば、ユーザは、モバイルデバイス１００で指紋認証を有効にできる。指紋認証が有効にされると、ユーザはモバイルデバイス１００の指紋識別センサにタッチでき、タッチ識別センサは指紋を取得するためユーザの指をスキャンでき、その後、指紋はユーザがモバイルデバイス１００の認可されたユーザであるか判定するために用いられうる。指紋認証が有効にされたならば、モバイルデバイス１００は、ユーザのパスコード又はそれから導出される鍵を暗号化し、記憶するだろう。例えば、指紋認証が無効にされ、パスコード保護が有効にされたならば、デバイスがロックされるたびにユーザのパスコードがモバイルデバイス１００から削除されるので、ユーザはモバイルデバイス１００をアンロックするためにパスコードを入力しなければならない。指紋認証が有効にされたならば、データ保護モジュール１０２は、ユーザのパスコード又はそれから導出される鍵を記憶し、パスコード又は鍵の使用を認可するためにユーザの指紋を使用するだろう。
【００３７】
ステップ３４０で、暗号化済ファイル鍵３２０は、復号済ファイル鍵３４２を生成するために、復号済クラス鍵３３８を用いて復号されうる。例えば、上述のように、暗号化済ファイル鍵３２０は、ステップ３１６にてファイルメタデータ３１４から抽出されうる。復号済ファイル鍵３４２は、ステップ３４４にて暗号化済ファイル内容３０６を復号するのに使用されることができ、それによって復号済ファイル内容３４６へのアクセスを許可する。その後、復号済ファイル内容３４６は、ステップ３０２にてファイルを要求したプロセスに返されうる。
【００３８】
一部の実装では、復号済データは、プロセス３００で使用された後に削除されうる。例えば、復号済メタデータ３１４、復号済クラス鍵３３８、復号済ファイル鍵及び復号済パスコード３３２は、それらが暗号化済ファイル内容３０６を復号するのに使用されると、削除されうる。
【００３９】
図４は、データ保護クラスポリシーに基づいてクラス鍵を読み出すための例示のプロセス４００を説明する。例えば、プロセス４００は、図３のステップ３２２にて実行されうる。ステップ４０４で、クラス情報４０２（例えば、図３のクラス情報３１８）は、クラス情報４０２によって識別されるデータ保護クラスについてクラスポリシー４０６を取得するのに使用されうる。例えば、各データ保護クラスについてのポリシーは、モバイルデバイス１００上のデータ保護モジュール１０２によって管理されるデータベースに記憶されうる。データ保護クラスポリシーは、データ保護クラスによって保護されたファイル又はキーチェーンアイテム（エントリ）を復号するためにデータ保護クラス鍵がいつ利用可能にされるべきかを決定する規則を指定できる。
【００４０】
一部の実装では、クラスポリシーは、データ保護クラスによって保護されたファイル又はキーチェーンアイテムがモバイルデバイスで常に復号されるべきであることを指定できる。例えば、このポリシーの下で、データ保護クラス鍵はファイル又はキーチェーンアイテムを復号するために常に利用可能にされうる。さらに、クラス鍵は、ハードウェア鍵３３０のみを用いて暗号化されうる。モバイルデバイス１００上で動作するプロセッサにファイル又はキーチェーンアイテムが常に利用可能であるべきなので、クラス鍵はユーザパスコード３３２を使用して暗号化されることはないだろう。
【００４１】
一部の実装では、クラスポリシーは、データ保護クラスによって保護されたファイル又はキーチェーンアイテムが、デバイスがアンロックされた場合にのみ復号されるべきであることを指定でき、これらのポリシーは、暗号法において強制されうる。例えば、このポリシーの下で、クラス鍵は、ユーザがパスコードを入力した場合にのみ利用可能にされるだろう。加えて、クラス鍵は、ハードウェア鍵３３０及びユーザパスコード３３２の両方を用いて暗号化されるだろう。パスコードが入力されたか、モバイルデバイスをアンロックするために指紋が提供された場合にのみユーザパスコード３３２がモバイルデバイス１００で利用可能である（例えば、モバイルデバイス１００上に常駐しているか復号される）ので、このポリシーの下で保護されたファイル又はキーチェーンアイテムは、ユーザがパスコードを入力するか指紋を提供することによってデバイスをアンロックした場合にのみ復号されるだろう。
【００４２】
一部の実装では、クラスポリシーは、データ保護クラスによって保護されたファイル又はキーチェーンアイテムが、デバイスが再起動後に最初にアンロックされた後にのみ復号されるべきであることを指定できる。例えば、このポリシーの下で、データ保護モジュール１０２は、ユーザがモバイルデバイス１００を最初にアンロックした際にユーザのパスコードから導出されるクラス鍵を格納するだろう。クラス鍵は、ハードウェア鍵３３０及びユーザのパスコード３３２の両方を用いて暗号化／復号されるだろう。データ保護モジュール１０２は、再起動後又は再開後にユーザがモバイルデバイス１００を最初にアンロックした後にクラス鍵を利用可能にするだろう。
【００４３】
一部の実装では、クラスポリシーは、データ保護クラスによって保護されたファイル又はキーチェーンアイテムが、パスコードがモバイルデバイスで有効にされた場合にのみ復号されるべきであることを指定できる。例えば、ユーザは、モバイルデバイス１００でパスコードデータ保護を有効又は無効にすることを選択できる。一部のアプリケーション及びプロセスは、慎重に扱うべきデータ（例えば、慎重に扱うべきユーザデータ、医療記録など）を保護するためにデータ保護に依存しうる。アプリケーションは、パスコードがモバイルデバイスで有効にされているかを判定するためにモバイルデバイス１００に問い合わせることができるが、アプリケーションがモバイルデバイス１００で動作中（例えば実行中）でない場合にパスコード保護が有効であるか無効であるかを監視できないだろう。このポリシーの下で、データ保護モジュールは、パスコードがモバイルデバイスで有効にされている場合にのみ、クラス鍵を利用可能にするだろう。パスコード保護がモバイルデバイスで無効にされているならば、データ保護モジュールはクラス鍵へのアクセスを防ぎ、それによって、パスコード保護が無効にされている場合の暗号化済ファイル又は暗号化済キーチェーンアイテムの復号を防ぐだろう。
【００４４】
一部の実装では、クラスポリシーは、データ保護クラスによって保護されたファイル又はキーチェーンアイテムが、パスコードがモバイルデバイスで有効にされており、パスコードが指定の強度を上回る場合にのみ復号されるべきであることを指定できる。例えば、ユーザは、モバイルデバイス１００でパスコードデータ保護を有効又は無効にすることを選択できる。一部のアプリケーション及びプロセスは、慎重に扱うべきデータ（例えば、慎重に扱うべきユーザデータ、医療記録など）を保護するためにデータ保護に依存しうる。アプリケーションは、パスコードがモバイルデバイスで有効にされており、パスコードの強度が（例えばパスコードの複雑さ、使用される文字、長さなどに基づく）指定の強度を上回るかを判定するためにモバイルデバイス１００に問い合わせることができるが、アプリケーションがモバイルデバイス１００で動作中（例えば実行中）でない場合にパスコード保護が有効であるか無効であるかを監視できないだろう。このポリシーの下で、データ保護モジュールは、パスコードがモバイルデバイスで有効にされており、パスコードの強度がポリシーによって指定された強度よりも高い場合にのみ、クラス鍵を利用可能にするだろう。パスコード保護がモバイルデバイスで無効にされているか、パスコードが十分に強くないならば、データ保護モジュール１０２はクラス鍵へのアクセスを防ぎ、それによって、パスコード保護が無効にされているか、パスコードが弱すぎる場合の暗号化済ファイルの復号を防ぐだろう。
【００４５】
一部の実装では、クラスポリシーは、データ保護クラスによって保護されたファイル又はキーチェーンアイテムが、モバイルデバイスが指定された位置にある場合にのみ復号されるべきであることを指定できる。例えば、位置は、特定の位置として、特定の位置の指定の距離内として、又は指定されたジオフェンスエリア内として指定されうる。モバイルデバイスが指定の位置にあるか、その近くある場合に、データ保護モジュール１０２はこの位置ポリシーに関連付けられたクラスによって保護されたファイル又はキーチェーンアイテムを復号するためのデータ保護クラス鍵を利用可能にできる。モバイルデバイス１００が指定の位置にないか、その近くにない場合に、データ保護モジュール１０２は、この位置ポリシーに関連付けられたクラスによって保護されたファイル又はキーチェーンアイテムを復号するためのデータ保護クラス鍵を利用不可能にできる。
【００４６】
一部の実装では、クラスポリシーは、データ保護クラスによって保護されたファイル又はキーチェーンアイテムが、指定したユーザの指紋がモバイルデバイスによってスキャンされた場合にのみ復号されるべきであることを指定できる。例えば、ユーザは指紋認証のために１つ以上の指（例えば、親指、人差し指、中指、薬指、小指）を設定できる。ユーザは、ある指がアンロック、復号又は指定のキーチェーンアイテム又はファイルへのアクセスを行うことを指定できる。例えば、ユーザは、親指の指紋がモバイルデバイス１００のファイルをアンロックすることを指定できる。ユーザは、人差し指の指紋がキーチェーンデータベース内のパスワードアイテムへのアクセスを許可することを指定できる。ユーザは、小指の指紋がキーチェーンデータベース内のクレジットカードアイテムへのアクセスを許可することを指定できる。それゆえ、キーチェーンエントリ又はファイルが暗号化され、人差し指のポリシーを有するデータ保護クラスに関連付けられる場合に、データ保護モジュール１０２は、ユーザがモバイルデバイス１００に人差し指の指紋を提供するときのみ、クラス鍵へのアクセスを許可するだろう。
【００４７】
一部の実装では、クラスポリシーは、データ保護クラスによって保護されたファイル又はキーチェーンアイテムが、クラス鍵がサーバからダウンロードされた場合にのみ復号されるべきであることを指定できる。例えば、クラスポリシーは、クラス鍵がダウンロードされるサーバを（例えば、ＵＲＬ、ＩＰアドレスなどによって）識別できる。このデータ保護ポリシーによって保護されたファイルの復号が要求された場合に、データ保護モジュール１０２はサーバにコンタクトし、クラス鍵をダウンロードしようと試みることができる。鍵がダウンロードされたならば、ファイルが復号されうる。鍵がダウンロードされないならば、ファイルは復号されないだろう。このデータ保護クラスポリシーは、ユーザのデバイスに記憶された情報へのアクセスを他者（例えば、雇用者、企業など）が制御することを許可する。例えば、雇用者はユーザのモバイルデバイスがサーバに記憶されたクラス鍵へアクセスすることを防ぐことができ、それにより、雇用者によって所有されたファイル（例えば、所有権を有するビジネスファイル）をモバイルデバイスが復号することを防ぐ。
【００４８】
一部の実装では、クラスポリシーは、データ保護クラスによって保護されたファイル又はキーチェーンアイテムが、指定された期間中にのみ復号されるべきであることを指定できる。例えば、ポリシーは、ファイル又はキーチェーンアイテムが週の指定された日（例えば、月曜から金曜）にのみアクセスされることができることを指定できる。ポリシーは、ファイル又はキーチェーンアイテムが、指定された時間の間（例えば、午前９時から午後６時）でのみアクセスができることを指定できる。ユーザ又はアプリケーションが指定された期間中に暗号化済ファイル又はキーチェーンアイテムへのアクセスを試みる場合に、データ保護モジュール１０２はクラス鍵へのアクセスを許可し、ファイル又はキーチェーンアイテムが復号されうる。ユーザ又はアプリケーションが指定された期間外に暗号化済ファイル又はキーチェーンアイテムへのアクセスを試みる場合に、データ保護モジュール１０２は、クラス鍵へのアクセスを防ぎ、ファイル又はキーチェーンアイテムは復号されないだろう。
【００４９】
判定４０８で、データ保護モジュール１０２は、ファイル又はキーチェーンアイテムを復号するためにクラス鍵（例えば、図３の暗号化済クラス鍵３２６）が利用可能にされるべきかを判定できる。例えば、データ保護モジュール１０２は、データ保護クラスについて指定されたポリシーのそれぞれが満たされていることを判定できる。データ保護クラスに関連付けられたポリシー（例えば、規則）の１つが満たされないならば、データ保護モジュール１０２は、暗号化済クラス鍵へのアクセスを防ぐためにステップ４１０でエラー４１２を返すことができる。データ保護クラスに関連付けられたすべてのポリシーが満たされているならば、データ保護モジュール１０２は、ステップ４１４で暗号化済クラス鍵４１６を返すことができる。その後、暗号化済クラス鍵４１６（例えば、暗号化済クラス鍵３２６）は、上述のように、ステップ３２８でプロセス３００によって復号されうる。
【００５０】
一部の実装では、クラス鍵に関連付けられたポリシーが満たされていないことをデータ保護モジュール１０２が判定した場合に、暗号化済クラス鍵はモバイルデバイスから削除されうる。例えば、データ保護クラスポリシーは、ファイル又はキーチェーンアイテムが勤務地でのみアクセス可能であることを指定できる。モバイルデバイス１００が勤務地から離れたことを検出すると、データ保護モジュール１０２は勤務地ポリシーを含むデータ保護クラスに関連付けられたクラス鍵を削除でき、それにより、勤務地ポリシーによって保護されたファイル又はキーチェーンアイテムへのアクセスを防ぐ。
【００５１】
図５は、コンテキストベースのアクセス制御のための例示のプロセス５００のフロー図である。例えば、データ保護クラスポリシーは、モバイルデバイスのコンテキスト（例えば、位置、時刻、ネットワークアクセス、構成など）に基づいて、モバイルデバイスに記憶された暗号化済ファイル及び／又は暗号化済キーチェーンアイテムへのアクセスを可能又は不可能にすることができる。
【００５２】
ステップ５０２で、データ保護モジュールは暗号化済ファイルへアクセスする要求を受け取ることができる。例えば、アプリケーションはモバイルデバイス１００で暗号化されたファイルへのアクセスを要求できる。
【００５３】
ステップ５０４で、データ保護モジュールは、要求された暗号化済ファイルに関連付けられたデータ保護クラスを判定できる。例えば、データ保護モジュールは、暗号化済ファイルに関連付けられたメタデータからデータ保護クラス情報を取得できる。
【００５４】
ステップ５０６で、データ保護モジュールは、データ保護クラスに関連付けられたポリシーを判定できる。例えば、ポリシーは、要求されたファイルがアクセス（例えば、復号）可能又は不可能な間の１つ以上のモバイルデバイスコンテキスト（例えば、デバイスの状態、デバイスの構成、デバイスの位置、現在の時刻、ネットワークアクセスなど）を指定できる。
【００５５】
ステップ５０８で、データ保護モジュールは、データ保護クラスポリシーが満たされているかを判定できる。例えば、データ保護モジュールは、現在のデバイス状態、現在のデバイス設定、デバイスについての位置データ（例えば、ＧＰＳデータ、アクセスポイントデータ、セルラーデータなど）、現在の時刻、及びネットワーク接続情報（例えば、企業のサーバに接続されている）のようなコンテキスト情報を取得できる。データ保護モジュールは、クラスポリシーが満たされている（例えば、暗号化済ファイルへのアクセスを許可するための要件が満たされている）かを判定するために、クラスポリシー要件に対してコンテキスト情報を比較できる。信頼できるソースに由来するか否かに依存してコンテキスト情報に異なる重みが与えられうる。
【００５６】
ステップ５１０で、データ保護モジュールは、判定されたデータ保護クラスに対応するクラス鍵へのアクセスを許可する。例えば、クラスポリシーが満たされているならば、要求されたファイルを復号するためにクラス鍵が利用可能にされるだろう。
【００５７】
ステップ５１２で、データ保護モジュールは、要求されたファイルを、クラス鍵を用いて復号できる。例えば、データ保護モジュールは、要求されたファイルを復号でき、要求側のアプリケーションに復号済ファイルを返すことができる。
【００５８】
＜例示のシステムアーキテクチャ＞
図６は、図１〜図５の機能やプロセスを実装できる例示のコンピューティングデバイス６００のブロック図である。コンピューティングデバイス６００は、メモリインターフェース６０２、１つ以上のデータプロセッサ、イメージプロセッサ、セキュリティ・コプロセッサ、アプリケーションプロセッサ及び／又は中央処理ユニット６０４並びに周辺機器インターフェース６０６を含みうる。メモリインターフェース６０２、１つ以上のプロセッサ６０４及び／又は周辺機器インターフェース６０６は分離した構成要素であってもよいし、１つ以上の集積回路に統合されてもよい。コンピューティングデバイス６００内の様々な構成要素は１つ以上の通信バス又は信号線によって結合されうる。
【００５９】
センサ、デバイス及びサブシステムは、多数の機能性を容易にするために周辺機器インターフェース６０６に結合されうる。例えば、姿勢、光及び近接機能を容易にするために、モーションセンサ６１０、光センサ６１２及び近接センサ６１４が周辺機器のインターフェース６０６に結合されうる。関連した機能性を容易にするために、全地球的航法衛星システム（ＧＮＳＳ）（例えば、ＧＰＳ受信機）、温度センサ、バイオメトリックセンサ、磁力計又は他のセンシングデバイスのような他のセンサ６１６も、周辺機器インターフェース６０６に接続されうる。
【００６０】
写真の記録やビデオクリップのようなカメラ機能を容易にするために、カメラサブシステム６２０及び光学センサ６２２、例えば電荷結合素子（ＣＣＤ）又は相補型金属酸化膜半導体（ＣＭＯＳ）光学センサが利用されうる。カメラサブシステム６２０及び光学センサ６２２は、例えば顔認証分析を実行することによってユーザの認証中に使用されるユーザの画像を集めるのに使用されうる。
【００６１】
ラジオ周波数受信機及び送信機及び／又は光学（例えば赤外線）受信機及び送信機を含みうる１つ以上のワイヤレス通信サブシステム６２４を通じて通信機能が容易にされうる。通信サブシステム６２４の特定の設計及び実装は、コンピューティングデバイス６００を動作させることを意図された通信ネットワーク（群）に依存しうる。例えば、コンピューティングデバイス６００は、ＧＳＭ（登録商標）ネットワーク、ＧＰＲＳネットワーク、ＥＤＧＥネットワーク、Ｗｉ−Ｆｉ（登録商標）又はＷｉＭａｘ（登録商標）ネットワーク及びＢｌｕｅｔｏｏｔｈ（登録商標）ネットワークを通じて動作するように設計された通信サブシステム６２４を含みうる。特に、ワイヤレス通信サブシステム６２４は、デバイス１００が他のワイヤレスデバイスのための基地局として構成されうるようなホスティングプロトコルを含みうる。
【００６２】
スピーカ認識や音声再生、デジタルレコーディング及び電話方式機能のような音声対応機能を容易にするために、オーディオサブシステム６２６がスピーカ６２８及びマイクロホン６３０に結合されうる。オーディオサブシステム６２６は、例えば音声コマンド、声紋及び音声認証の処理を容易にするように構成されうる。
【００６３】
入出力サブシステム６４０は、接触面コントローラ６４２及び／又はその他の入力コントローラ（群）６４４を含みうる。接触面コントローラ６４２は接触面６４６に結合されうる。接触面６４６及び接触面コントローラ６４２は、例えば、容量技術、抵抗技術、赤外線技術及び表面弾性波技術だけでなく、接触面６４６との１つ以上の接触点を判定するためのその他の近接センサアレイ又は他の素子を含むがこれらに限定されない複数のタッチ感知技術の何れかを用いて、接触及び移動の検出又はその中断を検出できる。
【００６４】
その他の入力コントローラ（群）６４４は、１つ以上のボタン、ロッカスイッチ、サムホイール、赤外線ポート、ＵＳＢ（登録商標）ポート及び／又はスタイラスのようなポインタデバイスのようなその他の入出力デバイス６４に結合されうる。１つ以上のボタン（不図示）は、スピーカ６２８及び／又はマイクロホン６３０のボリューム制御のためのアップ／ダウンボタンを含みうる。
【００６５】
ある実装では、第１継続期間を通じてボタンを押すことは、接触面６４６のロックを解除できる。第１継続期間よりも長い第２継続期間を通じてボタンを押すことは、コンピューティングデバイス６００への電源をオン又はオフにすることができる。第３継続期間を通じてボタンを押すことは、デバイスに会話コマンドを実行させるマイクロホン６３０へのコマンドをユーザが話すことを可能にする音声制御モジュール、すなわち音声コマンドモジュールを起動できる。ユーザはボタンのうちの１つ以上の機能性をカスタマイズができる。例えば、接触面６４６はまた、視覚的な、すなわちソフトによるボタン及び／又はキーボードを実装するのに使用されうる。
【００６６】
一部の実装では、コンピューティングデバイス６００は、ＭＰ３、ＡＡＣ、ＭＰＥＧファイルのような記録されたオーディオ又はビデオファイルを提示できる。一部の実装では、コンピューティングデバイス６００は、ｉＰｏｄ（登録商標）のようなＭＰ３プレーヤの機能性を含みうる。従って、コンピューティングデバイス６００は、ｉＰｏｄと互換性を有する３６ピンコネクタを含みうる。その他の入出力デバイス及び制御デバイスも使用されうる。
【００６７】
メモリインターフェース６０２はメモリ６５０に結合されうる。メモリ６５０は高速なランダムアクセスメモリ及び／又は１つ以上の磁気ディスク記憶デバイス、１つ以上の光学記憶デバイス及び／又はフラッシュメモリ（例えば、ＮＡＮＤ、ＮＯＲ）のような不揮発性メモリを含みうる。メモリ６５０（例えば、コンピュータ可読記憶デバイス、媒体、メモリ）は、ビットストリーム及び同様のものを含む有線又は無線の信号を含みうる。しかし、記載される際に、永続的なコンピュータ可読記憶媒体は、エネルギー、キャリア信号、電磁波及びいわゆる信号のような媒体を明確に排除する。メモリ６５０は、Ｄａｒｗｉｎ、ＲＴＸＣ、ＬＩＮＵＸ（登録商標）、ＵＮＩＸ（登録商標）、ＯＳ  Ｘ、ＷＩＮＤＯＷＳ（登録商標）のようなオペレーティングシステム６５２又はＶｘＷｏｒｋｓのような組み込み型オペレーティングシステムを記憶できる。
【００６８】
オペレーティングシステム６５２は、基本システムサービスを扱うための命令及びハードウェア依存のタスクを実行するための命令を含みうる。一部の実装では、オペレーティングシステム６５２はカーネル（例えば、ＵＮＩＸカーネル）でありうる。一部の実装では、オペレーティングシステム６５２は、音声認識を実行するための命令を含みうる。例えば、オペレーティングシステム６５２は、図１〜図５を参照して記載されたコンテキストベースのアクセス制御機能を実装できる。
【００６９】
メモリ６５０はまた、１つ以上の追加のデバイス、１つ以上のコンピュータ及び／又は１つ以上のサーバとの通信を容易にするために、通信命令６５４を記憶できる。メモリ６５０は、グラフィックユーザインターフェース処理を容易にするためのグラフィカルユーザインターフェース命令６５６、センサに関連した処理及び機能を容易にするためのセンサ処理命令６５８、電話に関連した処理及び機能を容易にするための電話命令６６０、電子メッセージングに関連した処理及び機能を容易にするための電子メッセージング命令６６２、ウェブブラウジングに関連した処理及び機能を容易にするためのウェブブラウジング命令６６４、メディア処理に関連した処理及び機能を容易にするためのメディア処理命令６６６、ＧＮＳＳ及びナビゲーションに関連した処理及び命令を容易にするためのＧＮＳＳ／ナビゲーション命令６６８及び／又はカメラに関連した処理及び機能を容易にするためのカメラ命令６７０を含みうる。
【００７０】
メモリ６５０は、図１〜図５を参照して記載されたコンテキストベースのアクセス制御プロセスのような、上述のその他の処理及び機能を容易にするためのソフトウェア命令６７２を記憶できる。
【００７１】
メモリ６５０はまた、ウェブビデオに関連した処理及び機能を容易にするためのウェブビデオ命令及び／又はウェブショッピングに関連した処理及び機能を容易にするためのウェブショッピング命令のようなその他のソフトウェア命令６７４を記憶できる。一部の実装では、メディア処理命令６６６は、音声処理に関連した処理及び機能と、ビデオ処理に関連した処理及び機能とをそれぞれ容易にするための音声処理命令とビデオ処理命令とに分割される。
【００７２】
上記で識別され命令及びアプリケーションのそれぞれは、上述の１つ以上の機能を実行するための命令のセットに対応しうる。これら命令は、別個のソフトウェアプログラム、処理手続き又はモジュールとして実装される必要はない。メモリ６５０は、追加の命令又はより少ない命令を含みうる。さらに、コンピューティングデバイス６００の様々な機能は、１つ以上の信号処理集積回路及び／又は特定用途向け集積回路を含むハードウェア及び／又はソフトウェアに実装されうる。
【００７３】
添付の特許請求の範囲内の側面を説明するために様々な例及び他の情報が使用されたが、幅広い実装を導出するために当業者がこれらの例を用いることができるので、このような例における特定の特徴及び構成に基づいて特許請求の範囲の制限が暗示されるべきではない。さらに、構造的な特徴及び／又は方法のステップの例に特有の文言において一部の主題が記載されたかもしれないが、添付の特許請求の範囲に規定される主題はこれらの記載された特徴及び動作に必ずしも限定されないことが理解されるべきである。例えば、このような機能は、異なるように分配されてもよいし、本明細書で識別されたものとは異な構成要素で実行されてもよい。むしろ、記載された特徴及びステップは、添付の特許請求の範囲に含まれるシステム及び方法の構成要素の例として開示される。
【図１】
2015228216.tif 000003
【図２】
2015228216.tif 000004
【図３】
2015228216.tif 000005
【図４】
2015228216.tif 000006
【図５】
2015228216.tif 000007
【図６】
2015228216.tif 000008
【外国語明細書】
2015228216000001.pdf