(57)【要約】【課題】電子文書に対する捏造データの追記や電子文書の削除といった電子文書の偽造及び改ざんを実効的に検出でき、かつ、偽造及び改ざん防止機能を効率的に発揮することが可能な電子文書保護装置等を提供する。【解決手段】入出力部１１により電子文書を入力し、電子署名部１５により電子署名データを生成する。電子署名データは秘密情報として秘密情報格納部１４に格納される。また、ハッシュ値演算部１３により電子文書及び電子署名データからハッシュ値を算出する。ハッシュ値は電子文書に記録され電子文書格納部１２へ格納される。そして、電子文書に追記を行う場合は、電子文書格納部１２から取り出した前回ハッシュ値と、入力した追記データと、秘密情報格納部１４から読み出した電子署名データとから、ハッシュ値演算部１３によりハッシュ値を算出する。ハッシュ値及び追記データは、電子文書に記録され電子文書格納部１２に格納される。【選択図】図１
2008310736.tif 000002
【特許請求の範囲】
【請求項１】
電子文書を含むデータの入出力を行う入出力手段と、
秘密情報を格納する秘密情報格納手段と、
前記入出力手段により入力された電子文書及び前記秘密情報格納手段に格納された秘密情報から、所定のハッシュアルゴリズムに基づいてハッシュ値を演算するハッシュ値演算手段と、
前記ハッシュ値演算手段により演算されたハッシュ値を前記電子文書に記録し該記録電子文書を格納する電子文書格納手段と、
を有することを特徴とする電子文書保護装置。
【請求項２】
前記入出力手段により入力された電子文書に対して管理者の秘密鍵を用いて暗号化を行う電子署名手段を有し、
前記秘密情報格納手段は、前記電子署名手段により暗号化され生成された署名データを秘密情報として格納することを特徴とする請求項１に記載の電子文書保護装置。
【請求項３】
前記秘密情報格納手段は、パスワード、ランダムな文字列を含む管理者のみが知っている情報を秘密情報として格納することを特徴とする請求項１に記載の電子文書保護装置。
【請求項４】
前記入出力手段は、電子文書に対する編集データの入力を受け付けるとともに、該電子文書を含む前記記録電子文書を前記電子文書格納手段から読み出して記録されたハッシュ値を取り出し、
前記ハッシュ値演算手段は、前記入出力手段により入力された編集データと、前記秘密情報格納手段に格納された秘密情報と、前記入出力手段により取り出されたハッシュ値とから、所定のハッシュアルゴリズムに基づいて、前記編集データに対応するハッシュ値を演算することを特徴とする請求項１から３のいずれか１項に記載の電子文書保護装置。
【請求項５】
前記電子文書格納手段は、前記ハッシュ値演算手段により演算された前記編集データに対応するハッシュ値と、前記入出力手段により入力された編集データとを、前記電子文書に記録し該記録電子文書を格納することを特徴とする請求項４に記載の電子文書保護装置。
【請求項６】
保存する内容が最終的に確定した電子文書に対して、信頼された第三者機関から取得したタイムスタンプを付与するタイムスタンプ付与手段を有することを特徴とする請求項５に記載の電子文書保護装置。
【請求項７】
電子文書を含むデータの入出力を行う第１入出力ステップと、
秘密情報を第１格納手段に格納する秘密情報格納ステップと、
前記第１入出力ステップにより入力された電子文書及び前記秘密情報格納ステップにより格納された秘密情報から、所定のハッシュアルゴリズムに基づいてハッシュ値を演算するハッシュ値演算ステップと、
前記ハッシュ値演算ステップにより演算されたハッシュ値を前記電子文書に記録し該記録電子文書を第２格納手段に格納する電子文書格納ステップと、
を有することを特徴とする電子文書保護方法。
【請求項８】
前記第１入出力ステップにより入力された電子文書に対して管理者の秘密鍵を用いて暗号化を行う電子署名ステップを有し、
前記秘密情報格納ステップは、前記電子署名ステップにより暗号化され生成された署名データを秘密情報として格納することを特徴とする請求項７に記載の電子文書保護方法。
【請求項９】
前記秘密情報格納ステップは、パスワード、ランダムな文字列を含む管理者のみが知っている情報を秘密情報として格納することを特徴とする請求項７に記載の電子文書保護方法。
【請求項１０】
電子文書に対する編集データの入力を受け付けるとともに、該電子文書を含む前記記録電子文書を前記第２格納手段から読み出して記録されたハッシュ値を取り出す第２入出力ステップを有し、
前記ハッシュ値演算ステップは、前記第１入出力ステップにより入力された編集データと、前記秘密情報格納ステップにより格納された秘密情報と、前記第２入出力ステップにより取り出されたハッシュ値とから、所定のハッシュアルゴリズムに基づいて、前記編集データに対応するハッシュ値を演算することを特徴とする請求項７から９のいずれか１項に記載の電子文書保護方法。
【請求項１１】
前記電子文書格納ステップは、前記ハッシュ値演算ステップにより演算された前記編集データに対応するハッシュ値と、前記第２入出力ステップにより入力された編集データとを、前記電子文書に記録し該記録電子文書を格納することを特徴とする請求項１０に記載の電子文書保護方法。
【請求項１２】
保存する内容が最終的に確定した電子文書に対して、信頼された第三者機関から取得したタイムスタンプを付与するタイムスタンプ付与ステップを有することを特徴とする請求項１１に記載の電子文書保護方法。
【請求項１３】
電子文書を含むデータの入出力を行う入出力機能と、
秘密情報を第１格納手段に格納する秘密情報格納機能と、
前記入出力機能により入力された電子文書及び前記秘密情報格納ステップにより格納された秘密情報から、所定のハッシュアルゴリズムに基づいてハッシュ値を演算するハッシュ値演算機能と、
前記ハッシュ値演算機能により演算されたハッシュ値を前記電子文書に記録し該記録電子文書を第２格納手段に格納する電子文書格納機能と、
をコンピュータに実現させることを特徴とするプログラム。
【請求項１４】
前記入出力機能により入力された電子文書に対して管理者の秘密鍵を用いて暗号化を行う電子署名機能をコンピュータに実現させ、
前記秘密情報格納機能は、コンピュータに、前記電子署名機能により暗号化され生成された署名データを秘密情報として格納させることを特徴とする請求項１３に記載のプログラム。
【請求項１５】
前記秘密情報格納機能は、コンピュータに、パスワード、ランダムな文字列を含む管理者のみが知っている情報を秘密情報として格納させることを特徴とする請求項１３に記載のプログラム。
【請求項１６】
前記入出力機能は、コンピュータに、電子文書に対する編集データの入力を受け付けさせるとともに、該電子文書を含む前記記録電子文書を前記第２格納手段から読み出させて記録されたハッシュ値を取り出させ、
前記ハッシュ値演算機能は、コンピュータに、前記入出力機能により入力された編集データと、前記秘密情報格納機能により格納された秘密情報と、前記入出力機能により取り出されたハッシュ値とから、所定のハッシュアルゴリズムに基づいて、前記編集データに対応するハッシュ値を演算させることを特徴とする請求項１３から１５のいずれか１項に記載のプログラム。
【請求項１７】
前記電子文書格納機能は、コンピュータに、前記ハッシュ値演算機能により演算された前記編集データに対応するハッシュ値と、前記入出力機能により入力された編集データとを、前記電子文書に記録させ該記録電子文書を格納させることを特徴とする請求項１６に記載のプログラム。
【請求項１８】
保存する内容が最終的に確定した電子文書に対して、信頼された第三者機関から取得したタイムスタンプを付与するタイムスタンプ付与機能をコンピュータに実現させることを特徴とする請求項１７に記載のプログラム。
【請求項１９】
請求項１３から１８に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子文書保護装置、電子文書保護方法、プログラム、及びコンピュータ読み取り可能な記録媒体関し、特に、ログファイルのような頻繁に追記される電子文書に対して効果的かつ効率的に偽造及び改ざんを防止する技術に関するものである。
【背景技術】
【０００２】
従来、電子文書の偽造及び改ざん防止には、電子文書に対して電子署名やタイムスタンプを行うことにより実現される。電子署名では、署名者が自分しか知らない秘密鍵によって署名対象の電子文書を暗号化し、その電子文書を受け取った人が該秘密鍵に対する公開鍵を用いて電子文書の解読を行うことにより、その文書が署名者本人によって署名され、また、改ざんされていないことを検証できる。なお、電子署名では、ハッシュ関数を用いて元のデータを所定の長さの全く異なるデータに変換するハッシュと呼ばれる技術が使われ、通常、ハッシュ関数により電子文書からハッシュ値を生成し、そのハッシュ値を秘密鍵にて暗号化する。
【０００３】
また、タイムスタンプでは、ユーザが電子文書の生成や追記、決済・確定処理を行うごとに、電子文書に対するタイムスタンプをネットワーク上のタイムスタンプサーバ等から取得して保存しておき、該タイムスタンプにより、電子文書の生成や追記、決済・確定を行ったユーザ及び時刻を検証できる。
【０００４】
しかし、従来における電子文書の偽造・改ざん防止技術には、次のような問題点があった。それは、追記されるごとに電子文書に対して電子署名やタイムスタンプ処理を行う場合、追記されるごとに電子文書全体のハッシュ値を算出する必要があるが、電子文書全体のハッシュ値を算出すると偽造及び改ざん防止機能の性能が低下してしまうことである。その理由は、電子文書全体では、データサイズが大きくなってしまい、ハッシュ値算出処理に時間がかかってしまうからである。
【０００５】
例えば特許文献１では、電子文書の存在性及び完全性の検証処理効率の向上、記憶容量の削減を企図した電子検証装置が提案されている。当該発明では、電子文書に追記情報が付されるごとに、追記情報付き電子文書から最新のハッシュ値を生成し、電子文書及びハッシュ値について、追記情報付き電子文書と最新のハッシュ値とで更新し、検証用のハッシュ値と更新した最新のハッシュ値とに基づいて電子文書の改ざんを検証している。
【０００６】
また、例えば特許文献２では、改ざんがされにくく、また、電子文書の変更の履歴により電子文書の正当性や非改ざん性が確実に担保できる電子文書の改ざん防止方法が開示されている。当該発明では、イベントの確定ごとに、イベントの全項目あるいは一部項目の内容と、前回確定時のハッシュ値とから新しいハッシュ値を算出し、日時とともに記憶・保存して、電子文書に対する改ざんの確実な検出を行っている。
【特許文献１】特開２００３−３３３０３８号公報
【特許文献２】特開２００５−１２２４８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献１で提案された電子検証装置では、電子文書に何回も追記がなされても生成されるハッシュ値は更新され以前のハッシュ値は存在せず記憶容量を削減することができるが、ハッシュ値算出にあたり、追記ごとに追記情報付き電子文書にて演算を行っているため、依然としてハッシュ値算出処理に時間がかかってしまう。
【０００８】
特許文献２で開示された改ざん防止方法では、電子文書に対して追記等のイベントごとに改ざん防止を行うことが可能である。しかしながら、該技術には、次のような問題点がある。第１の問題点は、任意の人が追記可能であり、電子文書に捏造されたデータを追記しても検出できないことである。その理由は、電子文書に追記するときに、追記する人を特定する情報が含まれていないからである。第２の問題点は、電子文書を削除しても検出できないことである。その理由は、電子文書に関する情報を別途保存していないからである。
【０００９】
そこで、本発明は、電子文書に対する捏造データの追記や電子文書の削除といった電子文書の偽造及び改ざんを実効的に検出でき、かつ、偽造及び改ざん防止機能を効率的に発揮することが可能な電子文書保護装置等を提供することを目的とする。
【課題を解決するための手段】
【００１０】
かかる目的を達成するために、本発明は、電子文書を含むデータの入出力を行う入出力手段と、秘密情報を格納する秘密情報格納手段と、入出力手段により入力された電子文書及び秘密情報格納手段に格納された秘密情報から、所定のハッシュアルゴリズムに基づいてハッシュ値を演算するハッシュ値演算手段と、ハッシュ値演算手段により演算されたハッシュ値を電子文書に記録し該記録電子文書を格納する電子文書格納手段と、を有することを特徴とする電子文書保護装置である。
【００１１】
本発明では、入出力手段により、偽造及び改ざんの防止対象となる電子文書を入力し、該電子文書署名に対して電子署名を行い、生成した電子署名データを秘密情報として秘密情報格納手段に保存する。また、ハッシュ値演算手段により、電子文書及び秘密情報からハッシュ値を算出し、電子文書に記録して電子文書格納手段へ格納する。そして、この電子文書に追記を行う場合には、電子文書格納手段から取り出した前回記録のハッシュ値と、入出力手段にて入力した追記データと、秘密情報格納手段から読み出した秘密情報とから、ハッシュ値演算手段によりハッシュ値を算出する。算出したハッシュ値及び追記データは、電子文書に記録され電子文書格納手段に格納される。
【００１２】
また、他の態様として、本発明は、電子文書を含むデータの入出力を行う第１入出力ステップと、秘密情報を第１格納手段に格納する秘密情報格納ステップと、第１入出力ステップにより入力された電子文書及び秘密情報格納ステップにより格納された秘密情報から、所定のハッシュアルゴリズムに基づいてハッシュ値を演算するハッシュ値演算ステップと、ハッシュ値演算ステップにより演算されたハッシュ値を電子文書に記録し該記録電子文書を第２格納手段に格納する電子文書格納ステップと、を有することを特徴とする電子文書保護方法であってもよい。
【００１３】
また、他の態様として、本発明は、電子文書を含むデータの入出力を行う入出力機能と、秘密情報を第１格納手段に格納する秘密情報格納機能と、入出力機能により入力された電子文書及び秘密情報格納ステップにより格納された秘密情報から、所定のハッシュアルゴリズムに基づいてハッシュ値を演算するハッシュ値演算機能と、ハッシュ値演算機能により演算されたハッシュ値を電子文書に記録し該記録電子文書を第２格納手段に格納する電子文書格納機能と、をコンピュータに実現させることを特徴とするプログラムであってもよい。
【００１４】
また、他の態様として、本発明は、上記プログラムを記録したコンピュータ読み取り可能な記録媒体であってもよい。
【発明の効果】
【００１５】
本発明によれば、電子文書に対する捏造データの追記や電子文書の削除といった電子文書の偽造及び改ざんを実効的に検出でき、かつ、偽造及び改ざん防止機能を効率的に発揮することが可能な電子文書保護装置等が実現される。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照しながら、本発明の実施形態について説明する。本発明の実施形態として、実施形態１から実施形態３に電子文書保護装置を示し、実施形態４に電子文書保護システムを示して説明する。
【００１７】
［実施形態１］
はじめに、本実施形態の電子文書保護装置の構成について述べる。図１は、本実施形態の電子文書保護装置の機能構成を示したブロック図である。電子文書保護装置１は、入出力部１１、電子文書格納部１２、ハッシュ値演算部１３、秘密情報格納部１４、及び電子署名部１５を備えており、プログラム制御により動作する。
【００１８】
入出力部１１は、保護対象の電子文書と電子文書に追記するデータの入力を受け付ける。また、電子文書保護装置１の管理者がキーボード等から入力した情報（例えば秘密情報等）を受け付ける。そして、入出力部１１は、各部との間でデータのやり取りを行い、本発明における電子文書の保存管理処理についてデータ転送の中継的な役割を果たす。
【００１９】
電子文書格納部１２は、保護対象となる電子文書とハッシュ値演算装置１３で算出されたハッシュ値を入出力部１１から受け取り格納する機能を有する。
【００２０】
ハッシュ値演算装置１３は、入出力部１１から出力された情報から所定のハッシュアルゴリズムによってハッシュ値を計算する機能を有する。所定のハッシュアルゴリズムとは、第三者が同一のハッシュ値を持つデータを探すことが不可能なハッシュアルゴリズムであって、電子文書保護装置１の管理者が任意に選択することができる。また、ハッシュ値演算装置１３にて計算されたハッシュ値は、入出力部１１に入力される。
【００２１】
秘密情報格納部１４は、電子文書保護装置１の管理者のみが保持する秘密情報を格納する機能を有する。なお、本実施形態では、電子文書に対する電子署名により生成した電子署名データを秘密情報としている。
【００２２】
電子署名装置１５は、入出力部１１から出力された情報に対して所定の鍵の公開鍵暗号を用いて電子署名を行う機能を有する。所定の鍵とは、第三者が同一の電子署名データを生成する公開鍵を探すことが不可能な鍵長を持つ秘密鍵であって、電子文書保護装置１の管理者が任意に選択することができる。また、電子署名装置１５にて生成された電子署名データは、入出力部１１に入力される。
【００２３】
次に、本実施形態の電子文書保護装置が行う保存管理の処理動作について述べる。図２は、本実施形態における電子文書の保存管理処理の流れを示したフローチャートで、最初に電子文書を登録した際の処理動作を表している。
【００２４】
まず、入出力部１１は、電子文書保護装置１の管理者の入力を受け付けて保護する電子文書を入力し、該電子文書を電子文書保護装置1に登録する（ステップＳ１０１）。そして、入出力部１１は、電子署名部１５へ登録した電子文書を出力する（ステップＳ１０２）。
【００２５】
次に、電子署名部１５は、入出力部１１から受け取った電子文書に対し、管理者の秘密鍵を用いて暗号化を行って電子署名データを生成する（ステップＳ１０３）。そして、電子署名部１５は、生成した電子署名データを入出力部１１へ出力する（ステップＳ１０４）。
【００２６】
続いて、入出力部１１は、電子署名部１５から受け取った電子署名データを秘密情報格納部１４へ出力し、電子文書の秘密情報として格納する（ステップＳ１０５）。また、入出力部１１は、登録した電子文書と秘密情報として格納した電子署名データとをハッシュ値演算部１３へ出力する（ステップＳ１０６）。
【００２７】
そして、ハッシュ値演算部１３は、入出力部１１から受け取った電子文書及び電子署名データから、所定のハッシュアルゴリズムに基づいて、ハッシュ値を計算する（ステップＳ１０７）。また、ハッシュ値演算部１３は、求めたハッシュ値を入出力部１１へ出力する（ステップＳ１０８）。
【００２８】
次いで、入出力部１１は、ハッシュ値演算部１３から受け取ったハッシュ値と、電子文書とを電子文書格納部１２へ出力する（ステップＳ１０９）。電子文書格納部１２では、入出力部１１から受け取った電子文書及びハッシュ値に対し、電子文書にハッシュ値を記録して格納する。なお、電子文書にハッシュ値を記録する方法としては、ハッシュ値を可視化あるいは非可視化して記録するものを用いる。
【００２９】
図３は、本実施形態における電子文書の保存管理処理の流れを示したフローチャートで、登録した電子文書に対して追記データの付加を行う際の処理動作を表している。
【００３０】
まず、入出力部１１は、電子文書保護装置１の管理者の入力を受け付け、登録した電子文書に対する追記データを入力する（ステップＳ２０１）。
【００３１】
そして、入出力部１１は、追記される電子文書を電子文書格納部１２から読み出し（ステップＳ２０２）、読み出した電子文書に記録されたハッシュ値を取り出す（ステップＳ２０３）。当該ハッシュ値は、電子文書登録時に演算されたもので、前回ハッシュ値である。
【００３２】
次に、入出力部１１は、読み出した電子文書（追記対象の電子文書）に対応する電子署名データを秘密情報格納部１４から読み出す（ステップＳ２０４）。なお、対応する電子署名データを読み出す方法としては、追記対象の電子文書を電子署名部１５へ出力し再度電子署名データを取得して該電子署名データと同一のデータを秘密情報格納部１４から検索する方法や、電子文書登録時の電子署名データを格納する際に登録文書との関連付け情報を付加しておく方法等が考えられる。
【００３３】
続いて、入出力部１１は、入力された追記データと、取り出された前回ハッシュ値と、読み出された電子署名データ（追記対象の電子文書に対応するもの）とをハッシュ値演算部１３へ出力する（ステップＳ２０５）。
【００３４】
そして、ハッシュ値演算部１３は、追記データ、前回ハッシュ値、及び電子署名データから、所定のハッシュアルゴリズムに基づいて、ハッシュ値を計算する（ステップＳ２０６）。また、ハッシュ値演算部１３は、算出したハッシュ値を入出力部１１へ出力する（ステップＳ２０７）。
【００３５】
次いで、入出力部１１は、ハッシュ値演算部１３から受け取ったハッシュ値と、追記データ及び電子文書とを電子文書格納部１２へ出力する（ステップＳ２０８）。電子文書格納部１２では、入出力部１１から受け取った電子文書、追記データ、及びハッシュ値に対して、電子文書に追記データ及びハッシュ値を記録して格納する。なお、ハッシュ値の記録方法としては、先に述べたように、ハッシュ値の可視化あるいは非可視化を行うものを用いる。
【００３６】
次に、本実施形態の電子文書保護装置が行う偽造及び改ざん検証の処理動作について述べる。図４は、本実施形態における電子文書の偽造及び改ざんの検証処理の流れを示したフローチャートである。
【００３７】
まず、はじめに偽造及び改ざんの検証を行う電子文書とその秘密情報を取得し、秘密情報の確認を行う（ステップＳ３０１）。秘密情報の確認は、検証する電子文書の電子署名データと、電子文書保護装置1に電子文書を登録したとき電子署名データとの同一性の確認により行う。
【００３８】
確認できない場合（ステップＳ３０２／ＮＯ）、すなわち双方の電子署名データが同一でない場合は、検証失敗となり検証動作は終了する（ステップＳ３０９）。他方、秘密情報の確認に成功した場合（ステップＳ３０２／ＹＥＳ）、すなわち双方の電子署名データが同一である場合は、登録時の電子文書のデータ確認を行う（ステップＳ３０３）。
【００３９】
電子文書のデータ確認は、電子文書に記録されている登録時のハッシュ値と、登録時の電子文書及び電子署名データから算出したハッシュ値との同一性を確認することにより行う。
【００４０】
確認できない場合（ステップＳ３０４／ＮＯ）、すなわち双方のハッシュ値が同一でない場合は、検証失敗となり検証動作は終了する（ステップＳ３０９）。一方、電子文書のデータ確認に成功した場合（ステップＳ３０４／ＹＥＳ）、すなわち双方のハッシュ値が同一である場合は、追記データが存在するか否かを確認する（ステップＳ３０５）。
【００４１】
追記されているデータが存在しない場合（ステップＳ３０５／ＮＯ）は、電子文書は偽造及び改ざんされていないものとして検証成功となり検証動作を終了する（ステップＳ３０８）。他方、電子文書に追記されたデータが存在する場合（ステップＳ３０５／ＹＥＳ）には、追記データに対するデータ確認を行う（ステップＳ３０７）。
【００４２】
追記データに対するデータ確認は、電子文書のデータ確認と同様に、ハッシュ値の比較により行う。すなわち、電子文書に記録されている追記時のハッシュ値と、追記されたデータ、追記する前のハッシュ値、及び電子署名データから算出されたハッシュ値との同一性を確認することで行う。
【００４３】
確認できなかった場合、すなわち双方のハッシュ値が一致しなかった場合（ステップＳ３０７／ＮＯ）は、検証失敗となり検証動作は終了する（ステップＳ３０９）。一方、一致した場合、すなわち双方のハッシュ値が一致した場合（ステップＳ３０７／ＹＥＳ）は、さらに追記データが存在するか否か確認する（ステップＳ３０５）。そして、追記データが存在しなくなるまで上記処理動作を繰り返す。
【００４４】
本実施形態によれば、電子文書のハッシュ値の算出処理時間を短縮することが可能となる。その理由は、追記するごとに電子文書の全体のハッシュ値を算出するのではなく、電子文書に追記するデータと、前回電子文書に記録されたハッシュ値と、電子署名データとからハッシュ値を算出するためである。ハッシュ値の算出処理時間は、算出対象のデータが大きくなると増加するため、比較的データサイズの小さい追記データと、データサイズが固定されているハッシュ値及び電子署名データからハッシュ値を算出することにより、ハッシュ値算出処理時間を短縮できる。
【００４５】
また、本実施形態によれば、電子文書保護装置の管理者のみが電子文書に追記することが可能となる。その理由は、電子文書に追記する際、秘密情報として管理者の電子署名データを用いて算出したハッシュ値を記録するためである。
【００４６】
また、本実施形態によれば、電子文書保護装置から電子文書が不正に削除されても、その削除行為を検出することが可能となる。その理由は、電子文書に対する秘密情報として、登録時の電子文書の電子署名データを保存しているためである。保存している電子署名データに対する電子文書が存在しない場合、該当する電子文書が削除されたことを検出できる。
【００４７】
［実施形態２］
本実施形態では、電子文書保護装置が確定文書に対してタイムスタンプを付与する手段を備えるもので、保存される電子文書に対してデータ追記することがなくなり最終的に内容が確定したときに、信頼できる第三者機関のタイムスタンプを電子文書に付与する。
【００４８】
本実施形態の電子文書保護装置の機能構成は実施形態１と同様で、第三者機関からタイムスタンプを取得した管理者が入出力部１１により入力し、入力されたタイムスタンプは最終的な内容が確定した電子文書とともに電子文書格納部１２に格納される。なお、タイムスタンプは、電子文書がある時刻に存在していることを認証する情報であり、信頼できる第三者機関（認証機関）によって発行される。
【００４９】
また、本実施形態では、第三者機関等の外部から取得した管理者が入出力部１１により入力するように構成しているが、電子文書保護装置が自らタイムスタンプを生成するようにしてもよいし、後述するように、ネットワーク経由で取得するようにしてもよい。
【００５０】
自装置内でタイムスタンプを生成する構成の場合は、例えば図５に示すように、装置内にタイムスタンプ生成部２１を設け、タイムスタンプ生成部２１が、電子文書保護装置の管理者が入力したタイムスタンプ生成要求に基づいて、タイムスタンプを生成する。また、タイムスタンプ生成部は生成したタイムスタンプを入出力部１１へ出力し、該タイムスタンプは最終的な内容が確定した電子文書とともに電子文書格納部１２に格納される。
【００５１】
次に、本実施形態の電子文書保護装置が行う保存管理及びタイムスタンプ付与の処理動作について述べる。図６は、本実施形態における電子文書の保存管理及びタイムスタンプ付与の処理の流れを示したフローチャートである。
【００５２】
本フローでは、電子文書を登録して保存された（図２のフロー）後の処理を表しており、処理内容のほとんどは追記データを付加する際の流れ（図３のフロー）と共通する。
【００５３】
まず、追記データが存在するか否かを判定し（ステップＳ４０１）、存在する場合（ステップＳ４０１／ＹＥＳ）には、追記データの入力を行うとともに、電子文書格納部１２から追記する電子文書を読み出して記録された前回ハッシュ値を取り出し、秘密情報格納部１４から電子署名データを読み出す（ステップＳ４０２〜ステップＳ４０５）。
【００５４】
続いて、追記データ、前回ハッシュ値、及び電子署名データをハッシュ演算部１３へ出力して、ハッシュ演算部１３によりこれらのデータからハッシュ値を計算し、算出したハッシュ値を入出力部１１へ出力する。そして、入出力部１１は、算出したハッシュ値、入力した追記データ、及び電子文書を電子文書格納部１２へ格納する（ステップＳ４０６〜ステップＳ４０９）。
【００５５】
他方、追記データが存在しない場合（ステップＳ４０１／ＮＯ）は、電子文書の内容が最終的に確定したものとみなして、第三者機関からタイムスタンプを取得して最終確定した電子文書に付与し、電子文書格納部１２に格納する（ステップＳ４１０）。
【００５６】
本実施形態によれば、電子文書保護装置の管理者の不正行為によって電子文書が改ざんされていないことを第三者に対して証明することが可能となる。
【００５７】
［実施形態３］
実施形態１及び実施形態２では電子署名データを秘密情報として用いたが、秘密情報はこれに限られるものではなく、電子文書保護装置の管理者が保持する機密性の高い情報であればよい。すなわち、本実施形態では、秘密情報として、管理者のみが知っているパスワードやランダムな文字列を用いる。電子文書保護装置の機能構成や処理動作の流れについては、電子署名データを用いないことから、機能構成においては電子署名部１５が除かれ、処理フローにおいては電子署名の処理が除かれる。その他については実施形態１及び実施形態２と同様であるため説明を省略する。
【００５８】
なお、管理者が保持する機密性の高い情報としては、管理者のみが知っている情報（パスワード等）のほか、管理者のみしか持ちえない情報も考えられ、該情報を秘密情報として用いてもよい。管理者のみしか持ちえない情報は、指紋、声紋、静脈、網膜といった生体情報が挙げられる。
【００５９】
本実施形態によれば、電子署名装置を搭載する必要がなくなり、また、公開鍵証明書を入手する手間やコストが発生しなくなる。
【００６０】
［実施形態４］
実施形態１から実施形態３は文書電子保護装置をスタンドアローンのコンピュータとして処理を行うものであったが、本実施形態は、実施形態１から実施形態３のいずれかの電子文書保護装置をサーバ装置とし、該サーバ装置と、クライアント端末と、第三者機関サーバとがネットワークを介して接続された電子文書保護システムである。
【００６１】
図７は、本実施形態の電子文書保護システムの構成を示した図である。本実施形態の電子文書保護システムは、電子文書保護サーバ１００、クライアント端末２００〜４００、及び第三者機関サーバ５００から構成される。電子文書保護サーバ１００と、クライアント端末２００〜４００とは、イーサネット（登録商標）等のネットワーク７００で接続され、ＬＡＮ環境が構築されている。また、電子文書保護サーバ１００と、第三者機関サーバ５００とは、インターネット等のネットワーク６００で接続される。
【００６２】
電子文書保護サーバ１００は、実施形態１から実施形態３で述べてきた機能を有し、電子文書の保存管理を行う。クライアント端末２００〜４００は、ユーザにより操作され、電子文書保護サーバ１００内の電子文書の利用を行う。第三者機関サーバ５００は、電子文書保護サーバ１００からのタイムスタンプ取得要求を受信して、タイムスタップを発行し電子文書保護サーバ１００へ送信する。なお、第三者機関サーバ５００は、加害者との結託が不可能な信頼された第三者機関が管理するサーバ装置である。
【００６３】
図８は、本実施形態における電子文書保護サーバの機能構成を示した図である。電子文書保護サーバ１００は、入出力部１１１、電子文書格納部１１２、ハッシュ値演算部１１３、秘密情報格納部１１４、電子署名部１１５、タイムスタンプ取得部１３１、及び送受信部１３２を備える。実施形態１から実施形態３の電子文書保護装置の機能構成と大部分が共通するため、異なる構成であるタイムスタンプ取得部１３１及び送受信部１３２について述べることとする。
【００６４】
タイムスタンプ取得部１３１は、タイムスタンプ取得要求メッセージを生成して入出力部１１１へ出力し、送受信部１３２により、第三者機関サーバ５００からのタイムスタンプを受信する。なお、該メッセージは、電子文書の内容が最終的に確定したときに生成される。
【００６５】
送受信部１３２は、ネットワーク７００を介してクライアント端末２００〜４００からの電子文書を受信して入出力部１１１へ出力する。また、送受信部１３２は、ネットワーク６００を介して第三者機関サーバ５００からのタイムスタンプを受信して入出力部１１１へ出力する。入出力部１１１は、受け取ったタイムスタンプを電子文書とともに電子文書格納部１１２へ格納する。
【００６６】
電子文書保護サーバ１００が行う電子文書の保存管理及びタイムスタンプ付与の処理動作については、実施形態１から実施形態３で述べたものとほぼ同様で、電子文書やタイムスタンプの取得がネットワークを介している点が相違するため説明は省略する。
【００６７】
本実施形態では、ネットワーク環境において効果的かつ効率的に電子文書の偽造及び改ざんを防止することが可能となる。
【００６８】
なお、上述する実施形態は、本発明の好適な実施形態であり、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
【００６９】
すなわち、上記した実施形態の電子文書保護装置は、プログラムの命令によりコンピュータで実行される処理、手段、機能によって動作する。当該プログラムは、コンピュータの各構成要素に指令を送り、先に述べたような所定の処理や機能、例えば、追記データの入力を行うときに、入出力部１１により、電子文書格納部１２からの前回ハッシュ値取り出し、秘密情報格納部１４からの電子署名データ読み出し、諸データ（追記データ、前回ハッシュ値、電子署名データ）のハッシュ値演算部１３への出力を行い、ハッシュ値演算部１３で算出されたハッシュ値及び追記データを電子文書とともに電子文書格納部１２に格納させる処理を行う。このように、上記実施形態の電子文書保護装置における各処理や手段は、プログラムとコンピュータとが協働した具体的手段によって実現されるものである。
【００７０】
そして、上記実施形態の機能を実現するソフトウエアのプログラムコードを記録したコンピュータ読み取り可能な記録媒体、すなわち記憶メディアを介して、電子文書保護装置のコンピュータ（ＣＰＵ）が記憶メディアに格納されたプログラムコードを読み出し実行することによっても、本発明の目的は達成される。
【００７１】
また、プログラムは、記録メディアを介さず、通信回線を通じて直接にコンピュータにロードし実行することもでき、これによっても同様に本発明の目的は達成される。この場合、記憶メディアから読み出された又は通信回線を通じてロードし実行されたプログラムコード自体が前述の実施形態の機能を実現することになる。
【００７２】
そして、そのプログラムコードを記憶した記憶メディアは本発明を構成する。プログラムコードを供給するための記憶メディアとしては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、不揮発性のメモリカード、ＲＯＭ、磁気テープ等を用いることができる。
【図面の簡単な説明】
【００７３】
【図１】本発明の実施形態に係る電子文書保護装置の機能構成を示したブロック図である。
【図２】本発明の実施形態における電子文書の保存管理処理の流れを示したフローチャートである。
【図３】本発明の実施形態における電子文書の保存管理処理の流れを示したフローチャートである。
【図４】本発明の実施形態における電子文書の偽造及び改ざんの検証処理の流れを示したフローチャートである。
【図５】本発明の実施形態に係る電子文書保護装置の機能構成を示したブロック図である。
【図６】本発明の実施形態における電子文書の保存管理処理の流れを示したフローチャートである。
【図７】本発明の実施形態に係る電子文書保護システムの構成を示した図である。
【図８】本発明の実施形態における電子文書保護サーバの機能構成を示したブロック図である。
【符号の説明】
【００７４】
１，２０    電子文書保護装置
１１，１１１    入出力部
１２，１１２    電子文書格納部
１３，１１３    ハッシュ値演算部
１４，１１４    秘密情報格納部
１５，１１５    電子署名部
２１    タイムスタンプ生成部
１００    電子文書保護サーバ
１３１    タイムスタンプ取得部
１３２    送受信部
２００，３００，４００    クライアント端末
５００    第三者機関サーバ
６００，７００    ネットワーク
【図１】
2008310736.tif 000003
【図２】
2008310736.tif 000004
【図３】
2008310736.tif 000005
【図４】
2008310736.tif 000006
【図５】
2008310736.tif 000007
【図６】
2008310736.tif 000008
【図７】
2008310736.tif 000009
【図８】
2008310736.tif 000010