(57)【要約】【課題】検証者が署名者と合意した検証待機時間と異なる検証待機時間を用いても、適切な検証結果を得ることができる署名検証装置を提供する。【解決手段】実待機時間算出手段１２ｂは、検証対象１１ａに含まれる証明書失効リストの発行時刻Ｉと署名時刻Ｓとの差分時間を算出し、算出した差分時間を実待機時間とする。判定手段１２ｃは、検証待機時間１１ｂが実待機時間より長いか否かを判定する。オンライン検証手段１２ｄは、検証待機時間１１ｂが実待機時間より長い場合に、検証対象１１ａに含まれる証明書失効リストの発行時刻Ｉより新しく発行された証明書失効リストを、認証局２から発行された証明書失効リストを順次保管しているＣＲＬアーカイブサーバ３から取得し、取得した証明書失効リストを利用して署名検証処理を行う。【選択図】図１
2015195538.tif 000002
【特許請求の範囲】
【請求項１】
発行時刻が記された証明書失効リストと署名時刻及び電子文書が対応付けられた検証対象と、検証者が定める検証待機時間と、を記憶する記憶部と、
前記検証対象における前記証明書失効リストの発行時刻と前記署名時刻との差分時間を算出し、算出した差分時間を実待機時間とする実待機時間算出手段と、
前記実待機時間と前記検証待機時間とを比較し、前記検証待機時間が前記実待機時間より長いか否かを判定する判定手段と、
前記判定手段が、前記検証待機時間が前記実待機時間より長いと判定すると、前記検証対象に含まれた証明書失効リストの発行時刻より新しく発行された証明書失効リストを取得して署名検証の処理を行う第１検証手段と、
前記判定手段が、前記検証待機時間が前記実待機時間より長いと判定しなければ、前記検証対象に含まれた証明書失効リストを取得して署名検証の処理を行う第２検証手段と、
前記署名検証の結果を出力する出力手段と、
を有することを特徴とする署名検証装置。
【請求項２】
前記第１検証手段は、前記署名時刻に前記検証待機時間を加えた時刻と、取得した証明書失効リストの発行時刻とを比較し、当該発行時刻が前記署名時刻に前記検証待機時間を加えた時刻より短いと判定すると、検証待機時間経過前の証明書失効リストを署名検証に使用した注意情報を前記出力手段に出力させる請求項１に記載の署名検証装置。
【請求項３】
前記第１検証手段は、認証局から発行された証明書失効リストを順次保管している保管装置から証明書失効リストを取得する請求項１又は請求項２に記載の署名検証装置。
【請求項４】
前記第１検証手段は、前記署名検証の際に最後に発行された証明書失効リストを前記保管装置から取得する請求項３に記載の署名検証装置。
【請求項５】
前記検証対象は有効期限を記した電子証明書を含み、
前記第１検証手段は、前記電子証明書が有効期限内であるか否かを確認し、前記電子証明書が有効期限内でなければ、前記有効期限内において最後に発行された証明書失効リストを前記保管装置から取得する請求項３又は請求項４に記載の署名検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子証明書の有効性の判断が可能な証明書失効リスト（Certificate Revocation List、以下「ＣＲＬ」という。）を利用して検証対象の署名検証処理を行う署名検証装置に関する。
【背景技術】
【０００２】
従来、署名検証方式の一つとして長期署名検証方式がある。従来の長期署名検証方式では、電子文書へ電子署名やタイムスタンプを施したときに生成される署名データと電子文書をまとめて構成される長期署名データが検証対象となり、電子文書に対応する署名データに含まれた電子証明書と組をなす秘密鍵を用いて電子文書を含む署名対象に電子署名を施した署名時刻から一定期間経過後に認証局から発行されたＣＲＬを取得し、取得したＣＲＬを検証対象（長期署名データ）に内包してアーカイブタイムスタンプを付与する。そして、電子文書及び電子文書に対応する署名データを含む検証対象の署名検証処理では、検証対象中のＣＲＬを利用して電子証明書の有効性を確認する（例えば、特許文献１）。
【０００３】
ＣＲＬは、有効期限内に失効している電子証明書のＩＤが記述されたリスト、すなわち、電子証明書の有効性の判断が可能なリストであり、検証者が署名検証処理で使用する検証情報に含まれる。署名検証処理の際にＣＲＬを利用することによって、署名データに含まれた電子証明書の有効性の判断が可能となり、暗号鍵が有効期限内に危殆化していないか否かを確認することができる。
【０００４】
アーカイブタイムスタンプの付与は、署名時刻から一定期間経過してから新たに発行されるＣＲＬを取得して行うのが望ましい。署名時刻からＣＲＬを取得するまでの期間が短すぎると、署名時刻付近に出された失効申請が反映されていないＣＲＬを検証対象に内包することがある。署名時刻付近に出された失効申請が反映されていないＣＲＬを検証対象に内包すると、署名データに含まれた電子証明書の有効性を適切に反映したＣＲＬを利用することができないので、署名検証時に電子証明書の有効性を正しく判断できなくなるという不都合がある。検証者が署名検証時に署名時刻からどれくらい経過して発行されたＣＲＬを用いるかを決めた設定時間である検証待機時間は、認証局の運用に照らして署名者と検証者の合意の下で決められ、認証局へ電子証明書の失効申請をしてからＣＲＬに失効情報が記載されるまでの期間を考慮して設定されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−７７９３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
アーカイブタイムスタンプの付与後、より信頼できる検証結果を得るためにアーカイブタイムスタンプの付与時に署名者と合意した検証待機時間より長めの検証待機時間を要求する検証者に電子文書が渡るときがある。この場合、検証者が要求する検証待機時間が、認証局が実際に署名時刻からＣＲＬの発行までに要した時間より長くなり、検証者にとって満足する検証結果を得ることができない場合が生じ得る。
【０００７】
本発明の目的は、検証者が署名者と合意した検証待機時間と異なる検証待機時間を用いても、適切な検証結果を得ることができる署名検証装置を提供することである。
【課題を解決するための手段】
【０００８】
本発明による署名検証装置は、発行時刻が記された証明書失効リストと署名時刻及び電子文書が対応付けられた検証対象と、検証者が定める検証待機時間と、を記憶する記憶部と、検証対象における証明書失効リストの発行時刻と署名時刻との差分時間を算出し、算出した差分時間を実待機時間とする実待機時間算出手段と、実待機時間と検証待機時間とを比較し、検証待機時間が実待機時間より長いか否かを判定する判定手段と、判定手段が、検証待機時間が実待機時間より長いと判定すると、検証対象に含まれた証明書失効リストの発行時刻より新しく発行された証明書失効リストを取得して署名検証の処理を行う第１検証手段と、判定手段が、検証待機時間が実待機時間より長いと判定しなければ、検証対象に含まれた証明書失効リストを取得して署名検証の処理を行う第２検証手段と、署名検証の結果を出力する出力手段と、を有することを特徴とする。これにより、検証者が定める検証待機時間を検証対象内のＣＲＬが満たしていなければ、より新しく発行されたＣＲＬを検証対象の外部から取得して検証に使用することが可能になる。
【０００９】
好適には、第１検証手段は、署名時刻に検証待機時間を加えた時刻と、取得した証明書失効リストの発行時刻とを比較し、当該発行時刻が署名時刻に検証待機時間を加えた時刻より短いと判定すると、検証待機時間経過前の証明書失効リストを署名検証に使用した注意情報を出力手段に出力させる。これにより、取得したＣＲＬも検証者が定める検証待機時間を満たしていない場合でも、検証者にその旨を示し、注意を促すことが可能になる。
【００１０】
好適には、第１検証手段は、認証局から発行された証明書失効リストを順次保管している保管装置から証明書失効リストを取得する。これにより、保管装置のＣＲＬを使用することが可能になる。
【００１１】
好適には、第１検証手段は、署名検証の際に最後に発行された証明書失効リストを保管装置から取得する。これにより、最新のＣＲＬを取得して検証に使用することが可能になる。
【００１２】
好適には、検証対象は有効期限を記した電子証明書を含み、第１検証手段は、電子証明書が有効期限内であるか否かを確認し、電子証明書が有効期限内でなければ、有効期限内において最後に発行された証明書失効リストを保管装置から取得する。これにより、有効期限の直前に発行されたＣＲＬを取得して検証に使用することが可能になる。
【発明の効果】
【００１３】
本発明によれば、検証者が署名者と合意した検証待機時間と異なる検証待機時間を用いても、適切な検証結果を得ることができる。
【図面の簡単な説明】
【００１４】
【図１】本発明による署名検証装置が用いられる署名検証システムの構成図である。
【図２】図２Ａは、長期署名フォーマットに準拠した検証対象の形式の一例を示す図であり、図２Ｂは、長期署名フォーマットの世代の形式の一例を示す図である。
【図３】図３Ａは、電子証明書の一例を示す図であり、図３Ｂは、証明書失効リストの一例を示す図であり、図３Ｃは、ＣＲＬアーカイブサーバにおける保管ＣＲＬ一覧の一例を示す図である。
【図４】署名検証装置の検証処理のフローチャートである。
【図５】署名検証装置によるＣＲＬの取得を説明するための図である。
【発明を実施するための形態】
【００１５】
本発明による署名検証装置の実施の形態を、図面を参照しながら説明する。
図１は、本発明による署名検証装置が用いられる署名検証システムの構成図である。図１に示す署名検証システムは、例えば、社内システムに適用され、署名検証装置１と、認証局２と、認証局２が発行するＣＲＬを順次保管する保管装置であるＣＲＬアーカイブサーバ３と、タイムスタンプ局４と、これらを接続する通信ネットワーク５と、を有する。
【００１６】
署名検証装置１は、検証対象の署名検証処理の際、検証者が定めた検証待機時間が、検証対象に含まれている署名時刻とＣＲＬの発行時刻との差分時間から求められる実待機時間より長い場合に、検証対象に含まれるＣＲＬよりも後に発行されたＣＲＬを、異なる発行時刻の複数のＣＲＬを保管した外部にあるＣＲＬアーカイブサーバ３から通信ネットワーク５を経由して取得し、取得したＣＲＬを利用して署名検証処理を行う装置である。署名検証装置１は、記憶部１１と、署名検証部１２と、検証者が操作して各種入力を行う操作部１３と、検証結果を表示する表示部１４と、通信ネットワーク５を通じて認証局２、ＣＲＬアーカイブサーバ３及びタイムスタンプ局４との通信を行う通信インタフェース（Ｉ／Ｆ）部１５を有する。
【００１７】
記憶部１１は、フラッシュメモリ、ＥＥＰＲＯＭ等の書換え自在の不揮発性メモリ、磁気ハードディスク、書換え自在の光ディスク及びそのドライブ等によって構成される。記憶部１１は、検証対象１１ａと、検証待機時間１１ｂと、を記憶する。検証対象１１ａは、長期署名フォーマットに準拠した長期署名データである。なお、検証対象は、長期署名フォーマットの場合に限らず、発行時刻が記された証明書失効リスト、署名時刻及び電子文書が対応付けられたものであればよい。また、検証対象１１ａは、複数記憶しておき、検証者によって操作部１３から一つを選択される。
【００１８】
検証待機時間１１ｂは、検証者が署名検証時に、署名時刻（署名タイムスタンプ時刻）からどれくらい経過して発行されたＣＲＬを用いるかを決めた設定時間である。検証待機時間１１ｂは、検証者が属する会社の検証ポリシーによって定められ、検証ポリシーの変更等によって変更される。また、記憶部１１は、署名検証装置１で使用する各種制御情報等も記憶する。
【００１９】
ここで、図２を参照し、検証対象１１ａについて詳細に説明する。図２Ａは、長期署名フォーマットに準拠した検証対象１１ａの一例であるアーカイブタイムスタンプ付電子署名文書（ＥＳ−Ａ）１００を示す図である。アーカイブタイムスタンプ付電子署名文書１００は、電子署名文書（ＥＳ）１０１に署名タイムスタンプ（ＳＴＳ）１０２を付与した署名タイムスタンプ付電子署名文書（ＥＳ−Ｔ）１０３及び検証情報１０４にアーカイブタイムスタンプ１０５を付与されている。
【００２０】
電子署名文書１０１は、電子文書１０１ａと、電子文書１０１ａのハッシュ値等の情報を含む署名属性１０１ｂと、署名者又は信頼できる第三者機関が公開鍵と組にして作成した秘密鍵で署名属性１０１ｂを暗号化することによって作成される署名値１０１ｃと、認証局２が発行した電子証明書１０１ｄと、を含む。そして、電子証明書１０１ｄは、後に説明するが、有効期限Ｖを含む。
【００２１】
署名タイムスタンプ１０２は、署名対象である電子文書１０１ａに電子署名を施す際のタイムスタンプ発行要求に応じてタイムスタンプ局４が生成したタイムスタンプ・トークンを受け取ることによって、電子署名文書１０１に付与される。タイムスタンプ・トークンは、タイムスタンプ発行要求に含まれる署名値１０１ｃのハッシュ値に対して、タイムスタンプ局４が処理するときの時刻情報を結合した後に改竄防止のための処置を施すことによって生成される。電子署名後すぐにタイムスタンプ発行要求をすることで、タイムスタンプ局４が処理するときの時刻情報が、ほぼ署名時刻と同じとなる。したがって、署名タイムスタンプ１０２は、署名時刻Ｓを含む。
【００２２】
検証情報１０４は、署名タイムスタンプ付電子署名文書１０３を検証した際の検証情報であって、電子証明書１０１ｄの有効性確認の根拠情報を含む。具体的には、検証情報は、検証時のＣＲＬ５００と、ＣＲＬ５００を発行した認証局２の電子証明書と、を含む。そして、ＣＲＬ５００は、後に説明するが、発行時刻Ｉを含む。
【００２３】
アーカイブタイムスタンプ１０５は、検証情報１０４を長期署名フォーマットに従って格納する際のタイムスタンプ発行要求に応じてタイムスタンプ局４が生成したタイムスタンプ・トークンを受け取ることによって、署名タイムスタンプ付電子署名文書１０３及び検証情報１０４にまとめて付与される。
【００２４】
図２Ｂは、検証対象１１ａとして、長期署名フォーマットの第３世代となった形式の一例を示す図である。図２Ａで説明した第１世代のアーカイブタイムスタンプ１０５がある第１の長期署名データ（第１世代ＥＳ−Ａ1）１００と、第２世代のアーカイブタイムスタンプ２０１がある第２の長期署名データ（第２世代ＥＳ−Ａ2）２００と、第３世代のアーカイブタイムスタンプ３０１がある第３の長期署名データ（第３世代ＥＳ−Ａ3）３００にて構成されている。
【００２５】
次に、図３を参照し、検証対象１１ａに含まれる電子証明書１０１ｄ及び証明書失効リスト（ＣＲＬ）５００について説明する。図３Ａは、Ｘ．５０９証明書である電子証明書１０１ｄの領域を示す図である。電子証明書１０１ｄは、証明書情報、署名アルゴリズム及び署名値を有する。
【００２６】
証明書情報は、電子証明書１０１ｄの基本的な情報及び公開鍵を示し、バージョン、シリアル番号、署名アルゴリズム識別子、発行者、有効期限Ｖ、所有者公開鍵情報、発行者ユニーク識別子及び所有者ユニーク識別子を有する。署名アルゴリズムは、発行者が電子証明書に署名する際のアルゴリズムである。署名値は、発行者のデジタル署名が格納される。
【００２７】
図３Ｂは、証明書失効リストを示す図である。図３Ｂにおいて、ＣＲＬ５００は、発行者、発行者のデジタル署名、発行時刻Ｉ、次回発行予定時刻、及び失効した電子証明書として失効した公開鍵証明書（１）及び失効した公開鍵証明書（２）を示している。失効した電子証明書は、シリアル番号、無効日時及び無効理由を有する。例えば、図３Ａに示す電子証明書１０１ｄが失効した場合、失効した電子証明書を示すシリアル番号が、電子証明書１０１ｄのシリアル番号となる。
【００２８】
図１に戻って、署名検証部１２は、ＣＰＵ，ＲＯＭ，ＲＡＭ等から構成され、署名検証装置１の制御全般についてプログラムに従って、検証対象１１ａの署名検証処理等を含む各種処理を行う。更に詳しくは、署名検証部１２は、署名値及び電子証明書１０１ｄを用いて電子文書１０１ａの改竄検知を行い、その後、電子証明書１０１ｄの有効性を確認するために、現時刻が電子証明書１０１ｄの有効期限Ｖ内であるか否かを判定し、現時刻が電子証明書１０１ｄの有効期限Ｖ内である場合には、当該電子証明書１０１ｄのシリアル番号がＣＲＬに記載されているか否か判定する。署名検証部１２は、検証対象取得手段１２ａと、実待機時間算出手段１２ｂと、判定手段１２ｃと、第１検証手段としてのオンライン検証手段１２ｄと、第２検証手段としてのオフライン検証手段１２ｅと、出力手段１２ｆと、を有する。
【００２９】
検証対象取得手段１２ａは、検証者が操作部１３によって記憶部１１に記憶されている検証対象１１ａを指定し、その検証対象１１ａを記憶部１１から取得する。実待機時間算出手段１２ｂは、検証対象１１ａから検証情報１０４に含まれるＣＲＬ５００の発行時刻Ｉと署名タイムスタンプ１０２に含まれる署名時刻Ｓとの差分時間を算出し、算出した差分時間を実待機時間とする。判定手段１２ｃは、検証待機時間１１ｂが算出した実待機時間より長いか否かを判定する。
【００３０】
オンライン検証手段１２ｄは、ＣＲＬアーカイブサーバ３から取得したＣＲＬを利用して検証対象１１ａの署名検証処理を行う。判定手段１２ｃが検証待機時間１１ｂが実待機時間より長いと判定した場合、すなわち、検証情報１０４に検証ポリシーを満たすＣＲＬが存在しない場合、オンライン検証手段１２ｄが呼び出され、オンライン検証手段１２ｄは、ＣＲＬアーカイブサーバ３に対して検証情報１０４に含まれるＣＲＬ５００よりも新しいＣＲＬであって、電子証明書１０１ｄの有効期限Ｖ内で最後に発行されＣＲＬを要求する。また、オンライン検証手段１２ｄは、電子文書１０１ａの改竄検知及びＣＲＬアーカイブサーバ３から取得したＣＲＬを用いて電子証明書１０１ｄの有効性の確認を行う。また、オンライン検証手段１２ｄは、ＣＲＬアーカイブサーバ３から取得したＣＲＬが検証待機時間１１ｂの後に発行されているか否かを確認し、当該ＣＲＬが検証待機時間１１ｂの前に発行されているときには、検証ポリシーを満たしていない旨を検証結果に含めて表示部１４に出力させる（検証待機時間経過前のＣＲＬを署名検証に使用した注意情報を出力手段１２ｆに出力させる）。
【００３１】
オフライン検証手段１２ｅは、検証情報１０４に含まれるＣＲＬ５００を利用して検証対象１１ａの署名検証処理を行う。判定手段１２ｃが、検証待機時間１１ｂが実待機時間より長いと判定しなかった場合、すなわち、検証情報１０４に含まれるＣＲＬ５００が検証ポリシーを満たすＣＲＬである場合、オフライン検証手段１２ｅが呼び出され、オフライン検証手段１２ｅは、電子文書１０１ａの改竄検知及び検証対象１１ａのＣＲＬ５００を用いて電子証明書１０１ｄの有効性の確認を行う。出力手段１２ｆは、オンライン検証手段１２ｄによる署名検証処理又はオフライン検証手段１２ｅによる署名検証処理の検証結果を、表示部１４に出力する。
【００３２】
操作部１３は、マウス、キーボード等によって構成される。表示部１４は、ＬＣＤ等によって構成される。通信Ｉ／Ｆ部１５は、通信ネットワーク５に接続され、所定の通信プロトコルで通信を行う通信インタフェース及びドライバから構成される。
【００３３】
認証局２は、署名用秘密鍵と組になっている公開鍵及びユーザ情報を対応付けた公開鍵証明書である電子証明書１０１ｄを発行する。また、認証局２は、自局で発行した各電子証明書１０１ｄが有効期限Ｖ内に失効させられたかの情報を管理する。この情報は定期的に更新され、認証局２は、リスト形式のデータとしてひとまとめにしたものをＣＲＬとして要求に応じて外部へ供給する。認証局２は、通信ネットワーク５に接続して通信を行う通信Ｉ／Ｆ部２１と、認証局２の各種制御を行う制御部２２と、制御部２２で使用する各種制御情報等を記憶する記憶部２３を有する。
【００３４】
ＣＲＬアーカイブサーバ３は、認証局２が発行するＣＲＬを順次保管し、署名検証装置１からのＣＲＬの要求に応じて該当するＣＲＬを回答する。また、ＣＲＬアーカイブサーバ３は、ＣＲＬを、認証局２に定期的（例えば、１日ごと）に要求し、認証局２から取得して保管している。ＣＲＬアーカイブサーバ３は、通信ネットワーク５に接続して通信を行う通信Ｉ／Ｆ部３１と、ＣＲＬアーカイブサーバ３の各種制御を行う制御部３２と、認証局２から取得したＣＲＬ、制御部３２で使用する各種制御情報等を記憶する記憶部３３と、を有する。
【００３５】
本実施の形態では、記憶部３３は、最新のＣＲＬだけでなく過去に発行したＣＲＬを署名検証装置１からの要求に応じて提供するために、認証局２が過去に発行したＣＲＬを発行時刻と関連付けて保管するＣＲＬ保管部として機能する。
【００３６】
ＣＲＬアーカイブサーバにおけるＣＲＬ保管部の一例を図３Ｃに示す。図３Ｃにおいて、ＣＲＬ保管部の一例である保管ＣＲＬ一覧６００は、ＣＲＬの発行順番（例えば、２００１）を示す領域、ＣＲＬ発行時刻を示す領域及びＣＲＬのファイル名（例えば、ＣＲＬ−１４０２０１）を示す領域を有する。例えば、図３ＣのＣＲＬ−１４０２０１というファイルは、図３ＢのＣＲＬ５００に相当する。
【００３７】
タイムスタンプ局４は、署名タイムスタンプ、アーカイブタイムスタンプ等を付与したい装置から送信されるタイムスタンプ生成要求に応じて、タイムスタンプ局４の秘密鍵を使用して電子署名を付与したタイムスタンプ・トークンを生成し、返信する。タイムスタンプ局４は、通信ネットワーク５を通じてタイムスタンプの付与を要求する装置との通信を行う通信Ｉ／Ｆ部４１と、タイムスタンプ局４の各種制御を行う制御部４２と、制御部４２で使用する各種制御情報等を記憶する記憶部４３を有する。
【００３８】
図４を参照し、署名検証装置１の検証処理フローを説明する。図４に示す検証処理フローは、検証者が操作部１３を操作して電子署名文書を指定した検証要求を行うと開始する。
【００３９】
先ず、検証対象取得手段１２ａは、操作部１３により指定された検証対象１１ａを特定し、特定した検証対象１１ａを記憶部１１から取得する（ステップＳ１）。次に、検証対象取得手段１２ａは、検証対象１１ａの全てのタイムスタンプの有効性を確認する（ステップＳ２）。検証対象１１ａが図２Ｂで説明した長期署名データ３００とすると、第３世代のアーカイブタイムスタンプ３０１から順に第２世代のアーカイブタイムスタンプ２０１、第１世代のアーカイブタイムスタンプ１０５までの有効性を確認する。そして、署名時刻Ｓを含む署名タイムスタンプ１０２の有効性を確認する。次に、全てのタイムスタンプが有効か否かを判定する（ステップＳ３）。タイムスタンプの一つでも有効でなかった場合、検証失敗という検証結果を出力手段１２ｆから表示部１４へ出力し（ステップＳ４）、処理フローを終了する。
【００４０】
それに対し、全てのタイムスタンプが有効であった場合、実待機時間算出手段１２ｂは、長期署名データ１００における署名タイムスタンプ１０２中の署名時刻Ｓと検証情報１０４中のＣＲＬの発行時刻Ｉとの差から実待機時間を計算する（ステップＳ５）。
【００４１】
次に、判定手段１２ｃは、検証待機時間１１ｂを記憶部１１から取得し、取得した検証待機時間１１ｂと、ステップＳ５で計算した実待機時間とを比較する（ステップＳ６）。ここで、検証待機時間が実待機時間より長い場合は、検証者の検証ポリシーを検証対象１１ａに内包されているＣＲＬ５００が満たしていないことを意味する。他方、検証待機時間が実待機時間より長くない場合は、検証者の検証ポリシーを検証対象１１ａに内包されているＣＲＬ５００が満たしていることを意味する。判定手段１２ｃは、検証待機時間１１ｂが実待機時間より長くないと判定した場合、オフライン検証手段１２ｅに処理命令を出し、オフライン検証手段１２ｅは、判定手段１２ｃから出された処理命令に応じて、長期署名データ１００に含まれる検証情報１０４中のＣＲＬ５００を読み出す（ステップＳ７）。
【００４２】
次に、オフライン検証手段１２ｅは、検証対象１１ａの署名検証処理として、電子文書１０１ａの改竄検知及び検証情報１０４中のＣＲＬ５００を利用して電子証明書１０１ｄの有効性の確認を行い（ステップＳ８）、検証結果（署名検証成功又は署名検証失敗）を出力手段１２ｆから表示部１４へ出力するためにステップＳ４に進む。
【００４３】
一方、判定手段１２ｃは、検証待機時間１１ｂが実待機時間より長いと判定した場合、オンライン検証手段１２ｄに処理命令を出すとともに検証待機時間１１ｂをオンライン検証手段１２ｄに伝達する。そして、オンライン検証手段１２ｄは、判定手段１２ｃから出された処理命令に応じて、現時刻が長期署名データ１００に含まれる電子証明書１０１ｄに記された有効期限Ｖ内であるか否かを確認する（ステップＳ９）。
【００４４】
現時刻が電子証明書１０１ｄの有効期限Ｖ内である場合、オンライン検証手段１２ｄは、署名検証処理の前において最後に発行されたＣＲＬすなわち最新のＣＲＬを、通信ネットワーク５を介してＣＲＬアーカイブサーバ３に要求する（ステップＳ１０）。
【００４５】
それに対し、現時刻が電子証明書１０１ｄの有効期限Ｖ内でない場合、オンライン検証手段１２ｄは、有効期限Ｖ内において最後に発行されたＣＲＬすなわち有効期限Ｖの直前のＣＲＬを、通信ネットワーク５を介してＣＲＬアーカイブサーバ３に要求する（ステップＳ１１）。
【００４６】
ステップＳ１０又はステップＳ１１の後、オンライン検証手段１２ｄは、要求したＣＲＬの取得が成功したか否か判定する（ステップＳ１２）。ＣＲＬの取得が成功しない場合、オンライン検証手段１２ｄは、検証待機時間経過前の証明書失効リストを署名検証に使用したことを検証結果と一緒にステップＳ４で出力させるための出力フラグをセットし（ステップＳ１３）、ステップＳ７に進む。
【００４７】
それに対して、ＣＲＬの取得が成功した場合、更に、取得したＣＲＬの発行時刻と署名時刻Ｓに検証待機時間１１ｂを加えた時刻とを比較する（ステップＳ１４）。取得したＣＲＬの発行時刻の方が遅い、すなわち、検証待機時間を経過した後に発行されたＣＲＬを取得していた場合、ステップＳ８に進む。取得したＣＲＬの発行時刻の方が早い、すなわち、検証待機時間を経過する前に発行されたＣＲＬを取得していた場合、オンライン検証手段１２ｄは、検証待機時間経過前の証明書失効リストを署名検証に使用したことを検証結果と一緒にステップＳ４で出力させるための出力フラグをセットし（ステップＳ１５）、ステップＳ８に進む。ステップＳ８では、オンライン検証手段１２ｄが、オフライン検証手段１２ｅと同様に、検証対象１１ａの署名検証処理として、電子文書１０１ａの改竄検知及び取得したＣＲＬを利用して電子証明書１０１ｄの有効性の確認を行い、検証結果（署名検証成功又は署名検証失敗）を出力手段１２ｆから表示部１４へ出力するためにステップＳ４に進む。
【００４８】
次に、署名検証装置１が検証を行うタイミングでどのような動作をするか説明する。図５は、署名検証装置１によるＣＲＬの取得を説明するための図である。図５において、ｔ1は、電子文書１０１ａに電子署名を施した署名時刻を表し、ｔ2は、署名タイムスタンプ付与した署名タイムスタンプ時刻を表し（この場合、ｔ1≒ｔ2）、ｔ3は、実待機時間満了時を表し、ｔ4は、アーカイブタイムスタンプ付与時刻を表し、ｔ5は、検証待機時間満了時刻を表し、ｔ6は、電子証明書１０１ｄの有効期限を表す。ここで、ｔ2は署名時刻Ｓに、ｔ3はＣＲＬの発行時刻Ｉに、ｔ6は有効期限Ｖに、それぞれ対応している。また、Ｔ1、Ｔ2、Ｔ3は、検証を行うタイミング、すなわち、署名検証時での現時刻を示す。
【００４９】
図５において、ＣＲＬが認証局２から所定の期間（例えば、１日）ごとに発行されている例を示している。なお、ＣＲＬの発行タイミングは、認証局２の運用規則に従って決定される。また、図５では、検証者の検証ポリシーにある検証待機時間と検証対象１１ａから算出された実待機時間の関係が検証待機時間が実待機時間より長い場合の状態を示している。この場合は、図４のステップＳ１からステップＳ２、ステップＳ３のＹｅｓ、ステップＳ５と進み、ステップＳ６のＹｅｓとなるときである。
【００５０】
時刻Ｔ1にて検証を行う際の図４の処理を説明する。時刻Ｔ1（ｔ4＜Ｔ1＜ｔ5）は有効期限Ｖ内であるため、ステップＳ９のＹｅｓへ進む。ステップＳ１０では、オンライン検証手段１２ｄは、ＣＲＬアーカイブサーバ３に最新のＣＲＬ５００ａを取得要求する。ステップＳ１２では、取得したＣＲＬ５００ａは、検証情報１０４中のＣＲＬ５００より後で検証待機時間を満たすｔ5前に発行されたＣＲＬの中で最新になる。このため、ステップＳ１２のＹｅｓ、ステップＳ１４のＮｏへ進み、オンライン検証手段１２ｄは、ステップＳ１５にて注意を促すための出力フラグをセットする。
【００５１】
その後、ステップＳ８に進み、取得した最新のＣＲＬを利用して署名検証処理を行い、出力フラグがセットされているので検証待機時間を満たしていない旨が検証結果に表示される。これにより、検証者の検証ポリシーを満たしていない場合であっても、検証対象１１ａに内包されているＣＲＬ５００よりも新しいＣＲＬ５００ａを用いた検証結果を得るとともに、注意を喚起することができる。
【００５２】
次に、時刻Ｔ2にて検証を行う際の図４の処理を説明する。時刻Ｔ2の処理は、ステップＳ１からステップＳ９のＹｅｓまではＴ1と同一処理となる。ステップＳ１０では、オンライン検証手段１２ｄは、ＣＲＬアーカイブサーバ３に最新のＣＲＬ５００ｂを取得要求する。ステップＳ１２では、ＣＲＬ５００ｂをＣＲＬアーカイブサーバ３から取得し、ステップＳ１４へ進む。ＣＲＬ５００ｂは、検証待機時間を経過したＣＲＬであるため、ステップＳ１４のＹｅｓとなってステップＳ８へ進み、署名検証処理を行う。これにより、検証対象１１ａに内包されているＣＲＬ５００では検証ポリシーを満たさない場合であっても、検証ポリシーを満たした検証結果を得ることができる。
【００５３】
時刻Ｔ3にて検証を行う際の図４の処理を説明する。時刻Ｔ3の処理は、ステップＳ１からステップＳ６のＹｅｓまではＴ1と同一処理となる。時刻Ｔ3（ｔ6＜Ｔ3）は有効期限Ｖ内でないため、ステップＳ９のＮｏへ進む。ステップＳ１１では、オンライン検証手段１２ｄは、有効期限Ｖ内において最後に発行されたＣＲＬ５００ｃをＣＲＬアーカイブサーバ３に取得要求する。ステップＳ１２では、ＣＲＬ５００ｃをＣＲＬアーカイブサーバ３から取得し、ステップＳ１４へ進む。ＣＲＬ５００ｃは、検証待機時間を経過したＣＲＬであるため、ステップＳ１４のＹｅｓとなってステップＳ８へ進み、署名検証処理を行う。これにより、電子証明書１０１ｄの有効期限Ｖを経過した後に検証対象１１ａの検証を行った場合でも、電子証明書１０１ｄにて担保されている最新のＣＲＬを用いた検証ができる。
【００５４】
本実施の形態によれば、検証待機時間が実待機時間より長いと判定された場合に、検証待機時間の後に発行されたＣＲＬを、認証局が発行する異なる発行時刻の複数のＣＲＬを順次保管したＣＲＬアーカイブサーバから通信ネットワーク５経由で取得し、取得したＣＲＬを利用して署名検証処理を行う。これによって、検証対象１１ａの署名検証処理時に、長期署名データ１００に含まれた電子証明書１０１ｄの有効性を適切に反映したと検証者が確信できるＣＲＬを利用することができる。
【００５５】
したがって、検証者が署名者と合意した検証待機時間と異なる検証待機時間を用い、検証者が要求する検証待機時間を満足するＣＲＬが長期署名データ１００中に存在しない場合でも、検証者にとって適切な検証結果を得ることを可能とする。
【００５６】
本発明は、上記実施の形態に限定されるものではなく、幾多の変更及び変形が可能である。
【００５７】
上記実施の形態において、検証対象に長期署名フォーマットに準拠した長期署名データを用いる場合について説明したが、長期署名フォーマットに準拠した長期署名データ以外の電子文書と署名データが対応付けられたデータを用いる場合にも、本発明を適用することができる。
【００５８】
また、上記実施の形態において、認証局から発行されたＣＲＬを順次保管した外部の保管装置としてＣＲＬアーカイブサーバ３を用いる場合について説明したが、当該保管装置を認証局２内に設ける、すなわち、認証局２がＣＲＬアーカイブサーバ３の機能を有することもできる。
【００５９】
また、上記実施の形態において、オンライン検証手段１２ｄが最新のＣＲＬ又は有効期限直前のＣＲＬ、すなわち、一つのＣＲＬを取得する場合について説明したが、オンライン検証手段１２ｄが異なるタイミングで発行された複数のＣＲＬを取得する場合にも、本発明を適用することができる。複数のＣＲＬを取得する場合、オンライン検証手段１２ｄは、それぞれのＣＲＬを用いて署名検証処理を行い、それぞれの署名検証処理に対して異なる検証結果が得られたときに、使用したＣＲＬと共に検証結果を比較可能に出力してもよい。複数のＣＲＬを取得する際に、オンライン検証手段１２ｄは、検証待機時間満了時（図５のｔ5）から最初に発行されたＣＲＬ（図５のＣＲＬ５００ｄ）から電子証明書１０１ｄの有効期限（図５のｔ6）の直前に発行されたＣＲＬ（図５のＣＲＬ５００ｃ）のうちの一部（例えば、ＣＲＬ５００ｂ，５００ｃ，５００ｄ）又は全てを取得する。これにより、署名検証装置１は、検証目的に応じて様々な署名検証に対応することができる。
【００６０】
署名検証の一例として、検証待機時間満了時（図５のｔ5）から最初に発行されたＣＲＬ（図５のＣＲＬ５００ｄ）を利用した署名検証を挙げることができる。例えば、検証待機時間が「３日」である場合、署名時刻（図５のｔ2）から３日以上経過してから発行されたＣＲＬによる検証は、検証待機時間１１ｂを考慮した署名検証の一般的なパターンである。
【００６１】
署名検証の他の例として、検証待機時間経過後かつ電子証明書１０１ｄの有効期限（図５のｔ6）内で最後に発行されたＣＲＬ（図５のＣＲＬ５００ｃ）による上記実施の形態で説明した署名検証を挙げることができる。この例では、電子証明書１０１ｄが当該ＣＲＬに記載されていない場合、電子証明書１０１ｄが有効期限内に失効していなかったことの確証を得ることができる。
【００６２】
署名検証の他の例として、署名時刻（図５のｔ2）以降かつ電子証明書１０１ｄの有効期限（図５のｔ6）内に発行された全てのＣＲＬによる署名検証を挙げることができる。この例は、ある時点の一つのＣＲＬでの判断を避けたいケース（例えば、裁判）に対応することができる。
【００６３】
署名検証の他の例として、電子証明書１０１ｄの有効期限（図５のｔ6）内において最後に発行されたＣＲＬ（図５のＣＲＬ５００ｃ）及び電子証明書１０１ｄの有効期限を経過してから最初に発行されたＣＲＬ（図５のＣＲＬ５００ｅ）を利用した署名検証を挙げることができる。この例は、有効期限切れ間際での失効申請があった場合に、より確実に有効性を確認する場合を考慮したものである。通常、有効期限を過ぎた電子証明書のＩＤはＣＲＬから削除される。しかしながら、認証局２によっては、電子証明書１０１ｄの有効期限を経過してから最初に発行されたＣＲＬに有効期限切れ間際での失効申請が反映されている可能性があるため、オンライン検証手段１２ｄは、これら二つのＣＲＬのどちらかに電子証明書のＩＤの記載があれば、電子証明書１０１ｄが有効期限内に失効したことがわかり、より確実に有効性を確認できる。
【００６４】
署名検証の仕方の他の例として、長期署名データ１００に含まれる検証情報１０４中のＣＲＬ５００を利用した署名検証を挙げることができる。この例では、従来の規格に準拠した長期署名検証の結果が得られる。
【００６５】
上記実施の形態では、オフライン検証手段１２ｅによる署名検証処理とオンライン検証手段１２ｄによる署名検証処理のいずれか一方を選択する場合について説明したが、オフライン検証手段１２ｅによる署名検証処理すなわち長期署名データ１００に含まれる検証情報１０４中のＣＲＬ５００を利用した署名検証処理を必ず行うようにしてもよい。この場合、出力手段１２ｆは、オフライン検証手段１２ｅによる署名検証処理の検証結果とオンライン検証手段１２ｄによる検証結果との違いを比較可能にして比較結果を検証結果として表示部１４に出力してもよい。
【００６６】
長期署名データ１００に含まれる検証情報１０４中のＣＲＬ５００及びＣＲＬアーカイブサーバ３から取得した複数のＣＲＬを利用した署名検証処理を行う場合、オンライン検証手段１２ｄ及びオフライン検証手段１２ｅによって複数の検証結果が生成される。この場合、署名検証部１２は、生成された複数の検証結果を中間結果として扱い、出力手段１２ｆは、全ての中間結果をそれぞれ使用したＣＲＬの発行時刻と共に示して比較可能にして比較結果を検証結果として表示部１４に出力してもよい。
【００６７】
上記実施の形態では、検証待機時間１１ｂを検証対象１１ａの種類に関係なく一定（例えば、「３日」）とする場合について説明したが、検証待機時間１１ｂを、検証対象１１ａの種類、内容等に応じて別々に設定してもよい。検証待機時間１１ｂを別々に設定する例として、電子文書１０１ａが契約書である場合に契約書に記載された金額が３万円以上であるか否かによって検証待機時間１１ｂを別々に設定する例等を挙げることができる。
【００６８】
電子署名文書１０１だけでなく署名タイムスタンプ１０２及びアーカイブタイムスタンプ１０５，２０１，３０１についても、ＣＲＬアーカイブサーバ３から取得したＣＲＬの使用を選択可能にしてもよい。タイムスタンプ局４の電子証明書の管理は、署名者の電子証明書１０１ｄの管理より厳格に行われているので、タイムスタンプ局４の電子証明書が有効期限前に失効されてＣＲＬに記載されるケースは稀である。しかしながら、タイムスタンプ局４の電子証明書が有効期限前に失効されてＣＲＬに記載されるケースがないわけではない。例えば、署名タイムスタンプ１０２及びアーカイブタイムスタンプ１０５，２０１，３０１の検証待機時間を別途設定し、設定した検証待機時間に従って署名検証処理と同様の処理を行えばよい。例えば、署名タイムスタンプ１０２の有効期限及びアーカイブタイムスタンプ１０５，２０１，３０１が付与される間隔はいずれも年単位であるので、署名タイムスタンプ１０２及びアーカイブタイムスタンプ１０５，２０１，３０１の検証待機時間をそれぞれ「１年」に設定すればよい。
【符号の説明】
【００６９】
１    署名検証装置
２    認証局
３    ＣＲＬアーカイブサーバ
４    タイムスタンプ局
５    通信ネットワーク
１１，２３，３３，４３    記憶部
１１ａ    検証対象
１１ｂ    検証待機時間
１２    署名検証部
１２ａ    検証対象取得手段
１２ｂ    実待機時間算出手段
１２ｃ    判定手段
１２ｄ    オンライン検証手段（第１検証手段）
１２ｅ    オフライン検証手段（第２検証手段）
１２ｆ    出力手段
１３    操作部
１４    表示部
１５，２１，３１，４１    通信Ｉ／Ｆ部
２２，３２，４２    制御部
１００，２００，３００    アーカイブタイムスタンプ付電子署名文書
１０１    電子署名文書
１０１ａ    電子文書
１０１ｂ    署名属性
１０１ｃ    署名値
１０１ｄ    電子証明書
１０２    署名タイムスタンプ
１０３    署名タイムスタンプ付電子署名文書
１０４    検証情報
１０５，２０１，３０１    アーカイブタイムスタンプ
５００，５００ａ，５００ｂ，５００ｃ，５００ｄ，５００ｅ    ＣＲＬ
６００    保管ＣＲＬ一覧
【図１】
2015195538.tif 000003
【図２】
2015195538.tif 000004
【図３】
2015195538.tif 000005
【図４】
2015195538.tif 000006
【図５】
2015195538.tif 000007