(57)【特許請求の範囲】
【請求項１】
クライアント端末からの依頼に応じてタイムスタンプを行うタイムスタンプシステムであって、
所定の割込み時間間隔で、当該割込み時間間隔を初期値に加算することによりシステム時刻を生成する時刻生成器と、
前記時刻生成器により生成されたシステム時刻を読込むシステム時刻読込み部と、
外部時刻源から外部時刻を取込む外部時刻取込み部と、
前記外部時刻と前記システム時刻とを比較する時刻比較部と、
前記外部時刻と前記システム時刻の時刻進度差に基づいて、前記システム時刻進度の補正値を求める時刻進度補正値計算部と、
前記時刻生成器が一定間隔で生成するシステム時刻の時刻進度を前記補正値で補正する時刻進度補正部と、を備え、
システム起動時の動作として、
所定の時間間隔で、前記時刻比較部により前記外部時刻と前記システム時刻とを比較し、当該比較結果として前記外部時刻と前記システム時刻との差異を求めるとともに、前記システム時刻を外部時刻に合わせることを所定回数繰り返した後に、
前記時刻進度補正値計算部により前記所定回数の前記差異の平均である平均差異を前記測定間隔と前記割込み時間間隔で割ってなる平均進度差を補正値として求める、ことを行い、
前記時刻進度補正部により、前記割り込み時間間隔毎のシステム時刻の生成時に前記外部時刻を取込むことなく当該補正値を前記システム時刻に加算することによって前記システム時刻の時刻進度を補正し、当該補正された時刻進度のシステム時刻に基づいてタイムスタンプを生成する
ことを特徴とするタイムスタンプシステム。
【請求項２】
請求項１記載のタイムスタンプシステムにおいて、システム起動時の動作の後に、一定の時間間隔の進度チェック間隔毎に、再度前記外部時刻と前記システム時刻との差異を求め、当該差異を進度チェック間隔と割込み時間隔で割ってなる値を求め、当該値を前記補正値に加え、前記時刻生成器が生成するシステム時刻の時刻進度を再度補正するタイムスタンプシステム。
【請求項３】
クライアント端末からの依頼に応じてタイムスタンプを行う方法であって、
時刻生成器により、所定の割込み時間間隔で、当該割込み時間間隔を初期値に加算することによりシステム時刻を生成し、
外部時刻源から外部時刻を取込み、
前記時刻生成器により生成されたシステム時刻を読込み、
前記外部時刻と前記時刻生成器の生成する前記システム時刻とを複数回比較し、
前記外部時刻と前記時刻生成器の生成する前記システム時刻との差から時刻進度差を求め、
前記時刻進度差から前記システム時刻の時刻進度の補正値を求め、
前記時刻生成器が一定間隔で生成するシステム時刻の時刻進度を前記補正値で補正する、
ステップを備え、
システム起動時の動作として、
所定の時間間隔で、前記比較するステップにおいて、前記外部時刻と前記システム時刻とを比較し、当該比較結果として前記外部時刻と前記システム時刻との差異を求めるとともに、前記システム時刻を外部時刻に合わせることを所定回数繰り返した後に、
前記補正値を求めるステップにおいて、前記所定回数の前記差異の平均である平均差異を前記測定間隔と前記割込み時間間隔で割ってなる平均進度差を補正値として求める、ことを行い、
前記時刻進度を補正するステップにおいて、前記割り込み時間間隔毎のシステム時刻の生成時に前記外部時刻を取込むことなく当該補正値を前記システム時刻に加算することによって前記システム時刻の時刻進度を補正し、当該補正された時刻進度のシステム時刻に基づいてタイムスタンプを生成する
ことを特徴とするタイムスタンプシステムのシステム時刻の時刻進度を補正する方法。
【請求項４】
請求項３記載のシステム時刻補正方法において、システム起動時の動作の後に、一定の時間間隔の進度チェック間隔毎に、再度前記外部時刻と前記システム時刻との差異を求め、当該差異を進度チェック間隔と割込み時間隔で割ってなる値を求め、当該値を前記補正値に加え、前記時刻生成器が生成するシステム時刻の時刻進度を再度補正する方法。
【請求項５】
クライアント端末からの依頼に応じてタイムスタンプを行うタイムスタンプシステムをコンピュータ上に実現せしめるタイムスタンプシステムプログラムであって、
所定の割込み時間間隔で、当該割込み時間間隔を初期値に加算することによりシステム時刻を生成する時刻生成処理と、
前記時刻生成処理により生成されたシステム時刻を読込むシステム時刻読込み処理と、
外部時刻源から外部時刻を取込む外部時刻取込み処理と、
前記外部時刻と前記システム時刻とを比較する時刻比較処理と、
前記外部時刻と前記システム時刻の時刻進度差に基づいて、前記システム時刻進度の補正値を求める時刻進度補正値計算処理と、
前記時刻生成処理によって一定間隔で生成されるシステム時刻の時刻進度を前記補正値で補正する時刻進度補正処理と、を備え、
システム起動時の動作として、
所定の時間間隔で、前記比較処理において、前記外部時刻と前記システム時刻とを比較し、当該比較結果として前記外部時刻と前記システム時刻との差異を求めるとともに、前記システム時刻を外部時刻に合わせることを所定回数繰り返した後に、
前記時刻進度補正値計算処理において、前記所定回数の前記差異の平均である平均差異を前記測定間隔と前記割込み時間間隔で割ってなる平均進度差を補正値として求める、ことを行い、
前記時刻進度補正処理において、前記割り込み時間間隔毎のシステム時刻の生成時に前記外部時刻を取込むことなく当該補正値を前記システム時刻に加算することによって前記システム時刻の時刻進度を補正し、当該補正された時刻進度のシステム時刻に基づいてタイムスタンプを生成する
ことを特徴とするタイムスタンプシステムプログラム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、タイムスタンプシステムとそのシステム時刻補正方法に関し、特に高精度かつ低コストで信頼できるシステム時刻を確立するためのシステムと方法に関する。
【０００２】
【従来の技術】
従来タイムスタンプシステム等の計算機システムでは、システム内の時計が刻むシステム時刻に基づいて、各種タスクの制御を行っている。しかし、汎用パーソナルコンピュータ（ＰＣ）で使用されている時刻発生器の精度は、外部時刻源と比較して劣っている。汎用ＰＣで実行されるタイムスタンプシステムのシステム時刻が実際の正確な時刻と大きく異なると、不正確な時刻を記録することになり、タイムスタンプシステムにとって不都合である。
【０００３】
そのため、従来のタイムスタンプシステムは、外部時刻源を信頼できるものであると仮定して、外部時刻源から時刻を獲得し、タイムスタンプシステムのシステム時刻を外部時刻源に一致させるように修正し、修正したシステム時刻をタイムスタンプシステムで使用している。
【０００４】
しかし、一般に時刻発生器のシステム時刻の精度が劣るので、頻繁に外部時刻源に問合せを行なって時刻の修正を行わなければ時刻精度を維持することができない。
また、タイムスタンプシステムの自機の時刻発生器の時刻と外部時刻源の時刻が大きく異なったとしても、自機の時刻発生器は精度が劣るので、自機の時刻発生器の異常か、外部時刻源に異常が発生しているのか区別することが困難である。
【０００５】
特開2002-73204号で開示された時刻修正技術では、システム時刻を生成するためにインターバルタイマによる割込み処理を行い、インターバルタイマの周期を変更することにより、外部時刻に対して計算機システムのシステム時刻を補正している。
しかし、特開2002-73204号に開示されたインターバルタイマの周期変更による割込み制御は、複雑な制御を必要とし、汎用ＰＣでは簡単に実現することはできない。所定の一定間隔（固定値）ごとのインターバルタイマの割込みによって時刻を補正する方法が望ましい。
【０００６】
【特許文献１】
特開２００２−７３２０４号
【０００７】
【発明が解決しようとする課題】
本発明は、このような問題点を解決するためなされたものであり、タイムスタンプシステムの時刻発生器の精度を、低コストで外部時刻源に近い精度まで高め、外部時刻源へ頻繁な問合せを行わなくても、自機内の時刻発生器を高精度の時刻発生源として使用することができるシステムと方法を提供しようとするものである。
【０００８】
【課題を解決するための手段】
本発明は１態様において、クライアント端末からの依頼に応じてタイムスタンプを行うタイムスタンプシステムであって、
所定の割込み時間間隔で、当該割込み時間間隔を初期値に加算することによりシステム時刻を生成する時刻生成器と、
前記時刻生成器により生成されたシステム時刻を読込むシステム時刻読込み部と、
外部時刻源から外部時刻を取込む外部時刻取込み部と、
前記外部時刻と前記システム時刻とを比較する時刻比較部と、
前記外部時刻と前記システム時刻の時刻進度差に基づいて、前記システム時刻進度の補正値を求める時刻進度補正値計算部と、
前記時刻生成器が一定間隔で生成するシステム時刻の時刻進度を前記補正値で補正する時刻進度補正部と、を備え、
システム起動時の動作として、
所定の時間間隔で、前記時刻比較部により前記外部時刻と前記システム時刻とを比較し、当該比較結果として前記外部時刻と前記システム時刻との差異を求めるとともに、前記システム時刻を外部時刻に合わせることを所定回数繰り返した後に、
前記時刻進度補正値計算部により前記所定回数の前記差異の平均である平均差異を前記測定間隔と前記割込み時間間隔で割ってなる平均進度差を補正値として求める、ことを行い、
前記時刻進度補正部により、前記割り込み時間間隔毎のシステム時刻の生成時に前記外部時刻を取込むことなく当該補正値を前記システム時刻に加算することによって前記システム時刻の時刻進度を補正し、当該補正された時刻進度のシステム時刻に基づいてタイムスタンプを生成する。
【０００９】
前記時刻比較部は、前記外部時刻と前記システム時刻との比較を３回以上行って複数の時刻進度差を求め、前記時刻進度補正値計算部は前記複数の時刻進度差を平均して前記時刻進度の補正値を求めても良い。
【００１０】
システム起動時の動作の後に、一定の時間間隔の進度チェック間隔毎に、再度前記外部時刻と前記システム時刻との差異を求め、当該差異を進度チェック間隔と割込み時間隔で割ってなる値を求め、当該値を前記補正値に加え、前記時刻生成器が生成するシステム時刻の時刻進度を再度補正してもよい。
【００１１】
本発明はまた、クライアント端末からの依頼に応じてタイムスタンプを行う方法であって、
時刻生成器により、所定の割込み時間間隔で、当該割込み時間間隔を初期値に加算することによりシステム時刻を生成し、
外部時刻源から外部時刻を取込み、
前記時刻生成器により生成されたシステム時刻を読込み、
前記外部時刻と前記時刻生成器の生成する前記システム時刻とを複数回比較し、
前記外部時刻と前記時刻生成器の生成する前記システム時刻との差から時刻進度差を求め、
前記時刻進度差から前記システム時刻の時刻進度の補正値を求め、
前記時刻生成器が一定間隔で生成するシステム時刻の時刻進度を前記補正値で補正する、
ステップを備え、
システム起動時の動作として、
所定の時間間隔で、前記比較するステップにおいて、前記外部時刻と前記システム時刻とを比較し、当該比較結果として前記外部時刻と前記システム時刻との差異を求めるとともに、前記システム時刻を外部時刻に合わせることを所定回数繰り返した後に、
前記補正値を求めるステップにおいて、前記所定回数の前記差異の平均である平均差異を前記測定間隔と前記割込み時間間隔で割ってなる平均進度差を補正値として求める、ことを行い、
前記時刻進度を補正するステップにおいて、前記割り込み時間間隔毎のシステム時刻の生成時に前記外部時刻を取込むことなく当該補正値を前記システム時刻に加算することによって前記システム時刻の時刻進度を補正し、当該補正された時刻進度のシステム時刻に基づいてタイムスタンプを生成する。
【００１２】
本発明はまた、クライアント端末からの依頼に応じてタイムスタンプを行うタイムスタンプシステムをコンピュータ上に実現せしめるタイムスタンプシステムプログラムであって、
所定の割込み時間間隔で、当該割込み時間間隔を初期値に加算することによりシステム時刻を生成する時刻生成処理と、
前記時刻生成処理により生成されたシステム時刻を読込むシステム時刻読込み処理と、
外部時刻源から外部時刻を取込む外部時刻取込み処理と、
前記外部時刻と前記システム時刻とを比較する時刻比較処理と、
前記外部時刻と前記システム時刻の時刻進度差に基づいて、前記システム時刻進度の補正値を求める時刻進度補正値計算処理と、
前記時刻生成処理によって一定間隔で生成されるシステム時刻の時刻進度を前記補正値で補正する時刻進度補正処理と、を備え、
システム起動時の動作として、
所定の時間間隔で、前記比較処理において、前記外部時刻と前記システム時刻とを比較し、当該比較結果として前記外部時刻と前記システム時刻との差異を求めるとともに、前記システム時刻を外部時刻に合わせることを所定回数繰り返した後に、
前記時刻進度補正値計算処理において、前記所定回数の前記差異の平均である平均差異を前記測定間隔と前記割込み時間間隔で割ってなる平均進度差を補正値として求める、ことを行い、
前記時刻進度補正処理において、前記割り込み時間間隔毎のシステム時刻の生成時に前記外部時刻を取込むことなく当該補正値を前記システム時刻に加算することによって前記システム時刻の時刻進度を補正し、当該補正された時刻進度のシステム時刻に基づいてタイムスタンプを生成する。
【００１３】
本発明では、外部時刻源を正しい時刻を表示していると信頼し、システム起動時に外部時刻源の時刻と自機の時刻発生器のシステム時刻とを測定する。時刻の測定を繰り返し、外部時刻源と自機の時刻発生器との時刻進度差を求める。複数回求めた時刻進度差の平均値を平均時刻進度差とし、平均時刻進度差を自機の時刻発生器の時刻進度に対して一定間隔毎に加減する。これにより、自機の時刻発生器のシステム時刻の時刻進度を外部時刻源の時刻進度と一致させる。
【００１４】
即ち、自機の時刻発生器は、ＣＰＵ周波数などの固定的周波数発生源を基準にして固定した時間間隔で割込みを行い、割込み時に時間増加値を平均時刻進度差の分だけ加減することでシステム時刻の時刻進度の補正を行う。これにより、時刻が正確で高い信頼性を持つタイムスタンプシステムを得ることができる。
【００１５】
また、システム起動後は、定期的に外部時刻源から時刻を取得し、外部時刻源の時刻進度をタイムスタンプシステムの時刻発生器の時刻進度と比較して、時刻発生器の時刻進度を再度補正することにより、更に時刻進度の精度を高めることが出来る。
【００１６】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態について説明する。
図１は、本発明の実施の形態による自機で時刻キャリブレーションを行うタイムスタンプシステム5と、外部時刻源1と、クライアント端末6を含むシステムの概要を示す。外部時刻源1は、高精度の時刻発生器2を有し、高精度の信頼できる時刻を発生する。この外部時刻源1は、ＬＡＮ3に接続されている。タイムスタンプシステム4は、自機内に時刻発生器5を有し、システム時刻を生成する。また、ＬＡＮ3に接続されている。外部時刻源1の時刻発生器2は、タイムスタンプシステム4からの要求により、タイムスタンプシステム4に対してＬＡＮ3経由で時刻発生器2の時刻を供給することができる。
【００１７】
ＬＡＮ3には、クライアント端末6が接続されている。クライアント端末6はタイムスタンプシステム4にタイムスタンプ証明書を要求することができ、タイムスタンプシステム4は、クライアント端末6にタイムスタンプ証明書を発行することができる。
【００１８】
タイムスタンプシステム4は、システム起動時に外部時刻源1の時刻発生器2と自機の時刻発生器5との時刻進度差を補正する。補正された時刻で電子文書に対してタイムスタンプを押印し、クライアント端末6にタイムスタンプ証明書を発行する。
【００１９】
図２により、タイムスタンプシステム4の構成を説明する。外部時刻取込み部11は、外部時刻源1に時刻を問合わせ、外部時刻源1の時刻発生器2から、高精度の時刻を受領する。システム時刻読取り部12は自機内の時刻発生器5からシステム時刻を読み取る。時刻比較部13は、外部時刻源1からの時刻進度と、自機内の時刻発生器5からのシステム時刻の時刻進度とを比較する。時刻補正値計算部14は、時刻比較部13における比較結果をもとに、自機内の時刻発生器5のシステム時刻の進度補正値を計算する。時刻進度補正部15は、計算した補正値だけ時刻発生器5の進度を補正する。タイムスタンプ発行部18は、クライアント端末6からタイムスタンプの依頼を受けると、システム時刻読取り部12から時刻を読み取り、タイムスタンプ証明書を生成して、クライアント端末6に送信する。
【００２０】
図３により、本システムの実施の形態によるタイムスタンプシステムの時刻進度補正ステップを説明する。この例では、タイムスタンプシステム4は、汎用ＰＣサーバを使用し、ＯＳはマイクロソフト社製Windows（登録商標）2000である。
【００２１】
ステップＳ１では、汎用ＰＣにてタイムスタンプシステム4のプログラムを起動する。特にシステム導入時には、ステップＳ２〜Ｓ６の手順で、ＰＣで実施されるタイムスタンプシステム4のシステム時刻の時刻進度の補正を行う。
ステップＳ２では、タイムスタンプシステム4は、外部時刻取込み部11により、外部時刻源1にRFC2030に規定されたネットワーク経由の時刻問合わせプロトコルを用いて、時刻の問合わせを行う。
【００２２】
ステップＳ３では、外部時刻源1は、タイムスタンプシステム4からの時刻問合わせを受けて、時刻発生器2から高精度の時刻を取出し、ＲＦＣに規定された応答プロトコルによりタイムスタンプシステム4へ時刻を通知する。
ステップＳ４では、タイムスタンプシステム4は、外部時刻取込み部11で外部時刻源1から時刻の通知を受領し、自機の時刻発生器5のシステム時刻を外部時刻源1の高精度の時刻に合わせこみ、同時に、システム時刻読取り部12において、自機の時刻発生器5のシステム時刻を読み取る。
【００２３】
予め定めた所定間隔後、例えば、１時間後にタイムスタンプシステムは、外部時刻源1に２回目の時刻問合せを行い、タイムスタンプシステム4は、外部時刻源1から時刻の通知を受領する。同時に、自機の時刻発生器5のシステム時刻を読み取る。
タイムスタンプシステムは、ステップＳ２〜Ｓ４の手順を予め定めた所定の回数だけ繰り返し、所定の回数だけ外部時刻源1からの時刻と、自機の時刻発生器5のシステム時刻とを読み取る。例えば、１時間毎に時刻問合せ及び時刻合わせを行い、これを２４回行い、すなわち、２４時間かけてステップＳ２〜Ｓ４の手順を行う。
【００２４】
次に、ステップＳ５では、時刻比較部13で、１回目に測定した外部時刻源1の時刻と自機の時刻発生器5のシステム時刻との差異を算出する。
次に、２回目に測定した外部時刻源1の時刻と自機のシステム時刻との差異を算出する。３回目以降もそれぞれの回数の測定について外部時刻源1の時刻と自機のシステム時刻との差異を算出する。
【００２５】
次に、時刻補正値計算部14で、１回目〜２４回目の時刻問合せ及び時刻合わせ時の差異を平均して平均差異を求めて、これに基づいて外部時刻源1の時刻進度と、自機の時刻発生器5のシステム時刻の時刻進度との時刻進度差を求める。ここで、時刻進度差は後述する割込み時間間隔CTでの差異のファクターであり、例えば、平均差異を測定間隔と割込み時間間隔CTとで割ったものとする。
【００２６】
以上のように時刻合わせをしながら繰り返し求めた外部時刻源1の時刻と時刻発生器5のシステム時刻との差異を平均した平均差異に基づいて時刻進度差を算出し、これをシステム時刻の時刻進度の補正値とするが、これに限らず、各時刻問合せの際に時刻合わせをせず、各時刻問合せの差異を比較し、例えば１回目と２回目との差異を比較して時刻進度差を求め、これらに基づいて平均時刻進度差を求めても良い。
【００２７】
ステップＳ６では、時刻進度補正部15により、まず通常の方法により、自機の時刻発生器5のシステム時刻を外部時刻源1の時刻に合わせる。
次に、ステップＳ５で算出された外部時刻源1の時刻進度と時刻発生器5の時刻進度の差異を調整するために、一定間隔の割込み時ごとに、時刻発生器5の時刻進度に平均時刻進度差だけ補正を加える。
【００２８】
ここで、本発明の実施の形態による時刻進度補正方法を更に詳しく説明する。
本発明の実施の形態によるシステムは、ＣＰＵ周波数等を基準とする固定値である割込み時間間隔CTをインターバルとして割込みが発生し、時刻生成を行う。
即ち、システムの初期時刻T0に対して、次は、
T1 = T0 + CT                  (式１）
で時刻生成を行う(これは汎用ＰＣでは一般的である)。
【００２９】
割込み時間間隔CTにおける時刻発生器1と時刻発生器5の平均の時刻進度差をdTとすると、T1における補正された時刻は、
T1 = T0 + CT + dT              (式２）
として生成される。
ここに、タイムスタンプシステム4の時刻発生器5の時刻進度が、外部時刻源1の時刻発生器2の時刻進度より速い場合は、dTはマイナスの値であり、時刻発生器5の時刻進度が、時刻発生器2の時刻進度より遅い場合は、dTはプラスの値である。
【００３０】
同様にして、システム始動後の運用時においては、ある時刻生成時の時刻をTn-1として、時刻発生器5は、次の時刻生成時Tnにおいては、
Tn = Tn-1 + CT + dT            (式３）
によりdTだけ補正された時刻を生成する。即ち、時間間隔CTごとにdTだけ時刻進度に補正を加える。
【００３１】
Windows（登録商標）2000環境下おいてはＯＳ標準の時刻調整関数を利用することで、ｎｓオーダーでの微調整を行うことができる。通常は時刻発生器5の進度誤差は日差数秒程度であるが、本発明の実施の形態によれば、典型的な場合では、時刻発生器1と時刻発生器5との時刻進度の差異は、日差10ｍｓ程度まで縮小される。
【００３２】
以上のように、ステップＳ２〜Ｓ４の差異の測定を所定回数行い、適当な平均時刻進度差が確定し、時刻発生器５の進度補正が一旦終了した後には、タイムスタンプシステム４の時刻は適当な精度に維持されたものとなり、タイムスタンプシステム４はタイムスタンプ処理を開始する。ステップＳ７では、クライアント端末6において電子文書が発生し、これにタイムスタンプを押印する要求が生じる。
ステップＳ８では、クライアント端末6は、電子文書をタイムスタンプシステム4に送信し、タイムスタンプを要求する。
【００３３】
ステップＳ９では、タイムスタンプシステム4は、クライアント端末6からタイムスタンプ要求を受けて、システム時刻読取り部12により、時刻発生器5から現在のシステム時刻を取得する。
ステップＳ１０では、タイムスタンプシステム4は、タイムスタンプ証明書発行部18において、電子文書に電子署名を行いタイムスタンプ証明書を添付する。この電子署名を行った電子文書をクライアント端末6に送信する。
ステップＳ１１では、クライアント端末6は、電子文書とタイムスタンプ証明書を受領する。
【００３４】
タイムスタンプシステム4は、定期的に時刻進度のチェックを行うために、次のような時刻進度の補正を行う。すなわち、システム導入時に一旦適当な平均時刻進度差が得られた後も、所定の間隔（例えば、１日に４回）で時刻問合せを行い、進度補正を行う。これをステップＳ１２〜Ｓ１６に示す。ステップＳ１２では、システム起動後予め定めた所定時間後に外部時刻源1に対してRFC2030で規程された手順で時刻問合せを行う。
【００３５】
ステップＳ１３では、外部時刻源1は時刻発生器2から時刻を取得し、タイムスタンプシステム4に時刻を通知する。
ステップＳ１４では、タイムスタンプシステム4は、外部時刻源1から時刻の通知を受領し、同時に時刻発生器5のシステム時刻を読み取る。
【００３６】
ステップＳ１５では、外部時刻源1の時刻と自機の時刻発生器5のシステム時刻との差異を求め、時刻進度チェック間隔Ｔ及び割込み時間間隔CTに基づき、時間間隔CT当りの差異のファクターを求める。このファクターに時刻の進み、遅れを相殺するための値を加えて差異dcTとする。この値は、例えば、差異のファクターの１／２であり、しかも急激な時刻の進み遅れの変動を抑えるため１時間当り３ｍｓを超えないものとする。また、この値は差異のファクターそのままの値であっても良い。
【００３７】
タイムスタンプシステム4は、時刻発生器1と時刻発生器5の時刻進度差を再度評価し、差異が異常に大きければ、タイムスタンプシステム5の管理者に警告を行い、タイムスタンプシステム5を停止する。差異が、予め定めた通常の範囲ないであれば、次のステップＳ１６に進む。
【００３８】
ステップＳ１６では、ステップＳ５で算出された補正値dTで補正されている時刻に、ステップＳ１５で算出された差異dcTを加えて、時刻発生器5に与える時刻進度の補正値 dT + dcTとし、ステップＳ６で示す(式３)を更に補正して、
Tn = Tn-1 + CT + dT + dcT        (式４)
とし、一定間隔で時刻発生器5が発生する時刻をさらに微調整する。
【００３９】
時刻発生器5の時刻精度は、システム起動時のステップＳ２〜Ｓ４の補正によって十分に高められているため、ステップＳ１２〜Ｓ１５による時刻補正の頻度が一日に数回程度でも、ステップＳ１５では、時刻発生器2と時刻発生器5との間の時刻進度差(dcT)は極めて小さい値として算出される。
【００４０】
もし、dcTの絶対値が所定の値を超えて異常に大きい場合は、外部時刻源1又は、タイムスタンプシステム4の時刻発生器5のいずれか、あるいはその時刻問合せ機構に何らかの問題があると考えられるので、タイムスタンプシステム5の管理者に警告を行い、タイムスタンプシステム5を停止する。
【００４１】
なお、タイムスタンプシステム4は、一旦適当な平均時刻進度差が得られていれば、シャットダウンされて再起動された場合は、図示しない記憶装置に格納された平均時刻進度差を用いて進度補正を行えば良く、再起動時に所定回数の進度補正を必要としない。
従来は、自機の時刻発生器5の時刻精度が十分に高くなかったので、dcTの値に対する客観的な評価を下すことが出来なかった。本発明により、自機の時刻発生器5の精度が飛躍的に高まることにより、dcTの値は極めて小さい値となるので、この値によりシステムの異常に対する評価を行うことが可能となる。
【００４２】
【発明の効果】
以上説明したように、本発明では、タイムスタンプシステムの起動時に、時刻発生器の生成するシステム時刻を外部時刻源と比較して時刻進度の補正値を求め、一定間隔で時刻進度を補正することで時刻発生器のシステム時刻の時刻進度の精度を高める。
そのため、自機の時刻発生器の精度を、外部時刻源に近い精度まで簡単に高めることができ、外部時刻源への頻繁な問合せを行わなくても高精度の時刻発生源として使用することができる。また、外部時刻源が継続して信頼できるかどうかを判定することができる。これは、汎用ＰＣを用いて高精度の時刻で運用する必要があるタイムスタンプシステムに特に有効である。
【図面の簡単な説明】
【図１】本発明の実施の形態によるシステムの概略図。
【図２】本発明の実施の形態によるタイムスタンプシステムの構成図。
【図３】本発明の実施の形態によるタイムスタンプシステムの時刻進度調整ステップの概略図。
【符号の説明】
1  外部時刻源
2  時刻発生器
3  ＬＡＮ
4  タイムスタンプシステム
5  時刻発生器
6  クライアント端末
11  外部時刻取込み部
12  システム時刻読取り部
13  時刻比較部
14  時刻進度補正値計算部
15  時刻進度補正部
18  タイムスタンプ証明書発行部
【図１】
0004703102.tif 000002
【図２】
0004703102.tif 000003
【図３】
0004703102.tif 000004