(57)【要約】【課題】画像形成装置などの情報処理装置にメモリカードなどの記憶媒体を使用してプログラムを入力できるような場合において、記憶媒体が不正にコピーされたり使用されたりして、情報処理装置にプログラムが不正に入力されてしまう危険性に対処する。【解決手段】情報処理装置に情報処理を実行させるためのプログラムを当該情報処理装置に入力するための記憶媒体であって、前記プログラムのＩＤを、当該記憶媒体に固有な鍵又は前記情報処理装置に固有な鍵で暗号化して格納するためのＩＤファイルが記憶されている。【選択図】図７
2010211818.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置に処理を実行させるためのプログラムを当該画像形成装置に入力するための記憶媒体であって、
前記プログラムを格納する第一の格納ファイルを備え、
前記第一の格納ファイルにはさらに、該プログラムを識別する第一の識別情報と該プログラムが所定の条件に従って作成されたプログラムであることを識別するための第二の識別情報識とが格納されることを特徴とする記憶媒体。
【請求項２】
当該記憶媒体が前記情報処理装置に入力するプログラムを格納する記憶媒体として正当であることを確認するための確認プログラムを格納する第二の格納ファイルを備えることを特徴とする請求項１記載の記憶媒体。
【請求項３】
前記情報処理装置に搭載されて起動されたとき、前記情報処理装置からの前記確認プログラムの起動要求に応じて、前記確認プログラムは、前記情報処理装置に応答ことを特徴とする請求項２記載の記憶媒体。
【請求項４】
前記情報処理装置において前記記憶媒体に固有の情報又は前記情報処理装置に固有の情報を用いて前記第一の識別情報が暗号化され、該情報処理装置によって暗号化された前記第一の識別情報の暗号化識別情報を登録するための第三の格納ファイルを備えることを特徴とする請求項１乃至３のいずれか一項に記載の記憶媒体。
【請求項５】
前記第三の格納ファイルには、
前記記憶媒体と、該記憶媒体の暗号化識別情報格納ファイルとの整合性を確認するための前記整合性確認情報が格納されることを特徴とする請求項４記載の記憶媒体。
【請求項６】
前記第三の格納ファイルには、
格納可能な前記識別情報の個数の上限値が設定されていると共に、当該第二の格納ファイルに格納されている前記識別情報の個数の値が格納されていることを特徴とする請求項４又は５に記載の記憶媒体。
【請求項７】
前記第三の格納ファイルに前記識別情報が格納される際には、前記識別情報を格納するための格納領域に前記識別情報の代わりに格納されている格納情報に替わり前記識別情報が格納される形で、前記第三の格納ファイルに前記識別情報が格納されることを特徴とする請求項４乃至６のいずれか１項に記載の記憶媒体。
【請求項８】
当該記憶媒体に固有の情報は、当該記憶媒体のシリアルＩＤ、または当該記憶媒体のシリアルＩＤと、前記確認プログラムの設定ファイルの電子署名を書き込んだ認証ファイルとから生成したメッセージダイジェストであることを特徴とする請求項４乃至７のいずれか１項に記載の記憶媒体。
【請求項９】
前記第三の格納ファイルには
前記情報処理装置の前記登録手段による前記アプリケーションプログラムの前記暗号化識別情報の登録処理が実行済か未実行かを確認するための登録済確認用データが格納されることを特徴とする請求項４乃至８のいずれか１項記載の記憶媒体。
【請求項１０】
情報処理装置に装着されて当該情報処理装置に情報処理を実行させるためのプログラムの記憶先として使用される記憶装置であって、
前記プログラムを格納する第一の格納ファイルを備え、
前記第一の格納ファイルにはさらに、該プログラムを識別する第一の識別情報と該プログラムが所定の条件に従って作成されたプログラムであることを識別するための第二の識別情報識とが格納されることを特徴とする記憶装置。
【請求項１１】
前記情報処理装置において前記記憶媒体に固有の情報又は前記情報処理装置に固有の情報を用いて前記第一の識別情報が暗号化され、該情報処理装置によって暗号化された前記第一の識別情報の暗号化識別情報を登録するための第二の格納ファイルを備えることを特徴とする請求項１０に記載の記憶装置。
【請求項１２】
前記第二の格納ファイルに前記識別情報が格納される際には、前記識別情報を格納するための格納領域に前記識別情報の代わりに格納されている格納情報に替わり前記識別情報が格納される形で、前記第二の格納ファイルに前記識別情報が格納されることを特徴とする請求項１０又は１２に記載の記憶装置。
【請求項１３】
前記第二の格納ファイルには
前記情報処理装置の前記登録手段による前記アプリケーションプログラムの前記暗号化識別情報の登録処理が実行済か未実行かを確認するための登録済確認用データが格納されることを特徴とする請求項１０乃至１２のいずれか１項記載の記憶装置。
【請求項１４】
記憶媒体のアプリケーションプログラムファイルに格納されたアプリケーションプログラムによる処理の実行制御を行う情報処理装置であって、
前記アプリケーションプログラムファイルに格納される前記アプリケーションプログラムを識別するための識別情報を、該記憶媒体に固有の情報又は当該情報処理装置に固有の情報に基づいて暗号化する識別情報暗号化手段と、
前記識別情報暗号化手段によって暗号化された暗号化識別情報を該記憶媒体に登録する登録手段と、
前記暗号化識別情報を復号化するための復号鍵を作成する復号鍵作成手段と、
前記復号鍵作成手段により作成された復号鍵を用いて、前記暗号化された暗号化識別情報を復号する復号化手段と、前記復号化手段により復号化された復号化識別情報と前記識別情報に基づいて前記アプリケーションプログラムの正当性を判断するアプリケーションプログラム正当性判断手段と、
前記アプリケーションプログラムに格納されている、前記アプリケーションプログラムが所定の条件に従って作成されたプログラムファイルであることを識別するための識別コードに基づいて、前記アプリケーションプログラムが所定の条件に従って作成されたプログラムファイルであることを識別する識別手段と、
を備えることを特徴とする情報処理装置。
【請求項１５】
前記登録手段による前記暗号化識別情報に基づいて前記アプリケーションプログラムの実行を制御する実行制御手段を備えることを特徴とする請求項１４記載の情報処理装置。
【請求項１６】
前記実行制御手段は、
前記アプリケーションプログラム正当性判断手段により、正当であると判断された場合に実行を制御することを特徴とする請求項１５記載の情報処理装置。
【請求項１７】
前記実行制御手段によって制御されるのは、前記アプリケーションプログラムの起動または起動権の設定であることを特徴とする請求項１５または１６情報処理装置。
【請求項１８】
前記識別手段による識別処理は、前記登録手段による登録処理よりも前に実行され、
前記識別手段は、
前記識別コードが前記記憶媒体に格納されているか否かを識別し、
該識別コードが格納されていない場合には、前記登録手段による登録処理を行わないことを特徴とする請求項１４乃至１７のいずれか一項に記載の情報処理装置。
【請求項１９】
前記識別手段は、
前記識別コードが前記記憶媒体に格納されているか否かを識別し、
該識別コードが格納されていない場合には、前記アプリケーションプログラム正当性判断手段による正当性判断処理を行わないことを特徴とする請求項１４乃至１８のいずれか一項に記載の情報処理装置。
【請求項２０】
前記記憶媒体と、前記暗号化識別情報が格納されている暗号化識別情報格納ファイルと、の整合性を確認するための情報であって、暗号化識別情報格納ファイルに格納されている整合性確認情報基づいて、前記記憶媒体と該記憶媒体の前記暗号化識別情報格納ファイルとの整合性を確認する整合性確認手段と、
前記整合性確認手段によって前記記憶媒体と、該記憶媒体の前記暗号化識別情報格納ファイルとが整合しないと確認された場合に、前記登録処理または前記アプリケーションプログラム正当性判断手段による正当性判断処理を行わずに処理を終了する第二の終了手段を備え、
前記整合性確認情報は、前記記憶媒体に固有の情報に基づいて作成されていることを特徴とする請求項１４乃至１９のいずれか一項に記載の情報処理装置。
【請求項２１】
前記記憶媒体に格納可能な前記アプリケーションプログラムの個数の上限値の情報であって、暗号化識別情報格納ファイルに格納されている上限値まで、前記登録手段は、暗号化された暗号化識別情報を該記憶媒体に登録することを特徴とする請求項１４乃至２０のいずれか一項に記載の情報処理装置。
【請求項２２】
前記登録手段は、前記アプリケーションプログラムの識別情報を登録するための暗号化識別情報格納ファイルに設けられた登録欄に、格納されたダミー情報に代えて、前記暗号化識別情報を登録することを特徴とする請求項１４乃至２１のいずれか一項に記載の情報処理装置。
【請求項２３】
当該記憶媒体に固有の情報は、当該記憶媒体のシリアルＩＤ、または当該記憶媒体のシリアルＩＤと、当該記憶媒体の正当性を確認するためのプログラムの設定ファイルの電子署名を書き込んだ認証ファイルとから生成したメッセージダイジェストであることを特徴とする請求項１４乃至２２のいずれか一項に記載の情報処理装置。
【請求項２４】
前記識別手段によって前記アプリケーションが所定の条件に従って作成されたプログラムファイルであることが識別されると、
前記アプリケーションプログラムを仮起動させる仮起動手段を備えることを特徴とする請求項１４乃至２３のいずれか１項に記載の情報処理装置。
【請求項２５】
前記登録手段による前記アプリケーションプログラムの前記暗号化識別情報の登録処理が実行済か未実行かを確認するための登録済確認用データに基づいて、該暗号化識別情報が登録されているか否かを確認する確認手段を備え、
前記確認手段によって前記登録処理が未実行と確認された場合に、前記識別情報暗号化手段により暗号化された前記暗号化識別情報を前記登録手段により登録し、前記復号鍵作成手段により前記暗号化識別情報の復号鍵を作成し、
前記登録手段による登録処理が実行されると、前記登録済確認用データに前記暗号化識別情報の登録済を登録する登録済登録手段をさらに備えることを特徴とする請求項１４乃至２４のいずれか１項に記載の情報処理装置。
【請求項２６】
前記確認手段により前記登録処理が実行済と確認された場合に、前記暗号化識別情報の復号鍵を前記復号鍵作成手段より作成し、前記アプリケーションプログラムの正当性を判断することを特徴とする請求項２５記載の情報処理装置。
【請求項２７】
前記登録手段は、
前記記憶媒体に固有の情報に基づいて暗号化された第一の暗号化識別情報を登録する第一の登録手段と、
当該情報処理装置に固有の情報に基づいて暗号化された第二の暗号化識別情報を登録する第二の登録手段とから成り、
前記確認手段は前記登録済確認用データに基づいて前記登録手段による登録処理が未実行か、第一の登録手段による登録までが登録済か、第二の登録手段による登録までが登録済かを確認し、
前記復号鍵作成手段は、
前記第一の登録手段による登録処理を行うときに、前記第一の暗号化識別情報を復号化するための前記記憶媒体に固有の情報に基づく復号鍵を作成する第一の作成手段と、
前記第二の登録手段による登録処理を行うときに、前記第二の暗号化識別情報を復号化するための当該情報処理装置に固有の情報に基づく復号鍵を作成する第二の作成手段とから成り、
前記実行制御手段による実行制御は、前記第二の暗号化識別情報を用いて行われることを特徴とする請求項１５乃至２６のいずれか１項記載の情報処理装置。
【請求項２８】
前記情報処理装置は画像形成装置であることを特徴とする請求項１４乃至２７記載の情報処理装置。
【請求項２９】
アプリケーションプログラムを記憶する記憶装置を設け、
前記実行制御手段は、正当性が判断されたアプリケーションプログラムを、前記記憶装置の記憶することを特徴とする請求項１４乃至２８記載の情報処理装置。
【請求項３０】
請求項１〜９に記載の記憶媒体が使用されて入力された前記アプリケーションプログラムにより情報処理を実行する情報処理装置、にて実行される情報処理方法であって、
前記記憶媒体内の前記プログラムファイルに格納された前記アプリケーションプログラムのＩＤを、当該記憶媒体に固有の情報又は当該情報処理装置に固有の情報で暗号化して当該記憶媒体内の前記ＩＤファイルに格納するＩＤ格納段階を備えることを特徴とする情報処理方法。
【請求項３１】
記憶媒体に格納されたアプリケーションプログラムによる処理の実行制御を行う情報処理装置と、該情報処理装置に装着されて当該情報処理装置に情報処理を実行させるためのプログラムの記憶先として使用される記憶装置とからなるシステムであって、
前記情報処理装置は、
前記アプリケーションプログラムファイルに格納される前記アプリケーションプログラムを識別するための識別情報を、該記憶媒体に固有の情報又は当該情報処理装置に固有の情報に基づいて暗号化する識別情報暗号化手段と、
前記識別情報暗号化手段によって暗号化された暗号化識別情報を該記憶媒体に登録する登録手段と、
前記暗号化識別情報を復号化するための復号鍵を作成する復号鍵作成手段と、
前記復号鍵作成手段により作成された復号鍵を用いて、前記暗号化された暗号化識別情報を復号して得られた識別情報と、前記アプリケーションプログラムのファイルに格納されているアプリケーションプログラムを識別するための識別情報とを比較して、アプリケーションプログラムの正当性を判断するアプリケーションプログラム正当性判断手段と、
前記記憶媒体に格納されている当該記憶媒体と、暗号化された識別情報を格納している暗号化識別情報登録ファイルとの整合性を確認するための整合性確認情報を暗号化識別情報登録ファイルから取得して、暗号化識別情報登録ファイルの整合性の確認を行う整合性確認手段と、
前記記憶装置は、
前記プログラムを格納する第一の格納ファイルを備え、
前記第一の格納ファイルにはさらに、該プログラムを識別する第一の識別情報と該プログラムが所定の条件に従って作成されたプログラムであることを識別するための第二の識別情報識とが格納されることを特徴とする記憶装置。
ことを特徴とするシステム。
【請求項３２】
請求項３０に記載の情報処理方法をコンピュータに実行させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリカード等の記憶媒体、ハードディスクドライブ等の記憶装置、主たる機能として情報処理機能を備える情報機器／従たる機能として情報処理機能を備える電気機器等の情報処理装置、情報処理方法、情報処理プログラム、システム及び記録媒体に関する。主たる機能として情報処理機能を備える情報機器の具体例としては、パーソナルコンピュータが挙げられる。従たる機能として情報処理機能を備える電気機器の具体例としては、近年、情報処理機能の高度化が目覚しいコピー／プリンタ／スキャナ／ファクシミリ／複合機／融合機等の画像形成装置が挙げられる。
【背景技術】
【０００２】
近年、コピー機能とプリンタ機能とスキャナ機能とファクシミリ機能を備える複合機や融合機が市販されるようになった。複合機や融合機は、コピーやプリンタとして機能する場合には、画像を印刷用紙に印刷することになり、コピーやスキャナとして機能する場合には、画像を読取原稿から読み取ることになり、ファクシミリとして機能する場合には、画像を電話回線を介して他の機器と授受することになる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
複合機や融合機では、アプリケーションやプラットフォームと言った様々なプログラムによって様々な情報処理が実行される。これらのプログラムはこれらの機器に出荷前から実装されているのが普通だが、これらのプログラムをこれらの機器にメモリカードを使用して出荷後に入力できるようになっていたり、これらのプログラムをこれらの機器に装着されているハードディスクドライブに出荷後に追加できるようになっていたりすれば便利である。その一方で、メモリカードが不正にコピーされたり使用されたりして、複合機や融合機にプログラムが不正に入力されてしまう危険性や、ハードディスクドライブを一の機器から他の機器に付け替えると言ったハードディスクドライブに関する不正行為が実行されて、複合機や融合機にプログラムが不正に供給されてしまう危険性もある。
【０００４】
本発明は、画像形成装置等の情報処理装置にメモリカード等の記憶媒体を使用してプログラムを入力できるような場合において、記憶媒体が不正にコピーされたり使用されたりして、情報処理装置にプログラムが不正に入力されてしまう危険性に対処することを課題とする。
【０００５】
本発明は、画像形成装置等の情報処理装置に装着されているハードディスクドライブ等の記憶装置にプログラムを追加できるような場合において、記憶装置に関する不正行為が実行されて、情報処理装置にプログラムが不正に供給されてしまう危険性に対処することを課題とする。
【課題を解決するための手段】
【０００６】
この目的を達成するために、本願発明の記憶媒体は、情報処理装置に処理を実行させるためのプログラムを当該画像形成装置に入力するための記憶媒体であって、前記プログラムを格納する第一の格納ファイルを備え、前記第一の格納ファイルにはさらに、該プログラムを識別する第一の識別情報と該プログラムが所定の条件に従って作成されたプログラムであることを識別するための第二の識別情報識とが格納されるように構成することができる。
【０００７】
また、この目的を達成するために、本願発明の記憶装置は、情報処理装置に装着されて当該情報処理装置に情報処理を実行させるためのプログラムの記憶先として使用される記憶装置であって、前記プログラムを格納する第一の格納ファイルを備え、前記第一の格納ファイルにはさらに、該プログラムを識別する第一の識別情報と該プログラムが所定の条件に従って作成されたプログラムであることを識別するための第二の識別情報識とが格納されるように構成することができる。
【０００８】
また、この目的を達成するために、本願発明の情報処理装置は、記憶媒体のアプリケーションプログラムファイルに格納されたアプリケーションプログラムによる処理の実行制御を行う情報処理装置であって、前記アプリケーションプログラムファイルに格納される前記アプリケーションプログラムを識別するための識別情報を、該記憶媒体に固有の情報又は当該情報処理装置に固有の情報に基づいて暗号化する識別情報暗号化手段と、前記識別情報暗号化手段によって暗号化された暗号化識別情報を該記憶媒体に登録する登録手段と、前記暗号化識別情報を復号化するための復号鍵を作成する復号鍵作成手段と、前記復号鍵作成手段により作成された復号鍵を用いて、前記暗号化された暗号化識別情報を復号する復号化手段と、前記復号化手段により復号化された復号化識別情報と前記識別情報に基づいて前記アプリケーションプログラムの正当性を判断するアプリケーションプログラム正当性判断手段と、前記アプリケーションプログラムに格納されている、前記アプリケーションプログラムが所定の条件に従って作成されたプログラムファイルであることを識別するための識別コードに基づいて、前記アプリケーションプログラムが所定の条件に従って作成されたプログラムファイルであることを識別する識別手段と、を備えるように構成することができる。
【０００９】
また、この目的を達成するために、本願発明の情報処理方法は、記憶媒体が使用されて入力された前記アプリケーションプログラムにより情報処理を実行する情報処理装置、にて実行される情報処理方法であって、前記記憶媒体内の前記プログラムファイルに格納された前記アプリケーションプログラムのＩＤを、当該記憶媒体に固有の情報又は当該情報処理装置に固有の情報で暗号化して当該記憶媒体内の前記ＩＤファイルに格納するＩＤ格納段階を備えるように構成することができる。
【００１０】
また、この目的を達成するために、本願発明のシステムは、記憶媒体に格納されたアプリケーションプログラムによる処理の実行制御を行う情報処理装置と、該情報処理装置に装着されて当該情報処理装置に情報処理を実行させるためのプログラムの記憶先として使用される記憶装置とからなるシステムであって、前記情報処理装置は、前記アプリケーションプログラムファイルに格納される前記アプリケーションプログラムを識別するための識別情報を、該記憶媒体に固有の情報又は当該情報処理装置に固有の情報に基づいて暗号化する識別情報暗号化手段と、前記識別情報暗号化手段によって暗号化された暗号化識別情報を該記憶媒体に登録する登録手段と、前記暗号化識別情報を復号化するための復号鍵を作成する復号鍵作成手段と、前記復号鍵作成手段により作成された復号鍵を用いて、前記暗号化された暗号化識別情報を復号して得られた識別情報と、前記アプリケーションプログラムのファイルに格納されているアプリケーションプログラムを識別するための識別情報とを比較して、アプリケーションプログラムの正当性を判断するアプリケーションプログラム正当性判断手段と、前記記憶媒体に格納されている当該記憶媒体と、暗号化された識別情報を格納している暗号化識別情報登録ファイルとの整合性を確認するための整合性確認情報を暗号化識別情報登録ファイルから取得して、暗号化識別情報登録ファイルの整合性の確認を行う整合性確認手段と、前記記憶装置は、前記プログラムを格納する第一の格納ファイルを備え、前記第一の格納ファイルにはさらに、該プログラムを識別する第一の識別情報と該プログラムが所定の条件に従って作成されたプログラムであることを識別するための第二の識別情報識とが格納されるように構成することができる。
【発明の効果】
【００１１】
本発明は、画像形成装置等の情報処理装置にメモリカード等の記憶媒体を使用してプログラムを入力できるような場合において、記憶媒体が不正にコピーされたり使用されたりして、情報処理装置にプログラムが不正に入力されてしまう危険性に対処することを可能にする。
【００１２】
本発明は、画像形成装置等の情報処理装置に装着されているハードディスクドライブ等の記憶装置にプログラムを追加できるような場合において、記憶装置に関する不正行為が実行されて、情報処理装置にプログラムが不正に供給されてしまう危険性に対処することを可能にする。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施例に該当する融合機を表す。
【図２】図１の融合機に係るハードウェア構成図である。
【図３】図１の融合機に係る外観図である。
【図４】オペレーションパネルを表す。
【図５】融合機起動部を表す。
【図６】ＳＤメモリカード用スロットとＳＤメモリカードに係るソフトウェアを表す。
【図７】第１具体例について説明するための図である。
【図８】ＶＡＳにより実行される処理に係るフローチャートである。
【図９】ＶＡＳにより実現される機能に係る機能ブロック図である。
【図１０】ＰＤＩＤ登録処理の詳細について説明するためのシーケンス図である。
【図１１】アプリ正当性判断処理の詳細について説明するためのシーケンス図である。
【図１２】第２具体例について説明するための図である。
【図１３】ＶＡＳにより実行される処理に係るフローチャートである。
【図１４】ＶＡＳにより実現される機能に係る機能ブロック図である。
【図１５】ＰＤＩＤ登録処理の詳細について説明するためのシーケンス図である。
【図１６】アプリ正当性判断処理の詳細について説明するためのシーケンス図である。
【図１７】第３具体例について説明するための図である。
【図１８】ＶＡＳにより実行される処理に係るフローチャートである。
【図１９】ＶＡＳにより実現される機能に係る機能ブロック図である。
【図２０】ＰＤＩＤ登録処理の詳細について説明するためのシーケンス図である。
【図２１】アプリ正当性判断処理の詳細について説明するためのシーケンス図である。
【図２２】第４具体例について説明するための図である。
【図２３】ＶＡＳにより実行される処理に係るフローチャートである。
【図２４】ＶＡＳにより実現される機能に係る機能ブロック図である。
【図２５】ＰＤＩＤ登録処理の詳細について説明するためのシーケンス図である。
【図２６】ＰＤＩＤ登録処理の詳細について説明するためのシーケンス図である。
【図２７】アプリ正当性判断処理の詳細について説明するためのシーケンス図である。
【図２８】第５具体例について説明するための図である。
【図２９】ＶＡＳにより実行される処理に係るフローチャートである。
【図３０】ＶＡＳにより実現される機能に係る機能ブロック図である。
【図３１】ＰＤＩＤ登録処理の詳細について説明するためのシーケンス図である。
【図３２】アプリ正当性判断処理の詳細について説明するためのシーケンス図である。
【図３３】画像形成処理用のパスワードについて説明するための図である。
【図３４】パスワード付加処理に係るフローチャートである。
【図３５】パスワード照合処理に係るフローチャートである。
【図３６】画像形成処理用の鍵について説明するための図である。
【図３７】暗号化処理に係るフローチャートである。
【図３８】復号化処理に係るフローチャートである。
【図３９】本発明の実施例に該当する情報処理装置を表す。
【発明を実施するための形態】
【００１４】
図３９は、本発明の実施例に該当する情報処理装置１１を表す。図３９の情報処理装置１１は、種々のハードウェア２１と、種々のソフトウェア２２と、起動部２３により構成される。
【００１５】
情報処理装置１１のハードウェア２１としては、ＣＰＵやＲＯＭやＲＡＭやＨＤＤ等により構成される情報処理部、ＭＯＤＥＭやＮＩＣ等により構成される通信部、キーボードやマウスやディスプレイ等により構成される操作表示部が存在する。
【００１６】
情報処理装置１１のソフトウェア２２としては、種々のアプリケーション３１、種々のプラットフォーム３２が存在する。プラットフォーム３２としては、情報処理部に関する制御を行うモジュール、通信部に関する制御を行うモジュール、操作表示部に関する制御を行うモジュール、認証処理に関する制御を行うモジュール、ユーザ情報の管理に関する制御を行うモジュール、システムの管理に関する制御を行うモジュールが存在する。これらのプログラムは、ＵＮＩＸ（登録商標）等のＯＳ（オペレーティングシステム）によりプロセス単位で並列的に実行される。
【００１７】
起動部２３は、情報処理装置１１の電源投入時に最初に実行される。これにより、ＵＮＩＸ（登録商標）等のＯＳが起動され、アプリケーション３１やプラットフォーム３２が起動される。これらのプログラムは、ＨＤＤやメモリカードに蓄積されており、ＨＤＤやメモリカードから再生されて、ＲＡＭに起動されることになる。
【００１８】
図３９の情報処理装置１１の具体例としては、主たる機能として情報処理機能を備える情報機器／従たる機能として情報処理機能を備える電気機器等が挙げられる。主たる機能として情報処理機能を備える情報機器の具体例としては、パーソナルコンピュータが挙げられる。従たる機能として情報処理機能を備える電気機器の具体例としては、近年情報処理機能の高度化が目覚しいコピー／プリンタ／スキャナ／ファクシミリ／複合機／融合機等の画像形成装置が挙げられる。以下、情報処理装置１１の具体例である融合機１０１について説明する。
【００１９】
図１は、本発明の実施例に該当する融合機１０１を表す。図１の融合機１０１は、種々のハードウェア１１１と、種々のソフトウェア１１２と、融合機起動部１１３により構成される。
【００２０】
融合機１０１のハードウェア１１１としては、撮像部１２１と、印刷部１２２と、その他のハードウェア１２３が存在する。撮像部１２１は、読取原稿から画像（画像データ）を読み取るためのハードウェアである。印刷部１２２は、画像（画像データ）を印刷用紙に印刷するためのハードウェアである。
【００２１】
融合機１０１のソフトウェア１１２としては、種々のアプリケーション１３１と、種々のプラットフォーム１３２が存在する。これらのプログラムは、ＵＮＩＸ（登録商標）等のＯＳ（オペレーティングシステム）によりプロセス単位で並列的に実行される。
【００２２】
アプリケーション１３１としては、コピー用のアプリケーションであるコピーアプリ１４１、プリンタ用のアプリケーションであるプリンタアプリ１４２、スキャナ用のアプリケーションであるスキャナアプリ１４３、ファクシミリ用のアプリケーションであるファクシミリアプリ１４４、ネットワークファイル用のアプリケーションであるネットワークファイルアプリ１４５が存在する。
【００２３】
アプリケーション１３１は、専用のＳＤＫ（ソフトウェア開発キット）を使用して開発することができる。ＳＤＫを使用して開発したアプリケーション１３１をＳＤＫアプリと呼ぶ。ＳＤＫは、プラットフォーム１３２の実行形式ファイル、プラットフォーム１３２の専用関数ライブラリ、Ｃ言語の標準関数ライブラリ、アプリケーション１３１のソースファイルをコンパイルすることでアプリケーション１３１のオブジェクトファイルを生成するコンパイラ、アプリケーション１３１のオブジェクトファイルを専用関数ライブラリや標準関数ライブラリにリンクさせることでアプリケーション１３１の実行形式ファイルを生成するリンカで構成されている。
【００２４】
プラットフォーム１３２としては、種々のコントロールサービス１５１、システムリソースマネージャ１５２、種々のハンドラ１５３が存在する。コントロールサービス１５１としては、ネットワークコントロールサービス（ＮＣＳ）１６１、ファクシミリコントロールサービス（ＦＣＳ）１６２、デリバリコントロールサービス（ＤＣＳ）１６３、エンジンコントロールサービス（ＥＣＳ）１６４、メモリコントロールサービス（ＭＣＳ）１６５、オペレーションパネルコントロールサービス（ＯＣＳ）１６６、サーティフィケーションコントロールサービス（ＣＣＳ）１６７、ユーザディレクトリコントロールサービス（ＵＣＳ）１６８、システムコントロールサービス（ＳＣＳ）１６９が存在する。ハンドラ１５３としては、ファクシミリコントロールユニットハンドラ（ＦＣＵＨ）１７１、イメージメモリハンドラ（ＩＭＨ）１７２が存在する。
【００２５】
ＮＣＳ１６１のプロセスは、ネットワーク通信の仲介を行う。ＦＣＳ１６２のプロセスは、ファクシミリのＡＰＩを提供する。ＤＣＳ１６３のプロセスは、蓄積文書の配信処理に関する制御を行う。ＥＣＳ１６４のプロセスは、撮像部１２１や印刷部１２２に関する制御を行う。ＭＣＳ１６５のプロセスは、メモリやハードディスクドライブに関する制御を行う。ＯＣＳ１６６のプロセスは、オペレーションパネルに関する制御を行う。ＣＣＳ１６７のプロセスは、認証処理や課金処理に関する制御を行う。ＵＣＳ１６８のプロセスは、ユーザ情報の管理に関する制御を行う。ＳＣＳ１６９のプロセスは、システムの管理に関する制御を行う。
【００２６】
アプリケーション１３１とプラットフォーム１３２の仲介を行うソフトウェア１１２として、仮想アプリケーションサービス（ＶＡＳ）１３５が存在する。ＶＡＳ１３５は、アプリケーション１３１をクライアントとするサーバプロセスとして動作すると共に、プラットフォーム１３２をサーバとするクライアントプロセスとして動作する。ＶＡＳ１３５は、アプリケーション１３１から見てプラットフォーム１３２を隠蔽するラッピング機能を備え、プラットフォーム１３２のバージョンアップによるバージョン差を吸収する役割等を担う。
【００２７】
融合機起動部１１３は、融合機１０１の電源投入時に最初に実行される。これにより、ＵＮＩＸ（登録商標）等のＯＳが起動され、アプリケーション１３１やプラットフォーム１３２が起動される。これらのプログラムは、ハードディスクドライブやメモリカードに蓄積されており、ハードディスクドライブやメモリカードから再生されて、メモリに起動されることになる。
【００２８】
図２は、図１の融合機１０１に係るハードウェア構成図である。融合機１０１のハードウェア１１１としては、コントローラ２０１と、オペレーションパネル２０２と、ファクシミリコントロールユニット（ＦＣＵ）２０３と、撮像部１２１と、印刷部１２２が存在する。
【００２９】
コントローラ２０１は、ＣＰＵ２１１、ＡＳＩＣ２１２、ＮＢ２２１、ＳＢ２２２、ＭＥＭ−Ｐ２３１、ＭＥＭ−Ｃ２３２、ＨＤＤ（ハードディスクドライブ）２３３、メモリカードスロット２３４、ＮＩＣ（ネットワークインタフェースコントローラ）２４１、ＵＳＢデバイス２４２、ＩＥＥＥ１３９４デバイス２４３、セントロニクスデバイス２４４により構成される。
【００３０】
ＣＰＵ２１１は、種々の情報処理用のＩＣである。ＡＳＩＣ２１２は、種々の画像処理用のＩＣである。ＮＢ２２１は、コントローラ２０１のノースブリッジである。ＳＢ２２２は、コントローラ２０１のサウスブリッジである。ＭＥＭ−Ｐ２３１は、融合機１０１のシステムメモリである。ＭＥＭ−Ｃ２３２は、融合機１０１のローカルメモリである。ＨＤＤ２３３は、融合機１０１のストレージである。メモリカードスロット２３４は、メモリカード２３５をセットするためのスロットである。ＮＩＣ２４１は、ＭＡＣアドレスによるネットワーク通信用のコントローラである。ＵＳＢデバイス２４２は、ＵＳＢ規格の接続端子を提供するためのデバイスである。ＩＥＥＥ１３９４デバイス２４３は、ＩＥＥＥ１３９４規格の接続端子を提供するためのデバイスである。セントロニクスデバイス２４４は、セントロニクス仕様の接続端子を提供するためのデバイスである。
【００３１】
オペレーションパネル２０２は、オペレータが融合機１０１に入力を行うためのハードウェア（操作部）であると共に、オペレータが融合機１０１から出力を得るためのハードウェア（表示部）である。
【００３２】
図３は、図１の融合機１０１に係る外観図である。図３には、撮像部１２１の位置と、印刷部１２２の位置と、オペレーションパネル２０２の位置が図示されている。図３には更に、読取原稿のセット先となる原稿セット部３０１と、印刷用紙の給紙先となる給紙部３０２と、印刷用紙の排紙先となる排紙部３０３が図示されている。
【００３３】
オペレーションパネル２０２は、図４のように、タッチパネル３１１と、テンキー３１２と、スタートボタン３１３と、リセットボタン３１４と、初期設定ボタン３１５により構成される。タッチパネル３１１は、タッチ操作で入力を行うためのハードウェア（タッチ操作部）であると共に、画面表示で出力を得るためのハードウェア（画面表示部）である。テンキー３１２は、キー操作で数字入力を行うためのハードウェアである。スタートボタン３１３は、ボタン操作でスタート操作を行うためのハードウェアである。リセットボタン３１４は、ボタン操作でリセット操作を行うためのハードウェアである。初期設定ボタン３１５は、ボタン操作で初期設定画面を表示させるためのハードウェアである。
【００３４】
原稿セット部３０１は、ＡＤＦ（自動原稿搬送装置）３２１と、フラットベッド３２２と、フラットベッドカバー３２３により構成される。給紙部３０２は、４個の給紙トレイにより構成される。排紙部３０３は、１個の排紙トレイにより構成される。
【００３５】
（融合機起動部）
図１の融合機起動部１１３について説明する。
【００３６】
融合機起動部１１３は、図５のように、メモリモニタ部５０１と、プログラム起動部５０２により構成される。
【００３７】
図１の融合機１０１の電源を投入すると、メモリモニタ部５０１を構成するＢＩＯＳとブートローダが起動されて、これにより、ＵＮＩＸ（登録商標）等のＯＳが起動される。続いて、プログラム起動部５０２を構成する起動処理用プログラムが起動されて、これにより、アプリケーション１３１やプラットフォーム１３２が適宜起動される。なお、ＵＮＩＸ（登録商標）が起動される場合には、ＵＮＩＸ（登録商標）のカーネルが起動され、ルートファイルシステムが展開され、アプリケーション１３１やプラットフォーム１３２に係るファイルシステムがルートファイルシステムにマウントされることになる。
【００３８】
アプリケーション１３１やプラットフォーム１３２に係るマウント処理や起動処理の例を挙げておく。プログラム起動部５０２は、ルートファイルシステム内のｅｔｃのマスタ設定ファイル「ｉｎｉｔ．ｃｏｎｆ」を読み込んで、マスタ設定ファイル内のコマンドに従ってマウント処理や起動処理を実行する。プログラム起動部５０２はさらに、マウントしたファイルシステム内の設定ファイル「ｉｎｉｔ．ｃｏｎｆ」や「ｉｎｉｔ．ｃｎｆ」を読み込んで、設定ファイル内のコマンドに従ってマウント処理や起動処理を実行すると共に、マウントしたファイルシステム内の設定ディレクトリ「ｉｎｉｔ．ｄ」の設定ファイル「＊＊＊．ｃｏｎｆ」や「＊＊＊．ｃｎｆ」を読み込んで、設定ディレクトリの設定ファイル内のコマンドに従ってマウント処理や起動処理を実行する。なお、設定ファイルの電子署名を書き込んだ認証ファイル「＊＊＊．ｌｉｃ」を用意しておいて、プログラム起動部５０２が、設定ファイル内のコマンドに従ってマウント処理や起動処理を実行するのに先立って、設定ファイルの電子署名チェックを実行するようにしてもよい。
【００３９】
（メモリカード）
図２のメモリカード用スロット２３４とメモリカード２３５について説明する。
【００４０】
メモリカード用スロット２３４は、アプリケーション１３１やプラットフォーム１３２等のプログラムが記憶されたメモリカード２３５をセット（挿入）するためのスロットである。図１の融合機１０１においては、アプリケーション１３１やプラットフォーム１３２等のプログラムは、メモリカード用スロット２３４にセットされたメモリカード２３５等に蓄積されており、メモリカード用スロット２３４にセットされたメモリカード２３５等から再生されて、ＭＥＭ−Ｐ２３１やＭＥＭ−Ｃ２３２に起動されることになる。
【００４１】
メモリカード２３５には、アプリケーション１３１やプラットフォーム１３２等のプログラムを、拡張子をｍｏｄとするｍｏｄファイル「＊＊＊．ｍｏｄ」として各モジュール毎に記憶させておくと共に、ｍｏｄファイルの電子署名を、拡張子をｍａｃとするｍａｃファイル「＊＊＊．ｍａｃ」として各モジュール毎に記憶させておく。
【００４２】
メモリカード２３５には、設定ファイル（融合機起動部の欄参照）を、拡張子をｃｎｆとするｃｎｆファイル「＊＊＊．ｃｎｆ」として記憶させておくと共に、設定ファイルの電子署名を書き込んだ認証ファイル（融合機起動部の欄参照）を、拡張子をｌｉｃとするｌｉｃファイル「＊＊＊．ｌｉｃ」として記憶させておく。
【００４３】
各ファイルの電子署名はここでは、ＭＤ５やＳＨＡ１等のハッシュ関数によって各ファイルから作成したメッセージダイジェストを、秘密鍵によって暗号化したものである。例えば、ｍｏｄファイルやｃｎｆファイルの電子署名は、ｍｏｄファイルやｃｎｆファイルから作成したメッセージダイジェストを、秘密鍵によって暗号化したものである。
【００４４】
各ファイルの電子署名チェックはここでは、各ファイルからＭＤ５やＳＨＡ１等のハッシュ関数によって作成したメッセージダイジェストと、各ファイルの電子署名を公開鍵によって復号化したメッセージダイジェストとの照合をもって実行可能である。例えば、ｍｏｄファイルやｃｎｆファイルの電子署名チェックは、ｍｏｄファイルやｃｎｆファイルから作成したメッセージダイジェストと、ｍａｃファイルやｌｉｃファイルに書き込んだ電子署名を公開鍵によって復号化したメッセージダイジェストとの照合をもって実行可能である。各ファイルの電子署名チェックは例えば、マウント処理や起動処理の一環としてプログラム起動部５０２が実行するようにする。
【００４５】
なお、メモリカード２３５としてＳＤメモリカードを採用する場合、ｃｎｆファイルの電子署名は、ｃｎｆファイルとＳＤシリアルＩＤとから作成したメッセージダイジェストを、秘密鍵によって暗号化したものでもよい。各ＳＤメモリカードのＳＤシリアルＩＤは各ＳＤメモリカードに固有なＩＤ（識別情報）なので、各ＳＤメモリカードに記憶させておくｌｉｃファイルが各ＳＤメモリカードに固有なファイルになり、ＳＤメモリカードのコピー防止に役立つ。この場合、ｃｎｆファイルの電子署名チェックは、ｃｎｆファイルとＳＤシリアルＩＤとから作成したメッセージダイジェストと、ｌｉｃファイルに書き込んだ電子署名を公開鍵によって復号化したメッセージダイジェストとの照合をもって実行可能である。各ＳＤメモリカードのＳＤシリアルＩＤは各ＳＤメモリカードに記憶されている。
【００４６】
メモリカード２３５としては、フラッシュメモリカードの一種であるＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリカードを採用することにする。ＳＤメモリカードを採用することで例えば、大容量のメモリを安価で利用できるというメリットを享受できる。なお、メモリカード用スロット２３４としては、ＳＤメモリカード用スロットが採用される。
【００４７】
図１の融合機１０１には、図６のように、ＳＤメモリカード用スロット６０１とＳＤメモリカード６０２（メモリカード用スロット２３４とメモリカード２３５に相当する）に係るソフトウェアとして、ＳＤメモリカードアクセスドライバ（ＳＤａｃｃｅｓｓ）６１１と、ＳＤメモリカードステータスドライバ（ＳＤｓｔａｔｅｓ）６１２と、起動処理用プログラム６１３と、ＳＤメモリカードチェックプログラム（ＳＤｃｈｅｃｋ）６１４が存在する。
【００４８】
ＳＤａｃｃｅｓｓ６１１は、ＳＤメモリカード６０２の挿入・抜出を検知する等、ＳＤメモリカード６０２に対するアクセス制御を実行するドライバである。ＳＤｓｔａｔｅｓ６１２は、ＳＤメモリカード６０２の挿入・抜出・マウント・アンマウントに関する情報を管理するドライバである。起動処理用プログラム６１３は、図５のプログラム起動部５０２を構成するプログラムである。ＳＤｃｈｅｃｋ６１４は、ＳＤメモリカード６０２のマウント・アンマウントを実行するプログラムである。
【００４９】
ＳＤメモリカード用スロット６０１にＳＤメモリカード６０２が挿入された場合、ＳＤａｃｃｅｓｓ６１１は、ＳＤメモリカード６０２が挿入された事を検知（Ｓ１）すると共に、ＳＤｓｔａｔｅｓ６１２にその事を通知（Ｓ２）する。これに応じて、ＳＤｓｔａｔｅｓ６１２は、ＳＤメモリカード６０２が挿入された旨の情報を管理することにすると共に、起動処理用プログラム６１３にその旨を通知（Ｓ３）する。これに応じて、起動処理用プログラム６１３は、ＳＤメモリカード６０２のマウントを実行させるために、ＳＤｃｈｅｃｋ６１４を起動（Ｓ４）させる。これに応じて、ＳＤｃｈｅｃｋ６１４は、ＳＤメモリカード６０２のマウントを実行（Ｓ５）すると共に、ＳＤｓｔａｔｅｓ６１２にその事を通知（Ｓ６）する。これに応じて、ＳＤｓｔａｔｅｓ６１２は、ＳＤメモリカード６０２がマウントされた旨の情報を管理することにすると共に、起動処理用プログラム６１３等にその旨を通知（Ｓ７）する。
【００５０】
ＳＤメモリカード用スロット６０１からＳＤメモリカード６０２が抜き出された場合、ＳＤａｃｃｅｓｓ６１１は、ＳＤメモリカード６０２が抜き出された事を検知（Ｓ１）すると共に、ＳＤｓｔａｔｅｓ６１２にその事を通知（Ｓ２）する。これに応じて、ＳＤｓｔａｔｅｓ６１２は、ＳＤメモリカード６０２が抜き出された旨の情報を管理することにすると共に、起動処理用プログラム６１３にその旨を通知（Ｓ３）する。これに応じて、起動処理用プログラム６１３は、ＳＤメモリカード６０２のアンマウントを実行させるために、ＳＤｃｈｅｃｋ６１４を起動（Ｓ４）させる。これに応じて、ＳＤｃｈｅｃｋ６１４は、ＳＤメモリカード６０２のアンマウントを実行（Ｓ５）すると共に、ＳＤｓｔａｔｅｓ６１２にその事を通知（Ｓ６）する。これに応じて、ＳＤｓｔａｔｅｓ６１２は、ＳＤメモリカード６０２がアンマウントされた旨の情報を管理することにすると共に、起動処理用プログラム６１３等にその旨を通知（Ｓ７）する。
【００５１】
なお、ＳＤメモリカードを採用することで、いわゆる活線挿抜が可能になるというメリットを享受できる。すなわち、ＳＤメモリカード用スロット６０１にＳＤメモリカード６０２を挿入する操作と、ＳＤメモリカード用スロット６０１からＳＤメモリカード６０２を抜き出す操作が、融合機１０１の起動後に実行可能になる。
【００５２】
（ＳＤメモリカードとＨＤＤの使用態様の具体例）
以上の説明を踏まえて、図６のＳＤメモリカード６０２（図２のメモリカード２３５に相当する）と図２のＨＤＤ２３３の使用態様の具体例について説明する。
【００５３】
（１）第１具体例
ここでは、図７により、ＳＤＫアプリ（図１の説明欄参照）を融合機１０１に入力するためのＳＤメモリカード６０２をメーカーからベンダーに配布し、ベンダーがＳＤＫアプリを作成し、ユーザーがＳＤＫアプリを融合機１０１にＳＤメモリカード６０２を使用して入力するようなビジネスモデルを具体例にして説明する。
【００５４】
図７ＡのＳＤメモリカード６０２は、市販のＳＤメモリカードである。
【００５５】
図７ＢのＳＤメモリカード６０２は、融合機１０１のメーカーから融合機１０１のベンダーに提供されるＳＤメモリカードである。図７ＢのＳＤメモリカード６０２は、図７ＡのＳＤメモリカード６０２に、ＳＤメモリカードサービスファイル（ＳＤｓｅｒｖｉｃｅファイル）７０１や、ＰＤＩＤファイル７０３を記憶させたものである。
【００５６】
図７ＣのＳＤメモリカード６０２は、融合機１０１のベンダーから融合機１０１のユーザーに提供されるＳＤメモリカードである。図７ＣのＳＤメモリカード６０２は、図７ＢのＳＤメモリカード６０２に、２個のＳＤＫアプリファイル７０２（１個目をＳＤＫアプリファイルＡ７０２Ａ、２個目をＳＤＫアプリファイルＢ７０２Ｂとする）を記憶させたものである。
【００５７】
図７ＤのＳＤメモリカード６０２は、融合機１０１のユーザーの元でＰＤＩＤ登録処理が実行されたＳＤメモリカードである。図７ＤのＳＤメモリカード６０２は、図７ＣのＳＤメモリカード６０２内のＰＤＩＤファイル７０３に、ＳＤＫアプリのＰＤＩＤ等を登録したものである。
【００５８】
ＳＤｓｅｒｖｉｃｅファイル７０１は、当該ＳＤメモリカード６０２の正当性を、融合機１０１に確認させるためのファイルである。より詳細に言うと、当該ＳＤメモリカード６０２が、融合機１０１にＳＤＫアプリを入力するためのＳＤメモリカードとして正当であることを、融合機１０１に確認させるためのファイルである。ＳＤｓｅｒｖｉｃｅファイル７０１には、ＳＤメモリカードサービスプログラム（ＳＤｓｅｒｖｉｃｅ）が格納されている。融合機１０１は、当該ＳＤメモリカード６０２の正当性を、このＳＤｓｅｒｖｉｃｅが正常に起動されることをもって確認する。ＳＤｓｅｒｖｉｃｅファイル７０１は、ＳＤｓｅｒｖｉｃｅの実行形式ファイルである。
【００５９】
ＳＤｓｅｒｖｉｃｅファイル７０１は、ｍｏｄファイルに該当する。よって、ＳＤメモリカード６０２には、図７のように、ＳＤｓｅｒｖｉｃｅファイル７０１と共に、ＳＤｓｅｒｖｉｃｅファイル７０１の電子署名が格納されたｍａｃファイル、ＳＤｓｅｒｖｉｃｅファイル７０１に関連するｃｎｆファイル・ｌｉｃファイルが記憶されている。これにより、ＳＤｓｅｒｖｉｃｅファイル７０１の改竄が防止される。さらに、ｌｉｃファイルはここでは、上記したように、ＳＤメモリカード６０２のＳＤシリアルＩＤが使用されて作成される。これにより、ＳＤｓｅｒｖｉｃｅファイル７０１のコピーが防止される。仮に、ＳＤｓｅｒｖｉｃｅファイル７０１をコピーしたＳＤメモリカードを使用しても、本来のＳＤメモリカードとＳＤシリアルＩＤが異なるため、ｌｉｃファイルに係る電子署名チェックで発見されるからである。
【００６０】
ＳＤＫアプリファイル７０２は、ＳＤＫアプリが格納されたファイルである。ＳＤＫアプリは、上記したように、専用のＳＤＫ（ソフトウェア開発キット）により作成されるアプリケーション１３１である。ＳＤＫアプリファイル７０２にはここでは、ベンダーにより作成されたＳＤＫアプリが格納されている。ＳＤメモリカード６０２には、ベンダーが自分でＳＤＫアプリファイル７０２を書き込めるようにしておくものとする。ＳＤＫアプリファイル７０２は、ＳＤＫアプリの実行形式ファイルである。
【００６１】
ＳＤＫアプリファイル７０２には、ＳＤＫアプリファイル７０２であることを、融合機１０１に識別させるための識別コードを格納させておく。識別コードは、ＳＤＫアプリファイル７０２の先頭の数バイト等、ＳＤＫアプリファイル７０２の特定エリアに格納させておく。融合機１０１は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。なお、ＳＤＫアプリファイル７０２に識別コードを格納するための専用のツールをメーカーからベンダーに提供しておくなどして、ベンダーが自分でＳＤＫアプリファイル７０２に識別コードを書き込めるようにしておくものとする。
【００６２】
ＰＤＩＤファイル７０３は、ＳＤＫアプリのＩＤ（識別情報）である、ＳＤＫアプリのＰＤＩＤ（プロダクトＩＤ）を登録（格納）するためのファイルである。より詳細に言うと、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを登録するためのファイルである。融合機１０１は、ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に登録する「ＰＤＩＤ登録処理」を実行する。融合機１０１はまた、ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリの正当性を、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に当該ＳＤＫアプリのＰＤＩＤが登録されていることをもって判断する「アプリ正当性判断処理」を実行する。融合機１０１はそして、アプリ正当性判断処理により正当であることが判断されたＳＤＫアプリであることを、当該ＳＤＫアプリの起動処理や起動権設定処理を実行するための条件とする。なお、ＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤは、当該ＳＤＫアプリファイル７０２から取得できるようにしておく。
【００６３】
ＰＤＩＤファイル７０３には、ＳＤＫアプリのＰＤＩＤがそのまま登録されるのではなく、ＳＤＫアプリのＰＤＩＤが当該ＳＤメモリカード６０２に固有な鍵（シード）で暗号化されて登録されることになる。当該鍵（暗号化用データ）はここでは、当該ＳＤメモリカード６０２内のいずれかのｌｉｃファイル（ＳＤｓｅｒｖｉｃｅファイル７０１に関連するｌｉｃファイル等）が使用されて作成される鍵（ｌｉｃファイルのチェックサム（８ビット）等）であり、暗号鍵兼復号鍵（暗号化用データ兼復号化用データ）である。このｌｉｃファイルは、上記したように、当該ＳＤメモリカード６０２のＳＤシリアルＩＤが使用されて作成されるｌｉｃファイルとする。暗号化はここでは、バイト単位での鍵とのＥＯＲ（排他的論理和）処理により実行される。このように、ＳＤＫアプリのＰＤＩＤが、鍵で暗号化されて登録されることで、ＰＤＩＤファイル７０３の改竄が防止され、ＳＤＫアプリのＰＤＩＤが、当該ＳＤメモリカード６０２に固有な鍵で暗号化されて登録されることで、ＰＤＩＤファイル７０３のコピーが防止される。
【００６４】
ＰＤＩＤファイル７０３には、整合性確認用データ７１１、最大アプリ数７１２、登録アプリ数７１３、ＰＤＩＤ７１４が格納される。
【００６５】
整合性確認用データ７１１は、当該ＳＤメモリカード６０２と当該ＰＤＩＤファイル７０３の整合性を、融合機１０１に確認させるためのデータ（数バイト）である。整合性確認用データ７１１はここでは、当該ＳＤメモリカード６０２内のいずれかのｌｉｃファイル（ＳＤｓｅｒｖｉｃｅファイル７０１に関連するｌｉｃファイル等）が使用されて作成されるデータ（ｌｉｃファイルのチェックサム等）である。
【００６６】
最大アプリ数７１２は、当該ＰＤＩＤファイル７０３に登録可能なＰＤＩＤの個数の上限値（最大個数）である。すなわち、当該メモリカード６０２に正当に書き込み可能なＳＤＫアプリ（ＳＤＫアプリファイル７０２）の個数の上限値（最大個数）である。最大アプリ数７１２はここでは、ベンダーにより書き込まれるＳＤＫアプリ（ＳＤＫアプリファイル７０２）の個数を制限すべく、メーカーにより設定されるものとする。図７Ｂ，Ｃ，ＤのＰＤＩＤファイル７０３の最大アプリ数７１２としては「２個」が設定されている。最大アプリ数７１２は、上記のシード（鍵）で暗号化して格納しておく。
【００６７】
登録アプリ数７１３は、当該ＰＤＩＤファイル７０３に登録されたＰＤＩＤの個数の値である。すなわち、当該メモリカード６０２に書き込まれた正当なＳＤＫアプリ（ＳＤＫアプリファイル７０２）の個数の値である。融合機１０１は、上記したＰＤＩＤ登録処理の一環として、ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に登録されたＰＤＩＤの個数の値を、当該ＰＤＩＤファイル７０３の登録アプリ数７１３として登録する。ベンダーにより書き込まれるＳＤＫアプリ（ＳＤＫアプリファイル７０２）の個数を制限すべく、ベンダーにより書き込まれたＳＤＫアプリ（ＳＤＫアプリファイル７０２）の個数を管理するのである。図７Ｂ，ＣのＰＤＩＤファイル７０３の登録アプリ数７１３としては「０個」が登録されており、図７ＤのＰＤＩＤファイル７０３の登録アプリ数７１３としては「２個」が登録されている。登録アプリ数７１３は、上記のシード（鍵）で暗号化されて登録される。なお、登録アプリ数７１３が「０個」の状態を「初期状態」と呼び、登録アプリ数７１３が「０個」以外の状態を「登録状態」と呼ぶことにする。
【００６８】
ＰＤＩＤ７１４は、ＳＤＫアプリのＰＤＩＤ（プロダクトＩＤ）を登録するための登録欄である。より詳細に言うと、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを登録するための登録欄である。図７Ｂ，ＣのＰＤＩＤファイル７０３のＰＤＩＤ７１４には、ＳＤＫアプリのＰＤＩＤがまだ登録されておらず、図７ＤのＰＤＩＤファイル７０３のＰＤＩＤ７１４には、ＳＤＫアプリのＰＤＩＤ（ＳＤＫアプリファイルＡ７０２Ａに格納されたＳＤＫアプリＡのＰＤＩＤと、ＳＤＫアプリファイルＢ７０２Ｂに格納されたＳＤＫアプリＡのＰＤＩＤ）がすでに登録されている。図７Ｂ，ＣのＰＤＩＤファイル７０３のＰＤＩＤ７１４には、ＳＤＫアプリのＰＤＩＤの代わりにＳＤＫアプリのＰＤＩＤと同じデータ量のデータ「ダミーＩＤ」が格納されている。ＰＤＩＤファイル７０３にＰＤＩＤが格納される際には、ＰＤＩＤ７１４にＰＤＩＤの代わりに格納されている「ダミーＩＤ」に替わりＰＤＩＤが格納される形で、ＰＤＩＤファイル７０３にＰＤＩＤが格納される。こうしておけば、ＰＤＩＤの格納前と格納後のＰＤＩＤファイル７０３のデータ量のずれが原因で、上記したＰＤＩＤ登録処理の存在が発覚してしまうような事態が抑制される。ＰＤＩＤ７１４に登録されるＰＤＩＤは、すでに説明したとおり、シード（鍵）で暗号化されて登録される。
【００６９】
以下、上記した「ＰＤＩＤ登録処理」と「アプリ正当性判断処理」の具体例について説明する。
【００７０】
これらの処理は、ＶＡＳ１３５（図１の説明欄参照）により実行される。図８は、ＶＡＳ１３５により実行される処理に係るフローチャートであり、図９は、ＶＡＳ１３５により実現される機能に係る機能ブロック図である。図１の融合機１０１には、図９のように、カード正当性確認部９０１と、シード作成部９０２と、ＰＤＩＤファイル整合性確認部９０３と、ＰＤＩＤ暗号化部９１１と、ＰＤＩＤ登録部９１２と、ＰＤＩＤ復号化部９２１と、アプリ正当性判断部９２２等の機能ブロックが存在する。
【００７１】
融合機１０１のＳＤメモリカード用スロット６０１にＳＤメモリカード６０２が挿入された状態で、融合機１０１の電源が投入されると、ＶＡＳ１３５により図８の処理が実行されることになる。
【００７２】
まず最初に、カード正当性確認部９０１が、ＳＤメモリカード６０２の正当性を確認（Ｓ１１）する。より詳細に言うと、ＳＤメモリカード６０２が、当該融合機１０１にＳＤＫアプリを入力するためのＳＤメモリカードとして正当であることを、当該ＳＤメモリカード６０２内のＳＤｓｅｒｖｉｃｅファイル７０１に基づいて確認する。上記したように、ＳＤｓｅｒｖｉｃｅファイル７０１にはＳＤｓｅｒｖｉｃｅが格納されており、カード正当性確認部９０１は、ＳＤメモリカード６０２の正当性を、このＳＤｓｅｒｖｉｃｅが正常に起動されることをもって確認する。正常に起動されたことの確認手法としては、ＳＤｓｅｒｖｉｃｅがＶＡＳ１３５に通知するようにしてもよいし、ＶＡＳ１３５がＳＤｓｅｒｖｉｃｅにアクセスするようにしてもよいし、ＳＤｓｅｒｖｉｃｅがＨＤＤ２３３等に書き込みをして、ＶＡＳ１３５がこれを読み込むようにしてもよい。
【００７３】
続いて、Ｓ１１にてＳＤメモリカード６０２が正当であると確認された場合、Ｓ１３に移行（Ｓ１２）して、Ｓ１１にてＳＤメモリカード６０２が正当でないと確認された場合、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されずに、ＶＡＳ１３５による図８の全処理が終了する。
【００７４】
続いて、シード作成部９０２が、当該ＳＤメモリカード６０２に固有な鍵（シード）を作成（Ｓ１３）する。当該鍵はここでは、当該ＳＤメモリカード６０２内のいずれかのｌｉｃファイル（ＳＤｓｅｒｖｉｃｅファイル７０１に関連するｌｉｃファイル等）が使用されて作成される鍵（ｌｉｃファイルのチェックサム（８ビット）等）であり、暗号鍵兼復号鍵である。シード作成部９０２はここでは、当該鍵（シード）９３１を所定のｌｉｃファイル９３２を使用して作成するものとする。このｌｉｃファイル９３２は、当該ＳＤメモリカード６０２のＳＤシリアルＩＤが使用されて作成されるｌｉｃファイルとする。
【００７５】
続いて、ＰＤＩＤファイル整合性確認部９０３が、当該ＳＤメモリカード６０２と当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３の整合性を、当該ＰＤＩＤファイル７０３の整合性確認用データ７１１に基づいて確認（Ｓ１４）する。
【００７６】
続いて、Ｓ１４にてＳＤメモリカード６０２とＰＤＩＤファイル７０３が整合すると確認された場合、Ｓ１６に移行（Ｓ１５）して、Ｓ１４にてＳＤメモリカード６０２とＰＤＩＤファイル７０３が整合しないと確認された場合、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されずに、ＶＡＳ１３５による図８の全処理が終了する。
【００７７】
続いて、ＶＡＳ１３５が、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３が初期状態か登録状態かを、当該ＰＤＩＤファイル７０３の登録アプリ数７１３に基づいて確認（Ｓ１６）する。初期状態であると確認された場合、ＰＤＩＤ登録処理（Ｓ１７）とアプリ正当性判断処理（Ｓ１８）とがこの順番で実行されることになる。登録状態であると確認された場合、ＰＤＩＤ登録処理（Ｓ１７）は実行されず、アプリ正当性判断処理（Ｓ１８）が実行されることになる。なお、初期状態か登録状態かで場合分けをする代わりに、登録アプリ数７１３が最大アプリ数７１２未満か否かで場合分けをしてもよい。
【００７８】
ＰＤＩＤ登録処理（Ｓ１７）について説明する。Ｓ１６に続いて、ＰＤＩＤ登録部９１２は、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に登録する。当該ＰＤＩＤファイル７０３には、当該ＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤが、シード作成部９０２により作成されたシード（鍵）９３１でＰＤＩＤ暗号化部９１１により暗号化されて、ＰＤＩＤ登録部９１２により登録される。
【００７９】
ＰＤＩＤ登録処理（Ｓ１７）では、ＰＤＩＤ登録部９１２は、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に登録されたＰＤＩＤの個数を、当該ＰＤＩＤファイル７０３の登録アプリ数７１３として登録する。こうして、ＰＤＩＤファイル７０３が初期状態から登録状態になると、Ｓ１６の説明から明らかなように、次回の電源投入時には、当該ＳＤメモリカード６０２についてはＰＤＩＤ登録処理（Ｓ１７）は実行されないことになる。
【００８０】
アプリ正当性判断処理（Ｓ１８）について説明する。Ｓ１６に続いて、アプリ正当性判断部９２２は、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリの正当性を、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に当該ＳＤＫアプリのＰＤＩＤが登録されていることをもって判断する。当該ＰＤＩＤファイル７０３には、上記したように、ＳＤＫアプリのＰＤＩＤが、シード作成部９０２により作成されたシード（鍵）９３１でＰＤＩＤ暗号化部９１１により暗号化されて登録されているため、当該ＰＤＩＤは、前もって、シード作成部９０２により作成されたシード（鍵）９３１でＰＤＩＤ復号化部９２１により復号化されることになる。
【００８１】
融合機１０１は、ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリについて、アプリ正当性判断処理（Ｓ１８）により正当であることが判断されたＳＤＫアプリであることを、当該ＳＤＫアプリの起動処理や起動権設定処理を実行するための条件とする。すなわち、アプリ正当性判断処理を経由していないＳＤＫアプリや、アプリ正当性判断処理により正当でないことが判断されたＳＤＫアプリは、ＭＥＭ−Ｐ２３１やＭＥＭ−Ｃ２３２への起動が制限されることになる。このようにして、ＳＤメモリカード６０２が不正にコピーされたり使用されたりして、融合機１０１にプログラムが不正に入力されてしまう危険性に対処しているのである。
【００８２】
なお、ＰＤＩＤ登録処理とアプリ正当性判断処理を実行するメリットの具体例としては、ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２の差し替え防止が挙げられる。例えば、低額なＳＤＫアプリファイル７０２が記憶されたＳＤメモリカード６０２を購入したユーザーが、不正コピーにより、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２を低額なものから高額なものに差し替えた場合でも、当該ＳＤメモリカード６０２についてすでにＰＤＩＤ登録処理が実行されて、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３がすでに初期状態から登録状態になっていれば、アプリ正当性判断処理を通過することができないからである。ＳＤメモリカード６０２へのＳＤＫアプリファイル７０２の追加についても、同様のことが言える。
【００８３】
なお、上記のメリットは、ＰＤＩＤファイル７０３の最大アプリ数７１２、すなわち、ＳＤメモリカード６０２に書き込み可能なＳＤＫアプリの個数の上限値が１個であっても２個以上であっても変わるところがない。よって例えば、１枚のＳＤメモリカード６０２へのＳＤＫアプリの書き込みを２以上のベンダーに許すようなビジネスモデルを、上記のメリットを享受しつつ実現するようなことも可能である。例えば、ある１枚のＳＤメモリカード６０２について、ベンダーＡには２個のＳＤＫアプリの書き込みを許し、ベンダーＢには１個のＳＤＫアプリの書き込みを許すべく、その１枚のＳＤメモリカード６０２について、メーカーは最大アプリ数７１２を「３個」に設定するのである。
【００８４】
なお、ここでは、ＳＤメモリカード６０２を使用して、融合機１０１にＳＤメモリカード６０２内のＳＤＫアプリを入力するような態様について説明したが、ＳＤメモリカード６０２を使用して、融合機１０１にＳＤＫアプリをネットワークを介してダウンロードするような態様でもよい。すなわち、ＳＤメモリカード６０２を、ダウンロード許可用のキーとして販売するのである。この場合、ＳＤメモリカード６０２には、ＳＤＫアプリファイル７０２を記憶させておく必要はなく、ＳＤｓｅｒｖｉｃｅ７０１やＰＤＩＤファイル７０３を記憶させておけばよい。
【００８５】
以下、ＰＤＩＤ登録処理（Ｓ１７）の詳細について、図１０のシーケンス図により説明する。
【００８６】
Ｓ１１として説明したように、ＳＤｓｅｒｖｉｃｅファイル７０１に格納されたＳＤｓｅｒｖｉｃｅが起動（Ｓ１０１）されると、ＳＤｓｅｒｖｉｃｅはＶＡＳ１３５に起動した旨を通知（Ｓ１０２）する。続いて、Ｓ１３として説明したように、ＶＡＳ１３５がシードを作成（Ｓ１０３）する。続いて、Ｓ１４として説明したように、ＶＡＳ１３５がＳＤメモリカード６０２とＰＤＩＤファイル７０３の整合性を確認（Ｓ１０４）する。Ｓ１２，Ｓ１５，Ｓ１６の場合分け処理についても、それぞれ説明したように実行される。
【００８７】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納された識別コードをチェック（Ｓ１０５）する。ＶＡＳ１３５は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。識別コードが格納されていないファイルについては、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されない。
【００８８】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納されたＳＤＫアプリを仮起動（Ｓ１０６）させる。これにより、ＶＡＳ１３５はＳＤＫアプリから当該ＳＤＫアプリのＰＤＩＤを取得（Ｓ１０７）する。続いて、Ｓ１７として説明したように、ＶＡＳ１３５は、そのＰＤＩＤをシードで暗号化（Ｓ１０８）して、そのＰＤＩＤをＰＤＩＤファイル７０３に登録（Ｓ１０９）する。そして、ＶＡＳ１３５がＳＤＫアプリの仮起動を終了（Ｓ１１０）させる。
【００８９】
以下、アプリ正当性判断処理（Ｓ１８）の詳細について、図１１のシーケンス図により説明する。
【００９０】
Ｓ１１として説明したように、ＳＤｓｅｒｖｉｃｅファイル７０１に格納されたＳＤｓｅｒｖｉｃｅが起動（Ｓ２０１）されると、ＳＤｓｅｒｖｉｃｅはＶＡＳ１３５に起動した旨を通知（Ｓ２０２）する。続いて、Ｓ１３として説明したように、ＶＡＳ１３５がシードを作成（Ｓ２０３）する。続いて、Ｓ１４として説明したように、ＶＡＳ１３５がＳＤメモリカード６０２とＰＤＩＤファイル７０３の整合性を確認（Ｓ２０４）する。Ｓ１２，Ｓ１５，Ｓ１６の場合分け処理についても、それぞれ説明したように実行される。
【００９１】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納された識別コードをチェック（Ｓ２０５）する。ＶＡＳ１３５は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。識別コードが格納されていないファイルについては、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されない。
【００９２】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納されたＳＤＫアプリを仮起動（Ｓ２０６）させる。これにより、ＶＡＳ１３５はＳＤＫアプリから当該ＳＤＫアプリのＰＤＩＤを取得（Ｓ２０７）する。続いて、Ｓ１８として説明したように、ＶＡＳ１３５は、ＰＤＩＤファイル７０３に登録されたＰＤＩＤを復号化（Ｓ２０８）して、Ｓ２０７のＰＤＩＤとＳ２０８のＰＤＩＤとの照合をもってＳＤＫアプリの正当性を判断（Ｓ２０９）する。
【００９３】
続いて、ＶＡＳ１３５は、正当であることが判断されたＳＤＫアプリから当該ＳＤＫアプリのアプリ情報を取得（Ｓ２１０）する。ここで、融合機１０１の管理者は、正当であることが判断されたＳＤＫアプリの内、起動権設定対象とするＳＤＫアプリを選択するための選択画面を、オペレーションパネル２０２に表示（Ｓ２１１）させることができる。そして、融合機１０１の管理者は、正当であることが判断されたＳＤＫアプリの内、起動権設定対象とするＳＤＫアプリを、オペレーションパネル２０２を操作して選択（Ｓ２１２）することができる。そして、ＶＡＳ１３５は、起動権設定対象として選択されたＳＤＫアプリのＰＤＩＤを、ＨＤＤ２３３等（不揮発性メモリ（フラッシュメモリ等）であればよい）に登録することで、当該ＳＤＫアプリの起動権を設定（Ｓ２１３）する。融合機１０１は、ＳＤメモリカード用スロット６０１に挿入されたＳＤメモリカード６０２内のＳＤＫアプリについて、あるＳＤＫアプリの起動権が設定されている場合、そのＳＤＫアプリを、ＳＤメモリカード６０２から適宜再生させて、ＭＥＭ−Ｐ２３１やＭＥＭ−Ｃ２３２に適宜起動させる権限を有することになる。
【００９４】
（２）第２具体例
ここでは、図１２により、ＳＤＫアプリ（図１の説明欄参照）を融合機１０１に入力するためのＳＤメモリカード６０２をメーカーからベンダーに配布し、ベンダーがＳＤＫアプリを作成し、ユーザーがＳＤＫアプリを融合機１０１にＳＤメモリカード６０２を使用して入力するようなビジネスモデルを具体例にして説明する。
【００９５】
図１２ＡのＳＤメモリカード６０２は、市販のＳＤメモリカードである。
【００９６】
図１２ＢのＳＤメモリカード６０２は、融合機１０１のメーカーから融合機１０１のベンダーに提供されるＳＤメモリカードである。図１２ＢのＳＤメモリカード６０２は、図１２ＡのＳＤメモリカード６０２に、ＳＤメモリカードサービスファイル（ＳＤｓｅｒｖｉｃｅファイル）７０１や、ＰＤＩＤファイル７０３を記憶させたものである。
【００９７】
図１２ＣのＳＤメモリカード６０２は、融合機１０１のベンダーから融合機１０１のユーザーに提供されるＳＤメモリカードである。図１２ＣのＳＤメモリカード６０２は、図１２ＢのＳＤメモリカード６０２に、２個のＳＤＫアプリファイル７０２（１個目をＳＤＫアプリファイルＡ７０２Ａ、２個目をＳＤＫアプリファイルＢ７０２Ｂとする）を記憶させたものである。
【００９８】
図１２ＤのＳＤメモリカード６０２は、融合機１０１のユーザーの元でＰＤＩＤ登録処理が実行されたＳＤメモリカードである。図１２ＤのＳＤメモリカード６０２は、図１２ＣのＳＤメモリカード６０２内のＰＤＩＤファイル７０３に、ＳＤＫアプリのＰＤＩＤ等を登録したものである。
【００９９】
ＳＤｓｅｒｖｉｃｅファイル７０１は、当該ＳＤメモリカード６０２の正当性を、融合機１０１に確認させるためのファイルである。第１具体例と同様である。
【０１００】
ＳＤＫアプリファイル７０２は、ＳＤＫアプリが格納されたファイルである。第１具体例と同様である。
【０１０１】
ＰＤＩＤファイル７０３は、ＳＤＫアプリのＩＤ（識別情報）である、ＳＤＫアプリのＰＤＩＤを登録（格納）するためのファイルである。第１具体例と同様である。
【０１０２】
ＰＤＩＤファイル７０３には、ＳＤＫアプリのＰＤＩＤがそのまま登録されるのではなく、ＳＤＫアプリのＰＤＩＤが融合機１０１の各機体に固有な鍵（シード）で暗号化されて登録されることになる。当該鍵（暗号化用データ）はここでは、融合機１０１の各機体の機体番号が使用されて作成される鍵（機体番号のチェックサム（８ビット）等）であり、暗号鍵兼復号鍵（暗号化用データ兼復号化用データ）である。融合機１０１の各機体の機体番号以外の機体固有情報（ＭＡＣアドレスやＩＰアドレス）を使用してもよい。暗号化はここでは、バイト単位での鍵とのＥＯＲ（排他的論理和）処理により実行される。このように、ＳＤＫアプリのＰＤＩＤが、鍵で暗号化されて登録されることで、ＰＤＩＤファイル７０３の改竄が防止され、ＳＤＫアプリのＰＤＩＤが、融合機１０１の各機体に固有な鍵で暗号化されて登録されることで、当該ＳＤメモリカード６０２を当該機体の同一機種や関連機種の他の機体等で使用することが制限される。融合機以外のコピー、プリンタ、スキャナ、ファクシミリ等の画像形成装置（情報処理装置）についても同様である。
【０１０３】
ＰＤＩＤファイル７０３には、整合性確認用データ７１１、最大アプリ数７１２、登録アプリ数７１３、ＰＤＩＤ７１４が格納される。第１具体例と同様である。
【０１０４】
以下、上記した「ＰＤＩＤ登録処理」と「アプリ正当性判断処理」の具体例について説明する。
【０１０５】
これらの処理は、ＶＡＳ１３５（図１の説明欄参照）により実行される。図１３は、ＶＡＳ１３５により実行される処理に係るフローチャートであり、図１４は、ＶＡＳ１３５により実現される機能に係る機能ブロック図である。図１の融合機１０１には、図１４のように、カード正当性確認部９０１と、シード作成部９０２と、ＰＤＩＤファイル整合性確認部９０３と、ＰＤＩＤ暗号化部９１１と、ＰＤＩＤ登録部９１２と、ＰＤＩＤ復号化部９２１と、アプリ正当性判断部９２２等の機能ブロックが存在する。
【０１０６】
融合機１０１のＳＤメモリカード用スロット６０１にＳＤメモリカード６０２が挿入された状態で、融合機１０１の電源が投入されると、ＶＡＳ１３５により図１３の処理が実行されることになる。
【０１０７】
まず最初に、カード正当性確認部９０１が、ＳＤメモリカード６０２の正当性を確認（Ｓ１１）する。第１具体例と同様である。
【０１０８】
続いて、Ｓ１１にてＳＤメモリカード６０２が正当であると確認された場合、Ｓ１３に移行（Ｓ１２）する。第１具体例と同様である。
【０１０９】
続いて、シード作成部９０２が、当該融合機１０１に固有な鍵（シード）を作成（Ｓ１３）する。当該鍵はここでは、当該融合機１０１の機体番号が使用されて作成される鍵（機体番号のチェックサム（８ビット）等）であり、暗号鍵兼復号鍵である。当該融合機１０１の機体番号以外の機体固有情報（ＭＡＣアドレスやＩＰアドレス）を使用してもよい。シード作成部９０２はここでは、当該鍵（シード）９３３を当該融合機１０１の機体番号９３４を使用して作成するものとする。
【０１１０】
続いて、ＰＤＩＤファイル整合性確認部９０３が、当該ＳＤメモリカード６０２と当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３の整合性を、当該ＰＤＩＤファイル７０３の整合性確認用データ７１１に基づいて確認（Ｓ１４）する。第１具体例と同様である。
【０１１１】
続いて、Ｓ１４にてＳＤメモリカード６０２とＰＤＩＤファイル７０３が整合すると確認された場合、Ｓ１６に移行（Ｓ１５）する。第１具体例と同様である。
【０１１２】
続いて、ＶＡＳ１３５が、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３が初期状態か登録状態かを、当該ＰＤＩＤファイル７０３の登録アプリ数７１３に基づいて確認（Ｓ１６）する。初期状態であると確認された場合、ＰＤＩＤ登録処理（Ｓ１７）とアプリ正当性判断処理（Ｓ１８）とがこの順番で実行されることになる。登録状態であると確認された場合、ＰＤＩＤ登録処理（Ｓ１７）は実行されず、アプリ正当性判断処理（Ｓ１８）が実行されることになる。第１具体例と同様である。
【０１１３】
ＰＤＩＤ登録処理（Ｓ１７）について説明する。Ｓ１６に続いて、ＰＤＩＤ登録部９１２は、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に登録する。当該ＰＤＩＤファイル７０３には、当該ＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤが、シード作成部９０２により作成されたシード（鍵）９３３でＰＤＩＤ暗号化部９１１により暗号化されて、ＰＤＩＤ登録部９１２により登録される。第１具体例と同様である。
【０１１４】
アプリ正当性判断処理（Ｓ１８）について説明する。Ｓ１６に続いて、アプリ正当性判断部９２２は、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリの正当性を、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に当該ＳＤＫアプリのＰＤＩＤが登録されていることをもって判断する。当該ＰＤＩＤファイル７０３には、上記したように、ＳＤＫアプリのＰＤＩＤが、シード作成部９０２により作成されたシード（鍵）９３３でＰＤＩＤ暗号化部９１１により暗号化されて登録されているため、当該ＰＤＩＤは、前もって、シード作成部９０２により作成されたシード（鍵）９３３でＰＤＩＤ復号化部９２１により復号化されることになる。第１具体例と同様である。
【０１１５】
以下、ＰＤＩＤ登録処理（Ｓ１７）の詳細について、図１５のシーケンス図により説明する。
【０１１６】
Ｓ１１として説明したように、ＳＤｓｅｒｖｉｃｅファイル７０１に格納されたＳＤｓｅｒｖｉｃｅが起動（Ｓ１０１）されると、ＳＤｓｅｒｖｉｃｅはＶＡＳ１３５に起動した旨を通知（Ｓ１０２）する。続いて、Ｓ１３として説明したように、ＶＡＳ１３５がシードを作成（Ｓ１０３）する。続いて、Ｓ１４として説明したように、ＶＡＳ１３５がＳＤメモリカード６０２とＰＤＩＤファイル７０３の整合性を確認（Ｓ１０４）する。Ｓ１２，Ｓ１５，Ｓ１６の場合分け処理についても、それぞれ説明したように実行される。
【０１１７】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納された識別コードをチェック（Ｓ１０５）する。ＶＡＳ１３５は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。識別コードが格納されていないファイルについては、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されない。
【０１１８】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納されたＳＤＫアプリを仮起動（Ｓ１０６）させる。これにより、ＶＡＳ１３５はＳＤＫアプリから当該ＳＤＫアプリのＰＤＩＤを取得（Ｓ１０７）する。続いて、Ｓ１７として説明したように、ＶＡＳ１３５は、そのＰＤＩＤをシードで暗号化（Ｓ１０８）して、そのＰＤＩＤをＰＤＩＤファイル７０３に登録（Ｓ１０９）する。そして、ＶＡＳ１３５がＳＤＫアプリの仮起動を終了（Ｓ１１０）させる。
【０１１９】
以下、アプリ正当性判断処理（Ｓ１８）の詳細について、図１６のシーケンス図により説明する。
【０１２０】
Ｓ１１として説明したように、ＳＤｓｅｒｖｉｃｅファイル７０１に格納されたＳＤｓｅｒｖｉｃｅが起動（Ｓ２０１）されると、ＳＤｓｅｒｖｉｃｅはＶＡＳ１３５に起動した旨を通知（Ｓ２０２）する。続いて、Ｓ１３として説明したように、ＶＡＳ１３５がシードを作成（Ｓ２０３）する。続いて、Ｓ１４として説明したように、ＶＡＳ１３５がＳＤメモリカード６０２とＰＤＩＤファイル７０３の整合性を確認（Ｓ２０４）する。Ｓ１２，Ｓ１５，Ｓ１６の場合分け処理についても、それぞれ説明したように実行される。
【０１２１】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納された識別コードをチェック（Ｓ２０５）する。ＶＡＳ１３５は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。識別コードが格納されていないファイルについては、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されない。
【０１２２】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納されたＳＤＫアプリを仮起動（Ｓ２０６）させる。これにより、ＶＡＳ１３５はＳＤＫアプリから当該ＳＤＫアプリのＰＤＩＤを取得（Ｓ２０７）する。続いて、Ｓ１８として説明したように、ＶＡＳ１３５は、ＰＤＩＤファイル７０３に登録されたＰＤＩＤを復号化（Ｓ２０８）して、Ｓ２０７のＰＤＩＤとＳ２０８のＰＤＩＤとの照合をもってＳＤＫアプリの正当性を判断（Ｓ２０９）する。
【０１２３】
続いて、ＶＡＳ１３５は、正当であることが判断されたＳＤＫアプリから当該ＳＤＫアプリのアプリ情報を取得（Ｓ２１０）する。ここで、融合機１０１の管理者は、正当であることが判断されたＳＤＫアプリの内、起動権設定対象とするＳＤＫアプリを選択するための選択画面を、オペレーションパネル２０２に表示（Ｓ２１１）させることができる。そして、融合機１０１の管理者は、正当であることが判断されたＳＤＫアプリの内、起動権設定対象とするＳＤＫアプリを、オペレーションパネル２０２を操作して選択（Ｓ２１２）することができる。そして、ＶＡＳ１３５は、起動権設定対象として選択されたＳＤＫアプリのＰＤＩＤを、ＨＤＤ２３３等（不揮発性メモリ（フラッシュメモリ等）であればよい）に登録することで、当該ＳＤＫアプリの起動権を設定（Ｓ２１３）する。融合機１０１は、ＳＤメモリカード用スロット６０１に挿入されたＳＤメモリカード６０２内のＳＤＫアプリについて、あるＳＤＫアプリの起動権が設定されている場合、そのＳＤＫアプリを、ＳＤメモリカード６０２から適宜再生させて、ＭＥＭ−Ｐ２３１やＭＥＭ−Ｃ２３２に適宜起動させる権限を有することになる。
【０１２４】
（３）第３具体例
ここでは、図１７により、ＳＤＫアプリ（図１の説明欄参照）をメーカーに代わってベンダーが作成し、ＳＤＫアプリを融合機１０１に入力するためのＳＤメモリカード６０２をベンダーからユーザーに配布し、ＳＤＫアプリを融合機１０１にユーザーがＳＤメモリカード６０２を使用して入力するようなビジネスモデルを具体例にして説明する。
【０１２５】
図１７ＡのＳＤメモリカード６０２は、市販のＳＤメモリカードである。
【０１２６】
図１７Ｂ，ＣのＳＤメモリカード６０２は、融合機１０１のベンダーの元で、図１７ＡのＳＤメモリカード６０２に、２個のＳＤＫアプリファイル７０２（１個目をＳＤＫアプリファイルＡ７０２Ａ、２個目をＳＤＫアプリファイルＢ７０２Ｂとする）と、ＰＤＩＤファイル７０３とを記憶させたＳＤメモリカードである。ただし、図１７ＢのＳＤメモリカード６０２は、ＰＤＩＤ登録処理が未実行のＳＤメモリカードであり、図１７ＣのＳＤメモリカード６０２は、ＰＤＩＤ登録処理が実行済のＳＤメモリカードである。
【０１２７】
ＰＤＩＤ登録処理は、後述するように、図１の融合機１０１に実行させることができる。ＰＤＩＤ登録処理は、融合機１０１のベンダーの元にある融合機１０１に実行させてもよいし、融合機１０１のユーザーの元にある融合機１０１で実行させてもよいのだが、ここで具体例として説明するビジネスモデルでは、融合機１０１のベンダーの元にある融合機１０１で実行させることにする。よって、融合機１０１のベンダーから融合機１０１のユーザーに配布されるＳＤメモリカード６０２は、図１７ＢのＳＤメモリカード６０２ではなく、図１７ＣのＳＤメモリカード６０２である。
【０１２８】
なお、ＳＤＫアプリファイル７０２は、融合機１０１のベンダーにより作成されたものであり、ＰＤＩＤファイル７０３は、図１７Ｂのような状態で、融合機１０１のメーカーから融合機１０１のベンダーに提供されたものである。図１７ＣのＰＤＩＤファイル７０３には、ＳＤＫアプリのＰＤＩＤ等が登録されている。
【０１２９】
図１７Ｄ１，Ｄ２のＳＤメモリカード６０２については後述する。
【０１３０】
ＳＤＫアプリファイル７０２は、ＳＤＫアプリが格納されたファイルである。第1具体例と同様である。
【０１３１】
ＰＤＩＤファイル７０３は、ＳＤＫアプリのＩＤ（識別情報）である、ＳＤＫアプリのＰＤＩＤを登録（格納）するためのファイルである。第1具体例と同様である。ＳＤメモリカード６０２には、ベンダーが自分でＰＤＩＤファイル７０３（メーカーからベンダーに提供されたもの）を書き込めるようにしておくものとする。ちなみに、ここで具体例として説明中のビジネスモデルでは、ＰＤＩＤ登録処理は、ベンダーの元にある融合機１０１で実行されることになっており、アプリ正当性判断処理は、ユーザーの元にある融合機１０１で実行されることになっている。
【０１３２】
ＰＤＩＤファイル７０３には、ＳＤＫアプリのＰＤＩＤがそのまま登録されるのではなく、ＳＤＫアプリのＰＤＩＤが当該ＳＤメモリカード６０２に固有な鍵（シード）で暗号化されて登録されることになる。当該鍵（暗号化用データ）はここでは、当該ＳＤメモリカード６０２のＳＤシリアルＩＤが使用されて作成される鍵（ＳＤシリアルＩＤのチェックサム（８ビット）等）であって、暗号鍵兼復号鍵（暗号化用データ兼復号化用データ）である。暗号化はここでは、バイト単位での鍵とのＥＯＲ（排他的論理和）処理により実行される。このように、ＳＤＫアプリのＰＤＩＤが、鍵で暗号化されて登録されることで、ＰＤＩＤファイル７０３の改竄が防止され、ＳＤＫアプリのＰＤＩＤが、当該ＳＤメモリカード６０２に固有な鍵で暗号化されて登録されることで、ＰＤＩＤファイル７０３のコピーが防止される。
【０１３３】
例えば、図１７Ｄ１のように、ＰＤＩＤ登録処理が実行されたＳＤメモリカード６０２内の全てのファイルを他のＳＤメモリカード６０２にコピーした場合、元のＳＤメモリカード６０２とＳＤシリアルＩＤが異なり鍵が合わないため、当該他のＳＤメモリカード６０２はアプリ正当性判断処理で正当でないと判断されるので、結局、融合機１０１で当該他のＳＤメモリカード６０２を使用することは制限される。
【０１３４】
例えば、図１７Ｄ２のように、ＰＤＩＤ登録処理が実行されたＳＤメモリカード６０２内のＳＤＫアプリファイル７０２のみを他のＳＤメモリカード６０２にコピーした場合、当該他のＳＤメモリカード６０２内にはＰＤＩＤファイル７０３が存在しないため、当該他のＳＤメモリカード６０２についてアプリ正当性判断処理が実行されないので、結局、融合機１０１で当該他のＳＤメモリカード６０２を使用することは制限される。
【０１３５】
ＰＤＩＤファイル７０３には、登録済確認用データ７１１、登録アプリ数７１３、ＰＤＩＤ７１４が格納される。第１具体例と同様である。
【０１３６】
登録済確認用データ７１１は、当該ＳＤメモリカード６０２についての上記のＰＤＩＤ登録処理が未実行か実行済かを、融合機１０１に確認させるためのデータである。図１７ＢのＰＤＩＤファイル７０３の登録済確認用データ７１１としては「未実行」が登録されており、図１７ＣのＰＤＩＤファイル７０３の登録済確認用データ７１１としては「実行済」が登録されている。
【０１３７】
以下、上記した「ＰＤＩＤ登録処理」と「アプリ正当性判断処理」の具体例について説明する。
【０１３８】
これらの処理は、ＶＡＳ１３５（図１の説明欄参照）により実行される。図１８は、ＶＡＳ１３５により実行される処理に係るフローチャートであり、図１９は、ＶＡＳ１３５により実現される機能に係る機能ブロック図である。図１の融合機１０１には、図１９のように、登録済確認部９０１と、シード作成部９０２と、登録済登録部９０３と、ＰＤＩＤ暗号化部９１１と、ＰＤＩＤ登録部９１２と、ＰＤＩＤ復号化部９２１と、アプリ正当性判断部９２２等の機能ブロックが存在する。
【０１３９】
融合機１０１のＳＤメモリカード用スロット６０１にＳＤメモリカード６０２が挿入された状態で、融合機１０１の電源が投入されると、ＶＡＳ１３５により図１８の処理が実行されることになる。
【０１４０】
まず最初に、ＶＡＳ１３５が、ＳＤメモリカード６０２内にＰＤＩＤファイル７０３が存在するか否かをチェック（Ｓ１１）する。ＳＤメモリカード６０２内にＰＤＩＤファイル７０３が存在する（Ｓ１１）場合、Ｓ１２に移行して、ＳＤメモリカード６０２内にＰＤＩＤファイル７０３が存在しない（Ｓ１１）場合、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されずに、ＶＡＳ１３５による図１８の全処理が終了する。
【０１４１】
続いて、登録済確認部９０１が、当該ＳＤメモリカード６０２についてのＰＤＩＤ登録処理が未実行か実行済かを、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３の登録済確認用データ７１１に基づいて確認（Ｓ１２）する。ＰＤＩＤ登録処理が未実行であると確認された（Ｓ１３）場合、シード作成（Ｓ１４）とＰＤＩＤ登録処理（Ｓ１５）と登録済登録（Ｓ１６）とがこの順番で実行されることになる。ＰＤＩＤ登録処理が実行済であると確認された（Ｓ１３）場合、シード作成（Ｓ１４）とアプリ正当性判断処理（Ｓ１７）とがこの順番で実行されることになる。ちなみに、ここで具体例として説明中のビジネスモデルでは、前者の処理（Ｓ１４・Ｓ１５・Ｓ１６）は、ベンダーの元にある融合機１０１で実行されることになっており、後者の処理（Ｓ１４・Ｓ１７）は、ユーザーの元にある融合機１０１で実行されることになっている。
【０１４２】
シード作成（Ｓ１４）について説明する。Ｓ１３に続いて、シード作成部９０２は、当該ＳＤメモリカード６０２に固有な鍵（シード）を作成する。当該鍵はここでは、当該ＳＤメモリカード６０２のＳＤシリアルＩＤが使用されて作成される鍵（ＳＤシリアルＩＤのチェックサム（８ビット）等）であって、暗号鍵兼復号鍵である。シード作成部９０２はここでは、当該鍵（シード）９３１をＳＤシリアルＩＤ９３２を使用して作成するものとする。
【０１４３】
ＰＤＩＤ登録処理（Ｓ１５）について説明する。Ｓ１４に続いて、ＰＤＩＤ登録部９１２は、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に登録する。当該ＰＤＩＤファイル７０３には、当該ＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤが、シード作成部９０２により作成されたシード（鍵）９３１でＰＤＩＤ暗号化部９１１により暗号化されて、ＰＤＩＤ登録部９１２により登録される。
【０１４４】
登録済登録（Ｓ１６）について説明する。Ｓ１５に続いて、登録済登録部９０３は、当該ＳＤメモリカード６０２についてのＰＤＩＤ登録処理（Ｓ１５）が実行済であることを、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３の登録済確認用データ７１１として登録する。こうして、ＰＤＩＤファイル７０３の登録済確認用データ７１１が未実行から実行済になると、Ｓ１３の説明から明らかなように、次回の電源投入時には、当該ＳＤメモリカード６０２についてはＰＤＩＤ登録処理（Ｓ１５）は実行されないことになる。
【０１４５】
アプリ正当性判断処理（Ｓ１７）について説明する。Ｓ１４に続いて、アプリ正当性判断部９２２は、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリの正当性を、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に当該ＳＤＫアプリのＰＤＩＤが登録されていることをもって判断する。当該ＰＤＩＤファイル７０３には、上記したように、ＳＤＫアプリのＰＤＩＤが、シード作成部９０２により作成されたシード（鍵）９３１でＰＤＩＤ暗号化部９１１により暗号化されて登録されているため、当該ＰＤＩＤは、前もって、シード作成部９０２により作成されたシード（鍵）９３１でＰＤＩＤ復号化部９２１により復号化されることになる。
【０１４６】
以下、ＰＤＩＤ登録処理（Ｓ１５）の詳細について、図２０のシーケンス図により説明する。
【０１４７】
Ｓ１２として説明したように、ＳＤメモリカード６０２内にＰＤＩＤファイル７０３が存在する場合、ＶＡＳ１３５がＰＤＩＤ登録処理が未実行か実行済かを確認（Ｓ１０１）する。続いて、Ｓ１４として説明したように、ＶＡＳ１３５がシードを作成（Ｓ１０２）する。Ｓ１１，Ｓ１３の場合分け処理についても、それぞれ説明したように実行される。
【０１４８】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納された識別コードをチェック（Ｓ１０３）する。ＶＡＳ１３５は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。識別コードが格納されていないファイルについては、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されない。
【０１４９】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納されたＳＤＫアプリを仮起動（Ｓ１０４）させる。これにより、ＶＡＳ１３５はＳＤＫアプリから当該ＳＤＫアプリのＰＤＩＤを取得（Ｓ１０５）する。続いて、Ｓ１５として説明したように、ＶＡＳ１３５は、そのＰＤＩＤをシードで暗号化（Ｓ１０６）して、そのＰＤＩＤをＰＤＩＤファイル７０３に登録（Ｓ１０７）する。続いて、Ｓ１６として説明したように、ＶＡＳ１３５は、ＰＤＩＤ登録処理が実行済であることを、ＰＤＩＤファイル７０３の登録済確認用データ７１１として登録（Ｓ１０８）する。そして、ＶＡＳ１３５がＳＤＫアプリの仮起動を終了（Ｓ１０９）させる。
【０１５０】
以下、アプリ正当性判断処理（Ｓ１７）の詳細について、図２１のシーケンス図により説明する。
【０１５１】
Ｓ１２として説明したように、ＳＤメモリカード６０２内にＰＤＩＤファイル７０３が存在する場合、ＶＡＳ１３５はＰＤＩＤ登録処理が未実行か実行済かを確認（Ｓ２０１）する。続いて、Ｓ１４として説明したように、ＶＡＳ１３５がシードを作成（Ｓ２０２）する。Ｓ１１，Ｓ１３の場合分け処理についても、それぞれ説明したように実行される。
【０１５２】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納された識別コードをチェック（Ｓ２０３）する。ＶＡＳ１３５は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。識別コードが格納されていないファイルについては、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されない。
【０１５３】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納されたＳＤＫアプリを仮起動（Ｓ２０４）させる。これにより、ＶＡＳ１３５はＳＤＫアプリから当該ＳＤＫアプリのＰＤＩＤを取得（Ｓ２０５）する。続いて、Ｓ１７として説明したように、ＶＡＳ１３５は、ＰＤＩＤファイル７０３に登録されたＰＤＩＤを復号化（Ｓ２０６）して、Ｓ２０５のＰＤＩＤとＳ２０６のＰＤＩＤとの照合をもってＳＤＫアプリの正当性を判断（Ｓ２０７）する。
【０１５４】
続いて、ＶＡＳ１３５は、正当であることが判断されたＳＤＫアプリから当該ＳＤＫアプリのアプリ情報を取得（Ｓ２０８）する。ここで、融合機１０１の管理者は、正当であることが判断されたＳＤＫアプリの内、起動権設定対象とするＳＤＫアプリを選択するための選択画面を、オペレーションパネル２０２に表示（Ｓ２０９）させることができる。そして、融合機１０１の管理者は、正当であることが判断されたＳＤＫアプリの内、起動権設定対象とするＳＤＫアプリを、オペレーションパネル２０２を操作して選択（Ｓ２１０）することができる。そして、ＶＡＳ１３５は、起動権設定対象として選択されたＳＤＫアプリのＰＤＩＤを、ＨＤＤ２３３等（不揮発性メモリ（フラッシュメモリ等）であればよい）に登録することで、当該ＳＤＫアプリの起動権を設定（Ｓ２１１）する。融合機１０１は、ＳＤメモリカード用スロット６０１に挿入されたＳＤメモリカード６０２内のＳＤＫアプリについて、あるＳＤＫアプリの起動権が設定されている場合、そのＳＤＫアプリを、ＳＤメモリカード６０２から適宜再生させて、ＭＥＭ−Ｐ２３１やＭＥＭ−Ｃ２３２に適宜起動させる権限を有することになる。
【０１５５】
（４）第４具体例
ここでは、図２２により、ＳＤＫアプリ（図１の説明欄参照）をメーカーに代わってベンダーが作成し、ＳＤＫアプリを融合機１０１に入力するためのＳＤメモリカード６０２をベンダーからユーザーに配布し、ＳＤＫアプリを融合機１０１にユーザーがＳＤメモリカード６０２を使用して入力するようなビジネスモデルを具体例にして説明する。
【０１５６】
図２２ＡのＳＤメモリカード６０２は、市販のＳＤメモリカードである。
【０１５７】
図２２Ｂ，図２２Ｃ，図２２ＤのＳＤメモリカード６０２は、融合機１０１のベンダーの元で、図２２ＡのＳＤメモリカード６０２に、２個のＳＤＫアプリファイル７０２（１個目をＳＤＫアプリファイルＡ７０２Ａ、２個目をＳＤＫアプリファイルＢ７０２Ｂとする）と、ＰＤＩＤファイル７０３とを記憶させたＳＤメモリカードである。ただし、図２２ＢのＳＤメモリカード６０２は、ＰＤＩＤ登録処理が未実行のＳＤメモリカードであり、図２２ＣのＳＤメモリカード６０２は、第１次のＰＤＩＤ登録処理（ＳＤシードによるＰＤＩＤ登録処理）が実行済のＳＤメモリカードであり、図２２ＤのＳＤメモリカード６０２は、第２次のＰＤＩＤ登録処理（機体シードによるＰＤＩＤ登録処理）が実行済のＳＤメモリカードである。
【０１５８】
ＰＤＩＤ登録処理は、後述するように、第１次のＰＤＩＤ登録処理と第２次のＰＤＩＤ登録処理とからなり、図１の融合機１０１に実行させることができる。ＰＤＩＤ登録処理は、融合機１０１のベンダーの元にある融合機１０１に実行させてもよいし、融合機１０１のユーザーの元にある融合機１０１で実行させてもよいのだが、ここで具体例として説明するビジネスモデルでは、第１次のＰＤＩＤ登録処理については、融合機１０１のベンダーの元にある融合機１０１で実行させ、第２次のＰＤＩＤ登録処理については、融合機１０１のユーザーの元にある融合機１０１で実行させることにする。よって、融合機１０１のベンダーから融合機１０１のユーザーに配布されるＳＤメモリカード６０２は、図２２ＣのＳＤメモリカード６０２である。
【０１５９】
なお、ＳＤＫアプリファイル７０２は、融合機１０１のベンダーにより作成されたものであり、ＰＤＩＤファイル７０３は、図２２Ｂのような状態で、融合機１０１のメーカーから融合機１０１のベンダーに提供されたものである。図２２Ｃ，図２２ＤのＰＤＩＤファイル７０３には、ＳＤＫアプリのＰＤＩＤ等が登録されている。
【０１６０】
図２２Ｅ１，図２２Ｅ２のＳＤメモリカード６０２については後述する。
【０１６１】
ＳＤＫアプリファイル７０２は、ＳＤＫアプリが格納されたファイルである。第１具体例と同様である。
【０１６２】
ＰＤＩＤファイル７０３は、ＳＤＫアプリのＩＤ（識別情報）である、ＳＤＫアプリのＰＤＩＤを登録（格納）するためのファイルである。第1具体例と同様である。ＳＤメモリカード６０２には、ベンダーが自分でＰＤＩＤファイル７０３（メーカーからベンダーに提供されたもの）を書き込めるようにしておくものとする。ちなみに、ここで具体例として説明中のビジネスモデルでは、第１次のＰＤＩＤ登録処理は、ベンダーの元にある融合機１０１で、第２次のＰＤＩＤ登録処理は、ユーザーの元にある融合機１０１で、アプリ正当性判断処理は、ユーザーの元にある融合機１０１で実行されることになっている。
【０１６３】
ＰＤＩＤファイル７０３には、ＳＤＫアプリのＰＤＩＤがそのまま登録されるのではなく、第１次のＰＤＩＤ登録処理では、ＳＤＫアプリのＰＤＩＤが当該ＳＤメモリカード６０２に固有な鍵（シード）で暗号化されて登録されることになり、第２次のＰＤＩＤ登録処理では、ＳＤＫアプリのＰＤＩＤが融合機１０１の各機体に固有な鍵（シード）で暗号化されて登録されることになる。以下、ＳＤメモリカード６０２に固有なシードを「ＳＤシード」と呼び、ＳＤメモリカード６０２に固有なシードを「機体シード」と呼ぶことにする。当該ＳＤシード（暗号化用データ）はここでは、当該ＳＤメモリカード６０２のＳＤシリアルＩＤが使用されて作成される鍵（ＳＤシリアルＩＤのチェックサム（８ビット）等）であって、暗号鍵兼復号鍵（暗号化用データ兼復号化用データ）である。当該機体シード（暗号化用データ）はここでは、融合機１０１の各機体の機体番号が使用されて作成される鍵（機体番号のチェックサム（８ビット）等）であって、暗号鍵兼復号鍵（暗号化用データ兼復号化用データ）である。融合機１０１の各機体の機体番号以外の機体固有情報（ＭＡＣアドレスやＩＰアドレス）を使用してもよい。暗号化はここではいずれも、バイト単位での鍵とのＥＯＲ（排他的論理和）処理により実行される。このように、ＳＤＫアプリのＰＤＩＤが、鍵で暗号化されて登録されることで、ＰＤＩＤファイル７０３の改竄が防止され、ＳＤＫアプリのＰＤＩＤが、当該ＳＤメモリカード６０２に固有な鍵で暗号化されて登録されることで、ＰＤＩＤファイル７０３のコピーが防止され、ＳＤＫアプリのＰＤＩＤが、融合機１０１の各機体に固有の鍵で暗号化されて登録されることで、当該ＳＤメモリカード６０２を当該機体の同一機種や関連機種の他の機体等で使用することが制限される。融合機以外のコピー、プリンタ、スキャナ、ファクシミリ等の画像形成装置（情報処理装置）についても同様である。
【０１６４】
例えば、図２２Ｅ１のように、ＰＤＩＤ登録処理が実行されたＳＤメモリカード６０２内の全てのファイルを他のＳＤメモリカード６０２にコピーした場合、鍵が合わないと、当該他のＳＤメモリカード６０２はアプリ正当性判断処理で正当でないと判断されるので、結局、融合機１０１で当該他のＳＤメモリカード６０２を使用することは制限される。
【０１６５】
例えば、図２２Ｅ２のように、ＰＤＩＤ登録処理が実行されたＳＤメモリカード６０２内のＳＤＫアプリファイル７０２のみを他のＳＤメモリカード６０２にコピーした場合、当該他のＳＤメモリカード６０２内にはＰＤＩＤファイル７０３が存在しないため、当該他のＳＤメモリカード６０２についてアプリ正当性判断処理が実行されないので、結局、融合機１０１で当該他のＳＤメモリカード６０２を使用することは制限される。
【０１６６】
ＰＤＩＤファイル７０３には、登録済確認用データ７１１、登録アプリ数７１３、ＰＤＩＤ７１４が格納される。第１具体例と同様である。
【０１６７】
登録済確認用データ７１１は、当該ＳＤメモリカード６０２についての上記のＰＤＩＤ登録処理が未実行か第１次まで実行済か第２次まで実行済かを、融合機１０１に確認させるためのデータである。図２２ＢのＰＤＩＤファイル７０３の登録済確認用データ７１１としては「未実行」が登録されており、図２２ＣのＰＤＩＤファイル７０３の登録済確認用データ７１１としては「実行済（第１次）」が登録されており、図２２ＤのＰＤＩＤファイル７０３の登録済確認用データ７１１としては「実行済（第２次）」が登録されている。
【０１６８】
以下、上記した「ＰＤＩＤ登録処理」と「アプリ正当性判断処理」の具体例について説明する。
【０１６９】
これらの処理は、ＶＡＳ１３５（図１の説明欄参照）により実行される。図２３は、ＶＡＳ１３５により実行される処理に係るフローチャートであり、図２４は、ＶＡＳ１３５により実現される機能に係る機能ブロック図である。図１の融合機１０１には、図２４のように、登録済確認部９０１と、シード作成部９０２と、登録済登録部９０３と、ＰＤＩＤ暗号化部９１１と、ＰＤＩＤ登録部９１２と、ＰＤＩＤ復号化部９２１と、アプリ正当性判断部９２２等の機能ブロックが存在する。
【０１７０】
融合機１０１のＳＤメモリカード用スロット６０１にＳＤメモリカード６０２が挿入された状態で、融合機１０１の電源が投入されると、ＶＡＳ１３５により図２３の処理が実行されることになる。
【０１７１】
まず最初に、ＶＡＳ１３５が、ＳＤメモリカード６０２内にＰＤＩＤファイル７０３が存在するか否かをチェック（Ｓ１１）する。ＳＤメモリカード６０２内にＰＤＩＤファイル７０３が存在する（Ｓ１１）場合、Ｓ１２に移行して、ＳＤメモリカード６０２内にＰＤＩＤファイル７０３が存在しない（Ｓ１１）場合、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されずに、ＶＡＳ１３５による図２３の全処理が終了する。
【０１７２】
続いて、登録済確認部９０１が、当該ＳＤメモリカード６０２についてのＰＤＩＤ登録処理が未実行か第１次まで実行済か第２次まで実行済かを、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３の登録済確認用データ７１１に基づいて確認（Ｓ１２）する。ＰＤＩＤ登録処理が未実行であると確認された（Ｓ１３）場合、ＳＤシード作成（Ｓ１４Ａ）と第１次のＰＤＩＤ登録処理（Ｓ１５Ａ）と第１次の登録済登録（Ｓ１６Ａ）とがこの順番で実行されることになる。ＰＤＩＤ登録処理が第１次まで実行済であると確認された（Ｓ１３）場合、ＳＤシード作成（Ｓ１４Ａ）と機体シード作成（Ｓ１４Ｂ）と第２次のＰＤＩＤ登録処理（Ｓ１５Ｂ）と第２次の登録済登録（Ｓ１６Ｂ）とがこの順番で実行されることになる。ＰＤＩＤ登録処理が第２次まで実行済であると確認された（Ｓ１３）場合、機体シード作成（Ｓ１４Ｂ）とアプリ正当性判断処理（Ｓ１７）とがこの順番で実行されることになる。ちなみに、ここで具体例として説明中のビジネスモデルでは、１番目の処理（Ｓ１４Ａ・Ｓ１５Ａ・Ｓ１６Ａ）は、ベンダーの元にある融合機１０１で、２番目の処理（Ｓ１４Ａ・Ｓ１４Ｂ・Ｓ１５Ｂ・Ｓ１６Ｂ）は、ユーザーの元にある融合機１０１で、３番目の処理（Ｓ１４Ｂ・Ｓ１７）は、ユーザーの元にある融合機１０１で実行されることになっている。
【０１７３】
ＳＤシード作成（Ｓ１４Ａ）について説明する。Ｓ１３に続いて、シード作成部９０２は、当該ＳＤメモリカード６０２に固有な鍵（ＳＤシード）を作成する。当該ＳＤシードはここでは、当該ＳＤメモリカード６０２のＳＤシリアルＩＤが使用されて作成される鍵（ＳＤシリアルＩＤのチェックサム（８ビット）等）であって、暗号鍵兼復号鍵である。シード作成部９０２はここでは、当該ＳＤシード９３１をＳＤシリアルＩＤ９３２を使用して作成するものとする。
【０１７４】
機体シード作成（Ｓ１４Ｂ）について説明する。Ｓ１３に続いて、シード作成部９０２は、当該融合機１０１に固有な鍵（機体シード）を作成する。当該機体シードはここでは、当該融合機１０１の機体番号が使用されて作成される鍵（機体番号のチェックサム（８ビット）等）であって、暗号鍵兼復号鍵である。当該融合機１０１の機体番号以外の機体固有情報（ＭＡＣアドレスやＩＰアドレス）を使用してもよい。シード作成部９０２はここでは、当該機体シード９３３を機体番号９３４を使用して作成するものとする。
【０１７５】
第１次のＰＤＩＤ登録処理（Ｓ１５Ａ）について説明する。Ｓ１４Ａに続いて、ＰＤＩＤ登録部９１２は、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に登録する。当該ＰＤＩＤファイル７０３には、当該ＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤが、シード作成部９０２により作成されたＳＤシード９３１でＰＤＩＤ暗号化部９１１により暗号化されて、ＰＤＩＤ登録部９１２により登録される。
【０１７６】
第２次のＰＤＩＤ登録処理（Ｓ１５Ｂ）について説明する。Ｓ１４ＡとＳ１４Ｂに続いて、ＰＤＩＤ登録部９１２は、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に登録する。当該ＰＤＩＤファイル７０３には、当該ＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤが、シード作成部９０２により作成された機体シード９３３でＰＤＩＤ暗号化部９１１により暗号化されて、ＰＤＩＤ登録部９１２により登録される。
【０１７７】
第１次の登録済登録（Ｓ１６Ａ）について説明する。Ｓ１５Ａに続いて、登録済登録部９０３は、当該ＳＤメモリカード６０２についての第１次のＰＤＩＤ登録処理（Ｓ１５Ａ）が実行済であることを、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３の登録済確認用データ７１１として登録する。こうして、ＰＤＩＤファイル７０３の登録済確認用データ７１１が未実行から第１次まで実行済になると、Ｓ１３の説明から明らかなように、次回の電源投入時には、当該ＳＤメモリカード６０２については、第１次のＰＤＩＤ登録処理（Ｓ１５Ａ）は実行されず、第２次のＰＤＩＤ登録処理（Ｓ１５Ｂ）が実行されることになる。
【０１７８】
第２次の登録済登録（Ｓ１６Ｂ）について説明する。Ｓ１５Ｂに続いて、登録済登録部９０３は、当該ＳＤメモリカード６０２についての第２次のＰＤＩＤ登録処理（Ｓ１５Ｂ）が実行済であることを、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３の登録済確認用データ７１１として登録する。こうして、ＰＤＩＤファイル７０３の登録済確認用データ７１１が第１次まで実行済から第２次まで実行済になると、Ｓ１３の説明から明らかなように、次回の電源投入時には、当該ＳＤメモリカード６０２については、第１次のＰＤＩＤ登録処理（Ｓ１５Ａ）も第２次のＰＤＩＤ登録処理（Ｓ１５Ｂ）も実行されないことになる。
【０１７９】
アプリ正当性判断処理（Ｓ１７）について説明する。Ｓ１４Ｂに続いて、アプリ正当性判断部９２２は、当該ＳＤメモリカード６０２内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリの正当性を、当該ＳＤメモリカード６０２内のＰＤＩＤファイル７０３に当該ＳＤＫアプリのＰＤＩＤが登録されていることをもって判断する。当該ＰＤＩＤファイル７０３には、上記したように、ＳＤＫアプリのＰＤＩＤが、シード作成部９０２により作成された機体シード９３３でＰＤＩＤ暗号化部９１１により暗号化されて登録されているため、当該ＰＤＩＤは、前もって、シード作成部９０２により作成された機体シード９３３でＰＤＩＤ復号化部９２１により復号化されることになる。
【０１８０】
以下、第１次のＰＤＩＤ登録処理（Ｓ１５Ａ）の詳細について、図２５のシーケンス図により説明する。
【０１８１】
Ｓ１２として説明したように、ＳＤメモリカード６０２内にＰＤＩＤファイル７０３が存在する場合、ＶＡＳ１３５がＰＤＩＤ登録処理が未実行か第１次まで実行済か第２次まで実行済かを確認（Ｓ１０１）する。続いて、Ｓ１４Ａとして説明したように、ＶＡＳ１３５がＳＤシードを作成（Ｓ１０２）する。Ｓ１１，Ｓ１３の場合分け処理についても、それぞれ説明したように実行される。
【０１８２】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納された識別コードをチェック（Ｓ１０３）する。ＶＡＳ１３５は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。識別コードが格納されていないファイルについては、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されない。
【０１８３】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納されたＳＤＫアプリを仮起動（Ｓ１０４）させる。これにより、ＶＡＳ１３５はＳＤＫアプリから当該ＳＤＫアプリのＰＤＩＤを取得（Ｓ１０５）する。続いて、Ｓ１５Ａとして説明したように、ＶＡＳ１３５は、そのＰＤＩＤをＳＤシードで暗号化（Ｓ１０６）して、そのＰＤＩＤをＰＤＩＤファイル７０３に登録（Ｓ１０７）する。続いて、Ｓ１６Ａとして説明したように、ＶＡＳ１３５は、第１次のＰＤＩＤ登録処理が実行済であることを、ＰＤＩＤファイル７０３の登録済確認用データ７１１として登録（Ｓ１０８）する。そして、ＶＡＳ１３５がＳＤＫアプリの仮起動を終了（Ｓ１０９）させる。
【０１８４】
以下、第２次のＰＤＩＤ登録処理（Ｓ１５Ｂ）の詳細について、図２６のシーケンス図により説明する。
【０１８５】
Ｓ１２として説明したように、ＳＤメモリカード６０２内にＰＤＩＤファイル７０３が存在する場合、ＶＡＳ１３５がＰＤＩＤ登録処理が未実行か第１次まで実行済か第２次まで実行済かを確認（Ｓ２０１）する。続いて、Ｓ１４Ａとして説明したように、ＶＡＳ１３５がＳＤシードを作成（Ｓ２０２）する。続いて、Ｓ１４Ｂとして説明したように、ＶＡＳ１３５が機体シードを作成（Ｓ２０３）する。Ｓ１１，Ｓ１３の場合分け処理についても、それぞれ説明したように実行される。
【０１８６】
続いて、ＶＡＳ１３５（ＰＤＩＤ復号化部９２１）は、ＳＤシードで暗号化されてＰＤＩＤファイル７０３に登録されたＰＤＩＤを、ＳＤシードで復号化（Ｓ２０４）する。これにより、ＶＡＳ１３５は、ＳＤＫアプリファイル７０３に格納されたＳＤＫアプリのＰＤＩＤを取得する。続いて、Ｓ１５Ｂとして説明したように、ＶＡＳ１３５（ＰＤＩＤ暗号化部９２１・ＰＤＩＤ登録部９２２）は、そのＰＤＩＤを機体シードで暗号化（Ｓ２０５）して、そのＰＤＩＤをＰＤＩＤファイル７０３に登録（Ｓ２０６）する。続いて、Ｓ１６Ｂとして説明したように、ＶＡＳ１３５（登録済登録部９０３）は、第２次のＰＤＩＤ登録処理が実行済であることを、ＰＤＩＤファイル７０３の登録済確認用データ７１１として登録（Ｓ２０７）する。
【０１８７】
以下、アプリ正当性判断処理（Ｓ１７）の詳細について、図２７のシーケンス図により説明する。
【０１８８】
Ｓ１２として説明したように、ＳＤメモリカード６０２内にＰＤＩＤファイル７０３が存在する場合、ＶＡＳ１３５はＰＤＩＤ登録処理が未実行か第１次まで実行済か第２次まで実行済かを確認（Ｓ３０１）する。続いて、Ｓ１４Ｂとして説明したように、ＶＡＳ１３５が機体シードを作成（Ｓ３０２）する。Ｓ１１，Ｓ１３の場合分け処理についても、それぞれ説明したように実行される。
【０１８９】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納された識別コードをチェック（Ｓ３０３）する。ＶＡＳ１３５は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。識別コードが格納されていないファイルについては、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されない。
【０１９０】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納されたＳＤＫアプリを仮起動（Ｓ３０４）させる。これにより、ＶＡＳ１３５はＳＤＫアプリから当該ＳＤＫアプリのＰＤＩＤを取得（Ｓ３０５）する。続いて、Ｓ１７として説明したように、ＶＡＳ１３５は、機体シードで暗号化されてＰＤＩＤファイル７０３に登録されたＰＤＩＤを、機体シードで復号化（Ｓ３０６）して、Ｓ３０５のＰＤＩＤとＳ３０６のＰＤＩＤとの照合をもってＳＤＫアプリの正当性を判断（Ｓ３０７）する。
【０１９１】
続いて、ＶＡＳ１３５は、正当であることが判断されたＳＤＫアプリから当該ＳＤＫアプリのアプリ情報を取得（Ｓ３０８）する。ここで、融合機１０１の管理者は、正当であることが判断されたＳＤＫアプリの内、起動権設定対象とするＳＤＫアプリを選択するための選択画面を、オペレーションパネル２０２に表示（Ｓ３０９）させることができる。そして、融合機１０１の管理者は、正当であることが判断されたＳＤＫアプリの内、起動権設定対象とするＳＤＫアプリを、オペレーションパネル２０２を操作して選択（Ｓ３１０）することができる。そして、ＶＡＳ１３５は、起動権設定対象として選択されたＳＤＫアプリのＰＤＩＤを、ＨＤＤ２３３等（不揮発性メモリ（フラッシュメモリ等）であればよい）に登録することで、当該ＳＤＫアプリの起動権を設定（Ｓ３１１）する。融合機１０１は、ＳＤメモリカード用スロット６０１に挿入されたＳＤメモリカード６０２内のＳＤＫアプリについて、あるＳＤＫアプリの起動権が設定されている場合、そのＳＤＫアプリを、ＳＤメモリカード６０２から適宜再生させて、ＭＥＭ−Ｐ２３１やＭＥＭ−Ｃ２３２に適宜起動させる権限を有することになる。
【０１９２】
（５）第５具体例
ここでは、図２８により、融合機１０１に装着されたＨＤＤ２３３にＳＤＫアプリ（図１の説明欄参照）が追加（記憶）されるような使用態様、すなわち、融合機１０１に装着されたＨＤＤ２３３がＳＤＫアプリ（図１の説明欄参照）の追加先（記憶先）として使用されるような使用態様について説明する。
【０１９３】
図２８ＡのＨＤＤ２３３は、ＳＤＫアプリ追加前のＨＤＤ２３３である。図２８ＡのＨＤＤ２３３には、ＰＤＩＤファイル７０３が記憶されている。
【０１９４】
図２８ＢのＨＤＤ２３３は、ＳＤＫアプリ追加後のＨＤＤ２３３である。図２８ＢのＨＤＤ２３３は、図２８ＡのＨＤＤ２３３に、２個のＳＤＫアプリファイル７０２（１個目をＳＤＫアプリファイルＡ７０２Ａ、２個目をＳＤＫアプリファイルＢ７０２Ｂとする）を追加したものである。図２８ＢのＨＤＤ２３３には、２個のＳＤＫアプリファイル７０２と、ＰＤＩＤファイル７０３とが記憶されている。
【０１９５】
図２８ＣのＨＤＤ２３３は、融合機１０１によりＰＤＩＤ登録処理が実行されたＨＤＤ２３３である。図２８ＣのＨＤＤ２３３は、図２８ＢのＨＤＤ２３３内のＰＤＩＤファイル７０３に、ＳＤＫアプリのＰＤＩＤ等を登録したものである。
【０１９６】
ＳＤＫアプリファイル７０２は、ＳＤＫアプリが格納されたファイルである。ＳＤＫアプリは、上記したように、専用のＳＤＫ（ソフトウェア開発キット）により作成されるアプリケーション１３１である。ＳＤＫアプリファイル７０２は例えば、ＳＤＫアプリファイル７０２が記憶されたＳＤメモリカード等のメモリカード２３５が使用（ＳＤメモリカード用スロット等のメモリカード用スロット２３４に挿入）されて、当該ＨＤＤ２３３に追加される。ＳＤＫアプリファイル７０２は、ＳＤＫアプリの実行形式ファイルである。
【０１９７】
ＳＤＫアプリファイル７０２には、ＳＤＫアプリファイル７０２であることを、融合機１０１に識別させるための識別コードを格納させておく。識別コードは、ＳＤＫアプリファイル７０２の先頭の数バイト等、ＳＤＫアプリファイル７０２の特定エリアに格納させておく。融合機１０１は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。
【０１９８】
ＰＤＩＤファイル７０３は、ＳＤＫアプリのＩＤ（識別情報）である、ＳＤＫアプリのＰＤＩＤ（プロダクトＩＤ）を登録（格納）するためのファイルである。より詳細に言うと、当該ＨＤＤ２３３内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを登録するためのファイルである。融合機１０１は、ＨＤＤ２３３内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを、当該ＨＤＤ２３３内のＰＤＩＤファイル７０３に登録する「ＰＤＩＤ登録処理」を実行する。融合機１０１はまた、ＨＤＤ２３３内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリの正当性を、当該ＨＤＤ２３３内のＰＤＩＤファイル７０３に当該ＳＤＫアプリのＰＤＩＤが登録されていることをもって判断する「アプリ正当性判断処理」を実行する。融合機１０１はそして、アプリ正当性判断処理により正当であることが判断されたＳＤＫアプリであることを、当該ＳＤＫアプリの起動処理や起動権設定処理を実行するための条件とする。なお、ＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤは、当該ＳＤＫアプリファイル７０２から取得できるようにしておく。
【０１９９】
ＰＤＩＤファイル７０３には、ＳＤＫアプリのＰＤＩＤがそのまま登録されるのではなく、ＳＤＫアプリのＰＤＩＤが融合機１０１の各機体に固有な鍵（シード）で暗号化されて登録されることになる。当該鍵（暗号化用データ）はここでは、融合機１０１の各機体の機体番号が使用されて作成される鍵（機体番号のチェックサム（８ビット）等）であり、暗号鍵兼復号鍵（暗号化用データ兼復号化用データ）である。融合機１０１の各機体の機体番号以外の機体固有情報（ＭＡＣアドレスやＩＰアドレス）を使用してもよい。暗号化はここでは、バイト単位での鍵とのＥＯＲ（排他的論理和）処理により実行される。このように、ＳＤＫアプリのＰＤＩＤが、鍵で暗号化されて登録されることで、ＰＤＩＤファイル７０３の改竄が防止され、ＳＤＫアプリのＰＤＩＤが、融合機１０１の各機体に固有な鍵で暗号化されて登録されることで、当該ＨＤＤ２３３を当該機体の同一機種や関連機種の他の機体等に付け替えて使用することが制限される。融合機以外のコピー、プリンタ、スキャナ、ファクシミリ等の画像形成装置（情報処理装置）についても同様である。第１具体例や第３具体例と同様に、ＰＤＩＤファイル７０３には、ＳＤＫアプリのＰＤＩＤが当該ＨＤＤ２３３に固有な鍵（シード）で暗号化されて登録されるようにしてもよい。
【０２００】
ＰＤＩＤファイル７０３には、最大アプリ数７１２、登録アプリ数７１３、ＰＤＩＤ７１４が格納される。
【０２０１】
最大アプリ数７１２は、当該ＰＤＩＤファイル７０３に登録可能なＰＤＩＤの個数の上限値（最大個数）である。すなわち、当該ＨＤＤ２３３に正当に追加可能なＳＤＫアプリ（ＳＤＫアプリファイル７０２）の個数の上限値（最大個数）である。図２８Ａ，Ｂ，ＣのＰＤＩＤファイル７０３の最大アプリ数７１２としては「２個」が設定されている。最大アプリ数７１２は、上記のシード（鍵）で暗号化して格納しておく。
【０２０２】
登録アプリ数７１３は、当該ＰＤＩＤファイル７０３に登録されたＰＤＩＤの個数の値である。すなわち、当該ＨＤＤ２３３に追加された正当なＳＤＫアプリ（ＳＤＫアプリファイル７０２）の個数の値である。融合機１０１は、ＰＤＩＤ登録処理の一環として、ＨＤＤ２３３内のＰＤＩＤファイル７０３に登録されたＰＤＩＤの個数の値を、当該ＰＤＩＤファイル７０３の登録アプリ数７１３として登録する。図２８Ａ，ＢのＰＤＩＤファイル７０３の登録アプリ数７１３としては「０個」が登録されており、図２８ＣのＰＤＩＤファイル７０３の登録アプリ数７１３としては「２個」が登録されている。登録アプリ数７１３は、上記のシード（鍵）で暗号化されて登録される。なお、登録アプリ数７１３が「０個」の状態を「初期状態」と呼び、登録アプリ数７１３が「０個」以外の状態を「登録状態」と呼ぶことにする。
【０２０３】
ＰＤＩＤ７１４は、ＳＤＫアプリのＰＤＩＤ（プロダクトＩＤ）を登録するための登録欄である。より詳細に言うと、当該ＨＤＤ２３３内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを登録するための登録欄である。図２８Ａ，ＢのＰＤＩＤファイル７０３のＰＤＩＤ７１４には、ＳＤＫアプリのＰＤＩＤがまだ登録されておらず、図２８ＣのＰＤＩＤファイル７０３のＰＤＩＤ７１４には、ＳＤＫアプリのＰＤＩＤ（ＳＤＫアプリファイルＡ７０２Ａに格納されたＳＤＫアプリＡのＰＤＩＤと、ＳＤＫアプリファイルＢ７０２Ｂに格納されたＳＤＫアプリＡのＰＤＩＤ）がすでに登録されている。図２８Ａ，ＢのＰＤＩＤファイル７０３のＰＤＩＤ７１４には、ＳＤＫアプリのＰＤＩＤの代わりにＳＤＫアプリのＰＤＩＤと同じデータ量のデータ「ダミーＩＤ」が格納されている。ＰＤＩＤファイル７０３にＰＤＩＤが格納される際には、ＰＤＩＤ７１４にＰＤＩＤの代わりに格納されている「ダミーＩＤ」に替わりＰＤＩＤが格納される形で、ＰＤＩＤファイル７０３にＰＤＩＤが格納される。こうしておけば、ＰＤＩＤの格納前と格納後のＰＤＩＤファイル７０３のデータ量のずれが原因で、ＰＤＩＤ登録処理の存在が発覚してしまうような事態が抑制される。ＰＤＩＤ７１４に登録されるＰＤＩＤは、すでに説明したとおり、シード（鍵）で暗号化されて登録される。
【０２０４】
以下、上記した「ＰＤＩＤ登録処理」と「アプリ正当性判断処理」の具体例について説明する。
【０２０５】
これらの処理は、ＶＡＳ１３５（図１の説明欄参照）により実行される。図２９は、ＶＡＳ１３５により実行される処理に係るフローチャートであり、図３０は、ＶＡＳ１３５により実現される機能に係る機能ブロック図である。図１の融合機１０１には、図３０のように、シード作成部９０２、ＰＤＩＤ暗号化部９１１、ＰＤＩＤ登録部９１２、ＰＤＩＤ復号化部９２１、アプリ正当性判断部９２２等の機能ブロックが存在する。
【０２０６】
融合機１０１に装着されたＨＤＤ２３３にＳＤＫアプリファイル７０２が追加された状態で、融合機１０１の電源が投入されると、ＶＡＳ１３５により図２９の処理が実行されることになる。
【０２０７】
まず最初に、シード作成部９０２が、当該融合機１０１に固有な鍵（シード）を作成（Ｓ１１）する。当該鍵はここでは、当該融合機１０１の機体番号が使用されて作成される鍵（機体番号のチェックサム（８ビット）等）であり、暗号鍵兼復号鍵である。当該融合機１０１の機体番号以外の機体固有情報（ＭＡＣアドレスやＩＰアドレス）を使用してもよい。シード作成部９０２はここでは、当該鍵（シード）９３３を当該融合機１０１の機体番号９３４を使用して作成するものとする。
【０２０８】
続いて、ＶＡＳ１３５が、当該ＨＤＤ２３３内のＰＤＩＤファイル７０３が初期状態か登録状態かを、当該ＰＤＩＤファイル７０３の登録アプリ数７１３に基づいて確認（Ｓ１２）する。初期状態であると確認された場合、ＰＤＩＤ登録処理（Ｓ１３）とアプリ正当性判断処理（Ｓ１４）とがこの順番で実行されることになる。登録状態であると確認された場合、ＰＤＩＤ登録処理（Ｓ１３）は実行されず、アプリ正当性判断処理（Ｓ１４）が実行されることになる。なお、初期状態か登録状態かで場合分けをする代わりに、登録アプリ数７１３が最大アプリ数７１２未満か否かで場合分けをしてもよい。
【０２０９】
ＰＤＩＤ登録処理（Ｓ１３）について説明する。Ｓ１２に続いて、ＰＤＩＤ登録部９１２は、当該ＨＤＤ２３３内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤを、当該ＨＤＤ２３３内のＰＤＩＤファイル７０３に登録する。当該ＰＤＩＤファイル７０３には、当該ＳＤＫアプリファイル７０２に格納されたＳＤＫアプリのＰＤＩＤが、シード作成部９０２により作成されたシード（鍵）９３３でＰＤＩＤ暗号化部９１１により暗号化されて、ＰＤＩＤ登録部９１２により登録される。
【０２１０】
ＰＤＩＤ登録処理（Ｓ１３）では、ＰＤＩＤ登録部９１２は、当該ＨＤＤ２３３内のＰＤＩＤファイル７０３に登録されたＰＤＩＤの個数を、当該ＰＤＩＤファイル７０３の登録アプリ数７１３として登録する。こうして、ＰＤＩＤファイル７０３が初期状態から登録状態になると、Ｓ１２の説明から明らかなように、次回の電源投入時には、当該ＨＤＤ２３３についてＰＤＩＤ登録処理（Ｓ１３）は実行されないことになる。
【０２１１】
アプリ正当性判断処理（Ｓ１４）について説明する。Ｓ１２に続いて、アプリ正当性判断部９２２は、当該ＨＤＤ２３３内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリの正当性を、当該ＨＤＤ２３３内のＰＤＩＤファイル７０３に当該ＳＤＫアプリのＰＤＩＤが登録されていることをもって判断する。当該ＰＤＩＤファイル７０３には、上記したように、ＳＤＫアプリのＰＤＩＤが、シード作成部９０２により作成されたシード（鍵）９３３でＰＤＩＤ暗号化部９１１により暗号化されて登録されているため、当該ＰＤＩＤは、前もって、シード作成部９０２により作成されたシード（鍵）９３３でＰＤＩＤ復号化部９２１により復号化されることになる。
【０２１２】
融合機１０１は、ＨＤＤ２３３内のＳＤＫアプリファイル７０２に格納されたＳＤＫアプリについて、アプリ正当性判断処理（Ｓ１４）により正当であることが判断されたＳＤＫアプリであることを、当該ＳＤＫアプリの起動処理や起動権設定処理を実行するための条件とする。すなわち、アプリ正当性判断処理を経由していないＳＤＫアプリや、アプリ正当性判断処理により正当でないことが判断されたＳＤＫアプリは、ＭＥＭ−Ｐ２３１やＭＥＭ−Ｃ２３２への起動が制限されることになる。このようにして、ＨＤＤ２３３に係る不正行為が実行されて、融合機１０１にプログラムが不正に供給されてしまう危険性に対処しているのである。
【０２１３】
なお、ＰＤＩＤ登録処理とアプリ正当性判断処理を実行するメリットの具体例としては、ＨＤＤ２３３内のＳＤＫアプリファイル７０２の差し替え防止が挙げられる。例えば、低額なＳＤＫアプリファイル７０２（ＳＤＫアプリ）を購入してＨＤＤ２３３に追加したユーザーが、不正コピーにより、当該ＨＤＤ２３３内のＳＤＫアプリファイル７０２を低額なものから高額なものに差し替えた場合でも、当該ＨＤＤ２３３についてすでにＰＤＩＤ登録処理が実行されて、当該ＨＤＤ２３３内のＰＤＩＤファイル７０３がすでに初期状態から登録状態になっていれば、アプリ正当性判断処理を通過することができないからである。上記のメリットは、ＰＤＩＤファイル７０３の最大アプリ数７１２、すなわち、ＨＤＤ２３３に追加可能なＳＤＫアプリの個数の上限値が１個であっても２個以上であっても変わるところがない。
【０２１４】
以下、ＰＤＩＤ登録処理（Ｓ１３）の詳細について、図３１のシーケンス図により説明する。
【０２１５】
まず最初に、Ｓ１１として説明したように、ＶＡＳ１３５がシードを作成（Ｓ１０１）する。Ｓ１２の場合分け処理についても、説明したように実行される。
【０２１６】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納された識別コードをチェック（Ｓ１０２）する。ＶＡＳ１３５は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。識別コードが格納されていないファイルについては、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されない。
【０２１７】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納されたＳＤＫアプリを仮起動（Ｓ１０３）させる。これにより、ＶＡＳ１３５はＳＤＫアプリから当該ＳＤＫアプリのＰＤＩＤを取得（Ｓ１０４）する。続いて、Ｓ１３として説明したように、ＶＡＳ１３５は、そのＰＤＩＤをシードで暗号化（Ｓ１０５）して、そのＰＤＩＤをＰＤＩＤファイル７０３に登録（Ｓ１０６）する。そして、ＶＡＳ１３５がＳＤＫアプリの仮起動を終了（Ｓ１０７）させる。
【０２１８】
以下、アプリ正当性判断処理（Ｓ１４）の詳細について、図３２のシーケンス図により説明する。
【０２１９】
まず最初に、Ｓ１１として説明したように、ＶＡＳ１３５がシードを作成（Ｓ２０１）する。Ｓ１２の場合分け処理についても、説明したように実行される。
【０２２０】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納された識別コードをチェック（Ｓ２０２）する。ＶＡＳ１３５は、あるファイルがＳＤＫアプリファイル７０２であることを、そのファイルに識別コードが格納されていることをもって識別する。識別コードが格納されていないファイルについては、ＰＤＩＤ登録処理やアプリ正当性判断処理は実行されない。
【０２２１】
続いて、ＶＡＳ１３５がＳＤＫアプリファイル７０２に格納されたＳＤＫアプリを仮起動（Ｓ２０３）させる。これにより、ＶＡＳ１３５はＳＤＫアプリから当該ＳＤＫアプリのＰＤＩＤを取得（Ｓ２０４）する。続いて、Ｓ１４として説明したように、ＶＡＳ１３５は、ＰＤＩＤファイル７０３に登録されたＰＤＩＤを復号化（Ｓ２０５）して、Ｓ２０４のＰＤＩＤとＳ２０５のＰＤＩＤとの照合をもってＳＤＫアプリの正当性を判断（Ｓ２０６）する。
【０２２２】
続いて、ＶＡＳ１３５は、正当であることが判断されたＳＤＫアプリから当該ＳＤＫアプリのアプリ情報を取得（Ｓ２０７）する。ここで、融合機１０１の管理者は、正当であることが判断されたＳＤＫアプリの内、起動権設定対象とするＳＤＫアプリを選択するための選択画面を、オペレーションパネル２０２に表示（Ｓ２０８）させることができる。そして、融合機１０１の管理者は、正当であることが判断されたＳＤＫアプリの内、起動権設定対象とするＳＤＫアプリを、オペレーションパネル２０２を操作して選択（Ｓ２０９）することができる。そして、ＶＡＳ１３５は、起動権設定対象として選択されたＳＤＫアプリのＰＤＩＤを、ＨＤＤ２３３等（不揮発性メモリ（フラッシュメモリ等）であればよい）に登録することで、当該ＳＤＫアプリの起動権を設定（Ｓ２１０）する。融合機１０１は、ＨＤＤ２３３内のＳＤＫアプリにつき、あるＳＤＫアプリの起動権が設定されている場合、そのＳＤＫアプリを、ＨＤＤ２３３から適宜再生させて、ＭＥＭ−Ｐ２３１やＭＥＭ−Ｃ２３２に適宜起動させる権限を有することになる。
【０２２３】
（６）画像形成処理
第１，第２，第３，第４，第５具体例に関連して、図１の融合機１０１にて実行される画像形成処理について説明する。
【０２２４】
図３３は、ＶＡＳ１３５により作成される画像形成処理用のパスワード９４１について説明するための図である。
【０２２５】
ここでは、スキャナアプリ１４３は、融合機１０１に蓄積される画像データを読取原稿から読み取る場合、ＶＡＳ１３５により作成されたパスワード９４１を当該画像データに付加し、当該画像データに「パスワードロック」を掛ける。同様に、ファクシミリアプリ１４４やネットワークファイルアプリ１４５は、融合機１０１に蓄積される画像データをネットワークから受信する場合、ＶＡＳ１３５により作成されたパスワード９４１を当該画像データに付加し、当該画像データに「パスワードロック」を掛ける。
【０２２６】
ここでは、プリンタアプリ１４２は、融合機１０１に蓄積された上記画像データを印刷用紙に印刷する場合、ＶＡＳ１３５により作成されたパスワード９４１と当該画像データに付加されたパスワード９４１とを照合して、当該画像データの「パスワードチェック」を行なう。同様に、ファクシミリアプリ１４４やネットワークファイルアプリ１４５は、融合機１０１に蓄積された上記画像データをネットワークに送信する場合、ＶＡＳ１３５により作成されたパスワード９４１と当該画像データに付加されたパスワード９４１とを照合して、当該画像データの「パスワードチェック」を行なう。
【０２２７】
上記パスワード９４１は例えば、当該融合機１０１のＳＤメモリカードスロット６０１にセットされているＳＤメモリカード６０２に固有なデータとする。この場合には、ある画像データの読取処理や受信処理の終了から印刷処理や送信処理の開始までにＳＤメモリカード６０２を差し替えると、その画像データの印刷処理や送信処理が実行不可能になるので、ＳＤメモリカード６０２の差し替え防止になる。ＳＤメモリカード６０２に関する不正が存在するおそれがある場合には、画像形成処理までが制限されることになるので、上記具体例のメリットがより効果的になるのである。上記パスワード９４１の作成方法は上記具体例の鍵９３１の作成方法と同様であり、ＳＤシリアルＩＤ９３２等が使用されて作成される。以上の事柄は、ＨＤＤ２３３の付け替え防止についても適用可能である。
【０２２８】
上記パスワード９４１は例えば、当該融合機１０１の機体に固有なデータとする。この場合には、画像データが蓄積されているＨＤＤ２３３を他の機体から当該融合機１０１に付け替えても、当該融合機１０１ではその画像データの印刷処理や送信処理は実行不可能なので、画像データが蓄積されているＨＤＤ２３３の付け替え防止になる。画像データの蓄積先となるＨＤＤ２３３に関する不正が存在するおそれがある場合には、画像形成処理までが制限されることになるので、上記具体例のメリットがより効果的になるのである。上記パスワード９４１の作成方法は上記具体例の鍵９３３の作成方法と同様であり、機体番号９３４等が使用されて作成される。以上の事柄は、画像データが蓄積されているＳＤメモリカード６０２の差し替え防止についても適用可能である。
【０２２９】
図３４は、上記のパスワード付加処理に係るフローチャートである。
【０２３０】
プリンタアプリ１４２等が、融合機１０１に蓄積すべき画像データを読取原稿から読み取る又はネットワークから受信する（Ｓ１０１）と、ＶＡＳ１３５が、パスワード９４１を作成（Ｓ１０２）する。続いて、プリンタアプリ１４２等が、ＶＡＳ１３５により作成されたパスワード９４１を当該画像データに付加（Ｓ１０３）する事で、当該画像データにパスワードロックを掛ける。続いて、融合機１０１に当該画像データが蓄積される。
【０２３１】
図３５は、上記のパスワード照合処理に係るフローチャートである。
【０２３２】
融合機１０１に蓄積されている画像データから印刷用紙に印刷すべき又はネットワークに送信すべき画像データが指定されると、ＶＡＳ１３５が、パスワード９４１を作成（Ｓ１１１）する。続いて、プリンタアプリ１４２等が、ＶＡＳ１３５により作成されたパスワード９４１と当該画像データに付加されたパスワード９４１とを照合（Ｓ１１２）する事で、当該画像データのパスワードチェックを行なう。続いて、プリンタアプリ１４２等が、当該画像データのパスワード照合結果が「正」であることを条件に、当該画像データを印刷用紙に印刷する又はネットワークに送信する（Ｓ１１３）のである。
【０２３３】
図３６は、ＶＡＳ１３５により作成される画像形成処理用の鍵９４２について説明するための図である。
【０２３４】
ここでは、スキャナアプリ１４３は、融合機１０１に蓄積される画像データを読取原稿から読み取る場合、ＶＡＳ１３５により作成された鍵９４２で当該画像データを「オリジナル画像データ」から「スクランブル画像データ」に暗号化する。同様に、ファクシミリアプリ１４４やネットワークファイルアプリ１４５は、融合機１０１に蓄積される画像データをネットワークから受信する場合、ＶＡＳ１３５により作成された鍵９４２で当該画像データを「オリジナル画像データ」から「スクランブル画像データ」に暗号化する。
【０２３５】
ここでは、プリンタアプリ１４２は、融合機１０１に蓄積された上記画像データを印刷用紙に印刷する場合、ＶＡＳ１３５により作成された鍵９４１で当該画像データを「スクランブル画像データ」から「オリジナル画像データ」に復号化する。同様にして、ファクシミリアプリ１４４やネットワークファイルアプリ１４５は、融合機１０１に蓄積された上記画像データをネットワークに送信する場合、ＶＡＳ１３５により作成された鍵９４１で当該画像データを「スクランブル画像データ」から「オリジナル画像データ」に復号化する。
【０２３６】
上記鍵９４２は例えば、当該融合機１０１のＳＤメモリカードスロット６０１にセットされているＳＤメモリカード６０２に固有な暗号化用データとする。この場合には、ある画像データの読取処理や受信処理の終了から印刷処理や送信処理の開始までにＳＤメモリカード６０２を差し替えると、その画像データの印刷処理や送信処理が実行不可能になるので、ＳＤメモリカード６０２の差し替え防止になる。ＳＤメモリカード６０２に関する不正が存在するおそれがある場合には、画像形成処理までが制限されることになるので、上記具体例のメリットがより効果的になるのである。上記鍵９４２の作成方法は上記具体例の鍵９３１の作成方法と同様で、ＳＤシリアルＩＤ９３２等が使用されて作成される。以上の事柄は、ＨＤＤ２３３の付け替え防止についても適用可能である。
【０２３７】
上記鍵９４２は例えば、当該融合機１０１の機体に固有な暗号化用データとする。この場合には、画像データが蓄積されているＨＤＤ２３３を他の機体から当該融合機１０１に付け替えても、当該融合機１０１ではその画像データの印刷処理や送信処理は実行不可能なので、画像データが蓄積されているＨＤＤ２３３の付け替え防止になる。画像データの蓄積先となるＨＤＤ２３３に関する不正が存在するおそれがある場合には、画像形成処理までが制限されることになるので、上記具体例のメリットがより効果的になるのである。上記鍵９４２の作成方法は上記具体例の鍵９３３の作成方法と同様で、機体番号９３４等が使用されて作成される。以上の事柄は、画像データが蓄積されているＳＤメモリカード６０２の差し替え防止についても適用可能である。
【０２３８】
図３７は、上記の暗号化処理に係るフローチャートである。
【０２３９】
プリンタアプリ１４２等が、融合機１０１に蓄積すべき画像データを読取原稿から読み取るまたはネットワークから受信する（Ｓ２０１）と、ＶＡＳ１３５が、鍵９４２を作成（Ｓ２０２）する。続いて、プリンタアプリ１４２等が、ＶＡＳ１３５により作成された鍵９４２で当該画像データを暗号化（Ｓ２０３）する。続いて、融合機１０１に当該画像データが蓄積される。
【０２４０】
図３８は、上記の復号化処理に係るフローチャートである。
【０２４１】
融合機１０１に蓄積されている画像データから印刷用紙に印刷すべき又はネットワークに送信すべき画像データが指定されると、ＶＡＳ１３５が、鍵９４２を作成（Ｓ２１１）する。続いて、プリンタアプリ１４２等が、ＶＡＳ１３５により作成された鍵９４２で当該画像データを復号化（Ｓ２１２）する。続いて、プリンタアプリ１４２等が、当該画像データの復号化処理が「成功」したことを条件に、当該画像データを印刷用紙に印刷する又はネットワークに送信する（Ｓ２１３）のである。
【０２４２】
なお、上記の画像形成処理において、同一の画像データについてパスワード９４１と鍵９４２を併用するようにしてもよい。また、上記の画像形成処理において、１台の融合機１０１に２枚以上のＳＤメモリカード６０２がセットされている場合、パスワード９４１や鍵９４２を特定のＳＤメモリカード６０２に固有のデータとするようにしてもよい。
【０２４３】
（変形例）
図１の融合機１０１は、本発明「情報処理装置」の実施例に該当するものであり、図１の融合機１０１にて実行される情報処理は、本発明「情報処理方法」の実施例に該当するものである。図１のＶＡＳ１３５は、本発明「情報処理プログラム」の実施例に該当するものであり、図１のＶＡＳ１３５が記録されたＳＤメモリカードは、本発明「記録媒体」の実施例に該当するものである。
【符号の説明】
【０２４４】
１１  情報処理装置
２１  ハードウェア
２２  ソフトウェア
２３  起動部
３１  アプリケーション
３２  プラットフォーム
１０１  融合機
１１１  ハードウェア
１１２  ソフトウェア
１１３  融合機起動部
１２１  撮像部
１２２  印刷部
１２３  その他のハードウェア
１３１  アプリケーション
１３２  プラットフォーム
１３３  アプリケーションプログラムインタフェース
１３４  エンジンインタフェース
１３５  仮想アプリケーションサービス
１４１  コピーアプリ
１４２  プリンタアプリ
１４３  スキャナアプリ
１４４  ファクシミリアプリ
１４５  ネットワークファイルアプリ
１５１  コントロールサービス
１５２  システムリソースマネージャ
１５３  ハンドラ
１６１  ネットワークコントロールサービス
１６２  ファクシミリコントロールサービス
１６３  デリバリコントロールサービス
１６４  エンジンコントロールサービス
１６５  メモリコントロールサービス
１６６  オペレーションパネルコントロールサービス
１６７  サーティフィケーションコントロールサービス
１６８  ユーザディレクトリコントロールサービス
１６９  システムコントロールサービス
１７１  ファクシミリコントロールユニットハンドラ
１７２  イメージメモリハンドラ
２０１  コントローラ
２０２  オペレーションパネル
２０３  ファクシミリコントロールユニット
２１１  ＣＰＵ
２１２  ＡＳＩＣ
２２１  ＮＢ
２２２  ＳＢ
２３１  ＭＥＭ−Ｐ
２３２  ＭＥＭ−Ｃ
２３３  ＨＤＤ
２３４  メモリカード用スロット
２３５  メモリカード
２４１  ＮＩＣ
２４２  ＵＳＢデバイス
２４３  ＩＥＥＥ１３９４デバイス
２４４  セントロニクスデバイス
３０１  原稿セット部
３０２  給紙部
３０３  排紙部
３１１  タッチパネル
３１２  テンキー
３１３  スタートボタン
３１４  リセットボタン
３１５  初期設定ボタン
３２１  ＡＤＦ
３２２  フラットベッド
３２３  フラットベッドカバー
５０１  メモリモニタ部
５０２  プログラム起動部
６０１  ＳＤメモリカード用スロット
６０２  ＳＤメモリカード
６１１  ＳＤメモリカードアクセスドライバ
６１２  ＳＤメモリカードステータスドライバ
６１３  起動処理用プログラム
６１４  ＳＤメモリカードチェックプログラム
７０１  ＳＤメモリカードサービスファイル
７０２  ＳＤＫアプリファイル
７０３  ＰＤＩＤファイル
７１１  整合性確認用データ、登録済確認用データ
７１２  最大アプリ数
７１３  登録アプリ数
７１４  ＰＤＩＤ
９０１  カード正当性確認部、登録済確認部
９０２  シード作成部
９０３  ＰＤＩＤファイル整合性確認部、登録済登録部
９１１  ＰＤＩＤ暗号化部
９１２  ＰＤＩＤ登録部
９２１  ＰＤＩＤ復号化部
９２２  アプリ正当性判断部
９３１  鍵（シード、ＳＤシード）
９３２  ｌｉｃファイル、ＳＤシリアルＩＤ
９３３  鍵（シード、機体シード）
９３４  機体番号
９４１  パスワード
９４２  鍵
【先行技術文献】
【特許文献】
【０２４５】
【特許文献１】特開２００２−８４３８３号公報
【図１】
2010211818.tif 000003
【図２】
2010211818.tif 000004
【図３】
2010211818.tif 000005
【図４】
2010211818.tif 000006
【図５】
2010211818.tif 000007
【図６】
2010211818.tif 000008
【図７】
2010211818.tif 000009
【図８】
2010211818.tif 000010
【図９】
2010211818.tif 000011
【図１０】
2010211818.tif 000012
【図１１】
2010211818.tif 000013
【図１２】
2010211818.tif 000014
【図１３】
2010211818.tif 000015
【図１４】
2010211818.tif 000016
【図１５】
2010211818.tif 000017
【図１６】
2010211818.tif 000018
【図１７】
2010211818.tif 000019
【図１８】
2010211818.tif 000020
【図１９】
2010211818.tif 000021
【図２０】
2010211818.tif 000022
【図２１】
2010211818.tif 000023
【図２２】
2010211818.tif 000024
【図２３】
2010211818.tif 000025
【図２４】
2010211818.tif 000026
【図２５】
2010211818.tif 000027
【図２６】
2010211818.tif 000028
【図２７】
2010211818.tif 000029
【図２８】
2010211818.tif 000030
【図２９】
2010211818.tif 000031
【図３０】
2010211818.tif 000032
【図３１】
2010211818.tif 000033
【図３２】
2010211818.tif 000034
【図３３】
2010211818.tif 000035
【図３４】
2010211818.tif 000036
【図３５】
2010211818.tif 000037
【図３６】
2010211818.tif 000038
【図３７】
2010211818.tif 000039
【図３８】
2010211818.tif 000040
【図３９】
2010211818.tif 000041