(57)【要約】【課題】情報処理装置へ着脱可能な記憶装置への不正アクセスがされた可能性があるかどうかを適切に判断すること。【解決手段】画像形成装置１０１のＣＰＵ１０５が、電源投入時にＨＤＤ１０９，１１２からＳＭＡＲＴ情報を読み出し、前回の電源投入時にメモリ１０６（不揮発性メモリ）に記憶したＳＭＡＲＴ情報内の電源投入回数と、今回の電源投入時に読み出したＳＭＡＲＴ情報内の電源投入回数が、特定の関係（連続）であるかどうかを判断する構成を特徴とする。【選択図】図１
2010160545.tif 000002
【特許請求の範囲】
【請求項１】
着脱可能な記憶装置を有する情報処理装置であって、
前記記憶装置の備えるコントローラが上位装置からの指示に関係なく前記記憶装置に記憶させた、前記記憶装置に関する特定の情報を、前記記憶装置から読み出す読出手段と、
前記読出手段によって読み出された前記特定の情報を記憶する第１の記憶手段と、
前回の電源投入時に前記第１の記憶手段に記憶した前記特定の情報と、今回の電源投入時に前記読出手段により読出した前記特定の情報が、特定の関係であるかどうかを判断する判断手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記判断手段が、前記特定の関係でないと判断した場合に、所定の報知を行う報知手段とを有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前回の電源投入時に前記第１の記憶手段に記憶した前記特定の情報と、今回の電源投入時に前記読出手段により読出した前記特定の情報が、特定の関係でなかった場合に、前記記憶装置に記憶されたプログラムを用いて前記情報処理装置を起動するか否かを選択する選択手段と、
前記記憶装置に記憶されたプログラムを用いて前記情報処理装置を起動するよう制御する制御手段とを有し、
前記情報処理装置を起動すると前記選択手段が選択した場合、前記読出手段は前記プログラムを前記記憶手段から読出し、前記制御手段は前記記憶装置から読み出された前記プログラムを用いて前記情報処理装置を起動することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前回の電源投入時に前記第１の記憶手段に記憶した前記特定の情報と、今回の電源投入時に前記読出手段により読出した前記特定の情報が、特定の関係でなかった場合に、前記記憶装置に記憶されたプログラムが改竄されているか否かを検証する検証手段を有し、
前記プログラムが改竄されていないと前記検証手段により検証された場合に、前記記憶装置に記憶されたプログラムを用いて前記情報処理装置を起動するよう制御する制御手段とを有することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項５】
前記特定の情報は、前記記憶装置に電源が投入された回数を示す情報であることを特徴とする請求項1乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記特定の情報は、前記記憶装置が動作及び停止した回数を示す情報であることを特徴とする請求項1乃至４のいずれか１項に記載の情報処理装置。
【請求項７】
前記記憶装置は、磁気記憶装置であり、
前記特定の情報は、前記記憶装置のスピンドルモータが回転及び停止した回数を示す情報であることを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項８】
前記特定の関係は、前回の電源投入時に前記第１の記憶手段に記憶した前記特定の情報に１を加算した情報が今回の電源投入時に前記読出手段により読み出された前記特定の情報と一致することを示す関係であることを特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
前記記憶装置に電源が投入された時間の合計を計時する計時手段と、
前記計時手段によって計時された時間を記憶する第２の記憶手段とを有し、
前記報知手段は、前回の電源投入時に前記第１の記憶手段に記憶した前記特定の情報と、今回の電源投入時に前記読出手段により読み出された前記特定の情報が、特定の関係でなかった場合でかつ、前回の電源投入時に前記第２の記憶手段に記憶した時間と今回の電源投入時に前記計時手段により計時した時間の差が特定の時間を超える場合に、前記所定の報知を行うことを特徴とする請求項２乃至８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記記憶装置を複数備え、
これら複数の記憶装置に対して同一データを多重化して格納するための多重化制御手段を有し、
前記読出手段は、前記特定の情報を前記複数の記憶装置からそれぞれ読み出すものであり、
前記第１の記憶手段は、前記読出手段によって前記複数の記憶装置から読み出した特定の情報をそれぞれ記憶するものであり、
前記報知手段は、前回の電源投入時に前記第１の記憶手段に記憶した前記特定の情報と、今回の電源投入時に前記読出手段により読み出された前記特定の情報が、特定の関係でなかった記憶装置を特定可能な情報を報知することを特徴とする請求項２乃至９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記特定の関係であった記憶装置をプライマリ記憶装置に、前記特定の関係でなかった記憶装置をセカンダリ記憶装置に設定する設定手段を有することを特徴とする請求項１０に記載の情報処理装置。
【請求項１２】
前記複数の記憶装置が前回の電源投入時に装着されていた複数の記憶装置と同一のものか異なるものかをそれぞれ判定する判定手段を有し、
前記判定手段により前回の電源投入時に装着されていた記憶装置と同一のものであると判定された記憶装置をプライマリ記憶装置に、前記判定手段により前回装着されていた記憶装置と異なるものであると判定された記憶装置をセカンダリ記憶装置に設定する設定手段を有することを特徴とする請求項１０に記載の情報処理装置。
【請求項１３】
前記記憶装置は、AT Attachment規格の記憶装置であり、
前記判定手段は、AT Attachment規格の標準的なコマンドであるIdentify Deviceコマンドを用いて前記複数の記憶装置から取得した情報を用いて、前記複数の記憶装置が前回の電源投入時に装着されていた複数の記憶装置と同一のものか異なるものかをそれぞれ判定することを特徴とする請求項１２に記載の情報処理装置。
【請求項１４】
前記判定手段は、前記特定の情報を用いて、前記複数の記憶装置が前回の電源投入時に装着されていた複数の記憶装置と同一のものか異なるものかをそれぞれ判定することを特徴とする請求項１２に記載の情報処理装置。
【請求項１５】
前記判定手段は、前記記憶装置の特定の領域に書き込まれた前記記憶装置ごとに異なる識別情報を用いて、前記複数の記憶装置が前回の電源投入時に装着されていた複数の記憶装置と同一ものか異なるものかをそれぞれ判定することを特徴とする請求項１２に記載の情報処理装置。
【請求項１６】
前記記憶装置は、ＳＭＡＲＴ（Self-Monitoring, Analysis and Reporting Technology）機能を有する磁気記憶装置であり、
前記特定の情報は、前記ＳＭＡＲＴ機能の検査項目に含まれる情報であることを特徴とする請求項１乃至１５のいずれか１項に記載の情報処理装置。
【請求項１７】
着脱可能な記憶装置を有する情報処理装置の制御方法であって、
読出手段が、前記記憶装置の備えるコントローラが上位装置からの指示に関係なく前記記憶装置に記憶させた、前記記憶装置に関する特定の情報を、前記記憶装置から読み出す読出ステップと、
制御手段が、前記読出ステップで読み出された前記特定の情報を第１の記憶手段に記憶する第１の記憶ステップと、
判断手段が、前回の電源投入時に前記第１の記憶手段に記憶した前記特定の情報と、今回の電源投入時に前記読出ステップで読出した前記特定の情報が、特定の関係であるかどうかを判断する判断ステップと、
を有することを特徴とする情報処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理装置の制御方法に関する。
【背景技術】
【０００２】
情報処理装置において、取り扱うデータの安全性は極めて重要な問題のひとつである。特に、大量のデータを記憶できる磁気記憶装置のハードディスク（以下、ＨＤＤとする）は、最も安全性を要求される記憶装置であるため、装置から簡単に取り外せない構成となっていることが望まれている。
【０００３】
しかし、ＨＤＤは、Ｆｌａｓｈ−ＲＯＭなどの他の記憶装置に比べ故障率が高く、またＨＤＤの容量アップや増設などに対応するため、容易に着脱可能な構成になっている場合があった。
【０００４】
そのため、夜間など、人がいない時に、装置本体からＨＤＤを取り外し、ＨＤＤ内のデータをこっそり盗まれる危険があった。
【０００５】
また、ＨＤＤ及び装置本体には、データが盗まれたことを検出する手段がないため、ユーザはいつ、どこのＨＤＤからデータが漏洩したかを認識することができないといった問題があった。
【０００６】
また、近年、情報処理装置においては、ディスクアクセス速度の向上、記憶データの保護を図るために、ＲＡＩＤのような冗長化されたディスクアレイが利用されている。なお、ＲＡＩＤとは、Redundant Array of Independent Inexpensive Disksを示す。
【０００７】
ＲＡＩＤにおいては、例えば、レベル０のＲＡＩＤ（ＲＡＩＤ０）や、レベル１のＲＡＩＤ（ＲＡＩＤ１）などが定義されている。なお、ＲＡＩＤ０は、データをブロック単位で分散するストライピング(striping)構成である。また、ＲＡＩＤ１は、複数のディスクドライブに同一のデータを格納するミラーリング(mirroring)構成である。
【０００８】
ＲＡＩＤ１機能を実現するディスクアレイ装置は、再構築（リビルド）機能と呼ぶデータ復元機能を有する。この再構築機能により、故障したＨＤＤに格納されたデータを、交換したＨＤＤに復元することができる。そのため、２台のディスクドライブに同一のデータを書き込むＲＡＩＤ１システムにおいては、装置本体からＨＤＤを取り外し、別に用意したＨＤＤへ再構築を行うことで、既存のＨＤＤに格納されているデータを不正に複製できるという問題があった。
【０００９】
そこで、着脱可能な記憶装置を備えた情報機器において、当該記憶装置の取り外しを監視する脱着監視装置を設ける方法が提案されている。
【００１０】
この着脱監視装置にはキースロットが設けられており、当該キースロットにキーを挿入すれば記憶装置の監視状態が解除され、記憶装置を取り外すことができる。一方、キーを挿入することなく記憶装置の取り外しが実行される場合、監視装置は、不正な着脱と判断して、記憶装置のデータに加工（例えば、暗号化など）を施す。
【００１１】
この監視装置は、情報機器の電源オフ後も電力供給されるように、情報機器の主電源とは別に設けられた二次電池から電力供給されるようになっている。これにより、情報機器の主電源のオフ後も、記憶装置の監視を継続することができ、より確実にＨＤＤの盗難を防止することができる。（特許文献１参照）。
【特許文献１】特開２００４−１０２６６５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、上述した従来の技術では、監視装置専用の電源（二次電池）や、監視専用の制御装置を設ける必要があり、情報機器全体の大幅なコストアップを招いていた。また、特許文献１では、監視装置に常時、電力供給を実施しているため、消費電力が多くなり、結果として情報機器のランニングコスト増加を招いていた。
【００１３】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、情報処理装置へ着脱可能な記憶装置への不正アクセスがされた可能性があるかどうかを適切に判断する情報処理装置を提供することである。
【課題を解決するための手段】
【００１４】
本発明は、着脱可能な記憶装置を有する情報処理装置であって、前記記憶装置の備えるコントローラが上位装置からの指示に関係なく前記記憶装置に記憶させた、前記記憶装置に関する特定の情報を、前記記憶装置から読み出す読出手段と、前記読出手段によって読み出された前記特定の情報を記憶する第１の記憶手段と、前回の電源投入時に前記第１の記憶手段に記憶した前記特定の情報と、今回の電源投入時に前記読出手段により読出した前記特定の情報が、特定の関係であるかどうかを判断する判断手段とを有することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、情報処理装置へ着脱可能な記憶装置への不正アクセスがされた可能性があるかどうかを適切に判断する情報処理装置を提供することができる。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照して、この発明の好適な実施形態を例示的に詳しく説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１７】
〔第１実施形態〕
図１は、本発明の第１実施形態に係る情報処理装置の概略構成を示すブロック図である。なお、本実施形態では本発明の情報処理装置の一例として画像形成装置について説明する。しかし、本発明の情報処理装置は画像形成装置に限られるものではなく、他の情報処理装置、例えば、パーソナルコンピュータやサーバーコンピュータ、情報処理機能を備えた各種家電等にも適用可能である。
【００１８】
図1において、１０１は本発明の情報処理装置としての画像形成装置である。画像形成装置１０１は、大きく分けて、スキャナ部１０２、プリンタ部１０３、コントローラ１０４からなる。なお、スキャナ部１０２は、画像入力デバイスである。また、プリンタ部１０３は、画像出力デバイスである。また、コントローラ１０４は、画像処理及び画像形成動作の制御などを行うものである。
【００１９】
スキャナ部１０２、及び、プリンタ部１０３は、周知技術に基づいて種々の構成をとることができるため、ここでは、説明を省略する。
【００２０】
コントローラ１０４において、ＣＰＵ１０５は、画像形成装置１０１全体の制御を行う。メモリ１０６は、ＣＰＵ１０５が動作するためのＤＲＡＭや、システムのブートプログラムやディスクアレイをコントロールするためのファームウェアが格納されているＲＯＭ、装置のさまざまな設定やログなどを記憶しているＳＲＡＭ等を示す。
【００２１】
インタフェース１０７は、ＬＡＮなどの外部機器との通信を行う。操作部１０８は、ハードキーやタッチパネル式ディスプレイを備え、画像形成装置１０１を操作したり、画像形成装置１０１の状態を表示するためのユーザインタフェース（ＵＩ）である。また、操作部１０８は、記憶装置（ハードディスク）への不正アクセスの有無を報知する手段としても機能する（詳細は後述する）。
【００２２】
ディスクアレイ制御装置１１１は、ＣＰＵ１０５からのディスクアクセス要求に応じて、複数のＨＤＤに対しディスクアレイを制御する。また、ディスクアレイ制御装置１１１は、例えばＲＡＩＤ０、ＲＡＩＤ１、ＲＡＩＤ２、ＲＡＩＤ３、ＲＡＩＤ４、ＲＡＩＤ５、又はＲＡＩＤ６のようなＲＡＩＤの制御を行う。
【００２３】
なお、ＲＡＩＤ１の制御とは、データをストライピング単位に分割して記憶させる制御を示す。また、ＲＡＩＤ２の制御とは、ミラーリングを使って同一のデータを複数のＨＤＤに書き込む制御を示す。また、ＲＡＩＤ４、ＲＡＩＤ５、又はＲＡＩＤ６の制御とは、書き込み時にデータのパリティを生成してこれらデータ及びパリティを複数のＨＤＤの同じブロックに分散して記録したり読み出す制御を示す。
【００２４】
１０９，１１２は記憶装置としてのハードディスク（ＨＤＤ）である。ＨＤＤ１０９，１１２は、画像形成装置１０１の機能を実現するためのプログラムや画像データ等の種々のデータを記憶している。また、ＨＤＤ１０９，１１２は、ＣＰＵ１０５からの指示に応じて、ＨＤＤ１０９，１１２の制御を行う各々ＨＤＤコントローラ１１０，１１３を備えている。
【００２５】
また、本実施形態では、画像形成装置１０１は、ＨＤＤ１０９，１１２のように、ＨＤＤを複数備えている。また、ＨＤＤ１０９，１１２は、ＲＡＩＤ１のディスクアレイを構成している。ＲＡＩＤ１のディスクアレイは、ミラーリングされた２つのＨＤＤ１０９，１１２によって構成されている。
【００２６】
ディスクアレイ制御装置１１１は、ＣＰＵ１０５からのライトデータをＨＤＤ１０９に格納するとともに、同一のデータをＨＤＤ１１２にも格納する。即ち、ディスクアレイ制御装置１１１は、ＨＤＤ１０９，１１２に対して同一データを多重化して格納するための多重化制御を実行する。これにより、ＨＤＤ１０９とＨＤＤ１１２のデータ構造は同一となる。
【００２７】
また、ＣＰＵ１０５がデータをリードする場合は、ディスクアレイ制御装置１１１の制御により、予め決められたいずれかのＨＤＤからのみリード行うこととなる。そして、以後、このリードを行う方のＨＤＤをプライマリＨＤＤ（プライマリ記憶装置）、リードを行わない方のＨＤＤをセカンダリＨＤＤ（セカンダリ記憶装置）と呼ぶことにする。
【００２８】
なお、冗長性のあるＲＡＩＤ構成では、定期的に整合性チェックを行うことが一般的である。この整合性チェックとは、ミラーリングを行っている双方のＨＤＤのデータを比較し、データの不一致を検出した場合は、プライマリＨＤＤからセカンダリＨＤＤへデータを上書きすることでデータの整合性を整えることを言う。
【００２９】
また、ＨＤＤ１０９，１１２は、画像形成装置１０１の装置本体に対して着脱自在となっている。さらに、ＨＤＤ１０９，１１２は、Ｓ.Ｍ.Ａ.Ｒ.Ｔ.（Self-Monitoring, Analysis and Reporting Technology）機能を備えるのである。ここで、Ｓ.Ｍ.Ａ.Ｒ.Ｔ.（以下、ＳＭＡＲＴ）とは、ＨＤＤが備えている自己診断機能を示す。その自己診断項目（検査項目）は、ＨＤＤの電源を投入した回数や、ＨＤＤの通電時間の合計や、ＨＤＤのスピンドルモータが回転/停止した回数や、温度など、ＨＤＤに関するさまざまな情報を含む。よって、ＣＰＵ等の上位装置は、このＨＤＤのＳＭＡＲＴ機能を用いて、ＨＤＤの電源を投入した回数や、ＨＤＤの通電時間の合計や、温度など、ＨＤＤに関するさまざまな情報を得ることができ、ＨＤＤの故障の可能性を予告することもできる。
【００３０】
次に、図１に示した画像形成装置１０１の動作を、図２のフローチャートを参照しつつ説明する。
【００３１】
図２は、図１に示した画像形成装置１０１の動作を示すフローチャートである。
【００３２】
まず、画像形成装置１０１に電源が投入されると（Ｓ１０１）、ＣＰＵ１０５はメモリ１０６に格納されているブートプログラムを起動する。以下、ＣＰＵ１０５はこのプログラムを実行することによりＳ１０２以降の処理を実現する。
【００３３】
ステップＳ１０２では、ＣＰＵ１０５は、ＨＤＤ１０９，１１２のＳＭＡＲＴ情報（ＳＭＡＲＴ機能の検査項目に含まれる情報）をリードして、メモリ１０６の作業領域に記憶する。
【００３４】
なお、このＳＭＡＲＴ情報は、通常の読み書きコマンドなどと異なり、特殊な読み出しコマンドによってのみＨＤＤ１０９，１１２からＲｅａｄする（読み出す）ことができる。さらに、ＳＭＡＲＴ情報のＨＤＤ１０９，１１２への書き込みは、ＨＤＤコントローラ１１０，１１３によってのみ行われ、ＣＰＵ１０５から直接書き込みを行うことはできないようになっている。そのため、他の装置に接続されてＨＤＤ１０９，１１２に電源が投入された場合も、ＨＤＤ１０９，１１２の電源を投入した回数などのＳＭＡＲＴ情報はＨＤＤコントローラ１１０，１１３によって自動的に更新され、ＨＤＤ１０９，１１２内に記憶される。
【００３５】
即ち、ＨＤＤ１０９内のＨＤＤコントローラ１１０は、上位装置（ＣＰＵ、ディスクアレイ制御装置等）の指示に関係なく、自らＨＤＤ１０９の状態を監視して、ＳＭＡＲＴ情報をＨＤＤ１０９に記憶する。なお、ＳＭＡＲＴ情報には、ＨＤＤの電源ＯＮ／ＯＦＦ回数（Device Power Cycle Count）、ＨＤＤの通電時間の合計（Power-On Hours）、ＨＤＤのスピンドルモータが回転/停止した回数（Start/Stop Count）等が含まれる。同様に、ＨＤＤ１１２内のＨＤＤコントローラ１１３も、上位装置（ＣＰＵ、ディスクアレイ制御装置等）の指示に関係なく、自らＨＤＤ１１２の状態を監視して、上記ＳＭＡＲＴ情報をＨＤＤ１１２に記憶する。
【００３６】
ＣＰＵ１０５は、このＳＭＡＲＴ情報をＨＤＤ１０９，１１２から読み出してメモリ１０６（ＲＯＭなどの不揮発性のメモリ、若しくは、電池でバックアップされたＳＲＡＭなどの揮発性メモリ）に記憶しておく。ＳＭＡＲＴ情報を読み出してメモリ１０６に記憶するタイミングは、ＨＤＤの電源が投入若しくは切断される時や、省電力モードへ移行若しくは省電力モードから復帰する時や、ＨＤＤ１０９，１１２の電源が入っている時に定期的に読み出して記憶しても良いし、それらのタイミングを組み合わせても良い。
【００３７】
なお、上記ステップＳ１０２のタイミングで、ＨＤＤが画像形成装置１０１に装着されていない場合には、ＣＰＵ１０５は、操作部１０８にその旨を表示してユーザにＨＤＤの装着を促す。そして、ＣＰＵ１０５は、ＨＤＤが画像形成装置１０１に装着されたことを検知すると、装着されたＨＤＤからＳＭＡＲＴ情報を読み出すものとする。
【００３８】
次に、ステップＳ１０３において、ＣＰＵ１０５は、今回のＨＤＤ（現在装着されているＨＤＤ）が前回のＨＤＤ（前回の電源投入時に装着されていたＨＤＤ）と同じＨＤＤか否かを判定する。
【００３９】
以下、前回のＨＤＤと同じか否か確認するステップ（Ｓ１０３）について詳細に説明する。このステップは、ユーザが誤って画像形成装置１０１に別装置のＨＤＤを装着してしまった場合等に、ＨＤＤの電源投入回数がずれてしまい、不正アクセスでは無いのに、不正アクセスの警告を表示しないようにするためもものである。また、信頼性の面でもＳＭＡＲＴ情報だけで不正アクセスを判断するのは、以下に示すようなケースが考えられ最適であるとは言えないためである。
【００４０】
１つ目のケースは、別に用意したＨＤＤに、不正にデータを複製した後、複製したＨＤＤの電源投入回数を故意に合わせて、元のＨＤＤと用意したＨＤＤを入れ替えて、元のＨＤＤを持ち去られる危険性があるためである。２つ目のケースは、別装置のＨＤＤの電源投入回数と偶然に同じになり、装置が誤動作してしまう可能性が無いとは言えないためである。
【００４１】
次に、判定方法（今回のＨＤＤが前回のＨＤＤと同じＨＤＤか判定する方法）について説明する。判定方法としては、後述するIdentify Deviceコマンドを利用する方法が一番簡単な方法である。また、その他に、例えばＨＤＤの電源投入回数以外のＳＭＡＲＴ情報を利用する方法や、後述するＨＤＤの特定のセクタにＨＤＤ毎に異なる識別ＩＤを書くことで判定する方法などが考えられる。また、当然これらの方法を組み合わせて判定しても良い。
【００４２】
まず、特定のセクタに識別ＩＤ（ＨＤＤ毎に異なる識別情報）を書いて判定する方法について説明する。
【００４３】
画像形成装置１０１のＳＲＡＭ等のメモリ１０６に、予め図３に示すような複数のＨＤＤの識別ＩＤを管理するための管理テーブルを記憶しておく。
【００４４】
図３は、複数のＨＤＤの識別ＩＤを管理するための管理テーブルの一例を示す図である。
【００４５】
図３に示す管理テーブルでは、画像形成装置毎に、プライマリＨＤＤとセカンダリＨＤＤの識別情報（識別ＩＤ）を記憶管理している。
【００４６】
そして、画像形成装置１０１の起動後すぐに等に、ＣＰＵ１０５が各ＨＤＤの特定のセクタへリードを行い、ＨＤＤの識別ＩＤを取得する。次に、ＣＰＵ１０５が、前記取得した識別ＩＤとメモリ１０６に記憶している管理テーブル（図３）から、装着されているＨＤＤがどの装置のＨＤＤか判定し、同一のＨＤＤか判定する。
【００４７】
次に、ＡＴＡ(AT Attachment)の標準的なコマンドであるIdentify Deviceコマンドを使用した方法について説明する。なお、この方法を用いる場合、ＨＤＤ１０９，ＨＤＤ１１２は、AT Attachment規格のハードディスクとする。
【００４８】
Identify Deviceコマンドは、ディスク装置に関する詳細な情報を得るためのコマンドであって、コマンドに応答してディスク装置より上位装置に返送される情報（データ）をIdentify Device Informationと呼ぶ。Identify Device Informationには、ディスク装置の型名(Model number)、シリアル番号(Serial number)を示す情報などが格納されている。これらの情報を予め図４に示すような管理テーブルで画像形成装置１０１のメモリ１０６に記憶しておく。
【００４９】
図４は、複数のＨＤＤの型名及びシリアル番号を管理するための管理テーブルの一例を示す図である。
【００５０】
図４に示す管理テーブルでは、画像形成装置毎に、プライマリＨＤＤとセカンダリＨＤＤのモデルＮｏ（型名）及びシリアルＮｏ（シリアル番号）を記憶管理している。
【００５１】
そして、画像形成装置１０１の起動後すぐ等に、ＣＰＵ１０５がIdentify Deviceコマンドにより各ＨＤＤからディスク装置の型名やシリアル番号等を取得する。次に、ＣＰＵ１０５が、前記取得した型名やシリアル番号とメモリ１０６に記憶している管理テーブル（図４）から、装着されているＨＤＤがどの装置のＨＤＤか判定し、同一のＨＤＤか判定する。
【００５２】
上述した方法により、現在装着されているＨＤＤが前回と異なると判定された場合は（Ｓ１０３でＮｏ）、ＣＰＵ１０５は、ステップＳ１０４において、図５に示すように操作部１０８を介してＨＤＤ誤装着の警告を表示（報知）する。これにより、前回装着されていたＨＤＤへ交換するよう促す。
【００５３】
図５は、ＨＤＤ誤装着の警告表示の一例を示す図である。
【００５４】
図５のような警告表示５０１により、ユーザはＨＤＤを間違って装着していたことに気付くことができる。
【００５５】
なお、ユーザは、「はい」ボタン５０２をタッチ指示することにより、ＨＤＤを交換することなくこのままの状態で起動することを指示できる。また、ユーザは、「いいえ」ボタン５０３をタッチ指示することにより、ＨＤＤを正しいＨＤＤに交換することを指示できる。
【００５６】
以下、図２のフローチャートの説明に戻る。
【００５７】
次に、ＣＰＵ１０５は、ステップＳ１０５において、正しいＨＤＤに交換されたことを検知すると、ステップＳ１０６に処理を進める。以下、Ｓ１０５について詳細に説明する。ＣＰＵ１０５は、警告表示５０１（図５）で「いいえ」ボタン５０３が指示されたことを検知すると、ＨＤＤの交換を待機する。そして、ＣＰＵ１０５は、ＨＤＤが交換されたことを検知すると、上述したＳ１０３と同様の処理により交換されたＨＤＤが正しいＨＤＤであるか判定する。そして、交換されたＨＤＤが正しいＨＤＤであると判定した場合には、ＣＰＵ１０５は、該ＨＤＤのＳＭＡＲＴ情報をリードしてメモリ１０６内の作業領域に記憶し、ステップＳ１０６に処理を進める。
【００５８】
なお、ＣＰＵ１０５は、警告表示５０１（図５）で「いいえ」ボタン５０３の指示を検知した際、このまま本フローチャートの処理を終了し、画像形成装置１０１の電源を切断し、ユーザにＨＤＤを交換させるように構成してもよい。この場合、ユーザは、正しいＨＤＤへ交換する作業を行い、画像形成装置１０１に再度電源投入することとなる。これにより、再度、本フローチャートの処理が実行され、正しいＨＤＤと判定される（Ｓ１０３でＹｅｓとなる）。
【００５９】
なお、本フローチャートには示していないが、正しいＨＤＤに交換することなくこのまま装置を起動する（警告表示５０１（図５）で「はい」ボタン５０２が指示された）と判定した場合、ＣＰＵ１０５は、他の処理を実行する。例えば、現在装着されているＨＤＤのいずれか片方のみが前回と異なるものであって、警告表示５０１（図５）で「はい」ボタン５０２が指示された場合、ＣＰＵ１０５は、後述する図８のＳ２０６以降の処理を実行する。なお、この処理については第２実施形態にて説明する。また、現在装着されている全てのＨＤＤが前回と異なるものであって、警告表示５０１（図５）で「はい」ボタン５０２が指示された場合、ＣＰＵ１０５は、認証されたユーザからの指示に応じて現在装着されているＨＤＤでＲＡＩＤ１の構築を行ってもよい。以下、図２に示されるステップの説明に戻る。
【００６０】
次に、ステップＳ１０６では、ＣＰＵ１０５は、ＨＤＤ１０９，１１２のＳＭＡＲＴ情報の中の項目の１つであるＨＤＤの電源を投入した回数（Device Power Cycle Count）を確認する。そして、ＣＰＵ１０５は、ＨＤＤ１０９，１１２について、ＨＤＤの電源を投入した回数が前回起動時と今回とで連続しているか判定する。詳細には、ＣＰＵ１０５は、今回（今回の電源投入時に）確認したＨＤＤの電源投入回数（今回電源投入回数）と、前回起動時（前回の電源投入時）にメモリ１０６に記憶した電源投入回数（前回電源投入回数）が、「今回電源投入回数＝前回電源投入回数＋１」という特定の関係か判定する。なお、ＣＰＵ１０５は「今回電源投入回数＝前回電源投入回数＋１」の関係である場合、前回から今回電源が投入されるまでＨＤＤへの電源投入が無かった（即ち、不正なアクセスは行われなかったと）と判定する。以下、上記特定の関係（前回電源投入回数に１を加算したものが今回電源投入回数と一致する関係）を以下「連続している」という。
【００６１】
そして、ＣＰＵ１０５は、全てのＨＤＤの電源投入回数が前回と今回で連続していると判定した場合には（Ｓ１０６でＹｅｓ）、ＨＤＤ１０９，１１２のいずれについても不正なアクセスは行われなかったと判断し、ステップＳ１０７に処理を進める。
【００６２】
ステップＳ１０７では、ＣＰＵ１０５は、上記Ｓ１０２でＨＤＤ1０９，１１２から新しく取得したＳＭＡＲＴ情報をメモリ１０６（ＲＯＭ等の不揮発性のメモリ、若しくは、電池でバックアップされたＳＲＡＭ等の揮発性メモリ）に記憶（更新）する。次に、ステップＳ１０８において、ＣＰＵ１０５は、画像形成装置１０１を起動し、本フローチャートの処理を終了する。これにより、画像形成装置１０１は待機状態となり、画像形成装置１０１の各種機能が利用可能となる。
【００６３】
一方、ステップＳ１０６にて、少なくともいずれかのＨＤＤの電源投入回数が前回と今回で連続でないと判断した場合（Ｓ１０６でＮｏ）、ＣＰＵ１０５は、少なくともいずれかについても不正なアクセスは行われたと判断し、ステップＳ１０９に処理を進める。
【００６４】
以下、いずれかのＨＤＤの電源を投入した回数が、連続でない（不連続な）場合について説明する。
【００６５】
まず、ステップＳ１０９では、ＣＰＵ１０５は、ディスクアレイ制御装置１１１に接続されたＨＤＤの全てについて電源を投入した回数が不連続か判断する。そして、全ＨＤＤの電源を投入した回数が不連続であると判断した場合には（Ｓ１０９でＹｅｓ）、全ＨＤＤの信頼性を確保できないと判断し、ＣＰＵ１０５は、ステップＳ１１５に処理を進める。
【００６６】
ステップＳ１１５では、ＣＰＵ１０５は、図６に示すように操作部１０８を介してＨＤＤの電源を投入した回数が不連続だった（ＨＤＤに不正なアクセスは行われた）旨を利用者に報知する。また、ＣＰＵ１０５は、インタフェース１０７を介して予めＳＲＡＭ等のメモリ１０６に登録されたメールアドレス（例えば、装置の管理者のアドレス）宛てに警告内容を送信することで、ユーザに警告を行うようにしてもよい。
【００６７】
図６は、ＨＤＤの電源を投入した回数が不連続だった旨の警告表示の一例を示す図である。
【００６８】
図６のような警告表示６０１により、ユーザはＨＤＤに不正なアクセスは行われたことに気付くことができる。この警告表示６０１に示すように、画像形成装置１０１は、前回の電源投入時にメモリ１０６に記憶したＨＤＤの電源投入回数と、今回の電源投入時に読取ったＨＤＤの電源投入回数が、連続でなかったＨＤＤを特定可能な情報をユーザに報知する。
【００６９】
なお、ユーザは、「はい」ボタン６０２をタッチ指示することにより、このままの状態で画像形成装置１０１を起動することを指示できる。また、ユーザは、「いいえ」ボタン６０３をタッチ指示することにより、画像形成装置１０１の起動を中止することを指示できる。
【００７０】
以下、図２のフローチャートの説明に戻る。
【００７１】
ステップＳ１１６において、ＣＰＵ１０５は、このまま起動する旨の指示がなされたか否かを判定する。そして、起動を中止する旨の指示がなされた（「いいえ」ボタン６０３が指示された）と判断した場合には（Ｓ１１６でＮｏ）、ＣＰＵ１０５は、装置を起動することなく、そのまま本フローチャートの処理を終了し、画像形成装置１０１の電源を切断する。これは、ＨＤＤのデータが改ざんされたり、不正なプログラムが実装されたりすることで、装置に危害を及ぼす可能性があるためである。
【００７２】
なお、ＨＤＤ１０９，１１２がＲＡＩＤ２以外のＲＡＩＤを構成している場合や、ＲＡＩＤの構成を取らずに動作している場合は、１つでもＨＤＤの電源を投入した回数が不連続な時点で（Ｓ１０６でＮｏと判断した時点で）、Ｓ１１５，Ｓ１１６を実行する。この場合、ＣＰＵ１０５は、Ｓ１１５でメッセージ６０１を操作部１０８に表示をした後、ユーザにこのまま装置を起動するか否かの確認を行わず（ボタン６０２，６０３は非表示）、本フローチャートの処理を終了し、画像形成装置１０１の電源を切断してもよい。
【００７３】
一方、上記ステップＳ１１６において、そのまま起動する旨の指示がなされた（「はい」ボタン６０２が指示された）と判断した場合には、ＣＰＵ１０５は、後述するステップＳ１１２に処理を進める。
【００７４】
一方、上記Ｓ１０９において、ディスクアレイ制御装置１１１に接続されたＨＤＤに電源を投入した回数が連続なものがあると判断した場合（Ｓ１０９でＮｏ）、信頼性を確保したＨＤＤが存在すると判断し、ＣＰＵ１０５は、ステップＳ１１０に処理を進める。
【００７５】
以下、プライマリＨＤＤかセカンダリＨＤＤのどちらか片方の電源投入回数が不連続だった場合（Ｓ１０９でＹｅｓの場合）について説明する。
【００７６】
まず、ステップＳ１１０において、ＣＰＵ１０５は、回数が正しい（電源投入回数が連続となる）ＨＤＤをプライマリＨＤＤとするように設定する。詳細には、ＣＰＵ１０５は、セカンダリＨＤＤの回数が不正（不連続）だった場合は、ＣＰＵ１０５は、プライマリＨＤＤとセカンダリＨＤＤの機能を維持する。即ち、現在プライマリＨＤＤとして設定されているＨＤＤをそのままプライマリＨＤＤとし、現在セカンダリＨＤＤとして設定されているＨＤＤをそのままセカンダリＨＤＤとするようにディスクアレイ制御装置１１１に設定する。
【００７７】
一方、プライマリＨＤＤの回数が不正（不連続）だった場合は、ＣＰＵ１０５は、セカンダリＨＤＤとプライマリＨＤＤの機能を入れ替える。即ち、現在プライマリＨＤＤとして設定されているＨＤＤをセカンダリＨＤＤとし、現在セカンダリＨＤＤとして設定されているＨＤＤをプライマリＨＤＤとするようにディスクアレイ制御装置１１１に設定する。
【００７８】
このように、回数が正しいＨＤＤをプライマリＨＤＤに設定することで、不正なアクセスが行われた可能性のあるＨＤＤへのリードアクセスが行われなくなる。また、この時に、２台のＨＤＤの整合性チェックを行って、実際に不正アクセスがあったか否かを調べたり、データの整合性を整えるように構成しても良い。このデータの整合性を行う際も、回数が正しいＨＤＤをプライマリＨＤＤに設定することで、不正なアクセスが行われた可能性のあるＨＤＤのデータを、回数が正しいＨＤＤのデータで上書きすることとなるため、信頼性の向上を図ることができる。
【００７９】
次に、ステップＳ１１２において、ＣＰＵ１０５は、ＨＤＤ1０９、１１２の新しく取得した（上記Ｓ１０２で取得した）ＳＭＡＲＴ情報をメモリ１０６に記憶（ＳＭＡＲＴ情報更新）する。
【００８０】
また、ステップＳ１１３において、ＣＰＵ１０５は、プライマリＨＤＤからプログラムを読み出して、読み出されたプログラムを実行することにより画像形成装置１０１を起動する。
【００８１】
装置の起動後、ステップＳ１１４において、ＣＰＵ１０５は、図７のように操作部１０８を介して、ＨＤＤの電源を投入した回数が不連続だった旨を利用者に報知することで、ユーザに警告を行う。また、ＣＰＵ１０５は、インタフェース１０７を介して予めＳＲＡＭ等のメモリ１０６に登録されたメールアドレス（例えば、装置の管理者のアドレス）宛てに警告内容を送信することで、ユーザに警告を行ってもよい。
【００８２】
図７は、ＨＤＤの電源を投入した回数が不連続だった旨の警告表示の一例を示す図である。
【００８３】
図７に示すように、画像形成装置１０１は、前回の電源投入時にメモリ１０６に記憶したＨＤＤの電源投入回数と、今回の電源投入時に読取ったＨＤＤの電源投入回数が、連続でなかったＨＤＤを特定可能な情報をユーザに報知する。
【００８４】
なお、１つでもＨＤＤの電源を投入した回数が不連続な時点で（Ｓ１０６でＮｏと判断した時点で）、ＣＰＵ１０５は、メモリ１０６に登録されたメールアドレス（例えば、装置の管理者のアドレス）宛てに警告内容を送信するように構成してもよい。
【００８５】
また、日時と警告内容を装置のメモリ１０６に記録しておき、操作部１０８又はインタフェース１０７を介して、いつ・どのような警告があったか一覧表示できるようにしてもよい。
【００８６】
なお、ＨＤＤへ不正なアクセスが行われた回数は、「ＨＤＤへ不正なアクセスが行われた回数＝今回電源投入回数−（前回電源投入回数＋１）」としてＣＰＵ１０５が算出するものとする。
【００８７】
以上示したように、安価で（情報処理装置全体の大幅なコストアップを招くことなく）かつ消費電力の増加を招くことなくＨＤＤへの不正アクセスを検知することができる。例えば、誤って前回起動時と別のＨＤＤが装着された場合でも、ＨＤＤへの不正アクセスを検知することができ、ＨＤＤへの不正アクセスを効果的に抑止、発見するができる。よって、誤って前回起動時と別のＨＤＤが装着された場合でも、ユーザは装置からの警告に基づいて正しいＨＤＤに交換することができる。
【００８８】
また、万一データ漏洩が発生した場合にも、いつ、どのＨＤＤから情報漏洩したかを特定することができる。
【００８９】
〔第２実施形態〕
本発明の第２実施形態について図８のフローチャートを用いて説明する。本実施形態においては、ＨＤＤの故障などにより、前回と同じＨＤＤが使用できず、いずれか片方に別のＨＤＤを装着して再構築を行う場合について説明する。
【００９０】
図８は、本発明の第２実施形態における画像形成装置１０１の動作を示すフローチャートである。
【００９１】
まず、画像形成装置１０１に電源が投入されると（Ｓ２０１）、ＣＰＵ１０５はメモリ１０６に格納されているブートプログラムを起動する。以下、ＣＰＵ１０５はこのプログラムを実行することによりＳ２０２以降の処理を実現する。
【００９２】
ステップＳ２０２では、ＣＰＵ１０５は、ＨＤＤ１０９，１１２のＳＭＡＲＴ情報をリードしてメモリ１０６の作業領域に記憶する。
【００９３】
なお、上記ステップＳ２０２のタイミングで、画像形成装置１０１にＨＤＤが装着されていない場合には、ＣＰＵ１０５は、操作部１０８にその旨を表示してユーザにＨＤＤの装着を促す。本実施形態では、ここで、プライマリかセカンダリのどちらか片方のＨＤＤに、前回とは異なるＨＤＤが装着される場合について説明する。ＣＰＵ１０５は、ＨＤＤが装着されたことを検知すると、装着されたＨＤＤからＳＭＡＲＴ情報を読み出してメモリ１０６の作業領域に記憶するものとする。
【００９４】
次に、ステップＳ２０３において、ＣＰＵ１０５は、図２のＳ１０３と同様の方法により、今回のＨＤＤが前回のＨＤＤと同じＨＤＤか否かを判定する。上述したように、本実施形態では、プライマリかセカンダリのどちらか片方のＨＤＤに前回とは異なるＨＤＤを装着したため、ＣＰＵ１０５は、片方のＨＤＤに前回と異なるＨＤＤが装着されたと判定し、ステップＳ２０４に処理を進める。
【００９５】
ステップＳ２０４では、ＣＰＵ１０５は、図５に示したように操作部１０８を介してＨＤＤ誤装着（挿し間違え）の警告を表示する。ただし、メッセージ５０１には、例えば「ＨＤＤ−Ａに、前回と異なるＨＤＤが装着されています。ＨＤＤを確認して下さい。」等のいずれか片方のＨＤＤが誤装着である旨のメッセージが表示されるものとする。
【００９６】
なお、本実施形態では、ＨＤＤの故障などにより、前回と同じＨＤＤが使用できず、いずれか片方に別のＨＤＤを装着した場合を示す。このため、ユーザは、警告表示５０１（図５）で「はい」ボタン５０２を指示して、ＨＤＤを交換することなくこのまま起動することを指示することとなる。
【００９７】
ＣＰＵ１０５は、ステップＳ２０５において、このまま起動が選択されたことを検知すると、ステップＳ２０６に処理を進める。
【００９８】
なお、上述したように、本実施形態においては、いずれか片方に前回と別のＨＤＤを装着して再構築する場合について説明する。このため、本フローチャートには示していないが、正しいＨＤＤに交換する旨の指示（警告表示５０１（図５）で「いいえ」ボタン５０３が指示）され、正しいＨＤＤに交換されたことを検知した場合、ＣＰＵ１０５は、図２のＳ１０６以降の処理を実行する。なお、この処理については第１実施形態にて説明済みである。また、現在装着されている全てのＨＤＤが前回と異なるものであって、警告表示５０１（図５）で「はい」ボタン５０２が指示された場合、ＣＰＵ１０５は、認証されたユーザからの指示に応じて現在装着されているＨＤＤでＲＡＩＤ１の構築を行ってもよい。以下、図８に示されるステップの説明に戻る。
【００９９】
次に、ステップＳ２０６では、ＣＰＵ１０５は、前回と同じＨＤＤをプライマリＨＤＤに、前回と異なるＨＤＤ（今回新しく装着したＨＤＤ）をセカンダリＨＤＤになるようにディスクアレイ制御装置１１１に設定する。
【０１００】
次に、ステップＳ２０７において、ＣＰＵ１０５は、プライマリＨＤＤのＳＭＡＲＴ情報の中の項目の１つであるＨＤＤの電源を投入した回数（Device Power Cycle Count）を確認する。そして、ＣＰＵ１０５は、プライマリＨＤＤの電源を投入した回数が前回起動時と今回とで連続しているか判定する。即ち、ＣＰＵ１０５は、今回確認したプライマリＨＤＤの電源投入回数（今回電源投入回数）と、前回起動時にメモリ１０６に記憶したプライマリＨＤＤの電源投入回数（前回電源投入回数）が、「今回電源投入回数＝前回電源投入回数＋１」という特定の関係か判定する。
【０１０１】
そして、ＣＰＵ１０５は、プライマリＨＤＤの電源投入回数が前回と今回で連続していない（不連続）と判定した場合には（Ｓ２０７でＮｏ）、ＣＰＵ１０５は、ステップＳ２０８に処理を進める。
【０１０２】
ステップＳ２０８では、ＣＰＵ１０５は、今回起動時のプライマリＨＤＤへの通電時間の合計の増加（前回起動時のプライマリＨＤＤへの通電時間の合計からの増加）が所定時間以内か否かを判定する。なお、ＨＤＤへの通電時間の合計とは、ＨＤＤに電源が投入された時間の合計を示す。以下、この判定を行う理由について説明する。
【０１０３】
近年、ＨＤＤの容量は大容量化しており、ＨＤＤのデータをコピーするには、数十分〜数時間を要する。そこで、ＨＤＤの電源投入回数と、さらにＨＤＤへの通電時間（電源が投入された時間）の合計を利用することにより、第１実施形態で示したようにＨＤＤの電源投入回数のみでＨＤＤへの不正アクセスを判断するよりも、正確に不正アクセスがあったか否かの判断を行うことを可能にする。
【０１０４】
具体的には、「今回電源投入回数」が「前回電源投入回数＋１回」より大きい値であった場合、プライマリＨＤＤについて、ＳＭＡＲＴ情報の中の項目の１つであるＨＤＤへの通電時間の合計（Power-On Hours）を確認する。詳細には、ＣＰＵ１０５は、今回確認したＨＤＤへの通電時間の合計（今回通電時間）と、前回起動時にメモリ１０６に記憶したＨＤＤへの通電時間（前回通電時間）とを比較する。そして、前回通電時間に比べ、今回通電時間の増加時間が、所定の時間以下であった場合（Ｓ２０８でＹｅｓ）、ＣＰＵ１０５は、挿し間違えや瞬間的な電源の投入などで、電源投入回数がずれた可能性が高く、不正なアクセスは無かったと判断する。そして、不正アクセスの警告表示は行わない。ただし、不正アクセスの警告表示は行わなくても、投入回数が不一致だった旨の表示を操作部１０８は行ってもよい。その後、ＣＰＵ１０５は、不正アクセスは無かったと判断したので、ステップＳ２０９において、新しいＳＭＡＲＴ情報をメモリ１０６に記憶し、ステップＳ２１１に処理を進める。
【０１０５】
なお、上記所定の時間として設定する値としては、１０分程度が良い。１０分であれば、ＨＤＤ内のデータを解析してデータを盗むには時間が短すぎるが、ＨＤＤを挿し間違えた場合にＨＤＤを交換する時間としては十分な長さであると考えられる。
【０１０６】
しかし、ここで１つ問題が生じる。それは、通常、ＳＭＡＲＴ情報の中の項目の１つであるＨＤＤへの通電時間の合計（Power-On Hours）は１時間単位であり、現状では、時間の単位が長すぎて、不正アクセスか否か判断するのが難しい点である。
【０１０７】
そこで、装置が起動している間、定期的にＨＤＤの通電時間の合計をチェックすることで、細かい通電時間を算出（計時）し、警告を表示する方法について説明する。
【０１０８】
具体的には、ＣＰＵ１０５がＨＤＤの通電時間の合計（Power-On Hours）を定期的に読出し、ＨＤＤの通電時間の合計が１時間アップした時点をスタートとして、その後、例えば２０分毎に、ＨＤＤの通電時間の合計をチェックするように設定する。この場合、上記スタート時点から２回目（４０分後）のチェックまでは通電時間の合計は変わらず、３回目（６０分後）のチェックで、はじめてＳＭＡＲＴ情報内の通電時間の合計が１時間アップするはずである。なお、ＣＰＵ１０５は、上記スタート時点からのチェック回数をメモリ１０６（ＲＯＭ等の不揮発性のメモリ、若しくは、電池でバックアップされたＳＲＡＭ等の揮発性メモリ）に格納し、ＨＤＤの通電時間の合計が１時間アップする毎にクリアする。ただし、メモリ１０６内のチェック回数は、電源が落された後も保持され、電源の投入／遮断を挟んでも継続して使用するようにする。
【０１０９】
ここで、もし２回目（４０分後）のチェック時に、ＳＭＡＲＴ情報内の通電時間の合計が１時間アップした場合、ＣＰＵ１０５は、このＨＤＤが、別の装置に装着されて２０分〜４０分間、電源投入されたと判断する。即ち、この場合、前回の電源投入時にメモリ１０６（揮発性メモリ）に記憶した時間と今回の電源投入時に計時した時間の差が２０分〜４０分間あり、所定時間（例えば１０分間）を超えると判断する。よって、この場合、その旨の警告を行う。以上のように、ＨＤＤの通電時間の合計を算出（計時）してＳ２０８の判定を行う。
【０１１０】
ただし、この方法は、通電時間の合計を算出するまでに、最大で４０分程かかってしまう。そのため、Ｓ２０８の処理で最大４０分程停止してしまうこととなる。よって、とりあえず、プライマリＨＤＤのみを用いるようにして画像形成装置１０１を起動し、起動後、通電されていた時間が判明した時点で、警告を表示したり、メールを送信するように構成する。なお、ＣＰＵ１０５は、通電時間の合計を算出してＳ２０８の判断が終わるまで、ＲＡＩＤ１の再構成（プライマリＨＤＤのデータをセカンダリＨＤＤにコピー）を禁止するように制御する。これにより、プライマリＨＤＤのデータが新たに装着されたＨＤＤに不正にコピーされてしまうことを防止できるとともに、画像形成装置１０１を早期に起動して使用することが可能となる。よって、不正アクセスの防止と、ユーザの利便性を備えた画像形成装置を提供することができる。
【０１１１】
なお、上記ステップＳ２０８において、プライマリＨＤＤへの通電時間の合計の増加が所定時間より長いと判定した場合には（Ｓ２０８でＮｏ）、ＣＰＵ１０５は、不正アクセスが行われた可能性が高いと判断する。そして、ＣＰＵ１０５は、プライマリＨＤＤ、セカンダリＨＤＤの両方のＨＤＤの信頼性が確保できないため、再構築を禁止する。そして、ＣＰＵ１０５は、ステップＳ２１０において、図７に示したように操作部１０８を介して、ＨＤＤの電源を投入した回数が不連続だった旨を利用者に報知することで、ユーザに警告を行う。また、ＣＰＵ１０５は、インタフェース１０７を介して予めＳＲＡＭ等のメモリ１０６に登録されたメールアドレス（例えば、装置の管理者のアドレス）宛てに警告内容を送信することで、ユーザに警告を行ってもよい。その後、ＣＰＵ１０５は、画像形成装置１０１を起動することなく、本フローチャートの処理を終了し、画像形成装置１０１の電源を切断する。
【０１１２】
一方、上記Ｓ２０７において、プライマリＨＤＤの電源を投入した回数が前回起動時と今回とで連続していると判定した場合には（Ｓ２０７でＹｅｓ）、ＣＰＵ１０５は、プライマリＨＤＤに不正なアクセスはなかったと判断し、ステップＳ２１１に処理を進める。
【０１１３】
ステップＳ２１１では、ＣＰＵ１０５は、ユーザ認証処理を行う。例えば、パスワードによるユーザ認証処理や、指紋・静脈認証等の不図示の生体認証装置を使ったユーザ認証処理を行う。
【０１１４】
そして、ステップＳ２１２において、ステップＳ２１１のユーザ認証に成功する（認証ＯＫ）まで待機し、ユーザ認証に成功したと判断した場合には、ステップＳ２１３において、ＲＡＩＤ１の再構築処理を行う。これにより、データの再構築を許可されている人以外が再構築を行うことを防止することができる。
【０１１５】
なお、ステップＳ２１３の再構築処理では、ＣＰＵ１０５は、前回と同じＨＤＤ（プライマリＨＤＤ）のデータを前回と別のＨＤＤ（セカンダリＨＤＤ）へコピーする。
【０１１６】
その後、ステップＳ２１４において、ＣＰＵ１０５は、ＨＤＤ１０９，１１２のＳＭＡＲＴ情報を新たに取得し、メモリ１０６（ＲＯＭなどの不揮発性のメモリ、若しくは、電池でバックアップされたＳＲＡＭなどの揮発性メモリ）に格納する（ＳＭＡＲＴ情報更新）。
【０１１７】
そして、ステップＳ２１５において、ＣＰＵ１０５は、画像形成装置１０１を起動し、本フローチャートの処理を終了する。これにより、画像形成装置１０１は待機状態となり、画像形成装置１０１の各種機能が利用可能となる。
【０１１８】
なお、ＨＤＤの容量にもよるが、再構築には時間を要するため、再構築を行いながら同時にプライマリＨＤＤを使って装置を起動しても良いし、再構築を省略して装置を起動しても良い。なお、再構築を省略して装置を起動した場合、装置が使用されていない間（例えば、省電力モードの時）に、ＲＡＩＤ１の再構築を行うように構成してもよい。
【０１１９】
ただし、これらいずれの場合も、ＲＡＩＤの冗長性が無い状態で装置を使用するため、操作部１０８を介してその旨をユーザに警告し、ユーザに注意を促すことが望ましい。
【０１２０】
以上説明したように、本実施形態によれば、安価でかつ消費電力の増加を招くことなくＨＤＤへの不正アクセスを検知することができる。例えば、いずれか片方のＨＤＤに前回起動時と別のＨＤＤが装着された場合であっても、ＨＤＤへの不正アクセスを効果的に抑止、発見することができる。よって、ＨＤＤの故障などにより、前回と同じＨＤＤが使用できず、このＨＤＤの変わりに別のＨＤＤを装着した場合でも、ユーザは装置からの警告に従って、安全にＲＡＩＤの再構築を行うことができる。
【０１２１】
また、万一データ漏洩が発生した場合にも、いつ、どこＨＤＤから情報漏洩したかを特定することができる。
【０１２２】
〔第３実施形態〕
本発明の第３実施形態について、図９のフローチャートを用いて説明する。本実施形態においては、画像形成装置１０１が動作状態で、片方のＨＤＤが取り外された場合の処理について説明する。
【０１２３】
図９は、本発明の第３実施形態における画像形成装置１０１の動作を示すフローチャートである。
【０１２４】
まず、画像形成装置１０１に電源が投入されると（Ｓ３０１）、ＣＰＵ１０５はメモリ１０６に格納されているブートプログラムを起動する。以下、ＣＰＵ１０５が、このプログラムを実行することにより、図２や図３に示したような処理を実行して、画像形成装置１０１が起動状態（動作状態）に移行する。なお、ＲＡＩＤ１は、片方のＨＤＤからのみリードを行うため、動作中に片方のＨＤＤを取り外すことが可能である。
【０１２５】
その後、画像形成装置１０１の動作中（起動中）に、ディスクアレイ制御装置１１１が、ＨＤＤ１０９，１１２のどちらかのＨＤＤが取り外されたことを検知すると、その旨をＣＰＵ１０５に通知する。これにより、ＣＰＵ１０５は、片方のＨＤＤが取り外されたことを検知し（Ｓ３０２）、ステップＳ３０３に処理を進める。
【０１２６】
ステップＳ３０３では、ＣＰＵ１０５は、残されたＨＤＤをプライマリＨＤＤとするようにディスクアレイ制御装置１１１に設定する。
【０１２７】
その後、ディスクアレイ制御装置１１１は、ＨＤＤが取り外されたスロットへＨＤＤが装着されたことを検知すると、その旨をＣＰＵ１０５に通知する。これにより、ＣＰＵ１０５は、取り外されたスロットへＨＤＤが装着されたことを検知する（Ｓ３０４）。そして、ＣＰＵ１０５は、装着が検知されたＨＤＤをセカンダリＨＤＤとするようにディスクアレイ制御装置１１１に設定し、ステップＳ３０５に処理を進める。
【０１２８】
次に、ステップＳ３０５において、ＣＰＵ１０５は、図２のＳ１０３と同様の方法により、上記Ｓ３０４で装着が検知されたＨＤＤが、前回のＨＤＤ（上記Ｓ３０２で取り外しが検知されたＨＤＤ）と同じＨＤＤか否かを判定する。
【０１２９】
ここで、前回とは別のＨＤＤが装着されたと判断した場合（Ｓ３０５でＮｏ）、ＣＰＵ１０５は、元のＨＤＤが故障して交換されたり、データのバックアップを取るために別のＨＤＤを装着したと考えられるので、ＲＡＩＤ１の再構築を行う（Ｓ３０６〜Ｓ３０８）。この再構築のステップ（Ｓ３０６〜Ｓ３０８）については、図２のＳ２１１〜Ｓ２１３と同じ処理であるため説明は省略する。
【０１３０】
一方、前回と同じＨＤＤが装着されたと判断した場合（Ｓ３０５でＹｅｓ）、ＣＰＵ１０５は、ステップＳ３０９に処理を進める。
【０１３１】
ステップＳ３０９では、ＣＰＵ１０５は、装着されたＨＤＤのＳＭＡＲＴ情報をリードして、メモリ１０６の作業領域に記憶する。
【０１３２】
次に、ステップＳ３１０において、ＣＰＵ１０５は、装着されたＨＤＤのＳＭＡＲＴ情報の中の項目の１つであるＨＤＤのスピンドルモータが回転した回数(Start/Stop Count)を確認する。本実施形態では、前述の第１，２実施形態で用いたＨＤＤの電源を投入した回数の代わりに、スピンドルモータが回転した回数(Start/Stop Count)（即ち、ＨＤＤが動作及び停止した回数）を用いるものとする。そして、ＨＤＤの電源を投入した回数と同じく、スピンドルモータが回転した回数が連続だった場合は、取り外されていた間に不正なアクセスは無かったと判定するものとする。ＣＰＵ１０５は、装着されたＨＤＤについて、ＨＤＤのスピンドルモータ回転回数が前回起動時と今回とで連続しているか判定する。
【０１３３】
詳細には、ＣＰＵ１０５は、今回確認したＨＤＤのスピンドルモータ回転回数（今回スピンドルモータ回転回数）と、前回起動時にメモリ１０６に記憶したスピンドルモータ回転回数（前回スピンドルモータ回転回数）が、「今回スピンドルモータ回転回数＝前回スピンドルモータ回転回数＋１」という特定の関係か判定する。なお、ＣＰＵ１０５は「今回スピンドルモータ回転回数＝前回スピンドルモータ回転回数＋１」の関係である場合、前回から今回電源が投入されるまでＨＤＤへの不正なアクセスが無かったと判定する。以下、上記特定の関係（前回スピンドルモータ回転回数に１を加算したものが今回スピンドルモータ回転回数と一致する関係）を以下「連続している」という。
【０１３４】
そして、ＣＰＵ１０５は、装着されたＨＤＤのスピンドルモータ回転回数が前回と今回で連続していると判定した場合には（Ｓ３１０でＹｅｓ）、装着されたＨＤＤに対して不正なアクセスは行われなかったと判断し、本フローチャートの処理を終了する。そして、画像形成装置１０１は待機状態となり、画像形成装置１０１の各種機能が利用可能となる。
【０１３５】
一方、ＣＰＵ１０５は、装着されたＨＤＤのスピンドルモータ回転回数が前回と今回で連続していないと判定した場合には（Ｓ３１０でＮｏ）、装着されたＨＤＤに対して不正なアクセスは行われたと判断し、ステップＳ３１１に処理を進める。
【０１３６】
ステップＳ３１１では、ＣＰＵ１０５は、図１０に示すように操作部１０８を介して、その旨（メッセージ１００１）を利用者に報知する。この時、図２のＳ１１４と同じように、ＣＰＵ１０５は、インタフェース１０７を介して予め登録されたメールアドレス宛てに警告内容を送信したり、日時と警告内容を装置のメモリ１０６に記録して、あとで確認できるようにしても良い。
【０１３７】
図１０は、本発明の第３実施形態における警告表示の一例を示す図である。
【０１３８】
なお、ユーザは、「はい」ボタン１００２をタッチ指示することにより、２つのＨＤＤの整合性のチェックを行うことを指示できる。また、ユーザは、「いいえ」ボタン１００３をタッチ指示することにより、２つのＨＤＤの整合性のチェックを行わないことを指示できる。なお、上記ステップＳ３０９でＮｏの場合、データの不整合が発生している可能性があるため、データの整合性チェックを行う方が望ましい。
【０１３９】
以下、図９のフローチャートの説明に戻る。
【０１４０】
次に、ステップＳ３１２において、ＣＰＵ１０５は、２つのＨＤＤの整合性のチェックを行うことが指示されたか否かを判断する。ＣＰＵ１０５は、警告表示（図５）で「いいえ」ボタン１００３が指示されたと検知した場合、２つのＨＤＤの整合性のチェックを行わないことが指示されたと判断し、そのまま本フローチャートの処理を終了する。その後、画像形成装置１０１は待機状態となり、画像形成装置１０１の各種機能が利用可能となる。
【０１４１】
一方、上記ステップＳ３１２において、ＣＰＵ１０５は、警告表示（図５）で「はい」ボタン１００２が指示されたと検知した場合、２つのＨＤＤの整合性のチェックを行うことが指示されたと判断し、ステップＳ３１３に処理を進める。
【０１４２】
ステップＳ３１３では、ＣＰＵ１０５は、２つのＨＤＤの整合性のチェックを行い、本フローチャートの処理を終了する。なお、上記整合性チェックの結果が「整合」であった場合、画像形成装置１０１の使用を許可し、一方、「不整合」であった場合、画像形成装置１０１の使用を禁止するように構成してもよい。
【０１４３】
以上説明したように、本実施形態によれば、安価でかつ消費電力の増加を招くことなく、ＨＤＤへの不正アクセスを検知することができる。例えば、装置動作状態で、片方のＨＤＤが取り外された場合であっても、ＨＤＤへの不正アクセスを効果的に抑止、発見するができる。
【０１４４】
また、万一データ漏洩が発生した場合にも、いつ、どこＨＤＤから情報漏洩したかを特定することができる。
【０１４５】
〔第４実施形態〕
本発明の第１実施形態の変形例である第４実施形態について、図１２フローチャートを用いて説明する。
【０１４６】
第１実施形態は、ＨＤＤの電源を投入した回数が不連続だった場合に、その旨を報知することで警告をするものであった。また、その警告をしても、そのまま起動する旨の指示がされた場合は、そのまま起動させるものであった。
【０１４７】
ただし、ＨＤＤに画像形成装置１０１が実行可能なプログラムを記憶させておく構成をとる場合、ＨＤＤに記憶されたプログラムが不正に改竄されてしまうと、問題が生じる可能性がある。例えば、改竄されたプログラムを画像形成装置１０１が実行することにより、ＨＤＤに記憶された情報が外部装置に漏洩してしまう等の不具合が生じる可能性がある。
【０１４８】
このような問題を鑑みて、第４実施形態は、そのまま起動する旨の指示がされた場合に、ＨＤＤに記憶されたプログラムが改竄を受けていないかを検証し、その検証結果に基づいて適切に制御するものである。
【０１４９】
図１２は、図１に示した画像形成装置１０１の動作を示すフローチャートである。
【０１５０】
なお、図１２は、第１実施形態における図２のフローチャートの変形例である。図１２におけるステップＳ１２０１〜Ｓ１２１６は、図２におけるステップＳ１０１〜１１６と同様であるので説明を省略する。
【０１５１】
図１２では、ステップＳ１２１７〜Ｓ１２１９が新たに追加されているので、これらのステップにおける画像形成装置１０１の動作を下記に説明する。
【０１５２】
ステップＳ１２１６で、そのまま起動する旨の指示がなされた場合（「はい」ボタン６０２が指示された）、ＣＰＵ１０５は、ステップＳ１２１７へ処理を進める。一方、ステップＳ１２１６で、そのまま起動する旨の指示がなされない場合（「いいえ」ボタン６０３が指示された）、ＣＰＵ１０５は、図１２のフローを終了させる。
【０１５３】
ステップＳ１２１７において、ＣＰＵ１０５はＨＤＤに記録されている実行可能プログラムが何らかの改竄を受けていないかどうかを検証する。ステップＳ１２１７において検証されるプログラムには、画像形成装置１０１の機能を実現するためのプログラムが含まれる。改竄の有無を検証するのは、ＨＤＤへの不正アクセスにより、ＨＤＤに記録されたプログラムが正規のものであると信頼できない状態になっている可能性があるからである。
【０１５４】
ここで、ステップＳ１１７における検証方法について一例を説明する。改竄の有無の検証にはハッシュ関数を用いる。ハッシュ関数とは、与えられたデータを元にして短い数値を生成するための関数であり、ハッシュ関数に基づいて生成された値はハッシュ値と呼ばれる。一般的に、あるデータからハッシュ関数により生成されたハッシュ値は不可逆な値でありかつ、生成されるハッシュ値は与えられたデータによって異なる。ハッシュ関数に入力される２つのデータが同一ならば、それらから生成されるハッシュ値も等しい。
【０１５５】
そこで、画像形成装置１０１には、コントローラ１０４上のＳＲＡＭ等の不揮発性メモリにあらかじめ正規のプログラムをハッシュ関数に入力して生成されるハッシュ値を記憶しておく。そして、ステップＳ１１７においてＣＰＵ１０５はプライマリＨＤＤ及びセカンダリＨＤＤからそれぞれプログラムをメモリ上にデータとして読み込み、ハッシュ関数を用いてハッシュ値を計算する。正規のプログラムのハッシュ値と、ＨＤＤから読み出したプログラムのハッシュ値が等しいならば、ＣＰＵ１０５はプログラムに改竄は無いと判断する。一方、ハッシュ値が異なっているならば、なんらかの改竄を受けたものと判断する。
【０１５６】
もちろん、上述の検証手段はあくまで一例であって、上述とは異なる検証手段を用いても良い。例えば電子署名技術を利用し、ＨＤＤに記録した実行可能プログラムに電子署名を施し、その署名を検証する方法でもよい。また、ここでは検証をソフトウェアによって実現しＣＰＵ１０５で実行するものとしたが、改竄の有無を検証する専用のハードウェアを用いる構成でもよい。
【０１５７】
ステップＳ１２１８において、ＣＰＵ１０５はＨＤＤに記憶されたプログラムの検証結果に基づいて、プライマリＨＤＤとセカンダリＨＤＤの双方に改竄があるかどうかを判断する。ステップＳ１２１８での判断の結果、少なくとも１つ以上のＨＤＤにおいて改竄が認められない場合、ＣＰＵ１０５はステップＳ１２１９に処理を進める。一方、全てのＨＤＤに改竄があると判断された場合、ＨＤＤに記憶されたプログラムを実行せず、そのまま本フローチャートの処理を終了し、画像形成装置１０１の電源を切断する。
【０１５８】
ステップＳ１２１９で、ＣＰＵ１０５は改竄の認められないＨＤＤをプライマリＨＤＤに設定し、ステップＳ１２１２に処理を進める。この場合、ＣＰＵ１０５は、ステップＳ１２１３においてＨＤＤから読み出されたプログラムを用いて画像形成装置１０１を起動する。
【０１５９】
なお、ステップＳ１２１９において、少なくとも１つ以上のＨＤＤにおいて改竄検出された時、ＣＰＵ１０５はプログラムが改竄を受けた旨をユーザに報知するように構成してもよい。
【０１６０】
以上説明したように、第４実施形態によれば、ＨＤＤに記憶されたプログラムが改竄されて再び装着されるような場合に、改竄がされたプログラムを用いて画像形成装置１０１が起動してしまうことによる不具合を防止することができる。
【０１６１】
〔第５実施形態〕
本発明の第２実施形態の変形例である第５実施形態について、図１３フローチャートを用いて説明する。
【０１６２】
第２実施形態は、ＨＤＤの電源を投入した回数が不連続だった場合であっても、通電時間の増加が所定時間以内であれば警告をせずに画像形成装置１０１を起動させるものであった。
【０１６３】
ただし、ＨＤＤに画像形成装置１０１が実行可能なプログラムを記憶させておく構成をとる場合、ＨＤＤに記憶されたプログラムが不正に改竄されてしまうと、問題が生じる可能性がある。例えば、改竄されたプログラムを画像形成装置１０１が実行することにより、ＨＤＤに記憶された情報が外部装置に漏洩してしまう等の不具合が生じる可能性がある。
【０１６４】
このような問題を鑑みて、第５実施形態は、ＨＤＤの電源を投入した回数が不連続だった場合に、ＨＤＤに記憶されたプログラムが改竄を受けていないかを検証し、その検証結果に基づいて適切に制御するものである。
【０１６５】
図１３は、図１に示した画像形成装置１０１の動作を示すフローチャートである。
【０１６６】
なお、図１３は、第１実施形態における図８のフローチャートの変形例である。図１３におけるステップＳ１３０１〜Ｓ１３０７は、図８におけるステップＳ２０１〜２０７と同様であるので説明を省略する。また、図１３におけるＳ１３１０〜Ｓ１３１７は、図８におけるＳ２０８〜Ｓ２１５と同様であるので説明を省略する。
【０１６７】
図１３では、ステップＳ１３０８、Ｓ１３０９が新たに追加されているので、これらのステップにおける画像形成装置１０１の動作を下記に説明する。
【０１６８】
ステップＳ１３０８において、ＣＰＵ１０５はプライマリＨＤＤに記憶されているプログラムが何らかの改竄を受けていないかどうかを検証する。この段階では通電時間の増加に基づく不正アクセスの判断が完了していないため、プライマリＨＤＤは不正アクセスが疑われる状態である。よって、このステップにおいてＣＰＵ１０５は装置起動前にプログラムが改竄を受けていないかどうかを検証する。なお、改竄の有無を検証する方法については第４実施形態と同様であるので、説明を省略する。
【０１６９】
ステップＳ１３０９において、ＣＰＵ１０５はプライマリＨＤＤに記憶されたプログラムの検証結果に基づいて、プライマリＨＤＤに記憶されたプログラムが改竄されているかどうかを判断する。プライマリＨＤＤに記憶されたプログラムに改竄有りと判断された場合、ＣＰＵ１０５はステップＳ１３１２へ処理を進め、ユーザに警告する。一方、プライマリＨＤＤに記憶されたプログラム改竄は無いと判断された場合、ＣＰＵ１０５はステップＳ１３１０へ処理を進める。
【０１７０】
以上説明したように、第５実施形態によれば、ＨＤＤに記憶されたプログラムが改竄されて再び装着されるような場合に、改竄がされたプログラムを用いて画像形成装置１０１が起動してしまうことによる不具合を防止することができる。
【０１７１】
上述の第１実施形態では、誤って前回起動時と別のＨＤＤが装着された場合の処理について説明した。また、上述の第２実施形態では、いずれか片方に別のＨＤＤを装着した場合の処理について説明した。さらに、上述の第３実施形態では、装置が動作状態で、片方のＨＤＤが取り外された場合の処理について説明した。
【０１７２】
しかし、本発明は、これら第１〜３の実施形態に限定されるものではなく、第１〜３の実施形態に記載された構成を自由に組み合わせたものも、その範囲に含まれるものとする。例えば、第１，３実施形態に対して、第２実施形態に示した図８のステップＳ２０８の処理（ＨＤＤへの通電時間の増加が所定の時間以内か否かを判定するステップ）を追加した構成であってもよい。また、第１，２実施形態における、ＨＤＤの電源投入回数でＨＤＤへの不正アクセスを判定する構成を、スピンドルモータが回転した回数でＨＤＤへの不正アクセスを判定する構成に変更してもよい。また、これらの構成を組み合わせ、ＨＤＤの電源投入回数及びスピンドルモータが回転した回数でＨＤＤへの不正アクセスを判定する構成としてもよい。
【０１７３】
なお、上記各実施形態では、ＲＡＩＤ１についてのみ説明したが、ＲＡＩＤの構成を取ら無い場合や、ＲＡＩＤ１以外のＲＡＩＤ構成の場合においても、本発明を応用可能な範囲で用いることができる。
【０１７４】
また、上記各実施形態では、情報処理装置に着脱可能な記憶装置の例として、ハードディスク（磁気記憶装置）を用いて説明した。しかし、情報処理装置に着脱可能な記憶装置は、ハードディスク（磁気記憶装置）に限定されるものではなくその他の形式の記憶装置であってもよい。記憶装置の備えるコントローラが上位装置からの指示に関係なく当該記憶装置に関する特定の情報（記憶装置の電源ＯＮ／ＯＦＦ回数や、記憶装置の通電時間の合計等）を、当該記憶装置に記憶させる構成であれば、どのような記憶装置でも、本発明に適用可能である。
【０１７５】
以上の実施形態によれば、上位装置からの指示に関係なくＨＤＤのコントローラが自らＨＤＤに記録するＨＤＤに関する特定の情報（電源投入回数やスピンドルモータ回転回数等）を用いることで、ＨＤＤへの不正アクセスの有無を判断することができる。この結果、ＨＤＤへの不正アクセスを効果的に抑止、発見することができる。また、万一データ漏洩が発生した場合にも、いつ、どこのＨＤＤから情報漏洩したかを特定することができる。
【０１７６】
そして、装置の電源投入時に、ＨＤＤに関する情報が正しい方をプライマリＨＤＤとすることで、不正にアクセスが行われた可能性があるＨＤＤへリードを行わなくすることができる。さらに、整合性チェックにおいても、ＨＤＤに関する情報が正しい方のＨＤＤのデータを不正なＨＤＤへ上書きするため、より信頼性の向上を図ることができる。
【０１７７】
また、再構築を行う際も、プライマリＨＤＤのＨＤＤに関する特定の情報が不正な場合は、再構築を禁止し、さらに、プライマリＨＤＤのＨＤＤに関する特定の情報が正しい場合も、ユーザ認証を行うことで、不正なデータ複製を防止することができる。
【０１７８】
また、装置動作中に片方のＨＤＤが取り外され、同じＨＤＤが再び装着された場合も、装着されたＨＤＤのＨＤＤに関する特定の情報に基づいて、装置から取り外されていた間のＨＤＤへの不正なアクセスの有無を判定することができる。
【０１７９】
なお、上述の各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０１８０】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１８１】
以下、図１１に示すメモリマップを参照して、本発明に係る情報処理装置として画像形成装置１０１を機能させるためのプログラムを記録したコンピュータ読取り可能な記憶媒体（記録媒体）のメモリマップの構成について説明する。
【０１８２】
図１１は、本発明に係る情報処理装置として画像形成装置１０１を機能させるためのプログラムを記録したコンピュータ読取り可能な記憶媒体（記録媒体）のメモリマップを説明する図である。
【０１８３】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１８４】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１８５】
本実施形態における図２，図８，図９に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD-ROMやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１８６】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ（又はCPUやMPU）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１８７】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１８８】
したがって、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１８９】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD-ROM、CD-R、CD-RW、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
【０１９０】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１９１】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のプログラムそのものをハードディスク等の記憶媒体にダウンロードすることによっても供給できる。また、該ホームページから圧縮され自動インストール機能を含むファイルをハードディスク等の記憶媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバやFTPサーバ等も本発明の請求項に含まれるものである。
【０１９２】
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布する。さらに、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。さらに、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１９３】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、以下のような構成も含まれることは言うまでもない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS（オペレーティングシステム）等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１９４】
さらに、記憶媒体から読み出されたプログラムコードを、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込む。そして、該メモリに書き込まれたプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１９５】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１９６】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。
【０１９７】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
【０１９８】
なお、上述した各実施形態及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図面の簡単な説明】
【０１９９】
【図１】本発明の第１実施形態に係る情報処理装置の概略構成を示すブロック図である。
【図２】図１に示した画像形成装置１０１の動作を示すフローチャートである。
【図３】複数のＨＤＤの識別ＩＤを管理するための管理テーブルの一例を示す図である。
【図４】複数のＨＤＤの型名及びシリアル番号を管理するための管理テーブルの一例を示す図である。
【図５】ＨＤＤ誤装着の警告表示の一例を示す図である。
【図６】ＨＤＤの電源を投入した回数が不連続だった旨の警告表示の一例を示す図である。
【図７】ＨＤＤの電源を投入した回数が不連続だった旨の警告表示の一例を示す図である。
【図８】本発明の第２実施形態における画像形成装置１０１の動作を示すフローチャートである。
【図９】本発明の第３実施形態における画像形成装置１０１の動作を示すフローチャートである。
【図１０】本発明の第３実施形態における警告表示の一例を示す図である。
【図１１】本発明に係る情報処理装置として画像形成装置１０１を機能させるためのプログラムを記録したコンピュータ読取り可能な記憶媒体（記録媒体）のメモリマップを説明する図である。
【図１２】本発明の第４実施形態における画像形成装置１０１の動作を示すフローチャートである。
【図１３】本発明の第５実施形態における画像形成装置１０１の動作を示すフローチャートである。
【符号の説明】
【０２００】
１０１    画像形成装置
１０２    スキャナ部
１０３    プリンタ部
１０４    コントローラ
１０５    ＣＰＵ
１０６    メモリ
１０７    インタフェース
１０８    操作部
１０９，１１２    ＨＤＤ
１１０，１１３    ＨＤＤコントローラ
１１１    ディスクアレイ制御装置
【図１】
2010160545.tif 000003
【図２】
2010160545.tif 000004
【図３】
2010160545.tif 000005
【図４】
2010160545.tif 000006
【図５】
2010160545.tif 000007
【図６】
2010160545.tif 000008
【図７】
2010160545.tif 000009
【図８】
2010160545.tif 000010
【図９】
2010160545.tif 000011
【図１０】
2010160545.tif 000012
【図１１】
2010160545.tif 000013
【図１２】
2010160545.tif 000014
【図１３】
2010160545.tif 000015