説明

タイムスタンプ付与装置及びタイムスタンプ検証装置

【課題】一つのタイムスタンプが付与されたファイル間の関係を、改竄検知可能に保持することができるタイムスタンプ付与装置を提供する。
【解決手段】スケジューラ部42aは、タイムスタンプ付与対象となる複数の任意ファイルを指定する。ERS管理ファイル作成部42cは、複数の任意ファイル間の関係を含むERS管理ファイルを作成する。タイムスタンプ及びデータファイル受取部42bは、複数の任意ファイル及びERS管理ファイルに対して一つのタイムスタンプの発行要求をタイムスタンプ局5に行い、タイムスタンプ局5が発行したタイムスタンプを通信I/F部41を通じて取得する。ERSファイル作成部42dは、複数の任意ファイル及びERS管理ファイルに対して、タイムスタンプの有効性を検証可能な検証用ファイルをそれぞれ作成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のファイルに対して一つのタイムスタンプの発行要求をタイムスタンプ局に行い、タイムスタンプ局が発行した一つのタイムスタンプを複数のファイルに付与するタイムスタンプ付与装置に関する。また、本発明は、複数のファイルに対して一つ付与されたタイムスタンプの有効性をそれぞれのファイル毎に検証するタイムスタンプ検証装置に関する。
【背景技術】
【0002】
従来、複数のファイル(例えば、データファイル)をまとめたファイルを作成し、このまとめたファイルに対して一つのタイムスタンプの発行要求をタイムスタンプ局に行い、タイムスタンプ局が発行したタイムスタンプを、まとめたファイルに付与していた。
【0003】
しかしながら、従来、タイムスタンプ付与対象である複数のファイルのうちの一つでもファイルが削除されると、タイムスタンプの有効性の検証の際にまとめたファイルを作成することができず、検証の失敗を検出し、タイムスタンプ付与対象のまとめたファイルを構成する全てのファイルの真正性を担保することができなくなる。
【0004】
そこで、タイムスタンプ付与対象となる複数のファイルから一つ以上のファイルが削除された場合でもタイムスタンプの有効性を検証できるようにするために、一つのタイムスタンプを複数のファイルに付与する際にファイルごとに個別にタイムスタンプの有効性を検証可能にするERS規格(RFC4998)が提案されている(例えば、非特許文献1)。
【0005】
図1は、従来のERS規格に対応したタイムスタンプ付与装置及びタイムスタンプ検証装置で用いられるデータファイルとERSファイルとの関係を説明する概念図である。ERS規格に対応したタイムスタンプ付与装置(図示せず)を用いて複数のデータファイル1,2,3,4に一つのタイムスタンプtを付与する場合、タイムスタンプtの生成要素である一つのハッシュ値(ハッシュツリーの頂点となるルートハッシュ)h1234を生成するために、以下の(1)〜(3)の工程を行う。
(1)ハッシュ関数Hを用いて計算されたデータファイル1のハッシュ値h1及びハッシュ関数Hを用いて計算されたデータファイル2のハッシュ値h2をまとめることによって生成されるハッシュ値h12を、ハッシュ関数Hを用いて計算する工程。
(2)ハッシュ関数Hを用いて計算されたデータファイル3のハッシュ値h3及びハッシュ値h12をまとめることによって生成されるハッシュ値h123を、ハッシュ関数Hを用いて計算する工程。
(3)ハッシュ関数Hを用いて計算されたデータファイル4のハッシュ値h4とハッシュ値h123をまとめることによって生成されるハッシュ値(ルートハッシュ)h1234を、ハッシュ関数Hを用いて計算する工程。
【0006】
その後、タイムスタンプ付与装置は、タイムスタンプ局(TSA)aにハッシュ値h1234を送信し、タイムスタンプ局aにタイムスタンプtの生成を要求する。タイムスタンプ局aがハッシュ値h1234を受信すると、タイムスタンプ局aは、タイムスタンプ局aの秘密鍵を使用して電子署名を付与したタイムスタンプ・トークンを生成し、タイムスタンプ付与装置に返信する。
【0007】
タイムスタンプ付与装置がタイムスタンプ・トークンを受け取ると、タイムスタンプ付与装置は、一つのタイムスタンプtをデータファイル1,2,3,4にそれぞれ付与するために、タイムスタンプtをコピーし、タイムスタンプt及び各ファイルのハッシュツリー情報を有する各ファイル用のERSファイルを作成する。ここで、各データファイルのハッシュツリー情報は、自身のハッシュ値(h1又はh2,h3,h4)から最後のハッシュ値(ルートハッシュh1234)を導出するのに必要最小限のハッシュ値を、リストの入れ子構造で保持する。図1に示す概念図においては、[]がリストを表す。また、ERS規格では、自身のハッシュ値を先頭のリストに含め、各リストの要素のハッシュ値は、昇順にソートされる。すなわち、図1におけるハッシュ値は、h1<h2,h12<h3,h123<h4の大小関係にある。
【0008】
したがって、図1に示す概念図では、タイムスタンプ付与装置は、タイムスタンプt及びデータファイル1のハッシュツリー情報[[h1,h2],[h3],[h4]]を有するデータファイル1用のERSファイルと、タイムスタンプt及びデータファイル2のハッシュツリー情報[[h1,h2],[h3],[h4]]を有するデータファイル2用のERSファイルと、タイムスタンプt及びデータハッシュファイル3のハッシュツリー情報[[h12,h3],[h4]]を有するデータファイル3用のERSファイルと、タイムスタンプt及びデータファイル4のハッシュツリー情報[[h123,h4]]を有するデータファイル4用のERSファイルと、を作成する。
【0009】
なお、ERS規格では、ハッシュツリーの構造は任意である。ハッシュツリーの構造により、ルートハッシュを生成する工程が定まり、ハッシュツリー情報で保持されるハッシュ値のリストの構造も定まる。
【0010】
このような各データファイル用のERSファイルを作成することによって、ERS規格に対応したタイムスタンプ検証装置は、タイムスタンプtの有効性を検証したいデータファイル(例えば、データファイル1)及びそれに対応するERSファイル(例えば、データファイル1用のERSファイル)があれば、同じタイムスタンプtが付与された他のデータファイル(例えば、データファイル2)の存在に関係なくタイムスタンプtの有効性を検証することができる。したがって、ERS規格に従ったシステムによれば、各ファイルの保存期間によって影響が及ぼされることなくファイルを処理することができる。
【先行技術文献】
【非特許文献】
【0011】
【非特許文献1】RFC4998:Evidence Record Syntax(ERS)(2007.8)
【発明の概要】
【発明が解決しようとする課題】
【0012】
しかしながら、ERS規格では、他のデータファイルの存在の影響を受けないでタイムスタンプの有効性を検証できる一方で、一つのタイムスタンプが付与されたデータファイル間の関係(例えば、どのデータファイルと一緒にタイムスタンプを付与されたか、データファイル間の順序関係等)を保持する仕組みを有さない。例えば、図1に示す概念図におけるデータファイル1,2,3,4の並びは、ハッシュツリーの構造での末端ノードの配置であり、データファイルの順序とは無関係である。仮に末端ノードとデータファイル1,2,3,4の順序を対応させてハッシュツリーを構築したとしても、その結果として作成されるERSファイル中のハッシュツリー情報ではハッシュ値が昇順でソートされるので、データファイル1,2,3,4間の関係が保持されない。
【0013】
また、ハッシュツリーの構造は任意であるので、ハッシュツリー情報のハッシュ値からハッシュツリーの末端ノードとしてデータファイル1,2,3,4を特定するのが困難である。さらに、ERSファイル中のタイムスタンプが同じデータファイルを特定することはできるが、このように特定されたデータファイルの集合がタイムスタンプ付与時に構築したハッシュツリーの末端ノードと過不足なく一致し、データファイルの追加又は削除が発生したか否かを確認する手段を有しない。
【0014】
本発明の目的は、一つのタイムスタンプが付与されたファイル間の関係を、改竄検知可能に保持することができるタイムスタンプ付与装置を提供することである。
【0015】
本発明の他の目的は、一つのタイムスタンプを付与した複数のファイル間の関係及びファイルの追加又は削除の有無を検証することができ、また、これらの検証の際に、個々のファイルについて従来のERS規格によるタイムスタンプの検証を行う必要がないタイムスタンプ検証装置を提供することである。
【課題を解決するための手段】
【0016】
かかる課題を解決するために、本発明は、複数のファイルに対して一つのタイムスタンプの発行要求をタイムスタンプ局に行い、タイムスタンプ局が発行したタイムスタンプを複数のファイルに付与するタイムスタンプ付与装置であって、タイムスタンプ付与対象となる複数の任意ファイルを指定するファイル指定部と、複数の任意ファイル間の関係を含む管理ファイルを作成する管理ファイル作成部と、複数の任意ファイル及び管理ファイルに対して一つのタイムスタンプの発行要求をタイムスタンプ局に行い、タイムスタンプ局が発行したタイムスタンプを取得するタイムスタンプ取得部と、複数の任意ファイル及び管理ファイルに対して、タイムスタンプの有効性を検証可能な検証用ファイルをそれぞれ作成する検証用ファイル作成部と、を備えることを特徴とするタイムスタンプ付与装置を提供する。これにより、タイムスタンプ付与対象として指定された複数の任意ファイル間の関係を改竄検知可能に保持することができる。
【0017】
かかるタイムスタンプ付与装置において、タイムスタンプ取得部は、複数の任意ファイル及び管理ファイルのハッシュ値を用いてハッシュツリーを生成し、ハッシュツリーの頂点となるルートハッシュである一つのハッシュ値を用いて一つのタイムスタンプの発行要求を行い、検証用ファイル作成部は、タイムスタンプと前記複数の任意ファイルのうちの一つ又は前記管理ファイルに関連するハッシュツリーの情報とを含む前記検証用ファイルを作成するのが好ましい。
【0018】
かかるタイムスタンプ付与装置において、検証用ファイル作成部は、タイムスタンプを取得する度に管理ファイルの識別情報を記憶部に記憶させ、管理ファイル作成部は、複数のファイルにタイムスタンプを順次付与する場合、前回のタイムスタンプ取得時に記憶部に記憶された識別情報を含んだ前記管理ファイルを作成するのが好ましい。これにより、順次付与されるタイムスタンプの間に亘って複数の任意ファイル間の順序関係及び追加・削除の有無の検証が可能になる。
【0019】
また、本発明は、タイムスタンプを付与されたファイルのタイムスタンプの有効性を検証するタイムスタンプ検証装置であって、タイムスタンプが付与された複数の任意ファイルと、複数の任意ファイル間の関係を少なくとも含むタイムスタンプが付与された管理ファイルと、任意ファイル及び管理ファイルに付与されたタイムスタンプの有効性を検証可能な検証用ファイルとを対応付けて記憶する記憶部と、検証要求を受けると、検証対象のファイルとファイルに対応付いている検証用ファイルとからタイムスタンプの有効性を検証して検証結果を出力するタイムスタンプ検証部と、管理ファイルが検証対象とされた場合に、管理ファイルに付与されているタイムスタンプの検証をタイムスタンプ検証部に要求し、要求に対する検証結果が有効であると、複数の任意ファイル間の関係に基づいて任意ファイルを特定して前記記憶部に記憶されているか否かを判断する管理ファイル検証部と、を備えることを特徴とするタイムスタンプ検証装置を提供する。これにより、管理ファイルの内容に基づいて複数の任意ファイルのファイル間の関係の検証を行うことができる。
【0020】
かかるタイムスタンプ検証装置において、管理ファイル検証部は、管理ファイルのハッシュ値に複数の任意ファイルのハッシュ値を複数の任意ファイル間の関係に基づいて連結した連結データを作成し、連結データを含めて要求をタイムスタンプ検証部に行うのが好ましい。これにより、管理ファイルのタイムスタンプの有効性の検証と任意ファイル間の関係の検証と共に任意ファイルの改竄検知を行うことができ、個々の任意ファイルについてのタイムスタンプの検証を代替することができる。
【0021】
かかるタイムスタンプ検証装置において、管理ファイルは、複数の任意ファイルのハッシュ値を更に有し、管理ファイル検証部は、要求に対する検証結果が有効であるときに、管理ファイルに含まれる任意ファイルのハッシュ値と、記憶部に記憶された任意ファイルから計算したハッシュ値とを比較し、比較の結果を、任意ファイルに付与されたタイムスタンプの有効性の検証結果とするのが好ましい。これにより、任意ファイルの改竄検知を行うことができ、個々の任意ファイルについてのタイムスタンプの有効性の検証を代替することができる。
【発明の効果】
【0022】
本発明のタイムスタンプ付与装置によれば、一つのタイムスタンプが付与されたファイル間の関係を、改竄検知可能に保持することができる。
【0023】
本発明のタイムスタンプ検証装置によれば、一つのタイムスタンプを付与した複数のファイル間の関係及びファイルの追加又は削除の有無の検証を行うことができ、また、これらの検証の際に、個々のファイルについて従来のERS規格によるタイムスタンプの検証を行う必要がない。
【図面の簡単な説明】
【0024】
【図1】従来のERS規格に対応したタイムスタンプ付与装置及びタイムスタンプ検証装置で用いられるデータファイルとERSファイルとの関係を説明する概念図である。
【図2】本発明によるタイムスタンプ付与装置及びタイムスタンプ検証装置が用いられる電子署名システムの構成図である。
【図3】図2の電子署名サーバで用いられるデータファイルとERS管理ファイルとERSファイルとの関係を説明する概念図である。
【図4】図2の電子署名システムのデータファイル管理システムに記憶されるデータの形式の一例を示す図である。
【図5】図2の電子署名サーバのタイムスタンプ付与処理フローチャートである。
【図6】図2の電子署名サーバのタイムスタンプ検証処理フローチャートである。
【図7】図2の電子署名システムのデータファイル管理システムに記憶されるデータの形式の他の例を示す図である。
【発明を実施するための形態】
【0025】
本発明によるタイムスタンプ付与装置及びタイムスタンプ検証装置の実施の形態を、図面を参照しながら説明する。
本発明によるタイムスタンプ付与装置は、タイムスタンプ付与対象として指定される複数の任意ファイル間の関係を含む管理ファイルを作成し、複数の任意ファイル及び管理ファイルに対して一つのタイムスタンプを取得し、複数の任意ファイル及び管理ファイルに対して、タイムスタンプの有効性を検証可能な検証用ファイルをそれぞれ作成する装置である。
【0026】
本発明によるタイムスタンプ検証装置は、タイムスタンプ検証対象となるタイムスタンプが付与された任意ファイル及び管理ファイルと、任意ファイル及び管理ファイルに付与されたタイムスタンプの有効性を検証可能な検証用ファイルとを対応付けて記憶し、複数の任意ファイル間の関係を含む管理ファイルに付与されたタイムスタンプの有効性の検証を、管理ファイルの検証用ファイルより行い、この検証結果に応じて複数の任意ファイル間の関係の検証を実行する装置である。
【0027】
図2は、本発明によるタイムスタンプ付与装置及びタイムスタンプ検証装置が用いられる電子署名システムの構成図である。図2に示す電子署名システムは、例えば、社内システムに適用され、ユーザ端末1と、業務システム2と、データファイル保管システム3と、電子署名サーバ4と、タイムスタンプ局5と、通信ネットワーク6と、を有する。
【0028】
図2に示すシステムでは、ユーザ端末1は、通信ネットワーク6を介して業務システム2にアクセスしてデータファイルを作成し、作成したデータファイルをデータファイル保管システム3に保管する。また、電子署名サーバ4は、後に説明するように、予め設定されたスケジュールに従って、データファイル保管システム3に保管されたデータファイルにタイムスタンプを付与し、付与されたタイムスタンプの検証を行う。
【0029】
ユーザ端末1は、業務システム2にアクセスしてデータファイルの作成のような各種業務処理を行うための操作等を実行する環境をユーザに提供する。このために、ユーザ端末1は、例えば、パーソナルコンピュータ(PC)によって構成される。また、ユーザ端末1は、通信ネットワーク6を通じて業務システム2、データファイル保管システム3及び電子署名サーバ4との通信を行う通信I/F部11と、ユーザ端末1の各種制御を行う制御部12と、各種業務を実施するための入力を行う入力部13と、各種業務処理等を実施するための画面を表示する表示部14と、制御部12で使用する各種制御情報等を記憶する記憶部15と、を有する。
【0030】
通信I/F部11は、所定の通信プロトコルで通信を行う通信インタフェース及びドライバから構成される。制御部12は、CPU,ROM,RAM等から構成され、ユーザ端末1の制御全般についてプログラムに従って処理を行う。入力部13は、マウス、キーボード等によって構成される。表示部14は、LCD等によって構成される。記憶部15は、フラッシュメモリ、EEPROM等の書換え自在の不揮発性メモリ、磁気ハードディスク、書換え自在の光ディスク及びそのドライブ等によって構成される。
【0031】
業務システム2は、ユーザ端末1での操作に応じて各種業務処理を実行し、処理結果に基づいてデータファイルを作成する。このために、業務システム2は、ユーザ端末1のサーバシステムとして構成され、通信ネットワーク6を通じてユーザ端末1、データファイル保管システム3及び電子署名サーバ4との通信を行う通信I/F部21と、業務システム2の各種制御を行う制御部22と、制御部22で使用する各種制御情報等を記憶する記憶部23と、を有する。
【0032】
通信I/F部21は、所定の通信プロトコルで通信を行う通信インタフェース及びドライバから構成される。制御部22は、CPU,ROM,RAM等から構成され、業務システム2の制御全般についてプログラムに従って処理を行う。このために、制御部22は、ユーザ端末1での操作に応じた業務処理を実行する業務処理部22aと、業務処理部22aの処理結果に基づいてデータファイルを作成するデータファイル作成部22bと、を有する。記憶部23は、フラッシュメモリ、EEPROM等の書換え自在の不揮発性メモリ、磁気ハードディスク、書換え自在の光ディスク及びそのドライブ等によって構成される。
【0033】
データファイル保管システム3は、ユーザ端末1での操作に応じて業務システム2で作成されたデータファイルと、電子署名サーバ4で作成された後に説明するERSファイル、ERS管理ファイル及びERS終端ファイルを保管する。このために、データファイル保管システム3は、通信ネットワーク6を通じてユーザ端末1、業務システム2及び電子署名サーバ4との通信を行う通信I/F部31と、データファイル保管システム3の各種制御を行う制御部32と、上述したデータファイル、ERSファイル、ERS管理ファイル及びERS終端ファイルの他に、制御部32で使用する各種制御情報等を記憶する記憶部33と、を有する。
【0034】
通信I/F部31は、所定の通信プロトコルで通信を行う通信インタフェース及びドライバから構成される。制御部32は、CPU,ROM,RAM等から構成され、データファイル保管システム3の制御全般についてプログラムに従って処理を行う。記憶部33は、フラッシュメモリ、EEPROM等の書換え自在の不揮発性メモリ、磁気ハードディスク、書換え自在の光ディスク及びそのドライブ等によって構成される。
【0035】
電子署名サーバ4は、複数のファイルに対して一つのタイムスタンプの発行要求をタイムスタンプ局5に行い、タイムスタンプ局5が発行したタイムスタンプを複数のファイルに付与する本発明におけるタイムスタンプ付与装置として機能する。また、電子署名サーバ4は、複数のファイルに対して付与された一つのタイムスタンプの有効性をファイル毎に検証する本発明におけるタイムスタンプ検証装置としても機能する。このために、電子署名サーバ4は、通信ネットワーク6を通じてユーザ端末1、業務システム2、データファイル保管システム3及びタイムスタンプ局5との通信を行う通信I/F部41と、電子署名サーバ4の各種制御を行う制御部42と、上述したデータファイル、ERSファイル、ERS管理ファイル及びERS終端ファイルの他に、制御部42で使用する各種制御情報等を記憶する記憶部43と、を有する。なお、本実施の形態では、電子署名サーバ4はERS規格に対応する。
【0036】
通信I/F部41は、所定の通信プロトコルで通信を行う通信インタフェース及びドライバから構成される。制御部42は、CPU,ROM,RAM等から構成され、電子署名サーバ4の制御全般についてプログラムに従って処理を行う。このために、制御部42は、本発明のファイル指定部として動作するスケジューラ部42aと、タイムスタンプ及びファイル受取部42bと、ERS管理ファイル作成部42cと、ERSファイル作成部42dと、電子署名付与部42eと、電子署名検証部42fと、ファイル送出部42gと、タイムスタンプ検証部42hと、ERS管理ファイル検証部42iと、を有する。
【0037】
スケジューラ部42aは、予め設定されたスケジュールの設定時刻に従い、データファイル保管システム3の記憶部33に記憶されている複数のデータファイルを取得し、一つのタイムスタンプを付与するトリガ、及び、タイムスタンプが付与されたデータファイルのタイムスタンプを検証するトリガを与える。具体的には、スケジューラ部42aは、タイムスタンプの取得をタイムスタンプ及びファイル受取部42bに要求するとともに、タイムスタンプの検証をタイムスタンプ検証部42hに要求する。
【0038】
タイムスタンプ及びファイル受取部42bは、スケジューラ部42aからの要求に応じてERS管理ファイル作成部42c及びERSファイル作成部42dと連携することによって、通信I/F部41を通じてタイムスタンプを取得する。すなわち、タイムスタンプ及びファイル受取部42bは、通信I/F部41を介してタイムスタンプの発行要求をタイムスタンプ局5に行い、タイムスタンプ局5が発行したタイムスタンプを取得する。この一連の処理は、本発明のタイムスタンプ取得部の処理に相当する。
【0039】
また、タイムスタンプ及びファイル受取部42bは、スケジューラ部42aによって指定されるタイムスタンプ付与対象となる複数の任意ファイルとしての複数のデータファイルを、通信I/F部41を通じて記憶部33から取得する。したがって、通信I/F部41及びタイムスタンプ及びファイル受取部42bは、記憶部33に記憶された複数のデータファイルのうちのタイムスタンプ付与対象となる複数のデータファイルを受け取り、一つのタイムスタンプを付与するために当該複数のデータファイルを記憶部43に一時的に格納する。
【0040】
ERS管理ファイル作成部42cは、タイムスタンプ及びファイル受取部42bからの要求に応じて、タイムスタンプ付与対象となる複数のデータファイル間の関係の一種である順序関係を少なくとも含むERS管理ファイルを作成する。ここでいう順序関係とは、データファイル保管システム3の記憶部33にデータファイルが登録された時系列順を示す情報のことである。具体的には、順序関係を示す情報は、タイムスタンプ付与の対象となるデータファイルのファイル名を記憶部33への登録順に列挙したテキスト形式で示した情報である。
【0041】
複数のデータファイル間の関係は、本実施の形態のような順序関係以外に、複数のデータファイル間に上位下位の階層関係がある場合の当該階層関係を示す情報、複数のデータファイルが種々のグループに区分けされている場合の当該グループ構成、単に一つのタイムスタンプが付与される複数のデータファイル名を全て列挙したもの等であってもよい。
【0042】
また、ERS管理ファイル作成部42cは、順序関係を示す情報に後述するERS終端ファイルに記憶された情報を加えたERS管理ファイルを作成する。なお、ERS管理ファイルの削除等を検出するためにERS管理ファイルにERS終端ファイルの情報を加えているので、ERS管理ファイルの削除等を考慮する必要がなければERS管理ファイルにERS終端ファイルの情報を加える必要はない。
【0043】
ここで、ERS終端ファイルについて説明する。ERS終端ファイルは、ERS管理ファイル作成部42cによりタイムスタンプを付与する度に更新されるファイルである。すなわち、ERS管理ファイル作成部42cは、タイムスタンプを付与した際に、作成したERS管理ファイルのファイル名及び当該ERS管理ファイルの内容のハッシュ値をERS終端ファイルに記録する。この際、ERS管理ファイル作成部42cは、ERS終端ファイルに既にファイル名等が記録されていればERS終端ファイルを上書き更新する。これにより、ERS終端ファイルには、タイムスタンプを付与した直近のERS管理ファイルのファイル名等が常に記録されている。さらに、ERS管理ファイル作成部42cは、作成したERS終端ファイルに、後述する電子署名付与部42eにより電子署名サーバ4の秘密鍵で電子署名を付与し、電子署名が付与されたERS終端ファイルを記憶部43に記憶させる。また、ERS管理ファイル作成部42cは、ERS管理ファイルを作成する際に記憶部43に記憶されているERS終端ファイルを取得すると、後述する電子署名検証部42fにて電子署名の検証ができたことを条件にERS管理ファイルの作成を行う。
【0044】
ERSファイル作成部42dは、タイムスタンプ付与対象となる複数のデータファイル及びERS管理ファイルに対して、タイムスタンプの有効性を検証可能な検証用ファイルとしてのERSファイルをそれぞれ作成する。
【0045】
電子署名付与部42eは、ERS管理ファイル作成部42cからの要求に応じて、ERS終端ファイルに電子署名を付与する。電子署名検証部42fは、ERS管理ファイル作成部42cからの要求に応じて、ERS終端ファイルに付与された電子署名を検証する。
【0046】
ファイル送出部42gは、一つのタイムスタンプが付与された複数のデータファイル及びERS管理ファイルを記憶部33に格納するために、一つのタイムスタンプが付与された複数のデータファイル、ERS管理ファイル、それぞれのERSファイル及びERS終端ファイルを通信I/F部41を通じてデータファイル保管システム3に送出する。
【0047】
タイムスタンプ検証部42hは、スケジューラ部42aからの要求に応じて、処理対象のファイルとそのファイルのERSファイルを用いてタイムタイムスタンプの検証を行う。ERS管理ファイル検証部42iは、タイムスタンプ検証部42hからのデータファイル間の関係も検証する旨の要求に応じて、ERS管理ファイルの検証を行う。そのとき、ERS管理ファイル検証部42iは、タイムスタンプ検証部42hに対して、ERS管理ファイル及びERS管理ファイルのERSファイルを用いたタイムスタンプの検証を要求する。
【0048】
記憶部43は、フラッシュメモリ、EEPROM等の書換え自在の不揮発性メモリ、磁気ハードディスク、書換え自在の光ディスク及びそのドライブ等によって構成される。
【0049】
タイムスタンプ局5は、電子署名サーバ4からのタイムスタンプ生成要求に応じて、タイムスタンプ局5の秘密鍵を使用して電子署名を付与したタイムスタンプ・トークンを生成し、電子署名サーバ4に返信する。このために、タイムスタンプ局5は、通信ネットワーク6を通じて電子署名サーバ4との通信を行う通信I/F部51と、タイムスタンプ局5の各種制御を行う制御部52と、制御部52で使用する各種制御情報等を記憶する記憶部53と、を有する。
【0050】
通信I/F部51は、所定の通信プロトコルで通信を行う通信インタフェース及びドライバから構成される。制御部52は、CPU,ROM,RAM等から構成され、タイムスタンプ局5の制御全般についてプログラムに従って処理を行う。記憶部53は、フラッシュメモリ、EEPROM等の書換え自在の不揮発性メモリ、磁気ハードディスク、書換え自在の光ディスク及びそのドライブ等によって構成される。
【0051】
通信ネットワーク6は、ユーザ端末1、業務システム2、データファイル保管システム3、電子署名サーバ4及びタイムスタンプ局5に接続される。このために、通信ネットワーク6は、専用回線、インターネット、携帯電話回線、一般公衆回線等の遠隔地間又は屋内の離れた場所間でデータの送受信が可能となる通信回線によって構成される。
【0052】
図3は、図2の電子署名サーバで用いられるデータファイルとERS管理ファイルとERSファイルとの関係を説明する概念図である。電子署名サーバ4を用いて複数のデータファイル1,2,3に一つのタイムスタンプt’を付与する場合、データファイル1,2,3の関係(例えば、順序関係)を記録したERS管理ファイルが作成され、タイムスタンプt’の生成要素である一つのハッシュ値(ハッシュツリーの頂点となるルートハッシュ)h123Rを生成するために、図1に示す概念図を用いて説明したルートハッシュを計算するための上記(1)及び(2)の工程の次に、以下の(3)’の工程を行う。
(3)ハッシュ関数Hを用いて計算されたERS管理ファイルのハッシュ値hR及びハッシュ値h123をまとめることによって生成されるハッシュ値(ルートハッシュ)h123Rを、ハッシュ関数Hを用いて計算する工程。
【0053】
その後、電子署名サーバ4は、タイムスタンプ局5に対応するタイムスタンプ局(TSA)aにハッシュ値h123Rを送信し、タイムスタンプ局aにタイムスタンプt’の生成を要求する。タイムスタンプ局aがハッシュ値h123Rを受信すると、タイムスタンプ局aは、タイムスタンプ局aの秘密鍵を使用して電子署名を施したタイムスタンプ・トークンを生成し、電子署名サーバ4に返信する。
【0054】
電子署名サーバ4がタイムスタンプ・トークンを受け取ると、電子署名サーバ4は、一つのタイムスタンプt’をデータファイル1,2,3及びERS管理ファイルにそれぞれ付与するために、タイムスタンプt’をコピーし、タイムスタンプt’及び各ファイルのハッシュ値h1,h2,h3,hRからルートハッシュh123Rを導出するのに必要なハッシュツリー情報を有する各ファイル用のERSファイルを作成する。
【0055】
したがって、図3に示す概念図では、電子署名サーバ4は、タイムスタンプt’及びデータファイル1のハッシュツリー情報[[h1,h2],[h3],[hR]]を有するデータファイル1用のERSファイルと、タイムスタンプt’及びデータファイル2のハッシュツリー情報[[h1,h2],[h3],[hR]]を有するデータファイル2用のERSファイルと、タイムスタンプt’及びデータハッシュファイル3のツリー情報[[h12,h3],[hR]]を有するデータファイル3用のERSファイルと、タイムスタンプt’及びERS管理ファイルのハッシュツリー情報[[h123,hR]]を有するERS管理ファイル用のERSファイルと、を作成する。
なお、図3におけるハッシュ値は、h1<h2,h12<h3,h123<hRの大小関係にある。
【0056】
このような各データファイル及びERS管理ファイル用のERSファイルを作成することによって、ERS規格に対応したタイムスタンプ検証装置は、複数のデータファイル1,2,3及びERS管理ファイルに付与されたタイムスタンプt’の有効性を、データファイルかERS管理ファイルかを区別することなくそれぞれ検証することができる。
【0057】
図4は、図2の電子署名システムのデータファイル保管システム3に記憶されるデータの形式の一例を示す図である。図4において、複数のデータファイルに対応する任意ファイル1,2,3のERS管理ファイルが管理ファイルAに対応し、任意ファイル1,2,3及び管理ファイルAに一つのタイムスタンプとしてタイムスタンプAが付与され、これら任意ファイル1,2,3及び管理ファイルAに対して、タイムスタンプAを含む検証用ファイル1,2,3,AがERSファイルとしてそれぞれ作成される。
【0058】
同様に、図4において、複数のデータファイルに対応する任意ファイル4,5のERS管理ファイルが管理ファイルBに対応し、任意ファイル4,5及び管理ファイルBに一つのタイムスタンプとしてタイムスタンプBが付与され、これら任意ファイル4,5及び管理ファイルBに対して、タイムスタンプBを含む検証用ファイル4,5、BがERSファイルとしてそれぞれ作成される。
【0059】
次に、図5を参照して、図2の電子署名サーバ4のタイムスタンプ付与処理フローについて説明する。なお、以下に説明する処理フローは、制御部42で実行されるプログラムによって制御される。
【0060】
図2の電子署名サーバ4は、スケジューラ部42aがタイムスタンプの取得をタイムスタンプ及びファイル受取部42bに要求することによって、タイムスタンプの付与の処理フローを開始する。この際、スケジューラ部42aは、処理対象(タイムスタンプ付与対象)となる複数のデータファイル(複数の任意ファイル)と複数のデータファイル間の関係を指定する。
【0061】
先ず、タイムスタンプ及びファイル受取部42bは、処理対象となる複数のデータファイルをデータファイル保管システム3から取得し、取得した複数のデータファイルを記憶部43に格納する(ステップS1)。
【0062】
ここで、処理対象となる複数のデータファイルを取得できなかった場合は、タイムスタンプ及びファイル受取部42bは、システムエラーとしてデータファイル取得処理の失敗を記憶部43に記録し、処理フローを終了する。
【0063】
次に、タイムスタンプ及びファイル受取部42bがERS管理ファイルの作成をERS管理ファイル作成部42cに要求すると、ERS管理ファイル作成部42cは、ERS終端ファイルをデータファイル保管システム3から取得し、取得したERS終端ファイルを記憶部43に格納する(ステップS2)。
【0064】
ここで、ERS終端ファイルを取得できなかった場合は、ERS管理ファイル作成部42cは、システムエラーとしてERS終端ファイル取得処理の失敗を記憶部43に記録し、処理フローを終了する。
【0065】
次に、ERS管理ファイル作成部42cは、ERS終端ファイルの署名検証を電子署名検証部42fに要求する(ステップS3)。要求を受けた電子署名検証部42fは、ERS終端ファイルの署名検証を実行し、ERS終端ファイルの署名検証に成功したか否かを判断する(ステップS4)。署名検証に失敗した場合、電子署名検証部42fは、署名検証処理の失敗を記憶部43に記録し(ステップS5)、処理フローを終了する。
【0066】
それに対し、署名検証に成功した場合、ERS管理ファイル作成部42cは、ERS終端ファイルにERS管理ファイルが記録済みであるか否か、すなわち、初めてタイムスタンプの付与を行うか否かを判断する(ステップS6)。ERS終端ファイルにERS管理ファイルが記録済みである場合、ERS管理ファイル作成部42cは、記録されたERS管理ファイルをファイル保管システム3から取得し、取得したERS管理ファイルを記憶部43に格納する(ステップS7)。
【0067】
ここで、ERS管理ファイルを取得できなかった場合は、ERS管理ファイル作成部42cは、ERS管理ファイルの削除の可能性を示すと共にシステムエラーとしてERS管理ファイル取得処理の失敗を記憶部43に記録し、処理フローを終了する。次に、ERS管理ファイル作成部42cは、取得したERS管理ファイルを記憶部43に格納し、取得したERS管理ファイルのハッシュ値とERS終端ファイル内に記録されているハッシュ値とが一致するか否か判断する(ステップS8)。
【0068】
取得したERS管理ファイルのハッシュ値とERS終端ファイル内に記録されているハッシュ値とが一致しない場合、ERS管理ファイル作成部42cは、取得したERS管理ファイルが置き換えられていることを検出したことになり、ハッシュ値の不一致を記憶部43に記録し(ステップS9)、処理フローを終了する。
【0069】
それに対し、取得したERS管理ファイルのハッシュ値とERS終端ファイル内に記録されているハッシュ値とが一致する場合、ERS管理ファイル作成部42cは、処理対象のデータファイル及び取得したERS終端ファイルから新たなERS管理ファイルを作成する(ステップS10)。一方、ステップS6でERS終端ファイルにERS管理ファイルが記録されていないと判断された場合、ステップS10に進むが、このときには、ERS管理ファイル作成部42cは、処理対象のデータファイルから新たなERS管理ファイルを作成する。
【0070】
次に、ERS管理ファイル作成部42cは、ERS終端ファイルを更新するために、新たなERS管理ファイルの情報を記録したERS終端ファイルを作成する(ステップS11)。具体的には、ERS管理ファイル作成部42cは、ERS終端ファイルを作成し、作成したERS終端ファイルへの電子署名の付与を電子署名付与部42eに要求する。
【0071】
次に、要求を受けた電子署名付与部42eは、電子署名サーバ4の秘密鍵でERS終端ファイルに電子署名を付与し、電子署名付与済みの終端ファイルを記憶部43に格納する。
【0072】
次に、ERS管理ファイル作成部42cは、新たなERS管理ファイルのハッシュ値に処理対象の複数のデータファイルのハッシュ値をデータファイル間の関係によるデータ順に連結した連結ハッシュデータを作成する(ステップS12)。次に、タイムスタンプ及びファイル受取部42bは、処理対象の複数のデータファイルのハッシュ値と連結ハッシュデータを用いてハッシュツリーを作成する(ステップS13)。
【0073】
次に、タイムスタンプ及びファイル受取部42bは、作成したハッシュツリーのルートハッシュに対するタイムスタンプ作成をタイムスタンプ局5に要求し、ルートハッシュに対するタイムスタンプをタイムスタンプ局5から取得する(ステップS14)。
【0074】
ここで、ルートハッシュに対するタイムスタンプをタイムスタンプ局5から取得しなかった場合は、タイムスタンプ及びファイル受取部42bは、システムエラーとしてタイムスタンプ取得処理の失敗を記憶部43に記録し、処理フローを終了する。
【0075】
次に、ERSファイル作成部42dは、各データファイルのハッシュ値及び連結ハッシュデータに対応した各データファイル及びERS管理ファイルに対するERSファイルを、ハッシュツリー及びタイムスタンプから作成し、作成した全てのERSファイルを記憶部43に格納する(ステップS15)。
【0076】
次に、ファイル送出部42gは、新たなERS管理ファイル及び全てのERSファイル及び電子署名付与済みのERS終端ファイルを通信I/F部41を通じてデータファイル保管システム3に送信し(ステップS16)、処理フローを終了する。なお、データファイル保管システム3は、電子署名サーバ4から受け取った新たなERS管理ファイル及び全てのERSファイルを、記憶部33に格納する。また、データファイル保管システム3は、電子署名サーバ4から受け取ったERS終端ファイルを、記憶部33に格納したERS終端ファイルに上書きして保存する。図5に示す処理フローにおいて、例えば、処理対象として、図4に示す任意ファイル1,2,3を指定した場合、新たなERS管理ファイルとして管理ファイルAが作成され、任意ファイル1,2,3及び管理ファイルAのERSファイルとして検証用ファイル1,2,3、Aがそれぞれ作成される。
【0077】
図5に示す処理フローによれば、複数のデータファイル間の関係を含む管理ファイルとしてERS管理ファイルを作成するとともに、複数のデータファイル及びERS管理ファイルに対して一つのタイムスタンプを付与し、タイムスタンプの有効性を検証可能な検証用ファイルとしてERSファイルをそれぞれ作成している。このように管理ファイルに対するERSファイルを作成することによって、一つのタイムスタンプが付与されたデータファイル間の関係を、改竄検知可能に保持することができる。
【0078】
次に、図6を参照して、図2の電子署名サーバ4のタイムスタンプ検証処理フローについて説明する。なお、以下に説明する処理フローは、制御部42で実行されるプログラムによって制御される。
【0079】
図2の電子署名サーバ4は、スケジューラ部42aがタイムスタンプの検証をタイムスタンプ検証部42hに要求することによって、タイムスタンプの検証の処理フローを開始する。この際、スケジューラ部42aは、処理対象(タイムスタンプ検証対象)となるデータファイル(任意ファイル)を指定する。
【0080】
先ず、タイムスタンプ及びファイル受取部42bは、処理対象となるデータファイルをデータファイル保管システム3から取得し、取得したデータファイルを記憶部43に格納する(ステップS101)。
【0081】
ここで、処理対象となるデータファイルを取得できなかった場合は、タイムスタンプ及びファイル受取部42bは、システムエラーとしてデータファイル取得処理の失敗を記憶部43に記録し、処理フローを終了する。次に、タイムスタンプ検証部42hは、データファイル間の順序関係を検証するか指定されたか否か判断する(ステップS102)。
【0082】
データファイル間の順序関係を検証しない場合、タイムスタンプ及びファイル受取部42bは、処理対象となるデータファイルの検証用ファイルとしてのERSファイルをデータファイル保管システム3から取得し、タイムスタンプ検証部42hは、取得したデータファイル及びそれに対応するERSファイルに基づいて、それぞれのデータファイルのタイムスタンプの有効性の検証処理(既存のERS規格のタイムスタンプ検証処理)を実行し、処理対象として指定された全てのデータファイルについてタイムスタンプの有効性の検証処理を行い(ステップS103)、処理フローを終了する。
【0083】
一方、ステップS102でデータファイル間の順序関係を検証すると判断した場合、タイムスタンプ検証部42hは、処理対象として指定されたデータファイルに対応するERS管理ファイルの検証をERS管理ファイル検証部42iに要求し、これ以降、ERS管理ファイル検証部42iが主体的に処理を行う。
【0084】
ERS管理ファイル検証部42iは、処理対象のデータファイル中で順序が最後のもののファイル名が記録されたERS管理ファイル及び当該ERS管理ファイルのERSファイルを、データファイル保管システム3から取得し、ERS管理ファイル及びERSファイルを記憶部43に格納する(ステップS104)。すなわち、複数のタイムスタンプに亘ってデータファイル間に順序がある場合、その中で最新のタイムスタンプが付与されたERS管理ファイル及び当該ERS管理ファイルのERSファイルを取得する。
【0085】
ここで、ERS管理ファイル及びERSファイルを取得できなかった場合は、ERS管理ファイル検証部42iは、ERS管理ファイル及びERSファイル取得処理の失敗を記憶部43に記録し、処理フローを終了する。
【0086】
次に、ERS管理ファイル検証部42iは、取得したERS管理ファイルに処理対象のデータファイル中で順序が最初のもののファイル名が記録されているか否か判断する(ステップS105)。
【0087】
ERS管理ファイルに処理対象のデータファイル中で順序が最初のもののファイル名が記録されていない場合、ERS管理ファイル検証部42iは、取得したERS管理ファイルに記録されている1回前に作成されたERS管理ファイル及び当該ERS管理ファイルのERSファイルを、データファイル保管システム3から取得する(ステップS106)。
【0088】
ここで、1回前に作成されたERS管理ファイル及びERSファイルを取得できなかった場合は、ERS管理ファイル検証部42iは、1回前に作成されたERS管理ファイル及びERSファイル取得処理の失敗を記憶部43に記録し、処理フローを終了する。
【0089】
次に、ERS管理ファイル検証部42iは、ERS管理ファイルに記録されている1回前に作成されたERS管理ファイルのハッシュ値と、実際に取得した1回前に作成されたERS管理ファイルのハッシュ値とが一致するか否か判断する(ステップS107)。
【0090】
ERS管理ファイルに記録されている1回前に作成されたERS管理ファイルのハッシュ値と、実際に取得した1回前に作成されたERS管理ファイルのハッシュ値とが一致しない場合、ERS管理ファイル検証部42iは、ハッシュ値の不一致を記憶部43に記録し(ステップS108)、処理フローを終了する。
【0091】
それに対し、ERS管理ファイルに記録されている1回前に作成されたERS管理ファイルのハッシュ値と、実際に取得した1回前に作成されたERS管理ファイルのハッシュ値とが一致する場合、ステップS105に戻る。
【0092】
一方、ステップS105でERS管理ファイルに処理対象のデータファイル中で順序が最初のもののファイル名が記録されていると判断した場合、ERS管理ファイル検証部42iは、取得した全てのERS管理ファイルについて、それぞれの連結ハッシュデータを作成し(ステップS109)、ERS管理ファイルのタイムスタンプの有効性の検証処理(既存のERS規格のタイムスタンプ検証処理)をタイムスタンプ検証部42hに要求して実行し(ステップS110)、ERS管理ファイルのタイムスタンプの有効性の検証に成功したか否か判断する(ステップS111)。ここで行われるERS管理ファイルのタイムスタンプの有効性の検証処理において、タイムスタンプ検証部42hは、ERS管理ファイル及び当該ERS管理ファイルのERSファイルと連結ハッシュデータを入力とし、ERS管理ファイルのERSファイルに含まれるハッシュツリー情報を使ってルートハッシュを再現し、再現したルートハッシュがタイムスタンプにあるハッシュ値と一致するか否か確認する。再現したルートハッシュがタイムスタンプにあるハッシュ値と一致する場合、タイムスタンプ検証部42hは、検証が成功したと判断し、その結果を出力する。それに対し、再現したルートハッシュがタイムスタンプにあるハッシュ値と一致しない場合、タイムスタンプ検証部42hは、検証が失敗したと判断し、その結果を出力する。
【0093】
なお、ERS管理ファイルのERSファイルのハッシュツリー情報には連結ハッシュデータが含まれている。そのため、ERS管理ファイルのERSファイルに含まれるハッシュツリー情報を使ってルートハッシュを再現する場合、タイムスタンプ検証部42hは、ERS管理ファイルのハッシュ値ではなく入力された連結ハッシュデータを用いる。また、連結ハッシュデータには、ERS管理ファイルのハッシュ値とデータファイルのハッシュ値とが含まれている。連結ハッシュデータの作成に必要なデータファイルが不足している場合、ERS管理ファイル検証部42iは、追加のデータファイルをデータファイル保管システム3から取得する。
【0094】
ERS管理ファイルのタイムスタンプの有効性の検証に失敗した場合、ERS管理ファイル検証部42iは、管理ファイルのタイムスタンプの有効性の検証の失敗を記憶部43に記録し(ステップS112)、処理フローを終了する。それに対し、ERS管理ファイルのタイムスタンプの有効性の検証に成功した場合、ERS管理ファイル検証部42iは、全てのERS管理ファイルについてデータファイルのタイムスタンプの有効性の検証処理を行ったか否か判断する(ステップS113)。
【0095】
全てのERS管理ファイルについてタイムスタンプの有効性の検証処理を行っていない場合、ステップS109に戻る。それに対し、全てのERS管理ファイルについてタイムスタンプの有効性の検証処理を行った場合、ERS管理ファイル検証部42iは、処理対象のデータファイルの追加、削除又は順序の入替えを確認し(ステップS114)、処理対象のデータファイルの追加、削除又は順序の入替えが発生していないか否かを、取得した全てのERS管理ファイルの内容に基づいて判断する(ステップS115)。具体的には、ERS管理ファイルに記録されていないデータファイルがデータファイル保管システム3に記憶されていたり、ERS管理ファイルに記録されているデータファイルがデータファイル保管システム3から削除されていたり、ファイル名にも作成日時などの時系列情報を含む場合にファイル名を変更することによって順序の入替えが行われていたり、等を確認し、処理対象のデータファイルの追加、削除又は順序の入替えの発生を判断する。なお、各データファイルの改竄検知は、連結ハッシュデータでの処理に加え、再度タイムスタンプ検証部42hに検証要求をしてもよい。
【0096】
処理対象のデータファイルの追加、削除又は順序の入替えが発生していない場合、ERS管理ファイル検証部42iは、処理対象のデータファイルの追加、削除又は順序の入替えが発生していないことを記憶部43に記録し(ステップS116)、処理フローを終了する。
【0097】
それに対し、処理対象のデータファイルの追加、削除又は順序の入替えが発生している場合、ERS管理ファイル検証部42iは、処理対象のデータファイルの追加、削除又は順序の入替えが発生していることを記憶部43に記録し(ステップS117)、処理フローを終了する。
【0098】
図6に示す処理フローによれば、複数の任意ファイルに対するERS管理ファイルに付与されたタイムスタンプの有効性の検証を、ERS管理ファイルの検証用ファイルとしてのERSファイルより行い、検証に成功するとERS管理ファイルの真正性が担保される。すなわち、ERS管理ファイルが有する複数の任意ファイル間の関係が担保される。これによって、一つのタイムスタンプを付与した複数の任意ファイル間の関係及びファイルの追加又は削除の有無を検証することができる。また、管理ファイルに付与されたタイムスタンプの有効性の検証処理中に任意ファイルのハッシュ値による改竄検知が含まれるため、個々の任意ファイルについて従来のERS規格によるタイムスタンプの検証を行う必要がなくなる。このように、複数の任意ファイル間の関係を保持しながらファイルの追加、削除又は順序の入替を検知することができるので、電子署名システムのセキュリティ性を向上させることができる。
【0099】
ここで、ERS管理ファイルの別様式での実施の形態を説明する。別様式のERS管理ファイルには、上述したERS管理ファイルと同様に、タイムスタンプ付与対象となる複数の任意ファイル間の関係に従って所定の規則でファイル名が列挙されるとともに、前回のタイムスタンプ付与時に作成したERS管理ファイルのファイル名及びERS管理ファイルの内容のハッシュ値が記録されている。
【0100】
別様式のERS管理ファイルには、これらに加え、任意ファイルの一部分に対しての順序関係のチェックを含めた検証処理を効率よく行うために、さらに複数の任意ファイルのハッシュ値がそれぞれのファイル名と対応付けられて記録される。
【0101】
この別様式のERS管理ファイルを用いる場合、ERS管理ファイルのハッシュ値に任意ファイルのハッシュ値を連結させた連結ハッシュデータを用いなくてもよい。ERS管理ファイルのハッシュ値に任意ファイルのハッシュ値を連結させた連結ハッシュデータを用いない場合、図5に示す処理フローでは、連結ハッシュデータを作成するステップS12が省略され、ステップS13において、タイムスタンプ及びファイル受取部42bは、処理対象のデータファイルとERS管理ファイルの各ハッシュ値を末端ノードに持つハッシュツリーを作成し、ステップS15において、ERSファイル作成部42dは、各ファイルのハッシュ値に対応した各データファイル及びERS管理ファイルに対するERSファイルを、ハッシュツリー及びタイムスタンプから作成し、作成した全てのERSファイルを記憶部43に格納する。
【0102】
また、この別様式のERS管理ファイルのハッシュ値に任意ファイルのハッシュ値を連結させた連結ハッシュデータを用いない場合、図6に示す処理フローでは、連結ハッシュデータを作成するステップS109が省略され、ERS管理ファイル検証部42iは、取得した全てのERS管理ファイルの各々についてERS管理ファイルのタイムスタンプの有効性の検証処理(既存のERS規格のタイムスタンプ検証処理)を、ERS管理ファイル及び当該ERS管理ファイルのERSファイルを指定してからタイムスタンプ検証部42hに要求して実行する。検証に成功した場合は、ERS管理ファイル中の任意ファイルのハッシュ値と、実際に取得した任意ファイルから計算して得られるハッシュ値とを比較し、一致することを確認し、任意ファイルの改竄検知を行う。
【0103】
本発明は、上記実施の形態に限定されるものではなく、幾多の変更及び変形が可能である。例えば、本発明によるタイムスタンプ付与装置及びタイムスタンプ検証装置としての電子署名サーバを有する電子署名システムを社内システムに適用する場合について説明したが、社内システム以外のシステムに対しても、本発明によるタイムスタンプ付与装置及びタイムスタンプ検証装置としての電子署名サーバを有する電子署名システムを適用することができる。また、任意ファイルとしてデータファイル以外のファイルを用いることもできる。
【0104】
また、上記実施の形態において、ERS規格に対応したタイムスタンプ付与装置及びタイムスタンプ検証装置を用いる場合について説明したが、ERS規格以外の規格又は標準技術に対応したタイムスタンプ付与装置及びタイムスタンプ検証装置を用いることができる。
【0105】
ERS規格以外の規格又は標準技術に対応したタイムスタンプ付与装置及びタイムスタンプ検証装置を用いる場合、例えば、電子署名システムのデータファイル保管システム3に記憶されるデータの形式の他の例を表す図7に示すように、タイムスタンプAが付与された任意ファイル1,2,3及び管理ファイルAに対して、検証用ファイル1,2,3,Aが、タイムスタンプAから独立した形でそれぞれ作成されてもよい。
【0106】
同様に、図7において、タイムスタンプBが付与された任意ファイル4,5及び管理ファイルBに対して、検証用ファイル4,5、Bが、タイムスタンプBから独立した形でそれぞれ作成されてもよい。
【0107】
すなわち、任意ファイル1,2,3及び管理ファイルAと、検証用ファイル1,2,3Aと、タイムスタンプAとを対応付けてデータファイル保管システム3及び記憶部43に記憶させ、任意ファイル4,5及び管理ファイルBと、検証用ファイル4,5,Bと、タイムスタンプBとを対応付けてデータファイル保管システム3及び記憶部43に記憶させることができる。
【0108】
また、タイムスタンプ処理を行ったシステムを明確にして情報の信頼性を向上させるために、データファイル及び管理ファイルのハッシュツリーを作成する前に各ファイルに電子署名システムの秘密鍵で電子署名を付与することもでき、各ファイルの電子署名の検証を、タイムスタンプ検証処理と併せて行うこともできる。また、データファイルについては、データファイル作成者による電子署名が付与されていてもよい。
【0109】
また、上記実施の形態において、タイムスタンプ付与対象又はタイムスタンプ検証対象となる任意ファイルを指定するためにスケジューラ部42aを用いる場合について説明したが、ユーザ端末1からのユーザ入力に応じてタイムスタンプ付与対象又はタイムスタンプ検証対象となる任意ファイルを指定するユーザ入力受信部を制御部42に設けることもできる。この場合、ファイル送出部42gは、タイムスタンプ付与装置によって生成されるERS管理ファイル及び各ファイルのERSファイル(検証用ファイル)や、タイムスタンプ検証装置によって出力される処理対象のデータファイルの追加、削除又は順序の入替えが発生しているか否かの情報を、通信I/F部41を通じてユーザ端末1に送信することもできる。
【0110】
また、タイムスタンプ付与対象又はタイムスタンプ検証対象となる任意ファイルをファイルの生成規則に基づいて指定するファイル指定部を、制御部42に設けることもできる。また、タイムスタンプ付与対象として指定された複数の任意ファイル間の関係を指定するためにスケジューラ部42aを用いる場合について説明したが、上述した任意ファイルの指定と合わせてファイル間の関係をユーザ端末1からのユーザ入力に応じて指定し又はファイルの生成規則から指定することができる。さらに、検証対象の管理ファイルを直接指定することも、ある任意ファイルを指定し、その任意ファイルから関係する管理ファイルを特定して指定することもできる。
【符号の説明】
【0111】
1 ユーザ端末
2 業務システム
3 データファイル保管システム
4 電子署名サーバ
5,a タイムスタンプ局
6 通信ネットワーク
11,21,31,41,51 通信インタフェース(I/F)部
12,22,32,42,52 制御部
13 入力部
14 表示部
15,23,33,43,53 記憶部
22a 業務処理部
22b データファイル作成部
42a スケジューラ部
42b タイムスタンプ及びファイル受取部
42c ERS管理ファイル作成部
42d ERSファイル作成部
42e 電子署名付与部
42f 電子署名検証部
42g ファイル送出部
42h タイムスタンプ検証部
42i ERS管理ファイル検証部
t,t’ タイムスタンプ

【特許請求の範囲】
【請求項1】
複数のファイルに対して一つのタイムスタンプの発行要求をタイムスタンプ局に行い、前記タイムスタンプ局が発行した当該タイムスタンプを前記複数のファイルに付与するタイムスタンプ付与装置であって、
タイムスタンプ付与対象となる複数の任意ファイルを指定するファイル指定部と、
前記複数の任意ファイル間の関係を含む管理ファイルを作成する管理ファイル作成部と、
前記複数の任意ファイル及び前記管理ファイルに対して一つのタイムスタンプの発行要求を前記タイムスタンプ局に行い、前記タイムスタンプ局が発行した当該タイムスタンプを取得するタイムスタンプ取得部と、
前記複数の任意ファイル及び前記管理ファイルに対して、前記タイムスタンプの有効性を検証可能な検証用ファイルをそれぞれ作成する検証用ファイル作成部と、
を備えることを特徴とするタイムスタンプ付与装置。
【請求項2】
前記タイムスタンプ取得部は、前記複数の任意ファイル及び前記管理ファイルのハッシュ値を用いてハッシュツリーを生成し、ハッシュツリーの頂点となるルートハッシュである一つのハッシュ値を用いて前記一つのタイムスタンプの発行要求を行い、
前記検証用ファイル作成部は、前記タイムスタンプと前記複数の任意ファイルのうちの一つ又は前記管理ファイルに関連するハッシュツリーの情報とを含む前記検証用ファイルを作成する請求項1に記載のタイムスタンプ付与装置。
【請求項3】
前記検証用ファイル作成部は、前記タイムスタンプを取得する度に前記管理ファイルの識別情報を記憶部に記憶させ、
前記管理ファイル作成部は、複数のファイルにタイムスタンプを順次付与する場合、前回のタイムスタンプ取得時に前記記憶部に記憶された前記識別情報を含んだ前記管理ファイルを作成する請求項1又は2に記載のタイムスタンプ付与装置。
【請求項4】
タイムスタンプを付与されたファイルの前記タイムスタンプの有効性を検証するタイムスタンプ検証装置であって、
前記タイムスタンプが付与された複数の任意ファイルと、前記複数の任意ファイル間の関係を少なくとも含む前記タイムスタンプが付与された管理ファイルと、前記任意ファイル及び前記管理ファイルに付与されたタイムスタンプの有効性を検証可能な検証用ファイルとを対応付けて記憶する記憶部と、
検証要求を受けると、検証対象のファイルと当該ファイルに対応付いている検証用ファイルとからタイムスタンプの有効性を検証して検証結果を出力するタイムスタンプ検証部と、
前記管理ファイルが検証対象とされた場合に、当該管理ファイルに付与されているタイムスタンプの検証を前記タイムスタンプ検証部に要求し、当該要求に対する検証結果が有効であると、前記複数の任意ファイル間の関係に基づいて任意ファイルを特定して前記記憶部に記憶されているか否かを判断する管理ファイル検証部と、
を備えることを特徴とするタイムスタンプ検証装置。
【請求項5】
前記管理ファイル検証部は、前記管理ファイルのハッシュ値に前記複数の任意ファイルのハッシュ値を前記複数の任意ファイル間の関係に基づいて連結した連結データを作成し、当該連結データを含めて前記要求を前記タイムスタンプ検証部に行う請求項4に記載のタイムスタンプ検証装置。
【請求項6】
前記管理ファイルは、前記複数の任意ファイルのハッシュ値を更に有し、
前記管理ファイル検証部は、前記要求に対する検証結果が有効であるときに、前記管理ファイルに含まれる任意ファイルの前記ハッシュ値と、前記記憶部に記憶された当該任意ファイルから計算したハッシュ値とを比較し、当該比較の結果を、当該任意ファイルに付与された前記タイムスタンプの有効性の検証結果とする請求項4又は5に記載のタイムスタンプ検証装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2013−46288(P2013−46288A)
【公開日】平成25年3月4日(2013.3.4)
【国際特許分類】
【出願番号】特願2011−183672(P2011−183672)
【出願日】平成23年8月25日(2011.8.25)
【出願人】(000108085)セコム株式会社 (596)
【Fターム(参考)】