(57)【特許請求の範囲】
【請求項１】
少なくとも、正確且つ公正な時刻を刻む基準時計と、当該基準時計の時刻情報を配信するためのネットワークに接続可能なタイムサーバ、および、当該基準時計の時刻に由来した時刻情報を含む電子署名を実施するためのネットワークに接続可能なタイムスタンプサーバからなる時刻認証機関と、ネットワークに接続可能でタイムスタンプ生成ソフトウエアがインストールされているクライアントの情報処理装置とを用いてなるタイムスタンプ方法であり、
クライアントが当該情報処理装置で作業しているディジタルデータへのタイムスタンプを実施するにあたり、前記タイムスタンプ生成ソフトウエアを起動すると、タイムスタンプ生成ソフトウエアはタイムスタンプ対象のディジタルデータ自体、あるいは当該ディジタルデータのダイジェスト値を計算して、その結果をネットワーク経由で前記時刻認証機関に送信し、前記時刻認証機関は受信した前記タイムスタンプ対象のディジタルデータまたはダイジェスト値に対して、少なくとも前記タイムサーバが有する前記基準時計に由来する時刻情報と、前記タイムスタンプ対象のディジタルデータのダイジェスト値からなるタイムスタンプ情報を、前記時刻認証機関の所有する秘密鍵で暗号化したタイムスタンプトークンを生成すると共に、当該タイムスタンプトークンをクライアントの情報処理装置に返信し、且つ、タイムスタンプ生成ソフトウエアは前記タイムスタンプ対象のディジタルデータに前記タイムスタンプトークンを追加するか、あるいは、あらかじめ生成しておいた電子署名埋め込み領域に埋め込むことにより、一元化されたタイムスタンプが実施されたディジタルデータを作成、保存するタイムスタンプ方法において、
前記タイムスタンプ生成ソフトウエアがインストールされている情報処理装置を用いて、タイムスタンプ対象のディジタルデータに対してタイムスタンプ生成ソフトウエアでタイムスタンプ処理を行うと、タイムスタンプ生成ソフトウエアはタイムスタンプ対象のディジタルデータの複製を複数生成し、生成された複数のディジタルデータそれぞれに対して、情報処理装置の内部時計が示している時刻を基準として、任意の時間数を単位時間とする連続的に異なった複数の時刻情報を、任意の位置、サイズ、書体、または、あらかじめ定められた位置、サイズ、書体で可視化して書き込むことにより、複数の異なる時刻情報が可視化されたディジタルデータを作成し、これ等全てのディジタルデータを前記情報処理装置の記憶装置に保存すると共に、複数の異なる時刻情報が可視化されたディジタルデータそれぞれのダイジェスト値を計算して、計算された複数のダイジェスト値全てをネットワーク経由で前記時刻認証機関に送信することを特徴とするディジタルデータタイムスタンプ方法。
【請求項２】
前記タイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置が、生成された複数のディジタルデータそれぞれに書き込む、連続的に異なる時刻情報の単位時間を、１秒または１分とすることを特徴とする請求項１に記載のディジタルタイムスタンプ方法。
【請求項３】
前記タイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置は、タイムスタンプ対象のディジタルデータおよびその複製を元にして作成された、前記異なる時刻情報が可視化されて書き込まれている複数のディジタルデータと、書き込まれた当該時刻情報を、事後読み出し可能な情報形態で上記情報処理装置の記録装置、または当該情報処理装置に接続可能な外部記憶装置に保存して、複数の異なる時刻情報が可視化されたディジタルデータそれぞれのダイジェスト値を計算し、計算された複数のダイジェスト値全てをネットワーク経由で前記時刻認証機関に送信する一方、
前記時刻認証機関は、受信した異なる時刻情報が可視化されて書き込まれている複数のディジタルデータのダイジェスト値全てに対して、当該ダイジェスト値群を最初に受信開始した前記基準時計に由来する時刻情報を含む前記タイムスタンプトークンを生成し、当該タイムスタンプトークンに、タイムスタンプトークンに含まれる時刻情報、または当該タイムスタンプトークンを復号するための公開鍵の少なくともひとつを添付して、クライアントのタイムスタンプトークン生成ソフトウエアがインストールされている情報処理装置にネットワーク経由で返信すると共に、
前記タイムスタンプ生成ソフトウエアがインストールされている情報処理装置は、受信した複数のタイムスタンプトークンそれぞれに添付されている時刻情報、または公開鍵を使ってタイムスタンプトークンを復号することで得られる時刻情報を読み出し、情報処理装置の記憶装置あるいは接続されている外部記憶装置に保存されている複数の時刻情報を可視化したディジタルデータの中から、当該受信した時刻情報が一致する時刻情報が書き込まれている時刻情報を可視化したディジタルデータのみを読み出して、当該タイムスタンプトークンを前記電子署名埋め込み領域に埋め込み保存し、その他の時刻情報が書き込まれている時刻情報を可視化したディジタルデータおよび対応するタイムスタンプトークンは削除することを特徴とする請求項１に記載のディジタルタイムスタンプ方法。
【請求項４】
前記タイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置は、タイムスタンプ対象のディジタルデータおよびその複製を元にして作成された、異なる時刻情報が可視化されて書き込まれている複数の時刻情報を可視化したディジタルデータと、それぞれの時刻情報を可視化したディジタルデータに書き込まれている時刻情報とを関連付けて情報処理装置の記憶装置、または当該情報処理装置に接続可能な外部記憶装置に保存し、
複数の異なる時刻情報が可視化されたディジタルデータそれぞれのダイジェスト値を計算し、計算された複数のダイジェスト値全てに、それぞれの時刻情報を可視化したディジタルデータに書き込まれている時刻情報を読み出し可能な形式で添付してネットワーク経由で時刻認証機関に送信し、
当該時刻認証機関は、受信した時刻情報の内容が読み出し可能な形式で添付されている、異なる時刻情報が可視化されて書き込まれている複数のディジタルデータのダイジェスト値に添付されている時刻情報を読み出し、受信開始した時点での時刻配信機関が所有する正確且つ公正な時計が示していた受信開始した時刻と一致する時刻情報が添付されているダイジェスト値のみに、受信開始した時刻に由来したタイムスタンプトークンを生成し、当該タイムスタンプトークンに読み出し可能な当該ダイジェスト値または時刻情報、あるいは公開鍵の少なくともひとつを添付して、クライアントのタイムスタンプ生成ソフトウエアがインストールされている情報処理装置にネットワーク経由で返信すると共に、
上記のタイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置は、受信したタイムスタンプトークンに添付されている読み出し可能なダイジェスト値または時刻情報を読み取ることによって得られるか、あるいは添付されている公開鍵を使ってタイムスタンプトークンを復号することによって得られるタイムスタンプトークンに含まれているダイジェスト値または時刻情報を読み出し、且つ、保存してある複数の時刻情報を可視化したディジタルデータの中から一致するダイジェスト値、または時刻情報が書き込まれている時刻情報を可視化したディジタルデータを読み出して、当該ディジタルデータの電子署名埋め込み領域にタイムスタンプトークンを埋め込み保存する一方、他の時刻情報を可視化したディジタルデータは削除することを特徴とする請求項１に記載のディジタルタイムスタンプ方法。
【請求項５】
タイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置は、定期的、または、タイムスタンプ生成ソフトウエアが起動される都度、あるいは、毎回タイムスタンプ処理を実施する直前にネットワーク経由で時刻認証機関のタイムサーバに接続し、当該タイムスタンプ生成ソフトウエアがインストールされている情報処理装置の内部時計を前記タイムサーバ由来の時刻情報で校正することを特徴とする請求項１に記載のディジタルタイムスタンプ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディジタルデータの存在と非改ざんを証明するためのディジタルタイムスタンプ方法に関するものであって、具体的には、タイムスタンプが実施されているディジタルデータを情報処理端末で表示しているときに、タイムスタンプに含まれている時刻情報をディジタルデータ上に視認性よく可視化可能な状態に表示できるように工夫した、ディジタルタイムスタンプ方法に関するものである。
【背景技術】
【０００２】
ディジタルデータの存在時刻証明と非改ざん証明を目的としたディジタルタイムスタンプ（以後、タイムスタンプ）の１つの方法として、ＩＥＴＦ（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）が策定したＲＦＣ３１６１「シンプルプロトコル」に代表されるセンタ・サーバ型のディジタルタイムスタンプが実用化されている。
【０００３】
この方法によれば、クライアントはネットワーク経由で時刻認証機関に接続可能であって、タイムスタンプ実行ソフトウエアがインストールされている情報処理端末上で処理中、または、処理が完了したディジタルデータに対してタイムスタンプ処理を行うと、タイムスタンプ生成ソフトウエアはまず当該ディジタルデータに電子署名埋め込み領域を生成し、続いてタイムスタンプ対象のディジタルデータから電子署名埋め込み領域を除いたデータ領域に関するハッシュ値などのダイジェスト値を計算して、当該計算結果のダイジェスト値をネットワーク経由で時刻認証機関に送信する。
【０００４】
次いで、時刻認証機関は受信したタイムスタンプ対象のディジタルデータのダイジェスト値に、時刻認証機関が所有する正確且つ公正な時計に由来する時刻情報と、ディジタルデータのダイジェスト値からなるタイムスタンプ情報を、時刻認証機関が所有する秘密鍵で暗号化したデータであるタイムスタンプトークンを生成し、更に、暗号化されたタイムスタンプトークンを復号するための公開鍵を加えるなどして、クライアントの情報処理装置に返信する。
【０００５】
その後、クライアントの所有する情報処理装置およびタイムスタンプ生成ソフトウエアは、受信した暗号化されたタイムスタンプトークンをタイムスタンプ対象のディジタルデータに埋め込んで保存する。
【０００６】
その結果、タイムスタンプが実施されているディジタルデータは、タイムスタンプ検証ソフトウエアがインストールされている情報処理装置上で、そのデータが存在していた時刻およびその後対象ディジタルデータには一切変更または改ざんがなされていないことが立証できる。すなわち、タイムスタンプ検証ソフトウエアを起動し、タイムスタンプが実施されているディジタルデータを検証すると、タイムスタンプ検証ソフトウエアはディジタルデータに埋め込まれているタイムスタンプトークンを抽出し、添付されている公開鍵または別途取得した公開鍵によって復号し、時刻認証機関の所有する時計に由来したタイムスタンプ処理を実施した時刻情報を読み出すことで、当該ディジタルデータが公的に存在していた時刻を知ることができる。
【０００７】
次に、ディジタルデータの電子署名埋め込み領域を除いた領域に関するダイジェスト値を計算し、タイムスタンプトークンに含まれているダイジェスト値と比較する。その結果が一致すれば当該ディジタルデータはタイムスタンプを実施して以降、なんら変更、改ざんなどが行われていないことが立証できる。
【０００８】
近年、以上のような仕組のディジタルタイムスタンプ方法でタイムスタンプを実施したディジタルデータ上に、タイムスタンプを実施した時刻を可視化して記載したいとの要望が生じた。
【０００９】
そこで、ディジタルデータ上へのタイムスタンプに含まれる時刻情報を表示するための書き込み、およびその検証方法として、本出願人は既に特許文献１を提案している。特許文献１では、まず、ディジタルデータ上にタイムスタンプに含まれる時刻情報を可視化するために、時刻認証機関に送信するダイジェスト値は、ディジタルデータ上の時刻情報を表示するための書き込み領域をダイジェスト値計算の対象外として計算する。また、タイムスタンプの検証の際、通常のタイムスタンプの検証に加えて、ディジタルデータ上に表示するために書き込まれている時刻情報とタイムスタンプトークンに含まれている時刻情報を比較する手段を設けることができる。
【００１０】
この方法により、対象ディジタルデータにタイムスタンプに含まれている時刻情報を可視化することが可能となると共に、何らかの手段でディジタルデータ上に可視化されている時刻情報を変更または改ざんしたとしても、その行為を検出することが可能となった。
【特許文献１】特願２００３−３９１７１８
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、前述の方法は、ディジタルデータ上に可視化された時刻情報の領域をダイジェスト値計算の対象外としたり、検証の際、ディジタルデータ上に書き込まれている時刻情報とタイムスタンプトークンに含まれている時刻情報を比較する必要があるなど、やや複雑な仕組みが必要である。また、タイムスタンプ処理対象のディジタルデータが画像データである場合には、通常圧縮処理が施されており、画像中の特定の箇所をダイジェスト値の対象外領域にすることが困難であるため、特許文献１に記載の発明をそのまま適用できない場合がある。
【００１２】
したがって、本発明の技術的課題は、昨今の情報処理装置の処理速度の高速化と一時記憶装置の容量の大型化を鑑みて、より単純、且つ、フォーマットに依存しない方法で、ディジタルデータ上にタイムスタンプに含まれる時刻情報を可視化して表示することができるディジタルスタンプ方法を提供することである。
【課題を解決するための手段】
【００１３】
（１）  上記の技術的課題を解決するために、本発明の請求項１に係るディジタルタイムスタンプ方法は、少なくとも、正確且つ公正な時刻を刻む基準時計と、当該基準時計の時刻情報を配信するためのネットワークに接続可能なタイムサーバ、および、当該基準時計の時刻に由来した時刻情報を含む電子署名を実施するためのネットワークに接続可能なタイムスタンプサーバからなる時刻認証機関と、ネットワークに接続可能でタイムスタンプ生成ソフトウエアがインストールされているクライアントの情報処理装置とを用いてなるタイムスタンプ方法であり、クライアントが当該情報処理装置で作業しているディジタルデータへのタイムスタンプを実施するにあたり、前記タイムスタンプ生成ソフトウエアを起動すると、タイムスタンプ生成ソフトウエアはタイムスタンプ対象のディジタルデータ自体、あるいは当該ディジタルデータのダイジェスト値を計算して、その結果をネットワーク経由で前記時刻認証機関に送信し、前記時刻認証機関は受信した前記タイムスタンプ対象のディジタルデータまたはダイジェスト値に対して、少なくとも前記タイムサーバが有する前記基準時計に由来する時刻情報と、前記タイムスタンプ対象のディジタルデータのダイジェスト値からなるタイムスタンプ情報を、前記時刻認証機関の所有する秘密鍵で暗号化したタイムスタンプトークンを生成すると共に、当該タイムスタンプトークンをクライアントの情報処理装置に返信し、且つ、タイムスタンプ生成ソフトウエアは前記タイムスタンプ対象のディジタルデータに前記タイムスタンプトークンを追加するか、あるいは、あらかじめ生成しておいた電子署名埋め込み領域に埋め込むことにより、一元化されたタイムスタンプが実施されたディジタルデータを作成、保存するタイムスタンプ方法において、前記タイムスタンプ生成ソフトウエアがインストールされている情報処理装置を用いて、タイムスタンプ対象のディジタルデータに対してタイムスタンプ生成ソフトウエアでタイムスタンプ処理を行うと、タイムスタンプ生成ソフトウエアはタイムスタンプ対象のディジタルデータの複製を複数生成し、生成された複数のディジタルデータそれぞれに対して、情報処理装置の内部時計が示している時刻を基準として、任意の時間数を単位時間とする連続的に異なった複数の時刻情報を、任意の位置、サイズ、書体、または、あらかじめ定められた位置、サイズ、書体で可視化して書き込むことにより、複数の異なる時刻情報が可視化されたディジタルデータを作成し、これ等全てのディジタルデータを前記情報処理装置の記憶装置に保存すると共に、複数の異なる時刻情報が可視化されたディジタルデータそれぞれのダイジェスト値を計算して、計算された複数のダイジェスト値全てをネットワーク経由で前記時刻認証機関に送信することを特徴としている。
【００１４】
（２）  また、本発明の請求項２に係るディジタルタイムスタンプ方法は、前記タイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置が、生成された複数のディジタルデータそれぞれに書き込む、連続的に異なる時刻情報の単位時間を、１秒または１分とすることを特徴としている。
【００１５】
（３）  また、本発明の請求項３に係るディジタルタイムスタンプ方法は、前記タイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置は、タイムスタンプ対象のディジタルデータおよびその複製を元にして作成された、前記異なる時刻情報が可視化されて書き込まれている複数のディジタルデータと、書き込まれた当該時刻情報を、事後読み出し可能な情報形態で上記情報処理装置の記録装置、または当該情報処理装置に接続可能な外部記憶装置に保存して、複数の異なる時刻情報が可視化されたディジタルデータそれぞれのダイジェスト値を計算し、計算された複数のダイジェスト値全てをネットワーク経由で前記時刻認証機関に送信する一方、前記時刻認証機関は、受信した異なる時刻情報が可視化されて書き込まれている複数のディジタルデータのダイジェスト値全てに対して、当該ダイジェスト値群を最初に受信開始した前記基準時計に由来する時刻情報を含む前記タイムスタンプトークンを生成し、当該タイムスタンプトークンに、タイムスタンプトークンに含まれる時刻情報、または当該タイムスタンプトークンを復号するための公開鍵の少なくともひとつを添付して、クライアントのタイムスタンプトークン生成ソフトウエアがインストールされている情報処理装置にネットワーク経由で返信すると共に、前記タイムスタンプ生成ソフトウエアがインストールされている情報処理装置は、受信した複数のタイムスタンプトークンそれぞれに添付されている時刻情報、または公開鍵を使ってタイムスタンプトークンを復号することで得られる時刻情報を読み出し、情報処理装置の記憶装置あるいは接続されている外部記憶装置に保存されている複数の時刻情報を可視化したディジタルデータの中から、当該受信した時刻情報が一致する時刻情報が書き込まれている時刻情報を可視化したディジタルデータのみを読み出して、当該タイムスタンプトークンを前記電子署名埋め込み領域に埋め込み保存し、その他の時刻情報が書き込まれている時刻情報を可視化したディジタルデータおよび対応するタイムスタンプトークンは削除することを特徴としている。
【００１６】
（４）  また、本発明の請求項４に係るディジタルタイムスタンプ方法は、前記タイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置は、タイムスタンプ対象のディジタルデータおよびその複製を元にして作成された、異なる時刻情報が可視化されて書き込まれている複数の時刻情報を可視化したディジタルデータと、それぞれの時刻情報を可視化したディジタルデータに書き込まれている時刻情報とを関連付けて情報処理装置の記憶装置、または当該情報処理装置に接続可能な外部記憶装置に保存し、複数の異なる時刻情報が可視化されたディジタルデータそれぞれのダイジェスト値を計算し、計算された複数のダイジェスト値全てに、それぞれの時刻情報を可視化したディジタルデータに書き込まれている時刻情報を読み出し可能な形式で添付してネットワーク経由で時刻認証機関に送信し、当該時刻認証機関は、受信した時刻情報の内容が読み出し可能な形式で添付されている、異なる時刻情報が可視化されて書き込まれている複数のディジタルデータのダイジェスト値に添付されている時刻情報を読み出し、受信開始した時点での時刻配信機関が所有する正確且つ公正な時計が示していた受信開始した時刻と一致する時刻情報が添付されているダイジェスト値のみに、受信開始した時刻に由来したタイムスタンプトークンを生成し、当該タイムスタンプトークンに読み出し可能な当該ダイジェスト値または時刻情報、あるいは公開鍵の少なくともひとつを添付して、クライアントのタイムスタンプ生成ソフトウエアがインストールされている情報処理装置にネットワーク経由で返信すると共に、上記のタイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置は、受信したタイムスタンプトークンに添付されている読み出し可能なダイジェスト値または時刻情報を読み取ることによって得られるか、あるいは添付されている公開鍵を使ってタイムスタンプトークンを復号することによって得られるタイムスタンプトークンに含まれているダイジェスト値または時刻情報を読み出し、且つ、保存してある複数の時刻情報を可視化したディジタルデータの中から一致するダイジェスト値、または時刻情報が書き込まれている時刻情報を可視化したディジタルデータを読み出して、当該ディジタルデータの電子署名埋め込み領域にタイムスタンプトークンを埋め込み保存する一方、他の時刻情報を可視化したディジタルデータは削除することを特徴としている。
【００１７】
（５）  更に本発明の請求項５に係るディジタルタイムスタンプ方法は、タイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置は、定期的、または、タイムスタンプ生成ソフトウエアが起動される都度、あるいは、毎回タイムスタンプ処理を実施する直前にネットワーク経由で時刻認証機関のタイムサーバに接続し、当該タイムスタンプ生成ソフトウエアがインストールされている情報処理装置の内部時計を前記タイムサーバ由来の時刻情報で校正することを特徴としている。
【００１８】
上記（１）で述べた請求項１に係る手段によれば、タイムスタンプ対象のディジタルデータにタイムスタンプを実施するために、クライアントはタイムスタンプ生成ソフトウエアがインストールされネットワークに接続可能な情報処理装置を使用してタイムスタンプ対象のディジタルデータを開き、タイムスタンプ生成ソフトウエアを起動してタイムスタンプ処理を実行すると、当該情報処理装置およびタイムスタンプ生成ソフトウエアは、まず、当該ディジタルデータの複製を複数生成する。次に、情報処理装置の内部時計が示している時刻を基準として、任意の時間数を単位時間とする連続的に異なる時刻をそれぞれの複製データに可視化して書き込む。このとき書き込む時刻情報は、任意またはあらかじめ定められた位置、サイズ、書体とする。そして、異なる時刻が書き込まれた複数のディジタルデータ全てのダイジェスト値を計算し、その計算結果である全てのダイジェスト値を、タイムスタンプを発行する時刻認証機関にネットワーク経由で送信することができる。
【００１９】
また、上記（２）で述べた請求項２に係る手段によれば、前記生成された複数のディジタルデータそれぞれに書き込む連続的に異なる時刻情報の単位時間を、１秒または１分とすることができる。
【００２０】
さらに、上記（３）で述べた請求項３に係る手段によれば、タイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置は、前記生成した異なる時刻情報が書き込まれている複数のディジタルデータと、書き込んである時刻情報を関連付けて保存し、全てのディジタルデータのダイジェスト値を計算して、その結果を全てネットワーク経由で時刻認証機関に送信する。一方、時刻認証機関は、受信した前記全てのダイジェスト値に対して、ダイジェスト値群を最初に受信開始した時点における、時刻配信機関が保有する正確且つ公正な基準時計に由来した時刻情報を含むタイムスタンプトークンを生成し、当該タイムスタンプトークンと当該タイムスタンプトークンに含まれる時刻情報、または、当該タイムスタンプと当該タイムスタンプトークンを復号するための公開鍵をネットワーク経由でクライアントに返信する。そして、クライアントのタイムスタンプ生成ソフトウエア、および、当該ソフトウエアがインストールされている情報処理装置は、保存している複数の、異なる時刻情報が書き込まれているディジタルデータのなかから、タイムスタンプトークンと一緒に返信されてきた時刻情報、またはタイムスタンプトークンを復号して得られた時刻情報と一致する時刻情報が書き込まれているディジタルデータのみを呼び出して、当該ディジタルデータに生成してある電子署名埋め込み領域に当該ディジタルデータに対応するタイムスタンプトークンを埋め込んでタイムスタンプが実施されたディジタルデータを生成して保存すると共に、他のディジタルデータを削除してタイムスタンプを実施することができる。
【００２１】
また別のタイムスタンプトークン発行方法として、上記（４）で述べた請求項４に係る手段によれば、前記生成した複数の、異なる時刻情報が書き込まれているディジタルデータのダイジェスト値を時刻認証機関に送信する際、各ダイジェスト値に対して、それぞれのダイジェスト値の対象ディジタルデータにそれぞれ書き込んである時刻情報を、時刻認証機関で読み出し可能な情報形態に加工して添付、送信し、時刻認証機関は複数のダイジェスト値とその対象ディジタルデータに書き込んである時刻情報を受信開始した時点における時刻配信機関が保有する正確且つ公正な基準時計に由来した時刻と一致する時刻情報が添付されているダイジェスト値に対してのみ、タイムスタンプトークンを発行してクライアントに返信する。次いで、クライアントのタイムスタンプトークン生成ソフトウエアおよび、当該ソフトウエアがインストールされている情報処理装置は、保存している複数の異なる時刻情報が書き込まれているディジタルデータのなかから、タイムスタンプトークンと一緒に返信されてきた時刻情報またはダイジェスト値、あるいは公開鍵を使ってタイムスタンプトークンを復号して得られた時刻情報またはダイジェスト値と一致する時刻情報が書き込まれているか否かを確認するか、または、ダイジェスト値が一致するディジタルデータのみを呼び出して、当該ディジタルデータに生成してある電子署名埋め込み領域に、当該ディジタルデータに対応するタイムスタンプトークンを埋め込んでタイムスタンプが実施されたディジタルデータを生成して保存し、他のディジタルデータを削除してタイムスタンプを実施することができる。
【００２２】
さらに、上記（５）で述べた請求項５に係る手段によれば、タイムスタンプ生成ソフトウエアおよび当該ソフトウエアがインストールされている情報処理装置は、当該情報処理装置の内部時計と時刻認証機関のタイムサーバとの時刻偏差を常々最小限に保つことを目的として、定期的、またはタイムスタンプ生成ソフトウエアが起動される都度、あるいは、毎回タイムスタンプを実施する直前にネットワーク経由で時刻認証機関のタイムサーバに接続して、当該情報処理装置の内部時計をタイムサーバの時刻情報を基準として校正することができる。
【発明の効果】
【００２３】
以上述べた次第で、本発明に係るディジタルタイムスタンプ方法によれば、昨今の高速処理が可能で大容量の記憶装置を持つ情報処理装置を用いることによって、第３者である時刻認証機関が発行するタイムスタンプに含まれる時刻情報を、タイムスタンプ対象のディジタルデータ上に可視化して表示することが可能となり、特に複雑な検証方法を用いなくともタイムスタンプの真正性の検証、およびディジタルデータ不変性の検証が可能となる。
【発明を実施するための最良の形態】
【００２４】
以下に、上述した本発明に係るディジタルタイムスタンプ方法の実施の形態を図面と共に説明すると、図１は本発明を実施するシステム構成の一例を示したものであって、図中、１０は時刻認証機関であり、正確且つ公正な時刻を刻む原子時計などの基準時計１１と、基準時計１１から正確な時刻情報を受け、その時刻情報に由来したタイムスタンプトークンを生成発行したりユーザー情報を管理するタイムスタンプサーバ１２と、ネットワーク３０を介して基準時計１１に由来する現在時刻をクライアントの情報処理装置２０に配信するタイムサーバ１３で構成されている。
【００２５】
クライアントの情報処理装置２０は、ネットワーク３０に接続可能であり、ディジタルデータを扱うための各種アプリケーションソフトウエアおよびタイムスタンプ生成ソフトウエアがインストールされている。さらに情報処理装置２０は、ネットワーク３０を介して、時刻認証機関１０のタイムサーバ１３に時刻校正の要求を送ることで基準時計１１に由来した正確且つ公正な現在時刻を取得したり、タイムスタンプサーバ１２へユーザー情報やタイムスタンプの対象ディジタルデータのダイジェスト値を送信したり、発行されたタイムスタンプトークンの受信などを行う。
【００２６】
そして、上記タイムサーバ１３による情報処理装置２０の時刻校正処理は、定期的に実施されたり、タイムスタンプ生成ソフトウエアが起動される毎や、タイムスタンプを実行する直前に毎回実施される。
【実施例１】
【００２７】
図２は、本発明の第１実施例におけるタイムスタンプの発行要求処理を示す説明図であって、第１実施例では、まず、クライアントの情報処理装置２０でタイムスタンプ対象のディジタルデータ２１を開く。つぎに、情報処理装置２０にインストールされているタイムスタンプ生成ソフトウエアを起動すると、タイムスタンプ内容を可視化した仮の印影２２が表示されるので、任意の位置に配置したのち、タイムスタンプ発行の実行命令を入力する。このとき、印影に記載される文字形態、色、サイズなどはこの時点で決定してもよいし、あらかじめ定めておいてもよい。本実施例では、実行した時刻を２００３年９月２５日１４時３８分５８秒としている。前述のように、この処理を開始する直前に情報処理装置２０およびインストールされているタイムスタンプ生成ソフトウエアは、時刻認証機関１０のタイムサーバ１３にネットワークを介して接続し、情報処理装置２０の内部時計を校正する場合もある。また、タイムスタンプを要求している情報処理装置および操作者は、時刻認証機関と契約しているクライアントであるか否かを確認するためにクライアントＩＤやパスワードを要求してもよい。
【００２８】
次に、情報処理端末２０とインストールされているタイムスタンプ生成ソフトウエアは、タイムスタンプ対象のディジタルデータ２１の複製を複数生成し、仮の印影が配置された位置と同じ位置に、タイムスタンプ実行時刻を基準として１秒ずつずらした時刻が記録されているタイムスタンプの印影を書き込んだ上、全てのデータのダイジェスト値を計算する。すなわち、本実施例においては、２００３年９月２５日１４時３８分５８秒を基準として、一秒づつずらした２００３年９月２５日１４時３８分５９秒、３９分００秒、３９分０１秒、３９分０２秒の時刻情報を可視化して書き込んだ複製データ群２３を生成すると同時に、それぞれのディジタルデータのダイジェスト値群２４（ｔ０からｔ４）を求め、その結果を全てネットワーク３０を介して時刻認証機関１０のタイムスタンプサーバ１２に送信し、書き込んだ時刻を事後認知可能なように、時刻情報を関連付けてすべてのデータ群２３を情報処理装置２０または当該情報処理装置に接続された外部記憶装置（図示省略）に保存する。
【００２９】
図３は、本発明の第１実施例における時刻認証機関のタイムスタンプトークンの発行方法を示した説明図であって、本実施例において、時刻認証機関１０のタイムスタンプサーバ１２は、ネットワーク３０を介して送信されてきたダイジェスト値群２４に対して、当該ダイジェスト値群２４を最初に受信開始した時刻情報４１と、各ダイジェスト値２４ａを一元化したタイムスタンプ情報４２ａを生成し、時刻認証機関１０が所有する秘密鍵４３を使って暗号化することで、ダイジェスト値群２４それぞれにタイムスタンプトークン４４ａを生成してタイムスタンプトークン群４４を発行する。そして、タイムスタンプトークンを復号するための公開鍵４５を添付して、ネットワーク３０を介してクライアントの情報処理装置２０に返信する。ちなみに本実施例ではダイジェスト値の受信を開始した時刻を２００３年９月２５日１４時３９分００秒としている。
【００３０】
尚、本実施例では、各タイムスタンプトークン群４４に記録されている時刻情報４１をクライアントの情報処理装置２０が確認するために、各タイムスタンプトークンを復号するための公開鍵４５を添付して返信しているが、各タイムスタンプトークンに記録している時刻情報４１をクライアントの情報処理装置２０が認識可能な情報形態に加工して、各タイムスタンプトークンに添付、返信してもよい。
【００３１】
図４は返信されてきたタイムスタンプトークン群４４をディジタルデータに反映する方法を説明したものであって、クライアントの情報処理装置２０は受信したタイムスタンプトークン群４４のそれぞれを、添付されてきた公開鍵４５を使って復号してタイムスタンプ情報４２ａを得て、タイムスタンプトークンに記録されている受信開始時刻情報４１とダイジェスト値２４ａを読み出す。
【００３２】
ディジタルデータ群２３を保存する際、各ディジタルデータに書き込んである時刻情報を認知可能なように関連付けて保存したので、読み出したタイムスタンプトークンに記録されていた時刻情報４１と同じ時刻を書き込んであるディジタルデータ２３ａを記憶装置から読み出して、タイムスタンプトークン４４ａを読み出したディジタルデータに加えて一元化したタイムスタンプ実施済みのディジタルデータ２６として記憶装置２７に保存する。そして、その他の複製データは削除する。
【００３３】
図５は上述した本発明の第１実施例の処理手順を示したフローチャートであって、ステップＳ１，Ｓ２及び１０は操作者の処理を示し、ステップＳ３，Ｓ４，Ｓ８，Ｓ９，Ｓ１１，Ｓ１２，Ｓ１３，Ｓ１５及びＳ１６はクライアントの情報処理装置２０のタイムスタンプ生成ソフトウエアによる処理を示し、更に、ステップＳ５，Ｓ６，Ｓ７及びＳ１４は、時刻認証機関１０による処理を示す。
【実施例２】
【００３４】
次に、図６は本発明の別な態様である第２実施例を説明している。第２実施例では、まず前述の第１実施例と同様に、クライアントの情報処理装置２０でタイムスタンプ対象のディジタルデータ２１を開く。その後、情報処理装置２０にインストールされているタイムスタンプ生成ソフトウエアを起動すると、タイムスタンプ内容を可視化した仮の印影２２が表示されるので、任意の位置に配置したのち、タイムスタンプ発行の実行命令を入力する。このとき、印影に記載される文字形態、色、サイズなどはこの時点で決定してもよいし、あらかじめ定めておいてもよい。
【００３５】
本実施例では、実行した時刻を２００３年９月２５日１４時３８分５８秒としている。前述のように、この処理を開始する直前に情報処理装置２０およびインストールされているタイムスタンプ生成ソフトウエアは、時刻認証機関１０のタイムサーバ１３にネットワークを介して接続し、情報処理装置２０の内部時計を校正する場合もある。また、タイムスタンプを要求している情報処理装置および操作者は時刻認証機関と契約しているクライアントであるか否かを確認するためにクライアントＩＤやパスワードを要求してもよい。
【００３６】
情報処理端末２０とインストールされているタイムスタンプ生成ソフトウエアは、タイムスタンプ対象のディジタルデータ２１の複製を複数生成し、仮の印影が配置された位置と同じ位置に、タイムスタンプ実行時刻を基準として１秒づつずらした時刻が記録されているタイムスタンプの印影を書き込んだ上、全てのデータのダイジェスト値を計算する。すなわち、本実施例においては、２００３年９月２５日１４時３８分５８秒を基準として、一秒づつずらした２００３年９月２５日１４時３８分５９秒、３９分００秒、３９分０１秒、３９分０２秒の時刻情報を可視化して書き込んだ複製データ群２３を生成すると同時に、それぞれのディジタルデータのダイジェスト値群２４（ｔ０からｔ４）を求め、時刻認証機関１０のタイムスタンプサーバ１２が読み出し可能な情報形態に加工したそれぞれのダイジェスト値に、書き込んである時刻情報２５をそれぞれのダイジェスト値に対応せしめ、それぞれのダイジェスト値とともにネットワーク３０を介して時刻認証機関１０のタイムスタンプサーバ１２に送信し当該情報処理装置に接続された外部記憶装置に保存する。このとき、書き込んだ時刻を事後認知可能なように、時刻情報を関連付けて保存してもよい。
【００３７】
図７は時刻認証機関１０のタイムスタンプサーバ１２の処理を示している。タイムスタンプサーバ１２は、複数のダイジェスト値２４とそれぞれに対応する時刻情報２５の受信を開始すると、まず、受信を開始した時刻４１を記録する。つぎに、ダイジェスト値に対応している読み出し可能な情報形態に加工された時刻情報を読み出す。
【００３８】
次いで、タイムスタンプサーバ１２は、受信開始時刻４１とそれぞれのダイジェスト値に対応している時刻情報２５を比較して一致する時刻情報、すなわち、本実施例では２００３年９月２５日１４時３９分００秒（Ｔ２）と書き込まれている時刻情報２５ｂに対応するダイジェスト値２４ｂのみに、受信開始時刻４１とダイジェスト値２４ｂを一元化したタイムスタンプ情報４２ｂを生成したうえで、時刻認証機関１０が所有する秘密鍵で暗号化してタイムスタンプトークン４４ｂを発行し、クライアントの情報処理装置２０にネットワーク３０を介して返信する。
【００３９】
このとき、複製データ群２３のどのデータに対してタイムスタンプトークンが発行されたのかを情報処理装置２０が認知するために、タイムスタンプトークン４４ｂを復号するための公開鍵４５、または情報処理装置２０が読み出せる情報形態に加工した受信開始時刻情報４１、あるいは、タイムスタンプトークン４４ｂの対象ダイジェスト値２４ｂのうちの少なくともひとつを添付する。
【００４０】
前記タイムスタンプトークン４４ｂを受信したクライアントの情報処理装置２０は、添付されてきた公開鍵４５を使ってタイムスタンプトークン４４ｂを復号し、タイムスタンプ情報４２ｂに記録されているダイジェスト値２４ｂ、または受信開始時刻情報４１を読み出すか、あるいは、公開鍵４５以外にダイジェスト値２４ｂや受信開始時刻情報４１が添付されている場合は、当該添付情報を直接読み出すことで、記録保存している複製データ群２３から該当するデータを読み出して、タイムスタンプトークンを読み出したディジタルデータに加えて一元化して保存する。そして、その他の複製データは削除する。
【００４１】
上述した実施例１、または実施例２の方法により、第３者である時刻認証機関１０が発行するタイムスタンプに含まれる時刻情報を、タイムスタンプ対象のディジタルデータ上に可視化して表示することが可能となり、特に複雑な検証方法を用いなくとも通常の電子署名と同様な検証方法を用いてタイムスタンプの真正生の検証、およびディジタルデータ不変性の検証が可能となる。
【図面の簡単な説明】
【００４２】
【図１】本発明のシステムを示すブロック図である。
【図２】本発明の第１実施例におけるタイムスタンプを要求するためのクライアントの情報処理装置での前処理を説明した説明図。
【図３】本発明の第１実施例における時刻認証機関のタイムスタンプトークンの発行方法を示した説明図。
【図４】本発明の第１実記例におけるタイムスタンプトークンの反映方法を示した説明図。
【図５】本発明の第１実施例の処理手順を示したフローチャートである。
【図６】本発明の第２実施例におけるタイムスタンプを要求するためのクライアントの情報処理装置での前処理を説明した説明図。
【図７】本発明の第２実施例における時刻認証機関のタイムスタンプトークンの発行方法を示した説明図。
【符号の説明】
【００４３】
１０          時刻認証機関
１１          基準時計
１２          タイムスタンプサーバ
１３          タイムサーバ
２０          クライアントの情報処理装置
２１          タイムスタンプ対象のディジタルデータ
２２          タイムスタンプの仮の印影
２３          タイムスタンプ対象のディジタルデータの複製のデータ群
２４          複製のデータ群に対応するダイジェスト値群
２５          ダイジェスト値群に添付する時刻情報群
２６          タイムスタンプ処理が実施されたディジタルデータ
２７          記憶装置
３０          ネットワーク
４１          時刻認証機関の受信開始時刻情報
４２          タイムスタンプ情報
４３          タイムスタンプ情報を暗号化するための秘密鍵
４４          タイムスタンプトークン群
４５          タイムスタンプトークンを復号するための公開鍵
【図１】
0004613018.tif 000002
【図２】
0004613018.tif 000003
【図３】
0004613018.tif 000004
【図４】
0004613018.tif 000005
【図５】
0004613018.tif 000006
【図６】
0004613018.tif 000007
【図７】
0004613018.tif 000008