JP4880029B2 - 暗号化されたストレージデバイスについてのチップセット鍵管理サービスの利用の強制 - Google Patents

暗号化されたストレージデバイスについてのチップセット鍵管理サービスの利用の強制 Download PDF

Info

Publication number
JP4880029B2
JP4880029B2 JP2009293557A JP2009293557A JP4880029B2 JP 4880029 B2 JP4880029 B2 JP 4880029B2 JP 2009293557 A JP2009293557 A JP 2009293557A JP 2009293557 A JP2009293557 A JP 2009293557A JP 4880029 B2 JP4880029 B2 JP 4880029B2
Authority
JP
Japan
Prior art keywords
platform
key
encryption key
encryption
storage device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009293557A
Other languages
English (en)
Other versions
JP2010191946A (ja
Inventor
スミス、ネッド
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of JP2010191946A publication Critical patent/JP2010191946A/ja
Application granted granted Critical
Publication of JP4880029B2 publication Critical patent/JP4880029B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Description

著作権に関する情報
本明細書に含まれる内容は、著作権に基づいて保護されている。著作権所有者は、米国特許商標庁の特許ファイルまたは特許レコードに保存されている特許開示内容については何人が複製しようとこれに異を唱えることはないが、それ以外については著作権等に関する全ての権利を保有する。
本開示は概して、コンピュータシステムに格納されているデータの保護に関する。
企業が有するデータはますます、移動する機会が増えると共に利用される箇所が多くなり、大量となってきている。社員の出張やさまざまな就業形態を可能とするべく、データを物理的に保護された設備から取り出すことは日常的に行われている。また、企業がビジネスの機会をほかの都市、州(都道府県)、および国で見出すと、データは地理的にさまざまな場所に分散する。そしてデータ量は、発生するスピードの点でも、提示され得るマルチメディア形式の点でも、大量である。上述した要因すべては、移動時および保存時の両方においてデータの保護が必要となるネットワーク接続ストレージ、帯域幅が増えたサブシステム、新しい格納媒体の開発を後押ししている。
保存データ(Data at Rest:DAR)暗号化技術は、紛失または盗難にあったストレージデバイスに格納されているデータが不正利用されないようにするための技術であり、インターネット等のネットワークでデータがばら撒かれることを防いでいる。DAR暗号化技術は、ストレージデバイスの紛失および盗難が不可避である以上、発生してもストレージデバイスに格納されているデータの紛失および盗難につながらないように、自動的且つ即座に応答するメカニズムとして機能する技術である。
コンピュータプラットフォームに関連付けられているさまざまなストレージデバイスに格納されているデータを保護する上での課題の1つに、暗号化技術および鍵管理方法が暗号化を行う主体によって異なる点が挙げられる。ストレージのハードウェアには暗号化機能が元々組み込まれている場合があるが、この暗号化機能は、ストレージのハードウェアのベンダ毎に固有であるので、データにアクセスするには、ストレージのハードウェアのベンダのツールを利用しなければならない。ソフトウェアに基づく暗号化の場合は、ハードウェアに基づく暗号化の場合とは異なる鍵生成および管理サービスが必要となるので、ソフトウェアで暗号化されたデータにアクセスするにはソフトウェアのベンダのツールを利用しなければならない場合がある。このため、盗難または紛失が発生した際の鍵の回復およびデータのマイグレーションについて計画を立てる場合、任意のコンピュータプラットフォームに対応付けられたデータ全てを保護および/または回復するためには多くの異なるベンダのツールを利用しなければならない可能性がある。
本発明の実施形態に係る、コンピュータプラットフォーム内のストレージデバイスに格納されているデータについて包括的な保護を提供するシステムを示す図である。
本発明の一実施形態に係る、図1のプラットフォームに格納されているデータの暗号化の管理に関連して、図1のチップセットおよび管理エンジン(Manageability Engine:ME)をさらに詳細に示す図である。
本発明の一実施形態に応じた、ストレージデバイスに格納されているデータを暗号化するための暗号鍵同士の関係を示す図である。
コンピュータプラットフォームのストレージデバイスへのアクセスを制御する場合の、図2のコンポーネント同士のやり取りを示すデータフロー図である。
本発明の一実施形態に係る、デバイスアクセスイベントの処理に関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
本発明の一実施形態に係る、デバイス初期化イベントの処理に関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
本発明の一実施形態に係る、デバイスのアンロックに関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
本発明の一実施形態に係る、プラットフォーム間でのデバイスのマイグレーションに関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
本発明の一実施形態に係る、盗難にあったプラットフォームの処理に関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
本発明の一実施形態に係る、盗難にあったプラットフォームの回復に関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
本発明の一実施形態に係る、図1および図2のプラットフォームのアクセス制御コンポーネントの動作を示すフローチャートである。
本発明の実施形態は、コンピュータプラットフォームが備えるストレージデバイスに格納されているデータを包括的に保護するための方法、装置、システム、およびコンピュータプログラム製品を提供し得る。データの保護は、プラットフォームのユーザを、ストレージデバイスに格納されているデータへのアクセスを許可する前に、認証することによって実現される。さらに、プラットフォームに対応付けられているストレージデバイスに格納されているデータを暗号化するのに用いられる鍵は、ストレージデバイスを暗号化するためにチップセットのハードウェアによって用いられる鍵、ならびに、暗号化ソフトウェアおよび/またはストレージデバイスのハードウェアによって利用される鍵も含め、全てセキュアに管理することによってデータを保護する。また、プラットフォームおよび/またはストレージデバイスの盗難が検知された場合には格納データへのアクセスを防ぐべく盗難抑止メカニズムを設けることによっても、データを保護する。
図1は、本発明の実施形態に係る、コンピュータプラットフォーム内のストレージデバイスに格納されているデータについて包括的な保護を提供するシステムを示す図である。プラットフォーム100は、デスクトップ管理インターフェース(DMI)111を介してチップセット120に接続されているプロセッサ110を備える。チップセット120は、プラットフォーム100の設定および動作を管理する管理エンジン(Manageability Engine:ME)130を有する。管理エンジン(ME)130は、マイクロプロセッサとして実装され得る。一実施形態によると、管理エンジン(ME)130は、監査イベントの収集、ユーザの認証、周辺機器へのアクセスの制御、プラットフォーム100のストレージデバイスに格納されているデータを保護するための暗号鍵の管理、およびネットワークコントローラ160を介したエンタープライズサービス162との間のインターフェースとしての機能を実行する。管理エンジン(ME)130は、エンタープライズサービス162を利用することによって、プラットフォーム100等のプラットフォームの設定及び管理に関するエンタープライズ全体でのポリシーとの一貫性を保つ。
デスクトップ管理インターフェース(DMI)111は、プロセッサ110を、チップセット120のI/Oコマンドデコードモジュール140に接続する。一実施形態によると、I/Oコマンドデコードモジュール140は、専用シリコンチップを用いることによって格納コマンドのデコードおよびその他の加速処理を実行する汎用コントローラである。I/Oコマンドデコードモジュール140の機能は、特定用途向けハードウェアで全て実装されるとしてもよい。管理エンジン(ME)130は、ポリシーおよび暗号鍵を設定することによって、I/Oコマンドデコードモジュール140および暗号化エンジン150の挙動を制御する。管理エンジン(ME)130、I/Oコマンドデコードモジュール140、および暗号化エンジン150の動作については、より詳細に後述する。
プラットフォーム100はさらに、ダイナミックランダムアクセスメモリ(DRAM)112、チップセット120内のスタティックランダムアクセスメモリ(SRAM)122、およびフラッシュメモリ190等のメモリデバイスを備える。プラットフォーム100に最大電力が供給されている場合、DRAM112のうち上部メモリ領域(UMA)と呼ばれる一部分、ME−UMA114が、管理エンジン(ME)130によって利用可能な状態となっている。プラットフォーム100のホストオペレーティングシステム(図1には不図示)は通常、BIOS(Basic Input Output System)によって設定されているメモリ分離メカニズムのために、ME−UMA114にはアクセスすることができない。このメモリ分離メカニズムは、ホストオペレーティングシステムが実行される前に、ME−UMAメモリ114へのアクセスに鍵を掛ける。DRAM112のこの部分を、管理エンジン130に利用させるべく、ホストオペレーティングシステムから分離することによって、オペレーティングシステムに感染し得るウィルス等のマルウェアから管理エンジン130の完全性を保護する。
フラッシュメモリ190は、プラットフォーム100を初期化する場合に用いられるファームウェアを有する。この初期化ファームウェアには、BIOSファームウェア192、ネットワークコントローラ160を設定するためのネットワークコントローラファームウェア194、およびチップセット120を設定するためのチップセットファームウェア196が含まれる。管理エンジン(ME)130およびI/Oコマンドデコードモジュール140のために、チップセットファームウェア196の完全性は、フラッシュメモリ190に格納される前にデジタル署名を確認することによって保証される。管理エンジン(ME)130によって利用されるデータ、例えばユーザ認証情報は、管理エンジン(ME)130内の暗号化ファームウェアによって暗号化されて、フラッシュメモリ190のデータ領域198に格納されるとしてよい。
図1に示す実施形態のプラットフォーム100はさらに、I/Oコントローラ170を介してアクセス可能なさまざまな種類のストレージデバイスを備えている。例えば、ストレージインターフェース171を介してアクセス可能な非チップセット暗号化ストレージデバイス172、および、ストレージインターフェース181を介してアクセス可能なチップセット暗号化ストレージデバイス180がある。ストレージインターフェース171および181は、ストレージデバイス172および180として設けられるストレージの種類に応じて、不揮発性メモリ(NVM)用の不揮発性メモリホストコントローラインターフェース(HCI)、または、SATA(Serial Advanced Technology Attachment)ストレージ用のAHCI(Advanced HCI)インターフェースとして実装されるとしてよい。
ストレージデバイス172および180に格納されているデータは、暗号化されているとしてよい。チップセット暗号化ストレージデバイス180に格納されているデータは、チップセット120の暗号化エンジン150によって暗号化される。チップセット暗号化ストレージデバイス180はさらに、メタデータ182を格納するために確保された領域を含む。メタデータ182は、ストレージデバイス180のための少なくとも1つのデバイス暗号鍵(DEK)184、および、管理エンジン(ME)130が利用するその他のメタデータを含む。メタデータ182は、I/Oコマンドデコードモジュール140およびI/Oコントローラ170がI/Oコマンドを処理している間にプロセッサ110で実行されるアプリケーションによって上書きされないように保護される。
一実施形態によると、チップセット120の暗号化エンジン150によってデータの暗号化または復号化が実行される前に、管理エンジン(ME)130が、暗号化エンジン150と対応付けられているメモリレジスタに対して、入出力動作に関わるストレージデバイスに対応付けられているデバイス暗号鍵(DEK)、例えばDEK184を挿入する。1つの物理ストレージデバイスが論理的に複数の異なる論理デバイスまたはパーティションに分割されている場合、各論理デバイスまたはパーティションそれぞれが、対応するデバイス暗号鍵(DEK)を持っており、各DEKが暗号化エンジン150の対応するメモリレジスタに挿入される。
非チップセット暗号化ストレージデバイス172に格納されているデータは、暗号化ソフトウェアまたはストレージのハードウェア自体によって暗号化されており、暗号化エンジン150によっては暗号化されてはいない。非チップセット暗号化ストレージデバイス172は、チップセット暗号化ストレージデバイス180が格納するメタデータ182と同様のチップセットが生成するメタデータは含まない。
プロセッサ110で実行されているソフトウェアが発行する書込みコマンドに応じたプラットフォーム100のコンポーネントの動作の一例として、特定のストレージデバイスを対象とするデータ書込みコマンドが、DMIインターフェース111を介して、I/Oコマンドデコードモジュール140に対して発行される。I/Oコマンドデコードモジュール140は、このコマンドをデコードして、I/Oコントローラ170にデータ部分を特定する。チップセット暗号化ストレージデバイス180を対象とする書込みコマンドの場合、I/Oコントローラ170は「オンザフライ」で暗号化エンジン150を介してデータをルーティングする。この時、暗号化エンジン150は、管理エンジン(ME)130から提供されたチップセット暗号化ストレージデバイス180用のデバイス暗号鍵(DEK)、例えばDEK184を用いてこのデータを暗号化する。暗号化エンジン150は、ストレージインターフェース181を介してチップセット暗号化ストレージデバイス180に送信されるように、暗号化されたデータをI/Oコントローラ170に戻す。I/Oコマンドデコードモジュール140およびI/Oコントローラ170は、ストレージインターフェース181を抽象化して、メタデータ182を格納している領域をプロセッサ110で実行されているアプリケーションによるアクセスから保護して、メタデータ182が上書きされないようにする。
非チップセット暗号化ストレージデバイス172とは、チップセット120の暗号化エンジン150によって暗号化されていないデータを格納しているUSBデバイス、NAND型フラッシュメモリデバイス、ファイヤーワイヤデバイス、またはその他の種類のストレージデバイスを表すとしてよい。非チップセット暗号化ストレージデバイス172を対象とする書込みコマンドの場合、I/Oコントローラ170は、暗号化のために暗号化エンジン150を介してデータをルーティングすることはない。これに代えて、非チップセット暗号化ストレージデバイス172は、ホストプロセッサ110で実行されているソフトウェアを用いて、または、ストレージデバイス172に組み込まれている暗号化ハードウェアによって暗号化され得る。非チップセット暗号化ストレージデバイス172が表すストレージデバイスは、チップセット120の暗号化エンジン150を用いて暗号化されるようには設定されていないが、管理エンジン(ME)130によって保護および管理されている、プラットフォーム100内のストレージデバイスである。
非チップセット暗号化ストレージデバイス172にも、1以上の暗号鍵が対応付けられており、これらの暗号鍵は一時デバイス暗号鍵(TDEK)(不図示)と呼ばれる。例えば、ソフトウェアに基づく暗号化は通常、デバイスまたはパーティションの概念を用いるのではなく、ストレージのボリュームの概念を用いて行われ、対応付けられる暗号鍵はボリューム暗号鍵(VEK)と呼ばれる。ボリューム暗号鍵は、管理エンジン(ME)130に格納されて管理される、あるタイプの一時デバイス暗号鍵(TDEK)の一例である。管理エンジン(ME)130は、プラットフォームに結び付けられた暗号鍵を管理すると共に、プラットフォームに結び付けられていない暗号鍵をも管理する。例えば、非チップセット生成暗号鍵、例えば、暗号化ソフトウェアによって生成される一時デバイス暗号鍵は通常、プラットフォームに結び付けられない。ストレージのハードウェアによって生成され、デバイス自体で物理的に格納されているDEKは、当該デバイスには結び付けられているが、必ずしも当該デバイスを備えるプラットフォームに結び付けられることはない。一時DEKは、それを用いて暗号化したデータを格納している物理ストレージデバイスには格納されておらず、プラットフォームにもデバイスにも結び付けられていない。暗号鍵がプラットフォーム/デバイスに結び付けられていようといまいと、管理エンジン(ME)130は暗号鍵を同様に管理する。
管理エンジン(ME)130は、プラットフォーム100と対応付けられる全てのデータの暗号化を管理する。これには、チップセット120内の暗号化エンジン150によって実行される暗号化、および、チップセットで実行されるのではなく、プロセッサ110で実行されるソフトウェアまたはストレージハードウェア自体で実行されるデータの暗号化も含まれる。管理エンジン(ME)130が提供するサービスの1つに、プラットフォーム100のどのコンポーネントがデータの暗号化を実行するかに関わらず、共通のフレームワークおよびユーザインターフェースにおいて暗号鍵を管理することが挙げられる。データの暗号化を管理するためのチップセット120および管理エンジン(ME)130のフレームワークおよび動作に関する詳細はさらに、図2を参照しつつ後述する。
図2は、本発明の一実施形態に係る、図1のチップセット120、管理エンジン(ME)130、および管理エンジン(ME)130が管理するデータをさらに詳細に示す図である。チップセット120は、BIOS/ホストソフトウェア210とやり取りを行う。BIOS/ホストソフトウェア210は、ブート前認証プロセスで図1のBIOSファームウェア192にロードされるとしてよい。BIOS/ホストソフトウェア210は、ブート前認証プロセスでプラットフォーム100のユーザを認証するユーザ認証モジュール212と、非チップセット暗号化ストレージデバイス172等のデバイスに格納されているデータを暗号化するべく用いられるホスト暗号化ソフトウェア214とを有する。
ユーザ認証モジュール212が実行するユーザ認証プロセスは、ユーザのパスワードを確認すること、バイオメトリクスデータ、スマートカードの利用、またはその他の認証プロセスを含むとしてよい。ユーザ認証モジュール212は、ブート前認証プロセスにおいて、認証結果を、チップセット120の管理エンジン(ME)130内の身元情報(ID)管理ファームウェア239に与えるとしてよい。
チップセット120において、管理エンジン(ME)130は、MEカーネル231と、ME共通サービス233と、盗難抑止ファームウェア235と、セキュリティ/鍵管理ファームウェア237と、身元情報管理ファームウェア239とを持つ。これらのコンポーネントはそれぞれ、さらに詳細に後述する。
MEカーネル231は、SRAM122およびDRAM112の一部分(例えば、ME−UMA114)のメモリ利用、フラッシュメモリ190におけるデータの持続的な格納、およびアクセス制御等の基本的な機能を提供する。MEカーネル231は、I/Oコマンドデコードモジュール140および暗号化エンジン150の動作を制御する。
ME共通サービス233は、複数の異なるファームウェアモジュールが共通に必要とするサービスを含み、セキュリティサービス、ネットワークサービス、およびプロビジョニングサービスを含む。ME共通サービス233が提供するセキュリティサービスは一般的に、HTTPダイジェスト認証およびケルベロス認証の両方を含むユーザ認証、Microsoft Active Directoryおよび/またはその他のサービスを用いるドメイン認証、クライアントとサーバのクロックを同期させるクロック同期サービス、およびセキュリティ監査サービスを含む。
ME共通サービス233が提供するネットワークサービスは、トランスミッション・トランスポート・プロトコル/インターネット・プロトコル(TCP/IP)スタック、トランスポート層セキュリティ(TLS)、ハイパーテキスト・トランスポート・プロトコル(HTTP)、シンプル・オブジェクト・アクセス・プロトコル(SOAP)、ウェブ・サービス・フォー・マネジアビリティ(WS−MAN)、および、ホストベースのTLSインターフェースが呼び出したIntelローカル・マネジアビリティ・サービス(LMS)を含む。
ME共通サービス233が提供するプロビジョニングサービスは、プラットフォーム100に対してエンタープライズソフトウェアをプロビジョニングするべく、図1のエンタープライズサービス162と共に用いられる。これらのプロビジョニングサービスは、2つのデプロイメントモード、つまり、ゼロタッチおよびワンタッチをサポートしている。ゼロタッチモードの場合、デプロイメント証明アンカーキーは、図1のフラッシュメモリ190のデータ領域198等のデータストレージ領域に格納され、公知の認証局鍵に基づいて、プラットフォームの所有権を取るべく用いられるIT信任状を認証する。ワンタッチモードでは、セットアップおよびデプロイメントのタスクをリモートで完了させるべく用いられる組織証明書、対称鍵、および信頼しているホストを設定する。
管理エンジン(ME)130はさらに、BIOS/ホストソフトウェア210のユーザ認証モジュール212との間でやり取りを行う身元情報管理ファームウェア239を持つ。身元情報管理ファームウェア239は、ユーザの認証情報をユーザアカウントメタデータ223と比較するとしてよい。ユーザアカウントメタデータ223は、フラッシュメモリ190のデータ領域198のユーザ/コンテナメタデータ230部分に格納されると図示されている。身元情報管理ファームウェア239はさらに、管理エンジン(ME)130のセキュリティ/鍵管理ファームウェア237との間でやり取りを行って、チップセット暗号化ストレージデバイス180内のブート前認証(PBA)デバイス情報コンテナ280にもユーザ情報が格納されていることを確認するとしてよい。このようにチップセット暗号化ストレージデバイス180に対するユーザのアクセスを確認することによって、チップセット暗号化ストレージデバイス180に格納されているデータに対する保護がさらに強化される。
セキュリティ/鍵管理ファームウェア237は、上述したようにユーザ認証モジュール212との間でやり取りを行なって、プラットフォーム100に対応付けられているストレージデバイスに格納されているデータへのアクセスが許可される前にユーザを認証する。セキュリティ/鍵管理ファームウェア237は、鍵管理情報を管理して、プラットフォームに対応付けられているメモリまたはストレージデバイス、例えば、フラッシュメモリ190またはチップセット暗号化ストレージデバイス180にこの鍵管理情報を格納する。鍵管理情報が格納される場所は、利用可能なストレージ空間および格納されるべきデータの量に応じて決まり、本発明は鍵管理情報を格納する構成について特定の構成に限定されるものではない。一実施形態によると、セキュリティ/鍵管理ファームウェア237は、プラットフォーム100に結び付けられているプラットフォームコンテナ鍵(PCK)を用いて鍵管理情報を暗号化する。
セキュリティ/鍵管理ファームウェア237が管理する鍵管理情報は、チップセット(つまり、チップセット120内の暗号化エンジン150)によって生成され、メタデータ182に格納されている、デバイス暗号鍵(DEK)184と呼ばれる暗号鍵を含む。セキュリティ/鍵管理ファームウェア237が管理するその他の種類の鍵には、例えばホスト暗号化ソフトウェア214によって生成される一時デバイス暗号鍵(TDEK)282および292として図示されている暗号鍵が含まれる。TDEK282は、チップセット暗号化ストレージデバイス180内の直接管理デバイス情報コンテナ280に格納されており、TDEK292はフラッシュメモリ190の間接管理デバイス情報コンテナ290に格納されていることが図示されている。「直接管理」という表現を用いているのは、チップセット120によって直接暗号化されていると共に管理エンジン(ME)130によって管理されているデバイスを意味している。一方で、「間接管理」という表現を用いているのは、当該デバイスはチップセット120によって暗号化されていないが当該デバイスに格納されているデータの暗号鍵は管理エンジン(ME)130によって管理されていることを意味している。セキュリティ/鍵管理ファームウェア237の動作については、さらに詳細に後述する。
管理エンジン(ME)130はさらに、盗難抑止ファームウェア235を持つと図示されている。盗難抑止ファームウェア235は、図1のエンタープライズサービス162等の中央サーバによって、盗難通知イベント等のイベントに応答するように構成され得る。このような盗難通知イベントは、例えば、失敗に終わったログインの回数が最大値に達したことを管理エンジン(ME)130が検知した場合、または、ユーザから盗難が報告された場合に、トリガされるとしてよい。一実施形態によると、プラットフォーム100は、認証された位置からプラットフォームが移動させられると、盗難通知サーバに信号を送信するように構成されている感知ハードウェア(不図示)を備えるとしてよい。盗難通知イベントに応答して、盗難抑止ファームウェア235は、盗難の影響を抑制する処理を実行するとしてよい。例えば、プロセッサ110またはチップセット120の一部をディセーブルしたり、フラッシュメモリ190へのアクセスを禁止したり、フラッシュメモリ190からデバイス情報コンテナ290を削除したり、チップセット暗号化ストレージデバイス180のメタデータ182の内容を削除したり、または、デバイス情報コンテナ290、フラッシュメモリ190、メタデータ182、および/あるいは、チップセット暗号化ストレージデバイス180のデバイス情報コンテナ280の中身へのアクセスをプログラムを用いて禁止するとしてよい。
盗難抑止ファームウェア235は、デバイス情報コンテナ280および290が有するデータを管理する。一例を挙げると、デバイス情報コンテナ280および290は、一時デバイス暗号鍵(TDEK)282および292、例えば、非チップセット暗号化ストレージデバイス172を暗号化および復号化するべくホスト暗号化ソフトウェア214が用いる鍵を持つ。非チップセット暗号化ボリューム暗号鍵はさらに、ストレージのハードウェア自体によって生成されて、管理エンジン(ME)130のセキュリティ/鍵管理ファームウェア237によってデバイス情報コンテナ280および290に格納されている暗号鍵を含むとしてよい。盗難抑止ファームウェア235の動作については、さらに詳細に後述する。
デバイス情報コンテナ280および290はそれぞれ、対応するマイグレーションパッケージ280Mおよび290Mを含むものと図示されている。マイグレーションパッケージ280Mおよび290Mは、プラットフォーム100に対応付けられている全てのストレージデバイスについての暗号鍵の共通レポジトリを提供するべく、管理エンジン130およびセキュリティ/鍵管理ファームウェア237によって用いられる。一実施形態によると、チップセット暗号化ストレージデバイス180および非チップセット暗号化ストレージデバイス172の鍵情報はそれぞれ、マイグレーションパッケージ280Mおよび290Mに格納されている。マイグレーションパッケージ280Mおよび290Mに格納されている鍵の種類については、図3を参照しつつさらに詳細に説明する。
図3は、ストレージデバイスに格納されているデータを暗号化するための暗号鍵同士の関係を示す図である。一実施形態によると、図2のセキュリティ/鍵管理ファームウェア237は、任意のデバイス暗号鍵(DEK)310−310nまたは一時デバイス暗号鍵(TDEK)320a−320nを、デバイスラッピング鍵(DWK)330と呼ばれる別の鍵を用いて、さらにラッピング(暗号化)することによって、対応付けられたストレージデバイスが盗難されないように保護する。DWKは、例えば、動的に取得される2つの値から導き出されるとしてよい。第1の値は、ユーザから取得されるパスフレーズである。第2の値は、製造時にハードウェアに埋め込まれた、ヒューズ鍵とも呼ばれる、チップセット鍵である。各チップセット鍵は、特定のプラットフォームに固有であるが、外部からは読み出せない。パスフレーズおよびチップセット鍵は、デバイスラッピング鍵(DWK)を出力する公共鍵暗号化基準(PKCS#5)鍵導出関数に与えられる。デバイスラッピング鍵(DWK)はシステムに電源が入れられる度に導き出されるので、DWK内部にラッピングされているDEKまたはTDEKを取得するためには、盗難者はユーザのパスフレーズを知っていなければならないと共にデバイスラッピング鍵(DWK)のラッピングを解除するチップセット鍵へのアクセスを有していなければならない。
このため、上述したようなデバイスラッピング鍵(DWK)を用いて暗号化されたストレージデバイスは、DEKまたはTDEKをラッピングするためにチップセット鍵/ヒューズ鍵を利用しているので、データを暗号化したプラットフォームに結び付けられる。このようにデバイスをプラットフォームに結びつけることによって、チップセット暗号化ストレージデバイス180または非チップセット暗号化ストレージデバイス172のようなストレージデバイスを、攻撃者が、ストレージデバイスに格納されているデータの暗号化の回避を試みるための攻撃ツールキットが利用可能な別のプラットフォームに入れないようにする。
一実施形態によると、デバイスラッピング鍵(DWK)330は、別の鍵を用いてさらにラッピングされて、チップセット120内にある間を除いてDWKがクリア状態になることがないようにする。このような別の鍵には、ユーザ鍵340aおよび340bが含まれる。デバイスラッピング鍵(DWK)330、ならびに、DWKがラッピングするDEKおよびTDEKといった暗号鍵のラッピングを解除するためには、プラットフォームのユーザは上述したように認証されなければならない。
セキュリティ/鍵管理ファームウェア237によって生成されたデバイスラッピング鍵(DWK)はプラットフォームに結び付けられているので、ストレージデバイスを別のプラットフォームにマイグレーションさせるには別の方法が必要となる。例えば、元々のプラットフォームが動作不可能に陥った場合、別のプラットフォームにハードドライブをマイグレーションさせる必要がある。このようなマイグレーションは、例えば管理エンジン(ME)130と共に図1に示したエンタープライズサービス162を用いることで実行されるとしてよい。エンタープライズサービス162は、回復サーバおよび/またはマイグレーションサーバを提供するとしてよい。
一実施形態によると、データ回復を容易にするべく、セキュリティ/鍵管理ファームウェア237はさらに、別のプラットフォームで利用され得るプラットフォーム非依存性の鍵(図3には不図示)を生成する。このようなプラットフォーム非依存性の鍵は通常、少なくとも256ビットの乱数であるトークンによってラッピングされて、マイグレーション鍵350を生成する。セキュリティ/鍵管理ファームウェア237は、このマイグレーション鍵350を用いてデバイスラッピング鍵(DWK)330をラッピングして、プラットフォーム間での暗号化ストレージデバイスのマイグレーションを容易にするとしてよい。マイグレーション鍵350もまた、プラットフォームの特定のユーザには依存していないので、ユーザアカウント情報が破損して、デバイスラッピング鍵(DWK)330のラッピングを解除するためにユーザ鍵340aおよび340bを利用できない場合、デバイスラッピング鍵(DWK)330の回復を容易にするとしてよい。
一実施形態によると、プラットフォーム非依存性のマイグレーション鍵350は、マイグレーションパッケージ280Mおよび290Mに格納されており、マイグレーション鍵350を生成するべく用いられたトークンは、リモートセキュアサーバに格納されるとしてよい。一実施形態によると、データのマイグレーションおよび回復をさらに容易にするべく、プラットフォームに結び付けられているデバイスラッピング鍵(DWK)330の複製をリモートセキュアサーバに格納する。このようにすることでデバイスラッピング鍵(DWK)330を、ラッピングした一時デバイス暗号鍵(TDEK)320a−320nおよびデバイス暗号鍵(DEK)310a−310nを復号化するべく用いることができる。
図3に示すようにすべてのDEK310a−310nおよびTDEK320a−320nを同一のデバイスラッピング鍵でラッピングすることによって、管理エンジン(ME)130および/またはセキュリティ/鍵管理ファームウェア237は、プラットフォームに対応付けられている全てのストレージデバイスを一度にアンロックすることができる。このような共通のラッピング鍵DWK330によれば、個々のストレージデバイスは独自の暗号鍵DEK310a−310nおよびTDEK320a−320nを持っているとしても、ストレージデバイスのロック粒度はプラットフォーム単位で実行し得るものとすることができる。ストレージデバイスのアンロックについては、図7を参照しつつさらに詳細に後述し、ストレージデバイスの初期化については、図6を参照しつつさらに詳細に後述する。
図4は、プラットフォーム100のストレージデバイスへのアクセスを制御する場合の、図2のコンポーネント同士のやり取りを示すデータフロー図である。動作4.1において、ユーザ認証モジュール212および身元情報管理ファームウェア239は、上述したようなやり取りを行なって、ユーザデータ410を認証する。動作4.2において、ユーザ認証モジュール212は、ユーザデータ410をセキュリティ/鍵管理ファームウェア237に与える。動作4.3において、セキュリティ/鍵管理ファームウェア237は、ユーザデータ410を、フラッシュメモリ190のデータ領域198のユーザ/コンテナメタデータ230にあるユーザアカウントメタデータ223にあるユーザデータと比較して、ユーザデータが一致していることが分かれば、コンテナ鍵220を取得する。コンテナ鍵220は、セキュリティ/鍵管理ファームウェア237によって格納されている鍵管理情報を復号化するべく用いられる。例えば、コンテナ鍵220は、プラットフォーム100に結び付けられているプラットフォームコンテナ鍵(PCK)として実装されるとしてよい。
動作4.4において、セキュリティ/鍵管理ファームウェア237は、コンテナ鍵220を用いて、チップセット暗号化ストレージデバイス180内のメタデータ182を、デバイス暗号鍵(DEK)184を含めて復号化する。セキュリティ/鍵管理ファームウェア237は、DEK184を用いて、チップセット暗号化ストレージデバイス180内に格納されているデータを復号化する。コンテナ鍵220はさらに、デバイス情報コンテナ280に含まれているデータを、TDEK282を含めて、復号化するべく用いられる。動作4.5において、セキュリティ/鍵管理ファームウェア237は、盗難抑止ファームウェア235との間でやり取りを行なって、プラットフォーム100に対応付けられているストレージデバイスが盗難通知に基づいてアクセス不能になっていないことを確かめる。動作4.6において、盗難抑止ファームウェア235は、デバイス情報コンテナ290にアクセスして、プラットフォーム100に対応付けられているストレージデバイスの状態に関する情報を取得する。盗難が検出あるいは報告されている場合、または、盗難通知を受け取っている場合、セキュリティ/鍵管理ファームウェア237は、プラットフォーム100へのアクセスを拒絶する等の救済措置をとるべく、盗難抑止ファームウェア235に制御を移行する。プラットフォーム100へのアクセスを拒絶するべく実行し得る動作には、ハードウェアをディセーブルすること、鍵および/あるいは鍵コンテナを削除すること、マイグレーションパッケージへのアクセスを拒絶すること、ならびに/または、鍵および/あるいは鍵コンテナへのアクセスを拒絶することが含まれるとしてよい。鍵および/あるいは鍵コンテナを削除すること、または、鍵および/あるいは鍵コンテナへのアクセスをディセーブルすることによって、鍵コンテナを復号化しようとする不正な試みを阻止することができる。
さらに図4を参照しつつ説明を続けると、動作4.7において、盗難通知を受け取っていない場合、セキュリティ/鍵管理ファームウェア237は、コンテナ鍵220を用いて、一時デバイス暗号鍵(TDEK)292を含むデバイス情報コンテナ290内に格納されているデータを復号化する。ここで、一時デバイス暗号鍵(TDEK)292は、非チップセット暗号化ストレージデバイス172に格納されているデータを暗号化するためにホスト暗号化ソフトウェア214または元々のストレージのハードウェアによって用いられる暗号鍵を含む得ることに留意されたい。動作4.8において、セキュリティ/鍵管理ファームウェア237は、一時デバイス暗号鍵(TDEK)292をホスト暗号化ソフトウェア214に与えて、動作4.9において、ホスト暗号化ソフトウェア214は非チップセット暗号化ストレージデバイス172を復号化する。一時デバイス暗号鍵(TDEK)292が元々のストレージのハードウェアによって生成されている場合、TDEK292は非チップセット暗号化ストレージデバイス172のデータを復号化するべく用いられ得る。
このため、ユーザは、システムに1回ログインすると、チップセット暗号化ストレージデバイス180および非チップセット暗号化ストレージデバイス172に格納されている暗号化データにアクセスできる。管理エンジン130のセキュリティ/鍵管理ファームウェア237は、チップセットによって暗号化されたデバイスおよびプラットフォームのチップセットによっては暗号化されていないデバイス両方の復号化のための鍵を制御することによって、プラットフォーム100に対応付けられているストレージデバイスに格納されているデータを包括的に保護する。デバイスへのユーザアクセスを制御するべく身元情報管理ファームウェア239と協働し、且つ、盗難通知に応答するべく盗難抑止ファームウェア235と協働することによって、保護されているプラットフォームに対応付けられているデータの安全性が保証される。
図5は、本発明の一実施形態に係る、デバイスアクセスイベントの処理に関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。図5に示すステップは、管理エンジン(ME)130および/または管理エンジン(ME)130の構成要素であるセキュリティ/鍵管理ファームウェア237によって実行されるものとして説明される。「デバイスアクセスイベント」ステップ510において、管理エンジン(ME)130は、プラットフォームのリセット、または、非チップセット暗号化ストレージデバイス172等のデバイスのプラットフォームへのホットプラグなどを表すデバイスアクセスイベントを受け取る。そして、「デバイスはチップセットによって暗号化されているか」の判断ポイント512に進み、挿入されたデバイスがチップセットによって暗号化されているか否かを判断する。このような判断を行なうには、メタデータ182等のメタデータがストレージデバイスにあるか否かを確認するとしてよい。デバイスがチップセットによって暗号化されていれば、「デバイスメタデータ内でデバイス暗号鍵(DEK)を検索」ステップ520に進む。ストレージデバイスのメタデータ182内でDEK184を検索して、「DEK発見?」判断ポイント522へ進む。DEKが発見されていれば、「DEKを用いてデバイスをアンロック」ステップ524へと進む。デバイスをアンロックして、「デバイスはアンロック済み」状態550へと進む。デバイスのアンロックは、図7を参照しつつさらに詳細に説明する。「DEK発見?」判断ポイント522においてDEKが発見されていなければ、「アンロック失敗」状態560に進む。「アンロック失敗」状態560では、デバイス暗号鍵を見つけることが出来なかったので、デバイスはロックされた状態のままである。
「デバイスはチップセットによって暗号化されているか」の判断ポイント512において、挿入されたデバイスがチップセットによって暗号化されていない場合、「デバイスはソフトウェアによって暗号化されているか」の判断ポイント514に進む。デバイスがソフトウェアによって暗号化されているか否かの判断は、例えば、デバイスの識別子と、直接管理デバイス情報コンテナ280および間接管理デバイス情報コンテナ290等のデバイス情報コンテナ内のデバイス識別子との比較に基づいて行なうとしてよい。デバイス識別子がデバイス情報コンテナのうち1つで見つかった場合、「デバイス情報コンテナ内で一時デバイス暗号鍵(TDEK)を検索」ステップ530に進む。デバイス情報コンテナ内を検索して、「TDEK発見?」判断ポイント532に進む。TDEKが発見されていれば、「TDEKを用いてデバイスをアンロック」ステップ534に進む。デバイスをアンロックして、「デバイスはアンロック済み」状態550へと進む。デバイスのアンロックは、図7を参照しつつさらに詳細に説明する。
「TDEK発見?」判断ポイント532においてソフトウェアで暗号化されたデバイスのTDEKが見つからない場合、「他のデバイス情報コンテナのメタデータ内でTDEKを検索」ステップ536に進む。他のデバイス情報コンテナのメタデータが存在すれば、そのメタデータ内を検索して、「TDEK発見?」判断ポイント538へと進む。他のデバイス情報コンテナのメタデータが存在しなければ、「TDEK発見?」判断ポイント538へと進む。ソフトウェアで暗号化されたデバイスのTDEKが見つからなかった場合、「TDEK発見?」判断ポイント538から、「アンロック失敗」状態560に進む。「アンロック失敗」状態560では、デバイス暗号鍵を見つけることが出来なかったので、デバイスはロックされた状態のままである。ソフトウェアで暗号化されたデバイスのTDEKが見つかった場合、「TDEK発見?」判断ポイント538から、「TDEKを用いてデバイスをアンロック」ステップ534に進み、その後は上述したように進む。
「デバイスはソフトウェアによって暗号化されているか」の判断ポイント514において、デバイスがソフトウェアによって暗号化されていないと判断されれば、「デバイスは自身で暗号化されているか?」の判断ポイント516に進む。デバイスが自身で暗号化されているか否かの判断は、例えば、ATAセキュリティコマンドを発行することによって、実行するとしてよい。デバイスが自身で暗号化されていれば、「アンロックコマンド送信」ステップ540に進み、アンロックコマンドがデバイスに送信される。デバイスはアンロックされて、「デバイスはアンロック済み」状態550へと進む。
「デバイスは自身で暗号化されているか?」の判断ポイント516において、デバイスが自身で暗号化されていないとなった場合、「アンロック失敗」状態560に進む。デバイスはアンロックされない。「デバイスアクセスイベント」ステップ510から開始されたデバイスアクセスイベントの処理は、デバイスをアンロックすることなく、完了する。
図6は、本発明の一実施形態に係る、デバイス初期化イベントの処理に関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。図6に示すステップは、管理エンジン(ME)130および/または管理エンジン(ME)130の構成要素であるセキュリティ/鍵管理ファームウェア237によって実行されるものとして説明される。「デバイス初期化イベント」ステップ610において、管理エンジン(ME)130は、デバイス初期化イベントを受け取る。「デバイス暗号鍵を生成?」の判断ポイント620に進む。初期化すべきデバイスについて暗号鍵を生成すべき場合、「暗号鍵(DEKまたはTDEK)生成」ステップ622に進む。暗号鍵は、例えば、乱数生成器を用いて生成するとしてよい。そして、「デバイスラッピング鍵(DWK)を用いて暗号鍵をラッピング」ステップ624に進む。例えば、図3のDEK310a−310nのうち1つ等のデバイス暗号鍵(DEK)、または、図3のTDEK320a−320nのうち1つ等の一時デバイス暗号鍵(TDEK)を、図3のDWK330等のデバイスラッピング鍵(DWK)を用いてラッピングする。
「デバイスラッピング鍵(DWK)を用いて暗号鍵をラッピング」ステップ624から、「チップセットで生成されたDEK?」判断ポイント0へ進み、チップセット暗号化ストレージデバイス180のDEK184等の暗号鍵が、チップセットによって生成されたか否かを判断する。暗号鍵がチップセットによって生成されていれば、「ラッピングされたDEKをデバイスのメタデータに格納」ステップ628に進み、デバイスに直接DEKを格納する。例えば、DEK184をチップセット暗号化ストレージデバイス180のメタデータ182に格納する。そして、「マイグレーショントークンを用いてDWKをラッピング」ステップ630に進み、DWKをさらに、プラットフォーム非依存性のマイグレーショントークンを用いてラッピングして、図3のマイグレーション鍵350のようなマイグレーション鍵を生成する。そして、「マイグレーションパッケージをデバイスメタデータに格納」ステップ632に進み、マイグレーション鍵およびその他のマイグレーションデータを、マイグレーションパッケージとして、デバイスメタデータに格納する。例えば、マイグレーションパッケージ280Mは、チップセット暗号化ストレージデバイス180のメタデータ182内に格納される。デバイスの初期化はこうして、「デバイスは初期化済み」ステップ640への遷移で図示するように、完了する。
「チップセットによって生成された鍵?」判断ポイント626において、暗号鍵がチップセットによって生成されていない場合、「メタデータ格納領域はデバイス外で利用可能?」判断ポイント650に進む。デバイスメタデータを格納するための格納領域がデバイス外で、例えば、デバイス情報コンテナ等で利用可能な場合、「メタデータ格納領域にラッピングされた暗号鍵を格納」ステップ652に進む。ラッピングされた暗号鍵は、例えば、デバイス情報コンテナ、例えばデバイス情報コンテナ280または290に格納されるとしてよい。そして、「マイグレーショントークンを用いてDWKをラッピング」ステップ654に進み、マイグレーショントークンを用いてDWKをラッピングして、図3のマイグレーション鍵350のようなマイグレーション鍵を生成する。そして、「メタデータ格納領域にマイグレーションパッケージを格納」ステップ656に進み、マイグレーション鍵およびその他のマイグレーションデータを、例えば、マイグレーションパッケージ290Mのようなマイグレーションパッケージの一部として、フラッシュメモリ190のデータ領域198に格納する。そして、「デバイスは初期化済み」ステップ640に進み、デバイスの初期化が完了する。
「メタデータ格納領域はデバイス外で利用可能?」判断ポイント650において、デバイス外でメタデータ格納領域が利用可能でない場合、「ラッピングされた暗号鍵をデバイス上のメタデータに格納」ステップ628に移行する。ラッピングされたTDEKは、例えば、直接管理デバイス情報コンテナ280に格納されるTDEK282のように、デバイス上に直接格納される。そして、「ラッピングされた暗号鍵をデバイス上のメタデータに格納」ステップ628から、上述したように、「デバイスは初期化済み」ステップ640に進む。
「デバイス暗号鍵を生成?」の判断ポイント620において、暗号鍵を生成しないと判断されると、「デバイス暗号鍵を受け取ったか?」ステップ660に進む。デバイス初期化イベントの一部としてデバイス暗号鍵を受け取っている場合、「デバイスラッピング鍵(DWK)を用いて暗号鍵をラッピング」ステップ624に進む。デバイス初期化イベントの一部としてデバイス暗号鍵を受け取っていない場合、「デバイス初期化は失敗」ステップ670に進み、デバイスは初期化されない。
図7は、本発明の一実施形態に係る、デバイスのアンロックに関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。「プラットフォームに対してユーザを認証」ステップ710から開始され、プラットフォームに対するユーザのアクセスが、上述したように、認証される。「ユーザラッピング鍵を生成」ステップ720に進み、340aまたは340bのようなユーザラッピング鍵を生成する。そして、「ユーザアカウントメタデータのラッピングを解除」ステップ730に進み、図4を参照しつつ上述したように、ユーザアカウントメタデータのラッピングを解除する。そして、「デバイスラッピング鍵(DWK)のラッピングを解除」ステップ740に進み、デバイスラッピング鍵のラッピングを解除する。そして、「DEK/TDEKメタデータを取得」ステップ750に進み、図5を参照しつつ上述したようにDEK/TDEKのメタデータを取得する。そして、「DEK/TDEKのラッピングを解除」ステップ760に進み、デバイス暗号鍵DEK/TDEKのラッピングを解除する。そして、「デバイスをアンロック」ステップ770に進み、デバイスをアンロックする。
図8は、本発明の一実施形態に係る、プラットフォーム間でのデバイスのマイグレーションに関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。「管理者を認証」ステップ810から開始され、マイグレーションを実行したい管理者を、本明細書に記載するユーザ認証プロセスと同様の方法で、認証する。そして、「マイグレーショントークンを取得」ステップ820に進み、デバイスのマイグレーショントークンを取得する。一実施形態によると、マイグレーショントークンをリモートサーバから取得する。そして、「メタデータからマイグレーションパッケージを取得」ステップ830に進み、マイグレーションパッケージをメタデータから取得する。例えば、フラッシュメモリ190のデータ領域198からマイグレーションパッケージ290Mを取得するか、または、チップセット暗号化ストレージデバイス180のメタデータ182からマイグレーションパッケージ280Mを取得する。
そして、「デバイスラッピング鍵(DWK)のラッピングを解除」ステップ840に進み、デバイスラッピング鍵のラッピングを解除する。そして、「DEK/TDEKメタデータを取得」ステップ850に進み、DEK/TDEKのメタデータを、図5を参照しつつ上述したように、取得する。そして、「DEK/TDEKのラッピングを解除」ステップ860に進み、デバイス暗号鍵DEK/TDEKのラッピングを解除する。そして、「デバイスをアンロック」ステップ870に進み、デバイスをアンロックする。
図9は、本発明の一実施形態に係る、盗難にあったプラットフォームの処理に関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。「プラットフォームの盗難をアサート」ステップ910から開始され、管理エンジン(ME)130が、プラットフォームが盗難に遭った旨のアサーションを発行する。このアサーションは、例えば、図1のエンタープライズサービス162内の盗難検出サーバによって、ブロードキャストされるとしてよい。そして、「盗難プラットフォームイベントを配信」ステップ920に進み、盗難プラットフォームイベントが、盗難に遭ったプラットフォームに配信される。このイベントは、図1のエンタープライズサービス162内の盗難検出サーバによって生成および配信されるとしてよい。
「盗難プラットフォームイベントを配信」ステップ920から、「ポリシーによるとプラットフォーム盗難の際には鍵の削除が必要?」判断ポイント930に進み、エンタープライズポリシーでは盗難に遭ったプラットフォームの鍵を全て削除する必要があるか否か判断する。エンタープライズポリシーで鍵の削除が求められている場合には、「DEKを含むデバイスメタデータ、および、TDEKを含むその他のメタデータまたはデバイス情報コンテナを削除」ステップ940に進み、チップセット暗号化ストレージデバイス180のメタデータ182およびデバイス情報コンテナ280および290のようなデバイスメタデータも含め、全てのメタデータレポジトリから全ての鍵を削除する。鍵の削除は、鍵を含むコンテナ全体の削除を含むとしてよい。
「ポリシーによるとプラットフォーム盗難の際には鍵の削除が必要?」判断ポイント930において、ポリシーでは鍵の削除が必要ない場合、「他の盗難管理対策を講じる」ステップ950に進み、エンタープライズポリシーに従って盗難に遭ったプラットフォームに対して他の対策を講じるとしてよい。
図10は、本発明の一実施形態に係る、盗難にあったプラットフォームの回復に関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。「盗難に遭ったプラットフォームが所有者に戻る」ステップ1010から開始され、盗難に遭ったプラットフォームが所有者の元に戻ってくる。「プラットフォームに対して所有者を認証」ステップ1020に進み、プラットフォームに対して所有者の認証を行う。そして、「デバイスラッピング鍵(DWK)を含むマイグレーションパッケージのラッピングを解除」ステップ1030に進み、マイグレーションパッケージのラッピングを解除して、図3のDWK330のようなDWKを生成する。そして、「DEK/TDEKメタデータを取得」ステップ1040に進み、DEK/TDEKメタデータを、図5を参照しつつ上述したように、取得する。そして、「DEK/TDEKのラッピングを解除」ステップ1050に進み、デバイス暗号鍵DEK/TDEKのラッピングが解除される。そして、「デバイスをアンロック」ステップ1060に進み、デバイスがアンロックされる。
図11は、本発明の一実施形態に係る、プラットフォーム100のアクセス制御コンポーネントの動作を示すフローチャートである。「プラットフォームへのユーザアクセスを認証」ステップ1110において、プラットフォームに対してアクセスを要求しているユーザに関するユーザデータ、例えば、パスワード、バイオメトリクスデータ、またはスマートカード情報等の認証を、ユーザ認証モジュール212と身元情報管理ファームウェア239との組み合わせを参照しつつ上述したように実行する。この認証は、Microsoft Active DirectoryまたはLDAPサーバ等の身元情報管理サーバでユーザの身元情報を確認して、プラットフォーム100に対応付けられているストレージデバイスに格納されている企業データに対するアクセス権限をユーザが持つことを確かめることを含むとしてよい。ユーザの認証はさらに、プラットフォームに対応付けられているプラットフォームおよび/またはストレージデバイスが紛失または盗難に遭っていないことを盗難抑止ファームウェア235で確認することを含むとしてよい。
ユーザのデータが認証されてプラットフォームへのアクセスが確認されると、「プラットフォームに対応付けられたストレージデバイスへのユーザアクセスを認証」ステップ1120に進む。認証は、チップセット暗号化ストレージデバイス180および非チップセット暗号化ストレージデバイス172の両方に対するユーザアクセスについて、行われる。この確認は、ユーザのデータが上述したようにフラッシュメモリ190にあることを確かめることだけでなく、ユーザのデータがさらにチップセット暗号化ストレージデバイス180に格納されているデバイス情報コンテナ280にもあることを確かめることも含むとしてよい。プラットフォームに対応付けられているストレージデバイスにアクセスする権限をユーザが持つことを確認すると、対応付けられているストレージデバイスに格納されているデータにユーザをアクセスさせるためのプロセスが継続して実行される。
プラットフォームに対応付けられているストレージデバイスに対してユーザがアクセスできることが確認されると、「チップセット暗号化ストレージデバイスを復号化」ステップ1130に進む。チップセット暗号化ストレージデバイス180に格納されているデータの復号化は、チップセット暗号化ストレージデバイスのメタデータに格納されているデバイス暗号鍵(DEK)を用いて実行される。「暗号化コンテナ用の鍵を取得」ステップ1140に進み、鍵管理情報を含む暗号化コンテナの暗号鍵を格納する。上述したように、一実施形態によると、これらのコンテナ鍵は、図2および図3のフラッシュメモリ190のデータ領域198内のユーザ/コンテナメタデータ230のユーザアカウントメタデータ223から取得される。そして、「コンテナを復号化」ステップ1150に進み、図3を参照しつつ上述したように、コンテナ鍵220をさらに、セキュリティファームウェアメタデータを含むデバイス情報コンテナ280、および、非チップセット暗号化ストレージデバイス172用の一時デバイス暗号鍵(TDEK)292を含むデバイス情報コンテナ290の両方を復号化するべく用いる。
ステップ1130−1150においてチップセット暗号化ストレージデバイスおよびコンテナを復号した後、「他のデバイスの一時デバイス暗号鍵をコンテナから取得」ステップ1160に進む。上述したように、デバイス情報コンテナ290はさらに、プラットフォームのチップセットでは暗号化されていないデバイスの暗号鍵を含む。そして、「他のデバイスの一時デバイス暗号鍵を用いて他のストレージデバイスを復号化」ステップ1170に進む。ホスト暗号化ソフトウェア214のようなホスト暗号化ソフトウェアによって暗号化されたデータの場合は、元々の復号鍵はホスト暗号化ソフトウェアに転送されて、他のストレージデバイスに格納されているデータが復号化される。
図11を参照しつつ説明したステップは、プラットフォーム100に対応付けられているストレージデバイスに格納されているデータへのアクセスを制御する。本明細書に記載されているデータへのアクセスを制御するためのフレームワークおよびインフラストラクチャはさらに、プラットフォーム間でのデータおよびストレージデバイスのマイグレーションをサポートすると共に、鍵回復処理および盗難通知処理をサポートする。チップセット暗号化デバイスおよび非チップセット暗号化デバイスの両方の暗号鍵を管理する共通フレームワークを提供することによって、どちらのタイプのデバイスも、1回のマイグレーションイベント、回復イベント、または盗難効果抑止イベントで、マイグレーションさせることが可能となる。
さらに、ストレージデバイスに対応付けられているユーザ毎に暗号鍵を格納することによって、データおよび/またはストレージデバイスは、ユーザ単位の粒度で、マイグレーションおよび/または回復を行うことができる。対象となるプラットフォームのデータへのアクセスは、当該プラットフォームのユーザアカウント情報に選択されたユーザのみを含むことによって、これらの選択されたユーザに限定することができる。中央集権的な身元情報管理サービスは、対象となるプラットフォームへのアクセスが適切であるかを各ユーザについて確認するべく照合され得る。中央集権的な盗難管理サービスもまた、ストレージデバイスが盗難に遭っていないことを確認するべく利用され得る。フレームワークはUSBストレージデバイス等のスタンドアローンなストレージデバイスの暗号鍵も含むので、これらのスタンドアローンな暗号化デバイスに対するアクセスを、当該ストレージデバイスがプラットフォームに取り付けられていようといまいと、ディセーブルすることができる。このため、盗難に遭ったUSBデバイスは、正当なユーザがログインするまで、または、管理者が盗難通知を破棄するまで、ディセーブルされ得る。
図5は、本発明の一実施形態に係る、デバイスのアンロックに関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
図6は、本発明の一実施形態に係る、デバイスの初期化に関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
図7は、本発明の一実施形態に係る、デバイスに格納されているデータの暗号鍵を取得した後のデバイスのアンロックに関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
図8は、本発明の一実施形態に係る、デバイスのマイグレーションに関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
図9は、本発明の一実施形態に係る、盗難に遭ったプラットフォームの処理に関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
図10は、本発明の一実施形態に係る、盗難に遭ったプラットフォームの回復に関連する、図1の管理エンジン(ME)の動作を示すフローチャートである。
本明細書に記載するメカニズムの実施形態は、ハードウェア、ソフトウェア、ファームウェア、または、これらの実装方法の組み合わせによって実装されるとしてよい。本発明の実施形態は、少なくとも1つのプロセッサと、データストレージシステム(揮発性および不揮発性メモリおよび/またはストレージ素子を含む)と、少なくとも1つの入力デバイスと、少なくとも1つの出力デバイスとを備えるプログラム可能システムにおいて実行されるコンピュータプログラムとして実装され得る。
プログラムコードを入力データに適用して、本明細書に記載した機能を実行すると共に出力情報を生成するとしてよい。本発明の実施形態はさらに、本発明の動作を実行するための命令、または、本明細書に記載した構造、回路、装置、プロセッサ、および/または、システムの構成要素を定義するHDL等のデザインデータを含む機械アクセス可能媒体を含む。このような実施形態は、プログラム製品とも呼ばれる。
上述した機械アクセス可能格納媒体は、これらに限定されないが、機械またはデバイスによって製造または形成される有形の粒子の配置、例えば、ハードディスク等の格納媒体、フロッピー(登録商標)ディスクを含むその他の任意の種類のディスク、光ディスク、コンパクトディスクリードオンリーメモリ(CD−ROM)、書き換え可能コンパクトディスク(CD−RW)、および光磁気ディスク、リードオンリーメモリ(ROM)等の半導体デバイス、ダイナミックランダムアクセスメモリ(DRAM)等のランダムアクセスメモリ(RAM)、スタティックランダムアクセスメモリ(SRAM)、消去可能プログラム可能リードオンリーメモリ(EPROM:登録商標)、フラッシュプログラム可能メモリ(FLASH)、電気的消去可能プログラム可能リードオンリーメモリ(EEPROM(登録商標))、磁気カードまたは光カード、または電子命令を格納するのに適したその他の任意の種類の媒体を含むとしてよい。
出力情報は、公知の方法で、1以上の出力デバイスに適用されるとしてよい。本願の目的に鑑みれば、処理システムは、例えば、デジタルシグナルプロセッサ(DSP)、マイクロコントローラ、特定用途向け集積回路(ASIC)またはマイクロプロセッサ等のプロセッサを備えるシステムであればどのようなシステムをも含む。
プログラムは、処理システムとの通信を実現するべく、高級プロシージャ言語またはオブジェクト指向型プログラミング言語で実装されるとしてよい。プログラムはさらに、所望されれば、アセンブリ言語または機械言語で実装されるとしてもよい。尚、本明細書に記載するメカニズムの範囲は、特定のプログラミング言語に限定されるものではない。どの場合であっても、コンパイラ方式またはインタプリタ方式の言語であってよい。
本明細書では、プラットフォームに対応付けられるストレージデバイスに格納されているデータを包括的に保護するための方法およびシステムの実施形態を記載している。本発明の実施形態を具体的に図示および説明してきたが、本願の特許請求の範囲から逸脱することなく、多くの点で変更、変形および修正を加えることができるのは当業者には明らかである。従って、当業者であれば、本発明を幅広く解釈した場合にその範囲から逸脱することなく、変更および変形が可能であると想到するであろう。本願の特許請求の範囲は、本発明の真の範囲および精神に含まれる上述したような変更、変形および修正を全て網羅する。

Claims (15)

  1. 第1のプラットフォームに対応付けられている複数のストレージデバイスに格納されているデータに対するアクセスを制御する段階を備える方法であって、
    前記制御する段階は、前記第1のプラットフォームにアクセスするユーザを認証する段階を有し、
    前記第1のプラットフォームは、前記複数のストレージデバイスのうちの1つであり、前記第1のプラットフォームに結び付けられたコンテナ暗号鍵により暗号化された第1の暗号鍵を格納する第1のストレージデバイスと、前記複数のストレージデバイスのうちの1つである第2のストレージデバイスと、チップセット暗号化ハードウェアと、前記コンテナ暗号鍵、および前記コンテナ暗号鍵により暗号化され、第2の暗号鍵を格納する間接管理デバイス情報コンテナを格納するメモリとを有し、
    前記第1のストレージデバイスに格納されている第1のデータは、前記第1の暗号鍵を用いて前記チップセット暗号化ハードウェアによって暗号化されており、
    前記第2のストレージデバイスに格納されている第2のデータは、前記チップセット暗号化ハードウェアによって暗号化されているのではなく、別の暗号化メカニズムによって暗号化されており、
    前記第2のデータは、前記第2の暗号鍵を用いて暗号化されており、
    前記制御する段階はさらに、
    記メモリに格納されている前記コンテナ暗号鍵を取得する段階と、
    前記メモリから取得された前記コンテナ暗号鍵を用いて前記第1の暗号鍵を復号化する段階と、
    復号された前記第1の暗号鍵を用いて前記第1のストレージデバイスに格納された前記第1のデータを復号する復号化する段階と、
    前記コンテナ暗号鍵を用いて、前記メモリに格納された前記間接管理デバイス情報コンテナを復号化し、前記第2の暗号鍵を取得する段階と、
    前記第2の暗号鍵を用いて、前記第2のストレージデバイスに格納されている前記第2のデータを復号化する段階と、
    前記第1のデータおよび前記第2のデータに対するアクセスを前記ユーザに許可する段階と
    プラットフォーム非依存性トークンで前記第1の暗号鍵をラッピングしてマイグレーション鍵を生成する段階と、
    前記マイグレーション鍵を前記第1のプラットフォームに格納する段階と、
    前記プラットフォーム非依存性トークンを、前記第1のプラットフォーム上ではないセキュアなロケーションに格納する段階と、
    前記第1のストレージデバイスを、前記第1のプラットフォームとは異なる第2のプラットフォームにマイグレーションする段階と、
    前記プラットフォーム非依存性トークンおよび前記マイグレーション鍵を用いて、前記第2のプラットフォームで前記第1のデータを復号化する段階と
    を有する方法。
  2. プラットフォーム非依存性トークンで前記第2の暗号鍵をラッピングしてマイグレーション鍵を生成する段階と、
    前記マイグレーション鍵を前記第1のプラットフォームに格納する段階と、
    前記プラットフォーム非依存性トークンを、前記第1のプラットフォーム上ではないセキュアなロケーションに格納する段階と、
    前記第2のストレージデバイスを前記第2のプラットフォームにマイグレーションする段階と、
    前記プラットフォーム非依存性トークンおよび前記マイグレーション鍵を用いて、前記第2のプラットフォームで前記第2のデータを復号化する段階と
    をさらに備える請求項1に記載の方法。
  3. 第1のプラットフォームに対応付けられている複数のストレージデバイスに格納されているデータに対するアクセスを制御する段階を備える方法であって、
    前記制御する段階は、前記第1のプラットフォームにアクセスするユーザを認証する段階を有し、
    前記第1のプラットフォームは、前記複数のストレージデバイスのうちの1つであり、前記第1のプラットフォームに結び付けられたコンテナ暗号鍵により暗号化された第1の暗号鍵を格納する第1のストレージデバイスと、前記複数のストレージデバイスのうちの1つである第2のストレージデバイスと、チップセット暗号化ハードウェアと、前記コンテナ暗号鍵、および前記コンテナ暗号鍵により暗号化され、第2の暗号鍵を格納する間接管理デバイス情報コンテナを格納するメモリとを有し、
    前記第1のストレージデバイスに格納されている第1のデータは、前記第1の暗号鍵を用いて前記チップセット暗号化ハードウェアによって暗号化されており、
    前記第2のストレージデバイスに格納されている第2のデータは、前記チップセット暗号化ハードウェアによって暗号化されているのではなく、別の暗号化メカニズムによって暗号化されており、
    前記第2のデータは、前記第2の暗号鍵を用いて暗号化されており、
    前記制御する段階はさらに、
    前記メモリに格納されている前記コンテナ暗号鍵を取得する段階と、
    前記メモリから取得された前記コンテナ暗号鍵を用いて前記第1の暗号鍵を復号化する段階と、
    復号された前記第1の暗号鍵を用いて前記第1のストレージデバイスに格納された前記第1のデータを復号する復号化する段階と、
    前記コンテナ暗号鍵を用いて、前記メモリに格納された前記間接管理デバイス情報コンテナを復号化し、前記第2の暗号鍵を取得する段階と、
    前記第2の暗号鍵を用いて、前記第2のストレージデバイスに格納されている前記第2のデータを復号化する段階と、
    前記第1のデータおよび前記第2のデータに対するアクセスを前記ユーザに許可する段階と、
    プラットフォーム非依存性トークンで前記第2の暗号鍵をラッピングしてマイグレーション鍵を生成する段階と、
    前記マイグレーション鍵を前記第1のプラットフォームに格納する段階と、
    前記プラットフォーム非依存性トークンを、前記第1のプラットフォーム上ではないセキュアなロケーションに格納する段階と、
    前記第2のストレージデバイスを、前記第1のプラットフォームとは異なる第2のプラットフォームにマイグレーションする段階と、
    前記プラットフォーム非依存性トークンおよび前記マイグレーション鍵を用いて、前記第2のプラットフォームで前記第2のデータを復号化する段階と
    を有する方法。
  4. 盗難通知イベントに応じて前記第1のプラットフォームに対するアクセスを拒絶する段階、または、
    前記第1のプラットフォームから前記第1の暗号鍵および前記第2の暗号鍵を削除することによって、前記第1のプラットフォームに対する前記アクセスを拒絶する段階
    をさらに備える請求項1から請求項3のいずれか1つに記載の方法。
  5. 前記第1のプラットフォームに対する前記アクセスを拒絶する段階は、
    前記第1のプラットフォームの、前記第1の暗号鍵および前記第2の暗号鍵を含むマイグレーションパッケージに対するアクセスを拒絶する段階、または、
    前記第1のプラットフォームの、前記第1のストレージデバイスの第1のマイグレーション鍵および前記第2のストレージデバイスの第2のマイグレーション鍵を含むマイグレーションパッケージに対するアクセスを拒絶する段階
    を有する請求項4に記載の方法。
  6. 前記第1のプラットフォームに対する前記アクセスを拒絶する段階は、前記第1のプラットフォームのマイグレーションパッケージから、前記第1の暗号鍵および前記第2の暗号鍵のうち少なくとも1つを削除する段階を有する請求項4に記載の方法。
  7. 前記第1のプラットフォームに対する前記アクセスを拒絶する段階は、前記第1のプラットフォームのハードウェアをディセーブルする段階を有する請求項4に記載の方法。
  8. 前記第1のプラットフォームに対する前記アクセスを拒絶する段階は、前記間接管理デバイス情報コンテナに対するアクセスを拒絶する段階を有する請求項4に記載の方法。
  9. 請求項1から請求項8のいずれか1つに記載の方法に含まれる各段階をコンピュータに実行させるためのプログラム。
  10. 第1のプラットフォームに対応付けられている複数のストレージデバイスに格納されているデータに対するアクセスを制御する制御モジュールと、
    前記第1のプラットフォームにアクセスするユーザを認証する認証モジュールと
    を備えるシステムであって、
    前記第1のプラットフォームは、前記複数のストレージデバイスのうちの1つである第1のストレージデバイス、前記複数のストレージデバイスのうち1つである第2のストレージデバイス、チップセット暗号化ハードウェア、およびメモリを有し、
    前記第1のストレージデバイスは、前記第1のプラットフォームに結び付けられたコンテナ暗号鍵により暗号化された第1の暗号鍵を格納し、
    前記メモリは、前記コンテナ暗号鍵、および前記コンテナ暗号鍵により暗号化され、第2の暗号鍵を格納する間接管理デバイス情報コンテナを格納し、
    前記第1のストレージデバイスで格納されている第1のデータは、前記第1の暗号鍵を用いて前記チップセット暗号化ハードウェアによって暗号化されており、
    前記第2のストレージデバイスに格納されている第2のデータは、前記チップセット暗号化ハードウェアによって暗号化されているではなく、別の暗号化メカニズムによって暗号化されており、
    前記第2のデータは、前記第2の暗号鍵を用いて暗号化されており、
    前記システムはさらに、
    記メモリに格納されている前記コンテナ暗号鍵を取得する取得モジュールと、
    前記メモリから取得された前記コンテナ暗号鍵を用いて前記第1暗号鍵を復号化し、復号化された前記第1暗号鍵を用いて前記第1のストレージデバイスに格納されている前記第1のデータを複合化する第1の復号化モジュールと、
    前記コンテナ暗号鍵を用いて、前記メモリに格納されている前記間接管理デバイス情報コンテナを復号化し、前記第2の暗号鍵を取得する第2の復号化モジュールと、
    前記第2の暗号鍵を用いて前記第2のストレージデバイスに格納されている前記第2のデータを復号化する利用モジュールと、
    前記第1のデータおよび前記第2のデータに対するアクセスを前記ユーザに許可する許可モジュールと
    プラットフォーム非依存性トークンで前記第1の暗号鍵をラッピングしてマイグレーション鍵を生成するラッピングモジュールと、
    前記マイグレーション鍵を前記第1のプラットフォームに格納する格納モジュールと、
    前記プラットフォーム非依存性トークンを、前記第1のプラットフォーム上ではないセキュアなロケーションに格納する第2の格納モジュールと、
    前記第1のストレージデバイスを、前記第1のプラットフォームとは異なる第2のプラットフォームにマイグレーションするマイグレーションモジュールと、
    前記プラットフォーム非依存性トークンおよび前記マイグレーション鍵を用いて、前記第2のプラットフォームで前記第1のデータを復号化する第3の復号化モジュールと
    を備えるシステム。
  11. プラットフォーム非依存性トークンで前記第2の暗号鍵をラッピングしてマイグレーション鍵を生成するラッピングモジュールと、
    前記マイグレーション鍵を前記第1のプラットフォームに格納する格納モジュールと、
    前記プラットフォーム非依存性トークンを、前記第1のプラットフォーム上ではないセキュアなロケーションに格納する第2の格納モジュールと、
    前記第2のストレージデバイスを前記第2のプラットフォームにマイグレーションするマイグレーションモジュールと、
    前記プラットフォーム非依存性トークンおよび前記マイグレーション鍵を用いて、前記第2のプラットフォームで前記第2のデータを復号化する第3の復号化モジュールと
    をさらに備える請求項10に記載のシステム。
  12. 第1のプラットフォームに対応付けられている複数のストレージデバイスに格納されているデータに対するアクセスを制御する制御モジュールと、
    前記第1のプラットフォームにアクセスするユーザを認証する認証モジュールと
    を備えるシステムであって、
    前記第1のプラットフォームは、前記複数のストレージデバイスのうちの1つである第1のストレージデバイス、前記複数のストレージデバイスのうち1つである第2のストレージデバイス、チップセット暗号化ハードウェア、およびメモリを有し、
    前記第1のストレージデバイスは、前記第1のプラットフォームに結び付けられたコンテナ暗号鍵により暗号化された第1の暗号鍵を格納し、
    前記メモリは、前記コンテナ暗号鍵、および前記コンテナ暗号鍵により暗号化され、第2の暗号鍵を格納する間接管理デバイス情報コンテナを格納し、
    前記第1のストレージデバイスで格納されている第1のデータは、前記第1の暗号鍵を用いて前記チップセット暗号化ハードウェアによって暗号化されており、
    前記第2のストレージデバイスに格納されている第2のデータは、前記チップセット暗号化ハードウェアによって暗号化されているではなく、別の暗号化メカニズムによって暗号化されており、
    前記第2のデータは、前記第2の暗号鍵を用いて暗号化されており、
    前記システムはさらに、
    前記メモリに格納されている前記コンテナ暗号鍵を取得する取得モジュールと、
    前記メモリから取得された前記コンテナ暗号鍵を用いて前記第1の暗号鍵を復号化し、復号化された前記第1の暗号鍵を用いて前記第1のストレージデバイスに格納されている前記第1のデータを複合化する第1の復号化モジュールと、
    前記コンテナ暗号鍵を用いて、前記メモリに格納されている前記間接管理デバイス情報コンテナを復号化し、前記第2の暗号鍵を取得する第2の復号化モジュールと、
    前記第2の暗号鍵を用いて前記第2のストレージデバイスに格納されている前記第2のデータを復号化する利用モジュールと、
    前記第1のデータおよび前記第2のデータに対するアクセスを前記ユーザに許可する許可モジュールと、
    プラットフォーム非依存性トークンで前記第2の暗号鍵をラッピングしてマイグレーション鍵を生成するラッピングモジュールと、
    前記マイグレーション鍵を前記第1のプラットフォームに格納する格納モジュールと、
    前記プラットフォーム非依存性トークンを、前記第1のプラットフォーム上ではないセキュアなロケーションに格納する第2の格納モジュールと、
    前記第2のストレージデバイスを、前記第1のプラットフォームとは異なる第2のプラットフォームにマイグレーションするマイグレーションモジュールと、
    前記プラットフォーム非依存性トークンおよび前記マイグレーション鍵を用いて、前記第2のプラットフォームで前記第2のデータを復号化する第3の復号化モジュールと
    を備えるシステム。
  13. 盗難通知イベントに応じて前記第1のプラットフォームに対するアクセスを拒絶する拒絶モジュール、または、
    前記第1のプラットフォームから前記第1の暗号鍵および前記第2の暗号鍵を削除する削除モジュール
    をさらに備える請求項10から請求項12のいずれか1つに記載のシステム。
  14. 前記第1のプラットフォームの、前記第1の暗号鍵および前記第2の暗号鍵を含むマイグレーションパッケージに対するアクセスを拒絶する第2の拒絶モジュール、または、
    前記第1のプラットフォームの、前記第1のストレージデバイスの第1のマイグレーション鍵および前記第2のストレージデバイスの第2のマイグレーション鍵を含むマイグレーションパッケージに対するアクセスを拒絶する第2の拒絶モジュール
    をさらに備える請求項13に記載のシステム。
  15. 前記第1のプラットフォームのハードウェアをディセーブルするディセーブルモジュール、または
    前記間接管理デバイス情報コンテナに対するアクセスを拒絶する第2の拒絶モジュール
    をさらに備える請求項13に記載のシステム。
JP2009293557A 2008-12-31 2009-12-24 暗号化されたストレージデバイスについてのチップセット鍵管理サービスの利用の強制 Expired - Fee Related JP4880029B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/319,210 2008-12-31
US12/319,210 US8103883B2 (en) 2008-12-31 2008-12-31 Method and apparatus for enforcing use of danbury key management services for software applied full volume encryption

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2011261670A Division JP5021838B2 (ja) 2008-12-31 2011-11-30 暗号化されたストレージデバイスについてのチップセット鍵管理サービスの利用の強制

Publications (2)

Publication Number Publication Date
JP2010191946A JP2010191946A (ja) 2010-09-02
JP4880029B2 true JP4880029B2 (ja) 2012-02-22

Family

ID=42062402

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2009293557A Expired - Fee Related JP4880029B2 (ja) 2008-12-31 2009-12-24 暗号化されたストレージデバイスについてのチップセット鍵管理サービスの利用の強制
JP2011261670A Expired - Fee Related JP5021838B2 (ja) 2008-12-31 2011-11-30 暗号化されたストレージデバイスについてのチップセット鍵管理サービスの利用の強制

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2011261670A Expired - Fee Related JP5021838B2 (ja) 2008-12-31 2011-11-30 暗号化されたストレージデバイスについてのチップセット鍵管理サービスの利用の強制

Country Status (3)

Country Link
US (2) US8103883B2 (ja)
EP (1) EP2207123A3 (ja)
JP (2) JP4880029B2 (ja)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8588422B2 (en) * 2009-05-28 2013-11-19 Novell, Inc. Key management to protect encrypted data of an endpoint computing device
US20110154023A1 (en) * 2009-12-21 2011-06-23 Smith Ned M Protected device management
US9135471B2 (en) * 2010-03-10 2015-09-15 Dell Products L.P. System and method for encryption and decryption of data
US8930713B2 (en) * 2010-03-10 2015-01-06 Dell Products L.P. System and method for general purpose encryption of data
US8312296B2 (en) 2010-03-10 2012-11-13 Dell Products L.P. System and method for recovering from an interrupted encryption and decryption operation performed on a volume
US8856550B2 (en) * 2010-03-10 2014-10-07 Dell Products L.P. System and method for pre-operating system encryption and decryption of data
US8918641B2 (en) * 2011-05-26 2014-12-23 Intel Corporation Dynamic platform reconfiguration by multi-tenant service providers
US8707019B2 (en) * 2011-07-02 2014-04-22 Intel Corporation Component update using management engine
US10102383B2 (en) * 2011-08-19 2018-10-16 Quintessencelabs Pty Ltd. Permanently erasing mechanism for encryption information
US8661527B2 (en) 2011-08-31 2014-02-25 Kabushiki Kaisha Toshiba Authenticator, authenticatee and authentication method
US9519784B2 (en) 2011-09-30 2016-12-13 Hewlett-Packard Development Company, L.P. Managing basic input/output system (BIOS) access
US9092957B2 (en) 2011-12-22 2015-07-28 Intel Corporation Always-available embedded theft reaction subsystem
KR101615571B1 (ko) * 2011-12-22 2016-04-26 인텔 코포레이션 상시 가용성 임베디드 도난 반응 서브 시스템
WO2013095584A1 (en) 2011-12-22 2013-06-27 Intel Corporation Always-available embedded theft reaction subsystem
EP2795512A4 (en) 2011-12-22 2016-01-06 Intel Corp STILL AVAILABLE EMBEDDED THEFT REACTION SYSTEM
US9507918B2 (en) 2011-12-22 2016-11-29 Intel Corporation Always-available embedded theft reaction subsystem
EP2795509A4 (en) 2011-12-22 2015-09-02 Intel Corp STILL AVAILABLE EMBEDDED THEFT REACTION SYSTEM
US9507965B2 (en) 2011-12-22 2016-11-29 Intel Corporation Always-available embedded theft reaction subsystem
WO2013095583A1 (en) 2011-12-22 2013-06-27 Intel Corporation Always-available embedded theft reaction subsystem
US9454678B2 (en) 2011-12-22 2016-09-27 Intel Corporation Always-available embedded theft reaction subsystem
EP2795516A4 (en) 2011-12-22 2015-09-02 Intel Corp INCORPORATED FLIGHT REACTION SUBSYSTEM ALWAYS AVAILABLE
EP2795520A4 (en) 2011-12-22 2015-09-02 Intel Corp INCORPORATED FLIGHT REACTION SUBSYSTEM ALWAYS AVAILABLE
EP2795514A4 (en) 2011-12-22 2015-12-30 Intel Corp INCORPORATED FLIGHT REACTION SUBSYSTEM ALWAYS AVAILABLE
US9245143B2 (en) * 2012-02-09 2016-01-26 Microsoft Technology Licensing, Llc Security policy for device data
US10079678B2 (en) 2012-07-24 2018-09-18 Intel Corporation Providing access to encrypted data
US8938796B2 (en) 2012-09-20 2015-01-20 Paul Case, SR. Case secure computer architecture
DE102012022064A1 (de) * 2012-11-09 2014-05-15 Thomas Klimpel System und Verfahren zur Wiedergabe von Musikstücken und/oder Multimediadaten
US9225696B2 (en) 2012-12-19 2015-12-29 Stmicroelectronics S.R.L. Method for different users to securely access their respective partitioned data in an electronic apparatus
US9448941B1 (en) * 2012-12-31 2016-09-20 Emc Corporation System and method for cache management
US8904504B2 (en) 2013-01-31 2014-12-02 Netlq Corporation Remote keychain for mobile devices
US8995658B2 (en) * 2013-02-13 2015-03-31 Honeywell International Inc. Physics-based key generation
US20140237258A1 (en) * 2013-02-20 2014-08-21 Kabushiki Kaisha Toshiba Device and authentication method therefor
US9613201B1 (en) * 2013-09-30 2017-04-04 EMC IP Holding Company LLC Access control by a mobile device using an image
US9304941B2 (en) * 2014-02-27 2016-04-05 Mangstor, Inc. Self-encrypting flash drive
US10290231B2 (en) * 2014-03-13 2019-05-14 Truinject Corp. Automated detection of performance characteristics in an injection training system
US9411975B2 (en) 2014-03-31 2016-08-09 Intel Corporation Methods and apparatus to securely share data
CN106162631A (zh) * 2015-04-14 2016-11-23 中兴通讯股份有限公司 一种安全通信的方法、装置和系统
CN105404470B (zh) * 2015-10-27 2018-04-24 浪潮电子信息产业股份有限公司 数据存储方法及安全装置、数据存储系统
US9875113B2 (en) * 2015-12-09 2018-01-23 Quanta Computer Inc. System and method for managing BIOS setting configurations
US10849688B2 (en) 2016-03-02 2020-12-01 Truinject Corp. Sensory enhanced environments for injection aid and social training
US10171235B2 (en) * 2016-05-19 2019-01-01 Nxp B.V. User-initiated migration of encryption keys
US20190251263A1 (en) * 2016-07-29 2019-08-15 Hewlett-Packard Development Company, L.P. Unlocking machine-readable storage devices using a user token
WO2018136901A1 (en) 2017-01-23 2018-07-26 Truinject Corp. Syringe dose and position measuring apparatus
CN110915161B (zh) 2017-07-12 2023-05-02 惠普发展公司,有限责任合伙企业 计算设备、存储器设备迁移方法和系统
US20190138236A1 (en) * 2017-11-09 2019-05-09 Dell Products, Lp System and Method to Reserve Persistent Memory Space in an NVDIMM for NVDIMM Namespace Support
KR102549346B1 (ko) * 2018-07-24 2023-06-28 삼성전자주식회사 솔리드 스테이트 드라이브 및 그의 메타 데이터 액세스 방법
CN109921902B (zh) 2019-03-22 2020-10-23 创新先进技术有限公司 一种密钥管理方法、安全芯片、业务服务器及信息系统
US11909859B2 (en) * 2020-06-02 2024-02-20 Sap Se Removing access to blockchain data

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5623546A (en) * 1995-06-23 1997-04-22 Motorola, Inc. Encryption method and system for portable data
US5818939A (en) 1996-12-18 1998-10-06 Intel Corporation Optimized security functionality in an electronic system
US6249866B1 (en) * 1997-09-16 2001-06-19 Microsoft Corporation Encrypting file system and method
US20030204732A1 (en) * 2002-04-30 2003-10-30 Yves Audebert System and method for storage and retrieval of a cryptographic secret from a plurality of network enabled clients
US7272231B2 (en) * 2003-01-27 2007-09-18 International Business Machines Corporation Encrypting data for access by multiple users
EP1719036B1 (en) 2004-01-06 2010-10-20 Thomson Licensing Secure porting of information from one device to another
JP4566668B2 (ja) * 2004-09-21 2010-10-20 株式会社日立製作所 記憶階層を有する計算機システムにおける暗号復号管理方法
JP2008117253A (ja) 2006-11-07 2008-05-22 Hitachi Ltd 記憶装置システムと計算機システムおよびその処理方法
JP2008269179A (ja) 2007-04-18 2008-11-06 Hitachi Ltd 計算機システム及び管理端末と記憶装置並びに暗号管理方法

Also Published As

Publication number Publication date
US8281135B2 (en) 2012-10-02
US20120084555A1 (en) 2012-04-05
US8103883B2 (en) 2012-01-24
JP5021838B2 (ja) 2012-09-12
US20100169669A1 (en) 2010-07-01
JP2010191946A (ja) 2010-09-02
JP2012064237A (ja) 2012-03-29
EP2207123A2 (en) 2010-07-14
EP2207123A3 (en) 2010-09-22

Similar Documents

Publication Publication Date Title
JP4880029B2 (ja) 暗号化されたストレージデバイスについてのチップセット鍵管理サービスの利用の強制
US10547604B2 (en) Information recording apparatus with shadow boot program for authentication with a server
CN112074836B (zh) 通过可信执行环境保护数据的设备和方法
RU2557756C2 (ru) Администрирование защищенными устройствами
US7890993B2 (en) Secret file access authorization system with fingerprint limitation
US7725703B2 (en) Systems and methods for securely booting a computer with a trusted processing module
KR101471379B1 (ko) 플랫폼 자원들의 도메인-인증 제어
JP5094365B2 (ja) ハード・ディスク・ドライブ
WO2009095413A2 (en) Method and system for encrypted file access
CN102948114A (zh) 用于访问加密数据的单次使用认证方法
WO2013107362A1 (zh) 一种保护数据的方法和系统
WO2011148224A1 (en) Method and system of secure computing environment having auditable control of data movement
US11838282B2 (en) Information recording apparatus with server-based user authentication for accessing a locked operating system storage
CN117579291A (zh) 一种云原生多云管理方法、系统、电子设备和存储介质
KR101387939B1 (ko) 백업용 스토리지 제어 시스템
KR101386606B1 (ko) 백업용 스토리지 제어 방법
Smith Storage Protection with Intel® Anti-Theft Technology-Data Protection (Intel® AT-d)
Wynne et al. Securing Data at Rest.

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110712

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111012

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111101

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111130

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20141209

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees