(57)【要約】【課題】  供給されたプログラムがリバースエンジニアリングされたり、ライセンスされた機器以外に不正インストールされるのを防止できるようにする。【解決手段】  入出力部３は第１の暗号化鍵で暗号化されたプログラムを外部記憶媒体１７から入力するとともに第２の暗号化鍵で暗号化されたプログラムを出力する。復号化部７は入力されたプログラムを第１の復号化鍵で復号化する。暗号生成部９は第２の暗号化鍵および第２の復号化鍵を生成する。暗号化部１１は復号化されたプログラムを第２の暗号化鍵で暗号化する。主制御部１は復号化部７、暗号生成部９および暗号化部１１を制御するとともに、第２の暗号化鍵で暗号化されたプログラムを入出力部３から外部記憶媒体１７に出力制御する。【選択図】  図１
2008252290.tif 000002
【特許請求の範囲】
【請求項１】
第１の暗号化鍵で暗号化されたプログラムを入力するとともに第２の暗号化鍵で暗号化されたプログラムを出力する入出力部と、
入力された前記プログラムを第１の復号化鍵で復号化する復号化部と、
前記第２の暗号化鍵および第２の復号化鍵を生成する暗号生成部と、
復号化された前記プログラムを前記第２の暗号化鍵で暗号化する暗号化部と、
前記復号化部での復号化制御、前記暗号生成部での生成制御および前記暗号化部での暗号化制御を行うとともに、前記第２の暗号化鍵で暗号化された前記プログラムを前記入出力部から出力制御する主制御部と、
を具備することを特徴とする画像処理装置。
【請求項２】
前記主制御部は、前記入出力部を介して入力元の前記プログラムを削除制御する請求項１記載の画像処理装置。
【請求項３】
前記入出力部は、前記第１の暗号化鍵で暗号化された前記プログラムの格納された記憶媒体から当該プログラムを入力するとともに前記第２の暗号化鍵で暗号化された前記プログラムを記憶媒体に出力する機能を有する請求項１又は２記載の画像処理装置。
【請求項４】
前記復号化部は、前記第２の暗号化鍵で暗号化された前記プログラムを前記第２の復号化鍵で復号化する機能を有する請求項１〜３いずれか１記載の画像処理装置。
【請求項５】
前記第１の暗号化鍵は秘密鍵であり、前記第１の復号化鍵は前記秘密鍵とペアをなす公開鍵である請求項１〜４いずれか１記載の画像処理装置。
【請求項６】
前記第２の暗号化鍵および第２の復号化鍵は、当該装置固有に付与された符号に基づき生成される請求項１〜５いずれか１記載の画像処理装置。
【請求項７】
第１の暗号化鍵で暗号化されたプログラムを入力するプログラム入力処理と、
入力された前記プログラムを第１の復号化鍵で復号化する復号化処理と、
前記第２の暗号化鍵および第２の復号化鍵を生成する暗号生成処理と、
復号化された前記プログラムを前記第２の暗号化鍵で暗号化する暗号化処理と、
前記第２の暗号化鍵で暗号化された前記プログラムを出力する出力処理と、
を具備することを特徴とする画像処理装置のプログラム処理方法。
【請求項８】
入力された前記プログラムを復号化したとき、入力元の前記プログラムを削除する削除処理を有する請求項７記載の画像処理装置のプログラム処理方法。
【請求項９】
前記入力処理は前記プログラムの格納された記憶媒体から当該プログラムを入力し、前記出力処理は前記第２の暗号化鍵で暗号化された前記プログラムを記憶媒体に出力する請求項７又は８記載の画像処理装置のプログラム処理方法。
【請求項１０】
前記復号化処理は、前記第２の暗号化鍵で暗号化された前記プログラムを前記第２の復号化鍵で復号化する請求項７〜９いずれか１記載の画像処理装置のプログラム処理方法。
【請求項１１】
前記第１の暗号化鍵は秘密鍵であり、前記第１の復号化鍵は前記秘密鍵とペアをなす公開鍵である請求項７〜１０いずれか１記載の画像処理装置のプログラム処理方法。
【請求項１２】
前記第２の暗号化鍵および第２の復号化鍵は、当該装置固有に付与された符号に基づき生成される請求項７〜１１いずれか１記載の画像処理装置のプログラム処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置および画像処理装置のプログラム処理方法に係り、例えば複合機（ＭＦＰ：Multi Function Peripheral）等の画像処理装置およびこれらに搭載して好適なプログラム処理方法に関する。
【背景技術】
【０００２】
複合機等の画像処理装置は、この装置上で動作する種々のアプリケーションプログラム（以下、単にプログラムと略す。）が追加可能に構成され、そのプログラムに変更や修正があった場合、適時、修正プログラムをインストールする必要がある。
【０００３】
しかも、修正プログラムをインストールする場合、目的とする機器以外に不正にインストールされないよう、プログラムを暗号化して供給したり、プログラムに関連付けたライセンスファイルを添付してセキュリティの確保が図れる。
【０００４】
例えば、特開２００６−４０２１７号公報（特許文献１）はこの種のものである。
【０００５】
この特許文献１は、画像形成装置にインストールするアプリケーションの格納先（ハードディスク）とは物理的に異なる格納先（不揮発性メモリ）に、暗号化されたアプリケーションの復号情報と、アプリケーションを特定するアプリケーション情報を保持したライセンスファイルを記憶させ、ライセンスファイルがクライアントから提示されず、かつ不揮発性メモリに記憶されている場合はこのライセンスファイルを使用してアプリケーションをインストールできるように構成し、画像形成装置のハードディスクが破損しても、画像形成装置にインストールされているアプリケーションの復元を容易にしたものである。
【特許文献１】特開２００６−４０２１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した特許文献１では、アプリケーションプログラムが暗号化されて供給されるので、構成や機能の解析といったリバースエンジニアリングをされてしまう危険性は低いものの、一度復号化されてインストールされると、リバースエンジニアリングされる可能性があるうえ、ライセンスされた機器以外に不正にインストールされる可能性もあり、改善が望まれていた。
【０００７】
本発明はそのような課題を解決するためになされたもので、供給されたプログラムがリバースエンジニアリングされ難く、指定された機器以外に不正にインストールされるのを防止可能な画像処理装置および画像処理装置のプログラム処理方法の提供を目的とする。
【課題を解決するための手段】
【０００８】
そのような課題を解決するために本発明に係る画像処理装置は、第１の暗号化鍵で暗号化されたプログラムを入力するとともに第２の暗号化鍵で暗号化されたプログラムを出力する入出力部と、入力されたプログラムをその第１の復号化鍵で復号化する復号化部と、その第２の暗号化鍵および第２の復号化鍵を生成する暗号生成部と、復号化されたプログラムをその第２の暗号化鍵で暗号化する暗号化部と、その復号化部での復号化制御、暗号生成部での生成制御および暗号化部での暗号化制御を行うとともにその第２の暗号化鍵で暗号化されたプログラムを入出力部から出力制御する主制御部とを具備している。
【０００９】
本発明の画像処理装置では、上記主制御部が、その入出力部を介して入力元のプログラムを削除制御する構成も可能である。
【００１０】
本発明の画像処理装置では、上記入出力部が、その第１の暗号化鍵で暗号化されたプログラムの格納された記憶媒体から当該プログラムを入力するとともに、その第２の暗号化鍵で暗号化されたプログラムをその記憶媒体に出力する構成も可能である。
【００１１】
本発明の画像処理装置では、上記復号化部が、その第２の暗号化鍵で暗号化されたプログラムを第２の復号化鍵で復号化する機能を有する構成も可能である。
【００１２】
本発明の画像処理装置では、上記第１の暗号化鍵は秘密鍵であり、上記第１の復号化鍵は秘密鍵とペアをなす公開鍵である構成も可能である。
【００１３】
本発明の画像処理装置では、上記第２の暗号化鍵および第２の復号化鍵が、当該装置固有に付与された符号に基づき生成される構成も可能である。
【００１４】
本発明に係る画像処理装置のプログラム処理方法では、第１の暗号化鍵で暗号化されたプログラムを入力するプログラム入力処理と、入力されたプログラムを第１の復号化鍵で復号化する復号化処理と、その第２の暗号化鍵および第２の復号化鍵を生成する暗号生成処理と、復号化されたプログラムをその第２の暗号化鍵で暗号化する暗号化処理と、その第２の暗号化鍵で暗号化されたプログラムを出力する出力処理とを具備している。
【００１５】
本発明のプログラム処理方法では、入力されたプログラムを復号化したとき、入力元のプログラムを削除する削除処理を有する構成も可能である。
【００１６】
本発明のプログラム処理方法では、上記入力処理がプログラムの格納された記憶媒体から当該プログラムを入力し、上記出力処理が第２の暗号化鍵で暗号化されたプログラムを記憶媒体に出力する構成も可能である。
【００１７】
本発明のプログラム処理方法では、上記復号化処理が、その第２の暗号化鍵で暗号化されたプログラムを第２の復号化鍵で復号化する構成も可能である。
【００１８】
本発明のプログラム処理方法では、上記第１の暗号化鍵が秘密鍵であり、上記第１の復号化鍵がその秘密鍵とペアをなす公開鍵である構成も可能である。
【００１９】
本発明のプログラム処理方法では、当該装置固有に付与された符号に基づき上記第２の暗号化鍵および第２の復号化鍵が生成される構成も可能である。
【発明の効果】
【００２０】
このような本発明に係る画像処理装置およびプログラム処理方法では、第１の暗号化鍵で暗号化されたプログラムを入出力部で入力し、このプログラムを復号化部にて第１の復号化鍵で復号化し、暗号生成部にて第２の暗号化鍵および第２の復号化鍵を生成し、復号化されたプログラムを暗号化部にてその第２の暗号化鍵で暗号化し、主制御部において復号化部、暗号生成部および暗号化部の制御を行うとともに第２の暗号化鍵で暗号化されたプログラムを入出力部から出力制御するから、供給されたプログラムがリバースエンジニアリングされるのを防ぎ、指定された機器以外に不正にインストールされるのも防ぐことが可能である。
【００２１】
本発明において、入力元のプログラムを削除制御する構成では、別の装置に元のプログラムが不正にインストールされるのを防止可能である。
【００２２】
本発明において、その第１の暗号化鍵で暗号化されたプログラムの格納された記憶媒体から当該プログラムを入力するとともに、第２の暗号化鍵で暗号化されたプログラムを記憶媒体に出力する構成では、複合化されたプログラムが再度暗号化されて記憶されるから、特定の機器以外に不正にインストールされるのを防ぐことが可能である。
【００２３】
本発明において、その第２の暗号化鍵で暗号化されたプログラムを第２の復号化鍵で復号化する構成では、複合化したプログラムが何らかの理由で損傷を受けても、当該装置のみで容易に復号化して再インストール可能である。
【００２４】
本発明において、上記第１の暗号化鍵を秘密鍵とし、上記第１の復号化鍵を秘密鍵とペアをなす公開鍵とする構成では、供給されたプログラムの複合化セキュリティを確保し易い。
【００２５】
本発明において、上記第２の暗号化鍵および第２の復号化鍵が当該装置固有に付与された符号に基づき生成される構成では、当該装置固有の暗号化鍵および復号化鍵の生成が可能で、提供されるプログラムのセキュリティをより確かなものにすることが可能である。
【発明を実施するための最良の形態】
【００２６】
以下、本発明の実施の形態を図面を参照して説明する。
【００２７】
図１は本発明に係る画像処理装置の実施の形態を示す概略ブロック図である。なお、本発明のプログラム処理方法は本発明の画像処理装置を説明する過程で説明する。
【００２８】
図１において、本発明に係る画像処理装置は、主制御部１を中心にして入出力部３、記憶部５、復号化部７、暗号生成部９、暗号化部１１、操作表示部１３および印刷部１５を有して構成されている。主制御部１は、入出力部３、記憶部５、復号化部７、暗号生成部９、暗号化部１１、操作表示部１３および印刷部１５を制御するものであるが、詳細は後述する。
【００２９】
入出力部３は、外部において第１の暗号化鍵で暗号化されたプログラムの格納された外部記憶媒体例えばＵＳＢメモリ１７が装着され、ＵＳＢメモリ１７からそのプログラムを入力するインターフェースであり、入力したプログラムを記憶部５に記憶する機能を有している。
【００３０】
入出力部３は、主制御部１の制御の下、後述するようにＵＳＢメモリ１７に格納されたプログラムを削除するとともに、第２の暗号化鍵で暗号化されたプログラムをＵＳＢメモリ１７に出力する機能も有している。
【００３１】
記憶部５は、入出力部３から入力したプログラム、後述する復号化されたプログラムや暗号化されたプログラムの他、第１の復号化鍵、第２の暗号化鍵、第２の復号化鍵等を格納する例えばハードディスク（ＨＤＤ）である。
【００３２】
復号化部７は、記憶部５を参照し、入力され記憶部５に記憶されたプログラムを第１の暗号化鍵に対をなす第１の復号化鍵で復号化し、復号化されたプログラムを記憶部５に記憶する機能を有している。復号化部７の他の機能は後述する。
【００３３】
機器の外部においてプログラムを暗号化する第１の暗号化鍵は秘密鍵であり、復号化部７で復号化に用いる第１の復号化鍵はその秘密鍵と対（ペア）をなす公開鍵である。
【００３４】
第１の復号化鍵は、予め入出力部３からオンライン又は手動入力されて記憶部５を介して復号化部７に設定される。なお、これら秘密鍵および公開鍵は、公知の手法によって生成されたものである。
【００３５】
復号化され記憶部５に記憶されたプログラムは、主制御部１の制御によってインストールされた状態になっている。
【００３６】
暗号生成部９は、第２の暗号化鍵としての公開鍵と、第２の復号化鍵としての秘密鍵の対（ペア）鍵を公知の手法で生成して記憶部５に記憶する機能を有するものであり、記憶部５を介して第２の暗号化鍵を暗号化部１１に出力され、第２の復号化鍵を復号化部７に出力される。
【００３７】
なお、第２の暗号化鍵および第２の復号化鍵は、当該装置に固有に付与された符号、例えば機器のシリアル番号に基づき生成される。
【００３８】
暗号化部１１は、記憶部５を参照し、復号化され記憶されたプログラムを第２の暗号化鍵で暗号化して入出力部３に出力する機能を有している。入出力部３は、この暗号化されたプログラムをＵＳＢメモリ１７に出力する訳である。
【００３９】
操作表示部１３は、当該装置の動作状況や入力設定情報を表示する表示機能を有するとともに、プログラムの入力インストールおよび再入力インストールの指示を受け付ける操作機能を有し、例えば液晶操作タッチパネルであり、装置本体ケースに配置されるが、本発明の要部ではないので、詳細な説明および図示は省略する。
【００４０】
印刷部１５は、例えば、図示しない画像読取部から読み取られた画像データを印刷画像イメージデータに展開してトナー現像処理し、印刷用紙にトナー現像を転写してトナー定着させる公知のカラー又はモノクロ印刷エンジンである。
【００４１】
主制御部１は、上述した入出力部３、記憶部５、復号化部７、暗号生成部９、暗号化部１１、操作表示部１３および印刷部１５を制御する主制御機能を有し、制御演算機能の主要部をなすＣＰＵやこのＣＰＵのプログラムを格納したＲＯＭを有して形成され、復号化部７、暗号生成部９および暗号化部１１とともにその機能を実現する他、以下の機能を有している。
【００４２】
すなわち、主制御部１は、プログラムが復号化部７で復号化されたとき、入出力部３を制御してＵＳＢメモリ１７内に記憶された入力元のプログラムを削除制御する機能を有している。
【００４３】
また、上述した復号化部７は、第２の暗号化鍵で暗号化され、入出力部３からＵＳＢメモリ１７に記憶されたプログラムが入出力部３から入力されたとき、記憶部５を参照し、第２の復号化鍵で復号化して記憶部５に記憶する機能も有している。これは、何らかの理由によって記憶部５のプログラムが損傷して再インストールが必要になった場合の動作である。
【００４４】
次に、本発明に係る画像処理装置の動作を、手順概念図である図２を参照して簡単に説明する。
【００４５】
なお、装置外部において、予め第１の暗号化鍵と第１の復号化鍵が生成され、適当な手法によって第１の復号化鍵が画像処理装置に設定されている。
【００４６】
供給されるアプリケーションプログラムが第１の暗号化鍵（秘密鍵）で暗号化され、配布用メディアとしてのＵＳＢメモリ１７に記憶される。
【００４７】
このＵＳＢメモリ１７が入出力部３に装着されると、主制御部１の制御の下でプログラムの入力処理が実行されて記憶部５に記憶される。
【００４８】
次いで、入力され記憶されたプログラムが復号化部７において第１の復号化鍵（公開鍵）によって復号化処理されて記憶部５に記憶され、画像処理装置におけるインストール状態となる。
【００４９】
プログラムの復号化を受けて、主制御部１は入出力部３を制御して入力元のＵＳＢメモリ１７に対して入出力部３を介してプログラムの削除処理を実行する。
【００５０】
他方、暗号生成部９では、装置別独情報（シリアル番号）に基づき、第２の暗号化鍵（公開鍵）および第２の復号化鍵（秘密鍵）のペア鍵の暗号生成処理が実行され、第２の暗号化鍵および第２の復号化鍵が記憶部５に出力される。
【００５１】
暗号化部１１では、復号化されたプログラムを第２の暗号化鍵で暗号化処理し、入出力部３を介して第２の暗号化鍵で暗号化されたプログラムをＵＳＢメモリ１７に出力処理する。
【００５２】
これらの処理手順が本発明に係る画像処理装置のプログラム処理方法である。
【００５３】
このような本発明に係る画像処理装置では、第１の暗号化鍵（秘密鍵）で暗号化されたプログラムをＵＳＢメモリ（外部記憶媒体）１７から入力するとともに第２の暗号化鍵（公開鍵）で暗号化されたプログラムを出力する入出力部３と、入力されたプログラムを第１の復号化鍵（公開鍵）で復号化する復号化部７と、その第２の暗号化鍵（公開鍵）および第２の復号化鍵（秘密鍵）を生成する暗号生成部９と、復号化されたプログラムを第２の暗号化鍵で暗号化する暗号化部１１と、その復号化部７での復号化制御、暗号生成部９での生成制御および暗号化部１１での暗号化制御を行うとともに、第２の暗号化鍵で暗号化されたプログラムを入出力部３からＵＳＢメモリ１７に出力制御する主制御部１とを具備している。
【００５４】
そのため、アプリケーションプログラムがリバースエンジニアリングされ難くなるし、一度インストールしたアプリケーションが他の画像処理装置にインストール困難になってライセンスの不正利用を防ぐことができるうえ、一度インストールしたアプリケーションが何らかの理由で破損しても、再インストールすることが容易である。
【００５５】
しかも、入力元のプログラムがＵＳＢメモリ１７から削除されるから、別の装置に元のプログラムが不正にインストールされるのを防止可能であるし、復号化部７が第２の暗号化鍵で暗号化されたプログラムを第２の復号化鍵で復号化する機能を有するから、複合化したプログラムが何らかの理由で損傷を受けても、当該装置のみで容易に再インストール可能である。
【００５６】
また、第２の暗号化鍵および第２の復号化鍵は、当該装置固有に付与されたシリアル番号に基づき生成されるから、当該装置固有の暗号化鍵および復号化鍵の生成が可能で、暗号化されたプログラムのセキュリティをより確かなものにすることが可能である。
【００５７】
ところで、上述した本発明に係る画像処理装置は、外部記憶媒体であるＵＳＢメモリ１７に対して入出力部３を介してプログラムを入出力する構成であったが、本発明ではネットワークを介して例えば図示しないサーバとの間でオンラインで入出力する構成も可能であり、これに合わせて入出力部３や主制御部１を形成すれば良い。
【００５８】
また、外部記憶媒体もＵＳＢメモリ１７に限定されず、種々の記憶媒体で実施可能である。
【００５９】
さらに、本発明で用いる第１の暗号化鍵と第１の復号化鍵、第２の暗号化鍵と第２の復号化鍵は各々秘密鍵と公開鍵のペア鍵に限定されないが、第１の暗号化鍵と第１の復号化鍵は秘密鍵と公開鍵のペア鍵とした方が、セキュリティ確保の観点から好ましい。他方、第２の暗号化鍵および第２の復号化鍵は共通鍵等であっても実用上は問題ないであろう。
【００６０】
また、本発明に係るプログラム処理方法では、第１の暗号化鍵で暗号化されたプログラムを入力するプログラム入力処理と、入力されたプログラムを第１の復号化鍵で復号化する復号化処理と、その第２の暗号化鍵および第２の復号化鍵を生成する暗号生成処理と、復号化されたプログラムを第２の暗号化鍵で暗号化する暗号化処理と、その第２の暗号化鍵で暗号化されたプログラムを出力する出力処理とを具備しており、上述した画像処理装置と同様な効果を得ることが可能である。
【００６１】
なお、本発明は画像形成装置やコンピュータその他、種々の画像処理装置において実施可能である。
【図面の簡単な説明】
【００６２】
【図１】本発明に係る画像処理装置の実施の形態を示す概略ブロック図である。
【図２】本発明の画像処理装置の動作を説明する手順概念図である。
【符号の説明】
【００６３】
１  主制御部
３  入出力部
５  記憶部
７  復号化部
９  暗号生成部
１１  暗号化部
１３  操作表示部
１５  印刷部
１７  記憶媒体（ＵＳＢメモリ）
【図１】
2008252290.tif 000003
【図２】
2008252290.tif 000004