(57)【要約】【課題】多重署名や部分署名といったＸＭＬ署名の特長を損なうことなく、ＸＭＬ署名の中に電子文書の存在時刻証明であるタイムスタンプを付与する。【解決手段】ＸＭＬ署名対象設定部１２は電子文書の一部分あるいは全部をＸＭＬ署名の生成対象として設定し、ＸＭＬ署名生成部１３は設定された電子文書の一部分あるいは全部に対してＸＭＬ署名を生成する。ハッシュ値計算部１４は生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算し、ハッシュ値送信部１５は計算されたハッシュ値をタイムスタンププロバイダ３へ送信する。タイムスタンプ受信部１６はタイムスタンププロバイダ３からハッシュ値を対象として生成されたタイムスタンプを受信し、タイムスタンプ付与部１７は受信されたタイムスタンプをＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与する。【選択図】  図１
2004260664.tif 000002
【特許請求の範囲】
【請求項１】
ＸＭＬ署名生成装置とタイムスタンププロバイダとが接続されたシステムにおいて、
ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成するＸＭＬ署名生成部と、
前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部と、
前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部と、
タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部と、
前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部とを備えることを特徴とするタイムスタンプ付与機能をもつＸＭＬ署名生成システム。
【請求項２】
ＸＭＬ署名生成装置とタイムスタンププロバイダとが接続されたシステムにおいて、
電子文書の入力を受け付ける電子文書入力部と、
前記電子文書入力部により入力された電子文書の一部分あるいは全部をＸＭＬ署名の生成対象として設定するＸＭＬ署名対象設定部と、
前記ＸＭＬ署名対象設定部で設定されたＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成してＸＭＬ署名記憶部に記憶するＸＭＬ署名生成部と、
前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部と、
前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部と、
タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部と、
前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名記憶部に記憶されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部と、
前記タイムスタンプ付与部によりタイムスタンプを付与されたタイムスタンプ付与済みのＸＭＬ署名を出力するＸＭＬ署名出力部とを備えることを特徴とするタイムスタンプ付与機能をもつＸＭＬ署名生成システム。
【請求項３】
ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成するＸＭＬ署名生成部と、
前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部と、
前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部と、
タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部と、
前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部とを備えることを特徴とするタイムスタンプ付与機能をもつＸＭＬ署名生成装置。
【請求項４】
電子文書の入力を受け付ける電子文書入力部と、
前記電子文書入力部により入力された電子文書の一部分あるいは全部をＸＭＬ署名の生成対象として設定するＸＭＬ署名対象設定部と、
前記ＸＭＬ署名対象設定部で設定されたＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成してＸＭＬ署名記憶部に記憶するＸＭＬ署名生成部と、
前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部と、
前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部と、
タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部と、
前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名記憶部に記憶されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部と、
前記タイムスタンプ付与部によりタイムスタンプを付与されたタイムスタンプ付与済みのＸＭＬ署名を出力するＸＭＬ署名出力部とを備えることを特徴とするタイムスタンプ付与機能をもつＸＭＬ署名生成装置。
【請求項５】
ＸＭＬ署名生成部が、ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成する工程と、
ハッシュ値計算部が、生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算する工程と、
ハッシュ値送信部が、計算されたハッシュ値をタイムスタンププロバイダへ送信する工程と、
タイムスタンプ受信部が、タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信する工程と、
タイムスタンプ付与部が、受信されたタイムスタンプを前記ＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与する工程とを含むことを特徴とするタイムスタンプ付与機能をもつＸＭＬ署名生成方法。
【請求項６】
電子文書入力部が、電子文書の入力を受け付ける工程と、
ＸＭＬ署名対象設定部が、入力された電子文書の一部分あるいは全部をＸＭＬ署名の生成対象として設定する工程と、
ＸＭＬ署名生成部が、設定されたＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成してＸＭＬ署名記憶部に記憶する工程と、
ハッシュ値計算部が、生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算する工程と、
ハッシュ値送信部が、計算されたハッシュ値をタイムスタンププロバイダへ送信する工程と、
タイムスタンプ受信部が、タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信する工程と、
タイムスタンプ付与部が、受信されたタイムスタンプを前記ＸＭＬ署名記憶部に記憶されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与する工程と、
ＸＭＬ署名出力部が、タイムスタンプを付与されたタイムスタンプ付与済みのＸＭＬ署名を出力する工程と
を含むことを特徴とするタイムスタンプ付与機能をもつＸＭＬ署名生成方法。
【請求項７】
コンピュータを、ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成するＸＭＬ署名生成部，前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部，前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部，タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部，および前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部として動作させるためのＸＭＬ署名生成プログラム。
【請求項８】
コンピュータを、電子文書の入力を受け付ける電子文書入力部，前記電子文書入力部により入力された電子文書の一部分あるいは全部をＸＭＬ署名の生成対象として設定するＸＭＬ署名対象設定部，前記ＸＭＬ署名対象設定部で設定されたＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成してＸＭＬ署名記憶部に記憶するＸＭＬ署名生成部，前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部，前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部，タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部，前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名記憶部に記憶されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部，および前記タイムスタンプ付与部によりタイムスタンプを付与されたタイムスタンプ付与済みのＸＭＬ署名を出力するＸＭＬ署名出力部として動作させるためのＸＭＬ署名生成プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）署名生成システムに関し、特にタイムスタンプ付与機能をもつＸＭＬ署名生成システムに関する。
【０００２】
【従来の技術】
従来、電子文書保存システムでは、電子文書の存在時刻を証明するタイムスタンプの生成時に、電子文書全体のハッシュ値を対象としてタイムスタンプを生成していた。
【０００３】
一般に、電子文書保存の依頼者は、電子文書全体に対してデジタル署名を生成し、電子文書とデジタル署名とを併せて電子文書保存システムへ保存を依頼する。
電子文書保存システムは、電子文書とデジタル署名とを統合した電子文書を対象にハッシュ値を計算してタイムスタンププロバイダに送信し、タイムスタンプの発行を依頼する。タイムスタンププロバイダは、受信したハッシュ値を元にタイムスタンプを生成し、電子文書保存システムに返信する。タイムスタンプを受信した電子文書保存システムは、電子文書，デジタル署名およびタイムスタンプを保管して管理する。
【０００４】
従来技術として、タイムスタンプオーソリティとの連携を目的とした時刻認証装置が公知である（例えば、特許文献１参照）。この装置では、著者が作成したデジタル文書Ｍは、デジタル文書受取手段で受け取られ、結合手段において時刻取得手段からの時刻情報ｔを結合されて、１つの時刻印付デジタル文書Ｍｔが作成され、この時刻印付デジタル文書Ｍｔは複数のデジタル署名手段に送付され、各々独立にデジタル署名を作成され、この複数のデジタル署名手段で独立に作成された複数のデジタル署名を統合デジタル署名作成手段で受け取り結合して、統合デジタル署名ｃを作成し、時刻認証証明書送付手段において時刻印付デジタル文書Ｍｔと統合デジタル署名ｃとの組を時刻認証証明書（Ｍｔ，ｃ）として著者に送付する。
【０００５】
また、従来技術として、タイムスタンプの利用モデルを目的とした情報認証装置が公知である（例えば、特許文献２参照）。この装置では、デジタルカメラは、撮像部と、情報認証装置としての耐タンパ装置とで構成されている。耐タンパ装置は、時刻修正不可能な第１の時刻情報発生装置，時刻修正可能な第２の時刻情報発生装置および位置測定装置を有し、撮像部からデジタル画像データが入力されたときに、所有者情報および位置情報の個別ハッシュ値を算出するとともに、デジタル画像データ，個別ハッシュ値および時刻情報について総合ハッシュ値を算出し、さらにデジタル署名を算出して記憶するとともに、時刻情報および位置情報のログ情報を記憶するものである。
【０００６】
これに対して、近年、電子文書保存システムで用いられるデジタル署名方式において、デジタル署名対象に電子文書の一部分あるいは全部を指定してデジタル署名の生成を行う部分署名，および複数のデジタル署名の生成を行う多重署名といった特長を持つＸＭＬ署名が、デジタル署名フォーマットとして多く採用されている。
【０００７】
例えば、従来技術として、ＸＭＬ署名をＷｅｂアプリケーションで利用することを目的としたＸＭＬ署名授受方法が公知である（例えば、特許文献３参照）。この方法は、ＸＭＬ文書に対するＸＭＬ署名の付与・検証機能を行うソフトウェアを設け、このソフトウェアをＷｅｂブラウザに接続することにより、アプリケーション毎に特化した部分をＸＭＬ文書作成のプロセスのみとし、ＸＭＬ署名の付与・検証機能を共通化させ、利便性を向上させるようにしたものである。
【０００８】
しかし、従来の電子文書保存システムで用いられるデジタル署名は、電子文書全体をデジタル署名対象としており、結果としてタイムスタンプの生成においても、電子文書全体が対象となっていた。そのため、ＸＭＬ署名を用いてデジタル署名を行う場合、多重署名や部分署名といったＸＭＬ署名の特長を利用することができなかった。
【０００９】
【特許文献１】
特開２０００−２３５３４０号公報（第８−９頁、図１）
【特許文献２】
特開２００２−２１５０２９号公報（第６−８頁、図１）
【特許文献３】
特開２００２−０９１３０３号公報（第６頁、図１）
【００１０】
【発明が解決しようとする課題】
従来技術には、次のような問題点があった。
【００１１】
第１の問題点は、電子文書の署名フォーマットにＸＭＬ署名を用いた場合、多重署名や部分署名などのＸＭＬ署名の特長が損なわれることである。その理由は、電子文書中のＸＭＬ署名対象外の箇所を編集した場合、タイムスタンプ生成対象となったハッシュ値が変化し、タイムスタンプの検証に失敗するためである。
【００１２】
本発明の目的は、デジタル署名の標準フォーマット仕様であるＸＭＬ署名の中に電子文書の存在時刻証明であるタイムスタンプを付与することにより、多重署名や部分署名といったＸＭＬ署名の特長を損なうことなく、電子文書の存在時刻証明が可能となるタイムスタンプ付与機能をもつＸＭＬ署名生成システムを提供することにある。
【００１３】
【課題を解決するための手段】
本発明のタイムスタンプ付与機能をもつＸＭＬ署名生成システムは、ＸＭＬ署名生成装置とタイムスタンププロバイダとが接続されたシステムにおいて、ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成するＸＭＬ署名生成部と、前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部と、前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部と、タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部と、前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部とを備えることを特徴とする。
【００１４】
また、本発明のタイムスタンプ付与機能をもつＸＭＬ署名生成システムは、ＸＭＬ署名生成装置とタイムスタンププロバイダとが接続されたシステムにおいて、電子文書の入力を受け付ける電子文書入力部と、前記電子文書入力部により入力された電子文書の一部分あるいは全部をＸＭＬ署名の生成対象として設定するＸＭＬ署名対象設定部と、前記ＸＭＬ署名対象設定部で設定されたＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成してＸＭＬ署名記憶部に記憶するＸＭＬ署名生成部と、前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部と、前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部と、タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部と、前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名記憶部に記憶されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部と、前記タイムスタンプ付与部によりタイムスタンプを付与されたタイムスタンプ付与済みのＸＭＬ署名を出力するＸＭＬ署名出力部とを備えることを特徴とする。
【００１５】
さらに、本発明のタイムスタンプ付与機能をもつＸＭＬ署名生成装置は、ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成するＸＭＬ署名生成部と、前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部と、前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部と、タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部と、前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部とを備えることを特徴とする。
【００１６】
さらにまた、本発明のタイムスタンプ付与機能をもつＸＭＬ署名生成装置は、電子文書の入力を受け付ける電子文書入力部と、前記電子文書入力部により入力された電子文書の一部分あるいは全部をＸＭＬ署名の生成対象として設定するＸＭＬ署名対象設定部と、前記ＸＭＬ署名対象設定部で設定されたＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成してＸＭＬ署名記憶部に記憶するＸＭＬ署名生成部と、前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部と、前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部と、タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部と、前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名記憶部に記憶されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部と、前記タイムスタンプ付与部によりタイムスタンプを付与されたタイムスタンプ付与済みのＸＭＬ署名を出力するＸＭＬ署名出力部とを備えることを特徴とする。
【００１７】
一方、本発明のタイムスタンプ付与機能をもつＸＭＬ署名生成方法は、ＸＭＬ署名生成部が、ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成する工程と、ハッシュ値計算部が、生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算する工程と、ハッシュ値送信部が、計算されたハッシュ値をタイムスタンププロバイダへ送信する工程と、タイムスタンプ受信部が、タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信する工程と、タイムスタンプ付与部が、受信されたタイムスタンプを前記ＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与する工程とを含むことを特徴とする。
【００１８】
また、本発明のタイムスタンプ付与機能をもつＸＭＬ署名生成方法は、電子文書入力部が、電子文書の入力を受け付ける工程と、ＸＭＬ署名対象設定部が、入力された電子文書の一部分あるいは全部をＸＭＬ署名の生成対象として設定する工程と、ＸＭＬ署名生成部が、設定されたＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成してＸＭＬ署名記憶部に記憶する工程と、ハッシュ値計算部が、生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算する工程と、ハッシュ値送信部が、計算されたハッシュ値をタイムスタンププロバイダへ送信する工程と、タイムスタンプ受信部が、タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信する工程と、タイムスタンプ付与部が、受信されたタイムスタンプを前記ＸＭＬ署名記憶部に記憶されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与する工程と、ＸＭＬ署名出力部が、タイムスタンプを付与されたタイムスタンプ付与済みのＸＭＬ署名を出力する工程とを含むことを特徴とする。
【００１９】
他方、本発明のＸＭＬ署名生成プログラムは、コンピュータを、ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成するＸＭＬ署名生成部，前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部，前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部，タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部，および前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部として動作させることを特徴とする。
【００２０】
また、本発明のＸＭＬ署名生成プログラムは、コンピュータを、電子文書の入力を受け付ける電子文書入力部，前記電子文書入力部により入力された電子文書の一部分あるいは全部をＸＭＬ署名の生成対象として設定するＸＭＬ署名対象設定部，前記ＸＭＬ署名対象設定部で設定されたＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成してＸＭＬ署名記憶部に記憶するＸＭＬ署名生成部，前記ＸＭＬ署名生成部により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算するハッシュ値計算部，前記ハッシュ値計算部により計算されたハッシュ値をタイムスタンププロバイダへ送信するハッシュ値送信部，タイムスタンププロバイダからハッシュ値を対象として生成されたタイムスタンプを受信するタイムスタンプ受信部，前記タイムスタンプ受信部により受信されたタイムスタンプを前記ＸＭＬ署名記憶部に記憶されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するタイムスタンプ付与部，および前記タイムスタンプ付与部によりタイムスタンプを付与されたタイムスタンプ付与済みのＸＭＬ署名を出力するＸＭＬ署名出力部として動作させることを特徴とする。
【００２１】
本発明のタイムスタンプ付与機能をもつＸＭＬ署名生成システムは、デジタル署名を用いて電子文書の完全性を証明するとともに、タイムスタンプを用いて電子文書の存在時刻を証明する機能を有する。
【００２２】
また、本発明のタイムスタンプ付与機能をもつＸＭＬ署名生成システムは、ＸＭＬ署名の中にタイムスタンプを付与することによって、多重署名や部分署名といったＸＭＬ署名の特長を損なうことなく、電子文書の存在時刻を証明する機能を持つ。
【００２３】
図１において、電子文書入力部１１は、電子文書保存の依頼者から、保存対象となる電子文書の入力を受け付ける。
【００２４】
ＸＭＬ署名対象設定部１２は、ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部を設定する。
【００２５】
ＸＭＬ署名生成部１３は、ＸＭＬ署名対象設定部１２で設定されたＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成し、ＸＭＬ署名記憶部２１に記憶する。
【００２６】
ハッシュ値計算部１４は、ＸＭＬ署名生成部１３により生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算する。
【００２７】
ハッシュ値送信部１５は、ハッシュ値計算部１４により計算されたハッシュ値をタイムスタンププロバイダ３へ送信する。
【００２８】
タイムスタンプ受信部１６は、タイムスタンププロバイダ３からハッシュ値を対象として生成されたタイムスタンプを受信し、タイムスタンプ付与部１７へ渡す。
【００２９】
タイムスタンプ付与部１７は、ＸＭＬ署名記憶部２１に記憶されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中にタイムスタンプを付与する。
【００３０】
ＸＭＬ署名出力部１８は、タイムスタンプ付与部１７で生成されたタイムスタンプ付与済みのＸＭＬ署名を出力する。
【００３１】
以上の機能により、多重署名や部分署名といったＸＭＬ署名の特長を利用してＸＭＬ署名を生成し、ＸＭＬ署名の対象である＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグ以外の電子文書の箇所を変更した場合でも、タイムスタンプの検証に成功する。
【００３２】
なお、本発明は、Ｗ３Ｃ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ  Ｃｏｎｓｏｒｔｉｕｍ）で標準化されているＸＭＬ署名仕様へタイムスタンプ機能を導入する方式を、ＸＭＬ署名仕様の規定レベルで仕様化するものであり、ＸＭＬ署名仕様の特長（部分署名，多重署名の実現方法），およびＸＭＬ署名の規定レベルの詳細な説明は省略する。また、タイムスタンプを利用するモデルについては論じない。さらに、タイムスタンプオーソリティとの連携モデルについては論じない。
【００３３】
【発明の実施の形態】
以下、本発明の第１の実施の形態について図面を参照しながら詳細に説明する。
【００３４】
［第１の実施の形態］
図１を参照すると、本発明の第１の実施の形態に係るタイムスタンプ付与機能をもつＸＭＬ署名生成システムは、ＸＭＬ署名の生成を行うＸＭＬ署名生成装置１と、ＸＭＬ署名を記憶するＸＭＬ署名記憶装置２と、タイムスタンププロバイダ３とから、その主要部が構成されている。
【００３５】
ＸＭＬ署名生成装置１は、電子文書保存の依頼者から保存対象となる電子文書を入力として受け付ける電子文書入力部１１と、ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部を設定するＸＭＬ署名対象設定部１２と、ＸＭＬ署名を生成するＸＭＬ署名生成部１３と、ハッシュ値を計算するハッシュ値計算部１４と、ハッシュ値をタイムスタンププロバイダ３へ送信するハッシュ値送信部１５と、タイムスタンププロバイダ３からタイムスタンプを受け取るタイムスタンプ受信部１６と、ＸＭＬ署名へタイムスタンプを付与するタイムスタンプ付与部１７と、タイムスタンプが付与されたＸＭＬ署名を出力するＸＭＬ署名出力部１８とを備えている。
【００３６】
電子文書入力部１１は、電子文書保存の依頼者から保存対象となる電子文書の入力を受け付ける。
【００３７】
ＸＭＬ署名対象設定部１２は、ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部を設定する。
【００３８】
ＸＭＬ署名生成部１３は、ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成し、ＸＭＬ署名記憶部２１に記憶する。
【００３９】
ハッシュ値計算部１４は、ＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグを対象としてハッシュ値を計算する。
【００４０】
ハッシュ値送信部１５は、計算されたハッシュ値をタイムスタンププロバイダ３へ送信する。
【００４１】
タイムスタンプ受信部１６は、タイムスタンププロバイダ３から送信されたタイムスタンプを受信する。
【００４２】
タイムスタンプ付与部１７は、タイムスタンプ受信部１６で受信したタイムスタンプを、ＸＭＬ署名記憶部２１に記憶されているＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中へ付与する。
【００４３】
ＸＭＬ署名出力部１８は、タイムスタンプが付与されたＸＭＬ署名を出力する。
【００４４】
ＸＭＬ署名記憶装置２は、ＸＭＬ署名を記憶するＸＭＬ署名記憶部２１を備えている。
【００４５】
ＸＭＬ署名記憶部２１は、生成されたＸＭＬ署名を記憶する。
【００４６】
図２を参照すると、第１の実施の形態に係るタイムスタンプ付与機能をもつＸＭＬ署名生成システムの処理は、電子文書受け付けステップＡ１と、ＸＭＬ署名生成対象指定ステップＡ２と、ＸＭＬ署名生成ステップＡ３と、ＸＭＬ署名記憶ステップＡ４と、ハッシュ値計算ステップＡ５と、ハッシュ値送信ステップＡ６と、タイムスタンプ受信ステップＡ７と、タイムスタンプ付与ステップＡ８と、ＸＭＬ署名出力ステップＡ９とからなる。
【００４７】
図３は、第１の実施の形態に係るタイムスタンプ付与機能をもつＸＭＬ署名生成システムにより生成されるＸＭＬ署名の一例を示す図である。なお、図３中の［ｓ０２］〜［ｓ１２］は、実際の署名対象となる署名情報タグ（ＳｉｇｎｅｄＩｎｆｏ  ｅｌｅｍｅｎｔ）である。［ｓ０３］は、署名情報タグの正規化に用いられるアルゴリズムを記述する正規化メソッドタグ（ＣａｎｏｎｉｃａｌｉｚａｔｉｏｎＭｅｔｈｏｄ  ｅｌｅｍｅｎｔ）である。［ｓ０４］は、正規化された署名情報タグから署名値を計算するのに用いられるアルゴリズムを記述する署名メソッドタグ（ＳｉｇｎａｔｕｒｅＭｅｔｈｏｄ  ｅｌｅｍｅｎｔ）である。［ｓ０５］〜［ｓ１１］は、署名対象の参照，ダイジェストアルゴリズムとダイジェスト値を記述する参照タグ（Ｒｅｆｅｒｅｎｃｅ  ｅｌｅｍｅｎｔ）である。
［ｓ０５］は、参照タグのＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）属性として、署名対象の参照ＵＲＩを記述する。［ｓ０６］〜［ｓ０８］は、署名対象のダイジェスト値を計算する前に、オリジナルの署名対象の処理プロセスを記述する変換プロセスタグである。［ｓ０９］は、署名対象の変換プロセスタグの適用後に、ダイジェスト値を計算するアルゴリズムを記述するタグ（ＤｉｇｅｓｔＭｅｔｈｏｄ  ｅｌｅｍｅｎｔ）である。［ｓ１０］は、ダイジェストアルゴリズムに基づいて計算される署名対象のダイジェスト値を記述するタグ（ＤｉｇｅｓｔＶａｌｕｅ  ｅｌｅｍｅｎｔ）である。［ｓ１４］は、署名を検証する際に使われる鍵の情報を記述するタグ（ＫｅｙＩｎｆｏ  ｅｌｍｅｎｔ）である。［ｓ１５］〜［ｓ２１］は、ＸＭＬ署名の中の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグである。［ｓ１８］は、タイムスタンプ付与部１７によって付与されたタイムスタンプのタグ（ｔｉｍｅｓｔａｍｐ  ｅｌｅｍｅｎｔ）である。
【００４８】
次に、このように構成された第１の実施の形態に係るタイムスタンプ付与機能をもつＸＭＬ署名生成システムの動作について、図１ないし図３を参照して説明する。
【００４９】
まず、電子文書入力部１１は、電子文書保存の依頼者から保存対象の電子文書を入力として受け付ける（ステップＡ１）。
【００５０】
次に、ＸＭＬ署名対象設定部１２は、ＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部を設定する（ステップＡ２）。
【００５１】
続いて、ＸＭＬ署名生成部１３は、設定されたＸＭＬ署名の生成対象となる電子文書の一部分あるいは全部に対してＸＭＬ署名を生成し（図３の［ｓ０１］〜［ｓ１６］，および［ｓ２１］〜［ｓ２２］）（ステップＡ３）、ＸＭＬ署名記憶部２１に記憶する（ステップＡ４）。
【００５２】
次に、ハッシュ値計算部１４は、生成されたＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグ（図３の［ｓ１３］）を対象としてハッシュ値を計算し、ハッシュ値送信部１５に渡す（ステップＡ５）。
【００５３】
続いて、ハッシュ値送信部１５は、渡されたハッシュ値をタイムスタンププロバイダ３へ送信する（ステップＡ６）。
【００５４】
次に、タイムスタンプ受信部１６は、タイムスタンププロバイダ３からタイムスタンプを受信し、タイムスタンプ付与部１７へ渡す（ステップＡ７）。
【００５５】
タイムスタンプ付与部１７は、渡されたタイムスタンプをＸＭＬ署名記憶部２１に記憶されているＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与し（図３の［ｓ１５］〜［ｓ２１］）、ＸＭＬ署名出力部１８に渡す（ステップＡ８）。
【００５６】
ＸＭＬ署名出力部１８は、渡されたタイムスタンプ付与済みのＸＭＬ署名を出力する（ステップＡ９）。
【００５７】
［第２の実施の形態］
図４は、本発明の第２の実施の形態に係るタイムスタンプ付与機能をもつＸＭＬ署名生成システムの構成を示すブロック図である。本実施の形態に係るタイムスタンプ付与機能をもつＸＭＬ署名生成システムは、図１に示した第１の実施の形態に係るタイムスタンプ付与機能をもつＸＭＬ署名生成システムにおけるＸＭＬ署名生成装置１に対してＸＭＬ署名生成プログラム１００を付加するようにした点だけが異なる。したがって、その他の特に言及しない部分には同一符号を付して、それらの詳しい説明を省略する。
【００５８】
ＸＭＬ署名生成プログラム１００は、コンピュータでなるＸＭＬ署名生成装置１に読み込まれ、ＸＭＬ署名生成装置１の動作を、電子文書入力部１１，ＸＭＬ署名対象設定部１２，ＸＭＬ署名生成部１３，ハッシュ値計算部１４，ハッシュ値送信部１５，タイムスタンプ受信部１６，タイムスタンプ付与部１７，およびＸＭＬ署名出力部１８として制御する。ＸＭＬ署名生成プログラム１００の制御によるＸＭＬ署名生成装置１の動作は、第１の実施の形態におけるＸＭＬ署名生成装置１の動作と全く同様になるので、その詳しい説明を割愛する。
【００５９】
【発明の効果】
第１の効果は、多重署名や部分署名といったＸＭＬ署名の特長を損なうことなく、電子文書の存在時刻の証明ができることである。この結果、ＸＭＬ署名の生成対象に電子文書の一部分あるいは全部を指定したり、多重署名を行ったりすることが可能となる。その理由は、ＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグからハッシュ値を生成し、ハッシュ値から生成されたタイムスタンプをＸＭＬ署名の＜ＳｉｇｎａｔｕｒｅＰｒｏｐｅｒｔｙ＞タグの中に付与するようにしたことにより、電子文書の＜ＳｉｇｎａｔｕｒｅＶａｌｕｅ＞タグ以外が変更されてもタイムスタンプの検証に成功するからである。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係るタイムスタンプ付与機能をもつＸＭＬ署名生成システムの構成を示すブロック図である。
【図２】第１の実施の形態に係るタイムスタンプ付与機能をもつＸＭＬ署名生成システムの動作を示すフローチャートである。
【図３】第１の実施の形態に係るタイムスタンプ付与機能をもつＸＭＬ署名生成システムにより生成されるＸＭＬ署名の一例を示す図である。
【図４】本発明の第２の実施の形態に係るタイムスタンプ付与機能をもつＸＭＬ署名生成システムの構成を示すブロック図である。
【符号の説明】
１  ＸＭＬ署名生成装置
２  ＸＭＬ署名記憶装置
３  タイムスタンププロバイダ
１１  電子文書入力部
１２  ＸＭＬ署名対象設定部
１３  ＸＭＬ署名生成部
１４  ハッシュ値計算部
１５  ハッシュ値送信部
１６  タイムスタンプ受信部
１７  タイムスタンプ付与部
１８  ＸＭＬ署名出力部
２１  ＸＭＬ署名記憶部
１００  ＸＭＬ署名生成プログラム
Ａ１  電子文書受け付けステップ
Ａ２  ＸＭＬ署名対象指定ステップ
Ａ３  ＸＭＬ署名生成ステップ
Ａ４  ＸＭＬ署名記憶ステップ
Ａ５  ハッシュ値計算ステップ
Ａ６  ハッシュ値送信ステップ
Ａ７  タイムスタンプ受信ステップ
Ａ８  タイムスタンプ付与ステップ
Ａ９  ＸＭＬ署名出力ステップ
【図１】
2004260664.tif 000003
【図２】
2004260664.tif 000004
【図３】
2004260664.tif 000005
【図４】
2004260664.tif 000006