(57)【特許請求の範囲】
【請求項１】
画像形成装置であって、
ユーザごとに固有のユーザ署名鍵に対する公開鍵証明書をＩＣカードより取得する証明書取得手段と、
前記公開鍵証明書の有効性を判断する有効性判断手段と、
紙文書からの画像データの読み取りを実行する画像読取手段と、
前記公開鍵証明書が有効であると判断された場合に、前記ユーザ署名鍵を用いた前記画像データに対する第一の電子署名の生成を前記ＩＣカードに実行させるユーザ署名生成手段と、
前記第一の電子署名を付与した前記画像データを第一の画像データ記憶手段に記録する第一の画像データ記録手段と、
前記公開鍵証明書が有効でないと判断された場合に、当該画像形成装置に固有の機器署名鍵を用いて前記画像データに対する第二の電子署名を生成する機器署名生成手段と、
前記第二の電子署名を付与した前記画像データを第二の画像データ記憶手段に記録する第二の画像データ記録手段と、
前記公開鍵証明書が有効であると判断された場合であって前記第二の画像データ記憶手段に画像データが記録されているときに、該画像データに付与されている前記第二の電子署名を用いて該画像データに対する改ざんの有無を確認する改ざん確認手段とを有し、
前記ユーザ署名生成手段は、改ざんされていないことが確認された画像データに対する前記第一の電子署名を前記ＩＣカードに生成させ、
前記第一の画像データ記録手段は、該第一の電子署名を付与して該画像データを前記第一の画像データ記録手段に記録する画像形成装置。
【請求項２】
前記公開鍵証明書が有効でないと判断された場合に、紙文書からの画像データの読み取りを実行するか否かを選択させる第一の画面を表示させる第一の画面表示手段を有し、
前記機器署名生成手段は、前記第一の画面を介して前記読み取りの実行の指示が入力された場合に、前記画像読取手段によって読み取られた画像データに対して前記第二の電子署名を生成する請求項１記載の画像形成装置。
【請求項３】
前記公開鍵証明書が有効であると判断された場合であって前記第二の画像データ記憶手段に画像データが記録されているときは、前記ユーザ署名鍵による署名対象を前記画像データ読取手段によって読み取られる画像データとするか前記第二の画像データ記憶手段に記録されている画像データとするかを選択させる第二の画面を表示させる第二の画面表示手段を有し、
前記ユーザ署名生成手段は、前記第二の画面を介した入力に応じ、前記画像データ読取手段によって読み取られた画像データ又は前記第二の画像データ記憶手段に記録されている画像データに対する前記第一の電子署名を生成させる請求項１又は２記載の画像形成装置。
【請求項４】
前記公開鍵証明書が有効であると判断された場合であって前記第二の画像データ記憶手段に画像データが記録されているときは、前記第二の画像データ記憶手段に記録されている画像データの一覧情報を含む第三の画面を表示させる第三の画面表示手段を有し、
前記ユーザ署名生成手段は、前記第三の画面を介して選択された画像データに対する前記第一の電子署名を生成させる請求項１乃至３いずれか一項記載の画像形成装置。
【請求項５】
画像形成装置が実行する電子署名生成方法であって、
証明書取得手段が、ユーザごとに固有のユーザ署名鍵に対する公開鍵証明書をＩＣカードより取得する手順と、
有効性判断手段が、前記公開鍵証明書の有効性を判断する手順と、
画像読取手段が、紙文書からの画像データの読み取りを実行する手順と、
ユーザ署名生成手段が、前記公開鍵証明書が有効であると判断された場合に、前記ユーザ署名鍵を用いた前記画像データに対する第一の電子署名の生成を前記ＩＣカードに実行させる手順と、
第一の画像データ記録手段が、前記第一の電子署名を付与した前記画像データを第一の画像データ記憶手段に記録する手順と、
前記公開鍵証明書が有効でないと判断された場合に、機器署名生成手段が、当該画像形成装置に固有の機器署名鍵を用いて前記画像データに対する第二の電子署名を生成する手順と、
第二の画像データ記録手段が、前記第二の電子署名を付与した前記画像データを第二の画像データ記憶手段に記録する手順と、
前記公開鍵証明書が有効であると判断された場合であって前記第二の画像データ記憶手段に画像データが記録されているときに、改ざん確認手段が、該画像データに付与されている前記第二の電子署名を用いて該画像データに対する改ざんの有無を確認する手順と、
前記ユーザ署名生成手段が、改ざんされていないことが確認された画像データに対する前記第一の電子署名を前記ＩＣカードに生成させる手順と、
前記第一の画像データ記録手段が、該第一の電子署名を付与して該画像データを前記第一の画像データ記録手段に記録する手順とを有する電子署名生成方法。
【請求項６】
第一の画面表示手段が、前記公開鍵証明書が有効でないと判断された場合に、紙文書からの画像データの読み取りを実行するか否かを選択させる第一の画面を表示させる手順を有し、
前記機器署名生成手段が、前記第一の画面を介して前記読み取りの実行の指示が入力された場合に、前記画像読取手段によって読み取られた画像データに対して前記第二の電子署名を生成する請求項５記載の電子署名生成方法。
【請求項７】
第二の画面表示手段が、前記公開鍵証明書が有効であると判断された場合であって前記第二の画像データ記憶手段に画像データが記録されているときは、前記ユーザ署名鍵による署名対象を前記画像データ読取手段によって読み取られる画像データとするか前記第二の画像データ記憶手段に記録されている画像データとするかを選択させる第二の画面を表示させる手順を有し、
前記ユーザ署名生成手段が、前記第二の画面を介した入力に応じ、前記画像データ読取手段によって読み取られた画像データ又は前記第二の画像データ記憶手段に記録されている画像データに対する前記第一の電子署名を生成させる請求項５又は６記載の電子署名生成方法。
【請求項８】
第三の画面表示手段が、前記公開鍵証明書が有効であると判断された場合であって前記第二の画像データ記憶手段に画像データが記録されているときは、前記第二の画像データ記憶手段に記録されている画像データの一覧情報を含む第三の画面を表示させる手順を有し、
前記ユーザ署名生成手段が、前記第三の画面を介して選択された画像データに対する前記第一の電子署名を生成させる請求項５乃至７いずれか一項記載の電子署名生成方法。
【請求項９】
画像形成装置を、
ユーザごとに固有のユーザ署名鍵に対する公開鍵証明書をＩＣカードより取得する証明書取得手段と、
前記公開鍵証明書の有効性を判断する有効性判断手段と、
紙文書からの画像データの読み取りを実行する画像読取手段と、
前記公開鍵証明書が有効であると判断された場合に、前記ユーザ署名鍵を用いた前記画像データに対する第一の電子署名の生成を前記ＩＣカードに実行させるユーザ署名生成手段と、
前記第一の電子署名を付与した前記画像データを第一の画像データ記憶手段に記録する第一の画像データ記録手段と、
前記公開鍵証明書が有効でないと判断された場合に、当該画像形成装置に固有の機器署名鍵を用いて前記画像データに対する第二の電子署名を生成する機器署名生成手段と、
前記第二の電子署名を付与した前記画像データを第二の画像データ記憶手段に記録する第二の画像データ記録手段と、
前記公開鍵証明書が有効であると判断された場合であって前記第二の画像データ記憶手段に画像データが記録されているときに、該画像データに付与されている前記第二の電子署名を用いて該画像データに対する改ざんの有無を確認する改ざん確認手段として機能させ、
前記ユーザ署名生成手段は、改ざんされていないことが確認された画像データに対する前記第一の電子署名を前記ＩＣカードに生成させ、
前記第一の画像データ記録手段は、該第一の電子署名を付与して該画像データを前記第一の画像データ記録手段に記録する電子署名生成プログラム。
【請求項１０】
前記画像形成装置を、
前記公開鍵証明書が有効でないと判断された場合に、紙文書からの画像データの読み取りを実行するか否かを選択させる第一の画面を表示させる第一の画面表示手段として機能させ、
前記機器署名生成手段は、前記第一の画面を介して前記読み取りの実行の指示が入力された場合に、前記画像読取手段によって読み取られた画像データに対して前記第二の電子署名を生成する請求項９記載の電子署名生成プログラム。
【請求項１１】
前記画像形成装置を、
前記公開鍵証明書が有効であると判断された場合であって前記第二の画像データ記憶手段に画像データが記録されているときは、前記ユーザ署名鍵による署名対象を前記画像データ読取手段によって読み取られる画像データとするか前記第二の画像データ記憶手段に記録されている画像データとするかを選択させる第二の画面を表示させる第二の画面表示手段として機能させ、
前記ユーザ署名生成手段は、前記第二の画面を介した入力に応じ、前記画像データ読取手段によって読み取られた画像データ又は前記第二の画像データ記憶手段に記録されている画像データに対する前記第一の電子署名を生成させる請求項９又は１０記載の電子署名生成プログラム。
【請求項１２】
前記画像形成装置を、
前記公開鍵証明書が有効であると判断された場合であって前記第二の画像データ記憶手段に画像データが記録されているときは、前記第二の画像データ記憶手段に記録されている画像データの一覧情報を含む第三の画面を表示させる第三の画面表示手段として機能させ、
前記ユーザ署名生成手段は、前記第三の画面を介して選択された画像データに対する前記第一の電子署名を生成させる請求項９乃至１１いずれか一項記載の電子署名生成プログラム。
【請求項１３】
請求項９乃至１２いずれか一項記載の電子署名生成プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、電子署名生成方法、電子署名生成プログラム及び記録媒体に関し、特に紙文書より読み取った画像データに電子署名を付与する画像形成装置、電子署名生成方法、電子署名生成プログラム及び記録媒体に関する。
【背景技術】
【０００２】
ｅ−文書法（電子文書法）が制定され、保存義務のある紙の原本をスキャンして電子化したデータを保存しておくことが許容されるようになった。その際、スキャンデータが真正なものであることを示すために、スキャンデータにはスキャンした作業者又は現場責任者の電子署名を付与することが求められている。
【０００３】
この要件に対応するために、スキャナやデジタル複合機で紙文書をスキャニングする際に、スキャン作業者のＩＣカードをスキャナ本体に装着されたカードリーダに挿入し、ＩＣカードに格納されている電子署名鍵を用いて計算される各ユーザ固有の電子署名をスキャニングと同時にスキャンデータに対して付与する方式が既に考案されている。この方式によれば作業者又は現場責任者の電子署名をスキャンデータに簡便に付与することができる。
【特許文献１】特許第３６１６６０１号公報
【特許文献２】特開２００２−１００４４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、ＩＣカードに格納されている電子署名鍵が万が一無効なものであった場合（例えば電子署名鍵に対応する公開鍵証明書の有効期限が切れていたり、何らかの理由で失効していたりした場合）、スキャンした後で無効であったことに気付くと再度スキャニングからやり直さなければならないことになる。
【０００５】
また、医療分野においてもＣＴスキャナなどの医用画像データを生成する装置において、その生成した画像データが確かに特定のＣＴスキャナにおいて、特定の放射線技師によって撮像されたものであることを示すためにＣＴスキャナに放射線技師のＩＣカードをセットし、医用画像データが生成されると同時にそのデータに対してＩＣカードで電子署名を付与するような場合にも同じ問題が発生する。
【０００６】
本発明は、上記の点に鑑みてなされたものであって、画像データに対する無効な電子署名の付与を防止することのできる画像形成装置、電子署名生成方法、電子署名生成プログラム及び記録媒体の提供を目的とする。
【課題を解決するための手段】
【０００７】
そこで上記課題を解決するため、本発明は、紙文書より読み取った画像データに電子署名を付与する画像形成装置であって、第一の署名鍵を用いて前記画像データに対する第一の電子署名を生成する第一の署名生成手段と、前記第一の署名鍵に対応する第一の公開鍵証明書の有効性を判断する有効性判断手段とを有し、前記第一の署名生成手段は、前記有効性判断手段による判断結果が否定的なときは前記第一の電子署名を生成しないことを特徴とする。
【０００８】
また、上記課題を解決するため、本発明は、上記画像形成装置における電子署名生成方法、前記電子署名生成方法をコンピュータに実行させるための電子署名生成プログラム、又は前記電子署名生成プログラムを記録した記録媒体としてもよい。
【発明の効果】
【０００９】
本発明によれば、画像データに対する無効な電子署名の付与を防止することのできる画像形成装置、電子署名生成方法、電子署名生成プログラム及び記録媒体を提供することができる。
【発明を実施するための最良の形態】
【００１０】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態における画像形成システムの構成例を示す図である。図１の画像形成システム１は、ＬＡＮ（Local Area Network）７１によって相互に接続されている複合機１０及びファイルサーバ３０と、更に、インターネット７２を介して接続されている認証局５０とによって構成されている。
【００１１】
複合機１０は、本実施の形態において画像形成装置の一例であり、スキャン機能、コピー機能、プリント機能、ＦＡＸ機能等、複数の機能を一台の筐体内に備えたデジタル複合機である。ただし、画像形成装置は、複合機である必要はなく、少なくとも紙文書を読み取って画像データを生成する機能を備えていれば良い。したがって、単なるスキャナ装置でもよい。なお、後述されるように、本実施の形態における複合機１０は、紙文書より読み取られた画像データに対して電子署名を付与する機能を有する。
【００１２】
ファイルサーバ３０は、複合機１０によって紙文書より生成された画像データを蓄積及び管理するためのコンピュータである。
【００１３】
認証局５０は、公知のいわゆる認証局である。本実施の形態では、複合機１０において画像データに付される電子書名を生成するための秘密鍵（署名鍵）に対する公開鍵証明書を発行している。本実施の形態では画像データに付される電子書名として二種類の電子署名が用いられる。一つは、複合機１０固有の電子署名、すなわち、画像データが複合機１０によってスキャンされたことを証明する電子署名（以下「機器署名」という。）である。もう一つは、ユーザ固有の電子署名、すなわち、画像データが特定のユーザによってスキャン指示されたことを証明する電子署名（以下「ユーザ署名」という。）である。但し、画像データが改ざんされていないための証明には、いずれか一方の電子署名だけで足りる。したがって、本実施の形態では、画像データに対して常に双方の電子署名を付与するわけではなく、必要に応じて双方を使い分ける。
【００１４】
図２は、本発明の実施の形態における複合機のハードウェア構成例を示す図である。図２において複合機１０は、タッチパネル１０１ａ及びディスプレイ１０１ｂ等からなるオペレーションパネル１０１と、ＩＣカードリーダ１０２と、スキャナ１０３と、プリンタ１０４と、ＣＰＵ１０５と、メモリ１０６と、ＨＤＤ（Hard Disk Drive）１０７と、ＩＣチップ（ＨＳＭ（Hardware Secure Module））１０８と、ＦＡＸモデム１０９と、ネットワークＩ／Ｆ１１０とを有する。
【００１５】
オペレーションパネル１０１は、タッチパネル１０１ａを介してユーザからの入力を受け付け、また、ディスプレイ１０１ｂを介してユーザに対して各種の情報を提供することによりユーザとのインタフェースを担う。
【００１６】
ＩＣカードリーダ１０２は、ＩＣカードより情報を読み取るための装置である。本実施の形態において複合機１０を利用するユーザは、自分に固有のＩＣカードをＩＣカードリーダ１０２に通すことにより複合機１０に認証を受ける必要がある。なお、本実施の形態では、各ユーザに固有のＩＣカードはユーザ署名を生成する機能を有する。
【００１７】
スキャナ１０３は、紙文書より画像を読み取るための装置である。ＦＡＸ時や、コピー時、又は紙文書を電子化して保存する際に用いられる。プリンタ１０４は、ＦＡＸ受信された情報、コピーされた情報、又は保存されている画像データ等を印刷する装置である。
【００１８】
ＣＰＵ１０５は、複合機１０にインストールされている各種プログラムを実行することにより、複合機１０の各種機能を制御する。メモリ１０６は、インストールされたプログラムの保存領域や、プログラム実行時の作業用のメモリ空間として用いられる。ＨＤＤ１０７は、インストールされたプログラムの保存や、スキャナ１０３によってスキャンされた画像データの保存等に用いられる。
【００１９】
ＩＣチップ１０８は、機器署名を生成するためのＩＣチップであり、機器署名の署名鍵を安全に保管し、かつ機器署名を生成するといった演算能力を有する。ＦＡＸモデム１０９は、ＦＡＸ通信のためのモデムである。ネットワークＩ／Ｆ１１０は、複合機１０がＬＡＮ７１に接続するためのインタフェースである。
【００２０】
次に、本実施の形態において各ユーザに配布されている各ユーザ固有のＩＣカードについて説明する。図３は、本発明の実施の形態におけるＩＣカードのハードウェア構成例を示す図である。図３においてＩＣカード１２０は、ＲＡＭ１２１、ＲＯＭ１２２、ＣＰＵ１２３、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）１２４、及びＩ／Ｆ１２５等より構成されている。
【００２１】
ＲＡＭ１２１は、揮発性メモリであり、ＣＰＵ１２３による演算時に作業用のメモリ空間として用いられる。ＲＯＭ１２２は、読み出し専用のメモリであり、ＩＣカード１２０のＯＳ（Operating System）が格納されている。ＥＥＰＲＯＭ１２４は、ＲＯＭの一種で不揮発性だがバイト単位の書込み及び消去を行えるメモリであり、カードアプリケーション及びデータの格納に用いられる。ユーザ署名を生成するためのアプリケーションプログラム、ユーザ署名のための署名鍵及びその公開鍵証明書等もＥＥＰＲＯＭ１２４に格納されている。Ｉ／Ｆ１２５は、カードリーダとのインタフェースである。なお、ＩＣカード１２０は、接触型又は非接触型のいずれでも構わない。ＣＰＵ１２３は、ＲＯＭ１２２に格納されているＯＳやＥＥＰＲＯＭ１２４に格納されているアプリケーションを実行することにより各種の機能を実現する。
【００２２】
次に、複合機１０におけるプログラム及びＩＣカード１２０におけるプログラムが実行されることにより実現される機能構成例について説明する。図４は、本発明の実施の形態における複合機及びＩＣカードの機能構成例を示す図である。
【００２３】
図４において、複合機１０は、制御部１１、スキャン要求受付部１２、入力制御部１３、表示制御部１４、画像データ取得部１５、証明書記憶部１６、演算部１７、証明書有効性確認部１８、通信制御部１９、画像データ記憶部２０及び証明書リスト記憶部２１等より構成される。また、ＩＣカード１２０は、証明書記憶部２２及び演算部２３等より構成される。各部の機能については、後述する処理手順において説明する。
【００２４】
以下、複合機１０の処理手順について説明する。本実施の形態では、まず大まかな処理の流れ（処理概要）について説明し、続いて、フローチャートを用いてより詳細に説明する。
【００２５】
図５は、複合機のスキャン時の処理概要を説明するための図である。図５では、ある特定のユーザ（ユーザＡ）によって紙文書８０のスキャンが指示された際に複合機１０が実行する処理の概要を説明する。
【００２６】
ユーザＡによるスキャン指示に応じ、複合機１０は、ユーザＡのＩＣカード１２０より公開鍵証明書１２０１を読み出し、公開鍵証明書１２０１の有効性を確認する（Ｓ１１）。ここで、公開鍵証明書の有効性の確認とは、公開鍵証明書について真正性のチェック、有効期間のチェック、及び失効情報のチェックを行うことをいう。
【００２７】
真正性のチェックとは、公開鍵証明書が改ざんされていないことのチェックである。公開鍵証明書には、当該公開鍵証明書を発行した認証局によって電子書名が添付されており、その電子署名に基づいて公開鍵証明書の改ざんチェックを行うことができる。
【００２８】
有効期間のチェックとは、公開鍵証明書が有効期間内のものであるか否かのチェックである。すなわち、公開鍵証明書には有効期限が記録されている。したがって、複合機１０は、内蔵されている内部時計の示す時刻と公開鍵証明書の有効期限とを比較することで、当該公開鍵証明書が有効期間内のものであるか否かを確認することができる。
【００２９】
失効情報のチェックとは、公開鍵証明書が発行元の認証局によって失効処分を受けていないかのチェックである。すなわち、公開鍵証明書はセキュリティ上の問題が発生した際に発行元の認証局によって失効処分を受けることがある。失効処分を受けた公開鍵証明書については発行元の認証局によって失効情報として公表される。したがって、複合機１０は、公開鍵証明書１２０１の発行元である認証局５０に問い合わせることにより、失効の有無を確認することができる。なお、セキュリティ上の問題とは、例えば公開鍵証明書に対応した署名鍵（安全に保管され他人に知られてはならない鍵）が運用上もしくは技術上の問題により外部に露見してしまったこと等が挙げられる。
【００３０】
公開鍵証明書１２０１の有効性が確認された場合、複合機１０は、紙文書８０をスキャンし、画像データ８１を生成する（Ｓ１２）。続いて、複合機１０は、画像データ８１のハッシュ値８２を生成し（Ｓ１３）、生成されたハッシュ値８２をＩＣカード１２０に送信することにより、画像データ８１に対するユーザ署名の生成をＩＣカード１２０に要求する（Ｓ１４）。ＩＣカード１２０は、ハッシュ値８２を署名鍵で暗号化することによりユーザ署名１２０２を生成し、生成されたユーザ署名１２０２を複合機１０に出力する（Ｓ１５）。複合機１０は、画像データ８１にユーザ署名１２０２を添付してファイルサーバ３０に送信する（Ｓ１６）。したがって、ファイルサーバ３０では、それぞれユーザ署名が付された状態で画像データが蓄積される。
【００３１】
図５において、公開鍵証明書１２０１の有効性が確認されなかった場合、すなわち、公開鍵証明書１２０１が無効であった場合、それに対応する署名鍵によって電子署名（ユーザ署名）を生成しても、その電子署名は有効なものとして扱われない。そこで、公開鍵証明書１２０１の有効性が確認されなかった場合、本実施の形態における複合機１０は、図６に示されるような処理を実行する。
【００３２】
図６は、公開鍵証明書の有効性が確認されなかった場合の複合機の処理概要を説明するための図である。図６中、図５と同一部分には同一符号を付し、その説明は省略する。
【００３３】
公開鍵証明書１２０１の有効性が確認されなかった場合、現在のＩＣカード１２０によるユーザ署名の生成は行われない。複合機１０は、オペレーションパネル１０１に公開鍵証明書１２０１が有効でない旨を表示させ（Ｓ２１）、その後の処理をユーザに選択させる。選択肢としては、例えば、「処理再開」、「紙文書８０をスキャンして保存しておき後でユーザ署名をする」、又は「処理の中止」等がある。
【００３４】
「処理再開」とは、ユーザＡが有効な公開鍵証明書１２０１が入った別のＩＣカード１２０を直ぐに用意できる場合の選択肢である。この処理が選択されると、複合機１０は改めて別のＩＣカード１２０の公開鍵証明書１２０１の有効性を確認する。その後の処理は確認結果に従って制御される。
【００３５】
「処理の中止」とは、その場でのスキャンニングはとりあえず中止することである。
【００３６】
「紙文書８０をスキャンして保存しておき後でユーザ署名をする」（以下「画像データ保存処理」という。）とは、ユーザＡが有効な公開鍵証明書１２０１が入ったＩＣカード１２０を直ぐには用意できない場合の選択肢である。この選択肢が選択された場合の複合機１０の処理概要は図を用いて説明する。
【００３７】
図７は、画像データ保存処理の処理概要を説明するための図である。図７中、図５と同一部分には同一符号を付し、その説明は適宜省略する。
【００３８】
画像データ保存処理が選択された場合、複合機５０は、紙文書８０のスキャンを実行し画像データ８１を生成する（Ｓ３１）。続いて、複合機５０は、画像データ８１のハッシュ値８２を生成し（Ｓ３２）、生成されたハッシュ値８２をＨＳＭ１０８に出力する（Ｓ３３）。ＨＳＭ１０８は、複合機１０に固有の署名鍵を用いてハッシュ値８２を暗号化することにより機器署名１２０３を生成する（Ｓ３４）。続いて、複合機１０は、画像データ８１に機器署名１２０３を添付してＨＤＤ１０７に保存しておく（Ｓ３５、Ｓ３６）。
【００３９】
すなわち、画像データ保存処理は、画像データを一時的に複合機１０のＨＤＤ１０７内に保存しておき、後になってユーザＡが有効な公開鍵証明書１２０１が格納されたＩＣカード１２０を用意できたときに、保存されている画像データにユーザ署名を付与するというものである。この場合、有効な署名鍵及び公開鍵証明書の組（ＩＣカード１２０）を新たに用意している間に紙文書８０のスキャンが行えるため、その間の時間を無駄にせず処理効率を高めることができる。
【００４０】
ここで、保存しておく画像データ（以下「保存データ」という。）に機器署名を付与しておくのはユーザ署名が付されるまでの間、悪意者によって保存データが改ざんされる恐れが否定できないからである。特に複合機１０がインターネットに接続されている場合その恐れはより大きくなる。したがって、ユーザ署名が付されるまでの間、機器署名を添付しておくことで保存データの改ざん検知を可能とするわけである。なお、必ずしも機器固有の署名鍵で署名する必要はなく、例えば、外部のタイムスタンプサービスによるタイムスタンプを付したり、他の電子署名を付したりすることにより改ざん検知を可能としてもよい。
【００４１】
図５から図７において概要を説明したように、本実施の形態における複合機１０は、スキャンを実行する前に公開鍵証明書１２０１の有効性を確認し、公開鍵証明書１２０１の有効性が確認できない場合はユーザ署名の生成は行わない。したがって、無効な署名鍵によって電子署名を付与するといった無駄な作業の発生を防止することができる。
【００４２】
以下、複合機１０の処理手順を更に詳細に説明する。図８は、複合機のスキャン時の処理手順を説明するためのフローチャートである。
【００４３】
ステップＳ１０１において、スキャン要求受付部１２は、ユーザからスキャン要求を受け付けると、スキャン要求が発生したことを制御部１１に通知する。制御部１１は、ＩＣカード１２０の証明書記憶部２２より公開鍵証明書１２０１を取得し（Ｓ１０２）、公開鍵証明書１２０１の有効性が既に確認されているかのチェックを行う（Ｓ１０３）。
【００４４】
すなわち、複合機１０は、同一の公開鍵証明書１２０１に対して有効性の確認処理が重複して実行されることの無駄を回避するために、有効性が確認された公開鍵証明書については、有効性確認済み証明書リストに登録しておく。
【００４５】
図９は、有効性確認済み証明書リストの構成例を示す図である。図９に示されるように、有効性確認済み証明書リスト２０１には、有効性が確認された公開鍵証明書１２０１ごとに、シリアル番号、証明書データ、有効期限、及び有億世確認証拠情報等が登録されている。
【００４６】
したがって、ステップＳ１０３では、カレントの公開鍵証明書１２０１が有効性確認済み証明書リスト２０１に登録されているか否かが確認される。なお、ステップＳ１０３及び有効性確認済み証明書リスト２０１については更に詳しく後述する。
【００４７】
公開鍵証明書１２０１の有効性が確認済みであった場合（Ｓ１０４Ｙｅｓ）、ユーザ署名の付与対象となる画像データ（以下「署名対象データ」）の取得処理（例えば、紙文書８０のスキャニング）が実行された後（Ｓ１０５）、署名対象データに対するユーザ署名の生成処理が実行される（Ｓ１０６）。
【００４８】
一方、公開鍵証明書１２０１の有効性が確認済みでなかった場合（Ｓ１０４でＮｏ）、証明書有効性確認部１８が公開鍵証明書１２０１の有効性の確認処理を実行する（Ｓ１０７）。なお当該処理の詳細については後述する。
【００４９】
ステップＳ１０７の処理の結果、公開鍵証明書１２０１が有効であった場合（Ｓ１０８でＹｅｓ）、公開鍵証明書１２０１の有効性確認済み証明書リスト２０１への登録処理が実行された後（Ｓ１０９）、署名対象データの取得処理（Ｓ１０５）、ユーザ署名の生成処理（Ｓ１０６）が実行される。
【００５０】
ステップＳ１０７の処理の結果、公開鍵証明書１２０１が有効でなかった場合（Ｓ１０８でＹｅｓ）、この場合はユーザ署名を生成しても無駄となってしまうため、予め設定されている設定情報に基づいて以下の処理を行う。
【００５１】
すなわち、公開鍵証明書１２０１が有効でなかった場合の設定情報に画像データの保存処理の実行する旨が設定されている場合（Ｓ１１０でデータ保存）、制御部１１は画像データ取得部１５に対して紙文書８０のスキャンを指示し、スキャンの結果生成された画像データを取得する（Ｓ１１１）。続いて、図７において説明した画像データ保存処理が実行される（Ｓ１１２）。なお、ステップＳ１１２の処理は更に詳しく後述する。
【００５２】
また、公開鍵証明書１２０１が有効でなかった場合の設定情報に処理再開が設定されている場合（Ｓ１１０で処理再開）、制御部１１は、表示制御部１４に指示することにより別のＩＣカード１２０の挿入を促すメッセージをディスプレイ１０１ｂに表示させる（Ｓ１１３）。
【００５３】
図１０は、別のＩＣカードの挿入を促すメッセージの表示例を示す図である。図１０では、ディスプレイ１０１ｂに「ＩＣカードに含まれる署名鍵は有効ではありません。有効な署名鍵を含んでいるＩＣカードを挿入してください。」というメッセージが表示された例が示されている。
【００５４】
このメッセージによってユーザが別のＩＣカード１２０を挿入すると、ステップＳ１０２以降の処理が改めて実行される。
【００５５】
また、公開鍵証明書１２０１が有効でなかった場合の設定情報にユーザ指定が設定されている場合（Ｓ１１０でユーザ指定）、制御部１１は、表示制御部１４に指示することにより後処理をユーザに選択させるためのメッセージをディスプレイ１０１ｂに表示させる（Ｓ１１４）。
【００５６】
図１１は、公開鍵証明書が有効でなかった場合の後処理を選択させるためのメッセージの表示例を示す図である。図１１では、ディスプレイ１０１ｂに「ＩＣカードに含まれる署名鍵は有効ではありません。署名対象データを生成し、後で署名を行うために保存しておきますか？」というメッセージが表示された例が示されている。また、ディスプレイ１０１ｂには保存データの生成の要否を選択させるためのボタン１０１ｂ−１及びボタン１０１ｂ−２が表示されている。
【００５７】
ユーザがボタン１０１ｂ−１を選択すると（Ｓ１１５で「生成し保存する」）、ステップＳ１１１以降の処理、すなわち、紙文書８０のスキャン及び画像データの保存処理が実行される。
【００５８】
一方、ユーザがボタン１０１ｂ−２を選択すると（Ｓ１１５で「生成しない」）、ステップＳ１１３以降の処理、すなわち、別のＩＣカードの挿入の要求が実行される。
【００５９】
続いて、ステップＳ１０７における公開鍵証明書１２０１の有効性確認処理の詳細について説明する。図１２は、公開鍵証明書の有効性確認処理を説明するためのフローチャートである。ここで、公開鍵証明書の有効性確認処理とは、公開鍵証明書１２０１の真正性、有効期間及び失効情報をチェックすることである。図１２の処理は、制御部１１からの指示に応じ、証明書有効性確認部１８によって実行される。
【００６０】
まず、制御部１１より公開鍵証明書１２０１を受け取る（Ｓ１０７ａ）。続いて、予めユーザによって複合機１０に設定されている有効性確認方針に基づいて処理を分岐させる（Ｓ１０７ｂ）。有効性確認方針とは、公開鍵証明書１２０１の有効性の確認をどのように行うかに関する方針であり、複合機１０自身が行うか他の機器に任せるかのいずれか一方が予めユーザによって選択及び設定されている。
【００６１】
有効性確認方針に複合機１０自身が行う旨が設定されている場合、まず、公開鍵証明書１２０１の認証パスの構築を行う。認証パスについては図を用いて説明する。
【００６２】
図１３は、公開鍵証明書の認証パスを説明するための図である。既に説明したように、ＩＣカード１２０１に格納されていた公開鍵証明書１２０１は認証局５０に発行されたものである。図１３では、その旨が図示されている。また、各認証局はその正当性を証明するために自らの公開鍵証明書を発行しているが、認証局によっては他の認証局より公開鍵証明書の発行を受けているものもある。図１３では、認証局５０の公開鍵証明書５０１は、認証局５１より発行されている旨が図示されている。また、認証局５１の公開鍵証明書５１１は認証局５１が発行している旨も図示されている。なお、各公開鍵証明書の発行元はそれぞれの公開鍵証明書に記録されている。
【００６３】
図１３のような場合、公開鍵証明書の認証パスの構築とは、公開鍵証明書の発行元の公開鍵証明書を再帰的に取得していくことをいう。従って、公開鍵証明書１２０１の認証パスは「公開鍵証明書１２０１−公開鍵証明書５０１−公開鍵証明書５１１」となる。
【００６４】
続いてＳ１０７ｄ以降は認証パスに含まれる各公開鍵証明書（ここでは、公開鍵証明書１２０１、公開鍵証明書５０１、公開鍵証明書５１１）ごとの有効性のチェック処理となる。
【００６５】
まず認証パスに含まれている公開鍵証明書のうち有効性が確認されていない（Ｓ１０７ｆ〜Ｓ１０７ｈまでの処理が実行されていない）一つの公開鍵証明書を処理対象とする（Ｓ１０７ｅ）。以下、処理対象とされた公開鍵証明書を「カレント証明書」という。
【００６６】
続いて、カレント証明書の真正性のチェックを行う（Ｓ１０７ｆ）。具体的には、カレント証明書を発行した認証局によって当該公開鍵証明書に添付されている電子書名に基づいてカレント証明書の改ざんチェックを行う。
【００６７】
カレント証明書の真正性が確認された場合、すなわち、カレント証明書が改ざんされていない場合（Ｓ１０７ｆでＹｅｓ）、カレント証明書の有効期限が切れていないか否かを確認する（Ｓ１０７ｇ）。具体的には、カレント証明書に記録されている有効期限と複合機１０の内部時計の示す時刻とを比較し、現在時刻がカレント証明書の有効期限を過ぎていない場合に有効期限は切れていないと判断する。
【００６８】
カレント証明書の有効期限が切れていない場合（Ｓ１０７ｇでＹｅｓ）、認証局５０等から発行されている失効情報を確認することにより、カレント証明書が失効処分を受けていないかを確認する（Ｓ１０７ｈ）。この処理の詳細については後述する。
【００６９】
カレント証明書が失効していない場合（Ｓ１０７ｉでＹｅｓ）、ステップＳ１０７ｄに進み、認証パスに含まれている全ての公開鍵証明書について有効性のチェックが完了したか否かを判断する。全ての公開鍵証明書について有効性が確認された場合（Ｓ１０７ｄでＮｏ）、公開鍵証明書１２０１は有効であると判断し（Ｓ１０７ｌ）、その判断結果と共にステップＳ１０７ｈで取得される失効処分の有無を判断するために用いられた情報（ＣＲＬ（Certificate Revocation List）又はＯＣＳＰ（Online Certificate Status Protocol）レスポンス等）を制御部１１に対して返却する（Ｓ１０７ｋ）。
【００７０】
認証パスに含まれているいずれかの公開鍵証明書について、真正性が無いこと（Ｓ１０７ｆでＮｏ）、有効期限が切れていること（Ｓ１０７ｇでＮｏ）、又は失効していること（Ｓ１０７ｉでＮｏ）が確認された場合、公開鍵証明書１２０１は無効であると判断し（Ｓ１０７ｉ）、その判断結果と共にステップＳ１０７ｈで取得される失効処分の有無を判断するために用いられた情報（ＣＲＬ又はＯＣＳＰレスポンス等）を制御部１１に対して返却する（Ｓ１０７ｋ）。
【００７１】
一方、有効性確認方針に、公開鍵証明書の有効性の確認を他の機器に任せる旨が設定されている場合（Ｓ１０７ｂで「他の機器に任せる」）、有効性確認方針に設定されているＵＲＩ(Uniform Resource Identifier)に位置するＤＶＣＳ（Data Validation and Certification Server Protocols）サーバ、又はＳＣＶＰ(Simple Certificate Validation Protocol)サーバ等の証明書検証サーバに対して公開鍵証明書１２０２を送信し、その検証を要求する（Ｓ１０７ｍ）。
【００７２】
続いて、証明書検証サーバからのレスポンスを受信し、そのレスポンスに含まれている検証証明書に基づいて公開鍵証明書１２０１の有効性の判断し（Ｓ１０７ｎ）、その判断結果を制御部１１に返却する。
【００７３】
このように、有効性確認方針に従って公開鍵証明書の有効性の確認を他の機器に任せることができるため、複合機１０の処理能力又は使用想定環境における予想される余剰処理能力に応じて、複合機１０自身が公開鍵証明書１２０１の有効性確認処理を行うか、又はその処理を外部の処理装置に委託するかを切り替えることができ、複合機１０の処理能力を最適な形で利用すること出来る。更に、有効性の確認を他の機器に委託する場合は、複合機１０にかかる負荷を低減させることができる。
【００７４】
続いて、図１２のステップＳ１０７ｈにおける失効情報の確認処理の詳細について説明する。図１４は、失効情報の確認処理を説明するためのフローチャートである。図１４の処理は証明書有効性確認部１８によって実行される。
【００７５】
失効情報の確認方法は、公開鍵証明書によって異なる。一般的なものとして証明書失効リスト（ＣＲＬ）を利用した方法が挙げられる。これは失効した公開鍵証明書の一覧が記してある証明書失効リストを証明書失効リスト配布点と呼ばれるサーバからインターネット経由でダウンロードし、対象とする公開鍵証明書がそのリスト内に含まれていないかどうかを確認する方法である。
【００７６】
別の方法としては、ＯＣＳＰレスポンダを利用する方法がある。この方法は失効情報を確認したい公開鍵証明書をＯＣＳＰレスポンダと呼ばれるサーバへ送信し、その公開鍵証明書の状態をＯＣＳＰレスポンダより取得する方法である。ＯＣＳＰレスポンダは公開鍵証明書が「有効」、「無効」、又は「不明」のうちのいずれの状態にあるのかを返信する。ＯＣＳＰレスポンダから返信される結果データはＯＣＳＰレスポンスと呼ばれる。
【００７７】
したがって、図１４のステップＳ１０７ｈ−１において証明書有効性確認部１８は、まず、カレント証明書にＯＣＳＰレスポンダのＵＲＩが設定されているのか、又はＣＲＬの配布点が設定されているのかを確認する。これにより、失効情報の確認方法として証明書失効リストの使用を前提とした公開鍵証明書でも、オンラインでの証明書状態確認を前提とした公開鍵証明書でも、失効情報の確認が行えるようになる。
【００７８】
カレント証明書にＯＣＳＰレスポンダのＵＲＩが設定されている場合、ステップＳ１０７ｈ−２に進み、ＯＣＳＰレスポンダに対してＯＣＳＰリクエストを送信することによりカレント証明書の状態を問い合わせる。
【００７９】
ＯＣＳＰレスポンダからの返信（ＯＣＳＰレスポンス）においてカレント証明書は「有効」である旨が示されている場合（Ｓ１０７ｈ−３で「有効」）、カレント証明書は失効していないと判断する（Ｓ１０７ｈ−４）。ＯＣＳＰレスポンスにおいてカレント証明書は「不明」又は「失効」である旨が示されている場合（Ｓ１０７ｈ−３で「不明」又は「失効」）、カレント証明書は失効していると判断する（Ｓ１０７ｈ−５）。
【００８０】
一方、ステップＳ１０７ｈ−１において、カレント証明書にＣＲＬの配布点が設定されている場合、ステップＳ１０７ｈ−６に進み、その配布点よりＣＲＬをダウンロードする。但し、カレント証明書が、認証パスにおいて中間のものである場合又はルートのものである場合はＡＲＬ（Authority Revocation List）を取得する。なお、ＡＲＬとは認証局レベルの失効リストをいう。
【００８１】
続いて、カレント証明書がダウンロードされたＣＲＬ又はＡＲＬに含まれているか否かを判定する（Ｓ１０７ｈ−７）。カレント証明書がＣＲＬ又はＡＲＬに含まれている場合（Ｓ１０７ｈ−７でＹｅｓ）、カレント証明書は失効していると判断する（Ｓ１０７ｈ−８）。カレント証明書がＣＲＬ又はＡＲＬに含まれていない場合（Ｓ１０７ｈ−７でＮｏ）、カレント証明書は失効していないと判断する（Ｓ１０７ｈ−９）。
【００８２】
次に、図８のステップＳ１０９における、公開鍵証明書１２０１の有効性確認済み証明書リスト２０１への登録処理の詳細について説明する。すなわち、図１２及び図１４において説明した処理によって有効性が確認された公開鍵証明書１２０１に対して実行される処理である。
【００８３】
図１５は、有効性確認済み証明書リストへの登録処理を説明するためのフローチャートである。図１５の処理は制御部１１からの指示に応じ証明書リスト記憶部２１によって実行される。
【００８４】
まず、有効性の確認された公開鍵証明書１２０１及び有効性の確認に用いられた情報（例えば、ＣＲＬ、ＯＣＳＰレスポンス、又はＤＶＣ等の検証証明書等、以下「有効性確認証拠情報」という。）を制御部１１より受け取る（Ｓ１０９ａ）。続いて、公開鍵証明書１２０１よりシリアル番号を取得する（Ｓ１０９ｂ）。すなわち、各公開鍵証明書にはそれぞれを一意に識別するためのシリアル番号が記録されており、ここではそのシリアル番号が取得される。
【００８５】
続いて、有効性確認証拠情報より当該有効性確認証拠情報の有効期限を示す情報（以下「有効性確認証拠期限情報」という。）を取得する（Ｓ１０９ｃ）。例えば、ＣＲＬやＯＣＳＰレスポンスに含まれている次回更新日時（ｎｅｘｔＵｐｄａｔｅ）や、ＤＶＣＳサーバやＳＶＣＰサーバからのレスポンスデータに含まれている次回更新日時に相当する情報が有効性確認証拠期限情報に相当する。すなわち、ＣＲＬやＯＣＳＰレスポンス等は定期的に更新されるため、次回の更新日時がそれに含まれている場合がある。
【００８６】
有効性確認証拠情報に有効性確認証拠期限情報が含まれていた場合（Ｓ１０９ｄでＹｅｓ）、その有効性確認証拠期限情報によって示される有効期限を有効性確認の有効期限（すなわち、有効性確認済み証明書リストの有効期限）とする（Ｓ１０９ｅ）。
【００８７】
一方、有効性確認証拠情報に有効性確認証拠期限情報が含まれてない場合（Ｓ１０９ｄでＮｏ）、複合機１０に予め設定されている設定値に基づいて有効性確認の有効期限を算出する（Ｓ１０９ｆ）。すなわち、複合機１０には、予めユーザによって有効性確認の有効期間が設定されており、その有効期間を現在のシステム時刻に加算することにより当該有効期限を算出する。
【００８８】
最後に、公開鍵証明書１２０１のシリアル番号、公開鍵証明書１２０１のデータそのもの、有効性確認の有効期限、及び有効性確認証拠情報を新たなエントリとして図９の有効性確認済み証明書リスト２０１に追加する（Ｓ１０９ｇ）。
【００８９】
このように、一度有効性が確認された公開鍵証明書１２０１については、その旨が複合機１０内の有効性確認済み証明書リスト２０１に記録（キャッシュ）される。
【００９０】
次に、図８のステップＳ１０３における公開鍵証明書１２０１の有効性確認済みのチェック処理の詳細について説明する。すなわち、図１２及び図１４において説明した有効性確認処理の実行の要否を判断するための処理である。
【００９１】
図１６は、公開鍵証明書の有効性確認済みのチェック処理を説明するためのフローチャートである。図１６の処理は、制御部１１からの指示に応じ証明書リスト記憶部２１によって実行される。
【００９２】
まず、制御部１１より公開鍵証明書１２０１を受け取る（Ｓ１０３ａ）。続いて、公開鍵証明書１２０１よりシリアル番号を取得し（Ｓ１０３ｂ）、そのシリアル番号をキーとして当該公開鍵証明書１２０１が有効性確認済み証明書リスト２０１に含まれているか否かを判定する（Ｓ１０３ｃ）。
【００９３】
当該公開鍵証明書１２０１が有効性確認済み証明書リスト２０１に含まれている場合（Ｓ１０３ｃでＹｅｓ）、有効性確認（キャッシュ）の有効期限（すなわち、有効性確認済み証明書リスト２０１における有効期限）を取得し（Ｓ１０３ｄ）、複合機１０のシステム時刻と比較することによりキャッシュの有効期限が切れていないか否かを判定する（Ｓ１０３ｅ）。キャッシュの有効期限が切れていない場合（Ｓ１０３ｅでＹｅｓ）、当該公開鍵証明書１２０１の有効性は確認済みであることを制御部１１に返却する（Ｓ１０３ｆ）。
【００９４】
一方、当該公開鍵証明書１２０１が有効性確認済み証明書リスト２０１に含まれていない場合（Ｓ１０３ｃでＮｏ）、又は当該公開鍵証明書１２０１が有効性確認済み証明書リスト２０１に含まれていてもキャッシュの有効期限が切れている場合（Ｓ１０３ｅでＮｏ）、当該公開鍵証明書１２０１の有効性は未確認であることを制御部１１に返却する（Ｓ１０３ｇ）。すなわち、たとえ過去に有効性が確認された場合であっても、その後失効処分等になっている可能性もあるため、キャッシュの有効期限が切れている場合は有効性は未確認である旨を返却して、改めて有効性の確認処理（図１２及び図１４）を実行させるというわけである。
【００９５】
次に、図８のステップＳ１１２における画像データ保存処理について説明する。図１７は、画像データ保存処理を説明するためのフローチャートである。
【００９６】
まず制御部１１が、スキャンされた画像データをＨＳＭ１０８の演算部１７に出力すると、演算部１７は、当該画像データの機器署名１２０３を生成する（Ｓ１１２ａ）。制御部１１は、演算部１７より機器署名１２０３を受け取ると、画像データ記憶部２０に対して、当該画像データ及び機器署名１２０３の保存を指示する。画像データ記憶部２０は、当該画像データ、機器署名１２０３、保存時刻、及び当該画像データの内容を簡潔に表す情報（例えば、文書タイトル名、サムネール画像等）を関連付けてＨＤＤ１０７に保存する（Ｓ１１２ｂ）。
【００９７】
次に、図８のステップＳ１０５における署名対象データの取得処理について説明する。図１８は、署名対象データの取得処理を説明するためのフローチャートである。
【００９８】
まず、制御部１１は、画像データ記憶部２０に保存データ（ユーザ署名が付されないで保存されている画像データ）が有るか否かを確認する（Ｓ１０５ａ）。保存データがある場合（Ｓ１０５ａでＹｅｓ）、表示制御部１４は、保存データから署名対象データを取得するか、署名対象データを新たに生成（スキャン）するかをユーザに選択させるためのメッセージをディスプレイ１０１ｂに表示させる。
【００９９】
図１９は、署名対象データの取得先を選択させるためのメッセージの表示例を示す図である。図１９では、ディスプレイ１０１ｂに「保存データがあります。保存データに署名を行うか、新たに署名対象データを生成し、それに対して署名を行うかを選択して下さい。」というメッセージが表示された例が示されている。また、ディスプレイ１０１ｂには署名対象を選択させるためのボタン１０１ｂ−３及びボタン１０１ｂ−４が表示されている。
【０１００】
ユーザがボタン１０１ｂ−３を選択すると（Ｓ１０５ｃで「保存データ」）、表示制御部１４は、画像データ記憶部２０に蓄積されている保存データの中から署名対象データを選択させるメッセージをディスプレイ１０１ｂに表示させ、署名対象データの選択をユーザに促す（Ｓ１０５ｄ）。
【０１０１】
図２０は、署名対象データを選択させるためのメッセージの表示例を示す図である。図２０において、ディスプレイ１０１ｂには、保存データの一覧と各保存データを署名対象として選択させるための選択ボタン１０１ｂ−５〜７とが表示されている。
【０１０２】
ユーザが選択ボタン１０１ｂ−５〜７のいずれかを選択すると、表示制御部１４は選択結果を制御部１１に通知する。
【０１０３】
制御部１１は、選択された保存データ（以下「選択データ」という。）を画像データ記憶部２０より読み出す（Ｓ１０５ｅ）。読み出した後、制御部１１は、選択データを画像データ記憶部２０より削除させる。続いて、制御部１１は、選択データに添付されている機器署名１２０３に基づいて選択データが改ざんされていないか否かを確認する（Ｓ１０１ｆ）。
【０１０４】
選択データが改ざんされていない場合（Ｓ１０５ｆで改ざん無し）、制御部１１は選択データを署名対象データとする。選択データが改ざんされている場合（Ｓ１０５ｆで改ざん有り）、制御部１１は選択データは利用不可能なデータと判断し、選択データが改ざんされていることを通知するメッセージを表示制御部１４に表示させる（Ｓ１０５ｈ）。
【０１０５】
一方、保存データが画像データ記憶部２０に蓄積されていない場合（Ｓ１０５ａでＮｏ）、又は図１９のメッセージにおいてボタン１０１ｂ−４が選択された場合（Ｓ１０５ｃで新規データ）、制御部１１は画像データ取得部１５に指示することにより、紙文書８０のスキャンを実行させ、スキャンによって生成された画像データを署名対象データとする（Ｓ１０５ｉ）。
【０１０６】
次に、図８のＳ１０６における署名処理の詳細について説明する。図２１は、署名処理を説明するためのフローチャートである。図２１の処理は、制御部１１からの指示に応じ、複合機１０のＩＣカードリーダ１０２に提示されたＩＣカード１２０の演算部２３によって実行される。
【０１０７】
まず、制御部１１より署名対象データ、有効性確認証拠情報、及びユーザ署名フォーマット設定情報と共に、ユーザ署名の生成指示を受け付ける（Ｓ１０６ａ）。ここで、ユーザ署名フォーマット設定情報とは、ユーザ署名１２０２のフォーマットについて予めユーザによって設定されている情報であり、例えば、ＨＤＤ１０７に保存されている。
【０１０８】
続いて、ユーザ署名フォーマット設定情報の内容に応じて処理が分岐する（Ｓ１０６ｂ）。ユーザ署名フォーマット設定情報においてユーザ署名１２０２に有効性確認証拠情報を含めない旨が設定されている場合、ステップＳ１０６ｃに進みユーザ署名１２０２を生成し、生成されたユーザ署名を制御部１１に出力する。
【０１０９】
又は、ユーザ署名フォーマット設定情報においてユーザ署名１２０２に有効性確認証拠情報を含める旨が設定されている場合、ステップＳ１０６ｄに進みユーザ署名１２０２を生成する。更に、生成されたユーザ署名１２０２に有効性確認証拠情報を含め、そのユーザ署名１２０２を制御部１１に出力する（Ｓ１０６ｅ）。
【０１１０】
ユーザ署名１２０２に有効性確認証拠情報を含めることにより、ユーザ署名の検証をする際に、公開鍵証明書１２０１の有効性確認を改めてする必要がなくなる。また、有効性確認証拠情報が安全に保存されている間は常に公開鍵証明書１２０１の有効性確認が行える（ユーザ署名の有効期限が過ぎると、認証局などがその署名を生成するのに使用した署名鍵に対応する証明書を証明書失効リストから削除する問題などに対応が出来る。）。
【０１１１】
又は、ユーザ署名フォーマット設定情報においてユーザ署名１２０２のフォーマットをユーザに選択させる旨が設定されている場合、制御部１１は、表示制御部１４に指示しユーザ署名のフォーマットを選択させるためのメッセージをディスプレイ１０１ｂに表示させる（Ｓ１０６ｆ）。
【０１１２】
図２２は、ユーザ署名のフォーマットを選択させるためのメッセージの表示例を示す図である。図２２において、ディスプレイ１０１ｂには、「有効性確認証拠情報を電子署名に含めますか？含めた場合は、署名の検証時に再度公開鍵証明書の検証をする必要がなくなります。また公開鍵証明書の検証結果が安全に保管されている間に限って公開鍵証明書の有効性確認が行えます。」というメッセージが表示されている。また、有効性確認証拠情報の要否を選択させるためのボタン１０１ｂ−５及び６が表示されている。
【０１１３】
ユーザがボタン１０１ｂ−５を選択した場合（Ｓ１０６ｇでＹｅｓ）、ユーザ署名を生成し（Ｓ１０６ｈ）、そのユーザ署名に有効性確認証拠情報を含めたものを制御部１１に出力する（Ｓ１０６ｉ）。
【０１１４】
一方、ユーザがボタン１０１ｂ−６を選択した場合（Ｓ１０６ｈでＮｏ）、ユーザ署名を生成し、生成されたユーザ署名を制御部１１に出力する（Ｓ１０６ｊ）。
【０１１５】
上述したように、本実施の形態における複合機１０によれば、公開鍵証明書１２０１の有効性の有無を確認し、有効性が無い場合はユーザ署名の生成は行わない。従って、無効な公開鍵証明書に対応する署名鍵によって電子署名を行うといった無駄な作業の発生を防止することができる。
【０１１６】
また、公開鍵証明書の有効性が無かった場合の処理は、予め設定された情報に基づいて制御される。したがって、公開鍵証明書の有効性の状態に応じて柔軟な対応をすることができる。
【０１１７】
なお、本実施の形態では、スキャンと同時に画像データに付与する電子署名についてユーザ署名を例として説明したが、必ずしもユーザ署名である必要はない。運用上、機器署名又は他の電子署名を画像データに付与する決まりになっている場合は、それらの電子署名について本実施の形態において説明した処理を実行してもよい。
【０１１８】
以上、本発明の実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【０１１９】
【図１】本発明の実施の形態における画像形成システムの構成例を示す図である。
【図２】本発明の実施の形態における複合機のハードウェア構成例を示す図である。
【図３】本発明の実施の形態におけるＩＣカードのハードウェア構成例を示す図である。
【図４】本発明の実施の形態における複合機及びＩＣカードの機能構成例を示す図である。
【図５】複合機のスキャン時の処理概要を説明するための図である。
【図６】公開鍵証明書の有効性が確認されなかった場合の複合機の処理概要を説明するための図である。
【図７】画像データ保存処理の処理概要を説明するための図である。
【図８】複合機のスキャン時の処理手順を説明するためのフローチャートである。
【図９】有効性確認済み証明書リストの構成例を示す図である。
【図１０】別のＩＣカードの挿入を促すメッセージの表示例を示す図である。
【図１１】公開鍵証明書が有効でなかった場合の後処理を選択させるためのメッセージの表示例を示す図である。
【図１２】公開鍵証明書の有効性確認処理を説明するためのフローチャートである。
【図１３】公開鍵証明書の認証パスを説明するための図である。
【図１４】失効情報の確認処理を説明するためのフローチャートである。
【図１５】有効性確認済み証明書リストへの登録処理を説明するためのフローチャートである。
【図１６】公開鍵証明書の有効性確認済みのチェック処理を説明するためのフローチャートである。
【図１７】画像データ保存処理を説明するためのフローチャートである。
【図１８】署名対象データの取得処理を説明するためのフローチャートである。
【図１９】署名対象データの取得先を選択させるためのメッセージの表示例を示す図である。
【図２０】署名対象データを選択させるためのメッセージの表示例を示す図である。
【図２１】署名処理を説明するためのフローチャートである。
【図２２】ユーザ署名のフォーマットを選択させるためのメッセージの表示例を示す図である。
【符号の説明】
【０１２０】
１            画像形成システム
１０          複合機
１１          制御部
１２          スキャン要求受付部
１３          入力制御部
１４          表示制御部
１５          画像データ取得部
１６          証明書記憶部
１７          演算部
１８          証明書有効性確認部
１９          通信制御部
２０          画像データ記憶部
２１          証明書リスト記憶部
３０          ファイルサーバ
５０          認証局
７１          ＬＡＮ
７２          インターネット
８０          紙文書
８１          画像データ
８２          ハッシュ値
１０１        オペレーションパネル
１０１ａ      ダッチパネル
１０１ｂ      ディスプレイ
１０２        ＩＣカードリーダ
１０３        スキャナ
１０４        プリンタ
１０５        ＣＰＵ
１０６        メモリ
１０７        ＨＤＤ（Hard Disk Drive）
１０８        ＩＣチップ
１０９        ＦＡＸモデム
１１０        ネットワークＩ／Ｆ
１２０        ＩＣカード
１２１        ＲＡＭ
１２２        ＲＯＭ
１２３        ＣＰＵ
１２４        ＥＥＰＲＯＭ
１２５        Ｉ／Ｆ
１２０１      公開鍵証明書
１２０２      ユーザ署名
１２０３      機器署名
【図１】
0004410166.tif 000002
【図２】
0004410166.tif 000003
【図３】
0004410166.tif 000004
【図４】
0004410166.tif 000005
【図５】
0004410166.tif 000006
【図６】
0004410166.tif 000007
【図７】
0004410166.tif 000008
【図８】
0004410166.tif 000009
【図９】
0004410166.tif 000010
【図１０】
0004410166.tif 000011
【図１１】
0004410166.tif 000012
【図１２】
0004410166.tif 000013
【図１３】
0004410166.tif 000014
【図１４】
0004410166.tif 000015
【図１５】
0004410166.tif 000016
【図１６】
0004410166.tif 000017
【図１７】
0004410166.tif 000018
【図１８】
0004410166.tif 000019
【図１９】
0004410166.tif 000020
【図２０】
0004410166.tif 000021
【図２１】
0004410166.tif 000022
【図２２】
0004410166.tif 000023