説明

ネットワークインタフェース装置、ネットワークインタフェース装置の制御方法及びプログラム

【課題】適切なタイミングで鍵情報を生成することによりセキュリティを向上させる。
【解決手段】NIC700は、マスストレージ500の接続を検知した場合、マスストレージ500内のデータを暗号化及び復号化するための新たな鍵情報を生成し、新たな鍵情報を用いて当該データを暗号化し、マスストレージ500に書き込む。また、当該データを出力させる際には、NIC700は、上記新たな鍵情報を用いて、マスストレージ500内のデータを復号化する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、例えば携帯可能な記録装置に記録されるデータをセキュリティを維持して出力させるための技術に関するものである。
【背景技術】
【0002】
近年、プリンタから文書を印刷させる場合、印刷物が放置されることによる情報漏洩等を避ける(セキュリティを高める)ために、印刷データをサーバ内又は印刷装置内に蓄積させておくことがなされる。このような仕組みの場合、ユーザは印刷装置の前に行って例えばICカード等をかざすことにより、そのユーザの印刷物が出力される。
【0003】
また、情報漏洩をさらに防ぐために、蓄積されている印刷データについても暗号化を行い、印刷する際に復号化を行うといったセキュリティを高める仕組みが開示されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2001−306273号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に記載された技術では、ユーザが指定した認証コード(暗号化キー、復号化キー)を用いて暗号化及び復号化を行っている。この技術では、ユーザが同じ認証コードを常に使った場合、一度認証コードが外部に漏洩してしまうと印刷データがいつでも第三者に盗み見られてしまうといったことが発生し、情報漏洩対策としては不十分であった。
【0006】
特に特許文献1に記載された技術では、認証コードがネットワーク上を流れるため、ネットワーク上での認証コードが不正に取得されて情報漏洩を招いてしまうという危険性があった。
【0007】
また、特許文献1に記載された技術におけるプリントシステム10の記憶装置(例えば、ハードディスク)が抜かれ、記憶装置内の印刷データが解析されて認証コードが不正に取得されて情報漏洩を招くといった危険性も想定される。
【0008】
そこで、情報漏洩を防ぐために暗号化キー、復号化キーを定期的に変更させる必要がある。特許文献1に記載された技術における蓄積印刷型のシステムで、定期的に暗号化キー、復号化キーを変更させる場合には、変更前の復号化キーで印刷データの復号化を行い、新たに生成された暗号化キーで印刷データの暗号化を行わなければならない。このように印刷データが多く蓄積されている場合、暗号化、復号化に時間がかかってしまうといった問題が生じてしまう。
【0009】
さらに、印刷データをプリンタ内に蓄積させているような場合のシステムでは、プリンタが複数の印刷データを暗号化したり、復号化したりする処理を繰り返さなければならない。サーバ等のスペックの高い機器で印刷データを暗号化したり、復号化したりする場合と比較し、多大な時間がかかってしまうといった問題が生じる。
【0010】
特に、シングルファンクションプリンタ等のようなスペックが低い(例えばCPUの処理能力が低い)プリンタでは、暗号化処理、復号化処理にプリンタが備える処理能力をほぼ全て使ってしまう。従って、定期的に暗号化/復号化キーを変更することによって暗号化処理、復号化処理を行う場合には印刷処理が大幅に遅くなり、定期的に暗号化キー、復号化キーを変更するのは困難になる。その結果、暗号化キーの定期的な変更が行われず、セキュリティ上問題が生じてしまっていた。
【0011】
そこで、本発明の目的は、適切なタイミングで鍵情報を生成することによりセキュリティを向上させることにある。
【課題を解決するための手段】
【0012】
本発明のネットワークインタフェース装置は、画像形成装置で出力するためのデータを記録する記録装置と接続され、前記記録装置に記録されるデータを出力することが可能な画像形成装置に設けられるネットワークインタフェース装置であって、前記記録装置の接続を検知する接続検知手段と、前記接続検知手段にて前記記録装置の接続が検知された場合、前記データを暗号化及び復号化するための新たな鍵情報を生成する鍵情報生成手段と、前記鍵情報生成手段にて生成された前記新たな鍵情報を用いて、前記データを暗号化する暗号化手段と、前記暗号化手段にて暗号化された前記データを前記記録装置に書き込む書込手段と、前記鍵情報生成手段にて生成された前記新たな鍵情報を用いて、前記書込手段により前記記録装置に書き込まれた前記データを復号化する第1の復号化手段とを有することを特徴とする。
本発明の画像形成装置は、データを記録する記録装置と接続され、前記記録装置に記録されるデータを出力する画像形成装置であって、前記記録装置の接続を検知する接続検知手段と、前記接続検知手段にて前記記録装置の接続が検知された場合、前記データを暗号化及び復号化するための新たな鍵情報を生成する鍵情報生成手段と、前記鍵情報生成手段にて生成された前記新たな鍵情報を用いて、前記データを暗号化する暗号化手段と、前記暗号化手段にて暗号化された前記データを前記記録装置に書き込む書込手段と、前記鍵情報生成手段にて生成された前記新たな鍵情報を用いて、前記書込手段により前記記録装置に書き込まれた前記データを復号化する復号化手段と、前記復号化手段により復号化された前記データを出力させる出力制御手段とを有することを特徴とする。
本発明のネットワークインタフェース装置の制御方法は、画像形成装置で出力するためのデータを記録する記録装置と接続され、前記記録装置に記録されるデータを出力することが可能な画像形成装置に設けられるネットワークインタフェース装置の制御方法であって、前記記録装置の接続を検知する接続検知ステップと、前記接続検知ステップにて前記記録装置の接続が検知された場合、前記データを暗号化及び復号化するための新たな鍵情報を生成する鍵情報生成ステップと、前記鍵情報生成ステップにて生成された前記新たな鍵情報を用いて、前記データを暗号化する暗号化ステップと、前記暗号化ステップにて暗号化された前記データを前記記録装置に書き込む書込ステップと、前記鍵情報生成ステップにて生成された前記新たな鍵情報を用いて、前記書込ステップにより前記記録装置に書き込まれた前記データを復号化する復号化ステップとを含むことを特徴とする。
本発明のプログラムは、画像形成装置で出力するためのデータを記録する記録装置と接続され、前記記録装置に記録されるデータを出力することが可能な画像形成装置に設けられるネットワークインタフェース装置の制御方法をコンピュータに実行させるためのプログラムであって、前記記録装置の接続を検知する接続検知ステップと、前記接続検知ステップにて前記記録装置の接続が検知された場合、前記データを暗号化及び復号化するための新たな鍵情報を生成する鍵情報生成ステップと、前記鍵情報生成ステップにて生成された前記新たな鍵情報を用いて、前記データを暗号化する暗号化ステップと、前記暗号化ステップにて暗号化された前記データを前記記録装置に書き込む書込ステップと、前記鍵情報生成ステップにて生成された前記新たな鍵情報を用いて、前記書込ステップにより前記記録装置に書き込まれた前記データを復号化する復号化ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【0013】
本発明によれば、適切なタイミングで鍵情報を生成することによりセキュリティを向上させることが可能となる。また、本発明においては、記録装置の接続が検知された場合、当該記録装置に記録されるデータを暗号化及び復号化するための鍵情報を生成するように構成している。従って、全ての画像形成装置において当該記録装置内のデータを暗号化及び復号化させるための鍵情報が異なることになり、当該記録装置が盗まれたとしても他の画像形成装置にて当該記録装置内のデータを復号化させることができない。そのため、セキュリティを確保することが可能となる。
【図面の簡単な説明】
【0014】
【図1】本発明の実施形態に係るセキュアプリントシステムの構成を示す図である。
【図2】クライアント端末、認証サーバに適用可能な情報処理装置のハードウエア構成を示す図である。
【図3】プリンタに適用可能な画像形成装置のハードウエア構成を示す図である。
【図4】NICに適用可能なネットワークインタフェース装置のハードウエア構成を示す図である。
【図5】本発明の実施形態に係るセキュアプリントシステムの機能構成を示すブロック図である。
【図6】プリンタのアプリケーション起動時の処理を示すフローチャートである。
【図7A】USBイベント検知時の処理を示すフローチャートである。
【図7B】USBイベント検知時の処理を示すフローチャートである。
【図7C】USBイベント検知時の処理を示すフローチャートである。
【図7D】USBイベント検知時の処理を示すフローチャートである。
【図8】ジョブデータの印刷時の処理を示すフローチャートである。
【図9A】ジョブデータのジョブ出力時における処理の流れを示すフローチャートである。
【図9B】ジョブデータのジョブ出力時における処理の流れを示すフローチャートである。
【図10】認証テーブルの構成を模式的に示す図である。
【図11】ジョブ情報リストの構成を模式的に示す図である。
【発明を実施するための形態】
【0015】
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
【0016】
図1は、本発明の実施形態に係るセキュアプリントシステムの構成を示す図である。図1に示すように、本実施形態に係るセキュアプリントシステムは、マスストレージ500、USBハブ600、カードリーダ400、プリンタ1000、クライアント端末100及び認証サーバ200から構成される。本実施形態では、図1に示すように、マスストレージ500及びUSBハブ600がプリンタ1000に外付けされているが、マスストレージ500及びUSBハブ600がプリンタ1000に内蔵される形態をとってもよい。また、プリンタ1000が複数のUSBポートを備えている場合は、USBハブ600を介する必要なく、プリンタ1000にカードリーダ400及びマスストレージ500が直接接続される形態となる。なお、プリンタ1000は、本発明の画像形成装置(データ出力装置)の適用例となる構成であり、マスストレージ500は、本発明の記録装置の適用例となる構成である。
【0017】
認証サーバ200は、ユーザの使用するICカード番号とユーザ名とを対応付けて保持し、ICカード番号からユーザ名を検索することができる。本セキュアプリントシステムでは、ICカード番号からユーザ名を取得するシステムを想定しているが、プリンタ1000に接続されたキーボード等の入力手段からユーザ名を入力しても良く、本発明はユーザ名を取得する方法には依存しない。
【0018】
マスストレージ500は、ファイルシステムを持ったハードウエアである。例えば、HDDやフラッシュメモリであり、大容量のファイルシステムを持つストレージである。マスストレージ500は、USBハブ600にUSBケーブル160を通じてNIC700と接続されており、プリンタ1000からファイルシステムの制御(ファイル書き込み、読み込み、削除等)を行うことが可能である。尚、NIC700とマスストレージ500の接続形態は、マスストレージとなるハードウエアの構成に応じた接続であり、USB接続に限るものではない。
【0019】
以下、図2を用いて、図1に示したクライアント端末100、認証サーバ200に適用可能な情報処理装置のハードウエア構成について説明する。
【0020】
図2において、2001はCPUであり、システムバス2004に接続される各デバイスやコントローラを統括的に制御する。また、ROM2003又は外部メモリ2011には、CPU2001の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OSと称す)や、各サーバ又は各PCの実行する機能を実現するために必要な各種プログラム等が記憶されている。
【0021】
2002はRAMであり、CPU2001の主メモリ、ワークエリア等として機能する。CPU2001は、処理の実行に際して必要なプログラム等をROM2003あるいは外部メモリ2011からRAM2002にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【0022】
また、2005は入力コントローラであり、キーボード(KB)2009や不図示のマウス等のポインティングデバイス等からの入力を制御する。2006はビデオコントローラであり、CRTディスプレイ(CRT)2010等の表示器への表示を制御する。なお、図2では、CRT2010と記載しているが、表示器はCRTだけでなく、液晶ディスプレイ等の他の表示器であってもよい。これらは必要に応じて管理者が使用するものである。
【0023】
2007はメモリコントローラであり、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)や、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ2011へのアクセスを制御する。
【0024】
2008は通信I/Fコントローラであり、ネットワーク(例えば、図1に示したLAN300)を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。
【0025】
なお、CPU2001は、例えばRAM2002内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、CRT2010上での表示を可能としている。また、CPU2001は、CRT2010上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【0026】
ハードウエア上で動作する各種プログラムは、外部メモリ2011に記録されており、必要に応じてRAM2002にロードされることによりCPU2001によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ2011に格納されている。
【0027】
以下、図3を用いて、図1に示したプリンタ1000に適用可能な画像形成装置のハードウエア構成について説明する。
【0028】
3000は入力部であり、本プリンタ1000とNIC700(ネットワークインタフェース装置)を接続するものであり、NIC700とのデータ通信を司るものである。
【0029】
3001は、CPUであり、本プリンタ1000の全体的な制御を司るものである。3002は、操作部であり、本プリンタ1000に直接ユーザが触れて操作するためのI/Fを提供するものである。
【0030】
3003は、印刷処理部であり、入力部3000で受信したコマンドの解析及びジョブデータ(印刷データ(例えば、PDL))の解析等を行うものである。
【0031】
3004は、記憶部であり、本プリンタ1000を動作させるための不図示のROM(Read Only Memory)、不図示のRAM(Random Access Memory)、不図示の二次記憶装置等からなる。RAMは、使用制限のないデータ記憶領域であり、入力部3000の受信バッファ、又は、印刷処理部3003でのデータ展開等に使用される領域である。
【0032】
3005は、出力部であり、入力部3000を介して受信したジョブデータを、印刷処理部3003で印刷可能なイメージ情報に展開されたものを紙に転写するものである。3006は、用紙カセットであり、出力部3005の処理に合わせて適切な用紙を供給する。
【0033】
700は、NICであり、ネットワークインタフェースカード(ネットワークインタフェース装置)である。NIC700は、LAN300を介して他の機器から受信したデータを、NIC700が窓口となって受け取り、その後、不図示のNIC700内部のプログラムに渡したり、プリンタ1000の入力部3000に渡したりすることができる。このような受信データの受け渡し制御は、NIC700内部に搭載される不図示のNIC OSによって行うことが可能である。なお、NIC700は、本発明の情報処理装置の適用例となる構成である。
【0034】
以下、図4を用いて、図3に示したNIC700に適用可能なネットワークインタフェース装置のハードウエア構成について説明する。
【0035】
図4において、4001は、CPUであり、NIC700の制御を司るものであり、内部で接続されている装置の制御を行う。
【0036】
4002は、RAMであり、CPU4001の主メモリ、ワークエリア等として機能する。CPU4001は、処理の実行に際して必要なプログラム等をROM4007又は内部メモリ4005からRAM4002にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【0037】
4003は、通信I/Fコントローラであり、ネットワーク(例えば、図1に示したLAN300)を介して外部機器と接続・通信するものである。通信I/Fコントローラ4003は、ネットワークでの通信制御処理を実行する。例えば、通信I/Fコントローラ4003は、TCP/IPやUDP等の通信プロトコルを用いた通信が可能である。
【0038】
4004は、USBI/Fコントローラであり、カードリーダ400、マスストレージ500及びUSBハブ600等のUSBデバイスとNIC700とを接続・通信するものであり、USBの通信制御処理を実行する。
【0039】
4005は、内部メモリであり、NIC700を制御するプログラム(OS)が搭載されている。内部メモリ4005は、該OS上で動作する、アプリケーションプログラム及びその設定情報を記憶する領域である。
【0040】
4006は、メモリコントローラであり、各種のアプリケーション、各種データ等を記憶する内部メモリ4005へのアクセスを制御する。
【0041】
4007は、ROMであり、読み出し専用の半導体メモリである。ROM4007は、電源を切っても内容が消えないことから、ブートプログラムが格納される。
【0042】
4008は、機器I/Fコントローラであり、NIC700とプリンタ1000とを接続・通信するものである。
尚、NIC700に適用可能なネットワークインタフェース装置はCPU4001やRAM4002等を用いて演算処理するため、情報処理装置(コンピュータ)としても動作する。
【0043】
次に、本実施形態に係るセキュアプリントシステムの機能構成について説明する。図5は、本実施形態に係るセキュアプリントシステムの機能構成を示すブロック図である。
【0044】
本実施形態に係るセキュアプリントシステムは、認証サーバ200、クライアント端末100及びプリンタ1000に接続されたNIC700が双方向通信可能なLAN300を介して接続された構成となっている。また、NIC700には、USB通信可能なUSBケーブル160を介して、マスストレージ500、USBハブ600及びカードリーダ400が接続された構成となっている。
【0045】
それぞれの機能間の動作の流れに関しては後述するため、ここでは各装置内に備えられている機能構成について説明する。
【0046】
先ず、クライアント端末100の機能構成について説明する。クライアント端末100は、印刷データ生成部110(プリンタドライバ)を備える。印刷データ生成部110は、アプリケーションプログラム(例えば、文書作成アプリケーションプログラム)から受け取ったデータに基づいてジョブデータを生成し、該ジョブデータをプリンタ1000へと送信する。
【0047】
次に、認証サーバ200の機能構成について説明する。認証サーバ200は、認証部210を備える。認証部210は、プリンタ1000上の認証通信部1020から認証要求を受け、認証サーバ200上で管理される認証テーブルにアクセスする。そして、認証部210は、認証要求されたICカード番号に紐付いたユーザ名を検索し、認証要求を発信したプリンタ1000上の認証通信部1020へ返信する。図10は、認証テーブルの構成を模式的に示す図である。図10に示すように、認証テーブルでは、ICカード番号とユーザ名とが対応付けて登録される。
【0048】
次に、プリンタ1000の機能構成について説明する。プリンタ1000は、本実施形態の特徴であるアプリケーションプログラムにより構成される機能構成、NIC OSにより構成される機能構成、及び、印刷部1120を備える。なお、アプリケーションプログラム及びNIC OSは、NIC700内に搭載されるプログラムである。
【0049】
上記アプリケーションプログラムにより提供される機能構成としては、印刷データ監視部1010、認証通信部1020、本体通信部1030、ジョブ管理部1040、暗号化部1050、復号化部1060、接続検知部1070、書込部1080及び鍵情報生成部1090がある。また、NIC OSにより提供される機能構成としては、USB制御部1110がある。
【0050】
印刷データ監視部1010は、NIC700上において通信I/Fコントローラ4003を監視し、クライアント端末100からジョブデータを受信した場合、必要に応じてジョブデータを取得する。印刷データ監視部1010がマスストレージ500を検出できない場合には、印刷データ監視部1010がジョブデータを取得することなく、そのままジョブデータの出力処理を行なうことも可能である。
【0051】
認証通信部1020は、カードリーダ400にかざされたICカードのICカード番号を受信し、認証サーバ200へと認証要求を送信し、認証結果を受信する機能を有する。
【0052】
本体通信部1030は、アプリケーションプログラムからNIC OSを介して印刷部1120にジョブデータを送信して出力を行ったり、プリンタ1000の操作部3002のUIの制御を行う機能を有する。また、本体通信部1030は、NIC OSのUSB制御部1110を介してNIC700のUSB I/Fコントローラ4008に対し、マスストレージ500、USBハブ600及びカードリーダ400等のUSBデバイスへの命令の送受信を行う機能を有する。
【0053】
ジョブ管理部1040は、マスストレージ500から取得した、又はクライアント端末100から送信されたジョブデータを解析し、ユーザ名、ジョブ名等の書誌情報を抜き出す機能を有する。
【0054】
接続検知部1070は、NIC OSのUSB制御部1110から接続検知情報(USBイベント)を受け取って、マスストレージ500がUSBハブ600を介して接続されたことや、マスストレージ500との接続が切断されたことを検知する。
【0055】
暗号化部1050は、鍵情報生成部1090で生成された鍵情報を用いて、マスストレージ500から取得した、又はクライアント端末1000から送信されたジョブデータを暗号化する。
【0056】
復号化部1060は、暗号化部1050で暗号化された鍵情報を用いて、マスストレージ500に記憶されているジョブデータを復号化する。
【0057】
書込部1080は、暗号化部1050で暗号化されたジョブデータをマスストレージ500に書き込む。
【0058】
鍵情報生成部1090は、暗号化部1050や復号化部1060で用いられる鍵情報(共通鍵)を生成する。
【0059】
USB制御部1110は、NIC700上のUSB I/Fコントローラ4004を経由して接続されたマスストレージ500やカードリーダ400等のUSBデバイスとの通信を行い、USBデバイスの制御を行う機能を有する。本実施形態では、USB制御部1110は、USBハブ600を経由してカードリーダ400及びマスストレージ500の制御を行う。また、USB制御部1110は、マスストレージ500が接続されたこと、マスストレージ500との接続が切断されたことを示すメッセージを送信する。
【0060】
印刷部1120は、クライアント端末100上の印刷データ生成部110にて作成されたジョブデータを解析し、出力を行う機能を有する。
【0061】
次に、カードリーダ400の機能構成について説明する。カードリーダ400は、カード読み取り部410を備える。カード読み取り部410は、読み取り可能なICカードがかざされた場合、認証に必要なICカード番号(例えば、カード製造番号等)を取得する機能を有する。
【0062】
次に、マスストレージ500の機能構成について説明する。マスストレージ500は、ファイルシステム510を備える。ファイルシステム510は、クライアント端末100にて生成され、暗号化されたジョブデータを格納する領域である。
【0063】
以下、図6〜図9Bを参照しながら、本実施形態に係るセキュアプリントシステムの動作の流れについて説明する。
【0064】
図6は、プリンタ1000のアプリケーション起動時の処理を示すフローチャートである。先ず、NIC700上の内部メモリ4005に格納されたアプリケーションプログラムがRAM4002上にロードされ、アプリケーションプログラムが実行される(ステップS100)。
【0065】
続いて、本体通信部1030はUSB制御部1110の監視を始める。これにより、USBイベントの検知(接続及び切断の検知)が可能となる(ステップS101)。
【0066】
図7A〜図7Dは、USBイベント検知時の処理を示すフローチャートである。先ず、USB制御部1110は、NIC700上のUSB I/Fコントローラ4004のUSB接続又は切断を検知する(ステップS200)。ステップS200は、本発明の接続検知手段の一処理例である。
【0067】
USB制御部1110は、ステップS200で検知したUSBイベントを接続検知部1070に通知する(ステップS201)。
【0068】
続いて、接続検知部1070は、ステップS201にてUSB制御部1110より通知されたUSBイベントを、本体通信部1030を介して受信する(ステップS202)。接続検知部1070は、受信したUSBイベントからマスストレージ500及びカードリーダ400の接続を検知する。
【0069】
なお、プリンタ1000の電源がオフからオンとなった場合、接続検知部1070はNIC OSに問合せを行い、マスストレージ500が接続されているか否かの結果をNIC OSから取得し、マスストレージ500の接続を判断する。この場合、ステップS200及びS201の処理は行われない。電源がオンとなり、且つマスストレージ500が接続されていると判定された場合には、ステップS204でYESに処理が移る。これにより、電源がオフからオンで共通鍵が変更になる。
【0070】
続いて、接続検知部1070は、ステップS202にて受信したUSBイベントの種類を判断する(ステップS203)。USBイベントにてカードリーダ400又はマスストレージ500が接続されたことが示されている場合には、処理はステップS204へと進む。一方、カードリーダ400又はマスストレージ500との接続が切断されたことが示されている場合には、処理はUSB切断処理であるステップS250に進む。
【0071】
USBイベントによりカードリーダ400又はマスストレージ500が接続されたことが示されている場合、接続検知部1070は、USBイベントにてマスストレージ500の接続が示されているか否かを判定する(ステップS204)。USBイベントにてマスストレージ500の接続が示されている場合、処理はステップS209に進み、USBイベントにてマスストレージ500以外の機器の接続が示されている場合には、処理はステップS205に進む。
【0072】
USBイベントにてマスストレージ500以外の機器の接続が示されている場合、接続検知部1070は、USBイベントによりカードリーダ400の接続が示されているか否かを判定する(ステップS205)。USBイベントによりカードリーダ400の接続が示されている場合、処理はステップS205−1に進み、USBイベントによりカードリーダ400の接続が示されていない場合、処理は終了する。
【0073】
USBイベントによりカードリーダ400の接続が示されている場合、本体通信部1030は、カードリーダ400のポーリング開始命令を発効する(ステップS205−1)。
【0074】
続いて、USB制御部1110は、本体通信部1030からのカードリーダ400のポーリング開始命令を受信する(ステップS206)。
【0075】
続いて、USB制御部1110は、接続されたカードリーダ400にポーリング開始コマンドを送信する(ステップS207)。これにより、カードリーダ400にICカードがかざされるとICカードからICカード番号を取得できる。
【0076】
一方、ステップS204にてUSBイベントにてマスストレージ500の接続が示されている場合、ジョブ管理部1040は、現在設定されている動作モードを判定する(ステップS209)。動作モードの設定内容は設定ファイルとして記憶部3004であるHDDに保存されるため、電源のオフ/オンを行なっても設定は保存される。本処理は、本発明の設定手段の一処理例である。
【0077】
上記設定はアプリケーションプログラムが持つWebページより変更が可能であり、管理者はクライアント端末100のWebブラウザ等を介して動作モードの設定を変更するものとする。動作モードが「保存」であれば処理はステップS210に進み、動作モードが「削除」であれば処理はステップS211へ進む。
【0078】
動作モードが「保存」である場合、鍵情報生成部1090は、RAM4002上に共通鍵が存在するかを確認する(ステップS210)。共通鍵が存在する場合、処理はステップS216に進む。一方、共通鍵が存在しない場合(例えば、電源オフで共通鍵がRAM4002からクリアされる場合)、即ちプリンタ1000の起動時には、処理はステップS211に進む。
【0079】
共通鍵が存在しない場合、本体通信部1030は、マスストレージ500内の全データ削除要求を発効する(ステップS211)。
【0080】
続いて、鍵情報生成部1090は、共通鍵を生成し、RAM4002上で保持する(ステップS212)。本実施形態においては、共通鍵はマスストレージ500が接続された時間(タイムスタンプ)を用いて生成するが、共通鍵の生成方法はこれに限定されず、乱数を用いて共通鍵を生成するようにしても良い。
【0081】
続いて、本体通信部1030は、RAM4002上にて保持されるマスストレージ接続フラグをTRUEにする(ステップS213)。このマスストレージ接続フラグはRAM4002上で管理されるため、電源オフでクリアされる。これにより、例えば、業務を終了する場合に電源オフすることで共通鍵が変更されることになり、業務終了後にマスストレージを不正利用されたとしても電源オン時に新たな共通鍵が生成されるためセキュリティを確保することが可能となる。次回電源をオンにした場合に新しい共通鍵が生成され、古い共通鍵から新しい共通鍵に変更される。このように本実施形態では適切なタイミングで共通鍵の変更がなされる。
【0082】
USB制御部1110は、マスストレージ500内の全データ削除要求を本体通信部1030から受信する(ステップS214)。続いて、USB制御部1110は、マスストレージ500に対して全データ削除処理を行う(ステップS215)。ステップS215は、本発明の第3の削除手段の一処理例である。
【0083】
ステップS210にてRAM4002上に共通鍵が存在すると判定された場合、鍵情報生成部1090は、RAM4002上で保持されている共通鍵を旧鍵として取得する(ステップS216)。
【0084】
続いて、鍵情報生成部1090は、新たに共通鍵を生成し、RAM4002上で保持する(ステップS217)。このとき、既にRAM4002上で保持していた共通鍵は削除(上書き)される。本実施形態では、共通鍵はマスストレージ500が接続された時間(タイムスタンプ)を用いて生成される。但し、共通鍵の生成方法はこれに限るものではなく、乱数を用いて生成するようにしても良い。なお、ステップS217は、本発明の鍵情報生成手段の一処理例である。また、共通鍵は、本発明の鍵情報の適用例となる構成である。
【0085】
続いて、ジョブ管理部1040は、RAM4002上にて保持されているジョブ情報リストを取得する(ステップS218)。なお、ジョブ情報リストとは、出力対象のジョブデータが列挙されたリストであり、本発明の一覧記憶手段の一例である。そのリストの生成処理の詳細についてはステップS309にて後述する。
【0086】
続いて、ジョブ管理部1040は、ステップS218にて取得したジョブ情報リスト内に、未確認のジョブ情報が存在するかを検索する(ステップS219)。未確認のジョブ情報が存在する場合には、処理はステップS220に進み、未確認のジョブ情報が存在しない場合(全てのジョブ情報を確認した場合)には、処理はステップS236に進む。
【0087】
続いて、本体通信部1030は、ジョブ情報リストに存在する未確認のジョブ情報のファイル名を取得し、該当するジョブデータの取得要求を送信する(ステップS220)。このジョブデータの取得要求には、ジョブデータを特定するための識別情報(ファイル名)が送信される。これにより、ジョブデータの取得が可能となる。
【0088】
続いて、USB制御部1110は、ジョブデータの取得要求を受信する(ステップS221)。
【0089】
続いて、USB制御部1110は、ジョブデータの取得要求に含まれるファイル名からマスストレージ500のジョブデータを特定し、マスストレージ500より当該ジョブデータを取得する(ステップS222)。
【0090】
続いて、USB制御部1110は、ステップS222で取得したジョブデータをマスストレージ500から削除する。ここでも、ジョブデータを特定するための識別情報(ファイル名)を用いて削除処理が行われる。
【0091】
続いて、USB制御部1110は、ステップS222で取得したジョブデータを送信する(ステップS224)。
【0092】
続いて、本体通信部1030は、ジョブデータを取得する(ステップS225)。ステップS225は、本発明の第1のデータ取得手段の一処理例である。
【0093】
続いて、ジョブ管理部1040は、ステップS225にてジョブデータが取得されたかを確認する(ステップS226)。ジョブデータを取得できなかった場合、処理はステップS235に進み、ジョブデータを取得できた場合、処理はステップS227に進む。なお、ジョブデータを取得できなかった場合とは、ジョブ情報リストには当該ジョブデータのファイル名が存在したが、当該ジョブデータがマスストレージ500内に存在しない場合である。例えば、別のプリンタに接続されていたマスストレージが当該プリンタ1000に接続された場合等が挙げられる。
【0094】
続いて、復号化部1060は、ステップS216で取得された旧鍵を使用して、ステップS225で取得されたジョブデータを復号化する(ステップS227)。ステップS227は、本発明の第2の復号化の一処理例である。
【0095】
続いて、復号化部1060は、ステップS227での復号化処理の結果を判断する(ステップS228)。復号化に失敗した場合、処理はステップS235に進み、復号化に成功した場合、処理はステップS229に進む。なお、復号化に失敗する場合としては、例えば、別のプリンタに接続されていたマスストレージが当該プリンタ1000に接続され、且つ偶然にも同じファイル名が存在した場合が挙げられる。このような場合、共通鍵が異なるため、復号化に失敗することになる。
【0096】
続いて、ジョブ管理部1040は、ステップS237で復号化されたジョブデータの解析を行う(ステップS229)。ここでは、ジョブデータ内部のヘッダ情報が解析され、印刷を行ったユーザ名及びジョブ名(ドキュメント名)が取得される。
【0097】
続いて、ジョブ管理部1040は、ステップS229で解析したユーザ名及びジョブ名が、ジョブ情報リストに登録されているものと相違ないか照合する(ステップS230)。ステップS229で解析されたユーザ名及びジョブ名とジョブ情報リストに登録されているユーザ名及びジョブ名とが同じであれば、処理はステップS231に進み、異なれば処理はステップS235に進む。
【0098】
ステップS229で解析されたユーザ名及びジョブ名とジョブ情報リストに登録されているユーザ名及びジョブ名とが同じである場合、暗号化部1050は、ステップS217で生成された共通鍵を使用してステップS227で復号化されたジョブデータを暗号化する(ステップS231)。なお、ステップS231は、本発明の暗号化手段の一処理例である。
【0099】
続いて、書込部1080は、本体通信部1030を介して、ステップS231で作成されたジョブデータについてマスストレージへの格納要求を送信する(ステップS232)。このとき、マスストレージ500におけるジョブデータの格納先は、暫定的な一時フォルダである。詳細は後述するが、ジョブ情報リスト内の全ジョブ情報に該当するジョブデータに対して共通鍵の変更処理(ステップS219〜ステップS235)が完了した後、一時フォルダ以外の領域に格納されるファイルを削除し、一時フォルダ内のデータを監視対象フォルダに移動する(ステップS236〜S243)。
【0100】
続いて、USB制御部1110は、ジョブデータの格納要求を受信する(ステップS233)。
【0101】
続いて、USB制御部1110は、受信した格納要求により指定されたマスストレージ500の一時フォルダにジョブデータを格納する(ステップS234)。ステップS243は、本発明の書込手段の一処理例である。
【0102】
ステップS235では、ジョブ管理部1040は、ジョブ情報リストから当該ファイル名に対応するジョブ情報を削除する。
【0103】
ステップS219にてジョブ情報リストに未確認のジョブデータが存在しない場合、鍵情報生成部1090は、RAM4002上で保持されている旧鍵を削除する(ステップS236)。ステップS236は、本発明の第1の削除手段の一処理例である。
【0104】
続いて、本体通信部1030は、マスストレージ500内の一時フォルダ以外の領域に格納されるファイルの削除要求を送信する(ステップS237)。
【0105】
続いて、USB制御部1110は、マスストレージ500内の一時フォルダ以外の領域に格納されるファイルの削除要求を受信する(ステップS238)。
【0106】
続いて、USB制御部1110は、マスストレージ500内の一時フォルダ以外の領域に格納されるファイルを削除する(ステップS239)。
【0107】
続いて、本体通信部1030は、マスストレージ500内の一時フォルダ内のファイル(ジョブデータ)の移動要求を送信する(ステップS240)。
【0108】
続いて、ジョブ管理部1040は、マスストレージ500内の一時フォルダ内のファイル(ジョブデータ)の移動要求を受信する(ステップS241)。
【0109】
続いて、ジョブ管理部1040は、マスストレージ500内の一時フォルダ内のファイル(ジョブデータ)を監視対象フォルダに移動する(ステップS242)。
【0110】
続いて、本体通信部1030は、RAM4002上にて保持されるマスストレージ接続フラグをTRUEにする(ステップS243)。なお、マスストレージ接続フラグがTRUEである場合にはマスストレージが接続されていることを意味し、後述するステップS303の判断に利用する。
【0111】
図7Dは、図7AのステップS250の詳細を示すフローチャートである。ステップS202にて受信したUSBイベントによりカードリーダ400又はマスストレージ500との接続が切断されたことが示されている場合、接続検知部1070は、接続が切断された機器がマスストレージ500であるか否かを判定する(ステップS250)。切断された機器がマスストレージ500である場合、処理はステップS251に進み、切断された機器がマスストレージ500以外の機器である場合、処理は終了する。
【0112】
接続が切断された機器がマスストレージ500である場合、本体通信部1030は、RAM4002上にて保持されるマスストレージ接続フラグをFALSEにする(ステップS251)。なお、マスストレージ接続フラグがFALSEであるのは、マスストレージ500が接続されていないことを意味し、後述するステップS303の判断に利用される。
【0113】
また、ステップS203にて判定されたUSBイベントの種類が"マスストレージの切断"だった場合、RAM4002からジョブ情報リストをクリアすると共に共通鍵を削除する。これにより、マスストレージ500が抜かれた場合、その時点で共通鍵の削除とジョブ情報リストのクリアを行うため、マスストレージ500の抜き差しにおける情報漏洩に対する強度を高めることが可能となる。この場合、次にマスストレージ500が差された場合、ステップS211に処理が移り、自動的にマスストレージ500内のデータが削除される。本処理は、本発明の第2の削除手段の一処理例である。
尚、ステップS203にて判定されたUSBイベントの種類が"マスストレージの切断"だった場合、RAM4002からジョブ情報リストをクリアすると共に共通鍵を削除するようにするかは、管理者はクライアント端末100のWebブラウザ等を介して設定することが可能である。
【0114】
なお、他の実施形態として、ジョブ情報リスト及び共通鍵を内部メモリ4005に格納してもよい。これによって、例えば、プリンタ1000の不具合で電源のオフとオンを行った場合にもマスストレージ500内のジョブデータを継続して出力することが可能となる。この場合にも、ステップS203にて判定されたUSBイベントの種類が"マスストレージの切断"だった場合、内部メモリ4005からジョブ情報リストをクリアしたり、共通鍵を削除する。
【0115】
図8は、ジョブデータの印刷時の処理を示すフローチャートである。先ず、クライアント端末100上の印刷データ生成部(プリンタドライバ)110は、クライアント端末100のアプリケーションプログラムにて作成されたデータから、プリンタ1000が解析可能なデータ(ジョブデータ)を作成する(ステップS300)。
【0116】
印刷データ生成部110は、ステップS300にて作成されたジョブデータをプリンタ1000に送信する(ステップS301)。
【0117】
プリンタ1000の通信I/Fコントローラ4003は、クライアント端末100からジョブデータを受信する(ステップS302)。なお、図8のステップS302は、アプリケーションが受信するように表わされているが、これは通信I/Fコントローラ4003の受信を意味するステップである。
【0118】
印刷データ監視部1010は、ストレージ接続フラグを判断する(ステップS303)。ストレージ接続フラグがTRUEである場合、処理はステップS307へ、FALSEである場合、処理はステップS305へ進む。
【0119】
なお、アプリケーションプログラムは、ストレージ接続フラグがTRUEである場合には、通信I/Fコントローラ4003で受信したジョブデータを取得(フック)する。これは、NIC OSがこのジョブデータを取得する前に、印刷データ監視部1010が当該ジョブデータを取得(フック)する。
【0120】
ストレージ接続フラグがFALSEである場合、印刷部1120はジョブデータを取得する(ステップS305)。
【0121】
続いて、印刷部1120はジョブデータを出力する(ステップS306)。
【0122】
ステップS303にてストレージ接続フラグがTRUEと判定された場合、印刷データ監視部1010は、ジョブデータを取得(フック)する(ステップS307)。ジョブデータはプリンタ1000上の印刷部1120には送られない。
【0123】
続いて、ジョブ管理部1040は、ステップS307で取得されたジョブデータを解析する(ステップS308)。ここでは、ジョブデータからユーザ名(印刷指示者)及びジョブ名が取得される。また、ジョブ管理部1040は、ジョブデータの受信を開始した時点でのタイムスタンプも取得する。
【0124】
続いて、ジョブ管理部1040は、ステップS308で取得されたユーザ名、ジョブ名及びタイムスタンプ、そしてファイル名を、ジョブ情報リストに追記する(ステップS309)。ジョブ情報リストはRAM4002上で管理されるため、電源オフで内容はクリアされる。図11は、ジョブ情報リストの構成を模式的に示す図である。図11に示すように、ジョブ情報リストには、ジョブ情報毎に、ユーザ名、ファイル名、ジョブ名及びタイムスタンプが登録される。
【0125】
続いて、暗号化部1050は、ステップS211又はS217で生成された共通鍵にて、ステップS307で取得されたジョブデータを暗号化する(ステップS310)。
【0126】
続いて、書込部1080は、本体通信部1030を介して、ステップS310にて暗号化されたジョブデータの保存命令を送信する(ステップS311)。
【0127】
続いて、USB制御部1110は、本体通信部1030を介してジョブデータ保存命令を受信する(ステップS312)。
【0128】
続いて、USB制御部1110は、マスストレージ500内にジョブデータを保存する(ステップS313)。
【0129】
図9A〜図9Bは、ジョブデータのジョブ出力時における処理の流れを示すフローチャートである。先ず、カードリーダ400上のカード読み取り部410は、カードリーダ400にICカードがかざされたことを検知し、ICカード番号を取得する(ステップS400)。
【0130】
続いて、プリンタ1000上の接続検知部1070は、カードリーダ400にICカードがかざされたことを検知する(ステップS401)。
【0131】
続いて、接続検知部1070は、カードリーダ400にかざされたICカードのICカード番号を取得する(ステップS402)。なお、ICカードは、本発明における記録媒体の適用例となる構成であり、ICカード番号は本発明における識別情報の適用例となる構成である。また、ステップS402は、本発明の識別情報取得手段の一処理例である。
【0132】
続いて、認証通信部1020は、ステップS402で取得されたICカード番号を用いて、認証サーバ200に対して認証要求コマンドを送信する(ステップS403)。
【0133】
認証サーバ200上の認証部210は、認証要求コマンドを受信する(ステップS404)。
【0134】
認証部210は、ステップS404で受信された認証要求コマンド内のICカード番号を取得し、認証サーバ200上で管理されている認証テーブル(図10)に当該ICカード番号が存在するか確認する(ステップS405)。ICカード番号が存在する場合、認証部210はそのICカード番号に該当するユーザ名を取得する。
【0135】
続いて、認証部210は、ステップS405で行った認証処理の結果をプリンタ1000に返す(ステップS406)。認証OKの場合は認証OKフラグ及びユーザ名を、認証NGの場合は認証NGフラグ及びNGの理由が認証結果としてプリンタ1000に返信される。
【0136】
続いて、プリンタ1000の認証通信部1020は、認証サーバ200より返信された認証結果を受信する(ステップS407)。
【0137】
続いて、認証通信部1020は、ステップS408にて受信された認証結果を解析する(ステップS408)。
【0138】
続いて、認証通信部1020は、認証結果がOKであるか、NGであるかを判断する(ステップS409)。認証結果がOKである場合、処理はステップS410に進む。認証結果がNGである場合、処理は終了する。
【0139】
認証結果がOKである場合、認証通信部1020は、ステップS407で取得された認証結果からユーザ名を取得する(ステップS410)。
【0140】
続いて、ジョブ管理部1040は、ステップS410で取得されたユーザ名をキーにして、ジョブ情報リスト内に当該ユーザのジョブ情報が存在するかを検索する(ステップS411)。ステップS411は、本発明の検索手段の一処理例である。
【0141】
続いて、ジョブ管理部1040は、ジョブ情報リストに当該ユーザのジョブ情報が存在するかを判断する(ステップS412)。当該ユーザのジョブ情報が存在する場合、処理はステップS413へ進み、当該ユーザのジョブ情報が存在しない場合、処理が終了する。ここで、該当するジョブ情報の一覧を別リストとして格納し、タイムスタンプ順でソートをかけて出力処理を行なっても良い。
【0142】
当該ユーザのジョブ情報が存在する場合、本体通信部1030は、当該ジョブ情報に該当するジョブデータの取得要求を送信する(ステップS413)。ここで取得要求を行うジョブデータは一つとする。なお、ジョブデータの取得要求を行う場合には、取得するジョブデータのファイル名も送信される。
【0143】
続いて、プリンタ1000上のUSB制御部1110は、ファイル名とともにジョブデータの取得要求を受信する(ステップS414)。
【0144】
続いて、USB制御部1110は、ファイル名を用いてマスストレージ500より該当するジョブデータを取得する(ステップS415)。
【0145】
続いて、USB制御部1110は、ステップS415で取得されたジョブデータを本体通信部1030に送信する(ステップS416)。
【0146】
続いて、本体通信部1030は、USB制御部1110を介して、マスストレージ500から取得されたジョブデータを受信する(ステップS417)。ステップS417は、本発明の第2のデータ取得手段の一処理例である。
【0147】
続いて、復号化部1060は、ステップS417で取得されたジョブデータを、ステップS212又はステップS217で生成された共通鍵で復号化する(ステップS418)。ステップS418は、本発明の第1の復号化手段の一処理例である。
【0148】
続いて、本体通信部1030は、ステップS418で復号化されたジョブデータを印刷部1120に送信する(ステップS419)。
【0149】
続いて、印刷部1120はジョブデータを受信する(ステップS420)。続いて、印刷部1120は、受信したジョブデータを出力する(ステップS421)。ステップS421は、本発明の出力制御手段の一処理例である。
【0150】
本体通信部1030は、マスストレージ500の当該ジョブデータの削除要求を送信する(ステップS422)。ジョブデータ削除要求を行う際には、ジョブデータのファイル名も送るものとする。
【0151】
続いて、USB制御部1110は、マスストレージ500の当該ジョブデータ削除要求とともにファイル名を受信する(ステップS423)。
【0152】
続いて、USB制御部1110は、ファイル名を用いてマスストレージ500内のジョブデータを特定し、当該ジョブデータを削除する(ステップS424)。
【0153】
ジョブ管理部1040は、マスストレージ500から削除したジョブデータのジョブ情報を、ジョブ情報リストから削除する(ステップS425)。
【0154】
本実施形態においては、マスストレージ500の接続が検知された場合、マスストレージ500に記録されるジョブデータを暗号化及び復号化するための共通鍵を生成するようにしている。従って、全てのプリンタにおいてマスストレージ500内のデータを暗号化及び復号化させるための鍵情報が異なることになり、マスストレージ500が盗まれたとしても他のプリンタにてジョブデータを復号化させることができない。このように、本実施形態によれば、適切なタイミングで共通鍵を生成することによりセキュリティを向上させることが可能となる。
【0155】
また、万が一共通鍵が流出してしまってとしても、プリンタ1000の電源オフで共通鍵は削除されてしまうため、セキュリティを確保することが可能となる。
【0156】
さらに、セキュリティは向上するにも関わらず、暗号化方式は従来通りの共通鍵暗号化方式を用いているため、暗号化処理及び復号化処理に要するスピードが低下することはない。
【0157】
本実施形態では、このようにジョブデータが盗まれる可能性の高いタイミングで適切に共通鍵を変更することによってセキュリティを維持することが可能となる。
【0158】
また、本実施形態では、RAM4002に共通鍵を保持するようにしているため、プリンタ1000の電源オフによりRAM4002から共通鍵が削除されるが、他の実施形態として、共通鍵をプリンタ1000のHDD等に格納してもよい。この場合には、電源オフにより当該HDDから共通鍵を削除する命令は発行して、共通鍵を削除する。
【0159】
さらに、本実施形態では、ICカードのICカード番号に対応するユーザ名を認証サーバ200から取得するようにしているが、ICカードからユーザ名を直接取得するようにし、認証サーバ200を不要とする構成にしてもよい。
【0160】
上述した本発明の実施形態を構成する各手段及び各ステップは、コンピュータのRAMやROM等に記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【0161】
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施形態も可能であり、具体的には、一つの機器からなる装置に適用してもよい。
【0162】
なお、本発明は、上述した実施形態の機能を実現するソフトウェアのプログラムを、システム又は装置に直接、又は遠隔から供給する。そして、そのシステム又は装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【0163】
従って、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
【0164】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。更に、そのプログラムの指示に基づき、コンピュータ上で稼動しているOS等が、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0165】
更に、その他の方法として、まず記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【符号の説明】
【0166】
100 クライアント端末
110 印刷データ生成部
160 USBケーブル
200 認証サーバ
210 認証部
300 LAN
400 カードリーダ
410 カード読み取り部
500 マスストレージ
510 ファイルシステム
600 USBハブ
700 NIC
1000 プリンタ
1010 印刷データ監視部
1020 認証通信部
1030 本体通信部
1040 ジョブ管理部
1050 暗号化部
1060 復号化部
1070 接続検知部
1080 書込部
1090 鍵情報生成部
1110 USB制御部
1120 印刷部

【特許請求の範囲】
【請求項1】
画像形成装置で出力するためのデータを記録する記録装置と接続され、前記記録装置に記録されるデータを出力することが可能な画像形成装置に設けられるネットワークインタフェース装置であって、
前記記録装置の接続を検知する接続検知手段と、
前記接続検知手段にて前記記録装置の接続が検知された場合、前記データを暗号化及び復号化するための新たな鍵情報を生成する鍵情報生成手段と、
前記鍵情報生成手段にて生成された前記新たな鍵情報を用いて、前記データを暗号化する暗号化手段と、
前記暗号化手段にて暗号化された前記データを前記記録装置に書き込む書込手段と、
前記鍵情報生成手段にて生成された前記新たな鍵情報を用いて、前記書込手段により前記記録装置に書き込まれた前記データを復号化する第1の復号化手段とを有することを特徴とするネットワークインタフェース装置。
【請求項2】
前記記録装置に記録される前記データを、前記鍵情報生成手段で前記新たな鍵情報より前に生成された鍵情報を用いて復号化する第2の復号化手段を更に有し、
前記暗号化手段は、前記第2の復号化手段により復号化された前記データを前記新たな鍵情報を用いて暗号化することを特徴とする請求項1に記載のネットワークインタフェース装置。
【請求項3】
前記記録装置に記録されるデータの一覧を記憶する一覧記憶手段と、
前記一覧に含まれるデータを前記記録装置から取得する第1のデータ取得手段とを更に有し、
前記第2の復号化手段は、前記第1のデータ取得手段により取得されたデータを、前記鍵情報生成手段で生成された新たな鍵情報より前に生成された鍵情報を用いて復号化することを特徴とする請求項2に記載のネットワークインタフェース装置。
【請求項4】
前記第2の復号化手段で前記記録装置に記録される前記データを前記新たな鍵情報より前に生成された鍵情報を用いて復号化した場合、復号化に用いた当該新たな鍵情報より前に生成された鍵情報を削除する第1の削除手段を更に有することを特徴とする請求項2又は3に記載のネットワークインタフェース装置。
【請求項5】
前記接続検知手段により前記記録装置との接続が切断されたことが検知された場合、前記鍵情報生成手段により生成された前記新たな鍵情報を削除する第2の削除手段を更に有することを特徴とする請求項1乃至4の何れか1項に記載のネットワークインタフェース装置。
【請求項6】
前記接続検知手段により前記記録装置の接続が検知された場合、前記記録装置に記録される前記データを前記記録装置から削除するか否かを設定する設定手段を更に有することを特徴とする請求項1乃至5の何れか1項に記載のネットワークインタフェース装置。
【請求項7】
前記設定手段により前記記録装置から前記データを削除すると設定された場合、前記接続検知手段により前記記録装置の接続が検知されると、前記記録装置から前記データを削除する第3の削除手段を更に有することを特徴とする請求項6に記載のネットワークインタフェース装置。
【請求項8】
前記設定手段により前記記録装置から前記データを削除しないと設定された場合、前記第2の復号化手段で前記記録装置に記録される前記データを復号化することを特徴とする請求項6に記載のネットワークインタフェース装置。
【請求項9】
ユーザを識別するための記録媒体に記録される識別情報を取得する識別情報取得手段と、
前記識別情報に該当するユーザのデータを前記一覧記憶手段で記憶する一覧から検索する検索手段をさらに有し、
前記第1の復号化手段は、前記検索手段により検索されたデータを前記記録装置から取得して復号化することを特徴とする請求項8に記載のネットワークインタフェース装置。
【請求項10】
データを記録する記録装置と接続され、前記記録装置に記録されるデータを出力する画像形成装置であって、
前記記録装置の接続を検知する接続検知手段と、
前記接続検知手段にて前記記録装置の接続が検知された場合、前記データを暗号化及び復号化するための新たな鍵情報を生成する鍵情報生成手段と、
前記鍵情報生成手段にて生成された前記新たな鍵情報を用いて、前記データを暗号化する暗号化手段と、
前記暗号化手段にて暗号化された前記データを前記記録装置に書き込む書込手段と、
前記鍵情報生成手段にて生成された前記新たな鍵情報を用いて、前記書込手段により前記記録装置に書き込まれた前記データを復号化する復号化手段と、
前記復号化手段により復号化された前記データを出力させる出力制御手段とを有することを特徴とする画像形成装置。
【請求項11】
画像形成装置で出力するためのデータを記録する記録装置と接続され、前記記録装置に記録されるデータを出力することが可能な画像形成装置に設けられるネットワークインタフェース装置の制御方法であって、
前記記録装置の接続を検知する接続検知ステップと、
前記接続検知ステップにて前記記録装置の接続が検知された場合、前記データを暗号化及び復号化するための新たな鍵情報を生成する鍵情報生成ステップと、
前記鍵情報生成ステップにて生成された前記新たな鍵情報を用いて、前記データを暗号化する暗号化ステップと、
前記暗号化ステップにて暗号化された前記データを前記記録装置に書き込む書込ステップと、
前記鍵情報生成ステップにて生成された前記新たな鍵情報を用いて、前記書込ステップにより前記記録装置に書き込まれた前記データを復号化する復号化ステップとを含むことを特徴とするネットワークインタフェース装置の制御方法。
【請求項12】
画像形成装置で出力するためのデータを記録する記録装置と接続され、前記記録装置に記録されるデータを出力することが可能な画像形成装置に設けられるネットワークインタフェース装置の制御方法をコンピュータに実行させるためのプログラムであって、
前記記録装置の接続を検知する接続検知ステップと、
前記接続検知ステップにて前記記録装置の接続が検知された場合、前記データを暗号化及び復号化するための新たな鍵情報を生成する鍵情報生成ステップと、
前記鍵情報生成ステップにて生成された前記新たな鍵情報を用いて、前記データを暗号化する暗号化ステップと、
前記暗号化ステップにて暗号化された前記データを前記記録装置に書き込む書込ステップと、
前記鍵情報生成ステップにて生成された前記新たな鍵情報を用いて、前記書込ステップにより前記記録装置に書き込まれた前記データを復号化する復号化ステップとをコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7A】
image rotate

【図7B】
image rotate

【図7C】
image rotate

【図7D】
image rotate

【図8】
image rotate

【図9A】
image rotate

【図9B】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2012−239230(P2012−239230A)
【公開日】平成24年12月6日(2012.12.6)
【国際特許分類】
【出願番号】特願2012−188859(P2012−188859)
【出願日】平成24年8月29日(2012.8.29)
【分割の表示】特願2008−125169(P2008−125169)の分割
【原出願日】平成20年5月12日(2008.5.12)
【出願人】(301015956)キヤノンソフトウェア株式会社 (364)
【Fターム(参考)】