(57)【要約】【課題】  電子文書の電子署名の有効性を適切に確認させることのできる電子署名有効性証明データの生成方法の提供を目的とする。【解決手段】  電子文書の電子署名の有効性が確認された旨を示す電子署名有効性証明データの生成方法であって、前記電子署名と前記電子署名に対する第一の公開鍵証明書とを取得する証明対象取得手順と、前記証明対象取得手順において取得された前記第一の公開鍵証明書の有効性を確認する公開鍵証明書確認手順と、前記電子署名及び前記第一の公開鍵証明書に対するハッシュ値を算出する第一のハッシュ値算出手順と、前記ハッシュ値に対する電子署名を生成する第一の電子署名生成手順と、少なくとも前記ハッシュ値と前記ハッシュ値に対する電子署名とを含むデータを前記電子署名有効性証明データとし、該電子署名有効性証明データを所定の記憶領域に保存する保存手順とを有することにより上記課題を解決する。【選択図】  図４
2006166354.tif 000002
【特許請求の範囲】
【請求項１】
電子文書の電子署名の有効性が確認された旨を示す電子署名有効性証明データの生成方法であって、
前記電子署名と前記電子署名に対する第一の公開鍵証明書とを取得する証明対象取得手順と、
前記証明対象取得手順において取得された前記第一の公開鍵証明書の有効性を確認する公開鍵証明書確認手順と、
前記電子署名及び前記第一の公開鍵証明書に対するハッシュ値を算出する第一のハッシュ値算出手順と、
前記ハッシュ値に対する電子署名を生成する第一の電子署名生成手順と、
少なくとも前記ハッシュ値と前記ハッシュ値に対する電子署名とを含むデータを前記電子署名有効性証明データとし、該電子署名有効性証明データを所定の記憶領域に保存する保存手順とを有することを特徴とする電子署名有効性証明データの生成方法。
【請求項２】
前記電子署名有効性証明データに、前記公開鍵証明書確認手順において前記第一の公開鍵証明書の有効性が確認された旨を示す情報、及び前記第一の公開鍵証明書の有効性が確認された日時を示す情報を含めることを特徴とする請求項１記載の電子署名有効性証明データの生成方法。
【請求項３】
前記電子署名有効性証明データに、前記ハッシュ値に対する電子署名を生成するための暗号鍵に対する第二の公開鍵証明書を含めることを特徴とする請求項１又は２記載の電子署名有効性証明データの生成方法。
【請求項４】
前記電子署名有効性証明データを要求する装置に該電子署名有効性証明データを送信する電子署名有効性証明データ送信手順を有することを特徴とする請求項１乃至３いずれか一項記載の電子署名有効性証明データの生成方法。
【請求項５】
請求項１乃至４いずれか一項記載の電子署名有効性証明データの生成方法によって生成された電子署名有効性証明データの正当性を確認する電子署名有効性証明データの正当性の確認方法であって、
前記電子署名有効性証明データを取得する電子署名有効性証明データ取得手順と、
前記電子署名有効性証明データ取得手順において取得された前記電子署名有効性証明データが、前記所定の記憶領域に存在するか否かを確認する存在確認手順とを有することを特徴とする電子署名有効性証明データの正当性の確認方法。
【請求項６】
前記電子署名有効性証明データ取得手順において取得された前記電子署名有効性証明データが前記所定の記憶領域に存在する旨が確認された場合に、
前記電子署名有効性証明データに対する電子署名を生成する第二の電子署名生成手順を有することを特徴とする請求項５記載の電子署名有効性証明データの正当性の確認方法。
【請求項７】
前記第二の電子署名生成手順において生成された前記電子署名有効性証明データに対する電子署名を含むデータを、前記電子署名有効性証明データの正当性を証明する正当性証明データとして、該正当性証明データを要求する装置に送信する正当性証明データ送信手順を有することを特徴とする請求項６記載の電子署名有効性証明データの正当性の確認方法。
【請求項８】
前記電子署名有効性証明データに含まれている前記ハッシュ値に対する電子署名の数学的な正当性の検証を行う電子署名検証手順を有し、
前記ハッシュ値に対する電子署名の数学的な正当性が検証された場合に、前記第二の電子署名生成手順を行うことを特徴とする請求項６又は７記載の電子署名有効性証明データの正当性の確認方法。
【請求項９】
請求項１乃至４いずれか一項記載の電子署名有効性証明データの生成方法によって生成された電子署名有効性証明データに基づいて、前記電子文書の電子署名の有効性を確認する電子署名有効性確認方法であって、
前記電子文書の電子署名及び前記第一の公開鍵証明書に対するハッシュ値を算出する第二のハッシュ値算出手順と、
前記電子署名有効性証明データに含まれている、前記第一のハッシュ値算出手順において算出されたハッシュ値と、前記第二のハッシュ値算出手順において算出されたハッシュ値とを比較することにより、前記電子文書の電子署名の有効性を判定する判定手順とを有することを特徴とする電子署名有効性確認方法。
【請求項１０】
前記電子文書の電子署名の数学的な正当性を検証する電子署名検証手順を有し、
前記電子文書の電子署名の数学的な正当性が検証された場合に、前記第二のハッシュ値算出手順を行うことを特徴とする請求項９記載の電子署名有効性確認方法。
【請求項１１】
電子文書の電子署名の有効性が確認された旨を示す電子署名有効性証明データを生成する電子署名有効性証明データ生成装置であって、
前記電子署名と前記電子署名に対する第一の公開鍵証明書とを取得する証明対象取得手段と、
前記証明対象取得手段において取得された前記第一の公開鍵証明書の有効性を確認する公開鍵証明書確認手段と、
前記電子署名及び前記第一の公開鍵証明書に対するハッシュ値を算出する第一のハッシュ値算出手段と、
前記ハッシュ値に対する電子署名を生成する第一の電子署名生成手段と、
少なくとも前記ハッシュ値と前記ハッシュ値に対する電子署名とを含むデータを前記電子署名有効性証明データとし、該電子署名有効性証明データを所定の記憶領域に保存する保存手段とを有することを特徴とする電子署名有効性証明データ生成装置。
【請求項１２】
請求項１１記載の電子署名有効性証明データ生成装置によって生成された電子署名有効性証明データの正当性を確認する電子署名有効性証明データ正当性確認装置であって、
前記電子署名有効性証明データを取得する電子署名有効性証明データ取得手段と、
前記電子署名有効性証明データ取得手段において取得された前記電子署名有効性証明データが、前記所定の記憶領域に存在するか否かを確認する存在確認手段とを有することを特徴とする電子署名有効性証明データ正当性確認装置。
【請求項１３】
請求項１１記載の電子署名有効性証明データ生成装置によって生成された電子署名有効性証明データに基づいて、前記電子文書の電子署名の有効性を確認する電子署名有効性確認装置であって、
前記電子文書の電子署名及び前記第一の公開鍵証明書に対するハッシュ値を算出する第二のハッシュ値算出手段と、
前記電子署名有効性証明データに含まれている、前記第一のハッシュ値算出手段において算出されたハッシュ値と、前記第二のハッシュ値算出手段において算出されたハッシュ値とを比較することにより、前記電子文書の電子署名の有効性を判定する判定手段とを有することを特徴とする電子署名有効性確認装置。
【請求項１４】
電子文書の電子署名の有効性が確認された旨を示す電子署名有効性証明データをコンピュータに生成させる電子署名有効性証明データ生成プログラムであって、
前記電子署名と前記電子署名に対する第一の公開鍵証明書とを取得する証明対象取得手順と、
前記証明対象取得手順において取得された前記第一の公開鍵証明書の有効性を確認する公開鍵証明書確認手順と、
前記電子署名及び前記第一の公開鍵証明書に対するハッシュ値を算出する第一のハッシュ値算出手順と、
前記ハッシュ値に対する電子署名を生成する第一の電子署名生成手順と、
少なくとも前記ハッシュ値と前記ハッシュ値に対する電子署名とを含むデータを前記電子署名有効性証明データとし、該電子署名有効性証明データを所定の記憶領域に保存する保存手順とを有することを特徴とする電子署名有効性証明データ生成プログラム。
【請求項１５】
請求項１４記載の電子署名有効性証明データ生成プログラムによって生成された電子署名有効性証明データの正当性をコンピュータに確認させる電子署名有効性証明データ正当性確認プログラムであって、
前記電子署名有効性証明データを取得する電子署名有効性証明データ取得手順と、
前記電子署名有効性証明データ取得手順において取得された前記電子署名有効性証明データが、前記所定の記憶領域に存在するか否かを確認する存在確認手順とを有することを特徴とする電子署名有効性証明データ正当性確認プログラム。
【請求項１６】
請求項１４記載の電子署名有効性証明データ生成プログラムによって生成された電子署名有効性証明データに基づいて、前記電子文書の電子署名の有効性をコンピュータに確認させる電子署名有効性確認プログラムであって、
前記電子文書の電子署名及び前記第一の公開鍵証明書に対するハッシュ値を算出する第二のハッシュ値算出手順と、
前記電子署名有効性証明データに含まれている、前記第一のハッシュ値算出手順において算出されたハッシュ値と、前記第二のハッシュ値算出手順において算出されたハッシュ値とを比較することにより、前記電子文書の電子署名の有効性を判定する判定手順とを有することを特徴とする電子署名有効性確認プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子署名有効性証明データの生成方法、電子署名有効性証明データの正当性の確認方法、電子署名有効性確認方法、電子署名有効性証明データ生成装置、電子署名有効性証明データ正当性確認装置、電子署名有効性確認装置、電子署名有効性証明データ生成プログラム、電子署名有効性証明データ正当性確認プログラム、及び電子署名有効性確認プログラムに関し、特に電子文書の電子署名の有効性を確認させるための電子署名有効性証明データの生成方法、電子署名有効性証明データの正当性の確認方法、電子署名有効性確認方法、電子署名有効性証明データ生成装置、電子署名有効性証明データ正当性確認装置、電子署名有効性確認装置、電子署名有効性証明データ生成プログラム、電子署名有効性証明データ正当性確認プログラム、及び電子署名有効性確認プログラムに関する。
【背景技術】
【０００２】
ネットワーク技術の発展により、電子文書がネットワークを介して交換されることが日常的となっている。但し、ネットワークを介した電子文書の交換は、本人に成りすました悪意者によって偽造文書等が送信され得るというリスクを伴う。そこで、電子文書の送信者又は作成者等の正当性を証明するために電子署名が用いられている。
【０００３】
但し、電子署名によっても文書の送信者等の正当性を完全に証明できない場合もある。すなわち、暗号鍵や暗号化アルゴリズムが漏洩した場合は、第三者であっても本人と同一の電子署名を行うことが可能になるからである。このような危険性は、時間の経過とともに増加する。したがって、長期に亘って同一の暗号鍵や暗号化アルゴリズムを継続的に用いることはセキュリティの確保という観点から望ましくはない。
【特許文献１】特開２００３−１３４１０９号公報
【特許文献２】特開２００３−２６３５１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、暗号鍵や暗号化アルゴリズムが変更されてしまった後に、当該電子署名の正当性を証明するのは非常に困難であるという問題がある。したがって、法的に保存義務を課されている場合等、長期に電子署名付き電子文書を保存しなければならない場合においては、例えば、定期的に電子署名の有効性の延長を要求するといった煩雑な手続が要求される。他方において、長期に利用されない電子文書が大量にある場合は、これらの電子文書はＨＤＤ（Hard Disk Drive）等の常にアクセス可能な記録媒体ではなく、ＤＶＤ（Digital Versatile Disk）等の低廉な大容量記録媒体に保存しておきたいという要求がある。しかし、ポータブルな記録媒体による保存は、定期的な有効性の延長の手続をより煩雑化させる。
【０００５】
なお、特許文献１に記載された技術は、公開鍵証明書の有効性を検証するシステムに関するものであり、本発明が解決しようとしている電子署名の有効性を長期に保証可能にするものではない。公開鍵証明書がある時点において有効であったことを検証できたところで、その公開鍵に対応する秘密鍵が漏洩してしまっている場合、電子署名が偽造できることに変わりは無い。したがって、本発明が解決しようとしている課題に対しては有効ではない。
【０００６】
また、特許文献２に記載された技術は、センタに対して文書データそのものを送付する必要があり、機密性の高い文書データについては適用し難い問題がある。
【０００７】
本発明は、上記の点に鑑みてなされたものであって、電子文書の電子署名の有効性を適切に確認させることのできる電子署名有効性証明データの生成方法、電子署名有効性証明データの正当性の確認方法、電子署名有効性確認方法、電子署名有効性証明データ生成装置、電子署名有効性証明データ正当性確認装置、電子署名有効性確認装置、電子署名有効性証明データ生成プログラム、電子署名有効性証明データ正当性確認プログラム、及び電子署名有効性確認プログラムの提供を目的とする。
【課題を解決するための手段】
【０００８】
そこで上記課題を解決するため、本発明は、請求項１に記載されるように、電子文書の電子署名の有効性が確認された旨を示す電子署名有効性証明データの生成方法であって、前記電子署名と前記電子署名に対する第一の公開鍵証明書とを取得する証明対象取得手順と、前記証明対象取得手順において取得された前記第一の公開鍵証明書の有効性を確認する公開鍵証明書確認手順と、前記電子署名及び前記第一の公開鍵証明書に対するハッシュ値を算出する第一のハッシュ値算出手順と、前記ハッシュ値に対する電子署名を生成する第一の電子署名生成手順と、少なくとも前記ハッシュ値と前記ハッシュ値に対する電子署名とを含むデータを前記電子署名有効性証明データとし、該電子署名有効性証明データを所定の記憶領域に保存する保存手順とを有することを特徴とする。
【０００９】
このような電子署名有効性証明データの生成方法によれば、後日、電子署名の有効性を確認させることのできる電子署名有効性証明データを生成することができる。
【００１０】
また、上記課題を解決するため、本発明は、請求項５に記載されるように、請求項１乃至４いずれか一項記載の電子署名有効性証明データの生成方法によって生成された電子署名有効性証明データの正当性を確認する電子署名有効性証明データの正当性の確認方法であって、前記電子署名有効性証明データを取得する電子署名有効性証明データ取得手順と、前記電子署名有効性証明データ取得手順において取得された前記電子署名有効性証明データが、前記所定の記憶領域に存在するか否かを確認する存在確認手順とを有することを特徴とする。
【００１１】
このような電子署名有効性証明データの正当性の確認方法によれば、上記電子署名有効性証明データの正当性を確認することができる。したがって、正当性が確認された電子署名有効性証明データに基づいて、電子署名の有効性を確認させることができる。
【００１２】
また、上記課題を解決するため、本発明は、請求項９に記載されるように、請求項１乃至４いずれか一項記載の電子署名有効性証明データの生成方法によって生成された電子署名有効性証明データに基づいて、前記電子文書の電子署名の有効性を確認する電子署名有効性確認方法であって、前記電子文書の電子署名及び前記第一の公開鍵証明書に対するハッシュ値を算出する第二のハッシュ値算出手順と、前記電子署名有効性証明データに含まれている、前記第一のハッシュ値算出手順において算出されたハッシュ値と、前記第二のハッシュ値算出手順において算出されたハッシュ値とを比較することにより、前記電子文書の電子署名の有効性を判定する判定手順とを有することを特徴とする。
【００１３】
このような電子署名有効性確認方法によれば、電子署名有効性証明データに基づいて、前記電子文書の電子署名の有効性を確認させることができる。
【００１４】
また、上記課題を解決するため、本発明は、上記電子署名有効性証明データの生成方法を実行する電子証明有効性証明データ生成装置、又は上記電子署名有効性証明データの生成方法をコンピュータに実行させるための電子証明有効性証明データ生成プログラムとしてもよい。
【００１５】
また、上記課題を解決するため、本発明は、上記電子署名有効性証明データの正当性の確認方法を実行する電子署名有効性証明データ正当性確認装置、又は上記電子署名有効性証明データの正当性の確認方法をコンピュータに実行させるための電子署名有効性証明データ正当性確認プログラムとしてもよい。
【００１６】
また、上記課題を解決するため、本発明は、上記電子署名有効性確認方法を実行する電子署名有効性確認装置、又は上記電子署名有効性確認方法をコンピュータに実行させるための電子署名有効性確認プログラムとしてもよい。
【発明の効果】
【００１７】
本発明によれば、電子文書の電子署名の有効性を適切に確認させることのできる電子署名有効性証明データの生成方法、電子署名有効性証明データの正当性の確認方法、電子署名有効性確認方法、電子署名有効性証明データ生成装置、電子署名有効性証明データ正当性確認装置、電子署名有効性確認装置、電子署名有効性証明データ生成プログラム、電子署名有効性証明データ正当性確認プログラム、及び電子署名有効性確認プログラムを提供することができる。
【発明を実施するための最良の形態】
【００１８】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態における有効性確認システムの構成例を示す図である。図１の有効性確認システム１において、有効性確認局１０と、認証局２０と、クライアント装置３０とは、インターネット等のネットワーク４０（有線又は無線の別は問わない。）を介して接続されている。
【００１９】
有効性確認局１０は、電子文書に付された電子署名の有効性を確認するサービスを提供するシステムである。認証局２０は、電子文書の送信者等の正当性を証明するための証明書（公開鍵証明書）を発行するシステムである。
【００２０】
クライアント装置３０は、電子署名及び公開鍵証明書の付された電子文書の送信者又は受信者等、電子文書の所有者が利用するＰＣ（Personal Computer）、ＰＤＡ（Personal Digital(Data) Assistants）、又は携帯電話等の端末である。
【００２１】
なお、有効性確認局１０及び認証局２０は、それぞれ複数台のコンピュータによって構成してもよいが、本実施の形態においては、それぞれ一台のコンピュータによって構成されているものとして説明する。
【００２２】
図２は、本発明の実施の形態における有効性確認局のハードウェア構成例を示す図である。図２の有効性確認局１０は、それぞれバスBで相互に接続されているドライブ装置１００と、補助記憶装置１０２と、メモリ装置１０３と、演算処理装置１０４と、インタフェース装置１０５とを有するように構成される。
【００２３】
有効性確認局１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムが記録された記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。
【００２４】
補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。演算処理装置１０４は、メモリ装置１０３に格納されたプログラムに従って有効性確認局１０に係る機能を実行する。インタフェース装置１０５は図１のネットワーク４０に接続するためのインタフェースとして用いられる。
【００２５】
なお、認証局２０やクライアント装置３０についても、図２と同様のハードウェア構成によって実現することができる。但し、クライアント装置３０については、ディスプレイ等の表示装置や、マウスやキーボード等の入力装置を有していてもよい。
【００２６】
図３は、有効性確認局による有効性証明データの発行処理を説明するための図である。電子文書の電子署名の有効性を確認したいユーザは、予め（電子文書の長期保存の前等）、有効性確認局１０より有効性証明データの発行を受けておき、当該電子文書及び当該電子署名と有効性証明データとを関連付けて保存しておく必要がある。ここで、有効性証明データとは、ある時点において電子署名の有効性が確認されたことを有効性確認局１０が証明するデータをいう。
【００２７】
図３において、クライアント装置３０には、電子文書３１０とその電子署名３２１及び公開鍵証明書３２２とが保存されている。公開鍵証明書３２２は、認証局２０によって発行されたものである。また、有効性確認局１０は、通信部１１、公開鍵証明書確認部１２、有効性証明データ生成部１３、及び有効性証明データ管理ＤＢ１４等の機能を有している。
【００２８】
クライアント装置３０は、ユーザからの指示に応じ、電子文書３１０の電子署名３２１及び公開鍵証明書３２２を有効性確認局１０に送信することにより、有効性証明データの発行を有効性確認局１０に要求する（Ｓ１０１）。
【００２９】
有効性確認局１０の通信部１１が、クライアント装置３０からの有効性証明データの発行要求と共に電子署名３２１及び公開鍵証明書３２２を受信すると、公開鍵証明書確認部１２は、受信された公開鍵証明書３２２の有効性を認証局２０に問い合わせることにより確認する（Ｓ１０２）。なお、公開鍵証明書の失効情報が提供されている場合は、当該失効情報の提供のされ方によって、ＯＣＳＰ（Online Certificate Status Protocol）による確認処理とＣＲＬ（Certificate Revocation List）をダウンロードして確認する処理とを切り替える。また、例えば、公開鍵証明書３２２を発行した認証局２０の証明書を発行する認証局Ａが存在し、更に、認証局Ａの証明書を発行する認証局Ｂが存在する場合のように、認証局の階層構造が構成されている場合は、公開鍵証明書のチェーンをたどって有効性の確認を行う。この手順については、特許第３５４３６１８号公報に詳しく記載されている。
【００３０】
公開鍵証明書３２２の有効性が確認できた場合、有効性証明データ生成部１３は、有効性証明データ１３０を生成する（Ｓ１０３）。生成された有効性証明データ１３０は、有効性証明データ管理ＤＢ１４に登録されると共に（Ｓ１０４）、通信部１１によって有効性証明データ１３０の発行要求元であるクライアント装置３０に送信される（Ｓ１０５）。
【００３１】
クライアント装置３０のユーザは、有効性証明データ１３０を、電子文書３１０、電子署名３２１、及び公開鍵証明書３２２と共に保存しておくことで、後日、電子署名３２１が有効であったことを確認できるようにしておく。
【００３２】
続いて、有効性証明データ生成部による有効性証明データの生成処理の詳細について説明する。図４は、有効性証明データ生成部による有効性証明データの生成処理を説明するための図である。
【００３３】
電子署名３２１と公開鍵証明書３２２を合わせたものに対して、ＳＨＡ−１（Secure Hash Algorithm 1）やＭＤ５（Message Digest 5）のような一方向ハッシュ関数を用いてハッシュ値（対象ハッシュ値１３１）を計算する（Ｓ１０３ａ）。対象ハッシュ値１３１と、公開鍵証明書確認部１２によって公開鍵証明書３２２の有効性の確認処理（Ｓ１０２）が行われた日時を示す情報（確認日時１３２）と、公開鍵証明書３２２が有効であったことを示す情報（証明書確認証１３３）と、シリアル番号１３４と合わせて有効性証明データ１３０のコンテンツ（以下、単に「コンテンツ」という。）とし、コンテンツに対するハッシュ値（コンテンツハッシュ値１３５）を計算する（Ｓ１０３ｂ）。
【００３４】
コンテンツハッシュ値１３５を有効性確認局１０の電子署名用の秘密鍵（署名鍵１５）によって暗号化し、ハッシュ値１３５に対する有効性確認局１０による電子署名（確認局署名１３６）を生成する（Ｓ１０３ｃ）。確認局署名１３６と、署名鍵１５に対応する公開鍵証明書である確認局証明書１３７とをコンテンツに付与して有効性証明データ１３０とする（Ｓ１０３ｄ、Ｓ１０３ｅ、Ｓ１０３ｆ）。なお、確認局証明書１３７は、所定の認証局より有効性確認局１０に対して予め発行されているものである。
【００３５】
生成された有効性証明データ１３０は、有効性証明データ管理ＤＢ１４の以下のようなテーブルに登録される。
【００３６】
図５は、有効性証明データ管理ＤＢを構成する有効性証明データ管理テーブルの構成例を示す図である。図５において、有効性証明データ管理テーブル１４１は、対象ハッシュ値、確認日時、証明書確認証、シリアル番号、確認局署名、及び確認局証明書等がそれぞれ登録される項目を有する。すなわち、一つの有効性証明データ１３０が、一つのレコードとして、有効性証明データ管理テーブル１４１に登録される。
【００３７】
次に、有効性証明データ１３０の発行を受けたユーザが、後日、有効性証明データ１３０に基づいて、電子署名３２１の有効性を確認する方法について説明する。図６は、クライアント装置による電子署名の有効性の確認処理を説明するためのフローチャートである。図６の処理は、ユーザからの指示に応じ、クライアント装置３０がプログラムに基づいて実行する。
【００３８】
まず、公開鍵証明書３２２の有効期限が切れていないか、又は公開鍵証明書３２２が失効していないかについて判定する（Ｓ２０１）。有効期限が切れておらず、失効していない場合は（Ｓ２０１でＮｏ）、電子文書３１０と電子署名３２１、公開鍵証明書３２２を用いて通常の電子署名の検証と同様の処理を実行することにより、電子署名の有効性を検証する（Ｓ２０２）。
【００３９】
一方、公開鍵証明書３２２の有効期限が切れている場合、又は公開鍵証明書３２２が失効している場合は（Ｓ２０２でＹｅｓ）、有効性証明データ１３０に含まれている確認局証明書１３７の有効期限が切れているか、又は確認局証明書１３７が失効しているかを判定する（Ｓ２０３）。有効期限が切れておらず、失効していない場合は（Ｓ２０３でＮｏ）、電子文書３１０、電子署名３２１、公開鍵証明書３２２の数学的な関係の正しさを検証する（Ｓ２０４）。すなわち、公開鍵証明書３２２の失効情報等の確認をせずに電子署名の検証を行えばよい。数学的な関係が正しくない場合は（Ｓ２０５でＮｏ）、電子署名３２１の有効性は確認されなかったものとする（Ｓ２１０）。
【００４０】
数学的な関係が正しい場合（Ｓ２０５でＹｅｓ）、電子署名３２１と公開鍵証明書３２２とを合わせたものについてハッシュ値（以下「カレントハッシュ値」という。）を計算し（Ｓ２０６）、カレントハッシュ値が有効性証明データ１３０に含まれている対象ハッシュ値１３１と一致するかどうか判定する（Ｓ２０７）。カレントハッシュ値と対象ハッシュ値１３１とが一致しない場合は、電子署名３２１の有効性は確認されなかったものとする（Ｓ２１０）。
【００４１】
カレントハッシュ値と対象ハッシュ値１３１とが一致した場合は（Ｓ２０７でＹｅｓ）、有効性証明データ１３０に含まれるコンテンツ（対象ハッシュ値１３１、確認日時１３２、証明書確認証１３３、シリアル番号１３４）に対する電子署名である確認局署名１３６が正しい電子署名であるかどうかを、確認局証明書１３７を用いて検証する（Ｓ２０８。この検証も通常の電子署名検証と同様に行えばよい。
【００４２】
確認局署名１３６が正しい電子署名であると判定された場合は、電子署名３２１は、有効性証明データ１３０に含まれる確認日時１３２及び証明書確認証１３３によって、確認日時１３２に示される日時に、その公開鍵証明書３２２の有効性が確認されたものであるということとなり、有効性が確認されたものとする（Ｓ２０９）。
【００４３】
一方、有効性証明データ１３０に含まれる確認局証明書１３７の有効期限が切れている場合、又は確認局証明書１３７が失効している場合は（Ｓ２０３でＹｅｓ）、有効性証明データ１３０の正当性の確認を有効性確認局１０に要求する（Ｓ２１１）。有効性証明データ１３０の正当性が確認された場合は（Ｓ２１２でＹｅｓ）、上述したステップＳ２０４からＳＳ２０８までの処理を行うことにより、正当性が確認された有効性証明データ１３０を用いて電子署名３２１の有効性の確認を行う。有効性証明データ１３０の正当性が確認されなかった場合は（Ｓ２１２でＮｏ）、電子署名３２１の有効性は確認されなかったものとする（Ｓ２１０）。
【００４４】
なお、有効性証明データ１３０に含まれている確認局証明書１３７の有効期限が切れておらず、確認局証明書１３７が失効していない場合（Ｓ２０３でＮｏ）であっても、ステップＳ２０４からＳ２０９までの処理を行わずに、ステップＳ２１１と同様に、有効性証明データ１３０の正当性の確認を有効性確認局１０に要求してもよい。
【００４５】
また、有効性証明データ１３０に含まれている確認局証明書１３７の有効期限が切れている場合、又は確認局証明書１３７が失効している場合（Ｓ２０３でＹｅｓ）は、Ｓ２０４からＳ２０８の処理を行った後に、Ｓ２１１及びＳ２１２の処理を行ってもよい。
【００４６】
次に、ステップＳ２１１におけるクライアント装置３０からの要求によって開始される、有効性確認局１０による、有効性証明データの正当性の確認処理について説明する。図７は、有効性証明データの正当性の確認処理を説明するための図である。
【００４７】
クライアント装置３０は、電子文書３１０、電子署名３２１及び公開鍵証明書３２２と関連付けて保存されている有効性証明データ１３０を有効性確認局１０に送信することにより、有効性証明データ１３０の正当性の確認を有効性確認局１０に要求する（Ｓ２１１ａ）。
【００４８】
有効性確認局１０の通信部１１が有効性証明データ１３０を受信すると、有効性証明データ検証部１６は、有効性証明データ１３０に含まれるコンテンツと、確認局署名１３６と、確認局証明書１３７とが数学的に正しい関係にあるかどうかをチェックする（Ｓ２１１ｂ）。数学的に正しいことが確認された場合は、有効性証明データ検証部１６は、有効性証明データ１３０のシリアル番号１３４に基づいて、当該有効性証明データ１３０に対応するレコードを有効性証明データ管理ＤＢ１４の有効性証明データ管理テーブル１４１より検索する（Ｓ２１１ｃ）。
【００４９】
有効性証明データ１３０に対応するレコードが検索された場合は、有効性証明データ検証部１６は、そのレコードに含まれている確認局署名１３６と先の有効性証明データ１３０に含まれている確認局署名１３６の値が完全に一致しているかどうかを比較する（Ｓ２１１ｄ）。両者が完全に一致している場合は、有効性証明データ検証部１６は、有効性証明データ１３０の正当性は確認できたものとして、通信部１１を介して、有効性証明データ１３０の正当性が確認された旨をクライアント装置３０に返信する（Ｓ２１１ｆ、Ｓ２１１ｇ）。
【００５０】
ところで、クライアント装置３０のユーザは、有効性証明データ１３０の正当性を他の第三者に示さなければならない場合があることが考えられる。かかる場合は、単に正当性が確認された旨を示す情報（例えば、真偽値）を返信するのではなく、正当性が確認された旨を証明する情報（以下「正当性証明データ」という。）を返信するようにすれば、クライアント装置３０のユーザにとって便宜である。以下、有効性証明データ検証部１６による正当性証明データの生成処理について説明する。
【００５１】
図８は、有効性証明データ検証部による正当性証明データの生成処理を説明するための図である。図８の処理は、有効性証明データ１３０の正当性が確認できた後（ステップＳ２１１ｄ（図７）の後）に行われる。
【００５２】
まず、有効性証明データ１３０についてハッシュ値（有効性証明データハッシュ値１６１）を計算する（Ｓ２２１）。有効性証明データハッシュ値１６１を、有効性確認局１０の電子署名用の現在の秘密鍵（カレント署名鍵１５ａ）で暗号化し、有効性証明データハッシュ値１６１に対する電子署名（確認局署名１６２）を生成する（Ｓ２２２）。確認局署名１６２に対する有効性確認局１０の現在の公開鍵証明書（確認局証明書１６３）を付与して、正当性証明データ１６０とする（Ｓ２２３、Ｓ２２４）。
【００５３】
なお、正当性証明データ１６０は、図７のステップＳ２１１ｇにおいてクライアント装置３０に送信される。正当性証明データ１６０を受け取ったクライアント装置３０のユーザは、他の第三者に電子文書３１０、電子署名３２１、公開鍵証明書３２２、有効性証明データ１３０、及び正当性証明データ１６０を渡すことで、電子署名３２１が有効であることを示すことができる。電子文書３１０、電子署名３２１、公開鍵証明書３２２、有効性証明データ１３０、及び正当性証明データ１６０を渡された第三者は、有効性証明データ１３０の有効性を確認するために有効性確認局１０にアクセスする必要はなく、有効性証明データ１３０と正当性証明データ１６０とが電子署名としての正しい関係になっているかどうかを確認すればよい。
【００５４】
ところで、有効性証明データ管理ＤＢ１４は最終的に有効性証明データ１３０が正当なものであるかどうかを確認する最終手段になっているため、改ざんや破壊といった脅威に対して対策を施しておかなければならない。その対策方法としては、有効性証明データ管理ＤＢ１４を搭載しているコンピュータ（認証局１０）への物理的なアクセスを限られたユーザに制限したり、そのコンピュータに対するアクセスをＯＳ（Operating System）のアクセス制御機構により制御したり、ＤＢＭＳ（DataBase Management System）のアクセス制御機能や改ざん検出機構により防御したり、といったことが考えられる。有効性証明データ管理ＤＢ１４の内容を有効性確認局１０自身でも不正に改ざんできないということを第三者に示す必要がある場合には、タイムスタンプサービスにおいて規定されているリンキングプロトコル方式のように、複数の有効性証明データ１３０のハッシュ値を連鎖させるようなことをしてもよい。有効性確認局１０は本来信頼されているＴＴＰ（Ｔｒｕｓｔｅｄ  Ｔｈｉｅｒ  Ｐａｒｔｙ：信頼できる第三者）としての位置づけであることを考えると、有効性確認局１０が定期的なシステム監査を受けるというようなことも現実的であろう。
【００５５】
上述したように、本実施の形態における有効性確認システム１によれば、電子文書３１０の公開鍵証明書３２２の有効期限が切れてしまった場合、又は公開鍵証明書３２２が失効してしまっている場合であっても、有効性証明データ１３０に基づいて、電子署名３１１の有効性を適切に確認することができる。したがって、長期保存が要求される電子文書に付された電子署名の有効性の確認手段として、本発明は有効である。
【００５６】
本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【００５７】
【図１】本発明の実施の形態における有効性確認システムの構成例を示す図である。
【図２】本発明の実施の形態における有効性確認局のハードウェア構成例を示す図である。
【図３】有効性確認局による有効性証明データの発行処理を説明するための図である。
【図４】有効性証明データ生成部による有効性証明データの生成処理を説明するための図である。
【図５】有効性証明データ管理ＤＢを構成する有効性証明データ管理テーブルの構成例を示す図である。
【図６】クライアント装置による電子署名の有効性の確認処理を説明するためのフローチャートである。
【図７】有効性証明データの正当性の確認処理を説明するための図である。
【図８】有効性証明データ検証部による正当性証明データの生成処理を説明するための図である。
【符号の説明】
【００５８】
１            有効性確認システム
１０          有効性確認局
１１          通信部
１２          公開鍵証明書確認部
１３          有効性証明データ生成部
１４          有効性証明データ管理ＤＢ
１５          署名鍵
１５ａ        カレント署名鍵
１６          有効性証明データ検証部
２０          認証局
３０          クライアント装置
４０          ネットワーク
１００    ドライブ装置
１０１    記録媒体
１０２    補助記憶装置
１０３    メモリ装置
１０４    演算処理装置
１０５    インタフェース装置
Ｂ    バス
【図１】
2006166354.tif 000003
【図２】
2006166354.tif 000004
【図３】
2006166354.tif 000005
【図４】
2006166354.tif 000006
【図５】
2006166354.tif 000007
【図６】
2006166354.tif 000008
【図７】
2006166354.tif 000009
【図８】
2006166354.tif 000010