| 【発明の名称】 |
画像形成装置 |
| 【発明者】 |
【氏名】金松 伸一 【住所又は居所】東京都大田区下丸子3丁目30番2号 キヤノン株式会社内
|
| 【要約】 |
【課題】装置に対する不正アクセスを自動検知し、機器を自動停止する。
【解決手段】機器に対してソフトウエア制御権の不正な奪取、あるいは不正なデータ改ざんが行われたことを検知する、ソフトウエア不正アクセス検知手段と、機器を制御するコントローラ部の電源制御を、機器制御ソフトウエアから行うことが可能な電力制御手段と、を備え、前記ソフトウエア不正アクセス検知手段により、ソフトウエア制御権の不正な奪取が行われるか、もしくは不正なデータ改ざんが行われたことを検知した場合、前記電力制御手段を用いて機器全体の電源供給を停止し、機器そのものの動作を停止する制御手段を備えた、画像形成装置。 |
【特許請求の範囲】
【請求項1】 機器に対してソフトウエア制御権の不正な奪取、あるいは不正なデータ改ざんが行われたことを検知する、ソフトウエア不正アクセス検知手段と、機器を制御するコントローラ部の電源制御を、機器制御ソフトウエアから行うことが可能な電力制御手段と、を備え、前記ソフトウエア不正アクセス検知手段により、ソフトウエア制御権の不正な奪取が行われるか、もしくは不正なデータ改ざんが行われたことを検知した場合、前記電力制御手段を用いて機器全体の電源供給を停止し、機器そのものの動作を停止する制御手段を備えた、画像形成装置。 【請求項2】 前記ソフトウエア不正アクセス検知手段は、不正アクセスを検知するとその検知した情報を不揮発性メモリに記録することを特徴とする、請求項1に記載の画像形成装置。 【請求項3】 前記電力制御手段は、機器制御ソフトウエアの停止処理を完了後、装置全体の電力供給を停止することを特徴とする請求項1に記載の画像形成装置。
|
【発明の詳細な説明】【0001】 【発明の属する技術分野】本発明は、不正アクセスを検知可能な画像形成装置に関する。 【0002】 【従来の技術】コンピュータ、ネットワークの広範な普及に伴い、複写機、プリンタ装置もネットワーク接続される設置形態がますます増加している。それにともない、特にデジタル複写機においては備える機能が多様化、高度化しており、コピー、プリント機能の他に、スキャン画像などのファイル送信、Eメール送信・転送といったより高度なネットワーク機能を備えた機器が出現している。 【0003】従来スキャナで読み取った画像をいったんホストコンピュータで保存したのち、改めてファイル転送、あるいはメール添付といった手順で目的の転送先に送信する手間が必要であったが、前述のごとき機能を備えたデジタル複写機においては、スキャン画像を即時に目的のあて先に送信することが可能であり、ネットワーク機能と連動したより高度な機能をユーザに提供することに成功している。 【0004】 【発明が解決しようとする課題】しかしながら、ファイル送受信、Eメール送受信機能を備えたデジタル複写機においては、ネットワークから該当するサービスの送受信処理機能を提供する、いわゆるサーバプログラムが稼動する必要がある。このようなサーバプログラムはいわゆるコンピュータウイルスや悪意あるソフトウエア的な攻撃、あるいはプログラム制御権の奪取、といった攻撃、のっとりの対象とされやすいという問題がある。 【0005】特に、プログラム制御権が悪意あるユーザに奪取される場合、深刻な事態を引き起こす危険がある。例えばメールサーバを奪取された場合、インターネット経由で全世界に向けていわゆるspawmメールを発信される可能性がある。このようなケースではメールの発信元となるのは奪取されたメールサーバであるため、不要メールを配信してしまうのみならず、メールサーバを稼動させていた企業や組織が非難の対象とされる可能性もある。また機器内に蓄積されている画像データや設定情報などが破壊、消去により失われたり、またネットワークを経由して外部に漏洩するなどの可能性がある。 【0006】しかしながらデジタル複写機のような組込み制御システムにおいて、前述のようなサーバプログラムを搭載する場合、ある程度ネットワーク的に保護された組織内部のネットワークに接続されることを前提として、悪意ある攻撃に対する積極的な対策を実施していない場合もある。一般に、組織やグループのネットワークに対する外部からの接続を必要最小限に制限することによってこのような攻撃の危険性を減らすことは可能であるが、完全に防御することは困難であり、またこのような接続制限は直接ネットワークの利便性を低下させるという弊害を伴う。 【0007】よってデジタル複写機、プリンタにおいても、ネットワークからの悪意ある攻撃の存在を前提として、前述のごとき攻撃対象になりうる機能を稼動させる場合においては、不正アクセスが為されてしまった場合も想定し、機器側自体でなんらかの対策手段を持つ必要があるという課題があった。 【0008】本発明は、以上に点に着目して成されたもので、装置に対する不正アクセスを自動検知し、機器を自動停止する画像形成装置を提供することを目的とする。 【0009】 【課題を解決するための手段】この発明は下記の構成を備えることにより上記課題を解決できるものである。 【0010】(1)機器に対してソフトウエア制御権の不正な奪取、あるいは不正なデータ改ざんが行われたことを検知する、ソフトウエア不正アクセス検知手段と、機器を制御するコントローラ部の電源制御を、機器制御ソフトウエアから行うことが可能な電力制御手段と、を備え、前記ソフトウエア不正アクセス検知手段により、ソフトウエア制御権の不正な奪取が行われるか、もしくは不正なデータ改ざんが行われたことを検知した場合、前記電力制御手段を用いて機器全体の電源供給を停止し、機器そのものの動作を停止する制御手段を備えた、画像形成装置。 【0011】(2)前記ソフトウエア不正アクセス検知手段は、不正アクセスを検知するとその検知した情報を不揮発性メモリに記録することを特徴とする、前記(1)に記載の画像形成装置。 【0012】(3)前記電力制御手段は、機器制御ソフトウエアの停止処理を完了後、装置全体の電力供給を停止することを特徴とする前記(1)に記載の画像形成装置。 【0013】 【発明の実施の形態】以下で本発明の装置構成、及び異常検知、通報動作構成について詳細に説明する。 【0014】[ハードウエア] 全体構成全体構成図を図5に示す。コントロールユニット(Controller Unit)2000は画像入力デバイスであるスキャナ2070や画像出力デバイスであるプリンタ2095と接続し、一方ではLAN2011や公衆回線(WAN)2051接続することで、画像情報やデバイス情報の入出力を行う為のコントローラである。 【0015】CPU2001はシステム全体を制御するコントローラである。RAM2002はCPU2001が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ROM2003はブートROMであり、システムのブートプログラムが格納されている。HDD2004はハードディスクドライブで、システムソフトウエア、画像データを格納する。操作部I/F2006は操作部(UI)2012とインターフェイス部で、操作部2012に表示する画像データを操作部2012に対して出力する。 【0016】また、操作部2012から本システム使用者が入力した情報を、CPU2001に伝える役割をする。ネットワーク(Network)2010はLAN2011に接続し、情報の入出力を行う。モデム(MODEM)は公衆回線2051に接続し、情報の入出力を行う。以上のデバイスがシステムバス2007上に配置される。Image Bus I/F2005はシステムバス2007と画像データを高速で転送する画像バス2008を接続し、データ構造を変換するバスブリッジである。画像バス2008は、PCIバスまたはIEEE1394で構成される。 【0017】画像バス2008上には以下のデバイスが配置される。ラスターイメージプロセッサ(RIP)2060はPDLコードをビットマップイメージに展開する。デバイスI/F部2020は、画像入出力デバイスであるスキャナ2070やプリンタ2095とコントローラ2000を接続し、画像データの同期系/非同期系の変換を行う。スキャナ画像処理部2080は、入力画像データに対し補正、加工、編集を行う。プリンタ画像処理部は、プリント出力画像データに対して、プリンタの補正、解像度変換等を行う。画像回転部2030は画像データの回転を行う。画像圧縮部2040は、多値画像データはJPEG、2値画像画像データはJBIG、MMR、MHの圧縮伸張処理を行う。 【0018】2098は管理者への通報を行うための、無線通信装置である。この無線通信装置は機器から無線によって公衆回線、あるいはネットワークへの接続、通信が可能であり、例えばPHS、無線LAN装置などによって実現される。また無線通信装置2098による通信経路は、機器、もしくは公衆回線、ネットワークにおいて異常が発生した場合に管理者への通報手段として機能する必要があるため、通常の機器動作で使用される、LAN2011、WAN2051のような通信経路とは全く独立した構成としている。また図示しない電源供給手段についても、無線通信手段2098については独立させ、停電や主電力供給装置故障時においても通報可能である。 【0019】画像入出力部画像入出力デバイスを図6に示す。画像入力デバイスであるスキャナ2070は、原稿となる紙上の画像を照明し、CCDラインセンサ(図示せず)を走査することで、ラスターイメージデータ2071として電気信号に変換する。原稿用紙は原稿フィーダ2072のトレイ2073にセットし、装置使用者が操作部2012から読み取り起動指示することにより、コントローラCPU2001がスキャナ2070に指示であるラスターイメージデータ2071を与え、フィーダ2072は原稿用紙を1枚ずつフィードし原稿画像の読み取り動作を行う。 【0020】画像出力デバイスであるプリンタ部2095は、ラスターイメージデータ2096を用紙上の画像に変換する部分であり、その方式は感光体ドラムや感光体ベルトを用いた電子写真方式、微少ノズルアレイからインクを吐出して用紙上に直接画像を印字するインクジェット方式等があるが、どの方式でも構わない。プリント動作の起動は、コントローラCPU2001からの指示であるラスターイメージデータ2096によって開始する。プリンタ部2095には、異なる用紙サイズまたは異なる用紙向きを選択できるように複数の給紙段を持ち、それに対応した用紙カセット2101、2102、2103、2104がある。また、排紙トレイ2111は印字し終わった用紙を受けるものである。 【0021】操作部操作部2012の構成を図7に示す。LCD表示部2013は、LCD上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報をコントローラCPU2001に伝える。スタートキー2014は原稿画像の読み取り動作を開始する時などに用いる。スタートキー2014中央部には、緑と赤の2色LED2018があり、その色によってスタートキー2014が使える状態にあるかどうかを示す。ストップキー2015は稼働中の動作を止める働きをする。IDキー2016は、使用者のユーザIDを入力する時に用いる。リセットキー2017は操作部からの設定を初期化する時に用いる。 【0022】スキャナ画像処理部スキャナ画像処理部2080の構成を図8に示す。画像バスI/Fコントローラ2081は、画像バス2008と接続し、そのバスアクセスシーケンスを制御する働きと、スキャナ画像処理部2080内の各デバイスの制御及びタイミングを発生させる。フィルタ処理部2082は、空間フィルタでコンボリューション演算を行う。編集部2083は、例えば入力画像データからマーカーペンで囲まれた閉領域を認識して、その閉領域内の画像データに対して、影つけ、網掛け、ネガポジ反転等の画像加工処理を行う。変倍処理部2084は、読み取り画像の解像度を変える場合にラスターイメージの主走査方向について補間演算を行い拡大、縮小を行う。副走査方向の変倍については、画像読み取りラインセンサ(図示せず)を走査する速度を変えることで行う。テーブル2085は、読み取った輝度データである画像データを濃度データに変換するために、行うテーブル変換である。2値化2086は、多値のグレースケール画像データを、誤差拡散処理やスクリーン処理によって2値化する。 【0023】処理が終了した画像データは、再び画像バスコントローラ2081を介して、画像バス上に転送される。 【0024】プリンタ画像処理部プリンタ画像処理部2090の構成を図9に示す。画像バスI/Fコントローラ2091は、画像バス2008と接続し、そのバスアクセスシーケンスを制御する働きと、スキャナ画像処理部2090内の各デバイスの制御及びタイミングを発生させる。解像度変換部2092は、ネットワーク2010あるいは公衆回線2051から来た画像データを、プリンタ2095の解像度に変換するための解像度変換を行う。スムージング処理部2093は、解像度変換後の画像データのジャギー(斜め線等の白黒境界部に現れる画像のがさつき)を滑らかにする処理を行う。 【0025】画像圧縮部画像圧縮部2040の構成を図10に示す。画像バスI/Fコントローラ2041は、画像バス2008と接続し、そのバスアクセスシーケンスを制御する働き、入力バッファ2042,出力バッファ2045とのデータのやりとりを行うためのタイミング制御及び、画像圧縮部2043に対するモード設定などの制御を行う。以下に画像圧縮処理部の処理手順を示す。 【0026】画像バス2008を介して、CPU2001から画像バスI/Fコントローラ2041に画像圧縮制御のための設定を行う。この設定により画像バスI/Fコントローラ2041は画像圧縮部2043に対して画像圧縮に必要な設定(たとえばMMR圧縮・JBIG伸長等の)を行う。必要な設定を行った後に、再度CPU2001から画像バスI/Fコントローラ2041に対して画像データ転送の許可を行う。この許可に従い、画像バスI/Fコントローラ2041はRAM2002もしくは画像バス2008上の各デバイスから画像データの転送を開始する。受け取った画像データは入力バッファ2042に一時格納され、画像圧縮部2043の画像データ要求に応じて一定のスピードで画像を転送する。この際、入力バッファは画像バスI/Fコントローラ2041と、画像圧縮部2043両者の間で、画像データを転送できるかどうかを判断し、画像バス2008からの画像データの読み込み及び、画像圧縮部2043への画像の書き込みが不可能である場合は、データの転送を行わないような制御を行う(以後このような制御をハンドシェークと呼称する)。画像圧縮部2043は受け取った画像データを、一旦RAM2044に格納する。これは画像圧縮を行う際には行う画像圧縮処理の種類によって、数ライン分のデータを要するためであり、最初の1ライン分の圧縮を行うためには数ライン分の画像データを用意してからでないと画像圧縮が行えないためである。画像圧縮を施された画像データは直ちに出力バッファ2045に送られる。出力バッファ2045では、画像バスI/Fコントローラ2041及び画像圧縮部2043とのハンドシェークを行い、画像データを画像バスI/Fコントローラ2041に転送する。画像バスI/Fコントローラ2041では転送された圧縮(もしくは伸長)された画像データをRAM2002もしくは画像バス2008上の各デバイスにデータを転送する。こうした一連の処理は、CPU2001からの処理要求が無くなるまで(必要なページ数の処理が終わったとき)、もしくはこの画像圧縮部から停止要求が出るまで(圧縮及び伸長時のエラー発生時等)繰り返される。 【0027】画像回転部画像回転部2030の構成を図12に示す。画像バスI/Fコントローラ2031は、画像バス2008と接続し、そのバスシーケンスを制御する働き、画像回転部2032にモード等を設定する制御及び、画像回転部2032に画像データを転送するためのタイミング制御を行う。以下に画像回転部の処理手順を示す。 【0028】画像バス2008を介して、CPU2001から画像バスI/Fコントローラ2031に画像回転制御のための設定を行う。この設定により画像バスI/Fコントローラ2041は画像回転部2032に対して画像回転に必要な設定(たとえば画像サイズや回転方向・角度等)を行う。必要な設定を行った後に、再度CPU2001から画像バスI/Fコントローラ2041に対して画像データ転送の許可を行う。この許可に従い、画像バスI/Fコントローラ2031はRAM2002もしくは画像バス2008上の各デバイスから画像データの転送を開始する。尚、ここでは32bitをそのサイズとし回転を行う画像サイズを32×32(bit)とし、又、画像バス2008上に画像データを転送させる際に32bitを単位とする画像転送を行うものとする(扱う画像は2値を想定する)。 【0029】上述のように、32×32(bit)の画像を得るためには、上述の単位データ転送を32回行う必要があり、且つ不連続なアドレスから画像データを転送する必要がある(図13参照)。 【0030】不連続アドレッシングにより転送された画像データは、読み出し時に所望の角度に回転されているように、RAM2033に書き込まれる。例えば、90度反時計方向回転であれば、最初に転送された32bitの画像データを、図14のようにY方向に書き込んでいく。読み出し時にX方向に読み出すことで、画像が回転される。 【0031】32×32(bit)の画像回転(RAM2033への書き込み)が完了した後、画像回転部2032はRAM2033から上述した読み出し方法で画像データを読み出し、画像バスI/Fコントローラ2031に画像を転送する。 【0032】回転処理された画像データを受け取った画像バスI/Fコントローラ2031は、連続アドレッシングを以って、RAM2002もしくは画像バス2008上の各デバイスにデータを転送する。 【0033】こうした一連の処理は、CPU2001からの処理要求が無くなるまで(必要なページ数の処理が終わったとき)繰り返される。 【0034】デバイスI/F部デバイスI/F部2020の構成を図11に示す。画像バスI/Fコントローラ2021は、画像バス2008と接続し、そのバスアクセスシーケンスを制御する働きと、デバイスI/F部2020内の各デバイスの制御及びタイミングを発生させる。また、外部のスキャナ2070及びプリンタ2095への制御信号を発生させる。スキャンバッファ2022は、スキャナ2070から送られてくる画像データを一時保存し、画像バス2008に同期させて画像データを出力する。シリアルパラレル・パラレルシリアル変換2023は、スキャンバッファ2022に保存された画像データを順番に並べて、あるいは分解して、画像バス2008に転送できる画像データのデータ幅に変換する。パラレルシリアル・シリアルパラレル変換2024は、画像バス2008から転送された画像データを分解して、あるいは順番に並べて、プリントバッファ2025に保存できる画像データのデータ幅に変換する。プリントバッファ2025は、画像バス2008から送られてくる画像データを一時保存し、プリンタ2095に同期させて画像データを出力する。 【0035】画像スキャン時の処理手順を以下に示す。スキャナ2070から送られてくる画像データをスキャナ2070から送られてくるタイミング信号に同期させて、スキャンバッファ2022に保存する。そして、画像バス2008がPCIバスの場合には、バッファ内に画像データが32ビット以上入ったときに、画像データを先入れ先出しで32ビット分、バッファからシリアルパラレル・パラレルシリアル変換2023に送り、32ビットの画像データに変換し、画像バスI/Fコントローラ2021を通して画像バス2008上に転送する。また、画像バス2008がIEEE1394の場合には、バッファ内の画像データを先入れ先出しで、バッファからシリアルパラレル・パラレルシリアル変換2023に送り、シリアル画像データに変換し、画像バスI/Fコントローラ2021を通して画像バス2008上に転送する。 【0036】画像プリント時の処理手順を以下に示す。画像バス2008がPCIバスの場合には、画像バスから送られてくる32ビットの画像データを画像バスI/Fコントローラで受け取り、パラレルシリアル・シリアルパラレル変換2024に送り、プリンタ2095の入力データビット数の画像データに分解し、プリントバッファ2025に保存する。また、画像バス2008がIEEE1394の場合には、画像バスからおくられてくるシリアル画像データを画像バスI/Fコントローラで受け取り、パラレルシリアル・シリアルパラレル変換2024に送り、プリンタ2095の入力データビット数の画像データに変換し、プリントバッファ2025に保存する。そして、プリンタ2095から送られてくるタイミング信号に同期させて、バッファ内の画像データを先入れ先出しで、プリンタ2095に送る。 【0037】[ソフトウエア] システム全体本発明のネットワークシステム全体の構成図を図3に示す。1001は本発明の装置で、後述するスキャナとプリンタから構成され、スキャナから読み込んだ画像をローカルエリアネットワーク1010(以下LAN)に流したり、LAN1010から受信した画像をプリンタによりプリントアウトできる。また、スキャナから読んだ画像を図示しないFAX送信手段により、PSTNまたはISDN1030に送信したり、PSTNまたはISDN1030から受信した画像をプリンタによりプリントアウトできる。1002は、データベースサーバで、本発明の装置1001により読み込んだ2値画像及び多値画像をデータベースとして管理する。1003は、データベースサーバ1002のデータベースクライアントで、データベース1002に保存されている画像データを閲覧/検索等できる。1004は、電子メールサーバで、本発明の装置1001により読み取った画像を電子メールの添付として受け取ることができる。1005は、電子メールのクライアントで、電子メールサーバ1004の受け取ったメールを受信し閲覧したり、電子メールを送信したり、可能である。1006がHTML文書をLANに提供するWWWサーバで、本発明の装置1001によりWWWサーバで提供されるHTML文書をプリントアウトできる。1007は、ルータでLAN1010をインターネット/イントラネット1012と連結する。インターネット/イントラネット1012に、前述したデータベースサーバ1002、WWWサーバ1006、電子メールサーバ1004、本発明の装置1001と同様の装置1020が、それぞれ、データベースサーバ1021、WWWサーバ1022、電子メールサーバ1023として連結している。またネットワーク上から本発明の装置を含む各種機器を使用可能なようにユーザのホスト1050が接続されている。 【0038】一方、本発明の装置1001は、PSTNまたはISDN1030を介して、FAX装置1031と送受信可能になっている。また、LAN上にプリンタ1040も連結されており、本発明の装置1001により読み取った画像をプリントアウト可能なように構成されている。 【0039】ソフトウエアブロック全体構成図4は、本発明を実施した複合機のソフトウエアブロック図である。 【0040】1501はUI即ちユーザインターフェイスを司るものであり、オペレータが本複合機の各種操作・設定を行う際、機器との仲介を行うモジュールである。本モジュールは、オペレータの操作に従い、後述の各種モジュールに入力情報を転送し処理の依頼、或いはデータの設定等を行う。 【0041】1502はAddress−Book即ちデータの送付先、通信先等を管理するデータベースモジュールである。Address−Book1502の内容は、UI1501からの操作によりデータの追加、削除、取得が行われ、オペレータの操作により後述の各モジュールにデータの送付・通信先情報を与えるものとして使用されるものである。 【0042】1503はWeb−Serverモジュールであり、図外のWebクライアントからの要求により、本複合機の管理情報を通知するために使用される。管理情報は、後述のControll−API1518を介して読み取られ、後述のHTTP1512、TCP/IP1516、Network−Driver1517を介してWebクライアントに通知される。 【0043】1504はUniversal−Send即ち、データの配信を司るモジュールであり、UI1501によりオペレータに指示されたデータを、同様に指示された通信(出力)先に配布するものである。また、オペレータにより、本機器のスキャナ機能を使用し配布データの生成が指示された場合は、後述のControll−API1518を介して機器を動作させ、データの生成を行う。 【0044】1505はUniversal−Send1504内で出力先にプリンタが指定された際に実行されるモジュールである。 【0045】1506はUniversal−Send1504内で通信先にE−mailアドレスが指定された際に実行されるモジュールである。 【0046】1507はUniversal−Send1504内で出力先にデータベースが指定された際に実行されるモジュールである。 【0047】1508はUniversal−Send1504内で出力先に本機器と同様の複合機が指定された際に実行されるモジュールである。 【0048】1509はRemote−Copy−Scanモジュールであり、本複合機のスキャナ機能を使用し、ネットワーク等で接続された他の複合機を出力先とし、本複合機単体で実現しているCopy機能と同等の処理を行うモジュールである。 【0049】1510はRemote−Copy−Printモジュールであり、本複合機のプリンタ機能を使用し、ネットワーク等で接続された他の複合機を入力先とし、本複合機単体で実現しているCopy機能と同等の処理を行うモジュールである。 【0050】1511はWeb−Pull−Print即ちインターネットまたはイントラネット上の各種ホームページの情報を読み出し、印刷するモジュールである。 【0051】1512は本複合機がHTTPにより通信する際に使用されるモジュールであり、後述のTCP/IP1516モジュールにより前述のWeb−Server1503、Web−Pull−Print1511モジュールに通信を提供するものである。 【0052】1513はlprモジュールであり、後述のTCP/IP1516モジュールにより前述のUniversal−Send1504内のプリンタモジュール1505に通信を提供するものである。 【0053】1514はSMTPモジュールであり、後述のTCP/IP1516モジュールにより前述のUniversal−Send1504内のE−mailモジュール1506に通信を提供するものである。 【0054】1515はSLM即ちSalutation−Managerモジュールであり、後述のTCP/IP1516モジュールにより前述のUniversal−Send1504内のデータベースモジュール1517、DPモジュール1518、及びRemote−Copy−Scan1509モジュール、Remote−Copy−Print1510モジュールに通信を提供するものである。 【0055】1516はTCP/IP通信モジュールであり、前述の各種モジュールに後述のNetwork−Driverによりネットワーク通信を提供するものである。 【0056】1517はネットワークドライバであり、ネットワークに物理的に接続される部分を制御するものである。 【0057】1518はControll−APIであり、Universal−Send1504等の上流モジュールに対し、後述のJob−Manager1519等の下流モジュールとのインターフェイスを提供するものであり、上流、及び下流のモジュール間の依存関係を軽減しそれぞれの流用性を高めるものである。 【0058】1519はJob−Managerであり、前述の各種モジュールよりControll−API1518を介して指示される処理を解釈し、後述の各モジュールに指示を与えるものである。また、本モジュールは、本複合機内で実行されるハード的な処理を一元管理するものである。 【0059】1520はCODEC−Managerであり、Job−Manager1519が指示する処理の中でデータの各種圧縮・伸長を管理・制御するものである。 【0060】1521はFBE−Encoderであり、Job−Manager1519、Scan−Manager1524により実行されるスキャン処理により読み込まれたデータをFBEフォーマットにより圧縮するものである。 【0061】1522はJPEG−CODECであり、Job−Manager1519、Scan−Manager1524により実行されるスキャン処理、及びPrint−Manager1526により実行される印刷処理において、読み込まれたデータのJPEG圧縮及び印刷データのJPEG展開処理を行うものである。 【0062】1523はMMR−CODECであり、Job−Manager1519、Scan−Manager1524により実行されるスキャン処理、及びPrint−Manager1526により実行される印刷処理において、読み込まれたデータのMMR圧縮及び印刷データのMMR伸長処理を行うものである。 【0063】1524はScan−Managerであり、Job−Manager1519が指示するスキャン処理を管理・制御するものである。 【0064】1525はSCSIドライバであり、Scan−Manager1524と本複合機が内部的に接続しているスキャナ部との通信を行うものである。 【0065】1526はPrint−Managerであり、Job−Manager1519が指示する印刷処理を管理・制御するものである。 【0066】1527はEngine−I/Fドライバであり、Print−Manager1526と印刷部とのI/Fを提供するものである。 【0067】1528はパラレルポートドライバであり、Web−Pull−Print1511がパラレルポートを介して図外の出力機器にデータを出力する際のI/Fを提供するものである。 【0068】SecurityMonitor1550は機器の動作状態および環境状態を監視する、機器状態監視モジュールである。SecurityMonitor1550は、ソフトウエア、ハードウエア、および機器の設置環境の状態を常に監視し、異常を検知した場合は管理者通報手段を起動、異常発生を機器管理者へ通報するものである。 【0069】アプリケーション以下、本発明の組み込みアプリケーションの実施の形態について図面を用いて説明する。 【0070】図63は、本発明の配信に関する組み込みアプリケーションブロックを表すものである。 【0071】4050は、後記図15で説明する本発明の操作部アプリケーションを示すブロック図である。 【0072】4100は、リモートコピーアプリケーションの送信側を示すブロック図である。 【0073】4150は、同報配信の送信側を示すブロック図である。 【0074】4200は、Web Pull Printモジュールを示すブロック図である。 【0075】4250は、Web Serverモジュールを示すブロック図である。 【0076】4300は、リモートコピーの受信側(プリント側)を示すブロック図である。 【0077】4350は、同報配信で送信されてきたイメージを汎用のプリンタで受信・プリントするブロック図である。 【0078】4400は、リモートプリントの受信側(プリント側)を示すブロック図である。 【0079】4450は、同報配信で送信されてきたイメージを公知のNotes Serverで受信・格納するブロック図である。 【0080】4500は、同報配信で送信されてきたイメージを2値のイメージを受信・格納するブロック図である。 【0081】4550は、同報配信で送信されてきたイメージを公知のMail Serverで受信・格納するブロック図である。 【0082】4600は、同報配信で送信されてきたイメージを多値のイメージを受信・格納するブロック図である。 【0083】4650は、情報コンテンツを含んだ、公知のWeb Serverを示すブロック図である。 【0084】4700は、本発明のWeb Serverなどにアクセスする公知のWebBrowserである。 【0085】以下、それぞれのブロックに照らし合わせながら、アプリケーション群の説明を詳細に行う。 【0086】User Interface アプリケーションブロック図4050に示したUser Interface(以下、UI)の詳細は、前記したとおりであるが、ここでは、Address Book4051について説明する。このAddress Book4051は、本発明の機器内の不揮発性の記憶装置(不揮発性メモリやハードディスクなど)に保存されており、この中には、ネットワークに接続された機器の特徴が記載されている。例えば、以下に列挙するようなものが含まれている。 【0087】 機器の正式名やエイリアス名機器のネットワークアドレス機器の処理可能なネットワークプロトコル機器の処理可能なドキュメントフォーマット機器の処理可能な圧縮タイプ機器の処理可能なイメージ解像度プリンタ機器の場合の給紙可能な紙サイズ、給紙段情報サーバ(コンピュータ)機器の場合のドキュメントを格納可能なフォルダ名以下に説明する各アプリケーションは、上記Address Book4051に記載された情報により配信先の特徴を判別することが可能となる。 【0088】また、このAddress Book4051は、編集可能であると共に、ネットワーク内のサーバコンピュータなどに保存されているものをダウンロードして使用する、または、直接参照することも可能である。 【0089】リモートコピーアプリケーションリモートコピーアプリケーションは、配信先に指定された機器の処理可能な解像度情報を前記Address Book4051より判別し、それに従い、スキャナにより読み取った画像2値画像を公知のMMR圧縮を用いて圧縮し、それを公知のTIFF(Tagged Image File Format)化し、SLM4103に通して、ネットワーク上のプリンタ機器に送信する。SLM4103とは、詳細には説明しないが、公知のSalutation Manager(または、Smart Link Manager)と呼ばれる機器制御情報などを含んだネットワークプロトコルの一種である。 【0090】同報配信アプリケーション同報配信アプリケーションは、前記リモートコピーアプリケーションと違い、一度の画像走査で複数の配信宛先に画像を送信する事が可能である。また、配信先もプリンタ機器にとどまらず、いわゆるサーバコンピュータにも直接配信可能である。 【0091】以下、配信先に従って純に説明する。 【0092】配信先の機器が公知のネットワークプリンタプロトコルであるLPD(Line Printer Daemon)、プリンタ制御コマンドとして公知のLIPSを処理可能だとAddress Book4051より判別した場合、同様にAddress Book4051より判別した画像解像度に従って画像読み取りを行い、画像自体は、本実施例では、公知のFBE(First Binari Encoding)を用いて圧縮し、さらにLIPSコード化して、公知のネットワークプリンタプロトコルであるLPRで相手機器に送信する。 【0093】配信先の機器が前記SLMで通信可能で、サーバ機器の場合、AddressBook4051より、サーバドレス、サーバ内のフォルダの指定を判別し、リモートコピーアプリケーションと同様に、スキャナにより読み取った画像2値画像を公知のMMR圧縮を用いて圧縮し、それを公知のTIFF(TaggedImage File Format)化し、SLMを通して、ネットワーク上のサーバ機器の特定のフォルダに格納する事が可能である。 【0094】また、本実施例の機器では、相手機器であるサーバが公知のJPEG圧縮された多値画像を処理可能だと判別した場合、前記の2値画像と同様に多値読み取りした画像を公知のJPEG圧縮を用いて、やはり公知のJFIF化し、SLMを通して、ネットワーク上のサーバ機器の特定のフォルダに格納する事が可能である。 【0095】配信先の機器が公知のE−Mailサーバである場合、Address Book4051に記載されたメールアドレスを判別し、スキャナにより読みとった画像2値画像を公知のMMR圧縮を用いて圧縮し、それを公知のTIFF(Tagged Image File Format)し、公知のSMTP(Simple Mail Transfer Protcol)4153を使用して、E−Mailサーバに送信する。その後の配信は、Mail Server4550に従って実行される。 【0096】Web Pull Print アプリケーションWeb Pull Printアプリケーションは、本実施例と直接関係しないので、説明は省略する。 【0097】Web Server アプリケーションWeb Serverアプリケーションは、本実施例と直接関係しないので、説明は省略する。 【0098】操作部概要操作部の構成を図15〜図62に示す。LCD表示部3001は、LCD上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報をコントローラCPUに伝える。スタートキー3002は原稿画像の読取り動作を開始する時などに用いる。スタートキー中央部には、緑と赤の2色LEDがあり、その色によってスタートキーが使える状態にあるかどうかを示す。ストップキー3003は稼働中の動作を止める働きをする。IDキー3004は使用者のユーザIDを入力するときに用いる。リセットキー3005は操作部からの設定を初期化するときに用いる。以下で操作部の各画面について詳細に説明する。 【0099】操作画面本発明の装置が提供する機能は、Copy/Send/Retrieve/Tasks/Management/Configurationの6つの大きなカテゴリーに分かれており、これらは操作画面3010上の上部に表示される6つのメインタブ(COPY/SEND/RETREIVE/TASKS/MGMT/CONFIG)(3011〜3016に対応している。これらのメインタブを押すことにより、各カテゴリーの画面への切り替えが行われる。他カテゴリーへの切り換えが許可されない場合は、メインタブの表示色が変わり、メインタブを押しても反応しない。 【0100】Copyは自機が有するスキャナとプリンタを使用して通常のドキュメント複写を行う機能と、自機が有するスキャナとネットワークで接続されたプリンタを使用してドキュメントの複写を行う機能(リモートコピー)を含む。Sendは自機が有するスキャナに置かれたドキュメントを、電子メール、リモートプリンタ、ファックス、ファイル転送(FTP)およびデータベースに転送する機能であり、宛先を複数指定することが可能である。Retrieveは外部にあるドキュメントを取得し、自機が有するプリンタで印刷する機能である。ドキュメントの取得手段としてWWW、電子メール、ファイル転送およびファックスの使用が可能である。Tasksはファックスやインターネットプリントなどの外部から送られるドキュメントを自動処理し、定期的にRetrieveを行うためのタスクの生成、管理を行う。Managementはジョブ・アドレス帳・ブックマーク・ドキュメント・アカウント情報などの管理を行う。Configurationでは自機に関しての設定(ネットワーク、時計など)を行う。 【0101】以下、これらの機能設定を行う方法をLCD画面表示の例を使用して説明する。 【0102】ID入力画面電源投入直後およびIDキー押下時にID入力画面3020が表示される。ID入力画面でユーザIDおよびパスワードを正しく入力し、OKボタンを押すと、前述の操作画面が表示され、操作が可能になる。ID入力領域3021とパスワード入力領域3022の切り換えは、入力領域を直接押すことで切替えることができる。 【0103】COPY画面COPY画面表示時にスタートボタンを押すと、スキャナが動作し、選択されているプリンタから画面上に表示されている各設定パラメータに応じた複写物が出力される。 【0104】COPYメイン画面3100はプリンタ選択ボタン3103およびプリンタ表示領域3102、Image Quality選択ボタン3105およびImage Quality表示領域3104、従来の複写機と同様のコピーパラメータ表示3101、拡大縮小設定ボタン3106,3107、紙選択ボタン3108、ソータ設定ボタン3110、両面コピー設定ボタン3112、濃度インジケータおよび濃度設定ボタン3109、テンキー3114から構成される。 【0105】プリンタ選択ボタン3103を押すと、使用可能なプリンタ(自機が有するプリンタおよびネットワークで接続されたプリンタ)の一覧3120がプルダウン表示される。一覧の中から所望のプリンタを選択すると、一覧が消え、プリンタ表示領域3102に選択したプリンタ名が表示される。 【0106】Image Quality設定ボタン3105を押すと、Image Quality一覧3125が表示され、その中から所望のImage Qualityを選択することができる。 【0107】前述のコピーパラメータ設定ボタンを押すと、それぞれに対応した設定を行うためのサブ画面(拡大縮小設定:3130、紙選択:3140、ソータ設定:3150、両面コピー設定:3160)が表示され、従来の複写機での設定と同様にパラメータを設定することができる。また濃度設定も従来の複写機と同様に操作することができる。 【0108】SEND画面Send画面表示時にスタートボタンが押されると、スキャナが動作し、読取った画像データを設定された宛先に指定された送信方法で送信する処理が開始される。 【0109】SENDメイン画面3200は、宛先表示領域3202、詳細宛先数表示領域3203、宛先スクロールボタン3204、アドレスブックボタン3208、Newボタン3209、Editボタン3210、Deleteボタン3211、Subject入力領域3205、Message入力領域3206、FileName入力領域3207、Cover pageチェックボタン3212、Put Into HDチェックボタン3213、Print Outチェックボタン3214、Scan Settingボタン3215から構成される。リセットを含む初期化時にはSEND初期画面3201に示すように、宛先表示領域には1つの宛先も表示されず、操作説明画面が表示される。 【0110】宛先表示領域3202には入力された宛先の一覧が表示される。入力は順次末尾に追加される。詳細宛先数表示領域3203には現在設定されている宛先数が表示される。 【0111】宛先表示領域からある宛先を選択した後、Deleteボタン3211を押すと、選択されていた宛先が削除される。 【0112】Subject入力領域3205、Message入力領域3206、File Name入力領域3207を押すと、フルキーボードが表示され、それぞれの入力が可能になる。 【0113】アドレスブックサブ画面Address Bookボタン3208を押すと、アドレスブックサブ画面3220が表示される。アドレス帳表示領域3221で選択マーク3232を付けられた宛先は、OKボタン3231を押すことにより、SENDメイン画面の宛先表示領域3202に追加される。アドレス帳の表示はソート項目設定ボタン3224〜3226を押すことによりクラス別、名前昇順、名前降順にソートされる。項目選択件数表示領域3227には選択マークの付けられた項目数を表示する。 【0114】OKボタン3231またはキャンセルボタン3230が押されると、アドレスブックサブ画面はクローズされ、SENDメイン画面が表示される。 【0115】アドレス帳の中の1つの項目を選択した状態でDetailボタン3229を押すと、Detailサブ画面3235が表示される。Detailサブ画面には選択された項目の情報としてアドレス帳から得られるすべての情報が表示される。 【0116】サーチサブ画面アドレスブックサブ画面内のSearchボタン3228を押すとローカルアドレス帳または外部にあるアドレスサーバから宛先を検索するためのサーチサブ画面3240が表示される。サーチサブ画面上部は検索条件設定部分である。検索対象クラス表示領域3245、検索対象属性表示領域3247、検索対象条件表示領域3249、検索対象アドレスブック表示領域3252には現在選択されているものが表示される。検索対象クラス設定ボタン3246を押すと、検索対象クラス一覧が表示される(3260)。この一覧から選択されたものが検索対象クラス表示領域に表示される。検索対象属性設定ボタン3248を押すことによって検索対象属性一覧が表示される(3261)。この一覧に表示される属性は選択されている検索対象クラスによって次のように変化する。CommonName・Address・Country(クラス:Person)、Common Name・Owner・Location・Model・Type・Resolution・Color・Finisher(クラス:Printer)、Common Name・Member(クラス:Group)、すべての属性(クラス:Everything)。検索対象条件設定ボタン3250を押すと、検索対象条件一覧が表示され(3262)、その一覧の中から条件を選択する。検索対象アドレスブック設定ボタン3253を押すと、検索対象アドレスブックの一覧が表示され(3263)、その中から選択することが可能になる。検索対象属性値入力領域3251を押すと、フルキーボード3040が表示され、値を入力することが可能になる。 【0117】Do Searchボタン3254を押すと、設定された検索条件に従って検索が行われる。検索結果は検索結果表示領域3241に表示され、検索結果件数表示領域3244に件数が表示される。 【0118】検索結果表示領域の項目のうち1つを選択した状態でDetailボタン3255を押すと、その項目に対する詳細情報3235が表示される。 【0119】検索結果表示領域内の項目で宛先に追加するものには選択マークを付加する(3265)。OKボタン3257を押すと、サーチサブ画面がクローズされ、SENDメイン画面に戻り、選択マークが付加されていた項目が宛先に追加される。キャンセルボタン3256を押した場合はサーチサブ画面がクローズされ、SENDメイン画面に戻るが、宛先に変化はない。 【0120】詳細宛先サブ画面SENDメイン画面のNewボタン3209を押すとが表示され、新しい宛先の設定が可能になる。宛先の入力は送信方法(電子メール、ファックス、プリンタ、FTP)に対応した送信方法選択ボタン3271〜3274を押すか、詳細宛先入力領域3275〜3278を押すと、ファックスの場合はテンキーボード3050、その他はフルキーボード3040が表示され、入力可能になる。3279〜3282はそれぞれの送信方法の送信オプションを行うためのボタンであるが、ここでは詳細な説明は省略する。 【0121】SENDメイン画面でPersonクラスの宛先が選択されている状態でEditボタン3210が押された場合もPersonクラス詳細サブ画面3290が表示される。詳細宛先入力領域3275〜3278の該当する領域に、選択された宛先の詳細が表示され、前述した方法でキーボードを表示すると、宛先の編集が可能になる。 【0122】SENDメイン画面でData Baseクラスの宛先が選択されている状態でEditボタン3210が押された場合、Data Baseクラス詳細サブ画面3310が表示される。データベースクラス詳細サブ画面にはデータベース名3311、フォルダリスト3312が表示される。 【0123】SENDメイン画面でGroupクラスの宛先が選択されている状態でEditボタン3210が押された場合Groupクラス詳細サブ画面3320が表示される。Groupクラス詳細サブ画面にはグループメンバー表示3321がされる。 【0124】HD SETTINGサブ画面Put Into HDチェックボタン3213を押すと、ハードディスクに送信するための設定を行うHD SETTINGサブ画面3330が表示される。詳細説明は省略する。 【0125】Print Outサブ画面Print Outチェックボタン3214を押すと、プリントアウトサブ画面3340が表示される。プリントアウトサブ画面ではプリント枚数、紙サイズ、拡大縮小率、両面印刷、ソート、解像度などを設定する。紙サイズ選択ボタン3345を押すと、紙サイズの一覧3360が表示され、そこから選択する。ソータ選択ボタン3350を押すと、選択可能なソータ一覧3365が表示される。 【0126】Scan Settingサブ画面Scan Settingボタン3215を押すと、 Scan Settingサブ画面3370が表示される。 Scan Settingサブ画面内のPresetモード選択領域3371からスキャン設定を1つ選択すると、それに対応する予め設定された解像度、スキャンモード、濃度がそれぞれの表示領域3377、3379、3381に表示される。これらの値は手動で変えることが可能である。3390は紙サイズ選択一覧をプルダウン表示した状態の画面で、この一覧から使用する紙のサイズ、向きを選択する。3391、3392はそれぞれ、解像度、スキャンモード一覧をプルダウン表示した状態を示している。 【0127】RETRIEVE画面RETRIEVEメイン画面3400にはWWW3401、E−mail3402、Fax3403、FTP3404のサブタブおよび各サブカテゴリーで共通に使用されるPUT INTO HDチェックボタン3405、PRINTSETTINGボタン3406が表示される。サブタブを押すことによって対応するWWW、E−mail、Fax、FTPの各サブ画面が表示される。リセットを含む初期化時にはWWWサブ画面が表示される。 【0128】WWWサブ画面WWWサブ画面表示時にスタートボタンを押すと、画面上に表示されている各設定に従ってホームページが印刷される。ただし、URL入力領域に何も表示されていない時にスタートボタンが押されても何も機能しない。 【0129】WWWサブ画面3400上のURL入力領域3411を押すと、フルキーボード3040が表示され、URLの直接入力が可能になる。Link Depth3412およびMax Pages3414入力領域を押すと、テンキーボード3050が表示され、数値を直接入力することが可能になる。 【0130】Bookmarkサブ画面Bookmarkボタン3419を押すと、Bookmarkサブ画面3460が表示される。Bookmarkサブ画面中のブックマーク表示領域3461には設定されているブックマークの一覧が表示され、どれか1つの行を押すことによって選択表示状態となる。OKボタン3466を押すとBookmarkサブ画面がクローズされ、選択状態にあった項目に該当するURLがWWWサブ画面のURL入力領域に表示される。Bookmarkサブ画面中のその他のボタンの機能の説明は省略する。 【0131】E−mailサブ画面E−mailサブ画面3430ではE−mailを受け取るための設定を行う。各入力領域3431〜3433を押すとフルキーボード3040が表示され、入力可能になる。 【0132】Faxサブ画面Faxサブ画面3440ではファックス番号の入力を行う。入力領域3441を押すと、テンキーボード3050が表示され、ファックス番号入力が可能になる。 【0133】FTP Serverサブ画面FTP Serverサブ画面3450ではサーバからデータを受け取るための設定を行う。各入力領域3451〜3453を押すとフルキーボード3040が表示され、入力可能になる。 【0134】HD Settingサブ画面各カテゴリーに共通のPut Into HDチェックボタン3405を押すと、HD Settingサブ画面3330が表示される。機能はSendのHD Settingサブ画面と同様である。 【0135】Print Settingサブ画面各カテゴリーに共通のPrint Settingボタン3406を押すと、Print Settingサブ画面3470が表示される。機能はSendのPrint Outサブ画面と同様である。 【0136】TASKS画面TASKS画面が表示されている状態でスタートキーが押されると、TASKS画面上で設定されたパラメータに従って、自動的なRETRIEVE動作が実行される。 【0137】TASKSメイン画面3500にはWWW、E−mail、Print Receive、Fax Receive、Fax Pollingのサブタブ3501〜3505が表示される。リセットを含む初期化時にはWWWサブ画面3500が表示される。 【0138】WWWサブ画面WWWタスク一覧表示領域3511には機器内に保持されているタスクが入力された順番で表示されている。実際に実行する必要のあるタスクには選択マークを付加する。選択マークが表示されていないタスクはタスクとして機器内に保持されているが、実際には実行されない。 【0139】Newボタン3513を押すと、WWWタスク詳細サブ画面3520が表示され、新規にタスクの入力が可能となる。WWWタスク詳細サブ画面については後述する。 【0140】WWWタスク一覧から1つタスクを選択した状態でEditボタン3514を押すと、選択されているタスク情報が含まれるWWWタスク詳細サブ画面3520が表示され、設定を編集することが可能になる。 【0141】WWWタスク一覧から1つタスクを選択した状態でDeleteボタン3515を押すと、選択されたタスクは削除される。 【0142】WWWタスク詳細サブ画面WWWタスク詳細サブ画面3520にはRETRIEVEメイン画面とRETRIEVEのWWWサブ画面に共通の機能を持つコンポーネント3521〜3533、チェックタイム表示領域3534、チェックタイム設定ボタン3535、PRINT WHEN CHANGEDチェックボタン3536、転送チェックボタン3537、OKボタン3539、キャンセルボタン3538が表示される。RETRIEVEと共通の部分の説明は省略する。 【0143】チェックタイム表示領域3534は、WWWタスク設定サブ画面がNewボタンによって表示された場合は空白、Editボタンによって表示された場合は設定されていたタスク実行時刻が表示されている。また、後述するチェックタイムサブ画面で設定が行われた直後は設定されたタスク実行時刻が表示される。 【0144】チェックタイム設定ボタン3535が押されると後述するチェックタイムサブ画面が表示され、タスクを実行するタイミングを設定することが可能になる。 【0145】チェックタイムサブ画面チェックタイムサブ画面3550にはスケジュールモード設定ボタン3551〜3553、時刻入力領域3554、OKボタン3558、キャンセルボタン3557が表示される。その他にスケジュールモード設定ボタンのうち、Onceボタン3551が選択されている場合は月入力領域3555、日付入力領域3556が表示される。Weeklyボタン3552選択時は曜日設定チェックボタン3561が表示される。Monthlyボタン3553選択時は日付入力領域3571が表示される。それぞれの入力領域を押すと、テンキーボード3050が表示され、数値の入力が可能になる。曜日設定チェックボタンは複数の曜日の選択が可能である。 【0146】MGMT画面3600はManagement画面である。詳細な説明は省略する。 【0147】CONFIG画面3700はConfiguration画面である。詳細な説明は省略する。 【0148】フルキーボードフルキーボード3040は文字の入力領域が押されたときに表示される。www.ボタン3041、comボタン3042を押すと、それぞれ“www.”、“com”の文字が入力される。その他のキーは従来通りの機能であるため、説明は省略する。 【0149】テンキーボードテンキーボード3050は数値入力領域または月入力領域が押されたときに表示される。各キーについての説明は省略する。 【0150】エラー画面エラー画面3030は何らかのエラーがあった場合に表示される。 【0151】エラー画面にはエラーメッセージをテキストで表示するメッセージ表示領域3031、エラー画面をクローズするためのOKボタン3032が含まれる。 【0152】DeviceInformationService(DIS) コントローラ内でジョブに対する設定値、デバイス(スキャナ、プリンタなど)の機能、ステータス、課金情報等をControl APIに準拠したデータ形態で保持するデータベースと、そのデータベースとのI/FをDeviceInformationService(以下、DISと呼称する)として定義している。図64にDIS7102とJobManager7101、及びScan、Printの各DocumentManager7103、7104とのやり取りを示す。 【0153】基本的に、Jobの開始命令など動的な情報はJobManager7101から各DocumentManager7103、7104に直接指示され、デバイスの機能やジョブの内容など静的な情報はDIS7102を参照する。各DocumentManager7103、7104からの静的、動的情報、イベントはDIS7102を介してJobManager7101に伝えられる。 【0154】各DocumentManager7103、7104からDIS7102のデータベースにデータの設定、取得を行う場合、DIS7102の内部データ形式がControl API準拠であることから、Control APIに準拠したデータ形式と各DocumentManager7103,7104が理解できるデータ形式との相互の変換処理を行う。例えば、各DocumentManager7103,7104からステータスデータの設定を行う場合、デバイス固有のデータを解釈し、Control APIで定義される対応するデータに変換し、DIS7102のデータベースへ書き込みを行う。 【0155】JobManager7101からDIS7102のデータベースにデータの設定、取得を行う場合には、JobManager7101とDIS7102の間でデータの変換は生じない。 【0156】またDIS7102には、各DocumentManager7103,7104から通知される各種イベント情報に基づき、イベントデータの更新が行われる。 【0157】図65にDIS7102内部に保持される各種データベース(以下、DBと呼称する)を示し、それぞれのDBについて説明する。図65中の丸角長方形は個々のDBを表している。 【0158】7201はSupervisorDBであり、機器全体についてのステータスやユーザ情報を保持しているDBであり、ユーザIDやパスワード等、バックアップが必要な情報はHD装置、あるいはバックアップメモリなどの不揮発性の記憶装置に保持される。 【0159】7202はScanComponentDB、7203はPrintComponentDBであり、これらComponentDBは存在するComponent毎に対応して保持される。例えば、プリンタのみからなる機器の場合はPrintComponentDBのみが存在し、また例えば、FAXを備えた機器の場合はFAXComponentDBが保持される。各ComponentDBには初期化時に、それぞれ対応するDocumentManagerがComponentの機能やステータスを設定する。 【0160】7204はScanJobServiceDB、7205はPrintJobServiceDBであり、これらのJobServiceDBもComponentDB同様、初期化時にそれぞれ対応するDocumentManagerが機器で使用できる機能や、それらのサポート状況を設定する。 【0161】次にJobDB、DocumentDBについて説明する。7206はScanJobDB、7207はPrintJobDBの各JobDB、7208はScanDocumentDB、7209はPrintDocumentDBである。 【0162】JobDB、DocumentDBはJobとそれに付随するDocumentが生成される度にJobManagerにより動的に確保、初期化が行われ、必要な項目の設定が行われる。各DocumentManagerはJobの処理開始前にJobDB、およびDocumentDBから処理に必要な項目を読み出し、Jobを開始する。その後、Jobが終了するとこれらのJob、及びそれに付随していたDocumentのDBは解放される。Jobは1つ以上のDocumentを持つので、あるJobに対して複数のDocumentDBが確保される場合がある。 【0163】7210は各DocumentManagerから通知されるイベント情報を保持するSoftCounterDB、7211は装置のScan回数、Print回数を記録するためのEventTableDBである。 【0164】DocumentManagerから通知されるイベントには、ScanDocumentManagerからのComponentの状態遷移、Scan処理動作完了や各種のエラー、またPrintDocumentManagerからのComponentの状態遷移、Print処理動作完了、紙詰まり、給紙カセットオープンなどがあり、それぞれのイベントを識別するためのイベントIDが予め定められている。 【0165】DocumentManagerからイベントが発行された場合、DISはEventTableDB7211に発行されたイベントIDと必要なら該イベントに付随する詳細データを登録する。また、DocumentManagerからイベントの解除が通知された場合、解除指定されたイベントデータをEventTableDB7211から削除する。 【0166】JobManagerよりイベントのポーリングが行われた場合、DISはSoftCounterDB7210を参照し、現在発生しているイベントIDと必要ならイベントに付随する詳細データをJobManagerへ返信し、現在イベントが発生していなければその旨を返信する。 【0167】また、Scan処理動作完了、Print処理動作完了のイベントが通知された場合はScan、Printを行ったユーザのカウンタ値を更新する。このソフトウエアによるカウンタは不慮の電源遮断などでその値が失われないように、バックアップされたメモリ装置やHD装置の不揮発性記憶装置にその値が更新されるたびに書き戻す。 【0168】スキャン動作以下にスキャン動作の詳細について説明する。図66はスキャン動作に関するブロックの概念図である。PCIバス8105にCPU8101とメモリ8102、画像の圧縮・伸長ボード(CODEC)8104、及びスキャナ8107と、このシステムを接続するためのI/Fを提供するSCSI I/F回路8103が接続されている。SCSI I/F回路8103とスキャナ(または複合機能を有する複写機のスキャナ機能ユニット)8107はSCSIインターフェイスケーブル8106で接続されている。 【0169】またPCIバス8105にはIDE Controller8108が接続されており、IDE Cable8109を介してIDE Hard Disk8110と接続されている。 【0170】図67はスキャン動作に関するソフトウエア構造を示したものである。JobManager8201はアプリケーションレベルの要求を分類、保存する機能を持つ。DIS8202はアプリケーションレベルからのスキャン動作に必要なパラメータを保存する。アプリケーションからの要求はメモリ8102に保存される。スキャン動作管理部8203はJobManager8201とDIS8202からスキャンを行うのに必要な情報を取得する。スキャン動作管理部8203はJobManager8201から図68のジョブ番号、ドキュメント番号のテーブルデータ8301を受け取り、ジョブ番号、ドキュメント番号のテーブルデータ8301を元に、DIS8202よりスキャンパラメータ8302をうけとる。これによりアプリケーションから要求されているスキャン条件を元にスキャンを行う。 【0171】スキャン動作管理部8203はDIS8202から取得したスキャンパラメータ8302をドキュメント番号順にスキャンシーケンス制御部8204に渡す。スキャンパラメータ8302を受け取ったスキャンシーケンス制御部8204はスキャン画像属性8308の内容に従ってSCSI制御部8207をコントロールする。これにより図66のPCI8105に接続されたSCSI Controller8103を動作させることにより、SCSIケーブル8106を介してScanner8107にSCSI制御コマンドを送ることによりスキャンが実行される。スキャンした画像はSCSI Cable8106を介してSCSI Controller8103にわたり、さらにPCI8105を介してMemory8102に格納される。スキャンシーケンス制御部8204はスキャンが終了し、PCI8105を介してMemory8102に画像が格納された時点で、スキャンパラメータ8302のスキャン画像圧縮形式8309の内容にしたがって、Memory8102に格納されているスキャン画像を圧縮するために、圧縮・伸長制御部8205に対して要求を出す。要求を受け取った圧縮・伸長制御部8205はPCI8105に接続されているCODEC8104を用いて、スキャンシーケンス制御部8204からのスキャン画像圧縮形式8309の指定で圧縮を行う。圧縮・伸長制御部8205は圧縮された画像をPCI8105を介してMemory8102に格納する。 【0172】スキャンシーケンス制御部8204は圧縮・伸長制御部8205がスキャン画像圧縮形式8309で指定された形式にスキャン画像を圧縮し、Memory8102に格納した時点で、スキャンパラメータ8302の画像ファイルタイプ8307にしたがってMemory8102に格納されている圧縮されたスキャン画像をファイル化する。スキャンシーケンス制御部8204はファイルシステム8206に対して、スキャンパラメータ8302の画像ファイルタイプ8307で指定されたファイル形式でファイル化することを要求する。ファイルシステム8206はスキャンシーケンス制御部8204からの画像ファイルタイプ8307にしたがって、Memory8102に格納されている圧縮された画像をファイル化し、PCI8105を介してIDE Controller8108に転送し、IDE Cable8109を介してIDE Hard Disk8110に転送することによりスキャンされた圧縮画像をファイル化する。スキャンシーケンス制御部8204はファイルシステム8206がIDE Hard Disk8110にファイル化された画像を格納した時点で、Scanner8107上の一枚の現行の処理が終了したとして、スキャン動作管理部8203にスキャン終了通知を送り返す。 【0173】この時点でScanner8107上にまだスキャンが行われていない原稿が存在し、Job Manager8201からスキャン要求が存在する場合には再度、DIS8202に格納されているスキャンパラメータ8302を用いてスキャンシーケンス制御部にスキャン動作を要求する。 【0174】Scanner8107上にスキャンされていない原稿が存在しない場合、またはJobManager8201からのスキャン要求が存在しない場合には、スキャン動作が終了したものとしてJobManager8201に対してスキャン終了通知を発行する。 【0175】プリント動作以下でプリント動作について詳細に説明する。 【0176】図69はプリント動作に関するブロックの概念図である。PCIバス9005にCPU9001とメモリ9002、画像の圧縮・伸張ボード(CODEC)9004、及びプリンタ9007と、このシステムを接続するためのI/Fを提供するEngineI/Fボード9003が接続されている。EngineI/Fボード9003とプリンタ(または複合機能を有する複写機のプリンタ機能ユニット)9007はエンジンインターフェイスケーブル9006で接続されている。 【0177】EngineI/Fボードは内部にDPRAMを持ち、このDPRAMを介してプリンタへのパラメータ設定及びプリンタの状態読み出しと、プリントの制御コマンドのやりとりを行う。またこのボードはVideoコントローラを持ち、プリンタからエンジンインターフェイスケーブル経由で与えられるVCLK(VideoClock)とHSYNCに合わせて、PCI上に展開されているイメージデータをエンジンインターフェイスケーブルを介してプリンタに送信する。この送信のタイミングを図で表すと図70の様になる。VCLKは常に出続け、HSYNCがプリンタの1ラインの開始に同期して与えられる。Videoコントローラは設定された画像幅(WIDTH)分のデータを、設定されたPCI上のメモリ(SOURCE)から読み出して、Video信号としてエンジンインターフェイスケーブルに出力する。これを指定ライン分(LINES)繰り返した後、IMAGE_END割り込みを発生する。 【0178】先に説明したとおり、CPU上のアプリケーションプログラムからControllAPIにプリントジョブの指示が渡されると、ControllAPIはこれをコントローラレベルのJobManagerにジョブとして渡す。さらにこのJobManagerはジョブの設定をDISに格納し、PrintManagerにジョブの開始を指示する。PrintManagerはジョブを受け付けるとDISからジョブ実行に必要な情報を読み出し、EngineI/Fボード及び、DPRAMを介してプリンタに設定する。 【0179】EngineI/Fボードの設定項目を図71に、プリンタのDPRAMを介した設定項目及び制御コマンド、状態コマンドを図72に示す。 【0180】簡単のためにこのジョブを非圧縮、レター(11″×8.5″)サイズ2値画像の、2ページ1部プリント、プリンタが600dpiの性能を持つものとして、具体的に動作を説明する。 【0181】まず、このジョブを受けるとPrintManagerはこの画像の幅(この場合8.5″の側とする)の画像バイト数を算出する。 【0182】WIDTH=8.5×600÷8≒630(Bytes) 次にライン数を演算する。 【0183】LINES=11×600=6600(Lines) これらの算出した値と、与えられた1ページ目の画像が格納されているSOURCEアドレスとを図71に示したWIDTH,LINES,SOURCEに設定する。この時点でEngineI/Fボードは画像出力の用意が完了しているが、プリンタからのHSYNC信号が来ていないため(VCLKは来ている)画像データを出力していない。 【0184】次にPrintManagerは図72に示したDPRAMの所定のアドレス(BookNo)に出力部数である1を書き込む。その後、1ページ目に対する出力用紙の給紙要求(FEED_REQ)を出し、プリンタからのIMAGE_REQを待つ。プリンタからIMAGE_REQが来たら、IMAGE_STARTを出す。これを受けてプリンタはHSYNCを出し始め、HSYNC待ちであったEngineI/Fボードは画像を出力する。プリンタは出力用紙の後端を検出すると、IMAGE_ENDを出力し、出力用紙が排出されるとSHEET_OUTを出力する。PrintManagerは1ページ目のIMAGE_ENDを受けて、2ページ目のWIDTH,LINES,SOURCEをEngineI/Fボードに設定し、FEED_REQを出して、IMAGE_REQを待つ。2ページ目のIMAGE_REQが来てからの動作は、1ページ目と同様である。 【0185】続いて、機器制御プログラムあるいはデータが不正に改ざんされたことを検知し、機器の自動停止を行うケースの実施例を説明する。 【0186】本発明による不正アクセス検知と動作停止処理は、本実施例ではコントローラ制御ソフトの一機能である、セキュリティモニタとして実装される。セキュリティモニタ1550は図4に示すとおり、コントローラ制御ソフトの構成モジュールのひとつであり、機器に対する不正アクセスの監視と不正検知時の機器停止処理を行う。 【0187】セキュリティモニタ1550は機器の動作中は常時、1)コントローラ制御ソフトのコードデータの正当性のチェック2)コントローラ制御ソフトの保持データ正当性のチェックを行い、コントローラの状態を監視している。 【0188】ここで、1)のコードデータとはコントローラ制御ソフトのプログラム自身であり、コントローラソフトのバージョンアップによる更新以外、機器の出荷以後修正されたり書き換えられたりすることはないデータである。2)の保持データとは、機器が動作する上でコントローラが静的、動的に生成、更新、参照、消去するデータ、あるいはユーザが動作指示のため入力したデータを指す。 【0189】よってコードデータの正当性チェックにおいては、機器の出荷時点でコードデータのチェックサム値を図示しないバックアップ装置に書き込んでおき、セキュリティモニタ1550はチェックを行う時点での、コードデータのチェックサム値を取得し、バックアップされた正しいチェックサム値との比較を行うことで正当性を判定する。 【0190】保持データの正当性チェックにおいては、機器の動作状況に応じてデータそのものが生成・消去、あるいは変更され、またそのデータも大量になるためコントローラ内の全データについて監視を行うことは困難であり、以下のような方法でその正当性を検証する。 【0191】まずコントローラで保持するデータのうち、改ざんなどの不正アクセスが行われると重大な被害を引き起こす可能性がある重要データだけを、検証の対象とする。このような重要データとは、メール、Webサーバの設定ファイル、ユーザ情報ファイル、あるいは機器に対してアクセスを許可する通信種別一覧、などのシステム設定データなどであり、どのデータを検証対象とするかは機器の能力や状況に応じて決定する。 【0192】検証対象となる重要データには、該データと対をなす形でセキュリティ情報データが保持される。このセキュリティ情報データは、対応するデータ本体が生成、変更される度に更新され、常にデータ本体と一致した状態となるように管理される。ここでは、このセキュリティ情報としてチェックサムを用いて、データ生成、あるいは変更を行うたびにチェックサム値を再計算して、バックアップ領域に保存するものとする。本バックアップ領域は前述のコードデータのチェックサム値を保持しているバックアップ手段と同一でも、分離独立した構成でもよいが、セキュリティデータを保持するバックアップ領域へのアクセスにおいては、読み出し、書き込みともにそれぞれ専用のアクセス開始処理が必要である。これはコントローラ制御ソフトの不具合など、不慮の事故が発生してもセキュリティデータの安全性を高めるための構成である。 【0193】図1にセキュリティモニタ1550の処理フローを示す。101で機器が起動されると同時に処理を開始し、102にてコントローラ制御ソフトのコードデータの正当性をチェックする。 【0194】正当性チェック処理102の詳細を図2に示す。201で処理を開始し、202でコントローラ制御プログラムのコードデータのチェックサム値を計算する。203で前記セキュリティデータ専用のバックアップ回路基盤から、コントローラ制御プログラムのチェックサムデータを読み出し、202で計算したチェックサムとを204にて比較する。両者が一致した場合206にて判定結果をOKとし、不一致の場合205にて判定結果をNGとして、207で終了する。 【0195】103にて判定結果をチェックし、異常無しなら104のコントローラで保持しているデータの正当性チェック処理を行う。104の保持データ正当性チェックの詳細はコードデータの正当性チェックを示した図2とほぼ同一であるため、説明を省略する。唯一重要な違いは、コードデータのチェックサムは機器の出荷時に決まるが、保持データのチェックサムは、保持データの更新によって随時再計算、更新されていることである。 【0196】105にて判定結果をチェックし、異常無しなら106にて休止状態に入り、セキュリティモニタは次回の起動まで休止する。ここで、セキュリティモニタによるコードデータ、保持データの正当性チェック処理を実行するタイミングは、機器管理者が予め一定時間毎に起動するように設定するか、あるいは装置がある特定の動作を行った後、あるいはネットワーク経由で機器管理者が起動をかけて任意のタイミングで実行するよう指示することが可能であって、機器の設置状況に応じて機器管理者は最適な方法を選択することができる。 【0197】103または105にて異常ありと判定した場合、107、108にて機器全体の停止処理を行う。107では電源供給を遮断による機器全体の停止に備える前処理として、コントローラ制御ソフトの停止処理を行う。ここでは電源断によって失われる情報のうち、退避が必要なデータをバックアップ領域に書き込み保存する処理をおこなう。102、104で実行した正当性チェック結果の詳細情報も必要に応じてバックアップ領域に保存され、不正アクセスの情報を残すことができる。107の停止準備処理が完了すると、108にて電源制御手段を用いて機器全体の電源供給を停止、完全に機器の動作を終了する。 【0198】このように、機器に対して不正なアクセスが為され、制御プログラムそのもの、もしくはデータが改ざんが発生した場合においては機器が自動的に動作を停止するため、不正アクセスによる被害を機器内にとどめ、制御を乗っ取られた機器が不正に動作し続けるような二次被害を最小限にとどめることができるのである。 【0199】 【発明の効果】機器に対してデータの改ざんや制御の奪取がなされた場合の被害を最小限とすることができる。
|
| 【出願人】 |
【識別番号】000001007 【氏名又は名称】キヤノン株式会社 【住所又は居所】東京都大田区下丸子3丁目30番2号
|
| 【出願日】 |
平成14年5月24日(2002.5.24) |
| 【代理人】 |
【識別番号】100066061 【弁理士】 【氏名又は名称】丹羽 宏之 (外1名)
|
| 【公開番号】 |
特開2003−341181(P2003−341181A) |
| 【公開日】 |
平成15年12月3日(2003.12.3) |
| 【出願番号】 |
特願2002−151069(P2002−151069) |
|