(57)【要約】【課題】暗号化した改竄検出に関する管理情報ファイルに対して生成した擬似ファイルの特定を困難にする監視装置を提供すること。【解決手段】通常処理部（１０１）から通知された管理情報ファイル（２０８、２０９）が擬似であるか否かを判定し、管理情報ファイルが擬似である場合（２０８の場合）は、擬似改竄検出管理部（２０５）に通知を行い、管理情報ファイルが擬似でない場合（２０９の場合）は、改竄検出処理を行う保護改竄検出制御部（２０３）と、保護改竄検出制御部（２０３）が取得した管理情報ファイルが擬似であると判定した場合に、保護改竄検出制御部による改竄検出処理を擬似する擬似改竄検出管理部とを備え、擬似改竄検出管理部（２０５）は、保護改竄検出制御部（２０３）の処理に要する時間を、スリープ時間としてあらかじめ保持しており、保持しているスリープ時間だけスリープ処理を行う。【選択図】図１
2011014018.tif 000002
【特許請求の範囲】
【請求項１】
改竄検出対象ファイルの改竄有無を監視する監視装置であって、
前記改竄検出対象ファイルの改竄検出に関する管理情報ファイルと、少なくとも１つ以上の擬似の管理情報ファイルと、前記改竄検出対象ファイルを記憶した記録媒体を有し、
前記記憶媒体に記憶されている管理情報ファイルを取得し、前記取得した管理情報ファイルが擬似であるか否かを判定し、擬似でない場合に、前記管理情報ファイルと前記改竄検出対象ファイルの改竄有無を判定する改竄検出処理を行う保護改竄検出制御部と、
前記保護改竄検出制御部が前記取得した管理情報ファイルが擬似であると判定した場合に、前記保護改竄検出制御部による改竄検出処理を擬似する擬似改竄検出管理部とを備え、
前記取得した管理情報ファイルが擬似である場合の処理時間と、前記取得した管理情報ファイルが擬似でない場合の処理時間との差異を少なくすることを特徴とする監視装置。
【請求項２】
前記記憶媒体は、前記管理情報ファイルを暗号化して記憶しており、
前記記憶媒体に記憶されている暗号化された管理情報ファイルを復号するための鍵を選択する鍵選択部と、
前記鍵選択部が選択した鍵を用いて、前記暗号化された管理情報ファイルを復号する復号部を備え、
前記保護改竄検出制御部は、前記復号部が復号した前記管理情報ファイルを取得して処理することを特徴とする請求項１に記載の監視装置。
【請求項３】
前記監視装置は、通常の処理を実行する通常処理部と、秘匿な処理を実行する保護処理部を備え、
前記保護処理部は、前記保護改竄検出制御部と、前記擬似改竄検出管理部と、前記鍵選択部と、前記復号部を備えたことを特徴とする請求項２に記載の監視装置。
【請求項４】
前記取得した管理情報ファイルが擬似でない場合に、前記保護改竄検出制御部による改竄検出処理の時間を測定し、前記測定した時間を保持する改竄検出時間履歴管理部を備え、
前記擬似改竄検出管理部は、前記改竄検出時間履歴管理部が保持している測定時間を用いて、スリープすることを特徴とする請求項３に記載の監視装置。
【請求項５】
前記擬似改竄検出管理部は、前記改竄検出時間履歴管理部が保持している測定時間と同じ時間、スリープすることを特徴とする請求項４に記載の監視装置。
【請求項６】
前記取得した管理情報ファイルが擬似である場合に、乱数を生成する乱数生成部を備え、
前記擬似改竄検出管理部は、前記改竄検出時間履歴管理部が保持している測定時間と、前記乱数生成部が生成した乱数を用いて算出した時間、スリープすることを特徴とする請求項４に記載の監視装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションプログラムに対する不正な改竄を監視する装置に関し、特に、擬似ファイルを用いて対象ファイルの特定を困難にする監視装置に関するものである。
【背景技術】
【０００２】
インターネットなどを介して、外部から送り込まれたウィルスなどによって、アプリケーションプログラムが不正に改竄、破壊等されることが問題となっている。以下、アプリケーションプログラムに対する不正な変更は、「改竄」と総称する。
【０００３】
悪意のある第三者による外部からの攻撃に対する対策の一つとして、外部から対象ファイルの特定を困難にすることで、このファイルが改竄されることを防ぐ技術があった（例えば、特許文献１参照）。この技術では、アプリケーションが生成した生成ファイルの擬似ファイルを複数生成し、ファイル名を変換するとともにファイル名と変換後のファイル名を内部管理しておくことで、外部からは本物の生成ファイルの特定を困難にする技術である。つまり、従来技術では、擬似ファイルを複数用意することで、外部からの総当り攻撃に対し、本物のファイルの特定を困難にすることができた。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２０７１０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、前記従来の技術では、擬似ファイルに対する処理と本物のファイルに対する処理時間に差がある場合、それぞれのファイルに対する処理時間を計測することによって、擬似ファイルと本物のファイルの特定が可能となるという課題を有していた。
【０００６】
本発明は、前記従来の課題を解決するもので、対象ファイルの特定を困難にするための擬似ファイルをセキュアな環境で処理する際、擬似処理を行うことによって、擬似ファイルを特定されにくくする監視装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の監視装置は、改竄検出対象ファイルの改竄有無を監視する監視装置であって、前記改竄検出対象ファイルの改竄検出に関する管理情報ファイルと、少なくとも１つ以上の擬似の管理情報ファイルと、前記改竄検出対象ファイルを記憶した記録媒体を有し、前記記憶媒体に記憶されている管理情報ファイルを取得し、前記取得した管理情報ファイルが擬似であるか否かを判定し、擬似でない場合に、前記管理情報ファイルと前記改竄検出対象ファイルの改竄有無を判定する改竄検出処理を行う保護改竄検出制御部と、
前記保護改竄検出制御部が前記取得した管理情報ファイルが擬似であると判定した場合に、前記保護改竄検出制御部による改竄検出処理を擬似する擬似改竄検出管理部とを備え、
前記取得した管理情報ファイルが擬似である場合の処理時間と、前記取得した管理情報ファイルが擬似でない場合の処理時間との差異を少なくすることを特徴とする。
【０００８】
本構成によって、暗号化した改竄検出に関する管理情報ファイルに対し、本物のファイルの特定を困難にするための擬似ファイルをセキュアな環境で処理する際、擬似処理を行うことによって、擬似ファイルを特定されにくくすることができる。
【発明の効果】
【０００９】
本発明の監視装置によれば、暗号化した改竄検出に関する管理情報ファイルに対して生成した擬似ファイルの特定を困難にすることで、管理情報ファイルへの外部からの総当たり攻撃に対する耐性を強化することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態１における監視装置の構成の一例を示すブロック図
【図２】本発明の実施の形態１における改竄検出に関する管理情報ファイルの一例を示す図
【図３】本発明の実施の形態１における監視装置のシーケンス図
【図４】本発明の実施の形態１における監視装置の保護処理部の処理フロー図
【図５】本発明の実施の形態１における監視装置の保護処理部の処理フロー図
【図６】本発明の実施の形態２における監視装置の構成の一例を示すブロック図
【図７】本発明の実施の形態２における監視装置の保護処理部の処理フロー図
【図８】本発明の実施の形態２における監視装置の保護処理部の処理フロー図
【図９】本発明の実施の形態３における監視装置の構成の一例を示すブロック図
【発明を実施するための形態】
【００１１】
以下本発明の実施の形態について、図面を参照しながら説明する。
【００１２】
（実施の形態１）
図１は、本発明の実施の形態における監視装置（１００）の構成の一例を示すブロック図である。
【００１３】
図１において、監視装置（１００）は、アプリケーションプログラムの改竄有無を監視する機能を有している。監視装置（１００）が改竄を検出した場合は、例えばアプリケーションプログラムを停止もしくは削除することによって、改竄されたアプリケーションプログラムの不正実行を防止する。
【００１４】
監視装置（１００）は、通常処理部（１０１）と保護処理部（１０２）と記憶媒体（２０２）と共有メモリ（２１５）を備えている。
【００１５】
通常処理部（１０１）は、通常のアプリケーションを実行する。通常のアプリケーションは、例えば、不正に改竄されてはならない音楽再生アプリケーションプログラムなどであり、コンテンツプロバイダなどが提供している音楽データを再生する。
【００１６】
保護処理部（１０２）は、通常のアプリケーションからは読み込み及び書き込みできない保護された処理部であり、例えば通常のアプリケーション実行するハードウェア（ＣＰＵやメモリなど）とは別のハードウェアで実行する。
【００１７】
記録媒体（２０２）は、暗号化された改竄検出に関する管理情報を記憶する。暗号化アルゴリズムは、例えばＡＥＳやＤＥＳなど何でもよい。改竄検出に関する管理情報ファイル（２０８、２０９）は、例えば、改竄検出対象ファイルのファイルパスとハッシュ値の対と、管理情報ファイル自身のハッシュ値と、管理情報ファイルが擬似であるか否かのインデックスと、復号化鍵を選択する鍵インデックスを備えている。詳細は、図を用いて後で説明する。ハッシュ値を計算するためのアルゴリズムはＳＨＡ−１など何でもよい。なお、図１の第１の管理情報ファイル（２０８）は、擬似ファイルであり、第２の管理情報ファイル（２０９）は、本物のファイルである。また、図１には、擬似ファイルを１つのみ図示しているが、１つの本物のファイルに対して、２個以上の擬似ファイルを記憶してもよい。
【００１８】
共有メモリ（２１５）は、通常処理部（１０１）と保護処理部（１０２）の両方から参照できるメモリである。
【００１９】
上記構成により、監視装置（１００）の保護処理部（１０２）は、記憶媒体（２０２）が記憶している改竄検出に関する管理情報ファイルを用いて、通常処理部（１０１）で実行する、通常のアプリケーションの改竄有無を監視する。なお、保護処理部（１０２）は、入力された管理情報ファイルが、擬似ファイルである場合と、本物のファイルである場合で、異なる処理を行う。詳細は、後で説明する。
【００２０】
通常処理部（１０１）は、ファイルシステム部２０１と、通常改竄検出制御部２００とを備えている。
【００２１】
ファイルシステム部（２０１）は、例えばＮＴＦＳやＥＸＴ２などであり、記録媒体（２０２）からファイルをリードもしくはライトする機能を有している。
【００２２】
通常改竄検出制御部（２００）は、ファイルシステム部（２０１）を介して、記憶媒体（２０２）から管理情報ファイル（２０８、２０９）を取得する。次に、通常改竄検出制御部（２００）は、保護処理部（１０２）に渡すために、取得した管理情報ファイルを、バイナリデータとして共有メモリ（２１５）にコピーする。なお、記憶媒体（２０２）に記憶されている管理情報ファイル（２０８、２０９）は、改竄検出対象ファイル（２１０）である通常アプリケーションプリグラムの改竄検出に用いる、管理情報ファイルであり、暗号化されている。また、前述した通り、第１の管理情報ファイル（２０８）は、擬似ファイルであり、第２の管理情報ファイル（２０９）は、本物のファイルである。
【００２３】
保護処理部（１０２）は、保護改竄検出制御部（２０３）と、復号部（２０４）と、擬似改竄検出管理部（２０５）と、鍵選択部（２０６）と、処理部能力変更部（２０７）とを備えている。
【００２４】
鍵選択部（２０６）は、管理情報ファイル（２０８、２０９）に含まれる鍵インデックスに対応する鍵を選択する。鍵は、ＡＥＳの場合、例えば１２８ビット、１９２ビット、２５６ビットのデータである。
【００２５】
復号部（２０４）は、鍵選択部（２０６）が選択した鍵を用いて、管理情報ファイル（２０８、２０９）を復号する。復号処理は、暗号エンジンなどのハードウェアもしくはソフトウェア実装で実現される。
【００２６】
保護改竄検出制御部（２０３）は、通常処理部（１０１）から通知された管理情報ファイル（２０８、２０９）が擬似であるか否かを判定する。管理情報ファイルが擬似である場合（２０８の場合）は、擬似改竄検出管理部（２０５）に通知を行い、応答を待つ。管理情報ファイルが擬似でない場合（２０９の場合）は、管理情報ファイルのハッシュ値を計算し、計算して求めたハッシュ値と、管理情報ファイルに含まれる管理情報ファイル自身のハッシュ値を比較する。これにより、保護改竄検出制御部（２０３）は、管理情報ファイル（２０９）の改竄有無を判定する。さらに、保護改竄検出制御部（２０３）は、管理情報ファイル（２０９）が改竄されていない場合に、管理情報ファイル（２０９）に基づいて、通常処理部（１０１）から取得した改竄検出対象ファイル（２１０）のハッシュ値を計算する。次に、保護改竄検出制御部（２０３）は、計算して求めたハッシュ値と、管理情報ファイルに含まれる改竄検出対象ファイルのハッシュ値を比較する。これにより、保護改竄検出制御部（２０３）は、改竄検出対象ファイル（２１０）の改竄有無を判定する。管理情報ファイル（２０９）または改竄検出対象ファイル（２１０）に改竄がある場合は、保護解散検出制御部（２０３）は、処理部能力変更部（２０７）に通知を行う。
【００２７】
処理部能力変更部（２０７）は、保護改竄検出制御部（２０３）から通知を受けると、改竄有無を監視する処理を停止し、監視装置（１００）の機能停止を行う。
【００２８】
擬似改竄検出管理部（２０５）は、保護改竄検出制御部（２０３）から通知を受けると、管理情報ファイル又は改竄検出対象ファイルに対する改竄有無を判定するための、保護改竄検出制御部２０３の改竄検出処理を擬似する。擬似する方法として、例えば、保護改竄検出制御部（２０３）の処理に要する時間を、擬似改竄検出管理部（２０５）が、スリープ時間としてあらかじめ保持しており、保持しているスリープ時間だけスリープ処理を行う。なお、このスリープ時間は、管理情報ファイルに対する改竄検出処理のスリープ時間と、改竄検出対象ファイルに対する改竄検出処理のスリープ時間と、異なる時間を保持してもよい。
【００２９】
以上の構成により、本発明は、改竄検出に関する管理情報ファイルに対する、複数の擬似ファイルにより、本物のファイルの特定を困難にするだけでなく、擬似ファイルに対する擬似処理を行うことで、本物のファイルの特定をより困難にする。つまり、擬似ファイルの処理時間と本物のファイルの処理時間の差異を少なくすることで、各ファイルに対する処理時間を計測しても、擬似の改竄検出処理であることを特定されにくくなる。
【００３０】
また、擬似処理としてのスリープ処理を行うことで、ハッシュ演算器などのハードウェアリソースを無駄に使用することがない。
【００３１】
図２は、改竄検出に関する管理情報ファイルの一例を示した図である。これは、図１の第１の管理情報ファイル（２０８）又は第２の管理情報ファイル（２０９）に相当する。
【００３２】
管理情報ファイルは、暗号部と非暗号部で構成される。
【００３３】
非暗号部には、暗号部を復号するための鍵を、一意に決める鍵インデックスが記載される。
【００３４】
鍵選択部（２０６）が、鍵インデックスを用いて、鍵を選択し、復号部（２０４）が、選択された鍵を用いて、管理情報ファイルの暗号部を復号する。
【００３５】
暗号部には、改竄検出対象ファイル（２１０）のファイルパスとハッシュ値の対と、管理情報ファイル自身のハッシュ値と、管理情報ファイルが擬似であるか否かのインデックスと、次の管理情報ファイルへのファイルパスを備えている。なお、改竄検出対象ファイル（２１０）のファイルパスとハッシュ値の対は、１つの管理情報ファイルの中に複数の対を保持することができる。また、擬似であるか否かのインデックスは、例えば、１ビットの情報であり、ＯＮ／ＯＦＦが擬似／本物を意味する。また、次の管理情報ファイルへのファイルパスは、本物の管理情報ファイルが複数個存在する場合であり、図中の矢印で示す通り、ファイルパスを用いて、記憶装置２０２上の次の管理情報ファイルにアクセスすることができる。
【００３６】
保護改竄検出制御部（２０３）は、擬似／本物インデックスを参照することで、管理情報ファイルが擬似であるか否かを判定する。本物と判定した場合、前述した通り、管理情報ファイル又は改竄検出対象ファイルの改竄検出処理を行う。一方、擬似と判定した場合、擬似改竄検出管理部（２０５）に通知を行い、擬似改竄検出管理部（２０５）は、擬似の改竄検出処理を行う。つまり、保護改竄検出制御部（２０３）は、擬似／本物インデックスが擬似インデックスである場合は、通知を行うのみで、実際の改竄検出処理（例えば、ハッシュ値の計算など）は、何も行わない。
【００３７】
図３は、本実施の形態における監視装置（１００）の、通常処理部（１０１）と保護処理部（１０２）間の、改竄検出のシーケンスの一例を示す。なお、改竄されたと判断した場合は、改竄が検出されたタイミングで、この処理を停止するものとする。
【００３８】
まず、監視装置（１００）の通常処理部（１０１）が、改竄検出開始の通知を受け、処理を開始する（ステップＳ１）。
【００３９】
ファイルシステム部（２０１）は、暗号化した改竄検出に関する管理情報ファイル（２０８、２０９）を、記憶媒体（２０２）からリードし、通常改竄検出制御部（２００）に通知する（ステップＳ２）。
【００４０】
通常改竄検出制御部（２００）は、取得した管理情報ファイル（２０８、２０９）を、共有メモリ（２１５）を介して、保護処理部（１０２）に送信する（ステップＳ３）。
【００４１】
保護処理部（１０２）の保護改竄検出制御部（２０３）は、共有メモリ（２１５）を介して、管理情報ファイル（２０８、２０９）を取得し、取得した管理情報ファイル（２０８、２０９）の鍵インデックスを復号部（２０４）に通知する。復号部（２０４）は、鍵選択部（２０６）に、通知された鍵インデックスに対応する鍵の選択を要求する。鍵選択部（２０６）は、要求に従い、通知された鍵インデックスに対応する鍵を選択し、復号部（２０４）に、選択結果を返す（ステップＳ４）。
【００４２】
次に、保護処理部（１０２）は、管理情報ファイルの改竄検出もしくはスリープ処理を行う（ステップＡ１）。つまり、保護処理部１０２は、取得した管理情報ファイルが擬似でない場合に、管理情報ファイルの改竄検出処理を行い、取得した管理情報ファイルが擬似である場合に、スリープ処理を行う。この詳細については、後で、別の図面を用いて説明する。なお、ステップＡ１で改竄が検出されなかった場合に、ステップＳ１１に遷移し、改竄が検出された場合に、処理を停止する。
【００４３】
保護改竄検出制御部（２０３）は、取得した管理情報ファイルに含まれる改竄検出対象ファイル（２１０）を、通常処理部（１０１）に要求する（ステップＳ１１）。
【００４４】
通常処理部（１０１）のファイルシステム部（２０１）は、通常改竄検出制御部（２００）から通知を受け、要求された改竄検出対象ファイル（２１０）を、記憶媒体（２０２）からリードし、通常改竄検出制御部（２００）に通知する（ステップＳ１２）。
【００４５】
通常改竄検出制御部（２００）は、取得した改竄検出対象ファイル（２１０）を、共有メモリ（２１５）を介して、保護処理部（１０２）に送信する（ステップＳ１３）。
【００４６】
保護処理部（１０２）の保護改竄検出制御部（２０３）は、共有メモリ（２１５）を介して、改竄検出対象ファイル（２１０）を受信する（ステップＳ１４）。
【００４７】
次に、保護処理部（１０２）は、改竄検出対象ファイルの改竄検出もしくはスリープ処理を行う（ステップＡ２）。つまり、保護処理部（１０２）は、取得した管理情報ファイルが擬似でない場合に、改竄検出対象ファイルの改竄検出処理を行い、取得した管理情報ファイルが擬似である場合に、スリープ処理を行う。この詳細については、後で、別の図面を用いて説明する。なお、ステップＡ２で改竄が検出されなかった場合に、ステップＳ２０に遷移し、改竄が検出された場合に、処理を停止する。
【００４８】
保護改竄検出制御部（２０３）は、取得した管理情報ファイルに含まれる他の改竄検出対象ファイル（２１０）があるか否かを判定する（ステップＳ２０）。他の改竄検出対象ファイルとは、管理情報ファイルに含まれており、且つ、ステップＳ１４で受信していないファイルを意味する。
【００４９】
他の改竄検出対象ファイル（２１０）がある場合は（ステップＳ２０がＹｅｓ）、ステップＳ１１に遷移し、他の改竄検出対象ファイル（２１０）を、通常処理部（１０１）に要求する。これにより、保護処理部（１０２）は、他の改竄検出対象ファイル（２１０）に対する改竄検出を繰り返す。
【００５０】
他の改竄検出対象ファイル（２１０）がない場合は（ステップＳ２０がＮｏ）、保護改竄検出制御部（２０３）は、次の暗号化した改竄検出に関する管理情報ファイルがあるか否かを判定する（ステップＳ２２）。
【００５１】
次の暗号化した改竄検出に関する管理情報ファイルがある場合は（ステップＳ２２がＹｅｓ）、次の暗号化した改竄検出に関する管理情報ファイルを、通常処理部（１０１）に要求する（ステップＳ２３）。これにより、保護処理部（１０２）は、次の暗号化した改竄検出に関する管理情報ファイルに対する改竄検出を繰り返す。次の暗号化した改竄検出に関する管理情報ファイルがない場合は（ステップＳ２２がＮｏ）、保護改竄検出制御部（２０３）は、改竄検出終了を通常処理部（１０１）に通知し、処理を終了する（ステップＳ２４）。
【００５２】
図４は、図３における管理情報ファイルの改竄検出もしくはスリープ処理（ステップＡ１）の詳細を示す処理フロー図である。復号部（２０４）が、鍵選択部（２０６）から選択した鍵を受け取って、処理を開始する。
【００５３】
復号部（２０４）は、選択した鍵を用いて、取得した管理情報ファイル（２０８、２０９）を復号し、復号した管理情報ファイル（２０８、２０９）を保護改竄検出制御部（２０３）に通知する（ステップＳ５）。
【００５４】
保護改竄検出制御部（２０３）は、復号した管理情報ファイル（２０８、２０９）が本物であるか否かを判定する（ステップＳ６）。
【００５５】
管理情報ファイルが本物でない場合は（ステップＳ６がＮｏ）、保護改竄検出制御部（２０３）は、擬似改竄検出管理部（２０５）に通知を行う。擬似改竄検出管理部（２０５）は、保護改竄検出制御部（２０３）から通知を受けると、スリープすることで、保護改竄検出制御部（２０３）の管理情報ファイルに対する改竄検出処理を擬似する（ステップＳ７）。また、擬似改竄検出管理部（２０５）は、スリープから起床したタイミングで、保護改竄検出制御部（２０３）に応答し、保護改竄検出制御部（２０３）は、管理情報ファイルの改竄検出を終了する。
【００５６】
管理情報ファイルが本物である場合は（ステップＳ６がＹｅｓ）、保護改竄検出制御部（２０３）は、管理情報ファイルのハッシュ値Ａを計算する（ステップＳ８）。保護改竄検出制御部（２０３）は、計算して求めたハッシュ値Ａと、管理情報ファイルにあらかじめ含まれる管理情報ファイル自身のハッシュ値を比較する（ステップＳ９）。
【００５７】
ハッシュ値が異なる場合（ステップＳ１０がＮｏ）、保護改竄検出制御部（２０３）は、改竄されたと判断し、処理部能力変更部２０７に通知する。処理部能力変更部２０７は、処理を停止して終了する。一方、ハッシュ値が同じである場合（ステップＳ１０がＹｅｓ）、保護改竄検出制御部（２０３）は、管理情報ファイルの改竄検出を終了する。
【００５８】
図５は、図３における改竄検出対象ファイルの改竄検出もしくはスリープ処理（ステップＡ２）の詳細を示す処理スロー図である。保護改竄検出制御部（２０３）が、改竄検出対象ファイルを受信して、処理を開始する。
【００５９】
保護改竄検出制御部（２０３）は、復号した管理情報ファイル（２０８、２０９）が本物であるか否かを判定する（ステップＳ１５）。なお、ステップＳ１５の判定は、前述した図４ステップＳ６と同じであるため、保護改竄検出制御部（２０３）は、図４ステップＳ６の結果を別途保持しておき、それを用いてもよい。
【００６０】
管理情報ファイルが本物でない場合は（ステップＳ１５がＮｏ）、保護改竄検出制御部（２０３）は、擬似改竄検出管理部（２０５）に通知を行う。擬似改竄検出管理部（２０５）は、保護改竄検出制御部（２０３）から通知を受けると、スリープすることで、保護改竄検出制御部２０３の改竄検出対象ファイルに対する改竄検出処理を擬似する（ステップＳ１６）。また、擬似改竄検出管理部（２０５）は、スリープから起床したタイミングで、保護改竄検出制御部（２０３）に応答し、保護改竄検出制御部（２０３）は、改竄検出対象ファイルの改竄検出を終了する。
【００６１】
管理情報ファイルが本物である場合は（ステップＳ１５がＹｅｓ）、保護改竄検出制御部（２０３）は、改竄検出対象ファイルのハッシュ値Ｂを計算する（ステップＳ１７）。保護改竄検出制御部（２０３）は、計算して求めたハッシュ値Ｂと、管理情報ファイルにあらかじめ含まれる改竄検出対象ファイルのハッシュ値を比較する（ステップＳ１８）。
【００６２】
ハッシュ値が異なる場合（ステップＳ１９がＮｏ）、保護改竄検出制御部（２０３）は、改竄されたと判断し、処理部能力変更部（２０７）に通知する。処理部能力変更部（２０７）は、処理を停止して終了する。一方、ハッシュ値が同じである場合（ステップＳ１９）、改竄検出対象ファイルの改竄検出を終了する。
【００６３】
以上の構成により、本発明は、改竄検出に関する管理情報ファイルに対する、複数の擬似ファイルにより、本物のファイルの特定を困難にするだけでなく、擬似ファイルに対する擬似処理を行うことで、本物のファイルの特定をより困難にする。つまり、擬似ファイルと本物のファイルの処理時間の差異を少なくすることで、各ファイルに対する処理時間を計測しても、擬似の改竄検出処理であることを特定されにくくなる。
【００６４】
また、擬似処理としてのスリープ処理を行うことで、ハッシュ演算器などのハードウェアリソースを無駄に使用することがない。
【００６５】
（実施の形態２）
図６は、本発明の実施の形態における監視装置（３００）の構成の一例を示すブロック図である。
【００６６】
図６の監視装置（３００）は、図１と比べて、改竄検出時間履歴管理部（２１１）とタイマ（２１２）とＤＭＡ（２１３）を追加し、図１の保護改竄検出制御部（２０３）と擬似改竄検出管理部（２０５）と処理部能力変更部（２０７）を、それぞれ、保護改竄検出制御部（３０３）と擬似改竄検出管理部（３０５）と処理部能力変更部（３０７）に変更したものである。
【００６７】
なお、図６のブロック図に含まれる構成要素のうち、実施の形態１と同じ構成要素については、図１と同じものを使用し、説明を省略する。
【００６８】
監視装置（３００）は、通常処理部（１０１）と保護処理部（３０２）と記憶媒体（２０２）と共有メモリ（２１５）とタイマ（２１２）とＤＭＡ（２１３）を備えている。
【００６９】
タイマ（２１２）は、保護処理部（３０２）から通知を受け、処理に要する時間の計測を行う。具体的には、タイマ（２１２）は、開始通知を受けると、時間の計測を開始し、終了通知を受けると、時間の計測を終了し、計測結果の時間を返す。
【００７０】
ＤＭＡ（２１３）は、データ転送を制御するＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｒｓｓ）コントローラであって、通常、専用ＬＳＩとして実装される。
【００７１】
保護処理部（３０２）は、通常のアプリケーションからは読み込み及び書き込みできない保護された処理部であり、例えば通常のアプリケーション実行するハードウェア（ＣＰＵやメモリなど）とは別のハードウェアで実行する。図１の保護処理部（１０２）との違いは、改竄検出時間履歴管理部（２１１）と、保護改竄検出制御部（３０３）と、擬似改竄検出管理部（３０５）と、処理部能力変後部（３０７）とを備えていることである。
【００７２】
保護改竄検出制御部（３０３）は、通常処理部（１０１）から通知された管理情報ファイル（２０８、２０９）が擬似であるか否かを判定する。管理情報ファイルが擬似である場合（２０８の場合）は、擬似改竄検出管理部（３０５）に通知を行い、応答を待つ。管理情報ファイルが擬似でない場合（２０９の場合）は、改竄検出時間履歴管理部（２１１）に改竄検出時間の計測開始を通知する。次に、保護改竄検出制御部（３０３）は、管理情報ファイルのハッシュ値を計算し、計算して求めたハッシュ値と、管理情報ファイルに含まれる管理情報ファイル自身のハッシュ値を比較する。最後に、保護改竄検出制御部（３０３）は、改竄検出時間履歴管理部（２１１）に改竄検出時間の計測終了を通知する。これにより、保護改竄検出制御部（３０３）は、管理情報ファイル（２０９）の改竄有無を判定すると共に、その処理時間を測定することができる。さらに、保護改竄検出制御部（３０３）は、管理情報ファイル（２０９）が改竄されていない場合に、改竄検出時間履歴管理部（２１１）に改竄検出時間の計測開始を通知する。次に、保護改竄検出制御部（３０３）は、管理情報ファイル（２０９）に基づいて、通常処理部（１０１）から取得した改竄検出対象ファイル（２１０）のハッシュ値を計算する。次に、保護改竄検出制御部（３０３）は、計算して求めたハッシュ値と、管理情報ファイルに含まれる改竄検出対象ファイルのハッシュ値を比較する。最後に、保護改竄検出制御部（３０３）は、改竄検出時間履歴管理部（２１１）に改竄検出時間の計測終了を通知する。これにより、保護改竄検出制御部（３０３）は、改竄検出対象ファイル（２１０）の改竄有無を判定すると共に、その処理時間を測定することができる。管理情報ファイル（２０９）または改竄検出対象ファイル（２１０）に改竄がある場合は、保護改竄検出制御部（３０３）は、処理部能力変更部（２０７）に通知を行う。
【００７３】
擬似改竄検出管理部（３０５）は、保護改竄検出制御部（３０３）から通知を受けると、管理情報ファイル又は改竄検出対象ファイルに対する改竄有無を判定するための、保護改竄検出制御部（３０３）の改竄検出処理を擬似する。擬似する方法として、例えば、保護改竄検出制御部（３０３）の処理に要する時間を、タイマ（２１２）があらかじめ計測し、改竄検出時間履歴管理部（２１１）が保持している。擬似改竄検出管理部（３０５）は、この計測時間を用いて、スリープ処理を行う。
【００７４】
処理部能力変更部（３０７）は、保護改竄検出制御部（３０３）から通知を受けると、ＤＭＡ（２１３）を停止する。これにより、処理部能力変更部（３０７）は、監視装置（１００）の機能停止を行う。
【００７５】
改竄検出時間履歴管理部（２１１）は、保護改竄検出制御部（３０３）の処理に要する時間を管理する。改竄検出時間履歴管理部（２１１）は、保護改竄検出制御部（３０３）から改竄検出時間の計測開始が通知されると、タイマ（２１２）を用いて、計測を開始する。また、改竄検出時間履歴管理部（２１１）は、保護改竄検出制御部（３０３）から改竄検出時間の計測終了が通知されると、計測を終了し、タイマ（２１２）から受け取った計測結果の時間を、計測時間として保持する。なお、改竄検出時間履歴管理部（２１１）が管理する計測時間は、管理情報ファイルに対する計測時間と、改竄検出対象ファイルに対する計測時間とを分けて、管理してもよい。また、最新の計測時間のみを上書き保存してもよい。さらに、計測時間の平均値を保持してもよい。
【００７６】
以上の構成により、本発明は、改竄検出に関する管理情報ファイルに対する、複数の擬似ファイルにより、本物のファイルの特定を困難にするだけでなく、擬似ファイルに対する擬似処理を行うことで、本物のファイルの特定をより困難にする。つまり、実際に計測した処理時間を用いて擬似処理を行うことで、擬似ファイルの処理時間と本物のファイルの処理時間の差異を、より少なくすることができる。特に、本発明の監視装置を備えた情報処理機器が、ハード構成を変更するなど環境が変化した場合でも、最新の環境に適した時間を動的に決定し、擬似処理を行うことが可能となる。
【００７７】
図７は、保護処理部（３００）における管理情報ファイルの改竄検出もしくはスリープ処理の詳細を示す処理フロー図である。
【００７８】
なお、本実施の形態における監視装置（３００）の、通常処理部（１０１）と保護処理部（３０２）間の、改竄検出のシーケンスは、前述した図３と同様となるため、図７は、図３のステップＡ１の処理フロー図に相当する。
【００７９】
まず、復号部（２０４）が、鍵選択部（２０６）から選択した鍵を受け取って、処理を開始する。
【００８０】
復号部（２０４）は、選択した鍵を用いて、取得した管理情報ファイル（２０８、２０９）を復号し、復号した管理情報ファイル（２０８、２０９）を保護改竄検出制御部（３０３）に通知する（ステップＳ３１）。
【００８１】
保護改竄検出制御部（３０３）は、復号した管理情報ファイル（２０８、２０９）が本物であるか否かを判定する（ステップＳ３２）。
【００８２】
管理情報ファイルが本物でない場合は（ステップＳ３２がＮｏ）、保護改竄検出制御部（３０３）は、擬似改竄検出管理部（３０５）に通知を行う。擬似改竄検出管理部（３０５）は、保護改竄検出制御部（３０３）から通知を受けると、改竄検出時間履歴管理部（２１１）が保持する計測時間を取得し、取得した計測時間分スリープすることで、保護改竄検出制御部（３０３）の管理情報ファイルに対する改竄検出処理を擬似する（ステップＳ３３）。また、擬似改竄検出管理部（３０５）は、スリープから起床したタイミングで、保護改竄検出制御部（３０３）に応答し、保護改竄検出制御部（３０３）は、管理情報ファイルの改竄検出を終了する。
【００８３】
管理情報ファイルが本物である場合は（ステップＳ３２がＹｅｓ）、保護改竄検出制御部（３０３）は、改竄検出時間履歴管理部（２１１）に改竄検出時間の計測開始を通知する。改竄検出時間履歴管理部（２１１）は、保護改竄検出制御部（３０３）から改竄検出時間の計測開始が通知されると、タイマ（２１２）を用いて、計測を開始する（ステップＳ３４）。
【００８４】
保護改竄検出制御部（３０３）は、管理情報ファイルのハッシュ値Ａを計算する（ステップＳ３５）。保護改竄検出制御部（３０３）は、計算して求めたハッシュ値Ａと、管理情報ファイルにあらかじめ含まれる管理情報ファイル自身のハッシュ値を比較する（ステップＳ３６）。
【００８５】
保護改竄検出制御部（３０３）は、改竄検出時間履歴管理部（２１１）に改竄検出時間の計測終了を通知する。改竄検出時間履歴管理部（２１１）は、保護改竄検出制御部（３０３）から改竄検出時間の計測終了が通知されると、計測を終了し、タイマ（２１２）から受け取った計測結果の時間を、計測時間として保持する（ステップＳ３７）。
【００８６】
ハッシュ値が異なる場合（ステップＳ３８がＮｏ）、保護改竄検出制御部（３０３）は、改竄されたと判断し、処理部能力変更部（３０７）に通知する。処理部能力変更部（３０７）は、ＤＭＡ（２１３）を停止して、処理を終了する。一方、ハッシュ値が同じである場合（ステップＳ３８がＹｅｓ）、保護改竄検出制御部（３０３）は、管理情報ファイルの改竄検出を終了する。
【００８７】
図８は、保護処理部（３００）における改竄検出対象ファイルの改竄検出もしくはスリープ処理の詳細を示す処理フロー図である。
【００８８】
なお、本実施の形態における監視装置（３００）の、通常処理部（１０１）と保護処理部（３０２）間の、改竄検出のシーケンスは、前述した図３と同様となるため、図８は、図３のステップＡ２の処理フロー図に相当する。
【００８９】
まず、保護改竄検出制御部（３０３）が、改竄検出対象ファイルを受信して、処理を開始する。
【００９０】
保護改竄検出制御部（３０３）は、復号した管理情報ファイル（２０８、２０９）が本物であるか否かを判定する（ステップＳ４１）。なお、ステップＳ４１の判定は、前述した図７ステップＳ３２と同じであるため、保護改竄検出制御部（３０３）は、図７ステップＳ３２の結果を別途保持しておき、それを用いてもよい。
【００９１】
管理情報ファイルが本物でない場合は（ステップＳ４１がＮｏ）、保護改竄検出制御部（３０３）は、擬似改竄検出管理部（３０５）に通知を行う。擬似改竄検出管理部（３０５）は、保護改竄検出制御部（３０３）から通知を受けると、改竄検出時間履歴管理部（２１１）が保持する計測時間を取得し、取得した計測時間分スリープすることで、保護改竄検出制御部（３０３）の改竄検出対象ファイルに対する改竄検出処理を擬似する（ステップＳ４２）。また、擬似改竄検出管理部（３０５）は、スリープから起床したタイミングで、保護改竄検出制御部（３０３）に応答し、保護改竄検出制御部（３０３）は、改竄検出対象ファイルの改竄検出を終了する。
【００９２】
管理情報ファイルが本物である場合は（ステップＳ１５がＹｅｓ）、保護改竄検出制御部（３０３）は、改竄検出時間履歴管理部（２１１）に改竄検出時間の計測開始を通知する。改竄検出時間履歴管理部（２１１）は、保護改竄検出制御部（３０３）から改竄検出時間の計測開始が通知されると、タイマ（２１２）を用いて、計測を開始する（ステップＳ４３）。
【００９３】
保護改竄検出制御部（３０３）は、改竄検出対象ファイルのハッシュ値Ｂを計算する（ステップＳ４４）。保護改竄検出制御部（３０３）は、計算して求めたハッシュ値Ｂと、管理情報ファイルにあらかじめ含まれる改竄検出対象ファイルのハッシュ値を比較する（ステップＳ４５）。
【００９４】
保護改竄検出制御部（３０３）は、改竄検出時間履歴管理部（２１１）に改竄検出時間の計測終了を通知する。改竄検出時間履歴管理部（２１１）は、保護改竄検出制御部（３０３）から改竄検出時間の計測終了が通知されると、計測を終了し、タイマ（２１２）から受け取った計測結果の時間を、計測時間として保持する（ステップＳ４６）。
【００９５】
ハッシュ値が異なる場合（ステップＳ４７がＮｏ）、保護改竄検出制御部（３０３）は、改竄されたと判断し、処理部能力変更部（３０７）に通知する。処理部能力変更部２０７は、ＤＭＡ（２１３）を停止して、処理を終了する。一方、ハッシュ値が同じである場合（ステップＳ４７がＹｅｓ）、保護改竄検出制御部（３０３）は、改竄検出対象ファイルの改竄検出を終了する。
【００９６】
以上の構成により、本発明は、改竄検出に関する管理情報ファイルに対する、複数の擬似ファイルにより、本物のファイルの特定を困難にするだけでなく、擬似ファイルに対する擬似処理を行うことで、本物のファイルの特定をより困難にする。つまり、実際に計測した処理時間を用いて擬似処理を行うことで、擬似ファイルの処理時間と本物のファイルの処理時間の差異を、より少なくすることができ、各ファイルに対する処理時間を計測しても、擬似の改竄検出処理であることを特定されにくくなる。特に、本発明の監視装置を備えた情報処理機器が、ハード構成を変更するなど環境が変化した場合でも、最新の環境に適した時間を動的に決定し、擬似処理を行うことが可能となる。
【００９７】
さらに、擬似処理としてスリープするため、ハッシュ演算器などのハードウェアリソースを無駄に使用することない。
【００９８】
（実施の形態３）
図９は、本発明の実施の形態における監視装置（４００）の構成の一例を示すブロック図である。
【００９９】
図９の監視装置（４００）は、図６と比べて、乱数生成部（２１４）を追加し、図６の擬似改竄検出管理部（３０５）を、擬似改竄検出管理部（４０５）に変更したものである。
【０１００】
なお、図６のブロック図に含まれる構成要素のうち、実施の形態２と同じ構成要素については、図６と同じものを使用し、説明を省略する。
【０１０１】
乱数生成部（２１４）は、乱数を生成し、生成した乱数を、擬似改竄検出管理部４０５に通知する。例えば、乱数生成部（２１４）は、各値が１に近い乱数（例えば０．９０、１．０９、…）を生成し、通知する。なお、乱数生成部（２１４）が、１より小さい値に偏るよう乱数を生成することで、擬似処理時間の合計を、削減することが可能となる。
【０１０２】
擬似改竄検出管理部（４０５）は、保護改竄検出制御部（３０３）から通知を受けると、管理情報ファイル又は改竄検出対象ファイルに対する改竄有無を判定するための、保護改竄検出制御部（３０３）の改竄検出処理を擬似する。擬似する方法として、例えば、保護改竄検出制御部（３０３）の処理に要する時間を、タイマ（２１２）があらかじめ計測し、改竄検出時間履歴管理部（２１１）が保持している。擬似改竄検出管理部（４０５）は、この計測時間と、乱数生成部（２１４）から取得した乱数を用いて、スリープ処理を行う。具体的には、擬似改竄検出管理部（４０５）は、改竄検出時間履歴管理部（２１１）から取得した計測時間に、乱数生成部（２１４）から取得した乱数を掛けることで、スリープする時間を決定する。つまり、計測時間が１．０秒で、乱数が０．９０の場合、擬似改竄検出管理部（４０５）は、０．９０秒スリープする。
【０１０３】
以上の構成により、本発明は、改竄検出に関する管理情報ファイルに対する、複数の擬似ファイルにより、本物のファイルの特定を困難にするだけでなく、擬似ファイルに対する擬似処理を行うことで、本物のファイルの特定をより困難にする。つまり、実際に計測した処理時間と乱数を用いて擬似処理を行うことで、擬似ファイルの処理時間と本物のファイルの処理時間の差異を、より少なくすることができ、各ファイルに対する処理時間を計測しても、擬似の改竄検出処理であることを特定されにくくなる。特に、本発明の監視装置を備えた情報処理機器が、ハード構成を変更するなど環境が変化した場合でも、最新の環境に適した時間を動的に決定し、擬似処理を行うことが可能となる。
【０１０４】
また、実際に計測した処理時間だけスリープする方法に比べて、擬似処理であることの特定されにくさは維持しつつ、合計の擬似処理時間を削減することができる。例えば、計測時間が１．０秒とし、乱数（０．９０、１．０９）とした場合について説明する。乱数を使用しない場合、２回の合計擬似処理時間は２．０秒になるが、乱数（０．９０、１．０９）を使用した場合、１．９９秒（０．９０秒＋１．０９秒）となる。つまり、１より小さい値に偏るよう乱数を生成することで、擬似処理時間の合計を、削減することが可能となる。
【０１０５】
さらに、擬似処理としてスリープするため、ハッシュ演算器などのハードウェアリソースを無駄に使用することない。
【産業上の利用可能性】
【０１０６】
本発明にかかる監視装置は、アプリケーションプログラムに対する改竄検出機能を有し、携帯電話、カーナビゲーションシステム、ＰＤＡ等の情報端末装置などとして有用である。また、ＡＶ機器などの用途にも応用できる。
【符号の説明】
【０１０７】
１００，３００，４００    監視装置
１０１    通常処理部
１０２，３０２，４０２    保護処理部
２００    通常改竄検出制御部
２０１    ファイルシステム部
２０２    記憶媒体
２０３，３０３    保護改竄検出制御部
２０４    復号部
２０５，３０５，４０５    擬似改竄検出管理部
２０６    鍵選択部
２０７，３０７    処理部能力変更部
２０８    第１の管理情報ファイル
２０９    第２の管理情報ファイル
２１０    改竄検出対象ファイル
２１１    改竄検出時間履歴管理部
２１２    タイマ
２１３    ＤＭＡ
２１４    乱数生成部
【図１】
2011014018.tif 000003
【図２】
2011014018.tif 000004
【図３】
2011014018.tif 000005
【図４】
2011014018.tif 000006
【図５】
2011014018.tif 000007
【図６】
2011014018.tif 000008
【図７】
2011014018.tif 000009
【図８】
2011014018.tif 000010
【図９】
2011014018.tif 000011