(57)【要約】【課題】  コンピュータシステム中の安全機能を監視するセキュリティデバイスを提供する。【解決手段】  セキュリティデバイスは、安全機能に照会して、安全機能の状態が許容できるかどうかを判定する。十分な状態が存在しない場合、または応答が受け取られない場合は、信号を送る。この信号は、安全機能が損なわれたことを任意のユーザに信号伝達するために、聴覚的（ブザー）または視覚的（点滅する光）とすることができる。安全機能が、安全機能とユーザとの間で共有される秘密を含む場合、セキュリティデバイスはこの秘密を信号伝達することができる。安全機能の複数の要素がコンピュータシステム中にある場合、セキュリティデバイスは、安全機能の複数の要素を別々に監視し、それらについて報告することができる。セキュリティデバイスは、コンピュータシステムに関するステータス情報を表示することもできる。【選択図】  図３
2006107455.tif 000002
【特許請求の範囲】
【請求項１】
安全機能を備えるコンピュータシステムと共に使用されるセキュリティデバイスであって、
前記コンピュータシステムに動作可能に接続されており前記コンピュータシステムの前記安全機能にステータスを要求する照会機構と、
前記照会機構に動作可能に接続されたユーザアラート機構とを備え、前記ユーザアラート機構は前記安全機能の不十分な状態が判定された場合に信号伝達し、前記ユーザアラート機構はさらに前記照会機構が前記ステータスを取り出せなかった場合に信号伝達することを特徴とするセキュリティデバイス。
【請求項２】
前記ユーザアラート機構に電力を供給する第１の電源をさらに備えることを特徴とする請求項１に記載のセキュリティデバイス。
【請求項３】
前記ユーザアラート機構は、前記第１の電源の電力が低い場合に信号伝達することを特徴とする請求項２に記載のセキュリティデバイス。
【請求項４】
前記ユーザアラート機構に電力を供給するバックアップ電源をさらに備えることを特徴とする請求項２に記載のセキュリティデバイス。
【請求項５】
前記ユーザアラート機構は、前記第１の電源が切断されたときに信号伝達することを特徴とする請求項４に記載のセキュリティデバイス。
【請求項６】
独立したクロックをさらに備えることを特徴とする請求項１に記載のセキュリティデバイス。
【請求項７】
前記コンピュータシステムの要素と同じ物理的ケースに組み込まれたことを特徴とする請求項１に記載のセキュリティデバイス。
【請求項８】
前記要素は、キーボード、モニタ、ケーシング、マウス、ハブから選択された少なくとも１つを含むことを特徴とする請求項７に記載のセキュリティデバイス。
【請求項９】
前記照会機構は、
前記安全機能にチャレンジを提示するためのチャレンジャと、
前記安全機能からの応答があればそれを受け取るためのレシーバと、
前記応答があればそれを評価して前記応答が不十分かどうかを判定するためのエバリュエータとを備えることを特徴とする請求項１に記載のセキュリティデバイス。
【請求項１０】
前記エバリュエータは、前記安全機能が十分かどうかを判定するために判断サービスに照会することを特徴とする請求項１に記載のセキュリティデバイス。
【請求項１１】
前記判断サービスへの前記照会からの返答をキャッシュすることを特徴とする請求項１０に記載のセキュリティデバイス。
【請求項１２】
相談先となる判断サービスと、前記判断サービスから提供された返答を解釈する際に使用されるパラノイアのレベルとを前記ユーザが指定できるようにすることを特徴とする請求項１０に記載のセキュリティデバイス。
【請求項１３】
前記エバリュエータは、当該の安全コンポーネントに情報を照会し、前記情報を評価のために判断サービスに渡すことを特徴とする請求項１０に記載のセキュリティデバイス。
【請求項１４】
前記エバリュエータは、当該の安全コンポーネントに、前記サービスから秘密の証明可能を得て前記秘密の証明可能判断を前記エバリュエータに返すよう命令することを特徴とする請求項１０に記載のセキュリティデバイス。
【請求項１５】
前記エバリュエータは、当該の安全コンポーネントに情報を照会し、前記情報を評価のために判断サービスに渡すことを特徴とする請求項１０に記載のセキュリティデバイス。
【請求項１６】
前記エバリュエータは、当該の安全コンポーネントに、前記判断サービスから秘密の証明可能判断を得て前記秘密の証明可能判断を前記エバリュエータに返すよう命令することを特徴とする請求項１０に記載のセキュリティデバイス。
【請求項１７】
前記コンピュータシステムへの前記動作可能な接続は、ＵＳＢ接続、シリアルポート接続、１３９４接続、ＳＣＳＩ接続、イーサネット（登録商標）接続から選択された少なくとも１つのタイプの接続を含むことを特徴とする請求項１に記載のセキュリティデバイス。
【請求項１８】
前記ユーザアラート機構による前記信号伝達は、視覚信号、点滅する視覚表示、聴覚信号、１つまたは複数のトーン、触覚信号、振動のうちの１つまたは複数を含むことを特徴とする請求項１に記載のセキュリティデバイス。
【請求項１９】
前記アラートは、前記コンピュータに取り付けられた少なくともいくつかのヒューマンインプットデバイスを、前記ヒューマンインプットデバイスが取り付けられているハブをディセーブルにすることによってディセーブルにすることを含むことを特徴とする請求項１に記載のセキュリティデバイス。
【請求項２０】
前記ヒューマンインプットデバイスのうちの１つに直接に信号伝達することによって前記１つのヒューマンインプットデバイスをディセーブルにすることを特徴とする請求項１７に記載のセキュリティデバイス。
【請求項２１】
前記アラートは中央監視サービスにメッセージを送ることを含むことを特徴とする請求項１に記載のセキュリティデバイス。
【請求項２２】
前記ユーザアラート機構はさらに、
前記安全機能のステータスを示すためのステータスインジケータを備えることを特徴とする請求項１に記載のセキュリティデバイス。
【請求項２３】
前記コンピュータシステムは第１の実行環境および第２の実行環境を備え、前記安全機能は前記第２の実行環境から提供され、前記ステータスインジケータは、前記第１の実行環境がアクティブか前記第２の実行環境がアクティブかを示すことを特徴とする請求項２０に記載のセキュリティデバイス。
【請求項２４】
表示装置を使用して、複数のセキュリティコンポーネントのうちのどれが初期評価に不合格か、進行中の評価に応答できないか、フォーカスを失ったか、および／またはシャットダウンしたかを、ユーザに対して表示することを特徴とする請求項２１に記載のセキュリティデバイス。
【請求項２５】
前記ステータスインジケータは、前記第１の実行環境と前記第２の実行環境のどちらがアクティブかについて変化が生じたことを示すことを特徴とする請求項２１に記載のセキュリティデバイス。
【請求項２６】
前記ステータスインジケータは、前記安全機能がシャットダウンされつつあるときの指示を提供することを特徴とする請求項２０に記載のセキュリティデバイス。
【請求項２７】
前記安全機能は秘密を表示することができ、前記ステータス表示は前記秘密を表示することを特徴とする請求項２０に記載のセキュリティデバイス。
【請求項２８】
前記セキュリティデバイスの動作を変更するためのユーザコマンドを受け取るためのオプションインタフェースをさらに備えることを特徴とする請求項１に記載のセキュリティデバイス。
【請求項２９】
前記安全機能の不十分な状態が判定されなかった場合に、前記オプションインタフェースは前記コンピュータシステムを介して前記ユーザコマンドを受け取ることを特徴とする請求項１に記載のセキュリティデバイス。
【請求項３０】
第１の安全機能を備えるコンピュータシステムの状態に関する情報をユーザに信号伝達する方法であって、
前記第１の安全機能のステータスを前記コンピュータシステムに照会するステップと、
前記照会に対する応答が受け取られなかった場合に第１の信号で前記ユーザに伝達するステップと、
前記コンピュータシステムから不十分な応答が受け取られた場合または応答が受け取られなかった場合に、前記ユーザに信号伝達するステップとを含むことを特徴とする方法。
【請求項３１】
不十分な応答が受け取られた場合または応答が受け取られなかった場合に前記ユーザに信号伝達するステップは、第２の信号を使用して実施されることを特徴とする請求項２８に記載の方法。
【請求項３２】
前記コンピュータシステムに照会するステップは、
暗号チャレンジで前記安全機能にチャレンジすることを含むことを特徴とする請求項２８に記載の方法。
【請求項３３】
不十分な応答が受け取られた場合に前記ユーザに信号伝達するステップは、
前記応答を評価して、前記暗号チャレンジが適切に返答されたかどうかを判定するステップと、
前記暗号チャレンジが適切に返答されなかった場合に、不十分な応答が受け取られたことを前記ユーザに信号伝達するステップとを含むことを特徴とする請求項３０に記載の方法。
【請求項３４】
前記コンピュータシステムにステータスを照会するステップと、応答が受け取られなかった場合に前記ユーザに信号伝達するステップと、不十分な信号が受け取られた場合に前記ユーザに信号伝達するステップとは、少なくとも所定の周期性で行われることを特徴とする請求項２８に記載の方法。
【請求項３５】
前記周期性は１秒につき１度であることを特徴とする請求項２８に記載の方法。
【請求項３６】
電源の電力が低い場合に前記ユーザに信号伝達するステップをさらに含むことを特徴とする請求項２８に記載の方法。
【請求項３７】
前記第１の信号および前記第２の信号はそれぞれ、視覚信号、点滅する視覚表示、聴覚信号、１つまたは複数のトーン、触覚信号、振動、ヒューマンインプットのディセーブル、監視サービスへのメッセージ送信のうちの少なくとも１つまたは複数を含むことを特徴とする請求項２８に記載の方法。
【請求項３８】
前記第１の安全機能のステータスを示すステップをさらに含むことを特徴とする請求項２８に記載の方法。
【請求項３９】
前記コンピュータシステムは第１の実行環境および第２の実行環境を備え、前記第１の実行環境と前記第２の実行環境のどちらかが任意の一時点でアクティブであり、前記第１の安全機能は前記第２の実行環境によって提供され、前記安全機能を示すステップは、
前記第１の実行環境がアクティブか前記第２の実行環境がアクティブかを示すステップを含むことを特徴とする請求項３６に記載の方法。
【請求項４０】
前記第１の安全機能のステータスを示すステップは、
前記第１の実行環境と前記第２の実行環境のどちらがアクティブかについて変化が生じたことを示すステップを含むことを特徴とする請求項３７に記載の方法。
【請求項４１】
前記第１の安全機能のステータスを示すステップは、
前記第１の安全機能がシャットダウンされつつあることを示すステップを含むことを特徴とする請求項３６に記載の方法。
【請求項４２】
前記第１の安全機能は秘密を表示することができ、前記安全機能のステータスを示すステップは前記秘密を表示するステップを含むことを特徴とする請求項３６に記載の方法。
【請求項４３】
前記コンピュータシステムはさらに第２の安全機能を備え、
前記第２の安全機能のステータスを前記コンピュータシステムに照会するステップと、
前記第２の安全機能のステータスを求める前記照会に対して応答が受け取られなかった場合に、第３の信号で前記ユーザに伝達するステップと、
前記第２の安全機能のステータスを求める前記照会に対して不十分な応答が前記コンピュータシステムから受け取られた場合に、第４の信号で前記ユーザに伝達するステップとをさらに含むことを特徴とする請求項２８に記載の方法。
【請求項４４】
前記第２の安全機能は視覚表示装置上の視覚出力の安全を守ることを特徴とする請求項４１に記載の方法。
【請求項４５】
第１の安全機能を備えるコンピュータシステムの状態に関する情報をユーザに信号伝達するためのコンピュータ実行可能命令を含むコンピュータ読み取り可能な記録媒体であって、前記コンピュータ実行可能命令は、
前記第１の安全機能のステータスを前記コンピュータシステムに照会する動作と、
前記照会に対する応答が受け取られたかどうかを判定する動作と、
前記コンピュータシステムから前記照会に対する応答が受け取られなかった場合または不十分な応答が受け取られた場合に、前記ユーザに信号伝達する動作とを含む動作を実施するための命令であることを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項４６】
前記動作は少なくとも所定の周期性で行われることを特徴とする請求項４３に記載のコンピュータ読み取り可能な記録媒体。
【請求項４７】
前記所定の周期性は前記コンピュータシステムから独立したクロックを使用して測定されることを特徴とする請求項４４に記載のコンピュータ読み取り可能な記録媒体。
【請求項４８】
前記信号伝達する動作は１つまたは複数のヒューマンインプットデバイスをディセーブルにすることを含むことを特徴とする請求項４３に記載のコンピュータ読み取り可能な記録媒体。
【請求項４９】
前記応答は判断サービスとの通信に基づいて十分または不十分であると判定されることを特徴とする請求項４３に記載のコンピュータ読み取り可能な記録媒体。
【請求項５０】
前記コンピュータシステムはさらに第２の安全機能を備え、前記動作はさらに、
前記第２の安全機能のステータスを前記コンピュータシステムに照会する動作と、
前記第２の安全機能のステータスを求める前記照会に対して応答が受け取られたかどうかを判定する動作と、
前記第２の安全機能のステータスを求める前記照会に対して応答がない場合または不十分な応答が受け取られた場合に、前記ユーザに信号伝達する動作とを含むことを特徴とする請求項４３に記載のコンピュータ読み取り可能な記録媒体。
【請求項５１】
安全機能を備えるコンピュータシステムのセキュリティを可能にする方法であって、
信用できる配信インフラストラクチャを確立するステップと、
前記信用できる配信インフラストラクチャを介してセキュリティデバイスの少なくとも第１の部分を配信するステップとを含み、前記セキュリティデバイスは、前記コンピュータシステムに動作可能に接続されており前記コンピュータシステムの前記安全機能にステータスを要求する照会機構と、前記照会機構に動作可能に接続されたユーザアラート機構とを備え、前記ユーザアラート機構は前記安全機能の不十分な状態が判定された場合に信号伝達し、前記ユーザアラート機構はさらに前記照会機構が前記ステータスを取り出せなかった場合に信号伝達することを特徴とする方法。
【請求項５２】
セキュリティデバイスの少なくとも第１の部分を配信するステップは、前記セキュリティデバイスの物理的要素を物理的に配信するステップを含むことを特徴とする請求項４９に記載の方法。
【請求項５３】
前記物理的要素は独立したクロックを含むことを特徴とする請求項５０に記載の方法。
【請求項５４】
前記物理的要素は改ざん防止デバイスを含むことを特徴とする請求項５０に記載の方法。
【請求項５５】
前記改ざん防止デバイスは信用性の視覚的指示を含むことを特徴とする請求項５０に記載の方法。
【請求項５６】
セキュリティデバイスの少なくとも第１の部分を配信するステップは、前記セキュリティデバイスに関するソフトウェアコードを配信するステップを含むことを特徴とする請求項４９に記載の方法。
【請求項５７】
前記ソフトウェアコードの信用性は暗号によって検証可能であることを特徴とする請求項５４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般にコンピュータセキュリティの分野に関する。より詳細には、本発明は、コンピュータシステムの内部状態の信用性またはセキュリティを反映する、独立して信頼できる状態インジケータに関する。
【背景技術】
【０００２】
近年のコンピューティングでは、コンピュータ上で実施することのできる多くのタスクは、何らかのレベルのセキュリティを必要とする。あるレベルのセキュリティを提供するには、いくつかのオプションがある。１つは、安全でないかもしれないどんな要素からも完全に分離されたコンピュータ上ですべての安全なアプリケーションを実施すること、あるいは、バーチャルマシンモニタ（ＶＭＭ）を使用して、単一のコンピュータシステム上で実行される２つの実行環境（例えばオペレーティングシステム）の間を完全に分離できるようにすることである。しかし、これは実際的でない場合がある。コストまたは利便性の理由で、安全な実行環境が、セキュリティの保証されていないアプリケーションとリソースを共有する必要がある場合があり、これらのアプリケーションおよびこれらのリソースは攻撃者からの攻撃を受けやすいことがある。さらに、ＶＭＭが使用される場合、ＶＭＭはマシンおよびそのすべてのデバイスの完全な仮想化を必要とする（したがってＶＭＭはそれ自体のデバイスドライバをあらゆる可能性あるデバイス用に提供する必要がある）ので、ＶＭＭは、ほぼ無限の種類のデバイスをマシンに追加できるオープンアーキテクチャマシンにはあまり適さない。
【０００３】
２つの実行環境間でリソースを共有する能力を提供するための方法の１つは、マシン上のほとんどのプロセスおよびデバイスを制御する１つの「メイン」オペレーティングシステムがあるとともに第２のオペレーティングシステムも存在するというコンピュータシステムを提供することである。この第２のオペレーティングシステムは、メインオペレーティングシステムと並ぶ、いくつかの限定タスクを実施する小さい限定用途向けオペレーティングシステムである。オペレーティングシステムを「小さく」または「限定用途向けに」するための方法の１つは、小さいオペレーティングシステムが「メイン」オペレーティングシステムから何らかのインフラストラクチャ（例えばスケジューリング機能、メモリマネージャ、デバイスドライバなど）を借りられるようにすることである。
【０００４】
他のいくつかの技法は、複数のオペレーティングシステムが平行して存在するのを可能にする。このような技法の１つは、あるオペレーティングシステムが他方のオペレーティングシステムに対する「ホスト」として働くようにするものである。（「ホスト」がホストしているオペレーティングシステムは「ゲスト」と呼ばれることがある。）この場合、ホストオペレーティングシステムは、メモリやプロセッサ時間などのリソースをゲストに提供する。別のこのような技法は、「ｅｘｏｋｅｒｎｅｌ」の使用である。ｅｘｏｋｅｒｎｅｌは、いくつかのデバイス（例えばプロセッサやメモリ）を管理し、また、オペレーティングシステム間のいくつかのタイプの対話も管理する。ただしｅｘｏｋｅｒｎｅｌは、ＶＭＭとは異なり、マシン全体を仮想化することはしない。ｅｘｏｋｅｒｎｅｌが使用されるときでも、あるオペレーティングシステム（例えば「メイン」オペレーティングシステム）が他方のオペレーティングシステムのためのインフラストラクチャの多くを提供する場合があり、その場合、メインオペレーティングシステムはやはり「ホスト」と呼ぶことができ、小さい方のオペレーティングシステムは「ゲスト」と呼ぶことができる。同様に、実際の信用できるハイパーバイザーをマシン上で実行して「ホスト」と「ゲスト」の区分をサポートすることもでき、「ホスト」区分は「ゲスト」区分に多くのサービスを提供し、「ゲスト」区分はほとんどのサービスをインポートしセキュリティにフォーカスを合わせる。ホスティングモデル、ハイパーバイザー／ＶＭＭモデル、ｅｘｏｋｅｒｎｅｌモデルは、インフラストラクチャの共有をサポートするオペレーティングシステム間の有用なタイプの対話を可能にする。
【０００５】
したがって、これらの技法を使用して、少なくとも２つの実行環境を有するコンピュータシステムを提供することができる。これらの実行環境のうちの１つは、本明細書で「ネクサス（ｎｅｘｕｓ）」と呼ぶ「高確実性（ｈｉｇｈ  ａｓｓｕｒａｎｃｅ）」オペレーティングシステムとすることができる。高確実性オペレーティングシステムは、その挙動について何らかのレベルの確実性を提供するものである。例えば、ネクサスを利用して、ネクサスの外の世界に情報を漏洩しないことが保証された遮蔽メモリを提供し、いくつかの認定済みアプリケーションだけにネクサスの下での実行および遮蔽メモリへのアクセスを許可することにより、漏洩すべきでない秘密情報（例えば暗号鍵など）を扱うことができる。
【０００６】
一方がネクサスである２つの実行環境を有するシステムでは、ネクサスがゲストオペレーティングシステムであり、挙動に関して同レベルの確実性を受けない第２のオペレーティングシステムがホストオペレーティングシステムであることが望ましいであろう。これにより、ネクサスをできるだけ小さくすることができる。小さいネクサスは、ネクサスによって提供される確実性においてより高レベルの信頼を可能にする。したがって、オペレーティングシステム機能はホストオペレーティングシステムによって実行される。
【０００７】
ホストオペレーティングシステムによって実行することのできるこのようなオペレーティングシステムの１つは、ウィンドウ方式システムである。ウィンドウ方式システムを使用するとき、ユーザの表示装置は、アプリケーションからの情報を表示する画面上の領域であるウィンドウで埋められる。アプリケーションは、１つまたは複数のウィンドウを有する場合がある。表示されたすべてのウィンドウのうち、１つのウィンドウがフォーカスを有することができる。フォーカスウィンドウは、例えば異なるウィンドウ周囲境界によって示すことができる。
【０００８】
従来のウィンドウ方式システムでは、あるウィンドウがフォーカスを有するとき、通常はこのウィンドウがユーザの入力の対象である。したがって、ユーザがキーボードを使用してタイプ入力すると、多くの場合、フォーカスを有するウィンドウを所有するアプリケーションに、キーストロークデータがオペレーティングシステムによって送られる。いくつかのキーストロークおよびその他の入力動作は、フォーカスを有するウィンドウを所有するアプリケーションには送られない場合がある。例えば、いくつかのウィンドウ方式システムでは、すべてのウィンドウを最小化するキーストロークコマンドがある。このようなコマンドは、ウィンドウ方式システムによって処理され、フォーカスを有するウィンドウを所有するアプリケーションには送られない。フォーカスされているウィンドウを所有するアプリケーションも、ウィンドウを最小化する通知を受け取ることができる。しかし、ユーザのキーストロークは、フォーカスを有するウィンドウを所有するアプリケーションにではなくウィンドウ方式システムに向けられ、このアプリケーションには送られない。
【０００９】
ウィンドウ方式システムがネクサスによってではなくホストオペレーティングシステムによって実行されているとき、システムは攻撃を受けやすい。これは問題を生じる。というのは、前述のようにウィンドウ方式システムは、どのウィンドウがフォーカスを有するかを追跡することによって、どのウィンドウがユーザ入力を受け取ることになるかを追跡するからである。したがって、ユーザの気付かないうちに、さらにはユーザが気付くことのできる徴候なしに、フォーカスを移動することによって、システムに攻撃をかけることができる。
【００１０】
攻撃は例えば、ホスト上で実行される、フォーカスを切り替えてキーストロークを取り込むプログラムを介して行われる場合がある。ユーザは、ユーザの入力が信用できるエンティティに、すなわちネクサス中で稼動している何らかのハードウェア、システムソフトウェア、アプリケーション、またはウィンドウに向けられるであろうと思わせられる。しかし、どこかの時点でフォーカスが移動する。代わりにユーザの入力は攻撃プログラムに向けられており、そこで取り込まれ、これは後で使用される恐れがある。
【００１１】
したがって、ウィンドウ方式システムがホストオペレーティングシステムの制御下にあり、ユーザの入力が一般に入力時にフォーカスを有するウィンドウに向けられるので、ネクサスの高確実性は危険にさらされる。本発明をウィンドウ方式システムに関して述べるが、複数の確実性レベルがあり、ユーザがどのエンティティ（例えばアプリケーション）と対話するかを選択することのできる、その他のシステムがある場合もある。これらのシステムでも、ある種の入力はより確実性の低いアプリケーションおよびエンティティから安全に保たなければならず、前述したのと同じ問題が生じる。さらに、本発明は、単一の安全レベルだけを有するシステムにも有用である。すなわち、本発明は、ユーザの気付かないうちにフォーカスが変更されるデュアルモードシステム中に存在するセキュリティ問題に対処することができるのと同様に、本物のシステムに代わって完全に偽のシステムがブートされる単一セキュリティモードのシステム中の問題にも対処することができる。すなわち、本発明によれば、ユーザは、何らかの攻撃者が完全に不正なＵＩを提示しているのではなく正しい単一レベルの安全なシステムが実行されていることを知ることができる。実際、概して人間には、安全なコンポーネントと対話しているのか安全でないコンポーネントと対話しているのかは、調べても識別できない。
【００１２】
したがって、高確実性ＵＩが望まれるヒューマンアクセスリソースがあるときはいつでも、特に、様々なセキュリティレベルのＵＩが平行して提示されるときは、ウォッチャが好都合である。
【００１３】
可能性のある別の攻撃は、スプーフィング（spoofing；なりすまし）と呼ばれるものである。スプーフィングは、何らかのハードウェア、システムソフトウェア、アプリケーションまたはエージェントソフトウェア、あるいは所与のウィンドウが、信用できるエンティティでないのにそうであるようにユーザに思わせる攻撃である。攻撃者は、信用できるエンティティをスプーフィングしている。これを使用して、ユーザの証明書を盗むことができ、あるいは、高確実なエンティティを使用していると思い込んでいるユーザによって入力されたその他の機密性のデータを取り込むことができる。
【００１４】
例えば、ログイン画面を有する銀行業務プログラムをネクサスが実行するシステムで、攻撃者は、ホストオペレーティングシステム上で実行され、銀行業務プログラムのログイン画面そっくりに見えるウィンドウを表示するプログラムを書くことができる。ユーザがこのスプーフィングウィンドウによって騙されたとき、ユーザは、このスプーフィングウィンドウに情報を入力することになる。この情報は攻撃者によって取り込まれ、次いで、ユーザの知らないうちに攻撃者によって使用される恐れがある。
【００１５】
ウィンドウ方式システムはまた、スヌーカ（ｓｎｏｏｋｅｒ）と呼ばれる攻撃も受けやすい。スヌーカ攻撃では、攻撃者はユーザ表示を変更して、システムが安全でないときにユーザに安全に見えるようにする。例えば、コンピュータシステムは、ユーザがシステムをロックできる機能、あるいはユーザがコンピュータをスリープまたは休止にできる機能を備えている場合がある。この場合に、スヌーカ攻撃は、システムがロック、スリープ、または休止にされているときに表示される画面をシミュレートする。システムがアクティブではないので安全だと思ってユーザが注意を逸らしたとき、攻撃者はシステムを未許可で使用する。
【００１６】
一般に、正当なネクサス側のプログラムまたは機能システムがどんなピクセルパターンをモニタ上で生成できようと、ホスト側の攻撃プログラムは模倣することができる。どんなソフトウェアも、表示装置上で任意のピクセルを描画すること、キーボード上の任意のランプを設定すること、または任意の波形を作ることができるので、所与のコンピュータが信用できるコンピュータであるかそうでないか、または信用できるかもしれないコンピュータが現在信用できるモードで稼動しているかどうかを、人間が簡単に調べて識別するのは不可能である。いくつかの攻撃は、マシンを信用できる状態でなくし、なお比較的「静か」である。すなわち、マシンは非常に短時間のうちに信用できる状態から信用できない状態に移る可能性があり、ユーザはそれに気付かないことがある。しかし、ネクサスの高確実性を維持するには、ユーザは、正当なネクサス側ユーザインタフェースグラフィック要素を偽物から区別できなければならない。
【発明の開示】
【発明が解決しようとする課題】
【００１７】
以上に鑑みて、従来技術の欠点を克服するシステムが必要とされている。
【００１８】
本発明は、このような状況に鑑みてなされたもので、その目的とするところは、コンピュータシステム中の安全機能を監視するセキュリティデバイスを提供することにある。
【課題を解決するための手段】
【００１９】
本発明の一実施形態によれば、何らかの安全機能を備えるコンピュータシステムに接続されたセキュリティデバイスが、安全機能を「監視」し、マシンのセキュリティ状態の指示を提供する。一実施形態では、セキュリティデバイスは、コンピュータシステムの安全機能のステータスを照会する。一実施形態では、この照会は、安全機能が損なわれているかどうかを判定する。代替実施形態では、この照会は、安全機能（例えばネクサス）、またはコンピュータシステムの別の部分が、ユーザ入力を受け取っているかまたはユーザに情報を提供していると判定する。照会を介して安全機能に関するその他のステータス情報を得ることも企図される。
【００２０】
セキュリティデバイスは、以下の機構の少なくともいくつかを備えることが好ましい。すなわち、独立した電源（例えばバッテリや太陽電池など）、または電力が失われたときにユーザにアラートする手段；独立したクロック（すなわち、監視されているシステムにも信頼性の保証されていない外部時間ソースにも依存しない時間測定手段）；独立した計算能力（例えばそれ自体のプロセッサ）；少なくともいくらかの独立したメモリ（例えば、デバイス外から脅かすことのできない仕方で計算を実施するための作業空間としてのメモリ、または、セキュリティデバイスが外部の妥当性検査エンティティに依拠する場合は、正しい外部の妥当性検査エンティティを識別できるための情報を記憶するのに十分な独立したメモリ）である。これらのリソースは、独立したコンポーネントであることが好ましいが、コンピュータシステムと物理的に統合されてもよい。このような設計の有効性は、デバイスがどれだけ改ざんに対する耐性を有するかによって決まる。
【００２１】
ステータス情報を使用して、安全機能が不十分な状態にあるかどうかが判定される。このような不十分な状態が存在する場合、ユーザはアラートを受ける。これにより、コンピュータシステムの安全機能が正しく機能していることを独立して確認することができる。一実施形態では、セキュリティデバイスは、十分に稼動している安全機能によってのみ答えることのできるチャレンジを使用して安全機能にチャレンジすることによって、十分な状態が存在するかどうかを判定する。一実施形態では、チャレンジは何らかの形で暗号である。一実施形態では、少なくとも所与の周期性で、例えば１秒に１度、照会／信号伝達が行われる。適時に返信できない場合、これは全く返信できないことと同じとして扱われることが好ましい。したがって、ウォッチャ機能を実施するセキュリティデバイスは、それ自体の（信用でき信頼できる）クロックを有することが好ましい。
【００２２】
一実施形態では、安全機能のステータスをコンピュータシステムに照会する。応答が受け取られない場合、セキュリティデバイスは信号伝達する。応答が不十分な場合、セキュリティデバイスは、第２の信号、場合によっては異なる信号で伝達する。
【００２３】
ユーザへのアラートは、点滅するまたは変化する視覚表示などの視覚信号、トーンやビープやブザーやその他のノイズなどの聴覚信号、または振動などの触覚信号で構成することができる。これらのアラートの任意の組合せを使用してユーザにアラートすることもできる。
【００２４】
別の実施形態では、セキュリティデバイスは、安全機能に関するその他のステータス情報の指示も提供する。例えば、前述のように、異なる確実性レベル（ホストとネクサスなど）を有する環境がある場合、セキュリティデバイスは、任意の時点でどの確実性レベルがアクティブであるか、したがって例えばどこにユーザ入力が向けられることになるかを示す情報を表示することができる。他の実施形態では、セキュリティデバイスは、２つの実行環境間で切替えが行われたとき、または一方の実行環境がシャットダウンしたときを示す。より高確実な実行環境が、秘密データ、例えば第２の実行環境に知られていない画像や、より高確実な実行環境によって表示されるウィンドウの縁を囲むのに使用される色を含む場合、セキュリティデバイスによってこの秘密をより高確実な実行環境から入手して表示することができる。
【００２５】
一実施形態では、セキュリティデバイスは安全機能に対する「デッドマンズスイッチ」として機能する。すなわち、セキュリティ状態が十分であるという指示が安全機能からない場合、セキュリティデバイスは何かが不十分であると見なし、ユーザにアラートする。セキュリティデバイスは安全機能に対する攻撃を検出するように意図されているので、またそのような攻撃があった場合にユーザにアラートするので、セキュリティデバイスは攻撃から保護されるべきである。明らかな攻撃モードの１つは、セキュリティデバイスへの電力をディセーブルにするものである。したがって一実施形態では、セキュリティデバイスには、コンピュータシステムの電源とは別の電源が設けられる。別の実施形態では、コンピュータシステムの電源が使用されるが、セキュリティデバイス用のバックアップ電源が設けられ、これは、コンピュータシステムの電源がセキュリティデバイスに利用不可能である場合、または利用不可能になった場合に、アラートが鳴るようにする。
【００２６】
一実施形態では、アラートを出す動作は、コンピュータ外のチャネルを介して中央監視サービスにメッセージを送ることを含む。したがって、セキュリティデバイスは、セキュリティ問題のユーザだけに通知するのではなく、コンピュータ管理者にも、信頼でき信用できる方式で問題を通信することができる。
【００２７】
一実施形態では、アラートを出す動作は、ヒューマンインプットデバイスに、またはヒューマンインプットデバイスにサービスするハブに、短時間または長時間にわたってオフになるよう指示することを含む。したがって、システムが安全でない状態のとき（またはセキュリティを検証できない場合）、ユーザにシステムへのデータ入力をさせないようにすることができる。というのは、そのようなデータが、安全でない状態のシステムによって盗まれるかもしれない機密データを含む場合があるからである。
【００２８】
セキュリティデバイスは、何らかの形でコンピュータシステムに統合することができる。例えばセキュリティデバイスは、キーボード、モニタ、マウス、またはコンピュータケースに組み込むことができる。別の実施形態では、セキュリティデバイスはコンピュータシステムとは別個だが、その全部または一部の近くに配置することができ、あるいは、例えばクリップや、フックとラッチの留め具アタッチメントでそれに取り付けることができる。
【００２９】
一実施形態では、セキュリティデバイスは、ＵＳＢ（ユニバーサルシリアルバス）接続、シリアルポート接続、１３９４接続（「ＦｉｒｅＷｉｒｅ」と非公式に呼ばれるＩＥＥＥ‐１３９４プロトコルに従って動作する接続）、ＳＣＳＩ（スモールコンピュータシステムインタフェース）接続、イーサネット（登録商標）接続のうちの、１つまたは複数のタイプの接続によってコンピュータシステムに接続される。パラレル、シリアル、モデム、または無線を使用することもできる。セキュリティデバイスは、人間の対話標準でラウンドトリップメッセージ時間が短いディジタルチャネルである限り、安全システムと（秘密の）照会および返信を交換するのを可能にする任意のディジタルチャネルを使用することができる。
【００３０】
セキュリティデバイスは、一実施形態では、セキュリティデバイスの動作を変更するためのユーザコマンドを受け取るオプションインタフェースを備える。オプションインタフェースは、コンピュータシステムの安全機能が不十分な状態にあると判定されない限り、コンピュータシステムを介して提供される。
【００３１】
システム中には、安全機能のいくつかの異なる要素がある場合がある。例えば、表示は、安全なビデオ機能によって全体的にまたは部分的に制御することができる。この機能は、安全なユーザ入力機能とは別個とすることができる。セキュリティデバイスは、一実施形態では、システム中にある安全機能の複数の要素ごとに別々の照会／信号プロトコルインスタンスを維持することによって、これらの安全機能の要素を監視する。
【００３２】
さらに、本発明の一実施形態によれば、セキュリティデバイスは、信用できる配信インフラストラクチャを介して送達される。信用できる配信インフラストラクチャが確立されると、これを使用してセキュリティデバイスの少なくとも何らかの部分が送達される。送達される部分は、セキュリティデバイスの任意の部分とすることができる。セキュリティデバイスの純粋にハードウェアの部分および純粋にソフトウェアの部分が送達されることが企図される。このようにして、セキュリティデバイスのセキュリティが保証される。
【００３３】
本発明のその他の特徴については後述する。
【００３４】
以上の概要、ならびに以下の好適実施形態の詳細な説明は、添付の図面と共に読めばよりよく理解される。本発明を説明するために、本発明の例示的な構造を図面に示す。ただし本発明は、開示する特定の方法および手段に限定されない。
【発明の効果】
【００３５】
本発明によれば、コンピュータシステム中の安全機能を監視するセキュリティデバイスを提供することができる。
【発明を実施するための最良の形態】
【００３６】
以下、図面を参照して本発明を適用できる実施形態を詳細に説明する。
【００３７】
例示的なコンピュータ構成
図１に、本発明の態様を実施することのできる例示的なコンピューティング環境の例１００を示す。コンピューティングシステム環境１００は、適したコンピューティング環境の一例にすぎず、本発明の使用または機能の範囲についてどんな制限も意味しない。またコンピューティング環境１００は、この例示的な動作環境１００に示すコンポーネントのいずれか１つまたは組合せに関してどんな依存や要件を有するものとも解釈すべきではない。
【００３８】
本発明は、その他多くの汎用または専用コンピューティングシステム環境または構成でも動作する。本発明と共に使用するのに適するであろう周知のコンピューティングシステム、環境、および／または構成の例には、限定しないがパーソナルコンピュータ、サーバコンピュータ、ハンドヘルドデバイスまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な民生用電子機器、ネットワークＰＣ（personal computer）、ミニコンピュータ、メインフレームコンピュータ、組込みシステムが含まれ、また、これらのシステムまたはデバイスのいずれかを含む分散コンピューティング環境などが含まれる。
【００３９】
本発明は、プログラムモジュールなど、コンピュータによって実行されるコンピュータ実行可能命令の一般的な状況で述べることができる。一般に、プログラムモジュールは、特定のタスクを実施するか特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本発明はまた、通信ネットワークまたはその他のデータ伝送媒体を介してリンクされたリモート処理デバイスによってタスクが実施される分散コンピューティング環境で実施することもできる。分散コンピューティング環境では、プログラムモジュールおよびその他のデータは、メモリ記憶デバイスを含めたローカルとリモートの両方のコンピュータ記憶媒体に位置することができる。
【００４０】
図１を参照すると、本発明を実施するための例示的なシステム１００は、コンピュータ１１０の形の汎用コンピューティングデバイスを含む。コンピュータ１１０のコンポーネントには、限定しないがプロセッサ１２０と、システムメモリ１３０と、システムメモリを含めた様々なシステムコンポーネントをプロセッサ１２０に結合するシステムバス１２１とを含めることができる。プロセッサ１２０は、マルチスレッド方式プロセッサ上でサポートされるものなど、複数の論理プロセッサを表すものとすることができる。システムバス１２１は、様々なバスアーキテクチャのいずれかを用いた、メモリバスまたはメモリコントローラ、周辺バス、ローカルバスを含めて、いくつかのタイプのバス構造のいずれかとすることができる。限定ではなく例として、このようなアーキテクチャには、ＩＳＡ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＭＣＡ（Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＥＩＳＡ（Ｅｎｈａｎｃｅｄ  ＩＳＡ）バス、ＶＥＳＡ（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ）ローカルバス、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス（メザニンバスとも呼ばれる）が含まれる。システムバス１２１はまた、通信デバイス間のポイントツーポイント接続やスイッチングファブリックなどとして実現することもできる。
【００４１】
コンピュータ１１０は通常、様々なコンピュータ可読媒体を備える。コンピュータ可読媒体は、コンピュータ１１０からアクセスできる任意の利用可能な媒体とすることができ、揮発性と不揮発性、取外し可能と取外し不可能の両方の媒体がこれに含まれる。限定ではなく例として、コンピュータ可読媒体には、コンピュータ記憶媒体および通信媒体を含めることができる。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータなどの情報を記憶するための任意の方法または技術で実現された、揮発性と不揮発性、リムーバブルとノンリムーバブルの両方の媒体が含まれる。コンピュータ記憶媒体には、限定しないがＲＡＭ（random access memory）、ＲＯＭ（read only memory）、ＥＥＰＲＯＭ（electrically erasable programmable read-only memory）、フラッシュメモリまたはその他のメモリ技術、ＣＤ（compact disc）ＲＯＭ、ディジタル多用途ディスク（ＤＶＤ）またはその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置またはその他の磁気記憶デバイスが含まれ、あるいは、所望の情報を記憶するのに使用できコンピュータ１１０からアクセスできるその他の任意の媒体が含まれる。通信媒体は通常、搬送波やその他のトランスポート機構などの被変調データ信号中に、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータを組み入れるものであり、任意の情報送達媒体がこれに含まれる。用語「被変調データ信号」は、信号中の情報が符号化される形で１つまたは複数の特性が設定または変更される信号を意味する。限定ではなく例として、通信媒体には、有線ネットワークや直接有線接続などの有線媒体と、音響、無線周波数、赤外線などの無線媒体およびその他の無線媒体とが含まれる。以上のいずれかの組合せも、コンピュータ可読媒体の範囲に含めるべきである。
【００４２】
システムメモリ１３０は、読取り専用メモリ（ＲＯＭ）１３１やランダムアクセスメモリ（ＲＡＭ）１３２など、揮発性および／または不揮発性メモリの形のコンピュータ記憶媒体を含む。ＲＯＭ１３１には通常、起動中などにコンピュータ１１０内の要素間で情報を転送するのを助ける基本ルーチンを含むＢＩＯＳ（ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ）１３３が記憶されている。ＲＡＭ１３２は通常、プロセッサ１２０がすぐにアクセス可能な、かつ／またはプロセッサ１２０が現在作用している、データおよび／またはプログラムモジュールを含む。限定ではなく例として、図１には、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６、プログラムデータ１３７を示す。
【００４３】
コンピュータ１１０は、その他の取外し可能／取外し不可能、揮発性／不揮発性コンピュータ記憶媒体を備えることもできる。例にすぎないが図１には、ノンリムーバブル不揮発性の磁気媒体に対して読み書きするハードディスクドライブ１４１と、リムーバブル不揮発性の磁気ディスク１５２に対して読み書きする磁気ディスクドライブ１５１と、ＣＤ  ＲＯＭやその他の光媒体などリムーバブル不揮発性の光ディスク１５６に対して読み書きする光ディスクドライブ１５５を示す。この例示的な動作環境で使用することのできるその他の取外し可能／取外し不可能、揮発性／不揮発性コンピュータ記憶媒体には、限定しないが磁気テープカセット、フラッシュメモリカード、ディジタル多用途ディスク、ディジタルビデオテープ、ソリッドステートＲＡＭ、ソリッドステートＲＯＭなどが含まれる。ハードディスクドライブ１４１は通常、インタフェース１４０などの取外し不可能メモリインタフェースを介してシステムバス１２１に接続され、磁気ディスクドライブ１５１および光ディスクドライブ１５５は通常、インタフェース１５０などの取外し可能メモリインタフェースでシステムバス１２１に接続される。
【００４４】
以上に論じ図１に示したドライブおよびそれらに関連するコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、その他のデータの記憶域をコンピュータ１１０に提供する。例えば図１には、ハードディスクドライブ１４１がオペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６、プログラムデータ１４７を記憶しているのが示されている。これらのコンポーネントは、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６、プログラムデータ１３７と同じものとすることもでき、異なるものとすることもできることに留意されたい。ここでは、オペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６、プログラムデータ１４７が少なくとも異なるコピーであることを示すために、異なる番号を付けてある。ユーザは、キーボード１６２、マウスやトラックボールやタッチパッドと一般に呼ばれるポインティングデバイス１６１などの入力デバイスを介して、コンピュータ１１０にコマンドおよび情報を入力することができる。その他の入力デバイス（図示せず）には、マイクロホン、ジョイスティック、ゲームパッド、衛星受信アンテナ、スキャナなどを含めることができる。これらおよびその他の入力デバイスは、システムバスに結合されたユーザ入力インタフェース１６０を介してプロセッサ１２０に接続されることが多いが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（ＵＳＢ）など、その他のインタフェースおよびバス構造で接続されてもよい。モニタ１９１または他のタイプの表示デバイスも、ビデオインタフェース１９０などのインタフェースを介してシステムバス１２１に接続される。モニタに加えて、コンピュータは、スピーカ１９７やプリンタ１９６など、その他の周辺出力デバイスも備えることができ、これらは出力周辺インタフェース１９５を介して接続することができる。
【００４５】
コンピュータ１１０は、リモートコンピュータ１８０など１つまたは複数のリモートコンピュータへの論理接続を用いて、ネットワーク化された環境で動作することができる。リモートコンピュータ１８０は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、またはその他の一般的なネットワークノードとすることができ、通常はコンピュータ１１０に関して上述した要素の多くまたはすべてを備えるが、図１にはメモリ記憶デバイス１８１だけが示してある。図１に示す論理接続は、ローカルエリアネットワーク（ＬＡＮ）１７１およびワイドエリアネットワーク（ＷＡＮ）１７３を含むが、その他のネットワークを含むこともできる。このようなネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネット、インターネットでよくみられる。
【００４６】
ＬＡＮネットワーキング環境で使用されるときは、コンピュータ１１０は、ネットワークインタフェースまたはアダプタ１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーキング環境で使用されるときは、コンピュータ１１０は通常、インターネットなどのＷＡＮ１７３を介した通信を確立するためのモデム１７２またはその他の手段を備える。モデム１７２は内蔵でも外付けでもよく、ユーザ入力インタフェース１６０またはその他の適切な機構を介してシステムバス１２１に接続することができる。ネットワーク化された環境では、コンピュータ１１０に関して示したプログラムモジュールまたはその一部をリモートのメモリ記憶デバイスに記憶することができる。限定ではなく例として、図１には、リモートアプリケーションプログラム１８５がメモリデバイス１８１上にあるのが示してある。図示のネットワーク接続は例示的なものであり、コンピュータ間で通信リンクを確立するための他の手段を使用してもよいことは理解されるであろう。
【００４７】
単一マシン上の複数コンピューティング環境
前述のように、単一のコンピューティングデバイス上で２つのオペレーティングシステムを平行して実行できることが当技術分野で周知である。本発明を使用して対処することのできる問題の１つは、どのようにして２つのオペレーティングシステム間で何らかのレベルの分離を提供しつつも２つのオペレーティングシステム間で何らかのレベルの対話を提供するかという問題である。
【００４８】
図２に、２つのオペレーティングシステム１３４（１）および１３４（２）が単一のコンピュータ１１０上で実行されるシステムを示す。オペレーティングシステム１３４（１）と１３４（２）の間には何らかのタイプの論理的分離２０２が存在し、それにより、いくらかの量の対話２０４がオペレーティングシステム１３４（１）と１３４（２）の間で許可され、なお少なくとも一方のオペレーティングシステムは、他方のオペレーティングシステム中で発生したイベントから保護されることが可能である。図２の例では、オペレーティングシステム１３４（１）はホストオペレーティングシステムであり、オペレーティングシステム１３４（２）は、前述の「ネクサス」などのゲストオペレーティングシステムである。前記のように、オペレーティングシステム１３４（２）がネクサスであるときは、分離２０２を次のように構築することが望ましい。すなわち、オペレーティングシステム１３４（２）は、オペレーティングシステム１３４（１）のインフラストラクチャを借りるためにオペレーティングシステム１３４（１）と対話することができ、なおオペレーティングシステム１３４（２）は、オペレーティングシステム１３４（１）で生じたアクションであってオペレーティングシステム１３４（２）にその挙動仕様と相容れない仕方で挙動させるかもしれないアクション（悪意のまたは無実のアクション）から、それ自体を保護することができる。（ただし、本発明はオペレーティングシステム１３４（２）がネクサスである場合に限定されないことは理解されるであろう。）
【００４９】
オペレーティングシステム１３４（１）と１３４（２）との間の分離２０２は、任意選択でセキュリティモニタの助けによって実施することができる。セキュリティモニタは、オペレーティングシステム１３４（１）と１３４（２）の両方に対して外部のコンポーネントであり、オペレーティングシステム１３４（２）をオペレーティングシステム１３４（１）から保護するのに使用できるいくつかのセキュリティサービスを提供する。例えば、セキュリティモニタは、何らかのハードウェアへのアクセスを制御することができ、メモリ使用を管理することができ（いくらかのメモリ部分の排他的使用をオペレーティングシステム１３４（２）に提供するため）、あるいはオペレーティングシステム１３４（１）からオペレーティングシステム１３４（２）にデータを安全に通信するのを容易にすることができる。セキュリティモニタの使用は、どのようにオペレーティングシステム１３４（２）をオペレーティングシステム１３４（１）から保護することができるかに関する１つのモデルを表すものであり、セキュリティモニタの使用は必須ではないことに留意されたい。別の例として、オペレーティングシステム１３４（２）は、オペレーティングシステム１３４（１）からそれ自体を保護するのに必要なすべての機能を含むこともできる。
【００５０】
図２では、オペレーティングシステム１３４（１）を「ホスト」として、オペレーティングシステム１３４（２）を「ゲスト」として示してあることに留意されたい。一般に、この特徴付けは次のことを指している。すなわちこれらの例で、オペレーティングシステム１３４（１）は、オペレーティングシステム１３４（１）と１３４（２）の両方によって使用されるいくらかのオペレーティングシステムインフラストラクチャ（例えばデバイスドライバやスケジューリングなど）を提供し、オペレーティングシステム１３４（２）は、このインフラストラクチャを欠いているが、その代わりオペレーティングシステム１３４（１）のインフラストラクチャを使用することが好ましいという意味で、「ゲスト」である。ただし、オペレーティングシステムを「ホスト」または「ゲスト」にするパラメータはフレキシブルであることに留意されたい。さらに、従来の「ホスト」「ゲスト」オペレーティングシステムの概念では、ホストがゲストのアクションからそれ自体を保護する必要があると考えることに留意されたい。しかし図２の例では、ゲストオペレーティングシステム１３４（２）は、ホストオペレーティングシステム１３４（１）からそれ自体を保護する必要のある高確実性オペレーティングシステムであると考えられる。以下の例では、これらのオペレーティングシステムを区別するために、一般にオペレーティングシステム１３４（１）を「ホスト」と呼び、オペレーティングシステム１３４（２）を「ゲスト」または「ネクサス」と呼ぶことにする。本明細書に述べる技法は、同じマシン上で（さらには接続された複数のマシンの同じセット上で）実行されている任意の複数のオペレーティングシステムの対話に適用できることを理解されたい。
【００５１】
単一マシン上の複数のコンピューティング環境におけるユーザ入力モード
ユーザが高確実性オペレーティングシステムを含むコンピュータシステム上でプログラムと対話するとき、ユーザは、マウス１６１やキーボード１６２（図１から）などのユーザ入力デバイスを使用してこれを行う。上で論じたように、ホストオペレーティングシステム１３４（１）上で実行されているウィンドウ方式システムが入力イベントのストリームの宛先を制御できるようにすることは、危険にさらされたホストオペレーティングシステムまたはアプリケーションを使用した攻撃を可能にする恐れがある。
【００５２】
一実施形態では、入力イベントのストリームの宛先は、ネクサス１３４（２）上で稼動する信用できるユーザインタフェースエンジンによって制御される。コンピュータ１１０が動作することのできる２つのモードが確立される。この２つのモードは、標準入力モード（ＳＩＭ）およびネクサス入力モード（ＮＩＭ）である。ＮＩＭでは、ユーザ入力はネクサスに、またはネクサス上で実行されているプロセスに向けられる。
【００５３】
秘密共有
一実施形態では、前述のスプーフィング攻撃を防止するために、ホスト側には隠された秘密をネクサスによって表示することができる。ホスト側のどんなプロセスもこの秘密にアクセスすることはできず、したがって、ウィンドウまたはその他のグラフィックユーザインタフェース要素がこの秘密を表示できるとすれば、それはホスト側のグラフィックユーザインタフェース要素である。ネクサスユーザの秘密は、画像でも語句でもよい。画像は、ユーザによって識別しやすく、また言葉で表しにくいので、有用なネクサスユーザ秘密とすることができる。ネクサスユーザ秘密として使用するためにユーザによって選択された画像が、例えばユーザの家の前にいるユーザの犬の写真である場合、この写真はユーザの画面上でこの画像を見た攻撃者によって言葉で表せるかもしれないが、その情報があっても、この画像を再現することまたはそのコピーを見つけることは攻撃者にとって難しいであろう。ネクサスユーザ秘密はまた、ネクサス側プログラムによって表示されているウィンドウの境界などの、ウィンドウ装飾とすることもできる。すべてのネクサス側ウィンドウが同時に境界の色を変更して、一致する境界色を有する場合、不正なネクサス側ウィンドウは容易に識別可能になる。秘密は継続的に更新することができる。
【００５４】
その他の安全機能およびその他の秘密
コンピュータシステム中の特定の安全機能について上に述べたが、コンピュータシステム中にその他の安全機能が存在することも企図される。例えば、実行環境を１つだけ有するコンピュータシステム中で、この実行環境上で実行されるソフトウェアアプリケーションによって、またはコンピュータシステムのハードウェア要素によって、またはソフトウェアとハードウェアの何らかの組合せによって、安全機能を提供することができる。コンピュータシステムは、システムのオペレーティングシステム中に安全機能を含むことができる。一例は、トラステッドコンピューティンググループ（Ｔｒｕｓｔｅｄ  Ｃｏｍｐｕｔｉｎｇ  Ｇｒｏｕｐ）によって発布されている標準によるＴＰＭ（ｔｒｕｓｔｅｄ  ｐｌａｔｆｏｒｍ  ｍｏｄｕｌｅ）で稼動するコンピュータシステムである。概して、本発明は、安全機能の信用性に対するモニタとしてのコンピュータシステム上に安全機能が存在する状況なら、どんな状況でも有用であると企図される。
【００５５】
同様に、ホストとネクサスの２つの実行環境に関して秘密を述べたが、任意の安全機能が関連の秘密を有することができることも企図される。
【００５６】
セキュリティデバイス
図３は、本発明の一実施形態によるコンピュータシステムおよびセキュリティデバイスのブロック図である。図３でわかるように、コンピュータシステム１１０は、安全機能３１０を備える。セキュリティデバイス３００は、照会機構（querier）３０２およびアラート機構３０４を備える。照会機構は、安全機能３１０に照会する。安全機能３１０にステータスが要求される。このステータス要求は、テストまたはチャレンジを含むことができ、それに対する応答は、安全機能が応答しているかどうかを示すことになる。アラート機構３０４は、安全機能の不十分な状態が判定された場合にユーザにアラートする。一実施形態では、安全機能の不十分な状態は、（１）安全機能が応答していない場合、または（２）受信された応答が安全機能から来たものではないと識別された場合、または（３）安全機能から受信された応答が、何らかのセキュリティが破られたことを示す場合に判定される。前記のように、セキュリティデバイス３００がその機能を実施する能力は、独立した電源３２２、独立した時間ソース３２４、独立した計算コンポーネント３２６、独立したメモリ３２８を使用することによって、向上させるまたは可能にすることができる。
【００５７】
セキュリティデバイスは、特定の安全機能がオンかオフか（または動作しているか動作していないか）を判定する機能に限定されないことに留意されたい。そうではなく、セキュリティデバイスは、安全機能が「十分に」動作しているかどうか（すなわち何らかの定義された標準まで動作しているかどうか、または何らかの定義されたセキュリティ基準を満たすかどうか）を判定するように構成することもできる。多くのモデルで、セキュリティシステムが機能することは、証明ベクトルのセットおよびソフトウェアスタックに基づいて判定することができる。有効な証明ベクトルまたはソフトウェアスタックを構成するものは、マシンごとに、また環境ごとに異なるので、これらの特徴を判断することは、難しい問題を提示する場合がある。この問題に対処する方法の１つは、セキュリティシステムが機能することの最終的な判定を、評価対象のシステムに関する情報に基づいてこの判定を行うように装備された判断サービスによって行うことである。このような判断に関する使用シナリオは、後でより具体的に述べる。
【００５８】
一実施形態では、照会機構３０２は、チャレンジャ、レシーバ、レスポンダを含む。チャレンジャは、安全機能３１０にチャレンジを提示する。レシーバは、安全機能から応答を受け取る。エバリュエータは、応答（もしあれば）を評価し、それが不十分かどうかを判定する。
【００５９】
一実施形態では、チャレンジは暗号チャレンジである。暗号チャレンジに対する応答は、秘密鍵などの秘密を知っていなければ計算できない。この場合、安全機能３１０から不十分な応答が受け取られたかどうかの判定は、チャレンジに正しく応答されたかどうかの判定である。
【００６０】
複数の安全機能がコンピュータシステム１１０上にある場合もある。例えば、実行環境に関係する安全機能は、表示装置上の信用できるデータ表示の安全を守る安全機能とは別個である場合もある。したがって、一実施形態では、セキュリティデバイス３００は、コンピュータシステム１１０上の複数の安全機能を監視する。
【００６１】
アラート機構３０４からユーザへのアラートは、点滅するまたは変化する視覚表示などの視覚信号、トーンやビープやブザーやその他のノイズなどの聴覚信号、または振動などの触覚信号で構成することができる。これらのアラートの任意の組合せを使用してユーザにアラートすることもできる。さらに、アラートの一部として、ユーザ入力デバイスをディセーブルにすることもでき（例えばユーザが機密情報を安全でないシステムに提供するのを防止するため）、リモートの監視センタ（システム管理者に関連する監視センタなど）にアラートを通知することもできる。ユーザにアラートを提供するためのその他の任意の方法も企図される。
【００６２】
一実施形態では、照会機構３０２は、少なくとも所与の期間中に１度、安全機能３１０に照会する。この場合、照会の周期性は、安全機能３１０が少なくとも所与の期間ごとに１度調べられて十分な状態かどうかが判定されることを保証する。一実施形態では、照会機構３０２は、安全機能３１０の状態を１秒に１度チェックする。
【００６３】
コンピュータシステム１１０とセキュリティデバイス３００との間の接続３２０は、どんなタイプでもよい。とりわけ、これは物理接続である必要はなく、無線またはその他の手段を介して達成することもできる。一実施形態では、安全な接続が使用され、それにより、この接続は攻撃者による変更または攻撃者によるスヌーピング（snooping）を通さない。一実施形態では、セキュリティデバイスは、ＵＳＢ（ユニバーサルシリアルバス）接続、シリアルポート接続、１３９４接続（「ＦｉｒｅＷｉｒｅ」と非公式に呼ばれるＩＥＥＥ‐１３９４プロトコル）に従って動作する接続）、ＳＣＳＩ（スモールコンピュータシステムインタフェース）接続、イーサネット（登録商標）接続のうちの、１つまたは複数のタイプの接続によってコンピュータシステムに接続される。
【００６４】
図３には、セキュリティデバイス３００をコンピュータシステム１１０とは別個に示してあるが、セキュリティデバイス３００はコンピュータシステム１１０に組み込まれていてもよい。セキュリティデバイスは、限定しないが、コンピュータシステムの全部または一部を収容するケーシング、キーボード１６２、ポインティングデバイス１６１、モニタ１９１またはその他の表示装置など、コンピュータシステムの何らかの物理的部分の一部としてコンピュータシステム１１０に統合することができる。
【００６５】
図４は、本発明の一実施形態による、情報をユーザに対して表示する方法の流れ図である。ステップ４００で、安全機能のステータスをコンピュータシステムに照会する。ステップ４１０で、応答が受け取られたかどうかを判定する。応答が受け取られない場合は、ステップ４２０で、第１の信号を伝達する。応答が受け取られた場合は、ステップ４３０で、応答が十分であったかどうかを判定する。応答が十分でない場合は、ステップ４４０で、第２の信号を伝達する。ステップ４１０で、応答が受け取られたかどうかを判定する前に設定期間が経過する場合もある。このプロセスを所与の周期性で繰り返して、ユーザに信号伝達された情報が真のままであることを保証することができる。第１と第２の信号は同一でもよい。一実施形態では、十分な応答が受け取られた場合は異なる信号を伝達することができる。
【００６６】
電源
図５は、本発明の一実施形態による、セキュリティデバイスのための電源のブロック図である。セキュリティデバイス３００は、一実施形態で、安全機能３１０の状況が十分でない場合にユーザにアラートする。したがって、可能性のある攻撃の１つは、セキュリティデバイス３００の音を消すことである。敵は、セキュリティデバイス３００の電源をディセーブルにしてセキュリティデバイス３００をディセーブルにすることによって、これを試みる場合がある。これに対抗するために、一実施形態では、セキュリティデバイス３００は第１の電源５００を備える。アラート機構３０４は、第１の電源５００の電力が低い場合にユーザに信号伝達するよう構成することができる。一実施形態では、図示のように、第２の電源５１０が備わる。第２の電源５１０は、第１の電源５００のバックアップとして働く。第１の電源５００が電力を失った場合、第２の電源５１０は、アラート機構３０４に、ユーザに信号伝達させる。例えば、第１の電源５００は、電気アウトレットへの接続とすることができる。バッテリパックとしてもよい。第１の電源５００はまた、コンピュータシステム１１０用の電源への接続としてもよい。第１の電源５００に異常が起きた場合は、第２の電源５１０がそのことをユーザにアラートする。一実施形態では、第２の電源５１０はバッテリである。
【００６７】
判断サービス
前記のように、本発明によるセキュリティデバイス（または「ウォッチャ」）は、外部判断サービスを使用して、「監視」されているセキュリティシステムが十分に機能しているかどうか（すなわち関連する標準まで動作しているかどうか）を判定することができる。以下、このような判断サービスを使用する例示的なシナリオについて述べる。ユーザは、ウォッチャを入手し、信用できる配信インフラストラクチャを介して、例えば１つの「判断サービス」または場合によっては複数のこのようなサービスの名前、アドレス、確認秘密証明書をウォッチャにロードする。ウォッチャにロードされたデータは判断サービスアカウントデータを含み、それにより、判断サービスの課金／支払いを調整することができる。
【００６８】
ユーザはまた、ユーザの信念およびポリシーを信用に反映するようにウォッチャをプログラムすることができる。ユーザは、信用できる配信インフラストラクチャ中の何らかの助けによってこのプログラミングを行う。この時点で、ウォッチャは、どのようにして判断サービスとコンタクトを取るか、および何をユーザが欲していることをそれに伝えるかがわかっている。
【００６９】
次に、ウォッチャは、監視対象のシステムについての関連情報を学習することを試み、それによりこの情報は、判断サーバ（または「検証サービス」）に通信することができ、判断サーバによって評価することができる。例示的な一実施形態では、ユーザは当該システムに近付き、ウォッチャを「つなぐ」。ウォッチャは最初、システムにチャレンジを送り、それに対して「クォート（ｑｕｏｔｅ）」を得る。このクォートは、マシン上に何があるかに関する秘密ステートメントである。理論上は、これだけあれば、マシンの安全コンポーネントを信用すべきかどうかがわかるが、ベクトルが複雑で理解しにくい場合がある。ウォッチャは、クォート結果を取り込み、ウォッチャの既知の良好な証明の記憶リストを調べる。証明がそのリスト中にない場合、または古すぎる場合、または他の何らかのテストに合格しない場合は、ウォッチャは安全コンポーネントにメッセージを送り、判断サービス上にメッセージが渡されるようにする。判断サービスに送られたメッセージは秘密メッセージである。判断サービスに届かない場合、または戻って来ない場合は、ウォッチャはタイムアウトし、そのアラームの１つを出す。（この場合、安全コンポーネントが応答できなかったことを意味するのとは異なり、「安全コンポーネント」が全く妥当性検査されなかったことを意味する。）適切な秘密メッセージが判断サービスから返された場合、ウォッチャはこのメッセージを解釈し、この結果をキャッシュすることになる。このメッセージは、様々なデータを含むことができるが、とりわけ、当該システムの証明ベクトルがユーザ指定の標準を満たすかどうかを報告する。答が「ｙｅｓ」である場合は、本特許の他の箇所に述べるように進行する。答がｎｏである場合は、アラームが出される。
【００７０】
代替シナリオとして、ウォッチャは、使用したい判断サービスの公開鍵を用いて暗号化されたパケットを作成する。このパケットは、ナンス（ｎｏｎｃｅ）と、ウォッチャのポリシーステートメントとを含む。このパケットを、所望の判断サービスのＵＲＬ（Uniform Resource Locator）と共に、チェック対象のシステムに提供する。このシステムは判断サービスと交渉し、判断サービスは、チェック対象のシステムがウォッチャからのポリシーステートメントを満たすかどうかを調べるのに必要などんな情報も収集する。チェックの最後に、判断サービスは、暗号化（判断サービスの秘密鍵を使用して）されたパケットをウォッチャに送り、システムがポリシーを満たすか否かを示す。ナンスは、応答が唯一のものであることを保証するために使用される。この技法の利点の１つは、ウォッチャが、構成を妥当性検査する試みの中心にある必要がないことである。システムから受け取ったクォートは、有意義なものである場合もあり、そうでない場合もあり、したがって、クォート自体は、システムが関連ポリシーを満たすかどうかを伝えないことがある。曖昧さがある場合にそれを解決するのに使用できるログ情報があってもよく、その場合、クォートと共にログも必要になる。しかし、ウォッチャが検証側と被検証側との間のこの会話の中心にないことが有利であろう。
【００７１】
システムに関するバイナリ（例えば「良／不良」）情報を提供することに加えて、判断サービスは、安全コンポーネント中のどのステータスプロトコルが信頼できるかをウォッチャに知らせること、または正しい構成の助けとなる他の情報をウォッチャに提供することもできる。
【００７２】
以下は、判断サービスの使用の一例である。この例では、ウォッチャは、アカウント番号１２３４５および設定ｐａｒａｎｏｉｄ＝７、ｍｉｎｏｓ＝ｒ５．７、ｒｅｖｏｋｅｏｎｅｖｉｌ＝ｙｅｓ、ｃａｃｈｅ＿ｔｉｍｅ＿ｏｕｔ＝７ｄａｙｓで、Ｗｉｎｄｏｗｓ（登録商標）Ｖｅｒｉｆｙ．ｍｉｃｒｏｓｏｆｔ．ｃｏｍとコンタクトを取るようにプログラムされている。ユーザがシステムの所まで歩いて来てウォッチャをプラグインすると、ウォッチャは上に指定した作業を行う。Ｗｉｎｄｏｗｓ（登録商標）Ｖｅｒｉｆｙ．ｍｉｃｒｏｓｏｆｔ．ｃｏｍがこのシステムを好む場合（すなわち関連の標準に従って受け入れられることがわかった場合）、これは７日間キャッシュされる。このことは、ウォッチャが次の７日間にわたって同じ証明ベクトルを認識する限り、ウォッチャはシステムが大丈夫であると判定できることを意味する。
【００７３】
留意されたいが、この例では、ハードウェアが不良であること、または不良のＳＭＩ  ＢＩＯＳがあること、またはバグを有するハイパーバイザーがあることをＷｉｎｄｏｗｓ（登録商標）Ｖｅｒｉｆｙ．ｍｉｃｒｏｓｏｆｔ．ｃｏｍが知った場合、Ｗｉｎｄｏｗｓ（登録商標）Ｖｅｒｉｆｙ．ｍｉｃｒｏｓｏｆｔ．ｃｏｍは、あらゆるウォッチャがそれを呼び出したときにこの知識をウォッチャに渡すことができ、それによりユーザは、ほぼリアルタイムで、障害のあるシステムを信用するのを止めるよう通知を受けることができる。
【００７４】
その他のセキュリティデバイス指示
セキュリティデバイスは、安全機能３１０の不十分な状態が判定された場合にユーザにアラートするのに加えて、安全機能のステータスの表示（またはその他の指示）を提供することもできる。したがって一実施形態では、安全機能が十分な状態のときは緑のランプが表示され、十分な状態でないときは赤いランプが表示される。コンピュータシステム１１０中にホストとネクサスがある場合、このような表示は、ホストとネクサスのどちらがアクティブかを示す。ネクサス入力モード（ＮＩＭ）および標準入力モード（ＳＩＭ）の状態がコンピュータシステム１１０に関して可能な場合、一実施形態では、アラート機構は、コンピュータシステム１１０の入力モードを示す。別の実施形態では、アラート機構は、ホストがアクティブである状態からネクサスがアクティブである状態への切替え、ネクサスがアクティブである状態からホストがアクティブである状態への切替え、ＮＩＭ状態からＳＩＭ状態への切替え、またはＳＩＭ状態からＮＩＭ状態への切替えが行われたときに信号伝達することができる。一実施形態では、安全機能が停止／シャットダウンされたとき、アラート機構はそのことを示す。
【００７５】
前述のように、安全機能は、コンピュータシステム１１０の他の部分からはアクセス不可能な秘密に関する情報を含むことが可能である。このような場合、一実施形態では、セキュリティデバイスはこの秘密を表示するかまたは他の方法で示す能力を備える。したがって、例えば秘密が写真である場合、セキュリティデバイスはこの写真を表示することができる。別の例として、秘密が安全機能によって表示されるウィンドウ境界の色である場合、セキュリティデバイスはこの色を表示する。その他の視覚的な秘密および視覚的でない秘密も企図される。
【００７６】
セキュリティデバイスオプション
一実施形態では、セキュリティデバイスオプションを使用して、セキュリティデバイスをプログラムすることができ、オプション変更することができ、ステータスチェックすることができる。例えば、安全機能３１０をチェックする周期性は、セキュリティデバイスオプションの設定を介してユーザによって調整可能とすることができる。ユーザは、バッテリなどの電源の状態をチェックするよう要求することができる。セキュリティデバイスは、ユーザがこのようなデバイスオプション変更を要求し情報を受け取るための、入出力手段を備えることができる。あるいは、オプションインタフェースがコンピュータシステム１１０を介して提供される。オプションが敵によって変更されないようにするために、一実施形態では、コンピュータシステムの安全機能が不十分な状態でない場合にのみ、オプションインタフェースにアクセスすることができる。さらに、前記のように、セキュリティ評価対象のシステムが許容できる安全状態にない場合、セキュリティデバイスは、入力デバイスを遮断するかまたはリモートの監視局にメッセージを送ることができる。さらに、セキュリティデバイスは、ネットワークを介したリモートの判断サービスにメッセージを送ることによってデバイスのセキュリティを判断するように適合させることができ、判断サービスは、監視対象デバイスの安全コンポーネントのセキュリティを評価する。
【００７７】
セキュリティデバイスの配信
セキュリティデバイスが攻撃者によって損なわれている場合、または信用できないソースから受け取られた場合は、このセキュリティデバイスを信用することはできない。したがって、本発明の一実施形態によれば、信用できる配信インフラストラクチャ（コンピュータネットワークを含む場合もある）を使用してセキュリティデバイスを配信する。図６は、安全機能を含むコンピュータシステムのセキュリティを可能にする方法の流れ図である。図６でわかるように、ステップ６００は、信用できる配信インフラストラクチャの確立である。信用できる配信インフラストラクチャは、すでに信用されている位置に確立することができる。例えば、信用できる配信インフラストラクチャは銀行、郵便局、または信用できるベンダとすることができる。
【００７８】
次いで、ステップ６１０で、配信ネットワークを使用してセキュリティデバイスの少なくとも何らかの部分を配信する。セキュリティデバイスの全部またはいくらかだけを配信することができる。例えば、セキュリティデバイスの特定の物理的要素（例えばハードウェア部分）を、配信ネットワークを介して配信することができる。物理的要素には、信用できるソースの指示（例えばホログラム）や、物理的要素が改ざんまたは改変されていないことの視覚表示など、改ざん防止デバイスを含めることができる。配信は物理的である必要はなく、情報的であってもよい。したがって、配信ネットワークを介してソフトウェアをライセンス供与および配信することができる。ソフトウェアの信用性は、一実施形態では、暗号手段を介して検証可能である。
【００７９】
結び
前述の例は、説明のために提供しただけであり、本発明を限定するものと解釈されるべきでは決してないことに留意されたい。様々な実施形態に関して本発明を述べたが、本明細書で使用した語は、限定的な語ではなく記述的および例示的な語であることを理解されたい。さらに、特定の手段、材料、実施形態に関して本発明を述べたが、本発明は、本明細書に開示した詳細に限定されない。そうではなく、本発明は、添付の特許請求の範囲内のものなど、機能的に等価なすべての構造、方法、使用に及ぶ。本明細書の教示の利益があれば、当業者ならそれに様々な修正を行うことができ、本発明の範囲および趣旨を逸脱することなくその態様に変更を加えることができるであろう。
【図面の簡単な説明】
【００８０】
【図１】本発明の態様を実施することのできる例示的なコンピューティング環境のブロック図である。
【図２】相互とのいくらかの対話および相互からのいくらかの分離を維持する２つの例示的な実行環境のブロック図である。
【図３】本発明の一実施形態によるコンピュータシステムおよびセキュリティデバイスのブロック図である。
【図４】本発明の一実施形態による、情報をユーザに対して表示する方法の流れ図である。
【図５】本発明の一実施形態による、セキュリティデバイスのための電源のブロック図である。
【図６】本発明の一実施形態による、安全機能を含むコンピュータシステムのセキュリティを可能にする方法の流れ図である。
【符号の説明】
【００８１】
１１０  コンピュータシステム
３００  セキュリティデバイス
３０２  照会機構
３０４  アラート機構
３１０  安全機能
３２２  電源
３２４  クロック
３２８  メモリ
【図１】
2006107455.tif 000003
【図２】
2006107455.tif 000004
【図３】
2006107455.tif 000005
【図４】
2006107455.tif 000006
【図５】
2006107455.tif 000007
【図６】
2006107455.tif 000008