説明

情報処理方法およびその装置

【課題】 様々なタイムスタンプ方式が適用されるディジタル文書のタイムスタンプを検証する場合は、適用されたタイムスタンプ方式に応じた検証方式を適用するか、タイムスタンプを検証サーバに送信する必要がある。従って、ディジタル文書の所有者や利用者にとって、決して効率的とは言えない状況にある。
【解決手段】 検証代行部12は、検証要求部11から検証代行要求を入力し、タイムスタンプ方式に対応する検証部の情報に基づき、検証代行要求に対応する検証部13または14を特定する。そして、特定した検証部に検証要求を送信し、検証部から検証結果を受信する。そして、受信した検証結果を検証要求部11に返す。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、タイムスタンプを検証する情報処理に関する。
【背景技術】
【0002】
ディジタル文書がある時刻に存在したことを証明するにはタイムスタンプ技術を用いる。タイムスタンプは、ディジタル文書がある時刻に存在したことを証明(存在証明)するとともに、その時刻以降、ディジタル文書が改竄されていないこと(完全性)を証明する。
【0003】
タイムスタンプの生成方法(以下「タイムスタンプ方式」と呼ぶ)は種々存在する。例えば、ISO/IEC18014-2は、ディジタル署名を用いる方法、MAC (Media Access Control)を用いる方法、アーカイブを用いる方法を開示する。また、ISO/IEC18014-3は、リンクトークンを生成する方式を開示する。
【0004】
タイムスタンプを検証するには、タイムスタンプ方式に応じた検証方法を適用する必要がある。また、特定のサーバ上でだけ検証処理が可能なタイムスタンプ方式もある。
【0005】
このように様々なタイムスタンプ方式が適用されるディジタル文書のタイムスタンプを検証する場合は、適用されたタイムスタンプ方式に応じた検証方式を適用するか、タイムスタンプを検証サーバに送信する必要がある。従って、ディジタル文書の所有者や利用者にとって、決して効率的とは言えない状況にある。さらに、新たなタイムスタンプ方式が開発されれば、新たなタイムスタンプを検証するための検証方式または検証サーバが必要になる。この場合、ディジタル文書の所有者や利用者にとって、対応する検証方式または検証サーバの探索は容易ではない。
【0006】
特許文献1は、タイムスタンプを検証するクライアント自身が、自分で検証処理することができないタイムスタンプの場合は、適切な検証サーバへ処理を依頼することを開示する。
【0007】
【特許文献1】特開2005-20651公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
特許文献1の技術では、適切な検証サーバが見付からないことも考えられるし、適切な検証サーバを見付けるのに多くの時間がかかることも考えられ、効率的、かつ、確実に検証することはできない。
【0009】
本発明は、かかる問題点に鑑みなされたもので、様々なタイムスタンプ方式を用いて生成されるタイムスタンプを効率的、かつ、確実に検証することを目的とする。
【課題を解決するための手段】
【0010】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【0011】
本発明にかかる情報処理は、タイムスタンプを検証する際に、検証対象のタイムスタンプトークンを含む検証要求を入力し、タイムスタンプ方式に対応する検証部の情報に基づき、前記検証要求に対応する検証部を特定し、前記特定した検証部に、前記検証要求を送信し、前記検証部から検証結果を受信し、前記受信した検証結果を前記検証要求の発行元に出力することを特徴とする。
【発明の効果】
【0012】
本発明によれば、様々なタイムスタンプ方式を用いて生成されるタイムスタンプを効率的、かつ、確実に検証することができる。
【発明を実施するための最良の形態】
【0013】
以下、本発明にかかる実施例の情報処理を図面を参照して詳細に説明する。
【実施例1】
【0014】
[システムの構成]
図1は実施例のタイムスタンプ検証処理を実行するシステムの構成例を示す図である。
【0015】
検証要求部11は、ユーザからタイムスタンプの検証が要求されると、データベース(DB) 16に保持されたタイムスタンプから検証対象のタイムスタンプを選択し、選択したタイムスタンプを検証代行要求として検証代行部12へ送信する。
【0016】
検証代行部12は、検証代行要求を受け付けて検証代行処理を実行した後、検証代行結果を検証要求部11に返す。
【0017】
第一の検証部13は、検証代行部12が発行する第一の検証要求を受け付ける。第二の検証部14は、検証代行部12が発行する第二の検証要求を受け付ける。そして、第一および第二の検証部13、14は、検証処理を実行した後、第一の検証結果および第二の検証結果を検証代行部12に返す。
【0018】
なお、ここでは、第一および第二の二つの検証部が存在する例を説明するが、検証部は二つに限らず、検証部は三つ以上あってもよい。また、タイムスタンプの検証方式はとくに限定されず、ディジタル署名、MAC、または、リンクトークンを用いる方式など種々の検証方式を適当可能である。
【0019】
検証管理部15は、検証代行部12から更新要求を入力し、更新要求に応じて更新情報を生成し、生成した更新情報を検証代行部12に返す。
【0020】
DB 16は、任意のタイムスタンプ方式によって生成されたタイムスタンプを、図2に示すフォーマットで保持する。つまり、DB 16は、後述するタイムスタンプトークンが生成された際に、文書名、文書データ、方式IDおよびタイムスタンプトークンを1レコードとして保持する。なお、方式IDは、タイムスタンプ方式を一意に特定する識別子である。また、文書データとタイムスタンプトークンを関連付けることが可能な方法であれば、図2に限らず、任意の方法でタイムスタンプトークンを保持することが可能である。例えば、文書データ中にタイムスタンプトークンを記録してもよい。
【0021】
[情報処理装置]
図3は本実施例が適用可能なホストコンピュータの構成を示すブロック図である。
【0022】
ホストコンピュータ91は、例えばパーソナルコンピュータである。CPU 93は、RAM 95をワークメモリとして、ROM 94やハードディスクドライブHDD 96などのメモリ、ディスクドライブ97に装着された記憶メディアに格納されたアプリケーションプログラムを実行する。そして、各種の演算処理を実行するとともに、システムバス916を介して後述する構成を制御する。
【0023】
CPU 93は、マウス912やキーボード913を介して入力されるユーザの指示をインタフェイス(I/F) 915を介して入力する。そして、当該指示に従い、HDD 96や、ディスクドライブ97に装着された記憶メディアに蓄積されたディジタル文書を、ビデオカード92を介してモニタ98に表示する。さらに、当該指示に従い、ネットワークインタフェイスカード(NIC) 911およびネットワーク910を介して、ディジタル文書を配布することが可能である。勿論、逆に、ネットワーク910を介して配布されるディジタル文書をHDD 96や、ディスクドライブ97に装着された記憶メディアに格納することも可能である。
【0024】
図1に示すシステムの各構成はそれぞれ図3に示すホストコンピュータで構成することができる。その場合、各構成に対応するホストコンピュータは、NIC 911とネットワーク910を介して接続すればよい。逆に、図1に示すシステムの各構成を、一台のホストコンピュータ上で稼働するアプリケーションプログラムとして構成することもできる。
【0025】
[検証代行部]
図4は検証代行部12の処理を説明するフローチャートである。
【0026】
まず、検証要求部11から検証代行要求を受信する(S21)。図5は検証代行要求のフォーマット例を示す図で、方式ID、バージョン番号およびタイムスタンプトークンを有する。方式IDは、前述したように、タイムスタンプ方式を一意に特定する識別子である。バージョン番号は、タイムスタンプトークンのフォーマットのバージョンを示す番号である。タイムスタンプトークンは、RFC3161に準拠した様式に基づき、タイムスタンプ局によって電子署名された電子情報であり、第一または第二の検証部13、14が必要とするすべての情報を含む。なお、検証代行要求のフォーマットは、図5に限定せず、他のフォーマットも適用可能で、例えばバージョン番号は必須ではない。
【0027】
次に、受信した検証代行要求応じて、適切な検証方法を特定する(S22)。図6は検証方法を特定するための検証部の情報リストの一例を示す図で、方式IDに対応する検証部のURLをリストする。例えば方式ID=1に対して第一の検証部13を示す「http://timestamp1.xxx/」が、方式ID=2に対して第二の検証部14を示す「http://timestamp2.xxx/」が登録されている。図6に示す検証部の情報リストは、検証代行部12が保持する。そして、検証代行部12は、検証代行要求に含まれる方式IDに対応する検証部を、検証部の情報リストから特定すればよい。
【0028】
次に、特定した検証部に検証要求を送信する(S23)。図7は検証要求のフォーマット例を示す図で、図5に示す検証代行要求から方式IDを除去した情報である。あるいは、検証代行要求に含まれるタイムスタンプトークンだけを検証要求にしたり、検証代行要求そのものを検証要求にしてもよい。つまり、検証部13、14が正しい検証処理を実行可能な情報であればよい。
【0029】
次に、特定した検証部から検証結果を受信する(S24)。図8は検証結果のフォーマット例を示す図で、バージョン番号、応答ステータスおよびタイムスタンプトークンを有する。バージョン番号は、検証結果のフォーマットのバージョンを示す番号である。タイムスタンプトークンは、検証要求に含まれるタイムスタンプトークンと同じ情報である。また、応答ステータスは、検証に成功した(承認された)場合は‘0’、失敗した(承認されなかった)場合は‘0’以外の値とする。
【0030】
次に、特定した検証部から受信した検証結果を検証代行結果として検証要求部11に送信し(S24)、検証代行処理を終了する。
【0031】
このように、タイムスタンプの検証処理において、様々なタイムスタンプ方式から生成されたタイムスタンプを効率的、かつ、確実に検証することができる。
【実施例2】
【0032】
以下、本発明にかかる実施例2の情報処理を説明する。なお、実施例2において、実施例1と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【0033】
実施例1では、タイムスタンプの代行検証要求に対応する検証部が、ステップS22で特定可能な例を説明した。しかし、新たなタイムスタンプ方式など、タイムスタンプ方式に対応する検証部の情報がリストされていない場合もあり得る。この場合、検証部が特定できないため、実施例1では検証処理の継続が困難である。
【0034】
実施例2では、代行検証要求に対応する検証部が、検証部の情報リストから特定できない場合でも、検証処理を継続可能にする例を説明する。
【0035】
図9は実施例2の検証代行部12の処理を説明するフローチャートである。なお、図4と同じ処理には同じ符号を付して、詳細説明を省略する。
【0036】
検証方法の特定(S22)の後、検証部を特定できたか否かを判定し(S43)、特定できた場合は処理をステップS23へ進める。また、特定できなかった場合、言い換えれば、検証要求部11から受信した検証代行要求に含まれる方式IDが検証部の情報リストに含まれなかった場合は、検証部の情報リストの更新要求を検証管理部15に送信する(S44)。更新要求として、検証代行要求に含まれる方式IDを送信すればよい。検証管理部15の処理は後述する。
【0037】
次に、検証管理部15から更新情報を受信して、保持する検証部の情報リストを更新し(S45)、処理をステップS22に戻す。
【0038】
図10は検証管理部15の処理を説明するフローチャートである。
【0039】
まず、検証代行部12から更新要求を受信し(S81)、受信した更新要求に応じた更新情報を送信可能か否かを判定する(S82)。この判定のために、検証管理部15は、図11に示すような検証部の情報リストを保持する。そして、受信した更新要求に含まれる方式IDに対応する検証部を、図11に示す検証部の情報リストから検索する。
【0040】
更新要求に応じた更新情報を送信可能な場合、言い換えれば、受信した更新要求に含まれる方式IDに対応する検証部が図11に示す検証部の情報にリストされていた場合は、当該方式IDに対応する検証部の情報を含む更新情報を生成する(S83)。一方、更新要求に応じた更新情報を送信不能な場合、言い換えれば、受信した更新要求に含まれる方式IDに対応する検証部が図11に示す検証部の情報にリストされていない場合は、エラー情報を生成する(S85)。
【0041】
次に、更新情報またはエラー情報を検証代行部12に送信し(S84)、処理を終了する。
【0042】
このように、検証要求部11から受信した検証代行要求を処理する検証部が特定できない場合は、方式IDを検証管理部15に送信して、当該方式IDに対応する検証部の情報を示す項新情報を受信して、検証部の情報リストを更新する。このようにすれば、検証代行部12が保持する検証部の情報リストに未登録のタイムスタンプ方式の検証を依頼された場合、当該タイムスタンプ方式の検証部の情報を追加して検証処理を続行することができる。
【実施例3】
【0043】
以下、本発明にかかる実施例3の情報処理を説明する。なお、実施例3において、実施例1と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【0044】
実施例2では、検証代行部12が検証要求部11から検証代行要求を受信した際に、検証部の情報リストを更新する例を説明した。しかし、定期的に、検証部の情報リストを更新するようにしてもよい。
【0045】
図12は実施例3の検証代行部12が実行する検証部の情報リストを更新する処理を説明するフローチャートである。なお、検証代行部12は、図12に示す更新処理を、検証代行処理とは別に実行する。
【0046】
まず、現在の時刻を計測し(S121)、前回、検証部の情報を更新した時刻と、現在の時刻を比較して、予め決めた時間が経過したか否かを判定し(S122)、所定時間が経過した場合は処理をステップS123に進める。
【0047】
次に、検証部の情報リストの更新要求を検証管理部15に送信し(S123)、検証管理部15から検証部の情報リスト(図11)を受信して、保持する検証部の情報リストを更新する(S124)。そして、検証部の情報リストを更新した後、現在の時刻を計測しRAM 95やHDD 96などのメモリに記録し(S125)、処理をステップS121に戻す。
【0048】
このように、検証部の情報リストを定期的に更新すれば、図9に示すステップS44、S45の処理を実行する回数を軽減することが可能で、検証代行部12の検証代行処理の効率化を図ることができる。
【0049】
なお、検証部の情報リストの更新は様々なタイミングが可能である。上記の所定時間経過後のほかに、予め決めた時刻(例えば毎日曜日の午前零時など)でもよい。
【0050】
[変形例]
上記では、タイムスタンプトークンを生成した際、DB 16に方式IDとともにタイムスタンプトークンを格納する例を説明した。そして、DB 16に格納された方式IDとタイムスタンプトークンを検証代行要求として検証代行部12に送信し、方式IDに対応する検証部を特定する例を説明した。しかし、方式IDに限定されることなく、他の情報を用いて検証部を特定することが可能である。例えば、タイムスタンプ方式として、ディジタル署名を用いる方式の場合、タイムスタンプトークン内に記録されたタイムスタンプオーソリティ(TSA)の公開鍵証明書を用いて、適切な検証部を判定することができる。また、タイムスタンプトークンの外部に方式IDを付加するのではなく、タイムスタンプトークンの内部(拡張領域)に方式IDを付加してもよい。
【0051】
以上説明した実施例によれば、検証代行部(検証プロキシサーバ)は、タイムスタンプの識別子とタイムスタンプの検証部(検証サーバ)の対応関係を管理し、必要に応じて検証管理部(タイムスタンプサービス管理サーバ)から対応関係を取得する。つまり、検証代行部は、タイムスタンプの検証手段をもたず、適切な検証部へ検証要求を振り分ける処理だけを実行する(代行モデル)。これにより、新しいタイムスタンプサービスに対するタイムスタンプの検証処理を効率的に実行することができる。
【0052】
[他の実施例]
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
【0053】
また、本発明の目的は、上記実施例の機能を実現するソフトウェアを記録した記憶媒体(記録媒体)をシステムまたは装置に供給し、そのシステムまたは装置のコンピュータ(CPUやMPU)が前記ソフトウェアを実行することでも達成される。この場合、記憶媒体から読み出されたソフトウェア自体が上記実施例の機能を実現することになり、そのソフトウェアを記憶した記憶媒体は本発明を構成する。
【0054】
また、前記ソフトウェアの実行により上記機能が実現されるだけでなく、そのソフトウェアの指示により、コンピュータ上で稼働するオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、それによって上記機能が実現される場合も含む。
【0055】
また、前記ソフトウェアがコンピュータに接続された機能拡張カードやユニットのメモリに書き込まれ、そのソフトウェアの指示により、前記カードやユニットのCPUなどが実際の処理の一部または全部を行い、それによって上記機能が実現される場合も含む。
【0056】
本発明を前記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するソフトウェアが格納される。
【図面の簡単な説明】
【0057】
【図1】タイムスタンプ検証処理を実行するシステムの構成例を示す図、
【図2】DBが保持するタイムスタンプのフォーマット例を示す図、
【図3】実施例が適用可能なホストコンピュータの構成を示すブロック図、
【図4】検証代行部の処理を説明するフローチャート、
【図5】検証代行要求のフォーマット例を示す図、
【図6】検証方法を特定するための検証部の情報リストの一例を示す図、
【図7】検証要求のフォーマット例を示す図、
【図8】検証結果のフォーマット例を示す図、
【図9】実施例2の検証代行部の処理を説明するフローチャート、
【図10】検証管理部の処理を説明するフローチャート、
【図11】検証管理部が保持する検証部の情報リストをの一例を示す図、
【図12】実施例3の検証代行部が実行する検証部の情報リストを更新する処理を説明するフローチャートである。

【特許請求の範囲】
【請求項1】
タイムスタンプを検証する情報処理方法であって、
検証対象のタイムスタンプトークンを含む検証要求を入力し、
タイムスタンプ方式に対応する検証部の情報に基づき、前記検証要求に対応する検証部を特定し、
前記特定した検証部に、前記検証要求を送信し、
前記検証部から検証結果を受信し、
前記受信した検証結果を前記検証要求の発行元に出力することを特徴とする情報処理方法。
【請求項2】
前記検証要求は、前記タイムスタンプ方式を特定する識別子を含むことを特徴とする請求項1に記載された情報処理方法。
【請求項3】
さらに、前記識別子を検証管理部に送信し、
前記検証管理部から前記識別子に対応する検証部の情報を受信し、
前記タイムスタンプ方式に対応する検証部の情報を更新することを特徴とする請求項2に記載された情報処理方法。
【請求項4】
さらに、予め定めた時間間隔で、前記検証部の情報の更新を検証管理部に要求し、
前記検証管理部から前記検証部の情報を受信し、
前記タイムスタンプ方式に対応する検証部の情報を更新することを特徴とする請求項1または請求項2に記載された情報処理方法。
【請求項5】
タイムスタンプを検証する情報処理装置であって、
検証対象のタイムスタンプトークンを含む検証要求を入力する入力手段と、
タイムスタンプ方式に対応する検証部の情報に基づき、前記検証要求に対応する検証部を特定する特定手段と、
前記特定した検証部に、前記検証要求を送信する送信手段と、
前記検証部から検証結果を受信する受信手段と、
前記受信した検証結果を前記検証要求の発行元に出力する出力手段とを有することを特徴とする情報処理装置。
【請求項6】
情報処理装置を制御して、請求項1から請求項4の何れかに記載された情報処理を実現することを特徴とするコンピュータプログラム。
【請求項7】
請求項6に記載されたコンピュータプログラムが記録されたことを特徴とするコンピュータが読み取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2007−174394(P2007−174394A)
【公開日】平成19年7月5日(2007.7.5)
【国際特許分類】
【出願番号】特願2005−370896(P2005−370896)
【出願日】平成17年12月22日(2005.12.22)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】