(57)【要約】【課題】真正性を確実に保証したファームウェアの提供、及びインストール時に改ざんされたファームウェアを検知した時にエラー通知を行う。【解決手段】ファームウェアは親マスタファイル、マスタファイル及びファームウェア本体を示す書き込みデータで構成され、書き込みデータのみ暗号化されて電子署名が付加される。電子機器がこのファームウェアをインストールする際、書き込みデータの復号化を行うが、書き込みデータ本体のハッシュ値と電子署名のハッシュ値が異なる等にエラーが発生した場合、インストール実行部はエラーステータスファイルを作成して、記憶部に記憶させる。インストールが終了すると、インストール実行部は、エラーステータスファイルをサーバーへ送信させる制御をネットワークＩ／Ｆに対して行う。【選択図】図５
2015053015.tif 000002
【特許請求の範囲】
【請求項１】
ファームウェア本体である書き込みデータと、
前記書き込みデータの誤り検出符号を有する第１ファイルと、
前記第１ファイルの誤り検出符号を有する第２ファイルとを有し、
前記書き込みデータに電子署名が付加されたファームウェア。
【請求項２】
前記電子署名は、前記書き込みデータが公開鍵暗号方式で暗号化されて生成されたものである請求項１に記載のファームウェア。
【請求項３】
請求項１又は請求項２に記載のファームウェアをインストールするインストール実行部と、
前記ファームウェアのインストール時にエラーが発生した場合、当該エラーに関するエラー情報を記憶する記憶部と、
前記インストール終了後、前記エラー情報を予め定められた外部機器に送信する送信部と、を備えた電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャナー、プリンターやコピー機等の電子機器にインストールされて使用されるファームウェアとそのファームウェアをインストールする電子機器に関する。
【背景技術】
【０００２】
コピー機やプリンター、ファクシミリ等の電子機器内で実行されるファームウェアは、機能拡張や不具合の修正等に伴ってアップデートが行われる。このようなアップデートは、インターネット等のネットワーク経由又はＵＳＢメモリー等の記憶媒体を介して行われる。
【０００３】
しかし、アップデートまでに新しいファームウェアが何者かに改ざんされるおそれがあり、確実に真正性の保証されたファームウェアを画像形成装置にアップデートすることが課題となっていた。
【０００４】
この課題を解決する方法として、特許文献１には、マスタファイルにファームウェアの実体データのチェックサム値を付加することで改ざんされたファームウェアを防ぐ技術が記載されている。また、特許文献２には、改ざんされたファームウェアのインストールを抑止するインストールプログラム及びインストール方法について記載されている。また、特許文献３には、インストール作業に中断が発生した場合でもインストールを安全に実行するための技術が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−８０５５０号公報
【特許文献２】特開２００６−４８２６８号公報
【特許文献３】特開２００９−４２８１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１の場合、チェックサム値の仕組みとしてはＬｉｎｕｘ（登録商標）の標準コマンドを用いているため、マスタファイルを改ざんすることでファームウェア自体を改ざんすることができてしまう。また不正なファームウェアのインストールを検知できないため、悪意ある改ざんがなされたファームウェアがインストールされてしまう恐れがあった。
【０００７】
また、特許文献２の場合、インストールしたプログラムが正常に起動するか否かを確かめるためにプログラムを一度実行させるため、悪意ある改ざんがなされたプログラムであった場合、その実行によって電子機器が記憶する情報の漏えいやデータ構成の混乱等を招きかねない。
【０００８】
また、特許文献３の場合、インストールが正常に行われることを目的とした発明であり、改ざんされたファームウェアのインストールを防ぐことについては記載されていない。
【０００９】
本発明は、上記の問題を解決するためになされたもので、真正性を確実に保証したファームウェアの提供、及びインストール時に改ざんされたファームウェアを検知した時にエラー通知を行う電子機器及び画像形成装置を提供することである。
【課題を解決するための手段】
【００１０】
本発明におけるファームウェアは、ファームウェア本体である書き込みデータと、前記書き込みデータの誤り検出符号を有する第１ファイルと、前記第１ファイルの誤り検出符号を有する第２ファイルとを有し、前記書き込みデータに電子署名が付加されたものである。
【００１１】
また、本発明における電子機器は、上記ファームウェアをインストールするインストール実行部と、前記ファームウェアのインストール時にエラーが発生した場合、当該エラーに関するエラー情報を記憶する記憶部と、前記インストール終了後、前記エラー情報を予め定められた外部機器に送信する送信部と、を備えたものである。
【発明の効果】
【００１２】
本発明によれば、ファームウェアが第１ファイル、第２ファイル及びファームウェアの本体を示す書き込みデータで構成されている場合、書き込みデータのみ暗号化して電子署名を添付することにより、ファームウェアの改ざんを防ぐと共に、ファームウェアに電子署名を付加する際に書き込みデータのみを暗号化すればよいため、処理負荷を軽減することができる。更に、電子機器がファームウェアをインストールする際は、ファームウェア全体ではなく、書き込みデータのみを復号化すればよいため、電子機器の処理負荷も軽減することができる。
【００１３】
また、インストール時にエラーが発生すると記憶部がエラー情報を記憶することで、電子機器がインストール時は外部のネットワークとの接続を切断しないといけない仕様である場合でも、インストール後にエラー情報をサーバー等の外部装置へ送信することが可能になる。そして、外部装置の管理者がエラー情報を読み取ることで、ファームウェアの改ざん等の不正行為を検知することができる。
【図面の簡単な説明】
【００１４】
【図１】ファームウェアの構成を示した図である。
【図２】電子署名データの生成方法について説明するための図である。
【図３】公開鍵暗号方式について説明するための図である。
【図４】画像形成装置の主要内部構成を示す機能ブロック図である。
【図５】インストール処理の流れを示したフローチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明の一実施形態に係るファームウェア、画像形成装置の電子機器について図面を参照して説明する。図１は、ファームウェアの構成を示した図である。
【００１６】
本実施の形態におけるファームウェアは、親マスタファイル（第２ファイル）、マスタファイル（第１ファイル）及び書き込みデータで構成される。書き込みデータはファームウェアの本体データである。この書き込みデータは公開鍵暗号方式によって暗号化されて電子署名が生成され付加されている。
【００１７】
マスタファイルは、各種ファイル情報の他、書き込みデータの誤り検出符号（チェックサム値）を備えて構成される。親マスタファイルは、各種ファイル情報の他、マスタファイルの誤り検出符号（チェックサム値）を備えて構成される。
【００１８】
図２は、電子署名データの生成方法について説明するための図である。構成要素Ｆ１〜Ｆ３は電子署名を付加する前のファームウェアである。管理サーバー９は、ファームウェアの作成者の元にあるコンピューターである。管理サーバー９はファームウェアＦ１〜Ｆ３を取り込み、ファームウェアの本体データである書き込みデータを公開鍵暗号方式で暗号化して電子署名を作成する。そして生成した電子署名を書き込みデータに付加する。構成要素Ｆ１１〜Ｆ１３は、電子署名が付加されたファームウェアを示している。
【００１９】
このように、管理サーバー９で一括してファームウェアの暗号化を行うことで、公開鍵暗号方式を用いて暗号化する際に用いる公開鍵や秘密鍵の管理がしやすくなり、秘密鍵の漏えい等を防ぐことができる。
【００２０】
図３は、公開鍵暗号方式について説明するための図である。管理サーバー９は、ハッシュ関数９２を使用して書き込みデータ９１のハッシュ値９３を取得する。このハッシュ値９３を、秘密鍵を用いて暗号化して電子署名９５を生成する。そして暗号化前の書き込みデータ９１に電子署名９５を付加した書き込みデータ８１を含んだファームウェア８が生成される。
【００２１】
画像形成装置１等の電子機器がファームウェア８をインストールする際、又はファームウェア８に対応する古いファームウェアをアップデートする際、画像形成装置１の制御部は、インストールされたファームウェア８のうち書き込みデータ１１を取り込み、ハッシュ関数１２を使用して書き込みデータ１１のハッシュ値１３を取得する。更に、書き込みデータ８１に付加されている電子署名１６を、公開鍵を用いて復号化し、ハッシュ値１４を取得する。制御部は、書き込みデータ１１から取得したハッシュ値１３と、電子署名１６から取得したハッシュ値１４を比較し、一致する場合は真正性のあるファームウェアと判断する。
【００２２】
本実施の形態におけるファームウェアは、図１にて説明したとおり、親マスタファイル、マスタファイル及び書き込みデータで構成され、書き込みデータのみ暗号化されて電子署名が付加される。また、マスタファイルは書き込みデータのチェックサム値を有し、親マスタファイルはマスタファイルのチェックサム値を有するため、ファームウェアの改ざんを確実に防ぐことができる。更に、画像形成装置１における復号時は書き込みデータのみを復号すればよいため、インストール時の処理負荷増大を抑制することができる。
【００２３】
次に、ファームウェアのインストールについて説明する。本実施の形態では、インストール先の電子機器として画像形成装置１を例に挙げて説明するが、新規ファームウェアの追加や組み込まれたファームウェアの更新等が随時必要な電子機器であれば構わない。また、画像形成装置１は、例えば、コピー機、プリンター、スキャナー（画像読取装置）及びファクシミリ等であってもよいし、これらの機能を備えた複合機であってもよい。
【００２４】
図４は、画像形成装置１の主要内部構成を示す機能ブロック図である。画像形成装置１は、制御部２１、操作部２２、画像読取部２３、画像形成部２４、記憶部２５、インターフェース２６（以下「Ｉ／Ｆ」という）及びネットワークＩ／Ｆ２７（送信部）等を備える。
【００２５】
操作部２２は、画像形成装置１が実行可能な各種動作及び処理について操作者から画像形成動作実行指示や原稿読取動作実行指示等の指示を受け付ける。原稿読取部２３は、原稿から読み取った画像を電気信号に変換し、画像データとして出力する。画像形成部２４は、原稿読取部２３が読み取った画像データや外部装置から送信された画像データに基づいて用紙に画像を印刷する。
【００２６】
記憶部２５は、画像形成装置１の動作に必要なプログラムやデータを記憶するものであり、本実施の形態ではエラーステータスファイル２５１を記憶する。このエラーステータスファイル２５１については後ほど説明する。
【００２７】
Ｉ／Ｆ２６は、外部記憶装置（ＵＳＢメモリー３等）を画像形成装置１に装着するためのインターフェース回路である。ネットワークＩ／Ｆ２７は、画像形成装置１のメンテナンスを行う部門に設置されたサーバー４とネットワークを介して通信するためのインターフェース回路である。
【００２８】
制御部２１は、記憶部２５に記憶された各種プログラムを読み出して処理を実行し、各機能部への指示信号の出力、データ転送等を行って画像形成装置１を統括的に制御するものであり、インストール実行部２１１を有する。
【００２９】
インストール実行部２１１は、操作部２２が受け付けたインストール実行指示、もしくはＩ／Ｆ２６に装着されたＵＳＢメモリー３が記憶するアップデート用ファームウェアを検知して、ファームウェアのインストールを実行する。
【００３０】
図５は、インストール実行部２１１が実行するインストール処理の流れを示したフローチャートである。操作部２２がスタッフからインストール実行指示を受け付ける、もしくはインストール実行部２１１がＩ／Ｆ２６に装着されたＵＳＢメモリー３からアップデート用ファームウェアを検知すると、インストール実行部２１１はＵＳＢメモリー３が記憶するアップデート用ファームウェアのインストールを開始する（ステップＳ１１）。
【００３１】
インストールの際、図３を用いて説明したように、書き込みデータの復号化を行うが、書き込みデータ本体のハッシュ値と電子署名のハッシュ値が異なる等にエラーが発生した場合（ステップＳ１２；ＹＥＳ）、インストール実行部２１１はエラーステータスファイル２５１を作成して、記憶部２５に記憶させる（ステップＳ１３）。当該記憶部２５への記憶後（ステップＳ１３）、処理はステップＳ１４に進む。また、ステップＳ１２において上記エラーが発生しない場合は（ステップＳ１２；ＮＯ）、ステップＳ１３を行わず、処理はステップＳ１４に進む。
【００３２】
エラーステータスファイル２５１とは、インストールの際に発生したエラーの種類等のエラー情報を示したファイルである。エラーステータスファイル２５１を作成することで、インストール時は外部のネットワークとの接続を切断しないといけない仕様である電子機器の場合でも、インストール後にエラー情報を取得することができる。
【００３３】
インストールが終了すると（ステップＳ１４；ＹＥＳ）、インストール実行部２１１は、記憶部２５がエラーステータスファイル２５１を記憶している場合はサーバー４へ送信させる制御をネットワークＩ／Ｆ２７に対して行う（ステップＳ１５）。エラーステータスファイル２５１がサーバー４へ送信され、サーバー４の管理者がエラーステータスファイル２５１を読み取ることで、管理者はファームウェアの改ざん等のエラーが発生したことを知ることができる。上記インストールが終了しない場合は（ステップＳ１４；ＮＯ）、処理はステップＳ１２に戻る。
【００３４】
以上、説明したように、ファームウェアが親マスタファイル、マスタファイル及びファームウェアの本体データである書き込みデータで構成されている場合、書き込みデータのみ暗号化して電子署名を添付することにより、ファームウェアの改ざんを防ぐと共に、管理サーバー９がファームウェアを暗号化する際の処理負荷増大を抑制することができる。更に、画像形成装置１がファームウェアをインストールする際は、ファームウェア全体ではなく、書き込みデータのみを復号化すればよいため、画像形成装置１の処理負荷増大も抑制することができる。
【００３５】
また、インストール実行部２１１がエラーステータスファイル２５１を作成することで、画像形成装置１がインストール時は外部のネットワークとの接続を切断しないといけない仕様である場合でも、インストール後にエラーステータスファイル２５１をサーバー４へ送信することができる。そして、サーバー４の管理者がエラーステータスファイル２５１を読み取ることで、ファームウェアの改ざん等の不正行為を検知することができる。
【符号の説明】
【００３６】
１      画像形成装置
２１    制御部
２２    操作部
２３    画像読取部
２４    画像形成部
２５    記憶部
２５１  エラーステータスファイル
２６    Ｉ／Ｆ
２７    ネットワークＩ／Ｆ
【図２】
2015053015.tif 000003
【図３】
2015053015.tif 000004
【図４】
2015053015.tif 000005
【図５】
2015053015.tif 000006
【図１】
2015053015.tif 000007