説明

時刻補正装置、時刻補正システム、時刻補正方法及びプログラム

【課題】NTPサーバの障害に起因してシステムとNTPサーバとの時刻差が許容範囲を超えた場合、システム側の時刻補正手段を大幅に改造しなくとも、そのことを確実に管理者に通知できるようにする。
【解決手段】時刻補正手段11は、NTPサーバ15に対して時刻補正要求メッセージを送信し、これに応答してNTPサーバ15から送られてきた時刻補正応答メッセージに基づいて自システム10とNTPサーバ15との時刻差を算出し、この時刻差に基づいて自システムの時刻を補正する。また、上記時刻差はデータベース14に格納する。監視手段12は、データベース14を参照し、予め定められている閾値以上の時刻差が格納されている場合は、前記時刻補正手段を停止させると共に、アラームを発する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、システムの時刻を正確な時刻に同期させる時刻補正技術に関する。
【背景技術】
【0002】
課金サーバや証券取引システムなどのように、システムの時刻を正確な時刻に同期させることが必要になるシステムは数多く存在し、このようなシステムに対する時刻補正技術として次のような技術が知られている(例えば、特許文献1参照)。
【0003】
特許文献1に記載されている技術は、NTP(Network Time Protocol)サーバを利用してシステムの時刻を協定世界時(UTC;Coordinated Universal Time)と同期させるものであり、具体的には次のようにしている。先ず、システム側の時刻補正手段(NTPクライアントと呼ばれるプログラムによって実現される)が、NTPサーバに対して時刻補正要求メッセージを送信し、これを受信したNTPサーバが、システムに対して時刻補正応答メッセージを送信する。システム内の時刻補正手段は、時刻補正応答メッセージを受信すると、それに含まれている時刻情報(時刻補正要求メッセージの送受信時刻と、時刻補正応答メッセージの送信時刻)を利用して、自システムの現在時刻とNTPサーバの現在時刻(協定世界時)との時刻差を算出する。その後、時刻補正手段は、算出した時刻差を利用して自システムの時刻を補正すると共に、上記時刻差を含んだログ情報をNTPサーバへ送信する。
【0004】
NTPサーバは、ログ情報を受信すると、それに含まれている時刻差が許容範囲を超えているか否かを判定する。そして、許容範囲を超えている場合には、システムに対して許容範囲外検知メールを送信し、システムの管理者などに時刻差が許容範囲を超えたことを通知する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2003−196170号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上述した特許文献1に記載されている技術には、次のような問題がある。NTPサーバに障害が発生した場合、時刻補正応答メッセージに含まれる時刻情報が不正なものとなり、この不正な時刻情報を用いて算出した時刻差が許容範囲を超える場合がある。しかし、特許文献1に記載されている技術では、上記時刻差を含んだログ情報を障害の発生したNTPサーバへ送信し、障害の発生したNTPサーバにおいて時刻差が許容範囲を超えたか否かを判定するようにしているため、時刻差が許容範囲を超えていることを検出できず、許容範囲外検知メールが送信されない場合がある。このため、システムの管理者などが時刻差が許容範囲を超えたことを認識できず、適切な処置が行われない場合があるという問題がある。
【0007】
このような問題点を解決するためには、例えば、システム側の時刻補正手段に、時刻差が許容範囲を超えているか否かを判定し、超えている場合には、そのことを管理者に通知する機能を組み込むようにすれば良いが、この場合には、時刻補正手段の大幅な改造が必要になるという問題が生じる。
【0008】
〔発明の目的〕
そこで、本発明の目的は、システム側の時刻補正手段を大幅に改造しなくとも、サーバの障害に起因してシステムの現在時刻とサーバの現在時刻との時刻差が許容範囲を超えた場合、そのことを確実に管理者に通知することができる時刻補正装置を提供することにある。
【課題を解決するための手段】
【0009】
本発明にかかる時刻補正装置は、
サーバと接続されるシステムに含まれ、前記システムの時刻を前記サーバの時刻に合わせる時刻補正装置であって、
前記サーバから取得した時刻情報を利用して前記サーバの現在時刻と自システムの現在時刻との時刻差を算出して時刻差記憶部に格納すると共に、自システムの現在時刻を補正する時刻補正手段と、
前記時刻差記憶部を参照し、予め定められている閾値以上の時刻差が格納されている場合は、アラームを発する監視手段とを備える。
【0010】
本発明にかかる時刻補正システムは、
時刻補正装置を含むシステムと、サーバとを備え、
前記時刻補正装置は、
前記サーバから取得した時刻情報を利用して前記サーバの現在時刻と自システムの現在時刻との時刻差を算出して時刻差記憶部に格納すると共に、自システムの現在時刻を補正する時刻補正手段と、
前記時刻差記憶部を参照し、予め定められている閾値以上の時刻差が格納されている場合は、アラームを発する監視手段とを備える。
【0011】
本発明にかかる時刻補正方法は、
サーバから取得した時刻情報を利用して前記サーバの現在時刻と自システムの現在時刻との時刻差を算出して時刻差記憶部に格納すると共に自システムの現在時刻を補正する第1のステップと、
前記時刻差記憶部を参照し、予め定められている閾値以上の時刻差が格納されている場合は、アラームを発する第2のステップとを含む。
【0012】
本発明にかかるプログラムは、
サーバから取得した時刻情報を利用して前記サーバの現在時刻と自システムの現在時刻との時刻差を算出して時刻差記憶部に格納すると共に、自システムの現在時刻を補正する時刻補正手段を備えるコンピュータを、
前記時刻差記憶部を参照し、予め定められている閾値以上の時刻差が格納されている場合は、アラームを発する監視手段として機能させる。
【発明の効果】
【0013】
本発明によれば、システム側の時刻補正手段を大幅に改造しなくとも、サーバの障害に起因してシステムの現在時刻とサーバの現在時刻との時刻差が許容範囲を超えた場合、そのことを確実に管理者に通知することができるという効果を得ることができる。
【図面の簡単な説明】
【0014】
【図1】本発明にかかる時刻補正システムの第1の実施の形態の構成例を示す図である。
【図2】システム10全体の処理例を示すフローチャートである。
【図3】認証手段13の詳細な処理例を示すフローチャートである。
【図4】監視手段12の詳細な処理例を示すフローチャートである。
【図5】本発明にかかる時刻補正システムの第2の実施の形態における監視手段12の詳細な処理例を示すフローチャートである。
【図6】本発明にかかる時刻補正システムの第3の実施の形態における監視手段12の詳細な処理例を示すフローチャートである。
【発明を実施するための形態】
【0015】
〔本発明の第1の実施の形態〕
次に、本発明にかかる時刻補正システムの第1の実施の形態について詳細に説明する。図1を参照すると、本実施の形態にかかる時刻補正システムは、システム10と、複数のNTPサーバ15〜17と、認証局(CA;Certificate Authority)18とを含んでいる。
【0016】
システム10は、厳密な時刻管理が必要な課金サーバや証券取引システムなどのシステムであり、時刻補正手段11と、監視手段12と、認証手段13と、データベース(DB)14とを備えている。
【0017】
本実施の形態では、NTPを用いた時刻補正をより高信頼化するために、時刻補正手段11を補助する認証手段13、および、監視手段12の2つの手段をシステム10内に設けている。
【0018】
時刻補正手段11は、認証手段13を介してNTPサーバ15〜17の何れかと時刻補正要求メッセージおよび時刻補正応答メッセージを送受信し(遅延時間が最も少ないサーバと通信を行うのが望ましい)、時刻補正応答メッセージに含まれている時刻情報に基づいて、その送信元のNTPサーバの現在時刻と自システム10の現在時刻との時刻差を算出し、算出した時刻差を利用して自システム10の時刻(システムクロック)を補正する機能や、算出した時刻差をデータベース14に格納する機能を有する。なお、時刻補正手段11は、NTPクライアントと呼ばれるプログラムをCPU(Central Processing Unit;図示せず)で実行することにより実現される手段である。
【0019】
認証手段13は、システム10がNTPサーバ15〜17とNTPを用いて時刻補正を実施する場合に、公開かぎ暗号方式を用いてNTPサーバのなりすまし、メッセージの改ざんを検出する機能を有する。なお、認証手段13は、認証用プログラムをCPUで実行することにより実現される手段である。
【0020】
監視手段12は、時刻補正手段11がデータベース14に格納した時刻差を定期的に監視し、異常と判断されるような値が書き込まれていた場合に、時刻補正手段11を停止し、保守者にアラームをあげる機能を有する。なお、監視手段12は、監視用プログラムをCPUで実行することにより実現される手段である。
【0021】
認証局18は、NTPサーバ15〜17に対して公開かぎ証明書を発行する。NTPサーバ15〜17は、認証局18から発行を受けた公開かぎ証明書をシステム10に配付したり、システム10との間で時刻補正要求メッセージおよび時刻補正応答メッセージを送受信する機能を有する。
【0022】
〔第1の実施の形態の動作の説明〕
次に、図2のフローチャートを参照して本実施の形態の動作について詳細に説明する。
【0023】
悪意のある第三者によるNTPサーバのなりすまし、および時刻補正応答メッセージの改ざんを公開暗号化方式を用いて検出するため、NTPサーバ(例えば、NTPサーバ15)は、NTPの暗号化通信に用いる公開かぎの登録申請を認証局18に対して行い、公開かぎ証明書の発行を要求する(ステップ200)。これに対し認証局18は、所定の認証登録手続きを行い、NTPサーバ15に公開かぎ証明書を発行する(ステップ201)。次に、NTPサーバ15は、この公開かぎ証明書をシステム10に送付する(ステップ202)。
【0024】
システム10内の認証手段12は、公開かぎの正当性をこの公開かぎ証明書により確認し(ステップ203)、以降この公開かぎを用いてNTPサーバ15とNTP通信を行う。
【0025】
時刻補正を行うシステム10内の時刻補正手段11は、ある一定の周期毎に、NTPサーバ15に対し、時刻補正要求メッセージを送信する(ステップ204)。このとき、認証手段13が、NTPサーバ15の公開かぎを用いて時刻補正要求メッセージを暗号化するので(ステップ205)、上記公開かぎに対応する秘密かぎを有しているNTPサーバ15のみが上記時刻補正要求メッセージを処理できる。なお、時刻補正手段11が送信する時刻補正要求メッセージには、その送信時刻t1が含まれる。
【0026】
NTPサーバ15は、時刻補正要求メッセージに対する時刻補正応答メッセージにデジタル署名とメッセージダイジェストとを加え、自身の秘密かぎによって暗号化しシステム10に送信する(ステップ206)。なお、時刻補正応答メッセージには、時刻情報として、時刻補正要求メッセージの送信時刻t1および受信時刻t2と、時刻補正応答メッセージの送信時刻t3とが含まれる。
【0027】
時刻補正応答メッセージを受け取った認証手段13は、NTPサーバ15の公開かぎでそれを復号したあと、メッセージの改ざんの有無、第三者によるなりすましの有無を確認する(ステップ207)。
【0028】
図3は、図2のステップ207で認証手段13が行う動作の詳細を示している。認証手段13は、NTPサーバ15からの時刻補正応答メッセージを受け取ると(ステップ30)、NTPサーバ15の公開かぎにて時刻補正応答メッセージを復号する(ステップ31)。次いで、時刻補正応答メッセージ内に付与されているデジタル署名を確認し、NTPサーバ15が第三者によりなりすまされていないことを確認し(ステップ32)、もし、なりすましが検出されたら、時刻補正応答メッセージを廃棄する(ステップ36)。そうでなければ、次にメッセージダイジェストを確認し、第三者による時刻補正応答メッセージの改ざんがないことを確認し(ステップ33)、もし、改ざんが検出されたら先と同様に廃棄する(ステップ36)。なお、デジタル署名を用いてなりすましの有無を確認する方法、また、メッセージダイジェストを用いてメッセージの改ざんを検出する方法は一般によく知られているため、説明を割愛する。最後に、時刻補正手段11の状態を確認し(ステップ34)、時刻補正手段11が動作していた場合は正常な時刻補正応答メッセージであると保障できるため、これを時刻補正手段11へ転送する(ステップ35)。もし、監視手段12によって時刻補正手段11の動作が停止されていた場合は、時刻補正応答メッセージを廃棄する(ステップ36)。以上が図2のステップ207、208で行われる処理の詳細である。
【0029】
再び図2に戻り、ステップ207の確認により時刻補正応答メッセージの正常性が確認されると、認証手段13は時刻補正手段11に時刻補正応答メッセージを転送する(ステップ208)。これを受け取った時刻補正手段11は、そのときの時刻t4と、時刻補正応答メッセージに含まれている各時刻t1〜t3とに基づいて、自システム10の現在時刻とNTPサーバ15の現在時刻との時刻差を算出し、この時刻差を含んだ時刻情報をデータベース14に格納する(ステップ209)。そして、時刻補正手段11は、データベース14に格納されている時刻情報をもとに、NTPサーバ15の刻む時刻に自システム10の時刻を徐々に近付けていく。
【0030】
一方、監視手段12は、一定の周期毎(本実施の形態では、時刻補正手段11が時刻補正要求メッセージを送信する周期と同じ周期とするが、異なっていても良い)に、時刻補正手段11がデータベース14に格納した時刻情報を読み出し(ステップ210)、NTPサーバ15が通知してくる時刻情報の正当性を判定し(ステップ211)、異常が検出された場合は、時刻補正手段11を停止させ、保守者にアラーム通知する(ステップ212)。
【0031】
図4は監視手段11の動作の詳細を示している。監視手段12は一定の周期で処理を開始し(ステップ40)、先ず、データベース14から時刻情報を読み出す(ステップ41)。この時刻情報には、NTPサーバ15の現在時刻とシステム10自身の現在時刻との時刻差が含まれている。ここで、時刻補正手段11は、NTPサーバ15に問合せを行うたびに(時刻補正要求メッセージを送信するたびに)、NTPサーバ15の刻む時刻にシステム10自身の時刻を徐々に近付けるように動作するので、時刻差は問合せのたびに小さくなるはずである。
【0032】
NTPサーバ15とシステム10との時刻差を確認したときに(ステップ42)、前回NTPサーバ15に問合せしたときよりも値が小さくなって改善されていた場合は、処理を終えて次の監視周期まで待機する(ステップ45)。つまり、時刻差が減少傾向にある場合は、NTPサーバ15からは正確な時刻情報を含んだ時刻補正応答メッセージが送られてきていると判断できるので、確認手段11は、その処理を終えて次の監視周期まで待機する。なお、データベース14に時刻情報が1つだけしか登録されていない場合(時刻補正手段11による時刻補正処理が1回だけしか行われていない場合)は、ステップ41の実行後、ステップ42をスキップしてステップ43を実行する。
【0033】
逆に、時刻差が大きくなって悪化していた場合は、その値がシステム10として許容できる範囲(システム設計時に保守者により決められる閾値)に入っているかどうかをチェックする(ステップ43)。許容できる範囲なら処理を終了し、次の監視周期を待つ(ステップ45)。しかし、許容できる範囲を超えていた場合は、NTPサーバ15は正確な時刻情報を通知してきておらず、これ以上のNTP通信は意味がないと判断し、時刻補正手段11を停止させ(ステップ44)、以降はNTP通信による時刻補正を行わない。同時に、保守者にNTP通信に異常があることをアラーム通知し(ステップ44)、NTPサーバ15の状態を確認するなどの回復措置をとらせるように仕向け、早期復旧に努める。なお、時刻補正手段11を停止させた場合は、システム10の時刻が協定世界時から大きくずれないようにするため、例えば、システムクロックをリアルタイムクロックに合わせる、あるいは、システム10の時刻をリアルタイムクロックによって表される時刻とする等の措置をとることができる。
【0034】
〔第1の実施の形態の効果〕
本実施の形態によれば、システム10側の時刻補正手段11を大幅に改造しなくとも、NTPサーバ15の障害に起因してシステム10の現在時刻とNTPサーバ15の現在時刻との時刻差が許容範囲を超えた場合、そのことを確実に保守者に通知することができるという効果を得ることができる。その理由は、時刻補正手段11によってNTPサーバ15の現在時刻とシステムの現在時刻との時刻差が格納されたデータベース14を参照し、予め定められている閾値を超える時刻差が格納されている場合、時刻補正手段11を停止させると共に、アラームを発する監視手段12を備えているからである。
【0035】
また、本実施の形態によれば、システム10とNTPサーバ15との間の無駄なトラフィックをなくすことができる。その理由は、データベース14に閾値を超える時刻差が格納されている場合(NTPサーバ15に障害が発生している場合)は、時刻補正手段11を停止させ、NTPサーバ15との間の通信を停止させるようにしているからである。
【0036】
また、本実施の形態によれば、改ざんされた時刻補正応答メッセージや、なりすましによる時刻補正応答メッセージを使用して、システム10の時刻を補正してしまうという事態を確実に防止することができるという効果を得ることができる。その理由は、時刻補正応答メッセージに含まれているデジタル署名によりなりすましを検出し、メッセージダイジェストにより改ざんを検出する認証手段を備えているからである。
【0037】
〔本発明の第2の実施の形態〕
次に本発明にかかる時刻補正システムの第2の実施の形態について説明する。本実施の形態は、監視手段12に図4のフローチャートに示す処理の代わりに、図5のフローチャートに示す処理を行わせることにより実現される。
【0038】
図5を参照すると、本実施の形態では、ステップ45の前でステップ50の処理を行っている点が、本発明の第1の実施の形態と相違する。ここでは、相違する点のみ説明する。ステップ50では、データベース14に格納されている最新の時刻差に基づいて、次の監視周期を決定するようにしている。より具体的には、時刻差が小さい場合ほど、監視周期を長くするようにしている。つまり、時刻差が小さい場合は、時刻補正が安定して行われていると判定し、監視周期を長くする。このようにすることにより、時刻補正に伴う負荷を低減させることができる。
【0039】
〔第2の実施の形態の効果〕
本実施の形態によれば、時刻補正に伴う負荷を低減させることができる。その理由は、データベース14に格納されている最新の時刻差が小さい場合ほど、監視周期を長くするようにしているからである。
【0040】
〔本発明の第3の実施の形態〕
次に本発明にかかる時刻補正システムの第3の実施の形態について説明する。本実施の形態は、監視手段12に図4のフローチャートに示す処理の代わりに、図6のフローチャートに示す処理を行わせることにより実現される。
【0041】
図6を参照すると、本実施の形態では、ステップ45の前でステップ60の処理を行うようにしている点が、本発明の第1の実施の形態と相違する。ここでは、相違する点についてのみ説明する。ステップ60では、データベース14に格納されている最新の時刻差と、時刻差の増減傾向とに基づいて監視周期を決定するようにしてる。より具体的には、例えば、データベース14に格納されている時刻差が増加傾向にあるのか、減少傾向にあるのかを、最新の時刻差とその1つ前の時刻差とから判定する。そして、最新の時刻差が短い場合ほど、監視周期が長くなり、かつ、時刻差が増加傾向にある場合は、減少傾向にある場合に比較して監視周期が短くなるように、監視周期を決定する。前述したように、時刻差が小さい場合は、時刻補正が安定して行われていると考えられるが、時刻差が小さくても、それが増加傾向にある場合には、何らかの異常が発生している危険性がある。そこで、本実施の形態では、上記したように、時刻差が増加傾向にある場合には、監視周期を短くし、もし障害が発生していたら、それを迅速に検出できるようにしている。
【0042】
〔第3の実施の形態の効果〕
本実施の形態によれば、時刻補正に伴う負荷を低減させ、且つ障害を迅速に検出することが可能になる。その理由は、時刻差と、その増減傾向に基づいて監視周期を決定するようにしているからである。
【産業上の利用可能性】
【0043】
本発明は、課金サーバ、証券取引システムを代表とする、厳密な時刻管理を必要とするシステムに適用すると好適である。
【符号の説明】
【0044】
10…システム
11…時刻補正手段
12…監視手段
13…認証手段
14…データベース(DB)
15〜17…NTPサーバ
18…認証局(CA)

【特許請求の範囲】
【請求項1】
サーバと接続されるシステムに含まれ、前記システムの時刻を前記サーバの時刻に合わせる時刻補正装置であって、
前記サーバから取得した時刻情報を利用して前記サーバの現在時刻と自システムの現在時刻との時刻差を算出して時刻差記憶部に格納すると共に、自システムの現在時刻を補正する時刻補正手段と、
前記時刻差記憶部を参照し、予め定められている閾値以上の時刻差が格納されている場合は、アラームを発する監視手段とを備えることを特徴とする時刻補正装置。
【請求項2】
請求項1記載の時刻補正装置において、
前記監視手段は、前記時刻差記憶部に前記予め定められている閾値以上の時刻差が格納されている場合は、前記時刻補正手段を停止させることを特徴とする時刻補正装置。
【請求項3】
請求項1または2記載の時刻補正装置において、
前記監視手段は、一定周期で前記時刻差記憶部を参照することを特徴とする時刻補正装置。
【請求項4】
請求項1または2記載の時刻補正装置において、
前記監視手段は、前記時刻差記憶部を参照する毎に、前記時刻差記憶部に格納されている最新の時刻差に基づいて前記時刻差記憶部に対する参照周期を変更することを特徴とする時刻補正装置。
【請求項5】
請求項1または2記載の時刻補正装置において、
前記監視手段は、前記時刻差記憶部を参照する毎に、前記時刻差記憶部に格納されている時刻差が増加傾向にあるのか減少傾向にあるのかを判定し、この判定結果と前記時刻差記憶部に格納されている最新の時刻差とに基づいて前記時刻差記憶部に対する参照周期を変更することを特徴とする時刻補正装置。
【請求項6】
請求項4記載の時刻補正装置において、
前記監視手段は、前記最新の時刻差が短い場合ほど、前記時刻差記憶部に対する参照周期を長くすることを特徴とする時刻補正装置。
【請求項7】
請求項5記載の時刻補正装置において、
前記監視手段は、前記最新の時刻差が短い場合ほど、前記時刻差記憶部に対する参照周期が長くなり、かつ、前記時刻差記憶部に格納されている時刻差が増加傾向にある場合は、減少傾向にある場合に比較して前記時刻差記憶部に対する参照周期が短くなるように、前記時刻差記憶部に対する参照周期を変更することを特徴とする時刻補正装置。
【請求項8】
請求項1乃至7の何れか1項に記載の時刻補正装置において、
前記時刻情報は付加情報としてデジタル署名およびメッセージダイジェストを含み、且つ前記サーバの秘密かぎで暗号化されており、
前記時刻補正装置は、前記時刻情報を認証局によって認証されている前記サーバの公開かぎで復号した後、デジタル署名によりなりすましの有無を判定すると共にメッセージダイジェストにより改ざんの有無を判定し、なりすましが無く且つ改ざんがない場合、復号した時刻情報を前記時刻補正手段に渡す認証手段を更に備えることを特徴とする時刻補正装置。
【請求項9】
時刻補正装置を含むシステムと、サーバとを備え、
前記時刻補正装置は、
前記サーバから取得した時刻情報を利用して前記サーバの現在時刻と自システムの現在時刻との時刻差を算出して時刻差記憶部に格納すると共に、自システムの現在時刻を補正する時刻補正手段と、
前記時刻差記憶部を参照し、予め定められている閾値以上の時刻差が格納されている場合は、アラームを発する監視手段とを備えることを特徴とする時刻補正システム。
【請求項10】
サーバから取得した時刻情報を利用して前記サーバの現在時刻と自システムの現在時刻との時刻差を算出して時刻差記憶部に格納すると共に自システムの現在時刻を補正する第1のステップと、
前記時刻差記憶部を参照し、予め定められている閾値以上の時刻差が格納されている場合は、アラームを発する第2のステップとを含むことを特徴とする時刻補正方法。
【請求項11】
サーバから取得した時刻情報を利用して前記サーバの現在時刻と自システムの現在時刻との時刻差を算出して時刻差記憶部に格納すると共に、自システムの現在時刻を補正する時刻補正手段を備えるコンピュータを、
前記時刻差記憶部を参照し、予め定められている閾値以上の時刻差が格納されている場合は、アラームを発する監視手段として機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2010−231310(P2010−231310A)
【公開日】平成22年10月14日(2010.10.14)
【国際特許分類】
【出願番号】特願2009−75730(P2009−75730)
【出願日】平成21年3月26日(2009.3.26)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】