(57)【要約】【課題】電子文書がＰＣからプリンタへと送信され印刷されようとする際に、電子文書の署名者の意図したレベルの伝送路の機密保護が図れるようにする。【解決手段】プリンタドライバ１１は、印刷対象に指示された電子文書に電子署名が付されている場合、その電子署名の署名者の公開鍵の鍵長等から、その署名者の要求する必要セキュリティレベルを求める。そして、プリンタ１４との間で、その必要セキュリティレベルの伝送路保護が可能かどうかを判定する。可能でなければ、署名者の許可がなければ印刷できない旨を示すＵＩ画面を表示し、署名者に問合せを行う。この問合せに対して許可の回答があれば、プリンタドライバ１１は、プリンタ１４との間で確立可能な最高レベルの伝送路保護を施した上で、その電子文書の印刷データをプリンタ１４に送信する。【選択図】図１
2007207166.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
電子文書に付されている電子署名の強度と、電子文書を伝送する際に要求される伝送路のセキュリティレベルと、を対応づけて記憶したレベル対応情報記憶手段、
印刷対象の電子文書に付されている電子署名の強度に対応して要求される伝送路のセキュリティレベルをレベル対応情報記憶手段の情報に基づき判定する要求レベル判定手段、
そのコンピュータと印刷出力先のプリンタとの間で確立可能な伝送路のセキュリティレベルを判定する確立可能レベル判定手段、
確立可能レベル判定手段の判定したセキュリティレベルが要求レベル判定手段の判定したセキュリティレベル以上である場合には、印刷対象の電子文書又はこの電子文書に対応する印刷データを印刷出力先のプリンタへ送信し、そうでない場合には、印刷を続行するか否かを判定するための印刷続行判定処理を実行する制御手段、
として機能させるためのプログラム。
【請求項２】
請求項１記載のプログラムであって、
前記制御手段は、前記印刷続行判定処理として、印刷を中止するか続行するか否かを問い合わせるユーザインタフェース画面を前記コンピュータのディスプレイに表示させ、そのユーザインタフェース画面に対応して印刷中止の指示が入力された場合に、前記印刷対象の電子文書の印刷のための処理を中止する、
ことを特徴とするためのプログラム。
【請求項３】
請求項１記載のプログラムであって、
前記制御手段は、前記印刷続行判定処理として、印刷を中止するか続行するか否かを問い合わせるユーザインタフェース画面を前記コンピュータのディスプレイに表示させ、そのユーザインタフェース画面に対して印刷続行の指示が入力された場合に、前記印刷対象の電子文書に付された電子署名の署名者に対し、印刷を許可するか否かの問合せを行い、この問合せに対して印刷を許可する旨の回答を署名者から受けた場合に、その電子文書又はこの電子文書に対応する印刷データを前記プリンタへ伝送する、
ことを特徴とするプログラム。
【請求項４】
請求項３記載のプログラムであって、
前記制御手段は、前記印刷続行判定処理として、印刷を中止するか続行するか否かを問い合わせるユーザインタフェース画面を前記コンピュータのディスプレイに表示させ、そのユーザインタフェース画面に対応して印刷続行の指示が入力された場合に、前記印刷対象の電子文書に付された電子署名に対応する公開鍵証明書内に主体者情報として示される電子メールアドレスに対し、印刷を許可するか否かの問合せのメッセージを電子メールとして送信する、
ことを特徴とするプログラム。
【請求項５】
請求項３記載のプログラムであって、
前記問合せのメッセージには、前記コンピュータと前記印刷出力先のプリンタとの間で確立可能な最高のセキュリティレベルを示す情報が含まれ、
前記制御手段は、前記問合せに対して印刷を許可する旨の回答を署名者から受けた場合に、その最高のセキュリティレベルの伝送路保護を前記プリンタとの間で確立した上で、前記電子文書又はこの電子文書に対応する印刷データを前記プリンタに伝送する、
ことを特徴とするプログラム。
【請求項６】
請求項３記載のプログラムであって、
前記制御手段は、前記問合せに対して印刷を許可する旨と印刷設定の情報とを含んだ回答を署名者から受けた場合に、前記電子文書又はこの電子文書に対応する印刷データを前記プリンタに伝送しその印刷設定に従って印刷させる、
ことを特徴とするプログラム。
【請求項７】
請求項３記載のプログラムであって、
前記制御手段は、前記問合せに対して印刷を許可する旨と印刷設定の情報とを含んだ回答を署名者から受けた場合に、その印刷設定の下で印刷を行うか否かを問い合わせるユーザインタフェース画面を前記コンピュータのディスプレイに表示させ、そのユーザインタフェース画面の問合せに対するユーザの応答に応じて前記電子文書又はこの電子文書に対応する印刷データを前記プリンタに伝送するか否かを制御する、
ことを特徴とするプログラム。
【請求項８】
請求項７記載のプログラムであって、
前記制御手段は、前記署名者が指定した印刷設定の下で印刷を行うか否かを問い合わせるユーザインタフェース画面に対するユーザの選択の結果、印刷を行ったか否かを前記署名者に通知する、
ことを特徴とするプログラム。
【請求項９】
電子文書に付されている電子署名の強度と、電子文書を伝送する際に要求される伝送路のセキュリティレベルと、を対応づけて記憶したレベル対応情報記憶手段、
印刷対象の電子文書に付されている電子署名の強度を判定し、その強度に対応して要求される伝送路のセキュリティレベルをレベル対応情報記憶手段の情報に基づき判定する要求レベル判定手段、
そのコンピュータと印刷出力先のプリンタとの間で確立可能な伝送路のセキュリティレベルを判定する確立可能レベル判定手段、
確立可能レベル判定手段の判定したセキュリティレベルが要求レベル判定手段の判定したセキュリティレベル以上である場合には、印刷対象の電子文書又はこの電子文書に対応する印刷データを印刷出力先のプリンタへ送信し、確立可能レベル判定手段が判定したセキュリティレベルが、要求レベル判定手段が判定したセキュリティレベル未満である場合には、印刷を続行するか否かを判定するための印刷続行判定処理を実行する制御手段、
を含む印刷指示装置。
【請求項１０】
コンピュータが有する電子文書を、ネットワークを介して接続されたプリンタに印刷させるための印刷指示方法であって、
印刷対象の電子文書に付されている電子署名の強度に対応して要求される伝送路のセキュリティレベルを、電子文書に付されている電子署名の強度と電子文書を伝送する際に要求される伝送路のセキュリティレベルとを対応づけて記憶したレベル対応情報記憶手段の情報に基づき判定し、
そのコンピュータとそのプリンタとの間で確立可能な伝送路のセキュリティレベルを判定し、
判定したセキュリティレベルが、電子署名の強度に対応して要求される伝送路のキュリティレベル以上である場合には、印刷対象の電子文書又はこの電子文書に対応する印刷データを印刷出力先のプリンタへ送信し、そうでない場合には、印刷を続行するか否かを判定するための印刷続行判定処理を実行する、
印刷指示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク経由でプリンタに印刷データを送信して印刷させるためのプログラム（たとえばプリンタドライバ）又は印刷指示装置に関し、特にネットワーク上での印刷データのセキュリティに関する。
【背景技術】
【０００２】
ホストコンピュータからネットワークを介してプリンタに送信する印刷データの機密漏洩を防止するための技術として、特許文献１に示されるものが知られている。この技術では、ホストコンピュータ上のプリンタドライバは、伝送経路上での暗号化の有無や暗号化の強度を指定するためのユーザインタフェース画面を提供し、この画面に対する入力に応じて必要ならば印刷データを暗号化してプリンタに送信する。また、このプリンタドライバは、送信先のプリンタまでの経路がインターネットを介するか否かなどといった、ネットワーク上でのプリンタの位置に応じ、適切な暗号化強度を判定する。
【特許文献１】特開２００２−３１２１４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ユーザが作成した電子文書をそのユーザ自身が印刷指示する場合には、その電子文書をどの程度強力に守りたいかはそのユーザ自身の判断である。したがって、このような場合には、上記特許文献１の方式でも適切に電子文書の内容を保護することができる。
【０００４】
しかしながら、世の中では、他の人が作成した電子文書や他の人が著作権を持つ電子文書を取得して印刷する場合も少なくない。このような場合、電子文書の内容をどの程度の強度で保護したいかは電子文書の作成者や著作権者の問題であり、その文書を取得して印刷する人が適切に判断できるとは期待できないので、特許文献１の方式では、ネットワーク上での電子文書の内容の保護が十分とは言えない。
【課題を解決するための手段】
【０００５】
本発明は、１つの側面では、コンピュータを、電子文書に付されている電子署名の強度と、電子文書を伝送する際に要求される伝送路のセキュリティレベルと、を対応づけて記憶したレベル対応情報記憶手段、印刷対象の電子文書に付されている電子署名の強度に対応して要求される伝送路のセキュリティレベルをレベル対応情報記憶手段の情報に基づき判定する要求レベル判定手段、そのコンピュータと印刷出力先のプリンタとの間で確立可能な伝送路のセキュリティレベルを判定する確立可能レベル判定手段、確立可能レベル判定手段の判定したセキュリティレベルが要求レベル判定手段の判定したセキュリティレベル以上である場合には、印刷対象の電子文書又はこの電子文書に対応する印刷データを印刷出力先のプリンタへ送信し、そうでない場合には、印刷を続行するか否かを判定するための印刷続行判定処理を実行する制御手段、として機能させるためのプログラムを提供する。
【０００６】
本発明の好適な態様では、前記制御手段は、前記印刷続行判定処理として、印刷を中止するか続行するか否かを問い合わせるユーザインタフェース画面を前記コンピュータのディスプレイに表示させ、そのユーザインタフェース画面に対応して印刷中止の指示が入力された場合に、前記印刷対象の電子文書の印刷のための処理を中止する。
【０００７】
別の好適な態様では、前記制御手段は、前記印刷続行判定処理として、印刷を中止するか続行するか否かを問い合わせるユーザインタフェース画面を前記コンピュータのディスプレイに表示させ、そのユーザインタフェース画面に対して印刷続行の指示が入力された場合に、前記印刷対象の電子文書に付された電子署名の署名者に対し、印刷を許可するか否かの問合せを行い、この問合せに対して印刷を許可する旨の回答を署名者から受けた場合に、その電子文書又はこの電子文書に対応する印刷データを前記プリンタへ伝送する。
【０００８】
本発明の別の好適な態様では、前記制御手段は、前記印刷続行判定処理として、印刷を中止するか続行するか否かを問い合わせるユーザインタフェース画面を前記コンピュータのディスプレイに表示させ、そのユーザインタフェース画面に対応して印刷続行の指示が入力された場合に、前記印刷対象の電子文書に付された電子署名に対応する公開鍵証明書内に主体者情報として示される電子メールアドレスに対し、印刷を許可するか否かの問合せのメッセージを電子メールとして送信する。
【０００９】
本発明の更に別の好適な態様では、前記問合せのメッセージには、前記コンピュータと前記印刷出力先のプリンタとの間で確立可能な最高のセキュリティレベルを示す情報が含まれ、前記制御手段は、前記問合せに対して印刷を許可する旨の回答を署名者から受けた場合に、その最高のセキュリティレベルの伝送路保護を前記プリンタとの間で確立した上で、前記電子文書又はこの電子文書に対応する印刷データを前記プリンタに伝送する。
【００１０】
本発明の更に別の好適な態様では、前記制御手段は、前記問合せに対して印刷を許可する旨と印刷設定の情報とを含んだ回答を署名者から受けた場合に、前記電子文書又はこの電子文書に対応する印刷データを前記プリンタに伝送しその印刷設定に従って印刷させる。
【００１１】
本発明の更に別の好適な態様では、前記制御手段は、前記問合せに対して印刷を許可する旨と印刷設定の情報とを含んだ回答を署名者から受けた場合に、その印刷設定の下で印刷を行うか否かを問い合わせるユーザインタフェース画面を前記コンピュータのディスプレイに表示させ、そのユーザインタフェース画面の問合せに対するユーザの応答に応じて前記電子文書又はこの電子文書に対応する印刷データを前記プリンタに伝送するか否かを制御する。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して、本発明の実施の形態（以下「実施形態」と呼ぶ）について説明する。
【００１３】
図１は、本発明に係るプリンタ１４を備えたシステムの構成の例を示す図である。このシステムでは、ＰＣ（パーソナルコンピュータ）１０及び１６とプリンタ１４とが、ＬＡＮ（ローカルエリアネットワーク）やインターネット等のデータ通信のためのネットワーク１２に接続されている。ＰＣ１６は、印刷の対象となる電子文書の作成者、所有者、配布者又は著作権者など、電子文書に対して権利を持つユーザ（権利保有者と呼ぶ）のＰＣである。ＰＣ１０はその電子文書を取得して印刷しようとするユーザのＰＣである。ＰＣ１０には、プリンタ１４に電子文書のプリントを行わせるためのプリンタドライバ１１がインストールされている。なお、ここでいう電子文書は、アプリケーションソフトウエア（以下単にアプリケーションと呼ぶ）のファイル形式の文書である。プリンタドライバ１１は、アプリケーションのファイル形式の電子文書から、その電子文書の印刷画像を示す印刷データを作成し、プリンタ１４に送る。印刷データは、プリンタ１４が解釈可能なページ記述言語（ＰＤＬ）で記述される。また、プリンタドライバ１１は、印刷部数や用紙サイズ、印刷を指示したユーザのユーザ名、印刷指示の時刻などの印刷属性をプリントジョブ言語（ＰＪＬ）で記述した属性データを作成し、印刷データと対応づけてプリンタ１４に送る機能を備える。
【００１４】
なお、プリンタの中には、特定の種類のアプリケーションについて、そのアプリケーションのファイル形式の電子文書をそのまま受け取って印刷する「ダイレクトプリント」機能を備えるものもある。印刷対象の電子文書がプリンタ１４でダイレクトプリント可能なファイル形式である場合、プリンタドライバ１１は、その電子文書をＰＤＬの印刷データに変更せず、その電子文書に属性データを付加してプリンタに送信することもできる。
【００１５】
電子文書には、電子文書の所有者や著作権者などの秘密鍵情報を用いて電子署名を付すことができる。例えばマイクロソフト社のワードプロセッサソフトウエア「Ｗｏｒｄ」や、アドビシステムズ社の「Ａｃｒｏｂａｔ」などのように、作成した文書に電子署名を組み込むことができるソフトウエアが普及しており、電子文書はこのようなソフトウエアにより電子署名を付加することができる。
【００１６】
電子署名は、電子文書のハッシュ値を署名者の秘密鍵で暗号化することにより生成される。ＸＭＬ署名などでよく知られるように、一般に電子文書に組み込まれる電子署名の情報には、電子署名の署名値（すなわちハッシュ値の暗号化結果）の他に、その署名値を検証するための検証鍵（すなわち署名者の公開鍵）を特定するための情報が含まれる。この情報は、検証鍵自身の場合もあれば、署名者の公開鍵証明書の場合もあり、それら両方の場合もある。
【００１７】
電子文書の権利保有者は、電子文書を配布する場合、その電子文書が正しくその者が配布した者であることを保証するなどの目的で、その者の電子署名を付すことが多い。本実施形態のプリンタドライバ１１は、この電子署名に基づき、ＰＣ１０からプリンタ１４までの伝送経路（すなわちネットワーク１２）における電子文書の内容の機密保護のための処理を行う。
【００１８】
基本的な考え方は、印刷対象に指定された電子文書に電子署名が付されていれば、プリンタドライバ１１が、その電子文書の内容に機密保護が必要と判断し、ＰＣ１０からプリンタ１４までの伝送路を暗号化等により保護するというものである。
【００１９】
本実施形態では、電子署名の強度に応じて、伝送路に要求するセキュリティレベルを変える。電子署名の強度は、言い換えれば電子署名を検証するための電子証明書（すなわち電子署名に用いた秘密鍵に対応する公開鍵を証明する証明書）の強度である。電子証明書の強度は、例えば、電子証明書に示される公開鍵の鍵長によって規定できる。鍵長が長いほど強度が高い。本実施形態では、１つの例として、電子証明書の鍵長が長いほど、電子文書の暗号強度を上げる。
【００２０】
また、電子証明書の強度は、電子証明書を発行したＣＡ（認証局）の信頼度に応じて決めることもできる。例えば、VeriSign社などのようにルート証明書を有する「信頼されたＣＡ」が発行した電子証明書の強度は高いと言え、それに対し企業が設立した社内向けＣＡが発行した電子証明書は「信頼されたＣＡ」の証明書よりも強度は低いと言える。このような観点から定めた電子証明書の強度が高いほど、暗号化の強度を高めることも考えられる。また、ＣＡの信頼度と鍵長の組み合わせに対して強度を規定することも可能である。この場合、ＣＡと鍵長の組み合わせに対して、強度の値を割り当てればよい。
【００２１】
本実施形態では、このように規定された電子証明書の強度（すなわち電子署名の強度）の各値又は順位に対し、それぞれセキュリティレベルを対応づける。この実施形態では、電子文書の署名の強度が高いほど、その電子文書の署名者が高いセキュリティを求めていると判断し、ＰＣ・プリンタ間の伝送路に求めるセキュリティレベルを高くする。このように、電子署名の強度に応じたセキュリティレベルを、必要セキュリティレベルと呼ぶことにする。電子署名の強度と必要セキュリティレベルの対応関係の情報はプリンタドライバ１１に持たせるか、或いはプリンタドライバ１１からアクセス可能な格納場所に置く。
【００２２】
また本実施形態では、ＰＣ１０とプリンタ１４との間で確立される伝送路保護の強度に対してもセキュリティレベルを割り当てる。例えば、伝送路の保護をＳＳＬ(Secure Socket Layer)で実現する場合、同じＰＣ１０からでも、出力先のプリンタが変われば、両者間で鍵長何ビットのＳＳＬ通信が確立可能かが変わってくる。確立できるＳＳＬの鍵長が長いほど、セキュリティレベルは高くなる。また、ＳＳＬ以外のＰＫＩベースのセキュア通信プロトコルを用いる場合も、そのプロトコルで用いる暗号方式の強度や、ＰＣ・プリンタ間で実際に確立できるそのプロトコルの鍵長などから、セキュリティレベルを決めることができる。またＰＣ・プリンタ間で共通鍵暗号方式を用いた暗号化によるデータ保護が実現できる場合には、その暗号化方式の暗号強度や鍵長などに基づき、伝送路のセキュリティレベルを求めることができる。異なるプロトコル間でのセキュリティレベルの高低は、理論的、或いは経験的な知識からシステム管理者が定めればよい。いずれにしても、セキュリティレベル毎に、そのセキュリティレベルに該当するセキュア通信プロトコル（及び使用する暗号鍵の鍵長）を対応づけることができる。１つのセキュリティレベルに対して、例えばＳＳＬの１２８ビット鍵長と、共通鍵暗号方式の１２８ビット鍵長などのように、複数の通信プロトコルを対応づけることもできる。このようなセキュリティレベルと各セキュア通信プロトコル（及び鍵長）との対応関係の情報は、プリンタドライバ１１に持たせるか、或いはプリンタドライバ１１からアクセス可能な格納場所に置く。以下、ＰＣ・プリンタ間で実際に確立できる伝送路のセキュリティレベルを、確立可能セキュリティレベルと呼ぶことにする。
【００２３】
そして、本実施形態では、ユーザから電子文書の印刷が指示された場合、この電子文書に付された電子署名の強度に対応するセキュリティレベルを満足するセキュア通信プロトコルでの通信が、ＰＣ１０とプリンタ１４との間で確立できるか否かを判定し、確立できればその電子文書のデータをＰＣ１０からプリンタ１４に送信する。
【００２４】
一方、確立できない場合は、例えば、単に印刷指示を認めずに印刷処理を中止することも好適である。また、別の方法としては、その電子署名を行った署名者（すなわちその電子文書についての権利保有者）に印刷を許可するか否かを問い合わせることも好適である。問合せには、例えば電子メールを用いることができる。署名者のメールアドレスは、電子署名を検証する際の公開鍵証明書から取得することができる。
【００２５】
その問合せに、例えばＰＣ・プリンタ間の伝送路で確立できる最高のセキュリティレベル（ただしこのレベルは署名の要求するレベルを満たさない）のプロトコルの情報を含めておけば、問合せを受けた署名者は、その情報を基に、その伝送路を介してその電子文書のデータをおくってよいかどうかを判断することができる。また、その問合せに対し、印刷指示者が指示した印刷設定（例えば部数や印刷品質など）の情報を付加すれば、署名者はその印刷設定での印刷を認めるかどうか判断できる。
【００２６】
プリンタドライバ１１は、この問合せに対する回答を、例えばその問合せの電子メールに対する返信メールの形で受け取るようにすることもできる。これには、プリンタドライバ１１はメールクライアントの機能を備えており、プリンタドライバ１１自身の電子メールアドレスから問合せを送信すればよい。
【００２７】
また、問合せに対する回答において、印刷指示者が指定した印刷設定の設定項目の値を変更した上で、印刷許可を行えるようにすることも好適である。
【００２８】
以上、本実施形態の概要を説明したので、次に、図２及び図３を参照して、本実施形態のプリンタドライバ１１の動作を説明する。プリンタドライバ１１は、例えば、編集又は閲覧用のアプリケーションで電子文書を開いた状態で、ユーザから印刷の指示が入力されると起動される。その電子文書が印刷対象となる。プリンタドライバ１１は、ユーザに対し印刷先のプリンタ、印刷するページ範囲、印刷部数等と言った各種の印刷設定項目（印刷属性）を指定するユーザインタフェース画面を提供する。ユーザがその画面上で必要な印刷設定項目を入力すると、プリンタドライバ１１は、入力された各印刷設定項目の値や、印刷を指示したユーザ名、現在時刻などをアプリケーション又はオペレーティングシステムから取得してＰＪＬで記述することにより、属性データを作成する（Ｓ１０１）。また、プリンタドライバ１１は、印刷対象の電子文書の印刷画像を印刷先のプリンタが解釈可能なＰＤＬで記述することで、印刷データを作成する（Ｓ１０２）。
【００２９】
そして、プリンタドライバ１１は、印刷対象の電子文書に電子署名が付されているかどうかを判定する（Ｓ１０３）。付されていなければ、プリンタドライバ１１は、属性データを暗号化して（Ｓ１０４）、印刷データは暗号化せずにそのまま、プリンタ１４に送信する。属性データの暗号化は、プリンタ１４が復号可能な所定の暗号方式で行う。ここで属性データを暗号化するのは、属性データ中に、ユーザ名等の個人情報が含まれるからである。
【００３０】
印刷対象の電子文書に電子署名が付されていた場合、プリンタドライバ１１は、その電子署名に対応する電子証明書の強度を確認する（Ｓ１０５）。ＸＭＬ署名等でよく知られるように、電子署名のデータ中には、その電子署名を検証するための公開鍵の証明書、又はその証明書を一意に示す識別情報が含まれている。証明書が含まれていれば、プリンタドライバは、その証明書中の公開鍵の鍵長、又はその証明書の発行者の情報、又はその両方に基づき、その証明書の強度（すなわち署名の強度）を求めることができる。証明書が含まれていなければ、プリンタドライバ１１は、電子署名のデータ中の識別情報に対応する証明書をＣＡ又はディレクトリサーバから取得し、その証明書の強度を求めればよい。
【００３１】
証明書の強度が確認できると、プリンタドライバ１１は、その強度に応じて、ＰＣ・プリンタ間の伝送路の必要セキュリティレベルを求める（Ｓ１０６）。
【００３２】
また、プリンタドライバ１１は、ステップＳ１０１で生成した属性データに対し、親展プリント属性を追加設定する（Ｓ１０７）。親展プリント属性が設定されている印刷データを受け取った場合、プリンタ１４は、その印刷データをすぐに印刷出力することはせず、その印刷データを保存する。そして、ユーザがプリンタ１４のコントロールパネルから正しいパスワードを入力すると、その印刷データを印刷出力する。ステップＳ１０７では、プリンタドライバ１１は、パスワード入力のためのユーザインタフェース画面をＰＣ１０のディスプレイに表示させ、それに応じてユーザが入力したパスワードを親展プリントのパスワードとして属性データに追加する。
【００３３】
次に、プリンタドライバ１１は、プリンタ１４との間で確立できる伝送路セキュリティレベルを確認する（Ｓ１０８）。伝送路のセキュリティレベルは、例えば、ＳＳＬ(Secure Socket Layer)による保護の有無により区別できる。また、同じＳＳＬで保護されている場合でも、鍵長が４０ビットの場合よりも１２８ビットの場合の方が強度が高い。このようなＳＳＬの有無、及びＳＳＬの鍵長などに基づき、伝送経路のセキュリティ強度の値を規定しておく。ステップＳ１０８では、ＰＣ１０が利用可能な各種のセキュア通信プロトコル（及び使用可能な鍵長）のうち、必要セキュリティレベルに該当する通信プロトコルが確立できるかをプリンタドライバ１１からプリンタ１４へと問い合わせる。必要セキュリティレベルに該当するプロトコルが複数ある場合は、確立できるものが見つかるまでそれら各プロトコルを問い合わせる。そして、必要セキュリティレベルに該当する通信プロトコルの中でＰＣ・プリンタ間で確立可能なものが見つかったか否かを判定する（Ｓ１０９）。そして、そのような通信プロトコルが見つかれば、プリンタドライバ１１は、ステップＳ６やＳ７で自動設定された暗号化強度や親展プリント属性の値を、印刷属性設定用のユーザインタフェース画面に反映させて表示する（Ｓ１１１）。ユーザは、この表示を見ることでどのような設定がなされているかを知ることができ、また必要に応じ設定内容を変更することもできる。そして、見つかった通信プロトコルを用いてプリンタ１４との間で通信セッションを確立することで、必要セキュリティレベルを満たす保護状態の伝送路を形成し（Ｓ１１２）、その伝送路を介して属性データ及び印刷データを送信する（Ｓ１１３）。
【００３４】
一方、ステップＳ１０９で、必要セキュリティレベルに該当する通信プロトコルの中でＰＣ・プリンタ間で確立可能なものが見つからなかった場合、処理は図３のステップＳ１２０に進む。ステップＳ１２０では、プリンタドライバ１１は、ＰＣ１０のディスプレイに対し、電子文書の権利保有者が要求する必要セキュリティレベルがＰＣ・プリンタ間で確立できないこと、印刷を続行するには権利保有者に許可をもらう処理が必要となるためある程度の時間が掛かること、等を示したドライバＵＩ（ユーザインタフェース）画面を表示する。このＵＩ画面には、印刷を中止するか、続行するかを指示するためのＧＵＩ（グラフィカルユーザインタフェース）部品（例えばボタンなど）が表示され、印刷を指示したユーザは、そのＧＵＩ部品を用いて印刷中止又は続行を指示することができる。ステップＳ１２１では、ユーザからの指示を判定する。
【００３５】
印刷中止の指示を受けた場合、プリンタドライバ１１は電子文書の印刷を中止する処理を行い（Ｓ１２２）、それまでに作成した印刷ジョブのデータ（例えば属性データや印刷データなど）を削除する（Ｓ１２３）。
【００３６】
この逆に、印刷続行の指示を受けた場合、プリンタドライバ１１は、電子文書の署名者のメールアドレスを上述のようにして取得し、そのメールアドレスに対して、印刷可否の問合せの電子メールを送信し（Ｓ１２４）、その電子文書に対する印刷ジョブの処理を一時停止する（Ｓ１２５）。
【００３７】
このとき送信される問合せ電子メールの本文内容の例を図４に示す。この例では、電子メールには、「あなたが署名した以下の印刷対象に対して以下の印刷条件及び印刷設定で印刷の許可が求められています。許可する場合は、「印刷設定」欄末尾の「印刷許可」の値を「NG」から「OK」に変更して返信して下さい。また「印刷設定」欄の各項目の値は変更可能です。変更する値は[ ]内の選択肢から選んで下さい。また「部数」は正の整数値で、「印刷ページ」には印刷を許可するページ範囲を指定して下さい。」などというように、印刷許可が求められていること、印刷を許可とする場合にとるべき操作内容、許可する際の印刷設定（属性）の変更の仕方、などを示した説明文２２が含まれる。また、この電子メールには、印刷対象２４、印刷条件２６、印刷設定２８、及び印刷許可２９の欄が含まれる。印刷対象２４には、印刷対象の電子文書の名称（ドキュメント名）や、その電子文書に付された電子署名の強度に応じた必要セキュリティレベルの情報が含まれる。この例では、必要セキュリティレベルとして、セキュアな通信プロトコルの種類と鍵長との組合せ（例えばＳＳＬ１２８ビットなど）を示すことで、問合せを受けた人に直感的に分かりやすくしている。印刷条件２６には、実際にＰＣ・プリンタ間で確立できる最高のセキュリティレベルの情報が、例えば通信プロトコルと鍵長との組合せで示される。問合せを受けた者は、印刷対象２４と印刷条件２６とを見比べることで、印刷を許可するかどうかを判断できる。
【００３８】
また、印刷設定２８の欄には、印刷指示者が設定した印刷設定項目の値が列挙されるとともに、各項目についての選択肢が［  ］内に示される。例えば、印刷の品質を示す設定項目「印刷モード」には、品質の高い順に「高画質」、「標準」、「ドラフト」の３つの選択肢がある。「セキュリティプリント」は親展ボックスプリントのことであり、この値が「ＯＮ」ならば、親展ボックスプリントが指定されているという意味である。また、「印刷部数」や印刷を許可するページの範囲を示す「印刷ページ」のように、整数値や、上限及び／又は下限の整数値で示される範囲などを記述する項目もある。また「ウォーターマーク」は、文書画像に対して「見本」等の文字列やパターンを薄く重ねて印刷する処理であり、この値が「ＯＮ」となっていると、ウォーターマークが印刷される。「ウォーターマークテキスト」は、ウォーターマークとして重畳する文字列を指定する欄である。また、印刷許可２９は、問合せを受けた者が印刷を許可するか否かを設定するための欄である。この欄には、許可しないことを示す「ＮＧ」の値がデフォルトで設定されている。
【００３９】
この他、許可を求めるユーザ（印刷指示をした者）のユーザの識別情報（氏名やユーザ名など）を問合せの電子メールに含めてもよい。
【００４０】
問合せを受けた権利保有者は、この問合せのメールに対する返信をプリンタドライバ１１のメールアドレス宛に送信することで、印刷を許可するか否かを指示することができる。印刷を許可する場合は、返信メール中の印刷許可２９の値を「ＮＧ」から「ＯＫ」に変えればよい。また、印刷設定を変えて印刷を許可する場合には、権利保有者は、印刷設定２８の中の必要な項目の値を変更し、印刷許可２９の値を「ＮＧ」とした返信メールを作成すればよい。図４の問合せメールに対する返信メールの一例の要部を図５に示す。この例では、「カラーモード」が「カラー」から「白黒」へ、「印刷モード」が「標準」から「ドラフト」へ、「印刷ページ」が「全部」から「１−５」（１〜５ページ）に変更された上で印刷が許可されている。すなわち、この返信メールによれば、権利保有者は、５ページ目まで、かつ白黒の荒い画像であれば印刷を認めるという意思表示を行ったことになる。
【００４１】
再び図３の説明に戻ると、問合せメールを送信した後、プリンタドライバ１１はそれに対する回答のメールを待つ（Ｓ１２６、１２７）。プリンタドライバ１１はメールクライアント機能を持っており、自分宛に回答メールが来れば、それをメールサーバから取得して解析する。
ここで、予め定めた待機時間が経過しても回答がない場合はタイムアウトとなる（Ｓ１２７）。この場合プリンタドライバ１１は、権利保有者から印刷許可が得られなかったので印刷できない等の状況説明をＵＩ画面に表示し（Ｓ１２８）、当該印刷ジョブの処理を中止し（Ｓ１２２）、当該印刷ジョブを削除する（Ｓ１２３）。また、タイムアウト前に回答があった場合、その回答が印刷を許可するものか否かを判定する（Ｓ１２７）。この判定は、回答のメールにおける印刷許可２９の値を調べることで行うことができる。この回答が印刷を許可しないものであった場合、タイムアウトの場合と同様ステップＳ１２８以降に進む。
【００４２】
ステップＳ１２７で、回答が印刷を許可するものであった場合、プリンタドライバ１１は、回答のメールから印刷設定２６の各項目の値を読み出し、それら各設定項目の値を示したＵＩ画面をディスプレイに表示し、この設定で印刷を実行するか、この設定なら印刷は取りやめるかをユーザ（印刷指示者）に問い合わせる（Ｓ１２９）。この問合せに対し、ユーザが印刷を実行すると回答した場合（Ｓ１３０の判定結果がＹ）、プリンタドライバ１１はＳ１２９で表示した印刷設定内容に応じて属性データを変更し（Ｓ１３１）、ステップＳ１２４の問合せで権利保有者に知らせたＰＣ・プリンタ間の最高のセキュリティレベルでの伝送路セキュリティを確立する処理を行って（Ｓ１３２）、属性データ及び印刷データをプリンタ１４宛に送信する（Ｓ１３３）。そして、プリンタ１４から印刷完了の旨が知らされると、プリンタドライバ１１は、署名者（権利保有者）に対し、許可された印刷設定で印刷がなされたことを示すメッセージを、電子メールなどで通知する（Ｓ１３４）。この電子メールは、権利保有者からの回答メールに対する返信とすればよい。
【００４３】
一方、権利保有者が許可した印刷設定では印刷する必要がないと印刷指示者が判断した場合、印刷指示者はステップＳ１２９で提供されたＵＩ画面に対し、印刷取りやめの旨を入力する（Ｓ１３０の判定結果がＮ）。この場合、プリンタドライバ１１は、当該電子文書の印刷ジョブの処理を中止し（Ｓ１３５）、その印刷ジョブを削除し（Ｓ１３６）、その文書の印刷が行われなかったことを示すメッセージを電子メールなどで通知する（Ｓ１３７）。この電子メールは、権利保有者からの回答メールに対する返信とすればよい。
【００４４】
次に、図６を参照してプリンタ１４の処理手順を説明する。プリンタ１４は、伝送路保護のために暗号化されている属性データや印刷データを受け取って処理する。すなわち、プリンタ１４は、ＰＣ１０から属性データを受け取ると、その属性データは暗号化されているのでこれを復号し、印刷属性の情報を取得する。また、プリンタ１４は、ＰＣ１０から印刷データを受け取ると（Ｓ２０１）、その印刷データが暗号化されているかどうかを判定し（Ｓ２０２）、暗号化されていれば、それを復号する（Ｓ２０３）。この復号は、ＰＣ１０との間で確立した伝送路保護のプロトコルに応じて行えばよい。
【００４５】
そしてプリンタ１４は、復号した印刷データを属性データに従って印刷し（Ｓ２０４）、印刷が完了すると復号した印刷データをプリンタ１４内の記憶装置上から削除する（Ｓ２０５）。この削除により、電子文書の内容がプリンタ１４に残ることがないので、高いセキュリティを実現できる。
【００４６】
以上、プリンタドライバ１１が電子文書をＰＤＬの印刷データに変換してプリンタ１４に送信する場合の処理手順を説明した。これに対し、電子文書をそのままプリンタ１４に送るダイレクトプリントの場合のプリンタドライバ１１の手順は、電子文書をＰＤＬのデータに変換するステップ（Ｓ１０２）が不要である点、及びステップＳ１０３，１３３でＰＤＬの印刷データではなく電子文書そのものを暗号化する点、が図２及び図３の処理手順と異なるだけで、他は図２及び図３と同様の手順でよい。
【００４７】
以上説明したように、本実施形態によれば、ＰＣ１０からプリンタ１４に送る電子文書のデータ（電子文書そのもの又はＰＤＬの印刷データ）の機密保護を、その電子文書に対する電子署名の有無や、その電子署名の強度に応じて制御する。したがって、印刷を指示するユーザは何ら操作を行わなくても、電子文書に対し署名を行った権利保有者のセキュリティ保護の意図に応じた強度で、伝送路上で電子文書の内容を保護することができる。また、本実施形態では、印刷対象の電子文書に電子署名が付されている場合に、プリンタドライバ１１が親展プリント属性を自動設定するので、電子署名付きの電子文書の印刷結果がプリンタ１４のトレイに出力されたまま放置され漏洩すると言ったリスクも低減できる。また、本実施形態では、自動設定した暗号強度や親展プリントの設定内容をユーザインタフェース画面に表示するので、ユーザが設定内容を確認でき、必要に応じ変更もできる。
【００４８】
また本実施形態では、ＰＣ・プリンタ間の伝送路が、権利保有者の電子署名により要求されるセキュリティレベルに達しない場合、権利保有者の許可を得ないと印刷できない形としたため、権利保有者の文書保護の意図を強固に守ることができる。
【００４９】
また本実施形態では、印刷を許可するか否かの問合せに対する回答において、権利保有者が許可可能な印刷設定内容を指定することができるので、権利保有者の権利を権利保有者自身の指定に応じてきめ細かく保護することができる。
【００５０】
以上では、プリンタドライバ１１を例にとったが、プリンタドライバ以外でも、プリンタに対して印刷データを送信して印刷させることができるプログラムは存在しており、そのようなプログラム一般に対して上記実施形態の方式は適用可能である。
【００５１】
なお、このようなプリンタドライバ等のプログラムが実行されるコンピュータは、ハードウェアとして、ＣＰＵ（中央演算装置）、メモリ（一次記憶）、各種Ｉ／Ｏ（入出力）インタフェース等がバスを介して接続された回路構成を有する。また、そのバスに対し、例えばＩ／Ｏインタフェース経由で、ハードディスクドライブやＣＤやＤＶＤ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体を読み取るためのドライブが接続される。このようなドライブは、メモリに対する外部記憶装置として機能する。上述した実施の形態の処理内容が記述されたプログラムが、そのような外部記憶装置に保存され、コンピュータにインストールされている。また、このプログラムは、ＣＰＵからアクセス可能なＲＯＭ（リード・オンリー・メモリ）に保持されていてもよい。外部記憶装置に記憶されたプログラムがメモリに読み出されＣＰＵにより実行されるか、又はＲＯＭ上のプログラムがＣＰＵから実行されることにより、上述の実施の形態の処理が実現される。
【図面の簡単な説明】
【００５２】
【図１】実施形態のプリンタを備えたシステムの構成の例を示す図である。
【図２】プリンタドライバの処理手順の一部を示すフローチャートである。
【図３】プリンタドライバの処理手順の残り部分を示すフローチャートである。
【図４】プリンタドライバが作成する問合せメールの内容例を示す図である。
【図５】問合せメールに対する回答メールの内容例を示す図である。
【図６】プリンタの処理手順を示すフローチャートである。
【符号の説明】
【００５３】
１０，１６  ＰＣ（パーソナルコンピュータ）、１１  プリンタドライバ、１２  ネットワーク、１４  プリンタ。
【図１】
2007207166.tif 000003
【図２】
2007207166.tif 000004
【図３】
2007207166.tif 000005
【図４】
2007207166.tif 000006
【図５】
2007207166.tif 000007
【図６】
2007207166.tif 000008