タイムスタンプサーバ装置、及びタイムスタンプ発行方法、及びタイムスタンプ発行プログラム
【課題】 複数の異なる種類のタイムスタンプ要求に応じて、タイムスタンプを発行するタイムスタンプサーバ装置、およびタイムスタンプ発行方法、タイムスタンプ発行プログラムを提供する。
【解決手段】 タイムスタンプサーバ装置の受信装置は、クライアント装置から時刻認証の対象となる電子文書のメッセージダイジェストと、ポリシーIDとを受け取る。そして、制御装置は、あらかじめ記録された発行条件ファイルから受信したポリシーIDと同じポリシーIDのレコードを参照し、TAから時刻、CA証明書、CRL証明書を取得する。その後、制御装置は、TAから取得した時刻と、メッセージダイジェストとからTSTを生成する。さらに、そのTSTとCA証明書、およびTSA証明書とを、ポリシーIDに対応する秘密鍵で暗号化し、その暗号化後のデータをクライアント装置に送信する。
【解決手段】 タイムスタンプサーバ装置の受信装置は、クライアント装置から時刻認証の対象となる電子文書のメッセージダイジェストと、ポリシーIDとを受け取る。そして、制御装置は、あらかじめ記録された発行条件ファイルから受信したポリシーIDと同じポリシーIDのレコードを参照し、TAから時刻、CA証明書、CRL証明書を取得する。その後、制御装置は、TAから取得した時刻と、メッセージダイジェストとからTSTを生成する。さらに、そのTSTとCA証明書、およびTSA証明書とを、ポリシーIDに対応する秘密鍵で暗号化し、その暗号化後のデータをクライアント装置に送信する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子文書が改ざんされていないこと認証するためのタイムスタンプ発行技術に関し、特に、1台の装置で複数種類のタイムスタンプを発行する技術に関する。
【背景技術】
【0002】
タイムスタンプ技術は、電子データがある時間に存在し、それ以降改ざんされていないことを暗号学的に証明する技術である。具体的には、時刻認証局(Time Stamp Authority:TSA)のタイムスタンプサーバ装置が、時刻配信局(Time Authority:TA)から協定世界時(Coordinated Universal Time:UTC)と同期した信頼ある時刻を受け取る。次に、この時刻とメッセージダイジェスト(Message Digest:MD)を結合したタイムスタンプトークン(Time Stamp Token:TST)を作成しタイムスタンプを発行する。このとき、より安全を期すために、TSTをTSAの秘密鍵を用いて暗号化してクライアント装置に送る。そして、このような手順により発行されたタイムスタンプは、電子文書や、タイムスタンプ自体の非改ざん性を証明する(例えば、特許文献1)。
【特許文献1】特開2003−242278号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
こうしたタイムスタンプには、電子文書の種類によって使用する秘密鍵が異なる場合や、タイムスタンプだけでなく、そのタイムスタンプの時刻自体が、信頼される時刻配信局(TA)から配信される時刻によるものか否かの証明書を添付することが必要となる場合がある。従来、タイムスタンプサービス事業者(以下、事業者とする)は、このような事情に対応する場合には、安全性確保のため、使用する秘密鍵の種類や、証明書の要否に応じて、複数のタイムスタンプサーバ装置を設ける場合が多かった。しかし、複数のタイムスタンプサーバ装置を維持し、または運用することは、事業者にとって、人的にも金銭的にも負担が大きかった。
【0004】
本発明は、上記実状に鑑みてなされたものであり、1台の装置で複数の種類のタイムスタンプを発行できるタイムスタンプサーバ装置、タイムスタンプ発行方法、およびタイムスタンプ発行プログラムを提供することを目的とする。
【課題を解決するための手段】
【0005】
上記目的を達成するため、本発明の第1の観点に係るタイムスタンプサーバ装置は、
クライアント装置に通信ネットワークで互いに接続されたタイムスタンプサーバ装置であって、
前記クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と、該ポリシー識別符号とを関連づけて記憶する受信手段と、
タイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、前記ポリシー識別符号に関連づけて複数記憶する発行条件記憶手段と、
前記受信手段で、前記対象文書と、前記ポリシー識別符号とを受け取ったときに、時刻配信局(TA)にて監査された時刻を取得する時刻取得手段と、
前記ポリシー識別符号に対応する一の前記発行条件を選択して、前記時刻取得手段で取得した時刻を、前記対象文書に付したタイムスタンプトークン(TST)を作成するTST作成手段と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してTSTを暗号化するTST暗号化手段と、
前記TST暗号化手段で暗号化したTSTを前記クライアント装置に送信するTST送信手段と、
を備えることを特徴とする。
【0006】
また、前記TST作成手段は、前記ポリシー識別符号に対応する前記発行条件にもとづいて、TAが配信する時刻に関連する証明書を取得する証明書取得手段と、
をさらに備えることを特徴としてもよい。
【0007】
また、前記受信手段は、受信した前記ポリシー識別符号が前記発行条件記憶手段に記憶されていないときは、前記クライアント装置にエラーメッセージを返すことを特徴としてもよい。
【0008】
上記目的を達成するため、本発明の第2の観点に係るタイムスタンプ発行方法は、
クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と該ポリシー識別符号とを関連づけて記憶する受信処理と、
タイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、前記ポリシー識別符号に関連づけて複数記憶する発行条件記憶処理と、
前記受信手段で前記対象文書と前記ポリシー識別符号とを受け取ったときに、時刻配信局(TA)にて監査された取得する時刻取得処理と、
前記ポリシー識別符号に対応する一の前記発行条件を選択して、前記時刻取得手段で取得した時刻を前記対象文書に付したタイムスタンプトークン(TST)を作成するTST作成処理と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してTSTを暗号化するTST暗号化処理と、
前記TST暗号化手段で暗号化したTSTを前記クライアント装置に送信するTST送信処理と、
を含むことを特徴とする。
【0009】
また、前記TST作成処理は、前記ポリシー識別符号に対応する前記発行条件にもとづいて、TAが配信する時刻に関連する証明書を取得する証明書取得処理と、
をさらに備えることを特徴としてもよい。
【0010】
また、前記受信処理は、受信した前記ポリシー識別符号が前記発行条件記憶手段に記憶されていないときは、前記クライアント装置にエラーメッセージを返すことを特徴としてもよい。
【0011】
上記目的を達成するため、本発明の第3の観点に係るタイムスタンプ発行プログラムは、
コンピュータに、
クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と該ポリシー識別符号とを関連づけて記憶し、さらにタイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、該ポリシー識別符号に関連づけて複数記憶する処理と、
前記対象文書と前記ポリシー識別符号とを受け取ったときに、時刻配信局(TA)にて監査された時刻を取得する処理と、
前記ポリシー識別符号に対応する一の前記発行条件を選択し、取得した時刻を前記対象文書に付したタイムスタンプトークン(TST)を作成する処理と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してTSTを暗号化し、該TSTを前記クライアント装置に送信する処理を実行させることを特徴とする。
【発明の効果】
【0012】
本発明によれば、タイムスタンプタイムの種類に応じてタイムスタンプサーバ装置を管理する必要がなくなるので、事業者の運用負担が軽減される。
【発明を実施するための最良の形態】
【0013】
以下、この発明の実施の形態に係るタイムスタンプサーバ装置について説明する。
【0014】
本発明の実施の形態に係るタイムスタンプサーバ装置は、時刻認証局(Time Stamp Authority:TSA)に設置される装置であり、図1に示すように、タイムスタンプサーバ装置1は、通信ネットワークNを介して、クライアント装置2と、時刻監査サーバ装置3とに接続される。
【0015】
まず、本実施形態に係るタイムスタンプサーバ装置1の処理の概要を説明する。
【0016】
タイムスタンプサーバ装置1は、クライアント装置2から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書、時刻認証要求の種類を示すポリシー識別符号(以下、ポリシーIDとする)を受けると、その対象文書のタイムスタンプを発行するために、時刻監査サーバ装置3から信頼できる時刻を取得する。
そして、タイムスタンプに関する証明書が必要か否かを、あらかじめ事業者によって登録された条件を参照して判断し、必要な場合には時刻と共に証明書を取得する。その後、取得した時刻と、対象文書とからタイムスタンプトークン(以下、TSTとする)を生成すると共にTSA証明書を生成する。さらに、TSTと、TSA証明書と、CA証明書を暗号化して、タイムスタンプ要求のあったクライアント装置に送信する。以下、詳細に説明する。
【0017】
通信ネットワークNは、例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)などの通信プログラムに基づいてデータ伝送を行うネットワークである。通信ネットワークNは、タイムスタンプサーバ装置1と、クライアント装置2、時刻監査サーバ装置3とを相互接続し、これらの間のデータ通信を媒介する。
【0018】
クライアント装置2は、ネットワーク通信機能を有するパーソナルコンピュータ等の情報処理装置から構成される。このクライアント装置2は、公官庁や一般企業等、広く証書類を作成する者(以下、利用者とする)により使用される装置である。
【0019】
時刻監査サーバ装置3は、協定世界時(UTC)と同期した信頼のおける時刻を提供する時刻配信局(Time Authority:TA)に設置されるサーバ装置である。そして、UTCと同期した時刻、および時刻配信局が認証局(Certification Authority:CA)から認証を受けていることの証明書(以下、CA証明書とする)や、証明書の失効リスト(Certificate Revocation List:CRL)等を時刻認証局(Time Stamp Authority:TSA)に提供する。時刻監査サーバ装置3は、タイムスタンプサーバ装置1からの要求に応じて、これらの情報を提供する。すなわち、タイムスタンプサーバ装置1は、時刻監査サーバ装置3に自己の時刻監査の要求を行う。これに対して時刻監査サーバ装置3は、タイムスタンプサーバ装置1から送信された時刻と時刻監査サーバ装置3の時刻とを比較し、タイムスタンプサーバ装置1の時刻が所定の範囲内で時刻監査サーバ装置3と同期していることを示す時刻監査証を作成し、時刻とともにタイムスタンプサーバ装置1に送信する。時刻監査証には、タイムスタンプサーバ装置1と時刻監査サーバ装置3との時刻の差分、その有効期間、CA証明書、CRLが含まれる。タイムスタンプサーバ装置1は、自己の時刻に基づき、タイムスタンプ発行の際に時刻監査証の有効性を確認し、つまり、その有効期間にあれば、時刻監査サーバ装置3から時刻を取得せずにタイムスタンプサーバ装置1の時刻でタイムスタンプを発行する。また、ポリシーIDによって時刻監査の精度を選択するようにしても良い。この場合、ポリシーIDに応じて上記同期とみなす所定の範囲を設定することとし、タイムスタンプサーバ装置1は、クライアントから受け取ったポリシーIDがそのときの時刻監査証より高い精度を要求するものであれば、時刻監査サーバ装置3にポリシーIDにあった時刻監査証を要求し、時刻監査証とともに新たに得られた時刻によってタイムスタンプを発行する。
【0020】
タイムスタンプサーバ装置1は、物理的には図2に示すように、通信装置10と、制御装置11と、記憶装置12と、入力装置13と、表示装置14と、から構成される。
【0021】
通信装置10は、例えば、NIC(Network Interface Card)やルータ、モデム、などの通信装置から構成される。通信装置10は、タイムスタンプサーバ装置1と通信ネットワークNとを接続し、通信ネットワークNを介してクライアント装置2との間で対象文書やTSTを送受信し、または時刻監査サーバ装置3との間で時刻や証明書のデータを送受信する。
【0022】
制御装置11は、例えば、CPU(Central Processing Unit:中央演算処理装置)やワークエリアとなるRAM(Random Access Memory)などから構成され、後述する各種制御動作を実行する。
【0023】
記憶装置12は、ハードディスク装置などの外部記憶装置から構成され、制御装置11の処理プログラムや、タイムスタンプの発行条件を記録したファイル(以下、発行条件ファイルとする)、クライアント装置2から受信した対象文書等、各種のデータを記憶する。
【0024】
入力装置13は、文字入力等するためのキーボード装置等である。タイムスタンプ事業者が入力した情報を、制御装置11に伝達する。タイムスタンプ事業者が、タイムスタンプの発行条件等を入力するために用いられる。
【0025】
表示装置14は、入力装置13により入力された文字等を表示するためのディスプレイ装置等である。タイムスタンプ事業者が、入力したタイムスタンプの発行条件等を確認するために用いられる。
【0026】
図2に示す構成のタイムスタンプサーバ装置1は、機能的には、図3に示す構成を有する。すなわち、タイムスタンプサーバ装置1は、受信部100および送信部101と、発行条件選択部111と、TA要求部112と、TST生成部113と、を備える。
【0027】
受信部100と送信部101とは、通信装置10から構成される。受信部100は、通信ネットワークNを介して、クライアント装置2から対象文書および、ポリシーIDとを受信する。一方、送信部101は、制御装置11から供給されるTST、証明書、またはエラーメッセージ等を、通信ネットワークNを介してクライアント装置2に送信する。
【0028】
発行条件選択部111は、受信部100で受信したポリシーID、および対象文書を記憶し、そのポリシーIDが、発行条件ファイルに登録されているか否かを判断する。具体的に、発行条件ファイルは図4に示すように、ポリシーID毎に、TSTを生成するときに使用する秘密鍵、認証局(Certification Authority:CA)から発行された時刻配信局及び時刻認証局のCA証明書、証明書失効リスト(Certificate Revocation List:CRL)、タイムスタンプにCA証明書とCRLを添付するか否かのフラグ、タイムスタンプの発行対象となるハッシュアルゴリズム、そのポリシーIDをアクティブにするか否かのフラグ、どのポリシーIDをデフォルトとして使用するかを示すフラグが記録されている。そして、受信したポリシーIDが発行条件ファイルに記録されている場合には、そのポリシーIDに関連する発行条件を読み取り、その内容を記憶装置12に記憶する。一方、受信したポリシーIDが、発行条件ファイルに登録されていない場合は、エラーコメントを送信部101に送る。
【0029】
TA要求部112は、発行条件選択部111で読み取った発行条件ファイルの内容からタイムスタンプに関する証明書の要否を確認し、証明書が必要な場合は、TAから時刻、および証明書を取得する。そして、その時刻、および証明書を記憶装置12に記憶する。
【0030】
TST生成部113は、TA要求部112で記憶されたTAの時刻と、発行条件選択部111で記憶された対象文書とから、公知の方法によってTSTを生成し、TSA証明書を作成する。そして、発行条件ファイルの中から、発行条件選択部111で記憶したポリシーIDと同じポリシーIDのレコードから、対応する秘密鍵を参照して、その秘密鍵を用いてTSTと、TA要求部112で記憶されたCA証明書と、TSA証明書とを、公知の方法により暗号化する。そして、暗号化したTSTと証明書を送信部101に送る。
【0031】
次に、本実施形態のタイムスタンプサーバ装置1を利用するための処理の動作について、図5〜図8を参照して説明する。タイムスタンプサーバ装置1の処理は、図5に示すように、発行条件選択処理(ステップS1)と、タイムスタンプ生成処理(ステップS2)と、タイムスタンプ発行処理(ステップS3)と、から構成される。以下、各処理について詳細に説明する。
【0032】
まず、前提として事業者は図4に示す内容を、タイムスタンプサーバ装置1の発行条件ファイルに記録し、また、時刻を取得するTAの時刻監査サーバ装置3のアドレス情報を、記憶装置12に記録しているとする。対象文書としては、電子文書「x」のメッセージダイジェスト(以下、MDとする)「X」を用いる。そして、クライアント装置2から、MD「X」について、ポリシーIDを「002」とするタイムスタンプ要求があったとする。また、タイムスタンプサーバ装置1の制御装置11に常駐するプログラムが、タイムスタンプ要求の有無を監視しているとする。
【0033】
タイムスタンプサーバ装置1の制御装置11は、発行条件選択部111で、発行条件選択処理(ステップS1)を行う。
【0034】
この発行条件選択処理(ステップS1)では、まず受信部100に時刻認証対象となる電子文書「x」のMD「X」、ポリシーID「002」の要求があるか、また同じポリシーID「002」のリクエストが既に32個以上ないかを判断する(図6;ステップS100)。具体的には、タイムスタンプサーバ装置1の起動時に常駐されるアプリケーション(例えば、Tomcatなど)のサーブレット機能を用いて、このタイムスタンプ要求を監視することにより判断する。
【0035】
そして、受信部100にMD「X」と、ポリシーID「002」要求があり、ポリシーID「002」のリクエストが所定数、例えば、32個以上ないことが確認できた場合(ステップS100;yes)、制御装置11は、発行条件選択部111で、対象文書としてのMD「X」、ポリシーID「002」を記憶装置12に記憶する(ステップS101)。一方、MD「X」、およびポリシーID「002」が確認できない場合(ステップS101;no)、または既にポリシーID「002」のリクエストが32個以上ある場合は、エラーメッセージを送信部101に返す(ステップS102)。例えば、電子文書のMDがない場合などに、このステップS102で「その電子文書のMDがありません」とするエラーメッセージを返す。
【0036】
次に制御装置11は、発行条件選択部111で、記憶装置12に記憶したポリシーID「002」と同じポリシーIDを含むレコードが、発行条件ファイルにあるか否かを判断する(ステップS103)。そして、同じポリシーID「002」を含むレコードがあると判断した場合は(ステップS103;yes)、そのレコードを抽出して記憶装置12に記憶する(ステップS104)。一方、同じポリシーIDがない場合は(ステップS103;no)、エラーメッセージを送信部101に返す(ステップS105)。例えば、ポリシーID「003」の場合には、「タイムスタンプ発行対象外のMDです」とするエラーメッセージを、送信部101に返す。
【0037】
さらに、制御装置11は、発行条件選択部111で、ステップS104で抽出し、ポリシーID「002」を含む発行条件ファイルのレコードに記されたハッシュアルゴリズムを読み取り、MDがそのハッシュアルゴリズムで作成されているか否かを判断する(ステップS106)。具体的には、MDが、発行条件ファイルに記されたハッシュアルゴリズム「SHA256」で作成されたMDであるかを判断する。そして、MDが発行条件ファイルのレコードに記されたハッシュアルゴリズムと同じアルゴリズムで作成されている場合は(ステップS106;yes)、続いて証明書フラグを参照して証明書の要否を判断する(ステップS107)。一方、MDが、発行条件ファイルのレコードに記されたハッシュアルゴリズムと同じアルゴリズムで作成されてない場合は(ステップS106;no)、ステップS105と同じエラーメッセージを、送信部101に返す(ステップS108)。
【0038】
そして、ステップS107で、証明書が必要と判断した場合は(ステップS107;yes)、制御装置11のTA要求部112は、発行条件ファイルから必要な証明書の種類を読み取り、あらかじめ記録されたアドレス情報をもつTAにより監査された時刻と、証明書取得する(ステップS109)。具体的には、制御装置11のTA要求部112は、図4の発行条件ファイルのポリシーID「002」のレコードの証明書フラグを参照する。そして、そのフラグが「要」となっているので、次に証明書種類を参照して「TSA、CA」が必要であることを確認する。そして、事前にTAから取得した時刻監査証の有効性を確認し、時刻監査証が有効であれば、これからCA証明書を取り出し、時刻監査サーバ装置3と自己の内部時計の時刻とが同期しているとして内部時計から時刻を取得する。時刻監査証が有効でなければ、TAに対してリクエストを出すことにより、時刻と、CA証明書とを取得する。一方、ステップS107で証明書が不要と判断した場合は(ステップS107;no)、時刻のみを取得する(ステップS110)。そして、ステップS109、またはステップS110が終了すると、発行条件選択処理(ステップS1)が終了し、次のタイムスタンプ生成処理(ステップS2)に進む。
【0039】
タイムスタンプ生成処理(ステップS2)では、制御装置11は、TST生成部113で、MDと、ステップS109またはステップS110で取得した時刻とから、公知の方法によりTSTを生成し、TSA証明書を作成する(ステップS200)。具体的には、MD「X」と、TAから取得した時刻とから生成したTST「X'」と、TST「X'」に対するTSA証明書、例えば、「TST『X'』は2005年12月10日に作成されたことを証明する」とした内容のTSA証明書を作成する。
【0040】
次に、制御装置11は、TST生成部113で、ステップS104で記憶したポリシーIDと同じポリシーIDを含むレコードに記された秘密鍵を読み取り、ステップS200で生成したTST、およびTSA証明書と、ステップS109で取得した証明書とを、その秘密鍵を用いて、例えばIDEA(International Data Encryption Algorithm)などの公知の方法により暗号化して、記憶装置12に記憶する(ステップS201)。具体的には、図4に示すように、発行条件ファイルの中から、ポリシーID「002」に対応する秘密鍵「B」を読み取り、TST「X'」と、TSA証明書と、CA証明書をその秘密鍵「B」で暗号化したデータ「X'’」を作成する。このステップS201が終了すると、タイムスタンプ生成処理(ステップS2)が終了し、次のタイムスタンプ発行処理(ステップS3)にすすむ。
【0041】
タイムスタンプ発行処理(ステップS3)では、制御装置11は、TST生成部113で、ステップS201で暗号化して記憶したTSTと証明書からなるデータを、クライアント装置2に送信するよう送信部101に指示し、送信部101はそのデータを、証明書をクライアント装置2に送信する(ステップS300)。具体的には、対象文書「X」と、TST「X'」と、TSA証明書と、CA証明書とを秘密鍵「B」で暗号化したデータ「X'’」を、クライアント装置2に送信する。以上で、タイムスタンプ発行処理(ステップS3)が終了し、タイムスタンプを発行するための全ての処理が終了する。
【0042】
このようなタイムスタンプ発行処理が行われることで、クライアント装置2からのタイムスタンプ要求内容に応じたタイムスタンプが発行される。具体的には、クライアント装置2に、TST「X'」と、TSA証明書と、CA証明書とを秘密鍵「B」で暗号化したデータ「X''」が送信されると、クライアント装置2の利用者は、秘密鍵「B」に対応する公開鍵「B'」を取得して復号することにより、TST「X'」と、TSA証明書、CA証明書を取得できる。そして、利用者は、このTST「X'」のMDと、タイムスタンプ取得前のMDを比べて、その値に変更がないこと、およびTSA証明書の時刻を確認することにより、その電子文書作成後、TSA証明書発行迄の間に、電子文書自体が改ざん等されていないことが確認できる。
【0043】
上記実施の形態は一例であり、本発明はこれに限られない。すなわち、種々の応用が可能であり、あらゆる実施の形態が本発明の範囲に含まれる。
【0044】
例えば、上記実施例では、TAから信頼ある時刻を取得することとしているが、TAがタイムスタンプサーバ装置1の時刻を監査し、TAの時刻と、タイムスタンプサーバ装置1の時刻のずれ(差分)を求めて時刻監査証を生成している場合等は、その差分の時間をTAから取得してタイムスタンプサーバ装置1が時刻を求めてもよい。
【0045】
また、上記実施例では、クライアント装置2から対象文書としてのMDと、ポリシーIDとを受信して、タイムスタンプを発行しているが、これらと同じ内容が得られるのであれば、例えば、これらの内容をまとめた1つのファイルを受信し、タイムスタンプを発行する等の処理形態でも構わない。また、タイムスタンプサーバ装置1は、対象文書として電子文書を受信し、この電子文書からMDを生成して上記の処理を行い、受信した電子文書をMDとともに記憶装置12に記憶するようにしてもよい。
【0046】
また、上記実施例では記載していないが、事業者がタイムスタンプ発行条件を登録したときに、既に同一のポリシーIDが発行条件ファイルにある場合には、ディスプレイ等の表示装置14にエラーコメントを表示させる処理を行って、発行条件の入力精度を高める等のチェック機能を持たせる登録処理チェック処理等を含めてもよい。
【0047】
尚、システム構成や動作等については、同様の機能構成が得られるならば、任意に変更可能である。例えば、上記実施形態では、TAとTSAは物理的に離れた場合を想定しているが、TSAがTAと同じ事業者である場合等は、論理的にTSAの機能とTAの機能とを分割し、タイムスタンプサーバ装置1が、TAが行う時刻配信と、TSAが行うタイムスタンプ発行の両方のサービスを提供してもよい。
【0048】
さらに、上記実施形態では、クライアント装置2から、同時に最大32個の同じポリシーIDのタイムスタンプ要求を受け付けることとしているが、例えば、タイムスタンプサーバ装置1に対するクライアント装置2からのアクセス頻度を監視し、その頻度に応じて同時に受け付けるタイムスタンプ要求を変更する処理を行うようにしてもよい。
【0049】
上記実施の形態にかかるタイムスタンプサーバ装置1は、専用装置によって実現可能なことはもとより、汎用のコンピュータシステムによって構成することもできる。この場合、上記各処理を実現するためのプログラムを汎用コンピュータシステムにインストールしてOSとの協働により実行することで、汎用コンピュータ装置を、上記タイムスタンプサーバ装置1として機能させることができる。
【0050】
また、上述の機能を実現するプログラムの提供方法は任意であり、CD−ROMなどの記録媒体に格納して提供可能なことはもとより、例えば、インターネットなどの通信媒体を介して提供してもよい。
【図面の簡単な説明】
【0051】
【図1】本発明の実施の形態に係るタイムスタンプサーバ装置、クライアント装置、時刻監査サーバ装置を模式的に示す図である。
【図2】図1に示すタイムスタンプサーバ装置の構成を示すブロック図である。
【図3】図2のタイムスタンプサーバ装置の機能的構成を示す図である。
【図4】本発明の実施の形態に係る発行条件ファイルの内容の具体例を示すイメージ図である。
【図5】本発明の実施の形態に係るタイムスタンプ発行処理の処理動作を説明するためのフローチャートである。
【図6】図5に示す発行条件選択処理の処理動作を説明するためのフローチャートである。
【図7】図5に示すタイムスタンプ生成処理の処理動作を説明するためのフローチャートである。
【図8】図5に示すタイムスタンプ発行処理の処理動作を説明するためのフローチャートである。
【符号の説明】
【0052】
1 タイムスタンプサーバ装置
2 クライアント装置
3 時刻監査サーバ装置
N 通信ネットワーク
10 通信装置
11 制御装置
12 記憶装置
13 入力装置
14 表示装置
100 受信部
101 送信部
111 発行条件選択部
112 TA要求部
113 TST生成部
【技術分野】
【0001】
本発明は、電子文書が改ざんされていないこと認証するためのタイムスタンプ発行技術に関し、特に、1台の装置で複数種類のタイムスタンプを発行する技術に関する。
【背景技術】
【0002】
タイムスタンプ技術は、電子データがある時間に存在し、それ以降改ざんされていないことを暗号学的に証明する技術である。具体的には、時刻認証局(Time Stamp Authority:TSA)のタイムスタンプサーバ装置が、時刻配信局(Time Authority:TA)から協定世界時(Coordinated Universal Time:UTC)と同期した信頼ある時刻を受け取る。次に、この時刻とメッセージダイジェスト(Message Digest:MD)を結合したタイムスタンプトークン(Time Stamp Token:TST)を作成しタイムスタンプを発行する。このとき、より安全を期すために、TSTをTSAの秘密鍵を用いて暗号化してクライアント装置に送る。そして、このような手順により発行されたタイムスタンプは、電子文書や、タイムスタンプ自体の非改ざん性を証明する(例えば、特許文献1)。
【特許文献1】特開2003−242278号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
こうしたタイムスタンプには、電子文書の種類によって使用する秘密鍵が異なる場合や、タイムスタンプだけでなく、そのタイムスタンプの時刻自体が、信頼される時刻配信局(TA)から配信される時刻によるものか否かの証明書を添付することが必要となる場合がある。従来、タイムスタンプサービス事業者(以下、事業者とする)は、このような事情に対応する場合には、安全性確保のため、使用する秘密鍵の種類や、証明書の要否に応じて、複数のタイムスタンプサーバ装置を設ける場合が多かった。しかし、複数のタイムスタンプサーバ装置を維持し、または運用することは、事業者にとって、人的にも金銭的にも負担が大きかった。
【0004】
本発明は、上記実状に鑑みてなされたものであり、1台の装置で複数の種類のタイムスタンプを発行できるタイムスタンプサーバ装置、タイムスタンプ発行方法、およびタイムスタンプ発行プログラムを提供することを目的とする。
【課題を解決するための手段】
【0005】
上記目的を達成するため、本発明の第1の観点に係るタイムスタンプサーバ装置は、
クライアント装置に通信ネットワークで互いに接続されたタイムスタンプサーバ装置であって、
前記クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と、該ポリシー識別符号とを関連づけて記憶する受信手段と、
タイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、前記ポリシー識別符号に関連づけて複数記憶する発行条件記憶手段と、
前記受信手段で、前記対象文書と、前記ポリシー識別符号とを受け取ったときに、時刻配信局(TA)にて監査された時刻を取得する時刻取得手段と、
前記ポリシー識別符号に対応する一の前記発行条件を選択して、前記時刻取得手段で取得した時刻を、前記対象文書に付したタイムスタンプトークン(TST)を作成するTST作成手段と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してTSTを暗号化するTST暗号化手段と、
前記TST暗号化手段で暗号化したTSTを前記クライアント装置に送信するTST送信手段と、
を備えることを特徴とする。
【0006】
また、前記TST作成手段は、前記ポリシー識別符号に対応する前記発行条件にもとづいて、TAが配信する時刻に関連する証明書を取得する証明書取得手段と、
をさらに備えることを特徴としてもよい。
【0007】
また、前記受信手段は、受信した前記ポリシー識別符号が前記発行条件記憶手段に記憶されていないときは、前記クライアント装置にエラーメッセージを返すことを特徴としてもよい。
【0008】
上記目的を達成するため、本発明の第2の観点に係るタイムスタンプ発行方法は、
クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と該ポリシー識別符号とを関連づけて記憶する受信処理と、
タイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、前記ポリシー識別符号に関連づけて複数記憶する発行条件記憶処理と、
前記受信手段で前記対象文書と前記ポリシー識別符号とを受け取ったときに、時刻配信局(TA)にて監査された取得する時刻取得処理と、
前記ポリシー識別符号に対応する一の前記発行条件を選択して、前記時刻取得手段で取得した時刻を前記対象文書に付したタイムスタンプトークン(TST)を作成するTST作成処理と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してTSTを暗号化するTST暗号化処理と、
前記TST暗号化手段で暗号化したTSTを前記クライアント装置に送信するTST送信処理と、
を含むことを特徴とする。
【0009】
また、前記TST作成処理は、前記ポリシー識別符号に対応する前記発行条件にもとづいて、TAが配信する時刻に関連する証明書を取得する証明書取得処理と、
をさらに備えることを特徴としてもよい。
【0010】
また、前記受信処理は、受信した前記ポリシー識別符号が前記発行条件記憶手段に記憶されていないときは、前記クライアント装置にエラーメッセージを返すことを特徴としてもよい。
【0011】
上記目的を達成するため、本発明の第3の観点に係るタイムスタンプ発行プログラムは、
コンピュータに、
クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と該ポリシー識別符号とを関連づけて記憶し、さらにタイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、該ポリシー識別符号に関連づけて複数記憶する処理と、
前記対象文書と前記ポリシー識別符号とを受け取ったときに、時刻配信局(TA)にて監査された時刻を取得する処理と、
前記ポリシー識別符号に対応する一の前記発行条件を選択し、取得した時刻を前記対象文書に付したタイムスタンプトークン(TST)を作成する処理と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してTSTを暗号化し、該TSTを前記クライアント装置に送信する処理を実行させることを特徴とする。
【発明の効果】
【0012】
本発明によれば、タイムスタンプタイムの種類に応じてタイムスタンプサーバ装置を管理する必要がなくなるので、事業者の運用負担が軽減される。
【発明を実施するための最良の形態】
【0013】
以下、この発明の実施の形態に係るタイムスタンプサーバ装置について説明する。
【0014】
本発明の実施の形態に係るタイムスタンプサーバ装置は、時刻認証局(Time Stamp Authority:TSA)に設置される装置であり、図1に示すように、タイムスタンプサーバ装置1は、通信ネットワークNを介して、クライアント装置2と、時刻監査サーバ装置3とに接続される。
【0015】
まず、本実施形態に係るタイムスタンプサーバ装置1の処理の概要を説明する。
【0016】
タイムスタンプサーバ装置1は、クライアント装置2から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書、時刻認証要求の種類を示すポリシー識別符号(以下、ポリシーIDとする)を受けると、その対象文書のタイムスタンプを発行するために、時刻監査サーバ装置3から信頼できる時刻を取得する。
そして、タイムスタンプに関する証明書が必要か否かを、あらかじめ事業者によって登録された条件を参照して判断し、必要な場合には時刻と共に証明書を取得する。その後、取得した時刻と、対象文書とからタイムスタンプトークン(以下、TSTとする)を生成すると共にTSA証明書を生成する。さらに、TSTと、TSA証明書と、CA証明書を暗号化して、タイムスタンプ要求のあったクライアント装置に送信する。以下、詳細に説明する。
【0017】
通信ネットワークNは、例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)などの通信プログラムに基づいてデータ伝送を行うネットワークである。通信ネットワークNは、タイムスタンプサーバ装置1と、クライアント装置2、時刻監査サーバ装置3とを相互接続し、これらの間のデータ通信を媒介する。
【0018】
クライアント装置2は、ネットワーク通信機能を有するパーソナルコンピュータ等の情報処理装置から構成される。このクライアント装置2は、公官庁や一般企業等、広く証書類を作成する者(以下、利用者とする)により使用される装置である。
【0019】
時刻監査サーバ装置3は、協定世界時(UTC)と同期した信頼のおける時刻を提供する時刻配信局(Time Authority:TA)に設置されるサーバ装置である。そして、UTCと同期した時刻、および時刻配信局が認証局(Certification Authority:CA)から認証を受けていることの証明書(以下、CA証明書とする)や、証明書の失効リスト(Certificate Revocation List:CRL)等を時刻認証局(Time Stamp Authority:TSA)に提供する。時刻監査サーバ装置3は、タイムスタンプサーバ装置1からの要求に応じて、これらの情報を提供する。すなわち、タイムスタンプサーバ装置1は、時刻監査サーバ装置3に自己の時刻監査の要求を行う。これに対して時刻監査サーバ装置3は、タイムスタンプサーバ装置1から送信された時刻と時刻監査サーバ装置3の時刻とを比較し、タイムスタンプサーバ装置1の時刻が所定の範囲内で時刻監査サーバ装置3と同期していることを示す時刻監査証を作成し、時刻とともにタイムスタンプサーバ装置1に送信する。時刻監査証には、タイムスタンプサーバ装置1と時刻監査サーバ装置3との時刻の差分、その有効期間、CA証明書、CRLが含まれる。タイムスタンプサーバ装置1は、自己の時刻に基づき、タイムスタンプ発行の際に時刻監査証の有効性を確認し、つまり、その有効期間にあれば、時刻監査サーバ装置3から時刻を取得せずにタイムスタンプサーバ装置1の時刻でタイムスタンプを発行する。また、ポリシーIDによって時刻監査の精度を選択するようにしても良い。この場合、ポリシーIDに応じて上記同期とみなす所定の範囲を設定することとし、タイムスタンプサーバ装置1は、クライアントから受け取ったポリシーIDがそのときの時刻監査証より高い精度を要求するものであれば、時刻監査サーバ装置3にポリシーIDにあった時刻監査証を要求し、時刻監査証とともに新たに得られた時刻によってタイムスタンプを発行する。
【0020】
タイムスタンプサーバ装置1は、物理的には図2に示すように、通信装置10と、制御装置11と、記憶装置12と、入力装置13と、表示装置14と、から構成される。
【0021】
通信装置10は、例えば、NIC(Network Interface Card)やルータ、モデム、などの通信装置から構成される。通信装置10は、タイムスタンプサーバ装置1と通信ネットワークNとを接続し、通信ネットワークNを介してクライアント装置2との間で対象文書やTSTを送受信し、または時刻監査サーバ装置3との間で時刻や証明書のデータを送受信する。
【0022】
制御装置11は、例えば、CPU(Central Processing Unit:中央演算処理装置)やワークエリアとなるRAM(Random Access Memory)などから構成され、後述する各種制御動作を実行する。
【0023】
記憶装置12は、ハードディスク装置などの外部記憶装置から構成され、制御装置11の処理プログラムや、タイムスタンプの発行条件を記録したファイル(以下、発行条件ファイルとする)、クライアント装置2から受信した対象文書等、各種のデータを記憶する。
【0024】
入力装置13は、文字入力等するためのキーボード装置等である。タイムスタンプ事業者が入力した情報を、制御装置11に伝達する。タイムスタンプ事業者が、タイムスタンプの発行条件等を入力するために用いられる。
【0025】
表示装置14は、入力装置13により入力された文字等を表示するためのディスプレイ装置等である。タイムスタンプ事業者が、入力したタイムスタンプの発行条件等を確認するために用いられる。
【0026】
図2に示す構成のタイムスタンプサーバ装置1は、機能的には、図3に示す構成を有する。すなわち、タイムスタンプサーバ装置1は、受信部100および送信部101と、発行条件選択部111と、TA要求部112と、TST生成部113と、を備える。
【0027】
受信部100と送信部101とは、通信装置10から構成される。受信部100は、通信ネットワークNを介して、クライアント装置2から対象文書および、ポリシーIDとを受信する。一方、送信部101は、制御装置11から供給されるTST、証明書、またはエラーメッセージ等を、通信ネットワークNを介してクライアント装置2に送信する。
【0028】
発行条件選択部111は、受信部100で受信したポリシーID、および対象文書を記憶し、そのポリシーIDが、発行条件ファイルに登録されているか否かを判断する。具体的に、発行条件ファイルは図4に示すように、ポリシーID毎に、TSTを生成するときに使用する秘密鍵、認証局(Certification Authority:CA)から発行された時刻配信局及び時刻認証局のCA証明書、証明書失効リスト(Certificate Revocation List:CRL)、タイムスタンプにCA証明書とCRLを添付するか否かのフラグ、タイムスタンプの発行対象となるハッシュアルゴリズム、そのポリシーIDをアクティブにするか否かのフラグ、どのポリシーIDをデフォルトとして使用するかを示すフラグが記録されている。そして、受信したポリシーIDが発行条件ファイルに記録されている場合には、そのポリシーIDに関連する発行条件を読み取り、その内容を記憶装置12に記憶する。一方、受信したポリシーIDが、発行条件ファイルに登録されていない場合は、エラーコメントを送信部101に送る。
【0029】
TA要求部112は、発行条件選択部111で読み取った発行条件ファイルの内容からタイムスタンプに関する証明書の要否を確認し、証明書が必要な場合は、TAから時刻、および証明書を取得する。そして、その時刻、および証明書を記憶装置12に記憶する。
【0030】
TST生成部113は、TA要求部112で記憶されたTAの時刻と、発行条件選択部111で記憶された対象文書とから、公知の方法によってTSTを生成し、TSA証明書を作成する。そして、発行条件ファイルの中から、発行条件選択部111で記憶したポリシーIDと同じポリシーIDのレコードから、対応する秘密鍵を参照して、その秘密鍵を用いてTSTと、TA要求部112で記憶されたCA証明書と、TSA証明書とを、公知の方法により暗号化する。そして、暗号化したTSTと証明書を送信部101に送る。
【0031】
次に、本実施形態のタイムスタンプサーバ装置1を利用するための処理の動作について、図5〜図8を参照して説明する。タイムスタンプサーバ装置1の処理は、図5に示すように、発行条件選択処理(ステップS1)と、タイムスタンプ生成処理(ステップS2)と、タイムスタンプ発行処理(ステップS3)と、から構成される。以下、各処理について詳細に説明する。
【0032】
まず、前提として事業者は図4に示す内容を、タイムスタンプサーバ装置1の発行条件ファイルに記録し、また、時刻を取得するTAの時刻監査サーバ装置3のアドレス情報を、記憶装置12に記録しているとする。対象文書としては、電子文書「x」のメッセージダイジェスト(以下、MDとする)「X」を用いる。そして、クライアント装置2から、MD「X」について、ポリシーIDを「002」とするタイムスタンプ要求があったとする。また、タイムスタンプサーバ装置1の制御装置11に常駐するプログラムが、タイムスタンプ要求の有無を監視しているとする。
【0033】
タイムスタンプサーバ装置1の制御装置11は、発行条件選択部111で、発行条件選択処理(ステップS1)を行う。
【0034】
この発行条件選択処理(ステップS1)では、まず受信部100に時刻認証対象となる電子文書「x」のMD「X」、ポリシーID「002」の要求があるか、また同じポリシーID「002」のリクエストが既に32個以上ないかを判断する(図6;ステップS100)。具体的には、タイムスタンプサーバ装置1の起動時に常駐されるアプリケーション(例えば、Tomcatなど)のサーブレット機能を用いて、このタイムスタンプ要求を監視することにより判断する。
【0035】
そして、受信部100にMD「X」と、ポリシーID「002」要求があり、ポリシーID「002」のリクエストが所定数、例えば、32個以上ないことが確認できた場合(ステップS100;yes)、制御装置11は、発行条件選択部111で、対象文書としてのMD「X」、ポリシーID「002」を記憶装置12に記憶する(ステップS101)。一方、MD「X」、およびポリシーID「002」が確認できない場合(ステップS101;no)、または既にポリシーID「002」のリクエストが32個以上ある場合は、エラーメッセージを送信部101に返す(ステップS102)。例えば、電子文書のMDがない場合などに、このステップS102で「その電子文書のMDがありません」とするエラーメッセージを返す。
【0036】
次に制御装置11は、発行条件選択部111で、記憶装置12に記憶したポリシーID「002」と同じポリシーIDを含むレコードが、発行条件ファイルにあるか否かを判断する(ステップS103)。そして、同じポリシーID「002」を含むレコードがあると判断した場合は(ステップS103;yes)、そのレコードを抽出して記憶装置12に記憶する(ステップS104)。一方、同じポリシーIDがない場合は(ステップS103;no)、エラーメッセージを送信部101に返す(ステップS105)。例えば、ポリシーID「003」の場合には、「タイムスタンプ発行対象外のMDです」とするエラーメッセージを、送信部101に返す。
【0037】
さらに、制御装置11は、発行条件選択部111で、ステップS104で抽出し、ポリシーID「002」を含む発行条件ファイルのレコードに記されたハッシュアルゴリズムを読み取り、MDがそのハッシュアルゴリズムで作成されているか否かを判断する(ステップS106)。具体的には、MDが、発行条件ファイルに記されたハッシュアルゴリズム「SHA256」で作成されたMDであるかを判断する。そして、MDが発行条件ファイルのレコードに記されたハッシュアルゴリズムと同じアルゴリズムで作成されている場合は(ステップS106;yes)、続いて証明書フラグを参照して証明書の要否を判断する(ステップS107)。一方、MDが、発行条件ファイルのレコードに記されたハッシュアルゴリズムと同じアルゴリズムで作成されてない場合は(ステップS106;no)、ステップS105と同じエラーメッセージを、送信部101に返す(ステップS108)。
【0038】
そして、ステップS107で、証明書が必要と判断した場合は(ステップS107;yes)、制御装置11のTA要求部112は、発行条件ファイルから必要な証明書の種類を読み取り、あらかじめ記録されたアドレス情報をもつTAにより監査された時刻と、証明書取得する(ステップS109)。具体的には、制御装置11のTA要求部112は、図4の発行条件ファイルのポリシーID「002」のレコードの証明書フラグを参照する。そして、そのフラグが「要」となっているので、次に証明書種類を参照して「TSA、CA」が必要であることを確認する。そして、事前にTAから取得した時刻監査証の有効性を確認し、時刻監査証が有効であれば、これからCA証明書を取り出し、時刻監査サーバ装置3と自己の内部時計の時刻とが同期しているとして内部時計から時刻を取得する。時刻監査証が有効でなければ、TAに対してリクエストを出すことにより、時刻と、CA証明書とを取得する。一方、ステップS107で証明書が不要と判断した場合は(ステップS107;no)、時刻のみを取得する(ステップS110)。そして、ステップS109、またはステップS110が終了すると、発行条件選択処理(ステップS1)が終了し、次のタイムスタンプ生成処理(ステップS2)に進む。
【0039】
タイムスタンプ生成処理(ステップS2)では、制御装置11は、TST生成部113で、MDと、ステップS109またはステップS110で取得した時刻とから、公知の方法によりTSTを生成し、TSA証明書を作成する(ステップS200)。具体的には、MD「X」と、TAから取得した時刻とから生成したTST「X'」と、TST「X'」に対するTSA証明書、例えば、「TST『X'』は2005年12月10日に作成されたことを証明する」とした内容のTSA証明書を作成する。
【0040】
次に、制御装置11は、TST生成部113で、ステップS104で記憶したポリシーIDと同じポリシーIDを含むレコードに記された秘密鍵を読み取り、ステップS200で生成したTST、およびTSA証明書と、ステップS109で取得した証明書とを、その秘密鍵を用いて、例えばIDEA(International Data Encryption Algorithm)などの公知の方法により暗号化して、記憶装置12に記憶する(ステップS201)。具体的には、図4に示すように、発行条件ファイルの中から、ポリシーID「002」に対応する秘密鍵「B」を読み取り、TST「X'」と、TSA証明書と、CA証明書をその秘密鍵「B」で暗号化したデータ「X'’」を作成する。このステップS201が終了すると、タイムスタンプ生成処理(ステップS2)が終了し、次のタイムスタンプ発行処理(ステップS3)にすすむ。
【0041】
タイムスタンプ発行処理(ステップS3)では、制御装置11は、TST生成部113で、ステップS201で暗号化して記憶したTSTと証明書からなるデータを、クライアント装置2に送信するよう送信部101に指示し、送信部101はそのデータを、証明書をクライアント装置2に送信する(ステップS300)。具体的には、対象文書「X」と、TST「X'」と、TSA証明書と、CA証明書とを秘密鍵「B」で暗号化したデータ「X'’」を、クライアント装置2に送信する。以上で、タイムスタンプ発行処理(ステップS3)が終了し、タイムスタンプを発行するための全ての処理が終了する。
【0042】
このようなタイムスタンプ発行処理が行われることで、クライアント装置2からのタイムスタンプ要求内容に応じたタイムスタンプが発行される。具体的には、クライアント装置2に、TST「X'」と、TSA証明書と、CA証明書とを秘密鍵「B」で暗号化したデータ「X''」が送信されると、クライアント装置2の利用者は、秘密鍵「B」に対応する公開鍵「B'」を取得して復号することにより、TST「X'」と、TSA証明書、CA証明書を取得できる。そして、利用者は、このTST「X'」のMDと、タイムスタンプ取得前のMDを比べて、その値に変更がないこと、およびTSA証明書の時刻を確認することにより、その電子文書作成後、TSA証明書発行迄の間に、電子文書自体が改ざん等されていないことが確認できる。
【0043】
上記実施の形態は一例であり、本発明はこれに限られない。すなわち、種々の応用が可能であり、あらゆる実施の形態が本発明の範囲に含まれる。
【0044】
例えば、上記実施例では、TAから信頼ある時刻を取得することとしているが、TAがタイムスタンプサーバ装置1の時刻を監査し、TAの時刻と、タイムスタンプサーバ装置1の時刻のずれ(差分)を求めて時刻監査証を生成している場合等は、その差分の時間をTAから取得してタイムスタンプサーバ装置1が時刻を求めてもよい。
【0045】
また、上記実施例では、クライアント装置2から対象文書としてのMDと、ポリシーIDとを受信して、タイムスタンプを発行しているが、これらと同じ内容が得られるのであれば、例えば、これらの内容をまとめた1つのファイルを受信し、タイムスタンプを発行する等の処理形態でも構わない。また、タイムスタンプサーバ装置1は、対象文書として電子文書を受信し、この電子文書からMDを生成して上記の処理を行い、受信した電子文書をMDとともに記憶装置12に記憶するようにしてもよい。
【0046】
また、上記実施例では記載していないが、事業者がタイムスタンプ発行条件を登録したときに、既に同一のポリシーIDが発行条件ファイルにある場合には、ディスプレイ等の表示装置14にエラーコメントを表示させる処理を行って、発行条件の入力精度を高める等のチェック機能を持たせる登録処理チェック処理等を含めてもよい。
【0047】
尚、システム構成や動作等については、同様の機能構成が得られるならば、任意に変更可能である。例えば、上記実施形態では、TAとTSAは物理的に離れた場合を想定しているが、TSAがTAと同じ事業者である場合等は、論理的にTSAの機能とTAの機能とを分割し、タイムスタンプサーバ装置1が、TAが行う時刻配信と、TSAが行うタイムスタンプ発行の両方のサービスを提供してもよい。
【0048】
さらに、上記実施形態では、クライアント装置2から、同時に最大32個の同じポリシーIDのタイムスタンプ要求を受け付けることとしているが、例えば、タイムスタンプサーバ装置1に対するクライアント装置2からのアクセス頻度を監視し、その頻度に応じて同時に受け付けるタイムスタンプ要求を変更する処理を行うようにしてもよい。
【0049】
上記実施の形態にかかるタイムスタンプサーバ装置1は、専用装置によって実現可能なことはもとより、汎用のコンピュータシステムによって構成することもできる。この場合、上記各処理を実現するためのプログラムを汎用コンピュータシステムにインストールしてOSとの協働により実行することで、汎用コンピュータ装置を、上記タイムスタンプサーバ装置1として機能させることができる。
【0050】
また、上述の機能を実現するプログラムの提供方法は任意であり、CD−ROMなどの記録媒体に格納して提供可能なことはもとより、例えば、インターネットなどの通信媒体を介して提供してもよい。
【図面の簡単な説明】
【0051】
【図1】本発明の実施の形態に係るタイムスタンプサーバ装置、クライアント装置、時刻監査サーバ装置を模式的に示す図である。
【図2】図1に示すタイムスタンプサーバ装置の構成を示すブロック図である。
【図3】図2のタイムスタンプサーバ装置の機能的構成を示す図である。
【図4】本発明の実施の形態に係る発行条件ファイルの内容の具体例を示すイメージ図である。
【図5】本発明の実施の形態に係るタイムスタンプ発行処理の処理動作を説明するためのフローチャートである。
【図6】図5に示す発行条件選択処理の処理動作を説明するためのフローチャートである。
【図7】図5に示すタイムスタンプ生成処理の処理動作を説明するためのフローチャートである。
【図8】図5に示すタイムスタンプ発行処理の処理動作を説明するためのフローチャートである。
【符号の説明】
【0052】
1 タイムスタンプサーバ装置
2 クライアント装置
3 時刻監査サーバ装置
N 通信ネットワーク
10 通信装置
11 制御装置
12 記憶装置
13 入力装置
14 表示装置
100 受信部
101 送信部
111 発行条件選択部
112 TA要求部
113 TST生成部
【特許請求の範囲】
【請求項1】
クライアント装置に通信ネットワークで互いに接続されたタイムスタンプサーバ装置であって、
前記クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と、該ポリシー識別符号とを関連づけて記憶する受信手段と、
タイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、前記ポリシー識別符号に関連づけて複数記憶する発行条件記憶手段と、
前記受信手段で、前記対象文書と、前記ポリシー識別符号とを受け取ったときに、時刻配信局(Time Authority)にて監査された時刻を取得する時刻取得手段と、
前記ポリシー識別符号に対応する一の前記発行条件を選択して、前記時刻取得手段で取得した時刻を、前記対象文書に付したタイムスタンプトークン(Time Stamp Token)を作成するTST作成手段と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してタイムスタンプトークンを暗号化するTST暗号化手段と、
前記TST暗号化手段で暗号化したタイムスタンプトークンを前記クライアント装置に送信するTST送信手段と、
を備えることを特徴とするタイムスタンプサーバ装置。
【請求項2】
前記TST作成手段は、前記ポリシー識別符号に対応する前記発行条件にもとづいて、前記時刻配信局(Time Authority)が配信する時刻に関連する証明書を取得する証明書取得手段と、
をさらに備えることを特徴とする請求項1に記載のタイムスタンプサーバ装置。
【請求項3】
前記受信手段は、受信した前記ポリシー識別符号が前記発行条件記憶手段に記憶されていないときに、前記クライアント装置にエラーメッセージを返すこと、
を特徴とする請求項1または2に記載のタイムスタンプサーバ装置。
【請求項4】
クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と該ポリシー識別符号とを関連づけて記憶する受信処理と、
タイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、前記ポリシー識別符号に関連づけて複数記憶する発行条件記憶処理と、
前記受信手段で前記対象文書と前記ポリシー識別符号とを受け取ったときに、時刻配信局(Time Authority)にて監査された時刻を取得する時刻取得処理と、
前記ポリシー識別符号に対応する一の前記発行条件を選択して、前記時刻取得手段で取得した時刻を前記対象文書に付したタイムスタンプトークン(Time Stamp Token)を作成するTST作成処理と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してタイムスタンプトークン(Time Stamp Token)を暗号化するTST暗号化処理と、
前記TST暗号化手段で暗号化したタイムスタンプトークン(Time Stamp Token)を前記クライアント装置に送信するTST送信処理と、
を含むことを特徴とするタイムスタンプ発行方法。
【請求項5】
前記TST作成処理は、前記ポリシー識別符号に対応する前記発行条件にもとづいて、前記時刻配信局(Time Authority)が配信する時刻に関連する証明書を取得する証明書取得処理と、
をさらに備えることを特徴とする請求項4に記載のタイムスタンプ発行方法。
【請求項6】
前記受信処理は、受信した前記ポリシー識別符号が前記発行条件記憶手段に記憶されていないときは、前記クライアント装置にエラーメッセージを返すこと、
を特徴とする請求項4または5に記載のタイムスタンプ発行方法。
【請求項7】
クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と該ポリシー識別符号とを関連づけて記憶し、さらにタイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、該ポリシー識別符号に関連づけて複数記憶する処理と、
前記対象文書と前記ポリシー識別符号とを受け取ったときに、時刻配信局(Time Authority)にて監査された時刻を取得する処理と、
前記ポリシー識別符号に対応する一の前記発行条件を選択し、取得した時刻を前記対象文書に付したタイムスタンプトークン(Time Stamp Token)を作成する処理と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してタイムスタンプトークン(Time Stamp Token)を暗号化し、該タイムスタンプトークン(Time Stamp Token)を前記クライアント装置に送信する処理と、
を実行させるタイムスタンプ発行プログラム。
【請求項1】
クライアント装置に通信ネットワークで互いに接続されたタイムスタンプサーバ装置であって、
前記クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と、該ポリシー識別符号とを関連づけて記憶する受信手段と、
タイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、前記ポリシー識別符号に関連づけて複数記憶する発行条件記憶手段と、
前記受信手段で、前記対象文書と、前記ポリシー識別符号とを受け取ったときに、時刻配信局(Time Authority)にて監査された時刻を取得する時刻取得手段と、
前記ポリシー識別符号に対応する一の前記発行条件を選択して、前記時刻取得手段で取得した時刻を、前記対象文書に付したタイムスタンプトークン(Time Stamp Token)を作成するTST作成手段と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してタイムスタンプトークンを暗号化するTST暗号化手段と、
前記TST暗号化手段で暗号化したタイムスタンプトークンを前記クライアント装置に送信するTST送信手段と、
を備えることを特徴とするタイムスタンプサーバ装置。
【請求項2】
前記TST作成手段は、前記ポリシー識別符号に対応する前記発行条件にもとづいて、前記時刻配信局(Time Authority)が配信する時刻に関連する証明書を取得する証明書取得手段と、
をさらに備えることを特徴とする請求項1に記載のタイムスタンプサーバ装置。
【請求項3】
前記受信手段は、受信した前記ポリシー識別符号が前記発行条件記憶手段に記憶されていないときに、前記クライアント装置にエラーメッセージを返すこと、
を特徴とする請求項1または2に記載のタイムスタンプサーバ装置。
【請求項4】
クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と該ポリシー識別符号とを関連づけて記憶する受信処理と、
タイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、前記ポリシー識別符号に関連づけて複数記憶する発行条件記憶処理と、
前記受信手段で前記対象文書と前記ポリシー識別符号とを受け取ったときに、時刻配信局(Time Authority)にて監査された時刻を取得する時刻取得処理と、
前記ポリシー識別符号に対応する一の前記発行条件を選択して、前記時刻取得手段で取得した時刻を前記対象文書に付したタイムスタンプトークン(Time Stamp Token)を作成するTST作成処理と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してタイムスタンプトークン(Time Stamp Token)を暗号化するTST暗号化処理と、
前記TST暗号化手段で暗号化したタイムスタンプトークン(Time Stamp Token)を前記クライアント装置に送信するTST送信処理と、
を含むことを特徴とするタイムスタンプ発行方法。
【請求項5】
前記TST作成処理は、前記ポリシー識別符号に対応する前記発行条件にもとづいて、前記時刻配信局(Time Authority)が配信する時刻に関連する証明書を取得する証明書取得処理と、
をさらに備えることを特徴とする請求項4に記載のタイムスタンプ発行方法。
【請求項6】
前記受信処理は、受信した前記ポリシー識別符号が前記発行条件記憶手段に記憶されていないときは、前記クライアント装置にエラーメッセージを返すこと、
を特徴とする請求項4または5に記載のタイムスタンプ発行方法。
【請求項7】
クライアント装置から、時刻認証の対象となる電子文書又はそのメッセージダイジェスト等の対象文書と、時刻認証要求の種類を示す指標であるポリシー識別符号とを受け取り、該対象文書と該ポリシー識別符号とを関連づけて記憶し、さらにタイムスタンプの発行条件と、該タイムスタンプの発行に用いる秘密鍵とを、該ポリシー識別符号に関連づけて複数記憶する処理と、
前記対象文書と前記ポリシー識別符号とを受け取ったときに、時刻配信局(Time Authority)にて監査された時刻を取得する処理と、
前記ポリシー識別符号に対応する一の前記発行条件を選択し、取得した時刻を前記対象文書に付したタイムスタンプトークン(Time Stamp Token)を作成する処理と、
前記ポリシー識別符号に対応する一の前記秘密鍵を、前記発行条件記憶手段から選択してタイムスタンプトークン(Time Stamp Token)を暗号化し、該タイムスタンプトークン(Time Stamp Token)を前記クライアント装置に送信する処理と、
を実行させるタイムスタンプ発行プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【公開番号】特開2007−181093(P2007−181093A)
【公開日】平成19年7月12日(2007.7.12)
【国際特許分類】
【出願番号】特願2005−379556(P2005−379556)
【出願日】平成17年12月28日(2005.12.28)
【出願人】(396004981)セイコープレシジョン株式会社 (481)
【Fターム(参考)】
【公開日】平成19年7月12日(2007.7.12)
【国際特許分類】
【出願日】平成17年12月28日(2005.12.28)
【出願人】(396004981)セイコープレシジョン株式会社 (481)
【Fターム(参考)】
[ Back to top ]