説明

電子文書管理装置、電子文書管理方法、及びコンピュータプログラム

【課題】電子文書が改竄されていないことを長期に亘って確実に確認することができるようにする。
【解決手段】署名用の長期保存データ102と、タイムスタンプ用の長期保存データ104、106とを長期保存文書内に保持する。そして、署名用の長期保存データ102を署名データ103で保護すると共に、タイムスタンプ用の長期保存データ104、106をタイムスタンプ105で保護する。このとき、署名用の長期保存データ102(タイムスタンプ用の長期保存データ104、106)を長期保存文書に埋め込む処理に続けて、署名データ103(タイムスタンプ105、107)を長期保存文書に埋め込む処理を行う。また、署名用の長期保存データ102(タイムスタンプ用の長期保存データ104、106)と署名データ103(タイムスタンプ105、107)とを紐付ける。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子文書管理装置、電子文書管理方法、及びコンピュータプログラムに関し、特に、電子文書を管理するために用いて好適なものである。
【背景技術】
【0002】
財務や税務関係の書類等のように、紙媒体として保存しておくことが法律として既定されている書類がある。ところが、近年のIT(Information Technology)化の流れの中、従来は法律等によって紙媒体としての保存が義務づけられていた財務関連文書、税務関連文書、及び帳票等の電子的な保存を、原則として容認する法律が施行されている。かかる法律として、例えば、「民間事業者等が行う書面の保存等における情報通信の技術の利用に関する法律」がある。
【0003】
このような法律によって、スキャナ等で書類を読み取る等して電子化した書類(以下、電子文書と称する)を法的証拠能力のあるものとして取り扱えることができるようになる。このようにして電子文書を法的証拠能力のあるものとする場合、電子文書を改竄できないようにする必要がある。
【0004】
そこで、特許文献1に記載の技術には、将来的な確認や読み出しのために、電子文書を認定して安全に保管する技術が開示されている。かかる技術では、電子文書にハッシュ関数を適用して生成した文書フィンガープリントと、前記文書の認定時刻印であるタイムスタンプとを含む文書認定データを生成する。そして、文書認定データに対するデジタル署名を作成し、生成したデジタル署名と文書認定データとを、ユーザに送信したり、電子文書と同一のデータベースで管理したりする。このような文書認定データとデジタル署名とを使用することにより、ユーザは、電子文書のコピーの真正性を確認することができる。
【0005】
【特許文献1】特開平11−338780号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、前述した従来の技術では、電子文書と文書認定データとの関係が切れ易い。電子文書と文書認定データとの関係が切れると、電子文書が改竄されていないことを確認することが困難になる。
以上のように従来の技術では、電子文書が改竄されていないことを長期に亘って確認することが困難であるという問題点があった。
【0007】
本発明は、このような問題点に鑑みてなされたものであり、電子文書が改竄されていないことを長期に亘って確実に確認することができるようにすることを目的とする。
【課題を解決するための手段】
【0008】
本発明の電子文書管理装置は、電子文書に対する電子署名が有効であることを示す長期保存データを、前記電子文書に埋め込む長期保存データ埋め込み手段と、前記電子文書に埋め込まれた長期保存データを用いて有効性が検証される電子署名を、前記電子文書に対して行う署名手段とを有することを特徴とする。
【0009】
本発明の電子文書管理方法は、電子文書に対する電子署名が有効であることを示す長期保存データを、前記電子文書に埋め込む長期保存データ埋め込みステップと、前記電子文書に埋め込まれた長期保存データを用いて有効性が検証される電子署名を、前記電子文書に対して行う署名ステップとを有することを特徴とする。
【0010】
本発明のコンピュータプログラムは、電子文書に対する電子署名が有効であることを示す長期保存データを、前記電子文書に埋め込む長期保存データ埋め込みステップと、前記電子文書に埋め込まれた長期保存データを用いて有効性が検証される電子署名を、前記電子文書に対して行う署名ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【0011】
本発明によれば、電子文書に対する電子署名が有効であることを示す長期保存データを電子文書に埋め込み、その長期保存データを用いて有効性が検証される電子署名を電子文書に対して行うようにした。これにより、長期保存データの紛失を防止することができる。従って、電子文書が改竄されていないことを長期に亘って確実に確認することができるようになる。また、電子文書のポータビリティ(portability)を向上させることもできるようになる。
【0012】
また、本発明の他の特徴によれば、長期保存データが前記電子文書に埋め込まれるのと略同時に、その長期保存データを用いて有効性が検証される電子署名を行うようにした。これにより、電子文書の改竄をより確実に防ぐことができるようになる。
【0013】
また、本発明の他の特徴によれば、長期保存データと、その長期保存データを用いて有効性が検証される電子署名のデータとを対応付けるようにした。電子文書が改竄されていないことを検証する際に、どの電子署名がどの長期保存データとが対応付けられているのかを迅速に把握することができ、電子文書が改竄されていないことを迅速に検証することができるようになる。
【0014】
また、本発明の他の特徴によれば、電子文書に埋め込まれた長期保存データを用いて有効性が検証される電子署名を、長期保存データが埋め込まれた電子文書に対して行うようにした。これにより、長期保存データ自体を電子署名で保護することができ、電子文書の改竄をより確実に防ぐことができるようになる。
【発明を実施するための最良の形態】
【0015】
以下に、図面を参照しながら、本発明の一実施形態について説明する。本実施形態では、電子文書の長期保存の仕組みについて説明する。
<システム構成>
図1は、本実施形態に係る印刷システムの構成の一例を示す図である。
図1において、クライアント端末装置300は、電子文書管理装置としての機能を有するコンピュータを備えた情報処理装置である。
クライアント端末装置300は、その機能として、長期保存処理管理部301、長期保存データ処理部302、署名処理部303、検証処理部304、データ入出力処理部305、画像表示部306、及びデータ格納部307を有している。また、クライアント端末装置300は、電話回線、LAN、インターネット等のネットワーク500を介して外部のデータベース装置400等に接続されている。尚、LANには、クライアント端末装置300から送信された印刷ジョブに基づく印刷を実行する印刷装置等が接続されている。
【0016】
データ格納部307には、不図示の文書処理アプリケーション等のアプリケーションプログラムにより作成されたアプリケーションデータファイルや、PDFに代表される構造化電子文書等が格納されている。また、データ格納部307には、クライアント端末装置300の有するソフトウェア資源及びハードウェア資源のデータベース等も格納されている。
【0017】
長期保存処理管理部301は、PDFに代表される構造化電子文書の長期保存を行うために、長期保存データ処理部302、署名処理部303、及び検証処理部304等の各処理部の制御や、長期保存を行う電子文書の作成及び更新等の処理を行う。
長期保存データ処理部302は、電子文書の検証を行う際に使用される長期保存データの作成及び検証等の処理を行う。また、署名処理部303は、電子文書に対して署名(デジタル署名)やタイムスタンプを付与する処理を行う。検証処理部304は、署名(デジタル署名)及びタイムスタンプが施された電子文書を、長期保存データを用いて検証する処理を行う。
【0018】
データ入出力処理部305には、ネットワーク500を介してデータベース装置301に接続されている。また、データ入出力処理部305には、キーボードやポインティングデバイス等の入出力デバイス300eも接続されている。
画像表示部307は、ディスプレイ300fに接続されており、種々の画像をディスプレイ300fに表示させる。
データベース装置400は、少なくともデータベースを保持するコンピュータを有する情報処理装置である。
【0019】
<ハードウェア構成>
図2は、クライアント端末装置300のハードウェアの構成の一例を示す図である。
図2において、クライアント端末装置300は、CPU300a、メモリ300b、外部メモリ300c、I/Oインターフェース300d、入出力デバイス300e、及びディスプレイ300fを有している。
【0020】
CPU300aは、メモリ300bや外部メモリ300cに格納されたプログラムを実行することにより、クライアント端末装置300で実現される各種の処理を実行する。メモリ300bは、例えば、ROM及びRAMを備えて構成され、外部メモリ300cは、例えば、ハードディスクを備えて構成される。尚、フレキシブルディスク、CDROM、及びDVD等の取り外し可能な記憶媒体を、外部メモリ300cとして備えるようにしてもよい。また、図1に示したデータ格納部306は、外部メモリ300cの一部又は全部の領域を用いることにより実現することができる。
【0021】
ディスプレイ300fには画像が表示される。クライアント端末装置300は、I/Oインターフェース300dを介してネットワーク500等に接続される。また、入出力デバイス300eは、例えば、キーボード及びポインティングデバイスを備えたユーザインターフェースであり、オペレータは、入出力デバイス300eを用いて必要に応じて入力操作を行う。
尚、図1に示したデータベース装置400も、図2に示したハードウェアを用いることにより実現することができる。
【0022】
<長期保存を行う電子文書のフォーマット>
図3は、電子文書の長期保存を行うためのデータであって、電子文書の検証を行う際に使用される長期保存データを含む電子文書の構成の一例を示した模式図である。以下の説明では、この長期保存データを含む電子文書を、必要に応じて長期保存文書と称する。この長期保存文書の電子文書フォーマットは、例えば、図3に示すように、既存の構造化された文書(例えばPDF)を拡張することにより実現することができる。
【0023】
図3において、コンテンツデータ101は、例えば、画像情報、テキスト情報、及びグラフィック情報(スキャンイメージデータ)を含むデータであって、電子文書を構成するデータを含む。署名用の長期保存データ102は、長期保存文書の長期保存を行うためのデータである。この署名用の長期保存データ102は、署名(デジタル署名)を行うために必要な電子証明書102aと、証明書チェーン102bと、CRL(失効情報リスト)102cとを備えて構成される。ここで、証明書チェーン102bは、Root(認証局)までの認証パス上の全ての電子証明書を含むものである。このRoot(認証局)までの認証パスは、電子証明書102aを用いることにより得ることができる。また、CRL102cは、証明書チェーン102bに含まれる電子文書に紐付けられている。
【0024】
署名データ103は、コンテンツデータ101及び署名用の長期保存データ102を有効領域とするデータ(デジタル署名のデータ)である。タイムスタンプ用の長期保存データ104は、署名用の長期保存用データ102と同様に、タイムスタンプを行うために必要な電子証明書104aと、証明書チェーン104bと、CRL(失効情報リスト)104cとを備えて構成される。
【0025】
タイムスタンプ105は、コンテンツデータ101、署名用の長期保存データ102、署名データ103、及びタイムスタンプ用の長期保存データ104を有効領域とするタイムスタンプである。
図3に示す長期保存文書が改竄されていない場合、タイムスタンプ105の電子証明書の有効期間内であって、且つタイムスタンプ105の電子証明書が失効していない期間内に、タイムスタンプ用の長期保存データ106及びタイムスタンプ107を取得する。そして、図4に示すように、タイムスタンプ用の長期保存データ106とタイムスタンプ107とを、図3に示した長期保存文書に付け加える。これによって、長期保存文書を長期に保存することが可能となる。
【0026】
<長期保存文書の作成処理(電子文書を長期保存文書へ変換する処理)>
ここで、図5のフローチャートを参照しながら、ある電子文書を初めて長期保存文書として保存する(通常の電子文書を図3に示した長期保存文書へ変換する)際の処理を説明する。
まず、ステップS501において、長期保存処理管理部301は、署名に利用する電子証明書102aを取得する。この電子証明書102aは、例えば、信頼のおける第三者の認証機関(CA)が発行している証明書である。
【0027】
次に、ステップS502において、長期保存データ処理部302は、ステップS501で取得された電子証明書102aを用いて、署名用の長期保存データ102を作成する。尚、このステップS502の処理の詳細については、図6を参照しながら後述する。
次に、ステップS503において、署名処理部303は、ステップS502で作成した署名用の長期保存データ102を署名対象である電子文書内に埋め込む。
次に、ステップS504において、署名処理部303は、電子文書内に署名データ103を埋め込むことによって、署名処理を施す。
尚、ステップS503及びS504の処理は、略同時に行われる。また、ステップS503及びS504の処理の詳細については、図7を参照しながら後述する。
【0028】
次に、ステップS505において、長期保存処理管理部301は、タイムスタンプ105に利用する電子証明書104aを取得する。このタイムスタンプ105に利用する電子証明書104aの発行元は、例えば、認証機関であるタイムスタンプ局(TSA:Time Stamp Authority)である。
次に、ステップS506において、長期保存データ処理部302は、ステップS505で取得された電子証明書104aを用いて、タイムスタンプ用の長期保存データ104を作成する。このステップS506の処理は、ステップS502と同様の処理となる。
【0029】
次に、ステップS507において、署名処理部303は、ステップS506で作成されたタイムスタンプ用の長期保存データ104を電子文書内に埋め込む。
次に、ステップS508において、署名処理部303は、タイムスタンプデータ105を電子文書内に埋め込むことによって、署名処理を施す。
尚、ステップS507及びS508の処理は、略同時に行われる。また、ステップS507及びS508の処理の詳細については、図7を参照しながら後述する。
このようなステップS501〜S508の手順を踏むことによって、図3に示したような長期保存文書を作成することができる。
【0030】
<長期保存データ作成処理>
図6は、図5のステップS502、S506に示した長期保存データ作成処理の一例を示すフローチャートである。
まず、ステップS601において、長期保存データ処理部302は、ステップS501(ステップS505)で取得された電子証明書102a、104aを用いて、認証パス(電子証明書102a、104aを認証するRoot(認証局)へのパス)を取得する。
次に、ステップS602において、長期保存データ処理部302は、証明書チェーン103b、104b(認証パス上の全ての電子証明書)を取得する。
次に、ステップS603において、長期保存データ処理部302は、ステップS602で取得した電子証明書に紐付いているCRL(失効情報リスト)を全て取得する。
最後に、ステップS604において、長期保存データ処理部302は、ステップS602、S603で取得した電子証明書102a、104a、証明書チェーン102b、104b、CRL102c、104cを、電子文書内に埋め込める形式にパッケージ化する。このパッケージ化されたデータが長期保存データ102、104である。
【0031】
<長期保存データの埋め込み処理と署名及びタイムスタンプの埋め込み処理>
図7は、署名用の長期保存データ102及び署名データ103の埋め込み処理と、タイムスタンプ用の長期保存データ104及びタイムスタンプ105の埋め込み処理との一例を説明するフローチャートである。ここで、署名用の長期保存データ102の埋め込み処理と、署名データ103の埋め込み処理は、図5のステップS503、S504に示した処理である。また、タイムスタンプ用の長期保存データ104の埋め込み処理と、タイムスタンプ105の埋め込み処理は、図5のステップS507、S508に示した処理である。
【0032】
署名データ103及びタイムスタンプ105を電子文書に付与する際に、署名データ103及びタイムスタンプ105が、電子文書内のどの長期保存データと紐付いているかを示す紐付け情報を付け加える必要がある。電子文書の検証処理を行う際に、この紐付け情報を元に、署名データ103(タイムスタンプ105)の検証と、長期保存データ102(長期保存データ104)の検証とを対で行う必要があるためである。また、長期保存データ102(長期保存データ104)を電子文書に埋め込むタイミングと、署名データ103(タイムスタンプ105)を電子文書に埋め込むタイミングとにタイムラグが生じると、電子文書が改竄される虞がある。以上のことから、長期保存データ102、104の埋め込み処理と、署名データ103及びタイムスタンプ105の埋め込み処理とを略同時に行う必要がある。
【0033】
図7のステップS701において、署名処理部303は、長期保存データ格納辞書を生成し、生成した長期保存データ格納辞書の中に、長期保存データ102(長期保存データ104)を登録する。そして、これら全ての情報を電子文書内に埋め込む。
次に、ステップS702において、署名処理部303は、署名辞書(タイムスタンプ辞書)を生成する。この時点ではまだ署名処理自体は行われない。署名データ103(タイムスタンプ105)は、ステップS704で署名処理が実行された後に、この署名辞書(タイムスタンプ辞書)の中に格納される。
【0034】
次に、ステップS703において、署名処理部303は、ステップS702で生成した署名辞書(タイムスタンプ辞書)のオブジェクト番号を取得する。そして、署名処理部303は、取得した署名辞書(タイムスタンプ辞書)のオブジェクト番号を、ステップS701で生成した長期保存データ格納辞書に挿入する。これにより、長期保存データと署名辞書(タイムスタンプ辞書)との紐付けが行われたことになる。
最後に、ステップS704において、署名処理を実行し、署名データ103(タイムスタンプ105)を、ステップS702で作成した署名辞書(タイムスタンプ辞書)に格納する。
【0035】
図8は、図7の処理を行った際の長期保存文書の内部のデータの一例を示した図である。尚、図8では、電子文書がPDFである場合を例に挙げて示しているが、長期保存データと署名及びタイムスタンプデータとを紐付けることが出来れば、電子文書はPDFでなくてもよい。
図8において、署名処理部303は、署名するページ辞書801に紐付いたページピース辞書(拡張辞書)802を生成する(図7のステップS701)。次に、署名処理部303は、ページピース辞書802内に、長期保存データ用のキー(/LongTermKeepData)803を生成する(図7のステップS701)。次に、署名処理部303は、アプリケーションデータ辞書804を生成する(図7のステップS701)。次に、署名処理部303は、長期保存データ用の拡張ストリーム(Stream)オブジェクト805を生成する(図7のステップS701)。
【0036】
次に、署名処理部303は、署名辞書(タイムスタンプ辞書)806を生成する(図7のステップS702)。次に、署名処理部303は、ストリームオブジェクト805に、署名辞書(タイムスタンプ辞書)806のオブジェクト番号(Index)807と、長期保存データ808及びそのデータサイズ809とを入れる(図7のステップS703)。
尚、図8では、長期保存データ808と署名辞書(タイムスタンプ辞書)806とを紐付ける紐付け情報を、長期保存データ808を格納しているストリームオブジェクト805内で保持した場合を例に挙げて説明した。しかしながら、これとは反対に、ストリームオブジェクト805のオブジェクト番号(Index)を、署名辞書(タイムスタンプ辞書)806側に保持しても構わない。
【0037】
<長期保存文書の更新処理>
次に、図9のフローチャートを参照しながら、長期保存文書に対してタイムスタンプを付与する際の処理の一例について説明する。
まず、ステップS901において、検証処理部304は、長期保存文書の検証処理を行う。このステップS901の処理の詳細については、図10を参照しながら後述する。
次に、ステップS902において、長期保存処理管理部301は、ステップS901で行われた長期保存文書の検証の結果、長期保存文書が改竄されているか否かを判定する。この判定の結果、改竄がなければステップS903へ進み、改竄があれば処理を終了する。
【0038】
ステップS903〜S906の処理は、図5に示した長期保存文書作成処理のステップS505〜S508と同様の処理である。すなわち、長期保存処理管理部301は、ステップS905において、タイムスタンプ106に利用する電子証明書106aを取得する。尚、ステップS905では、タイムスタンプ105の電子証明書104aの有効期間内であって、且つタイムスタンプ105の電子証明書104aが失効していない期間内に、タイムスタンプ106に利用する電子証明書106aを取得するようにする。
【0039】
次に、長期保存データ処理部302は、ステップS906において、タイムスタンプ106に利用する電子証明書106aを用いて、タイムスタンプ用の長期保存データ106を作成する。そして、署名処理部303は、ステップS907において、作成されたタイムスタンプ用の長期保存データ106を長期保存文書内に埋め込み、ステップS908において、タイムスタンプデータ107を長期保存文文書内に埋め込むことによって、署名処理を施す。
以上のステップS903〜S906の処理によって、図3に示した長期保存文書が図4に示した長期保存文書として更新される。以降、3回目、4回目とタイムスタンプの更新を行う度に長期保存データ106とタイムスタンプ107を長期保存文書に付け加えていくことによって、電子文書の長期保存を実現することができる。
【0040】
<長期保存文書の検証処理>
図10は、図9のステップS901に示した長期保存文書検証処理の一例を説明するフローチャートである。この長期保存文書検証処理では、長期保存文書が改竄されていないことと、全てのタイムスタンプが有効期限の切れる前に付与されたものであることとを検証する。
まず、ステップS1001において、検証処理部304は、長期保存文書を解析し、長期保存文書内に付与されているタイムスタンプの数を求め、求めたタイムスタンプの数を変数Nに代入する。
【0041】
次に、ステップS1002において、検証処理部304は、全てのタイムスタンプについて検証処理が終了したか否かを判定する。この判定の結果、全てのタイムスタンプについて検証処理が終了していなければ、終了するまで後述するステップS1003〜S1007の処理を繰り返す。そして、全てのタイムスタンプについて検証処理が終了したら後述するステップS1008へ進む。
【0042】
ステップS1003では、検証処理部304は、長期保存電子文書の中からN番目のタイムスタンプ用の長期保存データ106を取得する。即ち検証処理部304は、タイムスタンプ用の長期保存データ群の中から、N番目のタイムスタンプのオブジェクト番号を含むタイムスタンプ用の長期保存データを検出することで、N番目のタイムスタンプと紐付いたタイムスタンプ用の長期保存データを取得する。
次に、ステップS1004において、長期保存データ処理部302は、取得したN番目のタイムスタンプ用の長期保存データに改竄がないかどうかを検証する処理を行う。このステップS1004の処理の詳細については、図11を参照しながら後述する。
【0043】
次に、ステップS1005において、検証処理部304は、処理対象中のタイムスタンプ107の検証(通常の検証処理)を行う。
次に、ステップS1006において、検証処理部304は、ステップS1004の長期保存データの検証結果と、ステップS1005のタイムスタンプの検証結果とに基づいて、長期保存データ及びタイムスタンプが共に改竄がされているか否かを判定する。
この判定の結果、S604、S605の検証の結果、長期保存データ及びタイムスタンプが共に改竄されていなければ、ステップS1007に進み、検証処理部304は、変数Nから1を減算してステップS1002に戻る。一方、長期保存データ及びタイムスタンプの少なくとも何れか一方が改竄されていれば、図9のフローチャートに戻る。
【0044】
全てのタイムスタンプと全てのタイムスタンプ用の長期保存データについて検証処理を行った結果、全てのタイムスタンプと全てのタイムスタンプ用の長期保存データとが改竄されていなかった場合には、ステップS1008に進む。ステップS1008では、検証処理部304は、署名用の長期保存データ103を、ステップS1003と同様の方法で取得する。
次に、ステップS1009において、長期保存データ処理部302は、ステップS1004と同様にして、署名用の長期保存データ103が改竄されていないかどうかを検証する。このステップS1009の詳細については、図11を参照しながら後述する。
【0045】
次に、ステップS1010において、検証処理部304は、署名データ103の検証を行う。
次に、ステップS1011において、検証処理部304は、ステップS1009の長期保存データの検証結果と、ステップS1010の署名データの検証結果とに基づいて、長期保存データ及び署名データが共に改竄がされているか否かを判定する。そして、図9に示したフローチャートに戻る。
【0046】
<長期保存データ検証処理>
図11は、図10のステップS1004、S1009に示した長期保存データ検証処理の一例を説明する図である。
まず、ステップS1101において、長期保存データ処理部302は、パッケージ化された長期保存データ102、104、106を解析する。そして、電子証明書102a、104a、106a、証明書チェーン102b、104b、106b、及びCRL102c、104c、106cを取得する。
【0047】
次に、ステップS1102において、長期保存データ処理部302は、CRL102c、104c、106cのファイルを、CA証明書で検証する。そして、ステップS1103において、長期保存データ処理部302は、CRL102c、104c、106cのファイルのリストに電子証明書が登録されていないかどうかを確認する。
次に、ステップS1104において、長期保存データ処理部302は、電子証明書102a、104a、106aをCA証明書で検証する。ステップS1102〜S1104の全てにおいて改竄されていなければ、署名データ103若しくはタイムスタンプ105、107の電子証明書が、署名若しくはタイムスタンプを付与した時点で有効であったと言える。
【0048】
以上のように本実施形態では、署名用の長期保存データ102と、タイムスタンプ用の長期保存データ104、106とを長期保存文書内に保持するようにした。長期保存データをデータベース等で長期保存文書と関連付けて別々に管理すると、電子文書の可搬性(portability)に問題が生じる。また、長期保存データと電子文書とのリンクが切れると、長期保存データと長期保存文書との関係を元に戻すことが困難であり、長期保存データと長期保存文書との関係が脆弱になる。これに対し、本実施形態では、前述したように、署名用の長期保存データ102と、タイムスタンプ用の長期保存データ104、106とを長期保存文書内に保持するようにした。これにより、長期保存データと長期保存文書との関係を強固にすることができ、長期保存データの紛失を防止することができる。従って、長期保存文書が改竄されていないことを長期に亘って確実に確認することができる。また、電子文書のポータビリティ(portability)を向上させることもできる。
【0049】
また、本実施形態では、署名用の長期保存データ102を署名データ103で保護すると共に、タイムスタンプ用の長期保存データ104、106をタイムスタンプ105、107で保護するようにした。これにより、長期保存データの検証時における信頼性を向上させることができ、長期保存文書の改竄をより確実に防ぐことができる。
【0050】
さらに、本実施形態では、署名用の長期保存データ102を長期保存文書に埋め込む処理に続けて、署名データ103を長期保存文書に埋め込む処理を行い、これらの処理を略同時に行うようにした。また、タイムスタンプ用の長期保存データ104、106を長期保存文書に埋め込む処理に続けて、タイムスタンプ105、107を長期保存文書に埋め込む処理を行い、これらの処理を略同時に行うようにした。従って、署名用の長期保存データ102と署名データ103(タイムスタンプ用の長期保存データ104、106とタイムスタンプ105、107)とを埋め込むタイミングにタイムラグが発生することを防止することができる。これにより、長期保存文書の改竄をより確実に防止することができる。
【0051】
また、本実施形態では、署名用の長期保存データ102と署名データ103とを紐付けると共に、タイムスタンプ用の長期保存データ104、106とタイムスタンプ105、107とを紐付けるようにした。従って、全ての長期保存データと署名データ(タイムスタンプ)とを比較する必要がなくなり、長期保存文書の検証時にどの署名データ(タイムスタンプ)がどの長期保存データと対応するのかを迅速に把握することができる。これにより、長期保存文書の検証の時間を短縮することができる。
【0052】
さらに、前述したように、本実施形態では、長期保存データ102、104、106と署名データ103(タイムスタンプ105、107)とを略同時に電子文書に埋め込むようにした。これにより、長期保存データ102、104、106と署名データ103(タイムスタンプ105、107)とを紐付ける紐付け情報を、長期保存データ102、104、106に格納することができる。従って、署名データ103(タイムスタンプ105、107)にプライベートな情報を格納することを防止することができる。よって、例えば、長期保存文書をPDFとする場合には、PDFの仕様に適した形で、長期保存データ102、104、106と署名データ103(タイムスタンプ105、107)とを紐付けることができる。
【0053】
尚、本実施形態では、電子文書フォーマットがPDF(Portable Document Format)である場合を例に挙げて説明を行ったが、電子文書フォーマットは、PDFに限定されない。SVG(Scaleable Vector Graphic)等の構造化電子文書であれば、電子文書フォーマットは、どのようなものであってもよい。
【0054】
(本発明の他の実施形態)
前述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、前記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給してもよい。そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【0055】
また、この場合、前記ソフトウェアのプログラムコード自体が前述した実施形態の機能を実現することになる。また、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えば、かかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0056】
また、コンピュータが供給されたプログラムコードを実行することにより、前述の実施形態の機能が実現されるだけでない。そのプログラムコードがコンピュータにおいて稼働しているオペレーティングシステムあるいは他のアプリケーションソフト等と共同して前述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
【0057】
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードに備わるCPUが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
また、供給されたプログラムコードがコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいて機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
【0058】
なお、前述した各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図面の簡単な説明】
【0059】
【図1】本発明の実施形態を示し、印刷システムの構成の一例を示す図である。
【図2】本発明の実施形態を示し、クライアント端末装置のハードウェアの構成の一例を示す図である。
【図3】本発明の実施形態を示し、長期保存文書の構成の一例を示した図である。
【図4】本発明の実施形態を示し、タイムスタンプが付け加えられた長期保存文書の構成の一例を示した図である。
【図5】本発明の実施形態を示し、電子文書を初めて長期保存文書として保存する際の処理の一例を説明するフローチャートである。
【図6】本発明の実施形態を示し、長期保存データ作成処理の一例を示すフローチャートである。
【図7】本発明の実施形態を示し、署名用の長期保存データ及び署名データの埋め込み処理と、タイムスタンプ用の長期保存データ及びタイムスタンプの埋め込み処理との一例を説明するフローチャートである。
【図8】本発明の実施形態を示し、長期保存文書の内部のデータの一例を示した図である。
【図9】本発明の実施形態を示し、長期保存文書に対してタイムスタンプを付与する際の処理の一例について説明するフローチャートである。
【図10】本発明の実施形態を示し、長期保存文書検証処理の一例を説明するフローチャートである。
【図11】本発明の実施形態を示し、長期保存データ検証処理の一例を説明する図である。
【符号の説明】
【0060】
101 コンテンツデータ
102 署名用の長期保存データ
102a、104a、106a 証明書
102b、104b、106b 証明書チェーン
102c、104c、106c CRL
103 署名データ
104、106 タイムスタンプ用の長期保存データ
105、107 タイムスタンプ
801 ページ辞書
802 ページピース辞書
803 長期保存データ用のキー
804 アプリケーションデータ辞書
805 ストリームオブジェクト
806 署名辞書(タイムスタンプ辞書)
807 署名辞書(タイムスタンプ辞書)
808 長期保存データのオブジェクト番号
809 長期保存データのデータサイズ

【特許請求の範囲】
【請求項1】
電子文書に対する電子署名を検証するための長期保存データを、前記電子文書に埋め込む長期保存データ埋め込み手段と、
前記電子文書に埋め込まれた長期保存データを用いて有効性が検証される電子署名を、前記電子文書に対して行う署名手段とを有することを特徴とする電子文書管理装置。
【請求項2】
前記署名手段は、前記長期保存データが前記電子文書に埋め込まれるのと略同時に、その長期保存データを用いて有効性が検証される電子署名を行うことを特徴とする請求項1に記載の電子文書管理装置。
【請求項3】
前記長期保存データと、その長期保存データを用いて有効性が検証される電子署名のデータとを対応付ける対応付け手段を有することを特徴とする請求項1又は2に記載の電子文書管理装置。
【請求項4】
前記対応付け手段は、前記長期保存データと、その長期保存データを用いて有効性が検証される電子署名のデータとを紐付けるための紐付け情報を、前記長期保存データ又は前記電子署名のデータに保持させることを特徴とする請求項3に記載の電子文書管理装置。
【請求項5】
前記署名手段は、前記電子文書に埋め込まれた長期保存データを用いて有効性が検証される電子署名を、前記長期保存データが埋め込まれた電子文書に対して行うことを特徴とする請求項1〜4の何れか1項に記載の電子文書管理装置。
【請求項6】
前記長期保存データ埋め込み手段は、前記電子文書に対する電子署名が、その電子署名が行われた時点において有効であることを示す署名用の長期保存データを前記電子文書に埋め込み、
前記署名手段は、前記電子文書に埋め込まれた署名用の長期保存データにより有効であることが示される電子署名を、前記署名用の長期保存データが埋め込まれた電子文書に対して行い、
前記長期保存データ埋め込み手段は、前記電子文書に対して電子署名が行なわれた後に、前記電子文書に対するタイムスタンプが有効であることを示すタイムスタンプ用の長期保存データを前記電子文書に埋め込み、
前記署名手段は、前記電子文書に埋め込まれたタイムスタンプ用の長期保存データにより有効であることが示されるタイムスタンプを、前記タイムスタンプ用の長期保存データが埋め込まれた電子文書に対して行うことを特徴とする請求項5に記載の電子文書管理装置。
【請求項7】
前記長期保存データ埋め込み手段は、前記電子文書に対してタイムスタンプが行われた後に、前記電子文書に対するタイムスタンプが有効であることを示すタイムスタンプ用の長期保存データを前記電子文書に新たに埋め込み、
前記署名手段は、前記電子文書に新たに埋め込まれたタイムスタンプ用の長期保存データにより有効であることが示されるタイムスタンプを、前記タイムスタンプ用の長期保存データが新たに埋め込まれた電子文書に対して行うことを特徴とする請求項5に記載の電子文書管理装置。
【請求項8】
前記電子文書が改竄されていないことを、その電子文書に埋め込まれた長期保存データと、その長期保存データを用いて有効性が検証される電子署名のデータとを用いて検証する検証手段を有することを特徴とする請求項1〜7の何れか1項に記載の電子文書管理装置。
【請求項9】
前記長期保存データは、前記電子文書に前記電子署名を行う際に利用される電子証明書と、その電子証明書から得られる認証局までの認証パス上の全ての電子証明書と、それら全ての電子証明書に紐付けられた電子証明書の失効情報とを含むことを特徴とする請求項1〜8の何れか1項に記載の電子文書管理装置。
【請求項10】
電子文書に対する電子署名が有効であることを示す長期保存データを、前記電子文書に埋め込む長期保存データ埋め込みステップと、
前記電子文書に埋め込まれた長期保存データを用いて有効性が検証される電子署名を、前記電子文書に対して行う署名ステップとを有することを特徴とする電子文書管理方法。
【請求項11】
電子文書に対する電子署名が有効であることを示す長期保存データを、前記電子文書に埋め込む長期保存データ埋め込みステップと、
前記電子文書に埋め込まれた長期保存データを用いて有効性が検証される電子署名を、前記電子文書に対して行う署名ステップとをコンピュータに実行させることを特徴とするコンピュータプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2007−304982(P2007−304982A)
【公開日】平成19年11月22日(2007.11.22)
【国際特許分類】
【出願番号】特願2006−134320(P2006−134320)
【出願日】平成18年5月12日(2006.5.12)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】