(57)【要約】【課題】省電力モードからの復帰時に、着脱可能な記憶媒体内のデータの正当性を確認することによって、該省電力モード中に記憶媒体に対して行われた不正操作を検知することを可能とする、電子装置およびプログラムを提供すること。【解決手段】本発明の画像形成装置１０は、着脱可能な記憶媒体４０の内容に応じた処理を実行しており、記憶媒体４０の内容の正当性を検証するための検証データを、記憶媒体４０の着脱が検知不能となる電力供給モードへ移行する前に取得し、保存検証データ１４０として記憶手段（２４、２６）に格納する格納手段９４と、記憶媒体の着脱が検知可能な状態となった場合に、新たに取得する検証データ１６０と、記憶手段（２４，２６）から読出した保存検証データ１４０とを比較して、記憶媒体４０の内容の正当性を検証する検証手段９４とを含む。【選択図】  図５
2008171306.tif 000002
【特許請求の範囲】
【請求項１】
着脱可能な記憶媒体の内容に応じた処理を実行する電子装置であって、前記電子装置は、
前記記憶媒体の内容の正当性を検証するための検証データを、前記記憶媒体の着脱が検知不能となる電力供給状態へ移行する前に取得し、保存検証データとして記憶手段に格納する格納手段と、
前記記憶媒体の着脱が検知可能な状態となった場合に、新たに取得した前記検証データと、前記記憶手段から読出した前記保存検証データとを比較して、前記記憶媒体の内容の正当性を検証する検証手段と
を含む、電子装置。
【請求項２】
前記格納手段は、前記検証データの格納処理が完了するまで、前記電力供給状態への移行処理をサスペンドさせる、請求項１記載の電子装置。
【請求項３】
前記電子装置は、前記検証手段による正当性の検証の結果、前記検証データと前記保存検証データとが不一致の場合に、前記記憶媒体の内容の正当性が確認されなかった旨を通知する通知手段をさらに含む、請求項１または２に記載の電子装置。
【請求項４】
前記電子装置は、前記検証手段による正当性の検証の結果、前記検証データと前記保存検証データとが不一致の場合に、前記電子装置に対する動作要求の受付けを拒否する制御とするロック手段をさらに含む、請求項１〜３のいずれか１項に記載の電子装置。
【請求項５】
前記電子装置は、前記検証手段による正当性の検証の結果、前記検証データと前記保存検証データとが不一致の場合に、不一致と判断したファイルに対し復旧処理、削除処理、または前記ファイルに対応するメモリ上のプロセスを停止させる処理を含む不一致対応処理を実行する処理手段をさらに含む、請求項１〜４のいずれか１項に記載の電子装置。
【請求項６】
前記検証データは、前記記憶媒体の識別値、前記記憶媒体のディレクトリ構造、前記記憶媒体に格納されるファイル、前記ファイルの名前、前記ファイルの更新日時、前記ファイルのアクセス日時、前記ファイルのファイルサイズ、前記ファイルのアクセス属性、または前記ファイルのハッシュ値を含む、請求項１〜５のいずれか１項に記載の電子装置。
【請求項７】
着脱可能な記憶媒体の内容に応じた処理を行う電子装置が実行可能なプログラムであって、前記プログラムは、前記電子装置を、
前記記憶媒体の内容の正当性を検証するための検証データを、前記記憶媒体の着脱が検知不能となる電力供給状態へ移行する前に取得し、保存検証データとして記憶手段に格納する格納手段、
前記記憶媒体の着脱が検知可能な状態となった場合に、新たに取得した前記検証データと、前記記憶手段から読出した比較すべき前記保存検証データとを比較して、前記記憶媒体の内容の正当性を検証する検証手段
として機能させるためのプログラム。
【請求項８】
前記格納手段は、前記検証データの格納処理が完了するまで、前記電力供給状態への移行処理をサスペンドさせる、請求項７に記載のプログラム。
【請求項９】
前記電子装置を、前記検証手段による正当性の検証の結果、前記検証データと前記保存検証データとが不一致の場合に、前記記憶媒体の内容の正当性が確認されなかった旨を通知する通知手段として機能させるための、請求項７または８に記載のプログラム。
【請求項１０】
前記電子装置を、前記検証手段による正当性の検証の結果、前記検証データと前記保存検証データとが不一致の場合に、前記電子装置に対する動作要求の受付けを拒否する制御とするロック手段として機能させるための、請求項７〜９のいずれか１項に記載のプログラム。
【請求項１１】
前記電子装置を、前記検証手段による正当性の検証の結果、前記検証データと前記認証データとが不一致の場合に、不一致と判断したファイルに対し復旧処理、削除処理、または前記ファイルに対応するメモリ上のプロセスを停止させる処理を含む不一致対応処理を実行する処理手段として機能させるための、請求項７〜１０のいずれか１項に記載のプログラム。
【請求項１２】
前記検証データは、前記記憶媒体の識別値、前記記憶媒体のディレクトリ構造、前記記憶媒体に格納されるファイル、前記ファイルの名前、前記ファイルの更新日時、前記ファイルのアクセス日時、前記ファイルのファイルサイズ、前記ファイルのアクセス属性、または前記ファイルのハッシュ値を含む、請求項７〜１１のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュリティ技術に関し、より詳細には、省電力状態からの復帰時に、着脱可能な記憶媒体内のデータの正当性を確認することによって、該省電力状態にある間に記憶媒体に対して行われた不正操作を検知することを可能とする、電子装置およびプログラムに関する。
【背景技術】
【０００２】
近年の省エネルギー志向の高まりから、複写機、プリンタ装置、複合機（ＭＦＰ）やパーソナル・コンピュータ（ＰＣ）などの電子装置では、一定時間アイドル状態となったり設定された時間帯となったことを検知して、電子装置の各ハードウェアへの電力供給が休止状態となる各種省電力モードに移行させる制御が行われている。例えば、複合機では、印刷処理のためのフューザのヒータ電源、ハードディスクのスピンドルのモータ電源、タッチパネルのパネル電源などの電力状態や、エンジンコントローラやメインコントローラの各デバイスへの電源供給を制御し、様々な電力供給度の種省電力モードが用意されている。
【０００３】
上述の省電力モードの例としては、現在の動作状態をメモリに保存したまま、メインコントローラ上のＣＰＵやハードディスクなどの殆どのデバイスへの電源供給を休止するＳＴＲ（Ｓｕｓｐｅｎｄ  ｔｏ  ＲＡＭ）モード、さらにメモリも含めてメインコントローラ全体への電源供給を休止するコントローラオフ・モードなどを挙げることができる。これらの省電力モードに移行している複合機は、例えば、オペレータによるタッチパネルへの操作や、ネットワークやインタフェースを介したデータ受信によって、省電力モードが解除され、各ハードウェアへの電源供給を再開させ、通常の待機モードに復帰する。
【０００４】
省エネルギーの観点からは、電子装置の可動状況に応答して、順次、低い電力供給度の省電力モードに移行させて行くことが好ましい。その一方で、省電力モードに移行すると、各ハードウェアへの電源供給が順次休止されるため、例えば、電力供給度が低下するにつれて復帰に時間を要し、ユーザの利便性が低下するなどといった問題が生じている。さらに近年では、省電力モードに起因したセキュリティ上の問題点も顕在化した。以下、省電力モードに起因するセキュリティ上の問題点について説明する。
【０００５】
近年の複合機などの電子装置では、ＳｅｃｕｒｅＤｉｇｉｔａｌメモリカード（以下、ＳＤカードとして参照する。）などの着脱可能な記憶媒体に、プログラムやユーザデータを格納し、これらアプリケーション・プログラムを記憶媒体から読出して、アプリケーションの追加・更新や機能拡張を行ったり、ユーザデータを読出して、アプリケーションで使用したりすることが行われている。しかしながら、容易な操作で機能拡張を行うことができるため、複数の複合機で使い回しされる可能性があり、不正使用を防止するためのセキュリティ上の措置を講じる必要が生じていた。
【０００６】
例えば、特開２００４−４６８０１号公報（特許文献１）は、挿抜可能な記憶媒体の使い回しを容易に防止できる画像形成装置およびプログラム停止方法を提供する目的で、ハードウェア資源を用いて処理を行うプログラムと、記憶媒体を挿抜可能なスロットとを有し、スロットに対する記憶媒体の挿抜を監視する状態監視手段と、スロットに挿入された記憶媒体をアクセス可能な状態とし、スロットから抜き出された記憶媒体をアクセス不能な状態とする記憶媒体起動手段と、アクセス可能な状態とした記憶媒体からプログラムを読み出して起動する一方、スロットからの記憶媒体の抜き出しが通知されると、記憶媒体から読み出されて起動されたプログラムを停止するプログラム起動手段とを有する、画像形成装置を開示している。
【特許文献１】特開２００４−４６８０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
図１３は、通常の待機モード（Ａ）およびコントローラオフ・モード（Ｂ）における、着脱可能な記憶媒体を制御しているソフトウェア手段の動作状態について、ＳＤカードを例として示す。図１３（Ａ）に示すように、メインコントローラ上のＣＰＵおよびＳＤカード・スロットに充分な電力供給がなされている待機モードでは、オペレーティングシステム（ＯＳ）のカーネルをはじめ、各ソフトウェア手段は、ＣＰＵによる制御のもとメモリ領域に展開され、動作状態にある。よって、スロットへのＳＤカードの着脱は、ソフトウェア手段の監視により検出され、ＳＤカードの着脱に応じた対処を行うことが可能である。
【０００８】
一方、コントローラオフ・モードなど、ＣＰＵへの電源供給が休止状態にある場合には、図１３（Ｂ）に示すように、ＳＤカード・スロットを制御するためのソフトウェア手段は、停止状態にあり、ＳＤカードの着脱を検出することができなかった。同様に、ＳＤカード・スロットへの電源供給が休止されている場合にも、例えソフトウェア手段が動作状態であっても、ＳＤカードの着脱を検出することができなかった。
【０００９】
すなわち上述の従来技術では、メインコントローラ上の制御手段（ＣＰＵ）および記憶媒体を挿抜可能なスロットなどのハードウェアに対して充分に電力供給がなされている状態（待機モード、その他電力供給度が高い電力供給モード）では、記憶媒体の挿抜を検出することが可能であるものの、上述したＳＴＲモードやコントローラオフ・モードのような、制御手段またはスロットへの電源供給が休止されるような電力供給モードには対応できないという問題点があった。
【００１０】
さらに、制御手段またはスロットへの電源供給が休止されるような電力供給モードでは、記憶媒体の着脱を検出することができないため、該電力供給モード中に記憶媒体を抜出した場合であっても、復帰前に元のスロットに挿入し直せば、その着脱操作がなされたことを検知することができない。すなわち、上述した記憶媒体の使い回し以外にも、該電力供給モード中に、悪意の第三者により、記憶媒体の内容の改竄や盗難などの不正操作が行われる蓋然性を有し、実行中のアプリケーションや電子装置の異常動作や異常終了を誘発する危険性を有するという問題点もあった。また、アドレス帳などのユーザデータについては電子認証を施されない場合が多いことから、気付かずに改竄されたユーザデータを使用し、業務上重要な情報を誤った送信先にＦＡＸやファイル転送を行ってしまう危険性を有するという問題点もあった。
【００１１】
本発明は、上記問題点に鑑みてなされたものであり、制御手段またはスロットへの電源供給が休止されるような、記憶媒体の着脱が検知不能となる電源供給モードに移行する場合であっても、記憶媒体に対して行われた不正操作を検知して、記憶媒体への不正操作があった場合に対処することを可能とする、電子装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明は、上記課題を解決するために、電子装置の制御手段またはスロットへの電力供給が休止されるような、記憶媒体の着脱が検知不能となる電力供給モードへ移行する前に、格納手段（内容データ検証部）が、スロットに装着されている記憶媒体の内容の正当性を検証するための検証データを取得し、保存検証データ（保存用検証データ）として記憶手段に格納する。保存検証データは、制御手段およびスロットへ電源供給がなされ記憶媒体の着脱を検出可能となった場合に、記憶媒体の正当性を検証するために使用される。
【００１３】
記憶媒体の着脱を検出可能となったことを受けて検証手段（内容データ検証部）は、保存検証データと、復帰後新たに取得する検証データ（比較用検証データ）とを比較して、同一性を判断し、内容の正当性を検証する。これにより、記憶媒体の着脱が検知不能となる電力供給モード移行前と、記憶媒体の着脱が検知可能となる電力供給モードへの復帰後との前後において、記憶媒体が、同一の内容を保持しているか否かの判断が可能となり、着脱が検知不能となる電力供給モード中に、記憶媒体に対して不正操作が行われたか否かを判定することが可能となる。さらに、検証手段の判断の結果を受けて、オペレーション・パネルや画像形成手段やファックス送信手段などを使用して、ユーザに対して通知を行ったり、不一致と判断したファイル（不正ファイル）の復旧処理、削除処理またはプロセス停止処理などの不一致対応処理を行ったりすることが可能となる。
【００１４】
また、記憶媒体の着脱が検知不能となる電力供給モードへ移行する前に保存検証データを格納するために、本発明では、電子装置に対して、保存検証データの格納処理の完了を待って、移行要求された電力供給モードへ移行させることができる。また、本発明では、記憶媒体の装着の検出または記憶媒体への入出力処理の発生に応答して、その都度、保存検証データを取得して格納・更新させることもできる。さらに、本発明では、さらに、設定された時間の経過を受けて定期的に保存検証データを取得し、格納・更新させることができる。
【００１５】
すなわち本発明によれば、着脱可能な記憶媒体の内容に応じた処理を実行する電子装置であって、前記電子装置は、
前記記憶媒体の内容の正当性を検証するための検証データを、前記記憶媒体の着脱が検知不能となる電力供給状態へ移行する前に取得し、保存検証データとして記憶手段に格納する格納手段と、
前記記憶媒体の着脱が検知可能な状態となった場合に、新たに取得した前記検証データと、前記記憶手段から読出した前記保存検証データとを比較して、前記記憶媒体の内容の正当性を検証する検証手段と
を含む、電子装置が提供される。
【００１６】
前記格納手段は、前記検証データの格納処理が完了するまで、前記電力供給モードへの移行処理をサスペンドさせることができる。また、前記電子装置は、前記検証手段による正当性の検証の結果、前記検証データと前記保存検証データとが不一致の場合に、前記記憶媒体の内容の正当性が確認されなかった旨を通知する通知手段をさらに含むことができる。さらに、前記電子装置は、前記検証手段による正当性の検証の結果、前記検証データと前記保存検証データとが不一致の場合に、前記電子装置に対する動作要求の受付けを拒否する制御とするロック手段をさらに含むことができる。
【００１７】
また、前記電子装置は、前記検証手段による正当性の検証の結果、前記検証データと前記保存検証データとが不一致の場合に、不一致と判断したファイルに対し復旧処理、削除処理、または前記ファイルに対応するメモリ上のプロセスを停止させる処理を含む不一致対応処理を実行する処理手段をさらに含むことができる。前記検証データは、前記記憶媒体の識別値、前記記憶媒体のディレクトリ構造、前記記憶媒体に格納されるファイル、前記ファイルの名前、前記ファイルの更新日時、前記ファイルのアクセス日時、前記ファイルのファイルサイズ、前記ファイルのアクセス属性、または前記ファイルのハッシュ値を含むことができる。
【００１８】
さらに本発明によれば、着脱可能な記憶媒体の内容に応じた処理を行う電子装置が実行可能なプログラムであって、前記プログラムは、前記電子装置を、
前記記憶媒体の内容の正当性を検証するための検証データを、前記記憶媒体の着脱が検知不能となる電力供給状態へ移行する前に取得し、保存検証データとして記憶手段に格納する格納手段、
前記記憶媒体の着脱が検知可能な状態となった場合に、新たに取得した前記検証データと、前記記憶手段から読出した比較すべき前記保存検証データとを比較して、前記記憶媒体の内容の正当性を検証する検証手段
として機能させるためのプログラムが提供される。
【００１９】
前記格納手段は、前記検証データの格納処理が完了するまで、前記電力供給モードへの移行処理をサスペンドさせることができる。また、前記プログラムは、前記電子装置を、前記検証手段による正当性の検証の結果、前記検証データと前記保存検証データとが不一致の場合に、前記記憶媒体の内容の正当性が確認されなかった旨を通知する通知手段として機能させることができる。さらに、前記プログラムは、前記電子装置を、前記検証手段による正当性の検証の結果、前記検証データと前記保存検証データとが不一致の場合に、前記電子装置に対する動作要求の受付けを拒否する制御とするロック手段として機能させることができる。
【００２０】
また前記プログラムは、前記電子装置を、前記検証手段による正当性の検証の結果、前記検証データと前記認証データとが不一致の場合に、不一致と判断したファイルに対し復旧処理、削除処理、または前記ファイルに対応するメモリ上のプロセスを停止させる処理を含む不一致対応処理を実行する処理手段として機能させることができる。前記検証データは、前記記憶媒体の識別値、前記記憶媒体のディレクトリ構造、前記記憶媒体に格納されるファイル、前記ファイルの名前、前記ファイルの更新日時、前記ファイルのアクセス日時、前記ファイルのファイルサイズ、前記ファイルのアクセス属性、または前記ファイルのハッシュ値を含むことができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施形態について説明するが、これに限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができる。なお、本実施形態では、電子装置の一例として、コピー、ファクシミリ、スキャナ、プリント等の画像を扱う機能を有する画像形成装置１０を用いた例を説明する。
【００２２】
図１は、画像形成装置１０のハードウェア構成の実施形態を示す。図１に示した画像形成装置１０は、ＭＦＰなどの複数の機能を有する画像形成装置としての構成に対応する。画像形成装置１０は、コントローラ１２と、オペレーション・パネル４２と、ＦＣＵ（ファクシミリ・コントロール・ユニット）４４と、エンジン部４６とを含み構成される。コントローラ１２は、ＣＰＵ（中央演算処理装置）１４と、ＮＢ（ノース・ブリッジ）１８と、ＮＢ（ノース・ブリッジ）１８を介してＣＰＵ１４と接続するＡＳＩＣ２０と、システムメモリ１６とを含み構成される。ＡＳＩＣ２０は、各種画像処理を実行し、ＡＧＰ（Ａｃｃｅｌｅｒａｔｅｄ  Ｇｒａｐｈｉｃｓ  Ｐｏｒｔ）４８を介してＮＢ１８と接続される。システムメモリ１６は、描画用メモリなどとして用いられる。
【００２３】
ＡＳＩＣ２０は、ローカルメモリ２２と、ハードディスク（ＨＤＤ）２４と、フラッシュメモリなどの不揮発性メモリ（ＮＶ−ＲＡＭ）２６と接続される。ローカルメモリ２２は、コピー用画像バッファや符号バッファとして用いられ、ＨＤＤ２４は、画像データ、文書データ、プログラム、フォントデータやフォームデータなどを蓄積するストレージである。ＮＶ−ＲＡＭ２６は、画像形成装置１０を制御するためのプログラムなどを格納する。また、ＨＤＤ２４およびＮＶ−ＲＡＭ２６は、後述のＳＤカード４０に格納されたファイル等の内容データを検証するための検証データを格納するために使用される。
【００２４】
コントローラ１２は、さらにＳＢ（サウス・ブリッジ）２８と、ＮＩＣ（ネットワーク・インタフェース・カード）３０と、ＳＤカード・スロット３２と、ＵＳＢインタフェース３４と、ＩＥＥＥ１３９４インタフェース３６と、セントロニクス・インタフェース３８とを含み構成され、これらはＰＣＩバス５０を介してＮＢ１８と接続される。ＳＤカード・スロット３２は、ＳＤカード４０の着脱を可能としている。ＮＩＣ３０は、画像形成装置１０をインターネットやＬＡＮなどのネットワークに接続するインタフェース機器であり、ネットワークを介して印刷ジョブなどを受付けている。ＵＳＢインタフェース３４、ＩＥＥＥ１３９４インタフェース３６およびセントロニクス・インタフェース３８は、それぞれの規格に準じたインタフェースである。なお、ＳＢ２８は、ＰＣＩバス５０と、図示しないＲＯＭや周辺デバイスなどとを接続するためのブリッジである。
【００２５】
オペレーション・パネル４２は、コントローラ１２のＡＳＩＣ２０と接続され、オペレータからの各種指示の入力を受付けまた画面出力を行い、ユーザ・インタフェースを提供する。ＦＣＵ４４およびエンジン部４６は、ＰＣＩバス５２を介してＡＳＩＣ２０と接続される。エンジン部４６は、アプリケーション６２〜７０が発行した画像形成指令および画像データを取得して、画像形成処理や画像読取処理を実行する。
【００２６】
画像形成装置１０は、画像形成装置１０の各ハードウェアへの電力供給が休止状態となる各種電力モードを有することができ、装置の使用目的や構成に応じて、各種デバイス、エンジン部４６、オペレーション・パネル４２、ＣＰＵ１４やシステムメモリ１６などの各ハードウェア要素への電力供給度を制御して、多様な電力供給モードを備えることができる。画像形成装置１０は、例えば、アイドル状態として一定時間経過したことＣＰＵ１４のタイマ機能により検知して、各電力供給モード間の移行を制御することができる。
【００２７】
図２は、本実施形態の画像形成装置１０のソフトウェアおよびハードウェア構成を示す。図２に示した画像形成装置１０は、複合機としての機能を提供するための各種アプリケーション６２〜７０からなるアプリケーション層６０と、プラットフォーム層９０と、エンジン・インタフェース（Ｉ／Ｆ）９２を介してプラットフォーム層９０と接続するエンジン部４６とを含んで構成される。
【００２８】
アプリケーション層６０は、プリンタ、コピー、ファックスやスキャナなどの画像形成に関連するユーザ・サービスに固有の処理を行い、図２に示した実施形態では、コピー機能を提供するコピー・アプリケーション６２と、ファクシミリ機能を提供するファックス・アプリケーション６４と、スキャナ機能を提供するスキャナ・アプリケーション６６と、ネットワークファイル機能を提供するネットファイル・アプリケーション６８と、プリンタ機能を提供するプリンタ・アプリケーション７０とを含み構成される。
【００２９】
プラットフォーム層９０は、ＯＳ８８とともにアプリケーション６２〜７０からの処理要求を解釈して、ハードウェア資源の獲得要求を発生する各制御サービス７４〜８４と、１つまたは複数のハードウェア資源の管理を行い、制御サービス７４〜８４からの獲得要求を調停するシステム資源管理部（ＳＲＭ）８６とを含み構成される。ＯＳとしては例えば、ＵＮＩＸ（登録商標）を採用することができるが、ＷＩＮＤＯＷＳ（登録商標）やその他いかなるＯＳを採用することができる。各種制御サービスとしては、図２に示した実施形態では、エンジン制御サービス（ＥＣＳ）７４と、メモリ制御サービス（ＭＣＳ）７６と、オペレーション制御サービス（ＯＣＳ）７８と、ファクシミリ制御サービス（ＦＣＳ）８０と、ネットワーク制御サービス（ＮＣＳ）８２と、システム制御サービス（ＳＣＳ）８４とを含んで構成されている。
【００３０】
ＳＣＳ８４は、各種アプリケーションの管理、システム画面表示やＬＥＤ表示などのユーザ・インタフェースの制御、ハードウェア資源の管理、割込みアプリケーションの制御などを行う。ＭＣＳ７６は、画像メモリの取得および解放、画像データの圧縮・伸張等のメモリ制御などを行う。ＥＣＳ７４は、エンジン部４６やＨＤＤ２４などのハードウェア資源を制御し、画像読み込みや印刷動作などを実行する。ＦＣＳ８０は、ＧＳＴＮインタフェースと接続し、ＧＳＴＮ網を使用したファクシミリ送受信、バックアップメモリで管理されている各種ファクシミリ・データの登録／引用、ファクシミリ読み取りなどを実行する。
【００３１】
ＯＣＳ７８は、オペレータと本体制御との間のインタフェースとなるオペレーション・パネル４２の制御を行う。ＮＣＳ８２は、ＮＩＣ３０を制御して、画像形成装置１０をイーサネット（登録商標）と接続させ、ネットワークＩ／Ｏを必要とするアプリケーションに対して共通に利用可能なサービスを提供し、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分け、各アプリケーションからのデータをネットワーク側に送信する際の仲介を行う。具体的には、ｆｔｐｄ、ｈｔｔｐｄ、ｌｐｄ、ｓｎｍｐｄ、ｔｅｌｎｅｔｄ、ｓｍｔｐｄなどのサーバ・デーモンや、同プロトコルのクライアント機能などを含むことができる。
【００３２】
また、プラットフォーム層９０とアプリケーション層６０との間には、アプリケーション・プログラム・インタフェース（ＡＰＩ）７２を有し、プラットフォーム層９０は、ＡＰＩに含まれる予め定義された関数により、各種アプリケーション６２〜７０からの処理要求を受付けている。
【００３３】
画像形成装置１０は、上述のソフトウェア群により、エンジン部４６、ＨＤＤ２４、ＮＶ−ＲＡＭ２６などのハードウェア資源が制御され、ユーザ・インタフェースを介したユーザ指令や外部コンピュータからの入力に応答して、コピーやファクシミリやモノクロコピーやフルカラーコピーなど、画像形成装置としての機能をユーザに提供している。
【００３４】
また、図１に示した画像形成装置１０は、ＲＯＭ（図示せず）や、ＨＤＤ２４やＮＶ−ＲＡＭ２６やＳＤカード４０などの記憶装置に格納されたプログラム（図示せず）を読出し、ＣＰＵ１４の作業メモリ領域を提供するメモリ（システムメモリ１６やローカルメモリ２２）のメモリ領域に展開することにより、上記したソフトウェア手段および後述の各処理手段を実現している。
【００３５】
なお、上述のアプリケーションおよび制御サービス、ハードウェアは、種々の組み合わせにより構成することができ、例えば、特定の用途、機種に対応して追加・削除することができる。また、図２に示した実施形態では、複合機としての各アプリケーションや制御サービスにおける共通部分を抽出して、プラットフォーム化した構成として参照したが、画像形成装置１０のハードウェアおよびソフトフェアの構成は、特に限定されるものではない。
【００３６】
図３は、本実施形態の画像形成装置１０のソフトウェア構成を示すブロック図である。以下、画像形成装置１０に着脱可能な記憶媒体として、ＳＤカードを例として説明する。なおＳＤカードは、画像形成装置１０に電源を投入したままの状態で、所謂、ホットスワップが可能な記憶媒体である。画像形成装置１０は、ＳＤカード・スロット（以下単に、スロットとして参照する。）３２およびＳＤカード４０のため、ソフトウェア手段として、ＳＤカードアクセスドライバ１００と、ＳＤカードステータモニタスドライバ１０４とを含み構成される。スロット３２は、ＳＤカード４０の装着または取外しに応じた割込を、ＳＤカードアクセスドライバ１００に対して行う。またＳＤカードアクセスドライバ１００は、ＳＤカード４０に対するアクセス制御を行い、スロット３２からの割込に応じて、ＳＤカード４０の着脱をＳＤカードステータスモニタドライバ１０４に通知する。
【００３７】
ＳＤカードステータスモニタドライバ１０４は、ＳＤカード４０の装着、取外し、マウント、またはアンマウントなどのステータス情報を管理し、ステータス情報をＳＣＳ８４のプログラム起動部１０８に通知する。プログラム起動部１０８は、ＳＤカード４０の着脱に応じて、ＳＤカードチェックプログラム１０６を起動し、またＳＤカードステータスモニタドライバ１０４からのステータス情報に応じて、ＳＤカード４０内のプログラムを起動する。
【００３８】
ＳＤカードチェックプログラム１０６は、ＳＤカード４０について、パーティションやファイルシステムの状態が正しいかを検査し、ファイルシステム１０２として使用可能な状態とする。また、ＳＤカードチェックプログラム１０６は、ＳＤカード４０のチェック機能・マウント機能・アンマウント機能・状態通知機能などを有している。以下、ＳＤカード４０が装着された場合の動作について詳細を説明する。
【００３９】
スロット３２にＳＤカード４０が装着された場合、ＳＤカードアクセスドライバ１００は、ＳＤカード４０の装着を検知するとともに、ＳＤカードステータスモニタドライバ１０４へ装着を通知する。通知を受けたＳＤカードステータスモニタドライバ１０４は、装着された旨の情報を管理するとともに、プログラム起動部１０８に装着された旨を通知する。通知を受けたプログラム起動部１０８は、ＳＤカード４０のマウントを実行するために、ＳＤカードチェックプログラム１０６を起動させる。起動されたＳＤカードチェックプログラム１０６は、マウントを実行するとともに、ＳＤカードステータスモニタドライバ１０４へ、マウントを実行した旨を通知し、ＳＤカード４０へのアクセスが可能となる。
【００４０】
通知を受けＳＤカードステータスモニタドライバ１０４は、マウントを実行した旨の情報を管理するとともに、マウントを実行した旨をプログラム起動部１０８へ通知する。通知を受けたプログラム起動部１０８は、ＳＤカード４０に格納されている設定ファイルを読み出して、設定ファイルの記述に従ってプログラム（モジュール）のマウント処理を実行する。なお、プログラムをマウントする前に、電子認証チェック用のライブラリ関数を使用して、電子認証チェックする処理を行うこともできる。
【００４１】
プログラム起動部１０８は、例えば画像形成装置１０の起動時に、ＮＶ−ＲＡＭアクセスドライバ１１０やＨＤＤアクセスドライバ１１２を介して、ＮＶ−ＲＡＭ２６またはＨＤＤ２４内のプログラムを起動することもできる。また上述のＳＤカードから読出されるファイルとして、実行可能なプログラム（アプリケーションやＳＤＫアプリ）以外にも、アドレス帳などのユーザデータを読出して使用することもできる。
【００４２】
図４は、本実施形態の画像形成装置１０が実行するプログラムの実行形態を示すフローチャートである。図４（Ａ）は、ＳＤカード４０に格納されるプログラムの実行形態を示す。図４（Ａ）に示すＳＤカード４０は、プログラム１２０ａ〜ｃを格納し、コントローラ１２の図示しないＳＤカード・スロットにはＳＤカード４０が装着されている。図４（Ａ）に示すように、装着されているＳＤカード４０に格納されたプログラム１２０ｃは、システムメモリ１６の記憶領域に展開され、画像形成装置１０は、ＣＰＵ１４の制御のもとプログラム１２２ｃ（展開されたプログラム１２０ｃに対応。）を実行している。
【００４３】
図４（Ｂ）は、ＳＤカード４０およびＮＶ−ＲＡＭ２６に格納されたプログラムの実行形態を示す。図４（Ｂ）に示すＳＤカード４０は、プログラム１２０ａ〜ｃを、ＮＶ−ＲＡＭ２６は、プログラム１２０ｄをそれぞれ格納している。図４（Ｂ）に示すように、ＳＤカード４０に格納されたプログラム１２０ｃおよびＮＶ−ＲＡＭ２６に格納されたプログラム１２０ｄは、システムメモリ１６の記憶領域に展開され、画像形成装置１０は、ＣＰＵ１４の制御のもとプログラム１２０ｃおよびプログラム１２０ｄを実行している。なお、システムメモリ１６に展開され実行されているプログラム１２２ｃと、プログラム１２２ｄとは、プロセス間通信によりメッセージ交換を行うこともできる。
【００４４】
上述のように、画像形成装置１０では、着脱可能な記憶媒体（ＳＤカード４０）からプログラム１２０が読出・展開されて、実行される。さらに、画像形成装置１０の動作が、該プログラムに制御されることもある。このため、例えば、プログラム実行中にプログラムを格納していた記憶媒体が取外された場合や、記憶媒体に格納されたプログラムが不正に書換え（削除）られた場合には、実行中のプログラムの異常動作や異常終了、さらには画像形成装置１０の異常動作を引き起こす危険性がある。特に、着脱可能な記憶媒体のスロット３２やＣＰＵ１４への電力供給が休止するような、記憶媒体の着脱が検知不能となる電力供給モードでは、該モード中は記憶媒体の着脱を検出することができないため、記憶媒体内の内容データの改竄や盗難などの不正利用が行われることが懸念される。
【００４５】
以下、ＣＰＵ１４やスロット３２への電力供給が休止する場合がある記憶媒体の着脱検知不能な電力供給状態の間に、記憶媒体に対して行われる可能性がある不正使用を検知するための検証処理について、説明する。なお、着脱検知不能な電力供給状態としてコントローラオフ・モードにある状態を、着脱検知可能な電力供給状態として通常の待機モードにある状態を例に説明する。なお、コントローラオフ・モードとは、メモリも含めてコントローラ１２全体への電源供給が休止状態となる電力供給モードであり、記憶媒体の着脱検知が不能、かつ、ＨＤＤ２４やＮＶ−ＲＡＭ２６などの不揮発性記憶手段へのアクセスも不能となる電力供給状態にある電力供給モードである。
【００４６】
図５は、本実施形態の画像形成装置１０が、脱着可能な記憶媒体の正当性を検証する場合のデータフローの実施形態を示す。図５に示すように、画像形成装置１０は、画像形成装置１０の電力供給モードを管理する電力供給モード管理部９６と、スロット３２に装着されたＳＤカード４０の内容データの検証を行う内容データ検証部９４とを含み構成される。なお、図５に示した実施形態では、画像形成装置１０は、スロットＡ３２ａおよびスロットＢ３２ｂの２つのスロット３２を含み構成されているが、備えるスロット３２の数は、１つであっても３つ以上であってもよい。
【００４７】
内容データ検証部９４は、コントローラオフ・モードへ移行する前に、ＳＤカード４０の内容データを検証するための検証データ１４０（保存用検証データ）を取得し、不揮発性の記憶手段であるＨＤＤ２４（またはＮＶ−ＲＡＭ２６：以下、ＨＤＤ２４を例として参照して説明する。）に格納する。なお、図５に示すように、画像形成装置１０が、複数のスロット３２を備える場合には、複数のスロット３２を識別して保存用検証データ（例えば、１４０ａおよび１４０ｂとして）を格納すればよい。
【００４８】
また、内容データ検証部９４は、コントローラオフ・モードから復帰した場合に、コントローラオフ・モードへ移行する前にＨＤＤ２４に格納した保存検証データ１４０と、復帰後に新たに取得する検証データ１６０とを比較して、ＳＤカードの内容データの検証処理を実行する。電力供給モード管理部９６は、例えば、コントローラオフ・モードへの移行をトリガする何らかのイベントの発生を検知して、内容データ検証部９４を含む、画像形成装置１０を構成する各機能手段に対して、コントローラオフ・モード移行要求を通知し、応答を待ち、電力供給モードの移行が可能であると判断した場合に、電力供給モード移行処理を実行する。
【００４９】
内容データ検証部９４は、電力供給モード管理部９６からのコントローラオフ・モード移行要求を受けて、ＳＤカード４０の検証データを取得して、保存用検証データ１４０としてＨＤＤ２４に格納し、格納が完了を待って、コントローラオフ・モード移行が可能な旨を、電力供給モード管理部９６へ通知する。なお、電力供給モード管理部９６は、図２に示したソフトウェア構成では、ＳＣＳ８４に含まれるソフトウェア手段として構成することができる。
【００５０】
図６は、ＳＤカードの正当性を検証する際に用いる検証データのデータ構造の実施形態を示す。図６（Ａ）は、コントローラオフ・モードへの移行前に格納する保存用検証データ（１４０ａおよび１４０ｂ）を例示する。図６（Ａ）に示した保存用検証データ１４０は、ＳＤカード４０に付されているシリアルＩＤを格納するためのフィールド１４２と、ＳＤカード４０に格納されたファイルの情報をエントリするためのテーブル１４４とを含み構成される。保存用検証データ１４０のテーブル１４４は、ファイル名をエントリするためのフィールド１４６と、ファイルサイズをエントリするためのフィールド１４８と、ファイルの更新日時をエントリするためのフィールド１５０とを含み構成され、対応付けられている。これらの保存用検証データは、スロット３２ごとに管理され、例えば、スロットＡ３２ａに対応する保存用検証データ１４０ａと、スロットＢ３２ｂに対応する保存用検証データ１４０ｂとして格納される。
【００５１】
図６（Ｂ）は、コントローラオフ・モードから復帰した後に、復帰後にスロットに装着されているＳＤカードから、新たに取得される比較用検証データを例示する。比較用検証データ１６０は、図６（Ａ）に示したデータ構造同様に、シリアルＩＤを格納するフィールド１６２と、ファイルの管理情報をエントリするためのテーブル１６４とを含み、テーブル１６４は、ファイル名フィールド１６６と、ファイルサイズ・フィールド１６８と、更新日時フィールド１７０とを含み対応付けられている。
【００５２】
図６に例示するように、保存用検証データ１４０と比較用検証データ１６０とを比較すると、保存用検証データ１４０中フィールド１４６の［ファイル３］がエントリされているレコードに対応するフィールド１４８と、比較用検証データ１６０中フィールド１６６の［ファイル３］がエントリされているレコードに対応するフォールド１６８とのエントリが、それぞれ［３００ＫＢ］および［４００ＫＢ］となっており、相違している様子が示されている。一般に、ファイルが改変された場合には、ファイルサイズやファイル更新日時などの情報が書換えられるため、上記の相違は、ファイル３が何らかの改変を受けたことを示している。すなわち、コントローラオフ・モード移行前の保存用検証データ１４０と、コントローラオフ・モード復帰後の比較用検証データ１６０とを比較して、相違点を抽出することにより、該モード中に、ＳＤカードが何らかの改変を受けたか否か、さらに改変を受けた場合には、どのファイルデータが改変されているかを特定することが可能となる。
【００５３】
なお、ＳＤカード４０の内容データを検証するための検証データは、ＳＤカードのシリアルＩＤ、ＳＤカード内のディレクトリのツリー構造、ファイル名やファイルサイズや更新日時やアクセス日時や所有者、アクセス権限（アクセス属性）などのファイル属性、ファイルデータ自体、またこれらいかなる組合わせのデータ・セットからなる群から選択されるデータなど、ＳＤカードの内容データを特徴づける如何なるデータおよびデータの組合わせを採用することができ、ＳＤカードから読出し取得することができる。また、これらのデータから、メッセージ・ダイジェスト関数などを使用して算出して取得したハッシュ値を、検証データとして採用することもできる。
【００５４】
図７は、本実施形態の画像形成装置１０が実行する、コントローラオフ・モード移行要求の発生を検知した場合の処理フローの実施形態を示すフローチャートである。図７に示した制御は、画像形成装置１０において、コントローラオフ・モード移行要求をトリガするイベントの発生（例えば、アイドル状態で一定時間経過したことなど）を検知して、ステップＳ１００で開始される。なお、要求の発生を検知した電力供給モード管理部９６は、内容データ検証部９４を含む画像形成装置１０の各機能手段に対して、コントローラオフ・モード移行要求の通知を行う。通知を受けた内容データ検証部９４は、ステップＳ１０１で、装着されているＳＤカード４０から、例えばファイル属性などの管理情報を読出して、検証データを取得する。ステップＳ１０２では、取得した検証データを保存用検証データとして保存するべく、ＨＤＤ２４またはＮＶ−ＲＡＭ２６などの不揮発性の記憶手段へ保存指令を発行し、ステップＳ１０３で、例えばＨＤＤアクセスドライバから応答を待ち、保存用検証データ１４０の保存完了の成否を判断し、完了を確認するまで処理をステップＳ１０３へループさせる。
【００５５】
一方、ステップＳ１０３の判断で、保存用検証データ１４０の保存完了を確認した場合は（ｙｅｓ）、処理をステップＳ１０４へ分岐させ、ステップＳ１０４では、内容データ検証部９４は、電力供給モード管理部９６へモード移行準備が完了した旨の通知を行い、内容データ検証部９４およびその他の機能手段からのモード移行準備完了の旨の通知を受けた電力供給モード管理部９６は、コントローラオフ・モードへの移行処理を実行し、ステップＳ１０５で処理を終了させる。
【００５６】
なお、図７に示した処理フローでは、コントローラオフ・モード移行要求の発生を検知してから、ステップＳ１０１で検証データを取得し、ステップＳ１０２でＨＤＤ２４へ保存用検証データとして格納し、ステップＳ１０３で保存完了を確認してステップＳ１０４でモード移行する制御として参照したが、検証データの取得処理は、記憶媒体の着脱検知不能となる電力供給モードへ移行する前に完了されるタイミングで実行されれば、特定のタイミングに特に限定されることはない。また、取得した検証データを格納する処理は、不揮発性の記憶手段へのアクセス不能となる電力供給モードへ移行する場合に、該電力供給モードへ移行する前に完了されるタイミングで実行されれば、特定のタイミングに特に限定されることはない。
【００５７】
他の実施形態では、例えば、バックグラウンド処理として、（１）ＳＤカードの着脱をモニタしてＳＤカードの装着を検出した場合に、（２）または所与の時間間隔を計時して定期的に、（３）ＳＤカードへのアクセスをモニタしてＳＤカードの内容データの変更（ファイルの書込や削除など）を検出した場合に、検証データを取得して格納し、都度、変更部分を更新させる制御とすることもできる。
【００５８】
図８は、本実施形態の画像形成装置１０が実行する、コントローラオフ・モードから通常モードへの復帰を検知した場合の処理フローの実施形態を示すフローチャートである。図８に示した制御は、例えば、コントローラオフ・モードからの復帰を検知した電力供給モード管理部９６からの通知を受けて、ステップＳ２００で開始される。ステップＳ２０１では、内容データ検証部９４は、ＨＤＤ２４（またはＮＶ−ＲＡＭ２６）から保存用検証データ１４０の読出しを試みて、保存用検証データ１４０が保存されている場合には取得する。
【００５９】
ステップＳ２０２では、保存用検証データ１４０の有無により処理を分岐させ、保存用検証データ１４０が保存されていないと判断された場合（ｎｏ）は、検証する必要性が無いため、ステップＳ２０７へ分岐させ処理を終了させる。一方、ステップＳ２０２の判断で、保存用検証データ１４０が保存されていると判断された場合（ｙｅｓ）には、ステップＳ２０３へ分岐させ、ステップＳ２０３では、復帰後の時点で装着されているＳＤカードから、例えばファイル属性などの管理情報を読出して、正当性を検証するための比較用検証データ１６０を新たに取得する。
【００６０】
比較用検証データ１６０を取得した内容データ検証部９４は、ステップＳ２０４で、保存用検証データ１４０と、比較用検証データ１６０とが同一であるか否かを判断し、同一であると判断された場合（ｙｅｓ）には、ステップＳ２０６へ処理を分岐させ、ステップＳ２０６で、保存用検証データ１４０を消去する要求を発行し、ステップＳ２０７で処理を終了させる。
【００６１】
一方ステップＳ２０４の判断で、検証データが同一でないと判断した場合（ｎｏ）には、処理をステップＳ２０５へ分岐させ、不一致対応処理を実行し、処理の結果を受けて、ステップＳ２０６で、保存用検証データ１４０を消去する要求を発行し、ステップＳ２０７で処理を終了させる。
【００６２】
なお、ステップＳ２０２の判断では、保存用検証データ１４０の有無を判断することにより、コントローラオフ・モードへ移行する前に、スロット３２にＳＤカード４０が装着されていたか否かを判定している。他の実施形態では、スロット３２にＳＤカード４０が装着されているか否かを示すフラッグを立て、状態値を不揮発性の記憶手段に格納し、フラッグにより判定する制御としても良い。
【００６３】
また、上述のステップＳ２０４の判断では、検証データを構成する各値を比較したり、検証データ全体のハッシュ値を計算して、ハッシュ値を比較することによって、検証データの同一性を検証することができる。なお、コントローラオフ・モードからの復帰時にスロット３２にＳＤカード４０が装着されていない場合は、格納された検証データを消去して、ＳＤカードをアンマウント、またＳＤカードからマウントされたプログラム・モジュールが有る場合には、プログラム・モジュールをアンマウントする制御としてもよい。
【００６４】
図９は、図８に示した処理フロー中ステップＳ２０５の処理、つまり、ＳＤカードの内容データを検証した結果、同一でないと判断された場合に画像形成装置１０が実行する処理の実施形態を示すフローチャートである。また、図１２は、画像形成装置１０のオペレーション・パネル４２などに表示される警告表示画面の実施形態を示す。図９に示した制御では、ステップＳ３００で処理を開始し、ステップＳ３０１では、例えば図１２（Ａ）に示すような、保守サービス（サービスマン）に連絡する旨の警告画面３００がオペレーション・パネル４２に提示する。ステップＳ３０２では、例えば、画像形成装置１０への動作要求の受付をロックする（使用不可能状態とする）。
【００６５】
ステップＳ３０３では、サービスマンによる解除指令を受けたか否かを判断し、解除指令を受信するまで（ｎｏの間）、ステップＳ３０３、へループさせる。一方、ステップＳ３０３の判断で、サービスマンによる解除指令を受信したと判断した場合（ｙｅｓ）には、処理をステップＳ３０４へ分岐させ、ステップＳ３０４では、画像形成装置１０への動作要求の受付のロックを解除（使用可能状態とする）して、ステップＳ３０５で処理ルーチンを終了させ、図８に示した処理フローのステップＳ２０６の処理へ戻す。
【００６６】
また、同一でないと判断された場合に実行する処理の他の実施形態では、ステップＳ３０１で、例えば図１２（Ｂ）に示すような、オペレータの確認を要請する警告画面３０２の表示を行い、ステップＳ３０３で、オペレータからの確認指示を待受けて、確認指示を受領して、ステップＳ３０５で終了させる制御としてもよい。なお、図１２（Ｂ）に示す画面３０２には、オペレータの確認を待受けるボタン３０２ａが示されている。その場合、ステップＳ３０２およびステップＳ３０５の、画像形成装置１０のロック・ロック解除に関連する処理を行わない制御としてもよい。
【００６７】
なお、記憶媒体の内容の正当性を確認できない旨のエラー警告通知としては、オペレーション・パネル４２への警告画面表示の他に、画像形成手段（ＥＣＳ７４およびエンジン部４６）によるサービスプリントや、ファックス送信手段（ＦＣＵ４４およびＦＣＳ８０）によるファックス送信、ネットワーク通信手段（ＮＩＣ３０およびＮＣＳ８２：例えばＳＮＭＰデーモン）によるＳＮＭＰトラップ通知などを採用することもできる。
【００６８】
図１０は、ＳＤカードの内容データを検証した結果、同一でないと判断した場合に画像形成装置１０が実行する処理の、さらに他の実施形態を示すフローチャートである。図１０に示した制御では、ステップＳ４００で処理を開始し、ステップＳ４０１で、コントローラオフ・モード移行前の保存用検証データ１４０と、新たに取得した比較用検証データ１６０とを比較して、ＳＤカード４０の内容データ中、相違する箇所を抽出、つまり相違点を有するファイルや削除されたファイル（以下、不正ファイルとして参照する。）を特定する。なお、相違する箇所の抽出は、図６に示すような、ファイル単位で管理された構造を有する保存用検証データ１４０および比較用検証データ１６０をルックアップして、相違する項目を検索して行うことができる。
【００６９】
ステップＳ４０２では、該不正ファイルがシステムメモリ１６上に展開しているか否かを、後述するメモリ上の展開ファイルと、展開ファイルの保存元パスとを対応付けるテーブルをルックアップして判断し、メモリ上に展開されていると判断される場合（ｙｅｓ）は、ステップＳ４０４へ分岐させる。
【００７０】
ステップＳ４０４の処理では、メモリ上に展開されたファイルが正常であるとして、ＳＤカードに対して、メモリ上に展開したデータを使用して、該不正ファイルに上書き処理を行い、不正ファイルを復旧させる。そして、ステップＳ４０５では、例えば、図１２（Ｃ）に示すように、ファイルを復旧させた旨を示す画面３０４を表示させ、ステップＳ４０６で処理を終了させ、図８に示した処理フローのステップＳ２０６の処理へ戻される。なお、図１２（Ｃ）に示す画面３０４には、オペレータの確認を待受けるボタン３０４ａが示されている。
【００７１】
また、ステップＳ４０２の判断で、メモリ上に展開されていないと判断された場合（ｎｏ）には、処理をステップＳ４０３へ分岐させ、ステップＳ４０３では、特定された不正ファイル名を表示させ、ファイルに対して変更が加えられている蓋然性がある旨をオペレータに通知する。
【００７２】
図１１は、例えば、図１０に示した処理フロー中のステップＳ４０４の処理を実行する際に使用する、メモリ上の展開ファイルと、展開ファイルの保存元パスとを対応付けるテーブル１８０のデータ構造の実施形態を示す。図１１に示したテーブル１８０は、展開中のファイルのプロセスＩＤをエントリするフィールド１８０ａと、展開中ファイルの保存元のパスおよびファイル名を格納するフィールド１８０ｂとを含み構成される。テーブル１８０は、例えば、プログラム起動部１０８により、ＳＤカード４０に格納されたプログラム・モジュールを起動した際にエントリされる。
【００７３】
内容データ検証部９４は、ＳＤカード４０の不正ファイルを特定し、テーブル１８０をルックアップして、不正ファイルに対応する起動中のプロセスのプロセスＩＤを取得し、該プロセスを特定することが可能となる。
【００７４】
図１０に示した処理による、不正ファイルの復旧は、上述の方法に限定されるものではなく、例えば、ＳＤカード４０に格納されたファイルをＨＤＤ２４にバックアップしておき、バックアップファイルを使用して、ＳＤカード４０の内容を復旧する制御としてもよい。
【００７５】
なお、ＳＤカードの内容データの不正を検出したあとに実行する処理は、上述まで処理に特に限定されるものではなく、画像形成装置１０に要求されるセキュリティ・レベルに応じたものを採用することができる。例えば、他の実施形態では、特定された不正ファイルが実行されている場合に、不正ファイルに対応するプロセスを終了（ｋｉｌｌ）させる制御とすることもできる。またさらに他の実施形態では、記憶媒体に格納された不正ファイルを削除することもできる。また、不正ファイルが実行可能なプログラムであるか、アドレス帳のようなユーザデータであるかを判断して、実行する処理を変更する制御とすることもできる。
【００７６】
以上説明したように、本実施形態によれば、制御手段またはスロットへの電源供給が休止されるような、記憶媒体の着脱が検知不能となる電源供給モードに移行する場合であっても、記憶媒体に対して行われた不正操作を検知して、記憶媒体への不正操作があった場合に対処することを可能とする、電子装置およびプログラムを提供することを可能とする。
【００７７】
不正操作を検知することにより、着脱可能な記憶媒体からプログラムが読出・実行されている場合に、プログラムおよび電子装置の異常動作を好適に防止することができる。また、着脱可能な記憶媒体に格納されたユーザデータを使用する場合にも、不正操作を検知することにより、警告を行うなどの対処が可能となり、改竄に気づかないで業務上の重要な情報を誤った連絡先にＦＡＸやファイル転送を行ってしまうことを好適に防止することができる。また、不正に変更または削除されたファイルに対しては、復旧処理、削除処理、対応するプロセスの停止処理を行うことが可能となる。
【００７８】
なお、上述では、一実施形態として、コントローラオフ・モードと待機モードとの間の電力供給モード移行を対象として、そのモード移行前後におけるＳＤカードの検証処理について説明してきたが、ＣＰＵまたはＳＤカードスロットへの電力供給が休止され、ＳＤカードの着脱を検出できない電力供給状態と、充分な電力供給がなされ着脱を検知可能な状態間の移行であれば、他の如何なる電力供給状態間の移行を対象としてもよい。
【００７９】
また上述では、電子装置の一実施形態として、複数機能を備えた画像形成装置（複合機）を例に説明してきた。しかしながら本発明の実施形態では、電子装置は、着脱可能な記憶媒体のスロットを備えた、複写機やプリンタなどの画像形成装置、スキャナなどの画像読取装置、ＰＣやサーバなどの情報処理装置、デジタルカメラやデジタルビデオカメラなどの撮像装置、携帯電話やＰＤＡなど携帯端末、テレビジョンやＨＤＤレコーダやオーディオセットなどの音声映像入出力装置、カーナビゲーションなどの車載電子装置、洗濯機や冷蔵庫や電子レンジなどの家電機器として構成することもできる。
【００８０】
着脱可能な記憶媒体としては、ＳＤカードの他、スマートメディア（ＳＳＦＤＣ）、メモリースティック、コンパクトフラッシュ（登録商標）、ｘＤピクチャーカードやＵＳＢフラッシュメモリなどを採用することもできる。
【００８１】
上記機能は、アセンブラ、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）、などのレガシープログラミング言語やオブジェクト指向ブログラミング言語などで記述された装置実行可能なプログラムにより実現でき、ＲＯＭ、ＥＥＰＲＯＭ、ＥＰＲＯＭ、フラッシュメモリ、フレキシブルディスク、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ、ＳＤメモリ、ＭＯなど装置可読な記録媒体に格納して頒布することができる。
【図面の簡単な説明】
【００８２】
【図１】電子装置のハードウェア構成の実施形態を示す図。
【図２】本実施形態の電子装置のソフトウェアおよびハードウェア構成を示す図。
【図３】本実施形態の電子装置のソフトウェア構成を示すブロック図。
【図４】本実施形態の電子装置が実行するプログラムの実行形態を示すフローチャート。
【図５】本実施形態の電子装置が、脱着可能な記憶媒体の正当性を検証する場合のデータフローの実施形態を示す図。
【図６】ＳＤカードの正当性を検証する際に用いる検証データのデータ構造の実施形態を示す図。
【図７】本実施形態の電子装置が実行する、コントローラオフ・モード移行要求の発生を検知した場合の処理フローの実施形態を示すフローチャート。
【図８】本実施形態の電子装置が実行する、コントローラオフ・モードから通常モードへの復帰を検知した場合の処理フローの実施形態を示すフローチャート。
【図９】ＳＤカードの内容データを検証した結果、同一でないと判断された場合に電子装置が実行する処理の実施形態を示すフローチャート。
【図１０】ＳＤカードの内容データを検証した結果、同一でないと判断した場合に電子装置が実行する処理の、さらに他の実施形態を示すフローチャート。
【図１１】メモリ上の展開ファイルと、展開ファイルの保存元パスとを対応付けるテーブル１８０のデータ構造を示す図。
【図１２】電子装置のオペレーション・パネルに表示される警告表示画面の実施形態を示す図
【図１３】通常の待機モードおよびコントローラオフ・モードにおける、着脱可能な記憶媒体を制御しているソフトウェア手段の動作状態を示す図。
【符号の説明】
【００８３】
１０…画像形成装置、１２…コントローラ、１４…ＣＰＵ、１６…システムメモリ、１８…ＮＢ（ノース・ブリッジ）、２０…ＡＳＩＣ、２２…ローカルメモリ、２４…ＨＤＤ、２６…ＮＶ−ＲＡＭ、２８…ＳＢ（サウス・ブリッジ）、３０…ＮＩＣ、３２…スロット、３４…ＵＳＢＩ／Ｆ、３６…ＩＥＥＥ１３９４Ｉ／Ｆ、３８…セントロニクスＩ／Ｆ、４０…ＳＤカード、４２…オペレーション・パネル、４４…ＦＣＵ、４６…エンジン部、４８…ＡＧＰ、５０、５２…ＰＣＩバス、６０…アプリケーション層、６２…コピー・アプリケーション、６４…ファックス・アプリケーション、６６…スキャナ・アプリケーション、６８…ネットファイル・アプリケーション、７０…プリンタ・アプリケーション、７２…ＡＰＩ、７４…ＥＣＳ、７６…ＭＣＳ、７８…ＯＣＳ、８０…ＦＣＳ、８２…ＮＣＳ、８４…ＳＣＳ、８６…ＳＲＭ、８８…ＯＳ、９０…プラットフォーム層、９２…エンジン・Ｉ／Ｆ、９４…内容データ検証部、９６…電力供給モード管理部、１００…ＳＤカードアクセスドライバ、１０２…ファイルシステム、１０４…ＳＤカードステータスモニタドライバ、１０６…ＳＤカードチェックプログラム、１０８…プログラム起動部、１１０…ＮＶ−ＲＡＭアクセスドライバ、１１２…ＨＤＤアクセスドライバ、１２０ａ〜ｄ…プログラム、１２２…プログラム、１４０…保存用検証データ、１４２…フィールド、１４４…テーブル、１４６〜１５０…フィールド、１６０…比較用検証データ、１６２…フィールド、１６４…テーブル、１６６〜１７０…フィールド、１８０…テーブル、１８０ａ、１８０ｂ…フィールド、３００…画面、３０２…画面、３０２ａ…ボタン、３０４…画面、３０４ａ…ボタン
【図１】
2008171306.tif 000003
【図２】
2008171306.tif 000004
【図３】
2008171306.tif 000005
【図４】
2008171306.tif 000006
【図５】
2008171306.tif 000007
【図６】
2008171306.tif 000008
【図７】
2008171306.tif 000009
【図８】
2008171306.tif 000010
【図９】
2008171306.tif 000011
【図１０】
2008171306.tif 000012
【図１１】
2008171306.tif 000013
【図１２】
2008171306.tif 000014
【図１３】
2008171306.tif 000015