説明

ネットワークデジタル複合機

【課題】デジタル複合機の処理負荷を大きくすることなく、WEBコンテンツの正当性、整合性をチェックする技術を提供することを課題とする。
【解決手段】ネットワークデジタル複合機1の第1記憶部13には固定コンテンツデータ51が格納され、第2記憶部14には、第1記憶部13に格納されるべき固定コンテンツデータ51のハッシュ値が記録されたハッシュ値テーブル53が格納されている。複合機1の電源投入時、第1記憶部13に格納されている固定コンテンツデータ51からハッシュ値が演算され(ステップS1)、ハッシュ値テーブル53に格納されているハッシュ値と比較される(ステップS2)。ハッシュ値が一致しない場合には、モニタにその旨表示される(ステップS3)。このような処理が全ての固定コンテンツデータ51に対して実行される(ステップS4)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、WEBサーバが提供するデータの正当性を維持する技術に関する。
【背景技術】
【0002】
WEBサーバは、インターネットなどで各種の情報を公開、発信する用途に用いられる他、ネットワーク機能を備えた装置のユーザインタフェースを提供する用途にも用いられている。プリンタ、ファックス、コピー、電子メール機能などを備えたデジタル複合機についても同様である。デジタル複合機は、WEBサーバ機能を備えており、デジタル複合機の各種機能を利用するためのユーザインタフェースをWEBサーバにより提供するようにしている。このデジタル複合機とLANで接続されたPCを利用するユーザは、WEBブラウザを起動してデジタル複合機に接続することで、モニタ上にユーザインタフェースを表示し、デジタル複合機の各種機能を利用することが可能となっている。
【0003】
このように、デジタル複合機が蓄積するWEBコンテンツデータは、ユーザインタフェースを提供するものであるから重要なデータである。もし、メンテナンス時に、オペレータが正しいデータをインストールしなかった場合、ユーザがデジタル複合機を正常に利用できなくなる。したがって、デジタル複合機が蓄積しているWEBコンテンツが、正しいデータであるかどうかのチェックシステムが必要である。
【0004】
下記特許文献1は、WEBコンテンツの改竄を検出するシステムに関するものである。一般に、WEBサーバについては、悪意ある者によってWEBコンテンツが改竄される恐れがあり、そのようなコンテンツがネットワーク上で公開されることを防止する必要がある。
【0005】
【特許文献1】特開2002−149496号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
上記特許文献1で開示されている技術は、改竄に対する防御策である。したがって、データが改竄されたかどうかのチェックを定期的に実行するようにしている。あるいは、ユーザがWEBコンテンツにアクセスするたびに、改竄の有無をチェックするようにしている。このため、データの改竄を検出可能とする一方で、データの正当性をチェックするための処理負荷が大きいという問題がある。
【0007】
一方、デジタル複合機のユーザインタフェースを提供するWEBサーバについては、改竄を防止するという意図はあまりない。
【0008】
ただし、上述したように、メンテナンス時に正しいデータがインストールされなかった場合などに、そのままデジタル複合機が稼動してしまうことを防止することは必要である。
【0009】
しかし、特許文献1で行われているように、定期的あるいはアクセスごとにデータチェックを実行するとすれば、WEBサーバの処理負荷が大きくなる。特に、デジタル複合機では、ファックス機能やコピー機能など、その他の処理を実行する必要があるため、WEBサーバに大きな処理負荷が掛かるのは最適な解決案ではない。
【0010】
また、デジタル複合機において、HTMLデータなどの固定データと、CGIプログラムなどが異なる記憶媒体に格納される形態がある。このような装置構成において、CGIプログラムなどを更新するメンテナンス時に、HTMLデータなどの更新を忘れるといったケースも想定される。このようなケースが発生すると、データの整合性がとれなくなるため、やはり、ユーザは、デジタル複合機を正常に利用できなくなる。
【0011】
そこで、本発明は前記問題点に鑑み、処理負荷を大きくすることなく、WEBコンテンツの正当性、整合性をチェックする技術を提供することを目的とする。
【課題を解決するための手段】
【0012】
上記課題を解決するため、請求項1記載の発明は、WEBサーバ機能を備えたネットワークデジタル複合機であって、WEBコンテンツデータを格納する第1記憶部と、前記第1記憶部に格納されるべきWEBコンテンツデータから演算されたハッシュ値を格納する第2記憶部と、前記ネットワークデジタル複合機の電源が投入されたとき、前記第1記憶部に格納されているWEBコンテンツデータのハッシュ値を演算し、前記第2記憶部に格納されているハッシュ値と一致するか否かを判定する手段と、を備えることを特徴とする。
【0013】
請求項2記載の発明は、請求項1に記載のネットワークデジタル複合機において、さらに、電源投入時に前記第1記憶部に格納されているWEBコンテンツデータから演算されたハッシュ値が、前記第2記憶部に格納されているハッシュ値と一致しない場合、データが正しくないことを示す情報をモニタに表示する手段、を備えることを特徴とする。
【0014】
請求項3記載の発明は、請求項1または請求項2に記載のネットワークデジタル複合機において、前記第2記憶部には、前記第1記憶部に格納されているWEBコンテンツデータから呼び出されて実行されるプログラムが格納されていることを特徴とする。
【発明の効果】
【0015】
本発明のネットワークデジタル複合機によれば、電源が投入されたとき、第1記憶部に格納されているWEBコンテンツデータのハッシュ値を演算し、第2記憶部に格納されている正当性が確保されたハッシュ値と一致するか否かを判定する。これにより、正しくないデータがインストールされたまま、ネットワークデジタル複合機が起動し、誤った情報をユーザに提供することを防止できる。
【0016】
また、本発明のネットワークデジタル複合機は、ハッシュ値が一致しない場合、データが正しくないことを示す情報をモニタに表示するので、ユーザは、サービスセンターに連絡するなど、即座に復旧作業を行うことができる。
【0017】
また、第2記憶部には、第1記憶部に格納されているWEBコンテンツデータから呼び出されて実行されるプログラムが格納されている。第2記憶部に対するプログラムの更新時に、WEBコンテンツに対応した最新のハッシュ値を格納するようにすれば、プログラムの更新時にWEBコンテンツの更新を忘れた場合であっても、データの正当性をチェックすることが可能である。
【発明を実施するための最良の形態】
【0018】
以下、図面を参照しつつ本発明の実施の形態について説明する。図1は、本実施の形態に係るネットワークデジタル複合機1を含むネットワークシステムを示す図である。このネットワークシステムは、LAN2に接続されたネットワークデジタル複合機1と複数のパーソナルコンピュータ(以下、PCと略す。)3とから構成されている。このようなネットワークシステムが、たとえばオフィス内に構築されている。
【0019】
ネットワークデジタル複合機1は、コピー機能、ファックス機能、プリンタ機能、電子メール機能、WEBサーバ機能などの機能を備えた多機能装置である。オフィスの社員は、実際にネットワークデジタル複合機1の場所に移動し、コピーやファックス機能を利用することができる。また、オフィスの社員は、PC3を利用して、LAN2経由でネットワークデジタル複合機1にアクセスし、ネットワークデジタル複合機1の各種機能を利用可能である。
【0020】
図に示すように、ネットワークデジタル複合機1は、WEBサーバ11、通信部12、第1記憶部13、第2記憶部14、ハッシュ値演算部15、比較部16、モニタ17を備えている。なお、コピー機能部、ファックス機能部など、複合機として機能するための各機能部は図示省略している。
【0021】
WEBサーバ11は、ネットワークデジタル複合機1が蓄積している各種のWEBコンテンツを提供する。具体的には、ネットワークデジタル複合機1に格納されているWEBサーバプログラムがCPU上で実行されることにより、WEBサーバ機能が実現されている。
【0022】
通信部12は、LAN2に接続された各コンピュータとTCP/IPなどのプロトコルを利用してデータの送受信を行う。
【0023】
第1記憶部13は、HTMLデータやJAVA(登録商標)スクリプトなどの固定コンテンツデータ51を格納している。本実施の形態においては、第1記憶部13として、Compact Flash(商標)メモリを利用している。
【0024】
第2記憶部14は、CGIプログラム52とハッシュ値テーブル53を格納している。CGIプログラム52は、固定コンテンツデータ51から呼び出されて実行するプログラムである。本実施の形態においては、各固定コンテンツデータ51に対して、1つのCGIプログラム52が対応して作成されている。第2記憶部14としては、たとえば、各種のフラッシュメモリが利用される。
【0025】
本実施の形態のネットワークデジタル複合機1は、これら固定コンテンツデータ51と、固定コンテンツデータ51から呼び出されて実行されるCGIプログラム52により、ユーザインタフェースを構成している。つまり、PC3を利用するユーザが、WEBブラウザを起動して、WEBサーバ11にアクセスすることで、これら固定コンテンツデータ51とCGIプログラム52で構成されるユーザインタフェースがPC3のモニタに表示される。そして、PC3のユーザは、このユーザインタフェースを利用して、LAN経由で、ネットワークデジタル複合機1の各種の機能を利用可能となっている。
【0026】
具体的には、PC3のブラウザから送信されたHTTPのGETリクエストに応じて、固定コンテンツデータ51がPC3に転送され、ユーザインタフェースがモニタ17に表示される。あるいは、PC3のブラウザから送信されたHTTPのPOSTリクエストに応じて、CGIプログラム52が実行され、その処理結果がレスポンスとしてブラウザに返されるのである。
【0027】
ハッシュ値テーブル53は、第1記憶部13に格納されるべき固定コンテンツデータ51のハッシュ値を格納するテーブルである。ハッシュ値テーブル53には、第1記憶部13に格納されるべき全ての固定コンテンツデータ51,51・・・のハッシュ値が予め演算されて格納されている。ここで、「格納されるべき」と表現したのは、実際に第1記憶部13に格納されている固定コンテンツデータ51のハッシュ値ではなく、本来格納されている必要のある固定コンテンツデータ51のハッシュ値という意味である。
【0028】
図2は、第1記憶部13に格納された固定コンテンツデータ51の格納形態と、第2記憶部14に格納されたハッシュ値テーブル53のデータ内容例を示す図である。なお、図に示すように、本実施の形態においては、第1記憶部13と第2記憶部14とは、ネットワーク基板10に装着される構成となっている。メンテナンス時には、サービスマンによって、このネットワーク基板10に装着された第1記憶部13や第2記憶部14に格納されたデータの書き換え操作が行われる。あるいは、サービスマンによって、第1記憶部13や第2記憶部14を交換する操作が行われる。
【0029】
固定コンテンツデータ51は、ディレクトリで管理されている。図で示す例では、「HTDATA」というフォルダの下に、「1.js」、「2.js」、「1.htm」、「2.htm」・・・といったファイル名の固定コンテンツデータ51が格納されている。なお、拡張子「js」のファイルは、JAVA(登録商標)スクリプトであり、拡張子「htm」のファイルは、HTMLデータファイルである。
【0030】
そして、図に示すように、第2記憶部14に格納されるハッシュ値テーブル53には、それら4つのファイル(「1.js」、「2.js」、「1.htm」、「2.htm」・・・)のハッシュ値が演算されて格納されている。
【0031】
つまり、メンテナンス時に、サービスマンによって、第2記憶部14のデータが更新されたとき、あるいは第2記憶部14が交換されたとき、この時点で、第1記憶部13に格納されるべき固定コンテンツデータ51のハッシュ値を全て記録したハッシュ値テーブル53が第2記憶部14に格納されるのである。
【0032】
再び、図1を参照する。ハッシュ値演算部15は、第1記憶部13に格納されている固定コンテンツデータ51のハッシュ値を演算する処理部である。上述したように、ハッシュ値テーブル53に記録されているハッシュ値は、データメンテナンス時に予め演算されている。このハッシュ値演算部15は、ネットワークデジタル複合機1に電源が投入された時点で、実際に第1記憶部13に格納されている固定コンテンツデータ51のハッシュ値を計算するのである。
【0033】
比較部16は、ハッシュ値演算部15が演算したハッシュ値と、ハッシュ値テーブル53に記録されているハッシュ値とを比較し、固定コンテンツデータ51の正当性をチェックする処理部である。
【0034】
上述したように、ハッシュ値演算部15は、ネットワークデジタル複合機1の電源が投入された時点で、第1記憶部13に格納されている固定コンテンツデータ51のハッシュ値を演算する。比較部16は、電源投入時において、ハッシュ値演算部15による演算結果と、予めハッシュ値テーブル53に格納されているハッシュ値との比較を行うのである。
【0035】
以上の通り構成されたネットワークデジタル複合機1におけるデータ正当性のチェック処理の流れについて、図3のフローチャートを参照しながら説明する。図3で示す処理を実行する前提として、第1記憶部13に格納されるべき全ての固定コンテンツデータ51,51・・・に対してハッシュ値が演算され、そのハッシュ値が記録されたハッシュ値テーブル53が第2記憶部14に格納されている。つまり、正当性のある固定コンテンツデータ51に基づいて演算された最新のハッシュ値がハッシュ値テーブル53に格納されていることが前提である。
【0036】
まず、ユーザによりネットワークデジタル複合機1の電源がONされる。電源がONされると、ハッシュ値演算部15が、第1記憶部13に実際に格納されている固定コンテンツデータ51のハッシュ値を演算する(ステップS1)。
【0037】
次に、比較部16が、ステップS1で演算された固定コンテンツデータ51のハッシュ値と、ハッシュ値テーブル53に格納されている同じファイル名のハッシュ値とを比較する(ステップS2)。
【0038】
つまり、図2で示した例であれば、「1.js」、「2.js」、「1.htm」、「2.htm」・・・などの固定コンテンツデータ51に対してハッシュ値が演算され、ハッシュ値テーブル53から同じファイル名に対応して記録されているハッシュ値が読み出され、比較される。
【0039】
そして、比較の結果、ハッシュ値が一致しなければ(ステップS2でNO)、モニタ17に、固定コンテンツデータ51が不正であることを示す情報を表示する(ステップS3)。たとえば、モニタ17に、「正しいデータがインストールされていません。」といったようなメッセージを表示すればよい。
【0040】
このようなメッセージが表示されると、ユーザは、メンテナンスセンターに連絡するなどして、正しいデータを再度インストールすることができる。つまり、誤った固定コンテンツデータがインストールされたまま、ネットワークデジタル複合機1が起動すると、ユーザに誤ったユーザインタフェースが表示され、ユーザに誤った操作をさせるなどの可能性があるが、電源投入時点で、データの正当性のチェックをするので、このような問題を回避することができる。ユーザは、モニタ17に表示された情報を見て、即座に復旧作業を開始することができるのである。
【0041】
このように、ハッシュ値が一致しない場合としては、次のような場合が想定される。上述したように、本実施の形態のネットワークデジタル複合機1については、HTMLデータやJAVA(登録商標)スクリプトなどの固定コンテンツデータ51が第1記憶部13に格納され、それら固定コンテンツデータ51から呼び出されるCGIプログラム52が第2記憶部14に格納されている。
【0042】
そして、ネットワークデジタル複合機1のユーザインタフェースがバージョンアップされた場合、これら固定コンテンツデータ51やCGIプログラム52を更新する操作がサービスマンによって行われる。このとき、サービスマンがネットワーク基板10に装着されている第2記憶部14だけを更新し、第1記憶部13の更新を忘れるような場合が想定される。
【0043】
そこで、このような場合にも、データの正当性が維持されるようにするため、第2記憶部14の更新時には、必ずハッシュ値テーブル53のデータを最新のものに更新するようにしておくのである。つまり、CGIプログラム52の更新とともに、固定コンテンツデータ51が更新されれば、ハッシュ値テーブル53が最新のものに更新され、CGIプログラム52を第2記憶部14において更新するとときには、必ずハッシュ値テーブル53についても更新するようにするのである。
【0044】
これにより、たとえ第1記憶部13の更新を忘れた場合、つまり、固定コンテンツデータ51の更新を忘れた場合であっても、電源投入時に、データの正当性がチェックされるので、誤動作を防止することができるのである。
【0045】
ステップS2において比較した結果、ハッシュ値演算部15が演算したハッシュ値と、ハッシュ値テーブル53に格納されているハッシュ値が一致した場合、全ての固定コンテンツデータ51について正当性のチェックが終了したかどうかを判定する(ステップS4)。そして、未チェックの固定コンテンツデータ51が存在する場合には、ステップS1に戻り、当該固定コンテンツデータ51についてもハッシュ値のチェック処理を実行する。そして、全ての固定コンテンツデータ51について、正当性のチェックが終了すると(ステップS4でYES)、起動時のチェック処理を終了する。これにより、ユーザは、データが正しくインストールされている状態でネットワークデジタル複合機1を利用可能となる。
【0046】
このように、本実施の形態のネットワークデジタル複合機1は、第1記憶部13に格納されるべき固定コンテンツデータ51のハッシュ値を記録したハッシュ値テーブル53が、第2記憶部14に格納されており、電源投入時、第1記憶部13に実際に格納されている固定コンテンツデータ51のハッシュ値を演算し、ハッシュ値テーブル53に記録されているハッシュ値と比較する。これにより、固定コンテンツデータ51として正しくないデータが格納されている状態を見過ごすことを防止できる。これにより、ユーザに誤ったユーザインタフェースや情報を表示させることを防止できる。
【0047】
また、本実施の形態においては、ハッシュ値テーブル53は、CGIプログラム52とともに第2記憶部14に格納される形態となっている。したがって、CGIプログラム52を更新するメンテナンス処理に合わせてハッシュ値テーブル53を更新するようにすることができるので、固定コンテンツデータ51の更新処理を忘れ、CGIプログラム52だけを更新した場合などにおいても、更新すべき固定コンテンツデータ51のハッシュ値テーブル53が更新されるので、データの正当性を維持することが可能である。
【0048】
上記実施の形態においては、メンテナンス時における作業ミスが発生した場合を1つの例として説明したが、たとえば、LAN2に接続されたPC2を利用するユーザが、誤って、第1記憶部13に格納されている固定コンテンツデータ51の内容を変更してしまった場合などにも有効である。もちろん、悪意ある第三者によるデータの改竄に対しても、効果を奏するものである。
【0049】
また、上記実施の形態においては、固定コンテンツデータの正当性をチェックする場合を例に説明したが、固定コンテンツデータのみならず、CGIプログラムなども含め、一般にWEBコンテンツデータの正当性チェックに本発明は適用可能である。
【図面の簡単な説明】
【0050】
【図1】本実施の形態に係るネットワークデジタル複合機を含むネットワークシステムを示す図である。
【図2】第1記憶部に格納された固定コンテンツデータの格納態様と第2記憶部に格納されたハッシュ値テーブルのテーブル内容例を示す図である。
【図3】本実施の形態に係るネットワークデジタル複合機におけるデータ正当性チェックのフローチャートである。
【符号の説明】
【0051】
1 ネットワークデジタル複合機
2 LAN
3 PC
13 第1記憶部
14 第2記憶部
51 固定コンテンツデータ
52 CGIプログラム
53 ハッシュ値テーブル

【特許請求の範囲】
【請求項1】
WEBサーバ機能を備えたネットワークデジタル複合機であって、
WEBコンテンツデータを格納する第1記憶部と、
前記第1記憶部に格納されるべきWEBコンテンツデータから演算されたハッシュ値を格納する第2記憶部と、
前記ネットワークデジタル複合機の電源が投入されたとき、前記第1記憶部に格納されているWEBコンテンツデータのハッシュ値を演算し、前記第2記憶部に格納されているハッシュ値と一致するか否かを判定する手段と、
を備えることを特徴とするネットワークデジタル複合機。
【請求項2】
請求項1に記載のネットワークデジタル複合機において、さらに、
電源投入時に前記第1記憶部に格納されているWEBコンテンツデータから演算されたハッシュ値が、前記第2記憶部に格納されているハッシュ値と一致しない場合、データが正しくないことを示す情報をモニタに表示する手段、
を備えることを特徴とするネットワークデジタル複合機。
【請求項3】
請求項1または請求項2に記載のネットワークデジタル複合機において、
前記第2記憶部には、前記第1記憶部に格納されているWEBコンテンツデータから呼び出されて実行されるプログラムが格納されていることを特徴とするネットワークデジタル複合機。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2008−52321(P2008−52321A)
【公開日】平成20年3月6日(2008.3.6)
【国際特許分類】
【出願番号】特願2006−224960(P2006−224960)
【出願日】平成18年8月22日(2006.8.22)
【出願人】(000006297)村田機械株式会社 (4,916)
【Fターム(参考)】