JP2005528665A - システムインテグリティとレガシー環境とを提供するための方法 - Google Patents

システムインテグリティとレガシー環境とを提供するための方法 Download PDF

Info

Publication number
JP2005528665A
JP2005528665A JP2003531310A JP2003531310A JP2005528665A JP 2005528665 A JP2005528665 A JP 2005528665A JP 2003531310 A JP2003531310 A JP 2003531310A JP 2003531310 A JP2003531310 A JP 2003531310A JP 2005528665 A JP2005528665 A JP 2005528665A
Authority
JP
Japan
Prior art keywords
environment
code
virtual machine
machine monitor
mode
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.)
Pending
Application number
JP2003531310A
Other languages
English (en)
Other versions
JP2005528665A5 (ja
Inventor
ジマー,ヴィンセント
Original Assignee
インテル コーポレイション
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 インテル コーポレイション filed Critical インテル コーポレイション
Publication of JP2005528665A publication Critical patent/JP2005528665A/ja
Publication of JP2005528665A5 publication Critical patent/JP2005528665A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; 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

Landscapes

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

Abstract

拡張可能なファームウェアアーキテクチャを有する計算システム向けに、プレブートセキュリティとレガシーハードウェア及び環境に対するサポートとを提供する方法及び装置が記載される。仮想マシンモニタ(VMM)が利用され、互換性のあるレガシーコードを実行するため、或いはセイフティ及びセキュリティのためにキーデータ及びコード領域をプロテクトするために、システム状態が可視化される。アプリケーションには、システムリソースのサブセットへのアクセス、及び、VMMに割り出し(プログラム割り込み)する更新用に指定されていないメモリマップの部分へのアクセスを与えることができる。VMMのプレブートのポリシーエージェントは、状態をプロテクトして、問題のソフトウェアをアンロードする。

Description

本発明は、一般に、拡張可能なファームウェアアーキテクチャを有する計算システムに関し、特に、レガシーハードウェア及び環境(legacy hardware and environment)をエミュレートして、拡張可能なファームウェアアーキテクチャを有する計算システムでのプロテクトされたストレージ及び実行を提供することができる仮想マシンモニタの利用に関する。
コンピュータシステムのファームウェアにおける最近の進歩は、拡張可能なファームウェアのインタフェース(EFI)であり、このEFIにより、ソフトウェアベンダーは、各種の中央処理装置(CPU)と共に使用することができるオペレーティングシステムプログラムを開発することができる。スタック上でどのようにデータを渡すかを指定するアプリケーション・バイナリ・インタフェース(ABI)が所与のCPUタイプについて含まれる。プラットフォームを抽象化することで、フレームワークは、レガシーアーキテクチャを採用するシステムを通して多くの利点を提供する。このコンポーネントアーキテクチャの進歩の概念として、ABIと、全体システムの初期化処理を通したソフトウェアの抽象化とを使用したシステムアーキテクチャが登場している。このアーキテクチャは、CPUの初期化を含むだけでなく、チップセットとI/O装置の初期化とを含んでいる。チップセット又はI/Oコンプレックスの一部がどのように動作するかを抽象化する一部のコードを複数パーティーが記述することを可能にするソフトウェアフレームワークが提供されている。かかるフレームワーク内で、様々なベンダーからの製品は、相互使用可能となる。それぞれのベンダーからのコードの一部は、初期化モジュールに含まれる。システム初期化フェーズの間(CPUリセット後であるが、メモリ初期化前)、コアとなる初期化コードは、基本サービスを提供するために、順序付けされたオーダーで初期化モジュールを送る。初期化フェーズは、フォローオンフェーズを可能にするために十分にシステムを初期化する。たとえば、ドライバ実行フェーズは、初期化処理の責任を果たし、I/Oバスのスキャニング、リソースのエニュメレート及びドライバのインストールのように、アルゴリズム的により複雑である。
複数パーティーからのドライバ及びアプリケーションの提供を可能にするこの概念は、幾つかの問題点が生じる。1つのベンダーにより提供されるシステムファームウェアのセキュリティは、ベンダーから暗黙的である。サンドボックス又はコードの認可のいずれに対しても手段が存在しないため、様々なソースからのコードモジュールを組み込むことは、システムインテグリティを危険にする。EFIプラットフォームは、物理モードで実行する。物理モードでの実行は、全てのアドレスが実際のメモリ位置に対応することを意味する。物理モードにおける実行は、全てのプラットフォームリソースへのフルアクセスをOSローダに提供するが、また、仮想メモリページテーブルの使用、及びプレブートにおいて提供するプロテクションを不可能にする。ブートファームウェアは、フルマシンアクセスを有するので、高感度のデータ構造及びコアとなるEFIのコードは、ドライバ及びアプリケーションによるアクセスを通して破壊されやすい。ドライバ及びアプリケーションのソースを確認するためのコード署名のような技術は、システム状態が不正なコードにより破壊されたとき、障害隔離を保証することができない。
別の問題は、レガシーコードに対するサポートである。長年の間、ソフトウェアは、PC/ATプラットフォームと互換性を有するように記述されてきた。多くのレガシーオペレーティングシステム及びオプションROM(legacy operating system and option ROM)は、PC/ATでメモリマップされたハードウェア/ソフトウェアを必要とする。このレガシーコードは、プロセッサを1メガバイトのメモリに制限して、メモリ管理機能又はメモリプロテクション機能を提供しないリアルモードにおいて実行する。
本発明は、例示を経て説明され、同じ参照符号が同じ構成要素を示している添付図面のズにより制限されることが意図されない。
本発明は、第一の実施の形態において、互換性のあるレガシー(古いタイプの)コード(legacy compatibility code)を実行すること、或いはセイフティ及びセキュリティのためにキーデータ及びコード領域をプロテクトするために、システム状態を可視化することを提供するための方法及び装置を提供するものである。
VMMは、全てのCPU命令及びシステムリソース(たとえば、メモリ及びI/O装置)を含むオリジナルマシンの高性能なレプリカを提供するシミュレータソフトウェアである。第一の実施の形態では、アーキテクチャプラットフォームに基づいた構成要素のためのプレブートセキュリティ(pre−boot security)及びインテグリティポリシー(integrity policy)を維持するためにVMMが使用される。
仮想マシンモニタ(VMM)が採用され、レガシーハードウェア及び環境をエミュレートし、レガシーコードに対するサポートを提供する。VMMにより、表面上の特権コード(たとえば、BIOSコード)をエミュレートすることができ、そのコードがエミュレートされていることに気づくことなしに実行することができる。
ドライバ実行フェーズでは、VMMをインストールするドライバがロードされる場合がある。次いで、レガシーアプリケーション(たとえば、レガシーOSローダ)は、VMM内で実行される場合がある。第一の実施の形態では、レガシーOSがブートされたことを示すためにブート変数が設定された場合に、VMMはロードされるのみである。VMMを利用することで、メモリ及びシステム構造をプロテクトして、アプリケーションの混乱から助けることができる。アプリケーションには、システムリソースのサブセットへのアクセス、及び、VMMに割り出し(プログラム割り込み)する更新用に指定されていないメモリマップの一部へのアクセスを与えることができる。VMMプレブートのポリシーエージェントは、状態をプロテクトし、任意の問題のソフトウェアをアンロードする。VMMは、物理モードの環境のように見えるが違法な行為に対して予防手段を有する環境をトランスペアレントに広める。また、このポリシーエージェントは、この物理的なアドレスレンジを実際にデコードしないシステムについて、ソフトウェアがレガシーメモリマップを1メガバイト以下で見るようにメモリをマッピングする。このトランスペアレンシーは、レガシーPC/AT BIOSモジュール、オプションROM、EFIドライバ及びアプリケーションとの互換性を維持する。
第一の実施の形態では、本発明は、全体のPC/AT環境を可視化して、レガシーOS、及びタイマカウンタ、シリアルポート、及びマスタ/スレーブ割込みコントローラといった82xxシリーズのようなレガシーハードウェアに対するサポートを提供する。VMにより、拡張可能なファームウェアアーキテクチャを有するシステムは、オプションROMのプレブート、又はその固有なインタフェースを使用しないランタイム環境のプレブートを容易にする。たとえば、VMは、PC/AT環境をエミュレートし、レガシーオプションROMがそのI/Oサービスを実行して、作用することを可能にする。次いで、VMMは、結果を固有のAPIに変換する。すなわち、VMMは、固有の環境(native environment)に等価な意味にI/Oを割り出す。
代替的な実施の形態では、VMMは、固有な32ビット/64ビット環境をエミュレートするために使用され、物理モードで実行するプラットフォームに、プロテクトされたストレージ及びプロテクトされた実行を提供する。EFIシステムアーキテクチャは、ページテーブルを考慮せず、指定されたページの読取り専用の指定を考慮しない。これは、OSローダは、OSカーネルをブートストラップするためのページテーブルを使用しているからである。VMMを使用することで、ドライバ及びアプリケーションコードのバルクがアクセスを有さないセキュリティに関連する情報を生成及び記憶するために、OSローダの下に位置するやり方を提供する。
図1は、本発明のVMMの実現のための典型的な計算システム100を説明するためのブロック図である。本実施の形態に記載される、互換性のあるレガシーコードを実行するため、又はセイフティとセキュリティのためにキーデータ及びコード領域をプロテクトするためにシステム状態を可視化することが計算システム100内で実現されて、利用される。計算システム100は、汎用コンピュータ、携帯用コンピュータ又は他の類似の装置で表すことができる。計算システム100の構成要素は、典型的なものであって、1つ以上の構成要素を省略又は追加することができる。たとえば、1つ以上のメモリ装置は、計算システム100のために利用することができる。
図1を参照して、計算システム100は、表示回路105、メインメモリ104、スタティックメモリ106及び大容量記憶装置107にバス101を介して接続される中央処理装置102及びシグナルプロセッサ103を含む。また、計算システム100は、ディスプレイ121、キーパッド入力122、カーソルコントロール123、ハードコピー装置124、入力/出力(I/O)装置125及びオーディオ/スピーチ装置126にもバス101を介して接続される。
バス101は、情報及び信号を伝達するための標準システムバスである。CPU102及びシグナルプロセッサ103は、計算システム100のための処理ユニットである。CPU102又はシグナルプロセッサ103、或いはその両者は、計算システム100のための情報及び/又は信号を処理するために使用することができる。CPU102は、制御ユニット131、算術論理ユニット(ALU)132、及び複数のレジスタ133を含んでおり、これらは、情報及び信号を処理するために使用される。また、シグナルプロセッサ103は、CPU102に類似の構成要素を含むことができる。
メインメモリ104は、CPU102又はシグナルプロセッサ103により使用される情報又は命令(プログラムコード)を記憶するために、たとえば、ランダムアクセスメモリ(RAM)又は他の動的な記憶装置とすることができる。メインメモリ104は、CPU101又はシグナルプロセッサ103による命令の実行の間、一時的な変数又は他の中間的な情報を記憶する。スタティックメモリ106は、CPU102又はシグナルプロセッサ103により使用することができる情報又は命令を記憶するために、たとえば、リードオンリメモリ(ROM)又は他の静的な記憶装置とすることができる。大容量記憶装置107は、計算システム100の情報又は命令を記憶するために、たとえば、ハードディスクドライブ又はフロプティカルディスクドライブ、或いは光ディスクドライブとすることができる。
ディスプレイ121は、たとえば、陰極線管(CRT)又は液晶ディスプレイ(LCD)とすることができる。ディスプレイ装置121は、情報又は図をユーザに表示する。計算システム100は、表示回路105を介してディスプレイ121とインタフェースすることができる。キーパッド入力122は、アナログ−デジタル変換器による英数字入力装置である。カーソルコントロール123は、たとえば、マウス、トラックボール、又はカーソル方向キーとすることができ、ディスプレイ121上のオブジェクトの動きを制御する。ハードコピー装置124は、たとえば、レーザプリンタとすることができ、紙、フィルム、又は他の類似の媒体に情報をプリントする。多数の入力/出力装置125は、計算システム100に接続することができる。
本発明により、レガシーオペレーティングシステム及びオプションROMをサポートするために、レガシー環境をエミュレートすること、並びにプロテクトされた実行及びプロテクトされたストレージを提供するために物理モード環境をエミュレートすることは、計算システム100内に含まれるハードウェア及び/又はソフトウェアにより実現することができる。たとえば、CPU102又はシグナルプロセッサ103は、たとえば、メインメモリ104のようなマシン読み取り可能な媒体に記憶されたコード又は命令を実行することができる。
マシン読み取り可能な記憶媒体は、コンピュータ又はデジタル処理装置のようなマシンにより読取り可能な形式で、(すなわち、記憶及び/又は送信)情報を提供するメカニズムを含む。たとえば、マシン読み取り可能な媒体は、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリ装置を含む。コード又は命令は、搬送波信号、赤外線信号、デジタル信号、他の類似の信号により表される。
図2は、本発明の第一の実施の形態によるレガシーエミュレーションを説明する図である。レガシーオプションROMのみが、レガシー8259割込みコントローラの存在を前提としたとしても、パーソナルコンピュータのマザーボードは、レガシー8259割込みコントローラに対するサポートを提供する。現代のオペレーティングシステムは、割込みのサポートのためにAPIC(IA32)又はSAPIC(IPF)を使用し、したがって、組になった8259のようなマザーボードハードウェアをマシンブートの数秒間に使用可能なままにする。
図2に示されるシステム200は、EFIコア205、レガシー実行イメージ210、EFIドライバ215及びVMM220を含む。レガシー実行イメージ210は、プレブートオプションROM、又は固有のEFIインタフェースを使用しないランタイム環境である。たとえば、レガシー実行イメージ210からのレガシーな8259割込み制御ベースへの書込みに応じて、命令がVMM220に割り出される。VMM200は、システム状態(たとえば、割り込みフラグ)に影響を与えるか、或いはプロテクションを変える任意の命令を割り出すことができる。システムがレガシーモードで実行している場合、VMM220は、レガシー割込み(PIC)マスクへのアクセスを、関連する固有の割り込み制御レジスタにマッピングする。たとえば、システムは、含まれていないレガシーなハードウェアへのアクセスを試みる。VMMは、固有の環境において等価な意味にI/Oを割り出す。この点で、EFIドライバ215のうちの1つは、関連するチップセットレジスタと通信し、仮想マシンに結果を供給する。これにより、レガシーな環境からの移行パスが供給される。
VMMは、第三者からのプログラムのサンドボックスによりプレブーストのセキュリティ(pre−boost security)を提供するために使用される。サンドボックスモードにおいてプログラムを実行することにより、システムの他の部分へのアクセスを有することを防止する。コードは、システムの他の部分を破壊することはないので信頼することができる。アプリケーションには、システムリソースへのサブセットへのアクセス、及び、VMMに割り出しする更新用に指定されていないメモリマップの一部へのアクセスを与えることができる。VMMプレブートのポリシーエージェントは、状態を保護し、問題のソフトウェアをアンロードする。
図3は、本発明の第一の実施の形態による、不信なプログラムをサンドボックスするVMM処理を説明するフローチャートである。図3に示される処理300は、処理305で始まり、ここでは、不信なプログラムは違法な書込みアクセスを試みる。処理310で、命令はVMMに割り出される。プログラムがEFIコアコードにより開始された場合、及びプログラムがEFIコアデータ構造へのアクセスを有する場合、アクセスは合法である。これ以外の場合、処理320でアクセスは否定され、制御はコアに戻る。
第一の実施の形態では、VMMは、アダプタカードから導入されたコード及び第三者のドライバを介して導入されたコードが破壊される状態をサンドボックスする。かかるソフトウェア技術のスモールコードの有効域(small code footprint)は、コスト依存型のフラッシュメモリベースのシステムにとって有利である。
VMMは、特権モードで実行し、特権モードをエミュレートして、最高でOSロードまでのEFI環境を実行する。VMMは、この下位の特権コード(less privileged code)を抽象化するため、VMMは、アドレス空間の一部を隠すことができる。プロテクトされたモードを可視化するプロテクトされたストレージ及びプロテクトされた実行により、セキュリティ・インフラストラクチャの役割となることができる。
図4は、本発明の第一の実施の形態によるVMMの使用を通したセキュリティアプリケーションの実現を示している。図4に示されるシステム400は、モジュール410を評価するプレブート認証ドライバ405を含んでいる。モジュール410は、ベンダーからのデジタル認証を含んでいる。署名は、MD5又はSHA−1署名である。プレブート認証ドライバ405は、署名を確認するためにVMM420の署名ロジック421へのエントリポイントを呼出す。VMM420は、認証ログにおける有効なドライバ及びモジュールの署名を含む保護されたストレージを提供する。認証ログは、システムがロードしたコードの署名を含む場合がある。認証ログが該コードの証明を含んでいる場合、VMMは該コードを確認する。すなわち、プラットフォームは、コードを実行したことに対して認証する。これにより、制御を行うに先立って、コードを信用することができるという保証がOSに対して提供される。
このように、VMMは、プレブートのセキュリティ(すなわち、API及びフレームワーク)を提供して、最上位でOSロードまでの信頼されたプラットフォームを実現する。この点で、OSローダは、自身のセキュリティを提供することができる。
上記の明細書では、本発明は、特定の典型的な実施の形態を参照して説明された。しかし、様々な変更及び変形は、添付された特許請求の範囲に示されるように、本発明の広い精神及び範囲から逸脱することなしに行われることは明らかである。したがって、明細書及び添付図面は、限定的な意味ではなく、例示的な意味で解釈される。
本発明のVMMを実現するための典型的な計算システムを説明するブロック図である。 本発明の第一の実施の形態によるレガシーエミュレーションを説明する図である。 本発明の第一の実施の形態による不信なプログラムのサンドボックスに対するVMM動作を説明するフローチャートである。 本発明の第一の実施の形態によりVMMの使用を通してセキュリティアプリケーションの実現を示す図である。

Claims (20)

  1. 物理モードで実行する固有の環境を有する計算システムで仮想マシンモニタを実現するステップと、
    該固有の環境が下位の特権モードで実行されるように該物理モードをエミュレートする該仮想マシンモニタを最上位の特権モードで実行するステップと、
    を備える方法。
  2. 該固有の環境は、32ビット環境、64ビット環境及びPC/AT環境を含むリストから選択される、
    請求項1記載の方法。
  3. 該仮想マシンモニタは、PC/ATハードウェアのエミュレーション、PC/AT環境のエミュレーション、保護されたストレージ及び保護された実行からなるリストから選択された機能を提供するためのコードを含む、
    請求項2記載の方法。
  4. 該保護されたストレージは、セキュリティに関連する情報を記憶するために使用される、
    請求項3記載の方法。
  5. 該セキュリティに関連する情報は、署名認証、及び暗号化されたハッシュ情報である、
    請求項4記載の方法。
  6. 該セキュリティに関連する情報は、認証ログを作成するために使用される、
    請求項5記載の方法。
  7. 不信なコードがシステムに障害を与えることを防止するために該コードがサンドボックスモードで実行されるように、拡張可能なファームウェアアーキテクチャを有する計算システムで仮想マシンモニタを実現するステップを備える方法。
  8. 該コードは、レガシーなBIOSコードである、
    請求項7記載の方法。
  9. プロセッサにより実行されたときに、
    物理モードで実行する固有の環境を有する計算システムで仮想マシンモニタを実現するステップと、
    該固有の環境が下位の特権モードで実行されるように物理モードをエミュレートする該仮想マシンモニタを最上位の特権モードで実行するステップと、
    を備える方法をプロセッサに実行させる実行可能な命令を供給するマシン読み取り可能な媒体。
  10. 該固有の環境は、32ビット環境、64ビット環境及びPC/AT環境を含むリストから選択される、
    請求項9記載の媒体。
  11. 該仮想マシンモニタは、PC/ATハードウェアのエミュレーション、PC/AT環境のエミュレーション、保護されたストレージ及び保護された実行からなるリストから選択された機能を提供するためのコードを含む、
    請求項10記載のマシン読み取り可能な媒体。
  12. 該保護されたストレージは、セキュリティに関連する情報を記憶するために使用される、
    請求項11記載のマシン読み取り可能な媒体。
  13. 該セキュリティに関連する情報は、署名認証、及び暗号化されたハッシュ情報である、
    請求項12記載のマシン読み取り可能な媒体。
  14. 該セキュリティに関連する情報は、認証ログを作成するために使用される、
    請求項13記載のマシン読み取り可能な媒体。
  15. 物理モードで実行する固有の実行環境を有する計算システムと、
    最上位の特権モードで実行され、該計算システムで実現され、該固有の環境が下位の特権モードで実行されるように物理モードをエミュレートする仮想マシンモニタと、
    を備える装置。
  16. 該固有の環境は、32ビット環境、64ビット環境及びPC/AT環境を含むリストから選択される、
    請求項15記載の装置。
  17. 該仮想マシンモニタは、PC/ATハードウェアのエミュレーション、PC/AT環境のエミュレーション、保護されたストレージ及び保護された実行からなるリストから選択された機能を提供するためのコードを含む、
    請求項16記載の装置。
  18. 該保護されたストレージは、セキュリティに関連する情報を記憶するために使用される、
    請求項17記載の装置。
  19. 該セキュリティに関連する情報は、署名認証、及び暗号化されたハッシュ情報である、
    請求項18記載の装置。
  20. 該セキュリティに関連する情報は、認証ログを作成するために使用される、
    請求項19記載の装置。
JP2003531310A 2001-09-27 2002-09-27 システムインテグリティとレガシー環境とを提供するための方法 Pending JP2005528665A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/966,015 US7103529B2 (en) 2001-09-27 2001-09-27 Method for providing system integrity and legacy environment emulation
PCT/US2002/031156 WO2003027835A2 (en) 2001-09-27 2002-09-27 A method for providing system integrity and legacy environment emulation

Publications (2)

Publication Number Publication Date
JP2005528665A true JP2005528665A (ja) 2005-09-22
JP2005528665A5 JP2005528665A5 (ja) 2010-04-08

Family

ID=25510821

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003531310A Pending JP2005528665A (ja) 2001-09-27 2002-09-27 システムインテグリティとレガシー環境とを提供するための方法

Country Status (8)

Country Link
US (1) US7103529B2 (ja)
JP (1) JP2005528665A (ja)
KR (1) KR100692346B1 (ja)
CN (1) CN100533385C (ja)
AU (1) AU2002343467A1 (ja)
DE (1) DE10297273B4 (ja)
GB (1) GB2397415A (ja)
WO (1) WO2003027835A2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005229270A (ja) * 2004-02-12 2005-08-25 Ricoh Co Ltd 画像形成装置、インタフェース方法
JP2006164184A (ja) * 2004-12-10 2006-06-22 Ntt Docomo Inc プログラム分割装置、プログラム実行装置、プログラム分割方法及びプログラム実行方法
JP2007514994A (ja) * 2003-11-26 2007-06-07 インターナショナル・ビジネス・マシーンズ・コーポレーション 耐タンパ・トラステッド仮想マシン
WO2007074565A1 (ja) * 2005-12-27 2007-07-05 Nec Corporation プログラム実行制御方法および装置ならびに実行制御プログラム
US8671270B2 (en) 2008-01-10 2014-03-11 Hitachi, Ltd. System connected to a memory for storing an extended firmware having a bios emulator in which the bios emulator is overwritten using a interruption vector for handling a bios call
JP2017111812A (ja) * 2015-12-17 2017-06-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 透明で安全なインターセプション処理のための方法、コンピュータ・システム、ファームウェア、ハイパーバイザおよびコンピュータ・プログラム

Families Citing this family (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7174463B2 (en) * 2001-10-04 2007-02-06 Lenovo (Singapore) Pte. Ltd. Method and system for preboot user authentication
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
US7974416B2 (en) 2002-11-27 2011-07-05 Intel Corporation Providing a secure execution mode in a pre-boot environment
US20040128493A1 (en) * 2002-12-27 2004-07-01 Zimmer Vincent J. Methods and apparatus for providing a firmware defined radio
US7181723B2 (en) * 2003-05-27 2007-02-20 Intel Corporation Methods and apparatus for stride profiling a software application
US7380136B2 (en) * 2003-06-25 2008-05-27 Intel Corp. Methods and apparatus for secure collection and display of user interface information in a pre-boot environment
US7328340B2 (en) * 2003-06-27 2008-02-05 Intel Corporation Methods and apparatus to provide secure firmware storage and service access
US7434231B2 (en) * 2003-06-27 2008-10-07 Intel Corporation Methods and apparatus to protect a protocol interface
US7370324B2 (en) * 2003-09-30 2008-05-06 Intel Corporation Switching between a service virtual machine and a guest virtual machine in a virtual machine monitor environment
US7496961B2 (en) * 2003-10-15 2009-02-24 Intel Corporation Methods and apparatus to provide network traffic support and physical security support
US20050132022A1 (en) * 2003-12-12 2005-06-16 International Business Machines Corporation Computer system with LAN-based I/O
US7558723B2 (en) * 2003-12-12 2009-07-07 Microsoft Corporation Systems and methods for bimodal device virtualization of actual and idealized hardware-based devices
US8037314B2 (en) 2003-12-22 2011-10-11 Intel Corporation Replacing blinded authentication authority
US7437613B2 (en) * 2004-01-30 2008-10-14 Intel Corporation Protecting an operating system kernel from third party drivers
JP2005346182A (ja) * 2004-05-31 2005-12-15 Fujitsu Ltd 情報処理装置、耐タンパ方法、耐タンパプログラム
US7908653B2 (en) * 2004-06-29 2011-03-15 Intel Corporation Method of improving computer security through sandboxing
US20060005190A1 (en) * 2004-06-30 2006-01-05 Microsoft Corporation Systems and methods for implementing an operating system in a virtual machine environment
US7571090B2 (en) * 2004-09-30 2009-08-04 Intel Corporation Emulating a host architecture in guest firmware
US7793350B2 (en) * 2004-10-28 2010-09-07 International Business Machines Corporation Apparatus, system, and method for simulated access to restricted computing resources
US20060143417A1 (en) * 2004-12-23 2006-06-29 David Poisner Mechanism for restricting access of critical disk blocks
US8181020B2 (en) * 2005-02-02 2012-05-15 Insyde Software Corp. System and method for securely storing firmware
US20060195693A1 (en) * 2005-02-28 2006-08-31 Intel Corporation Specter rendering
US20060242351A1 (en) * 2005-04-20 2006-10-26 Kavian Nasrollah A Method and apparatus for loading instructions into high memory
US7496495B2 (en) * 2005-05-12 2009-02-24 Microsoft Corporation Virtual operating system device communication relying on memory access violations
US20070006178A1 (en) * 2005-05-12 2007-01-04 Microsoft Corporation Function-level just-in-time translation engine with multiple pass optimization
US20070130114A1 (en) * 2005-06-20 2007-06-07 Xiao-Feng Li Methods and apparatus to optimize processing throughput of data structures in programs
US8839450B2 (en) * 2007-08-02 2014-09-16 Intel Corporation Secure vault service for software components within an execution environment
US8856473B2 (en) * 2005-07-01 2014-10-07 Red Hat, Inc. Computer system protection based on virtualization
US7363457B1 (en) 2005-07-21 2008-04-22 Sun Microsystems, Inc. Method and system for providing virtualization data services for legacy storage devices
CN100419681C (zh) * 2005-09-22 2008-09-17 联想(北京)有限公司 一种网络复制系统与方法
US8656487B2 (en) * 2005-09-23 2014-02-18 Intel Corporation System and method for filtering write requests to selected output ports
US8719816B2 (en) * 2006-03-14 2014-05-06 University Of Utah Research Foundation Extendable framework for distributed applications and data
US7725305B2 (en) * 2006-06-08 2010-05-25 Microsoft Corporation Partial virtualization on computing device
US7721080B2 (en) * 2006-06-30 2010-05-18 Intel Corporation Management of option ROM
US8341747B2 (en) * 2006-08-08 2012-12-25 International Business Machines Corporation Method to provide a secure virtual machine launcher
US7673126B2 (en) * 2006-09-19 2010-03-02 Intel Corporation Methods and apparatus to self-initialize a processor
US7689817B2 (en) * 2006-11-16 2010-03-30 Intel Corporation Methods and apparatus for defeating malware
US7533207B2 (en) * 2006-12-06 2009-05-12 Microsoft Corporation Optimized interrupt delivery in a virtualized environment
US8776041B2 (en) * 2007-02-05 2014-07-08 Microsoft Corporation Updating a virtual machine monitor from a guest partition
US7769993B2 (en) * 2007-03-09 2010-08-03 Microsoft Corporation Method for ensuring boot source integrity of a computing system
US8904552B2 (en) * 2007-04-17 2014-12-02 Samsung Electronics Co., Ltd. System and method for protecting data information stored in storage
JP2008287505A (ja) * 2007-05-17 2008-11-27 Toshiba Corp 情報処理装置およびレガシーエミュレーション処理停止制御方法
AU2008100698B4 (en) * 2007-07-30 2009-04-02 REAPP Technology Pty Limited REAPP fourier transform computer security methodology
US20090119748A1 (en) * 2007-08-30 2009-05-07 Jiewen Yao System management mode isolation in firmware
US7827371B2 (en) * 2007-08-30 2010-11-02 Intel Corporation Method for isolating third party pre-boot firmware from trusted pre-boot firmware
US8127296B2 (en) * 2007-09-06 2012-02-28 Dell Products L.P. Virtual machine migration between processors having VM migration registers controlled by firmware to modify the reporting of common processor feature sets to support the migration
US8522236B2 (en) * 2007-12-28 2013-08-27 Intel Corporation Method and system for establishing a robust virtualized environment
US8745337B2 (en) * 2007-12-31 2014-06-03 Teradyne, Inc. Apparatus and method for controlling memory overrun
US8769702B2 (en) 2008-04-16 2014-07-01 Micosoft Corporation Application reputation service
US8327415B2 (en) * 2008-05-30 2012-12-04 Intel Corporation Enabling byte-code based image isolation
US8201239B2 (en) * 2008-06-23 2012-06-12 Intel Corporation Extensible pre-boot authentication
US8909940B2 (en) * 2008-06-23 2014-12-09 Intel Corporation Extensible pre-boot authentication
TW201005535A (en) * 2008-07-17 2010-02-01 Ind Tech Res Inst Electronic apparatus and method for managing a plugged device
CN101373441B (zh) * 2008-09-19 2012-04-18 苏州壹世通科技有限公司 一种基于固件的虚拟化平台系统
US8041794B2 (en) * 2008-09-29 2011-10-18 Intel Corporation Platform discovery, asset inventory, configuration, and provisioning in a pre-boot environment using web services
US8086839B2 (en) * 2008-12-30 2011-12-27 Intel Corporation Authentication for resume boot path
US20100211769A1 (en) * 2009-02-19 2010-08-19 Subramonian Shankar Concurrent Execution of a Smartphone Operating System and a Desktop Operating System
CN101777002B (zh) * 2010-01-18 2012-12-19 杭州宇酷信息技术有限公司 一种基于虚拟化的软件运行方法
US8522066B2 (en) 2010-06-25 2013-08-27 Intel Corporation Providing silicon integrated code for a system
US8312258B2 (en) 2010-07-22 2012-11-13 Intel Corporation Providing platform independent memory logic
US8539245B2 (en) 2010-08-06 2013-09-17 Intel Corporation Apparatus and method for accessing a secure partition in non-volatile storage by a host system enabled after the system exits a first instance of a secure mode
US8386618B2 (en) 2010-09-24 2013-02-26 Intel Corporation System and method for facilitating wireless communication during a pre-boot phase of a computing device
US20120166172A1 (en) * 2010-12-23 2012-06-28 Fleming Bruce L Providing legacy computing compatibility
US9087196B2 (en) * 2010-12-24 2015-07-21 Intel Corporation Secure application attestation using dynamic measurement kernels
US9129103B2 (en) 2011-01-28 2015-09-08 Hewlett-Packard Development Company, L.P. Authenticate a hypervisor with encoded information
US8549644B2 (en) * 2011-03-28 2013-10-01 Mcafee, Inc. Systems and method for regulating software access to security-sensitive processor resources
US8863283B2 (en) 2011-03-31 2014-10-14 Mcafee, Inc. System and method for securing access to system calls
US8959638B2 (en) 2011-03-29 2015-02-17 Mcafee, Inc. System and method for below-operating system trapping and securing of interdriver communication
US8813227B2 (en) 2011-03-29 2014-08-19 Mcafee, Inc. System and method for below-operating system regulation and control of self-modifying code
US8966629B2 (en) 2011-03-31 2015-02-24 Mcafee, Inc. System and method for below-operating system trapping of driver loading and unloading
US9087199B2 (en) 2011-03-31 2015-07-21 Mcafee, Inc. System and method for providing a secured operating system execution environment
US9262246B2 (en) 2011-03-31 2016-02-16 Mcafee, Inc. System and method for securing memory and storage of an electronic device with a below-operating system security agent
US9317690B2 (en) 2011-03-28 2016-04-19 Mcafee, Inc. System and method for firmware based anti-malware security
US9032525B2 (en) 2011-03-29 2015-05-12 Mcafee, Inc. System and method for below-operating system trapping of driver filter attachment
US8925089B2 (en) 2011-03-29 2014-12-30 Mcafee, Inc. System and method for below-operating system modification of malicious code on an electronic device
US9038176B2 (en) 2011-03-31 2015-05-19 Mcafee, Inc. System and method for below-operating system trapping and securing loading of code into memory
US8966624B2 (en) 2011-03-31 2015-02-24 Mcafee, Inc. System and method for securing an input/output path of an application against malware with a below-operating system security agent
CN102231116A (zh) * 2011-07-04 2011-11-02 成都市华为赛门铁克科技有限公司 应用程序虚拟化安装及加载方法及装置
US8578378B2 (en) * 2011-07-28 2013-11-05 Intel Corporation Facilitating compatible interaction, at least in part
WO2013048422A1 (en) * 2011-09-30 2013-04-04 Hewlett-Packard Development Company, L.P. Virtualized device control in computer systems
US8788763B2 (en) * 2011-10-13 2014-07-22 International Business Machines Corporation Protecting memory of a virtual guest
US8782351B2 (en) * 2011-10-13 2014-07-15 International Business Machines Corporation Protecting memory of a virtual guest
US20130117006A1 (en) * 2011-11-07 2013-05-09 Microsoft Corporation Simulated boot process to detect introduction of unauthorized information
CN103988467B (zh) * 2011-11-16 2019-04-23 V-Key公司 确保软件加密技术安全的加密系统和方法
RU2472215C1 (ru) * 2011-12-28 2013-01-10 Закрытое акционерное общество "Лаборатория Касперского" Способ выявления неизвестных программ с использованием эмуляции процесса загрузки
CN103299311B (zh) 2011-12-29 2015-04-29 英特尔公司 用于可信引导优化的方法和设备
WO2013147825A1 (en) 2012-03-30 2013-10-03 Intel Corporation Providing an immutable antivirus payload for internet ready compute nodes
US8918879B1 (en) * 2012-05-14 2014-12-23 Trend Micro Inc. Operating system bootstrap failure detection
US9900157B2 (en) 2012-08-16 2018-02-20 Digicert, Inc. Object signing within a cloud-based architecture
US9230081B2 (en) 2013-03-05 2016-01-05 Intel Corporation User authorization and presence detection in isolation from interference from and control by host central processing unit and operating system
US9396011B2 (en) 2013-03-12 2016-07-19 Qualcomm Incorporated Algorithm and apparatus to deploy virtual machine monitor on demand
CN104133752B (zh) * 2013-06-25 2015-07-29 腾讯科技(深圳)有限公司 操作平台的监控方法和装置
WO2014209322A1 (en) 2013-06-27 2014-12-31 Intel Corporation Continuous multi-factor authentication
US9411975B2 (en) 2014-03-31 2016-08-09 Intel Corporation Methods and apparatus to securely share data
US9652276B2 (en) 2014-09-17 2017-05-16 International Business Machines Corporation Hypervisor and virtual machine protection
US10073964B2 (en) 2015-09-25 2018-09-11 Intel Corporation Secure authentication protocol systems and methods
US9449189B1 (en) 2015-11-03 2016-09-20 International Business Machines Corporation Protection of state data in computer system code
EP3447636B1 (en) 2017-08-21 2020-09-30 Carrier Corporation Fire and security system including addressable loop and automatic firmware upgrade
CN110134443A (zh) * 2018-02-08 2019-08-16 联想企业解决方案(新加坡)有限公司 在计算设备中执行附件的选项rom的方法和设备
US11238160B2 (en) * 2018-09-28 2022-02-01 Apple Inc. Boot firmware sandboxing
KR20210112923A (ko) 2020-03-06 2021-09-15 삼성전자주식회사 시스템 온 칩 및 이의 동작 방법

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55112651A (en) * 1979-02-21 1980-08-30 Fujitsu Ltd Virtual computer system
JPS6095648A (ja) * 1983-10-28 1985-05-29 Fujitsu Ltd 仮想fba擬似処理装置
JPS6278642A (ja) * 1985-10-01 1987-04-10 Hitachi Ltd メモリ管理ユニツト制御方式
JPH0512045A (ja) * 1990-11-16 1993-01-22 Hitachi Ltd 計算機システムの動作継続方法および装置
WO1998036517A1 (en) * 1997-02-13 1998-08-20 Jpc, Inc. Security coprocessor for enhancing computer system security
JPH10282884A (ja) * 1996-12-18 1998-10-23 Ncr Internatl Inc データ処理方法およびシステム
JPH1124919A (ja) * 1997-06-20 1999-01-29 Internatl Business Mach Corp <Ibm> 安全な記憶領域でアプリケーション・データを保護する方法及び装置
JPH11215120A (ja) * 1998-01-27 1999-08-06 Fujitsu Ltd 通信装置
JP2001147824A (ja) * 1999-09-28 2001-05-29 Internatl Business Mach Corp <Ibm> コンピュータ環境の論理プロセッサを管理する方法、システム、およびプログラム製品
JP2001507835A (ja) * 1996-12-30 2001-06-12 シーラス ロジック,インコーポレイテッド 過去に互換性のあるオペレーティングシステムのリアルタイムサービス

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4787031A (en) * 1985-01-04 1988-11-22 Digital Equipment Corporation Computer with virtual machine mode and multiple protection rings
JP2708608B2 (ja) * 1990-05-25 1998-02-04 富士通株式会社 仮想計算機のipl処理方式
US5522075A (en) * 1991-06-28 1996-05-28 Digital Equipment Corporation Protection ring extension for computers having distinct virtual machine monitor and virtual machine address spaces
US5721922A (en) * 1994-10-13 1998-02-24 Intel Corporation Embedding a real-time multi-tasking kernel in a non-real-time operating system
US5844986A (en) * 1996-09-30 1998-12-01 Intel Corporation Secure BIOS
US6075938A (en) 1997-06-10 2000-06-13 The Board Of Trustees Of The Leland Stanford Junior University Virtual machine monitors for scalable multiprocessors
US6321323B1 (en) * 1997-06-27 2001-11-20 Sun Microsystems, Inc. System and method for executing platform-independent code on a co-processor
IL126149A (en) * 1997-09-09 2003-07-31 Sanctum Ltd Method and system for protecting operations of trusted internal networks
US6496847B1 (en) * 1998-05-15 2002-12-17 Vmware, Inc. System and method for virtualizing computer systems
US6397242B1 (en) * 1998-05-15 2002-05-28 Vmware, Inc. Virtualization system including a virtual machine monitor for a computer with a segmented architecture
US6609199B1 (en) * 1998-10-26 2003-08-19 Microsoft Corporation Method and apparatus for authenticating an open system application to a portable IC device
WO2000048061A1 (en) * 1999-02-15 2000-08-17 Hewlett-Packard Company Protection of the configuration of modules in computing apparatus
US7035963B2 (en) * 2000-12-27 2006-04-25 Intel Corporation Method for resolving address space conflicts between a virtual machine monitor and a guest 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
US7272831B2 (en) * 2001-03-30 2007-09-18 Intel Corporation Method and apparatus for constructing host processor soft devices independent of the host processor operating system
US7487330B2 (en) * 2001-05-02 2009-02-03 International Business Machines Corporations Method and apparatus for transferring control in a computer system with dynamic compilation capability
US6922774B2 (en) * 2001-05-14 2005-07-26 The United States Of America As Represented By The National Security Agency Device for and method of secure computing using virtual machines

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55112651A (en) * 1979-02-21 1980-08-30 Fujitsu Ltd Virtual computer system
JPS6095648A (ja) * 1983-10-28 1985-05-29 Fujitsu Ltd 仮想fba擬似処理装置
JPS6278642A (ja) * 1985-10-01 1987-04-10 Hitachi Ltd メモリ管理ユニツト制御方式
JPH0512045A (ja) * 1990-11-16 1993-01-22 Hitachi Ltd 計算機システムの動作継続方法および装置
JPH10282884A (ja) * 1996-12-18 1998-10-23 Ncr Internatl Inc データ処理方法およびシステム
JP2001507835A (ja) * 1996-12-30 2001-06-12 シーラス ロジック,インコーポレイテッド 過去に互換性のあるオペレーティングシステムのリアルタイムサービス
WO1998036517A1 (en) * 1997-02-13 1998-08-20 Jpc, Inc. Security coprocessor for enhancing computer system security
JPH1124919A (ja) * 1997-06-20 1999-01-29 Internatl Business Mach Corp <Ibm> 安全な記憶領域でアプリケーション・データを保護する方法及び装置
JPH11215120A (ja) * 1998-01-27 1999-08-06 Fujitsu Ltd 通信装置
JP2001147824A (ja) * 1999-09-28 2001-05-29 Internatl Business Mach Corp <Ibm> コンピュータ環境の論理プロセッサを管理する方法、システム、およびプログラム製品

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007514994A (ja) * 2003-11-26 2007-06-07 インターナショナル・ビジネス・マシーンズ・コーポレーション 耐タンパ・トラステッド仮想マシン
JP4702957B2 (ja) * 2003-11-26 2011-06-15 インターナショナル・ビジネス・マシーンズ・コーポレーション 耐タンパ・トラステッド仮想マシン
JP2005229270A (ja) * 2004-02-12 2005-08-25 Ricoh Co Ltd 画像形成装置、インタフェース方法
JP2006164184A (ja) * 2004-12-10 2006-06-22 Ntt Docomo Inc プログラム分割装置、プログラム実行装置、プログラム分割方法及びプログラム実行方法
JP4664055B2 (ja) * 2004-12-10 2011-04-06 株式会社エヌ・ティ・ティ・ドコモ プログラム分割装置、プログラム実行装置、プログラム分割方法及びプログラム実行方法
WO2007074565A1 (ja) * 2005-12-27 2007-07-05 Nec Corporation プログラム実行制御方法および装置ならびに実行制御プログラム
US8671270B2 (en) 2008-01-10 2014-03-11 Hitachi, Ltd. System connected to a memory for storing an extended firmware having a bios emulator in which the bios emulator is overwritten using a interruption vector for handling a bios call
JP2017111812A (ja) * 2015-12-17 2017-06-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 透明で安全なインターセプション処理のための方法、コンピュータ・システム、ファームウェア、ハイパーバイザおよびコンピュータ・プログラム
US10838755B2 (en) 2015-12-17 2020-11-17 International Business Machines Corporation Transparent secure interception handling

Also Published As

Publication number Publication date
KR20040037148A (ko) 2004-05-04
CN100533385C (zh) 2009-08-26
WO2003027835A2 (en) 2003-04-03
US7103529B2 (en) 2006-09-05
US20030061497A1 (en) 2003-03-27
GB2397415A (en) 2004-07-21
AU2002343467A1 (en) 2003-04-07
WO2003027835A3 (en) 2004-07-15
CN1585927A (zh) 2005-02-23
GB0404784D0 (en) 2004-04-07
DE10297273T5 (de) 2004-09-16
DE10297273B4 (de) 2008-08-21
KR100692346B1 (ko) 2007-03-09

Similar Documents

Publication Publication Date Title
JP2005528665A (ja) システムインテグリティとレガシー環境とを提供するための方法
Hua et al. {vTZ}: Virtualizing {ARM}{TrustZone}
KR100938305B1 (ko) 고 신뢰성 펌웨어
US8321931B2 (en) Method and apparatus for sequential hypervisor invocation
US7827550B2 (en) Method and system for measuring a program using a measurement agent
US7260848B2 (en) Hardened extensible firmware framework
US8776245B2 (en) Executing trusted applications with reduced trusted computing base
EP1939754B1 (en) Providing protected access to critical memory regions
EP3047419B1 (en) Virtual secure mode for virtual machines
US7418584B1 (en) Executing system management mode code as virtual machine guest
US8327415B2 (en) Enabling byte-code based image isolation
KR100950102B1 (ko) 보호 실행 모드로 동작 가능한 프로세서를 포함한 컴퓨터 시스템 및 상기 컴퓨터 시스템의 초기화 방법
US20050114639A1 (en) Hardened extensible firmware framework to support system management mode operations using 64-bit extended memory mode processors
WO2003085498A2 (en) System and method for resetting a platform configuration register
US10620985B2 (en) Transparent code patching using a hypervisor
Ding et al. HyperVerify: A VM-assisted architecture for monitoring hypervisor non-control data
US20150379265A1 (en) Systems And Methods For Preventing Code Injection In Virtualized Environments
Sani et al. The case for I/O-device-as-a-service
Vasudevan Practical Security Properties on Commodity Computing Platforms: The Uber EXtensible Micro-Hypervisor Framework
Lu et al. A Trusted Computing Base for Information System Classified Protection
Vasudevan et al. Integrity-Protected Micro-Hypervisor on x86 and ARM Hardware Virtualized Platforms
KR20240104780A (ko) 모바일 기기의 동적커널모듈 보호 방법 및 이를 이용한 시스템
Yefremov et al. An approach to on the fly activation and deactivation of virtualization-based security systems
Elwell Securing systems with non-inclusive memory permissions
Parno et al. How Do We Make Sense of Platform State?

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060411

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060710

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060718

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061011

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070109

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100217

A524 Written submission of copy of amendment under section 19 (pct)

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20100217