Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4664966B2 - 協調型組込みエージェント - Google Patents
[go: Go Back, main page]

JP4664966B2 - 協調型組込みエージェント - Google Patents

協調型組込みエージェント Download PDF

Info

Publication number
JP4664966B2
JP4664966B2 JP2007503113A JP2007503113A JP4664966B2 JP 4664966 B2 JP4664966 B2 JP 4664966B2 JP 2007503113 A JP2007503113 A JP 2007503113A JP 2007503113 A JP2007503113 A JP 2007503113A JP 4664966 B2 JP4664966 B2 JP 4664966B2
Authority
JP
Japan
Prior art keywords
agent
operating system
host
embedded
embedded controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007503113A
Other languages
English (en)
Other versions
JP2007528083A (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.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of JP2007528083A publication Critical patent/JP2007528083A/ja
Application granted granted Critical
Publication of JP4664966B2 publication Critical patent/JP4664966B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B05SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05DPROCESSES FOR APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05D1/00Processes for applying liquids or other fluent materials
    • B05D1/36Successively applying liquids or other fluent materials, e.g. without intermediate treatment

Landscapes

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

Description

本発明の実施例は、協調型組込みエージェントを有する電子システムに関する。特に、本発明の実施例は、組込みエージェントが独立したネットワーク接続を有する別の組込みエージェントと通信して、管理容易化、セキュリティ、および/または他の機能を電子システムに協調して提供する場合の、様々なシステム構成要素に結合し相互作用する協調型組込みエージェントを有する電子システムに関する。
インテル社によって386SLプロセッサが紹介された時より、32ビットインテルアーキテクチャ(IA32)プロセッサにおいて、システム管理モード(SMM)は、利用可能であった。このモードは、基本入出力システム(BIOS)またはファームウェアにより取り込まれたコードを実行するオペレーティングシステムからは隠れた実行モードであり、隠れたと見なされる理由は、このSMMが、オペレーティングシステム(OS)およびソフトウエアアプリケーションから独立して動作するからである。
IA32プロセッサは、システム管理割り込み(SMI)信号の起動によりSMMに入ることができる。同様な信号の、プロセッサ管理割り込み(PMI)信号は、同じくインテル社より入手可能なアイテニアム系プロセッサSMI信号にほぼ類似している。簡易化する目的で、SMIおよびPMI信号両方ともxMI信号として引用することができる。
今日にいたるまで、SMM機能を活用する殆どのBIOS実装は、単にモノリシック部分のコードを登録しているだけである。このコードは、このBIOSを使用するシステムの特定機能あるいは、特定機能群を支援するべくBIOS構築時に作成されている。
今日のシステムでは、サードパーティSMMコードを登録または実行するような用意はされてないので、SMMフレームワークによる拡張性は無い。しかし、この様な拡張性は、度々要求される。例として、もし相手先商標製品製造業者(OEM)または、BIOS業者が特定プラットフォーム用として提供するSMMコードの機能が不十分な場合、開発者または付加価値再販業者(VAR)は、既存のコードをBIOS業者またはOEMからライセンスして、彼ら独自の論理をSMMコードに移植しなければならない。
更に、今日のIA32プロセッサへの実装は、16ビットモードに限られているのでコードサイズ制限があるとともに32ビットまたは64ビットソフトウェアエンジニアリング技術の活用可能性が制限されてしまう。一般的に、SMM機能更新を目的としたBIOS更新は問題が多く、さらにOSは、それ自体のドライバモデル経由でハードウェア拡張メカニズムを有しているので、BIOS業者およびOEMたちにとり、この様なタイプのBIOS更新提供に対する動機付けはより低い。
上記課題を解決するべく、本発明の形態として、組込みファームウェアエージェントであって、組込みファームウェアエージェントを選択的に管理モードで動作させる命令を有し、管理モード動作中は、ホストオペレーティングシステムは、組込みファームウェアが所在するホストシステムの制御を放棄する、組込みファームウェアエージェントと、組込みコントローラエージェントであって、ホストオペレーティングシステムから独立して動作しており、選択的に管理モードを起動して、ホストオペレーティングシステムから独立したネットワークにより組込みコントローラエージェントが通信するのを可能とするネットワークインターフェースを有する、組込みコントローラエージェントと、組込みファームウェアエージェントと組込みコントローラエージェントとの間でメッセージを送信するべく組込みファームウェアエージェントと組込みコントローラエージェントとの間に結合された双方向エージェントバスと、を含む装置を提供する。
本発明により組込みエージェントが、独立したネットワーク接続を有する別の組込みエージェントと通信して、管理容易化、セキュリティ、および/または他の機能を電子システムに協調して提供することができる。
本発明の実施形態は、実施例により説明されており、制限のためではない。付随する図面内の同符号は、同様の要素に引用される。
協調型組込みエージェントを有する電子システムの一実施例を示したブロック図。
組込みコントローラエージェントと組込みファームウェアエージェントとトラステッドモジュールの相互作用実施例を示した概念ブロック図。
組込みコントローラエージェントの動作実施例を示したフローチャート。
組込みファームウェアエージェントの動作実施例を示したフローチャート。
組込みファームウェアエージェントの初期化プロセス実施例を示したフローチャート。
組込みファームウェアエージェントの実施例を示したブロック図。
組込みコントローラエージェントの実施例を示したブロック図。
トラステッドモジュールの実施例を示したブロック図。
以下、様々な特定詳細部の説明がされているが、本発明の実施は、これらの特定詳細部を使用せずに実施してもよい。別の場合では、本発明理解の妨げとならないよう、良く知られた回路、構造、および技術の詳細は示していない。
図1は、協調型組込みエージェントを有する電子システムの一実施例を示したブロック図である。このブロック図は、ネットワークインターフェースを有する広い分野の電子システムを表すことを意図している。この電子システムは、例として、デスクトップコンピュータシステム、携体コンピュータシステム、サーバ、パーソナルデジタルアシスタント(PDA)、携帯電話、セットトップボックス、ゲームコンソール、衛星放送受信機、等を含む。
一実施例として、プロセッサ110は、フロントサイドバス115によりメモリコントローラハブ120に結合されてよい。図1の電子システムでは、シングルプロセッサが説明されているが、マルチプロセッサ実施例にも対応することができる。別の実施例では、プロセッサ110は、共通システムバスによりメモリコントローラハブ120に結合されてよい。プロセッサ110は、当技術分野で知られているどのようなタイプのプロセッサでもよく、例えば、カリフォルニア州サンタクララにあるインテル社から入手可能なペンティアム(登録商標)ファミリのプロセッサ、アイテニアムファミリのプロセッサ、およびジオンファミリのプロセッサがある。また、他のプロセッサも使用できる。
メモリコントローラハブ120は、メモリサブシステム125へのインターフェースを提供してよい。メモリサブシステムは、電子システムと共に使用されるどのようなタイプのメモリでも含むことができる。メモリコントローラハブ120は、入出力(I/O)コントローラハブ(ICH)130に結合されてもよい。一実施例では、ICH130は、システムと周辺I/Oデバイス180との間インターフェース、さらにシステムとネットワークインターフェース140との間インターフェースを提供してよい。このネットワークインターフェース140は、外部ネットワーク190とのインターフェースを提供してよい。ネットワーク190は、どのようなタイプのネットワークでもよく、有線または無線、例えば、ローカルエリアネットワークまたはワイドエリアネットワークでもよい。メモリコントローラハブ120は、デジタルシグナルプロセッサ185と結合されてもよい。
一実施例として、ICH130は、セキュリティおよび/または暗号化機能を提供するトラステッドモジュール170と結合されてよい。一実施例では、トラステッドモジュール170は、トラステッドプラットフォームモジュール(TPM)として以下に詳細が説明されている。トラステッドモジュール170は、セキュア識別子を提供してよく、例えば、ICH130または他のシステム構成要素に対しセキュアな方法の暗号キーを提供する。
組込みコントローラエージェント150は、ICH130およびネットワーク190と結合されてよい。組込みコントローラ150のネットワーク接続は、システム動作から独立していてよく、さらにプロセッサ110にて実行されるオペレーティングシステムからも独立してよい。一実施例として、組込みコントローラエージェント150は、マイクロコントローラまたはその他の処理回路、メモリ、およびインターフェース論理を含んでいてよい。組込みコントローラエージェント150の一実施例は、以下より詳細に説明されている。
一実施例として、組込みコントローラエージェント150は、割り込みインターフェースにてプロセッサ110に結合されてよい。例えば、組込みコントローラエージェント150は、ペンティアム(登録商標)プロセッサのSMIピンまたはアイテニアムプロセッサのPMIピン(一般的に、xMIライン155)により結合されてよい。他のプロセッサでは他のシステム割り込み信号を使用してよい。
ICH130は、組込みファームウェアエージェント160と結合されてもよい。一実施例として、組込みファームウェアエージェント160は、実行可能コンテンツを1つ以上のソフトウェアドライバの形でインテル32ビットファミリプロセッサ(すなわちIA−32プロセッサ)のシステム管理モード(SMM)、またはPMI信号の起動によりアイテニアム系プロセッサのネイティブモードにロードすることを可能とする方法でよい。IA32SMMコードの実行はSMI信号により開始され、アイテニアムプロセッサでは、PMI信号の起動により開始される。簡素化の目的で、これらは通常SMMと称される。
一実施例では、組込みファームウェアエージェント160は、第三者により書き込まれた可能性のある複数のドライバをSMM動作用にインストールしてもよい。複数のドライバを登録するエージェントの1つの例は、拡張可能ファームウェアインターフェース(EFI)ブートサービスモード(すなわちオペレーティングシステム起動前のモード)によって行われる。これは、xMI(PMIまたはSMI)信号のチップセットコントロールを摘要する1つのプラットフォーム構成要素と、ドライバを結びつける1つのプロセッサ特定構成要素から構成されてもよい。
一実施例では、組込みファームウェアエージェント160に格納されたコードは、ホストシステム立ち上げ時に、メモリサブシステム125のメモリ構成要素にコピーしてもよい。例として、SMM動作を支援するアーキテクチャにおいて、SMM期間に使用されるコードをSMRAM部分のメモリサブシステム125にシャドウコピーしてもよい。SMM動作をしている時に、プロセッサ110は、SMRAMに格納されている命令を実行してよい。
一実施例では、組込みコントローラエージェント150は、双方向エージェントバス165経由で、組込みファームウェアエージェント160に結合されてよい。双方向エージェントバス165経由で通信することにより、組込みコントローラエージェント150および組込みファームウェアエージェント160は、システムの管理容易化および/またはセキュリティ機能を提供するべく構成されてよい。
一実施例では、組込みコントローラエージェント150は、セキュリティ確認の目的で、例えば、リモートデバイスとのセキュアまたはトラステッド接続をネットワーク190経由でする前にインテグリティチェックを提供してよい。組込みコントローラエージェントは、システムのウィルススキャンを、リモートデバイスとの通信が安全か、または支援するかを決めるべく実行してよい。組込みファームウェアエージェント160は、オペレーティングシステムから独立したセキュアな記憶装置を、組込みコントローラエージェント150がインテグリティチェックを実行する目的で使用するべく提供してよい。
動作期間中には、組込みコントローラエージェント150は、単発のインテグリティチェックと比較してより強化されたセキュリティを提供する定期的なインテグリティチェックを実行してよい。組込みコントローラエージェント150は、リモート管理デバイスとの通信の前に、インテグリティチェックを実行してもよい。組込みコントローラエージェント150と組込みファームウェアエージェント160間の双方向通信を使用する別の例は、以下に説明されている。
図1に示すように、組込みコントローラエージェント150、組込みファームウェアエージェント160および双方向エージェントバス165は、個々のシステム要素として説明されている。物理的な実装において、組込みコントローラエージェント150、組込みファームウェアエージェント160および双方向エージェントバス165は、1つ以上の論理構成要素でよい。双方向エージェントバス165は、組込みコントローラエージェント150および組込みファームウェアエージェント160の機能構成要素間双方向通信を可能にする、どのような通信方法またはメッセージインターフェースでもよい。
組込みコントローラエージェント150および組込みファームウェアエージェント160の動作は、ここに説明されているようにホストシステムに機能を提供するべく、ホストオペレーティングシステムにロードする前、および/またはホストオペレーティングシステムがロードされた後に行われてよい。従って、ここに説明されているアーキテクチャは、広範囲な管理容易化および/またはセキュリティ機能を提供する。
図2は、組込みコントローラエージェント、組込みファームウェアエージェントとトラステッドモジュールとの間の相互作用実施例を示した概念ブロック図である。組込みコントローラエージェント150が、ネットワーク190を通してリモートデバイスとの通信を開始あるいは、通信に対し返答した時に、組込みコントローラエージェント150は、上記のxMI信号をアサートすることにより管理モード210を開始してよい。インテルプロセッサを使用した場合、管理モード210は、システム管理モード(SMM)に相当する。他のプロセッサを使用する場合は、他の管理モードを使用してよい。管理モード210は、組込みコントローラエージェント150の動作により使用されるので、これらの動作は、オペレーティングシステム200から独立して実行することができる。
一実施例では、組込みコントローラエージェント150が管理モード210を起動して、組込みファームウェアエージェント160が、組込みコントローラエージェント150により要求された動作を実行するべく割り込みサービス手順を提供する。一実施例では、組込みファームウェアエージェント160はEFIデバイスであってよい。EFIデバイスは、割り込みハンドリング手順がメモリ、たとえば、組込みファームウェアエージェント160からのアクセス可能なフラッシュメモリ、に書き込まれ格納されることを可能とする。割り込みハンドリング手順は、組込みコントローラエージェント150からのxMI信号に反応するべく使用される。
管理モード210が起動されると、組込みコントローラエージェント150は、オペレーティングシステム200から独立して管理容易化および/またはセキュリティ動作を実行してよい。例えば、組込みコントローラエージェント150がネットワーク190を通してリモートデバイスとセキュアな通信をしていれば、組込みコントローラエージェント150は、組込みコントローラエージェント150が所属するシステムを認証するべく、管理モード210にてトラステッドモジュール170と通信することができる。認証は、オペレーティングシステム200から独立しているので、組込みコントローラエージェント150は、オペレーティングシステム200に関するウィルスおよび/またはセキュリティ攻撃から隔離されている。
一実施例として、管理モード動作は、処理能力をオペレーティングシステム200と共有するべく、組込みコントローラ150に解放されている。例えば、マイクロソフト社から入手できるほとんどのウィンドウオペレーティングシステムは、タイマを使用して命令実行をチェックしており、前の命令から時間が超過(たとえば200ms)した場合にデバッグまたは不良動作が起動されてよい。管理モード動作を、解放することにより、組込みコントローラエージェント150は、システムリソース例えば、トラステッドモジュール170からのデータをアクセスする動作を実行中に、定期的にxMI信号をアサートすることができる。
図3は、組込みコントローラエージェントの動作実施例を示したフローチャートである。リセットに応答して、組込みコントローラエージェントは、初期化手順を実行してネットワーク接続300を初期化してよい。エージェント初期化は、エージェントを動作させる準備に要するどのような動作も含まれてよい。この様な動作は、例えば、エージェント初期化命令を有する読出し専用メモリまたはフラッシュメモリからの命令取り出しが含まれてよい。
一実施例では、初期化手順完了後、エージェントは、帯域外通信310を開始してよい。ネットワーク通信が帯域外と呼ばれるのは、組込みコントローラエージェントのネットワーク通信が、組込みコントローラエージェントが存在するシステムのオペレーティングシステムから独立していることによる。帯域外ネットワーク通信は、例えば、ネットワーク内ホストシステムの登録に関する動作、リモートネットワークノードへ応答しての管理容易化動作、セキュリティ動作、等を含んでもよい。
一実施例では、組込みコントローラエージェントは、システムイベント320を待機してよい。システムイベントは、オペレーティングシステムから独立して実行される動作に関するどの様なタイプのイベントでもよい。例えば、ホストオペレーティングシステムがウィルスまたはトロイの木馬の犠牲となった場合、ウィルス検出ソフトウェアによりシステムイベントを起動してよく、これによりウィルス除去プログラムの取り出し、またはシステムネットワーク接続を無効にしてウィルスまたはトロイの木馬の感染を防止する。
システムイベントに応答して、組込みコントローラエージェントはxMI信号(インテルプロセッサの場合)330をアサートしてよい。xMI信号のアサートにより、プロセッサはSMMに入り、オペレーティングシステムは、ホストシステムの制御を、例えば、オペレーティングシステムからアクセス不可のシステム管理メモリ内に格納されてもよいSMM割り込みハンドラに譲る。このようにシステムイベントは処理340されてよい。
図4は、組込みファームウェアエージェントの動作実施例を示したフローチャートである。リセットに応答して、組込みコントローラエージェントは、初期化手順400を実行してよい。1つの初期化手順実施例として、図5に従い詳細が下記に説明されている。
一実施例として、組込みファームウェアエージェントは、組込みコントローラエージェントが作動可能かどうか判断してよい、410。一実施例では、組込みコントローラエージェントは初期化手順完了を双方向エージェントバス経由で組込みファームウェアエージェントに知らせてよい。別の実施例では、組込みファームウェアエージェントおよび組込みコントローラエージェント両方が初期化された時に、ホストシステムの制御は、ホストオペレーティングシステム420に与えられてもよい。
組込みファームウェアエージェントおよび組込みコントローラエージェント両方が、ホストシステム制御をホストオペレーティングシステムに渡す前に、初期化完了できることで、セキュリティ、管理容易化、および/または他の機能を、ホストオペレーティングシステムに制御を与える前に、実行できる。もしxMIが生じれば、430、ホストシステムは、管理モード(MM)440、に入ってよい。MM期間中、組込みコントローラエージェント、組込みファームウェアエージェント,および/またはトラステッドモジュールは、xMI、450を処理する動作をしてよい。
図5は、組込みファームウェアエージェントの初期化プロセス実施例を示したフローチャートである。図5の例では、インテルプロセッサを使用したSMM動作に関連した特定動作を挙げているが、同様な機能を有している他のプロセッサも使用することができる。
リセット条件に応答して、組込みファームウェアエージェントはホストメモリおよび1つ以上の入出力(I/O)デバイス、500を初期化してよい。一実施例では、この初期化は、一般的な基本入出力システム(BIOS)により実行される初期化の一部あるいは全部であってよい。一実施例では、メモリの初期化後に組込みファームウェアエージェントは、メモリの試験、誤り訂正符号(ECC)の設定、システム管理メモリ(SMRAM)の有効化、および/または、システム管理コードのコア(SMMコア)510、のロードを実行してよい。
一実施例では、もし組込みファームウェアエージェントがSMMドライバ520、を検出すれば、組込みファームウェアエージェントは、SMMドライバ用にSMRAMの一領域を割り当ててよく、その後SMMに入り、SMMドライバをブートサービスメモリからSMRAMに移動してよい。もし組込みファームウェアエージェントがSMMドライバ520を検出しなければ、組込みファームウェアエージェントはファームウェアドライバ、540をチェックしてよい。
一実施例では、もし組込みファームウェアエージェントがファームウェアドライバ540を検出すれば、組込みファームウェアエージェントは、ディスクまたはフラッシュメモリからドライバをロードして、ドライバをシステムメモリに移動して、トラステッドモジュールレジスタ(例、トラステッドプラットフォームモジュール(TPM)プラットフォーム構成レジスタ(PCR))550をハッシュ延長してよい。もし組込みファームウェアエージェントがファームウェアドライバ540を検出しなければ、組込みファームウェアエージェントは、追加されたドライバ560をチェックしてよい。
一実施例では、もし組込みファームウェアエージェントが追加されたドライバ560を検出すれば、組込みファームウェアエージェントは、追加されたドライバのチェックに戻り、その追加されたドライバがSMMドライバ520でないか判断する。もし組込みファームウェアエージェントが追加されたドライバ560を検出しなければ、組込みファームウェアエージェントは、組込みコントローラエージェントが作動可能570か、どうか判断する。もし組込みコントローラエージェントが作動可能570ならば、組込みファームウェアエージェントは、ホストオペレーティングシステム580に制御を移譲してもよい。
組込みファームウェアエージェント,組込みコントローラエージェント,および/またはトラステッドモジュールの相互作用は、1つ以上の下記の管理容易化および/またはセキュリティ機能を提供することができる。以下の機能のリストは、実施例のリストであり、ここで説明されている組込みファームウェアエージェント,組込みコントローラエージェント,およびトラステッドモジュールが提供できる機能の網羅的リストを意図してはいない。
組込みファームウェアエージェント,組込みコントローラエージェント,トラステッドモジュール、および/またはホストシステムに入っているかもしれないフラッシュメモリは、ここに説明されているテクニックにより、セキュアに更新することができる。更新は、リモートデバイスから、オペレーティングシステムの相互作用無しで、組込みコントローラエージェントに提供できるので、オペレーティングシステムが正常に機能していない時にも更新可能であり、オペレーティングシステムへの攻撃に対し更なるセキュリティを提供することができる。リモート更新は、複数クライエントデバイスでのフラッシュメモリ更新に効果的なテクニックを提供することができる。
一実施例では、組込みコントローラエージェントはオペレーティングシステムの動作を監視してよく、オペレーティングシステムの状態またはモードに応じてセキュリティ方式を修正してよい。例えば、オペレーティングシステムが動作している時に、第1のセキュリティ方式を適用し、ホストシステムがSMMの時に、第2のセキュリティ方式を適用してよい。
組込みコントローラエージェント,組込みファームウェアエージェント,および/または、トラステッドモジュールは、ホストシステムの監視および記録取得を提供してよい。これは、オペレーティングシステムが提供する監視から独立しているか、あるいは異なるものであってもよい。例えば、組込みコントローラエージェントおよび組込みファームウェアエージェントは、プロセッサ性能カウンタおよびプロセッサ負荷を監視してよく、もし所定のしきい値を超えれば、メッセージを組込みコントローラエージェントのネットワーク接続を経由してリモートデバイスに送ってもよい。
組込みコントローラエージェント,組込みファームウェアエージェント,および/またはトラステッドモジュールは、ホストディスクドライブのホスト保護領域(HPA)への支援を提供してよい。HPAは、信用証明格納、大きな記録ファイル等に使用されてよい。トラステッドモジュールおよびトラステッドモジュールから提供されるより進展した暗号化機能へのアクセスを有することにより、組込みコントローラエージェント,組込みファームウェアエージェント,およびトラステッドモジュールは統合して機能でき、ネットワーク通信の相互認証機能を提供してよい。
一実施例では、プリブート実行環境(PXE)動作を、ホストプロセッサから組込みコントローラエージェントおよび組込みファームウェアエージェントに解放してよい。またPXEによるPXEサーバ発見は、組込みファームウェアエージェント,組込みコントローラエージェント、および/またはトラステッドモジュールにより実行されてもよい。
例えば、SSL(Secure Socket Layer)セッションを使用する相互認証は、サーバへの認証を提供するべくトラステッドモジュールにより提供される認証機能を使用して達成してよい。一実施例では、セキュリティ動作、例えばウィルス検索は、組込みファームウェアエージェントがホストシステムの制御を、ホストオペレーティングシステムに移譲する前に実行してよい。もしウィルスが検出されれば、組込みコントローラエージェントは、ウィルス検出に応答して、組込みコントローラエージェントのネットワーク接続を使用してリモートデバイスと交信してよい。
一実施例では、組込みコントローラエージェントは、セキュアメッセージをリモートデバイスへ、独立したネットワーク接続経由で送るべく、拡張マークアップ言語デジタル署名(XML DSIG)を使用してよい。組込みコントローラエージェントは、SMMにある組込みファームウェアエージェント経由で、暗号化動作を提供すべくトラステッドモジュールと交流することができる。これらのセキュリティ動作は、ホストシステムオペレーティングシステムから独立しているので、ホストシステム認証に使用してよい。
図6は、組込みファームウェアエージェントの実施例を示したブロック図である。図6の例では、組込みファームウェアエージェントは、2003年11月26日刊行、カリフォルニア州サンタクララのインテル社より入手可能なEFI仕様書、バーション1.10、にて定義されている、拡張ファームウェアインターフェース(EFI)でよい。別の実施例では、他のファームウェア構成要素を使用することもできる。
一実施例では、組込みファームウェアエージェントは、システムインターフェース605に結合されたエージェントバス600を含んでよい。システムインターフェース605は、組込みファームウェアエージェントがホストシステムと通信するインターフェースを提供してよい。組込みファームウェアエージェントは、バス600に結合されてもよい双方向エージェントバスインターフェース650を更に含んでよい。これにより組込みファームウェアエージェントは、上記の説明のように、組込みコントローラエージェントと通信することができる。
一実施例では、組込みファームウェアエージェントは、エージェントバス600に結合されもよいダイナミックメモリ610を更に含んでよい。ダイナミックメモリ610は、動作期間中に使用される命令、および/または、データ用の記憶装置を提供してよい。組込みファームウェアエージェントは、更に不揮発性記憶装置620を含んでよい。これは静的データ、および/または命令を格納するべくエージェントバス600に結合されてよい。
一実施例では、組込みファームウェアエージェントは、エージェントバス600に結合された制御回路630を含んでよい。これは、ダイナミックメモリ610、および/または不揮発性記憶装置620により提供された命令を実行、および/または制御動作を実行してよい。組込みファームウェアエージェントは、エージェントバス600に結合されたSMMモジュール640を含んでもよい。SMMモジュール640は、ホストシステムにSMM機能を提供するどのような要素の組み合せでもよい。例えば、SMMの時は、組込みファームウェアエージェントは、ダイナミックメモリ610および/または不揮発性記憶装置620に格納されたデータ,および/または命令に従い、SMIハンドリング動作を提供してよい。
一実施例として、制御回路630は、SMM期間に選択的に起動される。ホストシステムがSMMの中にない時には、制御回路630は、待機、または非アクティブ状態にもできる。一実施例では、組込みファームウェアエージェントは、ホストシステムの全てのメモリへのアクセスを有している。これは、例えば、SMRAM,HPAを含んでおり、さらにアクセス制限を有した他のメモリ領域を含む可能性もある。
図7は、組込みコントローラエージェントの実施例を示したブロック図である。図7の例では、組込みコントローラエージェントは、ここで説明されているように動作するマイクロコントローラを基本としたシステム構成要素でよい。別の実施例では、別のコントローラ構成要素を使用することもできる。
一実施例では、トラステッドモジュールは、システムインターフェース705に結合したエージェントバス700を含んでよい。システムインターフェース705は、組込みコントローラエージェントがホストシステムと通信するインターフェースを提供してよい。組込みコントローラエージェントは、更に双方向エージェントバスインターフェース760を含んでよい。これはバス700に結合され、上記の説明のように、組込みコントローラエージェントが組込みファームウェアエージェントと通信することを可能とする。
一実施例では、組込みコントローラエージェントは、エージェントバス700に結合されてもよいダイナミックメモリ710を更に含む。ダイナミックメモリ710は、動作時に使用される命令、および/またはデータの記憶装置を提供してよい。組込みコントローラエージェントは、更に不揮発性記憶装置720を含んでよい。これは静的データ、および/または、命令を格納するべくエージェントバス700に結合されてよい。
一実施例では、組込みコントローラエージェントは、エージェントバス700に結合された制御回路730を含んでよい。これは、ダイナミックメモリ710、および/または不揮発性記憶装置720により提供される命令を実行、および/または制御動作を実行するべくマイクロコントローラとして実装されてよい。当技術分野で知られている、あらゆるタイプのマイクロコントローラ、または同様な制御回路を使用することができる。
組込みコントローラエージェントは、エージェントバス700に結合されたエージェント/ネットワークインターフェース740を含んでよい。エージェント/ネットワークインターフェース740は、組込みコントローラエージェント用のネットワーク接続を提供してよい。これは、ホストシステムのネットワークインターフェースおよびオペレーティングシステムから独立している。エージェント/ネットワークインターフェース740は、ホストシステムのオペレーティングシステムから独立して組込みコントローラエージェントがリモートデバイスと通信するのを可能とする。これにより、組込みコントローラエージェントは、管理容易化、セキュリティ、および/または、他の機能を、オペレーティングシステム制御により実行することに比べ、よりセキュアおよび透明な方法で実行することが可能となる。
一実施例として、制御回路730は、非アクティブ状態になっていない。これにより、制御回路730および組込みコントローラエージェントは、内部および外部のイベントに応答することが可能となる。一実施例では、組込みコントローラエージェントは、ホストシステムのメモリ全部に対してアクセスを有していない。この様な実施例では、メモリアクセスおよび/または保護メモリ領域に依存する命令の実行は、組込みファームウェアエージェントによりアクセスしてよい。
図8は、トラステッドモジュールの実施例を示したブロック図である。図8の例では、トラステッドモジュールは、2003年10月2日刊行、オレゴン州ポートランドのトラステッドコンピューティンググループより入手可能なTPM仕様書、バーション1.2、にて定義されている、トラステッドプラットフォームモジュール(TPM)でよい。別の実施例では、トラステッドモジュールの別の実装にて、例えば、セキュア格納デバイスを、セキュリティ動作の支援を提供するべく使用することができる。
一実施例では、トラステッドモジュールは、システムインターフェース805に結合されたバス800を含んでよい。システムインターフェースは、トラステッドモジュールがホストシステムと通信するインターフェースを提供してよい。トラステッドモジュールは、暗号化動作用に乱数を発生するべく、バス800に結合された乱数発生器810を含んでよい。さらにトラステッドモジュールは、トラステッドモジュール動作に使用するデータ、および/または、命令を格納するべく、バス800に結合された不揮発性記憶装置815を含んでよい。
トラステッドモジュールは、プラットフォーム構成レジスタ820を、更に含んでよい。これは、ホストシステムのインテグリティに関する保護情報を格納するべく使用してよい。一実施例では、トラステッドモジュールは、AIK(Attested Identity Key)825を格納するべく、バス800に結合された格納構成要素も含んでいる。一実施例では、AIK825は、2048ビットRSAキーでよい。これは、トラステッドモジュール、および/または、ホストシステムにより生成された情報をデジタルに署名するべく使用できる。他のAIK構成も使用することができる。
プログラムコード830は、バス800に結合された、揮発性または不揮発性どちらかのメモリに格納されてよい。プログラムコード830は、セキュリティ動作を提供するべくトラステッドモジュールを動作させる命令を含んでいる。一実施例では、実行エンジン835は、プログラムコード830を実行するべくバス800に結合されている。トラステッドモジュールは、更に選択モジュール840を含んでよい。これは、ホストシステム使用者が、トラステッドモジュールの動作を有効化あるいは無効化することを可能にする。選択モジュール840は、例えば、ホストシステム上の物理的なスイッチにすることができる。
一実施例では、トラステッドモジュールは、暗号化動作を実行するべく、バス800に結合された暗号化エンジン845を含んでよい。暗号化エンジン845は、例えば、RSA暗号化動作を実行するRSAエンジンでよい。他の暗号化プロトコル、例えば、非対称暗号化プロトコルも暗号化エンジン845により支援されてよい。トラステッドモジュールは、暗号化動作用に1つ以上のキーを生成するべく、バス800に結合されたキー生成器850を含んでよい。
ハッシュエンジン855は、バス800と結合されてよく、さらに暗号化動作を支援するべくハッシング機能を提供してよい。一実施例では、ハッシュエンジン855はSHA−1エンジンでよく、トラステッドモジュールにより提供されるセキュリティ機能用に使用されるべくSHA(Secure Hash Algorithm)動作を実行してよい。別の実施例では、ハッシュエンジン855は、DSAエンジンでよい。またハッシュエンジン855は、その他の暗号化プロトコルを支援してもよい。
明細書における「実施例」、または「1つの実施例」は、その実施例に関連して説明された特定の機能、構造、あるいは、特徴が、少なくとも1つの本発明の実施例に含まれている。明細書内に頻出する「1つの実施例」は、必ずしも同じ実施例を指すわけではない。
以上、複数の実施形態を用いて本発明を説明したが、当業者は、本発明の技術的範囲は上記実施形態に記載の範囲には限定されないことを理解でき、上記実施形態に特許請求の範囲に記載された範囲内において多様な変更又は改良を加えることができる。従って、上記説明は、発明を限定するものでなく例示に過ぎない。

Claims (29)

  1. 装置であって、
    組込みファームウェアエージェントであって、プロセッサによる割り込み信号の受信に応じて前記組込みファームウェアエージェントが所在するホストシステムの制御を、前記プロセッサが実行するホストオペレーティングシステムから前記ホストオペレーティングシステムがアクセスできない命令が譲り受ける管理モードにおいて前記プロセッサが実行する前記命令を格納する、組込みファームウェアエージェントと、
    前記ホストオペレーティングシステムが制御するネットワークインターフェースとは異なるネットワークインターフェースを有する組込みコントローラエージェントであって、前記ホストオペレーティングシステムから独立して動作し、前記割り込み信号を前記プロセッサに送信することによって前記管理モードを起動し、前記異なるネットワークインターフェースを経由して、前記組込みコントローラエージェントが通信するのを可能とする、組込みコントローラエージェントと、
    前記組込みファームウェアエージェントおよび前記組込みコントローラエージェントに結合されたトラステッドモジュールであって、前記ホストオペレーティングシステムが前記ホストシステムの制御を取得するのに先立ち、暗号化動作およびリモートデバイスとの相互認証を実行するトラステッドモジュールと
    を含み、
    前記組込みファームウェアエージェントに格納された前記命令を実行する前記プロセッサは、前記トラステッドモジュールを使用して、前記組込みコントローラエージェントからの要求にサービスするとともに、前記ホストシステムに管理機能を提供し、
    前記組込みコントローラエージェントが送信した前記割り込み信号を受信したことに応じて、前記管理機能を実行する前記プロセッサは、前記ホストオペレーティングシステムから独立して、メモリを更新する装置。
  2. 前記管理機能は、前記ホストオペレーティングシステムがロードされる前に提供される請求項1に記載の装置。
  3. 前記管理機能は、前記ホストオペレーティングシステムがロードされた後に提供される請求項1または2に記載の装置。
  4. 前記管理機能は、ホスト機能の監視および前記異なるネットワークインターフェースを経由するリモートデバイスへの報告を含む請求項1から3のいずれか1項に記載の装置。
  5. 前記管理機能を実行する前記プロセッサは、前記組込みコントローラエージェント経由で前記ホストシステムにブートサービスを提供することを含む請求項1から4のいずれか1項に記載の装置。
  6. 前記組込みファームウェアエージェントに格納された前記命令は、前記ホストシステムのセキュリティ機能を含み、前記セキュリティ機能は、前記トラステッドモジュールが実行する認証機能を使用して、ネットワーク通信セッションの相互認証機能を提供することを含む請求項1から5のいずれか1項に記載の装置。
  7. 前記セキュリティ機能は、前記ホストオペレーティングシステムがロードされる前に提供される請求項6に記載の装置。
  8. 前記セキュリティ機能は、前記ホストオペレーティングシステムがロードされた後に提供される請求項6または7に記載の装置。
  9. 方法であって、
    ホストシステム内に管理モードを起動させる手順であって、前記管理モードが起動された場合に、プロセッサが実行するホストオペレーティングシステムが一時的に前記ホストシステムの制御を、組込みファームウェアエージェントが格納し、前記ホストオペレーティングシステムがアクセスできない、命令に譲る管理モードを、前記ホストオペレーティングシステムが制御するネットワークインターフェースとは異なるネットワークインターフェースを有する組込みコントローラエージェントにより起動させる手順と、
    前記管理モードの間に、前記組込みファームウェアエージェントに格納された前記命令を実行する前記プロセッサは、トラステッドモジュールを使用して、前記組込みコントローラエージェントからの要求にサービスするとともに、前記ホストシステムに管理機能を提供する手順と、
    を含み、
    前記組込みコントローラエージェントが送信した割り込み信号を受信したことに応じて、前記管理機能を実行する前記プロセッサは、前記ホストオペレーティングシステムから独立して、メモリを更新し、
    前記トラステッドモジュールは、前記ホストオペレーティングシステムが前記ホストシステムの制御を取得するのに先立ち、リモートデバイスとの相互認証を実行する方法。
  10. 前記管理モードの起動は、
    前記組込みコントローラエージェントによって管理割り込みをアサートする手順と、
    前記管理割り込みに応答して前記管理モードに入る手順と
    を含む請求項9に記載の方法。
  11. 前記管理機能は、前記ホストオペレーティングシステムがロードされる前に提供される請求項9または10に記載の方法。
  12. 前記管理機能は、前記ホストオペレーティングシステムがロードされた後に提供される請求項9から11のいずれか1項に記載の方法。
  13. 前記管理機能は、ホスト機能の監視および前記異なるネットワークインターフェースを経由するリモートデバイスへの報告を含む請求項9から12のいずれか1項に記載の方法。
  14. 前記管理機能を実行する前記プロセッサは、前記組込みコントローラエージェント経由で前記ホストシステムにブートサービスを提供することを含む請求項9から13のいずれか1項に記載の方法。
  15. 前記組込みファームウェアエージェントに格納された前記命令は、前記ホストシステムのセキュリティ機能を含み、前記セキュリティ機能は、前記トラステッドモジュールが実行する認証機能を使用して、ネットワーク通信セッションの相互認証機能を提供することを含む請求項9から14のいずれか1項に記載の方法。
  16. 前記セキュリティ機能は、前記ホストオペレーティングシステムがロードされる前に提供される請求項15に記載の方法。
  17. 前記セキュリティ機能は、前記ホストオペレーティングシステムがロードされた後に提供される請求項15または16に記載の方法。
  18. 複数の命令を有するプログラムであって、前記複数の命令が実行された場合に、1つ以上の処理要素に、
    プロセッサが実行するホストオペレーティングシステムが一時的にホストシステムの制御を、組込みファームウェアエージェントが格納し、前記ホストオペレーティングシステムがアクセスできない、命令に譲る管理モードを、前記ホストオペレーティングシステムが制御するネットワークインターフェースとは異なるネットワークインターフェースを有する組込みコントローラエージェントにより起動させる手順と、
    前記組込みファームウェアエージェントに格納された前記命令を実行する前記プロセッサに、トラステッドモジュールを使用して、前記組込みコントローラエージェントからの要求にサービスさせるとともに、前記ホストシステムに管理機能を提供させる手順と、
    を含み、
    前記組込みコントローラエージェントが送信した割り込み信号を受信したことに応じて、前記管理機能を実行するプロセッサは、前記ホストオペレーティングシステムから独立して、メモリを更新し、
    前記トラステッドモジュールは、前記ホストオペレーティングシステムが前記ホストシステムの制御を取得するのに先立ち、リモートデバイスとの相互認証を実行するプログラム。
  19. 前記1つ以上の処理要素が前記管理モードを起動させる前記複数の命令は、
    実行された場合に前記1つ以上の処理要素に、
    前記組込みコントローラエージェントによって管理割り込みをアサートさせ、
    前記管理割り込みに応答して前記管理モードに入らせる命令を含む請求項18に記載のプログラム。
  20. 前記管理機能は、前記ホストオペレーティングシステムがロードされる前に提供される請求項18または19に記載のプログラム。
  21. 前記管理機能は、前記ホストオペレーティングシステムがロードされた後に提供される請求項18から20のいずれか1項に記載のプログラム。
  22. 前記管理機能は、ホスト機能の監視および前記異なるネットワークインターフェースを経由するリモートデバイスへの報告を含む請求項18から21のいずれか1項に記載のプログラム。
  23. 前記管理機能を実行する前記プロセッサは、前記組込みコントローラエージェント経由で前記ホストシステムにブートサービスを提供することを含む請求項18から22のいずれか1項に記載のプログラム。
  24. 前記組込みファームウェアエージェントに格納された前記命令は、前記ホストシステムのセキュリティ機能を含み、前記セキュリティ機能は、前記トラステッドモジュールが実行する認証機能を使用して、ネットワーク通信セッションの相互認証機能を提供することを含む請求項18から23のいずれか1項に記載のプログラム。
  25. 前記セキュリティ機能は、前記ホストオペレーティングシステムがロードされる前に提供される請求項24に記載のプログラム。
  26. 前記セキュリティ機能は、前記ホストオペレーティングシステムがロードされた後に提供される請求項24または25に記載のプログラム。
  27. 前記組込みファームウェアエージェントと前記組込みコントローラエージェントとの間で、少なくとも初期化手順の完了を通知するメッセージを送信するべく前記組込みファームウェアエージェントと前記組込みコントローラエージェントとの間に結合される双方向エージェントバスを更に備える請求項1から8のいずれか1項に記載の装置。
  28. 前記サービスする手順は、前記管理モードの期間中に、組込みファームウェアエージェントにより、双方向エージェントバスを通して前記組込みコントローラエージェントと通信することを含む、請求項9から17のいずれか1項に記載の方法。
  29. 前記サービスさせる手順は、前記管理モードの期間中に、組込みファームウェアエージェントにより、双方向エージェントバスを通して前記組込みコントローラエージェントと通信することを含む、請求項18から26のいずれか1項に記載のプログラム。
JP2007503113A 2004-03-24 2005-03-14 協調型組込みエージェント Expired - Fee Related JP4664966B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/809,316 US7653727B2 (en) 2004-03-24 2004-03-24 Cooperative embedded agents
PCT/US2005/008616 WO2005101197A2 (en) 2004-03-24 2005-03-14 Cooperative embedded agents

Publications (2)

Publication Number Publication Date
JP2007528083A JP2007528083A (ja) 2007-10-04
JP4664966B2 true JP4664966B2 (ja) 2011-04-06

Family

ID=34991452

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007503113A Expired - Fee Related JP4664966B2 (ja) 2004-03-24 2005-03-14 協調型組込みエージェント

Country Status (6)

Country Link
US (1) US7653727B2 (ja)
EP (1) EP1727625B1 (ja)
JP (1) JP4664966B2 (ja)
KR (1) KR100855803B1 (ja)
CN (1) CN1925926B (ja)
WO (1) WO2005101197A2 (ja)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
CA2435655A1 (en) * 2003-07-21 2005-01-21 Symbium Corporation Embedded system administration
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
US7216189B2 (en) * 2004-07-20 2007-05-08 Hewlett-Packard Development Company, L.P. Single BIOS technique for supporting processors with and without 64-bit extensions
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US7594269B2 (en) * 2004-10-29 2009-09-22 Intel Corporation Platform-based identification of host software circumvention
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
US8176564B2 (en) 2004-11-15 2012-05-08 Microsoft Corporation Special PC mode entered upon detection of undesired state
US7360253B2 (en) * 2004-12-23 2008-04-15 Microsoft Corporation System and method to lock TPM always ‘on’ using a monitor
US20060143209A1 (en) * 2004-12-29 2006-06-29 Zimmer Vincent J Remote management of a computer system
US7631354B2 (en) * 2004-12-30 2009-12-08 Intel Corporation System security agent authentication and alert distribution
US7571474B2 (en) * 2004-12-30 2009-08-04 Intel Corporation System security event notification aggregation and non-repudiation
US8418226B2 (en) * 2005-03-18 2013-04-09 Absolute Software Corporation Persistent servicing agent
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US7739517B2 (en) * 2005-03-31 2010-06-15 Intel Corporation Hardware-based authentication of a software program
CA2504333A1 (en) * 2005-04-15 2006-10-15 Symbium Corporation Programming and development infrastructure for an autonomic element
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
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
US7870565B2 (en) * 2005-06-30 2011-01-11 Intel Corporation Systems and methods for secure host resource management
US7669242B2 (en) * 2005-06-30 2010-02-23 Intel Corporation Agent presence monitor configured to execute in a secure environment
US8839450B2 (en) 2007-08-02 2014-09-16 Intel Corporation Secure vault service for software components within an execution environment
US7953980B2 (en) * 2005-06-30 2011-05-31 Intel Corporation Signed manifest for run-time verification of software program identity and integrity
US20070006307A1 (en) * 2005-06-30 2007-01-04 Hahn Scott D Systems, apparatuses and methods for a host software presence check from an isolated partition
US20070067590A1 (en) * 2005-09-22 2007-03-22 Uday Savagaonkar Providing protected access to critical memory regions
US7565685B2 (en) * 2005-11-12 2009-07-21 Intel Corporation Operating system independent data management
US7565567B2 (en) 2005-11-18 2009-07-21 Intel Corporation Highly available computing platform
US8566606B2 (en) * 2006-04-21 2013-10-22 Interdigital Technology Corporation Apparatus and method for performing trusted computing integrity measurement reporting
US20080022124A1 (en) * 2006-06-22 2008-01-24 Zimmer Vincent J Methods and apparatus to offload cryptographic processes
US20070300299A1 (en) * 2006-06-27 2007-12-27 Zimmer Vincent J Methods and apparatus to audit a computer in a sequestered partition
US20080046546A1 (en) * 2006-08-18 2008-02-21 Parmar Pankaj N EFI based mechanism to export platform management capabilities to the OS
CN100461966C (zh) * 2006-09-08 2009-02-11 西安交通大学 基于嵌入式移动终端设备与支撑移动协同服务的综合平台
US7802050B2 (en) * 2006-09-29 2010-09-21 Intel Corporation Monitoring a target agent execution pattern on a VT-enabled system
US7882318B2 (en) * 2006-09-29 2011-02-01 Intel Corporation Tamper protection of software agents operating in a vitual technology environment methods and apparatuses
US8254579B1 (en) * 2007-01-31 2012-08-28 Hewlett-Packard Development Company, L.P. Cryptographic key distribution using a trusted computing platform
US8149747B2 (en) * 2007-09-28 2012-04-03 Intel Corporation Power saving operation of always-connected wireless roaming
US8099718B2 (en) 2007-11-13 2012-01-17 Intel Corporation Method and system for whitelisting software components
US8266707B2 (en) 2008-02-28 2012-09-11 Intel Corporation Tamper resistant method, apparatus and system for secure portability of digital rights management-protected content
US8082582B2 (en) * 2008-05-21 2011-12-20 Mediatek Inc. Authorization system of navigation device and associated authorization method
US8832454B2 (en) 2008-12-30 2014-09-09 Intel Corporation Apparatus and method for runtime integrity verification
US8364601B2 (en) * 2008-12-31 2013-01-29 Intel Corporation Methods and systems to directly render an image and correlate corresponding user input in a secure memory domain
US8578138B2 (en) 2009-08-31 2013-11-05 Intel Corporation Enabling storage of active state in internal storage of processor rather than in SMRAM upon entry to system management mode
US8151135B2 (en) * 2010-04-22 2012-04-03 Dell Products L.P. System and method for recovery of primary storage resource failure
US8856534B2 (en) 2010-05-21 2014-10-07 Intel Corporation Method and apparatus for secure scan of data storage device from remote server
JP6084564B2 (ja) * 2010-06-11 2017-02-22 カーディナルコマース コーポレーション 安全なオーダー・マネジメント・システムのデータ暗号化、復号化、およびセグメント化の方法およびシステム
WO2012039713A1 (en) * 2010-09-23 2012-03-29 Arris Group, Inc. Accessing an embedded application in an embedded device
US8701183B2 (en) * 2010-09-30 2014-04-15 Intel Corporation Hardware-based human presence detection
US8375221B1 (en) 2011-07-29 2013-02-12 Microsoft Corporation Firmware-based trusted platform module for arm processor architectures and trustzone security extensions
US9094385B2 (en) 2011-08-05 2015-07-28 Battelle Memorial Institute Intelligent sensor and controller framework for the power grid
JP5543949B2 (ja) * 2011-09-21 2014-07-09 株式会社東芝 制御装置およびモニタプログラム
US8938796B2 (en) 2012-09-20 2015-01-20 Paul Case, SR. Case secure computer architecture
JP5799170B2 (ja) * 2013-07-01 2015-10-21 株式会社日立製作所 制御システム、制御方法及びコントローラ
US20160036908A1 (en) * 2014-08-01 2016-02-04 Qualcomm Incorporated Adaptive advertisement by host devices and discovery by embedded devices
RU2595511C2 (ru) * 2014-12-05 2016-08-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ ограничения работы доверенных приложений при наличии подозрительных приложений
US9577911B1 (en) 2016-03-21 2017-02-21 Black Cloud Analytics, Inc. Distributed computation system incorporating agent network, paths and associated probes
US10223094B2 (en) * 2016-09-30 2019-03-05 Intel Corporation Initializing a system on a chip
WO2019119408A1 (en) * 2017-12-22 2019-06-27 Intel Corporation Manageability engine and automatic firmware validation
TWI687868B (zh) * 2018-02-12 2020-03-11 緯創資通股份有限公司 電腦系統及其中斷事件處理方法
US10649688B1 (en) * 2018-11-01 2020-05-12 Intel Corporation Precise longitudinal monitoring of memory operations
US11252138B2 (en) * 2019-01-24 2022-02-15 Dell Products L.P. Redundant device locking key management system
US12130678B2 (en) * 2021-09-03 2024-10-29 Dell Products L.P. System and method of configuring an information handling system based at least on an ambient temperature
US12322379B2 (en) * 2022-08-29 2025-06-03 Dell Products, L.P. Contextual language selection for live transcription of collaboration session audio in heterogenous computing platforms
US20250363218A1 (en) * 2024-05-23 2025-11-27 Dell Products L.P. Systems and methods for handling embedded controller diagnostic tests using a hardware-based security architecture driver of a heterogenous computing platform

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6282645B1 (en) * 1994-02-28 2001-08-28 Kabushiki Kaisha Toshiba Computer system for reading/writing system configuration using I/O instruction
US6178550B1 (en) * 1995-01-31 2001-01-23 Dell Usa Mechanism for optimizing location of machine-dependent code
US6093213A (en) * 1995-10-06 2000-07-25 Advanced Micro Devices, Inc. Flexible implementation of a system management mode (SMM) in a processor
US5602918A (en) 1995-12-22 1997-02-11 Virtual Open Network Environment Corp. Application level security system and method
US5898861A (en) * 1996-10-18 1999-04-27 Compaq Computer Corporation Transparent keyboard hot plug
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
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
FI105739B (fi) 1998-06-10 2000-09-29 Ssh Comm Security Oy Verkkoon kytkettävä laite ja menetelmä sen asennusta ja konfigurointia varten
SG83684A1 (en) * 1998-07-07 2001-10-16 Compaq Computer Corp Computer system performing machine specific tasks before going to a low power state
US6408387B1 (en) 1999-01-22 2002-06-18 Intel Corporation Preventing unauthorized updates to a non-volatile memory
US6484262B1 (en) * 1999-01-26 2002-11-19 Dell Usa, L.P. Network controlled computer system security
US6886102B1 (en) 1999-07-14 2005-04-26 Symantec Corporation System and method for protecting a computer network against denial of service attacks
JP2003507784A (ja) 1999-08-13 2003-02-25 ヒューレット・パッカード・カンパニー 記憶されたデータの使用に対する強制的な制限
US6581159B1 (en) 1999-12-23 2003-06-17 Intel Corporation Secure method of updating bios by using a simply authenticated external module to further validate new firmware code
US6792556B1 (en) * 2000-05-31 2004-09-14 Dell Products L.P. Boot record recovery
JP3714119B2 (ja) * 2000-06-13 2005-11-09 日本電気株式会社 Biosプリブート環境を利用したユーザ認証型ネットワークosブート方法及びシステム
US20030037237A1 (en) 2001-04-09 2003-02-20 Jean-Paul Abgrall Systems and methods for computer device authentication
EP1249964A3 (en) 2001-04-12 2004-01-07 Matsushita Electric Industrial Co., Ltd. Reception terminal, key management apparatus, and key updating method for public key cryptosystem
US7061899B2 (en) 2001-05-01 2006-06-13 Hewlett-Packard Development Company, L.P. Method and apparatus for providing network security
US20030037244A1 (en) 2001-08-16 2003-02-20 International Business Machines Corporation System management interrupt generation upon completion of cryptographic operation
CN1403915A (zh) * 2001-09-10 2003-03-19 英业达股份有限公司 一种计算机防病毒方法及使用这种方法的计算机
US6978018B2 (en) 2001-09-28 2005-12-20 Intel Corporation Technique to support co-location and certification of executable content from a pre-boot space into an operating system runtime environment
US7243230B2 (en) 2001-11-16 2007-07-10 Microsoft Corporation Transferring application secrets in a trusted operating system environment
US7280541B2 (en) 2002-03-15 2007-10-09 Broadcom Corporation Packet filtering based on conditional expression table
US7343493B2 (en) 2002-03-28 2008-03-11 Lenovo (Singapore) Pte. Ltd. Encrypted file system using TCPA
US7318173B1 (en) * 2002-06-03 2008-01-08 National Semiconductor Corporation Embedded controller based BIOS boot ROM select
US20040019805A1 (en) 2002-07-25 2004-01-29 Perkins Gregory M. Apparatus and method for securing a distributed network
KR100929870B1 (ko) * 2002-12-04 2009-12-04 삼성전자주식회사 컴퓨터 시스템의 바이오스 보안 유지방법
US6651288B1 (en) * 2003-01-21 2003-11-25 Margie Ilene Hackett Shoe sole cleaner box
US7392399B2 (en) 2003-05-05 2008-06-24 Sun Microsystems, Inc. Methods and systems for efficiently integrating a cryptographic co-processor
US7685436B2 (en) 2003-10-02 2010-03-23 Itt Manufacturing Enterprises, Inc. System and method for a secure I/O interface
US7225325B2 (en) 2003-12-30 2007-05-29 International Business Machines Corporation Customizing a computer system by using stored configuration parameters in a configuration mechanism
US20050166213A1 (en) 2003-12-31 2005-07-28 International Business Machines Corporation Remote deployment of executable code in a pre-boot environment
US20050204155A1 (en) 2004-03-09 2005-09-15 Nec Laboratories America, Inc Tamper resistant secure architecture
US7349537B2 (en) 2004-03-11 2008-03-25 Teknovus, Inc. Method for data encryption in an ethernet passive optical network
KR100599112B1 (ko) * 2004-05-08 2006-07-13 삼성전자주식회사 Pci 시스템에서 에이전트간 통신 방법 및 통신 장치
US7506149B2 (en) * 2004-08-27 2009-03-17 Intel Corporation Method, program and system to update files in a computer system

Also Published As

Publication number Publication date
JP2007528083A (ja) 2007-10-04
EP1727625A2 (en) 2006-12-06
CN1925926A (zh) 2007-03-07
WO2005101197A3 (en) 2006-06-01
US7653727B2 (en) 2010-01-26
CN1925926B (zh) 2012-03-28
EP1727625B1 (en) 2015-07-22
WO2005101197A2 (en) 2005-10-27
KR20070001198A (ko) 2007-01-03
KR100855803B1 (ko) 2008-09-01
US20050216577A1 (en) 2005-09-29

Similar Documents

Publication Publication Date Title
JP4664966B2 (ja) 協調型組込みエージェント
US11347856B2 (en) Bios method to block compromised preboot features
KR101453266B1 (ko) 서비스 프로세서 컴플렉스 내의 데이터 저장을 위한 요구 기반 usb 프록시
US7424745B2 (en) Anti-virus fix for intermittently connected client computers
CN101770406B (zh) 用于运行时间完整性校验的设备和方法
JP5881835B2 (ja) 基本入出力システム(bios)の機能にアクセスするウェブベースのインターフェース
EP2831792B1 (en) Providing an immutable antivirus payload for internet ready compute nodes
CN107567629B (zh) 在可信执行环境容器中的动态固件模块加载器
Heasman Implementing and detecting a pci rootkit
JP6063941B2 (ja) システム管理要求のための仮想高特権モード
US11194588B2 (en) Information handling systems and method to provide secure shared memory access at OS runtime
US20080244257A1 (en) Server active management technology (AMT) assisted secure boot
US20090172381A1 (en) Enhanced network and local boot of unified extensible firmware interface images
US20130061032A1 (en) External boot device, external boot method, information processing apparatus, and network communication system
US7587765B2 (en) Automatic virus fix
US7900033B2 (en) Firmware processing for operating system panic data
US20050138427A1 (en) Automatic virus fix using UUID based scheduling
US10684904B2 (en) Information handling systems and methods to selectively control ownership of a hardware based watchdog timer (WDT)
CN108139901B (zh) 使用外部设备的运行时间验证
US7752659B2 (en) Packet filtering in a NIC to control antidote loading
US11340796B2 (en) Method for managing sleep mode at a data storage device and system therefor

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090929

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20091225

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100107

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100127

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100203

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100226

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100329

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100901

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101125

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140114

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees