(57)【特許請求の範囲】
【請求項１】
正確且つ公正な時刻を刻む基準時計と、当該基準時計の時刻に由来した時刻情報を含むタイムスタンプを実施するためのネットワークに接続可能なタイムスタンプ発行サーバからなる時刻認証機関と、ネットワークに接続可能でタイムスタンプ生成ソフトウエアがインストールされているクライアントの情報処理装置とを用いてなるタイムスタンプ方法であり、
クライアントが当該情報処理装置で作業しているディジタルデータへのタイムスタンプを実施するにあたり、前記タイムスタンプ生成ソフトウエアを実行すると、タイムスタンプ生成ソフトウエアはタイムスタンプ対象のディジタルデータのダイジェスト値を計算して、その結果をネットワーク経由で前記時刻認証機関に送信し、当該時刻認証機関は受信した前記タイムスタンプ対象のダイジェスト値に対して、受信を開始した時の前記基準時計に由来する時刻情報と、前記タイムスタンプ対象のディジタルデータのダイジェスト値からなるタイムスタンプ情報を、前記時刻認証機関で暗号化したタイムスタンプトークンを生成すると共に、当該タイムスタンプトークンをクライアントの情報処理装置に返信し、且つ、タイムスタンプ生成ソフトウエアは前記タイムスタンプ対象のディジタルデータに前記タイムスタンプトークンを追加するか、あるいは、あらかじめ生成しておいたタイムスタンプ埋め込み領域に埋め込むことにより、一元化されたタイムスタンプが実施されたディジタルデータを作成、保存するタイムスタンプ方法であると共に、
タイムスタンプ対象のディジタルデータのデータ領域内にデータ空隙領域を設けるか、または、当該ディジタルデータに新たにデータ記録領域を追加することにより、タイムスタンプ埋め込み領域を生成し、当該埋め込み領域に対し、前記クライアントの時刻認証機関によって生成されたタイムスタンプを埋め込む方式のタイムスタンプ方法であって、
タイムスタンプ対象のディジタルデータに対して最初にタイムスタンプを生成する際に、上記のタイムスタンプ生成ソフトウエアがタイムスタンプを埋め込むための埋め込み領域を生成すると同時に、別途、将来的に少なくともひとつのタイムスタンプを埋め込むためのタイムスタンプ埋め込み領域を生成するタイムスタンプ領域生成手段を備え、
上記最初に実施するタイムスタンプが、タイムスタンプの対象ディジタルデータから当該ディジタルデータ内に生成した全てのタイムスタンプ埋め込み領域を除いた部分に関するダイジェスト値を持ち、
上記タイムスタンプ埋め込み領域に将来的に埋め込むタイムスタンプが、タイムスタンプの対象ディジタルデータから当該ディジタルデータ内に生成した全てのタイムスタンプ埋め込み領域を除いた領域に関するダイジェスト値、又は、すでに埋め込まれているタイムスタンプおよび当該タイムスタンプが埋め込まれているタイムスタンプ埋め込み領域のうち、少なくともひとつの領域をダイジェスト値の対象に加え、他のタイムスタンプおよびタイムスタンプ埋め込み領域を除いた領域に関するダイジェスト値を持つと共に、
上記同時に生成されるタイムスタンプ埋め込み領域を少なくとも３箇所とし、第１のタイムスタンプ埋め込み領域には当該ディジタルデータに対する最初のディジタルタイムスタンプを埋め込んでこれを永続的に保存し、第２および第３のタイムスタンプ埋め込み領域には事後２回目以降のディジタルタイムスタンプを埋め込み、すべてのタイムスタンプ埋め込み領域にタイムスタンプが埋め込まれた時点以降に実施するディジタルタイムスタンプには、２回目以降に実施された最も古いディジタルタイムスタンプを削除したうえで、最新のディジタルタイムスタンプを埋め込むことにより、常に、初回のディジタルタイムスタンプ、前回のディジタルタイムスタンプ、今回のディジタルタイムスタンプの、少なくとも３つのディジタルタイムスタンプ情報が記録されていることを特徴とするタイムスタンプ方法。
【請求項２】
前記第１のタイムスタンプ埋め込み領域に埋め込むディジタルタイムスタンプは、タイムスタンプの対象ディジタルデータ領域から第１、第２、第３の３つのタイムスタンプ埋め込み領域を除いたデータに関するダイジェスト値の情報を有し、第２、第３のタイムスタンプ埋め込み領域に埋め込むディジタルタイムスタンプは、タイムスタンプの対象ディジタルデータから、第２、第３のタイムスタンプ埋め込み領域を除いたデータに関するダイジェスト値の情報を有することを特徴とする請求項１に記載のタイムスタンプ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディジタルデータに対するタイムスタンプの発行方法に関するものである。
【背景技術】
【０００２】
ディジタルデータの真正性や発行元の証明あるいは存在時点の認証に関する情報を公正に確認する手段として、電子署名が普及している。さらに、現在はひとつのディジタルデータに対して、認証目的や実施する事業者や人格が異なる複数の電子署名が実施される場合がある。一方、電子署名の対象ディジタルデータにすでに別の電子署名が実施されている場合は、すでに実施されている電子署名を含むディジタルデータに対して電子署名を実施する追加型の多重電子署名方式がとられている。 
【０００３】
また、各種ディジタルデータの真正性や存在時点を証明するために実施されるディジタルタイムスタンプも、電子署名の一種である。ディジタルタイムスタンプ（以後タイムスタンプ）は、タイムスタンプの対象データ自体、あるいは対象データのダイジェスト値を公正かつ正確な基準時計を所有する第３者機関に送付して、第３者機関が所有する基準時計に由来した時刻情報を含む電子署名トークンの発行を依頼し、発行された電子署名トークンを対象ディジタルデータに埋め込むことで、事後、電子署名検証ソフトウエアにより、当該ディジタルデータの真正性と存在時点を検証することが可能とする電子署名である。出願人も、特許文献１にてディジタルタイムスタンプに関する提案を行っている。
【特許文献１】特開２００３−２４４１３９
【発明の開示】
【発明が解決しようとする課題】
【０００４】
電子署名を発行する場合、通常、発行した電子署名の対象ディジタルデータを遡及可能なように、当該ディジタルデータのダイジェスト値などの固有情報を電子署名内に持たせている。しかしながら、追加型の多重電子署名のように複数の電子署名を実施時期をずらして埋め込む場合、実施時期が新しい電子署名は電子署名の対象ディジタルデータと過去に実施されている全ての電子署名も含めてダイジェスト値が計算され、その計算結果であるダイジェスト値の情報を新たに発行する電子署名に持たせる事になる。
【０００５】
複数の電子署名が実施されているディジタルデータにおいて、ひとつの電子署名の有効期限満了や暗号化のための鍵が解読されたなどで当該電子署名が失効したとしても、その電子署名より後に実施された電子署名は失効した電子署名を含むダイジェスト値を固有情報として持っているため、当該失効電子署名を削除する事ができず、データ容量が増大していくという問題が発生する。
【０００６】
また、電子署名の一態様であるディジタルデータの存在時点を証明するためのディジタルタイムスタンプにおいて、初回に発行され当該ディジタルデータに埋め込まれているディジタルタイムスタンプの有効期限が近づいてきた場合、初回のディジタルタイムスタンプの情報を残した上で新たにディジタルタイムスタンプを実施することにより、初回のディジタルタイムスタンプに記録されている最も古い存在時点を証明する時刻情報を、新たに実施したディジタルタイムスタンプの有効期限まで残すことが可能となる。そして、また新たに実施したタイムスタンプの有効期限がきた場合、複数のディジタルタイムスタンプ情報を含めて新たなタイムスタンプを実施する操作の繰り返しとなる。しかしながら、この方法も前述のとおりデータ容量が増大してしまうという問題点がある。
【０００７】
したがって本発明の技術的課題は、ひとつのディジタルデータに対して実施される複数のタイムスタンプより構成される多重タイムスタンプにおいて、失効したタイムスタンプを削除してディジタルデータのデータサイズの増大を防止すると共に、ディジタルデータに実施されたタイムスタンプを、有効期限を越えて保護、認証することができるタイムスタンプ方法を提供することである。
【課題を解決するための手段】
【０００８】
（１）  上記の技術的課題を達成するために、本発明の請求項１に係るタイムスタンプ方法は、
正確且つ公正な時刻を刻む基準時計と、当該基準時計の時刻に由来した時刻情報を含むタイムスタンプを実施するためのネットワークに接続可能なタイムスタンプ発行サーバからなる時刻認証機関と、ネットワークに接続可能でタイムスタンプ生成ソフトウエアがインストールされているクライアントの情報処理装置とを用いてなるタイムスタンプ方法であり、
クライアントが当該情報処理装置で作業しているディジタルデータへのタイムスタンプを実施するにあたり、前記タイムスタンプ生成ソフトウエアを実行すると、タイムスタンプ生成ソフトウエアはタイムスタンプ対象のディジタルデータのダイジェスト値を計算して、その結果をネットワーク経由で前記時刻認証機関に送信し、当該時刻認証機関は受信した前記タイムスタンプ対象のダイジェスト値に対して、受信を開始した時の前記基準時計に由来する時刻情報と、前記タイムスタンプ対象のディジタルデータのダイジェスト値からなるタイムスタンプ情報を、前記時刻認証機関で暗号化したタイムスタンプトークンを生成すると共に、当該タイムスタンプトークンをクライアントの情報処理装置に返信し、且つ、タイムスタンプ生成ソフトウエアは前記タイムスタンプ対象のディジタルデータに前記タイムスタンプトークンを追加するか、あるいは、あらかじめ生成しておいたタイムスタンプ埋め込み領域に埋め込むことにより、一元化されたタイムスタンプが実施されたディジタルデータを作成、保存するタイムスタンプ方法であると共に、
タイムスタンプ対象のディジタルデータのデータ領域内にデータ空隙領域を設けるか、または、当該ディジタルデータに新たにデータ記録領域を追加することにより、タイムスタンプ埋め込み領域を生成し、当該埋め込み領域に対し、前記クライアントの時刻認証機関によって生成されたタイムスタンプを埋め込む方式のタイムスタンプ方法であって、
タイムスタンプ対象のディジタルデータに対して最初にタイムスタンプを生成する際に、上記のタイムスタンプ生成ソフトウエアがタイムスタンプを埋め込むための埋め込み領域を生成すると同時に、別途、将来的に少なくともひとつのタイムスタンプを埋め込むためのタイムスタンプ埋め込み領域を生成するタイムスタンプ領域生成手段を備え、
上記最初に実施するタイムスタンプが、タイムスタンプの対象ディジタルデータから当該ディジタルデータ内に生成した全てのタイムスタンプ埋め込み領域を除いた部分に関するダイジェスト値を持ち、
上記タイムスタンプ埋め込み領域に将来的に埋め込むタイムスタンプが、タイムスタンプの対象ディジタルデータから当該ディジタルデータ内に生成した全てのタイムスタンプ埋め込み領域を除いた領域に関するダイジェスト値、又は、すでに埋め込まれているタイムスタンプおよび当該タイムスタンプが埋め込まれているタイムスタンプ埋め込み領域のうち、少なくともひとつの領域をダイジェスト値の対象に加え、他のタイムスタンプおよびタイムスタンプ埋め込み領域を除いた領域に関するダイジェスト値を持つと共に、
上記同時に生成されるタイムスタンプ埋め込み領域を少なくとも３箇所とし、第１のタイムスタンプ埋め込み領域には当該ディジタルデータに対する最初のディジタルタイムスタンプを埋め込んでこれを永続的に保存し、第２および第３のタイムスタンプ埋め込み領域には事後２回目以降のディジタルタイムスタンプを埋め込み、すべてのタイムスタンプ埋め込み領域にタイムスタンプが埋め込まれた時点以降に実施するディジタルタイムスタンプには、２回目以降に実施された最も古いディジタルタイムスタンプを削除したうえで、最新のディジタルタイムスタンプを埋め込むことにより、常に、初回のディジタルタイムスタンプ、前回のディジタルタイムスタンプ、今回のディジタルタイムスタンプの、少なくとも３つのディジタルタイムスタンプ情報が記録されていることを特徴としている。
【０００９】
（２）  更に本発明の請求項２に係るタイムスタンプ方法は、前記第１のタイムスタンプ埋め込み領域に埋め込むディジタルタイムスタンプは、タイムスタンプの対象ディジタルデータ領域から第１、第２、第３の３つのタイムスタンプ埋め込み領域を除いたデータに関するダイジェスト値の情報を有し、第２、第３のタイムスタンプ埋め込み領域に埋め込むディジタルタイムスタンプは、タイムスタンプの対象ディジタルデータから、第２、第３のタイムスタンプ埋め込み領域を除いたデータに関するダイジェスト値の情報を有することを特徴としている。
【００１０】
上記（１）で述べた請求項１に係る手段によれば、タイムスタンプ対象のディジタルデータに最初にタイムスタンプを実施する時点で、当該ディジタルデータのデータ領域内にデータ空隙領域を設けるか、又は、当該ディジタルデータに追加するなどであらかじめ今回のタイムスタンプを埋め込むためのタイムスタンプ埋め込み領域（以下、タイムスタンプスロット）を生成すると同時に、あらかじめ将来的に他のタイムスタンプを埋め込むためのタイムスタンプスロットを複数生成しておく。そして、最初に生成するタイムスタンプは、当該ディジタルデータから全てのタイムスタンプスロットを除いたデータ領域に関して計算されたダイジェスト値の情報を有し、２番目以降に生成するタイムスタンプは、当該ディジタルデータから全てのタイムスタンプスロット領域を除いたデータ領域に関して計算されたダイジェスト値か、あるいは、最初に生成されてすでに当該ディジタルデータに対する第１のタイムスタンプスロットに埋め込まれているタイムスタンプなどのように、すでにいずれかのタイムスタンプスロットに埋め込まれている少なくとも１つのタイムスタンプを含むと共に、当該ディジタルデータからその他のタイムスタンプスロット領域を除いたデータの領域に関するダイジェスト値の情報を有していることになる。
【００１１】
このため、２番目以降に生成するタイムスタンプは、当該ディジタルデータから全てのタイムスタンプスロット領域を除いたデータ領域に関して計算されたダイジェスト値である場合、各タイムスタンプは、他のタイムスタンプと独立して存在することとなり、あるタイムスタンプを削除したとしても、他のタイムスタンプが記録しているダイジェスト値が変わってしまうことはない。
【００１２】
また、新たなタイムスタンプを実施する際に、特定のタイムスタンプとその埋め込み領域を含めてダイジェスト値を計算し、新たなタイムスタンプに記録することで、特定のタイムスタンプが失効したとしても、その内容は新たなタイムスタンプに記録されているダイジェスト値に反映されており、特定のタイムスタンプの内容が改ざんされた場合、新たなタイムスタンプを検証することで認識することが可能となる。
【００１３】
更に、上記（１）で述べた請求項１に係る手段によれば、タイムスタンプの１態様であるディジタルタイムスタンプ（以後タイムスタンプ）を実施するにあたり、タイムスタンプの対象ディジタルデータに最初にタイムスタンプを発行して埋め込む時点で、３箇所のタイムスタンプスロットをあらかじめ生成し、第１のタイムスタンプスロットに初回発行のタイムスタンプを埋め込み、このタイムスタンプは永続的に保持し、２回目、３回目に発行されたタイムスタンプは発行された順番に所定のタイムスタンプスロットの埋め込み、４回目以降に発行されたタイムスタンプは２回目以降に発行されたタイムスタンプを埋め込んであるタイムスタンプスロットのうちで前々回に埋め込んだタイムスタンプを削除したうえで、新たに発行されたタイムスタンプを埋め込むことにより、当該ディジタルデータに最初にタイムスタンプを実施した時刻情報を有するタイムスタンプと、前回および今回タイムスタンプを実施した時刻情報を有するタイムスタンプの３つのタイムスタンプを埋め込むことを可能にしている。
【００１４】
更に上記（２）で述べた請求項２に係る手段によれば、前記第１のタイムスタンプスロットに埋め込まれる初回に発行されたタイムスタンプは、タイムスタンプの対象ディジタルデータから３箇所のタイムスタンプスロット領域を除いたデータ領域に関するダイジェスト値の情報を持ち、第２、第３のタイムスタンプスロットに埋め込まれる２回目以降に実施されるタイムスタンプは、当該ディジタルデータのうちの第２、第３のタイムスタンプスロット領域はダイジェスト値の対象に含めず、第１のタイムスタンプスロットに埋め込まれているタイムスタンプはダイジェスト値の対象に含むことを特徴としている。このため、第２、および第３のタイムスタンプスロットに埋め込まれるタイムスタンプは互いのタイムスタンプスロットに埋め込まれているディジタルタイムスタンプをダイジェスト値の対象としていないため、削除、書き換えを自在に行うことが可能となる。
【発明の効果】
【００１５】
以上により、本発明に係るタイムスタンプ方法によれば、複数のタイムスタンプ（電子署名）を埋め込んだディジタルデータにおいて、いずれかのタイムスタンプが失効した場合、失効したタイムスタンプを削除したとしても、失効したタイムスタンプより後に実施したタイムスタンプのダイジェスト値に影響を与えることがない。
【００１６】
また、タイムスタンプ処理において、初回のタイムスタンプを実施する段階であらかじめ少なくとも３個のタイムスタンプを埋め込むことができるようにタイムスタンプ対象のディジタルデータを加工しておくことにより、最も古い存在時点を証明する初回のタイムスタンプと、前回実施されたタイムスタンプと、今回実施されたタイムスタンプの３つのタイムスタンプに記録されている時刻情報を持つことができ、さらに、初回のタイムスタンプ情報は以後実施されるタイムスタンプの対象であるダイジェスト値に含まれているため、初回のタイムスタンプ情報を改ざんすることは不可能となる。
【００１７】
また、過去に実施されたタイムスタンプの有効期限が近づいた場合、当該タイムスタンプを削除して新たなタイムスタンプを実施することで、タイムスタンプ対象のディジタルデータの最も古い存在時刻を残したまま、タイムスタンプを継続的に認証することが可能となる。
【発明を実施するための最良の形態】
【００１８】
以下に、上述した本発明に係るタイムスタンプ方法の実施の形態を図面を参照して説明する。図１は本発明を実現するためのシステムの一例を示す構成図であり、図中、１０は公正かつ正確な時を刻む基準時計１１と、タイムスタンプ発行サーバ１２からなる時刻認証機関である。
【００１９】
この時刻認証機関１０のタイムスタンプ発行サーバ１２は、クライアントからネットワーク３０を介して送信されてきたディジタルデータ、または、ディジタルデータのダイジェスト値に対して、受信を開始した時点での基準時計１１の時刻情報を含むタイムスタンプトークンを発行し、クライアントに返信する。
【００２０】
また、１５ａおよび１５ｂは電子署名発行サーバであり、タイムスタンプ発行サーバ１２を運営する事業者と同じ事業者が運営していてもよいし、それぞれ別の事業者が運営していてもよい。また、図面では、符号１０を時刻認証機関としているが、時刻認証機関ではなく、１５ａ、１５ｂと同様な電子署名発行サーバを所有する電子署名発行機関であってもよい。当然、１５ａ、１５ｂが時刻認証機関１０が保有するタイムスタンプ発行サーバであることも考えられるが、これ等の選択はいずれも任意とする。
【００２１】
２１はクライアントＡが所有する情報処理装置であり、２２はクライアントＢが所有する情報処理装置であって、ともに、少なくともひとつのタイムスタンプ生成ソフトウエアがインストールされている。当然クライアントＡとクライアントＢは別の個人、または事業者であってもよいし、同一の個人、事業者であることも考えられる。また、クライアントＢが存在しない場合も考えられる。情報処理装置２１と２２は、互いにネットワーク３０や物理的記録媒体３５を用いてデータの授受が可能なように構成されている。
【００２２】
また、図示した実施例では、以下述べるように、クライアントＡの情報処理装置２１でディジタルデータにタイムスタンプ処理を実施し、事後、ネットワーク３０あるいは物理的記録媒体３５を使用してタイムスタンプや、その他の電子署名が埋め込まれたディジタルデータをクライアントＢの情報処理処置２２に送ることにより、クライアントＢは情報処理装置２２上で当該ディジタルデータファイルを開いて閲覧をしたり、更に新たなタイムスタンプ処理を実施することが可能となる。
【００２３】
図２は本発明における実施例に係る具体的なタイムスタンプ方法を説明するものであり、もっとも早く実施されたタイムスタンプに記録されている存在時点を示す時刻情報を、永続的に認証するための具体的方法である。クライアントＡは未だタイムスタンプが実施されていないタイムスタンプ対象のディジタルデータ７０を情報処理装置２１上で開き、インストールされているタイムスタンプ生成ソフトウエアを起動してタイムスタンプ処理を実行すると、まず、電子署名標識が存在しないことを確認し、タイムスタンプ生成ソフトウエアはタイムスタンプ対象のディジタルデータ７０に３つの電子署名（タイムスタンプ）スロット８１、８２、８３を生成し、ディジタルデータ７１を作成する。なお、８４、８５、８６は各電子署名（タイムスタンプ）スロットの標識である。
【００２４】
つぎにタイムスタンプ生成ソフトウエアは、ディジタルデータ７１から電子署名（タイムスタンプ）スロット領域（８１〜８３）を除いた領域に関するダイジェスト値を計算し、その結果の第１のダイジェスト値７２をネットワーク３０を介して時刻認証機関１０のタイムスタンプ発行サーバ１２に送信する。
【００２５】
第１のダイジェスト値７２を受信した時刻認証機関１０のタイムスタンプ発行サーバ１２は当該ダイジェスト値を受信開始した時点での基準時計１１に由来する時刻情報１３と当該ダイジェスト値７２を合わせて暗号化し、初回タイムスタンプトークン１４を発行し、ネットワーク経由でクライアントＡの情報処理装置２１に返信する。この時、タイムスタンプトークン１４に、タイムスタンプトークン１４を解読するための公開鍵を合わせて返信することも考えられる。
【００２６】
初回タイムスタンプトークン１４を受信したクライアントＡの情報処理装置２１およびインストールされているタイムスタンプ生成ソフトウエアは、ディジタルデータ７１の第１署名スロット８１に当該タイムスタンプトークン１４を埋め込み、同時にタイムスタンプ埋め込み標識８４を初回に発行されたタイムスタンプが埋め込み済みであることを示す標識８７に変更する。以上の処理によって初回タイムスタンプ処理が実施されたディジタルデータ７３を生成する。
【００２７】
図３は、最初のタイムスタンプが実施されたディジタルデータ７３のタイムスタンプの有効期限が近づいた場合など、再度タイムスタンプ処理を行う方法について説明している。まず、クライアントＡは情報処理装置２１上で、すでにタイムスタンプが実施されているディジタルデータ７３を開き、タイムスタンプ生成ソフトウエアを起動してタイムスタンプ処理を実行する。
【００２８】
タイムスタンプ生成ソフトウエアは当該ディジタルデータ７３に生成されている電子署名スロット８１、８２、８３の標識８４、８５、８６を読み取り、第２、第３の電子署名スロット８２、８３がブランクであることを確認し、当該ディジタルデータ７３から第２、第３の電子署名スロット８２、８３を除いた領域、すなわち、オリジナルのディジタルデータ領域と最初のタイムスタンプを合わせた領域に関する第２のダイジェスト値７４を計算し、ネットワーク３０を介して時刻認証機関１０のタイムスタンプ発行サーバ１２に送信する。
【００２９】
第２のダイジェスト値７４を受信したタイムスタンプ発行サーバ１２は初回のタイムスタンプトークンを発行したときと同様に、当該ダイジェスト値７４を受信開始した時点での基準時計１１に由来する時刻情報１６と、当該ダイジェスト値７４を合わせて暗号化し、第２回目のタイムスタンプトークン１７を発行し、ネットワーク３０経由でクライアントＡの情報処理装置２１に返信する。
【００３０】
第２回目のタイムスタンプトークン１７を受信したクライアントＡの情報処理装置２１およびインストールされているタイムスタンプ生成ソフトウエアは、ディジタルデータ７３の第２署名スロット８２に当該タイムスタンプトークン１７を埋め込み、同時にタイムスタンプ埋め込み標識８５を第２回目に発行されたタイムスタンプが埋め込み済みであることを示す標識８８に変更する。以上の処理によって第２回目のタイムスタンプ処理が実施されたディジタルデータ７５を生成する。
【００３１】
更に同様の処理によって第３の電子署名スロット８３により新しいタイムスタンプを埋め込むことも可能である。この場合もダイジェスト値計算の対象領域は当該ディジタルデータ７５から第２、第３の電子署名スロット８２、８３を除いた領域、すなわち、オリジナルのディジタルデータ領域と最初のタイムスタンプを合わせた領域とする。したがって、ダイジェスト値を計算する関数が各回とも同じ関数であれば、２回目以降に得られるダイジェスト値は同じ値となる。
【００３２】
図４はすでに３回のタイムスタンプ処理が実施されているディジタルデータ７６に対して、初回のタイムスタンプを残したまま、４回目のタイムスタンプ処理を行う場合について説明している。クライアントＡは当該ディジタルデータ７６を情報処理装置２１で開き、タイムスタンプ生成ソフトウエアを起動する。
【００３３】
情報処理装置２１およびタイムスタンプ生成ソフトウエアはディジタルデータ７６の電子署名スロット８１、８２、８３の標識８７、８８、８９を読み取り、全ての電子署名スロットにタイムスタンプが埋め込まれており、新たなタイムスタンプを埋め込むことができないことを認知し、初回に発行されたタイムスタンプを除くふたつのタイムスタンプのうち、より過去に実施されたタイムスタンプを標識から読み取る。本実施例では、第２回目、第３回目に発行されたタイムスタンプトークンが当該ディジタルデータ７６に埋め込まれているので、より過去に実施された第２電子署名スロット８２に埋め込まれている第２回目に発行されたタイムスタンプトークンを削除すると同時に、第２回目に発行されたタイムスタンプが埋め込み済みであることを示す標識８８を未埋め込みを示す標識８５に戻したディジタルデータ７７を生成する。そして、当該ディジタルデータ７７から第２および第３タイムスタンプスロット８２、８３を除いた領域に関する第４のダイジェスト値７８を計算し、その結果をネットワーク３０を介して時刻認証機関１０のタイムスタンプ発行サーバ１２に送信する。
【００３４】
第４のダイジェスト値７８を受信したタイムスタンプ発行サーバ１２は過去のタイムスタンプトークンを発行したときと同様に、当該ダイジェスト値７８を受信開始した時点での基準時計１１に由来する時刻情報１８と当該ダイジェスト値７８を合わせて暗号化し、第４回目のタイムスタンプトークン１９を発行し、ネットワーク３０経由でクライアントＡの情報処理装置２１に返信する。
【００３５】
第４回目のタイムスタンプトークン１９を受信したクライアントＡの情報処理装置２１およびインストールされているタイムスタンプ生成ソフトウエアは、ディジタルデータ７７の第２署名スロット８２に当該タイムスタンプトークンを埋め込み、同時にタイムスタンプ埋め込み標識８５を第４回目に発行されたタイムスタンプが埋め込み済みであることを示す標識９０に変更する。以上の処理によって第４回目のタイムスタンプ処理が実施されたディジタルデータ７９を生成する。
【００３６】
以上の処理により、最初のタイムスタンプの情報のみを次のタイムスタンプのダイジェスト値の計算対象に含めることで、たとえ最初に実施されたタイムスタンプの暗号化の秘密鍵が漏洩したとしても、第２のタイムスタンプのダイジェスト値により最初に実施されたタイムスタンプおよびオリジナルデータ領域が改ざんされているか否かを検証することが可能となる。また、本発明によるタイムスタンプを実施されたディジタルデータは最初のタイムスタンプ、前回実施されたタイムスタンプ、今回実施された最新のタイムスタンプの３つのタイムスタンプをもち、当該ディジタルデータの存在時点とそこから最新タイムスタンプを実施する時点までの継続性を確認することが可能となっている。
【００３７】
図５は上述した本発明の実施例におけるディジタルデータに対するタイムスタンプの実施手順を示すフローチャートであって、ステップＳ１〜Ｓ２は操作者による実施手順を示し、ステップＳ３〜Ｓ７及びステップＳ１６は、情報処理装置２１とタイムスタンプ生成ソフトウエアによる実施手順で、ステップＳ１３〜Ｓ１５は時刻認証機関１０による実施手順を示す。
【図面の簡単な説明】
【００３８】
【図１】本発明のシステム構成の一例を示す構成図。
【図２】本発明の実施例における最初のタイムスタンプの生成方法を示すブロック図。
【図３】本発明の実施例におけるタイムスタンプの追加方法を示すブロック図。
【図４】本発明の実施例における４回目以降のタイムスタンプ生成方法を示すブロック図。
【図５】本発明の実施例におけるタイムスタンプ生成手順を示したフローチャート。
【符号の説明】
【００３９】
１０          時刻認証機関
１１          時刻認証機関の保有する基準時計
１２          時刻認証機関の保有するタイムスタンプ発行サーバ
１３，１６，１８          ダイジェスト値を受信開始した時刻情報
１４          初回タイムスタンプトークン
１７          第２回タイムスタンプトークン
１９          第４回タイムスタンプトークン
２１          クライアントＡの保有する情報処理装置
３０          ネットワーク
３５          物理的記録媒体
７０          電子署名（タイムスタンプ）対象のディジタルデータ
７１          電子署名（タイムスタンプ）スロットが生成されたディジタルデータ
７２，７４，７８          ダイジェスト値
８１、８２、８３          電子署名（タイムスタンプ）スロット
８４、８５、８６          電子署名（タイムスタンプ）標識
８７、８６、８９、９０    電子署名（タイムスタンプ）が埋め込まれたことを示す電子署名標識
【図１】
0004647918.tif 000002
【図２】
0004647918.tif 000003
【図３】
0004647918.tif 000004
【図４】
0004647918.tif 000005
【図５】
0004647918.tif 000006