(57)【要約】【課題】本発明は、改竄を検出したこと、または改竄が検出されたプログラムに関する情報を正確に表示することができる情報処理装置を提供することを目的とする。【解決手段】本発明の情報処理装置は、ＬＥＤ１４と、不揮発メモリ１３と、ブートＲＯＭ１２と、ＣＰＵ１１と、備え、前記ＣＰＵ１１が、前記ブートＲＯＭ１２に記憶された前記改竄検証プログラムを参照して、前記プログラムの改竄の有無を検証する改竄検証手段と、前記ブートＲＯＭに記憶された前記表示制御プログラムを参照して、前記改竄検証手段が検証した結果に応じた表示内容を前記表示部に表示させる表示制御手段と、を備えるものである。【選択図】図１
2009032191.tif 000002
【特許請求の範囲】
【請求項１】
表示部と、
プログラムを記憶するプログラム記憶部と、
前記プログラムの改竄の有無を検証するための改竄検証プログラムと、検証した結果に応じた表示内容を出力するよう制御するための第１の表示制御プログラムと、を記憶する改竄検証プログラム記憶部と、
前記改竄検証プログラム記憶部に記憶された前記改竄検証プログラムを参照して、前記プログラムの改竄の有無を検証する改竄検証手段と、
前記改竄検証プログラム記憶部に記憶された前記第１の表示制御プログラムを参照して、前記改竄検証手段が検証した結果に応じた表示内容を前記表示部に表示させる第１の表示制御手段と、
を備える情報処理装置。
【請求項２】
請求項１記載の情報処理装置であって、
前記第１の表示制御手段は、前記表示部に、改竄の有無を識別可能に表示させる、
情報処理装置。
【請求項３】
請求項１または２記載の情報処理装置であって、
前記第１の表示制御手段は、前記表示部に、改竄が有るとされたプログラムに関する情報を表示させる、
情報処理装置。
【請求項４】
請求項３記載の情報処理装置であって、
パスワードの入力を行なう操作部を備え、
前記第１の表示制御手段は、パスワードの入力を促すための情報を前記表示部に表示を行い、前記操作部により入力されたパスワードが一致した場合に、前記改竄検証手段が検証した結果に関する情報を表示する、
情報処理装置。
【請求項５】
請求項１または２記載の情報処理装置であって、
前記表示部は、ＬＥＤである、
情報処理装置。
【請求項６】
請求項１または２記載の情報処理装置であって、
前記プログラム記憶部に記憶された、各種表示内容を出力するよう制御するための第２の表示制御プログラムを参照して、各種表示内容を前記表示部に表示させる第２の表示制御手段を備え、
前記表示部は、第１の表示部と第２の表示部を有し、
前記第１の表示制御手段は、前記改竄検証プログラム記憶部に記憶された前記第１の表示制御プログラムを参照して、前記改竄検証手段が検証した結果に応じた表示内容を前記第１の表示部に表示させ、
前記第２の表示制御手段は、前記プログラム記憶部に記憶された前記第２の表示制御プログラムを参照して、各種表示内容を前記第２の表示部に表示させる、
情報処理装置。
【請求項７】
請求項１または２記載の情報処理装置であって、
前記プログラム記憶部に記憶された、各種表示内容を出力するよう制御するための第２の表示制御プログラムを参照して、各種表示内容を前記表示部に表示させる第２の表示制御手段を備え、
前記表示部は、第１の表示パターンと第２の表示パターンにより表示可能であり、
前記第１の表示制御手段は、前記改竄検証プログラム記憶部に記憶された前記第１の表示制御プログラムを参照して、前記改竄検証手段が検証した結果に応じた表示内容を前記第１の表示パターンで表示部に表示させ、
前記第２の表示制御手段は、前記プログラム記憶部に記憶された前記第２の表示制御プログラムを参照して、各種表示内容を前記第２の表示パターンで表示部に表示させる、
情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュアブート（プログラムの改竄の有無を検証する処理）を実施する情報処理装置に関する。
【背景技術】
【０００２】
電源が投入された情報処理装置は、まず、ＣＰＵを起動する。ＣＰＵは、ブートＲＯＭに記憶されたＩＰＬ（Initial Program Loader）プログラムを参照して、不揮発メモリから最初に読み出して起動すべき各種プログラムの先頭アドレスを読み出す。ＣＰＵは、ＩＰＬプログラムを参照して読み出した先頭アドレスを基に、不揮発メモリにおける改竄検証されるべき各種プログラムを特定し、ブートＲＯＭに記憶された改竄検証プログラムを参照して改竄検証処理を実施する。改竄されていないことが検証されれば、それらの各種プログラムを実行することによってＯＳを起動する。
【０００３】
改竄検証処理によってあるプログラムに改竄が有ることが検出された場合、改竄を検出したこと、または改竄が検出されたプログラムに関する情報（例えば、プログラム名）などをＬＥＤやディスプレイに表示して、装置利用者に通知するようにしたものがある（例えば、特許文献１、２）。
【特許文献１】特開平２−２３１６５０号公報
【特許文献２】特開平４−１４９７５３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１、２に開示されている情報処理装置では、ＬＥＤやディスプレイによる表示内容を制御する表示制御プログラムが改竄された場合、その改竄を検出したとしても、改竄を検出したことを表示することができない、あるいは、改竄を検出したことを正確に表示することが保証されていない。
【０００５】
本発明は、上記事情に鑑みてなされたもので、改竄を検出したこと、または改竄が検出されたプログラムに関する情報を正確に表示することができる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の情報処理装置は、表示部と、プログラムを記憶するプログラム記憶部と、前記プログラムの改竄の有無を検証するための改竄検証プログラムと、検証した結果に応じた表示内容を出力するよう制御するための第１の表示制御プログラムと、を記憶する改竄検証プログラム記憶部と、前記改竄検証プログラム記憶部に記憶された前記改竄検証プログラムを参照して、前記プログラムの改竄の有無を検証する改竄検証手段と、前記改竄検証プログラムに記憶された前記第１の表示制御プログラムを参照して、前記改竄検証手段が検証した結果に応じた表示内容を前記表示部に表示させる第１の表示制御手段と、を備えるものである。
【０００７】
また、本発明の情報処理装置は、前記第１の表示制御手段が、前記表示部に、改竄の有無を識別可能に表示させる、ものを含む。
【０００８】
また、本発明の情報処理装置は、前記第１の表示制御手段が、前記表示部に、改竄が有るとされたプログラムに関する情報を表示させる、ものを含む。
【０００９】
また、本発明の情報処理装置は、前記表示部が、ＬＥＤである、ものを含む。
【００１０】
この構成によれば、ブートＲＯＭ（改竄検証プログラム記憶部）に記憶された表示制御プログラムが改竄されることはないため、改竄を検出したこと、または改竄が検出されたプログラムに関する情報を正確に表示することができる。
【００１１】
また、本発明の情報処理装置は、パスワードの入力を行なう操作部を備え、前記第１の表示制御手段が、パスワードの入力を促すための情報を前記表示部に表示を行い、前記操作部により入力されたパスワードが一致した場合に、前記改竄検証手段が検証した結果に関する情報を表示する、ものを含む。
【００１２】
この構成によれば、第３者によるプログラムに関する情報の閲覧を防止することができる。
【００１３】
また、本発明の情報処理装置は、前記プログラム記憶部に記憶された、各種表示内容を出力するよう制御するための第２の表示制御プログラムを参照して、各種表示内容を前記表示部に表示させる第２の表示制御手段を備え、前記表示部が、第１の表示部と第２の表示部を有し、前記第１の表示制御手段が、前記改竄検証プログラム記憶部に記憶された前記第１の表示制御プログラムを参照して、前記改竄検証手段が検証した結果に応じた表示内容を前記第１の表示部に表示させ、前記第２の表示制御手段が、前記プログラム記憶部に記憶された前記第２の表示制御プログラムを参照して、各種表示内容を前記第２の表示部に表示させる、ものを含む。
【００１４】
この構成によれば、改竄検証した結果を通知するためのＬＥＤ（第１の表示部）を他のＬＥＤ（第２の表示部）と独立して設けることによって、プログラムに対する改竄検証の有無を利用者がより識別し易くなる。
【００１５】
また、本発明の情報処理装置は、前記プログラム記憶部に記憶された、各種表示内容を出力するよう制御するための第２の表示制御プログラムを参照して、各種表示内容を前記表示部に表示させる第２の表示制御手段を備え、前記表示部が、第１の表示パターンと第２の表示パターンにより表示可能であり、前記第１の表示制御手段が、前記改竄検証プログラム記憶部に記憶された前記第１の表示制御プログラムを参照して、前記改竄検証手段が検証した結果に応じた表示内容を前記第１の表示パターンで表示部に表示させ、前記第２の表示制御手段が、前記プログラム記憶部に記憶された前記第２の表示制御プログラムを参照して、各種表示内容を前記第２の表示パターンで表示部に表示させる、ものを含む。
【００１６】
この構成によれば、情報処理装置の利用者は、よりプログラムに対する改竄の有無を識別し易くなり、また、ＬＥＤ表示結果の安全性を高めることができる。
【発明の効果】
【００１７】
本発明の情報処理装置によれば、改竄を検出したこと、または改竄が検出されたプログラムに関する情報を正確に表示することができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態の情報処理装置について説明する。まず、本発明の実施の形態の情報処理装置におけるハードウェアの構成を、図１に示す本発明の実施の形態の情報処理装置におけるハードウェアの構成図を参照して説明する。本発明の実施の形態の情報処理装置は、ＣＰＵ１１、ブートＲＯＭ１２、不揮発メモリ１３、ＬＥＤ１４、操作部１５を含んで構成される。ブートＲＯＭ１２は、読み出し専用記憶装置であり、情報処理装置に電源が投入されたときに最初に実行されるべきプログラムやプログラムの改竄の有無を検証するための改竄検証プログラム（改竄検証機能、結果判定機能、プログラム起動機能、ＬＥＤ制御機能。各プログラムの機能は後述する）を記憶している。不揮発メモリ１３は、本発明の実施の形態の情報処理装置による処理を管理するプログラム（図１では、ＰＧ１、ＰＧ２、ＰＧ３。アプリケーションと称されることもある）を記憶している。ＣＰＵ１１は、ブートＲＯＭ１２に記憶されたプログラムまたは不揮発メモリ１３に記憶されたプログラムを読み出し、それらの読み出したプログラムを実行する。以下、本発明の実施の形態の情報処理装置に電源が投入されてからのＣＰＵ１１による処理について説明する。
【００１９】
電源が投入された情報処理装置において、ＣＰＵ１１に電力の供給が開始されると、ＣＰＵ１１はまず、マザーボード上にあるブートＲＯＭ１２に記憶されたＩＰＬ（Initial Program Loader）を参照して、不揮発メモリ１３から最初に読み出して起動すべきプログラムの先頭アドレスを読み出す。ＣＰＵ１１は、読み出した先頭アドレスを基に、不揮発メモリ１３に格納された各種プログラム（ＰＧ１、ＰＧ２、ＰＧ３）を読み出し、それらのプログラムの改竄の有無を検証し、改竄されていないことが検証されればそのプログラムを実行することによってＯＳを起動する。
【００２０】
ＣＰＵ１１は、不揮発メモリ１３に格納された各種プログラムの改竄の有無を検証するために各種プログラム（ＰＧ１、ＰＧ２、ＰＧ３）を読み出すにあたって、ブートＲＯＭ１２に記憶されたプログラムの改竄の有無を検証するための各種改竄検証プログラムを実行して、次に説明する改竄検証処理、結果判定処理、プログラム起動処理、及びＬＥＤ制御処理を実行する。
【００２１】
［１．改竄検証処理］
ＣＰＵ１１は、ブートＲＯＭ１２に記憶されたＩＰＬ（Initial Program Loader）を参照して、不揮発メモリ１３から該当するプログラムＰＧ１、ＰＧ２、ＰＧ３を読み出し、所定のハッシュ関数（例えば、ＳＨＡ型ハッシュ関数、ＭＤ型ハッシュ関数）や所定の暗号化処理（例えば、デジタル署名を利用した暗号化処理、ＨＭＡＣアルゴリズム）を用いて、そのプログラムの固有の値を算出する。ＣＰＵ１１は、算出した値と、予め記録しておいた検証値（上記ハッシュ関数により算出されたハッシュ値や、上記暗号化処理により算出された数値、及びハッシュ関数に類する関数により算出された数値を総称して検証値と称する。）と、を比較し、一致すれば、不揮発メモリ１３から読み出したプログラムには改竄無し、一致しなければ改竄有りと判定する。なお、検証値を算出するために用いられたハッシュ関数または暗号化処理と、［１．改竄検証処理］にて固有の値を算出するために用いるハッシュ関数または暗号化処理と、は同じものである必要がある。
【００２２】
［２．プログラム起動処理］
ＣＰＵ１１は、不揮発メモリ１３に記憶されたプログラム（ＰＧ１、ＰＧ２、ＰＧ３）のうち、［１．改竄検証処理］にて改竄無しと判定されたプログラムそれぞれを不揮発メモリ１３から読み出し、当該プログラムを実行する。
【００２３】
［３．結果判定処理］
ＣＰＵ１１は、［１．改竄検証処理］による各プログラムＰＧ１、ＰＧ２、ＰＧ３の改竄無し、改竄有りを判定する毎に、次の判定を行う。すなわち、ＣＰＵ１１は、［１．改竄検証処理］にてすべてのプログラムに対して改竄検証を実施したか（すなわち、改竄検証を実施中であるか、完了したか）、及び、すべてのプログラムに対して改竄検証を実施した場合に（すなわち、改竄検証を完了した場合に）そのすべてのプログラムに改竄が無かったか、について判定を行う。［１．改竄検証処理］にて各プログラムＰＧ１、ＰＧ２、ＰＧ３に対して改竄検証を実施した場合に第１のフラグを、さらに、各プログラムＰＧ１、ＰＧ２、ＰＧ３に改竄無しと判定した場合に第２のフラグを、それぞれ立てるようにすれば、［３．結果判定処理］にて、すべてのプログラムに第１のフラグが立っているか否かによって、すべてのプログラムに対して改竄検証を実施したか否かを判定することができ、さらに、すべてのプログラムに第２のフラグが立っているか否かによって、すべてのプログラムに改竄が無かったか否かを判定することができる。
【００２４】
［４．ＬＥＤ制御処理］
ＣＰＵ１１は、［３．結果判定処理］による判定結果を基に、ＬＥＤ１４を点灯、点滅、消灯させる。例えば、ＣＰＵ１１は、すべてのプログラムに対して改竄検証を実施していないと判定している期間中（すなわち、改竄検証を実施している期間）、ＬＥＤ１４を点滅させる。また、ＣＰＵ１１は、すべてのプログラムの改竄検証を実施した場合に（すなわち、改竄検証を完了した場合に）、そのすべてのプログラムに改竄が無かった場合にＬＥＤ１４を消灯させ、少なくとも一つのプログラムに改竄が有った場合にＬＥＤ１４を点灯させる。
【００２５】
なお、ＬＥＤ１４として、二つのＬＥＤ（図１における第１ＬＥＤ及び第２ＬＥＤ）をそれぞれ設け、その二つのＬＥＤのうちの第１ＬＥＤをブートＲＯＭ１２に記憶された改竄検証プログラムにおけるＬＥＤ制御機能実行時に制御し、残りの第２ＬＥＤを不揮発メモリ１３に記憶された、ＬＥＤの点灯、点滅、消灯の制御を伴う各種プログラム（例えば、音声通話着信時の点灯または点滅を制御するプログラム）を実行時に制御するように構成することによって、第２ＬＥＤから独立した改竄検証専用のＬＥＤとして第１ＬＥＤを利用し、不揮発メモリ１３に記憶された、ＬＥＤの点灯、点滅、消灯の制御を伴う様々なプログラムを実行時に、第２ＬＥＤを利用するようにしてもよい。この結果、情報処理装置の利用者は、よりプログラムに対する改竄の有無を識別し易くなる。また、第１ＬＥＤはＬＥＤ制御部のみが点灯することができ、ＯＳや他のアプリケーションなどが点灯することができないため、第１ＬＥＤは改竄結果をより安全に表示することができる。
【００２６】
なお、ＬＥＤ１４の点灯パターンのうち、一部の点灯パターンをＬＥＤ制御部のみが制御できるようにし、ＯＳや他のアプリケーションなどが制御できないようにすると、同様に改竄結果をより安全にＬＥＤ表示を行なうことができる。具体的にはＬＥＤ１４の「青色に点灯する」のインターフェースをＬＥＤ制御部のみに公開し、他の「赤色に点灯」や「緑色に点滅」などのインターフェースをＯＳや他のアプリケーションなどに公開する。この結果、情報処理装置の利用者は、よりプログラムに対する改竄の有無を識別し易くなり、ＬＥＤ表示結果の安全性を高めることができる。
【００２７】
以上、本発明の実施の形態の情報処理装置によれば、ブートＲＯＭ１２に記憶したＬＥＤ制御機能を有するプログラムを実行し、各プログラムＰＧ１、ＰＧ２、ＰＧ３の改竄検証の結果に応じてＬＥＤ１４を点灯、点滅、消灯させる。この構成により、ブートＲＯＭ１２に記憶されたＬＥＤ制御機能を有するプログラムが改竄されることはないため、改竄を検出したこと、または改竄が検出されたプログラムに関する情報を正確に表示することができる。
【００２８】
なお、本発明の実施の形態の情報処理装置では、ＬＥＤ１４によって、改竄検証を実施中であること、及び、プログラムへの改竄の有無を通知するようにしたが、ＬＥＤ以外に、液晶ディスプレイ、スピーカなどによって通知する構成としても構わない。また、ディスプレイを用いる場合には、ディスプレイに、改竄が検出されたプログラムに関する情報（例えば、プログラム名）などを表示してもよい。これにより、改竄されたプログラムについてより多くの情報を装置利用者に通知することができる。このとき、前記改竄されたプログラムの詳細情報を表示するために、パスワードの入力を要求しても構わない。ＬＥＤ制御機能は操作部１５によって入力されたパスワードが正しい場合に限り、前記詳細情報を表示する。
【産業上の利用可能性】
【００２９】
本発明の情報処理装置によれば、改竄を検出したこと、または改竄が検出されたプログラムに関する情報を正確に表示することができるという効果を奏し、セキュアブート（プログラムの改竄の有無を検証する処理）を実施する情報処理装置の分野において有用である。
【図面の簡単な説明】
【００３０】
【図１】本発明の実施の形態の情報処理装置におけるハードウェアの構成図
【符号の説明】
【００３１】
１１  ＣＰＵ
１２  ブートＲＯＭ
１３  不揮発メモリ
１４  ＬＥＤ
１５  操作キー
【図１】
2009032191.tif 000003