JP4865177B2 - コンピューティング・プラットフォームにおける信用状態の動作 - Google Patents

コンピューティング・プラットフォームにおける信用状態の動作 Download PDF

Info

Publication number
JP4865177B2
JP4865177B2 JP2001530670A JP2001530670A JP4865177B2 JP 4865177 B2 JP4865177 B2 JP 4865177B2 JP 2001530670 A JP2001530670 A JP 2001530670A JP 2001530670 A JP2001530670 A JP 2001530670A JP 4865177 B2 JP4865177 B2 JP 4865177B2
Authority
JP
Japan
Prior art keywords
state
computer platform
component
data
trusted
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 - Lifetime
Application number
JP2001530670A
Other languages
English (en)
Other versions
JP2003511783A (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.)
HP Inc
Original Assignee
Hewlett Packard Co
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=8241625&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP4865177(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JP2003511783A publication Critical patent/JP2003511783A/ja
Application granted granted Critical
Publication of JP4865177B2 publication Critical patent/JP4865177B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • 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
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/009Trust
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/1097Boot, Start, Initialise, Power
    • 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/2101Auditing as a secondary aspect
    • 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/2105Dual mode as a secondary aspect
    • 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/2143Clearing memory, e.g. to prevent the data from being stolen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2153Using hardware token as a secondary aspect

Description

【0001】
[発明の分野]
本発明は、コンピュータの分野に関し、より具体的には、信用状態におくことができるコンピューティング・エンティティ、信用状態を達成するためにコンピューティング・エンティティを動作させる方法、および、信用状態にある場合のコンピューティング・エンティティの動作に関するが、これらに限定されるものではない。
【0002】
[発明の背景]
従来技術の量販市場向けコンピューティング・プラットフォームには、よく知られたパーソナル・コンピュータ(PC)およびApple Macintosh(商標)などの競合製品、ならびに普及している周知のパームトップ型およびラップトップ型のパーソナル・コンピュータが含まれる。一般にこうしたマシンの市場は、家庭用すなわち消費者と企業との2つのカテゴリに分類される。家庭用すなわち消費者用に使用するコンピューティング・プラットフォームの一般要件は、相対的に高い処理能力、インターネットへのアクセス機能、およびコンピュータ・ゲームを取り扱うマルチメディア機能である。このタイプのコンピューティング・プラットフォームでは、Microsoft Windows(登録商標)、’95および’98のオペレーティング・システム製品およびIntelプロセッサが市場で優勢な位置を占めている。
【0003】
他方で、業務用の場合は、小規模ビジネスから多国間のビジネスに及ぶ組織向けに使用可能なコンピュータ・プラットフォーム・ソリューションが、多すぎるほどの使用可能な所有権下にある。これらアプリケーションの多くは、サーバ・プラットフォームが、集中型データ記憶装置および複数のクライアント・ステーション向けのアプリケーション機能を提供する。業務用の場合、その他の主要な基準は、信頼性、ネットワーキング機能、およびセキュリティ機能である。こうしたプラットフォームでは、Microsoft WindowsNT4.0(商標)オペレーティング・システム、およびUnix(商標)オペレーティング・システムが一般的である。
【0004】
「電子商取引」として知られるインターネットを介して取引される商業活動が増加するにつれて、インターネットを介したコンピューティング・プラットフォーム間でのデータ・トランザクションを可能にする従来技術に多くの関心が寄せられてきた。しかし、電子データの不正使用および不正操作の可能性があることから、完全に透過で効率的な市場に必要とされるような、遠距離の見知らぬ第三者と広範な規模で完全に自動化されたトランザクションを行うことは、これまで手控えられてきた。このようなトランザクションを実行することにおける基本的な問題の1つが、対話するコンピュータ・プラットフォーム間における「信用」である。
【0005】
これまでにも、コンピュータ・プラットフォームのセキュリティおよび信用性を向上させることを目標とする、いくつかの従来技術方式があった。これらの大部分は、アプリケーションレベルでセキュリティ機能を追加することに依拠している。すなわち、セキュリティ機能は、オペレーティング・システムのカーネルに本質的に埋め込まれたものではなく、また、コンピューティング・プラットフォームの基本となるハードウェア構成要素に組み込まれたものでもない。
【0006】
ユーザに固有のデータを有するスマート・カードを含み、このデータが、コンピュータ上のスマート・カード・リーダに入力されるポータブル・コンピュータ装置がすでに市場に登場している。現在、このようなスマート・カードは、従来のパーソナル・コンピュータにとって余分な増設品といったレベルであるが、周知のコンピュータのケーシング(casing)に組み込まれている場合もある。これら従来技術の方式は、コンピュータ・プラットフォームのセキュリティを向上させるのにある程度成果をあげるが、従来技術方式によって得られるセキュリティおよび信用性のレベルは、自動化されたトランザクションの広範なアプリケーションをコンピュータ・プラットフォーム間で可能にするには、不十分である。かなり重要なトランザクションを広範な規模の電子商取引で行うビジネスの場合、基礎となるテクノロジーの信用性に確信が持てなければならない。
【0007】
従来技術のコンピューティング・プラットフォームには、固有のセキュリティを向上させる方法に、以下のようないくつかの問題がある。
【0008】
・コンピュータ・システムまたはプラットフォームの動作状態、およびプラットフォームまたはシステム内のデータ状態は動的であり、予測するのが困難である。コンピュータ・プラットフォームおよびプラットフォーム上にあるデータ状態は常に変化しており、コンピュータ・プラットフォーム自体も動的に変化していることがあるので、コンピュータ・プラットフォームが正しく動作しているかどうかを判定するのが困難である。
【0009】
・セキュリティの点から見ると、商用のコンピュータ・プラットフォーム、特にクライアント・プラットフォームは、許可されていない変更を受けやすい環境で使用されることが多い。この変更を受けやすい主な範囲には、ユーザによってロードされたソフトウェアによる変更、またはネットワーク接続を介した変更が含まれる。特に(限定されるわけではないが)、従来のコンピュータ・プラットフォームは、敵意の程度が異なるウィルス・プログラムの攻撃を受けやすいことがある。
【0010】
・コンピュータ・プラットフォームはアップグレードされることがあり、その機能は、物理的な変更、すなわちハード・ディスク・ドライブ、周辺ドライバなどの構成要素の追加または削除によって、拡張または制限されることがある。
【0011】
コンピュータ・システムのセキュリティ機能を、オペレーティング・ソフトウェアに埋め込んで提供することが知られている。これらのセキュリティ機能は主に、システム・ユーザの間で情報を区分けすることを目的としたものである。周知のMicrosoft WindowsNT(商標)4.0オペレーティング・システムには「システム・ログ・イベント・ビューア」と呼ばれる監視機構があり、この機構では、プラットフォーム内で発生するイベントのログが、システム管理者がWindows NTオペレーティング・システム・ソフトウェアを使用して調べることができるイベント・ログ・データ・ファイルに記録される。この機構は、システム管理者が事前に選択したイベントのセキュリティを監視することを可能にすることで、ある程度の成果をあげている。WindowsNT(商標)4.0オペレーティング・システムのイベント・ログ機能は、システム監視を提供する。
【0012】
コンピュータ・プラットフォームのセキュリティ全体に関して、単にソフトウェア・ベースのシステムは、何千もの異なる種類のウィルスによる攻撃を受けやすい。たとえばDr Solomons(商標)ウィルス・ツールキット・プログラムなどの、所有権下にあるウィルス検出修正アプリケーションがいくつか知られている。Microsoft WindowsNT(商標)4.0ソフトウェアには、周知のウィルスを探索するように事前設定されたウィルスガード・ソフトウェアが含まれている。しかし、ウィルスの種類は常に増え続けているため、ウィルス・ガード・ソフトウェアが新しい未知のウィルスから確実に保護することができるものとは限らない。新種のウィルスは、常に開発され、コンピューティング環境およびインターネット環境に放出されている。
【0013】
さらに、コンピュータ・エンティティに関する従来技術の監視システムは、管理者がネットワーク管理ソフトウェアを使用して複数のネットワーク・コンピュータの性能を監視する、ネットワーク監視機能に焦点をあてている。これら周知のシステムでは、システム内の信用は、システム内のそれぞれのコンピュータ・プラットフォームのそれぞれのハードウェア・ユニットの個々の信用レベルには存在しない。
【0014】
[発明の概要]
本発明の1つの目的は、コンピューティング・エンティティが外部の影響によって損なわれておらず、予測可能な周知の方法で動作しているという高い信頼を第三者のユーザが寄せることのできる、コンピューティング・エンティティを提供することである。
【0015】
本発明の他の目的は、コンピューティング・エンティティの信用性が、ある特定のタスク、ある一組のタスク、またはあるタイプのタスクを実行するのに十分であるかどうかを判定するタスクを簡略化することである。
【0016】
本発明の一実施形態では、コンピューティング・エンティティは、複数の別個の動作状態に存在することができる。それぞれの動作状態は、これらの動作状態を区別するように設計された一組の保全性測定基準を使用して、他の動作状態と区別されることができる。
【0017】
本発明の第1の側面によれば、第1のデータ・プロセッサおよび第1のメモリ手段を含む複数の物理的および論理的資源を有するコンピュータ・プラットフォームと、第2のデータ・プロセッサおよび第2のメモリ手段を有する監視構成要素とを備えるコンピューティング・エンティティが提供される。コンピュータ・プラットフォームは、複数の異なる状態で動作することができ、該状態のそれぞれは、物理的および論理的資源の個々の、対応するそれぞれのセットを使用する。監視構成要素は、前記複数の状態のうちのどの状態で前記コンピュータ・プラットフォームが動作しているかを判断するよう動作する。
【0018】
前記メモリ手段は、前記コンピュータ・プラットフォームの前記複数の物理的および論理的資源を、予め決められた前記状態にするよう構成するための命令セットを含むことが好ましい。
【0019】
前記コンピュータ・プラットフォームが前記予め決められた状態から出ることは、前記監視構成要素によって監視されていることが好ましい。
【0020】
BIOSファイルを監視構成要素自体の中に設けることができる。BIOSファイルを監視構成要素の中に設けることによって、BIOSファイルを本質的に信用することができる。
【0021】
他の実施形態では、前記コンピュータ・プラットフォームは内部ファームウェア構成要素を含むことができ、該内部ファームウェア構成要素は、前記コンピュータ・プラットフォームのBIOSファイルによって占有される予め決められたメモリ空間に格納されたBIOSファイルデータのダイジェスト・データを算出するよう構成される。
【0022】
本発明の第2の側面によれば、第1のデータ処理手段および第1のメモリ手段を有するコンピュータ・プラットフォームと、第2のデータ処理手段および第2のメモリ手段を有する監視構成要素とを備えるコンピューティング・エンティティとを、前記コンピュータ・プラットフォームが活動化されることのできる複数の事前に構成された動作状態のうちの1つの動作状態に活動化させる方法が提供される。該方法は、前記コンピュータ・プラットフォームを活動化させる複数の事前に構成された動作状態のうちの1つの状態を選択するステップと、前記コンピュータ・プラットフォームを、格納された命令セットに従って前記選択された状態に活動化させるステップとを含む。前記監視構成要素は、前記コンピュータ・プラットフォームが、前記複数の事前に構成された状態のうちのどの状態に活動化されるかを記述するデータを記録することによって、前記選択された状態への活動化を監視する。
【0023】
前記監視構成要素は、前記コンピュータ・プラットフォームが前記選択された状態に活動化された後に、前記選択された状態の監視を続行することができる。
【0024】
前記監視構成要素は、前記コンピューティング・エンティティのユーザによる前記監視構成要素への直接的な信号入力に応答して、状態信号を生成することができる。該状態信号は、前記コンピュータ・プラットフォームがどの状態に入ったかを記述するデータを含む。
【0025】
一実施形態では、前記状態の選択を可能にする前記格納された命令セットを、前記監視構成要素に内在するBIOSファイルに格納することができる。前記状態が選択されると、BIOSによって活動化されるマスター・ブートの命令セットによって、状態の活動化を実行することができる。
【0026】
この方法は、前記複数の事前に構成された状態から、1つの事前に構成された状態を選択するためのメニューを生成するステップを含むことが好ましい。
【0027】
この方法は、前記複数の事前に構成された状態から前記1つの事前に構成された状態を選択するため、ユーザ・インターフェース上に表示されるユーザ・メニューを生成するステップを含むことができる。状態信号を生成する前記ステップは、前記ユーザ・インターフェースを介して受け取られたユーザ入力に応答して、状態信号を生成することを含む。
【0028】
代替的に、前記BIOSによって生成された状態オプションを選択する、スマートカード上に格納された命令セットによって、予め決められた状態を自動的に選択することができる。該状態の選択は、前記BIOSによって生成された前記状態オプションのセットから1つの状態を選択するよう前記BIOSに命令する選択命令セットを介して、自動的に行われることができる。
【0029】
状態を監視する前記ステップは、前記コンピュータ・プラットフォームを活動化する直前に、ファームウェア構成要素によって、前記コンピュータ・プラットフォームのBIOSファイルによって占有される第1の事前に割り振られたメモリ空間のダイジェスト・データを作成するステップと、前記ファームウェア構成要素だけが書込みアクセスを有する第2の事前に割り振られたメモリ空間に、前記ダイジェスト・データを書き込むステップとを含む。前記監視構成要素は、前記第2の事前に割り振られたメモリ空間から前記ダイジェスト・データを読み取る。
【0030】
コンピュータ・プラットフォームが活動化される状態を監視する前記ステップは、ファームウェア構成要素に、前記コンピュータ・プラットフォームのBIOSファイルのダイジェスト・データの処理を実行させるステップと、前記ダイジェスト・データを、前記監視構成要素の前記第2のメモリ手段の予め決められた位置に書き込むステップとを含むことができる。
【0031】
コンピュータ・プラットフォームを選択された状態に活動化させる前記ステップは、前記コンピュータ・プラットフォームのBIOSファイルによって占有される前記第1のメモリ手段のメモリ位置に、前記第1のプロセッサの制御を前記監視構成要素に転送する前記監視構成要素のアドレスを格納するステップと、前記監視構成要素に、前記第1のプロセッサをリセットした直後にアクセス可能な固有の命令セットを格納するステップを含み、前記固有の命令は、前記BIOSファイルのダイジェストを処理して、該ダイジェスト・データを前記監視構成要素の前記第2のメモリ手段に格納するよう前記第1のプロセッサに命令し、前記ダイジェスト・データが前記第2のメモリ手段に格納されたならば、前記監視構成要素は、前記活動化プロセスの制御を前記BIOSファイルに渡す。
【0032】
コンピュータ・プラットフォームが活動化される状態を監視する前記ステップは、コンピュータ・プラットフォームを選択された状態に活動化する前記ステップの後、複数の論理的および物理的構成要素を監視して、該構成要素から、該構成要素の状態および条件を記述する測定基準データ信号の第1のセットを取得するステップと、前記コンピュータ・プラットフォームの前記複数の物理的および論理的構成要素から求められた前記測定基準データ信号の第1のセットと、前記監視構成要素によるアクセス専用に予約されたメモリ領域に格納された、事前に記録された測定基準データのセットとを比較するステップと、前記複数の物理的および論理的構成要素から直接取得された前記測定基準データ信号の第1のセットと、前記予約されたメモリ領域に格納された前記事前に格納された測定基準データ信号のセットとを比較するステップを含むことができる。
【0033】
本発明の第3の側面によると、第1のデータ処理手段および第1のメモリ手段を有するコンピュータ・プラットフォームと、第2のデータ処理手段および第2のメモリ手段を有する監視構成要素とを備えるコンピューティング・エンティティを動作させる方法であって、前記コンピュータ・プラットフォームを、複数の可能な予め決められた動作状態のうちの1つに入らせる方法が提供される。該方法は、ユーザ・インターフェースからの入力に応答して、前記コンピュータ・プラットフォームが活動化される選択された状態を記述する状態信号を生成するステップと、物理的および論理的資源の周知のセットを使用することができて、周知のプロセスが動作することができる予め決められた状態に、前記コンピュータ・プラットフォームを活動化するステップと、前記予め決められた状態から、前記監視構成要素を再構成するための構成メニューに入るステップと、前記構成メニューを含む命令セットに従って、ユーザ・インターフェースを介してデータを入力することにより、前記監視構成要素の構成を変更するステップとを含む。
【0034】
監視構成要素の構成メニューに入る前記ステップは、確認キーの物理的な活動化に応答して生成された確認キー信号を、前記監視構成要素に直接入力するステップを含むことができる。
【0035】
前記監視構成要素の構成メニューに入る前記ステップは、前記信用構成要素にユーザ・インターフェースを介してパスワードを入力するステップを含むことができる。
【0036】
本発明の第4の側面によると、第1のデータ処理手段および第1のメモリ手段を有する監視構成要素と、第2のデータ処理手段および第2のメモリ手段を有するコンピュータ・プラットフォームとを備えるコンピューティング・エンティティを動作させる方法が提供される。該方法は、前記コンピュータ・エンティティの、複数の事前に選択された物理的および論理的資源を使用することができる第1の状態に入るステップと、前記第1の状態において、前記コンピュータ・プラットフォームによって複数のデータ入力が受け取られて、前記第2のデータ処理手段が、該受け取られたデータについてデータ処理を実行するユーザ・セッションを開始するステップと、前記セッションで受け取られた命令に従って前記複数の物理的および論理的資源を再構成するステップと、前記物理的および論理的資源の構成を記述するセッション・データを生成するステップと、前記セッション内で動作するプロセスの結果として生じた複数のユーザ・データを生成するステップと、前記ユーザ・データを格納するステップと、セッション・データを格納するステップと、前記セッションを出るステップと、前記コンピュータ・プラットフォームが前記状態から出るステップとを含む。
【0037】
前記第1の状態の前記ユーザ・セッション中に前記監視構成要素を再構成するステップをさらに含むことができる。こうして、監視構成要素を、コンピュータ・プラットフォームの信用状態から再構成することができる。
【0038】
ここで、本発明をよりよく理解し、どのようにすれば同様に実行できるかを示すために、本発明に従う所定の実施形態、方法、およびプロセスについて、図面を参照しながら、例示的なものとしてのみ記載する。
【0039】
[発明の好ましい形態の詳細な説明]
ここで、本発明を実施するために発明者によって企図された最良の実施形態を、例示的なものとして説明する。以下の記述では、本発明を完全に理解してもらうために多数の特定の詳細について述べる。しかし、当業者であれば、本発明がこれらの特定の詳細に限定されることなく実施できるものであることが明らかであろう。その他の場合では、本発明を不必要に不明瞭なものにしないように、周知の方法および構造については詳細に説明していない。
【0040】
本発明の特定の実施形態には、処理手段およびメモリ手段を有するコンピュータ・プラットフォームが含まれている。コンピュータ・プラットフォームは、該コンピュータ・プラットフォームから測定基準(メトリクス;metrics)データを集めることによってコンピュータ・プラットフォームの動作を監視する構成要素(これを、以下「信用構成要素」または「監視構成要素」と呼ぶ)に物理的に関連付けられている。信用構成要素は、コンピュータ・プラットフォームが正しく機能しているかについて、コンピュータ・プラットフォームと対話する第三者のコンピュータ・エンティティに対し、検証することができる。
【0041】
このような信用構成要素がそれぞれ設けられている2つのコンピューティング・エンティティは、高い「信用」度で相互に対話することができる。すなわち、第1および第2のコンピューティング・エンティティが相互に対話し合う場合、信用構成要素が存在しない場合に比べて、以下の理由から対話のセキュリティが強化される。
【0042】
1)コンピューティング・エンティティのユーザは、自分自身のコンピュータ・エンティティの保全性とセキュリティ、および他のコンピューティング・エンティティに属しているコンピュータ・エンティティの保全性とセキュリティに、より高い信頼を寄せている。
【0043】
2)それぞれのエンティティは、他方のエンティティが、実際に目指すところのエンティティであると確信する。
【0044】
3)一方または両方のエンティティがトランザクション、たとえばデータ転送トランザクションの当事者を表している場合、信用構成要素が組み込まれていることによって、該エンティティと対話する第三者のエンティティは、そのエンティティがそのような当事者を実際に表しているということを高い信頼度で確信する。
【0045】
4)信用構成要素は、該信用構成要素によって実施される検証および監視プロセスを通じて、エンティティ自体の固有のセキュリティを向上させる。
【0046】
5)コンピュータ・エンティティは、予測される挙動方法で挙動する可能性が高い。
【0047】
本明細書では、「信用」という用語が物理的または論理的構成要素に関して使用されるとき、常に予測された方法で挙動する物理的または論理的構成要素を意味するものとして使用される。その構成要素の挙動は、予測可能であり周知である。信用構成要素は、許可されていない変更に対して高い耐性を有する。
【0048】
本明細書では、「コンピュータ・プラットフォーム」という用語は、少なくとも1つのデータ・プロセッサおよび少なくとも1つのデータ記憶手段を有する。コンピュータ・プラットフォームは、通常(だが、必須ではない)、たとえば複数のドライバなどの関連付けられた通信機構や、関連するアプリケーションおよびデータ・ファイルを有している。コンピュータ・プラットフォームは、たとえばインターネットへの接続、外部ネットワークへの接続により、またはCD ROM、フロッピィ・ディスク、リボン・テープなどのデータ記憶媒体上に格納されたデータを受け取ることができる入力ポートを有することにより、たとえばユーザまたは他のコンピュータ・エンティティなどの外部エンティティと対話することができる。「コンピュータ・プラットフォーム」という用語は、コンピュータ・エンティティの主なデータ処理および記憶機構を含んでいる。
【0049】
図1を参照すると、本発明の特定の実施態様に従うコンピュータ・エンティティの一例が概略的に示されている。図2を参照すると、図1の信用コンピュータ・エンティティの構成要素の一部の物理的接続が概略的に示されている。図3を参照すると、エンティティの構成要素の物理的接続を示す図1および図2の信用コンピュータ・エンティティのアーキテクチャが概略的に示されている。
【0050】
一般に、本明細書に記載されたベストモードでは、信用コンピュータ・エンティティは、第1のデータ・プロセッサおよび第1のメモリ手段からなるコンピュータ・プラットフォームを、該コンピューティング・プラットフォームの保全性および正しい機能性を検証する信用構成要素と共に含む。信用構成要素は、第1のデータ・プロセッサおよび第1のメモリ手段とは物理的および論理的に異なる第2のデータ・プロセッサおよび第2のメモリ手段を有する。
【0051】
図1から図3に示された例では、信用コンピュータ・エンティティが、家庭用または業務用に好適なパーソナル・コンピュータの形式で示されている。しかし当業者であれば、これが本発明の一実施形態であるに過ぎず、本発明の他の実施形態が、パームトップ・コンピュータ、ラップトップ・コンピュータ、サーバ型コンピュータ、携帯電話型コンピュータなどの形式であってもよく、本発明が本明細書の特許請求の範囲によってのみ限定されるものであることは理解されよう。本明細書に記載されたベストモードの例では、コンピュータ・エンティティには、ディスプレイ・モニタ100、キーボード・データ入力手段101、ケーシング102、ユーザのスマート・カードを受け入れるためのスマート・カード・リーダ103、ユーザが該信用コンピュータ・エンティティを介してトランザクションを確認するときに起動することのできる確認キー104、マウス105またはトラックボール・デバイスなどのポインティング・デバイス、および信用構成要素が含まれる。また、ケーシング102は、データ・プロセッサが搭載されたマザーボード、ハード・ディスク・ドライブなどの1つまたは複数のデータ記憶手段、動的なランダム・アクセス・メモリ、および様々な入出力ポート(図1には図示せず)を有する。
【0052】
図2を参照すると、確認キー104およびスマート・カード・リーダ103を組み込んだキーボード101、第1のデータ・プロセッサ201および信用構成要素202が取り付けられたメイン・マザーボード200、ハード・ディスク・ドライブ203の一例、およびモニタ100を有する信用コンピュータ・エンティティの構成要素の一部が示されている。信用コンピュータ・エンティティの追加の構成要素として、ケーシング102の内部フレームに、1つまたは複数のローカル・エリア・ネットワーク(LAN)・ポート、1つまたは複数のモデム・ポート、1つまたは複数の電源、冷却ファンなど(図2には図示せず)を含めることができる。
【0053】
本明細書のベストモードでは、図3に示されるように、メイン・マザーボード200が、第1のデータ・プロセッサ201、好ましくは永久的に固定される信用構成要素(TC)202、ランダム・アクセス・メモリなどの高速アクセス・メモリ領域である第1のデータ・プロセッサに対するローカル・メモリ・デバイス300、BIOSメモリ領域301、スマート・カード・インターフェース305、複数の制御ライン302、複数のアドレスライン303、確認キー・インターフェース306、およびデータバス304、を有するように製造される。ここで、データバス304は、プロセッサ201、信用構成要素202、メモリ領域300、BIOSメモリ構成要素301およびスマート・カード・インターフェース305を接続する。また、ハードウェア乱数発生器RNG309は、バス304を介してプロセッサ201と通信することができる。
【0054】
マザーボードの外部にあり、データバス304によって接続されるものに、1つまたは複数のハード・ディスク・ドライブ・メモリ・デバイス203、キーボード・データ入力デバイス101、マウスやトラックボール・デバイスなどのポインティング・デバイス105、モニタ・デバイス100、前述したようにスマート・カード・デバイスを受け入れるためのスマート・カード・リーダ・デバイス103がある。ここで、ディスク・ドライブ、キーボード、モニタ、およびポインティング・デバイスは、データバス304を介してプロセッサ201と通信することができる。さらに、たとえばモデム、プリンタ・スキャナ、または他の周知の周辺デバイスなどの1つまたは複数の周辺デバイス307、308が、データ・バス304によって接続されている。
【0055】
機能強化されたセキュリティを提供するために、確認キー・スイッチ104が、マザーボード200上にある確認キー・インターフェース306に直接配線されている。このことは、ユーザが確認キー104を起動したときに、信号入力が信用構成要素202に直接与えられることを示す。こうして、ユーザが確認キーを起動することにより、信号が、コンピュータ・プラットフォームの第1のデータ・プロセッサおよび第1のメモリ手段をバイパスして、直接信用構成要素に送られるようにする。
【0056】
一実施形態では、確認キーが単純なスイッチを含むようにしてもよい。確認キー104および確認キー・ドライバ306は、ユーザと信用構成要素との間に、プロセッサ201が干渉することができない保護通信経路(PCP)を提供する。保護通信経路は、データバス304をバイパスしており、メモリ領域300またはハード・ディスク・ドライブ・メモリ・デバイス203に物理的にも論理的にも接続されていない。
【0057】
信用構成要素202は、コンピューティング・プラットフォームのモニタ100とプロセッサ201との間に論理的および物理的に配置される。このため、信用構成要素202は、モニタ100上に表示されるビューを介した直接制御を有し、これに対して、プロセッサ201は干渉することができない。
【0058】
信用構成要素は、そのアイデンティティおよび信用プロセスをコンピュータ・プラットフォームに貸与し、信用構成要素は、その不正変更に対する耐性、偽造に対する耐性、および模造に対する耐性という特性を有する。適切な認証機構によって選択されたエンティティだけが、信用構成要素内で実行されるプロセスに影響を与えることができる。信用コンピュータ・エンティティのユーザも、mたネットワークを介して該コンピュータ・エンティティに接続されたいかなる人物およびいかなるエンティティも、信用構成要素の内部で実行されるプロセスにアクセスしたり干渉したりすることはできない。信用構成要素は、「侵害されない」という特性を有する。
【0059】
スマート・カード・リーダ103は、マザーボード上にあるスマート・カード・インターフェース305に直接配線され、データバス304には直接接続されない。代替的に、スマート・カード・リーダ103をデータバス304に直接接続してもよい。それぞれの個々のスマート・カードには、対応するそれぞれのイメージ・データを格納することができ、該イメージ・データは、各スマート・カードによって異なる。たとえば信頼構成要素によって生成されるダイアログボックスのモニタ表示のように、ユーザが信用構成要素と対話する場合、信用構成要素は、ユーザのスマート・カードからイメージ・データを取り出し、これを、モニタ100に表示されるダイアログ・ボックスの背景として使用する。こうしてユーザは、モニタ100に表示されるダイアログ・ボックスが信用構成要素によって生成されたものであるという確信を持つ。イメージ・データは、偽造された場合には即時にユーザが目で見てわかるような方法で、人間が簡単に認識することができるものであることが好ましい。たとえば、イメージ・データはユーザの写真を含むものでもよい。スマート・カード上のイメージ・データは、スマート・カードを使用する人物に固有のものであることができる。
【0060】
図4を参照すると、信用構成要素202の内部アーキテクチャが概略的に示されている。信用構成要素は、プロセッサ400、揮発性メモリ領域401、不揮発性メモリ領域402、固有のコードを格納するメモリ領域403、1つまたは複数の暗号関数を格納するメモリ領域404を有している。不揮発性メモリ402、固有コード・メモリ403、および暗号メモリ404はまとめて、上記で述べた第2のメモリ手段に含まれる。
【0061】
信用構成要素202は、コンピュータ・プラットフォームから物理的および論理的に独立したコンピューティング・エンティティを構成する。ベストモードでは、信用構成要素がコンピュータ・プラットフォームに物理的にリンクされるよう、信用構成要素は、コンピュータ・プラットフォームとマザーボードを共用する。ベストモードでは、信用構成要素が、コンピュータ・プラットフォームと物理的に別個である。すなわち、信用構成要素は、コンピュータ・プラットフォームに含まれるデータ・プロセッサおよびメモリ手段の下位機能として単独に存在するのではなく、別の物理データ・プロセッサ400および別の物理メモリ領域401、402、403、404として別々に存在する。コンピュータ・エンティティのメイン・プロセッサとは別個に物理的に存在する信用構成要素を設けることによって、信用構成要素は、コンピュータ・プラットフォーム上に導入されたソフトウェアを介して模倣または偽造されにくくなる。信用構成要素を、プラットフォームのメイン・プロセッサと物理的に分けて不正変更の耐性を向上させることにより生じる他の利点は、信用構成要素がローカル・ユーザによって物理的に破壊されることがないこと、およびローカル・ユーザまたはリモート・ユーザのいずれによっても論理的に破壊されることがないことである。信用構成要素内にあるプログラムは、信用構成要素の製造時に安全な環境で事前にロードされる。ユーザはプログラムを変更することはできない。しかし、プログラムを構成する許可を与えるためのプログラムが書き込まれた場合は、ユーザはそのような構成を行うことができる。信用構成要素の物理的性質と、信用構成要素がユーザによって構成不可能であるという事実により、ユーザは信用構成要素の本質的な保全性を確信することができるようになる。したがって、ユーザは、コンピュータ・プラットフォーム上での信用構成要素の動作および存在に高い「信用」を寄せることができる。
【0062】
図5を参照すると、コンピュータ・エンティティ500の論理アーキテクチャが概略的に示されている。論理アーキテクチャには、図1から図3に記載されている物理アーキテクチャの場合と同様に、コンピュータ・プラットフォームと信用構成要素との間に基本的な区分けがある。すなわち、信用構成要素はコンピュータ・プラットフォームとは論理的に別個であり、物理的には関係している。コンピュータ・エンティティは、論理空間であるユーザ空間501および信用構成空間502を有しており、ユーザ空間501は、物理的にコンピュータ・プラットフォーム(第1のプロセッサおよび第1のデータ記憶手段)上に存在し、信用構成空間502は、物理的に信用構成要素202上に存在する。ユーザ空間501内には、1つまたは複数のドライバ503、1つまたは複数のアプリケーション・プログラム504、ファイル記憶領域505、スマート・カード・リーダ103、スマート・カード・インターフェース305、およびユーザ空間内で演算を実行してその結果を信用構成要素202に報告するソフトウェア・エージェント506がある。信用構成要素空間502は、信用構成要素に基づく論理領域であり、物理的には該信用構成要素の中に存在し、信用構成要素の第2のデータ・プロセッサおよび第2のメモリ領域によってサポートされる。確認キー・デバイス104は、信用構成要素空間502に直接入力し、モニタ100は、信用構成要素空間502から直接イメージを受け取る。コンピュータ・エンティティ500の外部には、インターネット507、様々なローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク508などの外部通信ネットワークがあり、1つまたは複数のモデム・ポートを有することのできるドライバ503を介してユーザ空間501に接続される。外部ユーザのスマート・カード509は、ユーザ空間内にあるスマート・カード・リーダ103に入力される。
【0063】
信用構成要素空間502内には、信用構成要素自体が存在する。モニタ100には、信用構成要素によって生成されたものが表示され、確認キー104は、確認キー・インターフェース306を介して確認信号を入力する。
【0064】
本発明を実施するためのベストモードでは、コンピューティング・エンティティは複数の動作モードを有し、本明細書ではこれを「動作状態」と呼ぶ。複数の動作状態のうちの異なる状態によって、コンピューティング・エンティティは、異なるセットのタスクおよび機能を実行することができる。個々の状態の中には、かなり高いレベルの自由度および複雑度で実行することのできる複雑な動作がある。他の動作状態においては、コンピューティング・エンティティの挙動に多くの制約がある。
【0065】
複数の異なる状態のそれぞれで動作する場合にコンピューティング・エンティティ上に設けることのできる「信用」レベルは、以下の事項に関連している。
【0066】
1)特定の状態で実行することのできる異なる動作の数。
【0067】
2)特定の状態で実行することのできる動作の複雑さ。
【0068】
3)コンピューティング・エンティティをリブートせずに、コンピューティング・エンティティが特定の状態から移動することのできるいくつかの他の状態。
【0069】
4)コンピューティング・エンティティをリブートせずに、特定の状態に到着することのできるいくつかの異なる状態。
【0070】
5)特定の状態にあるときのコンピューティング・エンティティの接続性。すなわち、エンティティが、インターネット、ワイド・エリア・ネットワークまたはローカル・エリア・ネットワークなどを介して接続可能な、他のコンピューティング・エンティティまたはデバイスの数。
【0071】
6)外部ソース、例えば他のコンピューティング・エンティティ、フロッピィ・ディスク、CD ROM、モデム、LANポートなどからのデータ入力に対する制約。
【0072】
7)たとえばデータをCDライタまたはフロッピィ・ディスク・ドライブに保存すことができるか、またはインターフェースによって他のコンピュータ・エンティティにインターネット、ローカル・エリア・ネットワーク、またはワイド・エリア・ネットワークを介してエクスポートすることができるかどうかなど、特定の状態から他のコンピューティング・エンティティへのデータ出力に対する制約。
【0073】
8)特定の状態で発生するコンピュータ・エンティティ内での内部監視プロセスの量およびその信頼性。すなわち。その状態にあるときに信用構成要素によって適用される一組の測定基準の量および信頼性。
【0074】
9)ユーザが特定の状態に入る前に実行する必要があるいくつかのチェック。
【0075】
10)ユーザが特定の状態に入る前に実行する必要がある1つまたは複数のチェックをバイパスすることの困難さ。
【0076】
11)コンピュータ・エンティティのユーザがコンピューティング・エンティティを特定の状態に入らせる前に実行される1つまたは複数のチェックを、バイパスすることなく乗り越えることの困難さ。
【0077】
コンピュータ・エンティティに設けられる信用は、以下のような2つの別々の部分からなる。
【0078】
1)信用構成要素自体に設けられる信用。
【0079】
2)信用構成要素が、コンピュータ・エンティティの動作を検証する際に用いる確実性。
【0080】
本明細書で説明したように、コンピュータ・エンティティに設けられる信用のレベルまたは程度は、信用構成要素内に設けられる信用のレベルに関連するものとして決定される。コンピュータ・エンティティにおける信用の量は多くの要因に関連しているが、信用を測定する際に重要となる要因は、信用構成要素自体がコンピュータ・エンティティ上で実行する保全性測定基準チェックのタイプ、範囲、および規則正しさである。
【0081】
信用構成要素は暗黙的に信用される。信用構成要素は、コンピューティング・プラットフォームに置かれる任意の信用ルートとして埋め込まれ、コンピューティング・プラットフォームは全体として、信用構成要素内に設けられた信用の量よりも多く信用されることはできない。
【0082】
信用構成要素のコンピュータ・プラットフォーム監視動作によって、信用構成要素内に設けられた信用を、コンピュータ・プラットフォームの様々な部分に拡張することができる。コンピュータ・プラットフォームの個々の領域に設けられる信用のレベルおよび範囲は、信用構成要素がそのコンピューティング・プラットフォームの特定領域を監視することのできるレベルおよび信頼性に依存する。
【0083】
コンピューティング・プラットフォームの信用領域は、信用構成要素が、一組の保全性測定基準の測定をコンピュータ・プラットフォームに適用する頻度、範囲、および完全性に依存する。したがって、信用構成要素が、コンピューティング・プラットフォーム動作のすべての測定可能な側面を常時包括的に測定しない場合、コンピュータ・プラットフォームの個々の部分に設けられる信用レベルは、信用構成要素自体に設けられる信用全体の一部を形成する。コンピューティング・エンティティが、限られた数の保全性測定基準しかサポートしない場合、第三者のコンピューティング・エンティティを含む機器のユーザは、コンピューティング・エンティティに設けることができる信用レベルを推論する能力が制限される。
【0084】
コンピュータ・プラットフォームの様々な「アイランド(島)」は、コンピュータ・プラットフォームのそれらの領域を測定するために信用構成要素によって適用される保全性測定基準に応じて様々なレベルで信用されるが、コンピュータ・プラットフォームに設けられる信用レベルは、全体として、信用構成要素に固有のレベルほどは高くない。すなわち、信用構成要素空間502が最も高いレベルで信用され、ユーザ空間501は、様々な信用レベルのいくつかの領域を含むことができる。たとえば、アプリケーション・プログラム504は、相対的に信用されないことがある。ユーザが、特に高いレベルの機密性またはセキュリティを必要とする動作用にコンピュータ・エンティティを使用したい場合(たとえば、新しい事業を提案する業務、従業員の賃金表の設定、または同等の注意が必要な動作の場合)、人間であるユーザは、情報の機密性またはセキュリティが危険にさらされることになるリスクを考えると、コンピュータ・プラットフォーム上にこのような詳細を入力することに心配をおぼえることがある。機密情報は、コンピューティング・エンティティに格納しなければならないけれども、信頼の高いアイランドは、コンピューティング・プラットフォーム全体に対して均一かつ同じ信用度で拡張されない。たとえば、侵入者にとって、コンピューティング・プラットフォーム上の特定の領域またはファイルにアクセスすることが、他の領域またはファイルへのアクセスに比べて簡単なことがある。
【0085】
さらに、ユーザがある一定の機能を実行するよう信用構成要素に命じたいと欲する場合、信用構成要素に命令するすべてのコマンドは、信用構成要素自体よりも低い信用レベルにあるコンピュータ・プラットフォームを通過しなければならないという問題が生じる。したがって、信用構成要素へのコマンドは、それらがコンピュータ・プラットフォームを介して渡され処理される間に、危険にさらされることになるというリスクがある。
【0086】
本発明の特定の実施形態によれば、コンピュータ・エンティティは複数の異なる状態に入ることができ、それぞれの状態が、対応するそれぞれのレベルの信用を有しており、異なる状態に対応する個々の信用レベルが互いに異なるものであることができる。
【0087】
図6を参照すると、コンピューティング・エンティティに利用可能な物理的および論理的資源のセットが概略的に示されている。一般的なケースでは、コンピューティング・エンティティは、他のコンピューティング・エンティティと通信するための複数の入出力デバイス600を備える。このようなデバイスの例には、モデム、ローカル・エリア・ネットワーク・ポート、イーサネット・カード、ハード・ディスク・ドライブ203、フロッピィ・ディスク・ドライブ、およびスマート・カード・リーダ・デバイス103が含まれる。さらにコンピューティング・エンティティは、ハード・ディスク203またはRAM300上にある複数のメモリ領域601〜603、1つまたは複数のオペレーティング・システム604〜606、および1つまたは複数のアプリケーション・プログラム607〜609を有する。
【0088】
本明細書では、「状態」という用語がコンピューティング・エンティティと関連して使用される場合、この用語は、コンピューティング・プラットフォームによって提供される複数の機能を実行することができる、コンピューティング・エンティティの動作モードを意味する。たとえば、第1の状態では、コンピューティング・エンティティは第1のオペレーティング・システムの制御下で動作することができ、第1のセットのアプリケーション・プログラム、第1のセットのファイル、および、モデム、ディスク・ドライブ、イーサネット・カードのようなローカル・エリア・ネットワーク・カードなどの第1のセットの通信機能へのアクセスを有する。第2の状態では、コンピューティング・プラットフォームは、第2のオペレーティング・システム、第2のセットのアプリケーション、第2のセットのデータ・ファイル、および第2のセットの入出力資源へのアクセスを有することができる。順に第3の状態、第4の状態、...と、コンピューティング・エンティティが設定されることのできる状態の合計数まで同様である。2つの異なる状態で使用可能な機構間では重複が生じてもよい。たとえば、第1の状態と第2の状態が同じオペレーティング・システムを使用し、第3の状態は別のオペレーティング・システムを使用することができる。
【0089】
図7を参照すると、コンピューティング・エンティティが置かれることのある複数の状態を表す状態図が概略的に示されている。原則として、コンピューティング・エンティティが置かれる異なる状態の数には制限がないが、図7に示された例ではこうした状態のうち3つの状態が示されている。図7の例では、コンピューティング・エンティティは第1の信用状態700、汎用の非信用状態である第2の状態701、および汎用の非信用状態である第3の状態702に置かれることがある。一般的なケースでは、コンピューティング・エンティティは複数の異なる状態に存在することができ、それぞれの状態は、対応するそれぞれの信用レベルを有する。
【0090】
信用状態700は、信用状態にアクセスすることができる方法によって、第2および第3の状態701、702とは区別される。1つのオプションでは、信用状態700には、信用構成要素202を参照することによってのみアクセスすることができる。しかし、好ましいベストモードの場合、信用構成要素によって制御されずに信用状態に入ることができる。信用状態にアクセスするには、ユーザは、コンピューティング・エンティティをオンにする。すなわち、ユーザーは、電源投入プロセス703でコンピューティング・エンティティの電源をオンにする。電源をオンにすると、コンピューティング・エンティティは、プロセス704において、コンピュータBIOSに含まれるルーチンからBIOSファイル301を介してブートする(立ち上がる)。コンピューティング・エンティティは、BIOSファイルがどのように構成されているかによって、信用状態700、第2の状態701、または第3の状態702のいずれかに入ることができる。本明細書のベストモードでは、コンピュータ・エンティティのユーザには、選択によって信用状態700または他の状態701、702のうちのいずれかに入るためのオプションが提供される。該オプションは、コンピュータ・エンティティのブート中にモニタ100のメニュー表示オプションとして提供され、または、いずれかの状態に入ったときにスクリーン・アイコンとして示される選択可能オプションとして提供される。たとえば、電源をオンにしたときに、BIOSがデフォルトの立ち上がりを第2の状態701に設定するよう該BIOSを構成することができる。いったん第2の状態に入ると、別の状態700に入るには、ユーザからのキー入力が必要とされる。これには、パスワードの入力によって、またはユーザがスマート・カードをスマート・カード・リーダ103に挿入することによって、ユーザのアイデンティティを確認することを含めることができる。
【0091】
コンピューティング・エンティティがいったん信用状態以外の状態、たとえば第2の状態701または第3の状態702に入ると、ユーザをこの状態から別の状態にナビゲートすることができる。たとえば、キーボード上でキーを打ち込む通常の入力動作によって、またはモニタを見ながらポインティング・デバイスの信号入力を使用することによって、ユーザを第2の状態701から第3の状態702にナビゲートすることができる(このとき、通常はBIOSが再び参照される)。これについては、新規状態選択プロセス708として概略的に示されている。
【0092】
信用状態700に入るためには、コンピュータ・エンティティを、電源オン後の最初のプロセス704でブートするか、またはリブート・プロセス705でBIOSを介してリブートしなければならない。リブート・プロセス705は、コンピューティング・エンティティの電源をオフにしてから再度オンにするということを行わずに入ることができるという点を除いて、ブート・プロセス704と非常によく似ている。信用状態700を出るには、コンピューティング・エンティティは、BIOSを再び参照しなければならず、このことは、監視プロセス706において信用構成要素202による自動監視を必要とする。同様に、プロセス705においてBIOSを介してリブートするためには、監視プロセス706における信用構成要素による自動監視を必要とする。
【0093】
信用状態700を出るには、電源オフ・プロセス707で電源をオフにするか、またはリブート・プロセス705でコンピューティング・エンティティをリブートしないと、信用状態から出られない。リブート・プロセス705でBIOSをリブートするには、信用構成要素による自動監視706を必要とする。いったん信用状態から出ると、リブート・プロセス705でコンピューティング・エンティティをリブートするか、または電源をオフにした後にプロセス704でコンピューティング・エンティティをブートしないと、信用状態に再度入ることはできない。どちらの場合も、監視プロセス706での信用構成要素による自動監視を必要とする。
【0094】
図8を参照すると、1つまたは複数の状態を介してナビゲートするコンピュータ・エンティティのユーザが従う使用モデルが概略的に示されている。ステップ800では、コンピューティング・エンティティの電源をオンにした後、コンピュータは、BIOSプログラムを介してブートする。ブート・プロセスは、既存の状態からコンピュータをリブートするのに非常によく似ている。どちらの場合も、マイクロプロセッサ201の制御は、BIOS構成要素301によって把握されている。信用構成要素202は、BIOS301から一組の保全性測定基準信号を測定し、BIOS301の状態を判断する。ステップ801では、グラフィカル・ユーザ・インターフェースが、複数の異なる状態に入るためのメニュー・オプションを表示する。メニュー上に表示される状態の1つが、上記で説明した信用状態である。ユーザは、グラフィカル・ユーザ・インターフェースのキーボードまたはポインティング・デバイスを使用して(たとえば、グラフィカル・ユーザ・インターフェース上に表示される状態アイコン上にあるポインタ・アイコンをクリックすることによって)、どの状態に入るかを手動で選択する。代替的に、スマートカードを使用して、またはネットワーク接続を介して、BIOSによって生成される状態選択オプションから状態を自動的に選択することができる。状態を選択した後、BIOSは、その状態に対応する選択されたオペレーティング・システムをロードするプログラムをロードする。複数の異なる可能な状態のそれぞれについて、異なるロード・プログラムが使用される。信用構成要素は、広義にBIOSを測定する方法と同様の方法でプログラムを測定する。信用構成要素は、どの状態がロードされたかを記録し、判断することができる。外部エンティティが、信用構成要素に、保全性測定基準を供給するよう要求したとき、信用構成要素は、BIOS測定基準とロードされたプログラムの測定基準の両方を供給する。
【0095】
ステップ802において、コンピューティング・エンティティは、選択された状態に入る。いったん選択された状態に入ると、ユーザは、その状態の物理的および論理的資源のセットにアクセスできる。たとえば、比較的安全でない状態の場合、ユーザは、コンピューティング・エンティティを含むモデム・デバイスを介したインターネットへの全アクセスを有し、1つまたは複数のハード・ディスク・ドライブまたはCDリーダ/ライタへの全アクセスを有し、フロッピィ・ディスク・ドライブへの全アクセスを有し、さらに、事前にロードされている市販の複数のアプリケーション・プログラムへのアクセスを有することができる。他方で、ユーザが比較的信用レベルの高い信用状態を選択すると、その状態においてユーザが利用できるのは、1つのオペレーティング・システムと、たとえばワード・プロセッサ、課金パッケージ、またはデータベースなどの限定された一組のアプリケーションである。また、印刷デバイスの使用は可能であるが、その状態では、ハード・ディスク・ドライブ、フロッピィ・ディスク・ドライブ、またはインターネットの使用を制約することができる。
【0096】
コンピュータがブートされることのできる個々の状態のそれぞれの選択は、BIOS構成要素301を構成することによって事前に構成されることができる。状態の選択は、BIOSによってユーザに示される。いったん状態が選択されると、BIOSは、オペレーティング・システムのローディング・プログラムを呼び出すことにより、該選択された状態がロードされるようにする。状態そのものは、ローディングおよび関連するオペレーティング・システムによって事前に構成されている。信用状態に入るときは、BIOS構成要素301の動作(監視プロセス706における信用構成要素による監視も含む)を介してその状態に入る。信用状態に入るために、ユーザは、ステップ804でコンピュータ・プラットフォームをブートするかまたはリブートしなければならない。同様に、信用状態から出る場合も、ユーザはステップ804でコンピューティング・エンティティをブートまたはリブートしなければならない。信用レベルの低い状態、例えば第2の状態(701)または第3の状態(702)からナビゲートするには、ユーザは、ステップ805でその状態から別の状態にナビゲートすることができるが、その場合、ベストモードでは、BIOSを介したコンピューティング・エンティティのリブートが必要とされる。
【0097】
図9を参照すると、ブート・プロセス704またはリブート・プロセス705を介して状態に入るための、コンピューティング・エンティティによって実行されるプロセス・ステップが概略的に示されている。
【0098】
ステップ900では、コンピューティング・エンティティの電源をオンにした結果として、またはリセット命令信号をユーザが入力した結果として(たとえば、グラフィカル・ユーザ・インターフェース上に表示されるリセット・アイコン上のポインタ・アイコンをクリックして、リセット信号を発生させることによって)、コンピュータはブート・ルーチンに入る。リセット信号は、内部バス304を監視する信用構成要素によって受け取られる。ステップ901で、BIOS構成要素301が、コンピュータ・プラットフォームのブート・プロセスを開始する。信用構成要素202は、コンピュータ・プラットフォームの状態をチェックするために、コンピュータ・プラットフォームに関する複数の保全性チェック、特にBIOS構成要素301のチェックを行う。保全性チェックは、BIOS構成要素のダイジェスト(digest)を読み取ることによって実行される。信用構成要素202は、BIOSの状態を監視するよう動作し、該BIOSの状態を、第三者のエンティティに報告することができる。これにより、第三者のエンティティは、該コンピューティング・エンティティに割り振ることのできる信用レベルを決定することが可能となる。
【0099】
BIOSの保全性測定基準の測定を実現するには、いくつかの方法がある。それぞれのケースにおいて、信用構成要素は、コンピュータ・プラットフォームのブート・プロセスのかなり早い時期に、BIOSファイルのダイジェストを取得することができる。その例を以下に示す。
【0100】
1)BIOS構成要素を、信用構成要素202の一部として設けることができる。この場合、図3に示されたアーキテクチャは、BIOS301が信用構成要素202内に存在するよう修正される。
【0101】
2)コンピュータ・プラットフォームの第1のプロセッサ201は、リセットの直後に、内部ファームウェア構成要素を実行させることができる。内部ファームウェア構成要素は、BIOSファイルによって占有される、事前設定されたメモリ空間上のダイジェストを算出することができる。第1のプロセッサは、事前設定されたメモリ空間にダイジェストを書き込むが、信用構成要素のメモリ空間に書き込むことができるのはファームウェア構成要素だけである。第1のプロセッサは、コンピュータ・プラットフォームをブートするために、BIOSファイルを読み取る。信用構成要素は、その後いつでも、BIOSダイジェスト・データを取得するために、該メモリ空間内の事前設定された位置からデータを読み取ることができる。
【0102】
3)信用構成要素は、BIOS301によって占有されるメモリ位置においてアドレスされることができる。こうして、信用構成要素には、第1のプロセッサ201がリセットされた後にアクセスされる第1の固有の命令セットが含まれる。これらの命令は、コンピュータ・プラットフォームの第1のプロセッサ201に、BIOSのダイジェストを算出させて、それを、信用構成要素に格納させる。BIOSのダイジェストが信用構成要素内に格納されると、信用構成要素は、制御をBIOS301に渡す。
【0103】
4)信用構成要素は、メモリ制御ラインおよびリセット・ラインを監視し、コンピュータ・プラットフォームがリセットした後にアクセスされる第1のメモリ位置にBIOS構成要素301がいることを検証することができる。ブート・プロセスの何らかの段階で、BIOSは信用構成要素に制御を渡し、信用構成要素は、コンピュータ・プラットフォームの第1のプロセッサに、BIOSのダイジェストを算出させて、該ダイジェストを該信用構成要素に返させる。ダイジェストを算出してその結果を信用構成要素に書き込むプロセスは、アトミック(atomic)でなければならない。このアクションは信用構成要素によって開始されることができ、コンピュータ・プラットフォームのプロセッサに、信用構成要素から固有の命令セットを読み取らせる。その後、該プロセッサに、BIOSによって占有されるメモリ空間上のダイジェストを算出させ、さらに信用構成要素によって占有されるメモリ空間にダイジェスト・データを書き込ませる。代替的には、このアクションを信用構成要素によって開始することができる。その場合、プラットフォームの第1のプロセッサに命令を実行させ、該プロセッサは、BIOSによって占有されている事前設定されたメモリ空間上のダイジェストを算出し、そのダイジェストを、該信用構成要素によって占有されている事前設定されたメモリ空間に書き込む。
【0104】
5)選択されたオペレーティング・システムをロードするためのローディング・プログラムは、それ自体が、BIOSプログラムによってロードされる。オペレーティング・システムのローディング・プログラムの保全性測定基準も、ローディング・プログラムのダイジェストを算出することによって測定される。
【0105】
一実施形態では、信用構成要素202が、コンピュータ・プラットフォームの個々の構成要素、特にハード・ディスク・ドライブ203、マイクロプロセッサ201、およびRAM301に問い合わせて、該これらの構成要素から、該構成要素の状態および条件を記述したデータ信号を直接取得する。信用構成要素202は、コンピュータ・エンティティの複数の構成要素から受け取った測定基準信号と、信用構成要素によるアクセス用に予約されたメモリ領域内に格納されている、事前に記録された測定基準データとを比較することができる。コンピュータ・プラットフォームの構成要素から受け取った信号が、それらのメモリ内に格納された測定基準データに適合したならば、信用構成要素202は、コンピュータ・プラットフォームが正しく動作しているということの確証として出力信号を提供する。第三者、たとえばコンピューティング・エンティティと通信している他のコンピューティング・エンティティは、この出力信号を、コンピューティング・エンティティが正しく動作している、すなわち信用されるものであるということの確証として受け取ることができる。
【0106】
ステップ903では、BIOSが、モニタ100上のメニュー表示を生成し、信用状態700を含む状態選択オプションをユーザに提示する。ユーザは、グラフィカル・ユーザ・インターフェースへのキー入力またはマウス105などのポインティング・デバイスを使用したデータ入力を実行することで、どの状態に入るかを入力する。BIOSは、ステップ904で、どの状態にブートするかを指示するキー入力をユーザから受け取る。信用構成要素は、状態を選択するユーザのキー入力に加えて、人間が物理的に起動する必要のある確認キー104からの別の入力を必要とすることもある。この場合、コンピュータ・エンティティの内部バス304をバイパスし、信用構成要素202に直接アクセスすることとなる。BIOS301が、どの状態が要求されたかを指示する必要なキー入力を受け取ると、BIOS301に格納された構成命令セットの処理がマイクロプロセッサ201によって発生し、BIOSファイル内に格納されている状態オプション・セットのいずれか1つを指示する。これにより、コンピュータ・プラットフォームは、自身をそのように構成する。コンピュータ・プラットフォームがブートすることのできる複数の状態選択のそれぞれは、別々のブート・オプションとしてBIOS301内に格納されることができる。ブート・オプションの選択は、コンピューティング・エンティティのユーザによって実行されたキーストロークによる入力または他のグラフィカルなユーザ入力に応答して制御される。BIOSファイル301の正しいルーチンがユーザによって選択されると、ステップ906で、BIOSファイルは、コンピュータ・プラットフォームのメモリ領域に格納されたオペレーティング・システムのロード・プログラムに制御を解放し、これにより、選択された状態のオペレーティング・システムへのコンピュータ・プラットフォームのブートが起動される。オペレーティング・システムのロード・プログラムには、状態を開始するための複数の起動ルーチンが含まれており、さらに該起動ルーチンには、選択された状態に対応する特定のオペレーティング・システムを起動するためのルーチンが含まれている。オペレーティング・システムのロード・プログラムは、コンピュータ・プラットフォームを、選択された状態にブートする。オペレーティング・システムは、ステップ907で、オペレーティング・システムを導入するのに使用されるロード・プログラムの測定基準を測定する。
【0107】
選択された状態に入ると、信用構成要素202は、ステップ908において、進行中の連続ベースでさらに保全性チェック測定を実行し、選択された状態を連続的に監視して、矛盾、障害、およびその状態で通常予測されるコンピュータ・プラットフォームの動作との相違を探す。こうした保全性測定は、信用構成要素202が呼びかけ信号をコンピュータ・プラットフォームの個々の構成要素に送信すること、および、該コンピュータ・プラットフォームの個々の構成要素から応答信号を受け取ることによって実行される。信用構成要素は、この応答信号を、信用構成要素のメモリに格納されたそれらの特定状態に対応する予め決められて事前にロードされた予測応答信号のセットと比較することができる。または、信用構成要素202は、コンピュータ・プラットフォームが選択された状態に入ると同時に、選択された状態のコンピュータ・プラットフォームから測定される保全性測定基準と、初期に測定された一組の保全性測定基準とを比較することができる。こうして、進行ベースで、それら初期に記録されたものに対する保全性測定基準のいかなる変更をも検出することができる。
【0108】
ブート手順が実行されている間に、信用構成要素は、BIOS構成要素によって実行されるブート・プロセスを監視するけれども、ブート・プロセスを制御する必要はない。信用構成要素は、ブート手順の初期段階で、BIOS構成要素301のダイジェストの値を獲得する。代替実施形態の中には、BIOS構成要素によるブートが開始される前に、信用構成要素が、コンピュータ・プラットフォームの制御を把握することを必要とするものがある。しかし、本明細書に記載されたベストモードの実施の代替的な形態では、信用構成要素はブート・プロセスの制御を取得する必要はないが、信用構成要素は、コンピュータ・プラットフォーム、特にBIOS構成要素301を監視する。コンピュータ・プラットフォームを監視することによって、信用構成要素は、コンピュータをブートするのにどのBIOSオプションが使用されたか、およびどのオペレーティング・システムが選択されたかを記述するデータを格納する。信用構成要素は、オペレーティング・システムを導入するのに使用されるローディング・プログラムをも監視する。
【0109】
ここで、本発明に従う第1の固有の動作モードにおける信用状態にあるコンピュータ・エンティティの動作の一例について説明する。
【0110】
図10および図11を参照すると、複数のユーザ・セッションに及ぶ、信用状態におけるコンピューティング・エンティティの使用、たとえば連続2日間にわたり、セッション間においてコンピューティング・エンティティの電源をオフにするかまたはリブートするコンピューティング・エンティティの使用を示す図が概略的に示されている。
【0111】
図10を参照すると、前述したように、第1のブート・プロセス1000で、ユーザは、コンピューティング・エンティティを信用状態700にブートする。この信用状態において、ユーザは、コンピューティング・エンティティの使用である第1のセッション1001を開始する。コンピュータ・プラットフォームが信用状態にブートされたので、このセッション内では、その信用状態にいるユーザは、論理的および物理的資源の予め決められたセットを使用することができる。典型的には、これには、オペレーティング・システムへのアクセス、およびアプリケーションの所定の選択が含まれる。信用状態に適用される信用レベルは、信用状態にいるユーザが使用可能な物理的および論理的資源の数、複雑さ、および信頼性に応じて変化する。たとえば、信用状態が、周知の信頼性のあるオペレーティング・システム、たとえばUNIXを使用するように構成され、かつ信頼性のあるワード・プロセッシング・パッケージを使用するよう構成されており、たとえばモデムへのアクセスは無く、出力データへのアクセスは単一の書込み装置ドライブ(たとえばCDライター)に制限されているというように、信用状態で許可されているコンピュータ・プラットフォームの周辺デバイスへのアクセスが最小限である場合、これは比較的高い信用を有することができる。より多くの機構が使用可能な他の信用状態においては、信用レベルは、物理的または論理的資源へのアクセスがより厳しく制限されている信用状態の信用レベルとは異なる。しかし、それぞれの信用状態は、機構へのアクセスが事前に決められていて周知であり、該アクセスが信用構成要素202によって検証されるることができるという特徴を持つ。第1のセッション1001中に、ユーザは、信用状態で使用可能なアプリケーション1002を呼び出し、ユーザ・データ1003を、たとえばキーボード・デバイスを介して入力することができる。ユーザ・データ1003は、処理動作1004のアプリケーション1002に従って処理され、その結果、処理済みユーザ・データ1005が出力される。
【0112】
セッションの間、コンピュータ・プラットフォーム、オペレーティング・システム、およびアプリケーションを使用することによって、ユーザは、セッション内での特定の使用のために、アプリケーションおよび/またはオペレーティング・システムを再構成することができる。たとえば、ワード・プロセッサのアプリケーションについて、文書を、一定の行間隔、フォント・スタイルなどを使って書式設定しておくことができる。信用状態を出るときにこれらの設定が失われることのないように、セッション中に、こうしたセッション・データ1006を構成する設定値を格納することができる。同様に、セッション中にユーザが行った努力が失われないように、セッション中に、出力ユーザ・データを格納することができる。しかし、ユーザ・セッション1001は、信用状態が存在している間だけしか信用状態にない。したがって、信用状態700の第1のセッション1001からの設定およびデータが失われないように、出力ユーザ・データおよびセッション・データは、信用状態を出る前に、それぞれ格納済み出力ユーザ・データ1007および格納済みセッション・データ1008として格納しなければならない。格納済み出力ユーザ・データ1007および格納済みセッション・データ1008は、さらに連続するセッションで使用するために、信用状態で使用可能なデバイス、たとえばハード・ディスク・ドライブ203またはCDリーダ/ライタの周辺機器に保存することができ、または暗号化および符号化した後に、ネットワークを介してアクセスされるリモート位置に保存することができる。ユーザ・データおよびセッション・データの符号化は、信用構成要素および/またはユーザのスマート・カードによって実行されることが好ましい。
【0113】
信用状態から出るには、第1のユーザ・セッション1001を閉じ、リブート・プロセス705を介してコンピューティング・エンティティをリブートするか、または電源オフ・プロセス707を介してコンピューティング・エンティティの電源を切る必要がある。信用状態の第1のユーザ・セッションでは、ユーザ入力のデータ処理が発生し、プロセスの出力は処理済みデータ出力である。処理済みデータ出力は、データの処理が終了した後であってセッションが終了する前、かつ信用状態を出る前に格納される。
【0114】
図11を参照すると、同じ信用状態700の第2のセッションの、2日目のコンピューティング・エンティティの動作を示す図が概略的に示されている。第1のセッションおよび第2のセッションの間で、コンピューティング・エンティティが信用状態700を出るため、信用状態700は完全に消滅する。信用状態700を出ると、格納済み出力ユーザ・データおよび格納済みセッション・データは別として、コンピュータ・プラットフォームは、BIOS301、ローディング・プログラム、および信用構成要素202に事前プログラミングされる情報以外には、信用状態に関する情報を保存しない。したがって、実際的には、電源オフまたはリブート時に、信用状態700は存在しなくなる。しかし、ブート・プロセスまたはリブート・プロセスの新しい動作によって、信用状態700に再度入る能力は、コンピューティング・エンティティの機能の中に残っている。前述したように、信用状態には、第2のブート・プロセス1100を介して入る。信用状態に入ると、第2のセッション1101が開始される。第2のセッション1101中に、オペレーティング・システム、アプリケーション、およびコンピュータ・プラットフォームの使用可能な機構は、第1のセッションで前に使用可能だった物理的および論理的資源の同じセットが選択される。しかし、第2のセッションにおけるこれらの機構の使用は、ユーザのキーストローク指示に従って変えることができる。第2のセッション1101には、第1のセッション1001の続きを効率よく含めることができる。ユーザは、以前と同じアプリケーション1002を呼び出し、第2のセッション1101で、第1のセッション中に実行した作業を効率よく続行することができる。しかし、信用状態を出るには、コンピュータ・プラットフォームが、その信用状態中に発生したすべてのイベントの記憶を完全に消失する必要がある。したがって、状態から出た後に、信用状態が再起動されて新しいセッションが開始されると、アプリケーション1002には、それ以前の構成に関する記憶がなくなっている。したがって、アプリケーションを再構成するためには(たとえば行間隔および書式の設定を保存するためには)、第1のセッション1001の終わりに生成された格納済み出力セッション・データ1008を、第2のセッション1101に入力しなければならない。また、格納済み出力ユーザ・データ1007として格納された出力ユーザ・データ1005は、そのデータに関する作業を続行するために、第2のセッション1101に再入力されなければならない。格納済みセッション・データ1008およびユーザ・データ1007は、第1のセッションの続きとして第2のセッションを構成するために、記憶媒体から取り出して復号および認証した後、信用状態にローディングされることができる。好ましくは、スマート・カードまたは記憶媒体からインポートされたユーザ・データおよびセッション・データに対しては、そのデータがロードされる前に、信用構成要素によって保全性測定チェックが実行される。第2のセッション1101中に、プロセス1103では、ユーザによってさらなるユーザ・データ1102が入力される。さらに、該さらなるデータは、第1の格納済み出力セッション・データ1008に従って構成されたアプリケーション1002に従って、第1の格納済み出力データ1007と共に処理される。第2のセッション1101中にデータの処理1103が行われた結果、新規の出力ユーザ・データ1104が生じる。第2のセッションにおいて使用されたアプリケーションまたはオペレーティング・システムの構成が第2のセッション中に変更されると、新規セッション・データ1105が生じる。第1のセッションの場合と同様に、アプリケーション・プログラムおよびオペレーティング・システムの設定を失わずに、また第2のセッション中に実行された作業の利点を失わずにセッションを閉じるために、新規セッション・データ1105および新規出力ユーザ・データ1104の両方を格納する必要がある。これらのデータは、それぞれ格納済み新規出力ユーザ・データ1106および格納済み新規セッション・データ1107として格納される。
【0115】
第2のセッションの終わりに、第2のセッションで実行した作業を保存した後でセッションを閉じ、電源オフ・プロセスまたはリブート・プロセス705、707を介して信用状態から出る。格納済みセッション・データ1107および格納済み出力ユーザ・データ1106以外の、信用状態および第2のセッションのすべての記憶が、コンピュータ・プラットフォームから失われる。
【0116】
上記の例は、日付けが異なる連続する第1のセッションおよび第2のセッションでコンピュータを使用する特定の例であることは理解されよう。これらのセッション間で使用する場合、コンピューティング・エンティティは、信用の程度が異なる複数の異なる状態、異なる目的、および異なる動作で使用されることができる。信用レベルが低い動作状態、たとえば第2および第3の状態(「非信用」状態)においては、コンピュータ・エンティティは、状態間で遷移してもそのデータ構成の記憶を失うことがない。前述の動作に従い、信用状態700は何回でも起動されることができ、いくつものセッションを実行することができる。しかし、いったん信用状態から出ると、信用状態は、前のセッションの記憶を失う。信用状態のいかなる構成も、データ1003、1102の新規入力、または以前に格納されたセッション・データまたはユーザ・データ1007、1008、1106、1107の入力によるものでなければならない。
【0117】
本発明に従う前述の特定の実施態様、特定の方法、特定の実施形態および動作モードでは、信用状態が、すべてが周知の状態にある処理セットを実行するコンピュータ・プラットフォームを含む。処理は、セッションが信用状態で動作している間中、信用構成要素202により継続して監視されることができる。
【0118】
図12を参照すると、信用構成要素202自体がユーザによって再構成可能な、信用状態の第2の動作モードが概略的に示されている。第2の動作モードでは、構成要素自体が再構成されることのできる信用状態にコンピュータ・プラットフォームがいるときに適用される測定基準を記述した所定のデータ・セットを、信用構成要素が格納する。前述したように、ブート・プロセス704またはリブート・プロセス705を介して信用状態1200に入る。信用状態では、ステップ1201で、ユーザが、信用構成要素の構成メニューを呼び出すコマンドを入力する。信用構成要素の構成メニューには、メモリ内に格納された命令セットが含まれており、これには、信用状態を介してのみアクセスすることができる。メニューを変更するために、様々なレベルまたはセキュリティを適用することができる。たとえば、ステップ1202で、ユーザは、安全保護パスワード、たとえば数字および英字または他の文字を含むパスワードを入力する必要がある。
【0119】
信用構成要素は、信用状態にある間にコンピュータ・プラットフォームから測定された保全性測定基準と、信用構成要素が自身のメモリ領域内に格納する事前に格納された一組の保全性測定基準とを比較することによって、信用構成要素が再構成されることのできる信用状態を監視する。信用構成要素は、コンピュータ・プラットフォームが、信用構成要素が再構成されることのできる信用状態にあるときに、信用構成要素によって測定された保全性測定基準が、信用構成要素独自のメモリ内に事前に格納された値に適合し、それによってコンピュータ・プラットフォームが信用状態で正しく動作していることを検証しない限り、ユーザに信用構成要素202の再構成を許可することはできない。測定されたコンピュータ・プラットフォームの保全性測定基準が、信用構成要素独自の内部メモリに格納された、信用構成要素が再構成されることのできる信用状態の予め決められた値に適合しないことを検出した場合、信用構成要素は、信用構成要素のユーザ再構成を拒否する。
【0120】
追加として、または任意選択で、ユーザは、ステップ1203で、スマート・カードをスマート・カード・リーダ103に挿入するよう要求されることができる。その後、信用構成要素は、スマート・カード・インターフェース305を介してスマート・カードからデータを読み取ることによって、ユーザのアイデンティティを検証する。さらにユーザは、図3を参照して述べたように、ステップ1204で確認キー104を起動して信用構成要素202に直接入力することによって、自身の存在の物理的な確認を入力するよう要求されることができる。たとえば、どのオペレーティング・システムを使用するか、およびどのアプリケーションを使用するかなど、信用状態を記述するデータをスマート・カードに格納し、コンピュータ・プラットフォームを信用状態にブートするのに使用することができる。
【0121】
パスワード、スマート・カードによる検証、および/または確認キーの起動を含むセキュリティ・チェックが信用構成要素によって受け入れられると、ステップ1205では、信用構成要素202の制御下で、グラフィカル・ユーザ・インターフェースにファイル構成メニューを表示する。ステップ1206では、ユーザがメニューを使用して信用構成要素の再構成を実行することができる。適用されるセキュリティのレベル(これは、信用構成要素の構成メニューの実施に固有のものである)に応じて、ユーザは、メニュー自体にデータを入力するときに、さらにパスワードを入力し、さらに確認キーを起動しなければならないことができる。ステップ1207でユーザは、信用構成要素の再構成を終えて信用構成要素の再構成メニューから出る。
【0122】
信用構成要素の構成メニューでは、ユーザは、信用構成要素の動作を再構成することができる。たとえばユーザは、コンピュータ・プラットフォームの監視に使用される保全性測定基準を変更することができる。
【0123】
信用構成要素独自のメモリ内に、ある状態における複数の保全性測定基準に対応する予め決められたダイジェスト・データを格納することによって、コンピュータ・プラットフォームがブートされる状態のダイジェスト・データと比較することができるデータを信用構成要素に設けることができる。これにより、信用構成要素は、コンピュータ・プラットフォームが、許可されていない状態にブートされていないことをチェックすることができる。
【0124】
信用構成要素は、主に、コンピュータ・プラットフォームのブートを監視する。コンピュータ・プラットフォームが、許可されていない状態にブートした場合、信用構成要素はコンピュータ・プラットフォームを制御する必要はない。しかし、任意選択で、コンピュータ・プラットフォームが、許可されていないまたは認識されていない状態にブートした場合、信用構成要素は、コンピュータ・プラットフォームを制御することを可能にするソフトウェアを、信用構成要素内に設けることができる。
【0125】
信用状態にあるとき、ユーザは、該信用状態で使用するための新しいアプリケーションを使用することを認証することができた場合は、その信用状態で使用する該新しいアプリケーションをロードすることができる。これには、必要なアプリケーションの署名データをユーザが信用構成要素に入力し、該アプリケーションを信用状態にロードするときに、信用構成要素がその署名を使用してアプリケーションを検証することができるようにする必要がある。信用構成要素は、実際にアプリケーションをロードする前に、アプリケーションの署名と、ユーザが信用構成要素にロードしておいた署名とが同じであるかどうかをチェックする。セッションの終わりに、アプリケーションは、プラットフォームからすべて失われる。信用状態にあるセッションは、一時メモリ、たとえばランダム・アクセス・メモリ内にのみ存在し、これは、信用状態から出るときにはリセットされる。
【0126】
前述の実施態様では、ディスプレイ・ユニットへのビデオ経路内に信用構成要素が存在するコンピュータ・エンティティについて説明してきた。しかし、本発明は、ディスプレイ・ユニットへのビデオ経路内に存在する信用構成要素に依存するものではなく、当業者であれば、前述のベストモードの実施態様が、本発明によって存在することが可能な大規模な実施の典型的な例であることを理解されよう。
【0127】
前述のベストモードの実施形態では、複数の状態から1つの状態を選択するためのオプション・セットがユーザに示され、特定の所望の状態を入力するにはユーザ入力が必要とされる動作方法について説明してきた。たとえば、コンピュータ・プラットフォームの状態に対応して、使用する必要のある特定タイプのオペレーティング・システムを指定するには、ユーザ入力を必要とする場合がある。特定の実施形態の他の動作モードでは、コンピュータ・プラットフォームの予め決められた動作状態を選択するためのデータをスマート・カードに格納することができる。このデータは、コンピュータ・プラットフォーム間で転送可能であり、コンピュータ・プラットフォームを所定の必要な状態にブートするのにこのデータを使用することができる。スマート・カードは、BIOSによって提示される状態選択オプションのセットに応答し、提供された複数の状態選択肢から1つを選択する。BIOSには利用可能な状態選択肢が含まれており、ローディング・プログラムのセットが、状態を提供する様々なオペレーティング・システムを実際に導入する。この動作モードでは、信用構成要素の第1のメモリ領域内に格納される所定の状態を記述したデータ、およびコンピュータ・プラットフォームを、要求された所定の状態にブートするためにそのデータを信用構成要素から取得するBIOSシステム以外に、スマート・カード・リーダに挿入されたスマート・カードの情報にアクセスすることができる。
【0128】
1つまたは複数の所定の状態を選択するためのデータによって事前に構成されたこのようなスマート・カードを使用することにより、スマート・カードを携帯しているユーザは、このような任意のコンピューティング・エンティティを起動する。本明細書で述べたように、ユーザ・セッションが起こった後、コンピューティング・エンティティは状態の記録を全く保持しないという知識により、信用構成要素およびコンピュータ・プラットフォームを、ユーザが指定した所定の状態にすることができる。同様に、図10および図11を参照しながら述べたように、セッション中に生成された任意の出力ユーザ・データまたは構成データを、スマート・カードによって検証することができる。このカードをユーザが携帯して、他の異なるコンピューティング・エンティティを同じ状態にブートし、異なるコンピューティング・エンティティ上でセッションを続行して、コンピューティング・エンティティが所定の状態の永久的な記録を保持することなく、また、コンピューティング・エンティティが所定の状態の処理済みユーザ・データまたはセッション構成データを保持することなく、取り出すべきユーザ・データまたはセッション・データに関する任意の情報を検証することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に従う、コンピュータ・エンティティを示す概略図。
【図2】図1のコンピュータ・エンティティの選択された構成要素の接続を示す概略図。
【図3】図1のコンピュータ・エンティティの構成要素のハードウェア・アーキテクチャを示す概略図。
【図4】図1のコンピュータ・エンティティを構成する信用構成要素のアーキテクチャを示す概略図。
【図5】コンピュータ・プラットフォーム上に存在する被監視ユーザ空間と、信用構成要素上に存在する信用空間とに分けられた、コンピュータ・エンティティの論理アーキテクチャを示す概略図。
【図6】コンピュータ・エンティティを構成する物理的および論理的資源のセットを示す概略図であって、個々の物理的および論理的資源の用途およびアクセス可能度の様々な組み合わせが、コンピューティング・エンティティの異なる状態における動作に対応することを示す図。
【図7】コンピューティング・エンティティが置かれることのできる状態セットと、該状態への出入りに関するプロセスとを示す状態図の一例を示す概略図。
【図8】コンピューティング・エンティティのユーザが、コンピューティング・エンティティの個々の状態を出入りするために従う使用モデルを示す概略図。
【図9】信用状態に入るためのプロセスのステップを示す概略図。
【図10】第1のセッションがユーザによって実行される、信用状態にあるコンピューティング・エンティティの第1の動作モードを示す概略図。
【図11】信用状態で実行され、かつ第1のセッション終了後に実行される第2のセッションを示す概略図。
【図12】ユーザが信用構成要素の再構成を実行することができる、コンピュータ・エンティティの第2の動作モードを示す概略図。

Claims (13)

  1. 第1のデータ処理手段および第1のメモリ手段を有するコンピュータ・プラットフォームと、第2のデータ処理手段および第2のメモリ手段を有する監視構成要素とを備えるコンピューティング・エンティティを、該コンピュータ・プラットフォームが起動されることができる複数の事前に構成された動作状態のうち1つの動作状態に起動させる方法であって、
    前記コンピュータ・プラットフォームが起動される前記複数の事前に構成された動作状態のうち、1つの状態を選択するステップと、
    格納された命令セットに従って、前記コンピュータ・プラットフォームを前記選択された状態に起動するステップと、
    前記コンピュータ・プラットフォームが前記複数の事前に構成された状態のうちのどの状態に起動されたかを記述するデータを記録することによって、前記監視構成要素が、前記選択された状態への起動を監視するステップとを、含み、
    前記監視するステップは、
    前記選択された状態に起動するステップの後、複数の論理的および物理的構成要素を監視して、該構成要素から、該構成要素の状態および条件を記述する測定基準データ信号の第1セットを取得するステップと、
    前記測定基準データ信号の第1のセットと、前記監視構成要素のアクセス用に予約されたメモリ領域に格納された、事前に記録された測定基準データのセットとを比較するステップと、を含む、
    前記方法。
  2. 前記監視構成要素は、前記コンピュータ・プラットフォームが前記状態に起動された後も前記選択された状態の監視を続行する、請求項1に記載の方法。
  3. 前記複数の事前に構成された動作状態から1つの状態を選択する前記ステップは、スマートカード・デバイスから選択信号を受け取ることを含み、該選択信号が、前記コンピュータ・プラットフォームのBIOSに、該コンピュータ・プラットフォームを選択された状態に起動するよう命令する、請求項に記載の方法。
  4. 前記監視構成要素は、前記コンピューティング・エンティティのユーザによる前記監視構成要素への直接的な信号入力に応答して、前記コンピュータ・プラットフォームが前記状態のうちどの状態に入ったかを示す状態信号を生成する、請求項に記載の方法。
  5. 前記複数の事前に構成された状態から1つの状態を選択するため、ユーザ・インターフェース上に表示されるユーザ・メニューを生成するステップを含み、状態信号を生成する前記ステップが、前記ユーザ・インターフェースを介して受け取られたユーザ入力に応答して状態信号を生成することを含む、請求項に記載の方法。
  6. 前記格納された命令セットが、前記監視構成要素内に存在するBIOSファイルに格納される、請求項に記載の方法。
  7. 前記複数の事前に構成された状態から1つの状態を選択するためのメニューを生成するステップを含む、請求項に記載の方法。
  8. 複数の事前に構成された動作状態のうち、1つの状態を選択する前記ステップは、ネットワーク接続から選択メッセージを受け取ることを含み、該選択メッセージが、前記コンピュータ・プラットフォームのBIOSに、前記コンピュータ・プラットフォームを選択された状態に起動するよう命令する、請求項に記載の方法。
  9. 選択された状態への起動を監視する前記ステップは、
    前記コンピュータ・プラットフォームを起動する直前に、前記コンピュータ・プラットフォームのBIOSファイルによって占有される第1の事前に割り振られたメモリ空間のダイジェスト・データを、ファームウェア構成要素によって作成するステップと、
    前記ファームウェア構成要素だけが書込みアクセスを有する第2の事前に割り振られたメモリ空間に、前記ダイジェスト・データを書き込むステップとを含み、
    前記監視構成要素は、前記ダイジェスト・データに基づいて前記コンピュータ・プラットフォームを監視する、請求項に記載の方法。
  10. 選択された状態への起動を監視する前記ステップは、前記コンピュータ・プラットフォームのBIOSファイルのダイジェスト・データを算出するために、ファームウェア構成要素を実行するステップと、
    前記監視構成要素の前記第2のメモリ手段における予め決められた位置に、前記ダイジェスト・データを書き込むステップとを含み、前記監視構成要素は、前記ダイジェスト・データに基づいて前記コンピュータ・プラットフォームを監視する、請求項に記載の方法。
  11. 前記選択された状態に起動するステップは、
    前記コンピュータ・プラットフォームのBIOSファイルによって占有される前記第1のメモリ手段のメモリ位置に、前記第1のプロセッサの制御を前記監視構成要素に転送する該監視構成要素のアドレスを格納するステップと、
    前記第1のプロセッサをリセットした直後に、アクセス可能な固有の命令セットを前記監視構成要素に格納し、該固有の命令セットが、前記第1のプロセッサに前記BIOSファイルのダイジェストを算出させて、前記ダイジェスト・データを前記監視構成要素の前記第2のメモリ手段に格納するよう命令するステップと、を含み、
    前記ダイジェスト・データが前記第2のメモリ手段に格納されたならば、前記監視構成要素は、前記起動プロセスの制御を前記BIOSファイルに渡し、前記ダイジェスト・データに基づいて前記コンピュータ・プラットフォームを監視する、請求項に記載の方法。
  12. 前記コンピュータ・プラットフォームが信用状態にあったとき生成され記憶媒体に格納された第1セッションのデータを、該コンピュータ・プラットフォームが前記信用状態と同じ信用状態に起動されるとき、第2セッションを構成するため、記憶媒体からローディングするステップを更に含む請求項1に記載の方法。
  13. 前記記憶媒体からローディングされる前記データを、前記監視構成要素が監視する請求項12に記載の方法。
JP2001530670A 1999-09-17 2000-09-19 コンピューティング・プラットフォームにおける信用状態の動作 Expired - Lifetime JP4865177B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP99307380A EP1085396A1 (en) 1999-09-17 1999-09-17 Operation of trusted state in computing platform
EP99307380.8 1999-09-17
PCT/GB2000/003613 WO2001027722A1 (en) 1999-09-17 2000-09-19 Operation of trusted state in computing platform

Publications (2)

Publication Number Publication Date
JP2003511783A JP2003511783A (ja) 2003-03-25
JP4865177B2 true JP4865177B2 (ja) 2012-02-01

Family

ID=8241625

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001530670A Expired - Lifetime JP4865177B2 (ja) 1999-09-17 2000-09-19 コンピューティング・プラットフォームにおける信用状態の動作

Country Status (4)

Country Link
US (1) US7302698B1 (ja)
EP (1) EP1085396A1 (ja)
JP (1) JP4865177B2 (ja)
WO (1) WO2001027722A1 (ja)

Families Citing this family (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1056014A1 (en) 1999-05-28 2000-11-29 Hewlett-Packard Company System for providing a trustworthy user interface
EP1076279A1 (en) 1999-08-13 2001-02-14 Hewlett-Packard Company Computer platforms and their methods of operation
GB9922665D0 (en) 1999-09-25 1999-11-24 Hewlett Packard Co A method of enforcing trusted functionality in a full function platform
US7162035B1 (en) 2000-05-24 2007-01-09 Tracer Detection Technology Corp. Authentication method and system
US6976162B1 (en) 2000-06-28 2005-12-13 Intel Corporation Platform and method for establishing provable identities while maintaining privacy
US7793111B1 (en) 2000-09-28 2010-09-07 Intel Corporation Mechanism to handle events in a machine with isolated execution
GB2376763B (en) 2001-06-19 2004-12-15 Hewlett Packard Co Demonstrating integrity of a compartment of a compartmented operating system
US7818808B1 (en) 2000-12-27 2010-10-19 Intel Corporation Processor mode for limiting the operation of guest software running on a virtual machine supported by a virtual machine monitor
GB2372595A (en) 2001-02-23 2002-08-28 Hewlett Packard Co Method of and apparatus for ascertaining the status of a data processing environment.
GB2372592B (en) 2001-02-23 2005-03-30 Hewlett Packard Co Information system
EP1384126A2 (en) * 2001-04-24 2004-01-28 Hewlett-Packard Company An information security system
GB2376313A (en) * 2001-06-04 2002-12-11 Hewlett Packard Co Indicating to a user if they are connected to a trusted computer platform
GB2376764B (en) 2001-06-19 2004-12-29 Hewlett Packard Co Multiple trusted computing environments
GB2378013A (en) * 2001-07-27 2003-01-29 Hewlett Packard Co Trusted computer platform audit system
DE10142537A1 (de) * 2001-08-30 2003-03-20 Adp Gauselmann Gmbh Verfahren zur Aktivierung einer in einem Gehäuse angeordneten Steuereinheit, die gegen ein Ausspähen von Daten geschützt ist
US7024555B2 (en) 2001-11-01 2006-04-04 Intel Corporation Apparatus and method for unilaterally loading a secure operating system within a multiprocessor environment
CN100410900C (zh) * 2001-11-05 2008-08-13 中国科学院计算技术研究所 向计算机内部存储器核心空间植入安全功能模块的方法
GB2382419B (en) * 2001-11-22 2005-12-14 Hewlett Packard Co Apparatus and method for creating a trusted environment
US7124273B2 (en) 2002-02-25 2006-10-17 Intel Corporation Method and apparatus for translating guest physical addresses in a virtual machine environment
US7631196B2 (en) 2002-02-25 2009-12-08 Intel Corporation Method and apparatus for loading a trustable operating system
US7069442B2 (en) 2002-03-29 2006-06-27 Intel Corporation System and method for execution of a secured environment initialization instruction
JP4387687B2 (ja) * 2002-04-26 2009-12-16 キヤノン株式会社 画像処理装置、制御方法、及びプログラム
US6820177B2 (en) 2002-06-12 2004-11-16 Intel Corporation Protected configuration space in a protected environment
US7392415B2 (en) * 2002-06-26 2008-06-24 Intel Corporation Sleep protection
US7216369B2 (en) * 2002-06-28 2007-05-08 Intel Corporation Trusted platform apparatus, system, and method
US7882162B2 (en) * 2002-08-08 2011-02-01 Hewlett-Packard Development Company, L.P. Rapid access to data on a powered down personal computer
GB2392262A (en) 2002-08-23 2004-02-25 Hewlett Packard Co A method of controlling the processing of data
US8171567B1 (en) 2002-09-04 2012-05-01 Tracer Detection Technology Corp. Authentication method and system
US7974416B2 (en) * 2002-11-27 2011-07-05 Intel Corporation Providing a secure execution mode in a pre-boot environment
US7900017B2 (en) 2002-12-27 2011-03-01 Intel Corporation Mechanism for remapping post virtual machine memory pages
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
GB2399902A (en) * 2003-03-28 2004-09-29 Hewlett Packard Development Co Security in trusted computing systems
US8108500B2 (en) * 2003-06-13 2012-01-31 Broadcom Corporation Probing-based auto moding
CA2435655A1 (en) * 2003-07-21 2005-01-21 Symbium Corporation Embedded system administration
US7530103B2 (en) * 2003-08-07 2009-05-05 Microsoft Corporation Projection of trustworthiness from a trusted environment to an untrusted environment
US8079034B2 (en) 2003-09-15 2011-12-13 Intel Corporation Optimizing processor-managed resources based on the behavior of a virtual machine monitor
US7739521B2 (en) 2003-09-18 2010-06-15 Intel Corporation Method of obscuring cryptographic computations
US20050080934A1 (en) 2003-09-30 2005-04-14 Cota-Robles Erik C. Invalidating translation lookaside buffer entries in a virtual machine (VM) system
US8156343B2 (en) 2003-11-26 2012-04-10 Intel Corporation Accessing private data about the state of a data processing machine from storage that is publicly accessible
US8037314B2 (en) 2003-12-22 2011-10-11 Intel Corporation Replacing blinded authentication authority
US20050182701A1 (en) * 2004-02-12 2005-08-18 International Business Machines Corporation Method, system, and service for tracking and billing for technology usage
US7802085B2 (en) 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
US7620949B2 (en) 2004-03-31 2009-11-17 Intel Corporation Method and apparatus for facilitating recognition of an open event window during operation of guest software in a virtual machine environment
JP4144880B2 (ja) * 2004-04-09 2008-09-03 インターナショナル・ビジネス・マシーンズ・コーポレーション プラットフォーム構成測定装置、プログラム及び方法、プラットフォーム構成認証装置、プログラム及び方法、プラットフォーム構成証明装置、プログラム及び方法、並びに、プラットフォーム構成開示装置、プログラム及び方法
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
CN100351731C (zh) * 2004-04-30 2007-11-28 联想(北京)有限公司 一种安全计算机及其实现方法
WO2005109360A1 (en) * 2004-05-10 2005-11-17 Hani Girgis Secure pin entry using personal computer
US7568225B2 (en) 2004-09-08 2009-07-28 Hewlett-Packard Development Company, L.P. System and method for remote security enablement
US7840962B2 (en) 2004-09-30 2010-11-23 Intel Corporation System and method for controlling switching between VMM and VM using enabling value of VMM timer indicator and VMM timer value having a specified time
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US8146078B2 (en) 2004-10-29 2012-03-27 Intel Corporation Timer offsetting mechanism in a virtual machine environment
US8176564B2 (en) 2004-11-15 2012-05-08 Microsoft Corporation Special PC mode entered upon detection of undesired state
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
US8464348B2 (en) 2004-11-15 2013-06-11 Microsoft Corporation Isolated computing environment anchored into CPU and motherboard
US8924728B2 (en) 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
US20060137008A1 (en) * 2004-12-16 2006-06-22 Intel Corporation Techniques for providing secure communication modes
US7979702B2 (en) * 2004-12-29 2011-07-12 Intel Corporation Protecting privacy of networked devices containing management subsystems
US8533777B2 (en) 2004-12-29 2013-09-10 Intel Corporation Mechanism to determine trust of out-of-band management agents
US8799428B2 (en) * 2004-12-30 2014-08-05 Intel Corporation Automated provisioning of new networked devices
US7395405B2 (en) 2005-01-28 2008-07-01 Intel Corporation Method and apparatus for supporting address translation in a virtual machine environment
US7681226B2 (en) 2005-01-28 2010-03-16 Cisco Technology, Inc. Methods and apparatus providing security for multiple operational states of a computerized device
US20060218649A1 (en) * 2005-03-22 2006-09-28 Brickell Ernie F Method for conditional disclosure of identity information
US8539587B2 (en) 2005-03-22 2013-09-17 Hewlett-Packard Development Company, L.P. Methods, devices and data structures for trusted data
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
CA2504333A1 (en) * 2005-04-15 2006-10-15 Symbium Corporation Programming and development infrastructure for an autonomic element
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US9436804B2 (en) 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
US8353046B2 (en) 2005-06-08 2013-01-08 Microsoft Corporation System and method for delivery of a modular operating system
US8201240B2 (en) * 2005-09-16 2012-06-12 Nokia Corporation Simple scalable and configurable secure boot for trusted mobile phones
US7809957B2 (en) 2005-09-29 2010-10-05 Intel Corporation Trusted platform module for generating sealed data
US8443158B2 (en) * 2005-10-25 2013-05-14 Harris Corporation Mobile wireless communications device providing data management and security features and related methods
JP2007128244A (ja) * 2005-11-02 2007-05-24 Sony Corp 情報処理方法および装置、記録媒体、並びにプログラム
US8014530B2 (en) 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
US8041947B2 (en) 2006-03-23 2011-10-18 Harris Corporation Computer architecture for an electronic device providing SLS access to MLS file system with trusted loading and protection of program execution memory
US8127145B2 (en) 2006-03-23 2012-02-28 Harris Corporation Computer architecture for an electronic device providing a secure file system
US8060744B2 (en) 2006-03-23 2011-11-15 Harris Corporation Computer architecture for an electronic device providing single-level secure access to multi-level secure file system
US7979714B2 (en) 2006-06-02 2011-07-12 Harris Corporation Authentication and access control device
JP4950195B2 (ja) * 2006-07-03 2012-06-13 パナソニック株式会社 証明装置、検証装置、検証システム、コンピュータプログラム及び集積回路
WO2008018055A2 (en) * 2006-08-09 2008-02-14 Neocleus Ltd Extranet security
GB0620928D0 (en) * 2006-10-20 2006-11-29 Vodafone Plc Boot process
US20080098478A1 (en) * 2006-10-20 2008-04-24 Redcannon, Inc. System, Method and Computer Program Product for Administering Trust Dependent Functional Control over a Portable Endpoint Security Device
US8291480B2 (en) 2007-01-07 2012-10-16 Apple Inc. Trusting an unverified code image in a computing device
US8254568B2 (en) 2007-01-07 2012-08-28 Apple Inc. Secure booting a computing device
US8239688B2 (en) 2007-01-07 2012-08-07 Apple Inc. Securely recovering a computing device
WO2008114257A2 (en) * 2007-03-21 2008-09-25 Neocleus Ltd. Protection against impersonation attacks
WO2008114256A2 (en) * 2007-03-22 2008-09-25 Neocleus Ltd. Trusted local single sign-on
US9336387B2 (en) * 2007-07-30 2016-05-10 Stroz Friedberg, Inc. System, method, and computer program product for detecting access to a memory device
CA2625274C (en) 2007-12-13 2018-11-20 Kevin Gerard Boyce Method and system for protecting a computer system during boot operation
US8474037B2 (en) 2008-01-07 2013-06-25 Intel Corporation Stateless attestation system
US9274573B2 (en) * 2008-02-07 2016-03-01 Analog Devices, Inc. Method and apparatus for hardware reset protection
US8555336B1 (en) 2008-03-27 2013-10-08 Mcafee, Inc. System, method, and computer program product for a pre-deactivation grace period
US8443451B2 (en) * 2008-03-27 2013-05-14 George Madathilparambil George Manually controlled application security environments
US20090260050A1 (en) * 2008-04-14 2009-10-15 George Madathilparambil George Authenticating device for controlling application security environments
US8150039B2 (en) 2008-04-15 2012-04-03 Apple Inc. Single security model in booting a computing device
US7995196B1 (en) 2008-04-23 2011-08-09 Tracer Detection Technology Corp. Authentication method and system
EP2286333A4 (en) * 2008-06-05 2012-08-08 Neocleus Israel Ltd SAFE MULTIPURPOSE COMPUTER CLIENT
JP5282477B2 (ja) * 2008-08-12 2013-09-04 富士通株式会社 認証方法、プログラム、及び認証装置
US20100070776A1 (en) * 2008-09-17 2010-03-18 Shankar Raman Logging system events
US9166797B2 (en) * 2008-10-24 2015-10-20 Microsoft Technology Licensing, Llc Secured compartment for transactions
JP5328389B2 (ja) * 2009-01-21 2013-10-30 キヤノン株式会社 画像形成装置、画像形成システム、及び画像形成方法
US9026803B2 (en) * 2009-11-30 2015-05-05 Hewlett-Packard Development Company, L.P. Computing entities, platforms and methods operable to perform operations selectively using different cryptographic algorithms
CN102685153B (zh) * 2011-03-07 2017-07-14 腾讯科技(深圳)有限公司 资源平台开放第三方服务的方法及资源平台
WO2013077890A1 (en) * 2011-11-22 2013-05-30 Intel Corporation Collaborative processor and system performance and power management
US9355228B2 (en) * 2012-07-13 2016-05-31 Angel Secure Networks, Inc. System and method for policy driven protection of remote computing environments
US9135446B2 (en) * 2012-09-28 2015-09-15 Intel Corporation Systems and methods to provide secure storage
US10409980B2 (en) * 2012-12-27 2019-09-10 Crowdstrike, Inc. Real-time representation of security-relevant system state
US20150052616A1 (en) 2013-08-14 2015-02-19 L-3 Communications Corporation Protected mode for securing computing devices
US9710126B2 (en) * 2013-10-17 2017-07-18 Blackberry Limited Method and apparatus for displaying a preview of an application to a user
US8756417B1 (en) * 2014-02-04 2014-06-17 Sypris Electronics, Llc Multi-level assurance trusted computing platform
US9413765B2 (en) * 2014-03-25 2016-08-09 Intel Corporation Multinode hubs for trusted computing
US9621948B2 (en) * 2015-01-29 2017-04-11 Universal Electronics Inc. System and method for prioritizing and filtering CEC commands
JP6931184B2 (ja) * 2017-05-16 2021-09-01 コニカミノルタ株式会社 画像形成装置およびプログラム
US11343230B2 (en) * 2020-06-09 2022-05-24 Dell Products L.P. Method for configuring device resources based on network identification and system therefor
US20220004635A1 (en) * 2021-09-21 2022-01-06 Intel Corporation Computing peripheral interface management mechanism
US11921868B2 (en) 2021-10-04 2024-03-05 Bank Of America Corporation Data access control for user devices using a blockchain
CN115174210A (zh) * 2022-06-30 2022-10-11 珠海奔图电子有限公司 可信报告生成方法和电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03103930A (ja) * 1989-09-18 1991-04-30 Nec Corp Os切替え方式
JPH0756719A (ja) * 1993-07-30 1995-03-03 Microsoft Corp 最後にブートに成功した既知のシステム構成データ・セットを用いたコンピュータ・システムのブート方法および装置

Family Cites Families (168)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB204412A (en) 1922-06-30 1923-10-01 Hugh Snowie Jones Improvements in and relating to locking means for suspender clips for stockings, socks and the like
US4747040A (en) * 1985-10-09 1988-05-24 American Telephone & Telegraph Company Dual operating system computer
US5038281A (en) 1986-09-19 1991-08-06 International Business Machines Corporation Acceleration of system interrupts between operating systems in guest-host relationship
US4799156A (en) 1986-10-01 1989-01-17 Strategic Processing Corporation Interactive market management system
GB2222899B (en) 1988-08-31 1993-04-14 Anthony Morris Rose Securing a computer against undesired write operations or from a mass storage device
US4984272A (en) 1988-11-30 1991-01-08 At&T Bell Laboratories Secure file handling in a computer operating system
US4926476A (en) 1989-02-03 1990-05-15 Motorola, Inc. Method and apparatus for secure execution of untrusted software
US4962533A (en) 1989-02-17 1990-10-09 Texas Instrument Incorporated Data protection for computer systems
US5278973A (en) * 1989-03-27 1994-01-11 Unisys Corporation Dual operating system computer
US5048085A (en) 1989-10-06 1991-09-10 International Business Machines Corporation Transaction system security method and apparatus
US5029206A (en) 1989-12-27 1991-07-02 Motorola, Inc. Uniform interface for cryptographic services
US5261104A (en) * 1990-03-22 1993-11-09 International Business Machines Flexible computer initialization
US5325529A (en) * 1990-05-18 1994-06-28 Compaq Computer Corporation External boot information loading of a personal computer
US5396635A (en) * 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
US5032979A (en) 1990-06-22 1991-07-16 International Business Machines Corporation Distributed security auditing subsystem for an operating system
US5204961A (en) 1990-06-25 1993-04-20 Digital Equipment Corporation Computer network operating with multilevel hierarchical security with selectable common trust realms and corresponding security protocols
US5136711A (en) * 1990-10-17 1992-08-04 Ast Research System for multiple access hard disk partitioning
US5414860A (en) * 1991-01-29 1995-05-09 International Business Machines Incorporated Power management initialization for a computer operable under a plurality of operating systems
JPH06214670A (ja) * 1991-04-29 1994-08-05 Intel Corp コンピュータ装置およびそれを初期化する方法
US5504814A (en) 1991-07-10 1996-04-02 Hughes Aircraft Company Efficient security kernel for the 80960 extended architecture
JPH0736175B2 (ja) * 1991-10-11 1995-04-19 インターナショナル・ビジネス・マシーンズ・コーポレイション データ処理システムのシステム構成設定方法、データ処理システム、及びデータ処理システム用拡張ユニット
AU3777593A (en) * 1992-02-26 1993-09-13 Paul C. Clark System for protecting computers via intelligent tokens or smart cards
JP2986299B2 (ja) * 1992-04-15 1999-12-06 インターナショナル・ビジネス・マシーンズ・コーポレイション 周辺装置接続検出システム
US5610981A (en) * 1992-06-04 1997-03-11 Integrated Technologies Of America, Inc. Preboot protection for a data security system with anti-intrusion capability
US5235642A (en) 1992-07-21 1993-08-10 Digital Equipment Corporation Access control subsystem and method for distributed computer system using locally cached authentication credentials
AU5469794A (en) 1992-11-16 1994-06-08 Stephen Weeks Information distribution systems, particularly tour guide systems
US5379342A (en) * 1993-01-07 1995-01-03 International Business Machines Corp. Method and apparatus for providing enhanced data verification in a computer system
US5440723A (en) 1993-01-19 1995-08-08 International Business Machines Corporation Automatic immune system for computers and computer networks
US5497494A (en) * 1993-07-23 1996-03-05 International Business Machines Corporation Method for saving and restoring the state of a CPU executing code in protected mode
US5548763A (en) * 1993-07-26 1996-08-20 International Business Machines Corporation Desk top computer system having multi-level power management
US5444850A (en) * 1993-08-04 1995-08-22 Trend Micro Devices Incorporated Method and apparatus for controlling network and workstation access prior to workstation boot
US5680452A (en) 1993-10-18 1997-10-21 Tecsec Inc. Distributed cryptographic object method
US5771354A (en) 1993-11-04 1998-06-23 Crawford; Christopher M. Internet online backup system provides remote storage for customers using IDs and passwords which were interactively established when signing up for backup services
US5504910A (en) * 1994-02-02 1996-04-02 Advanced Micro Devices, Inc. Power management unit including software configurable state register and time-out counters for protecting against misbehaved software
GB9408405D0 (en) * 1994-04-28 1994-06-22 Int Computers Ltd High availibilty computer system
US5473692A (en) 1994-09-07 1995-12-05 Intel Corporation Roving software license for a hardware agent
US5530758A (en) 1994-06-03 1996-06-25 Motorola, Inc. Operational methods for a secure node in a computer network
US5483649A (en) * 1994-07-01 1996-01-09 Ybm Technologies, Inc. Personal computer security system
US5652868A (en) * 1994-09-27 1997-07-29 International Business Machines Corporation Data processor having BIOS decryption of emulated media images
US6421776B1 (en) * 1994-10-14 2002-07-16 International Business Machines Corporation Data processor having BIOS packing compression/decompression architecture
US5627964A (en) * 1994-12-13 1997-05-06 Microsoft Corporation Reduce or fail-safe bootstrapping of a system having a graphical user interface
US5748964A (en) 1994-12-20 1998-05-05 Sun Microsystems, Inc. Bytecode program interpreter apparatus and method with pre-verification of data type restrictions
US5495569A (en) * 1994-12-30 1996-02-27 Compaq Computer Corp. Circuit for ensuring that a local interrupt controller in a microprocessor is powered up active
US5555373A (en) * 1995-02-06 1996-09-10 International Business Machines Corporation Inactivity monitor for trusted personal computer system
US5892900A (en) 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US6157719A (en) 1995-04-03 2000-12-05 Scientific-Atlanta, Inc. Conditional access system
JP3262689B2 (ja) 1995-05-19 2002-03-04 富士通株式会社 遠隔操作システム
US5758174A (en) * 1995-06-07 1998-05-26 International Business Machines Corporation Computer system having a plurality of stored system capability states from which to resume
US5754646A (en) 1995-07-19 1998-05-19 Cable Television Laboratories, Inc. Method for protecting publicly distributed software
KR970022703A (ko) * 1995-10-18 1997-05-30 김광호 보안 기능을 구비한 컴퓨터 시스템 및 보안방법
US5787175A (en) 1995-10-23 1998-07-28 Novell, Inc. Method and apparatus for collaborative document control
US5910180A (en) * 1995-11-21 1999-06-08 Diamond Multimedia Systems, Inc. Context virtualizing device driver architecture
CA2187855A1 (en) * 1995-12-12 1997-06-13 Albert Joseph Marcel Bissonnette Method and device for securing computers
US6678712B1 (en) * 1996-01-19 2004-01-13 International Business Machines Corporation Method and system for executing a program under one of a plurality of mutually exclusive operating environments
DK0885417T3 (da) 1996-02-09 2002-11-11 Digital Privacy Inc Adgangskontrol-/-kryptosystem
US6012080A (en) 1996-03-27 2000-01-04 Lucent Technologies Inc. Method and apparatus for providing enhanced pay per view in a video server
KR100198382B1 (ko) * 1996-05-07 1999-06-15 윤종용 멀티-부팅 기능을 갖는 컴퓨터 장치
US5892906A (en) * 1996-07-19 1999-04-06 Chou; Wayne W. Apparatus and method for preventing theft of computer devices
US5841869A (en) 1996-08-23 1998-11-24 Cheyenne Property Trust Method and apparatus for trusted processing
US5692124A (en) 1996-08-30 1997-11-25 Itt Industries, Inc. Support of limited write downs through trustworthy predictions in multilevel security of computer network communications
US5892902A (en) * 1996-09-05 1999-04-06 Clark; Paul C. Intelligent token protected system with network authentication
US5889989A (en) 1996-09-16 1999-03-30 The Research Foundation Of State University Of New York Load sharing controller for optimizing monetary cost
US5844986A (en) * 1996-09-30 1998-12-01 Intel Corporation Secure BIOS
US6519623B1 (en) * 1996-10-31 2003-02-11 International Business Machines Corporation Generic semaphore for concurrent access by multiple operating systems
US6023765A (en) 1996-12-06 2000-02-08 The United States Of America As Represented By The Secretary Of Commerce Implementation of role-based access control in multi-level secure systems
US6367012B1 (en) 1996-12-06 2002-04-02 Microsoft Corporation Embedding certifications in executable files for network transmission
US7607147B1 (en) 1996-12-11 2009-10-20 The Nielsen Company (Us), Llc Interactive service device metering systems
US5845068A (en) 1996-12-18 1998-12-01 Sun Microsystems, Inc. Multilevel security port methods, apparatuses, and computer program products
GB9626241D0 (en) * 1996-12-18 1997-02-05 Ncr Int Inc Secure data processing method and system
DE69734968T2 (de) 1996-12-20 2006-07-27 International Business Machines Corp. Vermittlungssystem mit verteilten Elementen zur Verbindung mit Leitungsanpassern und mit Mehrfachübertragungsmöglichkeit
US5953422A (en) * 1996-12-31 1999-09-14 Compaq Computer Corporation Secure two-piece user authentication in a computer network
US6047373A (en) * 1997-01-02 2000-04-04 Intel Corporation Method and apparatus for setting the operating parameters of a computer system
EP1013023B1 (en) * 1997-02-13 2005-10-26 Walter A. Helbig, Sr. Security coprocessor for enhancing computer system security
US5922074A (en) 1997-02-28 1999-07-13 Xcert Software, Inc. Method of and apparatus for providing secure distributed directory services and public key infrastructure
US5903721A (en) 1997-03-13 1999-05-11 cha|Technologies Services, Inc. Method and system for secure online transaction processing
US5978912A (en) * 1997-03-20 1999-11-02 Phoenix Technologies Limited Network enhanced BIOS enabling remote management of a computer without a functioning operating system
US5887163A (en) * 1997-04-04 1999-03-23 Compaq Computer Corporation Method and apparatus for providing dual booting capabilities to a computer system
US5859911A (en) * 1997-04-16 1999-01-12 Compaq Computer Corp. Method for the secure remote flashing of the BIOS of a computer
US5860001A (en) * 1997-05-19 1999-01-12 International Business Machines Corporation Computer system having at least two boot sequences
US6275848B1 (en) 1997-05-21 2001-08-14 International Business Machines Corp. Method and apparatus for automated referencing of electronic information
US6513156B2 (en) 1997-06-30 2003-01-28 Sun Microsystems, Inc. Interpreting functions utilizing a hybrid of virtual and native machine instructions
US6272631B1 (en) 1997-06-30 2001-08-07 Microsoft Corporation Protected storage of core data secrets
EP0893751A1 (en) 1997-07-18 1999-01-27 Irdeto B.V. Integrated circuit and method for secure data processing by means of this integrated circuit
DE19827432C2 (de) * 1997-07-25 2001-07-26 Siemens Ag Verfahren zur Speicherung von Rechner-Zustandsdaten bei einem Störfall, der ein anschließendes Wieder-Hochfahren des Rechners erfordert
DE69724946T2 (de) 1997-07-31 2004-08-12 Siemens Ag Programmvermietungssystem und Verfahren zur Vermietung von Programmen
KR100502400B1 (ko) * 1997-07-31 2005-11-03 삼성전자주식회사 복수의주변저장장치선택제어기능을갖는컴퓨터및그선택제어방법
US6304970B1 (en) * 1997-09-02 2001-10-16 International Business Mcahines Corporation Hardware access control locking
US6076118A (en) * 1997-09-30 2000-06-13 Micron Electronics, Inc. Attachment or integration of a BIOS device into a computer system using the system memory address and data bus
US6185678B1 (en) * 1997-10-02 2001-02-06 Trustees Of The University Of Pennsylvania Secure and reliable bootstrap architecture
US6148387A (en) * 1997-10-09 2000-11-14 Phoenix Technologies, Ltd. System and method for securely utilizing basic input and output system (BIOS) services
US6081894A (en) 1997-10-22 2000-06-27 Rvt Technologies, Inc. Method and apparatus for isolating an encrypted computer system upon detection of viruses and similar data
US6671716B1 (en) 1997-11-28 2003-12-30 International Business Machines Corporation Processing extended transactions in a client-server system
US6098158A (en) * 1997-12-18 2000-08-01 International Business Machines Corporation Software-enabled fast boot
US5935251A (en) * 1997-12-22 1999-08-10 Hewlett Packard Company Method and apparatus expedited log-on to an application program
GB2336918A (en) 1998-01-22 1999-11-03 Yelcom Limited Apparatus and method for allowing connection to a network
US6560706B1 (en) * 1998-01-26 2003-05-06 Intel Corporation Interface for ensuring system boot image integrity and authenticity
US5987605A (en) * 1998-02-28 1999-11-16 Hewlett-Packard Co. Methods and apparatus for dual-boot memory selection, update, and recovery in a programmable device
US6360282B1 (en) 1998-03-25 2002-03-19 Network Appliance, Inc. Protected control of devices by user applications in multiprogramming environments
US6067618A (en) * 1998-03-26 2000-05-23 Innova Patent Trust Multiple operating system and disparate user mass storage resource separation for a computer system
US6067559A (en) 1998-04-23 2000-05-23 Microsoft Corporation Server architecture for segregation of dynamic content generation applications into separate process spaces
US6175917B1 (en) * 1998-04-23 2001-01-16 Vpnet Technologies, Inc. Method and apparatus for swapping a computer operating system
US6173417B1 (en) * 1998-04-30 2001-01-09 Intel Corporation Initializing and restarting operating systems
US6243809B1 (en) * 1998-04-30 2001-06-05 Compaq Computer Corporation Method of flash programming or reading a ROM of a computer system independently of its operating system
US6408391B1 (en) 1998-05-06 2002-06-18 Prc Inc. Dynamic system defense for information warfare
US6496847B1 (en) * 1998-05-15 2002-12-17 Vmware, Inc. System and method for virtualizing computer systems
US6505300B2 (en) 1998-06-12 2003-01-07 Microsoft Corporation Method and system for secure running of untrusted content
US6735696B1 (en) * 1998-08-14 2004-05-11 Intel Corporation Digital content protection using a secure booting method and apparatus
US6230285B1 (en) * 1998-09-08 2001-05-08 Symantec Corporation Boot failure recovery
US6178503B1 (en) * 1998-09-11 2001-01-23 Powerquest Corporation Managing multiple operating systems on a single computer
WO2000019324A1 (en) 1998-09-28 2000-04-06 Argus Systems Group, Inc. Trusted compartmentalized computer operating system
US6308264B1 (en) * 1998-09-30 2001-10-23 Phoenix Technologies Ltd. Dual use master boot record
US6591229B1 (en) 1998-10-09 2003-07-08 Schlumberger Industries, Sa Metrology device with programmable smart card
US7194092B1 (en) 1998-10-26 2007-03-20 Microsoft Corporation Key-based secure storage
US6327652B1 (en) 1998-10-26 2001-12-04 Microsoft Corporation Loading and identifying a digital rights management operating system
US6393556B1 (en) 1998-10-30 2002-05-21 Intel Corporation Apparatus and method to change processor privilege without pipeline flush
US6138239A (en) 1998-11-13 2000-10-24 N★Able Technologies, Inc. Method and system for authenticating and utilizing secure resources in a computer system
US6205547B1 (en) * 1998-11-20 2001-03-20 Intel Corporation Computer system management apparatus and method
US6530024B1 (en) 1998-11-20 2003-03-04 Centrax Corporation Adaptive feedback security system and method
US6330669B1 (en) * 1998-11-30 2001-12-11 Micron Technology, Inc. OS multi boot integrator
US6484262B1 (en) * 1999-01-26 2002-11-19 Dell Usa, L.P. Network controlled computer system security
US6353885B1 (en) * 1999-01-26 2002-03-05 Dell Usa, L.P. System and method for providing bios-level user configuration of a computer system
US6317798B1 (en) * 1999-02-11 2001-11-13 Hewlett-Packard Company Remote initiation of BIOS console redirection
JP4603167B2 (ja) 1999-02-15 2010-12-22 ヒューレット・パッカード・カンパニー コンピューティング装置のモジュール間通信
GB9905056D0 (en) 1999-03-05 1999-04-28 Hewlett Packard Co Computing apparatus & methods of operating computer apparatus
US20030191957A1 (en) 1999-02-19 2003-10-09 Ari Hypponen Distributed computer virus detection and scanning
GB9904791D0 (en) 1999-03-02 1999-04-28 Smartport Limited An internet interface system
JP4219561B2 (ja) 1999-03-05 2009-02-04 ヒューレット・パッカード・カンパニー 信頼できる計算プラットフォームのためのスマートカード・ユーザインターフェイス
US6727920B1 (en) * 1999-03-11 2004-04-27 Micron Technology, Inc. Multiple operating system quick boot utility
US20020012432A1 (en) 1999-03-27 2002-01-31 Microsoft Corporation Secure video card in computing device having digital rights management (DRM) system
US7136838B1 (en) 1999-03-27 2006-11-14 Microsoft Corporation Digital license and method for obtaining/providing a digital license
US6684326B1 (en) * 1999-03-31 2004-01-27 International Business Machines Corporation Method and system for authenticated boot operations in a computer system of a networked computing environment
US6775779B1 (en) 1999-04-06 2004-08-10 Microsoft Corporation Hierarchical trusted code for content protection in computers
EP1049036A2 (en) 1999-04-29 2000-11-02 Citibank, N.A. System and method for web trading
EP1050803B1 (en) 1999-05-03 2007-01-17 STMicroelectronics S.A. Guarded computer instruction execution
US6446203B1 (en) * 1999-05-24 2002-09-03 International Business Machines Corporation Method and system for selecting from multiple boot code images to be loaded in a data processing system
US6618769B1 (en) 1999-05-27 2003-09-09 Sun Microsystems, Inc. Module-by-module verification
EP1056014A1 (en) 1999-05-28 2000-11-29 Hewlett-Packard Company System for providing a trustworthy user interface
US6477642B1 (en) * 1999-06-18 2002-11-05 Phoenix Technologies Ltd. Method and apparatus for extending BIOS control of screen display beyond operating system boot process
US6401202B1 (en) * 1999-06-18 2002-06-04 Phoenix Technologies Ltd. Multitasking during BIOS boot-up
US6711686B1 (en) * 1999-06-29 2004-03-23 Dell Usa L.P. Security management tool for managing security attributes in computer systems
US6609248B1 (en) 1999-06-30 2003-08-19 Microsoft Corporation Cross module representation of heterogeneous programs
US6948069B1 (en) 1999-07-02 2005-09-20 Time Certain, Llc Method and system for determining and maintaining trust in digital image files with certifiable time
US6892307B1 (en) 1999-08-05 2005-05-10 Sun Microsystems, Inc. Single sign-on framework with trust-level mapping to authentication requirements
EP1076279A1 (en) 1999-08-13 2001-02-14 Hewlett-Packard Company Computer platforms and their methods of operation
US6560726B1 (en) * 1999-08-19 2003-05-06 Dell Usa, L.P. Method and system for automated technical support for computers
US6490677B1 (en) * 1999-09-16 2002-12-03 International Business Machines Corporation Method and system for automatically configuring the boot process of a computer having multiple bootstrap programs within a network computer system
US6393412B1 (en) 1999-09-23 2002-05-21 Peter Deep Method for allowing users to purchase professional services in a private chat room through a service brokerage via the internet
US6487601B1 (en) * 1999-09-30 2002-11-26 International Business Machines Corporation Dynamic mac allocation and configuration
US7213005B2 (en) 1999-12-09 2007-05-01 International Business Machines Corporation Digital content distribution using web broadcasting services
US6757824B1 (en) 1999-12-10 2004-06-29 Microsoft Corporation Client-side boot domains and boot rules
US6701440B1 (en) 2000-01-06 2004-03-02 Networks Associates Technology, Inc. Method and system for protecting a computer using a remote e-mail scanning device
US20010047473A1 (en) 2000-02-03 2001-11-29 Realtime Data, Llc Systems and methods for computer initialization
US20010037450A1 (en) 2000-03-02 2001-11-01 Metlitski Evgueny A. System and method for process protection
GB2361153A (en) 2000-04-04 2001-10-10 Global Knowledge Network Ltd User security, privacy and anonymity on the Internet
US6622018B1 (en) 2000-04-24 2003-09-16 3Com Corporation Portable device control console with wireless connection
US20040073617A1 (en) 2000-06-19 2004-04-15 Milliken Walter Clark Hash-based systems and methods for detecting and preventing transmission of unwanted e-mail
US7669238B2 (en) 2000-06-21 2010-02-23 Microsoft Corporation Evidence-based application security
US6681304B1 (en) 2000-06-30 2004-01-20 Intel Corporation Method and device for providing hidden storage in non-volatile memory
GB0020441D0 (en) 2000-08-18 2000-10-04 Hewlett Packard Co Performance of a service on a computing platform
US6931545B1 (en) 2000-08-28 2005-08-16 Contentguard Holdings, Inc. Systems and methods for integrity certification and verification of content consumption environments
US6757830B1 (en) 2000-10-03 2004-06-29 Networks Associates Technology, Inc. Detecting unwanted properties in received email messages
US6810478B1 (en) * 2000-12-12 2004-10-26 International Business Machines Corporation System for remote booting of muntliple operating systems using chained bootstrap mechanism in a network
GB0102515D0 (en) 2001-01-31 2001-03-21 Hewlett Packard Co Network adapter management
US7076804B2 (en) 2001-05-11 2006-07-11 International Business Machines Corporation Automated program resource identification and association
US20020184520A1 (en) 2001-05-30 2002-12-05 Bush William R. Method and apparatus for a secure virtual machine
WO2003029922A2 (en) 2001-10-01 2003-04-10 Kline & Walker, Llc Pfn/trac system faa upgrades for accountable remote and robotics control
US20030084436A1 (en) 2001-10-30 2003-05-01 Joubert Berger System and method for installing applications in a trusted environment
US20050228743A1 (en) 2004-04-01 2005-10-13 Wave Rules, Llc. Systems and methods of electronic trading using automatic book updates

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03103930A (ja) * 1989-09-18 1991-04-30 Nec Corp Os切替え方式
JPH0756719A (ja) * 1993-07-30 1995-03-03 Microsoft Corp 最後にブートに成功した既知のシステム構成データ・セットを用いたコンピュータ・システムのブート方法および装置

Also Published As

Publication number Publication date
WO2001027722A1 (en) 2001-04-19
EP1085396A1 (en) 2001-03-21
US7302698B1 (en) 2007-11-27
JP2003511783A (ja) 2003-03-25

Similar Documents

Publication Publication Date Title
JP4865177B2 (ja) コンピューティング・プラットフォームにおける信用状態の動作
US10140452B2 (en) Protecting computing devices from unauthorized access
US10181041B2 (en) Methods, systems, and apparatuses for managing a hard drive security system
US8909940B2 (en) Extensible pre-boot authentication
US9658969B2 (en) System and method for general purpose encryption of data
RU2385483C2 (ru) Система и способ использования гипервизора, чтобы управлять доступом к предоставляемой в аренду вычислительной машине
US9520998B2 (en) System and method for recovery key management
US20090319806A1 (en) Extensible pre-boot authentication
EP2583410B1 (en) Single-use authentication methods for accessing encrypted data
US6654888B1 (en) Installing and controlling trial software
US20160342798A1 (en) Protected device management
US8065509B2 (en) Persistent security system and method
US8756667B2 (en) Management of hardware passwords
US9135471B2 (en) System and method for encryption and decryption of data
US20020095557A1 (en) Virtual data storage (VDS) system
JP2004531004A (ja) コンピュータのためのセキュリティシステムおよび方法
JP2007316637A (ja) 個別アプリケーション・プログラム用のスクリーンセーバ
US20110225407A1 (en) System and Method for Recovering From an Interrupted Encryption and Decryption Operation Performed on a Volume
US10146941B2 (en) PC protection by means of BIOS/(U)EFI expansions
US8856550B2 (en) System and method for pre-operating system encryption and decryption of data
JPH07191776A (ja) 機密保護を実現するパーソナル・コンピュータ・システム
US7765407B2 (en) Method and apparatus for providing centralized user authorization to allow secure sign-on to a computer system
KR20010069920A (ko) 인터넷을 이용한 소프트웨어 사용자인증 및 사용량 확인방법
Reinl et al. utimaco SafeGuard Easy Evaluation Documentation
Sivakumar GADGETS AS INVISIBLE KEY FOR PHYSICAL SECURITY IN HUMAN COMPUTER INTERACTION

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070815

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110201

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110427

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110427

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110510

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110517

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110705

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111110

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

Free format text: PAYMENT UNTIL: 20141118

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4865177

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20141118

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20141118

Year of fee payment: 3

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

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

Free format text: PAYMENT UNTIL: 20141118

Year of fee payment: 3

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20141118

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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