(57)【特許請求の範囲】
【請求項１】
時刻証明を要する電子データについて、複数の時刻認証局にタイムスタンプの発行を要求するタイムスタンプ要求部と、
前記複数の時刻認証局から前記タイムスタンプを受信するタイムスタンプ受信部と、
前記複数の時刻認証局から受信した複数の前記タイムスタンプを前記電子データと関連付けて記憶するタイムスタンプ記憶部と、
を備えたことを特徴とする情報処理システム。
【請求項２】
請求項１に記載の情報処理システムにおいて、
前記複数の時刻認証局の一部の時刻認証局をタイムスタンプ要求先として記憶する要求先テーブルを含み、
前記タイムスタンプ要求部は、前記要求先テーブルに含まれる前記時刻認証局に前記タイムスタンプの要求を行うことを特徴とする情報処理システム。
【請求項３】
請求項２に記載の情報処理システムにおいて、
前記要求先テーブルは、前記複数の時刻認証局の中からランダムに選択された一部の時刻認証局を含むことを特徴とする情報処理システム。
【請求項４】
請求項２または３に記載の情報処理システムにおいて、
前記電子データの前記タイムスタンプの発行要求を受け付ける受付部と、
前記受付部が前記発行要求を受け付けた時刻と前記タイムスタンプ受信部が前記タイムスタンプを受信した時刻から遅延時間を算出する遅延時間算出部と、
前記遅延時間算出部が算出した前記遅延時間の統計を前記複数の時刻認証局毎に取る統計部と、
前記統計部が統計した統計遅延時間を前記複数の時刻認証局毎に記憶する遅延時間記憶部と、
を含むことを特徴とする情報処理システム。
【請求項５】
請求項４に記載の情報処理システムにおいて、
前記要求先テーブルは、前記統計遅延時間に基づいて選択された時刻認証局を含むことを特徴とする情報処理システム。
【請求項６】
請求項４または５に記載の情報処理システムにおいて、
前記統計遅延時間に応じて、前記時刻認証局毎に得点を付与し、前記得点に応じて前記時刻認証局をランク付けし、信頼度ランクとして記憶する信頼度テーブルを含むことを特徴とする情報処理システム。
【請求項７】
請求項４乃至６いずれかに記載の情報処理システムにおいて、
前記タイムスタンプ受信部が受信した複数の前記タイムスタンプを前記複数の時刻認証局毎に記憶する第２のタイムスタンプ記憶部をさらに備え、
前記遅延時間算出部は、前記第２のタイムスタンプ記憶部に記憶された前記複数の時刻認証局から受信した複数の前記タイムスタンプの受信時刻から遅延時間を算出することを特徴とする情報処理システム。
【請求項８】
タイムスタンプ記憶部を準備するステップと、
時刻証明を要する電子データについて、複数の時刻認証局にタイムスタンプの発行を要求するステップと、
前記複数の時刻認証局から前記タイムスタンプを受信するステップと、
前記複数の時刻認証局から受信した複数の前記タイムスタンプを前記電子データと関連付けて前記タイムスタンプ記憶部に記憶するステップと、
を含むことを特徴とする情報処理方法。
【請求項９】
請求項８に記載の情報処理方法において、
遅延時間記憶部を準備するステップと、
前記電子データの前記タイムスタンプの発行要求を受け付けるステップと、
前記受け付けるステップで前記発行要求を受け付けた時刻と前記タイムスタンプを受信するステップで前記タイムスタンプを受信した時刻から遅延時間を算出するステップと、
前記遅延時間を算出するステップで算出した前記遅延時間の統計を前記複数の時刻認証局毎に取るステップと、
前記統計を取るステップで統計した統計遅延時間を前記複数の時刻認証局毎に前記遅延時間記憶部に記憶するステップと、
を含むことを特徴とする情報処理方法。
【請求項１０】
請求項９に記載の情報処理方法において、
第２のタイムスタンプ記憶部を準備するステップと、
前記タイムスタンプを受信するステップが受信した複数の前記タイムスタンプを前記複数の時刻認証局毎に前記第２のタイムスタンプ記憶部に記憶するステップと、を含み、
前記遅延時間を算出するステップは、前記第２のタイムスタンプ記憶部に記憶された前記複数の時刻認証局から受信した複数の前記タイムスタンプの受信時刻から遅延時間を算出することを特徴とする情報処理方法。
【請求項１１】
タイムスタンプ記憶部を備えたコンピュータに、
時刻証明を要する電子データについて、複数の時刻認証局にタイムスタンプの発行を要求する手段、
前記複数の時刻認証局から前記タイムスタンプを受信する手段、
前記複数の時刻認証局から受信した複数の前記タイムスタンプを前記電子データと関連付けて前記タイムスタンプ記憶部に記憶する手段、
として機能させるための情報処理プログラム。
【請求項１２】
請求項１１に記載の情報処理プログラムにおいて、
前記コンピュータは、遅延時間記憶部をさらに備え、
前記コンピュータに、
前記電子データの前記タイムスタンプの発行要求を受け付ける手段、
前記受け付ける手段で前記発行要求を受け付けた時刻と前記タイムスタンプを受信する手段で前記タイムスタンプを受信した時刻から遅延時間を算出する手段、
前記遅延時間を算出する手段で算出した前記遅延時間の統計を前記複数の時刻認証局毎に取る手段、
前記統計を取る手段で統計した統計遅延時間を前記複数の時刻認証局毎に前記遅延時間記憶部に記憶する手段、
として機能させるための情報処理プログラム。
【請求項１３】
請求項１２に記載の情報処理プログラムにおいて、
前記コンピュータは、第２のタイムスタンプ記憶部を備え、
前記コンピュータに、
前記タイムスタンプを受信する手段が受信した複数の前記タイムスタンプを前記複数の時刻認証局毎に前記第２のタイムスタンプ記憶部に記憶する手段として機能させ、
前記遅延時間を算出する手段を、前記第２のタイムスタンプ記憶部に記憶された前記複数の時刻認証局から受信した複数の前記タイムスタンプの受信時刻から遅延時間を算出する手段として機能させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、情報処理方法および情報処理プログラムに関し、特に、電子データの時刻証明の信頼性を検証可能な情報処理システム、情報処理方法および情報処理プログラムに関する。
【背景技術】
【０００２】
従来の時刻監査システム装置としては、例えば特許文献１に記載されたものがある。同文献に記載された時刻監査システムは、複数のタイムスタンプ機器と正確な時刻を配信する時刻配信機器とを有し、時刻配信機器は、一定時間おきに現在の時刻および乱数と与えられたリンク情報から時刻情報を生成してタイムスタンプ機器に配信するとともに、その生成した時刻情報をその生成時刻、使用したリンク情報および乱数とともに格納する。また、タイムスタンプ機器は、時刻情報が配信されると、前回の配信で格納された時刻情報に代えて今回配信された時刻情報を格納するとともに、その前回の配信で格納された時刻情報と乱数を用いて時刻監査情報を生成して時刻配信機器に送信する。この時刻監査情報は、時刻配信機器にて、次回配信する時刻情報のリンク情報として使用されるとともに対応する時刻情報と一緒に格納される。このような構成により、時刻情報やタイムスタンプの時刻などの情報の改ざんを確実に防止することができる。
【特許文献１】特開２００４−２３５８２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記文献記載の従来技術は、時刻情報やタイムスタンプの時刻などの情報の改ざんを確実に防止し、かつ改ざんを検出することを目的としている。また、複数のタイムスタンプ機器が、全て完全に動作することが前提であり、タイムスタンプの発行および保存は、複数のタイムスタンプ機器のうちいずれか一つである。さらに、時刻配信機器は、正確な時刻を発信することが前提である。
【０００４】
ところで、たとえば、科学技術分野において、不特定多数のユーザ間で情報交換を行うようなシステムにおいて、タイムスタンプを利用して、各ユーザの情報発信の時刻の順序を確定する場合、短時間に多数の情報が発信され、大量のタイムスタンプが使用されることが想定される。従来の商用システムは、大量にタイムスタンプを必要とする場合は、コスト面で高価なものとなってしまう。
【０００５】
また、タイムスタンプで情報発信時刻の順位を決定する場合、使用する時刻認証局やネットワーク環境などによって、実際の発行要求時刻から誤差が生じてしまう可能性があり、順位の決定に不平等が生じ兼ねない。
【０００６】
本発明は上記事情に鑑みてなされたものであり、その目的とするところは、耐障害性が向上し、精度および信頼性の高いタイムスタンプ検証が可能な情報処理システムおよび検証システムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明によれば、時刻証明を要する電子データについて、複数の時刻認証局にタイムスタンプの発行を要求するタイムスタンプ要求部と、
前記複数の時刻認証局から前記タイムスタンプを受信するタイムスタンプ受信部と、
前記複数の時刻認証局から受信した複数の前記タイムスタンプを前記電子データと関連付けて記憶するタイムスタンプ記憶部と、
を備えたことを特徴とする情報処理システムが提供される。
【０００８】
ここで、電子データとは、たとえば、テキスト形式（テキスト、ＨＴＭＬ、ＰＤＦ、ＸＭＬなど）やバイナリ形式（各種画像、アプリケーションデータなど）を含むディジタルデータである。あるいは、インターネットなどのネットワークを介してサーバなどに送信された電子データであってもよい。例として、ウェブページ上の掲示板やブログ、フォームなどへの投稿電子データなどを含む。
【０００９】
情報処理システムは、演算装置およびメモリを備えた機器を含み、たとえば、パーソナルコンピュータ、ＰＤＡ（Personal Digital Assistance）、携帯電話などのユーザ端末とすることができる。あるいは、時刻認証局（ＴＳＡ：Time Stamp Authority）内に含むこともできる。
【００１０】
タイムスタンプ要求部は、ディジタルデータをハッシュ値に変換し、ハッシュ値をＴＳＡに送信してタイムスタンプの発行を要求する。タイムスタンプ記憶部は、ディジタルデータと、タイムスタンプが付与されたディジタルデータのハッシュ値とを関連付けて記憶し、管理する。本発明において、一つのディジタルデータに対して複数のタイムスタンプが付与され、関連付けられて記憶される。複数の時刻認証局は、少なくとも３つ以上とするのが好ましい。
【００１１】
この発明によれば、複数の時刻認証局から取得した複数のタイムスタンプを電子データに付与することができるので、１つのタイムスタンプのみの電子データに比較してタイムスタンプの信頼性が向上する。
【００１４】
上記情報処理システムにおいて、前記複数の時刻認証局の一部の時刻認証局をタイムスタンプ要求先として記憶する要求先テーブルを含むことができ、前記タイムスタンプ要求部は、前記要求先テーブルに含まれる前記時刻認証局に前記タイムスタンプの要求を行うことができる。
【００１５】
上記情報処理システムにおいて、前記要求先テーブルは、前記複数の時刻認証局の中からランダムに選択された一部の時刻認証局を含むことができる。
【００１６】
上記情報処理システムにおいて、前記電子データの前記タイムスタンプの発行要求を受け付ける受付部と、前記受付部が前記発行要求を受け付けた時刻と前記タイムスタンプ受信部が前記タイムスタンプを受信した時刻から遅延時間を算出する遅延時間算出部と、前記遅延時間算出部が算出した前記遅延時間の統計を前記複数の時刻認証局毎に取る統計部と、前記統計部が統計した統計遅延時間を前記複数の時刻認証局毎に記憶する遅延時間記憶部と、を含むことができる。
【００１７】
ここで、遅延時間は、受付部が発行要求を受け付けてからタイムスタンプ要求部が要求を行うまでに要する要求時間、タイムスタンプ要求部が要求をしてから時刻認証局が要求を受け付けるまでの上り時間、時刻認証局がタイムスタンプの発行に要する発行時間、時刻認証局からタイムスタンプ受信部がタイムスタンプを受信するまでの下り時間を加算した値である。
【００１８】
この構成によれば、時刻認証局毎に複数のタイムスタンプの遅延時間の統計をとることができるので、時刻認証局毎にタイムスタンプの信頼性の評価の指標として使用することができ、信頼性が向上する。また、複数のタイムスタンプに基づいて遅延時間の統計値を評価に使用するので、一部の時刻認証局に一時的に障害が生じてタイムスタンプが取得できなかった場合や一部のタイムスタンプが改ざんされた場合でも、タイムスタンプの評価に影響が及ばず、精度および信頼性が向上する。
【００１９】
また、複数のタイムスタンプを使用するので、全てのＴＳＡや時刻配信局（ＴＡ：Time Authority）が正確に動作する必要がなく、一部のＴＳＡやＴＡに障害が発生した場合にも、影響を受けることなく、タイムスタンプの検証が可能となり、耐障害性が向上する。
【００２０】
上記情報処理システムにおいて、前記要求先テーブルは、前記統計遅延時間に基づいて選択された時刻認証局を含むことができる。ここで、統計遅延時間を所定の範囲で区切ったランク毎に複数の時刻認証局を分類し、ランクテーブルを作成し、ランクテーブルに基づいて、所定ランク以上の時刻認証局を選択することができる。すなわち、統計遅延時間が所定値以下の時刻認証局を選択することができる。また、統計遅延時間は、複数のタイムスタンプの前記遅延時間の平均値、中央値、最頻値とすることができる。これらの値によって、時刻認証局をランク分けすることができる。または、複数のタイムスタンプの遅延時間の標準偏差を算出し、時刻認証局をランク分けすることもできる。
【００２１】
上記情報処理システムにおいて、前記統計遅延時間に応じて、前記時刻認証局毎に得点を付与し、前記得点に応じて前記時刻認証局をランク付けし、信頼度ランクとして記憶する信頼度テーブルを含むことができる。
上記情報処理システムにおいて、前記タイムスタンプ受信部が受信した複数の前記タイムスタンプを前記複数の時刻認証局毎に記憶する第２のタイムスタンプ記憶部をさらに備えることができ、前記遅延時間算出部は、前記第２のタイムスタンプ記憶部に記憶された前記複数の時刻認証局から受信した複数の前記タイムスタンプの受信時刻から遅延時間を算出することができる。
この構成によれば、各時刻認証局から取得した複数のタイムスタンプを時刻認証局毎に記憶するので、各時刻認証局のタイムスタンプの信頼性の検証を行うことが可能となり、一つの時刻認証局のタイムスタンプを使用する場合に比較して信頼性が向上する。
【００２２】
本発明によれば、タイムスタンプ記憶部を準備するステップと、
時刻証明を要する電子データについて、複数の時刻認証局にタイムスタンプの発行を要求するステップと、
前記複数の時刻認証局から前記タイムスタンプを受信するステップと、
前記複数の時刻認証局から受信した複数の前記タイムスタンプを前記電子データと関連付けて前記タイムスタンプ記憶部に記憶するステップと、
を含むことを特徴とする情報処理方法が提供される。
【００２３】
上記情報処理方法において、遅延時間記憶部を準備するステップと、前記電子データの前記タイムスタンプの発行要求を受け付けるステップと、前記受け付けるステップで前記発行要求を受け付けた時刻と前記タイムスタンプを受信するステップで前記タイムスタンプを受信した時刻から遅延時間を算出するステップと、前記遅延時間を算出するステップで算出した前記遅延時間の統計を前記複数の時刻認証局毎に取るステップと、前記統計を取るステップで統計した統計遅延時間を前記複数の時刻認証局毎に前記遅延時間記憶部に記憶するステップと、を含むことができる。
さらに、上記情報処理方法において、第２のタイムスタンプ記憶部を準備するステップと、前記タイムスタンプを受信するステップが受信した複数の前記タイムスタンプを前記複数の時刻認証局毎に前記第２のタイムスタンプ記憶部に記憶するステップと、を含むことができ、前記遅延時間を算出するステップは、前記第２のタイムスタンプ記憶部に記憶された前記複数の時刻認証局から受信した複数の前記タイムスタンプの受信時刻から遅延時間を算出することができる。
【００２４】
本発明によれば、タイムスタンプ記憶部を備えたコンピュータに、
時刻証明を要する電子データについて、複数の時刻認証局にタイムスタンプの発行を要求する手段、
前記複数の時刻認証局から前記タイムスタンプを受信する手段、
前記複数の時刻認証局から受信した複数の前記タイムスタンプを前記電子データと関連付けて前記タイムスタンプ記憶部に記憶する手段、
として機能させるための情報処理プログラムが提供される。
【００２５】
上記情報処理プログラムにおいて、前記コンピュータは、遅延時間記憶部をさらに備えることができ、前記コンピュータに、前記電子データの前記タイムスタンプの発行要求を受け付ける手段、前記受け付ける手段で前記発行要求を受け付けた時刻と前記タイムスタンプを受信する手段で前記タイムスタンプを受信した時刻から遅延時間を算出する手段、前記遅延時間を算出する手段で算出した前記遅延時間の統計を前記複数の時刻認証局毎に取る手段、前記統計を取る手段で統計した統計遅延時間を前記複数の時刻認証局毎に前記遅延時間記憶部に記憶する手段、として機能させることができる。
上記情報処理プログラムにおいて、前記コンピュータは、第２のタイムスタンプ記憶部を備えることができ、前記コンピュータに、前記タイムスタンプを受信する手段が受信した複数の前記タイムスタンプを前記複数の時刻認証局毎に前記第２のタイムスタンプ記憶部に記憶する手段として機能させ、前記遅延時間を算出する手段を、前記第２のタイムスタンプ記憶部に記憶された前記複数の時刻認証局から受信した複数の前記タイムスタンプの受信時刻から遅延時間を算出する手段として機能させることができる。
【００２６】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００２７】
本発明によれば、耐障害性が向上し、精度および信頼性の高いタイムスタンプ検証が可能な情報処理システムおよび検証システムが提供される。
【発明を実施するための最良の形態】
【００２８】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００２９】
本発明は、電子データに付与されたタイムスタンプの信頼性を検証するために、複数のＴＳＡによって発行された複数のタイムスタンプに基づいて、統計処理を行い、ＴＳＡの信頼情報を生成し、タイムスタンプの信頼性の検証を可能とするものである。このＴＳＡの信頼情報は、複数のＴＳＡから発行されたタイムスタンプの時刻順位を決定する際の指標となる。
【００３０】
図１は、本発明の実施形態に係る情報処理システムの構成を示すブロック図である。ここでは、ユーザ端末１００において、複数のタイムスタンプを取得し、電子データに付与するための構成について説明する。上述のＴＳＡの信頼情報および時刻順位決定に関する構成については、後述する。
【００３１】
本実施形態の情報処理システム（ユーザ端末１００）は、時刻証明を要する電子データ（原本データ１０１）について、複数の時刻認証局にタイムスタンプ（タイムスタンプ１０９）の発行を要求するタイムスタンプ要求部（タイムスタンプ要求部１０６）と、複数の時刻認証局（第１ＴＳＡ２００ａ、第２ＴＳＡ２００ｂ、第３ＴＳＡ２００ｃ）からタイムスタンプを受信するタイムスタンプ受信部（タイムスタンプ受信部１１０）と、複数の時刻認証局から受信した複数のタイムスタンプを電子データと関連付けて記憶するタイムスタンプ記憶部（タイムスタンプ付与部１１２、データ管理部１１４、タイムスタンプ記憶部１１６）と、を備える。
【００３２】
情報処理システムにおいて、ユーザ端末１００は、たとえば、インターネットやＬＡＮなどのネットワーク１に接続されたパーソナルコンピュータ、ＰＤＡ、携帯電話などである。なお、図１において、本発明の本質に関わらない部分の構成については省略してある。また、ＴＳＡ２００ａ、ＴＳＡ２００ｂ、ＴＳＡ２００ｃは、ユーザからの要求に応じてタイムスタンプを発行する時刻配信業者であり、ユーザ端末１００にネットワーク１を介して接続されてもよいし、あるいは、ユーザ端末１００内に含むこともできる。なお、第１ＴＳＡ２００ａ、第２ＴＳＡ２００ｂ、第３ＴＳＡ２００ｃは、特に区別しない場合は、以下、単に「ＴＳＡ２００」と略す。
【００３３】
ＴＡ５は、ＴＳＡ２００からの要求に応じて、正確な時刻をＴＳＡ２００に配信する。ＴＡ５およびＴＳＡ２００間は、時刻の校正が可能な媒体を経由して接続される。たとえば、ＴＳＡ２００はＴＡ５から、専用線や公衆電話回線網、電波を介して、あるいは衛星、電波塔などを経由して受信することができる。あるいは、ＴＳＡ２００は、ＮＴＰ（Network Time Protocol）またはＳＮＴＰ（Simple Network Time Protocol）などのプロトコルを使用してネットワークを介してＴＡ５から受信することもできる。ＴＳＡ２００は、随時、たとえば、１日１回程度の頻度で、ＴＡ５から時刻を取得し、自装置内の時計を補正する。
【００３４】
また、情報処理システムの各構成要素は、任意のコンピュータのＣＰＵ、メモリ、メモリにロードされた本図の構成要素を実現するプログラム、そのプログラムを格納するハードディスクなどの記憶ユニット、ネットワーク接続用インタフェースを中心にハードウェアとソフトウェアの任意の組合せによって実現される。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。以下説明する各図は、ハードウェア単位の構成ではなく、機能単位のブロックを示している。
【００３５】
詳細には、ユーザ端末１００は、原本データ記憶部（図中、「原本データ」と示す）１０２と、ハッシュ変換部１０４と、タイムスタンプ要求部（図中、「ＴＳ要求部」と示す）１０６と、インタフェース部（図中、「Ｉ／Ｆ」と示す）１０８と、タイムスタンプ受信部（図中、「ＴＳ受信部」と示す）１１０と、タイムスタンプ付与部（図中、「ＴＳ付与部」と示す）１１２と、データ管理部１１４と、タイムスタンプ記憶部（図中、「ＴＳ記憶部」と示す）１１６と、を含む。
【００３６】
原本データ記憶部１０２は、時刻証明を行う原本データ１０１を記憶する。原本データ１０１とは、たとえば、テキスト形式（テキスト、ＨＴＭＬ、ＰＤＦ、ＸＭＬなど）やバイナリ形式（各種画像、アプリケーションデータなど）を含むディジタルデータである。原本データ記憶部１０２は、ユーザ端末１００に含まれる構成としたが、これに限定されない。外付け記憶装置やネットワーク上の外部記憶装置であってもよい。
【００３７】
あるいは、原本データ１０１は、ネットワーク１を介してサーバ（不図示）などに送信されたディジタルデータであってもよく、その場合、原本データ１０１は、ネットワーク１上のサーバの記憶装置内に保存され、原本データ記憶部１０２には、原本データ１０１の格納場所、たとえば、ＵＲＩ（Uniform Resource Identifier）が記憶される。例として、ウェブページ上の掲示板やブログ、フォームなどへの投稿データなどを含む。
【００３８】
ハッシュ変換部１０４は、ファイル指定受付部（不図示）が時刻証明を行う原本データ１０１の指定を受け付け、ファイル指定受付部が受け付けた原本データ１０１をハッシュ値に変換し、タイムスタンプ付与部１１２およびタイムスタンプ要求部１０６に受け渡す。なお、原本データ１０１が上記の投稿データの場合は、投稿受付部（不図示）が投稿データの送信指示を受け付け、投稿受付部が受け付けた投稿データをハッシュ値に変換する。なお、実際に投稿データが公開されるのは、タイムスタンプがＴＳＡ２００から発行されて、投稿データに付与されてからとなる。
【００３９】
タイムスタンプ要求部１０６は、ハッシュ変換部１０４から受け取ったハッシュ値をインタフェース部１０８を介してネットワーク１上の複数のＴＳＡ、本実施形態では、第１ＴＳＡ２００ａに送信し、タイムスタンプの発行を要求する。なお、本実施形態では、第１ＴＳＡ２００ａは、ネットワーク１上に設けられた構成としたが、これに限定されない。第１ＴＳＡ２００ａは、ユーザ端末１００に含むこともできる。なお、本発明において、複数のＴＳＡ２００は、少なくとも３つ以上とするのが好ましい。
【００４０】
タイムスタンプ要求部１０６は、ハッシュ値を送信すべきＴＳＡ２００の所在情報、たとえば、ＩＰアドレスなどを記憶するＴＳＡ情報テーブル（不図示）を有し、ＴＳＡ情報テーブルを参照して、ハッシュ値の送信先を決定する。
【００４１】
本実施形態では、後述するように第１ＴＳＡ２００ａから、第２ＴＳＡ２００ｂおよび第３ＴＳＡ２００ｃにユーザ端末１００から受信したハッシュ値を転送して、さらに第２ＴＳＡ２００ｂおよび第３ＴＳＡ２００ｃに対してタイムスタンプの発行要求を行う構成としているが、これに限定されない。ユーザ端末１００から、複数のＴＳＡに同時にハッシュ値を送信し、タイムスタンプの発行要求を行う構成とすることもできる。
【００４２】
インタフェース部１０８は、ネットワーク１を介してＴＳＡ２００と通信を行うものである。タイムスタンプ受信部１１０は、インタフェース部１０８を介してネットワーク１上の各ＴＳＡ２００から発行されたタイムスタンプ（図中、「ＴＳ」と示す）１０９を受信する。タイムスタンプ付与部１１２は、原本データ１０１、そのハッシュ値１０３、そのハッシュ値１０３に対応するタイムスタンプ受信部１１０が受信したタイムスタンプ１０９を関連付け、データ管理部１１４に受け渡す。データ管理部１１４は、タイムスタンプ付与部１１２から受け渡された情報をタイムスタンプ記憶部１１６に格納するとともに、タイムスタンプ記憶部１１６に格納されているタイムスタンプ情報の管理を行う。
【００４３】
図２に、タイムスタンプ記憶部１１６の構造の一例を示す。タイムスタンプ記憶部１１６は、原本データファイル名（図中、「原本データ」と示す）１２０と、ハッシュ値１２２と、少なくとも一つのタイムスタンプ１２４（ここでは、タイムスタンプの証明時刻）と、が関連付けて記憶される。原本データファイル名１２０は、たとえば、原本データ１０１の格納場所、たとえば、パス、ＵＲＩなどとファイル名を含む。なお、図２において、タイムスタンプ１２４の「−」は、そのＴＳＡ２００から応答がなかったことを示している。
【００４４】
このように、複数のＴＳＡ２００から取得した複数のタイムスタンプ１０９をディジタルデータに付与し、関連付けてタイムスタンプ記憶部１１６に記憶することができるので、一つのタイムスタンプ１０９のみのディジタルデータに比較してタイムスタンプ１０９の信頼性が向上する。
【００４５】
図１に戻り、ＴＳＡ２００は、インタフェース部２０２と、要求受付部２０４と、ハッシュ値データベース２０６と、タイムスタンプ生成部２０８と、タイムスタンプデータベース２１０と、タイムスタンプ送信部２１２と、時計２２０と、同期部２２２と、を含む。
【００４６】
詳細には、インタフェース部２０２は、ネットワーク１上の他のＴＳＡ２００およびユーザ端末１００と通信を行う。要求受付部２０４は、インタフェース部２０２を介してユーザ端末１００または他のＴＳＡ２００からハッシュ値１０３を受信し、タイムスタンプの発行要求を受け付ける。要求受付部２０４が受け付けたハッシュ値１０３は、一旦、ハッシュ値データベース２０６に格納される。
【００４７】
タイムスタンプ生成部２０８は、要求受付部２０４が受け付けたハッシュ値１０３に対してタイムスタンプ１０９を生成する。生成されたタイムスタンプ１０９は、タイムスタンプデータベース２１０にハッシュ値１０３と対応付けて記憶される。図３にタイムスタンプデータベース２１０の構造の一例を示す。タイムスタンプデータベース２１０は、ハッシュ値２３０と、タイムスタンプ２３２（ここでは、タイムスタンプの証明時刻）と、シリアル番号２３４と、を関連付けて記憶する。また、タイムスタンプデータベース２１０には、後述する遅延時刻τを含むこともできる。なお、シリアル番号２３４は、タイムスタンプの時刻順位の決定に使用することができる。
【００４８】
図１に戻り、タイムスタンプ送信部２１２は、タイムスタンプ生成部２０８が生成したタイムスタンプ１０９をインタフェース部２０２を介して他のＴＳＡ２００またはユーザ端末１００に送信する。タイムスタンプ送信部２１２は、タイムスタンプ１０９を送信すべき他のＴＳＡ２００の所在情報、たとえば、ＩＰアドレスなどを記憶する送信先ＴＳＡ情報テーブル（不図示）を有し、送信先ＴＳＡ情報テーブルを参照して、タイムスタンプ１０９の送信先を決定する。時計２２０は、ＴＳＡ２００の内部の時計である。同期部２２２は、ＴＡ５にアクセスし、定期的あるいは随時、時計２２０の時刻をＴＡ５に同期させる。これにより、時計２２０の時刻を正確に保つことができる。時計２２０の同期のタイミングについては、後述する。
【００４９】
図４は、本実施形態の情報処理システムにおけるＴＳＡ２００の要部構成を示すブロック図である。
本実施形態の情報処理システム（ＴＳＡ２００）は、時刻証明を要する電子データについて、複数の時刻認証局（ＴＳＡ２００）にタイムスタンプ（タイムスタンプ１０９）の発行を要求するタイムスタンプ要求部（ハッシュ送信部３００）と、複数の時刻認証局からタイムスタンプを受信するタイムスタンプ受信部（タイムスタンプ受信部３０２）と、タイムスタンプ受信部が受信した複数のタイムスタンプを複数の時刻認証局毎に記憶するタイムスタンプ記憶部（他ＴＳＡタイムスタンプデータベース３０４）と、を備える。
【００５０】
図４では、第１ＴＳＡ２００ａを例として説明する。具体的には、ＴＳＡ２００は、図１の構成に加え、ハッシュ送信部３００と、タイムスタンプ受信部（図中、「ＴＳ受信部」と示す）３０２と、他ＴＳＡタイムスタンプデータベース（図中、「他ＴＳＡ  ＴＳ  ＤＢ」と示す）３０４と、タイムスタンプ統計部（図中、「ＴＳ統計部」と示す）３１０と、ＴＳＡ信用情報データベース（図中、「ＴＳＡ信用情報ＤＢ」と示す）３１２と、信頼情報提供部３１４と、を含む。
【００５１】
本実施形態において、上記の構成要素はＴＳＡ２００に含まれるものとしたが、これに限定されない。ユーザ端末１００に含むこともできるし、ネットワーク１を介して接続された他のコンピュータに含むこともできる。
【００５２】
ハッシュ送信部３００は、ハッシュ値データベース２０６に記憶されているハッシュ値を、インタフェース部２０２を介してネットワーク１上の他のＴＳＡ２００に送信する。ハッシュ送信部３００は、ハッシュ値を送信すべきＴＳＡ２００の所在情報、たとえば、ＩＰアドレスなどを記憶する転送先ＴＳＡ情報テーブル（不図示）を有し、転送先ＴＳＡ情報テーブルを参照して、ハッシュ値の送信先を決定する。この転送先ＴＳＡ情報テーブルのＴＳＡ２００は、他ＴＳＡタイムスタンプデータベース３０４に対応付けられている。タイムスタンプ受信部３０２は、ネットワーク１上の他のＴＳＡ２００からインタフェース部２０２を介してタイムスタンプを受信する。受信したタイムスタンプは、他ＴＳＡタイムスタンプデータベース３０４に格納される。他ＴＳＡタイムスタンプデータベース３０４には、各ＴＳＡ２００で生成されたタイムスタンプがそれぞれ記憶される。さらに他ＴＳＡタイムスタンプデータベース３０４には、後述する遅延時刻τを含むこともできる。
【００５３】
タイムスタンプ統計部３１０は、タイムスタンプデータベース２１０に格納されている自ＴＳＡ２００が生成したタイムスタンプと、他ＴＳＡタイムスタンプデータベース３０４に格納されている他のＴＳＡ２００が生成したタイムスタンプを統計処理し、検証する。統計および検証方法の詳細については、後述する。
【００５４】
ＴＳＡ信用情報データベース３１２は、タイムスタンプ統計部３１０が算出したＴＳＡ２００の信用情報を格納する。ＴＳＡ信用情報データベース３１２に格納される各種信用情報については後述する。信頼情報提供部３１４は、ＴＳＡ信用情報データベース３１２に記憶されているＴＳＡ２００の信用情報をネットワーク１を介して他の情報処理システム（不図示）に提供する。
【００５５】
ところで、ユーザ端末１００からＴＳＡ２００に対してタイムスタンプ１０９の発行を要求する場合、発行要求を行ってから実際にタイムスタンプ１０９が発行されるまでにタイムラグが発生する。特に、ネットワーク１を介して発行要求を行う場合は、ネットワーク１の通信状況により影響を受けやすい。
【００５６】
図５に示すように、本実施形態において、このタイムラグは遅延時間τで示される。ユーザ端末１００において、この遅延時間τは以下の（式１）で示される。
【００５７】
τ＝t_h＋t_tsq＋t_ts＋t_tsr          ・・・（式１）
【００５８】
ここで、t_hは、ファイル指定受付部がタイムスタンプ発行要求を受け付けてからハッシュ値１０３を生成し、タイムスタンプ要求部１０６がタイムスタンプ発行要求を行うまでに要する要求時間である。t_tsqは、ユーザ端末１００からネットワーク１を介してＴＳＡ２００にハッシュ値１０３を送信し、ＴＳＡ２００が受信するまでの上り時間である。t_tsは、ＴＳＡ２００において、ハッシュ値１０３からタイムスタンプ１０９を生成するのに要する発行時間である。t_tsrは、ＴＳＡ２００からネットワーク１を介してユーザ端末１００にタイムスタンプ１０９を送信し、ユーザ端末１００のタイムスタンプ受信部１１０がタイムスタンプ１０９を受信するまでの下り時間である。
【００５９】
この遅延時間τは、タイムスタンプの発行要求を行った時刻とタイムスタンプを受信した時刻から算出される。なお、τ≧０とする。
【００６０】
また、各ＴＳＡ２００が使用している時計２２０のズレによっても遅延時間τが生じる可能性がある。あるいは、時計２２０の時刻情報が改ざんされた場合にも遅延時間τが生じる可能性がある。なお、時刻が実際の時刻より早められた場合、遅延時間τ<０となるため可能性があるが、遅延時間τ<０の場合は、検証時には、遅延時間τ＝０として扱ったり、あるいは検証用データから除外したりする。ユーザ端末１００において、遅延時間τは、タイムスタンプ受信部１１０がタイムスタンプ１０９を受信した時刻からファイル指定受付部がタイムスタンプ発行要求を受け付けた時刻の差によって算出される。
【００６１】
図６は、タイムスタンプの発行要求を行ったユーザ端末１００からの複数のＴＳＡ２００との距離を模式的に示した図である。図６では、複数のＴＳＡ２００はαＴＳＡ、βＴＳＡ、・・・と示される。本実施形態において、αＴＳＡは、ユーザ端末１００内に設けられているものとし、ユーザ端末１００に最も近接したＴＳＡ２００として、αＴＳＡはランクｒ０に分類される。βＴＳＡおよびεＴＳＡは、ユーザ端末１００から次に近接したＴＳＡ２００としてランクｒ１に分類される。このように、複数のＴＳＡ２００は、基準となるユーザ端末１００からのネットワーク上の距離に応じて、複数のランクｒ０、ｒ１、ｒ２、・・・、ｒｉに分類される。
【００６２】
図７は、αＴＳＡを基準として、遅延時間τによってＴＳＡを分類した結果を示す図である。すなわち、ユーザ端末１００、すなわちαＴＳＡを基準としたネットワーク上における各ＴＳＡ２００との距離を、遅延時間τによって分類する。その結果、図６および図７に示すように、αＴＳＡからの距離に基づく複数のランクにＴＳＡ２００が分類される。
【００６３】
一方、図８に示すように、βＴＳＡを基準とした場合は、たとえば、ランクｒ１には、αＴＳＡ、δＴＳＡ、λＴＳＡが含まれ、ランクｒ２には、εＴＳＡ、γＴＳＡ、θＴＳＡが含まれることとなる。
【００６４】
このようにして、複数のＴＳＡ２００から収集したタイムスタンプ１０９は、ユーザ端末１００のタイムスタンプ記憶部１１６に記憶されるが、これらのタイムスタンプ１０９を検証する際、上述のランクによって、たとえば、遅延時間τが所定値よりも小さいランクｒ０〜ｒ３までに含まれるＴＳＡ２００のタイムスタンプ１０９のみを信頼し、それらの平均値を実際のタイムスタンプ１０９の証明時刻とすることができる。あるいは、遅延時間τが所定値よりも小さいランクｒ０〜ｒ３までに含まれるＴＳＡ２００のタイムスタンプ１０９の中からランダムに選択した証明時刻を使用することもできる。
【００６５】
また、タイムスタンプ要求部１０６は、上記の結果に基づいて、遅延時間τが所定値よりも小さいランクに含まれるＴＳＡ２００にのみ、タイムスタンプ１０９の発行要求を行うようにすることもできる。すなわち、上記結果に基づいて、タイムスタンプ要求部１０６のＴＳＡ情報テーブルを更新することができる。
【００６６】
一方、図４のＴＳＡ２００において、タイムスタンプ統計部３１０は複数のＴＳＡ２００それぞれから発行された複数のタイムスタンプ１０９を収集する。収集された各ＴＳＡ２００の複数のタイムスタンプ１０９は、その遅延時間τが算出される。そして、たとえば、ＴＳＡ２００毎に遅延時間τの平均値を算出する。算出された遅延時間τの平均値に基づいて、図９（ａ）に示す近接ＴＳＡ表３５０のように、複数のＴＳＡ２００がそれぞれランクに分類される。これらの結果は、ＴＳＡ信用情報データベース３１２に格納される。ここで、遅延時間τの平均値４０２、中央値４０４、最頻値４０６は図１０に示されるような関係になる。
【００６７】
また、タイムスタンプ統計部３１０は、複数のＴＳＡ２００から収集された複数のタイムスタンプ１０９の遅延時間τの統計をＴＳＡ２００毎に取り、遅延時間τの標準偏差σを算出する。遅延時間τの標準偏差σによって、複数のＴＳＡ２００をランクに分類することもできる。たとえば、図９（ｂ）に示すτ分散表３５２のように、複数のＴＳＡ２００がそれぞれランクに分類される。これらの結果もＴＳＡ信用情報データベース３１２に格納される。
【００６８】
あるいは、タイムスタンプ統計部３１０は、複数のＴＳＡ２００から収集された複数のタイムスタンプ１０９の遅延時間τの統計を取り、遅延時間τの中央値４０４に基づいて、ＴＳＡ２００をランクに分類することもできる。あるいは、遅延時間τの最頻値４０６に基づいて、ＴＳＡ２００をランクに分類することもできる。このように、複数のＴＳＡ２００から収集したタイムスタンプ１０９を用いて遅延時間τの統計値を取り、タイムスタンプ１０９の検証に使用する。
【００６９】
さらに、タイムスタンプ統計部３１０は、図９（ｃ）に示すようなＴＳＡ信頼性表３５４を作成し、ＴＳＡ信用情報データベース３１２に格納することもできる。このＴＳＡ信頼性表３５４は、たとえば、複数のＴＳＡ２００から複数のタイムスタンプ１０９の遅延時間τの統計を取っていく中で、集計されたタイムスタンプ１０９の遅延時間τに応じて、各ＴＳＡ２００に得点を付与する。
【００７０】
総得点数に応じて、ＴＳＡ２００を分類する。得点の付与方法は、様々な態様が考えられるが、たとえば、収集できたタイムスタンプ１０９の遅延時間τが小さいものに高得点を付与し、大きくなる程、得点を低く設定して付与する。なお、タイムスタンプ１０９が発行されなかった場合は、得点は０となる。また、遅延時間τ<０を返したタイムスタンプ１０９の個数に応じて、得点を減算する。なお、これらのＴＳＡ信頼性表３５４は、所定数以上の個数のタイムスタンプ１０９が集計された時点から有効とすることもできる。
【００７１】
図１１に得点表の一例を示す。この得点表４２０を用いて、所定の条件４２２を満たしたとき、得点４２４を付与することができる。ここでは、たとえば、タイムスタンプを１０００個収集する度にＴＳＡ２００に１点ずつ得点を加算し、タイムスタンプを１００万個収集する度にＴＳＡ２００に５点ずつ得点を加算し、応答が無かった場合は５点減点し、遅延時間τが５秒より大きくなったＴＳＡ２００からは１点減点する。
【００７２】
なお、上述の遅延時間に基づくＴＳＡ２００の信頼性を示す得点が、所定時間以上継続して低い場合、ＴＳＡ２００の時計２２０（図１）がずれている可能性が考えられるため、対応するＴＳＡ２００に対して、時計２２０の補正をするように指示を行い、補正指示を受け付けたＴＳＡ２００は、同期部２２２により時計２２０の同期を取ることができる。
【００７３】
以上説明したように、本実施形態の情報処理システムによれば、時刻認証局毎に複数のタイムスタンプの遅延時間の統計をとることができるので、時刻認証局毎にタイムスタンプの信頼性の評価の指標として使用することができ、信頼性が向上する。また、複数のタイムスタンプに基づいて遅延時間の統計値を評価に使用するので、一部の時刻認証局に一時的に障害が生じてタイムスタンプが取得できなかった場合や一部のタイムスタンプが改ざんされた場合でも、タイムスタンプの評価に影響が及ばず、精度および信頼性が向上する。
【００７４】
また、複数のタイムスタンプを使用するので、全てのＴＳＡやＴＡが正確に動作する必要がなく、一部のＴＳＡやＴＡに障害が発生した場合にも、影響を受けることなく、タイムスタンプの検証が可能となり、耐障害性が向上する。
【００７５】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
【図面の簡単な説明】
【００７６】
【図１】本発明の実施形態に係る情報処理システムの構成を示すブロック図である。
【図２】図１のタイムスタンプ記憶部の構造の一例を示す図である。
【図３】図１のタイムスタンプデータベースの構造の一例を示す図である。
【図４】図１の情報処理システムにおけるＴＳＡの要部構成を示すブロック図である。
【図５】本実施形態の遅延時間を説明するための図である。
【図６】タイムスタンプの発行要求を行ったユーザ端末からの複数のＴＳＡとの距離を模式的に示した図である。
【図７】遅延時間τによってＴＳＡを分類した結果を示す図である。
【図８】基準になるＴＳＡによるランク付けの違いを説明するための図である。
【図９】本実施形態の情報処理システムにおけるＴＳＡ信用情報データベースに含まれる各種テーブルの例を示す図である。
【図１０】図４のＴＳＡのＴＳ統計部における遅延時間τの統計結果の例を示すグラフである。
【図１１】図４のＴＳＡにおけるＴＳ統計部が使用する得点表の一例を示す図である。
【符号の説明】
【００７７】
１  ネットワーク
５  ＴＡ
１００  ユーザ端末
１０１  原本データ
１０２  原本データ記憶部
１０３  ハッシュ値
１０４  ハッシュ変換部
１０６  タイムスタンプ要求部
１０８  インタフェース部
１０９  タイムスタンプ
１１０  タイムスタンプ受信部
１１２  タイムスタンプ付与部
１１４  データ管理部
１１６  タイムスタンプ記憶部
１２０  原本データファイル名
１２２  ハッシュ値
１２４  タイムスタンプ
２００  ＴＳＡ
２０２  インタフェース部
２０４  要求受付部
２０６  ハッシュ値データベース
２０８  タイムスタンプ生成部
２１０  タイムスタンプデータベース
２１２  タイムスタンプ送信部
２２０  時計
２２２  同期部
２３０  ハッシュ値
２３２  タイムスタンプ
２３４  シリアル番号
３００  ハッシュ送信部
３０２  タイムスタンプ受信部
３０４  他ＴＳＡタイムスタンプデータベース
３１０  タイムスタンプ統計部
３１２  ＴＳＡ信用情報データベース
３１４  信頼情報提供部
３５０  近接ＴＳＡ表
３５２  τ分散表
３５４  ＴＳＡ信頼性表
４０２  平均値
４０４  中央値
４０６  最頻値
４２０  得点表
４２２  条件
４２４  得点
【図１】
0004706060.tif 000002
【図２】
0004706060.tif 000003
【図３】
0004706060.tif 000004
【図４】
0004706060.tif 000005
【図５】
0004706060.tif 000006
【図６】
0004706060.tif 000007
【図７】
0004706060.tif 000008
【図８】
0004706060.tif 000009
【図９】
0004706060.tif 000010
【図１０】
0004706060.tif 000011
【図１１】
0004706060.tif 000012