JP4231313B2 - Information processing apparatus, image forming apparatus, and program addition method - Google Patents

Information processing apparatus, image forming apparatus, and program addition method Download PDF

Info

Publication number
JP4231313B2
JP4231313B2 JP2003078988A JP2003078988A JP4231313B2 JP 4231313 B2 JP4231313 B2 JP 4231313B2 JP 2003078988 A JP2003078988 A JP 2003078988A JP 2003078988 A JP2003078988 A JP 2003078988A JP 4231313 B2 JP4231313 B2 JP 4231313B2
Authority
JP
Japan
Prior art keywords
program
recording medium
file
addition
electronic signature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003078988A
Other languages
Japanese (ja)
Other versions
JP2004287840A (en
Inventor
弘幸 金原
亨 原田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2003078988A priority Critical patent/JP4231313B2/en
Publication of JP2004287840A publication Critical patent/JP2004287840A/en
Application granted granted Critical
Publication of JP4231313B2 publication Critical patent/JP4231313B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、情報処理装置,画像形成装置,プログラム追加方法に係り、特にプログラム追加用記録媒体を用いてプログラム起動用記録媒体にプログラムを追加する情報処理装置,画像形成装置,プログラム追加方法に関する。
【0002】
【従来の技術】
パソコン等の情報処理装置は、情報処理にそれぞれ対応する1つ以上のプログラムを実行させることで様々な情報処理を行わせるものである。また、情報処理装置の応用例としての画像形成装置(以下、融合機という)は、1つの筐体内に表示部,印刷部および撮像部などを設けると共に、プリンタ,コピー,ファクシミリおよびスキャナにそれぞれ対応する4種類のプログラムを設け、そのプログラムを切り替えることより、プリンタ,コピー,ファクシミリおよびスキャナとして動作させるものである。特許文献1には、上記のような融合機の一例が記載されている。
【0003】
このような情報処理装置や融合機は、電源投入後に、BIOS(Basic Input/Output System)およびブートローダ(Boot Loader)が起動する。ブートローダは、オペレーティングシステム(OS)およびルートファイルシステムをRAM(Random Access Memory )上に展開してOSを起動する。そして、OSはルートファイルシステムをマウントする。ここでマウントとは、ファイルシステムや周辺機器などをアクセス可能な状態に起動することをいう。
【0004】
OSの起動後、アプリケーション(以下、アプリという)等のプログラムを起動する起動プログラムが起動される。起動プログラムは、情報処理装置や融合機で最初に起動されるプロセスである。
【0005】
起動プログラムは、所定の設定ファイルに従ってファイルシステムをマウントし、ハードディスク装置(HDD)やSD(Secure Digital)カード等のプログラム起動用記録媒体に記録されている情報処理装置や融合機の動作に必要なプログラムを所定の設定ファイルに従って起動している。
【0006】
近年、SDカードのように挿抜可能なプログラム追加用記録媒体を用いてプログラム起動用記録媒体に、情報処理装置や融合機のプログラムを追加したいという要求が増えている。
【0007】
【特許文献1】
特開2002−84383号公報
【0008】
【発明が解決しようとする課題】
しかしながら、SDカードのように挿抜可能な記録媒体を用いたプログラム追加用記録媒体は、1つ以上の情報処理装置や融合機で順番に利用できるため、そのプログラムを追加する権利(ライセンス)のない情報処理装置や融合機にプログラムを追加されてしまう恐れがあった。
【0009】
したがって、挿抜可能なプログラム追加用記録媒体から情報処理装置や融合機のプログラム起動用記録媒体にプログラムを追加する場合、プログラム追加用記録媒体に記録されたプログラムが不正に利用されないような仕組みを設け、プログラムの安全性を確保しなければならないという問題があった。
【0010】
本発明は、上記の点に鑑みなされたもので、挿抜可能なプログラム追加用記録媒体に記録されたプログラムの安全性を確保しつつ、プログラム追加用記録媒体からプログラム起動用記録媒体にプログラムを追加できる情報処理装置,画像形成装置,プログラム追加方法を提供することを目的とする。
【0011】
【課題を解決するための手段】
そこで、上記課題を解決するため、本発明は、複数の記録媒体を挿抜可能なスロットを有し、前記スロットの1つに挿入されたプログラム追加用記録媒体を用いて前記スロットの他の1つに挿入されているプログラム起動用記録媒体にプログラムを追加する情報処理装置であって、前記スロットへのプログラム追加用記録媒体の挿入を判定する判定手段と、前記スロットへのプログラム追加用記録媒体の挿入があったと判定すると、プログラム起動用記録媒体の識別情報を取得してプログラム追加用記録媒体に書き込む書込手段と、前記スロットへの前記プログラムを追加するためのファイルが書き込まれたプログラム追加用記録媒体の挿入があったと判定すると、プログラム追加用記録媒体からファイルを読み出し、そのファイルの認証チェックの結果に応じて、プログラム追加用記録媒体から読み出したファイルをプログラム起動用記録媒体に追加する追加手段とを有し、前記判定手段は、前記スロットに対する記録媒体の挿抜を監視する監視手段と、前記スロットに挿入された記録媒体がプログラム追加用記録媒体であるかを判定するための認証チェックを行う認証チェック手段とを有し、前記書込手段は、前記スロットへのプログラム追加用記録媒体の挿入があったと判定されたとき、前記判定手段からの指示によりプログラム追加用記録媒体から読み出されて起動されることを特徴とする。
【0013】
また、本発明は、プログラム追加用記録媒体を作成するサーバと、プログラム追加用記録媒体を用いてプログラム起動用記録媒体にプログラムを追加する情報処理装置とを有するシステムのプログラム追加方法であって、前記情報処理装置が、プログラム起動用記録媒体の識別情報をプログラム追加用記録媒体に書き込む識別情報書込段階と、前記サーバが、プログラム追加用記録媒体からプログラム起動用記録媒体の識別情報を読み出し、その識別情報を用いて所定ファイルの電子署名ファイルを作成して、所定ファイルおよび電子署名ファイルをプログラム追加用記録媒体に書き込むファイル書込段階と、前記情報処理装置が、プログラム追加用記録媒体から所定ファイルおよび電子署名ファイルを読み出し、電子署名ファイルを用いた所定ファイルの認証チェックの結果に応じて、プログラム追加用記録媒体から読み出した所定ファイルおよび電子署名ファイルをプログラム起動用記録媒体に追加するプログラム追加段階とを有することを特徴とする。
【0014】
また、本発明は、プログラム追加用記録媒体を作成するサーバと、プログラム追加用記録媒体を用いてプログラム起動用記録媒体にプログラムを追加する画像形成装置とを有するシステムのプログラム追加方法であって、前記画像形成装置が、プログラム起動用記録媒体の識別情報をプログラム追加用記録媒体に書き込む識別情報書込段階と、前記サーバが、プログラム追加用記録媒体からプログラム起動用記録媒体の識別情報を読み出し、その識別情報を用いて所定ファイルの電子署名ファイルを作成して、所定ファイルおよび電子署名ファイルをプログラム追加用記録媒体に書き込むファイル書込段階と、前記画像形成装置が、プログラム追加用記録媒体から所定ファイルおよび電子署名ファイルを読み出し、電子署名ファイルを用いた所定ファイルの認証チェックの結果に応じて、プログラム追加用記録媒体から読み出した所定ファイルおよび電子署名ファイルをプログラム起動用記録媒体に追加するプログラム追加段階とを有することを特徴とする。
【0015】
本発明によれば、プログラム起動用記録媒体にプログラムを追加するためのプログラム追加用記録媒体を、そのプログラム追加用記録媒体に対応する一のプログラム起動用記録媒体でしか利用できないように作成できるので、複数のプログラム起動用記録媒体にプログラムが不正に追加されることを防止し、挿抜可能なプログラム追加用記録媒体に記録されたプログラムの安全性を確保しつつ、プログラム追加用記録媒体からプログラム起動用記録媒体にプログラムを追加できる。
【0016】
【発明の実施の形態】
次に、本発明の実施の形態について図面に基づいて説明する。
【0017】
図1は、本発明による情報処理装置の一実施例の構成図である。情報処理装置1は、ソフトウェア群2と,起動部3と,ハードウェア資源4とを含むように構成される。
【0018】
起動部3は情報処理装置1の電源投入時に最初に実行され、後述するプログラム起動部を起動する。このプログラム起動部は、情報処理装置1のソフトウェア群2を起動する。例えば起動部3のプログラム起動部は、SDカードチェック部11,プログラム追加部12,システム制御部13,アプリ14−1〜14−nのプログラムを補助記憶装置やSDカード等から読み出し、読み出した各プログラムをメモリ装置に転送して起動する。
【0019】
ハードウェア資源4は、入力装置,表示装置,補助記憶装置,メモリ装置,インターフェース装置,SDカード用スロット等のハードウェアリソースを含む。また、ソフトウェア群2は、UNIX(登録商標)などのOS上に起動されているSDカードチェック部11,プログラム追加部12,システム制御部13,アプリ14−1〜14−nのプログラムを含む。OSは、SDカードチェック部11,プログラム追加部12,システム制御部13,アプリ14−1〜14−nのプログラムをプロセスとして並列制御する。
【0020】
API(Application Program Interface )15は、予め定義されている関数によりアプリ14−1〜14−nからの要求を受信するために利用される。エンジンI/F16は、予め定義されている関数によりハードウェア資源4に対する要求を送信するために利用される。なお、SDカードチェック部11,プログラム追加部12,システム制御部13およびプログラム起動部の詳細は後述する。
【0021】
次に、情報処理装置1のハードウェア構成について説明する。図2は、本発明による情報処理装置の一実施例のハードウェア構成図である。
【0022】
図2の情報処理装置1は、それぞれバスBで相互に接続されている入力装置21,表示装置22,補助記憶装置23,メモリ装置24,演算処理装置25,インターフェース装置26およびSDカード用スロット27を有するように構成される。
【0023】
入力装置21はキーボード及びマウスなどで構成され、様々な操作指示を入力するために用いられる。表示装置22は、操作に必要な各種ウインドウやデータ等を表示する。インターフェース装置26は、情報処理装置1をネットワークに接続する為のインターフェースであり、モデムやルータ等で構成される。
【0024】
SDカード用スロット27はSDカードを挿抜可能なものであり、SDカードの挿入または抜き出しに応じた割り込みを後述するSDカードドライバに対して行う。補助記憶装置23は、各種ファイルやデータ等を格納している。
【0025】
SDカード用スロット27に挿入されたSDカードや補助記憶装置23は、情報処理装置1に係る処理を行わせるSDカードチェック部11,プログラム追加部12,システム制御部13,アプリ14−1〜14−nなどのプログラムを格納すると共に、そのプログラムの処理に必要な各種ファイルやデータ等を格納している。
【0026】
メモリ装置24は、情報処理装置1の起動時にSDカード用スロット27に挿入されたSDカードや補助記憶装置23からSDカードチェック部11,プログラム追加部12,システム制御部13,アプリ14−1〜14−nなどのプログラムを読み出して格納する。そして、演算処理装置25は、メモリ装置24に格納されたSDカードチェック部11,プログラム追加部12,システム制御部13,アプリ14−1〜14−nなどのプログラムに従って処理を実行する。
【0027】
次に、本発明による情報処理装置1の応用例として融合機31の構成について説明する。なお、本実施例では融合機31の処理を中心に説明するが、情報処理装置1の処理も同様である。
【0028】
図3は、本発明による融合機の一実施例の構成図である。融合機31は、ソフトウェア群32と,融合機起動部33と,ハードウェア資源34とを含むように構成される。
【0029】
ソフトウェア群32は、UNIX(登録商標)などのOS上に起動されているアプリケーション層35とプラットフォーム36とを含む。また、ハードウェア資源34は白黒レーザプリンタ(B&W LP)41と,カラーレーザプリンタ(Color LP)42と,スキャナやファクシミリなどのその他のハードウェアリソース43とを含む。
【0030】
アプリケーション層35は、プリンタ,コピー,ファックスおよびスキャナなどの画像形成にかかるユーザサービスにそれぞれ固有の処理を行うプリンタアプリ51と,コピーアプリ52と,ファックスアプリ53と,スキャナアプリ54と,ネットファイルアプリ55とを含む。
【0031】
また、プラットフォーム36は、アプリケーション層35からの処理要求を解釈してハードウェア資源34の獲得要求を発生するコントロールサービス層37と、ハードウェア資源34の管理を行ってコントロールサービス層37からの獲得要求を調停するシステムリソースマネージャ(SRM)69と、SRM69からの獲得要求に応じてハードウェア資源34の管理を行うハンドラ層38とを含む。
【0032】
コントロールサービス層37は、ネットワークコントロールサービス(NCS)61,デリバリーコントロールサービス(DCS)62,オペレーションパネルコントロールサービス(OCS)63,ファックスコントロールサービス(FCS)64,エンジンコントロールサービス(ECS)65,メモリコントロールサービス(MCS)66,ユーザインフォメーションコントロールサービス(UCS)67,システムコントロールサービス(SCS)68など、一つ以上のサービスモジュールを含むように構成されている。
【0033】
なお、プラットフォーム36はAPI81を有するように構成されている。OSは、アプリケーション層35およびプラットフォーム36の各ソフトウェアをプロセスとして並列実行する。
【0034】
NCS61のプロセスは、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、各アプリケーションからのデータをネットワーク側に送信する際の仲介を行う。例えばNCS61は、融合機31にネットワークを介して接続されるクライアントとのデータ通信を制御する。
【0035】
DCS62のプロセスは、融合機に蓄積されている文書データの配送などの制御を行う。OCS63のプロセスは、オペレータと本体制御との間の情報伝達手段となるオペレーションパネルの制御を行う。
【0036】
FCS64のプロセスは、アプリケーション層35からPSTNまたはISDN網を利用したファックス送受信,バックアップ用のメモリで管理されている各種ファックスデータの登録/引用,ファックス読み取り,ファックス受信印刷などを行うためのAPIを提供する。
【0037】
ECS65のプロセスは、白黒レーザプリンタ41,カラーレーザプリンタ42,ハードウェアリソース43などのエンジン部の制御を行う。MCS66のプロセスは、メモリの取得および解放,HDDの利用,画像データの圧縮および伸張などのメモリ制御を行う。UCS67のプロセスは、ユーザ情報の管理を行うものである。
【0038】
SCS68のプロセスは、アプリケーション管理,操作部制御,システム画面表示,LED表示,ハードウェア資源管理,割り込みアプリケーション制御などの処理を行う。
【0039】
SRM69のプロセスは、SCS68と共にシステムの制御およびハードウェア資源34の管理を行うものである。例えばSRM69のプロセスは、ハードウェア資源34を利用する上位層からの獲得要求に従って調停を行い、実行制御する。
【0040】
具体的に、SRM69のプロセスは獲得要求されたハードウェア資源34が利用可能であるか(他の獲得要求により利用されていないかどうか)を判定し、利用可能であれば獲得要求されたハードウェア資源34が利用可能である旨を上位層に通知する。
【0041】
また、SRM69のプロセスは上位層からの獲得要求に対してハードウェア資源34を利用するためのスケジューリングを行い、要求内容(例えば、プリンタエンジンによる紙搬送と作像動作,メモリ確保,ファイル生成など)を直接実施している。
【0042】
ハンドラ層38は、後述するファックスコントロールユニット(FCU)の管理を行うファックスコントロールユニットハンドラ(FCUH)70と、プロセスに対するメモリ領域の割り振り及びプロセスに割り振ったメモリ領域の管理を行うイメージメモリハンドラ(IMH)71とを含む。SRM69およびFCUH70は、エンジンI/F82を利用して、ハードウェア資源34に対する処理要求を行う。図3の構成により、融合機31は各アプリケーションで共通的に必要な処理をプラットフォーム36で一元的に処理することができる。
【0043】
次に、融合機31のハードウェア構成について説明する。図4は、本発明による融合機の一実施例のハードウェア構成図である。
【0044】
融合機31は、コントローラ100と,オペレーションパネル120と,FCU121と,エンジン部122とを含む。コントローラ100は、CPU101と,システムメモリ102と,ノースブリッジ(NB)103と,サウスブリッジ(SB)104と,ASIC106と,ローカルメモリ107と,HDD108と、ネットワークインターフェースカード(NIC)109と,SDカード用スロット110と,USBデバイス111と,IEEE1394デバイス112と,セントロニクス113とを含む。
【0045】
オペレーションパネル120は、コントローラ100のASIC106に接続されている。また、FCU121およびエンジン部122は、コントローラ100のASIC106にPCIバス123で接続されている。
【0046】
コントローラ100は、ASIC106にローカルメモリ107,HDD108などが接続されると共に、CPU101とASIC106とがCPUチップセットのNB103を介して接続されている。コントローラ100は、NB103を介してCPU101とASIC106とを接続することにより、CPU101のインターフェースが公開されていない場合に対応する。なお、ASIC106とNB103とはAGP(Accelerated Graphics Port )105を介して接続されている。
【0047】
このように、図3のアプリケーション層35やプラットフォーム36を形成する一つ以上のプロセスを実行制御するため、ASIC106とNB103とを低速のPCIバスでなくAGP105を介して接続し、パフォーマンスの低下を防いでいる。
【0048】
CPU101は、融合機31の全体制御を行うものである。例えばCPU101は、NCS61,DCS62,OCS63,FCS64,ECS65,MCS66,UCS67,SCS68,SRM69,FCUH70およびIMH71をOS上にそれぞれプロセスとして起動して実行させると共に、アプリケーション層35を形成するプリンタアプリ51,コピーアプリ52,ファックスアプリ53,スキャナアプリ54,ネットファイルアプリ55を起動して実行させる。
【0049】
NB103は、CPU101,システムメモリ102,SB104,ASIC106,NIC109,SDカード用スロット110,USBデバイス111,IEEE1394デバイス112およびセントロニクス113を接続するためのブリッジである。
【0050】
SB104,NIC109,SDカード用スロット110,USBデバイス111,IEEE1394デバイス112およびセントロニクス113は、PCIバス114を介してNB103に接続されている。なお、SB104は、PCIバス114とROMや周辺デバイス等とを接続するためのブリッジである。
【0051】
システムメモリ102は、融合機31の描画用メモリなどとして用いるメモリである。ローカルメモリ107はコピー用画像バッファ,符号バッファとして用いるメモリである。
【0052】
ASIC106は、画像処理用のハードウェア要素を有する画像処理用途向けのICである。HDD108は、画像データの蓄積,文書データの蓄積,プログラムの蓄積,フォントデータの蓄積,フォームの蓄積などを行うストレージ(補助記憶装置)の一例である。
【0053】
NIC109は、融合機31をネットワークに接続するインターフェース機器である。SDカード用スロット110はSDカードを挿抜可能なものであり、SDカードの挿入または抜き出しに応じた割り込みを後述するSDカードドライバに対して行う。USBデバイス111,IEEE1394デバイス112およびセントロニクス113は、夫々の規格に準じたインターフェースである。
【0054】
また、オペレーションパネル120は、オペレータからの入力操作を受け付けると共に、オペレータに向けた表示を行う操作部である。なお、FCU121はメモリを有している。FCU121が有するメモリは、例えば融合機31の電源がOFFのときに受信したファクシミリデータを一時的に格納するために利用される。
【0055】
図3の融合機起動部33は、融合機1の電源投入時に最初に実行され、アプリケーション層35やプラットフォーム36を起動するものである。図5は、融合機起動部の一例の構成図を示す。融合機起動部33は、ROMモニタ130およびプログラム起動部131を有する。
【0056】
BIOSおよびブートローダとしてのROMモニタ130は電源投入時に実行されるものであり、ハードウェアの初期化,コントローラ100の診断,ソフトウェアの初期化などを行う。ROMモニタ130は、OSおよびルートファイルシステムをシステムメモリ102上に展開してOSを起動する。そして、OSはルートファイルシステムをマウントする。
【0057】
プログラム起動部131は、OSから呼び出されるものであり、システムメモリ102,ローカルメモリ107上にメモリ領域を確保する。プログラム起動部131は、融合機1で最初に起動されるプロセスであって、所定の設定ファイルに従ってファイルシステムをマウントする。
【0058】
プログラム起動部131は、融合機31の動作に必要なアプリケーション層35およびプラットフォーム36のプログラムを所定の設定ファイルに従ってHDD108,SDカード,ROMなどから読み出し、読み出した各プログラムをシステムメモリ102,ローカルメモリ107上に確保したメモリ領域に展開してアプリケーション層35およびプラットフォーム36のプロセスを起動するものである。
【0059】
更に、プログラム起動部131の処理について説明する。プログラム起動部131は、起動時に所定のマスタ設定ファイルを読み込み、読み込んだマスタ設定ファイルに従ってファイルシステムのマウントおよびプロセスの起動を行う。また、プログラム起動部131は、読み込んだマスタ設定ファイルにマウントの記述が存在した場合、そのマウントの記述に従ってマウント処理を実行する。
【0060】
さらに、プログラム起動部131はマウントしたファイルシステムのルートに所定の設定ファイルが存在する場合やマウントしたファイルシステムのルートに所定の拡張子のファイルを含む所定のディレクトリが存在する場合に、所定の設定ファイル又は所定の拡張子のファイルを読み込んでファイルシステムのマウント処理を行う。
【0061】
なお、プログラム起動部131がマウントできるファイルシステムは、「gzromfs」などがある。このファイルシステム「gzromfs」は、gzip圧縮されたROMFS形式のファイルをRAM上に展開してマウントする。
【0062】
以下、プログラム追加用記録媒体としてのアプリ追加用SDカードからプログラム起動用記録媒体としてのアプリ起動用SDカードにプログラムを追加する例について説明していく。
【0063】
図6は、アプリ追加用SDカードからアプリ起動用SDカードにプログラムを追加する処理の一例の概略図である。融合機31は、SDカード用スロット110の1つに挿入されているアプリ起動用SDカード141を有し、アプリ追加用SDカード140を用いてアプリ起動用SDカード141にプログラムを追加する装置である。また、サーバ150はアプリ起動用SDカード141にプログラムを追加するためのファイルを作成し、そのファイルをアプリ追加用SDカード140に書き込む装置である。
【0064】
ステップS100では、融合機31のSDカード用スロット110にアプリ追加用SDカード140が挿入され、暗号化されたアプリ起動用SDカード141のシリアルIDがアプリ追加用SDカード140に書き込まれる。
【0065】
ステップS200では、暗号化されたアプリ起動用SDカード141のシリアルIDが書き込まれたアプリ追加用SDカード140を、例えば融合機31の保守を行うサービスマン等がサーバ150の設置場所まで持っていく。なお、暗号化されたアプリ起動用SDカード141のシリアルIDが書き込まれたアプリ追加用SDカード140は、サーバ150の設置場所まで郵送してもよい。
【0066】
ステップS300では、サーバ150のSDカード用スロットにアプリ追加用SDカード140が挿入され、そのアプリ追加用SDカード140に書き込まれている暗号化されたアプリ起動用SDカード141のシリアルIDがサーバ150に読み出される。サーバ150は、アプリ起動用SDカード141にプログラムを追加するためのファイルを作成し、そのファイルをアプリ追加用SDカード140に書き込む。
【0067】
ステップS400では、アプリ起動用SDカード141にプログラムを追加するためのファイルが書き込まれたアプリ追加用SDカード140を、例えば融合機31の保守を行うサービスマン等が融合機31の設置場所まで持っていく。なお、アプリ起動用SDカード141にプログラムを追加するためのファイルが書き込まれたアプリ追加用SDカード140は、融合機31の設置場所まで郵送してもよい。
【0068】
ステップS500では、融合機31のSDカード用スロット110に、アプリ起動用SDカード141にプログラムを追加するためのファイルが書き込まれたアプリ追加用SDカード140が挿入され、後述するような認証チェックが行われる。認証チェックがOKであれば、アプリ追加用SDカード140に書き込まれていたアプリ起動用SDカード141にプログラムを追加するためのファイルを用いて、アプリ起動用SDカード141にプログラムを追加する。
【0069】
次に、図6のステップS100,S300およびS500の処理について詳細に説明する。図7は、ステップS100の処理の一例の説明図である。なお、図7の説明図では融合機31の構成のうち説明に必要な構成を表し、説明に必要のない構成を省略している。
【0070】
ステップS101では、融合機31のSDカード用スロット110にアプリ追加用SDカード140が挿入される。SDカード用スロット110は、アプリ追加用SDカード140の挿入に応じた割り込みをSDカードドライバ137に対して行う。
【0071】
ステップS102では、OS136が、SDカードドライバ137に対する割り込みに応じてプログラム起動部131にSDカードの挿入検知を通知する。ステップS103では、プログラム起動部131が、SDカードチェック部132を起動させる。ステップS104では、SDカードチェック部132がアプリ追加用SDカード140のマウントを行い、アプリ追加用SDカード140のマウントを行った旨をプログラム起動部131に通知して処理を停止する。
【0072】
アプリ追加用SDカード140のマウントを行った旨が通知されると、ステップS105に進み、プログラム起動部131は電子認証チェック用ライブラリ134を用いてアプリ追加用SDカード140の認証チェックを行う。
【0073】
ステップS105での認証チェックは、例えば図8に表した設定ファイルの認証チェックと図10に表したマウント対象モジュールの認証チェックとを有している。
【0074】
例えば設定ファイルの認証チェックは、図8に表したフローチャートのように行われる。図8は、設定ファイルの認証チェックの処理の一例のフローチャートである。
【0075】
ステップS600では、プログラム起動部131が、アプリ追加用SDカード140に設定ファイルの認証チェックに利用する対象ファイルが存在するか否かを判定する。設定ファイルの認証チェックに利用する対象ファイルは、設定ファイルと、設定ファイルおよびアプリ追加用SDカード140のシリアルIDのメッセージダイジェスト(以下、MDという)から作成された電子署名ファイルとを含む。
【0076】
図9は、アプリ追加用SDカードに記録された対象ファイルの一例のイメージ図である。図9の例では、「inst.cnf」が設定ファイルを表し、「inst.lic」が設定ファイルの認証チェックに利用する電子署名ファイルを表し、「inst.mod」がマウント対象のモジュールファイルを表し、「inst.mac」がマウント対象モジュールの認証チェックに利用する電子署名ファイルを表す。
【0077】
設定ファイルの認証チェックに利用する対象ファイルが存在すると判定すると(S600においてYES)、プログラム起動部131はアプリ追加用SDカード140から設定ファイルおよび設定ファイルの認証チェックに利用する電子署名ファイルを取得してステップS601に進む。
【0078】
ステップS601では、プログラム起動部131が、アプリ追加用SDカード140からシリアルIDを取得する。ステップS603に進み、プログラム起動部131はステップS600で取得した設定ファイルと、ステップS601で取得したアプリ追加用SDカード140のシリアルIDとのMD1を作成する。ステップS603に進み、プログラム起動部131はステップS600で取得した電子署名ファイルを公開鍵で復号化してMD2を作成する。
【0079】
ステップS604に進み、プログラム起動部131はMD1とMD2とが等しいか否かを判定する。MD1とMD2とが等しいと判定すると(S604においてYES)、プログラム起動部131はステップS605に進み、設定ファイルの認証チェックがOKと判定する。一方、MD1とMD2とが等しくないと判定すると(S24においてNO)、プログラム起動部131はステップS606に進み、設定ファイルの認証チェックがNGと判定する。
【0080】
MD1とMD2とが等しくなければ、アプリ追加用SDカード140に記録されているファイルは不正にコピーされた可能性が高いためである。なお、設定ファイルの認証チェックに利用する対象ファイルが存在しないと判定すると(S600においてNO)、プログラム起動部131はステップS606に進み、設定ファイルの認証チェックがNGと判定する。
【0081】
例えばマウント対象モジュールの認証チェックは、図10に表したフローチャートのように行われる。図10は、マウント対象モジュールの認証チェックの処理の一例のフローチャートである。
【0082】
ステップS610では、プログラム起動部131が、アプリ追加用SDカード140にマウント対象モジュールの認証チェックに利用する対象ファイルが存在するか否かを判定する。マウント対象モジュールの認証チェックに利用する対象ファイルは、マウント対象のモジュールファイルと、モジュールファイルおよび融合機31に固有の機種情報のMDから作成された電子署名ファイルとを含む。
【0083】
マウント対象モジュールの認証チェックに利用する対象ファイルが存在すると判定すると(S610においてYES)、プログラム起動部131はアプリ追加用SDカード140からマウント対象のモジュールファイルおよびマウント対象のモジュールファイルの認証チェックに利用する電子署名ファイルを取得してステップS611に進む。
【0084】
ステップS611では、プログラム起動部131が、融合機31に固有の機種情報を取得する。ステップS612に進み、プログラム起動部131はステップS610で取得したモジュールファイルと、ステップS611で取得した融合機31に固有の機種情報とのMD1を作成する。ステップS613に進み、プログラム起動部131はステップS610で取得した電子署名ファイルを公開鍵で復号化してMD2を作成する。
【0085】
ステップS614に進み、プログラム起動部131はMD1とMD2とが等しいか否かを判定する。MD1とMD2とが等しいと判定すると(S614においてYES)、プログラム起動部131はステップS615に進み、マウント対象モジュールの認証チェックがOKと判定する。
【0086】
一方、MD1とMD2とが等しくないと判定すると(S614においてNO)、プログラム起動部131はステップS616に進み、マウント対象モジュールの認証チェックがNGと判定する。
【0087】
MD1とMD2とが等しくなければ、アプリ追加用SDカード140に記録されているファイルはコピーや改竄などの不正を受けた可能性が高いためである。なお、マウント対象モジュールの認証チェックに利用する対象ファイルが存在しないと判定すると(S610においてNO)、プログラム起動部131はステップS616に進み、マウント対象モジュールの認証チェックがNGと判定する。
【0088】
図7に戻り、プログラム起動部131はアプリ追加用SDカード140の認証チェックがOKであればステップS106に進み、NGであればイベント待ち状態に戻る。
【0089】
ステップS106では、プログラム起動部131が、アプリ追加用SDカード140内のプログラム追加モジュールを利用してプログラム追加部133を起動させる。
【0090】
ステップS107では、プログラム追加部133が、アプリ起動用SDカード141のシリアルIDをアプリ起動用SDカード141から取得する。プログラム追加部133は、取得したアプリ起動用SDカード141のシリアルIDを公開鍵で暗号化する。
【0091】
ステップS108では、プログラム追加部133が、暗号化されたアプリ起動用SDカード141のシリアルIDを図11のようにアプリ追加用SDカード140に書き込んで処理を終了する。
【0092】
図11は、暗号化されたアプリ起動用SDカードのシリアルIDが記録されたアプリ追加用SDカードの一例のイメージ図である。図11の例では、「sdid.dat」が暗号化されたアプリ起動用SDカード141のシリアルIDを表している。図7の処理によれば、暗号化されたアプリ起動用SDカード141のシリアルIDが記録された図11のようなアプリ追加用SDカード140を作成できる。
【0093】
図12は、ステップS300の処理の一例の説明図である。ステップS301では、サーバ150が、SDカード用スロット151に挿入されたアプリ追加用SDカード140から暗号化されたアプリ起動用SDカード141のシリアルID152を読み出す。ステップS302では、サーバ150が、入力装置などから入力された機種情報153およびアプリ情報154を取得する。
【0094】
機種情報153とは、融合機31に固有の情報である。また、アプリ情報154とは、アプリ追加用SDカード140を用いて融合機31のアプリ起動用SDカード141に追加するアプリの情報である。
【0095】
ステップS303では、サーバ150が、ステップS301で読み出したシリアルID152を秘密鍵で復号化する。また、ステップS304では、サーバ150が、機種情報153およびアプリ情報154に対応した設定ファイル「apl.cnf」,マウント対象のモジュール「apl.mod」およびマウント対象モジュールの認証チェックに利用する電子署名ファイル「apl.mac」の群155を選択する。
【0096】
ステップS305では、サーバ150が、ステップS304で選択された群155から設定ファイル「apl.cnf」157を読み出す。そして、ステップS306では、サーバ150が、復号化されたアプリ起動用SDカード141のシリアルID156及びステップS305で読み出された設定ファイル157からMD158を作成する。
【0097】
ステップS307では、サーバ150が、ステップS306で作成したMD158を秘密鍵で暗号化して、設定ファイルの認証チェックに利用する電子署名ファイル「apl.lic」159を作成する。ステップS308では、サーバ150が、ステップS307で作成した電子署名ファイル159を群155に追加した新たな群160を作成する。ステップS309では、サーバ150が、ステップS307で作成された群160を図13のようにアプリ追加用カード140に書き込んで処理を終了する。
【0098】
図13は、アプリ起動用SDカード141にプログラムを追加するためのファイルが記録されたアプリ追加用SDカードの一例のイメージ図である。図13の例では、「apl.cnf」が設定ファイルを表し,「apl.lic」が設定ファイルの認証チェックに利用する電子署名ファイルを表し,「apl.mod」がマウント対象のモジュールを表し、「apl.mac」がマウント対象モジュールの認証チェックに利用する電子署名ファイルを表している。
【0099】
図12の処理によれば、アプリ起動用SDカード141にプログラムを追加するためのファイルが記録された図13のようなアプリ追加用SDカード140を作成できる。
【0100】
図14は、ステップS500の処理の一例の説明図である。なお、図14の説明図では融合機31の構成のうち説明に必要な構成を表し、説明に必要のない構成を省略している。
【0101】
ステップS501では、融合機31のSDカード用スロット110に図14のようなアプリ追加用SDカード140が挿入される。SDカード用スロット110は、アプリ追加用SDカード140の挿入に応じた割り込みをSDカードドライバ137に対して行う。
【0102】
ステップS502では、OS136が、SDカードドライバ137に対する割り込みに応じてプログラム起動部131にSDカードの挿入検知を通知する。ステップS503では、プログラム起動部131が、SDカードチェック部132を起動させる。ステップS504では、SDカードチェック部132がアプリ追加用SDカード140のマウントを行い、アプリ追加用SDカード140のマウントを行った旨をプログラム起動部131に通知して処理を停止する。
【0103】
アプリ追加用SDカード140のマウントを行った旨が通知されると、ステップS505に進み、プログラム起動部131はアプリ追加用SDカード140のマウントを行った旨をSCS68に通知する。
【0104】
ステップS506では、SCS68が、アプリ追加用SDカード140からディレクトリ「addmod」の下の設定ファイル「apl.cnf」,設定ファイルの認証チェックに利用する電子署名ファイル「apl.lic」,マウント対象のモジュール「apl.mod」およびマウント対象モジュールの認証チェックに利用する電子署名ファイル「apl.mac」を読み出し、電子認証チェック用ライブラリ138を用いて認証チェックを行う。
【0105】
ステップS506での認証チェックは、例えば図8に表した設定ファイルの認証チェックと図10に表したマウント対象モジュールの認証チェックとを有している。ステップS506での認証チェックの詳細について、前述した図8および図10を用いて説明する。
【0106】
図8のステップS600では、SCS68が、アプリ追加用SDカード140に設定ファイルの認証チェックに利用する対象ファイル、例えば図13のアプリ追加用SDカード140の場合、設定ファイル「apl.cnf」,設定ファイルの認証チェックに利用する電子署名ファイル「apl.lic」が存在したか否かを判定する。
【0107】
設定ファイル「apl.cnf」,設定ファイルの認証チェックに利用する電子署名ファイル「apl.lic」が存在したと判定したと(S600においてYES)、SCS68はステップS601に進む。
【0108】
ステップS601では、SCS68が、アプリ追加用SDカード140でなくアプリ起動用SDカード141からシリアルIDを取得する。ステップS602に進み、SCS68は設定ファイル「apl.cnf」と、ステップS601で取得したアプリ起動用SDカード141のシリアルIDとのMD1を作成する。ステップS603に進み、SCS68は設定ファイルの認証チェックに利用する電子署名ファイル「apl.lic」を公開鍵で復号化してMD2を作成する。
【0109】
ステップS604に進み、SCS68はMD1とMD2とが等しいか否かを判定する。MD1とMD2とが等しいと判定すると(S604においてYES)、SCS68はステップS605に進み、設定ファイルの認証チェックがOKと判定する。一方、MD1とMD2とが等しくないと判定すると(S24においてNO)、SCS68はステップS606に進み、設定ファイルの認証チェックがNGと判定する。
【0110】
MD1とMD2とが等しくなければ、アプリ追加用SDカード140に記録されていたファイルは、ステップS601でシリアルIDを取得したアプリ起動用SDカード141でなく、他のアプリ起動用SDカードにプログラムを追加するために作成された可能性が高いためである。
【0111】
なお、設定ファイルの認証チェックに利用する設定ファイル「apl.cnf」,電子署名ファイル「apl.lic」が存在しないと判定すると(S600においてNO)、SCS68はステップS606に進み、設定ファイルの認証チェックがNGと判定する。
【0112】
図10のステップS610では、SCS68が、アプリ追加用SDカード140にマウント対象モジュールの認証チェックに利用する対象ファイル、例えば図13のアプリ追加用SDカード140の場合、マウント対象のモジュール「apl.mod」,マウント対象モジュールの認証チェックに利用する電子署名ファイル「apl.mac」が存在したか否かを判定する。
【0113】
マウント対象のモジュール「apl.mod」,マウント対象モジュールの認証チェックに利用する電子署名ファイル「apl.mac」が存在したと判定すると(S610においてYES)、SCS68はステップS611に進む。ステップS611では、SCS68が、融合機31に固有の機種情報を取得する。ステップS612に進み、SCS68はマウント対象のモジュール「apl.mod」と、ステップS611で取得した融合機31に固有の機種情報とのMD1を作成する。
【0114】
ステップS613に進み、SCS68はマウント対象モジュールの認証チェックに利用する電子署名ファイル「apl.mac」を公開鍵で復号化してMD2を作成する。
【0115】
ステップS614に進み、SCS68はMD1とMD2とが等しいか否かを判定する。MD1とMD2とが等しいと判定すると(S614においてYES)、SCS68はステップS615に進み、マウント対象モジュールの認証チェックがOKと判定する。一方、MD1とMD2とが等しくないと判定すると(S614においてNO)、SCS68はステップS616に進み、マウント対象モジュールの認証チェックがNGと判定する。
【0116】
MD1とMD2とが等しくなければ、アプリ追加用SDカード140に記録されていたファイルは、ステップS611で固有の機種情報を取得した融合機31でなく、他の融合機にプログラムを追加するために作成された可能性が高いためである。なお、マウント対象モジュールの認証チェックに利用する設定ファイル「apl.cnf」,電子署名ファイル「apl.lic」が存在しないと判定すると(S610においてNO)、SCS68はステップS616に進み、マウント対象モジュールの認証チェックがNGと判定する。
【0117】
図14に戻り、SCS68はステップS506の認証チェックがOKであればステップS507に進み、NGであればイベント待ち状態に戻る。ステップS507では、SCS68が、アプリ追加用SDカード140から読み出した設定ファイル「apl.cnf」,設定ファイルの認証チェックに利用する電子署名ファイル「apl.lic」,マウント対象のモジュール「apl.mod」およびマウント対象モジュールの認証チェックに利用する電子署名ファイル「apl.mac」を用いて、アプリ起動用SDカード141にプログラムが追加される。
【0118】
ステップS507では、SCS68が、設定ファイル「apl.cnf」,設定ファイルの認証チェックに利用する電子署名ファイル「apl.lic」,マウント対象のモジュール「apl.mod」およびマウント対象モジュールの認証チェックに利用する電子署名ファイル「apl.mac」を図15のようにアプリ起動用カード141に書き込んで処理を終了する。
【0119】
図15は、アプリ追加用SDカードによりプログラムを追加されたアプリ起動用SDカードの一例のイメージ図である。図15の例では、ディレクトリ「init.d」の下の「apl.cnf」が設定ファイルを表し,「apl.lic」が設定ファイルの認証チェックに利用する電子署名ファイルを表す。また、ディレクトリ「module」の下の「apl.mod」がマウント対象のモジュールを表し、「apl.mac」がマウント対象モジュールの認証チェックに利用する電子署名ファイルを表している。
【0120】
本実施例では、融合機31の処理を中心に説明したが、図1及び図2に示した情報処理装置1への適用が容易である。また、本発明は具体的に開示された実施例に限定されるものではなく、特許請求のの範囲から逸脱することなく、種々の変形や変更が可能である。
【0121】
【発明の効果】
上述の如く、本発明によれば、挿抜可能なプログラム追加用記録媒体に記録されたプログラムの安全性を確保しつつ、プログラム追加用記録媒体からプログラム起動用記録媒体にプログラムを追加できる。
【0122】
【図面の簡単な説明】
【図1】本発明による情報処理装置の一実施例の構成図である。
【図2】本発明による情報処理装置の一実施例のハードウェア構成図である。
【図3】本発明による融合機の一実施例の構成図である。
【図4】本発明による融合機の一実施例のハードウェア構成図である。
【図5】融合機起動部の一例の構成図を示す。
【図6】アプリ追加用SDカードからアプリ起動用SDカードにプログラムを追加する処理の一例の概略図である。
【図7】ステップS100の処理の一例の説明図である。
【図8】設定ファイルの認証チェックの処理の一例のフローチャートである。
【図9】アプリ追加用SDカードに記録された対象ファイルの一例のイメージ図である。
【図10】マウント対象モジュールの認証チェックの処理の一例のフローチャートである。
【図11】暗号化されたアプリ起動用SDカードのシリアルIDが記録されたアプリ追加用SDカードの一例のイメージ図である。
【図12】ステップS300の処理の一例の説明図である。
【図13】アプリ起動用SDカード141にプログラムを追加するためのファイルが記録されたアプリ追加用SDカードの一例のイメージ図である。
【図14】ステップS500の処理の一例の説明図である。
【図15】アプリ追加用SDカードによりプログラムを追加されたアプリ起動用SDカードの一例のイメージ図である。
【符号の説明】
1 情報処理装置
2,32 ソフトウェア群
3 起動部
4 ハードウェア資源
11,132 SDカードチェック部
12,133 プログラム追加部
13 システム制御部
27,110 SDカード用スロット
31 融合機
33 融合機起動部
34 ハードウェア資源
68 SCS
131 プログラム起動部
136 オペレーティングシステム(OS)
137 SDカードドライバ
140 アプリ追加用SDカード
141 アプリ起動用SDカード
150 サーバ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an information processing apparatus, an image forming apparatus, and a program addition method, and more particularly to an information processing apparatus, an image forming apparatus, and a program addition method for adding a program to a program start recording medium using a program addition recording medium.
[0002]
[Prior art]
An information processing apparatus such as a personal computer performs various information processing by executing one or more programs respectively corresponding to information processing. In addition, an image forming apparatus (hereinafter referred to as a multifunction machine) as an application example of an information processing apparatus is provided with a display unit, a printing unit, an imaging unit, and the like in a single housing, and corresponds to a printer, a copy, a facsimile, and a scanner, respectively. These four types of programs are provided, and the programs are switched to operate as a printer, a copy, a facsimile, and a scanner. Patent Document 1 describes an example of a fusion machine as described above.
[0003]
In such an information processing apparatus or multi-function apparatus, a basic input / output system (BIOS) and a boot loader (boot loader) are activated after the power is turned on. The boot loader starts up the OS by expanding an operating system (OS) and a root file system on a RAM (Random Access Memory). Then, the OS mounts the root file system. Here, “mount” refers to starting up a file system or peripheral device in an accessible state.
[0004]
After the OS is started, a start program for starting a program such as an application (hereinafter referred to as an application) is started. The activation program is a process that is activated first in the information processing apparatus or the multifunction peripheral.
[0005]
The activation program is necessary for the operation of the information processing apparatus or the multifunction peripheral mounted on the program activation recording medium such as a hard disk device (HDD) or an SD (Secure Digital) card by mounting the file system according to a predetermined setting file. The program is started according to a predetermined setting file.
[0006]
In recent years, there has been an increasing demand to add programs for information processing apparatuses and multifunction peripherals to a program start recording medium using a program addition recording medium such as an SD card.
[0007]
[Patent Document 1]
JP 2002-84383 A
[0008]
[Problems to be solved by the invention]
However, since a recording medium for program addition using a removable recording medium such as an SD card can be used in order by one or more information processing apparatuses or multifunction peripherals, there is no right (license) to add the program. There is a risk that a program may be added to the information processing apparatus or the multifunction peripheral.
[0009]
Therefore, when a program is added from an insertable / unpluggable recording medium for program addition to a recording medium for program start of an information processing apparatus or a multifunction machine, a mechanism is provided to prevent unauthorized use of the program recorded on the recording medium for program addition. There was a problem that the safety of the program had to be ensured.
[0010]
The present invention has been made in view of the above points, and adds a program from a recording medium for program addition to a recording medium for program startup while ensuring the safety of the program recorded on the removable recording medium for program addition. An object is to provide an information processing apparatus, an image forming apparatus, and a program addition method.
[0011]
[Means for Solving the Problems]
Therefore, in order to solve the above-described problem, the present invention has a slot into which a plurality of recording media can be inserted and removed, and another one of the slots using a recording medium for program addition inserted into one of the slots. A program to the program start recording medium inserted in An information processing device Determining means for determining insertion of the program addition recording medium into the slot, and determining that the program addition recording medium has been inserted into the slot, obtains identification information of the program start recording medium and adds the program Writing means for writing to the recording medium When it is determined that the program addition recording medium in which the file for adding the program to the slot is written is inserted, the file is read from the program addition recording medium, and the file is checked according to the result of the authentication check. Adding means for adding a file read from the program addition recording medium to the program activation recording medium; Have The determination means is a monitoring means for monitoring insertion / extraction of the recording medium with respect to the slot, and an authentication check means for performing an authentication check for determining whether the recording medium inserted into the slot is a recording medium for program addition. And the writing means is read from the recording medium for program addition and activated by an instruction from the judging means when it is determined that the recording medium for program addition has been inserted into the slot. It is characterized by that.
[0013]
Further, the present invention is a program addition method for a system including a server for creating a program addition recording medium and an information processing apparatus for adding the program to the program activation recording medium using the program addition recording medium, An identification information writing step in which the information processing apparatus writes identification information of a program activation recording medium to a program addition recording medium, and the server reads identification information of the program activation recording medium from the program addition recording medium, A file writing step of creating an electronic signature file of the predetermined file using the identification information and writing the predetermined file and the electronic signature file to the recording medium for program addition; and File and digital signature file were read and digital signature file was used According to the authentication result of the check in the constant file, and having a program additional step of adding a predetermined file, and an electronic signature file read from the program additional recording medium program starting recording medium.
[0014]
The present invention is also a program addition method for a system including a server for creating a program addition recording medium and an image forming apparatus for adding a program to a program activation recording medium using the program addition recording medium, An identification information writing step in which the image forming apparatus writes identification information of a program start recording medium to a program addition recording medium, and the server reads the identification information of the program start recording medium from the program addition recording medium, A file writing step of creating an electronic signature file of a predetermined file using the identification information, and writing the predetermined file and the electronic signature file to a program addition recording medium, and the image forming apparatus from the program addition recording medium File and digital signature file were read and digital signature file was used According to the authentication result of the check in the constant file, and having a program additional step of adding a predetermined file, and an electronic signature file read from the program additional recording medium program starting recording medium.
[0015]
According to the present invention, a program addition recording medium for adding a program to the program activation recording medium can be created so that it can be used only by one program activation recording medium corresponding to the program addition recording medium. Starting a program from a program addition recording medium while preventing unauthorized addition of a program to a plurality of program startup recording media and ensuring the safety of the program recorded on the removable program addition recording medium A program can be added to the recording medium.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of the present invention will be described with reference to the drawings.
[0017]
FIG. 1 is a configuration diagram of an embodiment of an information processing apparatus according to the present invention. The information processing apparatus 1 is configured to include a software group 2, an activation unit 3, and hardware resources 4.
[0018]
The activation unit 3 is executed first when the information processing apparatus 1 is turned on, and activates a program activation unit described later. The program activation unit activates the software group 2 of the information processing apparatus 1. For example, the program activation unit of the activation unit 3 reads the program of the SD card check unit 11, the program addition unit 12, the system control unit 13, and the applications 14-1 to 14-n from the auxiliary storage device, the SD card, etc. Transfer the program to the memory device and start it.
[0019]
The hardware resource 4 includes hardware resources such as an input device, a display device, an auxiliary storage device, a memory device, an interface device, and an SD card slot. The software group 2 includes programs of an SD card check unit 11, a program addition unit 12, a system control unit 13, and applications 14-1 to 14-n activated on an OS such as UNIX (registered trademark). The OS performs parallel control of the programs of the SD card check unit 11, the program addition unit 12, the system control unit 13, and the applications 14-1 to 14-n as processes.
[0020]
An API (Application Program Interface) 15 is used to receive requests from the applications 14-1 to 14-n by a predefined function. The engine I / F 16 is used to transmit a request for the hardware resource 4 by a predefined function. Details of the SD card check unit 11, the program addition unit 12, the system control unit 13, and the program activation unit will be described later.
[0021]
Next, the hardware configuration of the information processing apparatus 1 will be described. FIG. 2 is a hardware configuration diagram of an embodiment of an information processing apparatus according to the present invention.
[0022]
2 includes an input device 21, a display device 22, an auxiliary storage device 23, a memory device 24, an arithmetic processing device 25, an interface device 26, and an SD card slot 27, which are mutually connected by a bus B. It is comprised so that it may have.
[0023]
The input device 21 includes a keyboard and a mouse, and is used to input various operation instructions. The display device 22 displays various windows and data necessary for operation. The interface device 26 is an interface for connecting the information processing device 1 to a network, and includes a modem, a router, and the like.
[0024]
The SD card slot 27 is a slot into which an SD card can be inserted and removed, and performs an interrupt in response to the insertion or removal of the SD card to an SD card driver described later. The auxiliary storage device 23 stores various files and data.
[0025]
The SD card and the auxiliary storage device 23 inserted into the SD card slot 27 are an SD card check unit 11, a program addition unit 12, a system control unit 13, and applications 14-1 to 14 that perform processing related to the information processing device 1. In addition to storing programs such as -n, various files and data necessary for processing the programs are stored.
[0026]
The memory device 24 includes an SD card check unit 11, a program addition unit 12, a system control unit 13, and applications 14-1 from the SD card inserted into the SD card slot 27 and the auxiliary storage device 23 when the information processing device 1 is activated. A program such as 14-n is read and stored. The arithmetic processing unit 25 executes processing according to programs such as the SD card check unit 11, the program addition unit 12, the system control unit 13, and the applications 14-1 to 14-n stored in the memory device 24.
[0027]
Next, the configuration of the compound machine 31 will be described as an application example of the information processing apparatus 1 according to the present invention. In this embodiment, the processing of the multi-function apparatus 31 will be mainly described, but the processing of the information processing apparatus 1 is the same.
[0028]
FIG. 3 is a block diagram of an embodiment of the compound machine according to the present invention. The multi-function machine 31 is configured to include a software group 32, a multi-function machine activation unit 33, and hardware resources 34.
[0029]
The software group 32 includes an application layer 35 and a platform 36 activated on an OS such as UNIX (registered trademark). The hardware resources 34 include a monochrome laser printer (B & W LP) 41, a color laser printer (Color LP) 42, and other hardware resources 43 such as a scanner and a facsimile.
[0030]
The application layer 35 includes a printer application 51, a copy application 52, a fax application 53, a scanner application 54, and a net file application that perform processing specific to user services related to image formation such as a printer, copy, fax, and scanner. 55.
[0031]
Further, the platform 36 interprets the processing request from the application layer 35 and generates a hardware resource 34 acquisition request, and manages the hardware resource 34 and acquires the acquisition request from the control service layer 37. Including a system resource manager (SRM) 69 that arbitrates and a handler layer 38 that manages hardware resources 34 in response to an acquisition request from the SRM 69.
[0032]
The control service layer 37 includes a network control service (NCS) 61, a delivery control service (DCS) 62, an operation panel control service (OCS) 63, a fax control service (FCS) 64, an engine control service (ECS) 65, and a memory control service. (MCS) 66, user information control service (UCS) 67, system control service (SCS) 68, and the like are configured to include one or more service modules.
[0033]
The platform 36 is configured to have an API 81. The OS executes the software of the application layer 35 and the platform 36 in parallel as processes.
[0034]
The process of the NCS 61 distributes data received by each protocol from the network side to each application, and mediates when data from each application is transmitted to the network side. For example, the NCS 61 controls data communication with a client connected to the multi-function apparatus 31 via a network.
[0035]
The process of the DCS 62 performs control such as delivery of document data stored in the compound machine. The process of the OCS 63 controls an operation panel serving as information transmission means between the operator and the main body control.
[0036]
The FCS64 process provides APIs for sending and receiving faxes using the PSTN or ISDN network from the application layer 35, registering / quoting various fax data managed in the backup memory, reading faxes, receiving fax printing, etc. To do.
[0037]
The ECS 65 process controls engine units such as the monochrome laser printer 41, the color laser printer 42, and the hardware resource 43. The process of the MCS 66 performs memory control such as acquisition and release of memory, use of the HDD, compression and decompression of image data. The UCS 67 process manages user information.
[0038]
The process of the SCS 68 performs processing such as application management, operation unit control, system screen display, LED display, hardware resource management, and interrupt application control.
[0039]
The SRM 69 process controls the system and manages the hardware resources 34 together with the SCS 68. For example, the process of the SRM 69 performs execution control in accordance with an acquisition request from an upper layer using the hardware resource 34.
[0040]
Specifically, the process of the SRM 69 determines whether the requested hardware resource 34 is available (whether it is not used by another acquisition request), and if it is available, the requested hardware is obtained. The upper layer is notified that the resource 34 is available.
[0041]
In addition, the process of the SRM 69 performs scheduling for using the hardware resource 34 in response to an acquisition request from an upper layer, and the request contents (for example, paper conveyance and image forming operation by the printer engine, memory allocation, file generation, etc.) Has been implemented directly.
[0042]
The handler layer 38 includes a fax control unit handler (FCUH) 70 that manages a fax control unit (FCU), which will be described later, and an image memory handler (IMH) that allocates a memory area for the process and manages the memory area allocated to the process. 71. The SRM 69 and the FCUH 70 use the engine I / F 82 to make a processing request for the hardware resource 34. With the configuration shown in FIG. 3, the multi-function apparatus 31 can centrally process the processes commonly required for each application by the platform 36.
[0043]
Next, the hardware configuration of the compound machine 31 will be described. FIG. 4 is a hardware configuration diagram of an embodiment of the compound machine according to the present invention.
[0044]
The multi-function machine 31 includes a controller 100, an operation panel 120, an FCU 121, and an engine unit 122. The controller 100 includes a CPU 101, a system memory 102, a north bridge (NB) 103, a south bridge (SB) 104, an ASIC 106, a local memory 107, an HDD 108, a network interface card (NIC) 109, and an SD card. Slot 110, USB device 111, IEEE 1394 device 112, and Centronics 113.
[0045]
The operation panel 120 is connected to the ASIC 106 of the controller 100. Further, the FCU 121 and the engine unit 122 are connected to the ASIC 106 of the controller 100 via the PCI bus 123.
[0046]
In the controller 100, a local memory 107, an HDD 108, and the like are connected to the ASIC 106, and the CPU 101 and the ASIC 106 are connected to each other via the NB 103 of the CPU chip set. The controller 100 corresponds to the case where the interface of the CPU 101 is not disclosed by connecting the CPU 101 and the ASIC 106 via the NB 103. The ASIC 106 and the NB 103 are connected via an AGP (Accelerated Graphics Port) 105.
[0047]
Thus, in order to control the execution of one or more processes forming the application layer 35 and the platform 36 in FIG. 3, the ASIC 106 and the NB 103 are connected via the AGP 105 instead of the low-speed PCI bus to prevent performance degradation. It is out.
[0048]
The CPU 101 performs overall control of the compound machine 31. For example, the CPU 101 starts and executes NCS61, DCS62, OCS63, FCS64, ECS65, MCS66, UCS67, SCS68, SRM69, FCUH70, and IMH71 as processes on the OS, and at the same time, the printer application 51 that forms the application layer 35, the copy The application 52, the fax application 53, the scanner application 54, and the net file application 55 are activated and executed.
[0049]
The NB 103 is a bridge for connecting the CPU 101, system memory 102, SB 104, ASIC 106, NIC 109, SD card slot 110, USB device 111, IEEE 1394 device 112, and Centronics 113.
[0050]
The SB 104, NIC 109, SD card slot 110, USB device 111, IEEE 1394 device 112, and Centronics 113 are connected to the NB 103 via the PCI bus 114. The SB 104 is a bridge for connecting the PCI bus 114 to the ROM, peripheral devices, and the like.
[0051]
The system memory 102 is a memory used as a drawing memory of the multi-function apparatus 31. The local memory 107 is a memory used as a copy image buffer and a code buffer.
[0052]
The ASIC 106 is an IC for image processing applications having hardware elements for image processing. The HDD 108 is an example of a storage (auxiliary storage device) that stores image data, document data, programs, font data, forms, and the like.
[0053]
The NIC 109 is an interface device that connects the compound machine 31 to a network. The SD card slot 110 is a slot into which an SD card can be inserted / removed, and an interrupt corresponding to the insertion / extraction of the SD card is performed to an SD card driver described later. The USB device 111, the IEEE 1394 device 112, and the Centronics 113 are interfaces conforming to the respective standards.
[0054]
The operation panel 120 is an operation unit that accepts an input operation from an operator and performs display for the operator. The FCU 121 has a memory. The memory of the FCU 121 is used for temporarily storing facsimile data received when the power of the multi-function apparatus 31 is OFF, for example.
[0055]
The compound machine starting unit 33 in FIG. 3 is executed first when the compound machine 1 is turned on, and activates the application layer 35 and the platform 36. FIG. 5 shows a configuration diagram of an example of the compound machine starting unit. The multi-function apparatus activation unit 33 includes a ROM monitor 130 and a program activation unit 131.
[0056]
The BIOS and the ROM monitor 130 as a boot loader are executed when the power is turned on, and perform initialization of hardware, diagnosis of the controller 100, initialization of software, and the like. The ROM monitor 130 expands the OS and the root file system on the system memory 102 and activates the OS. Then, the OS mounts the root file system.
[0057]
The program activation unit 131 is called from the OS and secures a memory area on the system memory 102 and the local memory 107. The program activation unit 131 is a process that is activated first in the multifunction machine 1 and mounts a file system according to a predetermined setting file.
[0058]
The program activation unit 131 reads out the programs of the application layer 35 and the platform 36 necessary for the operation of the multi-function apparatus 31 from the HDD 108, the SD card, the ROM, etc. according to a predetermined setting file, and the read programs are the system memory 102 and the local memory 107. The process of the application layer 35 and the platform 36 is started by expanding the memory area secured above.
[0059]
Furthermore, the process of the program starting part 131 is demonstrated. The program activation unit 131 reads a predetermined master setting file at the time of activation, and mounts a file system and activates a process according to the read master setting file. Further, when there is a mount description in the read master setting file, the program activation unit 131 executes a mount process according to the mount description.
[0060]
Further, the program activation unit 131 sets a predetermined setting when a predetermined setting file exists at the root of the mounted file system or when a predetermined directory including a file with a predetermined extension exists at the root of the mounted file system. A file or a file with a predetermined extension is read to mount the file system.
[0061]
A file system that can be mounted by the program activation unit 131 includes “gzromfs”. The file system “gzromfs” expands and mounts a gzip compressed ROMFS format file on a RAM.
[0062]
Hereinafter, an example of adding a program from an application adding SD card as a program adding recording medium to an application starting SD card as a program starting recording medium will be described.
[0063]
FIG. 6 is a schematic diagram illustrating an example of processing for adding a program from the application addition SD card to the application activation SD card. The multi-function apparatus 31 has an application activation SD card 141 inserted in one of the SD card slots 110, and is an apparatus that adds a program to the application activation SD card 141 using the application addition SD card 140. is there. The server 150 is a device that creates a file for adding a program to the application activation SD card 141 and writes the file to the application addition SD card 140.
[0064]
In step S100, the application addition SD card 140 is inserted into the SD card slot 110 of the multi-function apparatus 31, and the encrypted serial ID of the application activation SD card 141 is written into the application addition SD card 140.
[0065]
In step S200, the application addition SD card 140 in which the serial ID of the encrypted application activation SD card 141 is written is taken to the installation location of the server 150 by, for example, a service person who performs maintenance of the multi-function apparatus 31. . The application addition SD card 140 in which the serial ID of the encrypted application activation SD card 141 is written may be mailed to the installation location of the server 150.
[0066]
In step S300, the application addition SD card 140 is inserted into the SD card slot of the server 150, and the serial ID of the encrypted application activation SD card 141 written in the application addition SD card 140 is the server 150. Is read out. The server 150 creates a file for adding a program to the application activation SD card 141 and writes the file to the application addition SD card 140.
[0067]
In step S400, the application addition SD card 140 in which a file for adding a program is written to the application activation SD card 141 is held by the service person who performs maintenance of the multi-function apparatus 31, for example, up to the installation position of the multi-function apparatus 31. To go. Note that the application addition SD card 140 in which a file for adding a program to the application activation SD card 141 is written may be mailed to the installation location of the compound machine 31.
[0068]
In step S500, an application addition SD card 140 in which a file for adding a program to the application activation SD card 141 is inserted into the SD card slot 110 of the multi-function apparatus 31, and an authentication check as described later is performed. Done. If the authentication check is OK, the program is added to the application activation SD card 141 using the file for adding the program to the application activation SD card 141 written in the application addition SD card 140.
[0069]
Next, the processing in steps S100, S300, and S500 in FIG. 6 will be described in detail. FIG. 7 is an explanatory diagram of an example of the process of step S100. In the explanatory diagram of FIG. 7, a configuration necessary for the description of the configuration of the multi-function apparatus 31 is shown, and a configuration unnecessary for the description is omitted.
[0070]
In step S101, the application adding SD card 140 is inserted into the SD card slot 110 of the multi-function apparatus 31. The SD card slot 110 interrupts the SD card driver 137 in accordance with the insertion of the application adding SD card 140.
[0071]
In step S <b> 102, the OS 136 notifies the program activation unit 131 of SD card insertion detection in response to an interrupt to the SD card driver 137. In step S103, the program activation unit 131 activates the SD card check unit 132. In step S104, the SD card checking unit 132 mounts the application adding SD card 140, notifies the program starting unit 131 that the application adding SD card 140 has been mounted, and stops the processing.
[0072]
When it is notified that the application addition SD card 140 has been mounted, the process proceeds to step S105, where the program activation unit 131 performs an authentication check of the application addition SD card 140 using the electronic authentication check library 134.
[0073]
The authentication check in step S105 includes, for example, a setting file authentication check shown in FIG. 8 and a mount target module authentication check shown in FIG.
[0074]
For example, the authentication check of the setting file is performed as in the flowchart shown in FIG. FIG. 8 is a flowchart of an example of a setting file authentication check process.
[0075]
In step S <b> 600, the program activation unit 131 determines whether or not the application addition SD card 140 has a target file to be used for the setting file authentication check. The target file used for the authentication check of the setting file includes the setting file and an electronic signature file created from the setting file and a message digest (hereinafter referred to as MD) of the serial ID of the application adding SD card 140.
[0076]
FIG. 9 is an image diagram of an example of a target file recorded on the application adding SD card. In the example of FIG. 9, “inst.cnf” represents the setting file, “inst.lic” represents the electronic signature file used for the authentication check of the setting file, and “inst.mod” represents the module file to be mounted. , “Inst.mac” represents an electronic signature file used for the authentication check of the mount target module.
[0077]
If it is determined that there is a target file used for the authentication check of the setting file (YES in S600), the program activation unit 131 acquires the setting file and the electronic signature file used for the authentication check of the setting file from the application adding SD card 140. Then, the process proceeds to step S601.
[0078]
In step S <b> 601, the program activation unit 131 acquires a serial ID from the application adding SD card 140. In step S603, the program activation unit 131 creates MD1 of the setting file acquired in step S600 and the serial ID of the application addition SD card 140 acquired in step S601. In step S603, the program activation unit 131 creates MD2 by decrypting the electronic signature file acquired in step S600 with a public key.
[0079]
In step S604, the program activation unit 131 determines whether MD1 and MD2 are equal. If it is determined that MD1 and MD2 are equal (YES in S604), the program activation unit 131 proceeds to step S605, and determines that the setting file authentication check is OK. On the other hand, if it is determined that MD1 and MD2 are not equal (NO in S24), the program activation unit 131 proceeds to step S606 and determines that the setting file authentication check is NG.
[0080]
This is because, if MD1 and MD2 are not equal, the file recorded on the application adding SD card 140 is likely to be illegally copied. If it is determined that the target file to be used for the setting file authentication check does not exist (NO in S600), the program activation unit 131 proceeds to step S606 and determines that the setting file authentication check is NG.
[0081]
For example, the authentication check of the mount target module is performed as in the flowchart shown in FIG. FIG. 10 is a flowchart of an example of the authentication check process for the mount target module.
[0082]
In step S610, the program activation unit 131 determines whether or not a target file to be used for the authentication check of the mount target module exists in the application adding SD card 140. The target file used for the authentication check of the mount target module includes a mount target module file and an electronic signature file created from the module file and the MD of the model information unique to the multi-function apparatus 31.
[0083]
If it is determined that there is a target file to be used for the authentication check of the mount target module (YES in S610), the program activation unit 131 is used for the authentication check of the mount target module file and the mount target module file from the application adding SD card 140. The electronic signature file to be acquired is acquired, and the process proceeds to step S611.
[0084]
In step S <b> 611, the program activation unit 131 acquires model information unique to the multifunction machine 31. In step S612, the program activation unit 131 creates MD1 of the module file acquired in step S610 and the model information unique to the MFP 31 acquired in step S611. In step S613, the program activation unit 131 creates MD2 by decrypting the electronic signature file acquired in step S610 with the public key.
[0085]
In step S614, the program activation unit 131 determines whether MD1 and MD2 are equal. If it is determined that MD1 and MD2 are equal (YES in S614), the program activation unit 131 proceeds to step S615 and determines that the authentication check of the mount target module is OK.
[0086]
On the other hand, if it is determined that MD1 and MD2 are not equal (NO in S614), the program activation unit 131 proceeds to step S616 and determines that the authentication check of the mount target module is NG.
[0087]
This is because, if MD1 and MD2 are not equal, the file recorded on the application adding SD card 140 is likely to have been illegally copied or tampered. If it is determined that the target file to be used for the authentication check of the mount target module does not exist (NO in S610), the program activation unit 131 proceeds to step S616 and determines that the authentication check of the mount target module is NG.
[0088]
Returning to FIG. 7, if the authentication check of the application adding SD card 140 is OK, the program activation unit 131 proceeds to step S106, and if it is NG, the program activation unit 131 returns to the event waiting state.
[0089]
In step S <b> 106, the program activation unit 131 activates the program addition unit 133 using the program addition module in the application addition SD card 140.
[0090]
In step S107, the program adding unit 133 acquires the serial ID of the application activation SD card 141 from the application activation SD card 141. The program adding unit 133 encrypts the acquired serial ID of the application activation SD card 141 with a public key.
[0091]
In step S108, the program addition unit 133 writes the encrypted serial ID of the application activation SD card 141 into the application addition SD card 140 as shown in FIG. 11, and ends the process.
[0092]
FIG. 11 is an image diagram of an example of an application addition SD card in which the serial ID of the encrypted application activation SD card is recorded. In the example of FIG. 11, “sdid.dat” represents the serial ID of the application activation SD card 141 encrypted. According to the process of FIG. 7, the application adding SD card 140 as shown in FIG. 11 in which the serial ID of the encrypted application starting SD card 141 is recorded can be created.
[0093]
FIG. 12 is an explanatory diagram of an example of the process of step S300. In step S301, the server 150 reads the encrypted serial ID 152 of the application activation SD card 141 from the application addition SD card 140 inserted into the SD card slot 151. In step S302, the server 150 acquires model information 153 and application information 154 input from an input device or the like.
[0094]
The model information 153 is information unique to the compound machine 31. The application information 154 is information on an application to be added to the application activation SD card 141 of the multi-function apparatus 31 using the application addition SD card 140.
[0095]
In step S303, the server 150 decrypts the serial ID 152 read in step S301 with the secret key. In step S304, the server 150 uses the setting file “apl.cnf” corresponding to the model information 153 and the application information 154, the mount target module “apl.mod”, and the electronic signature file used for the authentication check of the mount target module. Select the group 155 of “apl.mac”.
[0096]
In step S305, the server 150 reads the setting file “apl.cnf” 157 from the group 155 selected in step S304. In step S306, the server 150 creates an MD 158 from the decrypted serial ID 156 of the application activation SD card 141 and the setting file 157 read in step S305.
[0097]
In step S307, the server 150 encrypts the MD 158 created in step S306 with a secret key, and creates an electronic signature file “apl.lic” 159 that is used for a setting file authentication check. In step S308, the server 150 creates a new group 160 in which the electronic signature file 159 created in step S307 is added to the group 155. In step S309, the server 150 writes the group 160 created in step S307 on the application addition card 140 as shown in FIG. 13 and ends the process.
[0098]
FIG. 13 is an image diagram of an example of an application adding SD card in which a file for adding a program to the application starting SD card 141 is recorded. In the example of FIG. 13, “apl.cnf” represents a setting file, “apl.lic” represents an electronic signature file used for authentication check of the setting file, “apl.mod” represents a module to be mounted, “Apl.mac” represents an electronic signature file used for an authentication check of the mount target module.
[0099]
12, the application adding SD card 140 as shown in FIG. 13 in which a file for adding a program is recorded in the application starting SD card 141 can be created.
[0100]
FIG. 14 is an explanatory diagram of an example of the process of step S500. In the explanatory diagram of FIG. 14, a configuration necessary for the description of the configuration of the compound machine 31 is shown, and a configuration not necessary for the description is omitted.
[0101]
In step S501, the application adding SD card 140 as shown in FIG. 14 is inserted into the SD card slot 110 of the multi-function apparatus 31. The SD card slot 110 interrupts the SD card driver 137 in accordance with the insertion of the application adding SD card 140.
[0102]
In step S <b> 502, the OS 136 notifies the program activation unit 131 of SD card insertion detection in response to an interrupt to the SD card driver 137. In step S503, the program activation unit 131 activates the SD card check unit 132. In step S504, the SD card checking unit 132 mounts the application adding SD card 140, notifies the program starting unit 131 that the application adding SD card 140 has been mounted, and stops the processing.
[0103]
When it is notified that the application addition SD card 140 has been mounted, the process proceeds to step S505, and the program activation unit 131 notifies the SCS 68 that the application addition SD card 140 has been mounted.
[0104]
In step S506, the SCS 68 uses the setting file “apl.cnf” under the directory “addmod” from the application addition SD card 140, the electronic signature file “apl.lic” used for the authentication check of the setting file, and the module to be mounted. “Apl.mod” and the electronic signature file “apl.mac” used for the authentication check of the mount target module are read, and the authentication check is performed using the electronic authentication check library 138.
[0105]
The authentication check in step S506 includes, for example, a setting file authentication check shown in FIG. 8 and a mount target module authentication check shown in FIG. Details of the authentication check in step S506 will be described with reference to FIGS. 8 and 10 described above.
[0106]
In step S600 of FIG. 8, in the case of the target file used by the SCS 68 for the authentication check of the setting file in the application addition SD card 140, for example, the application addition SD card 140 of FIG. It is determined whether or not the electronic signature file “apl.lic” used for the file authentication check exists.
[0107]
If it is determined that the setting file “apl.cnf” and the electronic signature file “apl.lic” used for the authentication check of the setting file exist (YES in S600), the SCS 68 proceeds to step S601.
[0108]
In step S <b> 601, the SCS 68 acquires the serial ID from the application activation SD card 141 instead of the application addition SD card 140. In step S602, the SCS 68 creates MD1 of the setting file “apl.cnf” and the serial ID of the application activation SD card 141 acquired in step S601. In step S603, the SCS 68 creates MD2 by decrypting the electronic signature file “apl.lic” used for the authentication check of the setting file with the public key.
[0109]
In step S604, the SCS 68 determines whether MD1 and MD2 are equal. If it is determined that MD1 and MD2 are equal (YES in S604), the SCS 68 proceeds to step S605 and determines that the setting file authentication check is OK. On the other hand, if it is determined that MD1 and MD2 are not equal (NO in S24), the SCS 68 proceeds to step S606 and determines that the setting file authentication check is NG.
[0110]
If MD1 and MD2 are not equal, the file recorded in the application adding SD card 140 is not the application starting SD card 141 that acquired the serial ID in step S601, but the other application starting SD card. This is because the possibility of being created for the addition is high.
[0111]
If it is determined that the setting file “apl.cnf” and the electronic signature file “apl.lic” used for the setting file authentication check do not exist (NO in S600), the SCS 68 proceeds to step S606, and the setting file authentication check is performed. Is determined to be NG.
[0112]
In step S610 of FIG. 10, in the case of the target file used by the SCS 68 for the authentication check of the module to be mounted on the application addition SD card 140, for example, the application addition SD card 140 of FIG. 13, the module “apl.mod” to be mounted. It is determined whether or not the electronic signature file “apl.mac” used for the authentication check of the mount target module exists.
[0113]
If it is determined that the module “apl.mod” to be mounted and the electronic signature file “apl.mac” used for the authentication check of the module to be mounted exist (YES in S610), the SCS 68 proceeds to step S611. In step S611, the SCS 68 acquires model information unique to the multi-function apparatus 31. In step S612, the SCS 68 creates an MD1 of the module “apl.mod” to be mounted and the model information unique to the multi-function apparatus 31 acquired in step S611.
[0114]
In step S613, the SCS 68 decrypts the electronic signature file “apl.mac” used for the authentication check of the mount target module with the public key, and creates MD2.
[0115]
In step S614, the SCS 68 determines whether MD1 and MD2 are equal. If it is determined that MD1 and MD2 are equal (YES in S614), the SCS 68 proceeds to step S615 and determines that the authentication check of the mount target module is OK. On the other hand, if it is determined that MD1 and MD2 are not equal (NO in S614), the SCS 68 proceeds to step S616 and determines that the authentication check of the mount target module is NG.
[0116]
If MD1 and MD2 are not equal, the file recorded on the application adding SD card 140 is not for the MFP 31 that acquired the unique model information in step S611, but for adding a program to another MFP. This is because the possibility of being created is high. If it is determined that the setting file “apl.cnf” and the electronic signature file “apl.lic” used for the authentication check of the mount target module do not exist (NO in S610), the SCS 68 proceeds to step S616, and the mount target module It is determined that the authentication check is NG.
[0117]
Returning to FIG. 14, the SCS 68 proceeds to step S507 if the authentication check in step S506 is OK, and returns to the event waiting state if it is NG. In step S507, the SCS 68 reads the setting file “apl.cnf” read from the application adding SD card 140, the electronic signature file “apl.lic” used for the authentication check of the setting file, and the mount target module “apl.mod”. A program is added to the application activation SD card 141 using the electronic signature file “apl.mac” used for the authentication check of the mount target module.
[0118]
In step S507, the SCS 68 uses the setting file “apl.cnf”, the electronic signature file “apl.lic” used for the setting file authentication check, the mount target module “apl.mod”, and the mount target module authentication check. The electronic signature file “apl.mac” to be written is written in the application activation card 141 as shown in FIG.
[0119]
FIG. 15 is an image diagram of an example of an application activation SD card to which a program has been added by the application addition SD card. In the example of FIG. 15, “apl.cnf” under the directory “init.d” represents the setting file, and “apl.lic” represents the electronic signature file used for the authentication check of the setting file. Further, “apl.mod” under the directory “module” represents a module to be mounted, and “apl.mac” represents an electronic signature file used for an authentication check of the module to be mounted.
[0120]
In the present embodiment, the processing of the multi-function apparatus 31 has been mainly described. However, application to the information processing apparatus 1 illustrated in FIGS. 1 and 2 is easy. Further, the present invention is not limited to the specifically disclosed embodiments, and various modifications and changes can be made without departing from the scope of the claims.
[0121]
【The invention's effect】
As described above, according to the present invention, it is possible to add a program from a program addition recording medium to a program activation recording medium while ensuring the safety of the program recorded on the removable program addition recording medium.
[0122]
[Brief description of the drawings]
FIG. 1 is a configuration diagram of an embodiment of an information processing apparatus according to the present invention.
FIG. 2 is a hardware configuration diagram of an embodiment of an information processing apparatus according to the present invention.
FIG. 3 is a block diagram of an embodiment of a compound machine according to the present invention.
FIG. 4 is a hardware configuration diagram of an embodiment of a compound machine according to the present invention.
FIG. 5 shows a configuration diagram of an example of a compound machine starting unit.
FIG. 6 is a schematic diagram illustrating an example of processing for adding a program from an application addition SD card to an application activation SD card.
FIG. 7 is an explanatory diagram illustrating an example of a process in step S100.
FIG. 8 is a flowchart of an example of a setting file authentication check process;
FIG. 9 is an image diagram of an example of a target file recorded on an application adding SD card.
FIG. 10 is a flowchart illustrating an example of authentication check processing for a mount target module;
FIG. 11 is an image diagram of an example of an application adding SD card in which the serial ID of the encrypted application starting SD card is recorded.
FIG. 12 is an explanatory diagram of an example of a process in step S300.
13 is an image diagram of an example of an application adding SD card in which a file for adding a program is recorded in the application starting SD card 141. FIG.
FIG. 14 is an explanatory diagram illustrating an example of a process in step S500.
FIG. 15 is an image diagram of an example of an application activation SD card to which a program has been added by an application addition SD card.
[Explanation of symbols]
1 Information processing equipment
2,32 software group
3 Starter
4 Hardware resources
11,132 SD card check section
12,133 Program addition part
13 System controller
27,110 SD card slot
31 Fusion machine
33 Fusion machine starting part
34 Hardware resources
68 SCS
131 Program starter
136 Operating System (OS)
137 SD card driver
140 SD card for application addition
141 SD card for starting applications
150 servers

Claims (15)

複数の記録媒体を挿抜可能なスロットを有し、前記スロットの1つに挿入されたプログラム追加用記録媒体を用いて前記スロットの他の1つに挿入されているプログラム起動用記録媒体にプログラムを追加する情報処理装置であって、
前記スロットへのプログラム追加用記録媒体の挿入を判定する判定手段と、
前記スロットへのプログラム追加用記録媒体の挿入があったと判定すると、プログラム起動用記録媒体の識別情報を取得してプログラム追加用記録媒体に書き込む書込手段と
前記スロットへの前記プログラムを追加するためのファイルが書き込まれたプログラム追加用記録媒体の挿入があったと判定すると、プログラム追加用記録媒体からファイルを読み出し、そのファイルの認証チェックの結果に応じて、プログラム追加用記録媒体から読み出したファイルをプログラム起動用記録媒体に追加する追加手段と
を有し、
前記判定手段は、前記スロットに対する記録媒体の挿抜を監視する監視手段と、
前記スロットに挿入された記録媒体がプログラム追加用記録媒体であるかを判定するための認証チェックを行う認証チェック手段と
を有し、
前記書込手段は、前記スロットへのプログラム追加用記録媒体の挿入があったと判定されたとき、前記判定手段からの指示によりプログラム追加用記録媒体から読み出されて起動されることを特徴とする情報処理装置。
A slot having a plurality of recording media that can be inserted and removed, and using a recording medium for program addition inserted in one of the slots, a program is recorded on the recording medium for program startup inserted in the other one of the slots. An information processing apparatus to be added,
Determining means for determining insertion of a program-adding recording medium into the slot;
When it is determined that the program addition recording medium has been inserted into the slot, writing means for acquiring the identification information of the program starting recording medium and writing it to the program adding recording medium ;
When it is determined that the program addition recording medium in which the file for adding the program to the slot is written has been inserted, the file is read from the program addition recording medium, and according to the result of the authentication check of the file, and have a <br/> additional means for adding a file read from the program additional recording medium program starting recording medium,
The determination means includes monitoring means for monitoring insertion / extraction of a recording medium with respect to the slot;
Authentication check means for performing an authentication check for determining whether the recording medium inserted in the slot is a recording medium for program addition;
Have
It said writing means, when it is determined that the insertion of additional program recording medium into said slot, said read out from the program additional recording medium according to an instruction from the determination unit is activated, characterized in Rukoto Information processing device.
前記認証チェック手段は、設定ファイルと、設定ファイルおよびプログラム追加用記録媒体の識別情報から作成された第1の電子署名ファイルと、前記書込手段を起動させるためのプログラムと、そのプログラムおよび前記情報処理装置の機種情報から作成された第2の電子署名ファイルとをプログラム追加用記録媒体から読み出し、設定ファイルおよび前記書込手段を起動させるためのプログラムの認証チェックを行うことを特徴とする請求項記載の情報処理装置。The authentication check means includes a setting file, a first electronic signature file created from the setting file and identification information of the recording medium for program addition, a program for starting the writing means, the program, and the information The second electronic signature file created from the model information of the processing device is read from a program addition recording medium, and an authentication check of a setting file and a program for starting the writing unit is performed. 1. An information processing apparatus according to 1 . 前記追加手段は、設定ファイルと、設定ファイルおよびプログラム起動用記録媒体の識別情報から作成された第1の電子署名ファイルと、プログラム起動用記録媒体に追加するプログラムと、そのプログラムおよび前記情報処理装置の識別情報から作成された第2の電子署名ファイルとをプログラム追加用記録媒体から読み出し、設定ファイルおよびプログラム起動用記録媒体に追加するプログラムの認証チェックを行うことを特徴とする請求項記載の情報処理装置。The adding means includes a setting file, a first electronic signature file created from the setting file and identification information of the program start recording medium, a program to be added to the program start recording medium, the program, and the information processing apparatus read from the second digital signature file and the program for the additional recording medium prepared from the identification information, according to claim 1, characterized in that the authentication check program to be added to the configuration files and program starting recording medium Information processing device. プログラム追加用記録媒体およびプログラム起動用記録媒体は、活線挿抜可能であることを特徴とする請求項1乃至何れか一項記載の情報処理装置。The information processing apparatus according to any one of claims 1 to 3, wherein the program addition recording medium and the program activation recording medium can be hot-plugged. 複数の記録媒体を挿抜可能なスロットを有し、前記スロットの1つに挿入されたプログラム追加用記録媒体を用いて前記スロットの他の1つに挿入されているプログラム起動用記録媒体にプログラムを追加する画像形成装置であって、
前記スロットへのプログラム追加用記録媒体の挿入を判定する判定手段と、
前記スロットへのプログラム追加用記録媒体の挿入があったと判定すると、プログラム起動用記録媒体の識別情報を取得してプログラム追加用記録媒体に書き込む書込手段と
前記スロットへの前記プログラムを追加するためのファイルが書き込まれたプログラム追加用記録媒体の挿入があったと判定すると、プログラム追加用記録媒体からファイルを読み出し、そのファイルの認証チェックの結果に応じて、プログラム追加用記録媒体から読み出したファイルをプログラム起動用記録媒体に追加する追加手段と
を有し、
前記判定手段は、前記スロットに対する記録媒体の挿抜を監視する監視手段と、
前記スロットに挿入された記録媒体がプログラム追加用記録媒体であるかを判定するための認証チェックを行う認証チェック手段と
を有し、
前記書込手段は、前記スロットへのプログラム追加用記録媒体の挿入があったと判定されたとき、前記判定手段からの指示によりプログラム追加用記録媒体から読み出されて起 動されることを特徴とする画像形成装置。
A slot having a plurality of recording media that can be inserted and removed, and using a recording medium for program addition inserted in one of the slots, a program is recorded on the recording medium for program startup inserted in the other one of the slots. An image forming apparatus to be added,
Determining means for determining insertion of a program-adding recording medium into the slot;
When it is determined that the program addition recording medium has been inserted into the slot, writing means for acquiring the identification information of the program starting recording medium and writing it to the program adding recording medium ;
When it is determined that the program addition recording medium in which the file for adding the program to the slot is written has been inserted, the file is read from the program addition recording medium, and according to the result of the authentication check of the file, and have a <br/> additional means for adding a file read from the program additional recording medium program starting recording medium,
The determination means includes monitoring means for monitoring insertion / extraction of a recording medium with respect to the slot;
Authentication check means for performing an authentication check for determining whether the recording medium inserted in the slot is a recording medium for program addition;
Have
It said writing means, when it is determined that the insertion of additional program recording medium into the slot, is invoked is read from the program additional recording medium according to an instruction from the determination means and said Rukoto Image forming apparatus.
前記認証チェック手段は、設定ファイルと、設定ファイルおよびプログラム追加用記録媒体の識別情報から作成された第1の電子署名ファイルと、前記書込手段を起動させるためのプログラムと、そのプログラムおよび前記画像形成装置の機種情報から作成された第2の電子署名ファイルとをプログラム追加用記録媒体から読み出し、設定ファイルおよび前記書込手段を起動させるためのプログラムの認証チェックを行うことを特徴とする請求項記載の画像形成装置。The authentication check means includes a setting file, a first electronic signature file created from the setting file and identification information of the recording medium for program addition, a program for starting the writing means, the program, and the image The second electronic signature file created from the model information of the forming apparatus is read from a recording medium for program addition, and an authentication check of the program for starting the setting file and the writing unit is performed. 5. The image forming apparatus according to 5 . 前記追加手段は、設定ファイルと、設定ファイルおよびプログラム起動用記録媒体の識別情報から作成された第1の電子署名ファイルと、プログラム起動用記録媒体に追加するプログラムと、そのプログラムおよび前記画像形成装置の識別情報から作成された第2の電子署名ファイルとをプログラム追加用記録媒体から読み出し、設定ファイルおよびプログラム起動用記録媒体に追加するプログラムの認証チェックを行うことを特徴とする請求項記載の画像形成装置。The adding means includes a setting file, a first electronic signature file created from the setting file and identification information of the program start recording medium, a program to be added to the program start recording medium, the program, and the image forming apparatus read from the second digital signature file and the program for the additional recording medium prepared from the identification information, according to claim 5, characterized in that the authentication check program to be added to the configuration files and program starting recording medium Image forming apparatus. プログラム追加用記録媒体およびプログラム起動用記録媒体は、活線挿抜可能であることを特徴とする請求項乃至何れか一項記載の画像形成装置。Program additional recording medium and program starting recording medium, the image forming apparatus according to claim 5 or 7 to any one of claims characterized in that it is a possible hot swapping. プログラム追加用記録媒体を作成するサーバと、プログラム追加用記録媒体を用いてプログラム起動用記録媒体にプログラムを追加する情報処理装置とを有するシステムのプログラム追加方法であって、
前記情報処理装置が、プログラム起動用記録媒体の識別情報をプログラム追加用記録媒体に書き込む識別情報書込段階と、
前記サーバが、プログラム追加用記録媒体からプログラム起動用記録媒体の識別情報を読み出し、その識別情報を用いて所定ファイルの電子署名ファイルを作成して、所定ファイルおよび電子署名ファイルをプログラム追加用記録媒体に書き込むファイル書込段階と、
前記情報処理装置が、プログラム追加用記録媒体から所定ファイルおよび電子署名ファイルを読み出し、電子署名ファイルを用いた所定ファイルの認証チェックの結果に応じて、プログラム追加用記録媒体から読み出した所定ファイルおよび電子署名ファイルをプログラム起動用記録媒体に追加するプログラム追加段階と
を有することを特徴とするプログラム追加方法。
A program addition method for a system having a server for creating a program addition recording medium and an information processing apparatus for adding the program to the program activation recording medium using the program addition recording medium,
An identification information writing step in which the information processing apparatus writes the identification information of the program start recording medium to the program addition recording medium;
The server reads the identification information of the program activation recording medium from the program addition recording medium, creates an electronic signature file of the predetermined file using the identification information, and uses the predetermined file and the electronic signature file as the program addition recording medium. A file writing stage to write to,
The information processing apparatus reads the predetermined file and the electronic signature file from the program addition recording medium, and reads the predetermined file and the electronic file read from the program addition recording medium according to the result of the authentication check of the predetermined file using the electronic signature file. A program adding method comprising: adding a signature file to a program start recording medium.
前記ファイル書込段階は、前記サーバが、プログラム追加用記録媒体からプログラム起動用記録媒体の識別情報を読み出す段階と、
前記サーバが、前記情報処理装置の機種情報およびプログラム起動用記録媒体に追加するプログラムの識別情報を取得し、その情報処理装置の機種情報およびプログラムの識別情報に応じた所定ファイルを選択する段階と、
前記サーバが、プログラム起動用記録媒体の識別情報を用いて所定ファイルの電子署名ファイルを作成し、所定ファイルおよび電子署名ファイルをプログラム追加用記録媒体に書き込む段階と
を有することを特徴とする請求項記載のプログラム追加方法。
The file writing step wherein the server reads identification information of a program start recording medium from a program addition recording medium;
The server acquires model information of the information processing apparatus and identification information of a program to be added to the program start recording medium, and selects a predetermined file according to the model information of the information processing apparatus and the program identification information; ,
The server includes a step of creating an electronic signature file of a predetermined file using identification information of a program start recording medium, and writing the predetermined file and the electronic signature file to the program addition recording medium. 9. The program addition method according to 9 .
前記ファイル書込段階により所定ファイルおよび電子署名ファイルを書き込まれたあとのプログラム追加用記録媒体は、設定ファイルと、設定ファイルおよびプログラム起動用記録媒体の識別情報から作成された第1の電子署名ファイルと、プログラム起動用記録媒体に追加するプログラムと、そのプログラムおよび前記情報処理装置の機種情報から作成された第2の電子署名ファイルとを有することを特徴とする請求項又は10記載のプログラム追加方法。The program adding recording medium after the predetermined file and the electronic signature file are written in the file writing step is a first electronic signature file created from the setting file and the identification information of the setting file and the program starting recording medium If programs and program to be added to start recording medium, the program adds the program and claim 9 or 10 further characterized in that a second electronic signature file created from the model information of the information processing apparatus Method. 前記プログラム追加段階は、設定ファイルと、設定ファイルおよびプログラム起動用記録媒体の識別情報から作成された第1の電子署名ファイルと、プログラム起動用記録媒体に追加するプログラムと、そのプログラムおよび前記情報処理装置の識別情報から作成された第2の電子署名ファイルとをプログラム追加用記録媒体から読み出し、設定ファイルおよびプログラム起動用記録媒体に追加するプログラムの認証チェックを行い、認証チェックの結果が正常であれば、プログラム追加用記録媒体から読み出した設定ファイル,第1の電子署名ファイル,プログラムおよび第2の電子署名ファイルをプログラム起動用記録媒体に追加することを特徴とする請求項記載のプログラム追加方法。The program adding step includes a setting file, a first electronic signature file created from the setting file and identification information of the program start recording medium, a program to be added to the program start recording medium, the program, and the information processing The second electronic signature file created from the device identification information is read from the program addition recording medium, and the authentication check of the program added to the setting file and the program start recording medium is performed. If the result of the authentication check is normal 10. The program adding method according to claim 9 , wherein the setting file, the first electronic signature file, the program, and the second electronic signature file read from the program adding recording medium are added to the program starting recording medium. . プログラム追加用記録媒体を作成するサーバと、プログラム追加用記録媒体を用いてプログラム起動用記録媒体にプログラムを追加する画像形成装置とを有するシステムのプログラム追加方法であって、
前記画像形成装置が、プログラム起動用記録媒体の識別情報をプログラム追加用記録媒体に書き込む識別情報書込段階と、
前記サーバが、プログラム追加用記録媒体からプログラム起動用記録媒体の識別情報を読み出し、その識別情報を用いて所定ファイルの電子署名ファイルを作成して、所定ファイルおよび電子署名ファイルをプログラム追加用記録媒体に書き込むファイル書込段階と、
前記画像形成装置が、プログラム追加用記録媒体から所定ファイルおよび電子署名ファイルを読み出し、電子署名ファイルを用いた所定ファイルの認証チェックの結果に応じて、プログラム追加用記録媒体から読み出した所定ファイルおよび電子署名ファイルをプログラム起動用記録媒体に追加するプログラム追加段階と
を有することを特徴とするプログラム追加方法。
A program addition method for a system having a server for creating a program addition recording medium and an image forming apparatus for adding a program to a program activation recording medium using the program addition recording medium,
An identification information writing step in which the image forming apparatus writes identification information of a program start recording medium on a program addition recording medium; and
The server reads the identification information of the program activation recording medium from the program addition recording medium, creates an electronic signature file of the predetermined file using the identification information, and uses the predetermined file and the electronic signature file as the program addition recording medium. A file writing stage to write to,
The image forming apparatus reads the predetermined file and the electronic signature file from the program addition recording medium, and reads the predetermined file and the electronic file read from the program addition recording medium according to the result of the authentication check of the predetermined file using the electronic signature file. A program adding method comprising: adding a signature file to a program start recording medium.
前記ファイル書込段階は、前記サーバが、プログラム追加用記録媒体からプログラム起動用記録媒体の識別情報を読み出す段階と、
前記サーバが、前記画像形成装置の機種情報およびプログラム起動用記録媒体に追加するプログラムの識別情報を取得し、その画像形成装置の機種情報およびプログラムの識別情報に応じた所定ファイルを選択する段階と、
前記サーバが、プログラム起動用記録媒体の識別情報を用いて所定ファイルの電子署名ファイルを作成し、所定ファイルおよび電子署名ファイルをプログラム追加用記録媒体に書き込む段階と
を有することを特徴とする請求項13記載のプログラム追加方法。
The file writing step wherein the server reads identification information of a program start recording medium from a program addition recording medium;
The server acquires model information of the image forming apparatus and identification information of a program to be added to a program start recording medium, and selects a predetermined file according to the model information of the image forming apparatus and the program identification information; ,
The server includes a step of creating an electronic signature file of a predetermined file using identification information of a program start recording medium, and writing the predetermined file and the electronic signature file to the program addition recording medium. 14. The program addition method according to 13 .
プログラム追加用記録媒体およびプログラム起動用記録媒体は、活線挿抜可能であることを特徴とする請求項乃至14何れか一項記載のプログラム追加方法。Program additional recording medium and program starting recording medium according to claim 9 or 14 any program additional method of one claim, characterized in that it is possible hot swapping.
JP2003078988A 2003-03-20 2003-03-20 Information processing apparatus, image forming apparatus, and program addition method Expired - Fee Related JP4231313B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003078988A JP4231313B2 (en) 2003-03-20 2003-03-20 Information processing apparatus, image forming apparatus, and program addition method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003078988A JP4231313B2 (en) 2003-03-20 2003-03-20 Information processing apparatus, image forming apparatus, and program addition method

Publications (2)

Publication Number Publication Date
JP2004287840A JP2004287840A (en) 2004-10-14
JP4231313B2 true JP4231313B2 (en) 2009-02-25

Family

ID=33293303

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003078988A Expired - Fee Related JP4231313B2 (en) 2003-03-20 2003-03-20 Information processing apparatus, image forming apparatus, and program addition method

Country Status (1)

Country Link
JP (1) JP4231313B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5095325B2 (en) 2007-09-14 2012-12-12 株式会社リコー Image processing apparatus and image processing method

Also Published As

Publication number Publication date
JP2004287840A (en) 2004-10-14

Similar Documents

Publication Publication Date Title
US7610246B2 (en) Information processing apparatus, control method therefor and computer readable information recording medium
JP4848190B2 (en) Application execution apparatus, application execution method, and application execution program
US8213040B2 (en) Image forming apparatus, program adding method, and a recording medium
JP4209789B2 (en) File creation method, server, recording medium, and program addition system
US7302578B2 (en) Information processing apparatus, image forming apparatus, program-initiation error processing method, and recording medium
US8495364B2 (en) Image processing apparatus and method using electronic signature information
JP2005202935A (en) Information processor, image forming apparatus, and electronic data movement canceling method
JP4209794B2 (en) Image forming apparatus and program start method
JP4485785B2 (en) Electronic data processing system and electronic data processing method
JP4246540B2 (en) Image forming apparatus and program execution method
JP2007249575A (en) Information processor, computer-readable portable storage medium, information processing method, information processing program and information processing system
US7546296B2 (en) Information processing apparatus started from a program recorded on a recording medium with well-maintained security, and a recording medium storing such a program and a producing method of such a recording medium
JP3993121B2 (en) Information processing apparatus and program addition method
JP4231313B2 (en) Information processing apparatus, image forming apparatus, and program addition method
JP2004303209A (en) Image forming apparatus, program updating method, and storage medium for update
JP4444641B2 (en) Information processing apparatus, image forming apparatus, and electronic data transfer method
JP4276885B2 (en) Image forming apparatus and path designation method
JP3857654B2 (en) Image forming apparatus, user information management method, user information management program, and recording medium
JP4246608B2 (en) Image forming apparatus and program start method
US20060200868A1 (en) Information processing device and information processing method
JP2004046801A (en) Image forming device, and program stop method
JP2004287622A (en) Information processor, image forming apparatus, and program adding method
JP2004048696A (en) Image forming apparatus and data processing method
JP5063718B2 (en) Image forming apparatus and network system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050822

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080808

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080819

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081020

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081111

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081205

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131212

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees