(57)【要約】【課題】  複数の電子文書を電子的に結合して生成した電子文書バインダに対して時刻証明書を付与することにより、時刻証明書の発行回数を減らし、時刻証明書に掛かるコストの大幅削減を図る。さらに、電子文書の改竄を容易に検知することができる。【解決手段】  電子文書バインダＢには電子文書Ｄ１，Ｄ２・・・ＤＮ（Ｎは整数）が電子的に結合して格納され、時刻証明書ＴＰ・ハッシュ値リストＬおよびメッセージダイジェストＭが暗号化された登録情報Ｒとして電子文書バインダＢに挿入される。検証時には、バインダＢ内の文書Ｄ毎に算出したハッシュ値から検証メッセージダイジェストを作成し、登録情報Ｒ中のメッセージダイジェストと照合して電子文書の改竄を検知する。【選択図】      図２
2007081784.tif 000002
【特許請求の範囲】
【請求項１】
複数の電子文書を電子的に結合して電子文書バインダを生成する電子文書バインダ生成手段と、
前記電子文書バインダ生成手段が生成した電子文書バインダに結合される各電子文書毎に１方向関数を用いてダイジェストを算出するとともに、前記各ダイジェストに対し、対応する電子文書を特定する文書特定情報を付加してリスト化し、これを登録ダイジェストリストとする登録ダイジェストリスト作成手段と、
前記ダイジェストリスト作成手段によって算出された登録ダイジェストリストに対して１方向関数を用いてダイジェストを生成し、これを登録メッセージダイジェストとする登録メッセージダイジェスト作成手段と、
電子的な時刻証明書を発行する所定サーバに送付された時刻証明書を取得する時刻証明書取得手段と、
前記登録ダイジェストリスト、時刻証明書および登録メッセージダイジェストを暗号化し、この情報を登録情報として前記電子文書バインダ内に挿入する登録情報挿入手段と、を具備した
ことを特徴とする電子文書バインダに対する時刻証明システム。
【請求項２】
請求項１に記載の時刻証明システムにおいて、
前記登録情報添付手段によって登録情報が挿入された電子文書バインダに対し、当該電子文書バインダ内の電子文書毎に１方向関数によってダイジェストを算出するとともに、前記各ダイジェストに対し、対応する電子文書を特定する文書特定情報を付加してリスト化し、これを検証ダイジェストリストとする検証ダイジェストリスト作成手段と、
前記検証ダイジェストリスト作成手段によって作成された検証ダイジェストリストに対して１方向関数を用いてダイジェストを算出し、これを検証メッセージダイジェストとする検証メッセージダイジェスト作成手段と、
当該電子文書バインダに挿入された登録情報を復号して得られた登録メッセージダイジェストと、前記検証メッセージダイジェスト作成手段により得られた検証メッセージダイジェストとを照合して電子文書バインダの改竄を検知する改竄検知手段と、を具備した
ことを特徴とする電子文書バインダに対する時刻証明システム。
【請求項３】
請求項２記載の時刻証明システムにおいて、
前記改竄検知手段において、電子文書バインダの改竄が検知された場合には、検証ダイジェストリストと登録ダイジェストリストに含まれる各ダイジェストを照合し、不一致が検出された場合には、不一致となったダイジェストに対応する文書特定情報から改竄された文書を特定する改竄電子文書特定手段を備えた
ことを特徴とする電子文書バインダに対する時刻証明システム。
【請求項４】
請求項１から３いずれかに記載の時刻証明システムにおいて、
前記電子文書バインダはヘッダ或いはトレーラを含み、
前記登録情報添付手段は、前記電子文書バインダのヘッダ或いはトレーラに格納する
ことを特徴とする電子文書バインダに対する時刻証明システム。
【請求項５】
前記電子文書バインダ内の電子文書に対する変更を許可するか否かを示す変更可否情報を挿入する変更可否情報挿入手段と、
前記電子文書バインダから前記変更可否情報を読み取り、その内容が否であった場合には、前記バインダ内の各文書に対する変更を許可しない変更禁止手段と、を具備する
ことを特徴とする請求項１から４いずれかに時刻証明システム。
【請求項６】
複数の電子文書を電子的に結合して電子文書バインダを生成する電子文書バインダ生成ステップと、
前記電子文書バインダ生成ステップにて生成した電子文書バインダに結合される各電子文書毎に１方向関数を用いてダイジェストを算出するとともに、前記各ダイジェストに対し、対応する電子文書を特定する文書特定情報を付加してリスト化し、これを登録ダイジェストリストとする登録ダイジェストリスト作成ステップと、
前記ダイジェストリスト作成ステップによって算出された登録ダイジェストリストに対して１方向関数を用いてダイジェストを生成し、これを登録メッセージダイジェストとする登録メッセージダイジェスト作成ステップと、
電子的な時刻証明書を発行する所定サーバに送付された時刻証明書を取得する時刻証明書取得ステップと、
前記登録ダイジェストリスト、時刻証明書および登録メッセージダイジェストを暗号化し、この情報を登録情報として前記電子文書バインダ内に挿入する登録情報挿入ステップと、を備えた
ことを特徴とする電子文書バインダに対する時刻証明方法。
【請求項７】
請求項６に記載の時刻証明方法において、
前記登録情報添付手段によって登録情報が挿入された電子文書バインダに対し、
当該電子文書バインダ内の電子文書毎に１方向関数によってダイジェストを算出するとともに、前記各ダイジェストに対し、対応する電子文書を特定する文書特定情報を付加してリスト化し、これを検証ダイジェストリストとする検証ダイジェストリスト作成ステップと、
前記検証ダイジェストリスト作成ステップによって作成された検証ダイジェストリストに対して１方向関数を用いてダイジェストを算出し、これを検証メッセージダイジェストとする検証メッセージダイジェスト作成ステップと、
当該電子文書バインダに挿入された登録情報を復号して得られた登録メッセージダイジェストと、前記検証メッセージダイジェスト作成ステップにより得られた検証メッセージダイジェストとを照合して電子文書バインダの改竄を検知する改竄検知ステップと、を備えた
ことを特徴とする電子文書バインダに対する時刻証明方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の電子文書を集合して格納した電子文書バインダが、ある日時に存在していたことを証明する技術に関する。
【背景技術】
【０００２】
個人情報保護法と共にｅ−文書法が２００５年４月から施行され、電子文書の存在証明を目的とした電子印鑑システム等が脚光を浴びてきている。この電子印鑑システムの一つとして、電子文書の存在時刻を証明する時刻証明書発行システムがあり、このシステムにおいては、個々の電子文書に時刻証明書を埋め込むことにより、その文書がある時点で存在したことを証明する。
【０００３】
時刻証明書発行システムの一例として、クライアント側電子文書作成端末装置が、電子文書作成ソフトウエアにより作成された電子文書を読み取る電子文書読み取り手段と、読み取った電子文書を基に、１方向関数値であるハッシュ値を含むダイジェスト値を計算するダイジェスト値演算手段と、前記ダイジェスト値とクライアント側電子文書作成端末装置のＩＤ番号とを互いに関連づけて外部機関装置へ送信する送信手段と、前記外部機関装置によって受信されたダイジェスト値とクライアント側電子文書作成端末装置のＩＤ番号に対して、外部機関装置により受信時刻と電子署名が付加されて返送されて来る電子証明書を受信する受信手段と、受信した前記電子証明書をクライアント側電子文書作成端末装置内のタイムスタンプ対象電子文書に対して書き込む電子証明書挿入書き込み手段、とを備えたタイムスタンプ押印システムがある（例えば、特許文献１参照）。
【０００４】
【特許文献１】特開２００３−２４４１３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このように、特許文献１では、個々の電子文書に対して電子証明書（時刻証明書）が発行され、この電子証明書を電子文書毎に書き込んでいるため、この文書が電子証明書の発行時点で存在していたことを証明することができる。
しかしながら、例えば、契約書・発注書、病院のカルテ等を始めとする存在証明が必要な電子文書が増加すると、その電子文書毎に時刻証明書が必要となり、処理が煩雑となった。また、利用料金が嵩んでしまうという問題も生じる。
因みに、現在時刻証明書を発行する機関から委託されている業者において、１回の証明書代は８〜１０円であり、中規模の病院におけるカルテを全部電子化してこの電子文書に対して時刻証明書を発行すると、年間で１０００万〜１５００万の経費が掛かることになる。
【０００６】
本発明は、前述した先行技術に鑑みてなされたもので、多数の電子文書について時刻証明を行う場合であっても、処理を簡素にすることができ、また、大幅なコスト削減を図ることができる時刻証明システム及び時刻証明方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
前記目的を達成するために、本発明が採用する電子文書バインダに対する時刻証明システムは、複数の電子文書を電子的に結合して電子文書バインダを生成する電子文書バインダ生成手段と、前記電子文書バインダ生成手段が生成した電子文書バインダに結合される各電子文書毎に１方向関数を用いてダイジェストを算出するとともに、前記各ダイジェストに対し、対応する電子文書を特定する文書特定情報を付加してリスト化し、これを登録ダイジェストリストとする登録ダイジェストリスト作成手段と、前記ダイジェストリスト作成手段によって算出された登録ダイジェストリストに対して１方向関数を用いてダイジェストを生成し、これを登録メッセージダイジェストとする登録メッセージダイジェスト作成手段と、電子的な時刻証明書を発行する所定サーバに送付された時刻証明書を取得する時刻証明書取得手段と、前記登録ダイジェストリスト、時刻証明書および登録メッセージダイジェストを暗号化し、この情報を登録情報として前記電子文書バインダ内に挿入する登録情報挿入手段と、を具備したことを特徴とする。
【０００８】
このように構成することにより、複数の電子文書を電子的に結合して生成された電子文書バインダに対して時刻証明書を発行し、この時刻証明書を登録ダイジェストリストおよび登録メッセージダイジェストと共に暗号化して登録情報として当該電子文書バインダに挿入する。これにより、電子文書毎に時刻証明書を付与する場合に比べ、コストを大幅に削減することができる。
【０００９】
前記時刻証明システムにおいて、前記登録情報添付手段によって登録情報が挿入された電子文書バインダに対し、当該電子文書バインダ内の電子文書毎に１方向関数によってダイジェストを算出するとともに、前記各ダイジェストに対し、対応する電子文書を特定する文書特定情報を付加してリスト化し、これを検証ダイジェストリストとする検証ダイジェストリスト作成手段と、前記検証ダイジェストリスト作成手段によって作成された検証ダイジェストリストに対して１方向関数を用いてダイジェストを算出し、これを検証メッセージダイジェストとする検証メッセージダイジェスト作成手段と、当該電子文書バインダに挿入された登録情報を復号して得られた登録メッセージダイジェストと、前記検証メッセージダイジェスト作成手段により得られた検証メッセージダイジェストとを照合して電子文書バインダの改竄を検知する改竄検知手段と、を具備したことを特徴とする。
【００１０】
このように構成することにより、改竄検知手段で、電子文書バインダに添付された登録情報を復号して得られた登録メッセージダイジェストと、検証メッセージダイジェスト作成手段により得られた検証メッセージダイジェストとを照合することで、照合が不一致であった場合には改竄されていることを検知することができる。
【００１１】
前記時刻証明システムにおいて、前記改竄検知手段で電子文書バインダの改竄が検知された場合には、検証ダイジェストリストと登録ダイジェストリストに含まれる各ダイジェストを照合し、不一致が検出された場合には、不一致となったダイジェストに対応する文書特定情報から改竄された文書を特定する改竄電子文書特定手段を備えたとを特徴とする。
【００１２】
前記時刻証明システムにおいて、前記電子文書バインダはヘッダ或いはトレーラを含み、前記登録情報添付手段は、前記電子文書バインダのヘッダ或いはトレーラに格納することが望ましい。
【００１３】
前記時刻証明システムにおいて、前記電子文書バインダ内の電子文書に対する変更を許可するか否かを示す変更可否情報を挿入する変更可否情報挿入手段と、前記電子文書バインダから前記変更可否情報を読み取り、その内容が否であった場合には、前記バインダ内の各文書に対する変更を許可しない変更禁止手段と、を具備することが好ましい。
【００１４】
前記目的を達成するために、本発明が採用する電子文書バインダに対する時刻証明方法は、複数の電子文書を電子的に結合して電子文書バインダを生成する電子文書バインダ生成ステップと、前記電子文書バインダ生成ステップにて生成した電子文書バインダに結合される各電子文書毎に１方向関数を用いてダイジェストを算出するとともに、前記各ダイジェストに対し、対応する電子文書を特定する文書特定情報を付加してリスト化し、これを登録ダイジェストリストとする登録ダイジェストリスト作成ステップと、前記ダイジェストリスト作成ステップによって算出された登録ダイジェストリストに対して１方向関数を用いてダイジェストを生成し、これを登録メッセージダイジェストとする登録メッセージダイジェスト作成ステップと、電子的な時刻証明書を発行する所定サーバに送付された時刻証明書を取得する時刻証明書取得ステップと、前記登録ダイジェストリスト、時刻証明書および登録メッセージダイジェストを暗号化し、この情報を登録情報として前記電子文書バインダ内に挿入する登録情報挿入ステップと、を備えたことを特徴とする
【００１５】
前記時刻証明方法において、前記登録情報添付手段によって登録情報が挿入された電子文書バインダに対し、
当該電子文書バインダ内の電子文書毎に１方向関数によってダイジェストを算出するとともに、前記各ダイジェストに対し、対応する電子文書を特定する文書特定情報を付加してリスト化し、これを検証ダイジェストリストとする検証ダイジェストリスト作成ステップと、
前記検証ダイジェストリスト作成ステップによって作成された検証ダイジェストリストに対して１方向関数を用いてダイジェストを算出し、これを検証メッセージダイジェストとする検証メッセージダイジェスト作成ステップと、
当該電子文書バインダに挿入された登録情報を復号して得られた登録メッセージダイジェストと、前記検証メッセージダイジェスト作成ステップにより得られた検証メッセージダイジェストとを照合して電子文書バインダの改竄を検知する改竄検知ステップと、を備えたことを特徴とする。
【発明の効果】
【００１６】
本発明に係る電子文書バインダに対する時刻証明システムによれば、複数の電子文書を電気的に結合して生成した電子文書バインダに時刻証明書を付与することにより、時刻証明書の発行回数を減らし、時刻証明書に掛かるコストの大幅削減を図る。さらに、電子文書の改竄を容易に検知することができる。
【発明を実施するための最良の形態】
【００１７】
＜実施形態＞
以下、図面を参照し、本発明に係る実施形態を説明する。図１は、本実施形態による時刻証明システム１の構成を示す図である。
本実施形態に係る時刻証明システム１は、複数のクライアント端末２Ａ，２Ｂ，…，２Ｎ（以下、総称してクライアント端末２という）と、ＬＡＮ（Local Area Network）３を介して接続された電子文書管理サーバ１０と、ＬＡＮ３とゲートウェイ（図示せず）とインターネット４を介して接続された時刻証明書発行局５とを具備している。
【００１８】
ここで、クライアント端末２は、各種アプリケーションによって電子文書を作成するコンピュータであり、各クライアントが作成した電子文書をＬＡＮ３経由で電子文書管理サーバ１０に送信する。
電子文書管理サーバ１０は、後述する処理によってクライアント端末２から送信された電子文書Ｄを電子文書バインダＢに格納した上で、この電子文書バインダＢに時刻証明書を付与するようになっている。この電子文書管理サーバ１０では、電子文書バインダＢに電子文書Ｄを結合して格納する際に、改竄防止機能を備えた文書形式に変換したり、再利用可能な文書形式に変換したりするが、これらについては公知の技術であるのでその説明は省略する。
【００１９】
ここで、図２に基づき本実施形態における処理の概要を説明する。
電子文書バインダＢには電子文書Ｄ１，Ｄ２・・・ＤＮ（Ｎは整数）が電子的に結合されており、この電子文書バインダＢの電子文書Ｄ１〜ＤＮについてそれぞれハッシュ値関数を用いてハッシュ値を求め、それらのハッシュ値をリスト化してハッシュ値リストＬを生成する。そして、このハッシュ値リストＬの各ハッシュ値からハッシュ値関数を用いて新たにハッシュ値を求め、この新たなハッシュ値をメッセージダイジェストＭとする。さらに、時刻証明書発行局５から発行される時刻証明書ＴＰとハッシュ値リストＬとメッセージダイジェストＭとが所定の暗号鍵１６Ａを用いて暗号化され、この暗号化されたデータが登録情報Ｒとなって電子文書バインダＢに付与される。
【００２０】
次に、電子文書バインダＢの構造について図３を参照しつつ説明する。
電子文書バインダＢは、バインダヘッダＢＨ、文書部ＢＭ、バインダトレーラＢＴから構成され、文書部ＢＭには電子文書Ｄ１，Ｄ２，Ｄ３（例えば、３つ）が電子的に結合して格納される。
また、バインダヘッダＢＨには、電子文書バインダのバージョン、作成者、固定化されたか否かを示す固定化フラグ、トレーラオフセット、文書オフセットテーブル等が格納される。この固定化フラグは、電子文書バインダＢへの文書登録の可能／禁止を示すもので、このフラグが立っている場合には、電子文書Ｄの書込／削除が禁止され、電子文書Ｄの参照のみが許可される。また、バインダトレーラＢＴには登録情報Ｒが記憶される。
【００２１】
電子文書管理サーバ１０に接続されるクライアント端末２からの操作、或いは電子文書管理サーバ１０自体の操作により、新規に電位文書電子文書バインダＢを作成した場合であってもこの構造で形成される。電子文書バインダヘッドＢＨの電子文書バインダのバージョンおよび作成者は、操作者による手入力、またはクライアント端末２のＡＰアドレスから自動付与するようにしてもよい。
【００２２】
＜１．電子文書管理サーバ１０の構成＞
図４は、電子文書管理サーバ１０の機能構成を示すブロック図である。電子文書管理サーバ１０は、制御部１１、記憶部１２、送受信部１３、ハッシュ値リスト生成部１４、メッセージダイジェスト生成部１５、時刻証明書取得部１６、暗号化部１７、挿入部１８、復号部１９および改竄検知部２０を具備する。
【００２３】
制御部１１は、ＣＰＵ（Central Processing Unit）等の演算装置と、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）等（いずれも図示せず）の各種メモリとを備えており、記憶部１２に記憶された各種プログラムを実行することにより電子文書管理サーバ１０各部の動作を制御する。
記憶部１２は、例えばＨＤＤ（Hard Disk Drive）等の主記憶装置と不揮発性メモリからなる。この主記憶装置には電子文書バインダＢやこの電子文書バインダＢに対応する登録情報Ｒ等が記憶され、不揮発性メモリにはハッシュ値リストＬおよびメッセージダイジェストＭ等が一時的に記憶される。
【００２４】
送受信部１３は、ＬＡＮ３を介して各端末２との間でデータの授受を行うと共に、ＬＡＮ３およびインターネット４を介して時刻証明書発行局５に接続され、この時刻証明書発行局５との間でデータの授受を行う。
【００２５】
ハッシュ値リスト生成部１４は、電子文書Ｄのデータをハッシュ値関数（例えば、“ＳＨＡ−１”，“ＭＤ５”）を通し、この結果ハッシュ値を生成するものである。電子文書Ｄ毎にハッシュ値を算出し、これらを文書特定情報となる文書名とともにリスト化することにより、図２に示すハッシュ値リストＬを生成し、記憶部１２の不揮発性メモリに一時的に記憶する。なお、ハッシュ値関数は１方向関数であるため、生成されたハッシュ値からは原文を推定することは不可能である。
【００２６】
メッセージダイジェスト生成部１５は、ハッシュ値リスト生成部１４によって生成されたハッシュ値リストＬのハッシュ値を合計して、この合計値に対してさらにハッシュ値関数を用いてハッシュ値を求め、これをメッセージダイジェストＭとして記憶部１２の不揮発性メモリに一時的に記憶させる。
【００２７】
時刻証明書取得部１６は、時刻証明書要求を送受信部１３を介して時刻証明書発行局５に要求し、この時刻証明書発行局５から時刻証明書ＴＰを取得する。
【００２８】
暗号化部１７は、時刻証明書取得部１６で取得した時刻証明書ＴＰ、ハッシュ値リスト生成部１４で生成したハッシュ値リストＬ、さらにメッセージダイジェスト生成部１５で生成したメッセージダイジェストＭを、暗号鍵１６Ａ（図２、参照）を用いて暗号化する。そして、この暗号化された結果を登録情報Ｒとする。
【００２９】
挿入部１８は、暗号化部１７で暗号化された登録情報Ｒを電子文書バインダＢのバインダトレーラＢＴ（図３、参照）に挿入する。
【００３０】
復号部１９は、バインダトレーラＢＴに添付された登録情報Ｒを読み出し、この登録情報Ｒを暗号鍵１６Ａで復号して登録時の時刻証明書ＴＰ、ハッシュ値リストＬおよびメッセージダイジェストＭを生成する。
【００３１】
改竄検知部２０は、後述する処理によって電子文書Ｄが改竄されたか否かを検知するものである。
【００３２】
＜２．電子文書管理サーバ１０の動作＞
次に、図５および図６のフローチャートに基づいて、本実施形態による電子文書管理サーバ１０の動作について説明する。
【００３３】
この処理は、時刻証明の登録方法、時刻証明の検証方法に分かれる。
＜２−１．時刻証明の登録方法＞
始めに、電子文書バインダＢの登録について、図５を参照しつつ説明する。
クライアント端末２或いは電子文書管理サーバ１０の操作部（図示せず）を操作者が操作することにより、この処理が開始される。新規の電子文書バインダＢを形成する場合には、所定の操作によって、制御部１１は、図３に示す電子文書バインダＢを記憶部１２に形成する。電子文書バインダＢの電子文書バインダヘッドＢＨ、バインダトレーラＢＴ、文書部ＢＭには何も記憶されておらず、領域のみ確保する。この際、バインダヘッダＢＨの電子文書バインダバージョンおよび作成者の入力を操作者に促しても、自動的に入力されるようにしてもよい。
【００３４】
制御部１１は、この電子文書バインダＢが固定済み電子文書バインダＢであるか否かを判定する（ステップＳ１）。固定済み（更新不可）の電子文書バインダＢの場合には、バインダヘッダＢＨの固定化フラグが立っているから、この固定化フラグを監視することにより判定が可能となる。
【００３５】
制御部１１では、このステップＳ１の判定処理において、固定化フラグが立っていた場合（ステップＳ１；ＹＥＳ）には、格納禁止（ステップＳ２）としてこの処理を終了する。
一方、判定処理において、固定化フラグが立っていない場合（ステップＳ１；ＮＯ）には、制御部１１は、電子文書バインダＢへ電子文書Ｄの格納する（ステップＳ１）。つまり、図３に示す文書部ＢＭに電子文書Ｄを格納する（ステップＳ３）。
このステップＳ２の固定化フラグの判定処理において、固定化フラグが立っていない場合、つまり非固定状態の場合には、電子文書バインダＢに対しては電子文書Ｄの削除も可能となり、削除する際には、当該電子文書Ｄが使用している記憶領域の先頭から以降の文書領域を上詰め（コンデンス）すると共に、ハッシュ値リストＬの該当文書名とハッシュ値を削除するようにしてもよい。
【００３６】
次に、制御部１１は、格納した電子文書Ｄのデータをハッシュ値リスト生成部１４に転送し、このハッシュ値リスト生成部１４でハッシュ値を生成し、ハッシュ値リストＬ０に文書名と生成したハッシュ値とを追加登録して、記憶部１２の不揮発性メモリに一時的に記憶する（ステップＳ４）。
【００３７】
そして、制御部１１では、ステップＳ４で処理された電子文書Ｄが最終の格納文書であるか否かを判定し（ステップＳ５）、最終の電子文書Ｄが格納されるまでステップＳ３〜Ｓ５の処理を繰り返す。このステップＳ３〜ステップＳ５の処理を繰り返すことにより、ハッシュ値リストＬ０を得る。
なお、ステップＳ５の判定処理は、予め電子文書バインダＢに格納する電子文書Ｄの数が分かっている場合には、最終の電子文書Ｄに対して最終文書であることを示す情報を付加し、この情報に基づいてステップＳ５の判定処理を行ってもよい。また、操作者に最終文書であるか否かを問い合わせ、操作者の入力（回答）を待つようにしてもよい。
【００３８】
制御部１１は、最終の電子文書Ｄが格納されると（ステップＳ５；ＹＥＳ）、制御部１１は、時刻証明書取得部１６に時刻証明書要求を発し、時刻証明書取得部１６は、時刻証明書発行局５から時刻証明書ＴＰを取得する（ステップＳ６）。この際、時刻証明書ＴＰ０の識別番号も併せて取得する。
【００３９】
さらに、制御部１１は、メッセージダイジェスト生成部１５にメッセージダイジェスト生成を要求し、不揮発性メモリに一時的に記憶されたハッシュ値リストＬ０を基にメッセージダイジェストＭ０を生成する（ステップＳ７）。この場合、ハッシュ値リストＬ０のハッシュ値を合計して、この合計値に対してハッシュ値関数を用いることによりメッセージダイジェストＭ０を生成する。
【００４０】
制御部１１は、暗号化部１７に暗号化指令を送信し、暗号化部１７は、時刻証明書ＴＰ０、ハッシュ値リストＬ０、さらにメッセージダイジェストＭ０をＰＫＩ（Public Key Infrastructure；公開鍵暗号技術と電子署名）による暗号鍵１６Ａを使って暗号化する。そして、挿入部１８にて、この暗号化された結果を登録情報Ｒとして、電子文書バインダＢのバインダトレーラＢＴ（図３、参照）に挿入する（ステップＳ８）。
以上の処理により、記憶部の主記憶装置には、図３に示す電子文書バインダＢが格納される。
【００４１】
＜２−２．時刻証明の検証方法＞
次に、電子文書バインダＢの検証について、図６を参照しつつ説明する。
電子文書バインダＢの時刻証明が必要な場合や、電子文書Ｄの改竄を検査する場合には、この処理を行って時刻証明の検証を行う。
この際、操作者は、クライアント端末２或いは電子文書管理サーバ１０の操作部（図示せず）を所定操作することにより、この処理を開始させる。
制御部１１は、電子文書バインダＢの文書部ＢＭから電子文書Ｄを取り出し、記憶部１２の不揮発性メモリに一時的に記憶する（ステップＳ１１）。
【００４２】
制御部１１は、電子文書Ｄのデータをハッシュ値リスト生成部１４に転送し、このハッシュ値リスト生成部１４でハッシュ値を生成し、ハッシュ値リストＬに文書名と生成したハッシュ値とを追加登録して、記憶部１２の不揮発性メモリに一時的に記憶する（ステップＳ１２）。そして、この処理を最終の格納文書が処理されるまで繰り返され、検証ハッシュ値リストＬ１が生成される（ステップＳ１１〜Ｓ１３）。
【００４３】
さらに、制御部１１は、メッセージダイジェスト生成部１５にメッセージダイジェスト生成を要求し、不揮発性メモリに一時的に記憶された検証ハッシュ値リストＬ１を基に検証メッセージダイジェストＭ１を生成する（ステップＳ１４）。
【００４４】
一方、制御部１１は、電子文書バインダＢのバインダトレーラＢＴに挿入された登録情報を読み出して復号部１９に転送し、この復号部１９で時刻証明書ＴＰ０、ハッシュ値リストＬ０、さらにメッセージダイジェストＭ０を復元する（ステップＳ１５）。
【００４５】
制御部１１は、検証メッセージダイジェストＭ１と復元されたメッセージダイジェストＭ０とを改竄検知部２０に転送し、この改竄検知部２０にてダイジェストＭ０とＭ１とを照合して同一か否かを判定する（ステップＳ１６）
【００４６】
この判定処理で一致していない場合（ステップＳ１６；ＮＯ）には、改竄検知部２０は、検証ハッシュ値リストＬ１と復元されたハッシュ値リストＬ０の文書毎のハッシュ値を照合し、不一致の文書を抽出し、変更／更新された電子文書Ｄを特定する（ステップＳ１７）。これにより、電子文書バインダＢが改竄されたこと、さらに変更／更新された電子文書Ｄを特定することができる。この結果は、図示しない表示部等で報知される。
【００４７】
一方、ステップＳ１６の判定処理でダイジェストＭ０とＭ１が同一であった場合（ステップＳ１６；ＹＥＳ）には、制御部１１は、時刻証明書発行局５に対して時刻証明書ＴＰ０の妥当性を問い合わせる（ステップＳ１８）。この際、時刻証明書を取得した際の識別番号を送信する。これにより、時刻証明書発行局５では、この時刻証明書ＴＰ０が妥当か否かを判定する（ステップＳ１９）。つまり、この時刻証明書ＴＰ０が証明期間内であり、しかも正規の証明書であるか否かを判定する。このステップＳ１９の処理は、時刻証明書発行局５で行われる処理である。
【００４８】
この判定処理の結果、時刻証明書ＴＰ０が妥当であった場合（ステップＳ１９；ＹＥＳ）には、“改竄／証明書ともに問題なし”を表示部等に報知し（ステップＳ２０）、この処理を終了する。
一方、ステップＳ１９の判定処理の結果、時刻証明書ＴＰ０が妥当でないと判定した場合（ステップＳ１９；ＮＯ）には、“時刻証明書ＴＰ０が無効”を表示部等に報知し（ステップＳ２１）、この処理を終了する。
【００４９】
＜３．本実施形態の効果＞
このように、時刻証明システム１では、電子文書Ｄに対してそれぞれ時刻証明書ＴＰを付与するのではなく、複数の電子文書Ｄを格納した電子文書バインダＢに対して時刻証明書ＴＰを付与するようにしたから、各電子文書Ｄに付与する場合に比べ、時刻証明書発行局５から発行される時刻証明書ＴＰの数を大幅に削減でき、大幅なコスト低減を図ることができる。
【００５０】
しかも、電子文書バインダＢのバインダヘッダＢＨには固定化フラグを設けることにより、電子文書バインダＢ内の電子文書Ｄの変更／更新／追加を禁止することができ、電子文書バインダＢ内の電子文書Ｄを保護することが可能となる。
【００５１】
＜４．変形例＞
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されるものではなく、種々の態様が可能である。
【００５２】
（１）ファイルシステムとしての適用
階層的に構成したファイルシステムの場合にも、本発明は適用可能である。
図７に、階層型ディレクトリ構成をサポートするファイルシステムの構造を示す。なお、この変形例では、電子文書バインダをノードとし、枠内の情報は電子文書バインダのヘッド或いはトレーラに書き込まれる情報を示している。
このファイルシステムでは、一般的に階層管理を実現するために、各ノード（電子文書バインダ）にノードタイプ（フォルダ、一般ファイル等）や作成、作成日時、更新日時、アクセス権、ノード直下に存在するノードへのリンク等を示すノード属性情報が備えられている。これに加え、ノードの内容自体に対してハッシュ値関数を用いてハッシュ値を求め、これを記憶するハッシュ値格納領域を設けるとともに、上流に位置したノードには時刻証明書を格納する時刻証明書格納領域を設ける。
【００５３】
そして、このようにハッシュ値格納領域および時刻証明格納領域を設けたノードをトップノードとした場合、その下層において、フォルダ以外のファイル等のノードを新規追加するときは、ノード作成日時、更新日時、アクセス権、ノード内容から算出したハッシュ値を求め、暗号化してトップノードに挿入する。ノードの内容が更新された場合は、ハッシュ値の再計算を行い、これをトップノードに更新することによって常にノード内容とハッシュ値の整合性を保つ。
【００５４】
また、フォルダを新たに作成する場合は、ノード内容以外の項目でハッシュ値を計算して、そのハッシュ値を格納しておく。フォルダにノードが追加登録された場合も、そのノードの内容のハッシュ値を計算してそのノードに格納するとともに、そのノードの内容を用いてフォルダのハッシュ値を再計算する。
【００５５】
以上の体系において、あるノードより下位の階層を固定化（ベースライン化）したい場合は、時刻証明書発行局から時刻証明書を入手し、これをアーカイブ対象のトップノードに暗号化して設定する。そして、配下のノードに対するアクセス権を参照のみに変更する。
このようにすることにより、改竄検出が可能なべースラインを作成することができる。
【００５６】
一方、改鼠をチェックする場合は、チェック対象ノード以下のノード各々に対して、ハッシュ値を算出し、ノード個々が保持するハッシュ値情報と比較して改竄の有無を検知することができる。ノードタイプがフォルダの場合は、該当ノード以下のノードのハッシュ値を計算し、これをもって各フォルダノードが保持するハッシュ値と比較して相違の有無を検証する。
【００５７】
このように、本発明の技術を応用することにより、ノード属性にノード自身のハッシュ値格納領域、時刻証明書格納領域を追加し、改鼠防止ファイルシステムを簡単に実現することが可能となる。
【００５８】
（２）時刻証明システム１の構成
前記実施形態の時刻証明システム１では、電子文書管理サーバ１０で電子文書バインダＢを作成した上で時刻証明等を管理するようにしたが、本発明はこれに限らず、各クライアント端末２で時刻証明書ＴＰを付与した電子文書バインダＢを管理するようにしてもよい。
また、電子文書管理サーバ１０はＬＡＮ（Local Area Network）に接続される場合に限るものではなく、社外での使用範囲にも適用されるもので、この場合には、インターネット４に電子文書管理サーバ１０に接続し、この電子文書管理サーバ１０が事業者によって管理されてもよい。
【００５９】
また、図３に示す電子文書バインダＢの構造では、バインダヘッダＢＨ、文書部ＢＭ、バインダトレーラＢＴから構成されるようにしたが、バインダヘッダＢＨかバインダトレーラＢＴのいずれかを形成し、いずれかの領域に、電子文書バインダのバージョン、作成者、固定化フラグ、トレーラオフセット、文書オフセットテーブル、さらに登録情報Ｒを記憶するようにしてもよい。
【００６０】
さらに、前記実施形態では、ハッシュ値リストＬを構成する文書特定情報を文書名としたが、これに限らず、識別コード等、識別できるユニーク情報であればよい。
【図面の簡単な説明】
【００６１】
【図１】本発明の実施形態による時刻証明システムを示す図である。
【図２】実施形態による概要を示す図である。
【図３】実施形態による電子文書バインダの構造を示す図である。
【図４】実施形態による電子文書管理サーバの構成を示すブロック図である。
【図５】実施形態による電子文書バインダの登録処理を示す流れ図である。
【図６】実施形態による電子文書バインダの検証処理を示す流れ図である。
【図７】変形例によるファイルシステムを示す図である。
【符号の説明】
【００６２】
１…時刻証明システム、２，２Ａ，２Ｂ，２Ｎ…クライアント端末、３…ＬＡＮ、４…インターネット、５…時刻証明書発行局、１０…電子文書管理サーバ、１１…制御部、１２…記憶部、１３…送受信部、１４…ハッシュ値リスト生成部、１５…メッセージダイジェスト生成部、１６…時刻証明書取得部、１７…暗号化部、１８…挿入部、１９…復号部、２０…改竄検知部、Ｂ…電子文書バインダ、ＢＨ…バインダヘッド、ＢＭ…文書部、ＢＴ…バインダトレーラ、Ｄ…電子文書、Ｌ…ハッシュ値リスト、Ｍ…メッセージダイジェスト、ＴＰ…時刻証明書。
【図１】
2007081784.tif 000003
【図２】
2007081784.tif 000004
【図３】
2007081784.tif 000005
【図４】
2007081784.tif 000006
【図５】
2007081784.tif 000007
【図６】
2007081784.tif 000008
【図７】
2007081784.tif 000009