説明

セキュリティ・コプロセッサにおけるN進の局所性のためのシステム及び方法

【課題】コンピューティング・システムのセキュリティ・コプロセッサ・モジュール内の局所性の向上。
【解決手段】コンピューティング・システムのマシン・モード測定のためにアクセス制御空間に、地理的場所、トラステッド時間、ハ―ドウェア・ベンダ列、及び1つ又は複数の環境要因などの1つ又は複数の更なる属性を含めることによって実現し得る。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、コンピュータ・セキュリティ及びトラステッド・コンピューティングに関し、特に、コンピューティング・システム環境における局所性の拡張に関する。
【背景技術】
【0002】
現在のセキュリティ・コプロセッサ・モジュール(例えば、トラステッド・プラットフォーム・モジュール(TPM)など)は、局所性の概念に対するサポートを提供する。局所性は通常、システムの「マシン・モード」に対応するコンピューティング・システムに存在しているソフトウェア環境の識別情報が存在しているということを示す。マシン・モードは、システム上で実行されるマイクロコードのバージョン、通常のマクロコード(例えば、基本入出力システム(BIOS)や静的オペレーティング・システム(OS))、トラステッド動作環境(例えば、トラステッド実行手法をサポートするための第三者からのハイパバイザ)、及び他のハードウェア起動インディシアのうちの1つ又は複数を含み得る。
【発明の概要】
【発明が解決しようとする課題】
【0003】
セキュリティ・コプロセッサ・モジュールは通常、コンピューティング・システム上で実行されるソフトウェアのセキュリティ動作を提供するために使用される。マシン・モードとソフトウェア環境とのバインディングは、更なるセキュリティを提供するために使用することが可能である。しかし、マシン・モード・バインディングのみを使用した、システム動作の制限は、一部の場合には、十分でないことがあり得る。
【課題を解決するための手段】
【0004】
本発明の構成及び利点は、本発明の以下の詳細な説明から明らかになるであろう。
【図面の簡単な説明】
【0005】
【図1】本発明の実施例による、拡張された局所性のための、セキュリティ・コプロセッサへのデータ入力の図である。
【図2】本発明の実施例による、セキュリティ・コプロセッサ・モジュールを有するプロセッサ・システムを示す図である。
【図3】本発明の実施例による、セキュリティ・コプロセッサの初期化を示すフロー図である。
【図4】本発明の実施例による、セキュリティ・コプロセッサ・モジュールのセキュリティ・ポリシー処理を示すフロー図である。
【発明を実施するための形態】
【実施例】
【0006】
トラステッド・コンピューティング・システムにおいて提供される構成の1つは、コンピューティング・システムの現在の環境の測定を得ることである。この測定は、ファームウェア及びオペレーティング・システム(OS)の暗号ハッシュを少なくとも部分的に含む。測定は、他のソフトウェア構成部分のハッシュも含み得る。測定は、密閉型記憶装置に使用することができ、環境に関して外部の関係者に報告するために使用することも可能である。現在の環境は、マシン・モードとしても知られていることがあり得る。
【0007】
本発明の実施例は、コンピューティング・システムの現在の環境の測定に更なる属性を含めることにより、マシン・モードに基づいて局所性の概念及びセキュリティ・コプロセッサ・モジュールを拡充する。更なる属性を使用した結果は、コンピューティング・システムの全体のセキュリティ及び制御を向上し得るということである。本発明の実施例では、セキュリティ・コプロセッサ・モジュールは、測定を判定する場合に更なる属性を処理する。このコンテキストにおける測定の目的のための更なる属性は、コンピューティング・システム上で実行する他のソフトウェア(例えば、アプリケーション・プログラム、OS、又はBIOS)によって処理されない。これにより、脆弱性が高い高位のソフトウェアに、更なる属性を使用して測定に参加させ、ハッカーに対して、考えられる攻撃点を露出させることが避けられる。セキュリティ・コプロセッサ・モジュールが、トラステッド・プラットフォーム・モジュール(TPM)を備える少なくとも1つの実施例では、これは、測定の生成及び使用に関する動作が、TPMの明確に規定され、ハードウェアに制約されたトラステッド・コンピューティング・ベース(TCB)内にあるということを意味する。TPMは、保護された記憶、実行、及び明確に定義された加入/登録機構を提供する。
【0008】
本明細書において、本発明の「一実施例」又は「実施例」に言及していることは、実施例に関して説明した特定の構成、構造又は特性が本発明の少なくとも1つの実施例に含まれているということを意味している。よって、本明細書の随所に「一実施例において」の句が存在していることは、必ずしも、全て、同じ実施例を参照している訳でない。
【0009】
本発明の一実施例は、ブロード・アクセス制御空間Sを定義しており、Sは1つ又は複数の集合S_iを有し、局所性属性は、<マシン・モードM,トラステッド時間T,場所L>、又は、iの値全てについての、<M_i,T_i,L_i>のN組を含む。すなわち、コンピューティング・システムの現在の地理的場所及び現在のトラステッド時間は測定におけるマシン・モードに含め得る。値iは、アクセス制御空間Sにおける測定の組のうちの選択された1つを示し得る。Sにおける各S_iは、マシン・モード、トラステッド時間、及び場所の許容可能な組合せを示し得、それにより、(OSやアプリケーション・プログラムなどの)より高いレベルのソフトウェアによる、コンピューティング・システムの更なる動作を行い得る。
【0010】
本発明の実施例では、アクセス制御空間Sは、ハードウェア・ベンダ列と呼ばれる別の情報項目を含めるよう更に拡張し得る。ハードウェア・ベンダ列は、任意の長さ及び構成のビット列を含み得、コンピューティング・システムのハードウェア・ベンダ、セキュリティ・コプロセッサ・モジュール、コンピューティング・システムのプロセッサ、及び/又は、他のハードウェア・システム構成部分のうちの1つ又は複数を一意に識別し得る。一実施例では、ハードウェア・ベンダ列は、証明の目的でセキュリティ・コプロセッサによって使用し得る。この実施例におけるアクセス制御空間Sは、<マシン・モードM,トラステッド時間T,場所L,ハードウェア・ベンダ列HVS>、又は、iの値全てについての<M_i,T_i,L_i,HSV_i>であり得る。
【0011】
本発明の別の実施例では、アクセス制御空間Sは、環境要因などの更なる属性を含めるよう更に拡張し得る。環境要因は、コンピューティング・システムの温度、加速度、キャパシタンス、高度、及び向きなどのデータ項目を含み得る。他の環境要因も含み得る。一実施例では、環境要因は、コンピュータ・システムの使用の制御を支援するためにセキュリティ・コプロセッサ・モジュールによって使用し得る。この実施例におけるこのアクセス制御空間Sは、<マシン・モードM,トラステッド時間T,場所L,ハードウェア・ベンダ列HVS,環境要因EF>、又は、iの値全てについての、<M_i,T_i,L_i,HSV_i,EF_i>であり得る。環境要因は、コンピューティング・システムの温度、加速度、キャパシタンス、高度、及び向きなどのデータ項目を含み得る。
【0012】
実現形態により、アクセス制御空間Sが、上記識別された属性の何れかの組合せを含み得るということを当業者は認識するであろう。
【0013】
図1は、本発明の実施例による、拡張された局所性のための、セキュリティ・コプロセッサ・モジュールへのデータ入力の図である。セキュリティ・コプロセッサ・モジュール100は、トラステッド・コンピューティング・サービス及び動作をコンピューティング・システムに提供する。一実施例では、セキュリティ・コプロセッサ・モジュール100は、トラステッド・プラットフォーム・モジュール(TPM)を含む。他の実施例では、他のタイプのセキュリティ・コプロセッサ・モジュールを使用し得る。例えば、他のセキュリティ・コプロセッサは、インターナショナル・ビジネス・マシーンズ(IBM)社から市場で入手可能なIBM4758PCI暗号コプロセサ、及びTIから市場で入手可能なテキサス・インストゥルメンツ(TI)社のMシールドを含む。TITPMは、Trusted Computing Group (TCG)から入手可能なTrusted Computing Platform Association (TCPA) Main Specification 1.2(西暦2002年2月)、及び後続バージョンにおいてTCGによって規定されている。TPMは、システムに種々のセキュリティ機能を提供するために、(デスクトップ又はラップトップ・パソコン(PC)、モバイル・コンピューティング装置、携帯電話機、又は他のコンピューティング装置などの)コンピューティング・システムのマザーボード上の「スマートカード」に多少似たように動作する。通常、システム毎に1つのTPMのみが存在している。TPMは、暗号動作において使用するために少なくとも1つの公開鍵/秘密鍵対を含み、システム内の他のエンティティによって使用するために匿名鍵対を生成することが可能であり、暗号化及び復号動作を行うことが可能であり、データに署名し、データを検証することが可能であり、システムのルート・オブ・トラストを確立することが可能である。TPMは、侵入し、その動作に影響を及ぼすことが困難であると考えられる。コンピューティング・プラットフォームのルート・オブ・トラストとして使用されるTPMは、少なくとも1つの公開/秘密鍵、及びプラットフォーム構成レジスタ(PCR)を有する。トラステッド・コンピューティング環境のブート中に、ルート・オブ・トラスト構成部分は、ソフトウェア・モジュールをロードし、ソフトウェア・モジュールのハッシュを計算し、ハッシュをPCRに送出し、次いで、制御をそのソフトウェア・モジュールに移す。ソフトウェア・モジュールは次いで、この処理を新たなソフトウェア・モジュールで反復し得、新たなソフトウェア・モジュールのハッシュを新たなPCRに送出し得るか、又は、先行して使用されたPCRのハッシュを拡張し得る。この処理は複数回、反復し得る。最終的には、トラステッド・コンピューティング環境をコントロールするソフトウェア全ての測定を有するPCRが1つ又は複数、存在している。
【0014】
密閉型記憶は、トラステッド・コンピューティング・プラットフォームの特徴の1つである。TPMは、秘密及びPCR値の組を含む、blobと呼ばれるデータの一部分を暗号化し得る。その後、blobが復号のためにTPMに提示されると、TPMは、これを復号し、blob内で規定されたPCR値が、TPM内のPCRに現在記憶されているPCR値と同じであるか否かを検査する。この検査に合格した場合にのみ、TPMは、復号された秘密をプラットフォームに出す。よって、密閉された秘密は、blobによって規定されたコンピューティング環境にのみ、利用可能である。特定の他の環境がコンピューティング・プラットフォーム上で起動された場合、TPMは秘密を出さない。
【0015】
一実施例では、処理システムが起動されると、ブート・シーケンス中に、(BIOS、オプションROM等などの)種々のソフトウェア構成部分の測定を1つ又は複数のPCRに登録し得る。これは、マシン・モードとして知られている。一実施例では、測定は、ソフトウェア構成部分の1つ又は複数のコードの暗号ハッシュを含む。
【0016】
データを現在のマシン・モードに結合するために、セキュリティ・コプロセッサ・モジュール100は、マシン・モード106及びデータ102を入力データとして受け入れる。既知の暗号化動作を使用して、セキュリティ・コプロセッサ・モジュールは、マシン・モードをデータに結合して結合データ104を生成する。他のソフトウェア構成部分はその場合、セキュリティ・コプロセッサ・モジュールの動作により、結合データにおけるトラストを推測し得る。
【0017】
コンピューティング・システムのセキュリティ及びコントロールを向上させるために、更なる属性を、本発明の実施例におけるセキュリティ・コプロセッサ・モジュールに対するデータ入力として含み得る。地理的場所108は、アクセス制御空間における属性として含み得る。コンピューティング・システムの現在の地理的場所は、周知の手法により、コンピューティング・システムの地球測位システム(GPS)構成部分から取得し得る。コンピューティング・システムの現在の地理的場所は、システムがどこにあるか、及び、場所及びシステム使用に関してシステム管理者により、何の規則が設定されているかに応じてコンピューティング・システムの動作を制御するために使用し得る。
【0018】
更に、トラステッド時間110を、アクセス制御空間における属性として含み得る。コンピューティング・システムにおいて信頼することが可能な、時間に対する値を得ることが望ましい。例えば、トラステッド時間は、コンテンツ保護機構のロバスト性を向上させて、プレミアム・コンテンツがディジタル・ホームに利用可能であることを確実にするために他の処理とともに使用し得る。コンピューティング・プラットフォームの所有者が、周期的に、危殆化された鍵の取消リストをダウンロードすることを確実にするためにコンテンツ保護環境において使用し得る。更に、一時時間ウィンドウ中のアクセスのためにコンテンツを購入することを可能にするためのセキュアなやり方を提供するために使用し得る。しかし、時間値を、コンピューティング・システムによる検出なしで、不謹慎なユーザによって修正することが可能な場合、コンピュータ・セキュリティ及びコンテンツ保護システムが危殆化され得る。トラステッド時間を提供するための一解決策は、ユーザによって容易に取り出すことが可能でないバッテリがTPMに含まれていることを必要とする(The Trusted Computing Groupから入手可能なTrusted Platform Module (TPM) Main part 1 Design Principles, Specification Version 1.2, Revision 81,November 23,2004, pp.93−98などに記載されている)。一実施例では、トラステッド時間は、本明細書及び特許請求の範囲に参照によって組み入れる、「Method for Providing Trusted Time in a Computing Platform」と題する、西暦2005年9月23日付に米国特許出願第11/233543号としてErnie F. Brickell及びClifford D. Hallによって出願された米国特許出願に開示されたものとして与えられ得る。
【0019】
更に、ハードウェア・ベンダ列112を、アクセス制御空間における属性として含み得る。上述の通り、ハードウェア・ベンダ列は、任意の長さ及び構成のビット列を含み得、コンピューティング・システムのハードウェア・ベンダ、セキュリティ・コプロセッサ・モジュール、コンピューティング・システムのプロセッサ、及び/又は、他のハードウェア・システム構成部分のうちの1つ又は複数を一意に識別し得る。
【0020】
1つ又は複数の環境要因114は、アクセス制御空間における属性としても含まれ得る。コンピューティング・システムの温度、加速度、キャパシタンス、高度、及び向きなどの環境条件は、適切な既知の装置及びセンサによって求め、かつ/又は検知し、セキュリティ・コプロセッサ・モジュールに入力し得る。
【0021】
本発明の実施例の例示的なコンピューティング・システムを図2に示す。しかし、他のシステムも使用することができ、本発明には、図示しているコンピューティング・システムの構成部分全てが必要な訳でない。例えば、本発明の実施例のために処理を実行するために、サンプル・コンピューティング・システム200を使用し得る。サンプル・システム200は、インテル社から入手可能なPENTIUM(登録商標)、CORE、CORE DUO、CORE QUAD、又はCeleron(登録商標)ファミリーのプロセッサに基づいた処理システムを代表するが、他のシステム(他のプロセッサを有するパソコン(PC)又はサーバ、エンジニアリング・ワークステーション、他のセット・トップ・ボックス、モバイル・コンピューティング装置、ハンドヘルド・コンピューティング装置、携帯電話機等を含む)及びアーキテクチャも使用し得る。
【0022】
図2は、本発明の一実施例のシステム200のブロック図である。システム200は、データ信号を処理するプロセッサ202を含む。プロセッサ202は、システム200内の他の構成部分とプロセッサ202との間でデータを伝送するプロセッサ・バス204に結合され得る。システム200はメモリ206を含む。メモリ206は、プロセッサ202によって実行され得るデータ信号によって表されるデータ及び/又は命令を記憶し得る。命令及び/又はデータは、本発明の手法の何れか及び/又は全てを行うためのコードを含み得る。メモリ206は、ハードウェア・ベンダ列232などの更なるソフトウェア及び/又はデータも含み得る。
【0023】
ブリッジ/メモリ・コントローラ210はプロセッサ・バス204及びメモリ206に結合し得る。ブリッジ/メモリ・コントローラ210は、プロセッサ202、メモリ206、及びシステム200内の他の構成部分間でデータ信号を導き、プロセッサ・バス204、メモリ206、及び第1の入出力(I/O)バス208間でデータ信号を橋絡する。この実施例では、グラフィクス装置214は、ユーザに向けて、グラフィクス装置214により、レンダリングされたか、又は他のやり方で処理された画像を表示するために表示装置(図示せず)とインタフェースする。第1のI/Oバス208は、単一のバス、又は複数のバスの組合せを含み得る。第1のI/Oバス208は、システム200中の構成部分間の通信リンクを提供する。
【0024】
少なくとも1つの実施例では、(例えば、TPMなどの)セキュリティ・コプロセッサ・モジュール216はバス・ブリッジ212に結合し得る。セキュリティ・コプロセッサ・モジュールは、PCR217、少なくとも1つのセキュリティ・ポリシー228、及びセキュリティ・モード230を含み得る。一実施例では、セキュリティ・モードは、通常モード又は拡張モードでセキュリティ・コプロセッサ・モジュールの動作を規定し得る。セキュリティ・ポリシーは、コンピューティング・システムのセキュリティ及びコントロールの向上をもたらすためにアクセス制御空間属性をどのようにして使用し得るかを規定し得る。一実施例では、セキュリティ・コプロセッサ・モジュールは、記憶させたハードウェア・ベンダ列232を含み得る。
【0025】
第2のI/Oバス220は、単一のバス、又は複数のバスの組合せを含み得る。第2のI/Oバス220は、システム200内の構成部分間の通信リンクを提供する。本発明の実施例では、セキュリティ・コプロセッサ・モジュールに更なる属性を提供するために更なる装置を第2のI/Oバスに結合し得る。GPS装置222は、現在の地理的場所のデータを提供するために含まれ得る。トラステッド時間装置224は、現在のトラステッド時間を提供するために含まれ得る。1つ又は複数の環境要因226は、環境要因データを提供するために含まれ得る。例えば、温度、加速度、キャパシタンス、高度、向き、又は他の要因の検知装置が含まれ得る。
【0026】
本発明の実施例は、処理システム内の構成部分としてのシステム200の使用に関する。一実施例によれば、前述の処理は、メモリ206において命令シーケンスを実行するプロセッサ202に応じてシステム200によって行い得る。前述の命令は、別のコンピュータ読み取り可能な媒体からメモリ206に読み出し得る。命令のシーケンスの実行は、本発明の実施例によるアプリケーションの処理をプロセッサ202に実行させる。別の実施例では、本発明の実施例の一部分を実現するために、ハードウェア回路をソフトウェア命令の代わりに、又は、ソフトウェア命令と組合せて使用し得る。よって、本発明は、ハードウェア回路及びソフトウェアの何れの特定の組合せにも限定されない。
【0027】
図3は、本発明の実施例による、セキュリティ・コプロセッサ・モジュールの初期化を示すフロー図である。開始ブロック300後、コンピューティング・システム初期化処理中に、ブロック302で、コンピューティング・システムの機能として地理的場所の取得及び使用がイネーブルされるかをセキュリティ・コプロセッサ・モジュールは求める。肯定の場合、ブロック304で、セキュリティ・コプロセッサ・モジュールは、セキュリティ・ポリシー228におけるエントリとして地理的場所を加える。否定の場合、セキュリティ・コプロセッサ・モジュールはブロック306で、コンピューティング・システムの機能としてトラステッド時間の取得及び使用がイネーブルされているかを判定する。肯定の場合、ブロック308で、セキュリティ・コプロセッサ・モジュールは、セキュリティ・ポリシー内のエントリとしてトラステッド時間を加える。否定の場合、セキュリティ・コプロセッサは、ブロック310で、コンピューティング・システムの機能としてハードウェア・ベンダの取得及び使用がイネーブルされているかを判定する。肯定の場合、ブロック312で、セキュリティ・コプロセッサ・モジュールは、セキュリティ・ポリシー内のエントリとしてハードウェア・ベンダ列を加える。否定の場合、セキュリティ・コプロセッサ・モジュールは、ブロック314で、コンピューティング・システムの機能として1つ又は複数の環境要因の取得及び使用がイネーブルされているかを判定する。肯定の場合、ブロック316で、セキュリティ・コプロセッサ・モジュールは、セキュリティ・ポリシー内のエントリとして、関連する環境要因を加える。地理的場所、トラステッド時間、ハードウェア・ベンダ列、及び環境要因の何れかがイネーブルされた場合、セキュリティ・モード230は、ブロック320で、拡張に設定し得る。さもなければ、セキュリティ・モードは通常に設定し得る。選択されたセキュリティ・モードによるセキュリティ・コプロセサ・モジュールの更なる初期化処理はブロック322で行い得る。322における処理は、限定列挙でないが、1)乱数の生成、2)暗号署名、3)暗号検証、4)シール(環境要因に対する暗号化)、5)アンシール(環境要因に対する復号)、6)クォート(遠隔証明からのオブジェクトの署名)などのセキュリティ感応性動作の実行を含み得る。他の実施例では、種々の属性の検査の順序を変え得る。
【0028】
更なる属性がイネーブルされると、セキュリティ・コプロセッサ・モジュールは、その属性の許容可能な値及び使用の先行して記憶された特定の条件を参照し得るか、又は、前述の条件をセキュアに設定するための機能を提供し得る。例えば、コンピューティング・システムを動作し得る地理的場所の許容可能な範囲を設定し得る。一実施例では、許容可能な値及び使用の条件の設定は、セキュアなファームウェア機構を介してシステム管理者により、セキュリティ・コプロセッサ・モジュール初期化が完了した後、行い得る。
【0029】
図4は、本発明の実施例による、セキュリティ・コプロセッサ・モジュールのセキュリティ・ポリシー処理を示すフロー図である。セキュリティ・コプロセッサ・モジュール初期化処理が完了した後はいつでも、セキュリティ・コプロセッサ・モジュールは、開始ブロック400後に、ブロック402で、動作を行う旨の要求を受け取り得る。ブロック404で、セキュリティ・コプロセッサ・モジュールはセキュリティ・モードを得る。セキュリティ・モードが通常の場合、ブロック416で、セキュリティ・コプロセッサ・モジュールにより、マシン・モードを検査し得る。マシン・モードが許容可能な場合、要求された動作を、ブロック418で、セキュリティ・コプロセッサ・モジュールによって実行することができ、処理は、ブロック414で、呼出し元に戻る。しかし、マシン・モードが許容可能でない場合、ブロック412で、エラーが報告され得、ブロック414で、処理は戻る。
【0030】
セキュリティ・モードが拡張の場合、セキュリティ・コプロセッサ・モジュールは、ブロック406で、セキュリティ・ポリシーを取得し、セキュリティ・ポリシーを解析し、動作を実行する前に、マシン・モードに加えて考慮する必要がある属性を求める。ブロック408では、セキュリティ・コプロセッサ・モジュールは、セキュリティ・ポリシー内のエントリに応じて、現在の地理的場所、トラステッド時間、ハードウェア・ベンダ列、及び/又は、環境要因のうちの1つ又は複数を得る。セキュリティ・コプロセッサ・モジュールは次いで、セキュリティ・ポリシーに応じてコンピューティング・システムの種々の装置から得られた属性データに基づいて、要求された動作が許容可能であるかを判定する。すなわち、セキュリティ・コプロセッサ・モジュールは、属性の関連付けられたセキュリティ・ポリシー・エントリにおいて設定された値及び/又は範囲と、属性の現在の値を比較し得る。動作が許容可能であると判定された場合、処理はブロック416に続く。否定の場合、エラーはブロック412で報告し得る。
【0031】
考えられる多くのセキュリティ検査は、本発明の実施例によって行い得る。例えば、現在の地理的場所が得られると、セキュリティ・コプロセッサ・モジュールは、現在の地理的場所が所定の範囲内又は境界内にあるかを判定し得る。否定の場合、セキュリティ・コプロセッサは、コンピューティング・システム上の特定の動作又はサービスの実現を拒否し得る(例えば、システムの強制終了)。別の実施例では、トラステッド時間が、コンピュータ・システム上の他の時間インディケータに一致しない場合、セキュリティ・コプロセッサ・モジュールは、他の時間インディケータがタンパリングされており、適切な措置を講じる旨を判定し得る。更なる例では、環境要因の何れかが、特定された範囲外である場合、適切な措置を講じ得る。例えば、温度が高すぎる場合、コンピューティング・システムを終了し得る。
【0032】
図4に示す実施例では、マシン・モードの検査は、セキュリティ・モ―ドが拡張である場合に、その他の属性を検査した後に行われる。他の実施例では、マシン・モードを検査した後にその他の属性が検査されるように前述の処理順序を変更し得る。
【0033】
よって、コンピューティング・システムの測定の局所性をマシン・モードから拡張するために更なる属性を追加することにより、セキュリティ・コプロセッサ・モジュールは、コンピューティング・システムのより好適なセキュリティ及び更なるコントロールを提供し得る。この機能は、OSやアプリケーション・プログラムよりもタンパリングが難しいセキュリティ・コプロセッサ・モジュールの一体の部分であるので、コンピューティング・システムのセキュリティ全体を向上させ得る。
【0034】
本明細書及び特許請求の範囲記載の動作は、シーケンシャル処理として説明し得るが、動作の一部は実際には、並列に、又は同時に行い得る。更に、一部の実施例では、動作の順序は、本発明の趣旨から逸脱しない限り、再編成し得る。
【0035】
本明細書及び特許請求の範囲記載の手法は、何れの特定のハードウェア又はソフトウェア構成にも限定されず、何れのコンピューティング又は処理環境においても適用性が見出され得る。上記手法は、ハードウェア、ソフトウェア、又はその2つの組合せで実現し得る。上記手法は、1つ又は複数の出力装置、少なくとも1つの入力装置、(揮発性メモリ及び不揮発性メモリ、並びに/又は記憶エレメントを含む)プロセッサによって読み出し可能な記憶媒体、プロセッサをそれぞれが含む、モバイル型又は固定型コンピュータ、ハンドヘルド・コンピューティング装置、携帯情報端末、セット・トップ・ボックス、携帯電話機及びページャ、及び他の電子装置などのプログラム可能なマシン上で実行されるプログラムで実現し得る。プログラム・コードは、上述の機能を行い、出力情報を生成するために入力装置を使用して入力されるデータに対して適用される。出力情報は、1つ又は複数の出力装置に対して適用し得る。マルチプロセッサ・システム、ミニコンピュータ、汎用コンピュータ等を含む種々のコンピュータ・システム構成で本発明を実施することが可能であるということを当業者は理解し得る。本発明は、通信ネットワークを介してリンクされた遠隔処理装置によってタスクを行い得る分散コンピューティング環境で実施することも可能である。
【0036】
各プログラムは、処理システムと通信するために、高位手続型又はオブジェクト指向型のプログラミング言語で実現し得る。しかし、プログラムは、必要な場合、アセンブラ言語又は機械語で実現し得る。いずれにせよ、言語はコンパイル又は解釈し得る。
【0037】
プログラム命令は、上記命令でプログラミングされた汎用処理システム又は専用処理システムに、本明細書及び特許請求の範囲記載の動作を行わせるために使用し得る。あるいは、動作は、上記動作を行うための配線ロジックを含む特定のハードウェア構成部分により、又は、プログラムされたコンピュータ構成部分及びカスタム・ハードウェア構成部分の何れかの組合せによって行い得る。本明細書及び特許請求の範囲記載の方法は、処理システム又は他の電子装置をプログラムして上記方法を行うために使用し得る命令を記憶させたマシン読み取り可能な媒体を含み得るコンピュータ・プログラム・プロダクトとして提供し得る。本明細書及び特許請求の範囲記載の「マシン読み取り可能な媒体」の語は、マシンによる実行のために命令のシーケンスを記憶するか、又はコード化することができ、本明細書及び特許請求の範囲記載の方法の何れか1つをマシンに行わせる何れかの媒体を含む。よって、「マシン読み取り可能な媒体」の語は、限定列挙でないが、ソリッドステート・メモリ、光ディスク、及び磁気ディスクを含む。更に、措置を講じるか、又は結果をもたらすものとして、一形態又は別の形態のソフトウェア(例えば、プログラム、手続、処理、アプリケーション、モジュール、ロジック等)を表すことが当該技術分野において一般的である。前述の表現は、処理システムによる、ソフトウェアの実行が、プロセッサに、動作を行わせるか、又は結果をもたらすと記載することの短縮したやり方に過ぎない。
【符号の説明】
【0038】
100 セキュリティ・コプロセッサ・モジュール
216 セキュリティ・コプロセッサ・モジュール
228 セキュリティ・ポリシー
230 セキュリティ・モード

【特許請求の範囲】
【請求項1】
コンピューティング・システムのセキュリティ・コプロセッサ・モジュール内の局所性を向上させる方法であって、
動作を実行する旨の、前記セキュリティ・コプロセッサ・モジュールによる要求を受け取る工程と、
前記セキュリティ・コプロセッサ・モジュールのセキュリティ・モードを判定する工程と、
前記セキュリティ・モードが通常である場合、前記コンピューティング・システム環境のマシン・モードを検査し、前記マシン・モードが許容可能である場合に前記要求された動作を実行する工程と、
前記セキュリティ・モードが拡張である場合、セキュリティ・ポリシーを取得し、現在のトラステッド時間及び前記コンピューティング・システムの現在の地理的場所を取得し、前記現在のトラステッド時間、前記現在の地理的場所、並びに、前記セキュリティ・ポリシーに規定された地理的場所及びトラステッド時間属性エントリに応じて、前記要求された動作が許容可能であるかを判定し、前記要求された動作が許容可能である場合に前記コンピューティング・システム環境の前記マシン・モードを検査し、前記マシン・モードが許容可能である場合に前記要求された動作を実行する工程と
を含む方法。
【請求項2】
請求項1記載の方法であって、地理的場所のエントリを前記セキュリティ・ポリシーに追加し、前記現在の地理的場所を得るための機能を前記コンピューティング・システムが提供する場合に前記セキュリティ・コプロセッサ・モジュールの前記セキュリティ・モードを拡張に設定する工程を更に含む方法。
【請求項3】
請求項1記載の方法であって、トラステッド時間のエントリを前記セキュリティ・ポリシーに追加し、前記トラステッド時間を得るための機能を前記コンピューティング・システムが提供する場合に前記セキュリティ・コプロセッサ・モジュールの前記セキュリティ・モードを拡張に設定する工程を更に含む方法。
【請求項4】
請求項1記載の方法であって、ハードウェア・ベンダ列のエントリを前記セキュリティ・ポリシーに追加し、前記ハードウェア・ベンダ列を得るための機能を前記コンピューティング・システムが提供する場合に前記セキュリティ・コプロセッサ・モジュールの前記セキュリティ・モードを拡張に設定する工程を更に含む方法。
【請求項5】
請求項4記載の方法であって、前記ハードウェア・ベンダ列を取得し、前記ハードウェア・ベンダ列及ぶ前記セキュリティ・ポリシーに規定された前記ハードウェア・ベンダ列のエントリに応じて前記要求された動作が許容可能であるかを判定する工程を更に含む方法。
【請求項6】
請求項5記載の方法であって、前記ハードウェア・ベンダ列は、前記コンピューティング・システムのプロセッサのベンダを識別する方法。
【請求項7】
請求項1記載の方法であって、環境要因のエントリを前記セキュリティ・ポリシーに追加し、1つ又は複数の環境要因を検出するための機能を前記コンピューティング・システムが提供する場合に前記セキュリティ・コプロセッサ・モジュールの前記セキュリティ・モードを拡張に設定する工程を更に含む方法。
【請求項8】
請求項7記載の方法であって、1つ又は複数の現在の環境要因を取得し、前記セキュリティ・ポリシーに規定された環境要因エントリ、及び前記現在の1つ又は複数の環境要因に応じて前記要求された動作が許容可能であるかを判定する工程を更に含む方法。
【請求項9】
請求項8記載の方法であって、前記1つ又は複数の環境要因は、前記コンピューティング・システムの温度、加速度、キャパシタンス、高度、及び向きのうちの1つ又は複数を含む方法。
【請求項10】
請求項1記載の方法であって、前記セキュリティ・コプロセッサ・モジュールはトラステッド・プラットフォーム・モジュール(TPM)を備える方法。
【請求項11】
複数のマシン命令を有するマシン読み取り可能な媒体を備えた製品であって、前記命令が、コンピューティング・システム内のセキュリティ・プロセッサ・モジュールによって実行されると、前記命令は、
動作を実行する旨の、前記セキュリティ・コプロセッサ・モジュールによる要求を受け取る機能と、
前記セキュリティ・コプロセッサ・モジュールのセキュリティ・モードを判定する機能と、
前記セキュリティ・モードが通常である場合、前記コンピューティング・システム環境のマシン・モードを検査し、前記マシン・モードが許容可能である場合に前記要求された動作を実行する機能と、
前記セキュリティ・モードが拡張である場合、セキュリティ・ポリシーを取得し、現在のトラステッド時間及び前記コンピューティング・システムの現在の地理的場所を取得し、前記現在のトラステッド時間、前記現在の地理的場所、並びに、前記セキュリティ・ポリシーに規定された地理的場所及びトラステッド時間属性エントリに応じて、前記要求された動作が許容可能であるかを判定し、前記要求された動作が許容可能である場合に前記コンピューティング・システム環境の前記マシン・モードを検査し、前記マシン・モードが許容可能である場合に前記要求された動作を実行する機能と
により、前記コンピューティング・システムの前記セキュリティ・コプロセッサ・モジュールにおける局所性を拡充することができる製品。
【請求項12】
請求項11記載の製品であって、地理的場所のエントリを前記セキュリティ・ポリシーに追加し、前記現在の地理的場所を得るための機能を前記コンピューティング・システムが提供する場合に前記セキュリティ・コプロセッサ・モジュールの前記セキュリティ・モードを拡張に設定するための命令を更に含む製品。
【請求項13】
請求項11記載の製品であって、トラステッド時間のエントリを前記セキュリティ・ポリシーに追加し、前記トラステッド時間を得るための機能を前記コンピューティング・システムが提供する場合に前記セキュリティ・コプロセッサ・モジュールの前記セキュリティ・モードを拡張に設定するための命令を更に含む製品。
【請求項14】
請求項11記載の製品であって、ハードウェア・ベンダ列のエントリを前記セキュリティ・ポリシーに追加し、前記ハードウェア・ベンダ列を得るための機能を前記コンピューティング・システムが提供する場合に前記セキュリティ・コプロセッサ・モジュールの前記セキュリティ・モードを拡張に設定するための命令を更に含む製品。
【請求項15】
請求項14記載の製品であって、前記ハードウェア・ベンダ列を取得し、前記ハードウェア・ベンダ列及ぶ前記セキュリティ・ポリシーに規定された前記ハードウェア・ベンダ列のエントリに応じて前記要求された動作が許容可能であるかを判定するための命令を更に含む製品。
【請求項16】
セキュリティ・モード、及び
セキュリティ・ポリシー
を備えたコンピューティング・システムのセキュリティ・コプロセッサ・モジュールであって、
前記セキュリティ・コプロセッサ・モジュールは、
動作を実行する旨の、前記セキュリティ・コプロセッサ・モジュールによる要求を受け取る機能と、
前記セキュリティ・コプロセッサ・モジュールのセキュリティ・モードを判定する機能と、
前記セキュリティ・モードが通常である場合、前記コンピューティング・システム環境のマシン・モードを検査し、前記マシン・モードが許容可能である場合に前記要求された動作を実行する機能と、
前記セキュリティ・モードが拡張である場合、セキュリティ・ポリシーを取得し、現在のトラステッド時間及び前記コンピューティング・システムの現在の地理的場所を取得し、前記現在のトラステッド時間、前記現在の地理的場所、並びに、前記セキュリティ・ポリシーに規定された地理的場所及びトラステッド時間属性エントリに応じて、前記要求された動作が許容可能であるかを判定し、前記要求された動作が許容可能である場合に前記コンピューティング・システム環境の前記マシン・モードを検査し、前記マシン・モードが許容可能である場合に前記要求された動作を実行する機能と
を行うよう構成されたセキュリティ・コプロセッサ・モジュール。
【請求項17】
請求項16記載のセキュリティ・コプロセッサ・モジュールであって、前記セキュリティ・コプロセッサ・モジュールは、地理的場所のエントリを前記セキュリティ・ポリシーに追加し、前記現在の地理的場所を得るための機能を前記コンピューティング・システムが提供する場合に前記セキュリティ・コプロセッサ・モジュールの前記セキュリティ・モードを拡張に設定する機能を行うよう更に構成されたセキュリティ・コプロセッサ・モジュール。
【請求項18】
請求項16記載のセキュリティ・コプロセッサ・モジュールであって、前記セキュリティ・コプロセッサ・モジュールは、トラステッド時間のエントリを前記セキュリティ・ポリシーに追加し、前記トラステッド時間を得るための機能を前記コンピューティング・システムが提供する場合に前記セキュリティ・コプロセッサ・モジュールの前記セキュリティ・モードを拡張に設定する機能を行うよう更に構成されたセキュリティ・コプロセッサ・モジュール。
【請求項19】
請求項16記載のセキュリティ・コプロセッサ・モジュールであって、前記セキュリティ・コプロセッサ・モジュールは、ハードウェア・ベンダ列のエントリを前記セキュリティ・ポリシーに追加し、前記ハードウェア・ベンダ列を得るための機能を前記コンピューティング・システムが提供する場合に前記セキュリティ・コプロセッサ・モジュールの前記セキュリティ・モードを拡張に設定する機能を行うよう更に構成されたセキュリティ・コプロセッサ・モジュール。
【請求項20】
請求項17記載のセキュリティ・コプロセッサ・モジュールであって、前記セキュリティ・コプロセッサ・モジュールは、前記ハードウェア・ベンダ列を取得し、前記ハードウェア・ベンダ列及ぶ前記セキュリティ・ポリシーに規定された前記ハードウェア・ベンダ列のエントリに応じて前記要求された動作が許容可能であるかを判定する機能を行うよう更に構成されたキュリティ・コプロセッサ・モジュール。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate