JP4125975B2 - Time stamp system and program thereof - Google Patents

Time stamp system and program thereof Download PDF

Info

Publication number
JP4125975B2
JP4125975B2 JP2003054195A JP2003054195A JP4125975B2 JP 4125975 B2 JP4125975 B2 JP 4125975B2 JP 2003054195 A JP2003054195 A JP 2003054195A JP 2003054195 A JP2003054195 A JP 2003054195A JP 4125975 B2 JP4125975 B2 JP 4125975B2
Authority
JP
Japan
Prior art keywords
time
time stamp
record
certificate
hash value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2003054195A
Other languages
Japanese (ja)
Other versions
JP2004266536A (en
Inventor
勝治 中嶋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Precision Inc
Original Assignee
Seiko Precision Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Precision Inc filed Critical Seiko Precision Inc
Priority to JP2003054195A priority Critical patent/JP4125975B2/en
Publication of JP2004266536A publication Critical patent/JP2004266536A/en
Application granted granted Critical
Publication of JP4125975B2 publication Critical patent/JP4125975B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、タイムスタンプシステム及びそのプログラムに関し、特に時刻運用履歴の検証を可能とするタイムスタンプシステム及びそのプログラムに関するものである。
【0002】
【従来の技術】
現在、ある時刻におけるテキスト文書、画像情報、コンピュータプログラム等の電子文書の存在、その非改ざん性を保証するために、電子文書あるいはそのメッセージダイジェスト(例えば、電子文書のハッシュ値)に時刻情報、認証者の署名情報等を与えるとともに暗号化することにより生成したタイムスタンプ証明書を発行するタイムスタンプシステムが利用されている。このようなタイムスタンプシステムにおいては、それに使用される時刻を時刻発生器から取得し、電子文書に押印する(例えば、特許文献1参照)。
【0003】
また、タイムスタンプシステム等の計算機システムでは、システム内の時計が刻むシステム時刻に基づいて、各種タスクの制御を行っている。しかし、汎用パーソナルコンピュータ(PC)で使用されている時刻発生器の精度は、外部時刻源と比較して劣っている。汎用PCで実行されるタイムスタンプシステムのシステム時刻が実際の正確な時刻と大きく異なると、不正確な時刻を記録することになり、タイムスタンプシステムにとって不都合である。このため、高精度の時刻源を備えた外部機関によりシステム内の時計を高精度時刻に同期させ、外部機関がそれを認証するというシステムがある(例えば、特許文献2参照)。これは、外部機関の時刻源から取得した高精度時刻を自システムへ適応させたことを示す履歴ファイルを外部にある電子署名機関に送付し、署名認証を受ける。
【0004】
【特許文献1】
特許第3278721号公報
【0005】
【特許文献2】
特開2002−229869号公報
【0006】
【発明が解決しようとする課題】
しかしながら、特許文献2では、外部にある電子署名機関へ履歴ファイルを送付するために専用のネットワーク資源を必要とし、また、独自に自システムに格納した時刻運用履歴の非改ざん性の証明ができない等のコスト面や安全面での問題が生じる場合がある。
【0007】
本発明は、独自に時刻運用履歴の検証を可能とする低コストかつ安全性の高いタイムスタンプシステム及びそのプログラムを提供することを目的とする。
【0008】
【課題を解決するための手段】
本発明のタイムスタンプシステムは、クライアント端末からの依頼に応じてタイムスタンプ証明書の発行を行うタイムスタンプシステムであって、システム時刻を生成する時刻生成部と、外部時刻源から外部時刻を取り込む外部時刻取込部と、第1期間毎に上記外部時刻取込部により取り込んだ外部時刻に基づいて、上記時刻生成部の生成するシステム時刻を修正して上記外部時刻に同期させる時刻修正部と、上記時刻修正部による時刻修正の履歴を履歴ファイルとして生成する履歴生成部と、第2期間毎に上記履歴ファイルの第1タイムスタンプ証明書を生成する証明書生成部と、上記第1タイムスタンプ証明書を1つのレコードとして記憶するデータベースとを備え、上記データベースの総てのレコードに対する第2タイムスタンプ証明書を生成し、当該第2タイムスタンプ証明書を公開する公開部とを備えることを特徴とする。
【0009】
また、上記データベースは上記第1タイムスタンプ証明書の生成毎に上記レコードを追加するものであり、それぞれのレコードには当該レコードの内容のハッシュ値であるレコードハッシュ値と累計ハッシュ値とを格納してあり、当該累計ハッシュ値は、当該レコードのレコードハッシュ値と当該レコードの直前のレコードの累計ハッシュ値とを合成した値に対するハッシュ値であり、上記累計ハッシュ値に電子署名を施して上記第2タイムスタンプ証明書を生成することが好ましい。
【0010】
また、上記データベースは上記クライアント端末に第3タイムスタンプ証明書を発行する毎に第3タイムスタンプを上記レコードとして追加するものであり、上記証明書生成部は上記クライアント端末に第3タイムスタンプ証明書を発行するときに直前のレコードの計ハッシュ値を上記第3タイムスタンプ証明書の内容に含めることも好ましい。
【0011】
また、本発明のタイムスタンプシステムプログラムは、コンピュータ上にクライアント端末からの依頼に応じてタイムスタンプ証明書の発行を行う処理を実現せしめるタイムスタンプシステムプログラムであって、時刻生成部にシステム時刻を生成せしめる時刻生成処理と、外部時刻取込部に外部時刻源から外部時刻を取り込ませしめる外部時刻取得処理と、上記外部時刻取得処理によって第1期間毎に取り込んだ外部時刻に基づいて、上記時刻生成部の生成するシステム時刻を修正して上記外部時刻に同期させる時刻修正処理と、履歴生成部に上記時刻修正処理による時刻修正の履歴を履歴ファイルに記録せしめる履歴生成処理と、証明書生成部に第2期間毎に上記履歴ファイルの第1タイムスタンプ証明書を生成せしめる証明書生成処理と、上記第1タイムスタンプ証明書を1つのレコードとしてデータベースに記憶せしめる処理と、上記証明書生成部に上記データベースの総てのレコードに対する第2タイムスタンプ証明書を生成せしめる処理とを備える特徴とする。
【0012】
また、上記データベースに記憶せしめる処理は、の生成毎に上記レコードを追加するもので、それぞれのレコードには当該レコードの内容のハッシュ値であるレコードハッシュ値と累計ハッシュ値とを格納し、当該累計ハッシュ値は、当該レコードのレコードハッシュ値と当該レコードの直前のレコードの累計ハッシュ値とを合成した値に対するハッシュ値とする処理であり、上記第2タイムスタンプ証明書を生成せしめる処理は、上記累計ハッシュ値に電子署名を施して上記第2タイムスタンプ証明書を生成する処理を備えることが好ましい。
【0013】
また、上記証明書生成部に上記クライアント端末からの依頼に応じて発行される第3タイムスタンプ証明書を生成せしめる処理を備え、上記データベースに記憶せしめる処理は、上記第3タイムスタンプ証明書の生成毎に第3タイムスタンプを上記レコードとして上記データベースに追加する処理であり、上記第3タイムスタンプ証明書を生成せしめる処理は、直前のレコードの計ハッシュ値を上記第3タイムスタンプ証明書の内容に含める処理を上記タイムスタンプシステムプログラムが備えることも好ましい。
【0014】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態について説明する。図1は、本発明の一実施例のタイムスタンプシステムを示している。外部時刻源としてのタイムサーバ1は、図示しない高精度の時刻発生部を有し、高精度の信頼できる時刻を発生するものであり、LAN2によってタイムスタンプシステム3に接続されている。タイムサーバ1は、例えばテレホンJJYや長波標準電波等の標準時刻情報の取得装置を備え、自システムの時刻を標準時刻に同期させるものであっても良い。
【0015】
タイムスタンプシステム3は汎用PCサーバ上でタイムスタンプシステムプログラムを実行して実現されるものであり、構成要素をブロック的に示すと、時刻発生部31と外部時刻取込部32と時刻修正部33と履歴生成部34と証明書生成部35と署名鍵記憶部36とデータベース37と公開部38とからなる。
【0016】
時刻発生部31はタイムスタンプシステム3の内部の時刻(以下、システム時刻と言う)を生成するものであり、上述の汎用PCサーバのOSの時刻生成プログラム等である。
【0017】
外部時刻取込部32は、タイムサーバ1に対してRFC2030で規定されたネットワーク経由の時刻問合せプロトコルを用いて、所定間隔、例えば1時間間隔で時刻問合せを行い、外部の時刻(以下、外部時刻と言う)を取得するものである。
【0018】
時刻修正部33は外部時刻取込部32によって所得した外部時刻に時刻発生部31の生成するシステム時刻を同期させるものであり、外部時刻情報を上記OSの時刻修正プログラムに渡して時刻修正を行うものである。なお、OSによっては時刻修正部33に時刻源へのアクセス機能を有したものもあり、外部時刻取込部32は時刻修正部33と一体的なものであって良い。また、時刻修正部33は時刻修正プログラムに時刻進度の補正機能に補正値を渡すものとする。すなわち、システム時刻は所定のインターバルタイマ間隔で所定値だけ増加されて更新されており、この所定値に補正値を加えて時刻進度を補正するのである。補正値は、例えば、所定間隔で行われる時刻問合せの際の外部時刻とシステム時刻との差異から、インターバルタイマ間隔当たりの差異を算出することによって得られる。このような時刻同期と補正とにより、システム時刻は高精度に維持される。例えば、マイクロソフト社のOS、Windows2000環境下おいてはOS標準の時刻調整関数(時刻修正プログラム)を利用することでnsオーダーでの微調整を行うことができる。通常、同期及び補正等を行なわない場合は時刻発生部31の進度誤差は日差数秒程度であるが、同期及び補正等によれば、典型的な場合では、システム時刻と外部時刻との時刻進度の差異は日差10ms程度まで縮小される。
【0019】
履歴生成部34は、タイムサーバ1との通信ログと自システムへの時刻反映情報、例えば、時刻修正毎の外部時刻、システム時刻、これらの差異、補正値等の履歴を1つの履歴ファイル34aに記録するものである。
【0020】
証明書生成部35は、クライアント端末4から電子文書に対するタイムスタンプ証明書の発行を要求する証明書要求を受け付けし、当該証明書要求に添えられた電子文書の一方向性関数(ハッシュ関数)を作用させて符号化した値(ハッシュ値)に時刻発生部31から取得したシステム時刻を添えてタイムスタンプ証明書の内容を生成し、当該内容に署名鍵記憶部36に格納された署名鍵を使用して暗号化を施して電子署名を生成し、当該電子署名をタイムスタンプ証明書の内容に添付してタイムスタンプ証明書としてクライアント端末4に発行するものである。さらに、後述するデータベース37の累計ハッシュ値をタイムスタンプ証明書の内容に含めても良い。
【0021】
さらに、証明書生成部35は、所定の間隔、例えば、証明書生成部35は、所定の間隔、例えば、1日間隔で履歴ファイル34aのタイムスタンプ証明書を生成する。例えば、履歴ファイル34aのハッシュ値を生成し、当該ハッシュ値に時刻発生部31から取得したシステム時刻を添えてタイムスタンプ証明書の内容を生成し、当該内容に対して署名鍵記憶部36に格納された署名鍵を使用して暗号化を施して電子署名を生成し、タイムスタンプ証明書の内容に添付してタイムスタンプ証明書とする。さらに、証明書生成部35は、履歴証明書をデータベース37の証明書テーブルの1つのレコードとして挿入し、後述するように所定の間隔、例えば、3日間隔、データベース37の証明書テーブル全体に対するタイムスタンプ証明書を生成し、すなわち、後述する累計ハッシュ値に電子署名を施してタイムスタンプ証明書を生成し、公開部38を介して、WEB、電子メール等で公開する。公開部38は例えば、図示しない所定のWEBサーバにデータベース37の証明書テーブル全体に対するタイムスタンプ証明書をアップロードするか、所定のメーリングリストに電子メールを送信する処理プログラムからなる。
【0022】
データベース37の証明書テーブルは、例えば、図2に示すように1番目のレコード1からn番目のレコードn(nは2以上の整数とする。)を有し、レコード毎にタイムスタンプ証明書を格納し、レコードnの後部にレコードのハッシュ値Hnを格納し、さらにレコードnの末尾には累計ハッシュ値tbHnが格納される。累計ハッシュ値tbHnは、次のように求められる。
tbHn=Hash(Hn+tbHn−1)
すなわち、累計ハッシュ値tbHは、n番目のレコードのハッシュ値とn−1番目までの累計ハッシュ値の合計について、ハッシュ値を求めたものである。1番目のレコードの場合、それ以前のレコードが存在しないため、tbHn-1に相当するtbH0には、乱数値または固定数値を代入する。この累計ハッシュ値tbHによれば、レコードの生成順序が確定され、レコードは事後変更不能となる。このようなデータベース37のタイムスタンプ証明書を発行することによって、履歴ファイル34aの非改ざん性の検証を可能とし、ひいては、システム時刻が高精度に維持すべく運用されていることの証明となる。
【0023】
次に本例の動作を図3のフローチャートを参照しながら説明する。タイムスタンプシステム3は、外部時刻取込部32を用いてタイムサーバ1に対して、規定された接続手順でネットワーク接続し、タイムサーバ1の図示しない時刻発生部が発生する高精度の時刻を取り込む。時刻修正部33は、取得された外部時刻を用いて、システム時刻を修正すると同時に、履歴ファイル34aにタイムサーバ1との通信ログと自システムへの時刻反映情報を記述する(ステップa)。
【0024】
次にステップaの処理を一定期間毎に繰り返してタイムスタンプシステム3の時刻を十分な精度で外部時刻に同期させる。外部時刻への同期周期よりも十分に長い期間毎(例えば、1日に一度)、履歴ファイル34aを一方向性関数(ハッシュ関数)を用いて符合化し、署名鍵を用いて証明書生成部35で電子署名を行ってタイムスタンプ証明書を生成する(ステップb)。
【0025】
次にステップbの処理で電子署名を行ったタイムスタンプ証明書のデータをデータベース37にレコードとして挿入し、そのタイムスタンプ証明書のハッシュ値を前レコードのタイムスタンプ証明書のハッシュ値と合算して累計ハッシュを生成してデータベース37に保存する(ステップc)。
【0026】
ステップa及びcの処理は一定期間ごとに繰り返され、その間にクライアント端末4からのタイムスタンプ証明書の発行の要求を受けて、タイムスタンプサシステム3はタイムスタンプ証明書を発行し、データベース37にレコードを追加し、証明書テーブル上の証明書のハッシュ値の累計ハッシュ値を更新する。さらに、タイムスタンプシステム3は、クライアント端末4からの要求を受けて、あるいは、一定期間毎にデータベース37に対してタイムスタンプ証明書を生成し、例えば、X.509形式のテーブルハッシュ証明書として生成し、公開部38を介してWEBでの掲載、メール送信等をすることによって、データベース37の累計ハッシュ値の公開を行う(ステップd)。公開が行われることで、データベース37の累計ハッシュ値は周知のものとなり、事後変更が不能となるため、データベース37に対するタイムスタンプ証明書に記載されたテーブルの全てのレコードは事後変更不能(改ざん不能)となる。
以上の処理により履歴ファイルに記述された内容は、改変不能なタイムスタンプ証明書によって強固に保護される。ひいては、外部認証局を必要とせず独自に履歴ファイルに記述されたシステム時刻の修正等の時刻運用の履歴の非改ざん性の検証が可能となる。
【0027】
【発明の効果】
本発明によれば、タイムスタンプシステムが正しい時刻で運用されていることが自システム内で利用可能な資源によって検証可能となり、安価に高い信頼性を持つタイムスタンプシステムを構築することができる。
【0028】
特に、外部時刻源から取得した高精度時刻による時刻修正や精度維持のための補正等の時刻運用の履歴ファイルに対するタイムスタンプ証明書を生成し、タイムスタンプ証明書の発行履歴を格納するデータベースのレコードの1つとして格納し、レコード毎にハッシュ値による符合化し、各レコードのハッシュ値の累計したハッシュ値である累計ハッシュ値をレコードの追加の度に計算して格納し、一定期間毎に累計ハッシュ値を含むタイムスタンプ証明書を公開することによれば、タイムスタンプシステムの証明書発行履歴は改ざん不能となり、時刻運用の履歴ファイルも、改ざん不能となる。すなわち、定期的に公開した証明書によってその間に生成されるレコード単位でデータベースの真正性を検証可能となっているので、データの一部に改ざんがあった場合でも、改ざん箇所を極力特定でき、高い精度で検証が可能である。その結果、従来技術に見られるように、時刻適応履歴ログファイルを外部認証局へ送付する必要がない。
【図面の簡単な説明】
【図1】 本発明の一実施例のタイムスタンプシステムの構成を示すブロック図。
【図2】 本発明の一実施例のタイムスタンプシステムのデータベースの説明のための説明図。
【図3】 本発明の一実施例のタイムスタンプシステムの動作説明のためのフローチャート。
【符号の説明】
1 外部時刻源(タイムサーバ)
3 タイムスタンプシステム
31 時刻生成部、時刻生成処理
32 外部時刻取込部、外部時刻取込処理
33 時刻修正部、時刻修正処理
34 履歴生成部、履歴生成処理
34a 履歴ファイル
35 証明書生成部、証明書生成処理
37 データベース
4 クライアント端末
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a time stamp system and a program thereof, and more particularly to a time stamp system and a program thereof capable of verifying a time operation history.
[0002]
[Prior art]
In order to guarantee the existence and non-tampering of electronic documents such as text documents, image information, computer programs, etc. at a certain time, the time information and authentication in the electronic document or its message digest (for example, the hash value of the electronic document) A time stamp system that issues a time stamp certificate generated by encrypting and encrypting a user's signature information is used. In such a time stamp system, a time used for the time stamp system is acquired from a time generator and stamped on an electronic document (see, for example, Patent Document 1).
[0003]
In a computer system such as a time stamp system, various tasks are controlled based on the system time recorded by the clock in the system. However, the accuracy of time generators used in general-purpose personal computers (PCs) is inferior compared to external time sources. If the system time of a time stamp system executed on a general-purpose PC is greatly different from the actual accurate time, an incorrect time is recorded, which is inconvenient for the time stamp system. For this reason, there is a system in which an external engine equipped with a high-accuracy time source synchronizes a clock in the system with a high-accuracy time and the external engine authenticates it (see, for example, Patent Document 2). In this method, a history file indicating that the high-accuracy time acquired from the time source of the external organization has been applied to the local system is sent to an external electronic signature organization, and signature authentication is performed.
[0004]
[Patent Document 1]
Japanese Patent No. 3278721 gazette
[Patent Document 2]
JP-A-2002-229869 [0006]
[Problems to be solved by the invention]
However, in Patent Document 2, a dedicated network resource is required to send a history file to an external electronic signature organization, and the non-falsification of the time operation history stored in the own system cannot be proved. There may be a problem in terms of cost and safety.
[0007]
SUMMARY OF THE INVENTION An object of the present invention is to provide a low-cost and high-security time stamp system that can independently verify a time operation history and a program therefor.
[0008]
[Means for Solving the Problems]
The time stamp system of the present invention is a time stamp system that issues a time stamp certificate in response to a request from a client terminal, and includes a time generation unit that generates a system time and an external time source that acquires an external time from an external time source. A time acquisition unit, and a time correction unit that corrects the system time generated by the time generation unit based on the external time acquired by the external time acquisition unit for each first period and synchronizes with the external time; A history generation unit that generates a history of time correction by the time correction unit as a history file, a certificate generation unit that generates a first time stamp certificate of the history file every second period, and the first time stamp certificate A second time stamp certificate for all records in the database. It generates, characterized in that it comprises a public portion to expose the second time stamp certificate.
[0009]
The database adds the record every time the first time stamp certificate is generated. Each record stores a record hash value and a cumulative hash value, which are hash values of the contents of the record. The cumulative hash value is a hash value for a value obtained by combining the record hash value of the record and the cumulative hash value of the record immediately before the record. The second hash value is obtained by applying an electronic signature to the cumulative hash value. It is preferable to generate a time stamp certificate.
[0010]
The database adds a third time stamp as the record each time a third time stamp certificate is issued to the client terminal, and the certificate generation unit adds a third time stamp certificate to the client terminal. it is also preferred to include a cumulative meter hash value of the previous record to the content of the third time stamp certificate when issuing.
[0011]
Further, the time stamp system program of the present invention, generates a system time a time stamp system program allowed to realize the processing for the time stamp certificate in response to a request from the client terminal on the computer, the time generator The time generation unit based on the external time acquisition process that causes the external time acquisition unit to acquire the external time from the external time source, and the external time acquired for each first period by the external time acquisition process. The time correction process for correcting the system time generated by the system to synchronize with the external time, the history generation process for causing the history generation unit to record the history of the time correction by the time correction process in the history file , and the certificate generation unit allowed to generate a first time stamp certificate of the history file every two periods certificate generation process Characterized comprising: a process allowed to store in the database the first time stamp certificate as one record, and a process allowed to generate a second time stamp certificate for all records in the database to the certificate generation unit .
[0012]
In addition, the process of storing in the database is to add the record every time it is generated, and each record stores a record hash value and a cumulative hash value which are hash values of the contents of the record, and the cumulative total The hash value is a process of setting a hash value for a value obtained by combining the record hash value of the record and the cumulative hash value of the record immediately before the record, and the process of generating the second time stamp certificate It is preferable to provide a process for generating an electronic signature on the hash value to generate the second time stamp certificate.
[0013]
The certificate generation unit includes a process of generating a third time stamp certificate issued in response to a request from the client terminal, and the process of storing in the database includes the generation of the third time stamp certificate. the contents of the third timestamp to each a process of adding to the database as the record, the third process allowed to generate a time stamp certificate, the cumulative meter hash value of the previous record in the third time stamp certificate It is also preferable that the time stamp system program includes a process included in the time stamp.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 shows a time stamp system according to an embodiment of the present invention. The time server 1 as an external time source has a highly accurate time generating unit (not shown), generates a highly accurate and reliable time, and is connected to the time stamp system 3 by a LAN 2. The time server 1 may include a standard time information acquisition device such as a telephone JJY or a long wave standard radio wave, and may synchronize the time of the own system with the standard time.
[0015]
The time stamp system 3 is realized by executing a time stamp system program on a general-purpose PC server. When the constituent elements are shown in a block form, a time generating unit 31, an external time capturing unit 32, and a time correcting unit 33 are shown. And a history generation unit 34, a certificate generation unit 35, a signature key storage unit 36, a database 37, and a disclosure unit 38.
[0016]
The time generation unit 31 generates an internal time of the time stamp system 3 (hereinafter referred to as system time), and is the above-described time generation program of the OS of the general-purpose PC server.
[0017]
The external time acquisition unit 32 makes a time inquiry to the time server 1 at a predetermined interval, for example, an hour interval, using a time inquiry protocol via the network defined by RFC2030, and external time (hereinafter, external time). Say).
[0018]
The time adjustment unit 33 synchronizes the system time generated by the time generation unit 31 with the external time obtained by the external time acquisition unit 32, and passes the external time information to the time correction program of the OS to correct the time. Is. Depending on the OS, the time correction unit 33 may have a function of accessing a time source, and the external time capturing unit 32 may be integrated with the time correction unit 33. Further, the time correction unit 33 passes the correction value to the time correction function to the time correction program. That is, the system time is updated by a predetermined value at a predetermined interval timer interval, and a correction value is added to the predetermined value to correct the time progress. The correction value is obtained, for example, by calculating the difference per interval timer interval from the difference between the external time and the system time at the time inquiry performed at a predetermined interval. By such time synchronization and correction, the system time is maintained with high accuracy. For example, in a Microsoft OS, Windows 2000 environment, fine adjustment in the ns order can be performed by using an OS standard time adjustment function (time correction program). Usually, when synchronization and correction are not performed, the progress error of the time generation unit 31 is about several seconds per day. However, according to synchronization and correction, the time progress between the system time and the external time is typical. The difference is reduced to about 10 ms per day.
[0019]
The history generation unit 34 stores the communication log with the time server 1 and the time reflection information to the own system, for example, the history of the external time for each time correction, the system time, their difference, correction value, etc. in one history file 34a. To record.
[0020]
The certificate generation unit 35 receives a certificate request for requesting issuance of a time stamp certificate for an electronic document from the client terminal 4, and obtains a one-way function (hash function) of the electronic document attached to the certificate request. The content of the time stamp certificate is generated by adding the system time acquired from the time generation unit 31 to the value (hash value) encoded by the action, and the signature key stored in the signature key storage unit 36 is used for the content. Then, encryption is performed to generate an electronic signature, and the electronic signature is attached to the content of the time stamp certificate and issued to the client terminal 4 as a time stamp certificate. Furthermore, the accumulated hash value of the database 37 to be described later may be included in the contents of the time stamp certificate.
[0021]
Further, the certificate generation unit 35 generates the time stamp certificate of the history file 34a at a predetermined interval, for example, the certificate generation unit 35 at a predetermined interval, for example, one day interval. For example, a hash value of the history file 34 a is generated, and the contents of the time stamp certificate are generated by adding the system time acquired from the time generation unit 31 to the hash value, and the content is stored in the signature key storage unit 36. An electronic signature is generated by performing encryption using the signed key, and is attached to the contents of the time stamp certificate as a time stamp certificate. Further, the certificate generation unit 35 inserts the history certificate as one record of the certificate table of the database 37, and, as will be described later, a predetermined interval, for example, an interval of 3 days, the time for the entire certificate table of the database 37. A stamp certificate is generated, that is, a time stamp certificate is generated by applying an electronic signature to a cumulative hash value, which will be described later, and is made public via the publishing unit 38 by WEB, e-mail, or the like. For example, the disclosure unit 38 includes a processing program that uploads a time stamp certificate for the entire certificate table of the database 37 to a predetermined WEB server (not shown) or transmits an e-mail to a predetermined mailing list.
[0022]
The certificate table of the database 37 has, for example, the first record 1 to the nth record n (n is an integer of 2 or more) as shown in FIG. The hash value Hn of the record is stored at the rear of the record n, and the cumulative hash value tbHn is stored at the end of the record n. The cumulative hash value tbHn is obtained as follows.
tbHn = Hash (Hn + tbHn-1)
That is, the cumulative hash value tbH is a hash value obtained for the sum of the hash value of the nth record and the cumulative hash value up to the (n-1) th record. In the case of the first record, since no previous record exists, a random value or a fixed value is substituted for tbH0 corresponding to tbHn-1. According to the cumulative hash value tbH, the record generation order is fixed, and the record cannot be changed afterwards. By issuing such a time stamp certificate of the database 37, it is possible to verify the non-falsification of the history file 34a, and as a result, it is proved that the system time is being operated to maintain high accuracy.
[0023]
Next, the operation of this example will be described with reference to the flowchart of FIG. The time stamp system 3 uses the external time capturing unit 32 to connect to the time server 1 via a prescribed connection procedure, and captures a highly accurate time generated by a time generating unit (not shown) of the time server 1. . The time correction unit 33 corrects the system time using the acquired external time, and simultaneously describes the communication log with the time server 1 and the time reflection information to the own system in the history file 34a (step a).
[0024]
Next, the process of step a is repeated at regular intervals to synchronize the time of the time stamp system 3 with the external time with sufficient accuracy. The history file 34a is encoded using a one-way function (hash function) every period sufficiently longer than the synchronization period to the external time (for example, once a day), and the certificate generation unit 35 is used using the signature key. The electronic signature is performed to generate a time stamp certificate (step b).
[0025]
Next, the data of the time stamp certificate that has been digitally signed in step b is inserted into the database 37 as a record, and the hash value of the time stamp certificate is added to the hash value of the time stamp certificate of the previous record. A cumulative hash is generated and stored in the database 37 (step c).
[0026]
The processes of steps a and c are repeated at regular intervals, and in the meantime, upon receiving a request for issuing a time stamp certificate from the client terminal 4, the time stamp system 3 issues a time stamp certificate and stores it in the database 37. Add a record and update the cumulative hash value of the certificate hash value on the certificate table. Further, the time stamp system 3 generates a time stamp certificate for the database 37 in response to a request from the client terminal 4 or at regular intervals. A cumulative hash value of the database 37 is disclosed by generating it as a table hash certificate in 509 format and posting it on the WEB, sending an e-mail, etc. via the disclosure unit 38 (step d). Since the cumulative hash value of the database 37 becomes publicly known and cannot be changed afterwards, all the records in the table described in the time stamp certificate for the database 37 cannot be changed afterwards (cannot be tampered with). )
The content described in the history file by the above processing is strongly protected by a time stamp certificate that cannot be modified. As a result, it is possible to verify non-falsification of the time operation history such as correction of the system time described in the history file independently without requiring an external certificate authority.
[0027]
【The invention's effect】
According to the present invention, it is possible to verify that the time stamp system is operated at the correct time by using resources available in the system, and it is possible to construct a time stamp system having high reliability at low cost.
[0028]
In particular, a database record that generates a time stamp certificate for a time operation history file such as time correction with high-accuracy time acquired from an external time source or correction for maintaining accuracy, and stores the issuance history of the time stamp certificate Stored as one of them, encoded with a hash value for each record, and a cumulative hash value, which is a cumulative hash value of each record, is calculated and stored each time a record is added. By publishing the time stamp certificate including the value, the certificate issuing history of the time stamp system cannot be tampered with, and the time operation history file cannot be tampered with. In other words, since it is possible to verify the authenticity of the database in units of records generated in the meantime with a certificate that has been published regularly, even if part of the data has been tampered with, the tampered part can be identified as much as possible, Verification with high accuracy is possible. As a result, it is not necessary to send the time adaptation history log file to the external certificate authority as seen in the prior art.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a time stamp system according to an embodiment of the present invention.
FIG. 2 is an explanatory diagram for explaining a database of a time stamp system according to an embodiment of the present invention.
FIG. 3 is a flowchart for explaining the operation of the time stamp system according to the embodiment of the present invention.
[Explanation of symbols]
1 External time source (time server)
3 Time Stamp System 31 Time Generation Unit, Time Generation Processing 32 External Time Acquisition Unit, External Time Acquisition Processing 33 Time Correction Unit, Time Correction Processing 34 History Generation Unit, History Generation Processing 34a History File 35 Certificate Generation Unit, Proof Document generation process 37 Database 4 Client terminal

Claims (6)

クライアント端末からの依頼に応じてタイムスタンプ証明書の発行を行うタイムスタンプシステムであって、
システム時刻を生成する時刻生成部と、
外部時刻源から外部時刻を取り込む外部時刻取込部と、
第1期間毎に上記外部時刻取込部により取り込んだ外部時刻に基づいて、上記時刻生成部の生成するシステム時刻を修正して上記外部時刻に同期させる時刻修正部と、
上記時刻修正部による時刻修正の履歴を履歴ファイルとして生成する履歴生成部と、
第2期間毎に上記履歴ファイルの第1タイムスタンプ証明書を生成する証明書生成部と、
上記第1タイムスタンプ証明書を1つのレコードとして記憶するデータベースと
を備え、上記データベースの総てのレコードに対する第2タイムスタンプ証明書を生成し、当該第2タイムスタンプ証明書を公開する公開部と
を備えることを特徴とするタイムスタンプシステム。
A time stamp system that issues a time stamp certificate in response to a request from a client terminal,
A time generator for generating system time;
An external time capturing unit that captures external time from an external time source;
A time correction unit that corrects the system time generated by the time generation unit and synchronizes with the external time based on the external time acquired by the external time acquisition unit for each first period;
A history generation unit for generating a history of time correction by the time correction unit as a history file;
A certificate generation unit for generating a first time stamp certificate of the history file every second period;
A database that stores the first time stamp certificate as one record, and generates a second time stamp certificate for all records in the database, and publishes the second time stamp certificate. A time stamp system comprising:
上記データベースは、上記第1タイムスタンプ証明書の生成毎に上記レコードを追加するものであり、それぞれのレコードには当該レコードの内容のハッシュ値であるレコードハッシュ値と累計ハッシュ値とを格納してあり、当該累計ハッシュ値は、当該レコードのレコードハッシュ値と当該レコードの直前のレコードの累計ハッシュ値とを合成した値に対するハッシュ値であり、
上記累計ハッシュ値に電子署名を施して上記第2タイムスタンプ証明書を生成する
ことを特徴とする請求項1に記載のタイムスタンプシステム。
Said database is to add the record for each generation of said first time stamp certificates, each record contains the record hash value and the cumulative hash value is a hash value of the contents of the record Yes, the cumulative hash value is a hash value for a value obtained by combining the record hash value of the record and the cumulative hash value of the record immediately before the record,
The time stamp system according to claim 1, wherein the second time stamp certificate is generated by applying an electronic signature to the cumulative hash value.
上記データベースは上記クライアント端末に第3タイムスタンプ証明書を発行する毎に第3タイムスタンプを上記レコードとして追加するものであり、
上記証明書生成部は上記クライアント端末に第3タイムスタンプ証明書を発行するときに直前のレコードの計ハッシュ値を上記第3タイムスタンプ証明書の内容に含めることを特徴とする請求項2に記載のタイムスタンプシステム。
The database adds a third time stamp as the record every time a third time stamp certificate is issued to the client terminal .
The certificate generation unit to claim 2, characterized in that included in the contents accumulated meter hash value of the previous record in the third time stamp certificate when issuing the third time stamp certificate to said client terminal The described time stamp system.
コンピュータ上にクライアント端末からの依頼に応じてタイムスタンプ証明書の発行を行う処理を実現せしめるタイムスタンプシステムプログラムであって、
時刻生成部にシステム時刻を生成せしめる時刻生成処理と、
外部時刻取込部に外部時刻源から外部時刻を取り込ませしめる外部時刻取得処理と、
上記外部時刻取得処理によって第1期間毎に取り込んだ外部時刻に基づいて、上記時刻生成部の生成するシステム時刻を修正して上記外部時刻に同期させる時刻修正処理と、
履歴生成部に上記時刻修正処理による時刻修正の履歴を履歴ファイルに記録せしめる履歴生成処理と、
証明書生成部に第2期間毎に上記履歴ファイルの第1タイムスタンプ証明書を生成せしめる証明書生成処理と、
上記第1タイムスタンプ証明書を1つのレコードとしてデータベースに記憶せしめる処理と、
上記証明書生成部に上記データベースの総てのレコードに対する第2タイムスタンプ証明書を生成せしめる処理と
を備えることを特徴とするタイムスタンプシステムプログラム。
A time stamp system program allowed to realize the processing for the time stamp certificate in response to a request from the client terminal on the computer,
Time generation processing for causing the time generation unit to generate the system time; and
An external time acquisition process for causing the external time acquisition unit to acquire an external time from an external time source; and
A time correction process for correcting the system time generated by the time generation unit based on the external time captured for each first period by the external time acquisition process and synchronizing with the external time;
A history generation process for causing the history generation unit to record a history of time correction by the time correction process in a history file;
A certificate generation process for causing the certificate generation unit to generate a first time stamp certificate of the history file for each second period;
Storing the first time stamp certificate in the database as one record;
Timestamp system program characterized by comprising a process allowed to generate a second time stamp certificate for all records in the database to the certificate generation unit.
上記データベースに記憶せしめる処理は、上記第1タイムスタンプ証明書の生成毎に上記レコードを追加するもので、それぞれのレコードには当該レコードの内容のハッシュ値であるレコードハッシュ値と累計ハッシュ値とを格納し、当該累計ハッシュ値は、当該レコードのレコードハッシュ値と当該レコードの直前のレコードの累計ハッシュ値とを合成した値に対するハッシュ値とする処理であり、
上記第2タイムスタンプ証明書を生成せしめる処理は、上記累計ハッシュ値に電子署名を施して上記第2タイムスタンプ証明書を生成する処理である
ことを特徴とする請求項4に記載のタイムスタンプシステムプログラム。
The process of storing in the database is to add the record every time the first time stamp certificate is generated, and each record includes a record hash value and a cumulative hash value that are hash values of the contents of the record. The accumulated hash value is a process of setting a hash value for a value obtained by combining the record hash value of the record and the accumulated hash value of the record immediately before the record,
The second time stamp certificate process allowed to generate the time stamp system according to claim 4, characterized in that by applying an electronic signature to the cumulative hash value is a process of generating the second time stamp certificate program.
上記証明書生成部に上記クライアント端末からの依頼に応じて発行される 第3タイムスタンプ証明書を生成せしめる処理を備え、
上記データベースに記憶せしめる処理は、上記第3タイムスタンプ証明書の生成毎に第3タイムスタンプを上記レコードとして上記データベースに追加する処理であり、
上記第3タイムスタンプ証明書を生成せしめる処理は、直前の上記レコードの計ハッシュ値を上記第3タイムスタンプ証明書の内容に含める処理である
ことを特徴とする請求項5に記載のタイムスタンプシステムプログラム。
A process for causing the certificate generation unit to generate a third time stamp certificate issued in response to a request from the client terminal ;
Processing allowed to store in the database is a process of adding a third time stamp for each generation of the third time stamp certificate in the database as the record,
The third process allowed to generate a time stamp certificate, the time stamp according to cumulative meter hash value immediately before the record to claim 5, characterized in that the process of including the contents of the third time stamp certificate System program.
JP2003054195A 2003-02-28 2003-02-28 Time stamp system and program thereof Expired - Lifetime JP4125975B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003054195A JP4125975B2 (en) 2003-02-28 2003-02-28 Time stamp system and program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003054195A JP4125975B2 (en) 2003-02-28 2003-02-28 Time stamp system and program thereof

Publications (2)

Publication Number Publication Date
JP2004266536A JP2004266536A (en) 2004-09-24
JP4125975B2 true JP4125975B2 (en) 2008-07-30

Family

ID=33118607

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003054195A Expired - Lifetime JP4125975B2 (en) 2003-02-28 2003-02-28 Time stamp system and program thereof

Country Status (1)

Country Link
JP (1) JP4125975B2 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4867494B2 (en) * 2006-06-21 2012-02-01 富士ゼロックス株式会社 Time stamp apparatus and program therefor
JP4753819B2 (en) * 2006-09-19 2011-08-24 日本電信電話株式会社 Information processing method, program and apparatus for enhancing evidence capability and / or evidence value of electromagnetic records
JP4762178B2 (en) * 2007-03-16 2011-08-31 セイコープレシジョン株式会社 Time authentication system, time authentication device, and program
US9032492B2 (en) 2011-09-01 2015-05-12 Microsoft Corporation Distributed computer systems with time-dependent credentials
US8640210B2 (en) * 2011-09-01 2014-01-28 Microsoft Corporation Distributed computer systems with time-dependent credentials
US9058467B2 (en) 2011-09-01 2015-06-16 Microsoft Corporation Distributed computer systems with time-dependent credentials
JP5742633B2 (en) * 2011-09-28 2015-07-01 富士通株式会社 Issuing device, issuing method, and issuing program
US9729327B2 (en) 2013-10-29 2017-08-08 International Business Machines Corporation Computer-based optimization of digital signature generation for records based on eventual selection criteria for products and services
JP2021052288A (en) * 2019-09-24 2021-04-01 デジタル・インフォメーション・テクノロジー株式会社 Data recorder, data recording method and program

Also Published As

Publication number Publication date
JP2004266536A (en) 2004-09-24

Similar Documents

Publication Publication Date Title
US8412946B2 (en) Trustworthy timestamps and certifiable clocks using logs linked by cryptographic hashes
JP4455474B2 (en) Time stamp update device and time stamp update program
CA2317139C (en) Folder type time stamping system and distributed time stamping system
JP2003244139A (en) Time stamp imprinting system to electronic document, and program medium thereof
JP4725978B2 (en) Time certification server, time certification method, and time certification program
US20080109651A1 (en) System and methods for digital file management and authentication
JP2001142398A (en) Folder type time certifying system and distributed time certifying system
US6742119B1 (en) Time stamping method using time delta in key certificate
JP4125975B2 (en) Time stamp system and program thereof
JP5958703B2 (en) Data certification system and data certification server
JP4901272B2 (en) Information generation processing program, information generation apparatus, and information generation method
JP5223860B2 (en) Time information distribution system, time distribution station, terminal, time information distribution method and program
JP3963315B2 (en) Time authentication method, time authentication request program, and time authentication request device
JP4210749B2 (en) Electronic file authentication system, electronic file authentication server, and electronic file authentication method
US6965998B1 (en) Time stamping method using time-based signature key
JP2013088927A (en) Authentication management device and authentication management method
JP2004260664A (en) Xml signature generation system with time stamp imparting function, device, method, and program
JP4929340B2 (en) Time stamp update device and time stamp update program
JP4613018B2 (en) Digital time stamp method
JP2006253896A (en) Document output apparatus and document verification apparatus
Guo et al. Study on the security of time-stamping service architecture
JP4647918B2 (en) Time stamp method
JP2004260666A (en) Time stamp certificate preparation method, its device, and its program
JP2010128875A (en) Electronic data management method
Morigaki et al. An analysis of detailed electronic time-stamping using digital TV

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050914

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080325

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080417

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080509

R150 Certificate of patent or registration of utility model

Ref document number: 4125975

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120516

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120516

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130516

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140516

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term