JP4767129B2 - Os切替装置及びos切替方法 - Google Patents

Os切替装置及びos切替方法 Download PDF

Info

Publication number
JP4767129B2
JP4767129B2 JP2006222233A JP2006222233A JP4767129B2 JP 4767129 B2 JP4767129 B2 JP 4767129B2 JP 2006222233 A JP2006222233 A JP 2006222233A JP 2006222233 A JP2006222233 A JP 2006222233A JP 4767129 B2 JP4767129 B2 JP 4767129B2
Authority
JP
Japan
Prior art keywords
unit
secret
switching
switching device
memory
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
JP2006222233A
Other languages
English (en)
Other versions
JP2008046887A (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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2006222233A priority Critical patent/JP4767129B2/ja
Publication of JP2008046887A publication Critical patent/JP2008046887A/ja
Application granted granted Critical
Publication of JP4767129B2 publication Critical patent/JP4767129B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本発明は、OS切替装置及びOS切替方法に関する。
従来、単一のコードをユーザレベル(保護モード)における実行部分と、カーネルレベル(非保護モード)の実行部分とに分離する技術が提案されている(例えば、特許文献1参照。)。この技術では、クリティカルなコードをカーネルの例外ハンドラにおいて実行することにより、クリティカルコードの実行をデバッガから隠蔽してコードの難読化を図る。
US 2003/0093685 A1
しかしながら、上記の特許文献1では、単一のOS内においてユーザランドにおける実行プロセスがカーネル内のコードを読み出すことを防止する機能に効果が限定されており、複数のOSが動作するマルチOS環境において他のOSへの攻撃を防止することができない。
そこで、本発明は、上記の課題に鑑み、マルチOS環境において、一方のOSから他方のOSへの機密情報の読出しや改竄の攻撃を防御するOS切替装置及びOS切替方法を提供することを目的とする。
上記目的を達成するため、本発明の第1の特徴は、OSを停止するOS停止部と、OSの実行を再開するOS起動部とを含む複数のOSと、該複数のOSを切替えて動作させるOS切替部とを備えるOS切替装置であって、(a)例外処理を実施する例外処理部と、(b)セキュリティ機能の実現に用いるシークレットを生成するシークレット生成部と、(c)例外処理部内に実装され、シークレットの演算を実行するシークレット演算部とを備えるOS切替装置であることを要旨とする。
第1の特徴に係るOS切替装置によると、マルチOS環境において、一方のOSから他方のOSへの機密情報の読出しや改竄の攻撃を防御することができる。
又、第1の特徴に係るOS切替装置において、OSは、機密情報を格納する機密情報保持部と、該機密情報保持部に格納した機密情報の暗号化および復号を行う暗号化・復号部とを備え、シークレット演算部において演算されたシークレットを用いて、暗号化・復号部が利用する暗号鍵を生成する鍵生成部を更に備えてもよい。
このOS切替装置によると、OS内に保持したシークレット生成部においてシークレット(擬似乱数データ)を生成する際に、OSの例外処理部においてシークレットに演算を実施することにより、攻撃OSによる再現が困難なシークレットを生成することができる。
又、第1の特徴に係るOS切替装置において、OSは、データあるいはコードの完全性を検証する完全性検証部を更に備えてもよい。
このOS切替装置によると、データあるいはコードの完全性を更に高めることができる。
又、上記のOS切替装置において、OS切替部は、機密情報を格納する機密情報保持部と、該機密情報保持部に格納した機密情報の暗号化および復号を行う暗号化・復号部とを備え、シークレット演算部において演算されたシークレットを用いて、暗号化・復号部が利用する暗号鍵を生成する鍵生成部を更に備えてもよい。
このOS切替装置によると、OS切替部内に保持したシークレット生成部においてシークレット(擬似乱数データ)を生成する際に、OS切替部の例外処理部においてシークレットに演算を実施することにより、攻撃OSによる再現が困難なシークレットを生成することができる。
又、上記のOS切替装置において、OS切替部は、データあるいはコードの完全性を検証する完全性検証部を更に備えてもよい。
このOS切替装置によると、データあるいはコードの完全性を更に高めることができる。
又、上記のOS切替装置において、シークレット生成部をメモリの仮想アドレス空間に複数マップする複製メモリ管理部を更に備えてもよい。
このOS切替装置によると、シークレット生成時に利用する元データを仮想メモリ上の複数の場所にマッピングし、特定のレジスタから離れた場所を指定することにより、シークレットの再生をさらに困難にすることができる。
又、上記のOS切替装置において、シークレット生成部がシークレットを生成するためのデータを取得する場合、絶対メモリアドレスを利用してデータを指定する絶対メモリアドレス管理部を更に備えてもよい。
このOS切替装置によると、シークレット生成用の元データを仮想メモリ上のエイリアスを用いて指定することにより、シークレットの再現を更に困難にし、安全性をより向上させることができる。
又、第1の特徴に係るOS切替装置は、データおよびコードを保存する読取専用記憶部を更に備えてもよい。
このOS切替装置によると、ROMよりシークレットの生成や暗号化の処理を実施することにより、改竄の攻撃を未然に防止することができる。
又、第1の特徴に係るOS切替装置は、改竄を検出し、正規の状態に復旧する障害復旧部を更に備えてもよい。
このOS切替装置によると、改竄や障害を検知した場合にROMから復旧することにより、攻撃OSによる読出しだけではなく、改竄の攻撃に対しても耐性を高めることができる。
又、上記のOS切替装置において、OSは、OS切替部の完全性を検証する完全性検証部を更に備えてもよい。
このOS切替装置によると、OS切替部の完全性を更に高めることができる。
又、上記のOS切替装置において、OS切替部は、OSの完全性を検証する完全性検証部を更に備えてもよい。
このOS切替装置によると、OSの完全性を更に高めることができる。
又、第1の特徴に係るOS切替装置は、シークレット演算部において演算されたシークレットを用いて、ハードウェアアシスト難読化を実施するハードウェアアシスト難読化部を更に備えてもよい。
このOS切替装置によると、ハードウェアアシスト難読化に、攻撃OSが再生困難なシークレットを利用することにより、安全性を更に高めることができる。
本発明の第2の特徴は、複数のOSと、該複数のOSを切替えて動作させるOS切替部とを備えるOS切替装置において、1のOSから他のOSへ制御を切替えるOS切替方法であって、(a)セキュリティ機能の実現に用いるシークレットを生成するステップと、(b)例外処理を実施する例外処理部において、シークレットの演算を実行するステップと、(c)演算されたシークレットを用いて、機密情報あるいはOS内のメモリ全体の暗号化を行うステップとを含むOS切替方法であることを要旨とする。
第2の特徴に係るOS切替方法によると、マルチOS環境において、一方のOSから他方のOSへの機密情報の読出しや改竄の攻撃を防御することができる。
本発明によると、マルチOS環境において、一方のOSから他方のOSへの機密情報の読出しや改竄の攻撃を防御するOS切替装置及びOS切替方法を提供することができる。
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には、同一又は類似の符号を付している。ただし、図面は模式的なものであることに留意すべきである。
(OS切替装置)
まず、本実施形態に係るOS切替装置について、図1及び図2を用いて説明する。
図1は、暗号化等のモジュールをOS内に実装する場合のOS切替装置の機能的構成を示すブロック図である。
OS切替装置は、OS切替部100と、OS200、300とから構成される。
OS200、300は、OSをサスペンド状態にするためのOS停止部201、301と、OSをサスペンド状態から稼動状態に復帰させるためのOS起動部202、302を保持する。
OS200は、更に、例外処理部210と、メモリ管理部220と、シークレット生成部212と、鍵生成部213と、暗号化・復号部214と、完全性検証部215と、読取専用記憶部216と、障害復旧部217と、情報保持部230とを備える。
例外処理部210は、カーネル内において例外処理を実施する。例外処理部210は、シークレット演算部211をその内部に実装する。例外処理部210内に実装されたシークレット演算部211は、シークレットへの演算を実施する。
メモリ管理部220は、カーネル内において物理メモリと論理メモリの対応を管理する。メモリ管理部220は、複製メモリ管理部221と絶対メモリアドレス管理部222とを備える。複製メモリ管理部221は、シークレット生成部212において利用するシークレットを生成するためのデータを仮想メモリ上の複数の場所にマッピングする。絶対メモリアドレス管理部222は、シークレット生成部212においてシークレットの生成に利用するデータを仮想メモリ上の絶対アドレスにより指定するためにデータの絶対メモリアドレスを管理する。
シークレット生成部212は、シークレット演算部211の演算機能を用いてシークレットを生成する。
鍵生成部213は、シークレット生成部212の出力結果として得られたシークレットを用いて暗号化・復号用の鍵を生成する。
暗号化・復号部214は、鍵生成部213で得られた鍵を利用して暗号化および復号を実施する。
完全性検証部215は、シークレット生成部212で得られたシークレットを用いて完全性検証用のデータを作成・保持し、完全性の検証を実施する。
読取専用記憶部216は、OS内のデータやコードを保存する。
障害復旧部217は、完全性検証部215の検証結果として改竄や障害が検知された場合に復旧を実施する。
情報保持部230は、OS200のカーネルおよびユーザランドのプログラムの用いるデータやコードを保持する。情報保持部230は、機密情報保持部231を備える。機密情報保持部231は、読出しや改竄を防止することが必要な機密情報を保持する。
又、図示していないが、OS200は、シークレット演算部211において演算されたシークレットを用いて、ハードウェアアシスト難読化を実施するハードウェアアシスト難読化部を更に備えてもよい。
例外処理部210は、カーネル内の例外処理を意味しており、ページフォールトやゼロ除算等の例外に対する処理を実施する例外ハンドラ関数である。シークレット演算部211を例外処理部210内に実装することでOS300からの解析が困難になる。シークレット生成部212においてシークレットを生成する際に、例外処理部210の例外ハンドラが呼び出されるようにするため、例えば、メモリ管理部220内のTLB(Translation Look-aside Buffer)のエントリをOS200に制御が移る際に消去する。これにより、シークレット生成部212においてシークレットを生成する際に、必ず例外処理部210内のシークレット演算部211が実行される。しかし、OS300からシークレットの再現を試みる場合、コードを単純に実行するだけでは例外処理が発生せず、シークレット演算部211が呼び出されないため、正しい暗号化・復号鍵を入手することができない。シークレット生成部212においてシークレットを生成するための元のデータとして、例えば、シークレットを生成する関数自身の仮想メモリ上のアドレス、この関数からの戻りアドレス、擬似乱数を用いることができる。一般的に、関数の戻りアドレスはスタックポインタから1ワード分小さいメモリアドレスを指定することで取得する。この処理をそのまま実装する代わりに、仮想メモリ上に関数の戻りアドレスへのエイリアスをメモリ管理部220内のTLBエントリとして追加する。エイリアスは関数の戻りアドレスと同じ物理メモリを指すように仮想メモリと物理メモリのマッピングを行ったメモリ1ページ分のエントリである。関数の戻りアドレスを指定する際に、エイリアスされた仮想アドレスで指定することにより、関数の戻りアドレスを利用していることが明示的に示されなくなり、OS300においてシークレットを再生することが困難となる。このための前提として、OS停止部201における動作が決定的となるようにOS200を実装することにより、メモリ管理部220内の仮想メモリのスタックの状態はOSのサスペンド処理時に常に同じ状態とすることが必要である。
図2は、暗号化等のモジュールをOS切替部へ実装する場合のOS切替装置の機能的構成を示すブロック図である。
OS切替装置は、図1に示したものと同じ機能の各モジュールから構成される。図1に示したOS切替装置と異なる点として、OS700(図1のOS200)に入っていた多くの機能がOS切替部600に含まれている。
OS切替部600は、例外処理部710、シークレット演算部711、シークレット生成部712、鍵生成部713、暗号化・復号部714、完全性検証部715、読取専用記憶部716、障害復旧部717、メモリ管理部720、複製メモリ管理部721、絶対メモリアドレス管理部722から構成される。
OS切替部600に配置された各機能、OS切替処理部601、例外処理部710、シークレット演算部711、シークレット生成部712、鍵生成部713、暗号化・復号部714、完全性検証部715、読取専用記憶部716、障害復旧部717、メモリ管理部720、複製メモリ管理部721、絶対メモリアドレス管理部722は、図1に示す各機能、OS切替処理部101、例外処理部210、シークレット演算部211、シークレット生成部212、鍵生成部213、暗号化・復号部214、完全性検証部215、読取専用記憶部216、障害復旧部217、メモリ管理部220、複製メモリ管理部221、絶対メモリアドレス管理部222と同様であるので、ここでは説明を省略する。
又、OS700に配置された各機能、OS停止部701、OS起動部702、情報保持部730、機密情報保持部731は、図1に示す各機能、OS停止部201、OS起動部202、情報保持部230、機密情報保持部231と同様であるので、ここでは説明を省略する。
更に、OS800に配置された各機能、OS停止部801、OS起動部802は、図1に示す各機能、OS停止部301、OS起動部302と同様であるので、ここでは説明を省略する。
(OS切替方法)
次に、本実施形態に係るOS切替方法について説明する。
図3及び図4は、図1に示すOS切替装置におけるOS切替時のフローチャートである。
図3は、OS停止部201においてOSのサスペンド処理を開始した際の暗号化の手順を示し、図4は、OS起動部202においてOSの起動処理を開始した際の完全性検証・復号の手順を示している。
図3において、OS停止部201がOS切替の処理を開始すると(ステップ100)、シークレット生成部212は、暗号化の鍵の種となるシークレットを生成する(ステップ101)。
次に、シークレット生成時に必ず呼び出されるようにあらかじめ設定された例外処理部210内において、シークレット演算部211がシークレットに演算を施し(ステップ102)、鍵生成部213は、最終的に得られたシークレットを利用して暗号化鍵を生成する。
次に、暗号化・復号部214は、得られた暗号鍵を利用してOS内のクリティカルなデータやコード、あるいはOS全体の暗号化を実施する(ステップ103)。OS全体を暗号化する際には、単純に排他的論理和を算出するような簡易な暗号化を利用して計算時間を短縮する方法をとってもよい。
次に、完全性検証部215は、暗号化したデータに対する完全性検証データを生成し(ステップ104)、OS切替処理部101は、OSの切替を実施する(ステップ105)。
次に、他のOSの動作が完了し、元のOSに制御が戻る際の処理手順を図4を用いて説明する。
まず、元のOSを起動するため、OS起動部202がOS切替の処理を開始すると(ステップ106)、シークレット生成部212は、復号の鍵の種となるシークレットを生成する(ステップ107)。
次に、シークレット生成時に例外処理部210において、シークレット演算部211がシークレットの演算を実施し、暗号化の際と同じシークレットを再生する(ステップ108)。
次に、完全性検証部215は、ステップ104で生成した完全性検証用のデータを利用してクリティカルなコードやデータ、あるいはメモリ全体の完全性を検証し(ステップ109)、問題がなければ、暗号化・復号部214は、復号を実施する(ステップ110)。完全性の検証に失敗し、改竄や障害の可能性がある場合、障害復旧部217は、ROM等より復旧の処理を実施する(ステップ112)。
そして、正しい状態に復号あるいは復旧を完了すると、OS切替処理部101は、OSの切替を実施して元のOSを起動し処理を完了する(ステップ111)。
図5及び図6は、図2に示すOS切替装置におけるOS切替時のフローチャートである。処理内容は基本的に図3及び図4に示した手順と同様であり、これらの処理をOS切替部内で実施する点が異なっている。
図5は、OS停止部701においてOSのサスペンド処理を開始した際の暗号化の手順を示し、図6は、OS起動部702においてOSの起動処理を開始した際の完全性検証・復号の手順を示している。
図5において、OS停止部701がOS切替の処理を開始すると(ステップ200)、シークレット生成部712は、暗号化の鍵の種となるシークレットを生成する(ステップ201)。
次に、シークレット生成時に必ず呼び出されるようにあらかじめ設定された例外処理部710内において、シークレット演算部711がシークレットに演算を施し(ステップ202)、鍵生成部213は、最終的に得られたシークレットを利用して暗号化鍵を生成する。
次に、暗号化・復号部214は、得られた暗号鍵を利用してOS内のクリティカルなデータやコード、あるいはOS全体の暗号化を実施する(ステップ203)。OS全体を暗号化する際には、単純に排他的論理和を算出するような簡易な暗号化を利用して計算時間を短縮する方法をとってもよい。
次に、完全性検証部715は、暗号化したデータに対する完全性検証データを生成し(ステップ204)、OS切替処理部601は、OSの切替を実施し、別ドメインのOSを起動する(ステップ205)。
次に、他のOSの動作が完了し、元のOSに制御が戻る際の処理手順を図6を用いて説明する。
まず、元のOSを起動するため、OS起動部702がOS切替の処理を開始すると(ステップ206)、シークレット生成部712は、復号の鍵の種となるシークレットを生成する(ステップ207)。
次に、シークレット生成時に例外処理部710において、シークレット演算部711がシークレットの演算を実施し、暗号化の際と同じシークレットを再生する(ステップ208)。
次に、完全性検証部715は、ステップ204で生成した完全性検証用のデータを利用してクリティカルなコードやデータ、あるいはメモリ全体の完全性を検証し(ステップ209)、問題がなければ、暗号化・復号部714は、復号を実施する(ステップ210)。完全性の検証に失敗し、改竄や障害の可能性がある場合、障害復旧部717は、ROM等より復旧の処理を実施する(ステップ212)。
そして、正しい状態に復号あるいは復旧を完了すると、OS切替処理部601は、OSの切替を実施して、別ドメインOSを起動し、処理を完了する(ステップ211)。
(作用及び効果)
本実施形態では、二つ以上のOSがSwitcher方式により適宜切替えられつつ、通常通りの特権モードで動作するようなMulti-OS 環境を想定している。
本実施形態に係るOS切替装置及びOS切替方法では、攻撃OSの実行時に正しく動作しない擬似乱数生成器(Blackbox PRNG)を実現する。中断状態に移行させられるOS領域中の重要情報保存部分に対して、当該PRNGから生成した擬似乱数データにより、暗号化・完全性保証データ付加等の処理を適用することで、その後実行状態に移行させられるOSからの攻撃に対処することが可能となる。即ち、本実施形態に係るOS切替装置及びOS切替方法によると、暗号化や完全性に利用するシークレットをカーネルの例外処理において実施することにより、攻撃OSによるシークレットの再生を困難とすることができる。又、シークレットの種として利用する戻りアドレスのメモリをエイリアンすることにより、シークレットの再生を困難とすることができる。
又、本実施形態に係るOS切替装置において、OSは、機密情報を格納する機密情報保持部と、機密情報保持部に格納した機密情報の暗号化および復号を行う暗号化・復号部とを備え、シークレット演算部において演算されたシークレットを用いて、暗号化・復号部が利用する暗号鍵を生成する鍵生成部を備える。このため、OS内に保持したシークレット生成部においてシークレット(擬似乱数データ)を生成する際に、OSの例外処理部においてシークレットに演算を実施することにより、攻撃OSによる再現が困難なシークレットを生成することができる。
又、OSは、データあるいはコードの完全性を検証する完全性検証部を備える。このため、データあるいはコードの完全性を更に高めることができる。
又、OS切替部は、機密情報を格納する機密情報保持部と、該機密情報保持部に格納した機密情報の暗号化および復号を行う暗号化・復号部とを備え、シークレット演算部において演算されたシークレットを用いて、暗号化・復号部が利用する暗号鍵を生成する鍵生成部を備える。このため、OS切替部内に保持したシークレット生成部においてシークレット(擬似乱数データ)を生成する際に、OS切替部の例外処理部においてシークレットに演算を実施することにより、攻撃OSによる再現が困難なシークレットを生成することができる。
又、OS切替部は、データあるいはコードの完全性を検証する完全性検証部を備える。このため、データあるいはコードの完全性を更に高めることができる。
又、OS切替装置は、シークレット生成部をメモリの仮想アドレス空間に複数マップする複製メモリ管理部を備える。このため、シークレット生成時に利用する元データを仮想メモリ上の複数の場所にマッピングし、特定のレジスタから離れた場所を指定することにより、シークレットの再生をさらに困難にすることができる。
又、OS切替装置は、シークレット生成部がシークレットを生成するためのデータを取得する場合、絶対メモリアドレスを利用してデータを指定する絶対メモリアドレス管理部を備える。このため、シークレット生成用の元データを仮想メモリ上のエイリアスを用いて指定することにより、シークレットの再現を更に困難にし、安全性をより向上させることができる。
又、OS切替装置は、データおよびコードを保存する読取専用記憶部を備える。このため、ROMよりシークレットの生成や暗号化の処理を実施することにより、改竄の攻撃を未然に防止することができる。
又、OS切替装置は、改竄を検出し、正規の状態に復旧する障害復旧部を備える。このため、改竄や障害を検知した場合にROMから復旧することにより、攻撃OSによる読出しだけではなく、改竄の攻撃に対しても耐性を高めることができる。
又、OSは、OS切替部の完全性を検証する完全性検証部を備える。このため、OS切替部の完全性を更に高めることができる。
又、OS切替部は、OSの完全性を検証する完全性検証部を備える。このため、OSの完全性を更に高めることができる。
又、OS切替装置は、ハードウェアアシスト難読化を実施するハードウェアアシスト難読化部を備える。このため、ハードウェアアシスト難読化に、攻撃OSが再生困難なシークレットを利用することにより、安全性を更に高めることができる。
(その他の実施の形態)
本発明は上記の実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなろう。
例えば、図1及び図2において、OSが2つであるOS切替装置について説明したが、OSの数はこれに限らず、3以上のOSを切替える装置に本発明を適用してもよいことは勿論である。
このように、本発明はここでは記載していない様々な実施形態等を含むことは勿論である。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
本実施形態に係るOS切替装置を示す機能ブロック図である(その1)。 本実施形態に係るOS切替装置を示す機能ブロック図である(その2)。 本実施形態に係るOS切替方法を示すフローチャートである(その1)。 本実施形態に係るOS切替方法を示すフローチャートである(その2)。 本実施形態に係るOS切替方法を示すフローチャートである(その3)。 本実施形態に係るOS切替方法を示すフローチャートである(その4)。
符号の説明
100、600…OS切替部
101、601…OS切替処理部
200、300、700、800…OS
201、301、701、801…OS停止部
202、302、702,802…OS起動部
210、710…例外処理部
211、711…シークレット演算部
212、712…シークレット生成部
213、713…鍵生成部
214、714…暗号化・復号部
215、715…完全性検証部
216、716…読取専用記憶部
217、717…障害復旧部
220、720…メモリ管理部
221、721…複製メモリ管理部
222、722…絶対メモリアドレス管理部
230、730…情報保持部
231、731…機密情報保持部

Claims (7)

  1. OSを停止するOS停止部と、OSの実行を再開するOS起動部とを含む複数のOS切替えて動作させるOS切替装置であって、
    例外処理を実施する例外処理部と、
    セキュリティ機能の実現に用いるシークレットを生成するシークレット生成部と、
    前記例外処理部内に実装され、前記シークレットの演算を実行するシークレット演算部と
    機密情報を格納する機密情報保持部と、
    前記機密情報保持部に格納した前記機密情報の暗号化および復号を行う暗号化・復号部と、
    前記シークレット演算部において演算された前記シークレットを用いて、前記暗号化・復号部が利用する暗号鍵を生成する鍵生成部と、
    前記シークレット生成部において用いる前記シークレットを生成するためのデータを仮想メモリ上の複数の場所にマッピングするメモリ管理部と
    を備え、
    前記例外処理部は、前記シークレット生成部において前記シークレットを生成する際に、前記例外処理部の例外ハンドラが呼び出されるようにするため、前記メモリ管理部内のエントリを、他のOSに制御が移る際に消去し、
    前記シークレットを生成する関数の戻りアドレスは、前記仮想メモリ上に前記関数の戻りアドレスへのエイリアスを前記メモリ管理部内のエントリとして追加したものであり、
    前記エイリアスは、前記関数の戻りアドレスと同じ物理メモリを指すように前記仮想メモリと前記物理メモリのマッピングを行ったエントリであることを特徴とするOS切替装置。
  2. 前記データあるいはコードの完全性を検証する完全性検証部を更に備えることを特徴とする請求項に記載のOS切替装置。
  3. 前記データおよびコードを保存する読取専用記憶部を更に備えることを特徴とする請求項に記載のOS切替装置。
  4. 改竄を検出し、正規の状態に復旧する障害復旧部を更に備えることを特徴とする請求項に記載のOS切替装置。
  5. 記OSの完全性を検証する完全性検証部を更に備えることを特徴とする請求項に記載のOS切替装置。
  6. 前記シークレット演算部において演算されたシークレットを用いて、ハードウェアアシスト難読化を実施するハードウェアアシスト難読化部を更に備えることを特徴とする請求項1〜のいずれか1項に記載のOS切替装置。
  7. 複数のOSと、該複数のOSを切替えて動作させ1のOSから他のOSへ制御を切替えるOS切替方法であって、
    セキュリティ機能の実現に用いるシークレットを生成するステップと、
    前記シークレットの演算を実行するステップと、
    格納した機密情報の暗号化および復号を行うステップと、
    演算された前記シークレットを用いて、前記暗号化および復号を行うステップにおいて利用される暗号鍵を生成するステップと、
    メモリ管理部を用いて、前記シークレットを生成するためのデータを仮想メモリ上の複数の場所にマッピングするステップと
    を含み、
    前記シークレットを生成するステップでは、前記シークレットを生成する際に、前記例外処理部の例外ハンドラが呼び出されるようにするため、前記メモリ管理部内のエントリを、他のOSに制御が移る際に消去し、
    前記シークレットを生成する関数の戻りアドレスは、前記仮想メモリ上に前記関数の戻りアドレスへのエイリアスを前記メモリ管理部内のエントリとして追加したものであり、
    前記エイリアスは、前記関数の戻りアドレスと同じ物理メモリを指すように前記仮想メモリと前記物理メモリのマッピングを行ったエントリであることを特徴とするOS切替方法。
JP2006222233A 2006-08-17 2006-08-17 Os切替装置及びos切替方法 Expired - Fee Related JP4767129B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006222233A JP4767129B2 (ja) 2006-08-17 2006-08-17 Os切替装置及びos切替方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006222233A JP4767129B2 (ja) 2006-08-17 2006-08-17 Os切替装置及びos切替方法

Publications (2)

Publication Number Publication Date
JP2008046887A JP2008046887A (ja) 2008-02-28
JP4767129B2 true JP4767129B2 (ja) 2011-09-07

Family

ID=39180574

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006222233A Expired - Fee Related JP4767129B2 (ja) 2006-08-17 2006-08-17 Os切替装置及びos切替方法

Country Status (1)

Country Link
JP (1) JP4767129B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112009000612A5 (de) 2008-03-14 2012-08-02 Mitsubishi Electric Corp. Multi-Betriebssystem-Booteinrichtung (OS), Multi-OS-Boot-Programm, Aufzeichnungsmedium und Multi-OS-Bootverfahren
US9170832B2 (en) 2012-02-22 2015-10-27 Panasonic Intellectual Property Corporation Of America Virtual machine control apparatus and virtual machine control method
GB2508895A (en) * 2012-12-14 2014-06-18 Ibm Bootloader for booting a computer into a second operating system that is hidden from a first host operating system
US10289425B2 (en) 2014-03-19 2019-05-14 Intel Corporation Access isolation for multi-operating system devices
US10032029B2 (en) 2014-07-14 2018-07-24 Lenovo (Singapore) Pte. Ltd. Verifying integrity of backup file in a multiple operating system environment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4098478B2 (ja) * 2001-01-31 2008-06-11 株式会社東芝 マイクロプロセッサ
JP2003051819A (ja) * 2001-08-08 2003-02-21 Toshiba Corp マイクロプロセッサ
US6996698B2 (en) * 2003-05-12 2006-02-07 International Business Machines Corporation Blocking processing restrictions based on addresses
JP4629416B2 (ja) * 2003-11-28 2011-02-09 パナソニック株式会社 データ処理装置

Also Published As

Publication number Publication date
JP2008046887A (ja) 2008-02-28

Similar Documents

Publication Publication Date Title
Kwong et al. Rambleed: Reading bits in memory without accessing them
CN111052115B (zh) 取决于调用路径的认证的数据处理装置和方法
KR101054318B1 (ko) 정보 처리 시스템 및 프로그램을 기록한 컴퓨터로 읽을 수 있는 매체
JP5537742B2 (ja) 多ユーザ機密コードおよびデータを保護するためのアーキテクチャを含む方法および装置
US9672384B2 (en) Secure processor and a program for a secure processor
US11003781B2 (en) Root key processing method and associated device
JP3881942B2 (ja) 暗号化部を有する半導体装置
US20040003273A1 (en) Sleep protection
CN107526974B (zh) 一种信息密码保护装置和方法
JP4767129B2 (ja) Os切替装置及びos切替方法
JP2020528608A5 (ja)
US20170046280A1 (en) Data processing device and method for protecting a data processing device against attacks
JP2021519564A (ja) セキュアコンピュータシステム
JP2007310688A (ja) マイクロコンピュータおよびそのソフトウェア改竄防止方法
EP2028579B1 (en) Information processing apparatus and method for installing an encrypted program in a key implemented system
CN107563226B (zh) 一种存储器控制器、处理器模块及密钥更新方法
Gelbart et al. CODESSEAL: Compiler/FPGA approach to secure applications
JP7077872B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP2018526720A (ja) 仮想マシンの状態情報の保護
JP4120702B2 (ja) 情報処理システムおよびプログラム
CN113536331B (zh) 存储器和计算系统的数据安全
US20240176638A1 (en) Register protection for confidential computing environment
Li Understanding and Exploiting Design Flaws of AMD Secure Encrypted Virtualization
CA2900137A1 (en) Tamper-evident data store method and system, and device configured
Vojtěšek Analýza rescue souboru BestCrypt Volume Encryption

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110516

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4767129

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140624

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

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