JP4064914B2 - 情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム - Google Patents

情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム Download PDF

Info

Publication number
JP4064914B2
JP4064914B2 JP2003403371A JP2003403371A JP4064914B2 JP 4064914 B2 JP4064914 B2 JP 4064914B2 JP 2003403371 A JP2003403371 A JP 2003403371A JP 2003403371 A JP2003403371 A JP 2003403371A JP 4064914 B2 JP4064914 B2 JP 4064914B2
Authority
JP
Japan
Prior art keywords
domain
server
server device
value
consistency
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003403371A
Other languages
English (en)
Other versions
JP2005167589A (ja
Inventor
誠治 宗藤
宏 丸山
フランク・セリガー
ナタラジ・ナガラタナム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2003403371A priority Critical patent/JP4064914B2/ja
Priority to CN200410091068A priority patent/CN100594692C/zh
Priority to US11/001,817 priority patent/US8171295B2/en
Publication of JP2005167589A publication Critical patent/JP2005167589A/ja
Application granted granted Critical
Publication of JP4064914B2 publication Critical patent/JP4064914B2/ja
Priority to US13/432,715 priority patent/US8560857B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Description

本発明は、コンピュータ・ネットワークにおけるセキュリティに関連し、特にリモート・ネットワーク環境において安全にプログラムを実行させる手段を含むネットワーク環境において有効な、情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法、およびこれら装置で実行可能なプログラムに関する。
近年では、機密情報、重要な情報またはコンピュータ自体を、予期されていない攻撃から保護するために、ネットワーク・システムの安全性が強く要求されている。この目的のため、例えばPalladium(商標)といったいくつかの試みが提案されている(非特許文献1)。Palladiumアーキテクチャでは、プラットホーム製造者は、いわゆるNubを、新規に製造されたPCにインストールさせると共に、Nubとして参照されるカーネル内に、公開鍵/私有鍵ペアを生成させ、PCが正当なPalladiumプラットホームであることを認証するための製造者証明を与える。これらのプロセスは、このプロセスまたは製造者がNubとプラットホームとの間の信頼性のある結合を生成させるために、唯一信頼できると考えられる、製造プロセス中に完了されなければならない。
従来のNubシステムは、認証のために1つの制御ポイントを有している。すなわち、正当なPalladium(商標)プラットホームの認証およびプラットホーム上で実行されるアプリケーションの認証である。上述したポリシーは、いくつかのタイプのプラットホーム上で実行されるゲーム・タイトルについて与えられた従来の環境に極めて類似するものである。
ネットワーク接続されたコンピュータ・システムに加え、サーバ・テクノロジーにおいては、サーバは、コンピュータ、PDA、およびある場合には携帯電話などといった、多くの異なったタイプの情報処理装置(以下、本発明では、単にクライアントとして参照する)からの接続を受け付けるために、さらにフレキシビリティのある別のセキュリティ・ポリシーが要求される。サーバに加え、クライアントは、Palladiumベースのプラットホームや他の信頼性アーキテクチャに基づいたプラットホームと対話することができる。サーバは、異なった種類のクライアントについてもサービスを提供することができる、より柔軟なポリシーを含むことができる。このため、サーバは、より柔軟でかつアプリケーションから独立したポリシーの下で、セキュリティに対して対応することが必要とされる。
OSGi(非特許文献3)は、個別的なサービスのための環境を提供するために設計されたフレームワークを規定しており、上述したようなサービスを提供し、管理し、ライフサイクル処理を行う機能を提供する。最も重要な点は、OSGiは、他のバンドルからの干渉に対してサービス・バンドルを保護することにある。同様に、ユーザ管理サービスおよびプログラム化されたアクセス制御についてのサービスが利用可能である。
典型的には、クライアントおよびサーバといったプラットホームは、単一のJava(登録商標)仮想マシンのインスタンスを含んでおり、単一のOSGiフレームワークのインスタンスが他のサービスのすべてを実行させながら実行されている。各サービスのバンドルは、自己のクラス・ローダを有しており、このクラス・ローダは、バンドル・クラスの干渉を避けるように構築されている。OSGiは、標準的なJava(登録商標)2のセキュリティ機構の上に成り立つ。
分散コンピューティング・システムでは、アプリケーションを構成するいくつかのコンポーネントは、サーバ、またはある場合にはクライアントといった遠隔したプラットホームにおいて実行する必要がある。遠隔したプラットホームは、ユーザの要求に応じて保護された実行ドメインを提供することができる。これらのコンポーネントが機密事項を含む情報を処理する場合には、実行の機密性および一致姓が同一のプラットホーム上で実行されている他のプログラムから適切に保護されているか否かという疑問が生じる。この場合、以下に示す2つの状況が考えられる。
(i)遠隔情報処理装置(クライアント)
PDAや携帯電話といったモバイル・クライアントは、ますます強力になっている。1つの方向として、オンライン・バンキング、e−チケット発行およびオンライン・ゲームなど、多くのサービス・プロバイダは、より機能を充実させ、ユーザーに使いやすくなるように、クライアントに対してそれらのアプリケーションの一部を「プッシュ」ようと試みる。これらのアプリケーションは、いくつかのアプリケーションが競合する可能性のある場合には機密保持されねばならない情報を有しているので、互いに分離される必要がある。上述したクライアント上でアプリケーションを実行させることを希望するサービス・プロバイダは、クライアントが機密性のデータやプログラムをサーバへとクライアントが送信する前に、他のアプリケーションに対して充分保護されているか否かを確認する必要がある。
(ii)遠隔オンデマンド・サーバ装置
グリッド・コンピューティング環境は、「オンデマンド」コンピューティングを実現する1つの方法である。グリッド・コンピューティングのノードは、通常、異なるセキュリティ・ポリシーを有し、かつ異なるセキュリティ能力を有する複数のグリッド・サービス・プロバイダにより維持されている。グリッド・コンピューティング・ユーザは、ノードに対してジョブを登録する前に、ノード上で実行されているシステム・ソフトウェアのバージョンおよび構成を検証することができなければならず、このことによってユーザは、ノードが提供する保護レベルに満足することができる。これらの項目に対応するために、下記の2つの問題が解決される必要がある。
(a)装置信頼性
この問題は、どのようにすれば、装置がユーザの考えている装置であるか、および装置がユーザの期待通りの振る舞いをするかを、ユーザが確認することができるかということである。この問題は、ユーザが装置の同一性および一致性を検証する必要があることを示す。プラットホームがユーザの考えるものでない場合には、信頼性の関係が壊される。また、例えばウイルス、スパイウェア、トロイの木馬の存在、または違うオペレーティング・システム上で実行されているエミュレータであっても同様である。
(b)ドメイン分離およびアクセス制御
遠隔サーバは、異なるアプリケーションを提供するために、複数のプログラムを実行することができる。各アプリケーションは、分離されなければならず、かつ他のアプリケーションから保護されなければならない。いくつかの場合には、アプリケーションは、いくつかのリソースを他のアプリケーションと共用することを必要とし、このため、アプリケーションは、どのデータを他のアプリケーションと共用でき、どのデータが保護されるべきであるかの制御を保持することが必要とされる。この要求は、また、例えばマルチアプリケーション・スマート・カードにおいても見いだされ、これは、またJava(登録商標)カード・アーキテクチャおよびグローバル・プラットホーム・アーキテクチャにより対応されている(非特許文献2)。
本発明は、部分的には、セキュリティ・ハードウェア、安全なオペレーティング・システムのカーネル、およびエンド・ツウ・エンドの信頼性関係を提供するオープン・セキュリティ・プロトコルを含む新規な技術を組み合わせることにより、ネットワークされたプラットホームの基本的な信頼性を高めることができるという着想のもとになされたものである。本発明において使用される一致性値、すなわち、PCR値は、システムのパワーオン・リセットから開始されるプラットホームのブートストラップ・シーケンスにおいて生成され、TPMとして参照されるハードウェア・セキュリティ・モジュールにより外部侵入から安全に保護される。このため、本発明における一致性値は、高い安全性を有する。これらの高度に安全な一致性値は、二つの公開鍵暗号の鍵と組み合わされ、高度な安全性を有するネットワーク環境が提供できる。1つ目の鍵は、セキュリティ・モジュールのハードウェア製造者正当性を示す“エンドーズメント鍵”であり、網一つの鍵は、プラットホーム証明に基づき信頼性ある第三者により認証される“検査一致性鍵(Attestation Integrity Key)”である。両方の鍵は、セキュリティ・モジュール内に格納され、かつ使用される。一致性値は、“検査一致性鍵”によりチップ内部で署名され、リモート・エンティティへと安全に転送される。
本発明の目的は、リモート・プラットホーム上で安全にプログラムを実行させる手段を含むネットワーク環境を提供することにある。例えば、サービス・プロバイダは、クライアント装置上でアプリケーションを実行させる必要がある。また、グリッド・コンピューティングのユーザは、リモート・グリッド・コンピューティング・ノードにジョブを登録することを希望する。これらの場合には、遠隔の情報処理機械での実行の機密性および一致姓を維持することが要求される。
さらに、本発明の目的は、ネットワーク内のコンピュータに対して、高い安全性を与える方法およびネットワーク内のコンピュータに対して高い安全性を付与することができる方法をコンピュータに対して実行させるコンピュータ実行可能なプログラムを提供することにある。
信頼性あるブートストラップ
例として、PCプラットホームが起動に伴ってブートストラップを行う場合、BIOS(CRTMとして参照する。)の書き込み保護された部分は、BIOSイメージの一致性(一致性)(イメージのSHA1ハッシュ値)を”測定”し、PCR内にこれらの値が書き込まれる。BIOSは、OSブート・ローダをメモリ内にロードし、同時に、ブート・ローダの一致性を検査し、PCRへと格納する。OSブート・ローダは、OSカーネルおよびいかなる関連する本質的ファイルをロードし、それらの検査し、PCRへと検査された値を格納させる。その後、O/Sは、そのブートプロセスを開始させる。PCR値は、一度書き込まれると、任意の値へと値を変更することが不可能であり、このためこれらの値は、装置の一致性を与える優れた指標を与える。
このため、信頼性を与える次のような連鎖を与える:CRTMは、工場においてインストールされ、置き換えることができないので、CRTMが信頼できる:BIOSイメージは、そのPCR値が、期待されるように、信頼性のあるCRTMの検査によりアップデートされた物である場合には、信頼することができる:OSブート・ローダは、そのPCR値が、期待されるように、信頼されるBIOSにより検査されアップデートされたことを示す場合には、信頼することができる。OSカーネルはおよび随伴するファイルは、そのPCR値が信頼されるOSブート・ローダにより検査されアップデートされた場合に、信頼される。
これらのPCR値は、リモート・ベリファイアにより問い合わされる(または参照される)。このPCR値は、TPM内に安全に格納されかつ実行される検査一致性鍵(以後、単にAIKとして参照する。)によりディジタル署名され、リモート・ベリファイアが報告された値を信頼することができる。ベリファイアは、これらの値を、知られた信頼性のある構成値と比較する。これらの値が一致する場合には、ベリファイアは、知られたセキュリティ・ポリシーで純正のトラステッド・ドメイン・モデル(TDM)プラットホームと対話する。
これは、プラットホームの一致性を元にきわめて柔軟な信頼関係を可能にする。例えば、セキュリティの脆弱性が見出され、モバイル・デバイスのオペレーティング・システムが修正されたものとする。このデバイスへアプリケーションとデータとを送ろうとするリモート・ベリファイアは、信頼性のあるPCR値のデータベースをアップデートする必要があるだけである。または、より現実的な解は、信頼された第三者(認証エンティティ)に対して、データベースを保持するように依頼することである。サービス・プロバイダは、リスクを考慮して、脆弱性が重大ではない場合には、パッチが当てられていないプラットホームに対しても信頼性を与えることさえできる。異なったサービス・プロバイダは、異なったプラットホーム・ポリシーをもって信頼性を与えることができる。バンク・アプリケーションは、きわめて制限的なアクセス制御ポリシーを必要とするが、ネットワーク・ゲーム・アプリケーションは、より厳密ではないポリシーで信頼性を与えることができる。サービスは、PCR値を問い合わせることにより、有効な正確なポリシーを知ることができる。
このアーキテクチャは、本発明による新規なトラステッド・ドメイン・モデル(TDM)を実装するため、利用できるハードウェアおよびソフトウェアおよび他の要素に依存する多くの方法があるために、抽象的なものとして説明する。
1.概説
本発明は、2001年1月に発行されたオープン・インダストリー規格であるTCPA1.1(現在では、TCPAは、その承継機関であるトラステッド・コンピューティング・グループ(TCG)として認識されている。)により与えられるアーキテクチャを使用する。TCPA/TCGは、組み込みセキュリティ・チップ(トラステッド・プラットホーム・モジュールすなわちTPMとして参照される。)を規定し、TPMは、ソフトウェア一致性の追跡を維持するレジスタ:プラットホーム・コンフィグレーション・レジスタ;PCRに加え公開鍵暗号鍵を保持している。トラステッド・ドメイン・モデルは、TCPA/TCGにより与えられる信頼性のあるブートおよびプラットホーム検査能力と、SELinuxにより有効化される統合アクセス制御ポリシーとを必要とする(非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8、非特許文献9)。後述する説明においては、同様の機能部には、同一の数字が付されている。TPMを簡単に説明すると、AIK(より詳細には後述する。)の値自体は、プラットホームの一致性を正当化するのではなく、プラットホームの一致性およびPCRがTPMモジュールに由来するものであることを証明する。AIKに対する認証は、AIKがTPMモジュール内に含まれていることを証明する。したがって、特定の用途に応じて、一致性の値は、一致性自体の確認の後、AIKによる証明を発行するために使用される。本発明においては、特定の実装形態について説明するが、本発明は説明する実施の形態に限定されることはなく、AIK、TPM、CRTMアーキテクチャを含むいかなる特定の装置実装形態においても実装することができる。
1−1.トラステッド・ドメイン・モデル(TDM)
図1には、ネットワーク・システム10の例示的な実施の形態を示す。このネットワーク・システムは、LAN、WAN、および/またはインターネットといった適切なネットワーク基盤14サーバ装置(以下、単にサーバとして参照する。)12を含んでいる。クライアント装置(以下、単にクライアントとして参照する。)16は、また、ネットワーク基盤14に接続されていて、クライアントは、サーバ12へとサービスを要求し、サーバ12からその応答を受け取ることができる。クライアントとしては、例えば、ワイヤレス通信またはIR通信によりネットワーク基盤14に接続されるPDA、またはノートブック型のパーソナル・コンピュータおよび携帯電話を挙げることができる。記憶装置18は、サーバ12へと接続されていて、信頼性のあるプロトコルの下でオンデマンドにサービスを提供している。後述する説明においては、サーバ12が本発明のトラステッド・プラットホーム・アーキテクチャとして構成されており、かつクライアントは、これまで知られたいかなるアーキテクチャ・タイプとすることができる。しかしながら、これに制限されることはなく、クライアントを、また、トラステッド・プラットホーム・アーキテクチャとして構成することもできる。サーバ12がクライアント16からのリクエストを受け取ると、サーバ12は、サーバ12に格納されたアプリケーションのサービスのため、クライアントに対応するもう一つのドメインを生成する。
1−2.プラットホーム・アーキテクチャ(クライアントおよびサーバ)
図2は、本発明によるクライアント16の典型的なハードウェア構成を示した図である。クライアント16は、有線またはワイヤレス接続により、ネットワーク14へと接続することができ、通信デバイス22と、中央処理装置(CPU)24と、メモリ(ROMまたはRAM)26と、ハードディスク・ユニット28とを含んでいる。
ハードディスク・ユニット28は、ブート・コード、オペレーティング・システムおよびアプリケーション・ファイルなどを含んでいる。また、ソフトウェア・モジュールおよびCRTM(BIOS)は、フラッシュメモリなど、適切なメモリ内に格納されており、RAMまたはROMなどへと、リクエストに応じてバスライン32を通じて読み込まれて、ユーザに通常の機能を提供させている。クライアント16は、署名された一致性チェッカ30を含んでおり、一致性チェッカ30は、ディジタル署名と共に署名されたPCR値を受け取る。署名された一致性チェッカ30の機能は、下記のようにまとめることができる。
参照されたPCR値は、署名された時点でのプラットホームのソフトウェア構成を示す。クライアント16のいずれかに以前に格納されたものとの比較により、PCR値に関連していかなる疑問がある場合には(例えば、署名がなされた時点でウイルスが活性化していた場合など。)、署名された一致性チェッカ30は、署名に伴われたPCR値が、特定のプラットホーム構成における知られた脆弱性であるか否かを判断する(BIOSおよびOS修正、構成ファイル、アンチウィルス定義ファイルなど)。格納されたPCR値と最近に受け取ったPCR値との間に正しい対応が見出されない場合には、クライアント16は、サーバとの間のトランザクションを停止させる。
図3は、トラステッド・ドメイン・サービスを提供するために構成されたサーバ12の典型的な構成を示した図である。サーバ12は、ルート・トラスト部34を含んで構成されている。ルート・トラスト部34は、さらに、TPM36と、スタートまたはリセットのPCR値を格納するレジスタ・アレイ38と、CRTMとを含んでいる。TPM36およびレジスタ・アレイ38は、AIKにより署名された一致性通知(quote)を生成させるための本質的部分であり、これについては後述する。クライアントからのサービスに対する検査リクエストを受け取ると、ルート・トラスト部34は、クライアントに対してAIKにより署名されたPCRsを送り、安全なドメイン・アクセスを提供する。
2.トラステッド・ドメイン機能
2−1.プロトコル概要
図4は、サーバ12に形成されるトラステッド・ドメインの概略構成を示した図である。サーバ12は、強制アクセス制御ポリシーでの安全なドメイン・サービスのため、TCPA/TCGシステム40に基づいている。サーバ空間内に形成されるドメインは、管理ドメイン、アプリケーション・ドメインおよびユーザ・ドメインといったドメインである。管理ドメイン42は、システム管理者44によりアクセスされて、ルート・トラスト部(図示せず)と共に、トラステッド・ドメイン・サービスを管理している。アプリケーション・ドメイン1(46)、アプリケーション・ドメイン2(48)およびモバイル・ユーザ・ドメイン50は、クライアントに通信された証明の認証の後に生成され、クライアントに対してトラステッド・ドメイン環境を享受することを可能とさせている。ドメインはそれぞれ、適切な記憶装置52に格納された秘密データおよび/またはポリシーを伴っていて、ユーザのプライバシー・ポリシーを保護している。サーバは、安全なオペレーティング・システム(しばしば、トラステッド・コンピューティング・ベース、すなわちTCBとして参照される。)により制御されているので、システム全般にわたる強制アクセス制御ポリシーの適応を向上させている。各ドメインは、それ自体個別的なアクセス制御ポリシーを有している。
TCBは、信頼性を有し、かつ完全に認証されている必要があるが、TCBにおいてまったく脆弱性が見出されないと仮定することは現実的ではない。本発明は、いかなるセキュリティ上の問題がある場合にでもTCBをアップデートする方法を提供する。これは、必要に応じてTCBを変更することができる管理者エンティティが存在することを意味する。これは、サーバまたはクライアント(必要に応じて)が、TCBをアップデートする新規な機能を有することを必要とするが、この管理者エンティティの機構は、すべてのセキュリティ上の仮定を壊してしまうのできわめて慎重に取り扱うことなる。
上述した目的に対応するために、本発明では、管理ドメイン42として参照される特別のドメインを導入する。この管理ドメイン42は、(1)クライアントからの要求に応じてアプリケーション・ドメインの生成および消去を可能とし、(2)強制アクセス制御ポリシーを含むTCBのアップデートを可能とする。管理ドメインは、強制アクセス制御ポリシーの変更を可能とされているので、管理ドメインの悪意ある所有者が強制アクセス制御ポリシーを迂回してしまうことを防止する必要がある。このような攻撃を防止するため、その時点で実行されているドメイン・インスタンスは、そのすべての実行ステータスが、強制アクセス制御ポリシーが変更される前に暗号化された形式で第2の記憶装置54へと保存される。変更の後、プラットホーム全体がリセットされる。サーバのリブート後、PCRは、TCBの新たな構成を反映した新たな値を含んでいる。それぞれのドメイン所有者は、ドメインのインスタンス化を実行させて、新たなシステム構成が信頼できるものであるか否かを確認する。信頼できる場合にだけ、ドメイン所有者は、ドメイン・シークレットの使用に対する権限が与えられる。
管理ドメイン42は、(1)TCBが信頼できる状態ではない場合(例えば、ドメイン・インスタンスが実行されていない場合または電力が切断されている場合)に、ドメイン・シークレットが後述するセクションで説明するように、TCPAにより保護されていること、および(2)TCBがリカバリの後に信頼できる状態とされ、ドメイン・インスタンスが実行されて強制アクセス制御ポリシーにより保護されている場合には、いかなる時点でも他のドメインのドメイン・シークレットにアクセスすることができないことに留意するべきである。管理ドメインは、別のドメインの私的データには、ドメイン所有者による特別の許可がなければアクセスすることができない。この点では、管理ドメインは、Unix(登録商標)のスーパー・ユーザとは異なるものである。
本発明のサーバは、複数のアプリケーションの実行ホストとされる。各アプリケーションは、プラットホームの保護された実行環境下、すなわちドメインで実行されている。本明細書においては、ドメインは、そのドメイン所有者に帰属されるものと仮定する。ドメイン所有者は、ドメインのセキュリティ・ポリシーを決定するリモート・クライアントである。グリッド・コンピューティングでは、ドメイン所有者は、グリッド・コンピューティング・サービスのユーザとなる。複数のアプリケーションが実行されているモバイル・プラットホームの場合には、ドメイン所有者は、クライアントおよび/またはモバイル・プラットホームまたはクライアントにアプリケーションおよびデータを送るリモート・サービス・プロバイダ(例えばe−チケット・サービス)となる。
本発明の管理機能では、非システムプログラムごとにドメイン内において実行される。ドメインは、サーバ、すなわちプラットホーム上の他のドメインから、データおよび実行を保護する。クライアント(ドメイン所有者)がそのドメインがそのリソースのいくつかを他のドメインと共用することができることを決定する場合には、適切なアクセス制御ポリシーを設定することにより、クライアントが制御することができる。
本発明においては、2つのレベルのアクセス制御ポリシーが、実装される。すなわち、
(1)サーバ8プラットホーム)のすべてのドメインにわたってシステム上の運用を行う、強制アクセス制御ポリシー、および
(2)各ドメイン所有者、すなわちクライアントにより制御される任意アクセス制御ポリシーである。
強制アクセス制御ポリシーは、ドメインにおいて実行されているアプリケーションがセキュリティの脆弱性を有している場合であっても、重要なリソース(暗号鍵など)を強力に保護する。他方では、任意アクセス制御ポリシーは、所望に応じたアプリケーション間のデータの柔軟な交換を可能とする。
2レベルのアクセス制御にしたがい、ドメインは、2種類の保護データを有する。ドメイン・シークレットは、TPMのハードウェアにより保護され、強制アクセス制御ポリシーによる保護の対象とされるデータである。暗号鍵は、ハードディスク・ドライブのドメイン・データを暗号化するために使用され、ドメイン・シークレットの例である。他方、ドメイン私有データは、個別ポリシーの対象とされ、ドメインの任意アクセス制御ポリシーが許可する場合には、他のアプリケーションにより共用することができる。モバイル・デバイスの場合には、ユーザのアドレス・ブックは、多数のアプリケーションにより共用されるドメイン・プライベート・データとなる。
クライアントのタイプに依存し、異なるタイプのドメインが存在する。通常のアプリケーションは、アプリケーション・サービス・プロバイダにより提供され、アプリケーション・ドメイン内において実行される。管理ドメイン42は、管理タスクを実行させる本質的な部分である。すべての他のドメインは、ドメイン所有者により所有される。ユーザが所有するすべてのデータおよびプログラムは、ユーザ・ドメイン内に置かれ、プライベート・データを保証している。
管理ドメインは、クライアントすなわちドメイン・ユーザからの要求を受け取るとドメインの生成および削除を実行する。図5は、クライアントとサーバの間においてクライアントに対する新たなドメインが生成されるまでの処理を示した図である。図5に示されるように、ステップS500においてクライアントは、サーバへと認証要求を送る。ステップS510において、サーバはこのリクエストを受け取り、サーバは、クライアントへと検証(TCG検証)の結果を署名付き一致性値として送る。
ステップS520では、クライアントは、署名付き一致性値を受け取り、検証の結果が署名および/またはPCR値に依存して許容されるか否かを決定する。検証の結果がネガティブである場合には、ステップS530において、さらなるトランザクションが停止される。検証の結果がポジティブである場合には、処理は、ステップS540へと進み、クライアントは、サーバへとドメイン生成のためのリクエストを送る(以下、説明の便宜のため、c−リクエストとして参照する)。サーバがc−リクエストを受け取ると、サーバは、対応するクライアントのための新規なドメインを生成すると共に、ステップS550において固有のドメインidを割り当て、c−リクエストを送ったクライアントが新規なドメインを排他的に支配できるようにさせる。
図6は、クライアントに対してドメインを認証させ、割り当てるために使用される例示的なデータ構造を示す。図6に示されるデータ構造は、例えば、図4に示した認証リスト内に格納させておくことができるが、これに限られるものではなく、このデータ構造は、サーバのドメインの割り当てを制御するために、クライアント16内のいずれかに格納させておくことができる。サーバが、クライアントからリクエストを受け取ると、サーバは、クライアントに対して、一致性値と共にAIK(秘密鍵)による署名をクライアントに送る。AIKの公開鍵部分は信頼される第3者により署名され、認証された証明は、サーバ内のいずれかに予め格納されているか、または、遠隔した第3者から得ることもできる。
図6に示す表は、サーバidと、証明値と、PCR値とドメインidとが行としてリストされている。PCR値は、本発明における証明のために本質的な一致性を示す値であり、サーバといったプラットホームの構成により固有的に決定される。このように構成により固有に決定される一致性の値(PCR)は、単一の値として使用することもできるし、一致性の値のセットとして使用することもできる。PCR値の生成の詳細については、より詳細に後述する。クライアント16は、図6に示したアロケーション・テーブルにしたがい、トラステッド・ドメイン・サービスを享受することができる。
図7は、一致性値(PCR)を生成するための処理を示した図である。図7において、TPM、CPUにおける処理および格納されたコードの呼び出し処理を説明している。サーバがスタート、またはリセットされた場合、TPM内のPCRレジスタは、ステップS710においてクリアされる。ステップS720において、サーバは、CRTMコード(BIOS)を他のメモリへと、ROMまたはフラッシュメモリから呼び出し、CRTMコードを実行させ、ステップS740でCRTMコードのハッシュ値をPCRレジスタのいずれかに格納させ、さらにステップS730において次の実行コードを呼び出す。ステップS730において次のコードを呼び出す前に、計算されたPCR値は、ステップS750においてさらに他のレジスタへと格納される。PCR値は、ステップS760〜S790において説明するように、セットアップ処理における必要なコードのすべてが完了するまで拡張されてゆく。
PCRの値は、初期セットアップのコードの一致性を示し、書き込まれたPCR値は、サーバがシャットダウンまたはリセットの後、再度起動されるまで、他の任意の値に変更することができない。このため、PCR値は、サーバの一致性を確証する。本発明が、クライアント装置に適用された場合、同一の検査処理がクライアント内で進行し、ネットワーク内のセキュリティは、より向上される。これらの実施の形態においては、クライアントは、クライアント構成に適合するTPMモジュールまたはチップを含んでいる。
図8は、サーバおよびクライアント(クライアントがそのように実装されている場合)が、クライアントへとトラステッド・ドメイン・アクセスを可能とするTPMの機能を示す。TPMは、TPM_CreateEndosementKeyPair、TPM_MakeIdentityおよびTPM_Quoteを実行する。TPM_CreateEndosementKeyPairは、テップS810において、私有鍵および公開鍵とを使用する知られた技術に基づいてエンドーズメント鍵を生成する。エンドーズメント鍵が生成されると、責任ある製造者のディジタル署名が、ステップS820においてエンドーズメント鍵に付される。このエンドーズメント鍵は、TPMの信頼性を保証する。また、一致性値であるPCRのためのディジタル署名を与えるために使用されるAIKは、ステップS830において、TPM_MakeIdentity処理で生成され、AIKは、また、私有鍵と公開鍵とを含んでいる。AIK公開鍵は信頼できる第3者により証明され、このAIK証明書とともに、AIKは、ステップS840でPCRsに付されるディジタル署名として使用される。
コードTPM_Quoteは、図5に示した遠隔したクライアントへと送付される署名付き一致性値(TCG検証)を生成する。TPM_Quoteは、ステップS860において、PCRsから呼び出しを実行し、AIKによる、署名付きPCRsを生成する。コードTPM_Quoteは、ついで図8に示すように、リクエストされたように署名付きPCRsを遠隔したクライアントへとネットワークを通して送り、クライアントがPCR検査処理を実行することができるようにさせる。
2−2.一致性の検査を伴う署名
上述したように、一致性の検査の結果は、TPM内のPCRsに格納され、quote機能により報告される。実際に、Quote機能のこのような使用は、サーバーに対する使用に限定するものではない。プラットホームの一致性尺度の使用の1つの方法は、ディジタル署名中にこの尺度を含ませることである。上記機能をプラットホームに実装するために、本発明者らは、PCR値へと署名を付する機能を含む、XML署名機能のための署名アルゴリズムを採用した。
2−3.署名機能部(署名アルゴリズムの実行により実装される)
本発明者らは、新規な署名アルゴリズムを、その時点でのPCR値(quoteInfo)を示す構造とその構造への署名値との連結(concatenation)として、下記のように規定した。
SignatureValue = quoteInfo | SignatureOnQuoteInfo
ここで、署名値の第1の部分(qoteInfo)は、TCPA_QUOTE_INFOにより規定される48バイトデータ・オブジェクトであり、下記のように規定される。
typedef struct tdTCPA_QUOTE_INFO{
TCPA_VERSION version;
BYTE fixed;
TCPA_COMPOSITE_HASH digestValue;
TCPA_NONCE externalData,
} TCPA_QUOTE_INFO;
上記コード中、versionは、TCPAのバージョンを意味し、TCPA1.1bのセクション4.5において規定されている。特に、第1の2つのオクテットは、0x01および0x01とされる。“fixed”は、常にASCIIストリングの“Quote”である。“digestValue”は、要求されたPCR指標の現在値を使用する複合hashアルゴリズムの結果である。“externalData”は、<SignedInfo>のカノニカル化の20バイト(オクテット)ストリームのSHA-1hashである。
署名値の第2の部分は、TCPA_QOATE_INFOデータ構造上のRSASSA-PKCS1-v1.5署名値である。この部分は、検査鍵が少なくとも2048ビットを有するので、少なくとも256バイト長である。
2−4.証明アルゴリズム
説明する特定の実施の形態では、TCPAによるPCR値のXML署名の証明アプリケーションには、ベース64デコードされた<SingatureValue>を2つの部分へと分ける必要が生じる。第1の部分は、オクテット・ストリングの第1の48バイトであり、第2の部分は、その残りである。証明アプリケーションは、下記の事項を証明する。
第1の部分は、正規なTCPA_QUOTE_INFOの構造である。これは、バージョン・フィールドの第1の2つのオクテットが0x01および0x01でなければならず、かつ固定されたフィールドがASCIIの“QUOTE”でなければならないことを意味する。
第1の部分のexternalDataは、カノニカル化された<SingalInfo>のSHA-1hash値である。
第2の部分は、所与の公開鍵にしたがった第1の部分のRSASSA-PKCS1-v1.5署名となる。
証明アプリケーションは、その後、TCPA_QUATE_INFO構造内のPCR値(digestValueフィールド)を、知られた信頼性値に対して証明する。この値が信頼できると判断された場合には、サーバは、信頼すべきプラットホームと通信していると、結論することができる。それ以外には、サーバは、ポリシーにしたがって、要求を排除する。
2−5.JCEにおけるPCR付き署名の実装
本発明においては、上述の署名処理が新規な署名アルゴリズム(SHA1withRSATcpaとして参照する)としてJava(登録商標)暗号環境(JCE)プロバイダ(サーバ)に実装された。この方法では、アプリケーションは、PCR値と共に署名を使用するべく変更する必要はない。
3.ドメイン・インスタンスの生成および削除
図9は、クライアントからのリクエストを受け取った場合に新規なドメインの生成を示した図である。サーバが、リクエストを受け取ると、サーバの認証部または通信部といった適切な部分は、リクエストを解析してAIK証明書および署名付きPCRを取得する。認証部は、認証リストまたはテーブルをルックアップして、受け取ったリクエストがサーバへのアクセスを許可されるかを判断する。サーバは、ルックアップの結果を含むレスポンス・パケットを返す。ついで、クライアントは、図5のステップS530の認証に依存して、新規ドメイン生成のためのc−リクエストを送り、図9に示すように、クライアントのためのアプリケーション・ドメイン1(46)といった、排他的な新規ドメインを生成する。
クライアントがサーバ上に新規なドメイン・インスタンスを生成する場合には、プラットホームが依然として信頼できることを確認することが重要である。この信頼性は、トラスト層から得られ、このトラスト層は、プラットホームの同一性および一致性の認証を与える。図5に示されるように、クライアントはまず、ドメインのインスタンス化前に、図5に示すTCG検査の結果と共に送信されるPCR値を使用してサーバの同一性と一致性とを認証する。クライアントがソフトウェア・スタックのバージョンおよび強制アクセス制御ポリシーの内容に満足するまで、クライアントは、それ以上処理を進ませない。
このドメイン・インスタンス化プロトコルは、また、相互認証プロトコルであり、プラットホームは、ドメイン所有者の同一性を認証することができる。いかなる信頼性あるプラットホームであっても、所有者の同一性が認証される前にはドメイン・シークレットの使用権限を与えられない。一度、ドメイン所有者が同一性および一致性に満足し、プラットホームがクライアントの同一性に満足すると、クライアントは、通常、認証プロトコル(オブジェクト特有の認証プロトコル、またはオブジェクトと独立した認証プロトコル)のうちの1つを実行し、クライアントによる、暗号化鍵(ルート鍵)を含むドメイン・シークレットの使用が可能となる。ドメインが、第2の記憶装置に格納された持続性データを有する場合、プラットホームのTCBは、この暗号化鍵を使用して暗号化された外部データをインポートする。
ドメイン・インスタンスにおけるプログラムの実行が終了した後、ドメイン・インスタンスは、図5に示すように消去される。ここで、メモリ内容およびシステム上の一時ファイルのすべてが消去される。
図10は、クライアントとサーバとの間で新規ドメインをインスタンス化させるための処理を示す。図10に示す処理は、ステップS1010およびステップS1020においてクライアントとサーバとの間の認証プロトコルが完了する。認証プロトコルが成功裏に完了する場合には、次に、クライアントは、ステップS1030において、TCG/OIAPプロトコルでサーバへと、ドメイン・スタート・リクエスト(c−リクエスト)を送信する。サーバは、c−リクエストを受け取り、ステップS1040においてクライアントのために新規なイネーブル・ドメインを生成する。その後、ステップS1050において、ドメイン・インスタンスが生成される。
インスタンス化されたドメインおよびクライアントは、ステップS1060において、登録されたジョブおよび対応する結果のトランザクションを通信する。クライアントがその目的とする結果を取得した場合には、クライアントは、ステップS1070において、TCG/OIAPによりサーバへとドメイン離脱リクエストを送信する。サーバは、ステップS1080においてドメイン離脱リクエストを受け取り、対応するドメインの終了を指令する。サーバは、さらに、クライアントに対して、ドメイン閉鎖の通知を送り、本発明のプロトコルを完了させる。
ドメイン・インスタンスが存在しなくなると、持続性記憶装置に格納されたドメインの私有データはすべて、ドメイン鍵により暗号化される。したがって、ドメイン・インスタンスが存在しない場合には、ドメインの私有データには、何人もアクセスすることができない。ドメイン・インスタンスが存在する場合には、システムは、ドメイン所有者は、インスタンス化の時点でTCBの一致性がチェックされているので、システムは安全である。したがって、ドメイン所有者は、TCBによりドメイン私有データが適切に保護されていることがわかる。
4.TCG保護記憶階層でのドメイン・シークレットの保護
図11は、各ドメインの本質的なデータ保護を示した図である。プラットホームがシャットダウンされた場合や信頼性のある状態ではない場合、ドメイン・シークレットは、安全に保護される必要がある。これは、TCG保護記憶階層を使用して行われる。図11に示すように、TCGの保護する対象は、木構造として組織化されている。ルート・ノードは、記憶ルート鍵(SRK)として参照され、TPM内に持続的に格納された唯一の鍵である。TPMは、廉価なデバイスとして構成され、かつ制限された内部メモリを有しており、他のすべての鍵は、使用されない場合にはそれらの親鍵により暗号化されてTPMの外に保持されている。鍵を使用する場合には、それらの親鍵のすべては、TPM内にすでに読み込まれていなければならない。本発明においては、各ドメインは、SRKの下の副木に割り当てられている。この副木は、ドメインのドメイン・シークレットを保持している。このことは、ドメイン・シークレットがTPMへと副木がロードされるために副木のルート鍵が使用できない限り、使用できないことを意味する。
各鍵には、その認証のためのシークレットが伴われており、これは、160ビットのデータである。TPMは、鍵が使用される場合に、このシークレットの所有証明を必要とする。本発明の実施の形態では、ドメイン所有者がプラットホームにログインする場合には、ドメイン所有者は、それらの鍵の認証シークレットを知っていることを証明する。TCGのオブジェクト特定認証プロトコル(OSAP)を使用して、TCBに対してもシークレットを開示すること無く、これが達成される。
図12は、本発明によるドメイン・シークレット・データの保護の処理を示す。保護処理は、まず、ステップS1210〜S1240において新規なドメインを生成させる。その後、ステップS1250へと進んで、認証処理の完了の後ルート鍵を取得する。許可されたドメインでは、生成されたドメインに必要な暗号化された形式でのシークレット・データは、ドメインへと適切な記憶領域から呼び出され、ステップS1260においてルート鍵による復号後、要求されたジョブへと提供される。復号されたシークレット・データ必要に応じて、再度、予め規定された処理により、暗号化され、ステップS1270において管理ドメインにより管理される適切な記憶領域に格納され、その後、ドメインのインスタンスが削除されて、クライアントとサーバとの間のトランザクションが、ステップS1280〜S1290において完了する。
5.ドメイン分離の改善
ドメイン分離およびアクセス制御ポリシーを向上させることは、実際の実装においては多くの異なる方法において実現することができる。例えば、Unix(登録商標)アクセス制御およびJava(登録商標)のJAASは、あるレベルの保護を提供するソフトウェア・ベースの技術である。WebSphereといったミドルウェアは、アプリケーションレベルにおける付加的な分離を提供する。しかしながら、アプリケーションがより強力な保護を必要とする場合には、我々は、より強力なドメイン分離機構を必要とする。これは、COTS(Commercially Off-The-Shelf)ソフトウェアとして知られているオペレーティング・システムおよびミドルウェアは、専門家による注意深い検査の後にも多くのセキュリティ・バグを有している傾向にあることが知られている。この問題に対応するために、2つのアプローチが存在するものと考えられる。
1つは、きわめて小さな、かつ完全に検査され信頼性のあるソフトウェアを組み合わせたハードウェア・サポートを使用することである。例えば、最新のハイエンド・プロセッサは、本来のカーネル・モードよりも高い、付加的な特権レベルを有している。信頼性のあるマイクロ・カーネルまたはこのモードにおいて実行されるハイパーバイザは、ドメイン間におけるきわめて安全な分離を提供することができる。このようなハイパーバイザは、最小のコードのみを含み、したがって、残された脆弱性もより少ない。
6.実装の変更例
これ以外のアプローチは、良好な技術および証明(Common Criteria Certification)を使用するか、またはオペレーティング・システムのカーネルにさらなる保護を追加するかにより、既存のオペレーティング・システムを頑健化することである。トラステッド・ドメイン・モデルのアーキテクチャは、要求されたセキュリティ・レベルに応じて上述したアプローチのいずれも可能とする。
本発明のトラステッド・ドメイン・アーキテクチャは、既存の技術に適切に実装することができる。このセクションでは、本発明者らは、TPMチップおよびLinuxセキュリティ・モジュールを含むPCに基づく構成を示す。この実装例の全体の構成を、図12に示す。
6−1.ブート・ローダにおけるLinuxカーネルの検査
IBM(登録商標)社のTCPAイネーブル・システムは、現在、BIOSの変更できない部分(CRTM)は、残りのBIOSを測定し、BIOSはまた、ブートストラップされるデバイス(通常では、ハードディスク・ドライブ)のMBR(マスタ・ブート・レコード)の基準となる点で、基準ブートストラップをサポートしている。しかしながら、我々が知っている市販のオペレーティング・システムにおいては、さらなる基準は、まったく採用されていない。
BIOSは、オペレーティング・システムの一致性を検査するために、直接オペレーティング・システムをロードしないので、BIOSがTCPAのPC特有のインプリメンテーション規格にしたがった役割を担わなければならない。この代わりに、BIOSは、ブート・ローダの一部(MBRに存在する)をメモリにロードし、その制御をロードされたコードへと渡す。ブート・ローダが適切にオペレーティング・システムの一致性を検査するために、ブート・ローダは、下記の要求を満足する必要がある。
(1)ブート・ローダが多重のステージを有する場合、実行されているステージは、次のステージを検査することができなければならず、かつ制御をO/S渡す前に、PCR値に検査結果を記録することができなければならない。
(2)ブート・ローダは、O/Sに制御を渡す前に、O/Sイメージおよびすべてのセキュリティ上重要な構成ファイルを検査することが可能でなければならない。これには、ブート・ローダは、これらのファイルが格納されるファイル・システムを少なくとも一部に実装することが必要とされる。
PCのためのUnix(登録商標)のようなオペレーティング・システムに対しては、GPLライセンスの下で、例えばLILO(LInux LOader)、GRUB(GRand Unified Bootloader)およびXOSL(Extended Operating System Loader)といった、いくつかのブート・ローダが現在では利用できる。説明する実施の形態では、広く使用されており、かつ変更するに適していて変更されたブート・ローダが上述した規格を満足するので、我々のトラステッド・ブート・ローダのプロトタイプとしてGRUBを採用した。
6−2.GRUBにおけるブート・シーケンス
図13は、GRUBのブート・シーケンスの詳細を、多重のステージ、すなわち、ステージ1、ステージ1.5、ステージ2に分割して示した図である(図13(a))。これは、現在のPCアーキテクチャのディスク空間のサイズが制限されているためである。ステージ1コードは、446バイト長のMBRに適合するように設計した。ステージ1.5は、ファイル・システムの実装を含み、著しく大きく(概ね、10KBである)、通常使用されていない空間であるMBRの直後のセクタに配置されている。ステージ1.5は、ファイル・システム内のいずれかに配置されるステージ2コードおよびGRUB設定ファイルにアクセスする。
BIOSは、ステージ1(MBR)データを、ハードディスク・ドライブからメモリへと読み込み、ステージ1のスタート・ポイントへとジャンプする。ステージ1は、まず、ステージ1.5の最初のセクタをロードし、ステージ1.5へとジャンプする。このステージ1.5は、さらにステージ1.5の残りのセクタをメモリへとロードし、それにジャンプする。ここで、ステージ1.5は、ファイル・システムのインタフェースを含み、ステージ2を見出してメモリにステージ2をロードし、その後ステージ2のスタート・アドレスへとジャンプする。この時点で、GRUBは、構成ファイルをチェックし、O/S選択メニューをユーザに表示する。ユーザがO/Sを選択した後、GRUBは、選択されたO/Sイメージをメモリに読み込み、O/Sブート処理を開始する。
6−3.GRUBにおける検査ステップ
図13には、また、GRUBにおける検査ステップのためのコードを示す(図13(b))。検査の連鎖はまた、このブートストラップ・シーケンスを反映しなければならない。ステージ1は、ステージ1.5の第1のセクタを検査し、ステージ1.5の第1のブロックは、ステージ1.5の残りを検査する。その後、ステージ1.5は、ステージ2を検査し、これがオペレーティング・システムの最後の検査である。ステージ1と、ステージ1の第1のセクタは、厳密なサイズ制限があるので、これらのステージへの一致性検査コードを挿入することが、本発明における主要な課題である。
ステージ1コードは、MBRからロードされ、ステージ1.5の第1のセクタを検査する必要がある。これは、ロードされたセクタのhashを計算し、TPMのTPM_Extend機能を呼び出すことが必要である。しかしながら、元々のGRUBコードは、すでにMBRに割り当てられた446バイトのすべてをすでに使用している。幸いにも、BIOSサービスは、これを行うように呼び出すことができる。依然として、本発明においては、古いドライブフォーマット(LBAモードに対するC.H.Sモード)のサポートを廃棄するように実装することができる。
基本的に、トラステッド・ブートの各ステップは、1)ハードディスク・ドライブからメモリへと次のステージをロードし、2)ロードされたメモリのイメージを検査して、検査された値を使用してPCR値の拡張を行い、3)次のステージのエントリ・ポイントへとジャンプさせることである。
次のステージ、すなわちステージ1.5の第1のセクタは、ステージ1と同一の空間制限があるが、ステージ1とほとんど同様に変更することができる。ステージ1.5の残りの部分は、上述したような空間制限がなく、次のステージであるステージ2の検査能力を追加することは容易である。ステージ2は、いくつかの対象を検査する役割を有する。まず、ステージ2は、GRUBの構成ファイル(grub.conf)を検査する。このファイルは、選択メニューにおいて表示されるブート可能なO/Sイメージを特定するために使用される。第2に、ステージ2は、ブートするべく選択されたO/Sイメージを検査する必要がある。第3に、ステージ2は、また、いかなる他のセキュリティ上重要なファイル(構成ファイル、ライブラリ・ファイルなど)を検査することが必要である。これらの検査を可能とするために、grub.confを、本発明にしたがい下記のように変更した。
(1)“kernel”などのすべてのローディング・コマンドが、自動的にターゲット・イメージを検査し、(2)その問い合わせを行ういかなる特定のファイルについても検査を実行する“measure”コマンドを追加する。これらのステップの間、PCRの8番目のレジスタの値が、ステージ1.5、ステージ2、およびO/Sファイルを検査するために使用された。
6−4.OSカーネルおよび構成の検査
上述した実装において、検査の連鎖処理は、OSカーネル、OS構成ファイルとセキュリティ・ポリシー・ファイルといったセキュリティ上重要なファイルおよびいくつかの実行可能なJava(登録商標)仮想マシンなどをカバーする。しかしながら、膨大な数のファイルを検査した場合、信頼できる構成の可能なPCR値の数が連結され、したがって、信頼できるPCR値のサーバ全体のデータベースが管理できなくなる。これに変わって、OSカーネルを、セキュリティ上重要ではないファイルおよびリソースを少なくして、一致性を保持させるように実装した。ここで、カーネルに対して、Linux SecurityモジュールおよびセキュリティエンハンスドLinux(SELinux)を適用した。適切なSELinuxポリシー・ファイルを使用した場合、LSMとSELinuxの組み合わせは、実行可能なライブラリおよび他のデータ・ファイルといったシステムのいかなる部分に対する望まれない変更に対してより良好な保護を提供する。
ブートストラップ時点で実行される一致性検査は、ブートストラップ後の検査の一致性を保証するものではない。O/Sがシステムのいくつかのプログラムがすでに測定された部分を変更することを可能とする場合、TPMに格納されたPCR値は、もはや正確なステータスを反映しない。したがって、OSレベルにおける不法な変更に対応する強力な保護がきわめて重要である。
6−5.LSM/SELinuxおよびJava(登録商標)における強制アクセス制御
この実施の形態では、トラステッド・ドメイン・モデルの実装は、保護層についてセキュリティエンハンスドオペレーシング・システム、すなわちLinuxセキュリティ・モジュール(LSM)およびSELinuxを選択した。この組み合わせは、従来のUnix(登録商標)アクセス制御よりも基本的に強力なアクセス制御を提供する。図14は、LSM/SELinuxアーキテクチャに基づいたトラスト・プラットホーム・モデルの実装例を示す。
図14においては、Linuxセキュリティ・モジュール(LSM)は、汎用目的のアクセス制御を可能とするLinuxカーネル・パッチである。LSMは、カーネルの重要なリソースすべてに対して、アクセス・パッチにフックを配置し、プラグ−インモジュール(ポリシー・モジュールとして参照される)に対して、アクセス制御の決定を行わせる。これは、従来のUnix(登録商標)セキュリティモデルがセキュリティの充分なレベルを提供するために不充分であると考えられているので、Linuxオペレーティング・システムをセキュリティ化する重要なステップである。標準的なUnix(登録商標)の最も大きな制約は、ユーザにより実行されるすべてのプログラムは、ユーザに与えられたすべての権利を承継し(これは、特にユーザがルートである場合に問題である)、不正なソフトウェアからのオペレーティング・システムの保護をきわめて困難にする。
NSAにより開発されたセキュリティ向上Linux(SELinux)は、LSM用のポリシー・モジュールである。これは、強制アクセス制御(MAC)ポリシーを向上させるので、システムにわたるセキュリティ・ポリシーがユーザの不用意な操作、アプリケーション・プログラムのセキュリティ脆弱性、または不正なソフトウェアに関わらず向上できる。
これらの技術を結合し、本発明者らは、システムにわたるセキュリティ・ポリシーを向上させた。ドメインは、ユーザ・アカウントとして実装され、これは、別のユーザ・アカウントおよびルートユーザのもとで実行されるアプリケーションから良好に保護される。ドメイン・インスタンスは、リモートシェルである。リモート所有者が、プラットホーム(すなわち、ドメイン・インスタンスを生成させる)にログインすると、Pluggable Authentication Module (PAM)は、TCPAチップと作用し、暗号化鍵をアンロックする。
また、プラットホームは、取り外し可能な記憶装置を有しており、暗号化されたファイル・システムが必須とされる。サービスにより所有されるすべてのファイルは、TPMに格納されたサーバの鍵により暗号化されるので、ファイルは、所有者のドメインからアクセス可能とされるだけである。
オペレーティング・システムレベルの分離に加えて、実装はまた、Java(登録商標)レベルでのアプリケーション・分離を有している。これは、Java(登録商標)の本来的なアクセス制御機構(JAAS)またはOSGiにより規定される許可およびユーザ管理機構により行われる。
7.別のプロトコル−WSセキュリティ
OASIS-WSセキュリティ標準の最初に規定されるプロトコルを使用することもできる。
WSセキュリティは、ウェブサービスのためのセキュリティ構築ブロックの規格のセットである。これは、通信パーティの間で渡され、かつ第3者(セキュリティ・トークン・サービスとして参照される)により信頼性が与えられる、“security tokens”として表現される“Claim”という汎用的な概念を規定することにより一致性、信頼性、認証およびSOAPメッセージのための認証といったセキュリティ機能といったセキュリティ機能を提供する。
図15は、WSセキュリティ・アーキテクチャに基づいて構成された本発明の例示的な実施の形態を示す。プラットホームの一致性検査は、セキュリティ・トークンとして、クレーム部60に実装され、各エンティティ62、64、66に含まれている。クライアントといったリクエスタ62は、は、本発明にしたがい構成されている。また、ウェブサービス・サイト6は、また、本発明にしたがい構成されている。リクエスタ62が、ウェブサービスをウェブサービス・サイト64へと要求すると、署名付き証明を含むトークンが例えばウェブサービス・サイトからセキュリティ・トークン・サービス・サイト66へと送られる。
セキュリティ・トークン・サービス・サイト64は、アクセス許可データをウェブサービス・サイト64へと発行し、ウェブサービス・サイト64は、リクエスタ62からのリクエストがトラステッド・ドメイン・サービスにおいて許容されるかを決定する。プラットホーム認証といったプラットホーム証明およびソフトウェア証明(このトークンに含まれた値が信頼できるか)は、またセキュリティ・トークン・サービスにより発行されるセキュリティ・トークンとして表される。これは、本発明の信頼性のあるインフラ構造の頑強なフレームワークを提供する。
http://www.microsoft.com/presspass/features/2002/jul02/0724palladiumwp.asp Open Services Gatewayinitiative (OSGi), http://www.osgi.org/ Chris Wright, Crispin Cowan, James Morris, Stephen Smalley,Greg Kroah-Hartman, "Linux SecurityModules: General Security Support for the Linux Kernel," USENIX SecuritySymposium, 2002. Stephen Smalley, ChrisVance, and Wayne Salamon, "Implementing SELinux as a Linux Security Module," http://www.nsa.gov/selinux/module-abs.html,Dec., 2001. IBM 4758 PCI Cryptographic Coprocessor. http://www.ibm.com/security/cryptocards/ Trusted Computing Platform Alliance, TCPA Main Specification v.1.1b, February,2002. http://www.trustedcomputing.org/docs/main%20v1_1b.pdf Trusted ComputingPlatform Alliance, TCPA PC Specific Implementation Specification v1.00,September 2001. http://www.trustedcomputing.org/docs/TCPA_PCSpecificSpecification_v100.pdf David Safford, "Clarifying Misinformation on TCPA", Oct, 2002, http://www.research.ibm.com/gsal/tcpa/tcpa_rebuttal.pdf David Safford, "ClarifyingMisinformation on TCPA", Oct, 2002, http://www.research.ibm.com/gsal/tcpa/tcpa_rebuttal.pdf
これまで本発明を図面に示した特定の実施の形態をもって説明してきたが、以下に本発明をまとめて開示する。
(1)ネットワークを通じてサービスを受け取るための情報処理装置であって、前記情報処理装置は、ハードウェア構成を反映する一致性値の少なくとも1つと共にディジタル署名を受け取る通信部と、少なくとも前記一致性値の同一性を検証するためのチェック部とを含み、前記情報処理装置は、前記一致性値の決定に応答して前記ネットワークを通して前記情報処理装置のための排他的ドメインを形成させるリクエストを発行する、情報処理装置。
(2)前記チェック部は、格納されたディジタル署名または格納された値に関連して前記ディジタル署名または一致性値を検査する、(1)に記載の情報処理装置。
(3)前記情報処理装置は、前記ネットワークからサービスを受け取るクライアントである、(1)に記載の情報処理装置。
(4)ネットワークを通してオンデマンドに処理されたデータを提供するため、前記ネットワークに接続されたサーバ装置であって、前記サーバ装置は、
装置信頼性ルートに基づいて信頼性を与え、かつ前記サーバ装置のスタートまたはリセットに際してディジタル署名に付される署名付き一致性値を生成し、前記一致性値が前記サーバ装置の構成の一致性を与える信頼性付与部と、
前記ネットワークからリクエストを受け取り、かつ前記サーバ装置の署名された一致性値および処理されたデータを前記ネットワークへと送出する通信部とを含み、
前記サーバ装置は、新規ドメインを生成し、かつ他のリクエストを受け取ると前記署名された一致性値に応答して前記サーバ装置のリソースへのアクセスを許可するサーバ装置。
(5)前記サーバ装置は、スタートまたはリセットまたはそれら双方に際して管理を開始させ、リソースへのアクセスを可能とするルート鍵へのアクセスを許可する、(4)に記載のサーバ装置。
(6)前記サーバ装置のリソースは、暗号化された形式として格納され、前記サーバ装置は、前記ルート鍵の復号により前記リソースへのアクセスを許可する、(4)に記載のサーバ装置。
(7)前記署名を生成するために、認証付き証明が通信され、前記サーバの格納部には、前記認証付き証明が格納されているか、または前記サーバ装置は、前記認証付き証明を、遠隔エンティティを通じて問い合わせる、(4)に記載のサーバ装置。
(8)情報処理装置をしてネットワークを通じてサーバ装置と通信させるための方法であって、前記方法は、前記情報処理装置に対して、
ハードウェア構成に依存する署名された一致性値を受け取るステップと、前記署名された一致性値の少なくとも1つの同一性を決定するステップと、
前記一致性値の前記決定に応答して前記ネットワークを通じて前記情報処理装置のための排他的ドメインを生成するリクエストを送出させるステップと
を実行させる方法。
(9)前記サーバ装置は、前記署名された一致性値と処理されたデータとを前記ネットワークを通して、前記リクエストを発行した情報処理装置に対して送出する、(8)に記載の方法。
(10)ネットワークを介してサーバ装置に通信を実行させるための方法であって、前記方法は、前記サーバ装置に対して、
前記サーバ装置が段階的に実行するセットアップのための初期コードをメモリから呼出すステップと、
前記サーバ装置のソフトウェア構成に関連して不変に維持される一致性値を生成し、前記一致性値をレジスタ・アレイに格納させるステップと、
前記サーバ装置の一致性を認証することにより前記一致性値に付すべきディジタル署名を生成するステップと、
前記一致性値に前記生成されたディジタル署名を付するステップと、
前記サーバ装置の認証を証明するために、前記一致性値を前記ディジタル署名と共に送出するステップと
を実行させる方法。
(11)前記生成ステップは、
前記ソフトウェア構成に関連するハードウェアの一致性値のための私有鍵および認証を検証するための私有鍵を生成するステップと、
前記鍵の認証に応答して前記一致性値に対してディジタル署名を与えるか否かを決定するステップと、
前記検証のための鍵が認証された場合には、前記一致性値に対して前記ディジタル署名を付するステップと
を含む、(10)に記載の方法。
(12)前記方法は、さらに、前記検証のための鍵を使用して前記ディジタル署名を生成させるステップを含む、(11)に記載の方法。
(13)ネットワークに接続されたサーバ装置に対して、前記ネットワークを通じて処理されたデータをオンデマンドに提供させるための方法であって、前記方法は、前記サーバ装置に対して、
装置一致性に応答する一致性値に基づいて信頼性の付与された管理ドメインを生成するステップと、
認証証明を参照して前記一致性値を認証し、ディジタル署名を付するステップと、
前記サーバ装置のサービスを受け取るために前記ネットワークから前記サーバ装置にアクセスするためのリクエストを受け取るステップと、
ディジタル署名を伴う少なくとも1つの一致性値を通信するステップと、
前記リクエストに対応する排他的ドメインを生成させる他のリクエストを受け取るステップと
を実行させる方法。
(14)前記管理ドメインは、ルート鍵に対するアクセスを許可するステップを実行して、前記サーバ装置のリソースへのアクセスを制御させる、(13)に記載の方法。
(15)前記サーバ装置のリソースは、暗号化された形式で格納され、前記方法は、さらに前記ルート鍵を使用して前記リソースを復号して情報処理装置による前記リソースへのアクセスを許可するステップを含む、(14)に記載の方法。
(16)上記(8)または(9)に記載の方法を前記情報処理装置に対して実行させるための装置実行可能なプログラム。
(17)上記(10)から(15)のいずれか1項に記載の方法を前記サーバ装置に実行させるための装置実行可能なプログラム。
本発明のネットワーク・システムの例示的な実施の形態を示した図。
本発明のクライアントの典型的なハードウェア構成を示した図。
トラステッド・ドメイン・サービスを提供するサーバの典型的なハードウェア構成を示した図。
サーバに生成されるトラステッド・ドメインの概略的な構成を示した図。
新規なドメインがクライアントへと生成されるまでのクライアントとサーバとの間の処理を示した図。
認証とクライアントへのドメインの割り当てについて使用される差例示的なデータ構造を示した図。
ハードウェアの一致性に固有の一致性値を生成するための処理を示した図。
サーバへのトラステッド・ドメイン・アクセスを可能とするクライアントのTPMの機能を示した図。
クライアントからのリクエストを受け取り、新規なドメインの生成を示した図。
クライアントとサーバとの間の新規なドメインのインスタンス化のための処理を示した図。
各ドメインにおける本質的なデータ保護を示した図。
本発明によるドメイン・シークレット・データの保護のための処理を示した図。
GRUBを多重のステージに分割してGRUBのブート・シーケンスを詳細に示した図。
LSM/SELinuxアーキテクチャに基づくトラステッド・プラットホーム・モデルの実装の実施の形態を示した図。
WSセキュリティ・アーキテクチャに基づいて構成された本発明の例示的な実施の形態を示した図。
符号の説明
10…ネットワーク・システム、12…サーバ、14…ネットワーク基盤、16…クライアント、18…記憶装置(データベース)、20…リモート・ベリファイア、22…通信デバイス、24…CPU、26…メモリ、28…ハードディスク、30…PCR(一致性)チェッカ、32…バス、34…ルート・トラスト部、38…レジスタ・アレイ、40…システム(TCB)、42…管理ドメイン、44…管理者、46…アプリケーション・ドメイン1、48…アプリケーション・ドメイン2、50…ユーザ・ドメイン、52…記憶装置(データベース)、54…第2の記憶装置、56…認証リスト、60…クレーム部、62、64、66…WSセキュリティ・アーキテクチャにおけるエンティティ

Claims (8)

  1. ネットワークを通してオンデマンドに処理されたデータを提供するため、前記ネットワークに接続されたサーバ装置であって、前記サーバ装置は、
    装置信頼性ルートとして機能する管理ドメインにより信頼性を与え、かつ前記サーバ装置のスタートまたはリセットに際してディジタル署名に付される署名付きの一致性値であって前記一致正値が前記サーバ装置がスタート、またはリセットされた場合クリアされ、セットアップ処理のコードが呼び出されるごとに前記セットアップ処理で必要なコードのすべてが完了するまで拡張されることにより生成し、前記一致性値により前記サーバ装置の構成の一致性を与える信頼性付与部と、
    前記ネットワークからリクエストを受け取り、かつ前記サーバ装置の署名された前記一致性値および処理されたデータを前記ネットワークへと送出する通信部とを含み、
    前記サーバ装置は、サーバidと、前記一致性値をディジタル署名するための検査一致性鍵(AIK)のうち、公開鍵を第3者による電子署名して与えられる証明値と、前記一致性値とに対応付けてドメイン識別値を割当てることにより前記リクエストに対応して新規な排他的ドメインを生成し、かつ他のリクエストを受け取ると前記署名された一致性値に対応するドメイン識別値により前記サーバ装置が生成する前記排他的ドメインのリソースへのアクセスを許可する、サーバ装置。
  2. 前記サーバ装置は、スタートまたはリセットまたはそれら双方に際して管理を開始させ、リソースへのアクセスを可能とするルート鍵へのアクセスを許可する、請求項1に記載のサーバ装置。
  3. 前記サーバ装置のリソースは、暗号化された形式として格納され、前記サーバ装置は、前記ルート鍵の復号により前記リソースへのアクセスを許可する、請求項2に記載のサーバ装置。
  4. 前記署名を生成するために、検査一致性鍵の公開鍵部分を認証した認証付き証明を生成するための通信が行われ、前記サーバ装置の格納部には、前記認証付き証明が格納されているか、または前記サーバ装置は、前記認証付き証明を、遠隔エンティティを通じて問い合わせて生成する、請求項1に記載のサーバ装置。
  5. ネットワークに接続されたサーバ装置が情報処理装置に対し、前記ネットワークを通じて処理されたデータをオンデマンドに提供させるための方法であって、前記方法は、
    前記サーバ装置に対して、装置の一致性を与え、前記サーバ装置がスタート、またはリセットされた場合クリアされ、セットアップ処理のコードが呼び出されるごとに前記セットアップ処理で必要なコードのすべてが完了するまで拡張されることにより生成される一致性値に基づいて信頼性の付与された管理ドメインを生成するステップと、
    検査一致性鍵の公開鍵部分を認証した認証付き証明を参照して前記一致性値を認証し、ディジタル署名を付するステップと、
    前記サーバ装置のサービスを受け取るため、前記ネットワークから前記サーバ装置にアクセスするための認証リクエストを受け取るステップと、
    ディジタル署名を伴う少なくとも1つの一致性値を通信するステップと、
    前記認証リクエストに対応し、前記サーバ装置が、サーバidと、前記一致性値をディジタル署名するための検査一致性鍵(AIK)のうち、公開鍵を第3者による電子署名して与えられる証明値と、前記一致性値とに対応付けてドメイン識別値を割当てることにより前記認証リクエストに対応して新規な排他的ドメインを生成し、かつ他のリクエストを受け取ると前記署名された一致性値に対応するドメイン識別値により前記サーバ装置が生成する前記排他的ドメインのリソースへのアクセスを許可するステップと
    を実行させる方法。
  6. 前記管理ドメインは、ルート鍵に対するアクセスを許可するステップを実行して、前記サーバ装置のリソースへのアクセスを制御させる、請求項5に記載の方法。
  7. 前記サーバ装置のリソースは、暗号化された形式で格納され、前記方法は、さらに前記ルート鍵を使用して前記リソースを復号して情報処理装置による前記リソースへのアクセスを許可するステップを含む、請求項6に記載の方法。
  8. 請求項5〜7のいずれか1項に記載の方法を前記サーバ装置に対して実行させるための装置実行可能なプログラム。
JP2003403371A 2003-12-02 2003-12-02 情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム Expired - Fee Related JP4064914B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2003403371A JP4064914B2 (ja) 2003-12-02 2003-12-02 情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム
CN200410091068A CN100594692C (zh) 2003-12-02 2004-11-16 信息处理装置、服务器装置、信息处理装置的方法及服务器装置的方法
US11/001,817 US8171295B2 (en) 2003-12-02 2004-12-02 Information processing apparatus, a server apparatus, a method of an information processing apparatus, a method of a server apparatus, and an apparatus executable process
US13/432,715 US8560857B2 (en) 2003-12-02 2012-03-28 Information processing apparatus, a server apparatus, a method of an information processing apparatus, a method of a server apparatus, and an apparatus executable program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003403371A JP4064914B2 (ja) 2003-12-02 2003-12-02 情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム

Publications (2)

Publication Number Publication Date
JP2005167589A JP2005167589A (ja) 2005-06-23
JP4064914B2 true JP4064914B2 (ja) 2008-03-19

Family

ID=34616778

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003403371A Expired - Fee Related JP4064914B2 (ja) 2003-12-02 2003-12-02 情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム

Country Status (3)

Country Link
US (2) US8171295B2 (ja)
JP (1) JP4064914B2 (ja)
CN (1) CN100594692C (ja)

Families Citing this family (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8495361B2 (en) * 2003-12-31 2013-07-23 International Business Machines Corporation Securely creating an endorsement certificate in an insecure environment
US7644278B2 (en) * 2003-12-31 2010-01-05 International Business Machines Corporation Method for securely creating an endorsement certificate in an insecure environment
US20060294383A1 (en) * 2005-06-28 2006-12-28 Paula Austel Secure data communications in web services
US7565685B2 (en) * 2005-11-12 2009-07-21 Intel Corporation Operating system independent data management
US7571377B2 (en) * 2005-12-22 2009-08-04 International Business Machines Corporation Method and apparatus for transmitting data in an integrated circuit
CN100440892C (zh) * 2005-12-26 2008-12-03 北京航空航天大学 网格安全通信***及网格安全通信方法
JP4722730B2 (ja) * 2006-03-10 2011-07-13 富士通株式会社 セキュリティ管理プログラム、セキュリティ管理装置、およびセキュリティ管理方法
KR20090006876A (ko) * 2006-04-21 2009-01-15 인터디지탈 테크날러지 코포레이션 신뢰된 계산 무결성 측정 보고를 수행하는 장치 및 방법
US20070288989A1 (en) * 2006-06-09 2007-12-13 Nokia Corporation Method, electronic device, apparatus, system and computer program product for updating an electronic device security policy
US10049077B2 (en) * 2006-06-30 2018-08-14 Intel Corporation Handheld device for elderly people
US20100063996A1 (en) * 2006-07-03 2010-03-11 Kouichi Kanemura Information processing device, information recording device, information processing system, program update method, program, and integrated circuit
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
US20080104008A1 (en) * 2006-10-31 2008-05-01 Brantley David L Common data broker method, system, and program product
US9280659B2 (en) * 2006-12-29 2016-03-08 Intel Corporation Methods and apparatus for remeasuring a virtual machine monitor
US7966039B2 (en) * 2007-02-02 2011-06-21 Microsoft Corporation Bidirectional dynamic offloading of tasks between a host and a mobile device
TWI328747B (en) * 2007-03-16 2010-08-11 Ind Tech Res Inst System and method for sharing e-service resource of digital home
US20080235513A1 (en) * 2007-03-19 2008-09-25 Microsoft Corporation Three Party Authentication
US8151262B2 (en) * 2007-03-30 2012-04-03 Lenovo (Singapore) Pte. Ltd. System and method for reporting the trusted state of a virtual machine
KR100914430B1 (ko) * 2007-05-02 2009-08-28 인하대학교 산학협력단 Xml 전자서명을 이용한 서비스 이동 관리 시스템 및관리 방법
US8064605B2 (en) * 2007-09-27 2011-11-22 Intel Corporation Methods and apparatus for providing upgradeable key bindings for trusted platform modules
US8752130B2 (en) * 2007-12-21 2014-06-10 Samsung Electronics Co., Ltd. Trusted multi-stakeholder environment
GB2455796A (en) * 2007-12-21 2009-06-24 Symbian Software Ltd Mechanism for controlling access to a key store
WO2009134270A1 (en) * 2008-05-02 2009-11-05 Hewlett-Packard Development Company, L.P. Binding data to a computing platform through use of a cryptographic module
US8074258B2 (en) * 2008-06-18 2011-12-06 Microsoft Corporation Obtaining digital identities or tokens through independent endpoint resolution
US8300829B2 (en) * 2008-06-23 2012-10-30 Nokia Corporation Verification key handling
US8112633B1 (en) * 2008-06-30 2012-02-07 Symantec Corporation Server side verification of digital signatures in streaming environments
US8572692B2 (en) 2008-06-30 2013-10-29 Intel Corporation Method and system for a platform-based trust verifying service for multi-party verification
JP2010152704A (ja) * 2008-12-25 2010-07-08 Hitachi Ltd 計算機システムの運用管理システム及び管理方法
US9805196B2 (en) 2009-02-27 2017-10-31 Microsoft Technology Licensing, Llc Trusted entity based anti-cheating mechanism
CN101527718B (zh) 2009-04-16 2011-02-16 西安西电捷通无线网络通信股份有限公司 一种建立三元对等鉴别可信网络连接架构的方法
EP2422503B1 (en) * 2009-04-20 2015-03-04 InterDigital Patent Holdings, Inc. System of multiple domains and domain ownership
CN101540676B (zh) * 2009-04-28 2012-05-23 西安西电捷通无线网络通信股份有限公司 一种适合三元对等鉴别可信网络连接架构的平台鉴别方法
US8776053B2 (en) * 2009-09-25 2014-07-08 Oracle International Corporation System and method to reconfigure a virtual machine image suitable for cloud deployment
JP5571796B2 (ja) * 2009-10-15 2014-08-13 インターデイジタル パテント ホールディングス インコーポレイテッド 加入方式のサービスにアクセスするための登録および資格証明ロールアウト
US8776245B2 (en) * 2009-12-23 2014-07-08 Intel Corporation Executing trusted applications with reduced trusted computing base
KR101580353B1 (ko) * 2010-03-02 2015-12-23 인터디지탈 패튼 홀딩스, 인크 신뢰성 있는 하드웨어 가입 모듈 간의 크리덴셜 및/또는 도메인의 마이그레이션
US8700895B1 (en) 2010-06-30 2014-04-15 Google Inc. System and method for operating a computing device in a secure mode
US9118666B2 (en) * 2010-06-30 2015-08-25 Google Inc. Computing device integrity verification
CN101888383B (zh) * 2010-06-30 2013-07-31 北京交通大学 一种可扩展的可信ssh的实现方法
US9208318B2 (en) * 2010-08-20 2015-12-08 Fujitsu Limited Method and system for device integrity authentication
US20130166869A1 (en) * 2010-09-10 2013-06-27 Hewlett-Packard Development Company, L.P. Unlock a storage device
CN101976317B (zh) * 2010-11-05 2012-12-05 北京世纪互联宽带数据中心有限公司 一种私有云计算应用中虚拟机镜像安全方法
KR101652570B1 (ko) 2010-12-06 2016-09-09 인터디지탈 패튼 홀딩스, 인크 도메인­트러스트 평가 및 도메인 정책 관리 기능들을 가지는 스마트 카드
US8880667B2 (en) * 2011-02-09 2014-11-04 Microsoft Corporation Self regulation of the subject of attestation
US9064111B2 (en) * 2011-08-03 2015-06-23 Samsung Electronics Co., Ltd. Sandboxing technology for webruntime system
US8694786B2 (en) * 2011-10-04 2014-04-08 International Business Machines Corporation Virtual machine images encryption using trusted computing group sealing
US8893225B2 (en) 2011-10-14 2014-11-18 Samsung Electronics Co., Ltd. Method and apparatus for secure web widget runtime system
JP6004408B2 (ja) 2012-03-30 2016-10-05 シンクロノス テクノロジーズ インコーポレイテッド 安全移動体フレームワーク
US9177129B2 (en) * 2012-06-27 2015-11-03 Intel Corporation Devices, systems, and methods for monitoring and asserting trust level using persistent trust log
EP2918090A4 (en) * 2012-11-08 2016-06-29 Nokia Technologies Oy PARTIAL VIRTUALIZATION OF PCR BANKS IN A MOBILE TPM
EP2997692A1 (en) * 2013-05-13 2016-03-23 Telefonaktiebolaget LM Ericsson (publ) Procedure for platform enforced secure storage in infrastructure clouds
CN104158791A (zh) * 2013-05-14 2014-11-19 北大方正集团有限公司 一种分布式环境下的安全通信认证方法及***
US9167002B2 (en) * 2013-08-15 2015-10-20 Microsoft Technology Licensing, Llc Global platform health management
US9542568B2 (en) * 2013-09-25 2017-01-10 Max Planck Gesellschaft Zur Foerderung Der Wissenschaften E.V. Systems and methods for enforcing third party oversight of data anonymization
US9396338B2 (en) * 2013-10-15 2016-07-19 Intuit Inc. Method and system for providing a secure secrets proxy
US9384362B2 (en) 2013-10-14 2016-07-05 Intuit Inc. Method and system for distributing secrets
US9444818B2 (en) 2013-11-01 2016-09-13 Intuit Inc. Method and system for automatically managing secure communications in multiple communications jurisdiction zones
US9467477B2 (en) 2013-11-06 2016-10-11 Intuit Inc. Method and system for automatically managing secrets in multiple data security jurisdiction zones
US9894069B2 (en) 2013-11-01 2018-02-13 Intuit Inc. Method and system for automatically managing secret application and maintenance
US9282122B2 (en) * 2014-04-30 2016-03-08 Intuit Inc. Method and apparatus for multi-tenancy secrets management
US9792427B2 (en) * 2014-02-07 2017-10-17 Microsoft Technology Licensing, Llc Trusted execution within a distributed computing system
TWI633458B (zh) * 2014-02-25 2018-08-21 美商凱為公司 用於對受保護的硬體資源的軟體啟用接入的半導體和電腦
CN106464493B (zh) 2014-03-16 2019-12-10 黑文技术私人有限公司 包含一次性通行码的持久性认证***
CN104951316B (zh) 2014-03-25 2018-09-21 华为技术有限公司 一种内核可信启动方法和装置
EP2950229B1 (en) * 2014-05-28 2018-09-12 Nxp B.V. Method for facilitating transactions, computer program product and mobile device
US9692599B1 (en) * 2014-09-16 2017-06-27 Google Inc. Security module endorsement
US9998449B2 (en) * 2014-09-26 2018-06-12 Qualcomm Incorporated On-demand serving network authentication
US9735968B2 (en) * 2014-10-20 2017-08-15 Microsoft Technology Licensing, Llc Trust service for a client device
JP6415353B2 (ja) 2015-03-02 2018-10-31 キヤノン株式会社 情報処理方装置、情報処理装置の制御方法、およびコンピュータプログラム
US11132674B2 (en) 2015-03-04 2021-09-28 Sizhe Tan Micro trusted network
CN105389507B (zh) * 2015-11-13 2018-12-25 小米科技有限责任公司 监控***分区文件的方法及装置
US10846409B2 (en) * 2015-11-19 2020-11-24 Nagravision S.A. Method to verify the execution integrity of an application in a target device
CN105897427A (zh) * 2016-04-01 2016-08-24 浪潮电子信息产业股份有限公司 保护设备安全的方法、装置及***
US10528739B2 (en) * 2016-04-20 2020-01-07 Sophos Limited Boot security
US20220201045A1 (en) * 2016-06-10 2022-06-23 OneTrust, LLC Data processing systems for data-transfer risk identification, cross-border visualization generation, and related methods
US10148444B2 (en) * 2016-08-04 2018-12-04 Dell Products L.P. Systems and methods for storing administrator secrets in management controller-owned cryptoprocessor
KR101886176B1 (ko) * 2016-10-25 2018-08-08 시큐리티플랫폼 주식회사 소유자만 기록 가능한 부트영역을 포함하는 저장장치
US10482034B2 (en) * 2016-11-29 2019-11-19 Microsoft Technology Licensing, Llc Remote attestation model for secure memory applications
US10936711B2 (en) 2017-04-18 2021-03-02 Intuit Inc. Systems and mechanism to control the lifetime of an access token dynamically based on access token use
JP6959155B2 (ja) * 2017-05-15 2021-11-02 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 検証方法、検証装置およびプログラム
US20190034617A1 (en) * 2017-07-31 2019-01-31 Intel Corporation Flexible container attestation
US10635829B1 (en) 2017-11-28 2020-04-28 Intuit Inc. Method and system for granting permissions to parties within an organization
EP3495979A1 (de) * 2017-12-08 2019-06-12 Siemens Aktiengesellschaft Verfahren und bestätigungsvorrichtung zur integritätsbestätigung eines systems
CN110062016B (zh) 2018-01-18 2023-05-09 阿里巴巴集团控股有限公司 用于可信服务管理的方法及装置
US10713060B2 (en) * 2018-08-02 2020-07-14 Micron Technology, Inc. Configurable option ROM
WO2020157368A1 (en) * 2019-01-30 2020-08-06 Nokia Solutions And Networks Oy Distributed or cloud computing system information

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061790A (en) * 1996-11-20 2000-05-09 Starfish Software, Inc. Network computer system with remote user data encipher methodology
US7290288B2 (en) * 1997-06-11 2007-10-30 Prism Technologies, L.L.C. Method and system for controlling access, by an authentication server, to protected computer resources provided via an internet protocol network
US6144959A (en) * 1997-08-18 2000-11-07 Novell, Inc. System and method for managing user accounts in a communication network
US6985953B1 (en) * 1998-11-30 2006-01-10 George Mason University System and apparatus for storage and transfer of secure data on web
KR100430147B1 (ko) 2000-03-15 2004-05-03 인터내셔널 비지네스 머신즈 코포레이션 컴퓨터 액세스 제어
JP4556308B2 (ja) * 2000-08-31 2010-10-06 ソニー株式会社 コンテンツ配信システム、コンテンツ配信方法、および情報処理装置、並びにプログラム提供媒体
CA2371124A1 (en) * 2001-02-09 2002-08-09 Itaru Kawakami Information processing method/apparatus and program
GB2376765B (en) * 2001-06-19 2004-12-29 Hewlett Packard Co Multiple trusted computing environments with verifiable environment identities
US8005965B2 (en) * 2001-06-30 2011-08-23 International Business Machines Corporation Method and system for secure server-based session management using single-use HTTP cookies
US7191464B2 (en) * 2001-10-16 2007-03-13 Lenovo Pte. Ltd. Method and system for tracking a secure boot in a trusted computing environment
GB2382419B (en) * 2001-11-22 2005-12-14 Hewlett Packard Co Apparatus and method for creating a trusted environment
US7103771B2 (en) 2001-12-17 2006-09-05 Intel Corporation Connecting a virtual token to a physical token
US9544297B2 (en) * 2002-03-08 2017-01-10 Algorithmic Research Ltd. Method for secured data processing
US7130921B2 (en) * 2002-03-15 2006-10-31 International Business Machines Corporation Centrally enhanced peer-to-peer resource sharing method and apparatus
US7058807B2 (en) 2002-04-15 2006-06-06 Intel Corporation Validation of inclusion of a platform within a data center
US7216369B2 (en) * 2002-06-28 2007-05-08 Intel Corporation Trusted platform apparatus, system, and method
US20040030887A1 (en) * 2002-08-07 2004-02-12 Harrisville-Wolff Carol L. System and method for providing secure communications between clients and service providers
US8261063B2 (en) * 2003-02-03 2012-09-04 Hewlett-Packard Development Company, L.P. Method and apparatus for managing a hierarchy of nodes
US7624272B2 (en) * 2003-03-31 2009-11-24 Intel Corporation Platform information for digital signatures

Also Published As

Publication number Publication date
US20120185694A1 (en) 2012-07-19
JP2005167589A (ja) 2005-06-23
CN100594692C (zh) 2010-03-17
US20050120219A1 (en) 2005-06-02
US8560857B2 (en) 2013-10-15
CN1625105A (zh) 2005-06-08
US8171295B2 (en) 2012-05-01

Similar Documents

Publication Publication Date Title
JP4064914B2 (ja) 情報処理装置、サーバ装置、情報処理装置のための方法、サーバ装置のための方法および装置実行可能なプログラム
US8201239B2 (en) Extensible pre-boot authentication
US7711960B2 (en) Mechanisms to control access to cryptographic keys and to attest to the approved configurations of computer platforms
US8789037B2 (en) Compatible trust in a computing device
KR101556069B1 (ko) 대역외 원격 인증
US8909940B2 (en) Extensible pre-boot authentication
TWI667586B (zh) 用以核對uefi認證變量變化之系統及方法
US7484099B2 (en) Method, apparatus, and product for asserting physical presence with a trusted platform module in a hypervisor environment
EP2583410B1 (en) Single-use authentication methods for accessing encrypted data
JP5497171B2 (ja) セキュア仮想マシンを提供するためのシステムおよび方法
KR100996784B1 (ko) 공개 키 암호화에 기초한 데이터의 저장 및 검색을 위한, 컴퓨팅 장치에서 구현되는 방법, 시스템 및 복수의 명령어를 저장하는 하나 이상의 컴퓨터 판독가능 매체
JP4689946B2 (ja) 安全なデータを使用して情報処理を実行するシステム
KR100806477B1 (ko) 리모트 액세스 시스템, 게이트웨이, 클라이언트 기기,프로그램 및 기억 매체
US8639923B2 (en) System and method for component authentication of a secure client hosted virtualization in an information handling system
KR100800346B1 (ko) 신뢰 컴퓨팅 플랫폼에서 동적으로 생성된 배서 키에 대한가상 배서 증명서를 확립하는 방법, 장치 및 프로그램을기록한 컴퓨터로 판독 가능한 기록 매체
US8918907B2 (en) Approaches for firmware to trust an application
US20060026418A1 (en) Method, apparatus, and product for providing a multi-tiered trust architecture
CN113168476A (zh) 操作***中个性化密码学安全的访问控制
US20100011219A1 (en) Secure Use of User Secrets on a Computing Platform
TWI708159B (zh) 包含安全處理器之裝置平台、裝置中之安全處理器、以及相關儲存媒體
KR20110050488A (ko) 티켓 인증 보안 설치 및 부트
CN113301107A (zh) 节点计算平台及其实现方法、可信云平台实现方法
Safford et al. A trusted linux client (tlc)
Maruyama et al. Linux with TCPA integrity measurement
Maruyama et al. Trusted platform on demand (TPod)

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061225

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070515

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070620

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071126

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

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20071225

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071227

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110111

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120111

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130111

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140111

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees