(57)【要約】【課題】外部から更新データを取得してプログラムを更新するときの安全性を高めることができる画像形成装置を提供する。【解決手段】画像形成装置１０は、当該画像形成装置１０の動作を制御するための制御プログラムを保存するハードディスク装置２６と、ハードディスク装置２６に保存されている制御プログラムに従って当該画像形成装置１０の動作を制御するメインＣＰＵ１１と、メモリ２２と、制御プログラムの更新データを保存したサーバ装置４０と接続するネットワークＩ／Ｆ部２４と、ネットワークＩ／Ｆ部２４を通じてサーバ装置４０から取得した更新データをメモリ２２に記憶して該更新データが正常であるか否かを確認し、正常であることを確認した場合に該更新データを用いて制御プログラムの更新を開始するサブＣＰＵ２１とを備える。【選択図】図２
2012006176.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを記憶する第１の記憶部と、
前記第１の記憶部に記憶されているプログラムに従って当該情報処理装置の動作を制御する第１のＣＰＵと、
第２の記憶部と、
前記プログラムの更新データを保存した外部装置と接続する接続部と、
前記接続部を通じて前記外部装置から取得した更新データを前記第２の記憶部に記憶して該更新データが正常であるか否かを確認し、正常であることを確認した場合に該更新データを用いて前記プログラムの更新を開始する第２のＣＰＵと、
を備えた情報処理装置。
【請求項２】
前記第２のＣＰＵは、少なくとも前記確認の処理が完了するまでは前記第１のＣＰＵの動作を停止させる
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第２のＣＰＵは、前記更新データを取得してから少なくとも前記確認の処理が完了するまでは前記接続部による接続を無効にする
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記第２のＣＰＵが前記プログラムの更新を実行する
ことを特徴とする請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第２のＣＰＵは、前記更新データが正常でないことを確認した場合は、該更新データを前記第２の記憶部から削除する
ことを特徴とする請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項６】
前記外部装置は、前記接続部とネットワークを介して接続されたサーバ装置である
ことを特徴とする請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項７】
前記外部装置は、前記接続部と直接接続された情報記憶媒体である
ことを特徴とする請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項８】
請求項１〜７のいずれか１項に記載の情報処理装置と、
前記第１のＣＰＵに制御されて、画像データに基づく画像を記録紙に形成する画像形成部と、
を備えたことを特徴とする画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および画像形成装置に係り、特に外部から取得した更新データを用いてプログラムを更新する情報処理装置、およびその情報処理装置を備えた画像形成装置に関する。
【背景技術】
【０００２】
一般にＣＰＵ（Central Processing Unit）がプログラムを実行して動作を制御する装置では、プログラムの不具合修正や機能向上などを行うための更新データが提供され、その更新データを外部から取得してプログラムの更新（アップデート）が行われる。
【０００３】
たとえば、特許文献１にはメインＣＰＵとサブＣＰＵを備えた装置において、サブＣＰＵの運用プログラムを更新する際に、メインＣＰＵが外部装置から受信手段（通信制御部）を通じて受信した更新データを、更新プログラム（書き換えプログラム）と共にサブＣＰＵへ転送し、サブＣＰＵがその更新データを用いて運用プログラムの更新（書き換え）を行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１６３７０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一般にソフトウェアの更新時は、悪意を持った攻撃に対し防衛手段を講じ難い。また、ソフトウェアの更新のインフラストラクチャを乗っ取るような攻撃手法が存在し、このような攻撃が行われた場合には、装置のセキュリティそのものが損なわれることとなる。上記の技術では、更新データの受信時に受信手段を経由してそのような攻撃を受けるおそれがあり、外部から更新データを取得してプログラムを更新するときの安全性（セキュリティ）に問題がある。
【０００６】
本発明は、上記の問題を解決しようとするものであり、外部から更新データを取得してプログラムを更新するときの安全性を高めることができる情報処理装置および画像形成装置を提供することを目的としている。
【課題を解決するための手段】
【０００７】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
【０００８】
［１］プログラムを記憶する第１の記憶部と、
前記第１の記憶部に記憶されているプログラムに従って当該情報処理装置の動作を制御する第１のＣＰＵと、
第２の記憶部と、
前記プログラムの更新データを保存した外部装置と接続する接続部と、
前記接続部を通じて前記外部装置から取得した更新データを前記第２の記憶部に記憶して該更新データが正常であるか否かを確認し、正常であることを確認した場合に該更新データを用いて前記プログラムの更新を開始する第２のＣＰＵと、
を備えた情報処理装置。
【０００９】
上記発明では、第１の記憶部に記憶されているプログラムに従って当該情報処理装置の動作を制御する第１のＣＰＵと、第２のＣＰＵとを備えた情報処理装置にて、第２のＣＰＵは、接続部を通じて外部装置から取得した更新データを第２の記憶部に記憶し、この更新データが正常であるか否かを確認する（更新データの安全性確認）。更新データが正常であることを確認した場合は、この更新データを用いて上記のプログラムの更新を開始する。
【００１０】
このように、更新データの取得と安全性確認を、第１のＣＰＵとは独立した第２のＣＰＵが行うことで、仮に接続先の外部装置から更新データを取得するときに、外部から接続部を経由して攻撃を受けたり、取得した更新データが正常でないためにその更新データによって異常な動作が引き起こされたりしたとしても、その悪影響を受けるのは第２のＣＰＵ（第２のＣＰＵが実行するプログラム）であり、第１のＣＰＵ（第１のＣＰＵが実行する、装置の動作を制御するためのプログラム）にその悪影響が及ぶことを回避できる。さらに、更新データの安全性を確認することで、正常でない更新データによってプログラムを更新するようなことも防止できる。これにより、外部から更新データを取得して第１のＣＰＵのプログラムを更新するときの安全性を高めることができる。
【００１１】
［２］前記第２のＣＰＵは、少なくとも前記確認の処理が完了するまでは前記第１のＣＰＵの動作を停止させる
ことを特徴とする［１］に記載の情報処理装置。
【００１２】
上記発明では、少なくとも更新データが正常であるか否かの確認の処理が完了するまでは、第１のＣＰＵの動作を停止させる。これにより、仮に取得した更新データが正常でないためにその更新データによって第２のＣＰＵに異常な動作が引き起こされたとしても、第１のＣＰＵがその悪影響を受けることはない。また、更新データの取得を開始する前に第１のＣＰＵの動作を停止させてから、更新データを取得するようにすれば、更新データの取得時には第１のＣＰＵが非動作状態であるため、外部から接続部を経由してプログラムへの攻撃を行うことは極めて困難になる。したがって、第１のＣＰＵのプログラムを更新するときの安全性を更に高めることができる。
【００１３】
［３］前記第２のＣＰＵは、前記更新データを取得してから少なくとも前記確認の処理が完了するまでは前記接続部による接続を無効にする
ことを特徴とする［１］または［２］に記載の情報処理装置。
【００１４】
上記発明では、更新データを取得してから少なくともその更新データが正常であるか否かの確認の処理（更新データの安全性確認）が完了するまでは、接続部による接続を無効にする。これにより、その更新データの安全性確認を終えるまでの間に、外部から接続部を経由して攻撃を受けることはない。したがって、第１のＣＰＵのプログラムを更新する際に、高いセキュリティを確保することができる。
【００１５】
［４］前記第２のＣＰＵが前記プログラムの更新を実行する
ことを特徴とする［１］〜［３］のいずれか１項に記載の情報処理装置。
【００１６】
上記発明では、第２のＣＰＵが更新データを用いて第１のＣＰＵのプログラムを更新することにより、第１のＣＰＵの動作が停止している状態でもそのプログラムを更新することができる。たとえば、装置が省電力状態などに移行して第１のＣＰＵの動作が停止していても、第２のＣＰＵによってプログラムを更新することができる。
【００１７】
［５］前記第２のＣＰＵは、前記更新データが正常でないことを確認した場合は、該更新データを前記第２の記憶部から削除する
ことを特徴とする［１］〜［４］のいずれか１項に記載の情報処理装置。
【００１８】
上記発明では、更新データが正常でないことを確認した場合は、その更新データを削除することで、たとえば、更新データが正常でない場合にその更新データによって異常な動作が引き起こされるような危険性をなくすことができる。
【００１９】
［６］前記外部装置は、前記接続部とネットワークを介して接続されたサーバ装置である
ことを特徴とする［１］〜［５］のいずれか１項に記載の情報処理装置。
【００２０】
上記発明では、接続部とネットワークを介して接続されたサーバ装置から更新データを取得し、プログラムの更新が行われる。
【００２１】
［７］前記外部装置は、前記接続部と直接接続された情報記憶媒体である
ことを特徴とする［１］〜［５］のいずれか１項に記載の情報処理装置。
【００２２】
上記発明では、接続部と直接接続された情報記憶媒体から更新データを取得し、プログラムの更新が行われる。
【００２３】
［８］［１］〜［７］のいずれか１項に記載の情報処理装置と、
前記第１のＣＰＵに制御されて、画像データに基づく画像を記録紙に形成する画像形成部と、
を備えたことを特徴とする画像形成装置。
【００２４】
上記発明では、画像形成装置は、第１のＣＰＵは第１の記憶部に記憶されているプログラムに従って当該画像形成装置の動作を制御すると共に、画像形成部を制御して、画像データに基づく画像を記録紙に形成する。この第１のＣＰＵが実行するプログラムを更新するための更新データの取得と安全性確認（更新データが正常であるか否かの確認）は、第１のＣＰＵとは独立した第２のＣＰＵが行うことにより、外部から更新データを取得して第１のＣＰＵのプログラムを更新するときの安全性が高められる。
【発明の効果】
【００２５】
本発明の情報処理装置および画像形成装置によれば、外部から更新データを取得してプログラムを更新するときの安全性を高めることができる。
【図面の簡単な説明】
【００２６】
【図１】本発明の一実施形態に係る画像形成装置が接続されたネットワークシステムの構成を示すシステム構成図である。
【図２】本発明の一実施形態に係る画像形成装置の構成を示すブロック図である。
【図３】画像形成装置のサブＣＰＵがサーバ装置から更新データを取得して行うプログラム更新動作を示す流れ図である。
【図４】画像形成装置のサブＣＰＵが情報記憶媒体から更新データを取得して行うプログラム更新動作を示す流れ図である。
【発明を実施するための形態】
【００２７】
以下、図面に基づき本発明の実施形態を説明する。
【００２８】
図１は、本発明の一実施形態に係るネットワークシステム５を示している。画像形成装置１０は、ＬＡＮ（Local Area Network）などのネットワーク２を介して複数台の端末装置３０およびサーバ装置４０と接続されている。
【００２９】
画像形成装置１０は、記録紙に画像を形成して出力する機能を備えたプリンタや複合機などである。本実施形態では、画像形成装置１０は、原稿を光学的に読み取ってその複製画像を記録紙に印刷して出力するコピージョブ、読み取った原稿の画像データをファイルにして保存したり外部装置へネットワーク２を通じて送信したりするスキャンジョブ、端末装置３０からネットワーク２を通じて受信した印刷データに係る画像を記録紙に印刷して出力するプリントジョブなどのジョブを実行する機能を備えた複合機（ＭＦＰ）である。
【００３０】
端末装置３０は、画像形成装置１０に対して、スキャンジョブやプリントジョブなどのジョブを送信してその実行を要求する機能を備えた情報処理装置である。端末装置３０は、ＯＳプログラムや画像形成装置１０のドライバプログラム、文書や画像を作成・編集するアプリケーションプログラムなどがインストールされたパーソナルコンピュータなどで構成される。スキャンジョブやプリントジョブの送信および実行要求など画像形成装置１０に対する各種の要求は、画像形成装置１０用のドライバプログラムによって行われる。
【００３１】
サーバ装置４０は、画像形成装置１０に搭載されている制御プログラムの更新データを画像形成装置１０に提供する機能を備えており、その更新データを内部に保存している。
【００３２】
また、画像形成装置１０はＵＳＢ（Universal Serial Bus）メモリなどの情報記憶媒体が接続可能とされている。制御プログラムの更新データを内部に保存した情報記憶媒体が接続された場合には、その情報記憶媒体から更新データを取得する機能も備えている。
【００３３】
上記の更新データは、制御プログラムの不具合修正、小規模な機能向上や機能追加などを行うために提供されるものであり、たとえば、制御プログラムを更新（アップデート）するためにインストールされるソフトウェア部品（アップデートモジュール）などを含んだデータである。
【００３４】
図２は、画像形成装置１０の概略構成を示している。画像形成装置１０は、独立して動作する２つのＣＰＵを備えたデュアルプロセッサシステム（マルチプロセッサシステム）の構成であり、当該画像形成装置１０の動作を統括制御するメインＣＰＵ１１と、サーバ装置４０や情報記憶媒体５０から上記の更新データを取得してその更新データが正常であるか否かを確認し（更新データの安全性確認）、正常であることを確認した場合にその更新データを用いて制御プログラムの更新を開始（許可）するサブＣＰＵ２１とを備えている。
【００３５】
メインＣＰＵ１１ではＯＳプログラムをベースとし、その上で、ミドルウェアやアプリケーションプログラムなどが実行される。サブＣＰＵ２１は、メインＣＰＵ１１より処理能力が小さく消費電力も少ないＣＰＵである。また、本実施形態で更新の対象となる制御プログラムは、メインＣＰＵ１１によって実行されるＯＳプログラムやアプリケーションプログラムなどである。
【００３６】
画像形成装置１０は、上記のメインＣＰＵ（Central Processing Unit）１１と、このメインＣＰＵ１１に接続されたＲＯＭ（Read Only Memory）１２と、ＲＡＭ（Random Access Memory）１３と、スキャナ部１４と、プリンタ部１５と、ファクシミリ部１６と、表示部１７と、操作部１８と、画像処理部１９と、ハードディスク装置（Hard Disk Drive；ＨＤＤ）２６とを備えている。さらに、メインＣＰＵ１１には、上記のサブＣＰＵ２１を内部に備えたブリッジ部２０が接続されている。ブリッジ部２０には、メモリ２２と、不揮発メモリ２３と、ネットワークＩ／Ｆ部２４と、情報記憶媒体Ｉ／Ｆ部２５とが接続されている。また、画像形成装置１０は、当該画像形成装置１０の各部へ電力供給する電源部２８を備えている。
【００３７】
メインＣＰＵ１１は、ブリッジ部２０を通じてサブＣＰＵ２１およびブリッジ部２０に接続されている各部へアクセスして情報を授受可能になっている。サブＣＰＵ２１は、ブリッジ部２０を通じてメモリ２２、不揮発メモリ２３、ネットワークＩ／Ｆ部２４、情報記憶媒体Ｉ／Ｆ部２５にアクセスでき、メインＣＰＵ１１とも情報を授受することができる。これにより、たとえば、メモリ２２や不揮発メモリ２３は、メインＣＰＵ１１とサブＣＰＵ２１との間の情報授受の媒体としても使用される。
【００３８】
スキャナ部１４、プリンタ部１５、ファクシミリ部１６、表示部１７、操作部１８、画像処理部１９などはメインＣＰＵ１１によって動作が制御される。たとえば、メインＣＰＵ１１は、ネットワーク２を通じて端末装置３０から受信したプリントジョブに係る印刷をプリンタ部１５に行わせるように制御する。
【００３９】
電源部２８は、商用電源を適宜の電圧に変換して画像形成装置１０の各部へ電力を供給する。また、メインＣＰＵ１１やサブＣＰＵ２１からの指示に従って、電力を供給するか供給停止するかを電力供給先別に制御する機能を備えている。ここでは、通常状態では全ての部分に電力供給し、スリープ状態（省電力状態）では、スキャナ部１４、プリンタ部１５、ファクシミリ部１６（受信部を除く）、表示部１７、画像処理部１９、ハードディスク装置２６への電源供給は停止しその他へは給電する。ただし、スリープ状態では、メインＣＰＵ１１は能力を低下させて低消費電力で動作する。
【００４０】
電源オフ状態では、メインＣＰＵ１１も動作を停止する。電源オフ状態では、サブＣＰＵ２１、メモリ２２、不揮発メモリ２３、ネットワークＩ／Ｆ部２４、情報記憶媒体Ｉ／Ｆ部２５には給電し、他の部分（メインＣＰＵ１１も含む）への給電は停止するようになっている。なお、スリープ状態は上述した状態に限定されず、電源オフ状態より通常状態に近いが、通常状態よりも電力消費が少ない電源状態であればよく、たとえば、ＲＡＭ１３へは給電を継続するがメインＣＰＵ１１やＲＯＭ１２への給電は停止するといった状態でもよい。
【００４１】
ＲＯＭ１２には各種のプログラムが格納されており、これらのプログラムに従ってメインＣＰＵ１１が処理を実行することでジョブの実行など画像形成装置１０の各機能が実現される。ＲＡＭ１３はメインＣＰＵ１１がプログラムを実行する際に各種のデータを一時的に格納するワークメモリや画像データを格納する画像メモリなどとして使用される。なお、その他の必要なプログラムはハードディスク装置２６からＲＡＭ１３にロードされて実行される。
【００４２】
スキャナ部１４は、原稿を光学的に読み取って画像データを取得する機能を果たす。スキャナ部１４は、たとえば、原稿に光を照射する光源と、その反射光を受けて原稿を幅方向に１ライン分読み取るラインイメージセンサと、ライン単位の読取位置を原稿の長さ方向に順次移動させる移動手段と、原稿からの反射光をラインイメージセンサに導いて結像させるレンズやミラーなどからなる光学系、ラインイメージセンサの出力するアナログ画像信号をデジタルの画像データに変換する変換部などを備えて構成される。
【００４３】
プリンタ部１５は、画像データに応じた画像を記録紙に印刷（画像形成）する機能を果たす。ここでは、記録紙の搬送装置と、感光体ドラムと、帯電装置と、レーザーユニットと、現像装置と、転写分離装置と、クリーニング装置と、定着装置とを有し、電子写真プロセスによって画像形成を行う、所謂、レーザープリンタとして構成されている。画像形成は他の方式でもかまわない。
【００４４】
ファクシミリ部１６は、ファクシミリ送信および受信に係る動作を制御する。
【００４５】
画像形成装置１０の操作パネルは表示部１７と操作部１８を備えて構成される。表示部１７は、液晶ディスプレイ（ＬＣＤ；Liquid Crystal Display）などで構成され、操作画面や設定画面など各種の画面を表示する機能を果たす。操作部１８は、ユーザからジョブの投入や設定など各種の操作を受け付ける機能を果たす。操作部１８は、表示部１７の画面上に設けられて押下された座標位置を検出するタッチパネルのほかテンキーや文字入力キー、スタートキーやストップキーなどを備えて構成される。
【００４６】
画像処理部１９は、画像の拡大縮小、回転などの処理のほか、印刷データをイメージデータに変換するラスタライズ処理、画像データの圧縮、伸張処理などを行う。
【００４７】
ハードディスク装置２６は、大容量不揮発の記憶装置であり、プログラムのほか、たとえば、印刷データや画像データの保存に使用される。ハードディスク装置２６に保存されるプログラムは、メインＣＰＵ１１によって実行されるＯＳプログラムやアプリケーションプログラムなどの制御プログラムである。
【００４８】
メモリ２２はサブＣＰＵ２１のワークメモリとして使用される。不揮発メモリ２３は、電源がオフされても記憶内容が破壊されないメモリ（フラッシュメモリ）であり、サブＣＰＵ２１が実行するプログラムなどが記憶されている。
【００４９】
ネットワークＩ／Ｆ部２４は、ネットワーク２を通じて端末装置３０やサーバ装置４０などの外部装置と各種のデータを送受信する機能を果たす。ネットワークＩ／Ｆ部２４は、サブＣＰＵ２１によって通信機能が有効にされるとネットワーク２に接続し（通信の確立）、ネットワーク２を通じて外部装置と通信を行う。通信機能が無効にされるとネットワーク２との接続を切断（遮断）する。
【００５０】
情報記憶媒体Ｉ／Ｆ部２５は、ＵＳＢメモリなどの情報記憶媒体５０が（物理的に）接続され、接続された情報記憶媒体５０と各種のデータを送受信する機能を果たす。情報記憶媒体Ｉ／Ｆ部２５は、サブＣＰＵ２１によって機能が有効にされると情報記憶媒体５０に（電気的に）接続し、情報記憶媒体５０と通信を行う。機能が無効にされると情報記憶媒体５０との接続を切断（遮断）する。
【００５１】
サブＣＰＵ２１は、メインＣＰＵ１１とは別に、ＯＳプログラムに関係なく独自に動作し、メインＣＰＵ１１の動作あるいは給電が停止する電源状態でも、サブＣＰＵ２１は稼動している。画像形成装置１０は、サブＣＰＵ２１が稼動している状態であれば、メモリ２２や不揮発メモリ２３へのアクセス、ネットワークＩ／Ｆ部２４による通信を行うことができる。すなわち、ネットワークＩ／Ｆ部２４はサブＣＰＵ２１によってルーティングされ、ＯＳ上のソフトウェアに依存することなく、ネットワーク２を通じて端末装置３０やサーバ装置４０などの外部装置と通信することができる。
【００５２】
次に、画像形成装置１０の動作について説明する。
【００５３】
図３は、画像形成装置１０のサブＣＰＵ２１がサーバ装置４０から更新データを取得して行う制御プログラムの更新動作を示す流れ図である。本動作は、たとえばサブＣＰＵ２１が予め設定された所定のタイミング（指定の日時や定期的など）に起動して行ったり、ユーザなどから制御プログラムの更新指示を受けた場合に行ったりする。更新データの取得先となるサーバ装置４０のＩＰ（Internet Protocol）アドレスは、画像形成装置１０に予め登録されているものとする。また、更新の対象となる制御プログラムは、ハードディスク装置２６に保存されている、メインＣＰＵ１１によって実行されるＯＳプログラムやアプリケーションプログラムなどである。
【００５４】
サブＣＰＵ２１は、本動作を開始すると（Ｓｔａｒｔ）、ネットワークＩ／Ｆ部２４通じてネットワーク２経由でサーバ装置４０にアクセスし、サーバ装置４０に制御プログラムの更新データがあるか否かをチェックする（ステップＳ１０１）。ここでは、たとえば画像形成装置１０に現在インストールされている制御プログラムをより新しいバージョンに更新するための更新データの有無などをチェックする。
【００５５】
更新データがない場合は（ステップＳ１０２；Ｎｏ）、本動作を終了する（Ｅｎｄ）。更新データがある場合は（ステップＳ１０２；Ｙｅｓ）、サブＣＰＵ２１はメインＣＰＵ１１の動作状態（電源オン／オフ）を確認する（ステップＳ１０３）。
【００５６】
メインＣＰＵ１１が電源オフ状態（非動作状態）である場合は（ステップＳ１０３；Ｎｏ）、ステップＳ１０５へ移行する。メインＣＰＵ１１が電源オン状態（動作状態）である場合は（ステップＳ１０３；Ｙｅｓ）、サブＣＰＵ２１はメインＣＰＵ１１を電源オフにしてメインＣＰＵ１１の動作を停止させる（メインＣＰＵ１１側のシステムをシャットダウンする）（ステップＳ１０４）。
【００５７】
続いてサブＣＰＵ２１は、ネットワークＩ／Ｆ部２４を通じて接続先のサーバ装置４０から更新データを受信し、受信した更新データをメモリ２２に保存する（ステップＳ１０５）。更新データの受信を完了すると、サブＣＰＵ２１はネットワークＩ／Ｆ部２４を通じたサーバ装置４０と接続状態を解除し、ネットワークＩ／Ｆ部２４の通信機能を無効にする（ステップＳ１０６）。これにより、画像形成装置１０はネットワーク２と切断（遮断）された状態になる。
【００５８】
続いてサブＣＰＵ２１は、メモリ２２に保存した更新データが正常であるか否かを確認する（ステップＳ１０７）。この更新データの安全性確認は、たとえばチェックサムを確認したり、ウイルスチェックプログラムによってウイルスチェックを行ったりするなど、周知の各種方法によって行う。
【００５９】
更新データが正常であることを確認した場合は（ステップＳ１０８；Ｙｅｓ）、サブＣＰＵ２１はメインＣＰＵ１１（メインＣＰＵ１１側のシステム）を起動し（ステップＳ１０９）、制御プログラムの更新を許可（開始）する（ステップＳ１１０）。制御プログラムの更新は、サブＣＰＵ２１が実行してもよく、メインＣＰＵ１１が実行してもよい。
【００６０】
サブＣＰＵ２１による場合は、サブＣＰＵ２１がメモリ２２に保存した更新データを用いて、ハードディスク装置２６に保存されている制御プログラムの更新を行う。メインＣＰＵ１１による場合は、メインＣＰＵ１１がサブＣＰＵ２１からプログラム更新の指示を受けて、メモリ２２に保存されている更新データを使用し、ハードディスク装置２６に保存されている制御プログラムの更新を行う。
【００６１】
そしてサブＣＰＵ２１は、ネットワークＩ／Ｆ部２４の通信機能を有効にし（ステップＳ１１１）、本動作を終了する（Ｅｎｄ）。これにより、画像形成装置１０はネットワーク２との接続状態（通信状態）を復帰させる。
【００６２】
一方、更新データが正常でないことを確認した場合は（ステップＳ１０８；Ｎｏ）、サブＣＰＵ２１はメモリ２２に保存した更新データを削除し（ステップＳ１１２）、メインＣＰＵ１１（メインＣＰＵ１１側のシステム）を起動する（ステップＳ１１３）。そして、メインＣＰＵ１１に対して指示を出し、操作パネルの表示部１７にネットワークの切断を報知する画面を表示させて（ステップＳ１１４）、本動作を終了する（Ｅｎｄ）。この画面上には、たとえば「機器内の情報を保護するためネットワークから切断しています」などのメッセージを表示する。
【００６３】
図４は、画像形成装置１０のサブＣＰＵ２１が情報記憶媒体５０から更新データを取得して行う制御プログラムの更新動作を示す流れ図である。本動作は、たとえば画像形成装置１０に情報記憶媒体５０が接続されたときにサブＣＰＵ２１が起動して行ったり、情報記憶媒体５０が接続された状態でユーザなどから制御プログラムの更新指示を受けた場合に行ったりする。更新の対象となる制御プログラムは、図３での説明と同じく、ハードディスク装置２６に保存されている（メインＣＰＵ１１によって実行される）ＯＳプログラムやアプリケーションプログラムなどである。また本動作の内容は、更新データの取得先が異なるほかは、基本的には図３の動作と同様である。
【００６４】
サブＣＰＵ２１は、本動作を開始すると（Ｓｔａｒｔ）、情報記憶媒体Ｉ／Ｆ部２５に接続されている情報記憶媒体５０と情報記憶媒体Ｉ／Ｆ部２５を通じて通信し、情報記憶媒体５０に制御プログラムの更新データがあるか否かをチェックする（ステップＳ２０１）。
【００６５】
更新データがない場合は（ステップＳ２０２；Ｎｏ）、本動作を終了する（Ｅｎｄ）。更新データがある場合は（ステップＳ２０２；Ｙｅｓ）、サブＣＰＵ２１はメインＣＰＵ１１の動作状態（電源オン／オフ）を確認する（ステップＳ２０３）。
【００６６】
メインＣＰＵ１１が電源オフ状態（非動作状態）である場合は（ステップＳ２０３；Ｎｏ）、ステップＳ２０５へ移行する。メインＣＰＵ１１が電源オン状態（動作状態）である場合は（ステップＳ２０３；Ｙｅｓ）、サブＣＰＵ２１はメインＣＰＵ１１を電源オフにしてメインＣＰＵ１１の動作を停止させる（メインＣＰＵ１１側のシステムをシャットダウンする）（ステップＳ２０４）。
【００６７】
続いてサブＣＰＵ２１は、情報記憶媒体Ｉ／Ｆ部２５を通じて接続先の情報記憶媒体５０から更新データを取得し、取得した更新データをメモリ２２に保存する（ステップＳ２０５）。更新データの取得を完了すると、サブＣＰＵ２１は情報記憶媒体Ｉ／Ｆ部２５を通じた情報記憶媒体５０と接続状態を解除し、情報記憶媒体Ｉ／Ｆ部２５の機能を無効にする（ステップＳ２０６）。これにより、画像形成装置１０は情報記憶媒体５０と切断（接続解除）された状態になる。
【００６８】
続いてサブＣＰＵ２１は、メモリ２２に保存した更新データが正常であるか否かを確認する（ステップＳ２０７）。この場合も、更新データの安全性確認は周知の各種方法によって行う。更新データが正常であることを確認した場合は（ステップＳ２０８；Ｙｅｓ）、サブＣＰＵ２１はメインＣＰＵ１１（メインＣＰＵ１１側のシステム）を起動し（ステップＳ２０９）、制御プログラムの更新を許可（開始）する（ステップＳ２１０）。この場合も、制御プログラムの更新はサブＣＰＵ２１が実行してもよく、メインＣＰＵ１１が実行してもよい。
【００６９】
そしてサブＣＰＵ２１は、情報記憶媒体Ｉ／Ｆ部２５の機能を有効にし（ステップＳ２１１）、本動作を終了する（Ｅｎｄ）。これにより、情報記憶媒体Ｉ／Ｆ部２５に情報記憶媒体５０が物理的に接続されていれば、画像形成装置１０は情報記憶媒体５０との接続状態（通信状態）を復帰させる。
【００７０】
一方、更新データが正常でないことを確認した場合は（ステップＳ２０８；Ｎｏ）、サブＣＰＵ２１はメモリ２２に保存した更新データを削除し（ステップＳ２１２）、メインＣＰＵ１１（メインＣＰＵ１１側のシステム）を起動する（ステップＳ２１３）。そして、メインＣＰＵ１１に対して指示を出し、操作パネルの表示部１７に情報記憶媒体の切断を報知する画面を表示させて（ステップＳ２１４）、本動作を終了する（Ｅｎｄ）。この画面上には、たとえば「機器内の情報を保護するため情報記憶媒体を切断しています」などのメッセージを表示する。
【００７１】
このように、本実施形態に係る画像形成装置１０では、メインＣＰＵ１１が実行する制御プログラムを更新する際に、その更新データの取得と安全性確認（更新データが正常であるか否かの確認）を、メインＣＰＵ１１とは独立したサブＣＰＵ２１が行う。
【００７２】
これにより、仮に接続先のサーバ装置４０から更新データを取得するときに、外部からネットワーク２およびネットワークＩ／Ｆ部２４を経由して攻撃を受けたり、取得した更新データが正常でないためにその更新データによって異常な動作が引き起こされたりしたとしても、その悪影響を受けるのはサブＣＰＵ２１（サブＣＰＵ２１が実行するプログラム）であり、メインＣＰＵ１１（第１のＣＰＵが実行する制御プログラム）にその悪影響が及ぶことを回避できる。さらに、更新データの安全性を確認することで、正常でない更新データによって制御プログラムを更新するようなことも防止できる。したがって、外部から更新データを取得してメインＣＰＵ１１の制御プログラムを更新するときの安全性を高めることができる。
【００７３】
特に本実施形態では、更新データの取得を開始する前にメインＣＰＵ１１の動作を停止させてから、更新データを取得する。そして、その更新データが正常であるか否かの確認の処理が完了するまでは、メインＣＰＵ１１の動作停止状態（非動作状態）を継続させる。
【００７４】
これにより、更新データの取得時にはメインＣＰＵ１１が非動作状態であるため、外部からネットワークＩ／Ｆ部２４または情報記憶媒体Ｉ／Ｆ部２５を経由して制御プログラムへの攻撃を行うことは極めて困難になる。また、仮に取得した更新データが正常でないためにその更新データによってサブＣＰＵ２１に異常な動作が引き起こされたとしても、非動作状態であるメインＣＰＵ１１がその悪影響を受けることはない。したがって、メインＣＰＵ１１の制御プログラムを更新するときの安全性を更に高めることができる。
【００７５】
また、サーバ装置４０から更新データを取得する場合は、サーバ装置４０から更新データを取得してから、少なくともその更新データの安全性確認が完了するまでは、ネットワークＩ／Ｆ部２４の通信機能を無効にする。これにより、更新データの安全性確認を終えるまでの間に、外部からネットワーク２およびネットワークＩ／Ｆ部２４を経由して攻撃を受けることはない。さらに、更新データが正常であることを確認できて制御プログラムを実際に更新する場合には、その更新処理が完了するまで、ネットワークＩ／Ｆ部２４の通信機能を無効にする（無効状態の継続）。これにより、更新処理を終えるまでの間に、外部からネットワーク２およびネットワークＩ／Ｆ部２４を経由して攻撃を受けることもない。
【００７６】
また、情報記憶媒体５０から更新データを取得する場合は、情報記憶媒体５０から更新データを取得してから、少なくともその更新データの安全性確認が完了するまでは、情報記憶媒体Ｉ／Ｆ部２５の機能を無効にする。これにより、たとえば情報記憶媒体５０内にコンピュータウイルスが潜んでいた場合でも、更新データの安全性確認を終えるまでの間に、情報記憶媒体５０内にコンピュータウイルスが情報記憶媒体Ｉ／Ｆ部２５を経由して画像形成装置１０内に侵入することはない。さらに、更新データが正常であることを確認できて制御プログラムを実際に更新する場合には、その更新処理が完了するまで、情報記憶媒体Ｉ／Ｆ部２５の機能を無効にする（無効状態の継続）。これにより、更新処理を終えるまでの間に、上記のような情報記憶媒体５０内にコンピュータウイルスが情報記憶媒体Ｉ／Ｆ部２５を経由して画像形成装置１０内に侵入することもない。
【００７７】
このように、更新データの取得後は、直ちにネットワーク２との接続状態を解除する、または、情報記憶媒体５０との接続状態を解除することで、メインＣＰＵ１１の制御プログラムを更新する際に、高いセキュリティを確保することができる。詳細には、更新データを取得してから、その更新データの安全性確認が完了するまでの間と、実際に更新する場合はその更新処理が完了するまでの間とに、高いセキュリティを確保することができる。
【００７８】
また、更新データが正常でないことを確認した場合は、その更新データを削除することで、たとえば更新データにコンピュータウイルスが潜んでいた場合に、そのコンピュータウイルスによって異常な動作が引き起こされるような危険性を回避することができる。なお、更新データが正常でないことを確認した場合は、その更新データを削除すると共に、セキュリティ確保の観点から、ネットワークＩ／Ｆ部２４の通信機能を無効のままにする、または、情報記憶媒体Ｉ／Ｆ部２５の機能を無効のままにするようにしている。
【００７９】
また、サブＣＰＵ２１が更新データを用いてメインＣＰＵ１１の制御プログラムを更新する場合は、メインＣＰＵ１１の動作が停止している状態でもその制御プログラムを更新することができる。たとえば、画像形成装置１０がスリープ状態や電源オフ状態であり、メインＣＰＵ１１が非動作状態であっても、サブＣＰＵ２１によって制御プログラムを更新することができる。なお、電源オフ状態にて、制御プログラムを保存しているハードディスク装置２６への給電を停止する場合は、サブＣＰＵ２１が更新データの安全性を確認し制御プログラムの更新を開始するタイミングで、ハードディスク装置２６に給電し、ハードディスク装置２６を動作させるようにすればよい。
【００８０】
以上、本発明の実施形態を図面によって説明してきたが、具体的な構成は実施形態に示したものに限られるものではなく、本発明の要旨を逸脱しない範囲における変更や追加があっても本発明に含まれる。
【００８１】
上述した実施形態では、制御プログラムの更新データを外部装置から取得する前に、メインＣＰＵ１１の動作を停止させるようにしているが、このメインＣＰＵ１１の動作停止は行わず、メインＣＰＵ１１が動作している状態で、制御プログラムの更新データを外部装置から取得するようにしてもよい。
【００８２】
また、更新データを取得してから、少なくともその更新データの安全性確認が完了するまでは、情報記憶媒体Ｉ／Ｆ部２５の通信機能を無効にする、または、情報記憶媒体Ｉ／Ｆ部２５の機能は無効にするようにしているが、このような機能の無効化は行わず、機能を有効にして更新データの安全性確認（および更新データによる制御プログラムの更新）を行うようにしてもよい。
【００８３】
また、更新データが正常であることを確認し、その更新データを用いて制御プログラムを更新する場合には、その更新が完了するまで、情報記憶媒体Ｉ／Ｆ部２５の通信機能を無効にする、または、情報記憶媒体Ｉ／Ｆ部２５の機能は無効にするようにしているが、更新データが正常であることを確認できた時点でそれらの機能を有効にし、上記の更新を行うようにしてもよい。
【００８４】
また、本発明に係る画像形成装置は実施形態で説明した複合機に限らず、複写機、プリンタ機、ファクシミリ機などの他の画像形成装置も対象にすることができる。本発明に係る情報処理装置は、画像形成装置に備えられた情報処理装置に限らず、外部から取得した更新データによってプログラムを更新する機能を備えたパーソナルコンピュータなどの各種の情報処理装置を対象にすることができる。
【符号の説明】
【００８５】
２…ネットワーク
５…ネットワークシステム
１０…画像形成装置
１１…メインＣＰＵ
１２…ＲＯＭ
１３…ＲＡＭ
１４…スキャナ部
１５…プリンタ部
１６…ファクシミリ部
１７…表示部
１８…操作部
１９…画像処理部
２０…ブリッジ部
２１…サブＣＰＵ
２２…メモリ
２３…不揮発メモリ
２４…ネットワークＩ／Ｆ部
２５…情報記憶媒体Ｉ／Ｆ部
２６…ハードディスク装置
２８…電源部
３０…端末装置
４０…サーバ装置
５０…情報記憶媒体
【図１】
2012006176.tif 000003
【図２】
2012006176.tif 000004
【図３】
2012006176.tif 000005
【図４】
2012006176.tif 000006