(57)【要約】【課題】ユーザの認証機器を必要とする複数の処理指示を実行する場合に、認証機器を情報処理装置と通信可能な状態に置く期間を短くする。【解決手段】複数の処理指示に係る複数のジョブを実行する場合に、それら各ジョブに含まれるジョブ要素のうち、認証機器（例えばＩＣカード）を必要とするジョブ要素を続けて実行する。例えば、暗号化された印刷データをＩＣカードにより復号して印刷するジョブ１とジョブ２が存在する場合、ジョブ１についてＩＣカードが必要な復号処理を実行した後、ジョブ１を一時停止し、ジョブ２の復号処理を実行する。これが終了した後、ジョブ１及びジョブ２の印刷処理を実行する。【選択図】図２
2010074736.tif 000002
【特許請求の範囲】
【請求項１】
複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、当該処理の実行を行う権限を有することを認証する認証機器と通信を行う必要がある処理要素を含む処理であることを特徴とする取得手段と、
前記認証機器と通信する通信手段と、
前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段と、
を備える情報処理装置。
【請求項２】
複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、実行順序が定められた１以上の処理要素を含む処理であることを特徴とする取得手段と、
前記処理の実行を行う権限を有するかを認証する認証機器と通信する通信手段と、
前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段と、
を備える情報処理装置。
【請求項３】
前記実行手段は、前記通信手段により通信される前記認証機器を用いて認証することができる場合は、前記複数の指示のうちの第１の指示に係る処理に含まれる前記認証機器との通信を必要とする第１の処理要素を実行した後、前記第１の指示に係る処理の中で前記第１の処理要素の次に実行することが定められた第２の処理要素が前記認証機器との通信を必要としない処理要素である場合には、当該第１の指示に係る処理を前記第１の処理要素の実行が完了した段階で停止状態とし、前記複数の指示のうち第２の指示に係る処理において次に実行すべき処理要素である、前記認証機器との通信を必要とする処理要素を実行する、
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記実行手段は、前記通信手段により通信される前記認証機器を用いて認証することができない場合は、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要としない処理要素であって実行可能なものを、少なくとも２以上続けて実行する、
ことを特徴とする請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
前記実行手段は、前記通信手段により通信される前記認証機器を用いて認証することができない場合は、第３の指示に係る処理に含まれる前記認証機器との通信を必要としない第３の処理要素を実行した後、前記第３の指示に係る処理の中で前記第３の処理要素の次に実行することが定められた第４の処理要素が前記認証機器との通信を必要とする処理要素である場合には、前記第３の指示に係る処理を前記第３の要素の実行が完了した段階で停止状態とし、前記複数の指示のうちの第４の指示に係る処理において前記認証機器との通信を必要としない処理要素を実行する、
ことを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記実行手段は、前記通信手段により通信される前記認証機器を用いて認証することができる場合は、前記第１の指示に係る処理に含まれる前記認証機器との通信を必要とする第１の処理要素を実行した後、前記第１の指示に係る処理の中で前記第１の処理要素の次に実行することが定められた第２の処理要素が前記認証機器との通信を必要とする処理要素である場合には、前記第１の処理要素の実行の後に続けて前記第２の処理要素を実行する、ことを特徴とする請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項７】
前記実行手段は、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、当該ユーザから前記取得手段が取得した指示であって当該指示に係る処理において次に実行することが定められた処理要素が前記認証機器との通信を必要とする処理要素である停止状態の指示があれば、当該指示に係る前記次に実行すべき処理要素を実行する、ことを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記実行手段は、指示に係る処理の中の前記認証機器との通信を必要とする処理要素を実行中に前記通信手段により通信される前記認証機器を用いて認証することができる場合に、当該指示に係る処理を停止状態とし、前記複数の指示に係る処理の中で実行すべき処理要素が前記認証機器との通信を必要としない処理要素であって実行可能なものがある場合に、当該処理要素を実行する、ことを特徴とする請求項１〜７のいずれか１項に記載の情報処理装置。
【請求項９】
コンピュータを、
複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、当該処理の実行を行う権限を有することを認証する認証機器と通信を行う必要がある処理要素を含む処理であることを特徴とする取得手段、
前記認証機器と通信する通信手段、
前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段、
として機能させるためのプログラム。
【請求項１０】
コンピュータを、
複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、実行順序が定められた１以上の処理要素を含む処理であることを特徴とする取得手段、
前記処理の実行を行う権限を有するかを認証する認証機器と通信する通信手段、
前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段、
として機能させるためのプログラム。
【請求項１１】
情報処理装置と、処理の実行を行う権限を有することを認証する認証機器と、を備え、
前記情報処理装置は、
複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、前記認証機器と通信を行う必要がある処理要素を含む処理であることを特徴とする取得手段と、
前記認証機器と通信する通信手段と、
前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段と、
を備え、
前記認証機器は、
前記情報処理装置の前記通信手段から要求された認証に関連する処理を実行し、その処理の結果を前記通信手段に返す手段、
を備える、
ことを特徴とする情報処理システム。
【請求項１２】
情報処理装置と、処理の実行を行う権限を有することを認証する認証機器と、を備え、
前記情報処理装置は、
複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、実行順序が定められた１以上の処理要素を含む処理であることを特徴とする取得手段と、
前記処理の実行を行う権限を有するかを認証する認証機器と通信する通信手段と、
前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段と、
を備え、
前記認証機器は、
前記情報処理装置の前記通信手段から要求された認証に関連する処理を実行し、その処理の結果を前記通信手段に返す手段、
を備える、
ことを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置、プログラム及び情報処理システムに関する。
【背景技術】
【０００２】
特許文献１に開示された技術では、画像形成装置のＵＳＢコネクタにユーザのＵＳＢトークンを差し込み、文書をスキャンした後、データ処理装置のスキャンデータ処理手段により文書ファイルに変換するとともにメッセージダイジェスト生成手段によりメッセージダイジェストを算出する。その後、画像形成装置内の暗号化手段により、ＵＳＢトークンより得た秘密鍵 を用いて、送られてきたメッセージダイジェストを暗号化し、次いで、データ処理装置内で前記文書化されたファイルにこの署名されたメッセージダイジェストを合成し、署名された文書化ファイルを完成させる。
【０００３】
特許文献２には、ユーザの秘密鍵及び公開鍵を内蔵したＩＣカードを用いて印刷データの暗号化及び復号を行う画像形成装置が開示されている。この装置は、ユーザのＩＣカードを読み取るカードリーダを備えている。この装置は、暗号化され保存された印刷データの印刷が指示されると、カードリーダにセットされたＩＣカードに対して暗号化された共通鍵を送って、ＩＣカードから復号された共通鍵を受け取り、その共通鍵を用いて暗号化された印刷データを復号して印刷する。
【０００４】
特許文献３には、秘密鍵及び公開鍵証明書を格納したＩＣカード等の携帯型電子ユニットを利用して情報処理装置において電子署名を実行する電子署名システムにおいて、情報処理装置から携帯型電子ユニットを早期に取り外すための技術が提案されている。このシステムでは、ＩＣカードは、第１公開鍵についての第１公開鍵証明書及びそれに対応する第１秘密鍵を格納したメモリと、第１秘密鍵を使って、画像処理装置から提供される第２公開鍵の署名値を生成する第１電子署名部２とを含む。画像処理装置は、該第２公開鍵及びそれに対応する第２秘密鍵を生成する鍵生成部と、該第２公開鍵についての第２公開鍵証明書を生成する証明書生成部とを含む。第２公開鍵証明書は、該第２公開鍵、ＩＣカードから提供される署名値及び第１公開鍵証明書を含む。
【０００５】
特許文献４には、複数の情報処理装置が連携して処理を実行するシステムにおいて、指示等のデータに対して電子署名を付したものを情報処理装置間で伝送することが開示されている。
【０００６】
【特許文献１】特開２００３−２２４７２８号公報
【特許文献２】特開２００５−３４８２５０号公報
【特許文献３】特開２００６−２６２４０８号公報
【特許文献４】特開２００４−１５１８９６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、ユーザの認証機器を必要とする複数の処理指示を実行する場合に、認証機器との通信が必要な処理要素について続けて実行することを目的とする。
【課題を解決するための手段】
【０００８】
請求項１に係る発明は、複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、当該処理の実行を行う権限を有することを認証する認証機器と通信を行う必要がある処理要素を含む処理であることを特徴とする取得手段と、前記認証機器と通信する通信手段と、前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段と、を備える情報処理装置である。
【０００９】
請求項２に係る発明は、複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、実行順序が定められた１以上の処理要素を含む処理であることを特徴とする取得手段と、前記処理の実行を行う権限を有するかを認証する認証機器と通信する通信手段と、前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段と、を備える情報処理装置である。
【００１０】
請求項３に係る発明は、請求項１又は２に係る発明において、前記実行手段は、前記通信手段により通信される前記認証機器を用いて認証することができる場合は、前記複数の指示のうちの第１の指示に係る処理に含まれる前記認証機器との通信を必要とする第１の処理要素を実行した後、前記第１の指示に係る処理の中で前記第１の処理要素の次に実行することが定められた第２の処理要素が前記認証機器との通信を必要としない処理要素である場合には、当該第１の指示に係る処理を前記第１の処理要素の実行が完了した段階で停止状態とし、前記複数の指示のうち第２の指示に係る処理において次に実行すべき処理要素である、前記認証機器との通信を必要とする処理要素を実行する、ことを特徴とする。
【００１１】
請求項４に係る発明は、請求項１〜３のいずれか１項に係る発明において、前記実行手段は、前記通信手段により通信される前記認証機器を用いて認証することができない場合は、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要としない処理要素であって実行可能なものを、少なくとも２以上続けて実行する、ことを特徴とする。
【００１２】
請求項５に係る発明は、請求項４に係る発明において、前記実行手段は、前記通信手段により通信される前記認証機器を用いて認証することができない場合は、第３の指示に係る処理に含まれる前記認証機器との通信を必要としない第３の処理要素を実行した後、前記第３の指示に係る処理の中で前記第３の処理要素の次に実行することが定められた第４の処理要素が前記認証機器との通信を必要とする処理要素である場合には、前記第３の指示に係る処理を前記第３の要素の実行が完了した段階で停止状態とし、前記複数の指示のうちの第４の指示に係る処理において前記認証機器との通信を必要としない処理要素を実行する、ことを特徴とする。
【００１３】
請求項６に係る発明は、請求項１〜５のいずれか１項に係る発明において、前記実行手段は、前記通信手段により通信される前記認証機器を用いて認証することができる場合は、前記第１の指示に係る処理に含まれる前記認証機器との通信を必要とする第１の処理要素を実行した後、前記第１の指示に係る処理の中で前記第１の処理要素の次に実行することが定められた第２の処理要素が前記認証機器との通信を必要とする処理要素である場合には、前記第１の処理要素の実行の後に続けて前記第２の処理要素を実行する、ことを特徴とする。
【００１４】
請求項７に係る発明は、請求項１〜６のいずれか１項に係る発明において、前記実行手段は、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、当該ユーザから前記取得手段が取得した指示であって当該指示に係る処理において次に実行することが定められた処理要素が前記認証機器との通信を必要とする処理要素である停止状態の指示があれば、当該指示に係る前記次に実行すべき処理要素を実行する、ことを特徴とする。
【００１５】
請求項８に係る発明は、請求項１〜７のいずれか１項に係る発明において、前記実行手段は、指示に係る処理の中の前記認証機器との通信を必要とする処理要素を実行中に前記通信手段により通信される前記認証機器を用いて認証することができる場合に、当該指示に係る処理を停止状態とし、前記複数の指示に係る処理の中で実行すべき処理要素が前記認証機器との通信を必要としない処理要素であって実行可能なものがある場合に、当該処理要素を実行する、ことを特徴とする。
【００１６】
請求項９に係る発明は、コンピュータを、複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、当該処理の実行を行う権限を有することを認証する認証機器と通信を行う必要がある処理要素を含む処理であることを特徴とする取得手段、前記認証機器と通信する通信手段、前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段、として機能させるためのプログラムである。
【００１７】
請求項１０に係る発明は、コンピュータを、複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、実行順序が定められた１以上の処理要素を含む処理であることを特徴とする取得手段、前記処理の実行を行う権限を有するかを認証する認証機器と通信する通信手段、前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段、として機能させるためのプログラムである。
【００１８】
請求項１１に係る発明は、情報処理装置と、処理の実行を行う権限を有することを認証する認証機器と、を備え、前記情報処理装置は、複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、前記認証機器と通信を行う必要がある処理要素を含む処理であることを特徴とする取得手段と、前記認証機器と通信する通信手段と、前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段と、を備え、前記認証機器は、前記情報処理装置の前記通信手段から要求された認証に関連する処理を実行し、その処理の結果を前記通信手段に返す手段、を備える、ことを特徴とする情報処理システムである。
【００１９】
請求項１２に係る発明は、情報処理装置と、処理の実行を行う権限を有することを認証する認証機器と、を備え、前記情報処理装置は、複数の処理に対する実行の指示を取得する取得手段であって、前記複数の処理の各々は、実行順序が定められた１以上の処理要素を含む処理であることを特徴とする取得手段と、前記処理の実行を行う権限を有するかを認証する認証機器と通信する通信手段と、前記取得手段が取得した複数の指示の各々に係る処理に含まれる各処理要素を実行する実行手段であって、前記通信手段により通信される前記認証機器を用いて認証することができる場合に、前記複数の指示に係る各処理の中の各処理要素のうち、前記認証機器との通信を必要とする処理要素であって実行可能なものを、少なくとも２以上続けて実行する実行手段と、を備え、前記認証機器は、前記情報処理装置の前記通信手段から要求された認証に関連する処理を実行し、その処理の結果を前記通信手段に返す手段、を備える、ことを特徴とする情報処理システムである。
【発明の効果】
【００２０】
請求項１、２、９、１０、１１及び１２に係る発明によれば、本構成を有しない場合に比較して、認証機器との通信が必要な処理要素について続けて実行することができる。
【００２１】
請求項３に係る発明によれば、第１の処理指示に係る処理が完了する前に第２の処理指示における認証機器との通信が必要な処理要素を実行することができる。
【００２２】
請求項４に係る発明によれば、認証機器との通信が出来ない場合においても、認証機器との通信が必要ない処理について続けて実行することができる。
【００２３】
請求項５に係る発明によれば、認証機器との通信が出来ない場合においても、認証機器との通信が必要ない処理要素について処理することができる。
【００２４】
請求項６に係る発明によれば、認証機器との通信が必要な処理要素について連続して処理することができる。
【００２５】
請求項７に係る発明によれば、停止状態の処理指示における認証機器との通信を必要とする処理要素を続けて実行することができる。
【００２６】
請求項８に係る発明によれば、通信手段が認証機器と通信できなくなった場合でも、処理指示に係る処理の認証機器との通信を必要としない処理要素を実行することができる。
【発明を実施するための最良の形態】
【００２７】
図１に例示するこの実施形態の画像処理装置は、ジョブ入力部１０，ジョブ実行部１２，指示受付部１４，記憶装置１６，出力部１８，認証部２０，カードリーダ２２，署名部２６，及び復号部２４を備える。画像処理装置は、例えばデジタル複合機（プリンタ、スキャナ、コピー機などの複数の機能を併せ持つ装置）として実現される。
【００２８】
ジョブ入力部１０は、ジョブのデータの入力を受け付ける。ここで、ジョブとは、ユーザが画像処理装置に対して指示する処理のことであり、例えば、ワードプロセッサで作成した文書などといった電子文書の印刷、紙原稿のスキャン、紙原稿のコピーなどがその一例である。印刷の場合、例えば、リモートのコンピュータから送信されてくる１つの印刷データを、その印刷データに対応する印刷属性情報に従って印刷する処理が１つのジョブとなる。また、スキャンやコピーの場合、例えば画像処理装置が備える自動原稿送り装置にセットされた原稿の束をスキャンしたりコピーしたりする処理が１つのジョブとなる。
【００２９】
また近年では、紙原稿をスキャンしてそのスキャン結果の画像データを電子メールに添付して指定された宛先に送信するジョブや、暗号化された印刷データをユーザのＩＣカードを用いて復号して印刷するジョブ（「暗号プリント」ジョブと呼ぶ）などといった複合的なジョブを実行可能な画像処理装置も増えている。
【００３０】
この実施形態では、複合的なジョブを、複数の処理要素（「ジョブ要素」と呼ぶ）に分けて管理する。ジョブ要素とは、１つのジョブを構成する個々の処理単位である。この考え方では、１つのジョブは、実行順序が定められた１以上のジョブ要素から構成される。例えば、暗号プリントジョブは、暗号化された印刷データをユーザのＩＣカードを用いて復号するジョブ要素と、（復号結果の）印刷データを紙に印刷するジョブ要素と、から構成される。また、例えば、自動原稿送り装置に置かれた紙原稿をスキャンして電子的な画像データに変換するジョブ要素と、ユーザのＩＣカードを用いてその画像データに電子署名を付すジョブ要素とから構成される「スキャン署名」ジョブなどもある。
【００３１】
ジョブ要素には、物理的な媒体への出力又は物理的な媒体からの入力を伴うものと、電子的なデータに対する処理のみからなるものとがある。前者には、印刷データを紙に印刷するジョブ要素、紙原稿上の画像を電子的なデータへと変換するジョブ要素、電子的な画像データをファクシミリ送信するジョブ要素などがある。また後者には、例えば暗号化された印刷データを復号するジョブ要素や、電子的な文書データに電子署名を付すジョブ要素などがある。
【００３２】
ジョブ入力部１０は、例えば、リモートのコンピュータから印刷データを受信するネットワークインタフェース、又は紙原稿を読み取るスキャナなどである。
【００３３】
ジョブ実行部１２は、ジョブ入力部１０から入力されたジョブを実行する手段である。ジョブ実行部１２は、ジョブを実行するにあたり、ＣＰＵ（中央演算装置）やメモリなどといったコンピュータハードウエア、そのハードウエアで実行される各種のプログラム、ネットワークインタフェース、スキャナ機構、プリンタ機構、ファクシミリ機構などといった、画像処理装置が備える各種のリソース（処理のための資源）のなかでそのジョブに必要なものを用いる。
【００３４】
ジョブ実行部１２は、入力されたジョブに対し、周知の先入れ先出し方式のキュー（待ち行列）管理を実行する。このキュー管理では、例えば、１つのジョブの実行が完了すると、キューの先頭からジョブを取り出して実行する。また、ジョブ実行部１２は、ユーザの指示に従ってキュー内のジョブの実行順序を変更する機能を備えていてもよい。
【００３５】
指示受付部１４は、画像処理装置のユーザインタフェースであり、ユーザから指示を受け付ける。指示受付部１４は、表示及び入力のためのハードウエア（例えば液晶タッチパネル）を備えていてもよい。指示受付部１４は、コピー等のジョブの実行開始を指示するためのスタートボタンを備えていてもよい。
【００３６】
記憶装置１６は、ジョブのデータ（例えば印刷データなど）、ジョブの管理のためのデータ（キューの管理情報など）、ジョブ要素の実行結果のデータ、又はジョブの実行結果のデータ等を記憶する。ジョブ要素の実行結果のデータの例には、例えば暗号プリントジョブにおける復号された印刷データや、スキャン署名ジョブにおけるスキャン結果の画像データなどがある。ジョブの実行結果のデータの例には、スキャンジョブにおけるスキャン結果の画像データや、スキャン署名ジョブにおける電子署名後の文書データなどがある。記憶装置１６は、例えばハードディスク装置などである。
【００３７】
出力部１８は、ジョブの処理結果を出力する手段である。例えば、プリンタ機構、ファクシミリ機構、ネットワークインタフェースなどがその例である。
【００３８】
認証部２０は、画像処理装置の指示受付部１４に対して指示を入力するユーザを認証する。この例では、認証部２０は、カードリーダ２２にユーザがセットしたＩＣカードを用いて、公知の手法によりユーザ認証を行う。
【００３９】
ＩＣカードは、ユーザの固有情報を記憶している。ＩＣカードは、カードリーダ２２から受信したデータに対してユーザの固有情報を用いた演算処理を施し、その処理結果をカードリーダ２２へと返す。ＩＣカードは、例えば、公開鍵基盤（ＰＫＩ）技術におけるユーザの秘密鍵と公開鍵（及び公開鍵証明書）を記憶したものである。この場合、ＩＣカードは、カードリーダ２２から受信したデータに対して公開鍵又は秘密鍵を用いた演算処理を施し、その処理結果のデータをカードリーダに返す。
【００４０】
復号部２４は、暗号化されたデータ（例えば暗号化された印刷データ）を、ユーザのＩＣカードとの通信により得たデータを用いて復号する。署名部２６は、ユーザのＩＣカードとの通信により得たデータを用いて、署名対象のデータに対して当該ユーザの電子署名を付す。
【００４１】
この実施形態では、１のユーザの複数のジョブ（言い換えれば１つのＩＣカードを用いるジョブ）を実行する際に、それら複数のジョブの中にあるそのユーザのＩＣカードを用いるジョブ要素をできるだけ続けて実行するよう制御する。なお、この明細書では、複数人からなるグループも「ユーザ」と呼ぶこととする。このようなグループに対し、そのグループの固有情報を記憶したＩＣカードを割り当てる場合もあるからである。
【００４２】
このような制御の一例を、図２及び図３を参照して説明する。この例では、ＩＣカード内にユーザの固有情報として、そのユーザの秘密鍵（及び公開鍵証明書）を持たせる。そして、画像処理装置がその公開鍵証明書内の公開鍵で暗号化が施された印刷データを複数、ネットワーク上のコンピュータから受信し、印刷出力する。図２の例は、暗号化された印刷データを印刷するジョブを２つ実行する場合を示している。
【００４３】
ＩＣカードを用いた暗号プリントでは、ユーザは、自分のパーソナルコンピュータで、ＩＣカード内の自分の公開鍵を用いて印刷データに対して暗号化を行う。暗号化された印刷データは、画像処理装置の記憶装置１６に保存される。そして、ユーザが画像処理装置のところまで出向き、ＩＣカードをカードリーダ２２に挿入し、保存されたそれら暗号プリントの印刷データの印刷の指示を行う。
【００４４】
暗号プリントのジョブでは、図２に示すように、復号処理と印刷という２つのジョブ要素を順に実行する。ここで、この実施形態では、ジョブごとに復号処理と印刷を続けて実行するのではなく、最初のジョブ（「ジョブ１」）の復号処理が終わると２番目のジョブ（「ジョブ２」）の復号処理を行う。すなわち、復号処理には秘密鍵が必要であるためＩＣカードが必要であるが、印刷ではＩＣカードは必要ないので、ＩＣカードが必要な復号処理を少なくとも２以上続けて実行するのである。
【００４５】
ここで、ジョブ１は、復号処理が完了したら復号結果を記憶した状態のまま一時停止する。そして、ジョブ２の復号処理が終わった段階でジョブ２を一時停止状態とし、一時停止されていたジョブ１の実行を再開する。再開されたジョブ１では復号結果を用紙に印刷する処理が実行される。その処理の終了後、一時停止されていたジョブ２を再開して復号結果を紙に印刷する。
【００４６】
このようなジョブの実行制御では、ジョブ２の復号処理のために必要なＩＣカードとの通信が完了した時点で、ユーザのＩＣカードは不要となる。すなわち、ジョブ１及びジョブ２の復号結果が印刷されるのを待たずに、ＩＣカードをカードリーダ２２から取り外してよい状態となる。このように、ＩＣカードを取り外してよい状態となった場合に、画像処理装置の指示受付部１４の表示画面にその旨を表示するようにしてもよい。
【００４７】
なお、この種のＰＫＩベースのＩＣカードを用いた暗号化では、よく知られるように、例えば、ユーザのパーソナルコンピュータ内のソフトウエア（例えばプリンタドライバ）が、暗号化対象の印刷データをセッション鍵で暗号化した後、そのセッション鍵を、パーソナルコンピュータに接続されたカードリーダにセット（例えば装着又は挿入）されたＩＣカードに送信する。ＩＣカードはセッション鍵を自身が内蔵するユーザの公開鍵で暗号化し、暗号化結果をパーソナルコンピュータに返す。パーソナルコンピュータは、セッション鍵の暗号化結果を暗号化された印刷データに付加し、その付加結果のデータを画像処理装置に送信する。
【００４８】
そして、ユーザが画像処理装置のところに来てＩＣカードをカードリーダ２２にセットすると、画像処理装置は、記憶装置１６に記憶されたそのユーザの暗号化された複数の印刷データを、図２に示すように処理していく。その処理の中で、ジョブ実行部１２は、まずジョブ１の最初のジョブ要素が復号処理であることを認識し、復号部２４に復号処理を行わせる。復号部２４は、ジョブ１の暗号化された印刷データに付随する暗号化されたセッション鍵をカードリーダ２２経由でＩＣカードに送り、復号されたセッション鍵を取得し、そのセッション鍵を用いて印刷データを復号する。ジョブ２についても、復号部２４は同様に処理を行う。
【００４９】
図２では、暗号化された印刷データが２つである場合を例示したが、３つ以上の場合も同様に、この実施形態では、復号処理のジョブ要素をそれら複数のジョブにわたって続けて実行する。
【００５０】
この例でのジョブ実行部１２の処理手順の例を図３に示す。この手順が開始される前に、ジョブ入力部１０（この場合はネットワークインタフェース）を介して、暗号化された印刷データが入力され、記憶装置１６に記憶、すなわちジョブ管理のためのキューに入れられる。それら印刷データの印刷を指示したユーザは画像処理装置のところまで到来し、ＩＣカードをカードリーダ２２にセットし、指示受付部１４から「暗号化文書の出力」を指示する。このとき、一つまたは複数の暗号化された印刷データ（ジョブ）を選択し、スタートボタンを押下する。これにより、図３の処理手順が開始される。なお、図３の処理手順は１つのジョブについての処理手順である。この手順から別の暗号プリントジョブが呼び出された場合、呼び出されたジョブについてこの図３の手順が実行されることになる。なお、以下では、図３の手順を図２の事例に適用した場合を例にとって説明する。すなわち、図２のジョブ１及びジョブ２が選択されたとする。
【００５１】
この手順では、まず、選択されたジョブの中で、キューの中での処理順序が最も早いもの（ジョブ１）を処理対象とする。ジョブ実行部１２は、処理対象のジョブが一時停止状態か否かを判断する（Ｓ１０）。ここでは、一時停止状態ではないため、カードリーダ２２にＩＣカードが挿入されているかの判断を行う（Ｓ１２）。もしＩＣカードが挿入されていなければ、この例では、挿入されるまで待機する。ＩＣカードが挿入されているならば、復号部２４に復号処理を行わせる（Ｓ１４）。復号処理の後、ジョブ１は一時停止状態に移行する（Ｓ１６）。このときジョブ実行部１２は、ジョブ１が復号処理完了の段階で一時停止状態になったことと、復号結果とを記憶装置１６に記憶する。
【００５２】
ジョブ１が一時停止状態に移行したあと、ジョブ実行部１２は、未処理の別ジョブがあるかを判断する（Ｓ１８）。今回の例ではジョブ２があるため、ステップＳ１８の判定結果は肯定（Ｙｅｓ）となる。この場合、ユーザが選択した全てのジョブが一時停止状態かを判断する（Ｓ２０）。この場合は、ジョブ２が一時停止状態でないため、ジョブ２の処理へ移行する。
【００５３】
ジョブ実行部１２は、ジョブ２についても上述のステップＳ１０〜Ｓ１６までの処理を実行する。これにより、ジョブ２の印刷データは復号され、ジョブ２は一時停止状態となる。次のステップＳ１８の判定結果は別のジョブ１が存在するので肯定となる。この時点では、ジョブ１もジョブ２も一時停止状態となっているので、次のステップＳ２０の判定結果は肯定となる。すると、ジョブ実行部１２は、現在の対象であるジョブ２が、選ばれたジョブの中で一番先に一次停止したジョブか（言い換えれば、一時停止中のジョブの中でキュー内での順番が最も早いものか）否かを判断する（Ｓ２２）。ジョブ２は一番先に一時停止状態になったものではないので、別のジョブ、すなわち一時停止中のジョブの中でキュー内での順番が最も早いジョブの処理へ移行する。この例では、ジョブ１の処理に移行する。
【００５４】
ジョブ実行部１２は、再びジョブ１を対象として図３の処理を実行する。この場合、ジョブ１は一時停止状態なので、ステップＳ１０の判定結果が肯定となり、ステップＳ１８に進む。一時停止中のジョブ２が存在するのでステップＳ１８の判定結果は肯定となり、ジョブ１及び２は両方とも一時停止状態なのでステップＳ２０の判定結果も肯定となる。そして、ステップＳ２２で、対象であるジョブ１が一番先に一時停止したジョブであると判断し、当該ジョブ１を再開し、そのジョブ１の復号結果の印刷データを用紙に印刷出力する（Ｓ２４）。これによりジョブ１は終了する。
【００５５】
ジョブ１の終了後、ユーザが選択した別のジョブが残っていれば、そのジョブの処理に移行する。この例では、ジョブ２が残っているので、ジョブ２について図３の処理を行う。この場合、ジョブ２は一時停止状態なので、ステップＳ１０の判定結果が肯定となり、ステップＳ１８に進む。そして、この例では、ジョブ１が終了したので、対象であるジョブ２以外はなくなっており、ステップＳ１８の判定結果は否定となる。すると、ジョブ実行部１２はステップＳ２４に進み、対象であるジョブ２の復号結果を印刷出力する。これにより、ユーザが実行を指示したジョブは全て終了する。
【００５６】
なお、最初にユーザが選択した暗号プリントジョブが３つあった場合、それら３つのジョブが全て一時停止状態となった後、１つめのジョブの出力を行って２番目のジョブの処理に進んだ場合、３番目のジョブが残っているのでステップＳ１８の判定結果は肯定となる。この場合、ステップＳ２０の判定結果は肯定となる。このとき、残っている２番目及び３番目のジョブの中では、対象である２番目のジョブは最も先に一時停止となったジョブであるので、ステップＳ２２の判定結果は肯定となり、２番目のジョブの出力が行われる。
【００５７】
以上、暗号プリントのジョブを複数実行する例を説明した。次に、図４及び図５を参照して、スキャン署名のジョブを複数続けて実行する場合を説明する。
【００５８】
この例でも、ＩＣカードにはユーザの秘密鍵（及び公開鍵証明書）が保持されている。画像処理装置は、自動原稿送り装置にセットされた紙原稿をスキャンし、スキャン結果の画像を、ユーザの電子署名付きＰＤＦ文書へと変換する。電子署名を付す際に、ＩＣカードを利用する。図４の例は、スキャン署名のジョブを２つ実行する場合を示している。
【００５９】
スキャン署名ジョブでは、図４に示すように、紙原稿のスキャンと署名付きＰＤＦ文書の生成という２つのジョブ要素を順に実行する。ここで、スキャンにはＩＣカードは必要ないのに対し、署名付きＰＤＦ文書の生成にはＩＣカードが必要である。この実施形態では、最初のジョブ１のスキャン処理が終わると２番目のジョブ２のスキャン処理を行う。そして、２つのジョブのスキャンが終わると、ＩＣカードが必要な署名付きＰＤＦ文書の生成をそれら２つのジョブについて続けて行う。
【００６０】
ここで、ジョブ１は、スキャンが完了した時点、スキャン結果の画像を記憶した状態のまま一時停止する。そして、ジョブ２のスキャンが終わった段階でジョブ２を一時停止状態とする。そして、画像処理装置は、ＩＣカードがカードリーダ２２にセットされるのを待つ。そして、ＩＣカードがセットされると、一時停止されていたジョブ１の実行を再開する。再開されたジョブ１ではスキャン結果の画像に対し、ＩＣカードを用いて電子署名を施し、その画像と電子署名を含んだＰＤＦ文書を生成する。その処理の終了後、一時停止されていたジョブ２を再開して、スキャン結果の画像に対して電子署名を付し、電子署名付きのＰＤＦ文書を生成する。
【００６１】
このようなジョブの実行制御では、ジョブ１及びジョブ２のスキャンを実行している間は、ＩＣカードは不要である。その間、ユーザはＩＣカードを持って画像処理装置から離れていてもよい。
【００６２】
なお、この種のＰＫＩベースのＩＣカードを用いた電子署名処理では、画像処理装置の署名部２６は、署名対象のデータ（この場合はスキャン結果の画像）のハッシュ値を求め、そのハッシュ値をカードリーダ２２経由でＩＣカードに渡す。ＩＣカードは、そのハッシュ値に対し、秘密鍵を用いて暗号化と同等の演算を行うことで電子署名値を求め、その電子署名値をカードリーダ２２経由で署名部２６を返す。署名部２６は、スキャン結果の画像と電子署名値を含んだＰＤＦ文書を作成する。
【００６３】
図４では、スキャン署名ジョブが２つである場合を例示したが、３つ以上の場合も同様に、図４及び図５の例ではそれら３以上のジョブのスキャン処理を続けて実行し、ＩＣカードがセットされるのを待つ。そして、ＩＣカードがセットされれば、それら各ジョブのスキャン結果に対する署名付与を続けて実行する。
【００６４】
この例でのジョブ実行部１２の処理手順の例を図５に示す。図５の処理手順は１つのジョブについての処理手順である。この手順から別の暗号プリントジョブが呼び出された場合、呼び出されたジョブについてこの図５の手順が実行されることになる。なお、以下では、図５の手順を図４の事例に適用した場合を例にとって説明する。
【００６５】
この手順では、まずユーザは、指示受付部１４の操作パネルに表示されたメニュー上で「スキャン文書のＰＤＦ署名」処理を選択し、スタートを指示する。この処理をジョブ１とする。この指示を受けたジョブ実行部１２は、そのジョブ１が一時停止状態かを判断する（Ｓ３０）。ここでは、一時停止状態でないため、スキャン処理を行う（Ｓ３２）。スキャン処理のあと、ジョブ１は一時停止状態に移行する（Ｓ３４）。その後、別のスキャン署名ジョブの実行が指示されているか否かを判断する（Ｓ３６）。この時点で、別のスキャン署名ジョブが指示されていなければ、カードリーダ２２がＩＣカードを認識しているかを判断する（Ｓ４２）。
【００６６】
ここで、ＩＣカードが認識されなかった場合は、ステップＳ３４に戻る。別のスキャン署名ジョブの実行を指示されるか、ＩＣカードが認識されるまで、ステップＳ３４、Ｓ３６及びステップＳ４２の処理ループが繰り返される。ここで、ＩＣカードが認識される前に、別のスキャン署名ジョブ（ジョブ２）の実行が指示されたとする。この場合、ステップＳ３６の判定結果が肯定となる。次のステップＳ３８では、指示された全てのスキャン署名ジョブが一時停止状態か否かを判断する。この例では、ジョブ１は一時停止中であるが、新たに指示されたジョブ２は一時停止ではないので、ステップＳ３８の判定結果は否定となり、ジョブ２の処理に進む。
【００６７】
ジョブ実行部１２は、ジョブ２について図５の処理を開始する。ジョブ実行部１２は、ジョブ２についても上述のステップＳ３０〜Ｓ３４までの処理を実行する。これにより、ジョブ２の紙原稿がスキャンされ、ジョブ２は一時停止状態となる。次のステップＳ３６の判定結果は別のジョブ１が存在するので肯定となる。この時点では、ジョブ１もジョブ２も一時停止状態となっているので、次のステップＳ３８の判定結果は肯定となる。すると、ジョブ実行部１２は、現在の対象であるジョブ２が、実行を指示されたジョブの中で一番先に一次停止したジョブか（言い換えれば、一時停止中のジョブの中でキュー内での順番が最も早いものか）否かを判断する（Ｓ４０）。ジョブ２は一番先に一時停止状態になったものではないので、別のジョブ、すなわち一時停止中のジョブの中でキュー内での順番が最も早いジョブの処理へ移行する。この例では、ジョブ１の処理に移行する。
【００６８】
ジョブ実行部１２は、再びジョブ１を対象として図５の処理を実行する。この場合、ジョブ１は一時停止状態なので、ステップＳ３０の判定結果が肯定となり、ステップＳ３４を経てステップＳ３６に進む。一時停止中のジョブ２が存在するのでステップＳ３６の判定結果は肯定となり、ジョブ１及び２は両方とも一時停止状態なのでステップＳ３８の判定結果も肯定となる。そして、ステップＳ４０で、対象であるジョブ１が一番先に一時停止したジョブであると判断し、ステップＳ４２に進む。ステップＳ４２で、カードリーダ２２がＩＣカードを検出するのを待つ。すなわち、ＩＣカードが検出されるまで、ステップＳ３４からＳ４２の処理ループが繰り返される。
【００６９】
この処理ループの中で、別のスキャン署名ジョブの実行が指示される前に、ユーザがカードリーダ２２にＩＣカードをセットすると、ステップＳ４２の判定結果が肯定となる。すると、ジョブ実行部１２は、処理対象のジョブ１についての署名処理を署名部２６に実行させる（Ｓ４４）。これにより署名付きＰＤＦ文書が作成され、ジョブ１が終了する。
【００７０】
ジョブ１の終了後、別のジョブが残っていれば、そのジョブの処理に移行する。この例では、ジョブ２が残っているので、ジョブ２について図５の処理を行う。この場合、ジョブ２は一時停止状態なので、ステップＳ３０の判定結果が肯定となり、ステップＳ３４、Ｓ３６に進む。この例では、ジョブ１が終了したので、対象であるジョブ２以外はなくなっており、ステップＳ３６の判定結果は否定となる。すると、ジョブ実行部１２はステップＳ４２に進む。ここで、ＩＣカードがカードリーダ２２にセットされたままであれば、ステップＳ４２の判定結果が肯定となり、ジョブ実行部１２は、ジョブ２についての署名処理を署名部２６に実行させる（Ｓ４４）。この結果、ジョブ２の署名付きＰＤＦ文書が生成され、ユーザが実行を指示したジョブは全て終了する。
【００７１】
次に、別の例を、図６〜図１３を参照して説明する。図６は、ジョブ実行部１２におけるジョブの管理情報のデータ構造の一例である。この例では、ジョブ管理情報１００は、ジョブＩＤ１０２，発行者１０４，ジョブ種別ＩＤ１０６，状態１０８，処理済み要素番号１１０，及び途中処理結果１１２を含む。ジョブＩＤ１０２は、画像処理装置内での当該ジョブの識別情報である。発行者１０４は、当該ジョブを発行したユーザの識別情報である。例えば暗号プリントジョブの場合、そのジョブの印刷データを送信したコンピュータが、そのジョブの実行を指示したユーザの識別情報をその印刷データに対応づけて画像処理装置に通知するので、その識別情報を発行者１０４の欄に記録すればよい。また、画像処理装置の指示受付部１４に対して指示されるスキャン署名ジョブなどのジョブの場合、認証部２０及びカードリーダ２２によるユーザ認証により求めたユーザの識別情報を発行者１０４の欄に記録すればよい。
【００７２】
ジョブ種別ＩＤ１０６は、当該ジョブの種別の識別情報である。ジョブ種別には、例えばプリント、スキャン、コピー、ファクシミリ送信、暗号プリント、スキャン署名等がある。ジョブ種別ＩＤ１０６は、コンピュータから指示されたジョブの属性情報に示されるジョブの種別の情報や、指示受付部１４のメニュー上でユーザが指定したジョブの種別などから求めればよい。
【００７３】
状態１０８は、当該ジョブの実行状態を示す値である。ジョブの実行状態には、例えば「未処理」、「完了」、「一時停止（カード挿入待ち）」、「一時停止（カード処理完了待ち）」などがある。「未処理」は、当該ジョブが開始されていない状態、すなわち当該ジョブに含まれる最初のジョブ要素ですら実行されていない状態である。これに対し、「完了」は、当該ジョブが最後まで完了した状態、すなわち当該ジョブの最後のジョブ要素の実行まで完了した状態である。それに対し、一時停止状態は、当該ジョブの中の途中のジョブ要素の実行が完了したが、まだ未実行のジョブ要素を残したまま当該ジョブを一時停止した状態である。この例では、一時停止の状態を「カード挿入待ち」と「カード処理完了待ち」の２種類に細分している。前者は、ＩＣカードがカードリーダ２２に挿入（セット）されるのを待つための一時停止状態であり、上述の図４及び図５の例におけるジョブ要素「スキャン」の実行後の一時停止状態がその一例である。後者は、他のジョブにおけるＩＣカードを利用したジョブ要素の実行完了を待つための一時停止状態であり、上述の図２及び図３の例におけるスキャン要素の実行後の一時停止状態がその一例である。
【００７４】
処理済み要素番号１１０は、当該ジョブに含まれるジョブ要素群の中で、何番目までのジョブ要素が実行済みとなっているかを示す情報である。処理済み要素番号１１０は、一時停止状態のジョブを再開する時に、どのジョブ要素から再開すればよいかを示すこととなる。
【００７５】
途中処理結果１１２は、ジョブを一時停止した時に、一時停止時点でのジョブの処理結果、すなわちその一時停止の直前に実行したジョブ要素の処理結果である。例えば、暗号プリントのジョブを、復号が完了した後に一時停止した場合、その復号の結果の印刷データが途中処理結果１１２として記憶されることになる。
【００７６】
ジョブ実行部１２は、入力されたジョブごとに、図６に例示するような管理情報を作成し、ジョブの実行が進むにつれて、「状態」、「処理済み要素番号」、「途中処理結果」を更新していく。このような管理情報は、例えば記憶装置１６に記憶される。
【００７７】
また、ジョブ実行部１２は、入力されたジョブに対して公知のキュー管理を行っており、キューの情報すなわちジョブの順序を示す情報を管理している。新たなジョブが実行可能な状態になると、ジョブ実行部１２はキューの先頭のジョブを取り出し、そのジョブの実行を開始する。この実施形態では、ジョブを一時停止する場合があるので、一時停止したジョブ同士の順序関係を第２のキューで管理してもよい。ジョブ実行部１２は、一時停止したジョブを第２のキューの末尾に追加する。対象となる全てのジョブが一時停止状態となった後、それらジョブ群の実行を再開する場合には、第２のキューの先頭からジョブが順に取り出され、実行される。なお、キューのデータ構造は周知なので、ここでは説明を省略する。
【００７８】
図７は、ジョブ種別情報２００の一例を示す。ジョブ種別情報２００は、ジョブ種別ごとに容易され、例えば記憶装置１６に記憶されている。ジョブ種別ＩＤ２０２は、当該ジョブ種別の識別情報であり、ジョブ管理情報１００のジョブ種別ＩＤ１０６に対応する。ジョブ種別名２０４は、当該ジョブ種別の名称であり、例えばメニュー表示などに用いられる。カード要否２０６は、当該ジョブ種別のジョブがＩＣカードを必要とするか否かを示す情報である。なお、ＩＣカードの要否はジョブ要素ごとでも管理されているので、ジョブ単位でのカード要否２０６の情報は必須ではない。要素数２０８は、当該ジョブを構成するジョブ要素の数である。この要素数２０８の後に、その数だけ、要素情報２１０，２１２，…が続く。要素情報２１０，２１２，…は、当該ジョブを構成する各ジョブ要素の識別情報である。ジョブ内のジョブ要素には実行順序があり、要素情報２１０，２１２，…はその実行順序にしたがって並ぶ。図７の例は、暗号プリントのジョブ種別情報を示しており、要素数は２つ、第１のジョブ要素は「復号」、第２のジョブ要素は「プリント」である。ジョブ実行部１２は、ジョブを実行する際、そのジョブのジョブ種別に応じたジョブ種別情報を参照する。
【００７９】
次に、ジョブ要素の管理情報の例を図８に示す。この管理情報は、各ジョブ要素がＩＣカードを必要とするか否かを示す。図８の例では、ジョブ要素の識別情報「復号」、「プリント」、「スキャン」、「署名付き文書化」、…ごとに、そのジョブ要素を実行する際にＩＣカードが必要か否かを示している。
【００８０】
次に、この例におけるジョブ実行部１２の処理内容の一例を、図９を参照して説明する。図９の処理手順は、ジョブ管理のためのキューから先頭のジョブが取り出されると、開始する。取り出されたジョブを、処理対象のジョブという意味で「対象ジョブ」と呼ぶことにする。この手順では、ジョブ実行部１２は、対象ジョブの中から先頭のジョブ要素を処理対象として取り出す（Ｓ１００）。この処理では、対象ジョブのジョブ管理情報（図６参照）及びジョブ種別情報（図７参照）を参照して、先頭のジョブ要素を特定すればよい。取り出したジョブ要素を対象要素と呼ぶことにする。ジョブ実行部１２は、対象要素がＩＣカードを必要とする要素であるかどうかを、ジョブ要素の管理情報（図８参照）を参照して判定する（Ｓ１０２）。ＩＣカードが必要でなければ、その対象要素を実行し（Ｓ１０４）、対象ジョブに残りのジョブ要素があるかどうかを判定する（Ｓ１０６）。残りのジョブ要素があれば、それらのこりのジョブ要素の中で先頭のジョブ要素を新たに対象要素とし（Ｓ１０８）、ステップＳ１０２に戻る。対象ジョブがＩＣカードを必要とするジョブ要素を１つも含んでいなければ、ステップＳ１０２〜Ｓ１０８が繰り返され、ステップＳ１０６で残りのジョブ要素がないと判定されると、対象ジョブが終了する。
【００８１】
一方、対象ジョブ内のジョブ要素を順に実行していく中で、あるジョブ要素がＩＣカードを必要とするものであると判定される（Ｓ１０２）と、ジョブ実行部１２は、そのジョブ要素の実行開始前のジョブ要素の処理結果をジョブ管理情報２００の途中処理結果１１２として保存し、対象ジョブを一時停止（カード挿入待ち）状態として（Ｓ１１０）、このジョブの処理をいったん終了する。このとき対象ジョブのジョブ管理情報１００の状態１０８は「一時停止（カード挿入待ち）」にセットされ、処理済み要素番号１１０はステップＳ１０２でＩＣカードが必要と判定された要素の実行開始前のジョブ要素の番号にセットされる。
【００８２】
図９の手順が実行されることで、対象ジョブは、ＩＣカードなしで実行できるジョブ要素までは実行され、ＩＣカードが必要なジョブ要素の実行開始前に一時停止状態となる。例えば、ユーザがパーソナルコンピュータから暗号プリントジョブを複数画像処理装置に送信すると、図９の手順により、それら暗号プリントジョブが、それぞれ１つめのジョブ要素（復号）の実行開始前に一時停止（カード挿入待ち）状態となる。また、ユーザが画像処理装置にてスキャン署名ジョブを複数指示した場合は、それらスキャン署名ジョブは、それぞれ２つめのジョブ要素（署名付き文書化）の実行開始前に一時停止（カード挿入待ち）状態となる。
【００８３】
さて、ユーザが画像処理装置のカードリーダ２２にＩＣカードを挿入すると、認証部２０がＩＣカードを認識し、図１０に例示する処理を実行する。この処理では、認証部２０は、ＩＣカードと通信して公知のユーザ認証処理を実行する（Ｓ１１０）。そのユーザ認証が成功、すなわちＩＣカードとの通信により画像処理装置を利用可能なユーザであると判定されると、認証部２００は、その認証処理の中でＩＣカードから取得したユーザＩＤをジョブ実行部１２に通知する（Ｓ１１４）。認証が成功しなければ、指示受付部１４の表示装置にエラーメッセージを表示する等のエラー処理を行う（Ｓ１１６）。
【００８４】
認証部２０から認証されたユーザＩＤの通知を受けたジョブ実行部１２は、例えば図１１に例示する処理手順を実行する。この処理手順では、ジョブ実行部１２は、記憶装置１６内の各ジョブのジョブ管理情報１００を調べることで、通知されたユーザＩＤのユーザが発行者である「一時停止（カード挿入待ち）」状態のジョブを抽出する（Ｓ１２０）。そして、そのようなジョブが抽出されれば、それらジョブ群を実行する（Ｓ１２２）。一方、そのようなジョブがなければ、画像処理装置は指示受付部１４にメニューを表示して通常の指示受付を行い（Ｓ１２４）、ユーザが指示受付部１４に入力した指示を実行する（Ｓ１２６）。通常の指示受付では、例えばメニューを表示してその中からユーザの選択を受け付け、選択された操作についてのパラメータの入力を受け付けるなどの公知の処理を行う。
【００８５】
ステップＳ１２２の処理の詳細例を図１２及び図１３に示す。この手順では、ジョブ実行部１２は、ステップＳ１２０で抽出された一時停止（カード挿入待ち）状態のジョブ群の中から、先頭のもの（もっとも先にその状態となったもの）を対象ジョブとする（Ｓ１３０）。次に、対象ジョブの中の先頭のジョブ要素を対象要素とする（Ｓ１３２）。ここでいう「先頭のジョブ要素」は、対象ジョブ中の未処理のジョブ要素の中で先頭のものであり、ジョブ管理情報１００の処理済みジョブ要素番号１１０の次の順番のジョブ要素である。この対象要素は、実行のためにＩＣカードを必要とする要素である。ジョブ実行部１２は、カードリーダ２２を介してＩＣカードと通信可能か否かを判定し（Ｓ１３４）、通信可能であれば、そのＩＣカードと通信して対象要素を実行する（Ｓ１３６）。例えば対象要素が署名付き文書化であれば、ステップＳ１３６では、その署名付き文書化を実行する処理モジュールが、署名対象のデータのハッシュ値をＩＣカードに送信して電子署名値を計算させ、その電子署名値を含んだ署名付き文書（例えばＰＤＦ文書）を生成する。
【００８６】
そして、ジョブ実行部１２は、対象ジョブにおいて対象要素の次に位置するジョブ要素がＩＣカードを必要とするか否かを判定し（Ｓ１３８）、必要とするのであれば、当該次に位置するジョブ要素を新たな対象要素とし（Ｓ１４０）、ステップＳ１３４に戻る。
【００８７】
ステップＳ１３８の判定結果が「ＩＣカード不要」であれば、ジョブ実行部１２はステップＳ１２０で抽出したジョブの中に未処理のジョブが残っているか否かを判定し（Ｓ１４２）、未処理のジョブが残っていれば、現在の対象ジョブを対象要素が終了した段階で一時停止（カード処理完了待ち）状態とし（Ｓ１４４）、それら未処理のジョブの中の先頭のジョブを新たな対象ジョブとしてステップＳ１３２に戻る。
【００８８】
ステップＳ１４２で、当該ユーザの一時停止（カード挿入待ち）状態のジョブが残っていないと判定された場合は、それら各ジョブは、当該ジョブの最後まで完了したか、或いは一時停止（カード処理完了待ち）状態となったかのいずれかになる。この場合、ジョブ実行部１２は図１３の処理に進む。
【００８９】
なお、ジョブ実行部１２が図１２の処理を実行している間に、ユーザがカードリーダ２２からＩＣカードを取り外すと、ステップＳ１３４でＩＣカードと通信できなくなったことが検知される。その場合も、ジョブ実行部１２は、図１３の処理に進む。
【００９０】
図１３の処理例では、ジョブ実行部１２は、ＩＣカードにより認証されたユーザの一時停止（カード処理完了待ち）状態のジョブ群の中で、先頭のものを対象ジョブとする（Ｓ１５０）。次に対象ジョブの先頭のジョブ要素を対象要素とする（Ｓ１５２）。ここでいう先頭のジョブ要素は、対象ジョブ中の未処理のジョブ要素の中で先頭のものであり、ジョブ管理情報１００の処理済みジョブ要素番号１１０の次の順番のジョブ要素である。この対象要素は、ＩＣカードを必要としないジョブ要素なので、ＩＣカードがカードリーダ２２にセットされていなくても実行できる。ジョブ実行部１２は、対象要素を実行する（Ｓ１５４）。
【００９１】
次にジョブ実行部１２は、対象ジョブ内に対象要素の次のジョブ要素が残っているかどうかを、対象ジョブのジョブ管理情報１００を参照して判定し（Ｓ１５６）、残っていれば、当該次のジョブ要素がＩＣカードを必要とするか否かを判定する（Ｓ１５８）。この判定で、当該次のジョブ要素がＩＣカード不要であれば、当該次のジョブ要素を対象要素として（Ｓ１６０）、ステップＳ１５４に戻って対象要素を実行する。
【００９２】
ステップＳ１５８で当該次のジョブ要素がＩＣカードを必要とする要素であると判定された場合は、ジョブ実行部１２は、対象ジョブを一時停止（カード挿入待ち）状態とする（Ｓ１６２）。より詳しくは、対象要素の処理結果を対象ジョブのジョブ管理情報１００に対し途中処理結果１１２として記録し、対象要素の番号を処理済み要素番号１１０として記録し、状態１０８を一時停止（カード挿入待ち）状態とする。
【００９３】
なお、この一時停止（カード挿入待ち）状態となったジョブは、図１３の処理が終了した後に、当該ユーザのＩＣカードがカードリーダ２２にセットされ図１２の処理が行われる時に、再開される。もっとも、このような処理は一例に過ぎない。この代わりに、ステップＳ１５８で次のジョブ要素がＩＣカードを必要とすると判定された場合に、ＩＣカードがカードリーダ２２にセットされていれば、対象ジョブを一時停止せずに、当該次のジョブ要素を実行するようにしてもよい。
【００９４】
ステップＳ１６２の後、ジョブ実行部１２は、一時停止（カード処理完了待ち）状態のジョブが残っているかどうかを判定する（Ｓ１６４）。残っていれば、残っているそれらジョブのうち先頭のものを新たな対象ジョブとし（Ｓ１６６）、ステップＳ１５２に戻る。
【００９５】
ステップＳ１６４で、一時停止（カード処理完了待ち）状態のジョブが残っていないことが判明した場合、図１３の処理は終了する。ステップＳ１５０の時点で残っていた一時停止（カード処理完了待ち）のジョブは、図１３の処理が終了した時点では、最後のジョブ要素まで実行が完了しているか、或いは一時停止（カード挿入待ち）状態となっているかのいずれかである。一時停止（カード挿入待ち）状態のジョブが残っている場合は、ユーザがＩＣカードをカードリーダ２２にセットすれば、それらジョブの実行が再開される。
【００９６】
図９の例では、ステップＳ１０２で対象要素がＩＣカードを必要とすると判定された場合、対象ジョブを一時停止（カード挿入待ち）状態に遷移させたが、これは一例に過ぎない。別の例を図１４及び図１５に示す。図１４において、図９の手順のステップと同様のステップには同一符号を付す。
【００９７】
この例では、対象要素がＩＣカードを必要とするジョブであると判定された場合、ジョブ実行部１２はＩＣカードと通信可能かどうかを判定し（図１５のＳ１７０）、通信可能であれば、ＩＣカードと通信して対象要素を実行する（Ｓ１７２）。その後、ステップＳ１０６に進む。そして、ステップＳ１７０でＩＣカードと通信できないと判定された場合に、ジョブ実行部１２は、そのジョブ要素の１つ前に実行することが定められたジョブ要素の処理結果をジョブ管理情報２００の途中処理結果１１２として保存し、対象ジョブを一時停止（カード挿入待ち）状態として（Ｓ１７４）、このジョブの処理をいったん終了する。
【００９８】
以上に例示した画像処理装置は、例えば、汎用のコンピュータに上述の各機能モジュールの処理を表すプログラムを実行させることにより実現される。ここで、コンピュータは、例えば、ハードウエアとして、図１６に示すように、ＣＰＵ３００等のマイクロプロセッサ、ランダムアクセスメモリ（ＲＡＭ）３０２およびリードオンリメモリ（ＲＯＭ）３０４等のメモリ（一次記憶）、ＨＤＤ（ハードディスクドライブ）３０６を制御するＨＤＤコントローラ３０８、各種Ｉ／Ｏ（入出力）インタフェース３１０、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース３１２等が、たとえばバス３１４を介して接続された回路構成を有する。また、そのバス３１４に対し、例えばＩ／Ｏインタフェース３１０経由で、ＣＤやＤＶＤなどの可搬型ディスク記録媒体に対する読み取り及び／又は書き込みのためのディスクドライブ３１６、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び／又は書き込みのためのメモリリーダライタ３１８、などが接続されてもよい。ここで、「不揮発性記録媒体」とは、当該記録媒体の外部から当該記録媒体への電源供給を断っても、記録した情報を保持し続けることができる記録媒体のことである。上に例示した各機能モジュールの処理内容が記述されたプログラムがＣＤやＤＶＤ等の記録媒体を経由して、又はネットワーク等の通信手段経由で、ハードディスクドライブ等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがＲＡＭ３０２に読み出されＣＰＵ３００等のマイクロプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。なお、それら機能モジュール群のうちの一部又は全部を、専用ＬＳＩ(Large Scale Integration)、ＡＳＩＣ（Application Specific Integrated Circuit、特定用途向け集積回路）又はＦＰＧＡ（Field Programmable Gate Array）等のハードウエア回路として構成してもよい。
【００９９】
なお以上の例では、ユーザの固有情報を含んだＩＣカードを用いたが、本発明で用いる認証機器はＩＣカードに限らない。認証機器は、ユーザの固有情報を含んでおり、この固有情報そのもの又はその固有情報を用いた処理結果を画像処理装置に提供する機器であれば、どのようなものでもよい。例えば、ＵＳＢ(Universal Serial Bus)トークンはその一例である。
【０１００】
＜補遺＞
本発明の１つの態様では、請求項１〜８のいずれか１項に係る発明において、前記通信手段が前記ユーザの認証機器と通信可能である間に、前記複数の処理指示のすべてについて、それぞれ当該処理指示に係る処理の中で次に実行すべき処理要素が前記認証機器との通信を必要としないものとなった場合に、前記認証機器が不要となった旨を前記ユーザに通知する通知手段、を更に備えてもよい。この態様によれば、ユーザの利便性が向上する。
【図面の簡単な説明】
【０１０１】
【図１】本発明に係る情報処理装置の一実施形態である画像処理装置の構成例を示す図である。
【図２】２つの暗号プリントジョブの処理の流れを例示する図である。
【図３】暗号プリントジョブの処理手順の一例を示すフローチャートである。
【図４】２つのスキャン署名ジョブの処理の流れを例示する図である。
【図５】スキャン署名ジョブの処理手順の一例を示すフローチャートである。
【図６】ジョブの管理情報のデータ構造の一例を示す図である。
【図７】ジョブ種別情報の内容の例を示す図である。
【図８】ジョブ要素情報の内容の例を示す図である。
【図９】別の例におけるジョブ実行部の処理手順の一例を示すフローチャートである。
【図１０】ＩＣカードが挿入された場合の認証部の処理手順の一例を示すフローチャートである。
【図１１】認証部からユーザＩＤの通知を受けた場合のジョブ実行部の処理手順の一例を示すフローチャートである。
【図１２】一時停止ジョブ群の実行の際の処理手順の例の一部を示す図である。
【図１３】一時停止ジョブ群の実行の際の処理手順の例の残りの部分を示す図である。
【図１４】ジョブ実行部の処理手順の更に別の例の一部を示すフローチャートである。
【図１５】ジョブ実行部の処理手順の更に別の例の残りの部分を示すフローチャートである。
【図１６】コンピュータのハードウエア構成の一例を示す図である。
【符号の説明】
【０１０２】
１０  ジョブ入力部、１２  ジョブ実行部、１４  指示受付部、１６  記憶装置、１８  出力部、２０  認証部、２２  カードリーダ、２４  復号部、２６  署名部。
【図１】
2010074736.tif 000003
【図２】
2010074736.tif 000004
【図３】
2010074736.tif 000005
【図４】
2010074736.tif 000006
【図５】
2010074736.tif 000007
【図６】
2010074736.tif 000008
【図７】
2010074736.tif 000009
【図８】
2010074736.tif 000010
【図９】
2010074736.tif 000011
【図１０】
2010074736.tif 000012
【図１１】
2010074736.tif 000013
【図１２】
2010074736.tif 000014
【図１３】
2010074736.tif 000015
【図１４】
2010074736.tif 000016
【図１５】
2010074736.tif 000017
【図１６】
2010074736.tif 000018