JP2014199672A - データセンタへのプラットフォームの内包検証 - Google Patents

データセンタへのプラットフォームの内包検証 Download PDF

Info

Publication number
JP2014199672A
JP2014199672A JP2014121493A JP2014121493A JP2014199672A JP 2014199672 A JP2014199672 A JP 2014199672A JP 2014121493 A JP2014121493 A JP 2014121493A JP 2014121493 A JP2014121493 A JP 2014121493A JP 2014199672 A JP2014199672 A JP 2014199672A
Authority
JP
Japan
Prior art keywords
platform
data center
key
private key
logic
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
JP2014121493A
Other languages
English (en)
Other versions
JP2014199672A5 (ja
JP5869052B2 (ja
Inventor
サットン,ジェイムズ,セカンド
Sutton Ii James
グロウロック,デイヴィッド
Grawrock David
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 JP2014199672A publication Critical patent/JP2014199672A/ja
Publication of JP2014199672A5 publication Critical patent/JP2014199672A5/ja
Application granted granted Critical
Publication of JP5869052B2 publication Critical patent/JP5869052B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • 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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/104Grouping of entities
    • 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/2103Challenge-response

Abstract

【課題】本発明の課題は、データセンタ内にプラットフォームが含まれているか検証するための効果的な方法及び装置を提供することである。
【解決手段】本発明の一特徴は、マシーンにより実行されると、前記マシーンに処理を実行させる命令を提供するマシーン読み出し可能な記憶媒体であって、データセンタコンピュータシステムの任意数のサーバの1つが損傷したと判断すると、前記データセンタコンピュータシステムの任意数のサーバに保持される現在の暗号鍵ペアを破棄するステップと、前記データセンタコンピュータシステムと関連付けされる新たな暗号鍵ペアを生成するステップと、前記新たな暗号鍵ペアの新たな秘密鍵を損傷した前記任意数のサーバに格納するステップとを実行することからなることを特徴とする記憶媒体に関する。
【選択図】図2

Description

本発明は、データセンタ内にプラットフォームが含まれているか検証するための方法及び装置に関する。
通信ネットワークと、そのようなネットワーク間でのデータ交換及び転送を行うユーザ数は、継続的に増加してきている。特に、インターネットの出現により、電子商取引は、ユーザの個人情報及び/または財務情報の交換及び/または転送を発生させてきた。現在、与えられたウェブサイトにより電子商取引はを完結させようとするユーザ及び/または企業が、当該ウェブサイトに関連付けされるサーバと通信している保証はほとんどない。特に、インターネットプロトコル(IP)の覗き(snooping)は、与えられたコンピュータプラットフォームがウェブサイトと関連付けされているかのように偽装することができ、これにより(このウェブサイトにより電子商取引を行おうとする)ユーザを騙して個人情報及び/または財務情報を開示させるなど、より巧妙なものとなりつつある。
与えられたコンピュータプラットフォーム/サーバとの通信に関する安全性と信頼性を向上させるため、TCPA(Trusted Computing Platform Alliance)が構成された。TCPAは、2001年12月1日のTCPAメイン仕様書バージョン1.1aにおいて、向上した信頼性を提供し、既存サービス及び新規サービスの拡張を可能にするTPM(Trusted Platform Module)あるいは物理的トークンを解説している。TPMは、ソフトウェアプロセスのチェック及びログ処理、プラットフォームブートインテグリティ、ファイルインテグリティ及びソフトウェアライセンス処理をサポートする。TPMは、与えられるハードウェア(例えば、プロセッサ、チップセット、ファームウェアなど)により定義されるようなプラットフォームの身元を証明するのに利用可能なプラットフォームに対する保護された情報ストアを提供する。これらの特徴は、そうでなければ拒絶されるような第三者に情報へのプラットフォームアクセスを付与することを奨励する。
TCPAにより導入された規格は、与えられたコンピュータプラットフォームの安全性及び信頼性の問題に対してあるレベルの救済を提供する一方、その用途に関して制約を受ける。特に、インターネットのユーザ数の増加により、与えられたウェブサイトは、個々のウェブサイトのための負荷要求を処理するための複数のコンピュータプラットフォーム/サーバを有することが求められる。これにより、通信中におけるこれらのプラットフォーム/サーバの動的な選択により安全な通信を提供する機能が複雑化する。
本発明の課題は、データセンタ内にプラットフォームが含まれているか検証するための効果的な方法及び装置を提供することである。
上記課題を解決するため、本発明の一特徴は、マシーンにより実行されると、前記マシーンに処理を実行させる命令を提供するマシーン読み出し可能な記憶媒体であって、データセンタコンピュータシステムの任意数のサーバの1つが損傷したと判断すると、前記データセンタコンピュータシステムの任意数のサーバに保持される現在の暗号鍵ペアを破棄するステップと、前記データセンタコンピュータシステムと関連付けされる新たな暗号鍵ペアを生成するステップと、前記新たな暗号鍵ペアの新たな秘密鍵を損傷した前記任意数のサーバに格納するステップとを実行することからなることを特徴とする記憶媒体に関する。
本発明によると、データセンタ内にプラットフォームが含まれているか検証するための効果的な方法及び装置を提供することができる。
図1Aは、本発明の実施例によるデータセンタ内におけるプラットフォームの検証を行うためのシステムを示す。 図1Bは、本発明の実施例によるデータセンタ内におけるプラットフォームの検証を行うためのシステムを示す。 図2は、本発明の実施例によるプラットフォームのより詳細なブロック図を示す。 図3は、本発明の一実施例による管理者ユニット106のブロック図を示す。 図4は、本発明の一実施例によるチャレンジャユニット108のブロック図を示す。 図5Aは、本発明の実施例によるデータセンタ内への内包の検証のための秘密鍵の格納処理のフロー図を示す。 図5Bは、本発明の実施例によるデータセンタ内への内包の検証のための秘密鍵の格納処理のフロー図を示す。 図6は、本発明の一実施例によるプラットフォームがデータセンタに含まれているかの検証のためのフロー図を示す。 図7は、本発明の一実施例によるプラットフォームがデータセンタに含まれているかの検証への応答のためのフロー図を示す。 図8は、本発明の一実施例によるデータセンタの秘密鍵を破棄するためのフロー図を示す。
以下、図面に基づいて本発明の実施の形態を説明する。
ここで開示される発明は、実施例により、添付された図面における制限を受けることなく例示される。例示の簡単化のため、図面に示される要素はスケーリングして描かれる必要はない。例えば、簡単化のため、いくつかの要素のサイズは他の要素と比較して誇張されているかもしれない。さらに、適切である場合には、対応する要素あるいは同様の要素を示すのに、図面を通じて同一の参照番号が繰り返し利用されている。
以下の説明は、データセンタ内にプラットフォームが含まれているか検証するための方法及び装置を説明する。以下の説明では、本発明のより完全な理解を提供するため、論理の実現形態、オペコード、オペランド指定手段、リソース分割/共有/複製の実現形態、システム要素のタイプ及び相互関係、論理分割/合成選択などの多数の具体的詳細が与えられる。しかしながら、本発明は、そのような具体的詳細なく実践されうるということは当業者には理解されるであろう。他の例では、本発明を不明瞭にしないように、制御構造、ゲートレベルの回路や完全なソフトウェア命令シーケンスは詳細には示されていない。与えられた説明により、当業者は過度の試験なく適切な機能を実現することができるであろう。
本明細書中の「一実施例」、「ある実施例」、「実施例」などの表現は、説明されている実施例が特定の特徴、構成あるいは特性を有するが、あらゆる実施例がこの特徴、構成あるいは特性を必ずしも備える必要がないということを示している。さらに、そのような表現は必ずしも同一の実施例を参照するものでない。さらに、ある実施例と共に特定の特徴、構成あるいは特性が説明されるとき、明示的に説明されていなくても、他の実施例と共にそのような特徴、構成あるいは特性を実効化することは当業者の知識の範囲内であると考えられる。
以下の説明及びクレームでは、「結合(coupled)」と「接続(connected)」という用語は、それらの派生語と共に利用されてもよい。これらの用語は互いに同義語として使用されていないということを理解すべきである。特定の実施例では、「接続」という用語は、2以上の要素が互いに直接的に物理的あるいは電気的に接触していることを示すのに利用される。しかしながら、「結合」とは、2以上の要素が互いに直接的には接触していないが、依然として互いに協調あるいはやりとりしていることを意味する。
図1から図4は、本発明の実施例によるデータセンタ内にプラットフォームが含まれているか検証するためのシステムのブロック図を示す。図5から図9は、本発明の実施例によるデータセンタ内にプラットフォームが含まれているか検証するための処理を示すフロー図を示す。フロー図における処理は、ブロック図に示されるシステムを参照して説明される。しかしながら、フロー図の処理は、ブロック図を参照して説明される以外のシステムの実施例によっても実行可能であり、システムを参照して説明される実施例はフロー図を参照して説明されるものとは異なる処理も実行できるということは理解されるべきである。
図1A及び1Bは、本発明の実施例によるデータセンタ内のプラットフォームの検証を行うためのシステムを示す。図1Aに関して、システム100は、チャレンジャユニット108、ネットワーク102及びデータセンタ140からなる。データセンタ140は、管理者ユニット106とプラットフォーム104A〜104I(すなわち、複数のプラットフォームに対して1つ)を有するようにしてもよい。
一実施例では、プラットフォーム104A〜104Iは、ネットワーク内の同一物と関連付けされている。例えば、プラットフォーム104A〜104Iは、所与のウェブサイトと関連付けされたサーバであってもよい。そのようなウェブサイトは、製品(書籍、コンピュータプロダクツ、オンラインオークションの製品など)の売り手や販売業者と関連付けされていてもよい。ここで、このウェブサイトの顧客数は極めて多数であるため、これらの顧客からのリクエストに関する負荷を処理するため多数のサーバが必要とされる。さらに、データセンタ140内の異なるプラットフォームが様々な機能を提供するようにしてもよい。例えば、第1プラットフォーム群104がアプリケーションサーバを有する一方、第2プラットフォーム群104が同一のウェブサイトのためのデータベースサーバを構成するようにしてもよい。
以下でより詳細に説明されるように、プラットフォーム104A〜104Iは、対となる暗号鍵の一部であるデータセンタ秘密鍵120を保持しているかもしれない。さらに、与えられたデータセンタ秘密鍵120は、様々な暗号化アルゴリズムに基づく暗号鍵ペアの一部であってもよい。一実施例では、暗号鍵ペアは、RSA(Rivest−Shamir−Adleman)暗号化アルゴリズムに基づくもののような非対称暗号鍵ペアであってもよい。一実施例では、データセンタ秘密鍵120は、異なるプラットフォーム104A〜104Iに保持される同一の秘密鍵である。管理者ユニット106は、この暗号鍵ペアを生成するようにしてもよい。ここで、データセンタ秘密鍵120はプラットフォーム104A〜104Iに保持される一方、この暗号鍵ペアの対応する公開鍵は、データセンタ140内へのプラットフォームの内包のチャレンジのため、チャレンジャユニット108に配布されてもよい(以下でより詳細に説明されるように)。
チャレンジャユニット108とデータセンタ140の構成要素は、ネットワーク102を介して共に結合されているかもしれない。一実施例では、ネットワーク102はローカルエリアネットワーク(LAN)であるかもしれない。一実施例では、ネットワーク102はワイドエリアネットワーク(WAN)であるかもしれない。さらに、ネットワーク102は、チャレンジャユニット108とデータセンタ140の構成要素とを結合する異なるネットワークの組み合わせであってもよい。一実施例では、バーチャルプライベートネットワーク(VPN)が、データセンタ140のユニットとチャレンジャユニット108間での通信で利用されてもよい。
図1Bに関して、システム150は、チャレンジャユニット108、認証機関116、ネットワーク102及びデータセンタ180からなる。チャレンジャユニット108は、認証機関116及びデータセンタの構成要素180は、ネットワーク102を介して結合される。データセンタ180は、管理者ユニット106とプラットフォーム105A〜105Iを有する(すなわち、複数のプラットフォームに対して1つ)。
以下でより詳細に説明されるように、プラットフォーム105A〜105Iは、認証データセンタ識別秘密鍵130A〜130Iを保持する。一実施例では、プラットフォーム105A〜105Iは、異なる認証データセンタ識別秘密鍵130A〜130Iを保持する。例えば、図示されるように、プラットフォーム105Aは認証データセンタ識別秘密鍵130Aを保持する一方、プラットフォーム105Iは認証データセンタ識別秘密鍵130Iを保持する。さらに、与えられた認証データセンタ識別秘密鍵130A〜130Iは、複数の暗号化アルゴリズムに基づく暗号鍵ペアの一部であってもよい。一実施例では、暗号鍵ペアは、RSA暗号化アルゴリズムに基づくもののような非対称暗号鍵ペアであってもよい。
一実施例では、この暗号鍵ペアは、プラットフォーム105により生成されてもよい。管理者ユニット106は、認証機関116により署名されたルート鍵170を生成するようにしてもよく、これにより署名鍵175が生成される。署名鍵175は、プラットフォーム105A〜105Iに保持される異なる認証データセンタ識別鍵130A〜130Iの認証に利用されてもよい。
システム100と150はそれぞれ、チャレンジャユニット108がデータセンタ140と180の外部にあるように示されているが、本発明の実施例はそれに限定されるものでない。例えば、管理者ユニット106とチャレンジャユニット108は、同一のユニットの一部であってもよい。他の実施例では、チャレンジャユニット108は、データセンタ140と180の内部にあるが、管理者ユニット106とは独立していてもよい。システム150に関して、一実施例では、認証機関116は、管理者ユニット106の一部であってもよい。他の実施例では、認証機関116は、データセンタ180の一部であるが、管理者ユニット106から独立していてもよい。システム100と150の動作が以下でより詳細に説明される。
図2は、本発明の実施例によるプラットフォームのより詳細なブロック図を示す。図示されるように、プラットフォーム104/105は、1以上のプロセッサ210、チップセット220、メモリ230、プラットフォーム鍵アプリケーション論理202、トークン250、ネットワークコントローラ240及び他の入出力(I/O)装置270からなる。プロセッサ110は、チップセット220とプラットフォーム鍵アプリケーション論理202に結合される。メモリ230は、プラットフォーム鍵アプリケーション論理202とチップセット220に結合される。
プロセッサ110は、例えば、リアルモード、プロテクトモード、バーチャル8086モード、バーチャルマシーンモード(VMXモード)などの1以上の動作モードをサポートするようにしてもよい。さらに、プロセッサ110は、サポートされている各動作モードの1以上の優先レベルをサポートするようにしてもよい。一般に、プロセッサ110の動作モードと優先レベルは、実行に対して利用可能な命令とそのような命令の効果を規定する。より詳細には、プロセッサ110は、適切なモード及び/または優先レベルにある場合のみ、優先された命令を実行することを許可されるかもしれない。
チップセット220は、プロセッサ210をメモリ230、ネットワークコントローラ240、トークン250、例えば、マウス、キーボード、ディスクドライブ、ビデオコントローラなどのプラットフォーム104/105の他のI/O装置270に結合する1以上の集積回路パッケージあるいはチップから構成される。チップセット220は、メモリ230とのデータの読み書きを行うメモリコントローラ(図示せず)を有する。さらに、チップセット220及び/またはプロセッサ210は、特定の動作モード(例えば、プロテクトモードなど)や優先レベル(例えば、0Pなど)にあるとき、プロセッサ210によってのみアクセスが可能なプロテクトメモリとしてメモリ230の特定領域を規定するかもしれない。
ネットワークコントローラ240は、一般に、ネットワーク102を介して管理者ユニット106、認証機関116、チャレンジャユニット108などの各種リモート装置とプラットフォーム104/105が通信するための通信機構を提供する。例えば、ネットワークコントローラ240は、プラットフォーム104を1以上のリモート装置に結合するため、10メガバイト(MB)、100MBイーサネット(登録商標)コントローラ、ケーブルモデム、デジタル加入者線(DSL)モデム、POTS(Plain Old Telephone Service)モデムなどを有するようにしてもよい。
図2のプラットフォーム104/105の異なる実施例に示されるように、秘密鍵225は、トークン250に保持されてもよい。しかしながら、本発明の実施例はそのような実施例に限定されるものでなく、秘密鍵225はプラットフォーム104/105内の様々な場所に保持されてもよい。秘密鍵225は、チップセット220、メモリ230、プロセッサ210のキャッシュ112及びプラットフォーム104/105内の他の場所に保持されてもよい。秘密鍵225は、データセンタ秘密鍵120(図1Aに示される)及び/または認証データセンタ識別秘密鍵130(図1Bに示される)を表す。一実施例では、秘密鍵225の保持は、それへのアクセスが安全と考えられる処理に限定されるように行われる。
トークン250は、処理ユニット258、多数のプラットフォーム設定レジスタ(PCR)225及び秘密鍵225からなる。一般に、プラットフォーム104/105のトークン250は、インテグリティメトリック(integrity metric)、鍵および秘密のためのプロテクトされた記憶装置を有し、プロセッサ210やチップセット220からのリクエストに応答して様々なインテグリティ機能を実行する。特に、トークン250は、信頼された方法によりインテグリティメトリックを保持し、信頼された方法によりインテグリティメトリックを引用し、特定の環境(現在あるいは以降)に対して秘密を保持し、秘密が保持されていた環境に対して秘密を開示するかもしれない。さらに、後述されるように、トークン250は、データセンタ140/180内でのプラットフォームの内包の検証に対してプラットフォーム104/105を特定する秘密鍵225を有するかもしれない。
トークン250は、それが1つのみのプラットフォーム104/105と関連付けされているという保証をリモート装置(例えば、チャレンジャユニット108)に提供するため、プラットフォーム104/105に付属あるいは内蔵されているかもしれない。例えば、トークン250は、チップセット220のチップの1つ及び/またはプラットフォーム104/105のメインボードに搭載された表面に組み込まれているかもしれない。固定されたトークン250の一意性とプラットフォーム104/105へのそれの内蔵により、リモート装置は、秘密鍵225に対応する公開鍵に基づきある程度の確実さをもってプラットフォーム104/105を特定するかもしれない。一実施例では、トークン250の動作は、プラットフォーム104/105の他のモジュールに内蔵されてもよい。例えば、一実施例では、トークン250の動作は、チップセット220、メモリ230内の安全なメモリ(例えば、バーチャルトークン)などに内蔵されていてもよい。一実施例では、トークン250の動作は、バーチャルトークンに内蔵することもできる。バーチャルトークンと、それと物理的トークンとの関係は、米国特許出願第10/028,984号「バーチャルトークンと物理的トークンとの接続(Connecting a Virtual Token to a Physical Token)」により詳細に説明されている。
PCR255は、信頼された方法によりインテグリティメトリックの記録及び通知を行うのに利用される。処理ユニット258は、引用やコンテンツを特定されたPCR255の1つに返すPCR引用動作をサポートするようにしてもよい。一実施例では、PCR引用動作は、PCR255に保持される値のデジタル署名であるかもしれない。処理ユニット258はまた、特定されたPCR255に受け取ったインテグリティメトリックを記録するPCR拡張動作をサポートするようにしてもよい。特に、PCR拡張動作は、(i)付属のインテグリティメトリックの取得のため、特定されたPCR225に保持されるインテグリティメトリックに受け取ったインテグリティメトリックを連結あるいは添付し、(ii)受け取ったインテグリティメトリックと特定されたPCR255により記録された以前のインテグリティメトリックを表す更新されたインテグリティメトリックを取得するため、添付されたインテグリティメトリックをハッシュ処理し、(iii)PCR255の1つに更新されたインテグリティメトリックを格納する。
ここで使用される「ハッシュ処理する」という動詞とその関連する形式は、値あるいは「ハッシュ」を生成するため、オペランドやメッセージに処理を実行するということを言及するものである。理想的には、ハッシュ処理によりハッシュが生成され、このハッシュからは当該ハッシュを有するメッセージの検出は計算上実現不可能であり、また当該ハッシュからは当該ハッシュを有するメッセージに関する利用可能な情報を決定することはできないという性質を備えている。さらに、ハッシュ処理は理想的には、同一のハッシュを生成する2つのメッセージの決定は計算上実現不可能であるようなハッシュを生成する。ハッシュ処理は理想的には上記性質を備えるが、実際上は、例えば、MD5(Message Digest 5)関数やSHA−1(Secure Hashing Algorithm 1)のような一方向関数(one−way function)により、メッセージの演繹が困難であり、計算量の大きい、及び/または実際上実現不可能なハッシュ値が生成される。
トークン250は、様々な方法により実現することができる。しかしながら、一実施例では、トークン250は、2001年12月1日の信頼されるTCPAメイン仕様書バージョン1.1aに詳細に説明されるTPM(Trusted Platform Module)の仕様書に従うよう実現される。
さらに、プラットフォーム104/105は、プラットフォーム鍵アプリケーション論理202を有する。一実施例では、プラットフォーム鍵アプリケーション論理202は、メモリ230及び/またはプロセッサ210内に配置することが可能であり、プロセッサ210内で実行可能なプロセスあるいはタスクである。従って、プラットフォーム104/105は、ここで開示される方法の何れかあるいはすべてを実現する命令セット(すなわち、ソフトウェア)が記憶された機械読取可能な媒体を有するかもしれない。本明細書において、「機械読取可能な媒体」という用語は、機械(例えば、コンピュータなど)により読取可能な形式で情報を提供(すなわち、格納及び/または送信)する任意の機構を含むものと解される。例えば、機械読取可能な媒体には、ROM(Read−Only Memory)、RAM(Random Access Memory)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリ装置、電子、光学、音響または他の形式による伝搬信号(例えば、搬送波、赤外線信号、デジタル信号など)などが含まれる。
しかしながら、本発明の実施例はこれに制限されるものではなく、プラットフォーム鍵アプリケーション論理202は、ここで説明される処理(以下でより詳細に説明される)を実行する(デジタル論理のような)各種ハードウェアであってもよい。さらに、以下でより詳細に説明されるように、プラットフォーム鍵アプリケーション論理202は、処理ユニット258にPCR255内に保持されている値を抽出させ、及び/または秘密鍵225を利用してPCR255内に保持される値を署名させる。さらに、プラットフォーム鍵アプリケーション論理202は、多数の動作を実行するものとしてここで説明される。例えば、プラットフォーム鍵アプリケーション論理202は、トークン250内において多数の処理を実行させる。しかしながら、本発明の実施例はこれに制限されるものではない。たとえば、他の実施例では、そのような処理は、トークン205内で直接実行されるように、プラットフォーム鍵アプリケーション論理202とは独立に実行される。
さらに、一実施例では、プラットフォーム104/105は、プラットフォーム鍵アプリケーション論理202がプラットフォーム104/105内の安全な環境の一部となるよう設定される。さらに、プラットフォーム104/105との通信は、このような安全な環境内にあるプラットフォーム104/105のメモリの一部へのアクセスを許可する前に、検証が行われるように構成される。一実施例では、このような通信は、オブジェクトから独立した認証プロトコル及び/またはオブジェクト固有の認証プロトコルを利用したTCPA処理に基づくものであってもよい。他の実施例では、管理者ユニット106のような安全な環境の外部のユニットには、公開/秘密鍵の交換を含む他の形式の検証を通じてプラットフォーム104/105へのアクセスが付与されてもよい。
一実施例では、この安全な環境は、それに関連するメモリ部分におけるデータの保持及び抽出に利用される対応するルート暗号鍵を有する。一実施例では、ルート暗号鍵は、トークン250(図示せず)に保持される永久公開鍵とPCR255の1つに保持されるダイジェスト値に基づく。一実施例では、ルート暗号鍵は、ダイジェスト値が暗号化の一部として保持されるように、永久公開鍵により暗号化される。従って、このルート暗号鍵は、保持されているダイジェスト値がPCR255に現在保持されているダイジェスト値と一致するとき、永久公開鍵を利用した解読に基づき利用することができる。従って、以下で詳細に説明されるように、データセンタに対する秘密鍵(データセンタ秘密鍵120と認証データセンタ秘密鍵130)は、ルート暗号鍵による暗号化処理に基づく安全な環境と関連付けされたプラットフォーム104/105内のメモリ部分への格納及び抽出が行われる。
図3は、本発明の一実施例による管理者ユニット106のブロック図を示す。管理者ユニット106は、プロセッサ310、管理論理302、メモリ320及びネットワークコントローラ330を有する。
プロセッサ310は、管理論理302、メモリ320及びネットワークコントローラ330に結合される。管理論理302は、ネットワークコントローラ330及びメモリ320に結合される。メモリ320は、ネットワークコントローラ330に結合される。
プロセッサ310は、任意の適切なプロセッサアーキテクチャからなり、一実施例では、例えば、カリフォルニア州サンタクララのインテル(登録商標)コーポレーションから利用可能なPentium(登録商標)プロセッサ群に利用されるインテル(登録商標)アーキテクチャから構成される。他の実施例による管理者ユニット106は、本発明の実施例による命令セットを実行する複数のプロセッサから構成されてもよい。メモリ320は、例えば、管理者ユニット106に対するデータ及び/または命令の格納を行い、例えば、DRAM(Dynamic Random Access Memory)のような任意の適切なメモリを有するようにしてもよい。
ネットワークコントローラ330は、一般に、プラットフォーム104/105、認証機関116、チャレンジャユニット108などの各種リモート装置と管理者ユニット106が通信するための通信機構を提供する。例えば、ネットワークコントローラ330は、管理者ユニット106と1以上のリモート装置を結合するため、10MBまたは100MBイーサネット(登録商標)コントローラ、ケーブルモデム、デジタル加入者線(DSL)モデム、POTSモデムなどを備えるかもしれない。
一実施例では、管理論理302は、メモリ320及び/またはプロセッサ310内に配置可能であり、プロセッサ310において実行することが可能なプロセスあるいはタスクであってもよい。しかしながら、本発明の実施例はこれに制限されるものではなく、管理論理302は、ここで説明される処理(以下でより詳細に説明される)を実行する各種ハードウェア(デジタル論理などの)であってもよい。
従って、管理者ユニット106には、ここで説明される方法の何れかあるいはそのすべてを実現する命令セット(すなわち、ソフトウェア)が記憶された機械読取可能な媒体を有するようにしてもよい。例えば、ソフトウェアは、メモリ320及び/またはプロセッサ310内に完全あるいは少なくとも部分的に配置することができる。
図4は、本発明の一実施例によるチャレンジャユニット108のブロック図を示す。チャレンジャユニット108は、プロセッサ410、検証論理402、メモリ420及びネットワークコントローラ430を有する。プロセッサ410は、検証論理402、メモリ420及びネットワークコントローラ430に結合される。検証論理402は、ネットワークコントローラ430とメモリ420に結合される。メモリ420は、ネットワークコントローラ430に結合される。
プロセッサ410は、任意の適切なプロセッサアーキテクチャからなり、一実施例では、例えば、カリフォルニア州サンタクララのインテル(登録商標)コーポレーションから利用可能なPentium(登録商標)プロセッサ群に利用されるインテル(登録商標)アーキテクチャから構成される。他の実施例によるチャレンジャユニット108は、本発明の実施例による命令セットを実行する複数のプロセッサから構成されてもよい。メモリ420は、例えば、チャレンジャユニット108に対するデータ及び/または命令の格納を行い、例えば、DRAM(Dynamic Random Access Memory)のような任意の適切なメモリを有するようにしてもよい。
ネットワークコントローラ430は、一般に、プラットフォーム104/105、認証機関116、管理者ユニット106などの各種リモート装置とチャレンジャユニット108が通信するための通信機構を提供する。例えば、ネットワークコントローラ430は、チャレンジャユニット108と1以上のリモート装置を結合するため、10MBまたは100MBイーサネット(登録商標)コントローラ、ケーブルモデム、デジタル加入者線(DSL)モデム、POTSモデムなどを備えるかもしれない。
一実施例では、検証論理402は、メモリ420及び/またはプロセッサ410内に配置可能であり、プロセッサ410において実行することが可能なプロセスあるいはタスクであってもよい。しかしながら、本発明の実施例はこれに制限されるものではなく、検証論理402は、ここで説明される処理(以下でより詳細に説明される)を実行する各種ハードウェア(デジタル論理などの)であってもよい。
従って、チャレンジャユニット108には、ここで説明される方法の何れかあるいはそのすべてを実現する命令セット(すなわち、ソフトウェア)が記憶された機械読取可能な媒体を有するようにしてもよい。例えば、ソフトウェアは、メモリ420及び/またはプロセッサ410内に完全あるいは少なくとも部分的に配置することができる。
システム100及び150の動作が説明される。システム100については図5A、6、7及び8に示されるフロー図を参照することにより説明され、システム150については図5B、6、7及び9に示される不ローズを参照することにより説明される。図5Aは、本発明の一実施例によるデータセンタ内への内包検証のための秘密鍵の格納のためのフロー図を示す。
ブロック502において、フロー図500は、データセンタの生成のためのポリシーから開始される。図3に示される実施例を参照することにより、管理者ユニット106の管理論理302は、プラットフォームがデータセンタ140内に含まれるべきかに関するポリシーを生成する。一実施例では、このポリシーは、プラットフォーム104のためのハードウェアメトリックを備えるものであってもよい。例えば、ポリシーは、TCPAに基づくTPMモジュールがプラットフォーム104内になければならいという要請を含むことができる。ポリシーのためのハードウェアメトリックの他の例としては、プロセッサのタイプや、プラットフォーム104が安全と考えられるアプリケーションにメモリへのアクセスを限定するように、様々なタイプの私有あるいは安全なメモリを備えるかどうかなどがあげられる。他の例としては、プラットフォーム104内のメモリの一部や他のユニットがそれへのアクセスに関して制限するようバーチャルマシーン監視の必要性があげられる。ポリシーのハードウェアメトリックの他の例としては、プラットフォーム104内に暗号化アクセラレータカード、ネットワークカードなどが含まれるというものであってもよい。
一実施例では、このポリシーは、プラットフォーム104のためのソフトウェアメトリックを有する。例えば、ポリシーは、プラットフォームが所与のタイプのオペレーティングシステムあるいはその上で実行される他のタイプのより高いレベルのアプリケーションを実行していることの要求を含むものであってもよい。ポリシーに要求されるより高いレベルのアプリケーションの例としては、あるタイプのデータベース、当該データベースのためのインタフェースアプリケーション及びあるタイプの暗号化処理を実行する暗号化アプリケーションがあげられる。
管理論理302は、データセンタの管理者からの入力に基づきこのポリシーを生成するようにしてもよい。そのような実施例では、このポリシーは、データセンタのユーザが要求する必要条件や基準に基づくものであるかもしれない。例えば、第1のプラットフォーム群は秘匿性のある情報を通信することなくプラットフォームからのデータの抽出を可能にするが、第2のプラットフォーム群は秘匿性のある情報/財務情報のアップロードを含む書籍、おもちゃなどの電子商取引を可能にし、第3のプラットフォーム群は安全性を求められる政府文書、個人の医療記録などを含む高い秘匿性を有する情報のアップロードを可能にする。従って、これら様々なタイプのプラットフォーム群のポリシーの必要条件は、プラットフォームとの通信のタイプに基づき変化する。
ブロック504において、データセンタに対する暗号鍵ペアが生成される。図3に示される実施例を参照して、管理者ユニット106の管理論理302は、データセンタ140に対する暗号鍵ペアを生成する。一実施例では、暗号鍵ペアは、RSA暗号化アルゴリズムに基づくものなどの非対称暗号鍵ペアであってもよい。一実施例では、管理論理302は、暗号鍵ペアの秘密鍵(データセンタ秘密鍵120)が様々なプラットフォーム104A〜104Iに保持される同一の秘密鍵となるようにこの暗号鍵ペアを生成する。従って、1つの暗号鍵ペアが、様々なプラットフォーム104がデータセンタ140に含まれているかの検証に利用される。以下でより詳細に説明されるように、データセンタ秘密鍵120がプラットフォーム104に保持される一方、対応する公開鍵はプラットフォーム104がデータセンタ140に含まれるかの検証において、チャレンジャユニット108のような異なるユニットにより利用される。
ブロック506において、データセンタ140の一部となるリクエストがプラットフォーム104から受信される。図3に示される実施例を参照して、管理論理302は、データセンタ140の一部となるリクエストをプラットフォーム104から受信する。
ブロック508において、プラットフォーム104(リクエストを行う)がデータセンタ140に対するポリシーを満足するかについての決定がなされる。図3に示される実施例を参照して、管理論理302は、プラットフォーム104がデータセンタ140に対するポリシーを満足するについて決定する。一実施例では、管理論理302は、プラットフォーム104内のトークン250を利用することによりこれを決定してもよい。そのような実施例では、管理論理302は、PCR255に保持された値を問い合わせる。例えば、異なるPCR255内の特定の値は、このプラットフォーム104に対して異なるハードウェア及びソフトウェアメトリック(プロセッサタイプ、オペレーティングシステムタイプなど)を示すものであってもよい。
他の実施例では、管理論理302は、プラットフォーム104内の他の安全な記憶領域(メモリ230の私有部分など)を問い合わせることによりこの決定を行ってもよい。他の実施例では、管理論理302は、データセンタ内に含まれるのに適した多数のプラットフォームに対するポリシーを保持するプラットフォーム104の外部の他の安全な記憶領域(安全なデータベースサーバなど)を問い合わせることによりこの決定を行ってもよい。データセンタ140に含めることを要求するプラットフォーム104のポリシーがデータセンタ140に対するポリシーを満足しないと決定されると、リクエストをしたプラットフォーム104がデータセンタ140内に含まれることを許可せずにフロー図500は終了する。さらに、このプラットフォーム104及び/または他のプラットフォーム104による以降のリクエストは、リクエストの受信時にブロック506におけるフロー図500の処理を開始させる。
ブロック510において、プラットフォーム104のポリシーがデータセンタ140に対するポリシーを満たすと決定されると、暗号鍵ペアのデータセンタ秘密鍵120はプラットフォーム104に保持される。図3に示される実施例を参照して、管理論理302は、データセンタ秘密鍵120をプラットフォーム104に格納する。図2に示されるように、管理論理302は、プラットフォーム104(メモリ230、プロセッサ210、チップセット220、トークン250などを含む)内の多数の領域にデータセンタ秘密鍵120(秘密鍵225として表される)を保持してもよい。一実施例では、管理論理302は、例えば、アクセスを許可するために様々な暗号化処理を利用することにより、プラットフォーム104の安全な領域にデータセンタ秘密鍵120を保持する。
ブロック512において、データセンタ秘密鍵120はプラットフォーム104と関連付けされる。図3に示される実施例を参照して、管理論理302は、データセンタ秘密鍵120とプラットフォーム104を関連付ける。一実施例では、管理論理302は、データセンタ秘密鍵120とプラットフォーム104とを関連付けるとき、トークン250を利用してもよい。トークン250がTPMである一実施例では、管理論理302は、データセンタ秘密鍵120とプラットフォーム104とを関連付けるための「バインド(bind)」コマンド(2001年12月1日のTCPAメイン仕様書バージョン1.1aに定義されるような)を利用してもよい。このバインドコマンドは、データセンタ秘密鍵120がプラットフォーム104上でのみ利用可能となるように、データセンタ秘密鍵120とプラットフォーム104を関連付けする。
一実施例では、管理論理302は、データセンタ秘密鍵120とプラットフォーム104を関連付けるための「封印(seal)」コマンド(2001年12月1日のTCPAメイン仕様書バージョン1.1aに定義されるような)を利用してもよい。従って、データセンタ秘密鍵120は、単に明らかにされるだけであり、プラットフォームが適当な設定にあるときには利用可能である。特に、一実施例では、「封印」コマンド(管理論理302により呼び出される)は、PCR255に保持されている(プラットフォーム104の適当な設定を示す)値をデータセンタ秘密鍵120を含むデータに取り込む。従って、データセンタ秘密鍵120を含むこのデータの「封印解除(unseal)」処理中には、トークン250は、このデータに保持されているPCR255の値とPCR255の現在値を比較する。これら2つの異なる値が一致する場合、トークン250は、データセンタ秘密鍵120をリクエストを行ったアプリケーション/論理(プラットフォーム104がデータセンタ140に含まれているかの検証のチャレンジと共に以下でより詳細に説明される)に提供する。一実施例では、管理論理302は、データセンタ秘密鍵120の複数の封印を実行してもよく、そこでは、データセンタ秘密鍵120は、プラットフォーム104内のハードウェア及びソフトウェア設定の異なる組み合わせに封印される。これについては、米国特許出願第10/082,600号「マルチトークン封印及び封印解除(Multi−Token Seal and Unseal)」により詳細に説明されている。
一実施例では、管理論理302は、データセンタ秘密鍵120とプラットフォーム104を関連付けるため、「バインド」コマンドと「封印」コマンドを利用する。従って、一実施例では、管理論理302は、データセンタ秘密鍵120をプラットフォーム104にバインドする。さらに、管理論理302は、データセンタ秘密鍵120をアンバインドし、プラットフォーム104に対するデータセンタ秘密鍵120の封印処理を可能にする。
しかしながら、本発明の実施例は、データセンタ秘密鍵120をプラットフォーム104に関連付けるため、TPM/トークン250の利用に制限されるものではない。他の実施例では、管理論理302は、プラットフォーム104内の他の測定可能な設定を利用するようにしてもよい。例えば、管理論理302は、プロセッサ210のバージョン及び/またはそれのパッチレベルに基づき、データセンタ秘密鍵120をプラットフォーム104に関連付けしてもよい。従って、管理論理302は、プロセッサ210のバージョン及び/またはパッチレベルと共に、データセンタ秘密鍵120を暗号化してもよい。従って、データセンタ秘密鍵120がデータセンタ140へのそれの内包のこのプラットフォーム104のチャレンジの一部としてデータを署名するのに以降で利用されるとき、当該データセンタ秘密鍵120を抽出するためのアプリケーション/論理は、プロセッサ210の現在のバージョン及び/またはパッチレベルをデータセンタ秘密鍵120の暗号化の一部として保持されているバージョン及び/またはパッチレベルと比較する。
他の実施例では、管理論理302は、(ハードドライブのタイプやネットワークカードのタイプなどの)ハードウェア周辺装置を同様に利用するかもしれない。さらに、一実施例では、管理論理302は、プラットフォーム104上で実行されるソフトウェアのタイプ(ハードドライブのディスク配置、BIOS(Basic Input Output System)設定、データベースアプリケーションのタイプなど)を利用するようにしてもよい。従って、データセンタ秘密鍵120をプラットフォーム104に保持し、それらを関連付けると、データセンタ140にプラットフォーム104を含めることができる。
データセンタ内への内包の検証のための秘密鍵の保持に関するシステム150の動作が説明される。システム100(図5Aに示される)の動作と比較して、一実施例では、システム150の動作は、異なる秘密鍵がデータセンタの一部である異なるプラットフォームに保持され、そのような秘密鍵がデータセンタのための署名鍵により署名されるよう動作する。図5Bは、本発明の一実施例によるデータセンタ内への内包の検証のための秘密鍵の保持に対するフロー図を示す。
ブロック552において、フロー図550は、データセンタ180に対するルート鍵170と署名鍵175の生成から開始される。図3に示される実施例を参照して、管理論理302は、データセンタ180に対するルート鍵170を生成する。さらに、管理論理302は、このルート鍵170を認証する認証機関116を備え、これにより署名鍵175を生成する。一実施例では、管理論理302は、RSA、Diffie−Hellmanなどの様々なタイプの暗号化処理に基づき、ルート鍵170を生成するようにしてもよい。従って、ルート鍵170はデータセンタ180の署名鍵175のみに対する鍵証明鍵として利用され、以下でより詳細に説明されるように、異なる秘密鍵が異なるプラットフォーム105に保持されるために、データセンタ180内の鍵署名鍵として利用される証明鍵175と比較して攻撃に対してより限定的となる。
ブロック554において、データセンタ180に対するポリシーが生成される。図3に示される実施例を参照して、管理論理302は、プラットフォームがデータセンタ180内に含まれるべきとするポリシーを生成する。一実施例では、ポリシーの生成は、データセンタ140に対するポリシーの生成(図5のフロー図と共に上述された)と同様である。例えば、管理論理302は、プラットフォーム105のハードウェアメトリック及び/またはソフトウェアメトリックに基づくポリシーを生成するようにしてもよい。
ブロック556において、プラットフォーム105からのデータセンタ180の一部となるようにとのリクエスト(当該プラットフォーム105の認証データセンタ識別秘密鍵130を含む)を受け取る。図3に示される実施例を参照して、管理論理302は、プラットフォーム105からこのリクエストを受け取る。一実施例では、認証データセンタ識別鍵130は、プラットフォーム105により生成された秘密鍵である。一実施例では、プラットフォーム105は、トークン250を利用したTCPA処理(2001年12月1日のTCPAメイン仕様書バージョン1.1aに定義されるような)に基づき認証データセンタ識別鍵130を生成するようにしてもよい。一実施例では、認証bデータセンタ識別秘密鍵130は、RSA、Diffie−Hellmanなどの様々なタイプの暗号化処理に基づき生成されてもよい。
ブロック558において、プラットフォーム105(リクエストを行う)がデータセンタ180に対するポリシーを満たしているか決定される。図3に示される実施例を参照して、管理論理302は、プラットフォーム105がデータセンタ180に対するポリシーを満たしているかに関する決定を行う(図5のフロー図500と共に上述された)。例えば、管理論理302は、当該プラットフォーム105に対する異なるハードウェア及びソフトウェアメトリックを表す異なるPCR255(あるいはプラットフォーム105の内部あるいは外部の他の安全な領域)内に保持されている値に基づき、この決定を行うようにしてもよい。データセンタ180に含めるようリクエストしているプラットフォーム105のポリシーがデータセンタ180に対するポリシーを満たしていないと決定すると、リクエストを行ったプラットフォーム105がデータセンタ180内に含まれていないものとしてフロー図550は終了する。さらに、このプラットフォーム105及び/または他のプラットフォーム105による以降のリクエストは、当該リクエストの受信時(ここで、リクエストはプラットフォーム105から受け取られる)、ブロック556からフロー図550の処理を開始させることができる。
ブロック560において、プラットフォーム105のポリシーがデータセンタ180に対するポリシーを満たしていないと決定されると、認証データセンタ識別秘密鍵130(プラットフォーム105からのリクエストの一部として受け取られる)が認証される。図3に示される実施例を参照して、管理論理302は、認証機関116により認証された署名鍵175を利用して、認証データセンタ識別秘密鍵130を認証する。
ブロック562において、認証データセンタ識別秘密鍵130の認証がプラットフォーム105と関連付けされる。図3に示される実施例を参照して、管理論理302は、認証データセンタ識別秘密鍵130の認証をプラットフォーム105と関連付ける。一実施例では、この認証は、データセンタ180に関して認証データセンタ識別秘密鍵130の真偽を検証するため、このプラットフォーム105のチャレンジャ(例えば、チャレンジャユニット108)により以降において利用されるデジタル証明書を有するものであってもよい(以下でより詳細に説明される)。上述のデータセンタ秘密鍵120に対する関連付けと同様に、一実施例では、管理論理302は、認証データセンタ識別秘密鍵130とプラットフォーム105とを関連付けるとき、トークン250を利用するようにしてもよい。トークン250がTPMである実施例では、管理論理302は、認証データセンタ識別秘密鍵130とプラットフォーム105を関連付けるための「封印」コマンド(2001年12月1日のTCPAメイン仕様書バージョン1.1aに定義されるような)を利用してもよい(上述のように)。一実施例では、管理論理302は、プラットフォーム105内のハードウェア設定とソフトウェア設定の両方に対して認証が封印される二重の封印をこの認証に対して実行してもよい。
しかしながら、本発明の実施例は認証データセンタ識別秘密鍵130の認証とプラットフォーム105を関連付けるため、TPM/トークン250を利用することに限定されない。他の実施例では、管理論理302は、プラットフォーム105内の他の測定可能な設定を利用するようにしてもよい。例えば、(上述のように)管理論理302は、プロセッサ210のバージョン及び/またはそれのパッチレベルに基づき、認証データセンタ識別秘密鍵130の認証とプラットフォーム105を関連付けてもよい。従って、管理論理302は、プロセッサ210のバージョン及び/またはパッチレベルと共に、認証データセンタ識別秘密鍵130の認証を暗号化してもよい。従って、認証データセンタ識別秘密鍵130の認証がデータセンタ180への内包のこのプラットフォーム105のチャレンジの一部としてデータを署名するのに以降で利用されるとき、このデータセンタ秘密鍵120を兆種つするためのアプリケーション/論理により、プロセッサ210の現在バージョン及び/またはパッチレベルが、認証データセンタ識別秘密鍵130の認証の暗号化の一部として保持されているバージョン及び/またはパッチレベルと比較される。
他の実施例では、管理論理302は、ハードウェア周辺装置(ハードドライブのタイプやネットワークカードのタイプなど)を同様に利用してもよい。さらに、一実施例では、管理論理302は、プラットフォーム105上で実行されるソフトウェアのタイプ(ハードドライブのディスク配置、BIOS設定、データベースアプリケーションのタイプなど)を利用するようにしてもよい。従って、認証データセンタ識別秘密鍵130をプラットフォーム105に保持し、それらを関連付けると、データセンタ180にプラットフォーム105を含めることができる。
システム100/150に対するデータセンタ140/150内へのプラットフォーム104/105の内包のチャレンジ/検証の処理が説明される。特に、図6は、本発明の一実施例によるプラットフォームのデータセンタ内への内包の検証を行うためのフロー図を示す。フロー図600に示される処理がシステム100を参照して説明されるが、そのような処理はシステム150にもまた適用可能である。
ブロック602において、検証対象のプラットフォーム104に対する公開鍵(データセンタ秘密鍵120を含む暗号鍵ペアの一部である)が抽出される。図4に示される実施例を参照して、チャレンジャユニット108の検証論理402により公開鍵が抽出される。一実施例では、検証論理402により、管理者ユニット106からこの公開鍵は抽出されてもよい。一実施例では、検証論理402は、プラットフォーム104からこの公開鍵を抽出するかもしれない。
ブロック604において、データセンタ140に対するポリシーが抽出される。図4に示される実施例を参照して、検証論理402は、データセンタ140に対するポリシーを抽出する。一実施例では、検証論理402は、管理者ユニット106からデータセンタ140に対するポリシーを抽出するかもしれない。一実施例では、検証論理402は、プラットフォーム104からデータセンタに対するポリシーを抽出するかもしれない。
ブロック606において、引用リクエストが、データセンタ140へのプラットフォーム104の内包の検証のため生成される。図4に示される実施例を参照して、検証論理402は、この引用リクエストを生成する。一実施例では、この引用リクエストには、プラットフォーム104に対するポリシーを現すPCR255に保持されている値に対するリクエストが含まれてもよい。他の実施例では、引用リクエストには、プラットフォーム104の設定を表す他のデータやメトリック(metric)に対するリクエストが含まれていてもよい。例えば、一実施例では、引用リクエストには、プロセッサのタイプやそれの現在のパッチレベルと共に、ハードドライブのディスク配置などが含まれてもよい。他の実施例では、検証論理402により、プラットフォーム104にそれが保持するデータセンタ秘密鍵120を利用して乱数を署名させるため、表示と共に引用リクエストと一緒に含まれる乱数が生成されてもよい。
一実施例では、検証論理402とプラットフォーム104との間の通信は、オブジェクトから独立した認証プロトコル及び/またはオブジェクトに固有の認証プロトコルを利用したTCPA処理に基づくものであってもよい。他の実施例では、検証論理402は、公開/秘密鍵の交換を含む他の形式の検証を通じて、プラットフォーム104へのアクセスを許可されるかもしれない。
ブロック608において、引用リクエストはプラットフォーム104に送信される。図4に示される実施例を参照して、検証論理402は、この引用リクエストをプラットフォーム104に送信する。以下でより詳細に説明されるように、この引用リクエストは、プラットフォーム鍵アプリケーション論理202により受け取られる。トークン250のPCR255に保持されている値がリクエストされる実施例では、プラットフォーム鍵アプリケーション論理202は、処理ユニット258にPCR255内の値を抽出させるため、TCPA処理を呼び出してもよい。他の実施例では、プラットフォーム鍵アプリケーション論理202は、プラットフォーム104の異なる構成要素(プロセッサ210など)に直接そこでの設定を問い合わせるようにしてもよい。さらに、(以下でより詳細に説明される)プラットフォーム鍵アプリケーション論理202により、引用リクエストへの応答がデータセンタ秘密鍵120により署名される。一実施例では、プラットフォーム鍵アプリケーション論理202は、トークン250内の処理ユニット258にこの応答を署名させてもよい。プラットフォーム鍵アプリケーション論理202は、署名された応答をチャレンジャユニット108に送り返してもよい。他の実施例では、プラットフォーム104への引用リクエストは、処理ユニット258にプラットフォーム鍵アプリケーション論理202から独立した上述の処理を実行させる。
ブロック610において、データセンタ秘密鍵120により署名された引用リクエストへの応答が受け取られる。図4に示される実施例を参照して、検証論理402は、引用リクエストへのこの応答を受け取る。
ブロック612において、プラットフォーム104がデータセンタ140に含まれているか検証される。図4に示される実施例を参照して、検証論理402は、プラットフォーム104に送信された引用リクエストからの応答に基づき、プラットフォーム104が含まれているかについて検証する。一実施例では、検証論理402は、抽出された公開鍵を利用することにより、プラットフォーム104の内包を検証してもよい。特に、検証論理402は、公開鍵(暗号鍵ペアのデータセンタ秘密鍵120に対応する)を利用して、応答内のハッシュ値の復号及び比較を行ってもよい。
一実施例では、検証論理402は、プラットフォーム104に対するポリシーを表す値がデータセンタ140に対するポリシーに対応することを検証するようにしてもよい。例えば、一実施例では、PCR255からの値はプラットフォーム104内のポリシーを表すかもしれない。従って、これらの値は、引用リクエストへの応答に含まれ、プラットフォーム104がデータセンタ140内にあり、かつプラットフォーム104が適切な設定にあるとき、データセンタ140のポリシーを表す値に対応する。従って、検証論理402は、これら2つの異なるポリシーを比較することにより、プラットフォーム104がデータセンタ140に含まれているか検証することができる。乱数が引用リクエストの一部として送信される実施例では、検証論理402はまた、(上述の)公開鍵を用いて応答を復号し、復号された乱数が引用リクエストに含まれていた乱数と等しいか決定することにより、当該応答を検証してもよい。
一実施例では、検証論理402は、認証データセンタ識別秘密鍵130がデータセンタ180を表す署名鍵175により署名されていることを証明するために認証機関116を利用することにより、プラットフォーム105がデータセンタ180に含まれているか検証してもよい。
一実施例では、このプラットフォーム104の内包の検証は様々なアプリケーションに内蔵することができる。例えば、一実施例では、検証論理402は、与えられたサーバが適切な設定にあり、与えられたウェブサイトに対する多数の有効なサーバの一部であるということを証明するため、これらのサーバ内の1つのサーバとの通信に含まれるソフトウェアモジュールの一部であってもよい。従って、そのようなアプリケーションは、当該通信がこのウェブサイトに対するサーバ群の中の適切に設定されたサーバとのものであるという保証をサーバのユーザに与える。特に、このアプリケーションは、サーバとの他のタイプの通信(電子商取引や他の秘匿性を備えた通信など)を行う前に、あるサーバがサーバ群に含まれているかの検証のため実行することができる。
プラットフォーム104/105がデータセンタ140/180に含まれているかのチャレンジ/検証に応答する処理が説明される。特に図7は、本発明の一実施例によるプラットフォームのデータセンタへの内包の検証に応答するためのフロー図を示す。フロー図700に示される処理は、システム100を参照して説明されるが、そのような処理はシステム150にもまた適用可能である。
ブロック702において、フロー図700は、データセンタ140への内包の検証のための引用リクエストの受け取りから開始される。図2に示される実施例を参照して、プラットフォーム104内のプラットフォーム鍵アプリケーション論理202は、検証に対する引用リクエストを受け取る。上述のように(データセンタの設定に応じて)、この引用リクエストには様々なタイプのリクエストが含まれるかもしれない。例えば、引用リクエストには、プラットフォーム104を含むデータセンタ140に対するポリシーに対応する)プラットフォーム104のポリシーに対するリクエストが含まれてもよい。プラットフォーム104がTCPA処理をサポートしている場合、引用リクエストには、トークン250(TPM)のPCR255に保持されている値に対するリクエストが含まれてもよい。他の例として、引用リクエストには、他のハードウェア及び/またはソフトウェアメトリック(プラットフォーム104内のハードウェア及びソフトウェアユニットのパッチレベルあるいはバージョンなど)に対するリクエストを含めることができる。さらに、引用リクエストには、データセンタ秘密鍵120により署名され、返される乱数が含まれてもよい。
ブロック704において、引用リクエストにより要求される値が抽出される。図2に示される実施例を参照して、プラットフォーム鍵アプリケーション論理202により、この値が抽出される。ブロック702の説明で与えられたように、引用リクエストには、PCR255に保持されている値(プラットフォーム104に対する現在のポリシーを表す)に対するリクエストが含まれてもよい。従って、プラットフォーム鍵アプリケーション論理202は、トークン250の処理ユニット258にPCR255内に保持されている値を抽出させる。引用リクエストがプラットフォームに対するポリシーを現す他の場所に保持されている値を要求している他の実施例では、プラットフォーム鍵アプリケーション論理202によりそのようなデータの抽出が可能である。一実施例では、引用リクエストにより要求される値は、(上述のように)引用リクエストに含まれる乱数あってもよい。特に、引用リクエストには、乱数及び当該乱数をデータセンタ秘密鍵120により署名する指示が含まれていてもよい。
ブロック706において、プラットフォーム104及び/または受信した引用リクエスト内から抽出された)値が、データセンタ秘密鍵120に基づき署名される。図2に示される実施例を参照して、プラットフォーム鍵アプリケーション論理202は、データセンタ秘密鍵120を用いてこの値を署名する。一実施例では、プラットフォーム鍵アプリケーション論理202は、処理ユニット258にデータセンタ秘密鍵120を用いてこの値を署名させるようにしてもよい。
ブロック708において、署名された値は要求元のユニット(例えば、チャレンジャユニット108)に返送される。図2に示される実施例を参照して、プラットフォーム鍵アプリケーション論理202は、ネットワーク102を介してネットワークコントローラ240を用いて、この署名された値を引用リクエストへの応答として送信するようにしてもよい。図6のフロー図600と共に上述したように、チャレンジャユニット108内の検証論理402は、データセンタ秘密鍵120、このデータセンタ秘密鍵120に関連付けされた認証及び/またはデータセンタ140/180に対するポリシーに対応する公開鍵を利用して、この応答を検証するようにしてもよい。
一実施例では、データセンタのプラットフォームに保持された秘密鍵が、データセンタのプラットフォームに保持されている秘密鍵は、プラットフォームのセキュリティ違反、秘密鍵の損傷などにより再呼出しされる必要があるかもしれない。管理者ユニット106は、プラットフォーム104/105、チャレンジャユニット108あるいはプラットフォーム104/105及び/または秘密鍵120/130によるそのような問題を示す他のソースから警告やエラーメッセージを受け取るかもしれない。例えば、チャレンジャユニット108は、データセンタ140内のプラットフォーム104/105の1つの検証が失敗したとき、管理者ユニット106に送信するエラーメッセージを生成するようにしてもよい。さらに、管理者ユニット106は、プラットフォーム104/105が通信を行っていない場合、プラットフォーム104/105との試行された通信に基づき、そのような問題を決定するようにしてもよい。図8は、本発明の一実施例によるデータセンタの秘密鍵を再呼出しするためのフロー図を示す。
ブロック802において、データセンタ140/180内のプラットフォーム104/105の何れかにおける秘密鍵120/130が利用不可であると決定される。図3に示される実施例を参照して、管理論理302は、秘密鍵120/130が利用不可であると決定する。上述のように、管理論理302は、チャレンジャユニット108、プラットフォーム104などからの通信に基づき、この決定を行ってもよい。
ブロック804において、利用不可な秘密鍵120/130を含む与えられたプラットフォーム104/105が損傷したか決定される。図3に示される実施例に関して、管理論理302は、与えられたプラットフォーム104/105が損傷したか決定する。一実施例では、管理論理302は、プラットフォーム104/105の現在の設定を示すトークン250内のPCR255に保持されている値を抽出することにより、与えられたプラットフォーム104/105が損傷しているか決定するようにしてもよい。他の実施例では、管理論理302は、プラットフォーム104/105から他のタイプの設定(ハードウェア及びソフトウェアを含む)を抽出することにより、与えられたプラットフォーム104/105が損傷しているか決定するようにしてもよい。例えば、管理論理302は、様々なソフトウェア/ハードウェアなどの現在のパッチレベルを問い合わせるようにしてもよい。一実施例では、この決定は、データセンタ140/180に対する現在の暗号鍵ペアが再呼出しされ、データセンタ140/180に対する新たな暗号鍵ペアが再分配されるように(後述のように)、(管理論理302によるそのような決定なく)肯定的に回答される。
ブロック806において、与えられたプラットフォーム104/105が損傷していないと判断されると、秘密鍵120/130が(利用不可な秘密鍵120/130を含む)与えられたプラットフォーム104/105に再分配される。図3に示される実施例に関して、管理論理302は、秘密鍵120/130を与えられたプラットフォーム104/105に再分配する。システム100を参照して、管理論理302は、データセンタ秘密鍵120をこの与えられたプラットフォーム104に再分配するようにしてもよい。システム150を参照して、管理論理302は、トークン150に認証データセンタ識別秘密鍵130を再生成させ、この認証データセンタ識別秘密鍵130を管理者ユニット106に返送させるようにしてもよい。従って上述のように、管理論理302は、この認証データセンタ識別秘密鍵130をデータセンタ180の署名鍵175を用いて認証するようにしてもよい。システム150の一実施例では、認証データセンタ識別秘密鍵130は依然として利用可能であるが、この秘密鍵130の認証は利用不可である。従って、管理論理302は、(上述のように)再認証のため、トークン250に認証データセンタ識別秘密鍵302を管理者ユニット106に返送させるようにしてもよい。従って、フロー図800により示される再呼出し処理は完了する。
ブロック808において、与えられたプラットフォーム104/105が損傷したと判断されると、秘密鍵120/130がプラットフォーム104/105に対して一意的なものであるか決定される。図3に示される実施例に関して、管理論理302がこの決定を行う。管理論理302は、この与えられたデータセンタに対して、システムのタイプに基づきこの決定を行うようにしてもよい。例えば、システム100に対しては、秘密鍵120は、データセンタ140の各プラットフォーム104が同一の秘密鍵120を有するため、プラットフォーム104に一意的なものではない。逆に、システム150に対しては、秘密鍵130は(上述のように)プラットフォーム105に一意的である。
ブロック810において、秘密鍵120/130がプラットフォーム104/105に対して一意的であると判断されると、秘密鍵120/130は、与えられたプラットフォーム104/105上から破棄される。図3に示される実施例に関して、管理論理302は、与えられたプラットフォーム104/105上の秘密鍵120/130を破棄する。一実施例では、管理論理302は、プラットフォーム104/105、チャレンジャユニット108、及び/または秘密鍵120/130及び/またはそれの対応する公開鍵を有する他のユニットあるいはモジュールに破棄メッセージを送信することにより、秘密鍵120/130を破棄するようにしてもよい。そのような破棄メッセージは、そのような鍵が当該データセンタ140/180に関してもはや有効でないということを示すものであるかもしれない。この処理は(後述される)ブロック814に続く。
ブロック812において、秘密鍵120/130がプラットフォーム104/105に対して一意的でないと判断されると、秘密鍵120/130はデータセンタ140/180内の各プラットフォーム104/105上で破棄される。図3に示される実施例を参照して、管理論理302は、そのような鍵を保持した各プラットフォーム104/105上で秘密鍵120/130を破棄する。例えば、システム100に関しては、データセンタ秘密鍵120がデータセンタ140内の各プラットフォーム104に分配及び保持される。従って、一実施例では、管理論理302が、(上述のような)データセンタ秘密鍵120を保持している各プラットフォーム104に破棄メッセージを配信するようにしてもよい。さらに、管理論理302は、データセンタ秘密鍵120に対応する公開鍵を含む他のユニットやモジュール(チャレンジャユニット108など)に(鍵がデータセンタ140に関してもはや有効でないということを示す)破棄メッセージを配信するようにしてもよい。
ブロック814において(秘密鍵120/130が1以上のプラットフォーム104/105で破棄されるかどうか)、データセンタ140/180に対するポリシーが変更されたか判断される。図3に示される実施例を参照して、管理論理302がこの決定を行う。上述のように、データセンタ140/180に対するポリシーは、プラットフォーム104/105がデータセンタ140/180へのそれらの内包を可能にするよう備えるべき様々なメトリックを有するかもしれない。従って、管理論理302は、現在のポリシーと秘密鍵120/130が利用不可となる前のデータセンタ140/180のポリシーを比較する。一実施例では、これら異なるバージョンのポリシーが管理者ユニット106に保持されてもよい。一実施例では、データセンタ140/180に対するポリシーが、それに対する変更の追跡が可能となるように定期的に記録される。
ブロック816において、データセンタ140/180に対するポリシーが変更されたと判断されると、各プラットフォーム104/105のデータセンタ140/180への内包が再び確立される。図3に示される実施例を参照して、管理論理302が各プラットフォーム104/105の内包を再確立する。一実施例では、管理論理302は、(上述のように)各プラットフォーム104/105に対して秘密鍵120/130を破棄し、各自の内包を再確立するようにしてもよい(これにより、プラットフォーム104/105に図5A及び5Bにおけるデータセンタ140/180への各自の内包を可能にすることに関する上述の処理を実行させることができる)。
ブロック818において、データセンタ140/180に対するポリシーが変更されていないと判断されると、破棄された秘密鍵120/130を有するプラットフォーム104/105のデータセンタ140/180への内包が再確立される。図3に示される実施例を参照して、管理論理302がこれらのプラットフォーム104/105をデータセンタ140/180に含める処理を再確立する。データセンタ140/180へのこれらのプラットフォーム104/105の確立処理は、図5A及び5Bと共に上述されている。
従って上述のように、本発明の実施例は、プラットフォームがデータセンタ内に含まれているかの検証を可能にする。一実施例では、この検証処理において、データセンタの異なるプラットフォームに対して、1つの秘密鍵が利用可能である。他の実施例では、データセンタの異なるプラットフォームに対して、データセンタにより認証された異なる秘密鍵がこの検証処理において利用される。
添付された図面と共に特定の実施例が説明及び例示されたが、そのような実施例は単なる例示であり、広い発明に対する限定ではなく、本開示を検討することにより他の様々な変更が当業者には可能であるため、本発明の実施例は例示及び説明された特定の構造及び構成に限定されないということは理解されるであろう。
100 システム
102 ネットワーク
104,105 プラットフォーム
106 管理者ユニット

Claims (1)

  1. データセンタコンピュータシステムの任意数のサーバの1つが損傷したと判断すると、
    前記データセンタコンピュータシステムの前記任意数のサーバに保持される現在の暗号鍵ペアを破棄するステップと、
    前記データセンタコンピュータシステムと関連付けされる新たな暗号鍵ペアを生成するステップと、
    前記新たな暗号鍵ペアの新たな秘密鍵を損傷した前記任意数のサーバに格納するステップと、
    を有する方法。
JP2014121493A 2002-04-15 2014-06-12 データセンタへのプラットフォームの内包検証 Expired - Lifetime JP5869052B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/122,785 2002-04-15
US10/122,785 US7058807B2 (en) 2002-04-15 2002-04-15 Validation of inclusion of a platform within a data center

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010243222A Division JP5611768B2 (ja) 2002-04-15 2010-10-29 データセンタへのプラットフォームの内包検証

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015016721A Division JP6370722B2 (ja) 2002-04-15 2015-01-30 データセンタへのプラットフォームの内包検証

Publications (3)

Publication Number Publication Date
JP2014199672A true JP2014199672A (ja) 2014-10-23
JP2014199672A5 JP2014199672A5 (ja) 2015-02-26
JP5869052B2 JP5869052B2 (ja) 2016-02-24

Family

ID=28790619

Family Applications (10)

Application Number Title Priority Date Filing Date
JP2003586730A Pending JP2005527900A (ja) 2002-04-15 2003-03-28 データセンタへのプラットフォームの内包検証
JP2009154991A Pending JP2009219162A (ja) 2002-04-15 2009-06-30 データセンタへのプラットフォームの内包検証
JP2009262787A Pending JP2010044791A (ja) 2002-04-15 2009-11-18 データセンタへのプラットフォームの内包検証
JP2010243222A Expired - Lifetime JP5611768B2 (ja) 2002-04-15 2010-10-29 データセンタへのプラットフォームの内包検証
JP2010243227A Pending JP2011072006A (ja) 2002-04-15 2010-10-29 データセンタへのプラットフォームの内包検証
JP2010243228A Pending JP2011065665A (ja) 2002-04-15 2010-10-29 データセンタへのプラットフォームの内包検証
JP2013155277A Pending JP2013225942A (ja) 2002-04-15 2013-07-26 データセンタへのプラットフォームの内包検証
JP2014121493A Expired - Lifetime JP5869052B2 (ja) 2002-04-15 2014-06-12 データセンタへのプラットフォームの内包検証
JP2015016721A Expired - Lifetime JP6370722B2 (ja) 2002-04-15 2015-01-30 データセンタへのプラットフォームの内包検証
JP2016075106A Expired - Lifetime JP6151402B2 (ja) 2002-04-15 2016-04-04 データセンタへのプラットフォームの内包検証

Family Applications Before (7)

Application Number Title Priority Date Filing Date
JP2003586730A Pending JP2005527900A (ja) 2002-04-15 2003-03-28 データセンタへのプラットフォームの内包検証
JP2009154991A Pending JP2009219162A (ja) 2002-04-15 2009-06-30 データセンタへのプラットフォームの内包検証
JP2009262787A Pending JP2010044791A (ja) 2002-04-15 2009-11-18 データセンタへのプラットフォームの内包検証
JP2010243222A Expired - Lifetime JP5611768B2 (ja) 2002-04-15 2010-10-29 データセンタへのプラットフォームの内包検証
JP2010243227A Pending JP2011072006A (ja) 2002-04-15 2010-10-29 データセンタへのプラットフォームの内包検証
JP2010243228A Pending JP2011065665A (ja) 2002-04-15 2010-10-29 データセンタへのプラットフォームの内包検証
JP2013155277A Pending JP2013225942A (ja) 2002-04-15 2013-07-26 データセンタへのプラットフォームの内包検証

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2015016721A Expired - Lifetime JP6370722B2 (ja) 2002-04-15 2015-01-30 データセンタへのプラットフォームの内包検証
JP2016075106A Expired - Lifetime JP6151402B2 (ja) 2002-04-15 2016-04-04 データセンタへのプラットフォームの内包検証

Country Status (8)

Country Link
US (1) US7058807B2 (ja)
EP (1) EP1509827B1 (ja)
JP (10) JP2005527900A (ja)
CN (1) CN1659495B (ja)
AT (1) ATE460709T1 (ja)
AU (1) AU2003222104A1 (ja)
DE (1) DE60331646D1 (ja)
WO (1) WO2003090053A1 (ja)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0020441D0 (en) * 2000-08-18 2000-10-04 Hewlett Packard Co Performance of a service on a computing platform
GB2376763B (en) 2001-06-19 2004-12-15 Hewlett Packard Co Demonstrating integrity of a compartment of a compartmented operating system
GB2372592B (en) 2001-02-23 2005-03-30 Hewlett Packard Co Information system
GB2372595A (en) 2001-02-23 2002-08-28 Hewlett Packard Co Method of and apparatus for ascertaining the status of a data processing environment.
GB2376764B (en) * 2001-06-19 2004-12-29 Hewlett Packard Co Multiple trusted computing environments
GB2376762A (en) * 2001-06-19 2002-12-24 Hewlett Packard Co Renting a computing environment on a trusted computing platform
GB2378013A (en) * 2001-07-27 2003-01-29 Hewlett Packard Co Trusted computer platform audit system
US7058807B2 (en) * 2002-04-15 2006-06-06 Intel Corporation Validation of inclusion of a platform within a data center
US20050044408A1 (en) * 2003-08-18 2005-02-24 Bajikar Sundeep M. Low pin count docking architecture for a trusted platform
JP4712325B2 (ja) * 2003-09-12 2011-06-29 株式会社リコー 通信装置、通信システム、通信方法及びプログラム
JP4064914B2 (ja) 2003-12-02 2008-03-19 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム
US7421588B2 (en) * 2003-12-30 2008-09-02 Lenovo Pte Ltd Apparatus, system, and method for sealing a data repository to a trusted computing platform
US20050234909A1 (en) * 2004-04-15 2005-10-20 International Business Machines Corporation Method, computer program product, and data processing system for source verifiable audit logging
US20060026418A1 (en) * 2004-07-29 2006-02-02 International Business Machines Corporation Method, apparatus, and product for providing a multi-tiered trust architecture
US8539587B2 (en) * 2005-03-22 2013-09-17 Hewlett-Packard Development Company, L.P. Methods, devices and data structures for trusted data
US7707629B2 (en) * 2005-03-31 2010-04-27 Intel Corporation Platform configuration register virtualization apparatus, systems, and methods
US20070056033A1 (en) * 2005-03-31 2007-03-08 Grawrock David W Platform configuration apparatus, systems, and methods
US7613921B2 (en) * 2005-05-13 2009-11-03 Intel Corporation Method and apparatus for remotely provisioning software-based security coprocessors
US8074262B2 (en) * 2005-05-13 2011-12-06 Intel Corporation Method and apparatus for migrating virtual trusted platform modules
US8549592B2 (en) * 2005-07-12 2013-10-01 International Business Machines Corporation Establishing virtual endorsement credentials for dynamically generated endorsement keys in a trusted computing platform
JP4770306B2 (ja) * 2005-07-12 2011-09-14 日本電気株式会社 端末セキュリティチェックサービス提供方法及びそのシステム
CN1941699B (zh) * 2005-09-29 2012-05-23 国际商业机器公司 密码方法、主机系统、可信平台模块和计算机安排
US20070136580A1 (en) * 2005-12-12 2007-06-14 Anand Vaijayanthimala K Method and system for tracking a data processing system within a communications network
JP5074709B2 (ja) * 2006-01-18 2012-11-14 株式会社Pfu 対象機器、機器管理システム、機器管理方法および外部装置
US20070192580A1 (en) * 2006-02-10 2007-08-16 Challener David C Secure remote management of a TPM
US7624283B2 (en) * 2006-02-13 2009-11-24 International Business Machines Corporation Protocol for trusted platform module recovery through context checkpointing
EP1826979A1 (en) * 2006-02-27 2007-08-29 BRITISH TELECOMMUNICATIONS public limited company A system and method for establishing a secure group of entities in a computer network
US8856862B2 (en) * 2006-03-02 2014-10-07 British Telecommunications Public Limited Company Message processing methods and systems
US8108668B2 (en) * 2006-06-26 2012-01-31 Intel Corporation Associating a multi-context trusted platform module with distributed platforms
US20080046752A1 (en) 2006-08-09 2008-02-21 Stefan Berger Method, system, and program product for remotely attesting to a state of a computer system
US7613915B2 (en) * 2006-11-09 2009-11-03 BroadOn Communications Corp Method for programming on-chip non-volatile memory in a secure processor, and a device so programmed
EP1976220A1 (en) * 2007-03-30 2008-10-01 British Telecommunications Public Limited Company Computer network
EP1975830A1 (en) * 2007-03-30 2008-10-01 British Telecommunications Public Limited Company Distributed computer system
GB0707150D0 (en) * 2007-04-13 2007-05-23 Hewlett Packard Development Co Dynamic trust management
US8064605B2 (en) * 2007-09-27 2011-11-22 Intel Corporation Methods and apparatus for providing upgradeable key bindings for trusted platform modules
US8249257B2 (en) 2007-09-28 2012-08-21 Intel Corporation Virtual TPM keys rooted in a hardware TPM
US8725701B2 (en) * 2008-10-08 2014-05-13 Oracle International Corporation Merger and acquisition data validation
US8588422B2 (en) * 2009-05-28 2013-11-19 Novell, Inc. Key management to protect encrypted data of an endpoint computing device
CN103238305A (zh) * 2010-05-28 2013-08-07 安全第一公司 用于安全数据储存的加速器系统
WO2011152910A1 (en) * 2010-06-02 2011-12-08 Vmware, Inc. Securing customer virtual machines in a multi-tenant cloud
US9961550B2 (en) * 2010-11-04 2018-05-01 Itron Networked Solutions, Inc. Physically secured authorization for utility applications
US9154299B2 (en) 2010-12-13 2015-10-06 Novell, Inc. Remote management of endpoint computing device with full disk encryption
US8683560B1 (en) * 2010-12-29 2014-03-25 Amazon Technologies, Inc. Techniques for credential generation
US8438654B1 (en) 2012-09-14 2013-05-07 Rightscale, Inc. Systems and methods for associating a virtual machine with an access control right
US10140352B2 (en) 2014-07-17 2018-11-27 Oracle International Corporation Interfacing with a relational database for multi-dimensional analysis via a spreadsheet application
US10541811B2 (en) * 2015-03-02 2020-01-21 Salesforce.Com, Inc. Systems and methods for securing data
US9898497B2 (en) 2015-03-31 2018-02-20 Oracle International Corporation Validating coherency between multiple data sets between database transfers
US9985954B2 (en) * 2015-11-25 2018-05-29 International Business Machines Corporation Sponsored trust relationship management between multiple racks
US10250452B2 (en) 2015-12-14 2019-04-02 Microsoft Technology Licensing, Llc Packaging tool for first and third party component deployment
US10666517B2 (en) * 2015-12-15 2020-05-26 Microsoft Technology Licensing, Llc End-to-end automated servicing model for cloud computing platforms
CN106933868B (zh) 2015-12-30 2020-04-24 阿里巴巴集团控股有限公司 一种调整数据分片分布的方法及数据服务器
US10177910B2 (en) 2016-08-31 2019-01-08 Microsoft Technology Licensing, Llc Preserving protected secrets across a secure boot update
CN107169344B (zh) * 2017-05-10 2020-04-21 威盛电子股份有限公司 阻挡非授权应用程序的方法以及使用该方法的装置
US11522686B2 (en) 2020-07-16 2022-12-06 Salesforce, Inc. Securing data using key agreement
US11368292B2 (en) 2020-07-16 2022-06-21 Salesforce.Com, Inc. Securing data with symmetric keys generated using inaccessible private keys
CN114844647B (zh) * 2022-04-21 2024-04-12 浪潮云信息技术股份公司 一种多中心的群签名密钥生成方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04286434A (ja) * 1990-11-16 1992-10-12 General Instr Corp 安全な通信網を保つための端末の機能更新方法とその装置
JPH10504957A (ja) * 1995-06-23 1998-05-12 モトローラ・インコーポレイテッド 通信システムにおける認証方法および装置
JP2002539656A (ja) * 1999-03-05 2002-11-19 ヒューレット・パッカード・カンパニー 信頼できる計算プラットフォームのためのスマートカード・ユーザインターフェイス

Family Cites Families (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3699532A (en) * 1970-04-21 1972-10-17 Singer Co Multiprogramming control for a data handling system
US3996449A (en) * 1975-08-25 1976-12-07 International Business Machines Corporation Operating system authenticator
US4162536A (en) * 1976-01-02 1979-07-24 Gould Inc., Modicon Div. Digital input/output system and method
US4037214A (en) * 1976-04-30 1977-07-19 International Business Machines Corporation Key register controlled accessing system
US4247905A (en) * 1977-08-26 1981-01-27 Sharp Kabushiki Kaisha Memory clear system
US4278837A (en) * 1977-10-31 1981-07-14 Best Robert M Crypto microprocessor for executing enciphered programs
US4276594A (en) * 1978-01-27 1981-06-30 Gould Inc. Modicon Division Digital computer with multi-processor capability utilizing intelligent composite memory and input/output modules and method for performing the same
US4207609A (en) * 1978-05-08 1980-06-10 International Business Machines Corporation Method and means for path independent device reservation and reconnection in a multi-CPU and shared device access system
JPS5823570B2 (ja) * 1978-11-30 1983-05-16 国産電機株式会社 液面検出装置
JPS5576447A (en) * 1978-12-01 1980-06-09 Fujitsu Ltd Address control system for software simulation
US4307447A (en) * 1979-06-19 1981-12-22 Gould Inc. Programmable controller
US4307214A (en) * 1979-12-12 1981-12-22 Phillips Petroleum Company SC2 activation of supported chromium oxide catalysts
US4319323A (en) * 1980-04-04 1982-03-09 Digital Equipment Corporation Communications device for data processing system
US4419724A (en) * 1980-04-14 1983-12-06 Sperry Corporation Main bus interface package
US4366537A (en) * 1980-05-23 1982-12-28 International Business Machines Corp. Authorization mechanism for transfer of program control or data between different address spaces having different storage protect keys
US4403283A (en) * 1980-07-28 1983-09-06 Ncr Corporation Extended memory system and method
DE3034581A1 (de) * 1980-09-13 1982-04-22 Robert Bosch Gmbh, 7000 Stuttgart Auslesesicherung bei einchip-mikroprozessoren
US4521852A (en) * 1982-06-30 1985-06-04 Texas Instruments Incorporated Data processing device formed on a single semiconductor substrate having secure memory
JPS59111561A (ja) * 1982-12-17 1984-06-27 Hitachi Ltd 複合プロセツサ・システムのアクセス制御方式
US4759064A (en) * 1985-10-07 1988-07-19 Chaum David L Blind unanticipated signature systems
US4975836A (en) * 1984-12-19 1990-12-04 Hitachi, Ltd. Virtual computer system
JPS61206057A (ja) * 1985-03-11 1986-09-12 Hitachi Ltd アドレス変換装置
FR2601525B1 (fr) * 1986-07-11 1988-10-21 Bull Cp8 Dispositif de securite interdisant le fonctionnement d'un ensemble electronique apres une premiere coupure de son alimentation electrique
US5007082A (en) * 1988-08-03 1991-04-09 Kelly Services, Inc. Computer software encryption apparatus
US5079737A (en) * 1988-10-25 1992-01-07 United Technologies Corporation Memory management unit for the MIL-STD 1750 bus
JPH02171934A (ja) * 1988-12-26 1990-07-03 Hitachi Ltd 仮想計算機システム
JPH02208740A (ja) * 1989-02-09 1990-08-20 Fujitsu Ltd 仮想計算機制御方式
JP2590267B2 (ja) * 1989-06-30 1997-03-12 株式会社日立製作所 仮想計算機における表示制御方式
US5022077A (en) * 1989-08-25 1991-06-04 International Business Machines Corp. Apparatus and method for preventing unauthorized access to BIOS in a personal computer system
JP2825550B2 (ja) * 1989-09-21 1998-11-18 株式会社日立製作所 多重仮想空間アドレス制御方法および計算機システム
CA2010591C (en) * 1989-10-20 1999-01-26 Phillip M. Adams Kernels, description tables and device drivers
CA2027799A1 (en) * 1989-11-03 1991-05-04 David A. Miller Method and apparatus for independently resetting processors and cache controllers in multiple processor systems
US5075842A (en) * 1989-12-22 1991-12-24 Intel Corporation Disabling tag bit recognition and allowing privileged operations to occur in an object-oriented memory protection mechanism
US5108590A (en) * 1990-09-12 1992-04-28 Disanto Dennis Water dispenser
US5230069A (en) * 1990-10-02 1993-07-20 International Business Machines Corporation Apparatus and method for providing private and shared access to host address and data spaces by guest programs in a virtual machine computer system
US5317705A (en) * 1990-10-24 1994-05-31 International Business Machines Corporation Apparatus and method for TLB purge reduction in a multi-level machine system
US5287363A (en) * 1991-07-01 1994-02-15 Disk Technician Corporation System for locating and anticipating data storage media failures
US5437033A (en) * 1990-11-16 1995-07-25 Hitachi, Ltd. System for recovery from a virtual machine monitor failure with a continuous guest dispatched to a nonguest mode
US5255379A (en) * 1990-12-28 1993-10-19 Sun Microsystems, Inc. Method for automatically transitioning from V86 mode to protected mode in a computer system using an Intel 80386 or 80486 processor
US5522075A (en) * 1991-06-28 1996-05-28 Digital Equipment Corporation Protection ring extension for computers having distinct virtual machine monitor and virtual machine address spaces
US5319760A (en) * 1991-06-28 1994-06-07 Digital Equipment Corporation Translation buffer for virtual machines with address space match
US5455909A (en) 1991-07-05 1995-10-03 Chips And Technologies Inc. Microprocessor with operation capture facility
JPH06236284A (ja) * 1991-10-21 1994-08-23 Intel Corp コンピュータシステム処理状態を保存及び復元する方法及びコンピュータシステム
US5627987A (en) * 1991-11-29 1997-05-06 Kabushiki Kaisha Toshiba Memory management and protection system for virtual memory in computer system
US5574936A (en) * 1992-01-02 1996-11-12 Amdahl Corporation Access control mechanism controlling access to and logical purging of access register translation lookaside buffer (ALB) in a computer system
US5421006A (en) * 1992-05-07 1995-05-30 Compaq Computer Corp. Method and apparatus for assessing integrity of computer system software
US5237616A (en) * 1992-09-21 1993-08-17 International Business Machines Corporation Secure computer system having privileged and unprivileged memories
US5293424A (en) * 1992-10-14 1994-03-08 Bull Hn Information Systems Inc. Secure memory card
JP2765411B2 (ja) * 1992-11-30 1998-06-18 株式会社日立製作所 仮想計算機方式
US5668971A (en) * 1992-12-01 1997-09-16 Compaq Computer Corporation Posted disk read operations performed by signalling a disk read complete to the system prior to completion of data transfer
JPH06187178A (ja) * 1992-12-18 1994-07-08 Hitachi Ltd 仮想計算機システムの入出力割込み制御方法
US5483656A (en) * 1993-01-14 1996-01-09 Apple Computer, Inc. System for managing power consumption of devices coupled to a common bus
US5469557A (en) * 1993-03-05 1995-11-21 Microchip Technology Incorporated Code protection in microcontroller with EEPROM fuses
FR2703800B1 (fr) * 1993-04-06 1995-05-24 Bull Cp8 Procédé de signature d'un fichier informatique, et dispositif pour la mise en Óoeuvre.
JPH06348867A (ja) * 1993-06-04 1994-12-22 Hitachi Ltd マイクロコンピュータ
US5555385A (en) * 1993-10-27 1996-09-10 International Business Machines Corporation Allocation of address spaces within virtual machine compute system
US5825880A (en) * 1994-01-13 1998-10-20 Sudia; Frank W. Multi-step digital signature method and system
US5459869A (en) * 1994-02-17 1995-10-17 Spilo; Michael L. Method for providing protected mode services for device drivers and other resident software
US5604805A (en) * 1994-02-28 1997-02-18 Brands; Stefanus A. Privacy-protected transfer of electronic information
US5684881A (en) * 1994-05-23 1997-11-04 Matsushita Electric Industrial Co., Ltd. Sound field and sound image control apparatus and method
US5473692A (en) * 1994-09-07 1995-12-05 Intel Corporation Roving software license for a hardware agent
US5539828A (en) * 1994-05-31 1996-07-23 Intel Corporation Apparatus and method for providing secured communications
US5978481A (en) * 1994-08-16 1999-11-02 Intel Corporation Modem compatible method and apparatus for encrypting data that is transparent to software applications
JPH0883211A (ja) * 1994-09-12 1996-03-26 Mitsubishi Electric Corp データ処理装置
DE69534757T2 (de) * 1994-09-15 2006-08-31 International Business Machines Corp. System und Verfahren zur sicheren Speicherung und Verteilung von Daten unter Verwendung digitaler Unterschriften
US6058478A (en) 1994-09-30 2000-05-02 Intel Corporation Apparatus and method for a vetted field upgrade
US5606617A (en) * 1994-10-14 1997-02-25 Brands; Stefanus A. Secret-key certificates
US5564040A (en) * 1994-11-08 1996-10-08 International Business Machines Corporation Method and apparatus for providing a server function in a logically partitioned hardware machine
US5560013A (en) * 1994-12-06 1996-09-24 International Business Machines Corporation Method of using a target processor to execute programs of a source architecture that uses multiple address spaces
US5555414A (en) * 1994-12-14 1996-09-10 International Business Machines Corporation Multiprocessing system including gating of host I/O and external enablement to guest enablement at polling intervals
US5615263A (en) * 1995-01-06 1997-03-25 Vlsi Technology, Inc. Dual purpose security architecture with protected internal operating system
US5764969A (en) * 1995-02-10 1998-06-09 International Business Machines Corporation Method and system for enhanced management operation utilizing intermixed user level and supervisory level instructions with partial concept synchronization
US5717903A (en) * 1995-05-15 1998-02-10 Compaq Computer Corporation Method and appartus for emulating a peripheral device to allow device driver development before availability of the peripheral device
JP3451595B2 (ja) * 1995-06-07 2003-09-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 二つの別個の命令セット・アーキテクチャへの拡張をサポートすることができるアーキテクチャ・モード制御を備えたマイクロプロセッサ
US5684948A (en) * 1995-09-01 1997-11-04 National Semiconductor Corporation Memory management circuit which provides simulated privilege levels
US5633929A (en) * 1995-09-15 1997-05-27 Rsa Data Security, Inc Cryptographic key escrow system having reduced vulnerability to harvesting attacks
US5737760A (en) * 1995-10-06 1998-04-07 Motorola Inc. Microcontroller with security logic circuit which prevents reading of internal memory by external program
JP3693721B2 (ja) * 1995-11-10 2005-09-07 Necエレクトロニクス株式会社 フラッシュメモリ内蔵マイクロコンピュータ及びそのテスト方法
US5657445A (en) * 1996-01-26 1997-08-12 Dell Usa, L.P. Apparatus and method for limiting access to mass storage devices in a computer system
US5835594A (en) * 1996-02-09 1998-11-10 Intel Corporation Methods and apparatus for preventing unauthorized write access to a protected non-volatile storage
US5809546A (en) * 1996-05-23 1998-09-15 International Business Machines Corporation Method for managing I/O buffers in shared storage by structuring buffer table having entries including storage keys for controlling accesses to the buffers
US5729760A (en) * 1996-06-21 1998-03-17 Intel Corporation System for providing first type access to register if processor in first mode and second type access to register if processor not in first mode
US5740178A (en) * 1996-08-29 1998-04-14 Lucent Technologies Inc. Software for controlling a reliable backup memory
US6055637A (en) 1996-09-27 2000-04-25 Electronic Data Systems Corporation System and method for accessing enterprise-wide resources by presenting to the resource a temporary credential
US5844986A (en) * 1996-09-30 1998-12-01 Intel Corporation Secure BIOS
US5937063A (en) * 1996-09-30 1999-08-10 Intel Corporation Secure boot
US5935242A (en) * 1996-10-28 1999-08-10 Sun Microsystems, Inc. Method and apparatus for initializing a device
US5852717A (en) * 1996-11-20 1998-12-22 Shiva Corporation Performance optimizations for computer networks utilizing HTTP
US5901225A (en) * 1996-12-05 1999-05-04 Advanced Micro Devices, Inc. System and method for performing software patches in embedded systems
US5757919A (en) * 1996-12-12 1998-05-26 Intel Corporation Cryptographically protected paging subsystem
US6400823B1 (en) * 1996-12-13 2002-06-04 Compaq Computer Corporation Securely generating a computer system password by utilizing an external encryption algorithm
US5953502A (en) * 1997-02-13 1999-09-14 Helbig, Sr.; Walter A Method and apparatus for enhancing computer system security
US6044478A (en) 1997-05-30 2000-03-28 National Semiconductor Corporation Cache with finely granular locked-down regions
US5987557A (en) * 1997-06-19 1999-11-16 Sun Microsystems, Inc. Method and apparatus for implementing hardware protection domains in a system with no memory management unit (MMU)
US6035374A (en) * 1997-06-25 2000-03-07 Sun Microsystems, Inc. Method of executing coded instructions in a multiprocessor having shared execution resources including active, nap, and sleep states in accordance with cache miss latency
US6014745A (en) * 1997-07-17 2000-01-11 Silicon Systems Design Ltd. Protection for customer programs (EPROM)
US5978475A (en) * 1997-07-18 1999-11-02 Counterpane Internet Security, Inc. Event auditing system
US5919257A (en) * 1997-08-08 1999-07-06 Novell, Inc. Networked workstation intrusion detection system
US5935247A (en) * 1997-09-18 1999-08-10 Geneticware Co., Ltd. Computer system having a genetic code that cannot be directly accessed and a method of maintaining the same
US5970147A (en) * 1997-09-30 1999-10-19 Intel Corporation System and method for configuring and registering a cryptographic device
JP4626001B2 (ja) * 1999-10-19 2011-02-02 ソニー株式会社 暗号化通信システム及び暗号化通信方法
US6990579B1 (en) * 2000-03-31 2006-01-24 Intel Corporation Platform and method for remote attestation of a platform
US20020062452A1 (en) * 2000-08-18 2002-05-23 Warwick Ford Countering credentials copying
US8909555B2 (en) * 2001-04-24 2014-12-09 Hewlett-Packard Development Company, L.P. Information security system
US7058807B2 (en) * 2002-04-15 2006-06-06 Intel Corporation Validation of inclusion of a platform within a data center
US7587607B2 (en) * 2003-12-22 2009-09-08 Intel Corporation Attesting to platform configuration
US7574600B2 (en) * 2004-03-24 2009-08-11 Intel Corporation System and method for combining user and platform authentication in negotiated channel security protocols
US20050251857A1 (en) * 2004-05-03 2005-11-10 International Business Machines Corporation Method and device for verifying the security of a computing platform

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04286434A (ja) * 1990-11-16 1992-10-12 General Instr Corp 安全な通信網を保つための端末の機能更新方法とその装置
JPH10504957A (ja) * 1995-06-23 1998-05-12 モトローラ・インコーポレイテッド 通信システムにおける認証方法および装置
JP2002539656A (ja) * 1999-03-05 2002-11-19 ヒューレット・パッカード・カンパニー 信頼できる計算プラットフォームのためのスマートカード・ユーザインターフェイス

Also Published As

Publication number Publication date
JP2015111909A (ja) 2015-06-18
JP5611768B2 (ja) 2014-10-22
JP2013225942A (ja) 2013-10-31
JP2016158270A (ja) 2016-09-01
AU2003222104A1 (en) 2003-11-03
JP6370722B2 (ja) 2018-08-08
DE60331646D1 (de) 2010-04-22
EP1509827A1 (en) 2005-03-02
JP2010044791A (ja) 2010-02-25
JP2011065665A (ja) 2011-03-31
JP2011072006A (ja) 2011-04-07
CN1659495A (zh) 2005-08-24
US20030196083A1 (en) 2003-10-16
JP6151402B2 (ja) 2017-06-21
JP5869052B2 (ja) 2016-02-24
US7058807B2 (en) 2006-06-06
CN1659495B (zh) 2010-05-26
JP2009219162A (ja) 2009-09-24
EP1509827B1 (en) 2010-03-10
JP2005527900A (ja) 2005-09-15
WO2003090053A1 (en) 2003-10-30
JP2011060311A (ja) 2011-03-24
ATE460709T1 (de) 2010-03-15

Similar Documents

Publication Publication Date Title
JP6151402B2 (ja) データセンタへのプラットフォームの内包検証
US11082240B2 (en) Retrieving public data for blockchain networks using highly available trusted execution environments
EP3610624B1 (en) Retrieving access data for blockchain networks using highly available trusted execution environments
KR100996784B1 (ko) 공개 키 암호화에 기초한 데이터의 저장 및 검색을 위한, 컴퓨팅 장치에서 구현되는 방법, 시스템 및 복수의 명령어를 저장하는 하나 이상의 컴퓨터 판독가능 매체
KR101067399B1 (ko) 대칭 키 암호화에 기초한 데이터의 저장 및 검색을 위한, 컴퓨팅 장치에서 구현되는 방법, 시스템 및 복수의 명령어를 저장하는 하나 이상의 컴퓨터 판독가능 매체
US7318235B2 (en) Attestation using both fixed token and portable token
WO2020073513A1 (zh) 基于区块链的用户认证方法及终端设备
CN109361668A (zh) 一种数据可信传输方法
JP2004508619A (ja) トラステッド・デバイス
CN114244508A (zh) 数据加密方法、装置、设备及存储介质
Fernando et al. Information Security

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151125

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160106

R150 Certificate of patent or registration of utility model

Ref document number: 5869052

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term