JP2018537785A - チェーン接続セキュリティシステム - Google Patents

チェーン接続セキュリティシステム Download PDF

Info

Publication number
JP2018537785A
JP2018537785A JP2018529648A JP2018529648A JP2018537785A JP 2018537785 A JP2018537785 A JP 2018537785A JP 2018529648 A JP2018529648 A JP 2018529648A JP 2018529648 A JP2018529648 A JP 2018529648A JP 2018537785 A JP2018537785 A JP 2018537785A
Authority
JP
Japan
Prior art keywords
subsystem
certificate
authentication
customer
host
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.)
Granted
Application number
JP2018529648A
Other languages
English (en)
Other versions
JP6591678B2 (ja
Inventor
カンパーニャ、マシュー・ジョン
ルビン、グレゴリー・アラン
ブランドウィン、エリック・ジェーソン
ウィルソン、マシュー・ショーン
アイラック、クリスティアン・エム.
Original Assignee
アマゾン・テクノロジーズ、インコーポレイテッド
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 アマゾン・テクノロジーズ、インコーポレイテッド filed Critical アマゾン・テクノロジーズ、インコーポレイテッド
Publication of JP2018537785A publication Critical patent/JP2018537785A/ja
Application granted granted Critical
Publication of JP6591678B2 publication Critical patent/JP6591678B2/ja
Active 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/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2153Using hardware token as a secondary aspect

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

段階的な証明書発行手法は、遠隔環境で実行中の仮想マシンを有するカスタマに対して、これらのマシンの仮想イメージが原始状態にあり、信頼できる実行環境で実行中である旨の保証を提供する。環境は、それぞれが独自の暗号境界、安全な記憶装置、及び信頼できる計算機能を有する複数のサブシステムに分けることができる。信頼できる制限付きサブシステムは、ホストコンピューティングデバイスのメインシステムで実行中の仮想マシンのために管理タスクを処理できる。制限付きシステムは、証明機関から証明書を受信し、信用証明書をメインサブシステムに提供するために証明機関としての機能を果たすことができる。証明要求の受信時、サブシステムは、証明書チェーンだけではなくそれぞれの信用証明書も使用し、認証情報を提供できる。適切な信用証明書を有するエンティティは、応答からシステムの状態を判断し、状態が予想通りであることを検証できる。
【選択図】図3

Description

インターネット等のネットワークを介してますます多くのアプリケーション及びサービスが利用できるようになるにつれ、ますます多くのコンテンツプロバイダ、アプリケーションプロバイダ、及びサービスプロバイダがクラウドコンピューティング等の技術に注意を向けている。一般的に、クラウドコンピューティングはウェブサービス等のサービスを通じで電子リソースにアクセスを提供する手法であり、それらのサービスをサポートするために使用されるハードウェア及び/またはソフトウェアは、サービスのニーズをいつでも満たすために動的に拡張できる。カスタマは、通常、クラウドを通してリソースを賃貸する、賃借する、またはそれ以外の場合リソースに対するアクセスの代金を支払い、これによりカスタマはこれらのリソースへのアクセスを提供するためにハードウェア及びソフトウェアを購入し、維持する必要はない。係る手法の潜在的に不利な点は、少なくともカスタマの視点からは、リソースが通常それらのリソースのプロバイダの制御下にあり、したがってカスタマが直接的に制御できない点である。さらに、リソースは多くの場合他のカスタマと共用され、これによりデータ、ソフトウェア、ならびにリソースのセキュリティ及び完全性が損なわれる場合がある。
本開示に従った種々の実施形態を、図面を参照して説明する。
種々の実施形態を実装できる例の環境を示す。 種々の実施形態に従って使用できる複数のゲスト仮想マシンを実行する仮想マシンマネージャの例の構成を示す。 種々の実施形態に従って活用できる、信頼できるコプロセッサを含む例の環境を示す。 種々の実施形態に従って活用できる例の証明書発行プロセスを示す。 種々の実施形態に従って活用できる例の認証プロセスを示す。 種々の実施形態に従って活用できる例の認証プロセスを示す。 種々の実施形態に従って活用できる別の例の認証プロセスを示す。 種々の実施形態に従って活用できる別の例の認証検証プロセスを示す。 種々の実施形態に従って活用できるコンピューティングデバイスの例の構成要素を示す。
本開示の種々の実施形態に係るシステム及び方法は、共用コンピューティング環境においてセキュリティを管理する従来の手法で経験される上述の欠陥及び他の欠陥の1つ以上を克服し得る。特に、種々の実施形態は、遠隔環境で実行中の仮想マシンを有するカスタマに対して、これらのマシンの仮想イメージ(複数可)が原始状態にあり、信頼できる実行環境で実行中である旨の保証を提供する。特に、種々の実施形態は、環境が、制限されたサブシステム(l−sys)及びメインサブシステム(m−sys)等のサブシステムに論理的に分けられる段階的な証明書発行手法を活用し、l−sysはm−sysで実行中の仮想マシンのために管理プロセスをホストできる。l−sysは、例えば信頼できるコプロセッサを有する周辺装置を使用して提供できる。一方、m−sysは未処理のホストコンピューティングデバイスによって提供できる。l−sysはm−sysよりも高いレベルの信頼を有し、m−sysに物理的に接続されているので、l−sysは証明機関から証明書を受信することができ、m−sysに信用証明書を提供することができ、それによりl−sysはm−sysのための証明機関としての機能を果たす。認証段階の間、所望される認証を提供するために、例えば、各サブシステムのための関連する情報をハッシュし、証明のチェーンと結合することができる。関連情報は、サブシステムごとの信用証明書だけではなく適切な識別子も含む場合がある。情報を受信するエンティティは、それぞれのカスタママシンの仮想イメージが原始状態にあり、信頼できる実行環境で実行中である旨の保証を提供するために、適切な信用証明書を使用してシステムのために状態情報を抽出し、情報が予想通りであることを検証できる。
種々の他の適用、プロセス、及び用途は、種々の実施形態に関して以下に提示される。
図1は、種々の実施形態の態様を実施できる例の環境100を示す。この例では、ユーザーはコンピューティングデバイス102を活用して、少なくとも1つのネットワーク104全体で、受信される呼び出しまたは要求を、他の係るオプションの中でデータセンタまたは「クラウド環境」等の共用リソース環境106に提出できる。コンピューティングデバイス102は、パーソナルコンピュータ、携帯電話、ハンドヘルドメッセージングデバイス、ラップトップコンピュータ、セットトップボックス、パーソナルデータアシスタント、電子ブックリーダー等を含んでよい任意の適切なデバイスを含む場合がある。少なくとも1つのネットワーク104は、イントラネット、インターネット、セルラーネットワーク、ローカルエリアネットワーク、もしくは任意の他の係るネットワーク、またはその組合せを含む、任意の適切な有線ネットワーク及び/または無線ネットワークを含む場合がある。係るシステムのために使用される構成要素は、選択されるネットワーク及び/または環境の種類に少なくとも部分的に依存する場合がある。係るネットワークを介して通信するためのプロトコル及び構成要素は周知であり、本明細書において詳細に説明されない。
この例のリソース環境106は、アプリケーションプログラミングインタフェース(API)、ルータ、スイッチ、ウェブサーバ、及び既知のまたはユーザーコンピューティングデバイス102から環境の適切なリソースに通信の経路を決定するために使用される他の係る構成要素等の構成要素を含んでよいインタフェース層118を含む。この例では、リソース環境106はいくつかのラック108を含み、各ラックは、本例の実施形態での任意選択のラックサポートコンピューティングシステム116だけではなく、いくつかのホストコンピューティングデバイス110も含む。示されているラック108の1つの上のホストコンピューティングシステム110は、ホストコンピューティングシステム上の仮想マシンと関連付けられた別個の仮想マシンマネージャ112だけではなく、この例の1つ以上の仮想マシン114もそれぞれホストする。仮想マシンマネージャ(VMM)は、それぞれのホストデバイスで仮想マシン(VM)を管理し、仮想化の種々の態様を処理するタスクを課される。各仮想マシン114は、ユーザーの代わりに1つ以上のタスクを実行するための独立したコンピューティングリソースとしての機能を果たすことができ、仮想マシンはユーザーの専用リソースとして機能する。また、環境は、別個の仮想マシンを含まないが、それにも関わらずそれぞれ1人以上のユーザーのためのコンピューティングリソースとしての機能を果たす追加のホストコンピューティングシステムを含む場合もある。ラックサポートコンピューティングシステム116は、おそらく環境106に位置する他のコンピューティングシステムに対してだけではなく、そのラックに対してもローカルな他のコンピューティングシステムに種々のユーティリティサービス(例えば、ラックに対してローカルな他のコンピューティングシステム等によって実行されるプログラム実行の、及び/または非ローカルブロックデータストレージアクセスの長期プログラム記憶、測定、及び他のモニタリング等)を提供してよい。また、各コンピューティングシステムは、例えば種々の他の構成要素だけではなく実行プログラムによっても作成されるまたはそれ以外の場合使用されるプログラム及び/またはデータのローカルコピーを記憶するために、1つ以上のローカル接続型記憶装置(不図示)を有してもよい。
図1の例が説明のために簡略化されていること、ならびにホストコンピューティングシステム及び他のデバイスの数及び組織が、図1に示されているものよりもはるかに大きい場合があることが理解される。例えば、1つの例示的な実施形態として、クラウド環境には約数万のコンピューティングシステムがあってよく、それらのコンピューティングシステムの少なくとも一部は、それぞれ複数の仮想マシンをホストしてよいホストコンピューティングシステムである。
所与のホストマシンで複数のゲスト仮想マシン(VM)またはゲストオペレーティングシステム(OS)を同時に操作するために、いくつかの仮想化技術を使用できる。図2は、種々の実施形態に従ってハイパーバイザ等の仮想マシンマネージャ(VMM)を使用し、1つの仮想化技術を活用することの例200を示す。ホストコンピューティングデバイス202のハードウェア204(例えば、中央処理装置及び他の係る構成要素)は、「地金」またはネイティブハイパーバイザの場合でのように、直接的にハードウェア204で実行中のVMM206とインタフェースをとることができる。係る目的に役立つハイパーバイザの例は、Xen、Hyper−V(商標登録)等を含む。ハイパーバイザは、通常、マシン上の他のいかなるソフトウェアよりもより高く、より特権をもったプロセッサ状態で実行し、メモリ管理及びプロセッサスケジューリング等のサービスを従属する層及び/またはドメインに提供する。係る層及び/またはドメインの最も特権をもった層及び/またはドメインは、サービスドメイン層に常駐する。該サービスドメイン層は、ゲスト仮想マシン210、212、214のドメイン、または異機種環境にあってよい(つまり、互いと異なるオペレーティングシステムを実行する)他のオペレーティングシステム等のより低い特権のドメインの動作及び機能性だけではなく、ハイパーバイザ206の動作及び機能性も構成するための管理オペレーティングシステムを含んでよいホストドメイン208を含んでよい。ホストドメイン208(例えば、DOM−0)は、ハイパーバイザ206を介してホストコンピューティングデバイス202のハードウェアリソース204に直接的にアクセスし得る。一方、ゲスト仮想マシンドメイン210、212、214は直接的にアクセスし得ない。
ある特定の実施形態では、種々の動作モードがある場合がある。例えば、ホストコンピューティングデバイスでマイクロコードを更新するために、ホストコンピューティングデバイスは、例えばシステム管理割り込み(SMI)を受信して通常のハイパーバイザ実行を中断することによって、信頼できるソースから更新を受信し、システム管理モード(SMM)に入ることができる。SMMに入ることにより、プロセッサの単一物理コア(例えば、ブートストラッピングコア)を除くすべての物理プロセッサコアの実行を、少なくとも一部の従来の設計で一時停止させる。実行中のままである単一物理コアは、更新を適用することを担う。一部の実施形態では、プロセッサが、物理コアの実行を一時停止する前にSMIまたは他の割り込み信号を検出したときにプロセッサが実行していた特定の命令のための更新のすべての実行を終了することが保証されてよい。(例えば、ファームウェア、ソフトウェア、またはマイクロコードのための)受信された更新は、例えばサービスプロバイダまたはプロセッサ製造メーカ等の信頼できるソースによって署名及び/または暗号化できる。一例では、更新は、更新の真正性を保証するために秘密鍵または信頼できるソースの他の係る信用証明書を使用し、署名できる。更新が秘密鍵を使用し、署名される場合、ホストコンピューティングデバイスはパッチを適用する前に更新の署名を確証する必要がある場合がある。一部の実施形態では、署名を検証するために使用される公開鍵は、ホストコンピューティングデバイス上のトラステッドプラットフォームモジュール(TPM)(不図示)に記憶できる。一部の実施形態では、更新は非対称暗号または対称暗号を使用し、暗号化できる。例えば、更新は、更新の秘匿性を保証するために公開鍵を使用し、暗号化されてよい。更新が暗号化される場合、次いで更新を取り扱うあらゆる中間関係者は、彼らが更新を解読するために使用される秘密鍵にアクセスできない限り、更新を読み取ることまたはその内容を確かめることはできない。更新が暗号化される場合、次いで更新を解読するための秘密鍵は、上述したように、更新を検証するための公開鍵と同様に、TPMに記憶できる。更新が認証される及び/または解読されると、更新はホストコンピューティングデバイス202に適用できる。更新を適用するためにSMMが使用される場合、次いで更新を適用する命令はSMIハンドラで実施できる、またはSMIハンドラはハイパーバイザに事前設定されたパッチ機能を暗号学的に検証し、呼び出すことができる。しかしながら、係る手法の潜在的な不都合な点は、1人以上の外部ユーザーに公開されるホストマシン上の仮想マシンマネージャ(VMM)が不正にアクセスされる場合がある点である。結果として、ホストコンピューティングデバイス202上のゲスト仮想マシン(VM)210、212、214の1つは、ハイパーバイザ206を通してホストハードウェア204のTPMに潜在的にアクセスできる。
種々の実施形態による手法は、カスタマの秘密、鍵、安全なデータ、及び他の係るオブジェクトがその環境の中で十分に守られていること、ならびに環境の意図されないまたは予想外の修正が発生していないことを保証しつつ、係る環境におけるセキュリティを改善しようと試みることができる。図3は、係るセキュリティを提供するために使用できる例の環境300を示す。類似する構成要素の参照番号は、説明を簡略にするために図の間で引き継ぐことができるが、特に明記しない限り、係る使用が種々の実施形態の範囲の限定として解釈されるべきではないことに留意されたい。この例では、ホストコンピューティングデバイス202は、信頼できるコプロセッサ304、つまりVMM206及びホストマシンの他の構成要素と通信できる安全なコプロセッサを含む(または受け入れることができる)。信頼できるコプロセッサ304は、例えばホストコンピューティングデバイス202から取り外しできるPCIデバイス等の周辺装置を介して提供できる。信頼できるコプロセッサは、1つ以上のプロセッサ、メモリ、1つ以上のインタフェース、及び周辺装置または追加のプロセッサを係るシステムに提供するために既知の任意の他の構成要素または接続を含む場合がある。一実施形態では、信頼できるコプロセッサは、特定のファームウェアを含む別個のPCIEカードの形をとる独立したハードウェア構成要素である。信頼できるコプロセッサの構成により、該コプロセッサはカスタマVMと関連付けられた信頼境界、暗号境界、信頼範囲、または信頼できる孤立領域の中にあると論理的に見なすことができる。少なくとも一部の実施形態では、ペリフェラルカードは、リソース環境のプロバイダまたはプロバイダによって信頼されるエンティティによって製造、構成、またはそれ以外の場合提供することができ、これによりプロバイダは、ペリフェラルカードまたは他の係る追加のハードウェアもしくは取り外し可能なハードウェアのセキュリティにおいて、未処理のホストコンピューティングデバイス202のセキュリティにおいてよりも高いレベルの信頼を有することができる。
信頼できるコプロセッサ304、つまり他の係るハードウェアデバイスは、ホストコンピューティングデバイスがカスタマの仮想マシンのホスト、カスタマデータの処理、または他の係るタスクの実行に実質的に専念できるようにホストコンピューティングデバイス202から管理タスクの多くを軽減できる優位点を提供できる。カスタマ専用の計算リソースは、このようにしてホストコンピューティングデバイスによって提供することができ、カスタマのタスクのためのホストハードウェアの使用を最大限にすることができる。一方、それらのリソースの管理は信頼できるコプロセッサによって管理される。これは、すべての管理プロセスが信頼できるコンピューティング環境308で、またはより高いレベルのプロバイダの信頼を有するハードウェアに対応する信頼境界の中で実行されるというさらなる優位点を有する。さらなる優位点は、プロバイダアクセスが必要なリソースだけに制限され、システムが信頼できるソフトウェアを実行しているというセキュリティ保証をプロバイダが提供できる点である。
信頼できるコンピューティング環境308の中の信頼できるコプロセッサ304等の構成要素は、このようにしてホストデバイス上のサブシステムと論理的に見なすことができ、そのサブシステムは相対的に限られた機能を有する。この別個の「制限付き」サブシステムは、関連付けられた暗号境界の中に含まれ、本明細書では「l−sys」と呼ばれる。ホストのハードウェアの少なくとも一部分は、次いでホストマシンで実行している仮想マシン、つまり仮想ホストを提供し、維持することに専念できる。別個の暗号境界の中に含まれるこの「メイン」サブシステムは、本明細書で「m−sys」と呼ばれる。プロバイダアクセスは、このようにして、m−sysでホストされるゲストマシンのためのプロバイダ管理機能のために少なくともいくぶんl−sysに制限される場合がある。
しかしながら、プロバイダアクセスの係る分離及び制限があったとしても、プロバイダは依然として、(仮想環境で実行中の仮想インスタンスを有する)カスタマに対して、カスタマインスタンスごとの仮想イメージが、予想外の修正がない「原始」つまり予想される状態にある旨、及びインスタンスが信頼できる実行環境で実行中である旨の保証を提供できる必要がある。種々の実施形態による手法は、段階的なつまりチェーン接続された証明書発行機構を使用し、係る保証を提供でき、それによりサブシステムは、サブシステムを識別し、サブシステムの上部で実行中のソフトウェア及び仮想システムを真正として検証することを可能にする独自の証明書発行機構を有することができる。少なくとも一部の実施形態での各サブシステムは、追加のファームウェア及びソフトウェアを実行する能力だけではなく、独自の暗号境界、安全な記憶装置、及び信頼できる計算機能を有する場合もある。
さらに、少なくとも一部のサブシステムは、信頼できるコンピューティング環境の一部として別々のメモリ及びプロセッサスペースを活用することができ、例えばトラステッドプラットフォームモジュール(TPM)または他の係る構成要素としてモデル化されてよい。TPMは、例えばホストで実行中のシステムの真正性を遠隔で検証するために遠隔認証を実行するために使用できる。例えばTPMのシリーズ、チェーン、または階層を提供することによって、サブシステムを識別することができ、それらのサブシステムの上部で実行中のソフトウェア及び仮想システムを真正として検証できる。本明細書に説明される例は、l−sys及びm−sysを含む2システムホストに関係するが、種々の他の数及び/または構成のサブシステムを種々の実施形態の範囲内で必要に応じて使用できることが理解されるべきである。
言及されたように、リソースプロバイダ環境で埋め込みシステムを使用し、機密タスクまたは秘密タスクを実行するカスタマは、多くの場合、遠隔埋め込みシステムが予想外に修正または改ざんされなかったこと、ならびに埋め込みシステム及び仮想マシンが予想通りに機能することを保証できることを望む。係る動作を検証するための1つの手法は遠隔認証を含む。遠隔認証は、例えば本明細書に記載される種々のサブシステム等のコンピューティング環境に対する許可されていないまたは予想外の変更の検出に備える。これらの変更は、安全対策を回避しようとする試みに対する修正を含む場合がある。従来の遠隔認証プロセスの間、ホストマシンは、ホストで現在実行中のソフトウェアを示す証明書を生成できる。証明書は、次いで環境で現在実行中のソフトウェアが修正されていないまたは予想通りであることを立証するために、カスタマまたは別の適切な関係者に提供できる。遠隔認証は、例えば、ソフトウェアに関する情報が認証を要求している関係者または適切な鍵を入手した他の関係者だけに公開されることを保証するために公開鍵暗号化を利用できる。一般的にTPMは、暗号鍵をハードウェアの中にインストールすることによってハードウェアを保護できる専用のマイクロプロセッサである。TPMは、ホストのハードウェア及びソフトウェアで予想される動作を実施するためにTPMの外部ではアクセスできない一意の暗号鍵を活用できる。一部の実施形態では、一意の鍵は、2048ビットのRSA公開鍵と秘密鍵の対等の、変更不可能であり、TPMからエクスポートできない承認鍵である。承認鍵のための公開鍵は、TPMのための証明書の中に含まれる場合がある。TPMは、対応する環境またはサブシステムのハードウェア及びソフトウェアの構成のハッシュ要約を生成することによって、一部の実施形態で遠隔認証を実行できる。ハッシュ値は、任意の適切な暗号ハッシュアルゴリズムを使用し、生成することができ、例えばMD5、SHA−1ハッシュ、SHA−2ハッシュ、またはSHA−3ハッシュを生成してよい。
種々の実施形態による手法は、1−sysの第1のTPM306、つまりこの例では信頼できるコプロセッサ304を有する周辺機器、及びm−sysの第2のTPM302、つまりこの例ではホストコンピューティングデバイス202の残りを活用して、遠隔認証を実行できる。信頼できるl−sys環境308は、m−sysの認証を実行できるデバイス上の、m−sys等の1つ以上の他のサブシステムの認証のための信頼の根底として機能できる。l−sysは、認証完全性鍵の対及びホストアイデンティティ鍵の対を生成することができ、公開鍵は上述したように証明機関からの証明書に結び付けられている。その情報は、認証のためのハッシュを生成するためだけではなく、インフラストラクチャの中でデバイスを一意に識別するためにも使用できる。一部の実施形態では、認証要求はなんらかの種類の質問、タスク、または課題を含み、要求を受け取るデバイスは質問、タスク、または課題とともに情報を収集し、要求元(または別の適切な関係者もしくは宛先)に返されるハッシュを生成できる。認証要求は、APIを通して受け取ることができ、コンソールまたは他の係るインタフェースを通してトリガできる。一部の実施形態では、認証要求は、例えば仮想TPMまたは他の係る認証デバイスから等、カスタマの仮想マシンから来る場合がある。要求する関係者は、次いで課題のためのすべての情報の予想される値だけではなく、正しい課題も含まれていたことを保証するために、適切な鍵のそのコピーを使用できる。これは、l−sysのソフトウェア、ハードウェア、構成、及び/または他の態様が予想通りであり、予想外の修正が発生していないことを保証するために役立つ場合がある。l−sysが予想通りに動作していると検証されると、(プロバイダの制御下のファームウェアを含む場合がある)l−sysはm−sys、つまり上位システムをブートできる、またはそれ以外の場合初期化できる。また、m−sysは、認証完全性鍵の対及びホストアイデンティティ鍵の対を生成できるTPMを有する場合もあり、公開鍵は適切な証明書に結び付けられている。その情報は、認証のためのハッシュを生成するためだけではなく、インフラストラクチャの中でデバイスを一意に識別するためにも使用できる。この例では、l−sysはm−sysのための証明書発行機関である場合がある。l−sys、つまり信頼できるコプロセッサは、このようにして証明書を発行し、副証明機関としての機能を果たし、信頼できるコプロセッサはホストに物理的な接続を有するので、l−sysがm−sysのTPMに物理的に接続されていることを証明することができる。係る手法は完全認証チェーンを提供できる。カスタマまたはホストを認証することを希望する他のエンティティは、l−sysにチェーンで接続される指定仮想マシンのホストに対応するm−sysの証明書、及び元の証明機関にチェーンで接続されるペリフェラルカードまたは信頼できるコプロセッサを通して認証を得ることができる。
一例では、カスタマシステムは、リソースプロバイダ環境で仮想ホスト上で実行中のカスタマ仮想マシンと通信している。カスタマシステムは、仮想マシンを実行しているホストコンピューティングデバイスのホストIDだけではなく、仮想マシンに結び付けられているインスタンス識別子(ID)等の情報も知っている場合がある。カスタマシステムは、次いで認証コマンド、つまり認証要求をカスタマ仮想マシンに送信できる。仮想マシンは、一部の実施形態では周辺装置またはl−sysを通して到達し得る要求を受信できる。仮想マシンはインスタンスID及びホストIDを受信し、仮想マシンが要求を正しく受信し、認証が提供される必要があると判断することができる。認証を提供するために、情報は信頼できるルートシステム、つまりl−sys、及びメインシステム、つまりm−sysの両方のために返される必要がある。この例では、仮想マシンは、予想される情報及び認証コマンドの課題を使用し、適切なハッシュを生成できるl−sysに認証コマンドを送信できる。また、l−sysは、m−sys情報のために類似するハッシュを生成できるm−sysにも認証コマンドを送信できる。m−sysのハッシュは、仮想マシンのカスタマの予想されるブート画像のための情報を含む場合がある。仮想マシンは、例えば両方のハッシュ値を入手することができ、認証のために適切な情報を送り返すことができる。これは、例えば、l−sys及びm−sysのための証明書チェーンだけではなく、l−sys及びm−sysのハッシュ値も含む場合がある。情報を受信するカスタマシステムは、画像が予想通りあることを検証することができ、認証チェーンを信頼できる。また、サブシステムごとに引用(または、署名される場合がある他の測定値)を得るカスタマシステムは、それらの署名の中の値だけではなく、各引用に対する署名も検証できる。また、カスタマシステムは、m−sys証明書がl−sysによって発行され、l−sys証明書が信頼できる証明機関によって発行されたことも検証できる。カスタマが証明機関を信頼する限り、カスタマは、カスタマの仮想マシンが予想通りに動作していることを示す情報を検証できるはずである。
検証のためのハッシュの一部として提供される情報は、関連するサブシステムのための任意の適切な情報を含む場合がある。信頼できるコプロセッサが、例えばペリフェラルカード上にあるl−sysの場合、ハッシュはPCRレジスタのための値、つまり信頼できるコプロセッサのファームウェアのための情報を含む場合がある。種々の他の種類の情報も活用できる。どの情報を含むのかの決定は、システムまたは環境が予想通りに動作しているというセキュリティの強化を提供する多くの情報を含むことの有用性と、カスタマシステムが現在の状態について予想するために適切なハッシュを知るまたは決定できるように、システムまたは環境の現在の状態の知識を維持する必要性とのバランスをとることができる。認証のチェーンを使用することの優位点は、l−sysが、サブシステムの性質のためにより信頼できる環境であることに加え、より制御され、簡略な環境であり、これによりハッシュエラーまたは照合エラーの可能性が大幅に削減され、セキュリティ侵害の可能性も大幅に削減される点である。m−sysのハードウェアとソフトウェアの両方とも、リソースプロバイダ環境の外部から供給されるので、多くの場合、環境が安全であるというより少ないまたはより弱い保証がある場合がある。サブシステムの性質により、他の係る優位点の中で、l−sysに対する信頼のレベル及びl−sysのm−sysへの物理的な接続のために他者を認証できることは、信頼できるサブシステムにとって有益になる。
段階的なサブシステム手法を使用し、遠隔認証を可能にするために、証明書発行プロセスは最初に少なくとも一部の実施形態で使用されて、サブシステムが認証のために適切な信用証明書を有していることを保証する。図4は、種々の実施形態に従って活用できる段階的なサブシステムに信用証明書を提供するための例のプロセス400を示す。本明細書に説明されるいずれのプロセスについても、別段の記載がない限り、種々の実施形態の範囲内で類似するもしくは異なる順序でまたは並行して実行される追加のステップ、より少ないステップ、または代替ステップがある場合があることが理解されるべきである。この例では、制限付きシステムがホストコンピューティングデバイス上のメインシステムを管理するために提供でき402、制限付きシステムは、本明細書に説明されるように信頼できるハードウェア及びソフトウェアを有する場合があり、関連付けられた暗号境界及び/または信頼境界の中に含むことができる。l−sysは、本明細書に説明もしくは示唆される、またはデジタル証明書を入手するための当技術分野で既知の種々のプロセスのいずれかを使用し、証明機関から証明書を受信できる404。l−sysは、認証完全性鍵の対及びホストアイデンティティ鍵の対を生成でき406、公開鍵はそれぞれの証明機関によって発行される証明書に結び付けられ、l−sysのTPMから証明された承認鍵を使用し、生成される。種々の技術のいずれかは、証明機関を介して、既知のまたは証明された承認鍵から証明されたホスト認証鍵またはアイデンティティ鍵にブートストラップするために使用できる。l−sysの終結時、TPMは、証明機関により証明された認証完全性鍵及びホストアイデンティティ鍵を有する場合がある。これらの証明された鍵は記憶し408、Certl−sysによって匿名で示すことができる。
さらに、証明書発行段階では、m−sysのTPMは、m−sysからアクセス可能である場合がある。l−sysは、オフボックスネットワークトラフィックを必要とせずにm−sysと通信できる。m−sysのTPMは、l−sysから、証明書チェーンを生成する412ために使用できる信用証明書を取得させることができる410。証明機関はこのようにしてl−sysを証明し、l−sysはm−sysの鍵を証明する。m−sysの証明書発行は、証明機関がl−sysの権限で証明されたホストアイデンティティ鍵によって代替される方法を活用できる。m−sysは、認証完全性鍵の対及びホストアイデンティティ鍵の対を生成する414ことができ、公開鍵はl−sysによって発行される信用証明書に結び付けられ、m−sysのTPMからの証明された承認鍵を使用し、生成される。終結時、m−sysのTPMはl−sysによって証明された認証完全性鍵及びl−sysによって証明されたホストアイデンティティ鍵を有することができる。これらの証明された鍵は記憶し416、Certm−sysによって匿名で示すことができる。
両方のサブシステム(または、2つ以上のサブシステムの場合にはすべてのサブシステム)が信用証明書を添えられると、システムで実行中のカスタマ配備を認証できる。図5は、種々の実施形態に従って活用できるカスタマ配備を認証するための例のプロセス500を示す。係るプロセスは、少なくとも一部の実施形態で、認証要求部分及び認証応答部分を含む種々の部分に分けることができる。少なくとも一部の実施形態では、認証応答バリデーションプロセスまたは部分がある場合もある。認証要求に関係する第1の部分は、カスタマ配備の認証を要求するエンティティを含む。この例では、認証要求が受信され502、認証要求は、カスタマ配備のホストコンピューティングデバイスのホストアイデンティティ(h−id)等の情報を含む。本明細書の他の部分で説明されるように、制御プレーン構成要素に対する認証要求を最初に受信し、次いで他の係るオプションの中で、制限付きシステム構成要素またはインタフェースに転送できる。プロセスの一部として、ランダム暗号ノンスN、つまり他の任意の使い捨ての数字が、次いで少なくとも値h−id及びNから成る認証要求で生成できる。少なくとも一部の実施形態では、ホストh−idに対する出力認証要求が受信できる。
ホストアイデンティティh−idを有する信用証明書を添えられたホストは、lーsysを通ってきた可能性がある要求を受信できる。信用証明書を添えられたホストは、説明されるように、m−sys及びl−sysのための値から成るアイデンティティh−idを有し、l−sysは証明機関によって証明されている。m−sys、つまり要求を受信するまたは要求を通知される他の構成要素は、例えば、l−sysの認証をトリガできる504。認証要求に応えて、意図された認証ターゲットのためのh−idを検証できる。第1の認証引用、Quote1(つまり他の署名された測定値)は、ノンスN及び証明機関によって証明されたl−sysの信用証明書を使用し、作成できる506。l−sysは、同様にm−sysに対して認証要求を送信できる508。m−sysは、ノンスN及びl−sysによって証明されたm−sysの信用証明書を使用し、第2の認証引用Quote2を作成できる510。本明細書の他の部分で言及されるように、各引用は少なくとも一部の実施形態でそれぞれの情報のハッシュを含む場合がある。l−sysは次いでm−sysからQuote2及び信用証明書Certm−sysを受信し、Quote1、Quote2、ならびに証明書Certm−sys及びCertl−sys、つまり一部の実施形態では、認証応答として返される出力を形成する場合がある証明書チェーンを含む認証応答をアセンブルすることができる512。l−sysは次いで、適切な宛先またはアドレスに要求を転送できる514。
少なくとも一部の実施形態では、認証応答を受信するエンティティ(つまり関心があり、許可された別のエンティティ)であって、状態の真正性保証を有するエンティティが認証の検証を希望する場合がある。図6は、種々の実施形態に従って活用できる認証応答を検証するための例のプロセス600を示す。この例では、認証応答は、例えばm−sysサブシステムにおいて等、リソースプロバイダ環境において実行中の配備と関連付けられたカスタマ等の、認証の検証に関心があるエンティティによって受信される602。検証プロセスの一部として、システムについて報告された状態を判断できる604。状態情報は、例えばホストアイデンティティh−idに対する認証要求を生成するために使用されるノンスNだけではなく、証明機関からの公開鍵の真正なコピーも含む場合がある。また、状態は、m−sysのための許容認証応答値(PCR値)の第1の集合、l−sysのための許容認証応答値(PCR値)の第2の集合を含む場合もある。入力は、Quote1、Quote2、ならびに証明書Certm−sys及びCertl−sysを含む認証引用及び信用証明書を含む場合がある。検証プロセスの一部として、Certl−sysがh−idのための証明機関からの有効な証明書である旨の第1の検証を実行できる606。有効な証明書ではない場合、認証不合格応答を返すことができる608、または他の是正措置を講じることができる。言及されたように、これらの検証は便宜上特定の順序で示されているが、これらの決定が異なる順序で、または同時に、またはそれ以外の場合種々の実施形態の範囲内で実行できることが理解されるべきである。第1の引用Quote1がCertl−sysの適切なh−id信用証明書を使用し、署名され、ノンスNを含み、正しいPCR値を有する旨の第2の検証を実行できる610。そうではない場合、認証不合格応答を返すことができる608、または他の是正措置を講じることができる。Certm−sysがh−idのためのl−sysからの有効な証明書である旨の第3の検証を実行できる612。有効な証明書ではない場合、認証不合格応答を返すことができる608、または他の是正措置を講じることができる。第2の引用Quote2が、Certm−sysの適切なh−idを使用し、署名され、ノンスNを含み、正しいPCR値を有する旨の第4のバリデーションを実行できる614。そうではない場合、認証不合格応答を返すことができる608、または他の是正措置を講じることができる。すべての検証が無事に合格すると、合格つまり成功メッセージを返すことができる616、または認証の検証に応えて他の類似した措置を講じることができる。
図7は、認証であるが、この場合、特定の仮想マシンまたはシステムで実行中のカスタマインスタンスに特有である認証のための類似したプロセス700を示す。この例では、遠隔仮想マシンに対する認証要求が受信され702、認証要求は仮想マシンの仮想イメージのアイデンティティ(v−id)及び仮想イメージがロードされるホストコンピューティングデバイスのホストアイデンティティ(h−id)等の情報を含む。プロセスの一部として、無作為の暗号ノンスN、つまり他の任意の使い捨ての数字が、そのときに少なくとも値v−id、h−id、及びNから成る認証要求で生成できる。少なくとも一部の実施形態では、ホストh−idに対する出力認証要求が受信できる。
ホストアイデンティティh−idを有する信用証明書を添えられたホストは、l−sysを通ってきた可能性がある要求を受信できる。信用証明書を添えられたホストは、説明されるように、m−sys及びl−sysのための値から成るアイデンティティh−idを有し、l−sysは証明機関によって証明されている。m−sys、つまり要求を受信するまたは要求を通知される他の構成要素は、例えばl−sysの認証をトリガできる704。認証要求に応えて、意図された認証ターゲットのためのh−idを検証できる。第1の認証引用、Quote1は、ノンスN及び証明機関によって証明されるl−sysの信用証明書を使用し、作成できる706。l−sysは、同様にm−sysに認証要求を送信できる708。m−sysは、ノンスN及びl−sysによって証明されるm−sysの信用証明書を使用し、第2の認証引用、Quote2を作成できる710。一部の実施形態の第2の認証引用は、PCRレジスタの1つ以上で示される仮想イメージv−idをカバーする。また、例えば署名された測定値または引用等の測定値も、特定の仮想マシンまたはカスタマインスタンスについて決定または生成することができ712、この例では、測定値はv−idの形をとる。l−sysは次いでm−sysからQuote2及び信用証明書Certm−sysを受信し、Quote1、Quote2、ならびに証明書Certm−sys及びCertl−sys、つまり一部の実施形態では、認証応答として返される出力を形成する場合がある証明書チェーンを含む認証応答をアセンブルすることができる714。また、l−sysは、適切な宛先またはアドレスに要求を転送できる716。
少なくとも一部の実施形態では、認証応答を受信するエンティティ(つまり関心があり、許可された別のエンティティ)であって、状態の真正性保証を有するエンティティが認証の検証を希望する場合がある。図8は、種々の実施形態に従って活用できる認証応答を検証するための例のプロセス800を示す。この例では、認証応答は、例えばm−sysサブシステムにおいて等、リソースプロバイダ環境において実行中の仮想マシンと関連付けられたカスタマ等の、認証の検証に関心があるエンティティによって受信される802。検証プロセスの一部として、システムについて報告された状態を判断できる804。状態情報は、例えば仮想イメージv−id及びホストアイデンティティh−idに対する認証要求を生成するために使用されるノンスNだけではなく、証明機関からの公開鍵の真正なコピーも含む場合がある。また、状態は、m−sysのための許容認証応答値(PCR値)の第1の集合、l−sysのための許容認証応答値(PCR値)の第2の集合、及び仮想イメージv−idのための許容認証応答値を含む場合もある。入力は、Quote1、Quote2、ならびに証明書Certm−sys及びCertl−sysを含む認証引用及び信用証明書を含む場合がある。検証プロセスの一部として、Certl−sysがh−idのための証明機関からの有効な証明書である旨の第1の検証を実行できる806。有効な証明書ではない場合、認証不合格応答を返すことができる808、または他の是正措置を講じることができる。言及されたように、これらの検証は便宜上特定の順序で示されているが、これらの決定が異なる順序で、または同時に、またはそれ以外の場合種々の実施形態の範囲内で実行できることが理解されるべきである。第1の引用Quote1がCertl−sysの適切なh−id信用証明書を使用し、署名され、ノンスNを含み、正しいPCR値を有する旨の第2の検証を実行できる810。そうでない場合、認証不合格応答を返すことができる808、または他の是正措置を講じることができる。Certm−sysがh−idのためのl−sysからの有効な証明書である旨の第3の検証を実行できる812。有効な証明書ではない場合、認証不合格応答を返すことができる808、または他の是正措置を講じることができる。第2の引用Quote2が、Certm−sysの適切なh−idを使用し、署名され、ノンスNを含み、正しいPCR値を有する旨の第4のバリデーションを実行できる814。そうでない場合、認証不合格応答を返すことができる808、または他の是正措置を講じることができる。Quote2の値が、少なくとも一部の実施形態では専用のまたは追加のPCR値である可能性が最も高い、v−idのための仮想イメージの許容認証応答値を含む旨の第5の検証を実行できる816。含まない場合、認証不合格応答を返すことができる808、または他の是正措置を講じることができる。すべての検証が無事に合格すると、合格つまり成功メッセージを返すことができる818、または認証の検証に応えて他の類似した措置を講じることができる。
一部の実施形態では、TPMまたは他の信頼できる環境は、例えば証明書等の検証可能な信用証明書でセットアップされない場合がある。これらの状況の場合、ホストに対する物理アクセスを代わりに使用できる特有のプロビジョニングプロセスを活用できる。一部の実施形態では、遠隔システムの認証は特権を必要とする場合がある。要求するエンティティのための証明された信用証明書は、可能であれば確立し、認証要求の真正性を確証するために使用することができる。中でも注目すべきことに、証明された非対称鍵の対を使用することができ、認証要求に署名できる。一部の実施形態では、ホストアイデンティティh−idも仮想イメージ識別子v−idも認証作成のために既知である必要はない。ホストアイデンティティは、認証要求生成時に必ずしも既知である必要はなく、仮想イメージ識別子は認証引用の一部として折り返し報告することができ、これにより許容値を決定できる。
少なくとも一部の実施形態では、引用はTPMにより定義される引用機構に制限される必要はなく、システムのアイデンティティ鍵を使用し、追加で署名された情報を含んでよい。m−sys認証応答は、複数の仮想イメージの真正性を判断するのに十分な情報を含む場合がある。これは、一部の実施形態では、複数の引用を返すこと、または複数の結果を単一の引用に結合することによって実行できる。さらに、説明のために2システム階層が提示されているが、任意の適切なツリーまたは証明機関の親ノードを有する階層構造を種々の実施形態の範囲内でも使用することができ、ツリーの各ノードは親ノードによって署名されることが言及されるべきである。同様に、少なくとも一部の実施形態では任意の数のルート証明機関がある場合がある。1つの係るシステムでは、l−sysは単一のホストの中に含まれるサブシステムのファミリのルートを形成する。
さらに、本開示の実施形態は、以下の条項を鑑みて説明できる。
1.ホストコンピュータシステムであって、
複数の仮想マシンを操作するように構成された少なくとも1つのプロセッサと、
コプロセッサ、及び前記複数の仮想マシンを管理するための第1の実行可能命令を記憶する第1のメモリを含む周辺装置であって、少なくとも第1の承認鍵及び証明機関から受信される第1の証明書を使用し、前記周辺装置と使用するために構成された第1の安全な暗号プロセッサをさらに含む前記周辺装置と、
第2の安全な暗号プロセッサ、及び第2の実行可能命令を記憶し、少なくとも第2の承認鍵及び前記第1の安全な暗号プロセッサから受信される第2の証明書を使用し、前記ホストコンピュータシステムと使用するために構成された第2のメモリと、
を備え、
前記第1の命令が、実行時に、前記周辺装置に、
前記複数の仮想マシンのカスタマ仮想マシンと関連付けられた認証要求を受信させ、前記カスタマ仮想マシンがカスタママシン画像を使用し、起動され、
前記周辺装置のための第1の署名済み測定値を生成させ、前記第1の署名済み測定値が、前記周辺装置のための識別情報、及び前記証明機関から受信された前記第1の証明書を使用し、生成された信用証明書を含み、
前記第2の安全なプロセッサに、前記ホストコンピューティングシステムのための第2の署名済み測定値を生成させ、前記第2の署名済み測定値が、前記ホストコンピューティングマシンのための識別情報、前記カスタママシン画像のための情報、及び前記第1の安全な暗号プロセッサから受信された前記第2の証明書を使用し、生成された信用証明書を含み、
前記第1の署名済み測定値、前記第2の署名済み測定値、ならびに前記第1の証明書及び前記第2の証明書のための証明書チェーンを含む認証応答をアセンブルさせ、
前記認証応答を転送させ、カスタマシステムが少なくとも前記カスタマ仮想マシンの完全性及び前記ホストコンピューティングシステムのセキュリティを検証することを可能にされる、
前記ホストコンピュータシステム。
2.前記第2の命令が、実行時に、前記システムに、さらに前記ホストコンピューティングデバイスでメインサブシステムを操作させ、前記メインサブシステムが前記カスタママシン画像を使用し、前記カスタマ仮想マシンを実行することを担い、
前記第1の命令が、実行時に、前記コプロセッサに前記周辺装置を使用し、制限付きサブシステムをさらに操作させ、前記制限付きサブシステムが前記メインサブシステムのために管理タスクを実行するように構成され、前記制限付きサブシステムが、前記メインサブシステムを初期化し、前記信用証明書を前記第2の安全な暗号プロセッサに提供させるようにさらに構成される、
条項1に記載のホストコンピュータシステム。
3.前記第1の署名済み測定値が、前記第1の暗号プロセッサに対応する第1の認証完全性鍵の対及び前記第1のホストアイデンティティ鍵の対をさらに含み、前記第2の署名済み測定値が、前記第2の暗号プロセッサに対応する第2の認証完全性鍵の対及び第2のホストアイデンティティ鍵の対をさらに含む、条項1に記載のホストコンピュータシステム。
4.前記命令が、実行時に、前記システムにさらに、
前記第1の署名済み測定値の第1のハッシュ及び前記第2の署名済み測定値の第2のハッシュを生成させ、前記認証応答に前記第1のハッシュ及び前記第2のハッシュを含ませる、
条項1に記載のホストコンピュータシステム。
5.コンピュータによって実装される方法であって、
カスタマシステムからコンピューティングデバイスのメインサブシステムへの認証要求を受信することであって、前記コンピューティングデバイスが前記カスタマシステムと関連付けられたカスタマ仮想マシンを操作する、前記受信することと、
前記コンピューティングデバイスに物理的に接続された信頼できるハードウェアを使用し、提供された制限付きサブシステムに要求を送信することであって、前記制限付きサブシステムが前記カスタマ仮想マシンのために管理タスクを実行するように構成された、前記送信することと、
前記制限付きサブシステムから、前記制限付きサブシステムのための第1の信用証明書を含む第1の測定値を受信することであって、前記第1の信用証明書が、証明機関によって提供された第1の証明書を使用し、生成される、前記受信することと、
前記メインサブシステムのための第2の信用証明書及び前記カスタマ仮想マシンのための状態情報を含む第2の測定値を生成することであって、前記第2の信用証明書が、前記制限付きサブシステムによって提供された第2の証明書を使用し、生成される、前記生成することと、
前記カスタマシステムに認証応答を送信することであって、前記認証応答が前記第1の測定値及び前記第2の測定値を含む、前記送信することと、
を含む、前記コンピュータによって実装される方法。
6.前記制限付きサブシステムの第1の安全な暗号プロセッサに対する前記第1の証明書を受信することと、
前記第1の安全な暗号プロセッサの前記第1の証明書及び第1の承認鍵を使用し、前記第1の信用証明書を生成することであって、前記第1の承認鍵が前記第1の安全な暗号プロセッサからエクスポートできない、前記生成することと、
をさらに含む、条項5に記載のコンピュータによって実装される方法。
7.前記第1の信用証明書が、前記制限付きサブシステムと関連付けられた第1の認証完全性鍵の対及び第1のホストアイデンティティ鍵の対を含む、条項6に記載のコンピュータによって実装される方法。
8.前記メインサブシステムの第2の安全な暗号プロセッサに対する前記第2の証明書を受信することと、
前記第2の安全な暗号プロセッサの前記第2の証明書及び第2の承認鍵を使用し、前記第2の信用証明書を生成することであって、前記第2の承認鍵が前記第2の安全な暗号プロセッサからエクスポートできない、前記生成することと、
をさらに含む、条項6に記載のコンピュータによって実装される方法。
9.前記第2の信用証明書が、前記メインサブシステムと関連付けられた第2の認証完全性鍵の対及び第2のホストアイデンティティ鍵の対を含む、条項8に記載のコンピュータによって実装される方法。
10.前記認証要求に含まれる第1の識別子を使用する前記ホストマシンのアイデンティティ、及び前記認証要求に含まれる第2の識別子を使用するカスタママシン画像のアイデンティティを、前記要求を前記制限付きサブシステムに送信する前に検証すること、
をさらに含む、条項5に記載のコンピュータによって実装される方法。
11.前記第1の測定値及び前記第2の測定値の少なくとも1つを使用し、少なくとも1つのハッシュ値を生成することと、
前記少なくとも1つのハッシュ値を前記認証応答に含むことであって、前記少なくとも1つのハッシュ値が前記カスタマシステムと関連付けられる、前記含むことと、
をさらに含む、条項5に記載のコンピュータによって実装される方法。
12.前記認証要求が、仮想インスタンスのための測定値または前記第1の証明書及び前記第2の証明書のための証明書チェーンの少なくとも1つをさらに含む、条項5に記載のコンピュータによって実装される方法。
13.前記測定値が引用または暗号学的に検証可能な測定値の1つである、条項5に記載のコンピュータによって実装される方法。
14.前記信頼できるハードウェアが、前記コンピューティングデバイスが動作する環境のプロバイダによって構成されたファームウェア及び命令を含むペリフェラルカードであり、前記ペリフェラルカードが前記コンピューティングデバイスよりも高いレベルの信頼を有する、条項5に記載のコンピュータによって実装される方法。
15.前記認証要求に含まれる課題情報を決定することと、
前記課題情報を前記認証応答に含むことと、
をさらに含む、条項5に記載のコンピュータによって実装される方法。
16.ホストコンピューティングデバイスで動作する制限付きサブシステムであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサによって実行されるときに、前記制限付きサブシステムに、
前記ホストコンピューティングデバイス上のメインサブシステムで実行中の仮想マシンに対する認証要求を受信させ、前記制限付きサブシステムが、前記ホストコンピューティングデバイスに物理的に接続された信頼できるハードウェアを使用し、提供され、前記仮想マシンのために管理タスクを実行するように構成され、
前記制限付きサブシステムのための第1の信用証明書を含む第1の測定値を生成させ、前記第1の信用証明書が、証明機関によって提供された第1の証明書を使用し、生成され、
前記ホストコンピューティングデバイスの前記メインサブシステムに、前記メインサブシステムのための第2の信用証明書及び前記カスタマ仮想マシンのための状態情報を含む第2の測定値を生成させ、前記第2の信用証明書が、前記制限付きサブシステムによって提供された第2の証明書を使用し、生成され、
前記第1の測定値及び前記第2の測定値を含む認証応答を送信させる、
命令を記憶するメモリと、
を備える、前記制限付きサブシステム。
17.前記命令が、実行時に、前記ホストコンピューティングデバイスにさらに、
前記第2の証明書を前記メインサブシステムの第2の安全な暗号プロセッサに送信させ、
前記第2の安全な暗号プロセッサの前記第2の証明書及び第2の承認鍵を使用し、前記第2の信用証明書を生成させ、前記第2の承認鍵が前記第2の安全な暗号プロセッサからエクスポートできない、
条項16に記載の制限付きサブシステム。
18.前記命令が、実行時に、前記ホストコンピューティングデバイスにさらに、
前記認証要求に含まれる暗号ノンスを決定させ、
前記暗号ノンスを前記認証応答に含ませる、
条項16に記載の制限付きサブシステム。
19.前記命令が、実行時に、前記ホストコンピューティングデバイスにさらに、
前記認証要求に含まれる第1の識別子を使用し、前記認証要求のターゲットとして前記ホストコンピューティングデバイスを検証させる、
条項16に記載の制限付きサブシステム。
20.前記認証要求が前記仮想マシンの中から生成される、条項16に記載の制限付きサブシステム。
図9は、例のコンピューティングデバイス900の一般的な構成要素の論理的な配置を示す。この例では、デバイスは、メモリデバイスまたは要素904に記憶できる命令を実行するためのプロセッサ902を含む。当業者には明らかであるように、デバイスは、例えばプロセッサ902による実行のためのプログラム命令用の第1のデータストレージ、画像またはデータのための別個の記憶装置、他のデバイスと情報を共用するための取り外し可能なメモリ等の多くの種類のメモリ、データストレージ、または非一過性コンピュータ可読記憶媒体を含む場合がある。ポータブルメディアプレーヤ等のデバイスが、例えば音声スピーカを通して等、他の手段を介して情報を伝達する可能性があるが、デバイスは、例えばタッチスクリーンまたは液晶ディスプレイ(LCD)等のなんらかの種類の表示要素906を含む。説明したように、デバイスは多くの実施形態において、従来の入力をユーザーから受信できる少なくとも1つの入力要素908を含む。この従来の入力は、例えば、プッシュボタン、タッチパッド、タッチスクリーン、ホイール、ジョイスティック、キーボード、マウス、キーパッド、または任意の他の係るデバイスもしくは要素を含む場合があり、それによって、ユーザーはコマンドをデバイスに入力できる。しかしながら、一部の実施形態では、係るデバイスはボタンを全く含まない可能性があり、ユーザーが、デバイスと接触する必要なくデバイスを制御できるように、視覚によるコマンド及び音声によるコマンドの組み合わせを介してのみ制御される可能性がある。一部の実施形態では、図9のコンピューティングデバイス900は、例えばWi−Fi、Bluetooth(登録商標)、RF、有線または無線の通信システム等の種々のネットワークを介して通信するために1つ以上のネットワークインタフェース要素908を含む場合がある。デバイスは多くの実施形態において、例えばインターネット等のネットワークと通信することができ、他の係るデバイスと通信できてよい。
種々の実施形態に従って態様を実施するための本明細書に説明される例の環境は、ウェブサービス及びクラウドコンピューティングに関するように、おもにウェブベースであるが、ウェブベースの環境が説明のために使用されるが、種々の実施形態を実施するために、必要に応じて異なる環境が使用され得ることが理解されるべきである。種々の実施形態と相互に作用するために使用されるクライアントデバイスは、適切なネットワークを介して要求、メッセージ、または情報を送信及び受信し、デバイスのユーザーに情報を折り返し伝えるよう作動する任意の適切なデバイスを含む場合がある。係るクライアントデバイスの例は、パーソナルコンピュータ、携帯電話、ハンドヘルドメッセージングデバイス、ラップトップコンピュータ、セットトップボックス、パーソナルデータアシスタント、電子ブックリーダー等を含む。ネットワークは、イントラネット、インターネット、セルラーネットワーク、ローカルエリアネットワーク、もしくは任意の他の係るネットワークまたはその組み合わせを含む、任意の適切なネットワークを含む場合がある。係るシステムのために使用される構成要素は、選択されるネットワーク及び/または環境の種類に少なくとも部分的に依存することがある。係るネットワークを介して通信するためのプロトコル及び構成要素は周知であり、本明細書において詳細に説明されない。ネットワークを介した通信は、有線接続または無線接続、及びそれらの組み合わせによって可能にできる。
いくつかのアプリケーションサーバ、層、もしくは他の要素、プロセス、または構成要素が存在する場合があり、これらは、チェーン接続されるまたはそれ以外の場合構成されてよく、本明細書に説明され、示唆されるようにタスクを実行するために相互に作用できることが理解されるべきである。本明細書で使用されるように、用語「データストア」は、データを記憶する、データにアクセスする、及びデータを取り出すことができる任意のデバイスまたはデバイスの組み合わせを指し、これは、任意の標準的な環境、分散環境、またはクラスタ化された環境の任意の組み合わせ及び数のデータサーバ、データベース、データストレージデバイス、及びデータ記憶媒体を含んでよい。アプリケーションサーバは、必要に応じてデータストアと統合してクライアントデバイスのための1つ以上のアプリケーションの態様を実行し、データアクセス及びアプリケーションのためのビジネスロジックの大多数を処理するための任意の適切なハードウェア及びソフトウェアを含む場合がある。アプリケーションサーバは、データストアと協働してアクセス制御サービスを提供し、ユーザーに転送されるテキスト、グラフィックス、音声、及び/またはビデオ等のコンテンツを生成することができ、これらは、この例において、HTML、XML、または別の適切な構造化言語の形でウェブサーバによってユーザーに提供され得る。すべての要求及び応答の処理ならびにクライアントデバイスとリソースとの間のコンテンツの配信は、ウェブサーバによって処理できる。本明細書で説明される構造化されたコードは、本明細書の他の部分で説明される任意の適切なデバイスまたはホストマシンで実行できるので、ウェブサーバ及びアプリケーションサーバは必要とされず、単に例の構成要素であることが理解されるべきである。
データストアは、いくつかの別個のデータテーブル、データベース、または特定の態様に関するデータを記憶するための他のデータ記憶機構及びデータ記憶媒体を含む場合がある。データストアは、データストアと関連付けられたロジックを通して、サーバから命令を受信し、命令に応えてデータを入手、更新またはそれ以外の場合処理するよう作動する。一例では、ユーザーは特定のタイプの項目に対する検索要求を提出する可能性がある。この場合、データストアは、ユーザー情報にアクセスしてユーザーのアイデンティティを検証する可能性があり、カタログ詳細情報にアクセスしてその種類の項目についての情報を入手できる。情報は、次いでユーザーがユーザーデバイスのブラウザを介して見ることができるウェブページ上の結果リストで等、ユーザーに返すことができる。関心のある特定の項目の情報は、ブラウザの専用のページまたはウィンドウで見ることができる。
各サーバは、通常、そのサーバの一般的な管理及び操作のための実行可能プログラム命令を提供するオペレーティングシステムを含み、通常、サーバのプロセッサによって実行されるときにサーバがその意図された機能を実行するのを可能にする命令を記憶する非一過性コンピュータ可読媒体を含む。サーバのオペレーティングシステム及び一般機能のための適切な実施態様は既知であるか、または市販されており、特に本明細書の開示を鑑みて当業者によって容易に実装される。
一実施形態における環境は、1つ以上のコンピュータネットワークまたは直接接続を使用し、通信リンクを介して相互接続されるいくつかのコンピュータシステム及び構成要素を利用する、分散型コンピューティング環境である。しかしながら、係るシステムが、説明されるよりも少ない数または多い数の構成要素を有するシステムにおいても同等に良好に動作し得ることが当業者によって理解される。したがって、本明細書の種々のシステム及びサービスの説明は、本質的に例示であり、本開示の範囲に対して制限的ではないと見なされるべきである。
種々の態様は、少なくとも1つのサービスまたはウェブサービスの一部として実装することができ、例えば、サービス中心のアーキテクチャの一部であり得る。ウェブサービス等のサービスは、例えば、拡張マークアップ言語(XML)フォーマットの、SOAP(「シンプルオブジェクトアクセスプロトコル」に由来する)等の適切なプロトコルを使用して交換されるメッセージを使用して等、任意の適切な種類のメッセージングを使用し、通信できる。係るサービスによって提供または実行されるプロセスは、ウェブサービス記述言語(WSDL)等の任意の適切な言語で作成できる。WSDL等の言語の使用は、種々のSOAPフレームワークにおけるクライアント側コードの自動生成等の機能を可能にする。
ほとんどの実施形態は、TCP/IP、FTP、UPnP、NFS、及びCIFS等のさまざまな市販のプロトコルのいずれかを使用し、通信をサポートするために、当業者によく知られているであろう少なくとも1つのネットワークを活用する。ネットワークは、例えば、ローカルエリアネットワーク、広域ネットワーク、仮想プライベートネットワーク、インターネット、イントラネット、エクストラネット、公衆交換電話網、赤外線ネットワーク、無線ネットワーク、及びその任意の組合せである場合がある。
ウェブサーバを活用する実施形態では、ウェブサーバは、HTTPサーバ、FTPサーバ、CGIサーバ、データサーバ、Java(登録商標)サーバ、及びビジネスアプリケーションサーバを含む、さまざまなサーバまたは中間層アプリケーションのいずれかを実行できる。また、サーバ(複数可)は、例えばJava(登録商標)、C、C#、もしくはC++等の任意のプログラミング言語、またはPerl、Python、もしくはTCL等の任意のスクリプト言語、ならびにその組み合わせで作成された1つ以上のスクリプトまたはプログラムとして実装されてよい1つ以上のウェブアプリケーションを実行することによって、ユーザーデバイスからの応答要求でプログラムまたはスクリプトを実行できてもよい。また、サーバ(複数可)は、Oracle(登録商標)、Microsoft(登録商標)、Sybase(登録商標)、及びIBM(登録商標)から市販されるものを含むがこれに限定されるものではないデータベースサーバを含んでもよい。
環境は、上述のさまざまなデータストアならびに他のメモリ及び記憶媒体を含むことがある。これらは、コンピュータの1つ以上にローカルな(及び/もしくはそこに常駐する)またはネットワーク全体でのコンピュータのいずれかまたはすべてから遠く離れた記憶媒体上等のさまざまな場所に常駐することがある。実施形態の特定の一式では、情報は、当業者によく知られているストレージエリアネットワーク(「SAN」)に常駐することがある。同様に、コンピュータ、サーバ、または他のネットワークデバイスによる機能を実行するためのあらゆる必要なファイルは、必要に応じてローカルに及び/または遠隔に記憶されてよい。システムがコンピュータ化されたデバイスを含む場合、それぞれの係るデバイスは、バスを介して電気的に結合され得るハードウェア要素を含む場合があり、該要素は、例えば少なくとも1つの中央演算処理装置(CPU)、少なくとも1つの入力装置(例えば、マウス、キーボード、コントローラ、タッチスクリーン、またはキーパッド)、及び少なくとも1つの出力装置(例えば、表示装置、プリンタ、またはスピーカ)を含む。また、係るシステムは、例えば、ディスクドライブ、光学式記憶デバイス等の1つ以上の記憶装置、及び例えば、ランダムアクセスメモリ(「RAM」)または読み出し専用メモリ(「ROM」)等のソリッドステート記憶装置、ならびに取り外し可能な媒体デバイス、メモリカード、フラッシュカード等を含んでもよい。
また、係るデバイスは、上述のようにコンピュータ可読記憶媒体読み取り装置、通信装置(例えば、モデム、ネットワークカード(無線または有線)、赤外線通信装置等)、及び作業メモリを含む場合もある。コンピュータ可読記憶媒体読み取り装置は、遠隔記憶装置、ローカル記憶装置、固定記憶装置、及び/または取り外し可能な記憶装置を表すコンピュータ可読媒体、ならびにコンピュータ可読情報を一時的に及び/またはより恒久的に含む、記憶する、伝送する、及び取り出すための記憶媒体と接続できる、またはそれらを受け入れるように構成できる。また、システム及び種々のデバイスは、通常、いくつかのソフトウェアアプリケーション、モジュール、サービス、または少なくとも1つの作業用メモリデバイス内に位置する他の要素を含み、オペレーティングシステム及びクライアントアプリケーションまたはウェブブラウザ等のアプリケーションプログラムを含む。代替の実施形態が、上述されたものの多数の変形形態も有してよいことが理解されるべきである。例えば、カスタマイズされたハードウェアが使用される可能性もある、及び/または特定の要素がハードウェア、(アプレット等のポータブルソフトウェアを含む)ソフトウェア、または両方で実装される可能性もある。さらに、ネットワーク入力/出力装置等の、他のコンピューティングデバイスへの接続が用いられてよい。
コード、またはコードの部分を含むための記憶媒体及び他の非一過性コンピュータ可読媒体は、例えば、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータ等の情報の記憶のための任意の方法または技術において実装される、揮発性及び不揮発性、取り外し可能媒体及び取り外しできない媒体等であるがこれらに限定されない、記憶媒体及び通信媒体を含む、当該技術分野で既知または使用されている任意の適切な媒体を含む場合があり、RAM、ROM、EEPROM(登録商標)、フラッシュメモリもしくは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)もしくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または所望の情報を記憶するために使用可能であり、システムデバイスによってアクセス可能である任意の他の媒体を含む。本開示及び本明細書に示される教示に基づいて、当業者は種々の実施形態を実装するための他の方法及び手法を理解するであろう。
したがって、明細書及び図面は、限定的な意味ではなく例示的な意味で考えられるべきである。しかしながら、特許請求の範囲で述べられる本発明のより広い精神及び範囲から逸脱することなく、それに対して種々の修正及び変更がなされ得るということが明らかである。

Claims (15)

  1. ホストコンピュータシステムであって、
    複数の仮想マシンを操作するように構成された少なくとも1つのプロセッサと、
    コプロセッサ、及び前記複数の仮想マシンを管理するための第1の実行可能命令を記憶する第1のメモリを含む周辺装置であって、少なくとも第1の承認鍵及び証明機関から受信される第1の証明書を使用し、前記周辺装置と使用するために構成された第1の安全な暗号プロセッサをさらに含む前記周辺装置と、
    第2の安全な暗号プロセッサ、及び第2の実行可能命令を記憶し、少なくとも第2の承認鍵及び前記第1の安全な暗号プロセッサから受信される第2の証明書を使用し、前記ホストコンピュータシステムと使用するために構成された第2のメモリと、
    を備え、
    前記第1の命令が、実行時に、前記周辺装置に、
    前記複数の仮想マシンのカスタマ仮想マシンと関連付けられた認証要求を受信させ、前記カスタマ仮想マシンがカスタママシン画像を使用し、起動され、
    前記周辺装置のための第1の署名済み測定値を生成させ、前記第1の署名済み測定値が、前記周辺装置のための識別情報、及び前記証明機関から受信された前記第1の証明書を使用し、生成された信用証明書を含み、
    前記第2の安全なプロセッサに、前記ホストコンピューティングシステムのための第2の署名済み測定値を生成させ、前記第2の署名済み測定値が、前記ホストコンピューティングマシンのための識別情報、前記カスタママシン画像のための情報、及び前記第1の安全な暗号プロセッサから受信された前記第2の証明書を使用し、生成された信用証明書を含み、
    前記第1の署名済み測定値、前記第2の署名済み測定値、ならびに前記第1の証明書及び前記第2の証明書のための証明書チェーンを含む認証応答をアセンブルさせ、
    前記認証応答を転送させ、カスタマシステムが少なくとも前記カスタマ仮想マシンの完全性及び前記ホストコンピューティングシステムのセキュリティを検証することを可能にされる、
    前記ホストコンピュータシステム。
  2. 前記第2の命令が、実行時に、前記システムにさらに、前記ホストコンピューティングデバイス上でメインサブシステムを操作させ、前記メインサブシステムが前記カスタママシン画像を使用し、前記カスタマ仮想マシンを実行することを担い、
    前記第1の命令が、実行時に、前記コプロセッサに前記周辺装置を使用し、制限付きサブシステムをさらに操作させ、前記制限付きサブシステムが前記メインサブシステムのために管理タスクを実行するように構成され、前記制限付きサブシステムが、前記メインサブシステムを初期化し、前記信用証明書を前記第2の安全な暗号プロセッサに提供させるようにさらに構成される、
    請求項1に記載のホストコンピュータシステム。
  3. 前記第1の署名済み測定値が、前記第1の暗号プロセッサに対応する第1の認証完全性鍵の対及び第1のホストアイデンティティ鍵の対をさらに含み、前記第2の署名済み測定値が、前記第2の暗号プロセッサに対応する第2の認証完全性鍵の対及び第2のホストアイデンティティ鍵の対をさらに含む、請求項1に記載のホストコンピュータシステム。
  4. コンピュータによって実装される方法であって、
    カスタマシステムからコンピューティングデバイスのメインサブシステムへの認証要求を受信することであって、前記コンピューティングデバイスが前記カスタマシステムと関連付けられたカスタマ仮想マシンを操作する、前記受信することと、
    前記コンピューティングデバイスに物理的に接続された信頼できるハードウェアを使用し、提供された制限付きサブシステムに要求を送信することであって、前記制限付きサブシステムが前記カスタマ仮想マシンのために管理タスクを実行するように構成された、前記送信することと、
    前記制限付きサブシステムから、前記制限付きサブシステムのための第1の信用証明書を含む第1の測定値を受信することであって、前記第1の信用証明書が、証明機関によって提供された第1の証明書を使用し、生成される、前記受信することと、
    前記メインサブシステムのための第2の信用証明書及び前記カスタマ仮想マシンのための状態情報を含む第2の測定値を生成することであって、前記第2の信用証明書が、前記制限付きサブシステムによって提供された第2の証明書を使用し、生成される、前記生成することと、
    前記カスタマシステムに認証応答を送信することであって、前記認証応答が前記第1の測定値及び前記第2の測定値を含む、前記送信することと、
    を含む、前記コンピュータによって実装される方法。
  5. 前記制限付きサブシステムの第1の安全な暗号プロセッサに対する前記第1の証明書を受信することと、
    前記第1の安全な暗号プロセッサの前記第1の証明書及び第1の承認鍵を使用し、前記第1の信用証明書を生成することであって、前記第1の承認鍵が前記第1の安全な暗号プロセッサからエクスポートできない、前記生成することと、
    をさらに含む、請求項4に記載のコンピュータによって実装される方法。
  6. 前記メインサブシステムの第2の安全な暗号プロセッサに対する前記第2の証明書を受信することと、
    前記第2の安全な暗号プロセッサの前記第2の証明書及び第2の承認鍵を使用し、前記第2の信用証明書を生成することであって、前記第2の承認鍵が前記第2の安全な暗号プロセッサからエクスポートできない、前記生成することと、
    をさらに含む、請求項5に記載のコンピュータによって実装される方法。
  7. 前記認証要求に含まれる第1の識別子を使用する前記ホストマシンのアイデンティティ、及び前記認証要求に含まれる第2の識別子を使用するカスタママシン画像のアイデンティティを、前記要求を前記制限付きサブシステムに送信する前に検証すること、
    をさらに含む、請求項4に記載のコンピュータによって実装される方法。
  8. 前記第1の測定値及び前記第2の測定値の少なくとも1つを使用し、少なくとも1つのハッシュ値を生成することと、
    前記少なくとも1つのハッシュ値を前記認証応答に含むことであって、前記少なくとも1つのハッシュ値が前記カスタマシステムと関連付けられる、前記含むことと、
    をさらに含む、請求項4に記載のコンピュータによって実装される方法。
  9. 前記測定値が、引用または暗号学的に検証可能な測定値の1つである、請求項4に記載のコンピュータによって実装される方法。
  10. 前記信頼できるハードウェアが、前記コンピューティングデバイスが動作する環境のプロバイダによって構成されたファームウェア及び命令を含むペリフェラルカードであり、前記ペリフェラルカードが前記コンピューティングデバイスよりも高いレベルの信頼を有する、請求項4に記載のコンピュータによって実装される方法。
  11. 前記認証要求に含まれる課題情報を決定することと、
    前記課題情報を前記認証応答に含むことと、
    をさらに含む、請求項4に記載のコンピュータによって実装される方法。
  12. ホストコンピューティングデバイスで動作する制限付きサブシステムであって、
    少なくとも1つのプロセッサと、
    前記少なくとも1つのプロセッサによって実行されるときに、前記制限付きサブシステムに、
    前記ホストコンピューティングデバイス上のメインサブシステムで実行中の仮想マシンに対する認証要求を受信させ、前記制限付きサブシステムが、前記ホストコンピューティングデバイスに物理的に接続された信頼できるハードウェアを使用し、提供され、前記仮想マシンのために管理タスクを実行するように構成され、
    前記制限付きサブシステムのための第1の信用証明書を含む第1の測定値を生成させ、前記第1の信用証明書が、証明機関によって提供された第1の証明書を使用し、生成され、
    前記ホストコンピューティングデバイスの前記メインサブシステムに、前記メインサブシステムのための第2の信用証明書及び前記カスタマ仮想マシンのための状態情報を含む第2の測定値を生成させ、前記第2の信用証明書が、前記制限付きサブシステムによって提供された第2の証明書を使用し、生成され、
    前記第1の測定値及び前記第2の測定値を含む認証応答を送信させる、
    命令を記憶するメモリと、
    を備える、前記制限付きサブシステム。
  13. 前記命令が、実行時に、前記ホストコンピューティングデバイスにさらに、
    前記第2の証明書を前記メインサブシステムの第2の安全な暗号プロセッサに送信させ、
    前記第2の安全な暗号プロセッサの前記第2の証明書及び第2の承認鍵を使用し、前記第2の信用証明書を生成させ、前記第2の承認鍵が前記第2の安全な暗号プロセッサからエクスポートできない、
    請求項12に記載の制限付きサブシステム。
  14. 前記命令が、実行時に、前記ホストコンピューティングデバイスにさらに、
    前記認証要求に含まれる暗号ノンスを決定させ、
    前記暗号ノンスを前記認証応答に含ませる、
    請求項12に記載の制限付きサブシステム。
  15. 前記命令が、実行時に、前記ホストコンピューティングデバイスにさらに、
    前記認証要求に含まれる第1の識別子を使用し、前記認証要求のターゲットとして前記ホストコンピューティングデバイスを検証させる、
    請求項12に記載の制限付きサブシステム。
JP2018529648A 2015-12-07 2016-12-07 チェーン接続セキュリティシステム Active JP6591678B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/960,553 US10169591B2 (en) 2015-12-07 2015-12-07 Chained security systems
US14/960,553 2015-12-07
PCT/US2016/065351 WO2017100303A1 (en) 2015-12-07 2016-12-07 Chained security systems

Publications (2)

Publication Number Publication Date
JP2018537785A true JP2018537785A (ja) 2018-12-20
JP6591678B2 JP6591678B2 (ja) 2019-10-16

Family

ID=57570474

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018529648A Active JP6591678B2 (ja) 2015-12-07 2016-12-07 チェーン接続セキュリティシステム

Country Status (7)

Country Link
US (2) US10169591B2 (ja)
EP (1) EP3387580B1 (ja)
JP (1) JP6591678B2 (ja)
KR (1) KR102110273B1 (ja)
CN (1) CN108351944B (ja)
CA (1) CA3004189C (ja)
WO (1) WO2017100303A1 (ja)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11310050B2 (en) * 2018-09-17 2022-04-19 Microsoft Technology Licensing, Llc Verifying a computing device after transport
CN105184154B (zh) * 2015-09-15 2017-06-20 中国科学院信息工程研究所 一种在虚拟化环境中提供密码运算服务的系统和方法
US10169591B2 (en) 2015-12-07 2019-01-01 Amazon Technologies, Inc. Chained security systems
US10050947B2 (en) * 2016-01-28 2018-08-14 Cisco Technology, Inc. Key distribution in a distributed network environment
CN107133520B (zh) * 2016-02-26 2021-05-14 华为技术有限公司 云计算平台的可信度量方法和装置
US10412191B1 (en) 2016-03-30 2019-09-10 Amazon Technologies, Inc. Hardware validation
US10790978B2 (en) * 2016-05-25 2020-09-29 Intel Corporation Technologies for collective authorization with hierarchical group keys
US20180198620A1 (en) * 2017-01-11 2018-07-12 Raptor Engineering, LLC Systems and methods for assuring data on leased computing resources
US10819696B2 (en) * 2017-07-13 2020-10-27 Microsoft Technology Licensing, Llc Key attestation statement generation providing device anonymity
GB2566264B (en) * 2017-09-01 2020-05-13 Trustonic Ltd Application certificate
US10635821B2 (en) * 2017-10-13 2020-04-28 Baidu Usa Llc Method and apparatus for launching a device
US11824882B2 (en) * 2018-08-13 2023-11-21 Ares Technologies, Inc. Systems, devices, and methods for determining a confidence level associated with a device using heuristics of trust
US11695783B2 (en) * 2018-08-13 2023-07-04 Ares Technologies, Inc. Systems, devices, and methods for determining a confidence level associated with a device using heuristics of trust
US10771264B2 (en) 2018-10-10 2020-09-08 Hewlett Packard Enterprise Development Lp Securing firmware
US11444846B2 (en) * 2019-03-29 2022-09-13 Intel Corporation Technologies for accelerated orchestration and attestation with edge device trust chains
WO2020206355A1 (en) * 2019-04-03 2020-10-08 Cisco Technology, Inc. Verifying the trust-worthiness of a physical host underlying a virtual network element
US11212119B2 (en) * 2019-04-05 2021-12-28 Cisco Technology, Inc. Remote attestation of modular devices with multiple cryptoprocessors
CN111865568B (zh) * 2019-04-29 2022-10-04 华控清交信息科技(北京)有限公司 面向数据传输的存证方法、传输方法及系统
US11507666B2 (en) 2019-08-27 2022-11-22 Red Hat, Inc. Trusted execution environment verification of a software package
KR20210063055A (ko) 2019-11-22 2021-06-01 서강대학교산학협력단 신뢰 실행 환경을 이용한 분산 블록체인 오라클 시스템 및 상기 시스템에서의 외부 데이터 전달 방법
US10997297B1 (en) * 2019-12-06 2021-05-04 Western Digital Technologies, Inc. Validating firmware for data storage devices
KR102364450B1 (ko) 2019-12-06 2022-02-17 서강대학교 산학협력단 블록체인을 기반으로 한 센서 네트워크 시스템 및 상기 센서 네트워크 시스템에서의 동적 링크키 생성 방법
US20200127850A1 (en) * 2019-12-20 2020-04-23 Intel Corporation Certifying a trusted platform module without privacy certification authority infrastructure
US11909882B2 (en) * 2020-01-30 2024-02-20 Dell Products L.P. Systems and methods to cryptographically verify an identity of an information handling system
US11604880B2 (en) 2020-02-25 2023-03-14 Dell Products L.P. Systems and methods to cryptographically verify information handling system configuration
US11558198B2 (en) * 2020-04-07 2023-01-17 Cisco Technology, Inc. Real-time attestation of cryptoprocessors lacking timers and counters
KR102565850B1 (ko) 2020-08-14 2023-08-09 서강대학교 산학협력단 신뢰 실행 환경을 기반으로 한 탈중앙형 오라클 시스템 및 상기 시스템에서의 외부 데이터 전달 방법
CN112995206B (zh) * 2021-04-13 2021-07-30 北京电信易通信息技术股份有限公司 一种基于可信技术实现多型工作单元安全联动的方法
US11989282B2 (en) * 2021-09-10 2024-05-21 International Business Machines Corporation Open-source container data management
WO2023149648A1 (ko) * 2022-02-07 2023-08-10 삼성전자 주식회사 보안 기능을 제공하는 전자 장치 및 그의 동작 방법
US20240036902A1 (en) * 2022-07-26 2024-02-01 Microsoft Technology Licensing, Llc Accumulations of measurements for attestations
CN116506134B (zh) * 2023-06-28 2023-09-15 山东海量信息技术研究院 数字证书管理方法、装置、设备、系统及可读存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060256108A1 (en) * 2005-05-13 2006-11-16 Scaralata Vincent R Method and apparatus for remotely provisioning software-based security coprocessors
KR20080008361A (ko) * 2005-05-13 2008-01-23 인텔 코포레이션 소프트웨어 기반 보안 코프로세서를 제공하는 방법, 장치및 처리 시스템
JP2008123513A (ja) * 2006-11-09 2008-05-29 Internatl Business Mach Corp <Ibm> 仮想化されたレジスタを有するトラステッド・デバイス
WO2009107349A1 (ja) * 2008-02-25 2009-09-03 パナソニック株式会社 情報処理装置
US8176336B1 (en) * 2008-12-19 2012-05-08 Emc Corporation Software trusted computing base
JP2013519929A (ja) * 2010-02-16 2013-05-30 パナソニック株式会社 情報処理装置、情報処理システム、ソフトウェアルーチン実行方法およびリモート認証方法
US20140108784A1 (en) * 2012-10-12 2014-04-17 International Business Machines Corporation Reducing noise in a shared media sesssion

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8627414B1 (en) 2009-08-04 2014-01-07 Carnegie Mellon University Methods and apparatuses for user-verifiable execution of security-sensitive code
US20140006776A1 (en) * 2012-06-29 2014-01-02 Mark Scott-Nash Certification of a virtual trusted platform module
CN103795717B (zh) * 2014-01-23 2017-01-25 中国科学院计算技术研究所 一种云计算平台完整性证明方法及其系统
US10169591B2 (en) 2015-12-07 2019-01-01 Amazon Technologies, Inc. Chained security systems

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060256108A1 (en) * 2005-05-13 2006-11-16 Scaralata Vincent R Method and apparatus for remotely provisioning software-based security coprocessors
KR20080008361A (ko) * 2005-05-13 2008-01-23 인텔 코포레이션 소프트웨어 기반 보안 코프로세서를 제공하는 방법, 장치및 처리 시스템
JP2008541279A (ja) * 2005-05-13 2008-11-20 インテル コーポレイション ソフトウェア・ベースのセキュリティ・コプロセッサを提供する方法および装置
JP2008123513A (ja) * 2006-11-09 2008-05-29 Internatl Business Mach Corp <Ibm> 仮想化されたレジスタを有するトラステッド・デバイス
WO2009107349A1 (ja) * 2008-02-25 2009-09-03 パナソニック株式会社 情報処理装置
US20100325628A1 (en) * 2008-02-25 2010-12-23 Tomoyuki Haga Information processing device
CN101960464A (zh) * 2008-02-25 2011-01-26 松下电器产业株式会社 信息处理装置
US8176336B1 (en) * 2008-12-19 2012-05-08 Emc Corporation Software trusted computing base
JP2013519929A (ja) * 2010-02-16 2013-05-30 パナソニック株式会社 情報処理装置、情報処理システム、ソフトウェアルーチン実行方法およびリモート認証方法
US20140108784A1 (en) * 2012-10-12 2014-04-17 International Business Machines Corporation Reducing noise in a shared media sesssion
JP2015532561A (ja) * 2012-10-12 2015-11-09 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データ・センター内のデータ・センター・サーバで実行される仮想ディスク・イメージの地理的位置を確認するための方法、システム、およびコンピュータ・プログラム製品

Also Published As

Publication number Publication date
EP3387580A1 (en) 2018-10-17
US10169591B2 (en) 2019-01-01
EP3387580B1 (en) 2020-03-04
CN108351944B (zh) 2021-11-09
CA3004189C (en) 2020-12-29
JP6591678B2 (ja) 2019-10-16
WO2017100303A1 (en) 2017-06-15
US10621366B2 (en) 2020-04-14
US20170161505A1 (en) 2017-06-08
KR102110273B1 (ko) 2020-05-13
KR20180069856A (ko) 2018-06-25
CN108351944A (zh) 2018-07-31
CA3004189A1 (en) 2017-06-15
US20190138736A1 (en) 2019-05-09

Similar Documents

Publication Publication Date Title
JP6591678B2 (ja) チェーン接続セキュリティシステム
US11050844B2 (en) User controlled hardware validation
US11228449B2 (en) Secure interface for invoking privileged operations
US9792143B1 (en) Platform secure execution modes
KR101704329B1 (ko) 프리빌리지 컴퓨팅 작동의 결과 보호
US10685119B2 (en) Trusted malware scanning
JP6141455B2 (ja) 仮想化された環境における特権的な暗号サービス
US20220222100A1 (en) Integrity protection of container image disks using secure hardware-based attestation in a virtualized and clustered computer system
US10691356B2 (en) Operating a secure storage device
US11893410B2 (en) Secure storage of workload attestation reports in a virtualized and clustered computer system
US10579405B1 (en) Parallel virtual machine managers

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180607

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190805

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: 20190820

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190918

R150 Certificate of patent or registration of utility model

Ref document number: 6591678

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250