JP2005216029A - 情報処理装置および印刷装置およびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム - Google Patents

情報処理装置および印刷装置およびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム Download PDF

Info

Publication number
JP2005216029A
JP2005216029A JP2004022494A JP2004022494A JP2005216029A JP 2005216029 A JP2005216029 A JP 2005216029A JP 2004022494 A JP2004022494 A JP 2004022494A JP 2004022494 A JP2004022494 A JP 2004022494A JP 2005216029 A JP2005216029 A JP 2005216029A
Authority
JP
Japan
Prior art keywords
print job
attribute
information
public key
data
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.)
Granted
Application number
JP2004022494A
Other languages
English (en)
Other versions
JP2005216029A5 (ja
JP4018645B2 (ja
Inventor
Naomoto Doi
直基 土樋
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2004022494A priority Critical patent/JP4018645B2/ja
Publication of JP2005216029A publication Critical patent/JP2005216029A/ja
Publication of JP2005216029A5 publication Critical patent/JP2005216029A5/ja
Application granted granted Critical
Publication of JP4018645B2 publication Critical patent/JP4018645B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

【課題】 操作者が印刷ジョブを解除可能な状態に遷移させても、秘密鍵情報を取得できなければ、受信されて格納された暗号化されているPDLデータ部分を復号化することができない状態で印刷装置内に一時的に登録させることである。
【解決手段】 ドライバ部102が生成する印刷ジョブをセキュアジョブ生成部103が機密情報が入るPDLデータ部分と付加情報が入る属性部分とに分離し、該分離される前記PDLデータ部分を受信したユーザの公開鍵情報に基づいて暗号化し、さらに、該分離される前記属性部分を受信したデバイスの公開鍵情報に基づいて暗号化してセキュアジョブを生成する構成を特徴とする。
【選択図】 図1

Description

本発明は、プリンタドライバにより生成される印刷ジョブを印刷装置に転送可能な情報処理装置および印刷装置およびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラムに関するものである。
従来、この種の印刷システムにおいては、プライバシ情報の印刷結果を他の人に見られないようにするために、印刷ジョブの生成時に特定な指示を行うことによって、ユーザがホストコンピュータから印刷指示を行っても印刷装置では直ちに印刷を行わず、ホールド状態となり、ユーザが印刷装置に赴き印刷装置の操作パネルを操作することによって当該印刷ジョブを認識、選択し、解除するPINコード(数字によるパスワード)を操作パネルから与えることによってホールド状態が解除されて実際の印刷処理を開始する方式が多数実装されている。
このような印刷方法は一般的に、セキュア印刷、セキュリティ印刷、あるいは機密印刷などと呼ばれる。以下、本提案において、当該印刷方法をセキュア印刷として用語を統一する。また、セキュア印刷される印刷ジョブを特別にセキュアジョブと呼ぶことにする。
セキュア印刷が使われるユースケースとしては、病院の診断情報や給料明細、住民情報など当事者以外に参照されてはいけないプライバシデータの印刷が想定される。
そして、セキュア印刷においては、ホールド(解除待ち)状態になった場合にも、他のジョブの印刷制御を妨げないことが望まれるために、一時的にHDDのような2次記憶装置に格納される。また、セキュア印刷時の印刷ジョブへの特殊な指示とは、セキュア印刷指示属性と解除を行うPINコード属性である。
さらに、一般的にセキュア印刷の機能と、通常の印刷ジョブを送ったらすぐに印刷を開始する通常ジョブ印刷の機能は並存している。
また、従来のセキュア印刷においては、ホストコンピュータで作成される印刷ジョブは平文(暗号化されない、の意味)で生成され、解除に使用されるPINコードも同様に平文で印刷ジョブに添付される。
LANなどのネットワークを介して印刷ジョブをホストコンピュータから印刷装置に送る場合、専用の機器あるいはソフトウエアによって、経路の盗聴、改ざんは比較的容易であり、ネットワーク上に脅威を与える悪意をもった攻撃者がいると想定した場合には、機密情報を印刷するシステムとしては脆弱であるといえる。あるいはIEEE802.11bに代表される無線LANをネットワークインフラとして使用する場合、十分なセキュリティ対策を行わなければ、屋外でも盗聴を行うことが技術的にはより容易である。
さらに、セキュアジョブは印刷装置に蓄えられ、ホールド解除されるまでHDDなどに代表される2次記憶装置に格納されるが、悪意を持った攻撃者が印刷装置に物理的に作用できると想定した場合、印刷装置の電源を切られて、2次記憶装置を抜き取られ持ち出されて内部を解析することにより、技術的に印刷ジョブに含まれる機密情報を取得可能であり、印刷システムとして脆弱であるといえる。
これらの問題に対処するために、印刷ジョブを暗号化し、経路を盗聴したり2次記憶装置を抜き取られて格納された印刷ジョブを解析されたとしても、復号鍵を持っていないために実質的に機密情報が漏洩しないようにする、という対応が考えられる。周辺機器とクライアントPC間でデータを暗号化するシステムとして、特許文献1のシステムが開示されている。
特開2003−169053号公報
そして、上記セキュアジョブを暗号化する場合に、論点としてどこで復号化するか、という問題と誰の鍵で復号化を行うか、という2つの観点から発生する問題が存在する。
例えば復号に使う鍵を、セキュアジョブを発行したユーザが個別に所有するスマートカードのような物理的な媒体に含まれる電気情報として格納された鍵によって提供される第1の方式を想定する。
その場合、印刷装置に入ったセキュアジョブは暗号化されており、鍵の提供がされない場合はまったく中身を解釈することができない。
一方、解除したいセキュアジョブの解除には、印刷ジョブのオーナ名やジョブ名称といった付加情報によって解除対象となるセキュアジョブを選択させるヒントが必要となる。
しかし、セキュアジョブのすべてのデータが暗号化されているとすると、上記のスマートカードが挿入されて復号処理が行われるまで付加情報の読み出しができず、セキュアジョブを選択することができない、という第1の問題点があった。
あるいは、暗号に使う鍵をユーザが所有するスマートカードのような物理的な鍵ではなく、印刷装置が自身の2次記憶装置、あるいは不揮発性メモリ上に静的に電気情報として保有する鍵、例えば公開鍵方式の鍵ペアを想定し、この方式を第2の方式とする。
この場合、予め鍵ペアの一方である公開鍵はホストコンピュータに提供され、公開鍵を元にセキュアジョブは暗号化され、印刷装置に送られることが考えられる。印刷装置に送られたセキュアジョブは印刷装置内部で直ちに印刷装置に含まれた公開鍵方式の鍵ペアのもう一方の秘密鍵(これは印刷装置によって外部に漏れないように管理される)を元に復号され、復号結果がHDDなどの2次記憶装置に保存される。この場合は、予めホストコンピュータがセキュアジョブの生成を行う際に、付加情報として解除用のPINコードが属性として割り当てられ、操作パネルを通して入力されたPINコードが一致した場合に印刷処理を行う、といった動作が想定される。
この方式の場合、セキュアジョブは印刷装置に投入されるとただちに復号化され、2次記憶装置には平文でセキュアジョブのデータが保管されることとなり、攻撃者が印刷装置に物理的に作用できると想定した場合に、印刷装置の電源を切られて、2次記憶装置を抜き取られて内部を解析され、機密情報が暴露されるという脅威に対抗できない、という第2の問題点があった。
本発明は、上記の課題を解決するためになされたもので、本発明の第1の目的は、プリンタドライバにより生成される印刷ジョブを印刷装置に転送可能な情報処理装置において、プリンタドライバが生成する印刷ジョブを機密情報が入るPDLデータ部分と付加情報が入る属性部分とに分離し、該分離される前記PDLデータ部分を受信したユーザの公開鍵情報に基づいて暗号化し、さらに、該分離される前記属性部分を受信したデバイスの公開鍵情報に基づいて暗号化してセキュアジョブを生成することにより、印刷装置に転送された印刷ジョブの属性部分を復号化して、操作者が暗号を解除可能な状態に遷移しても、秘密鍵情報を取得できなければ、受信されて格納された暗号化されているPDLデータ部分を復号化することができない状態で印刷装置内に一時的に登録させることができる暗号化済み印刷ジョブを生成できる利便性と機密性に優れたセキュア印刷処理環境を自在に構築できる情報処理装置およびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラムを提供することである。
本発明の第2の目的は、情報処理装置のプリンタドライバにより生成される印刷ジョブを受信処理可能な印刷装置において、印刷ジョブを受信し、解釈することによってデータの部分が印刷ジョブの属性部分か、PDLデータ部分かを認識し、属性部分は管理される鍵ペア情報のうちの秘密鍵情報に基づいて、復号して取り出された属性部分を前記属性データベース手段に登録し、さらに、前記PDLデータ部分は暗号化したまま前記PDL記憶手段に記憶し、所定のデバイスから前記PDLデータ部分を復号する復号鍵情報を生成し、ユーザ操作によって記憶された印刷ジョブ中から選択される所望の印刷ジョブのスキャア解除を行うと、該印刷ジョブ解除された印刷ジョブの暗号化されているPDLデータを生成された復号鍵情報に基づいて復号化することにより、印刷装置に転送された印刷ジョブの属性部分を復号化して、操作者が暗号を解除可能な状態に遷移しても、秘密鍵情報を取得できなければ、受信されて格納された暗号化されているPDLデータを復号化することができない状態で印刷装置内に一時的に登録させることができる暗号化済み印刷ジョブを生成できる利便性と機密性に優れたセキュア印刷処理環境を自在に構築できる印刷装置およびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラムを提供することである。
本発明に係る第1の発明は、プリンタドライバにより生成される印刷ジョブを印刷装置に転送可能な情報処理装置であって、前記プリンタドライバが生成する印刷ジョブを機密情報が入るPDLデータ部分と付加情報が入る属性部分とに分離し、該分離される前記PDLデータ部分を第1の公開鍵情報に基づいて暗号化し、さらに、該分離される前記属性部分を第2の公開鍵情報に基づいて暗号化して印刷ジョブを生成する印刷ジョブ暗号化手段(例えば図1に示すセキュアジョブ生成部103)を有することを特徴とする。
本発明に係る第2の発明は、プリンタドライバにより生成される印刷ジョブを印刷装置に転送可能な情報処理装置であって、前記プリンタドライバが生成する印刷ジョブを機密情報が入るPDLデータ部分と付加情報が入る属性部分とに分離し、該分離される前記PDLデータ部分を第1の公開鍵情報に基づいて暗号化して暗号化済みPDLデータを出力するデータ暗号化手段と、前記データ暗号化手段により暗号化されたPDLデータと、分離される前記属性部分を含む印刷ジョブを第2の公開鍵情報に基づいて暗号化して印刷ジョブを生成する印刷ジョブ暗号化手段(例えば図11に示すセキュアジョブ生成部1103)とを有することを特徴とする。
本発明に係る第3の発明は、前記印刷装置より通知される第1の公開鍵情報を取得する第1の公開鍵取得手段(例えば図1に示すデバイス公開鍵受信部106)と、ユーザが管理する所定のデバイスより第2の公開鍵情報を取得する第2の公開鍵取得手段(例えば図1に示すカードリーダ部108)とを有することを特徴とする。
本発明に係る第4の発明は、情報処理装置のプリンタドライバにより生成される印刷ジョブを受信処理可能な印刷装置であって、受信する印刷ジョブの個々の属性情報を管理する属性データベース手段と、前記印刷ジョブの前記PDLデータ部分を一時的に記憶しておくPDL記憶手段(例えば図1に示すPDLスプール部154)と、前記印刷ジョブを受信し、解釈することによってデータの部分がセキュアジョブの属性部分か、PDLデータ部分かを認識し、属性部分は第1の復号鍵情報に基づいて、復号して取り出された属性部分を前記属性データベース手段に登録し、さらに、前記PDLデータ部分は暗号化したまま前記PDL記憶手段に記憶させる印刷ジョブ解釈手段(図1に示すパケット判断部153)と、ユーザ操作によって前記PDL記憶手段に記憶された印刷ジョブ中から選択される所望の印刷ジョブの印刷指示を行う印刷指示手段(図1に示すUI部163)と、前記印刷指示手段によって印刷指示された印刷ジョブの暗号化されているPDLデータを第2の復号鍵情報に基づいて復号化するPDLデータ復号化手段(図1に示すPDLデータ復号部157)とを有することを特徴とする。
本発明に係る第5の発明は、印刷装置が所有する秘密鍵情報と公開鍵情報とを鍵ペア情報として管理する公開鍵管理手段(図1に示すデバイス公開鍵管理部161)と、前記公開鍵管理手段によって管理された鍵ペア情報のうち、前記公開鍵情報を前記情報処理装置に通知する公開鍵通知手段(図1に示すデバイス公開鍵送信部162)と、所定のデバイスから前記PDLデータ部分を復号する復号鍵情報を生成する復号鍵生成手段(図1に示す属性復号部155)とを有することを特徴とする。
本発明に係る第6の発明は、前記印刷ジョブ暗号化手段は、前記属性部分あるいは前記PDLデータ部分の暗号化の際に、暗号化対象となるデータに対して暗号化の前段で、可逆圧縮方式による圧縮処理を行うことを特徴とする。
本発明に係る第7の発明は、前記印刷ジョブ解釈手段は、属性部分の復号化の際に、復号化対象となるデータに対して復号化の後段で、可逆圧縮方式による伸張処理を行うことを特徴とする。
本発明に係る第8の発明は、前記PDLデータ復号化手段は、PDLデータ部分の復号化の際に、復号化対象となるデータに対して復号化の後段で、可逆圧縮方式による伸張処理を行うことを特徴とする。
本発明に係る第9の発明は、前記所定のデバイスは、携帯可能な記憶メディアであって、前記印刷装置が備える所定のインタフェースを介して接続可能であることを特徴とする。
本発明に係る第10の発明は、前記所定のデバイスは、携帯可能な記憶メディアであって、前記印刷装置が備える所定のインタフェースを介して接続可能であることを特徴とする。
本発明に係る第11の発明は、前記PDL記憶手段は、揮発性メモリであること特徴とする。
本発明に係る第12の発明は、プリンタドライバにより生成される印刷ジョブを印刷装置に転送可能な情報処理装置におけるデータ処理方法であって、前記プリンタドライバが生成する印刷ジョブを機密情報が入るPDLデータ部分と付加情報が入る属性部分とに分離し、該分離される前記PDLデータ部分を第1の公開鍵情報に基づいて暗号化し、さらに、該分離される前記属性部分を第2の公開鍵情報に基づいて暗号化して印刷ジョブを生成する印刷ジョブ暗号化ステップ(図示しない)を有することを特徴とする。
本発明に係る第13の発明は、プリンタドライバにより生成される印刷ジョブを印刷装置に転送可能な情報処理装置におけるデータ処理方法であって、前記プリンタドライバが生成する印刷ジョブを機密情報が入るPDLデータ部分と付加情報が入る属性部分とに分離し、該分離される前記PDLデータ部分を第1の公開鍵情報に基づいて暗号化して暗号化済みPDLデータを出力するデータ暗号化ステップと、前記データ暗号化ステップにより暗号化されたPDLデータと、分離される前記属性部分を含む印刷ジョブを第2の公開鍵情報に基づいて暗号化して印刷ジョブを生成する印刷ジョブ暗号化ステップ(図示しない)とを有することを特徴とする。
本発明に係る第14の発明は、前記印刷装置より通知される第1の公開鍵情報を取得する第1の公開鍵取得ステップ(図示しない)と、ユーザが管理する所定のデバイスより第2の公開鍵情報を取得する第2の公開鍵取得ステップ(図示しない)とを有することを特徴とする。
本発明に係る第15の発明は、受信する印刷ジョブの個々の属性情報を管理する属性データベース手段を備え、情報処理装置のプリンタドライバにより生成される印刷ジョブを受信処理可能な印刷装置におけるデータ処理方法であって、前記印刷ジョブの前記PDLデータ部分をPDL記憶手段に一時的に記憶しておくPDL記憶ステップと、前記印刷ジョブを受信し、解釈することによってデータの部分がセキュアジョブの属性部分か、PDLデータ部分かを認識し、属性部分は第1の復号鍵情報に基づいて、復号して取り出された属性部分を前記属性データベース手段に登録し、さらに、前記PDLデータ部分は暗号化したまま前記PDL記憶手段に記憶させる印刷ジョブ解釈ステップ(図5に示すステップ(510))と、ユーザ操作によって前記PDL記憶手段に記憶された印刷ジョブ中から選択される所望の印刷ジョブの印刷指示を行う印刷指示ステップと、前記印刷指示ステップによって印刷指示された印刷ジョブの暗号化されているPDLデータを第2の復号鍵情報に基づいて復号化するPDLデータ復号化ステップ(図7に示すステップ(708))とを有することを特徴とする。
本発明に係る第16の発明は、印刷装置が所有する秘密鍵情報と公開鍵情報とを鍵ペア情報として管理する公開鍵管理ステップ(図示しない)と、前記公開鍵管理ステップによって管理された鍵ペア情報のうち、前記公開鍵情報を前記情報処理装置に通知する公開鍵通知ステップ(図示しない)と、所定のデバイスから前記PDLデータ部分を復号する復号鍵情報を生成する復号鍵生成ステップ(図7に示すステップ(708))とを有することを特徴とする。
本発明に係る第17の発明は、前記印刷ジョブ暗号化ステップは、前記属性部分あるいは前記PDLデータ部分の暗号化の際に、暗号化対象となるデータに対して暗号化の前段で、可逆圧縮方式による圧縮処理を行うことを特徴とする。
本発明に係る第18の発明は、前記印刷ジョブ解釈ステップは、属性部分の復号化の際に、復号化対象となるデータに対して復号化の後段で、可逆圧縮方式による伸張処理を行うことを特徴とする。
本発明に係る第19の発明は、前記PDLデータ復号化ステップは、PDLデータ部分の復号化の際に、復号化対象となるデータに対して復号化の後段で、可逆圧縮方式による伸張処理を行うことを特徴とする。
本発明に係る第20の発明は、前記所定のデバイスは、携帯可能な記憶メディアであって、前記印刷装置が備える所定のインタフェースを介して接続可能であることを特徴とする。
本発明に係る第21の発明は、前記PDL記憶手段は、揮発性メモリであること特徴とする。
本発明に係る第22の発明は、第12〜第21の発明のいずれかのデータ処理方法を実行させるためのプログラムをコンピュータが読み取り可能な記憶媒体に格納したことを特徴とする。
本発明に係る第23の発明は、第12〜第21の発明のいずれかのデータ処理方法を実行させるプログラムであることを特徴とする。
本発明によれば、印刷装置に転送された印刷ジョブの属性部分を復号化して、操作者が暗号を解除可能な状態に遷移しても、秘密鍵情報を取得できなければ、受信されて格納された暗号化されているPDLデータを復号化することができない状態で印刷装置内に一時的に登録させることができる暗号化済み印刷ジョブを生成できる利便性と機密性に優れたセキュア印刷処理環境を自在に構築できるという効果を奏する。
次に本発明を実施するための最良の形態について図面を参照して説明する。
〔第1実施形態〕
図1は、本発明の第1実施形態を示すデータ処理装置(ホストコンピュータ)および印刷装置を含む印刷システムの構成を示すブロック図である。
図1において、本印刷システムは印刷ジョブを生成し、印刷装置におくるホストコンピュータ100と、前記印刷ジョブを受信し、電子写真やインクジェットなどの既知の印刷技術により実際の用紙に印刷を行う印刷装置(プリンタ)150と、ホストコンピュータ100と印刷装置150を接続するための既知のインタフェース技術を利用したインタフェース手段170から構成される。
インタフェース手段170はUSB(Universal Serial Bus)や IEEE1284準拠のローカルインタフェースやEthernet(登録商標)やToken−Ringのような有線LANのインタフェース、あるいはIEEE802.11b,Bluetooth(登録商標)のような無線LANのインタフェースであっても構わず、途中経路にルータやスイッチングハブ、あるいはインターネットを介していてもよい。
ホストコンピュータ100は、アプリケーション部101によってGUIを介してユーザが所望する画像データの生成を行う。ドライバ部102は、ホストコンピュータ独自の画像形式から印刷装置150で解釈可能な印刷ジョブへの変換作業を行う。
セキュアジョブ生成部103は、ドライバ部102で生成された印刷ジョブを受け取り、所有者しか解析できないセキュアジョブ(印刷ジョブをセキュリティ対応したもの)への変換作業を行う。この際、前記印刷ジョブを属性部分とPDLデータ部分とに分割して、属性部分を印刷装置が持つ公開鍵を元に暗号化し、PDLデータ部分はユーザが持つ公開鍵を元に暗号化する。
そして、セキュアジョブ生成部103により生成されたセキュアジョブは既存のスプール部104に格納され、I/F105を介して印刷装置150に送られる。
なお、上記セキュアジョブ生成時に必要となるユーザが持つ公開鍵は、印刷処理の前段階でスマートカードなどの公開鍵を電気的に保持し、提供するメディアに保持され、既存のカードリーダ部108によって読み取られ、ユーザ公開鍵記憶部109によって保管され、セキュアジョブ生成部103に提供される。
一方、セキュアジョブ生成時に必要となる印刷装置が持つ公開鍵はインタフェース手段170を介して印刷装置150から供給され、デバイス公開鍵受信部106を介してデバイス公開鍵記憶部107に保管され、セキュアジョブ生成部103に提供される。
セキュアジョブはI/F151を介して印刷装置150に投入される。パケット判断部153は、セキュアジョブの各パケットを監視し、属性部分なら属性復号部155へ、PDLデータ部分ならPDLスプール部154へ転送する。
また、セキュアジョブの送信に先立って、ホストコンピュータ100のデバイス公開鍵受信部106は印刷装置150に対して印刷装置の公開鍵の要求を行うと、その要求に応じて印刷装置150の内部にあるデバイス公開鍵管理部161から印刷装置150に固有の公開鍵をデバイス公開鍵送信部162,インタフェース手段170を介してホストコンピュータ100へ提供を行っている。
属性復号部155において、デバイス公開鍵管理部161よりセキュアジョブの属性部分が送られると、デバイス公開鍵管理部161が保持している公開鍵ペアのもう一方である秘密鍵を使って公開鍵方式によって属性部分を復号化し、属性データを属性DB156に書き込む。
属性DB156は、例えば揮発性メモリであるRAMで構成され、描画処理に関するコピー数や、カラー情報などの印刷情報やジョブ名称やオーナ名などのモニタリング情報を一時的に保持し、描画部159に提供する一方、不図示の操作パネルからの表示要求に合わせてUI部163へセキュアジョブのモニタリングに必要な属性情報の提供を行う。
さて、セキュアジョブは印刷装置150内に入るとホールド(解除待ち)状態となり、データ処理が停止する。ユーザは、カードリーダ部158に、PDLデータ暗号化に使用したものと同じスマートカードなどの公開鍵を提供するメディアが挿入されると、後述の手順によってPDLデータ部分を復号化する復号鍵が提供され、その復号鍵を使って復号化されたPDLデータ部分が描画部159に渡され、印刷データの描画処理が行われ、描画されたイメージデータは電子写真やインクジェット技術などの既知の印刷技術を使うプリンタエンジン部160において実際の用紙に印刷される。
より詳細に説明するために、セキュアジョブの内部情報について説明する。
1つのセキュアジョブは複数のジョブパケットから構成される。セキュアジョブを構成する一連のジョブパケットの集まりをジョブスクリプトと呼ぶ。
ジョブパケットはOSI7階層で言うところのアプリケーション層のプロトコルに相当し、ヘッダ部、パラメータ部から構成されるパケット構造になっている。
図2は、図1に示したホストコンピュータ100から印刷装置150に転送されるジョブパケットの構造を示す説明図である。
図2において、縦軸はバイトを示し、横軸は各バイトのビットを示している。図中において0〜1バイト目のオペレーションコードは、パケットの機能を示す長さ2バイトのIDである。ジョブパケットにおいては以下の値を取ることができる。0x0201はジョブ開始命令を示し、0x0202はジョブ属性設定命令(属性部分)を示し、0x0204はPDLデータ送信命令(PDLデータ部分)を示し、0x0205はジョブ終了命令を示す。
2〜3バイト目のブロック番号は、ジョブパケットを送信した側が、返答を要求する場合に、受信側からの返答が送信側のどの返答要求に対するものであるか、その対応を取るために使用する番号である。
例えばそれぞれブロック番号=1,2,3というジョブパケットを立て続けに送信した時にブロック番号=2というエラーパケットが帰ってきた場合、返答が帰ってきたとき、送信側は、2番目に送ったジョブパケットにエラーが発生したことを特定することが可能である。
4〜5バイト目のパラメータ長はデータ部のバイト長さを示す領域で、0〜64Kバイトまでを示すことが可能である。
6〜7バイト目はジョブパケットの各種フラグを示す領域でそれぞれ以下の値を示す。
エラーフラグの値が「1」の場合、印刷装置で何らかのエラーが発生したことを示す。このフラグは印刷装置からホストコンピュータに送られる返信パケットに付加される。
また、通知フラグの値が「1」の時は、ホストコンピュータからの要求パケットに対する返答ではなく、印刷装置がなんらかの通知事項があることをホストコンピュータに通知することを示している。
さらに、継続フラグの値が「1」の場合は、データ部にすべてのデータが入らなかったため、次のジョブパケットで残りのデータが送られることを示す。次のジョブパケットは前のパケットと同じオペレーションコード、ブロック番号を設定しなくてはならない。
返答要求は、ホストコンピュータから印刷装置に対して返答パケットが必要な場合に1をセットする。0のときは要求パケットは正常に処理された場合には返答は返さない。印刷装置でエラーが発生した場合には返答要求の0/1に関わらす、つねにエラーフラグを1にした返答パケットを送出する。
8〜9バイト目のユーザIDおよび10〜11バイト目のパスワードは、要求パケットでできる操作にセキュリティ的制限を設ける際に認証に使われる領域である。本実施形態には影響しない。
12バイト目以降はオペレーションコードに対応した追加データが格納される。
なお、ジョブ開始オペレーションの場合、追加データとして、ジョブの実行モードが記述される。指定可能な実行モードを以下にあげる。
0x01はジョブの通常実行モードで、当該ジョブは通常ジョブとして印刷装置のキューの最後に追加され、スケジューリングが回ってきたら印刷処理を行う。
0x04はジョブのセキュリティ印刷実行モードで、当該ジョブはセキュアジョブとして扱い、印刷を行わずに鍵が与えられるまでホールド(解除待ち)状態として扱う。
ホストコンピュータ100内部のドライバ部102は暗号化される前の通常と同じ形式のジョブスクリプトを生成する。これはドライバ部102とセキュアジョブ生成部103の処理を分離することによってドライバ部102に負担を与えないようにするためである。
図3は、本発明に係る印刷システムにおける第1のジョブスクリプトが暗号化される仕組みを説明するための模式図である。
図3の(a)は、はドライバ部102が生成したジョブスクリプトで、上部から下部へ順番にジョブパケットが生成される。中の四角いマス一つがジョブパケットである。図3の(a)によれば、ジョブスクリプトは印刷ジョブの開始を告げるジョブ開始命令と、複数個の属性設定命令、複数個のPDLデータ送信命令、ジョブ終了命令によって構成される。セキュアジョブ生成部103は図3の(a)のジョブスクリプトを解析し、図3の(b)のセキュアジョブを生成する。このとき、ジョブパケットのオペレーションコードを判定し、属性設定命令の場合は印刷装置150から提供されたデバイスの公開鍵を用いてジョブパケットのデータ部の暗号化を行い(図3の濃い網掛け部分)、PDLデータ送信命令の場合は、スマートカードなどの公開鍵を提供するメディアから提供されたユーザの公開鍵を用いて暗号化を行う(図3の薄い網掛け部分)。ここでいう暗号化とは、共通鍵方式と公開鍵方式を組み合わせた方法で行われる。
図4は、図1に示したセキュアジョブ生成部103により生成される印刷ジョブを属性設定部分の暗号化属性の構造を示すデータ構造図である。
図4に示すデータ構造は、図2に示したジョブパケットのうち、12バイト目からのデータ部を示しており、オペレーションコードなどの説明は割愛している。
まず、セキュアジョブ生成部103は発生周期が長く、信用できる十分な大きさの乱数を2つ(乱数A,乱数B)生成する。この乱数はそれぞれ属性部分、およびPDLデータ部分の共通鍵暗号方式による暗号鍵として使用される。さらに、属性部分の暗号鍵となる乱数Aはプリンタ150がデバイス公開鍵記憶部107に所有しているプリンタ150の公開鍵によって公開鍵暗号方式による暗号化がなされ、図4に示すデバイス公開鍵で暗号化された属性復号鍵401として添付される。
さらに、乱数Aは後に暗号鍵の正当性を確認するためにハッシュ処理されたハッシュ値である属性復号鍵のハッシュ値402として添付される。
ハッシュ処理は後に鍵の同一性を比較するために使用されるものであり、SHA−1(Secure Hash Algorithm 1)などの公開技術を使用することを想定している。
さらに、PDLデータ部分の暗号鍵となる乱数Bは、ユーザがスマートカードに保持しカードリーダ108を介して一時的にユーザ公開鍵記憶部109に所有しているユーザの公開鍵によって公開鍵方式による暗号化がなされ、図4に示すデバイス公開鍵で暗号化されたPDLデータ復号鍵403として添付される。
さらに乱数Bは後に暗号鍵の正当性を確認するためにハッシュ処理されたハッシュ値であるPDLデータ復号鍵のハッシュ値404として添付される。
同様にハッシュ処理は後に鍵の同一性を比較するために使用されるものであり、SHA−1(Secure Hash Algorithm 1)などの公開技術を使用することを想定している。
PDLデータ送信命令は、PDLデータ部分をジョブパケットに分割して送信する命令であり、通常の印刷ジョブの場合はPDLデータ部分は平文で格納されるが、セキュアジョブの場合は、PDLデータ部分は乱数Bによって共通鍵暗号方式による暗号化を行った結果が添付される。これは後にホールド解除されたときにユーザ公開鍵で暗号化されたPDLデータ復号鍵403の公開鍵方式を用いた復号化によって乱数Bが取り出され、PDLデータが復号可能となる。
ここでいう共通鍵方式の暗号化とは、DES(Data Encryption Standard)や3DES(Triple−DES)),あるいはAES(Advanced Encryption Standard)暗号化方式に代表される共通鍵暗号方式を用いており、ここで与えられる共通鍵は暗号と復号で共通に使用される鍵であり、秘密に保持されなくてはならない。
ホストコンピュータ100はセキュアジョブを生成する毎に異なる乱数を生成してこれを共通鍵として利用し、送信した後は破棄されるため、共通鍵はホストコンピュータには保持されない。
共通鍵はセキュアジョブに添付されるが、共通鍵は後述の公開鍵暗号方式によって暗号化されるため、共通鍵のセキュリティ強度は公開鍵暗号方式に拠っている。
さらに、ここでいう公開鍵の暗号化とは、RSA(Rivest,Shamir,Adelman)暗号化方式に代表される公開鍵方式を用いており、ここで与えられる公開鍵は広く公開できるものである。
公開鍵方式においては対照となる秘密鍵なしに復号化するのは、数学的に素因数分解レベルの難易度があり、十分な鍵長を用いれば高速なコンピュータ環境でも実時間で復号化することが難しいことが証明されている。デバイスの秘密鍵、ユーザの秘密鍵ともセキュアジョブには添付されないために、悪意を持った攻撃者がセキュアジョブの属性、及びPDLデータの中身を解釈するためには、RSA公開鍵暗号を解読しなくてはならず、非常に多くのモチベーションが必要となる。
なお、暗号化属性は属性部分の一部であるが、暗号化そのものに関わる属性であるので、属性そのものは平文(暗号化されない、の意味)で添付されるものである。
次にセキュアジョブがプリンタ150に投入されたときの処理を説明する。
図5は、本発明に係る印刷装置における第1のデータ処理手順の一例を示すフローチャートであり、図1に示したパケット判断部153のデータ処理手順に対応する。なお、(501)〜(512)は各ステップを示す。
パケット判断部153は、プリンタ150の起動とともに動作を開始し、プリンタ150の電源遮断まで処理を継続する。
先ず、ステップ(501)において、初期処理としてSecureFlagをNoに初期化する。そして、ステップ(502)において、ジョブパケットの受信を行う。ジョブパケットを受信すると、ジョブパケットのオペレーションコードを取得し、オペレーションによって処理を分ける。
次に、ステップ(503)において、オペレーションコードがジョブ開始命令かどうか判定し、ジョブ開始命令であると判断した場合は、ステップ(504)において、ジョブ開始命令の実行モードを調査し、そのコードによって通常ジョブかセキュアジョブかを判断して、セキュアジョブであると判断された場合は、ステップ(505)で、SecureFlagをYesに設定する。
そして、ステップ(506)において、属性DBに新規印刷ジョブをエントリして、ステップ(502)へ戻る。
一方、ステップ(503)で、オペレーションコードがジョブ開始命令でないと判断された場合、ステップ(507)において、オペレーションコードが属性設定命令であるか否かを判断して、属性設定命令であると判断された場合、ステップ(508)において属性復号部155に処理が渡され、ステップ(502)へ戻る。
一方、ステップ(507)で、オペレーションコードが属性設定命令でないと判断した場合は、ステップ(509)で、オペレーションコードがPDLデータ送信命令であるか否かを判断して、PDLデータ送信命令であると判断された場合、ステップ(510)において、PDLスプール部154にPDLデータ部分が書き込まれた後、ステップ(502)へ戻る。この場合のPDLデータ部分はユーザの秘密鍵によって暗号化された共通鍵すなわち乱数Bによって共通暗号化されたPDLデータ部分であり、この段階ではまだ復号化はされていない。
一方、ステップ(509)で、PDLデータ送信命令でないと判断した場合は、ステップ(511)で、オペレーションコードがジョブの終了命令であるか否かを判断して、ジョブの終了命令でないと判断された場合は、そのままステップ(502)へ戻り、ジョブの終了命令であると判断された場合、ステップ(512)においてSecureFlagをNoにして初期化され、ステップ(502)に戻る。
次に、図1に示した属性復号部155のデータ処理について説明する。
属性復号部155はパケット判断部153に対する図5に示すステップ(508)で呼ばれて、属性の解釈処理を行う。
図6は、本発明に係る印刷装置における第2のデータ処理手順の一例を示すフローチャートであり、図1に示した属性復号部155のデータ処理手順に対応する。なお、(601)〜(610)は各ステップを示す。
先ず、ステップ(609)において、SecureFlagがYesに設定されているか否かをチェックする。なお、SecureFlagがYesに設定されていると判断した場合は、当該ジョブがセキュアジョブであることを示す。
ここで、セキュアジョブでないと判断した場合は、ステップ(610)で属性値を属性DBに記録して処理を終了する。
一方、ステップ(609)で、SecureFlagがYesに設定されていると判断した場合は、ステップ(601)で属性IDを調査し、暗号化属性の属性IDと一致するかどうかを判断して、暗号化属性の属性IDであると判断した場合は、当該属性は平文で送信されるため特殊パスに入り、ステップ(602)において属性復号鍵をデバイス公開鍵管理部161に保存されているデバイス公開鍵で公開鍵暗号方式で復号化する。
さらに、デバイス公開鍵が一致していないと正しい復号化処理が行えないため、ステップ(603)で、そのチェックのためにハッシュ処理を行う。これはホストコンピュータ100で行われるハッシュ処理と同じアルゴリズムによって行われる。
次に、ステップ(604)において、ハッシュ結果と暗号化属性に添付された属性復号鍵(乱数A)のハッシュ値402と一致するかどうかを判断して、ハッシュが一致すると判断した場合には、ステップ(605)において、属性復号鍵が属性DBに登録され、本処理を終了する。これにより、属性復号化の鍵として利用可能である。
一方、ステップ(604)で、ハッシュが一致しないと判断した場合には、ステップ(606)において、当該セキュアジョブは本機で受信可能ではないとして、キャンセルを行って、本処理を終了する。
このことからセキュアジョブはターゲットとなる印刷装置が一致しないと印刷できないことになる。
一方、ステップ(601)において、暗号化属性でないと判断した場合には、ステップ(607)において、属性データを属性復号鍵で共通鍵方式で復号化する。なお、属性復号鍵はステップ(605)で設定されるため、属性の設定順番としては、最初に暗号化属性であることが求められる。復号処理が完了したら、ステップ(608)において、共通鍵方式で復号化した属性値を属性DBに記録する。この情報は後にセキュアジョブのモニタリングやトランスレート処理に使用されることになる。
次に、ホールド解除処理について説明する。
プリンタ150において、セキュアジョブがPDLスプール部154に格納された時点で、ユーザからのホールド解除待ちを行う。
図7は、本発明に係る印刷装置における第3のデータ処理手順の一例を示すフローチャートであり、図1に示したPDLデータ復号部157のデータ復号処理手順に対応する。なお、(701)〜(708)は各ステップを示す。
また、本処理は、PDLデータ復号部は印刷装置150の起動とともに起動し、以降電源遮断まで処理を継続するものとする。
先ず、ステップ(701)において、操作パネル上に表示されるUIを介して、ユーザに印刷したいセキュアジョブの選択を行わせる。ここで、いずれかのジョブが選択されると、ステップ(702)において、例えばスマートカードをカードリーダ部158に挿入することを操作パネル上の表示によりユーザに催促指示する。
次に、ステップ(703)において、上記スマートカードがプリンタ150に挿入されたとプリンタCPUにより判断されると、ステップ(704)において、スマートカードに復号鍵の公開鍵方式による復号を依頼する。スマートカードから復号鍵、すなわち乱数Bの候補を取得すると、ステップ(705)においてハッシュ処理を行う。これはホストコンピュータ100で行われるハッシュ処理と同じアルゴリズムによって行われる。
次に、ステップ(706)において、ハッシュ結果を暗号化属性の中のPDLデータ復号鍵(乱数B)のハッシュ値404と比較し、両値が一致したかどうかを判断して、乱数Bの候補と暗号化属性の中のPDLデータ復号鍵に対応する乱数Bと一致したと判断した場合は、ステップ(707)において、復号鍵(=乱数B)を用いてPDLデータ部分の復号処理を行い、結果を描画部159に渡して描画、描画結果をプリンタエンジン160に渡し、既知の電子写真技術やインクジェット技術によって実際の用紙に印刷を行い、ステップ(701)に戻る。
一方、ステップ(706)で、一致しないと判断した場合は、ステップ(708)で、復号不可の表示を操作パネル部に行い、ステップ(701)に戻る。
これにより、セキュアジョブはユーザからホールド解除されるまで保管される印刷ジョブである。あるいは一定時間経過後に不図示の従来技術である破棄処理によって破棄が行われる。
本実施形態によれば、セキュアジョブは暗号化属性以外の属性情報、PDLデータ部分ともに配送経路では2種類の鍵を使って暗号化されるため、PDLデータ部分に含まれる機密情報もセキュアジョブに付加された属性も暗号化されるため、通信経路の盗聴に対してセキュアジョブの情報を漏らさず送信可能である。
また、保管されて状態においては、属性DBに属性情報を保持し、よって属性情報は印刷装置に入ってからは平文で格納され、必要な属性値を公開することによりセキュアジョブのモニタリングや追跡が可能である。一方、PDLデータ部分は乱数Bによって共通鍵方式で暗号化され、共通鍵を復号するための公開鍵方式の秘密鍵はユーザ毎に配布されるスマートカードに保持され、印刷装置には復号を行う手がかりは存在しない。喩え印刷装置から2次記憶装置を抜き出したとしても、属性情報は揮発性のRAMから構成される属性DBに格納されており、2次記憶装置に入っていないので解析および改竄することは非常に困難である。
さらに、PDLデータ部分は共通鍵方式で暗号化されており、共通鍵を公開鍵方式によって復号する鍵が印刷装置に保持されていないため、セキュアジョブの解析は非常に困難であり、攻撃者からの高度な攻撃に対してもセキュアジョブ含まれている機密情報の保護が可能である。
〔第2実施形態〕
上記第1実施形態によれば、ジョブスクリプトのPDLデータ部分と属性部分はそれぞれ暗号化されるが、オペレーションコードを解釈するためにジョブパケットの構造は暗号化処理によって隠蔽化されていない。
言い換えると、いくつかのジョブパケットがあり、それぞれいくつの属性設定命令やPDLデータ送信命令があるか特定可能な状態でパケットがネットワーク上を転送されることとなる。
この場合、ある程度ジョブパケットの平文を想定して暗号化した情報を類推することが可能であり、比較的機能強度が弱くなる恐れがある。
そこで、第2実施形態として平文の属性部分と、暗号化されたPDLデータ部分をまとめて印刷装置の共通暗号方式の鍵によって暗号化する方式について説明する。説明は上述した第1実施形態の構成を踏襲するものとし、差分部分についてのみ詳細を述べる。
図8は、本発明に係る印刷システムにおける第2のジョブスクリプトが暗号化される仕組みを説明するための模式図であり、図3に示したジョブスクリプトの構造を改良したセキュアプリントのジョブスクリプトの構造に対応する。
図8の(a)はドライバ部102が生成した通常の印刷ジョブのジョブスクリプトを示しており、図3の(a)と同等である。図8の(b)はセキュアジョブ生成部103がPDLデータ部分だけを暗号化し、ユーザの暗号化属性を添付したジョブスクリプトの中間イメージである。
ここでのPDLデータ部分は、第1実施形態と同等で、乱数Bを用いた共通鍵暗号方式による暗号化を行った結果が添付される(網掛け部分)。一方、属性部分は平文のまま添付される。
図8の(c)はセキュアジョブ生成部103が生成するジョブスクリプトであり、網掛けの部分すなわちデバイス暗号データは、図8の(b)のジョブスクリプト全てを乱数Aで共通鍵暗号化されたものである。ここではジョブパケットのデータ部だけではなく、パケットヘッダも含めてすべてを暗号化される。
言い換えると、図8の(b)に示すジョブスクリプトを1つのデータストリームと見なし、その全てを暗号化しているということができる。PDLデータ部分はすでに暗号鍵Bによって一度暗号化されており、ここでは2重に暗号化さることになる。また、ジョブスクリプトには、暗号化の方法を識別するために先頭にデバイス暗号命令と、暗号化の情報を示すデバイス鍵暗号化属性設定の2つのジョブパケットが付加されている。この二つは平文で添付される。
図9は、図8に示したユーザ鍵暗号化属性のうち、ジョブパケットのヘッダ部分を省略したデータ部を記述を説明する図である。
図9において、901は属性の役割を示す属性IDで、指定属性がユーザ鍵暗号化属性であることを示す。902はユーザがスマートカードなどの鍵メディアに所有する公開鍵で暗号化されたPDLデータ復号鍵(乱数B)を示し、これは図4に示したPDLデータ復号鍵403に相当する。
903はPDLデータ復号鍵(乱数B)のハッシュ値を示し、これは図4に示したPDLデータ復号鍵のハッシュ404に相当する。PDLデータ部分は乱数Bを用いて共通鍵暗号方式によって暗号化され、ジョブパケットとして添付される(図の網掛け部分)。一方、属性部分はこの段階では平文のままである。
なお、図8の(b)に示したジョブスクリプトは内部的に一時的に生成されるジョブスクリプトであり、実際に通信経路上には流れることはない。
図10は、図8に示したデバイス鍵暗号化属性のうち、ジョブパケットのヘッダ部分を省略したデータ部分を記述を説明する図である。
図10において、1001は属性の役割を示す属性IDで、指定属性がデバイス鍵暗号化属性であることを示す。1002はデバイス公開鍵で暗号化されたジョブスクリプト復号鍵(乱数A)を示し、これは図4に示すデバイス公開鍵で暗号化された属性復号鍵401に相当する。1003はジョブスクリプト復号鍵(乱数A)のハッシュ値を示し、これは図4に示したPDLデータ復号鍵のハッシュ値404に相当する。
そして、本実施形態では、上記のジョブスクリプトを処理するために、印刷システムの構成を変更する。
図11は、本発明の第2実施形態を示すデータ処理装置(ホストコンピュータ)および印刷装置を含む印刷システムの構成を示すブロック図である。
図11において、印刷システムは印刷ジョブを生成し、印刷装置におくるホストコンピュータ1100と、前記印刷ジョブを受信し、電子写真やインクジェットなどの既知の印刷技術により実際の用紙に印刷を行う印刷装置1150と、ホストコンピュータ1100と印刷装置1150を接続するための既知のインタフェース技術を利用したインタフェース手段1170から構成される。インタフェース手段1170はUSB(Universal Serial Bus)やIEEE1284準拠のローカルインタフェースやEther−Net(登録商標)やToken−Ringのような有線LANのインタフェース、あるいはIEEE802.11b,Bluetooth(登録商標)のような無線LANのインタフェースであっても構わず、途中経路にルータやスイッチングハブ、あるいはインターネットを介していてもよい。
ホストコンピュータ1100はアプリケーション部1101によってGUIを駆使してユーザが所望する画像データの生成を行う。ドライバ部1102は、ホストコンピュータ独自の画像形式から印刷装置1150で解釈可能な印刷ジョブへの変換作業を行う。セキュアジョブ生成部1103はドライバ部1102で生成された印刷ジョブを受け取り、所有者しか解析できないセキュアジョブ(印刷ジョブをセキュリティ対応したもの)への変換作業を行う。この作業は、図8の(a)〜(c)を生成する作業である。
そして、生成されたセキュアジョブは既存のスプール部1104に格納され、I/F1105を介して印刷装置1150に送られる。セキュアジョブ生成時に必要となるユーザが持つ公開鍵は、印刷処理の前段階でスマートカードなどの公開鍵を電気的に保持し、提供するメディアに保持され、既存のカードリーダ部1108によって読み取られ、ユーザ公開鍵記憶部1109によって保管され、セキュアジョブ生成部1103に提供される。
一方、セキュアジョブ生成時に必要となる印刷装置が持つ公開鍵はインタフェース手段1170を介して印刷装置1150から供給され、デバイス公開鍵受信部1106を介してデバイス公開鍵記憶部1107に保管され、セキュアジョブ生成部1103に提供される。セキュアジョブはI/F1151を介して印刷装置1150に投入される。
1155はジョブスクリプト復号部で、I/F1151に投入されたセキュアジョブを印刷装置の持つ秘密鍵情報を使って公開鍵方式で復号化する。この段階ではジョブスクリプトは図8の(c)から図8の(b)に変換され後段に渡す。このとき属性部分は平文になる。
パケット判断部1153は受信したジョブスクリプトの個々のジョブパケットを調査し、属性設定命令に関してはデータ部に含まれている属性部分を属性DB1156、PDLデータ送信命令に関してはPDLスプール部1154に送る。この時、PDLデータ部分は図8の(b)の状態で示してあるように乱数Bで暗号化されている状態である。
また、セキュアジョブの送信に先立って、ホストコンピュータ1100はデバイス公開鍵受信部1106は印刷装置1150に対して印刷装置の公開鍵の要求を行うと、その要求に応じて印刷装置1150の内部にあるデバイス公開鍵管理部から印刷装置1150に固有の公開鍵をデバイス公開鍵送信部1162,インタフェース部1710を介してホストコンピュータ1100へ提供を行っている。
属性DB1156は揮発性メモリであるRAMで構成され、描画処理に関するコピー数や、カラー情報などの情報を一時的に保持し、描画部1159に提供する一方、不図示の操作パネルからの表示要求に合わせてUI部1163へセキュアジョブの属性情報の提供を行う。
さて、セキュアジョブは印刷装置1150内に入るとホールド(解除待ち)状態となり、処理が停止する。ユーザはカードリーダ部1158に、PDLデータ暗号化に使用したものと同じスマートカードなどの公開鍵を提供するメディア(所定のデバイスとして機能する)が挿入されると、後述の手順によってPDLデータ部分を復号化する復号鍵情報が提供され、その鍵情報を使ってPDLデータ復号部1157は暗号化されたPDLデータ部分の公開鍵方式による復号化を行い、PDLデータ部分が描画部1159に渡され、印刷データの描画処理が行われ、描画されたイメージデータは電子写真やインクジェット技術などの既知の印刷技術を使うプリンタエンジン部160において実際の用紙に印刷される。
これにより、セキュアジョブはユーザからホールド解除されるまで保管される印刷ジョブとなる。なお、保管される印刷ジョブは、一定時間経過後に不図示の従来技術である破棄処理によって破棄処理が行われる。
上記第2実施形態によれば、セキュアジョブは暗号化属性以外の属性情報、PDLデータ部分ともに配送経路では2種類の鍵情報を使って暗号化されるため、PDLデータ部分に含まれる機密情報もセキュアジョブに付加された属性も暗号化されるため、通信経路の盗聴に対してセキュアジョブの情報を漏らさず送信可能である。
さらに、第1実施形態と比較して、セキュアジョブのジョブスクリプトそのものが完全に暗号化されることによって、通信経路上ではジョブスクリプトの構成さえも判断できないため、さらにセキュリティ強度が向上されている。
また、保管されて状態においては、属性DBに属性情報を保持し、よって属性情報は印刷装置に入ってからは平文で格納され、必要な属性値を公開することによりセキュアジョブのモニタリングや追跡が可能である。
一方、PDLデータ部分は乱数Bによって共通鍵方式で暗号化され、共通鍵を復号するための公開鍵方式の秘密鍵はユーザ毎に配布されるスマートカードに保持され、印刷装置には復号を行う手がかりは存在しない。喩え印刷装置から2次記憶装置を抜き出したとしても、属性情報はRAMから構成される属性DBに格納されており、2次記憶装置に入っていないので解析および改ざんすることは非常に困難である。
さらに、PDLデータ部分は共通鍵方式で暗号化されており、共通鍵を復号する鍵が印刷装置に保持されていないため、セキュアジョブの解析は非常に困難であり、攻撃者からの高度な攻撃に対してもセキュアジョブに含まれている機密情報の保護が可能である。
〔第3実施形態〕
上記第1或いは第2実施形態に示した構成において、暗号化の前段にLZW方式に代表される可逆圧縮方式による圧縮処理と、復号処理の後段による伸張処理を適応することが可能である。
これにより、圧縮処理によって暗号化対象となるデータサイズが小さくなる可能性が高いため、暗号化処理の負荷を軽くする効果がある。
また、セキュアジョブのサイズが小さくなるため、比較的遅い通信経路においてはパフォーマンスを向上させることができる。
さらに、圧縮処理によって暗号化前のデータの冗長性を取り除くことができるため、暗号の解読がより困難になるという効果もある。
以下、図12に示すメモリマップを参照して本発明に係る印刷システムで読み取り可能なデータ処理プログラムの構成について説明する。
図12は、本発明に係る印刷システムで読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
本実施形態における図5〜図7に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバやftpサーバ等も本発明の請求項に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から排除するものではない。
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるものではない。
なお、本発明は、上記した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
本発明の第1実施形態を示すデータ処理装置(ホストコンピュータ)および印刷装置を含む印刷システムの構成を示すブロック図である。 図1に示したホストコンピュータからプリンタに転送されるジョブパケットの構造を示す説明図である。 本発明に係る印刷システムにおける第1のジョブスクリプトが暗号化される仕組みを説明するための模式図である。 図1に示したセキュアジョブ生成部により生成される印刷ジョブの属性部分の暗号化属性の構造を示すデータ構造図である。 本発明に係る印刷装置における第1のデータ処理手順の一例を示すフローチャートである。 本発明に係る印刷装置における第2のデータ処理手順の一例を示すフローチャートである。 本発明に係る印刷装置における第3のデータ処理手順の一例を示すフローチャートである。 本発明に係る印刷システムにおける第2のジョブスクリプトが暗号化される仕組みを説明するための模式図である。 図8に示したユーザ鍵暗号化属性のうち、ジョブパケットのヘッダ部分を省略したデータ部の記述を説明する図である。 図8に示したデバイス鍵暗号化属性のうち、ジョブパケットのヘッダ部分を省略したデータ部の記述を説明する図である。 本発明の第2実施形態を示すデータ処理装置(ホストコンピュータ)および印刷装置を含む印刷システムの構成を示すブロック図である。 本発明に係る印刷システムで読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
符号の説明
100 ホストコンピュータ
101 アプリケーション部
102 ドライバ部
103 セキュアジョブ生成部
104 スプール部
106 デバイス公開鍵受信部
107 デバイス公開鍵記憶部
108 カードリーダ部
109 ユーザ公開鍵記憶部
150 プリンタ
153 パケット判断部
154 PDLスプール部
155 属性復号部
156 属性DB
157 PDLデータ復号部
161 デバイス公開鍵管理部
162 デバイス公開鍵送信部

Claims (23)

  1. プリンタドライバにより生成される印刷ジョブを印刷装置に転送可能な情報処理装置であって、
    前記プリンタドライバが生成する印刷ジョブを機密情報が入るPDLデータ部分と付加情報が入る属性部分とに分離し、該分離される前記PDLデータ部分を第1の公開鍵情報に基づいて暗号化し、さらに、該分離される前記属性部分を第2の公開鍵情報に基づいて暗号化して印刷ジョブを生成する印刷ジョブ暗号化手段を有することを特徴とする情報処理装置。
  2. プリンタドライバにより生成される印刷ジョブを印刷装置に転送可能な情報処理装置であって、
    前記プリンタドライバが生成する印刷ジョブを機密情報が入るPDLデータ部分と付加情報が入る属性部分とに分離し、該分離される前記PDLデータ部分を第1の公開鍵情報に基づいて暗号化して暗号化済みPDLデータを出力するデータ暗号化手段と、
    前記データ暗号化手段により暗号化されたPDLデータと、分離される前記属性部分を含む印刷ジョブを第2の公開鍵情報に基づいて暗号化して印刷ジョブを生成する印刷ジョブ暗号化手段と、
    を有することを特徴とする情報処理装置。
  3. 前記印刷装置より通知される第1の公開鍵情報を取得する第1の公開鍵取得手段と、
    ユーザが管理する所定のデバイスより第2の公開鍵情報を取得する第2の公開鍵取得手段と、
    を有することを特徴とする請求項1または2記載の情報処理装置。
  4. 情報処理装置のプリンタドライバにより生成される印刷ジョブを受信処理可能な印刷装置であって、
    受信する印刷ジョブの個々の属性情報を管理する属性データベース手段と、
    前記印刷ジョブの前記PDLデータ部分を一時的に記憶しておくPDL記憶手段と、
    前記印刷ジョブを受信し、解釈することによってデータの部分がセキュアジョブの属性部分か、PDLデータ部分かを認識し、属性部分は第1の復号鍵情報に基づいて、復号して取り出された属性部分を前記属性データベース手段に登録し、さらに、前記PDLデータ部分は暗号化したまま前記PDL記憶手段に記憶させる印刷ジョブ解釈手段と、
    ユーザ操作によって前記PDL記憶手段に記憶された印刷ジョブ中から選択される所望の印刷ジョブの印刷指示を行う印刷指示手段と、
    前記印刷指示手段によって印刷指示された印刷ジョブの暗号化されているPDLデータを第2の復号鍵情報に基づいて復号化するPDLデータ復号化手段と、
    を有することを特徴とする印刷装置。
  5. 印刷装置が所有する秘密鍵情報と公開鍵情報とを鍵ペア情報として管理する公開鍵管理手段と、
    前記公開鍵管理手段によって管理された鍵ペア情報のうち、前記公開鍵情報を前記情報処理装置に通知する公開鍵通知手段と、
    所定のデバイスから前記PDLデータ部分を復号する復号鍵情報を生成する復号鍵生成手段と、
    を有することを特徴とする請求項4記載の印刷装置。
  6. 前記印刷ジョブ暗号化手段は、前記属性部分あるいは前記PDLデータ部分の暗号化の際に、暗号化対象となるデータに対して暗号化の前段で、可逆圧縮方式による圧縮処理を行うことを特徴とする請求項1乃至3のいずれかに記載の情報処理装置。
  7. 前記印刷ジョブ解釈手段は、属性部分の復号化の際に、復号化対象となるデータに対して復号化の後段で、可逆圧縮方式による伸張処理を行うことを特徴とする請求項4または5記載の印刷装置。
  8. 前記PDLデータ復号化手段は、PDLデータ部分の復号化の際に、復号化対象となるデータに対して復号化の後段で、可逆圧縮方式による伸張処理を行うことを特徴とする請求項4または5記載の印刷装置。
  9. 前記所定のデバイスは、携帯可能な記憶メディアであって、前記印刷装置が備える所定のインタフェースを介して接続可能であることを特徴とする請求項4または5記載の印刷装置。
  10. 前記所定のデバイスは、携帯可能な記憶メディアであって、前記印刷装置が備える所定のインタフェースを介して接続可能であることを特徴とする請求項1乃至3のいずれかに記載の情報処理装置。
  11. 前記PDL記憶手段は、揮発性メモリであること特徴とする請求項4記載の印刷装置。
  12. プリンタドライバにより生成される印刷ジョブを印刷装置に転送可能な情報処理装置におけるデータ処理方法であって、
    前記プリンタドライバが生成する印刷ジョブを機密情報が入るPDLデータ部分と付加情報が入る属性部分とに分離し、該分離される前記PDLデータ部分を第1の公開鍵情報に基づいて暗号化し、さらに、該分離される前記属性部分を第2の公開鍵情報に基づいて暗号化して印刷ジョブを生成する印刷ジョブ暗号化ステップを有することを特徴とするデータ処理方法。
  13. プリンタドライバにより生成される印刷ジョブを印刷装置に転送可能な情報処理装置におけるデータ処理方法であって、
    前記プリンタドライバが生成する印刷ジョブを機密情報が入るPDLデータ部分と付加情報が入る属性部分とに分離し、該分離される前記PDLデータ部分を第1の公開鍵情報に基づいて暗号化して暗号化済みPDLデータを出力するデータ暗号化ステップと、
    前記データ暗号化ステップにより暗号化されたPDLデータと、分離される前記属性部分を含む印刷ジョブを第2の公開鍵情報に基づいて暗号化して印刷ジョブを生成する印刷ジョブ暗号化ステップと、
    を有することを特徴とするデータ処理方法。
  14. 前記印刷装置より通知される第1の公開鍵情報を取得する第1の公開鍵取得ステップと、
    ユーザが管理する所定のデバイスより第2の公開鍵情報を取得する第2の公開鍵取得ステップと、
    を有することを特徴とする請求項12または13記載のデータ処理方法。
  15. 受信する印刷ジョブの個々の属性情報を管理する属性データベース手段を備え、情報処理装置のプリンタドライバにより生成される印刷ジョブを受信処理可能な印刷装置におけるデータ処理方法であって、
    前記印刷ジョブの前記PDLデータ部分をPDL記憶手段に一時的に記憶しておくPDL記憶ステップと、
    前記印刷ジョブを受信し、解釈することによってデータの部分がセキュアジョブの属性部分か、PDLデータ部分かを認識し、属性部分は第1の復号鍵情報に基づいて、復号して取り出された属性部分を前記属性データベース手段に登録し、さらに、前記PDLデータ部分は暗号化したまま前記PDL記憶手段に記憶させる印刷ジョブ解釈ステップと、
    ユーザ操作によって前記PDL記憶手段に記憶された印刷ジョブ中から選択される所望の印刷ジョブの印刷指示を行う印刷指示ステップと、
    前記印刷指示ステップによって印刷指示された印刷ジョブの暗号化されているPDLデータを第2の復号鍵情報に基づいて復号化するPDLデータ復号化ステップと、
    を有することを特徴とするデータ処理方法。
  16. 印刷装置が所有する秘密鍵情報と公開鍵情報とを鍵ペア情報として管理する公開鍵管理ステップと、
    前記公開鍵管理ステップによって管理された鍵ペア情報のうち、前記公開鍵情報を前記情報処理装置に通知する公開鍵通知ステップと、
    所定のデバイスから前記PDLデータ部分を復号する復号鍵情報を生成する復号鍵生成ステップと、
    を有することを特徴とする請求項15記載のデータ処理方法。
  17. 前記印刷ジョブ暗号化ステップは、前記属性部分あるいは前記PDLデータ部分の暗号化の際に、暗号化対象となるデータに対して暗号化の前段で、可逆圧縮方式による圧縮処理を行うことを特徴とする請求項12乃至14のいずれかに記載のデータ処理方法。
  18. 前記印刷ジョブ解釈ステップは、属性部分の復号化の際に、復号化対象となるデータに対して復号化の後段で、可逆圧縮方式による伸張処理を行うことを特徴とする請求項15記載のデータ処理方法。
  19. 前記PDLデータ復号化ステップは、PDLデータ部分の復号化の際に、復号化対象となるデータに対して復号化の後段で、可逆圧縮方式による伸張処理を行うことを特徴とする請求項15記載のデータ処理方法。
  20. 前記所定のデバイスは、携帯可能な記憶メディアであって、前記印刷装置が備える所定のインタフェースを介して接続可能であることを特徴とする請求項12〜16のいずれかに記載のデータ処理方法。
  21. 前記PDL記憶手段は、揮発性メモリであること特徴とする請求項15記載のデータ処理方法。
  22. 請求項12〜21のいずれかに記載のデータ処理方法を実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
  23. 請求項12〜21のいずれかに記載のデータ処理方法を実行させることを特徴とするプログラム。
JP2004022494A 2004-01-30 2004-01-30 印刷装置、データ処理方法、記憶媒体、プログラム Expired - Fee Related JP4018645B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004022494A JP4018645B2 (ja) 2004-01-30 2004-01-30 印刷装置、データ処理方法、記憶媒体、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004022494A JP4018645B2 (ja) 2004-01-30 2004-01-30 印刷装置、データ処理方法、記憶媒体、プログラム

Publications (3)

Publication Number Publication Date
JP2005216029A true JP2005216029A (ja) 2005-08-11
JP2005216029A5 JP2005216029A5 (ja) 2007-08-09
JP4018645B2 JP4018645B2 (ja) 2007-12-05

Family

ID=34905817

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004022494A Expired - Fee Related JP4018645B2 (ja) 2004-01-30 2004-01-30 印刷装置、データ処理方法、記憶媒体、プログラム

Country Status (1)

Country Link
JP (1) JP4018645B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007087058A (ja) * 2005-09-21 2007-04-05 Seiko Epson Corp 認証印刷システム、認証印刷方法
JP2009193118A (ja) * 2008-02-12 2009-08-27 Canon Inc 情報処理装置及び印刷システム
WO2011040023A1 (ja) * 2009-09-29 2011-04-07 パナソニック株式会社 暗号化装置、復号化装置、暗号化方法、復号化方法、および暗号化復号化システム
EP3217276A1 (en) 2016-03-08 2017-09-13 Ricoh Company, Ltd. Information processing system, job processing method, data storage apparatus, information device, and carrier means

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007087058A (ja) * 2005-09-21 2007-04-05 Seiko Epson Corp 認証印刷システム、認証印刷方法
JP4543427B2 (ja) * 2005-09-21 2010-09-15 セイコーエプソン株式会社 認証印刷システム、認証印刷方法
JP2009193118A (ja) * 2008-02-12 2009-08-27 Canon Inc 情報処理装置及び印刷システム
WO2011040023A1 (ja) * 2009-09-29 2011-04-07 パナソニック株式会社 暗号化装置、復号化装置、暗号化方法、復号化方法、および暗号化復号化システム
JPWO2011040023A1 (ja) * 2009-09-29 2013-02-21 パナソニック株式会社 暗号化装置、復号化装置、暗号化方法、復号化方法、および暗号化復号化システム
US8737617B2 (en) 2009-09-29 2014-05-27 Panasonic Corporation Encryption apparatus, decryption apparatus, encryption method, decryption method, and encryption/decryption system
EP3217276A1 (en) 2016-03-08 2017-09-13 Ricoh Company, Ltd. Information processing system, job processing method, data storage apparatus, information device, and carrier means

Also Published As

Publication number Publication date
JP4018645B2 (ja) 2007-12-05

Similar Documents

Publication Publication Date Title
JP4235520B2 (ja) 情報処理装置、印刷装置、印刷データ送信方法、印刷方法、印刷データ送信プログラム及び記録媒体
KR100613156B1 (ko) 정보 처리 장치에 있어서의 데이터 보안
US20060269053A1 (en) Network Communication System and Communication Device
US8239328B2 (en) Information processing apparatus, print control apparatus, printed control system
JP4973300B2 (ja) 印刷プログラムおよび印刷装置
JP2006020291A (ja) 暗号化通信方式及びシステム
JP2007140901A (ja) 画像処理システム
KR20040086111A (ko) 작업 처리 장치를 연휴 동작시키는 정보 처리 장치 및 방법
JP2005310113A (ja) 安全な印刷
JP4165027B2 (ja) クライアント装置、ネットワーク印刷システム、及び印刷データ送信方法
JP2007257527A (ja) 印刷システムおよび制御方法
JP2004287912A (ja) 処理サービス提供装置
JP4018645B2 (ja) 印刷装置、データ処理方法、記憶媒体、プログラム
JP4442313B2 (ja) 印刷管理システムおよびこれに用いる装置、プログラム、印刷方法
JP2012098894A (ja) 印刷システム及び印刷制御方法
JPH1041934A (ja) 情報暗号化復号化方法および情報暗号化復号化装置
JP4442583B2 (ja) 画像処理装置、画像処理方法及び画像処理用プログラム
JP2004252888A (ja) セキュリティ印刷プログラム、セキュリティ印刷システムおよびセキュリティ印刷プログラムが格納された記憶媒体
JP3885882B2 (ja) 画像形成装置および画像形成システム
JP2010170236A (ja) 画像形成システム、サーバ装置および画像形成装置
JP4789432B2 (ja) データ処理装置、データ処理装置の制御方法、コンピュータプログラム及び記憶媒体
JP2004185566A (ja) プリント装置、プリントサーバ装置、プリントクライアント装置、プリントシステム、プリントサーバプログラム、プリントクライアントプログラム、及び記録媒体
JP2006211157A (ja) サービス提供装置、サービス提供システム、サービス提供方法
JP4475576B2 (ja) ネットワーク印刷システム、印刷データ授受方法およびサーバコンピュータ用プログラム
JP2005258558A (ja) 印刷制御装置および印刷装置および方法およびプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050613

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050613

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070627

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: 20070911

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070920

R150 Certificate of patent or registration of utility model

Ref document number: 4018645

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100928

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100928

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110928

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110928

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120928

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120928

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130928

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees