(57)【特許請求の範囲】
【請求項１】
失効した複数の公開鍵証明書の各公開鍵証明書に少なくともシリアル番号と発行者とが対応付けられた証明書失効リスト（ＣＲＬ：Ｃｅｒｔｉｆｉｃａｔｅ  Ｒｅｖｏｃａｔｉｏｎ  Ｌｉｓｔ）から、前記公開鍵証明書ごとに前記シリアル番号と前記発行者とを抽出する抽出部と、
前記抽出部によって抽出された前記シリアル番号と前記発行者とにハッシュ関数を適用させてハッシュ値を生成すると共に、失効したそれぞれの前記公開鍵証明書のシリアル番号と、失効した前記公開鍵証明書の中で最小のシリアル番号との差分を計算し、計算された前記差分と生成された前記ハッシュ値との対応関係をハッシュ対応情報として生成するハッシュ対応情報生成部と
を備えたことを特徴とする情報生成装置。
【請求項２】
前記情報生成装置は、さらに、
検証の対象となると共に、所定のシリアル番号と所定の発行者とを含む検証対象情報を受信する情報受信部と、
前記情報受信部によって受信された前記検証対象情報から前記シリアル番号と、前記発行者と抽出し、前記検証対象情報から抽出された前記シリアル番号と前記発行者とに前記ハッシュ関数を適用させて前記検証対象情報に対応するハッシュ値を生成すると共に、前記検証対象情報の前記シリアル番号と、失効した前記公開鍵証明書の中で前記最小のシリアル番号との差分を計算し、計算された前記差分と前記検証対象情報に対応するハッシュ値との組が前記ハッシュ対応情報生成部によって生成された前記ハッシュ対応情報に存在するかどうかを判定する判定部と
を備えたことを特徴とする請求項１記載の情報生成装置。
【請求項３】
前記情報生成装置は、前記ハッシュ関数として、
最小完全ハッシュ関数を使用することを特徴とする請求項１または２のいずれかに記載の情報生成装置。
【請求項４】
失効した複数の公開鍵証明書の各公開鍵証明書に少なくともシリアル番号と発行者とが対応付けられた証明書失効リスト（ＣＲＬ：Ｃｅｒｔｉｆｉｃａｔｅ  Ｒｅｖｏｃａｔｉｏｎ  Ｌｉｓｔ）から、前記公開鍵証明書ごとに前記シリアル番号と前記発行者とをＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いて抽出する処理と、
抽出された前記シリアル番号と前記発行者とにハッシュ関数を適用させてハッシュ値をＣＰＵを用いて生成する処理と、
失効したそれぞれの前記公開鍵証明書のシリアル番号と、失効した前記公開鍵証明書の中で最小のシリアル番号との差分をＣＰＵを用いて計算し、計算された前記差分と生成された前記ハッシュ値との対応関係をＣＰＵを用いてハッシュ対応情報として生成する処理と
をコンピュータに実行させるための情報生成プログラム。
【請求項５】
請求項４記載の情報生成プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項６】
抽出部と、ハッシュ対応情報生成部とを備える情報生成装置における情報生成方法であって、
前記抽出部が、
失効した複数の公開鍵証明書の各公開鍵証明書に少なくともシリアル番号と発行者とが対応付けられた証明書失効リスト（ＣＲＬ：Ｃｅｒｔｉｆｉｃａｔｅ  Ｒｅｖｏｃａｔｉｏｎ  Ｌｉｓｔ）から、前記公開鍵証明書ごとに前記シリアル番号と前記発行者とをＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いて抽出し、
前記ハッシュ対応情報生成部が、
抽出された前記シリアル番号と前記発行者とにハッシュ関数を適用させてハッシュ値をＣＰＵを用いて生成すると共に、失効したそれぞれの前記公開鍵証明書のシリアル番号と、失効した前記公開鍵証明書の中で最小のシリアル番号との差分をＣＰＵを用いて計算し、計算された前記差分と生成された前記ハッシュ値との対応関係をＣＰＵを用いてハッシュ対応情報として生成することを特徴とする情報生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、Ｃｅｒｔｉｆｉｃａｔｅ  Ｒｅｖｏｃａｔｉｏｎ  Ｌｉｓｔ（以下、ＣＲＬ：証明書失効リスト）の格納方法を工夫することで、署名データおよび証明書を省メモリで検証可能なサーバ装置に関する。
【背景技術】
【０００２】
日本では、２００３年以降、「住民基本台帳カード」やパスポート、運転免許証などにＩＣカードの採用が進んだことと並行し、それらと強く結びつく大規模なセキュリティインフラであるＰｕｂｌｉｃ  Ｋｅｙ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ（以下、ＰＫＩ）の環境が整備され始めている。大規模ＰＫＩにおいて検証サーバと呼ばれるユーザの代わりに署名データもしくは公開鍵証明書の検証を行うサーバが高速検証を行う場合、ハッシュ関数を用いてＣｅｒｔｉｆｉｃａｔｅ  Ａｕｔｈｏｒｉｔｙ（以下、ＣＡ：認証局）の発行するＣＲＬから失効の判定を行う。
【０００３】
ハッシュ関数を細かく分類すると、
（１）通常のハッシュ関数、
（２）完全ハッシュ関数、
（３）最小完全ハッシュ関数に分けることができる。
「（１）通常のハッシュ関数」は、構造がシンプルであるため実装が容易かつハッシュテーブルの構築が高速であるが、ハッシュ値の衝突する可能性があり、出来る限り大きな関数領域を確保しなければならないため、メモリ空間を大幅に使わなければならない欠点がある。
「（２）完全ハッシュ関数」は、通常のハッシュ関数よりもメモリ空間を使わない代わりに、ハッシュテーブル構築が遅くなる欠点がある。
「（３）最小完全ハッシュ関数」は、無駄なメモリ空間を全く使わない代わりに完全ハッシュ関数よりもハッシュテーブル構築が遅くなる。
近年、技術進歩によってメモリ容量が増大し、情報を管理するデバイスがハードディスクよりも５０倍〜５０００倍高速に検索可能なメモリへ変更され始めている。今後、メモリからＣＰＵキャッシュへ、より高速な媒体を用いて情報を管理する可能性が高く、従来よりも高速に検索するために格納する情報量を出来る限り小さくする必要がある。我々の検証への高速化アプローチとして、ハッシュ関数が誕生してから５０年以上経過し、アルゴリズムの高速化手法としては飽和状態にあると考え、今後さらなる高速化を考えた場合、より高速に処理可能なデバイスを用いる方法を取ることで、高速化と省メモリ化両方を実現することができると考える。また、ＣＡの運用次第ではあるが、ＣＲＬの発行が１回／日程度であるならば、ハッシュテーブル構築の遅さは大きな問題になることはなく、それよりもメモリ空間の効率化や今後の高速化アプローチの利点が大きくなる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１７４５１８号公報
【特許文献２】特開２００４−１７９７２４号公報
【特許文献３】特開２００４−０３２７０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＣＡがＣＲＬを発行するたびに検証サーバへ通知する機能を持ち、検証サーバは通知されるたびにＣＲＬの格納領域を更新し続ける機能を持つ。それら機能によって、検証結果の精度を保てる方式が特開２００６−１７４５１８である。ただし、これらの機能を実現するためには特殊なＣＡが必要不可欠で、ＰＫＩのような標準化されたインフラに用いることは困難である。検証サーバが一度有効性を確認できた証明書を格納することで、高速に検証することを可能にする方式が特開２００４−１７９７２４である。ただし、ＣＲＬと類似する情報を２重に持つ必要があるため、大規模のインフラを想定した場合、格納しなければならない情報が膨大になる。
検証サーバは二つの要素、
（１）ＣＲＬから装置識別子（発行者やＩＤなど）と、
（２）有効性判別情報（Ｔｒｕｅ  ｏｒ  ｆａｌｓｅなど）を格納し、
その格納した情報を用いて検証結果を判別する提案方式が特開２００４−０３２７０６である。この方式では、通常の一方向関数を用いているため、表には空きがあり、無駄なメモリ空間を確保しなければならない。また、この方法で最小完全ハッシュ関数を用いると、無駄なメモリ空間のない最小完全ハッシュ関数は、どのような値を入力しても衝突が発生しないため、有効性判別情報はＴｒｕｅ  ｏｒ  Ｆａｌｓｅの情報だけでなく、シリアル番号など判別情報そのものを格納しなければならず、格納する情報量が増加する。
【０００６】
本発明は、最小完全ハッシュ関数を用いると共に、ＣＲＬの判別情報の持ち方に工夫を施してキャッシュすることで、省メモリ化を実現する情報生成装置の提供を目的とする。
【課題を解決するための手段】
【０００７】
この発明の情報生成装置は、
失効した複数の公開鍵証明書の各公開鍵証明書に少なくともシリアル番号と発行者とが対応付けられた証明書失効リスト（ＣＲＬ：Ｃｅｒｔｉｆｉｃａｔｅ  Ｒｅｖｏｃａｔｉｏｎ  Ｌｉｓｔ）から、前記公開鍵証明書ごとに前記シリアル番号と前記発行者とを抽出する抽出部と、
前記抽出部によって抽出された前記シリアル番号と前記発行者とにハッシュ関数を適用させてハッシュ値を生成すると共に、失効したそれぞれの前記公開鍵証明書のシリアル番号と、失効した前記公開鍵証明書の中で最小のシリアル番号との差分を計算し、計算された前記差分と生成された前記ハッシュ値との対応関係をハッシュ対応情報として生成するハッシュ対応情報生成部と
を備えたことを特徴とする。
【発明の効果】
【０００８】
この発明により、ＣＲＬ情報を格納する際の、省メモリ化を図ることができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１における検証システムの構成。
【図２】実施の形態１における検証対象ユーザ端末装置４００の動作フロー。
【図３】実施の形態１における検証依頼ユーザ端末装置２００の動作フロー。
【図４】実施の形態１におけるＣＡ端末装置３００の動作フロー。
【図５】実施の形態１における検証サーバ装置１００の動作フロー。
【図６】実施の形態１における失効情報リスト３１０を示す図。
【図７】実施の形態１におけるハッシュテーブル１１０を示す図。
【図８】実施の形態２における検証サーバ装置１００の外観の一例を示す図。
【図９】実施の形態２における検証サーバ装置１００のハードウェア資源を示す図。
【発明を実施するための形態】
【００１０】
実施の形態１．
ＣＡサーバ装置、証明書や署名データを検証するサービスを行う検証サーバ装置、検証サービスを依頼するユーザ端末装置、検証対象の情報を持つユーザ端末装置がネットワークに接続した検証システムにおいて、検証サーバ装置は、検証対象の公開鍵証明書を検証するために必要な必要最低限の情報を持ち、高速に検証できる手法を提案する。
【００１１】
以下に説明する手法の特徴は、検証サーバ装置が保有するハッシュテーブル１１０にある。後述のように、ハッシュテーブル１１０において、失効した公開鍵証明書のシリアル番号をそのまま持つのではなく、ＣＲＬにおける公開鍵証明書ごとに、その公開鍵証明書のシリアル番号からＣＲＬにおける公開鍵証明書の先頭シリアル番号を減算した情報を対応付けて、ハッシュテーブル１１０として保有する。このように、シリアル番号をそのまま持つのではなく、差分として持つことで、従来の方法と比較して、確保しなければならない検証サーバ装置の記憶装置におけるメモリ領域が少なくて済むようになる。
【００１２】
図１は、実施の形態１における検証システムの全体構成を示すブロック図である。
【００１３】
（検証サーバ装置１００）
検証サーバ装置１００は、ユーザに依頼された情報を検証し、その結果を返す。
（１）情報送信部１０２は、生成した情報を送信する。
（２）失効情報抽出部１０３は、受信したＣＲＬから失効情報を抽出する。
（３）ハッシュ表生成部１０４は、検証結果を判定するためのテーブルを生成する。
（４）検証結果判定部１０５は、検証結果を判定する。
（５）情報受信部１０６は、送信された情報を受信する。
【００１４】
（検証依頼ユーザ端末装置２００）
検証依頼ユーザ端末装置２００は、検証対象の情報を検証サーバ装置１００に送付する。
（１）リクエスト生成部２０１は、検証依頼情報を生成する。
（２）情報送信部２０２は、生成した情報を送信する。
（３）情報受信部２０６は、送信された情報を受信する。
【００１５】
（ＣＡ端末装置３００）
ＣＡ端末装置３００は、検証に必要な証明書・失効情報を作成・管理する。特定のサーバもしくはユーザにそれら情報を送付する。
（１）失効情報生成部３０１は、失効済の公開鍵証明書のリストを生成する。
（２）情報送信部３０２は、生成した情報を送信する。
【００１６】
（検証対象ユーザ端末装置４００）
検証対象ユーザ端末装置４００は、検証対象の情報を所有する。
（１）署名データ生成部４０１は、署名データを生成する。
（２）情報送信部４０２は、生成した情報を送信する。
【００１７】
（前提条件）
（１）ＣＡ端末装置３００は、検証対象ユーザ端末装置４００になんらかの方法を用いて、検証対象ユーザ端末装置４００の公開鍵証明書を配布済みである。その公開鍵証明書はＣＡ端末装置３００の下位の公開鍵証明書とする。
（２）検証サーバ装置１００はなんらかの方法を用いて、ＣＡ端末装置３００の公開鍵証明書を取得している。検証サーバ装置１００はその証明書を検証できる。
（３）検証依頼ユーザ端末装置２００はなんらかの方法を用いて、検証サーバ装置１００の公開鍵証明書を取得している。検証依頼ユーザ端末装置２００はその証明書を検証できる。
（４）検証サーバ装置１００はなんらかの方法を用いて、検証依頼ユーザ端末装置２００の公開鍵証明書を取得している。検証サーバ装置１００はその証明書を検証できる。
【００１８】
図１〜図５を参照してシステム全体の流れを説明する。
【００１９】
（検証対象ユーザ端末装置４００）
検証対象ユーザ端末装置４００は、署名データ生成部４０１を用いて、検証依頼ユーザ端末装置２００の情報に改ざん防止用の署名を付けた署名付き検証依頼ユーザ情報と、検証対象ユーザ端末装置４００の公開鍵証明書を添付する（ステップＳ１１）。情報送信部４０２は、その署名と公開鍵証明書とが付与された情報を、検証依頼ユーザ端末装置２００に送付する（ステップＳ１２）。
【００２０】
（検証依頼ユーザ端末装置２００）
検証依頼ユーザ端末装置２００は、検証対象ユーザ端末装置４００から送付された情報を、情報受信部２０６で受信する（ステップＳ２１）。検証依頼ユーザ端末装置２００は、検証対象ユーザ端末装置４００の公開鍵証明書および署名データを取得するが、検証する情報を持っていないため、検証サーバ装置１００に検証を依頼する。リクエスト生成部２０１は、検証対象ユーザ端末装置４００の公開鍵証明書もしくは署名データに検証依頼ユーザ端末装置２００の署名を付与してリクエスト２１０を生成する（ステップＳ２２）。検証依頼ユーザ端末装置２００は情報送信部２０２を介して、検証サーバ装置１００にリクエスト２１０を送信する（ステップＳ２３）。
【００２１】
（ＣＡ端末装置３００）
ＣＡ端末装置３００は、検証サーバ装置１００から失効情報リクエストがあるたびにリクエストを送付する。
図６は、ＣＡ端末装置３００が検証サーバ装置１００にリクエストとして送付する失効情報３１０（ＣＲＬ）を示す。ＣＡ端末装置３００は、図６のような失効情報３１０にＣＡ端末装置３００の公開鍵証明書で署名されたデータを検証サーバ装置１００に送付する。ＣＡ端末装置３００は、そのデータをＣＡの運用で決められたタイミングで生成する（ステップＳ３１）。ＣＡ端末装置３００は、検証サーバ装置１００からリクエストがあったタイミングで、そのデータを検証サーバ装置１００に送信する（ステップＳ３２）。
【００２２】
（検証サーバ装置１００）
検証サーバ装置１００の情報受信部１０６は、ＣＡ端末装置３００から失効情報リクエストを受信する（ステップＳ４１）。検証サーバ装置１００の失効情報抽出部１０３は、失効情報３１０に付与されている署名を検証し、検証に成功した場合のみ、ＣＡ端末装置３００から送信された失効情報３１０に含まれる各公開鍵証明書のシリアル番号と発行者とを抽出する（ステップＳ４２）。検証サーバ装置１００のハッシュ表生成部１０４は、各公開鍵証明書から抽出された二つの情報（シリアル番号、発行者）を最小完全ハッシュ関数に入力し、ハッシュ値を取得する。ハッシュ表生成部１０４はそのハッシュ値をＫｅｙとし、Ｋｅｙに対応するＶａｌｕｅとして、「その公開鍵証明書のシリアル番号から先頭シリアル番号」を引き算し、その値である「その公開鍵証明書シリアル番号−先頭シリアル番号」を格納する。
図７は、「その公開鍵証明書シリアル番号−先頭シリアル番号」としたハッシュテーブル１１０（ハッシュ対応情報）を示す。ここでの先頭シリアル番号とは、ステップＳ４２で抽出できたシリアル番号で最も小さい値となる（ステップＳ４３）。図７では、最少のシリアル番号が「０８」であった場合を示している。また、Ｖａｌｕｅには引き算の結果の値が格納される。Ｖａｌｕｅを先頭シリアル番号を基準としたシリアル番号の差分値とすることで、Ｖａｌｕｅは３バイト程度で十分である。
【００２３】
（検証サーバ装置１００による検証）
検証サーバ装置１００の情報受信部１０６は、検証依頼ユーザ端末装置２００から、ステップＳ２３で送信されたリクエスト２１０を受信する（ステップＳ４４）。検証サーバ装置１００の検証結果判定部１０５は、検証依頼ユーザ端末装置２００のリクエスト２１０を検証する。検証に成功した場合、検証結果判定部１０５はリクエスト２１０に添付された「署名データもしくは公開鍵証明書」（検証対象情報）からシリアル番号と発行者を抽出する。検証結果判定部１０５は、「署名データもしくは公開鍵証明書」から抽出したシリアル番号と発行者とに最小完全ハッシュ関数を適用させてハッシュ値を生成する。また、検証結果判定部１０５は、「署名データもしくは公開鍵証明書」から抽出したシリアル番号から最小のシリアル番号（Ｓ４２で抽出した際、記憶部１０６に記憶しておく）を引き算し、「「（ａ）引き算の結果」と生成したハッシュ値との組」が図７のハッシュテーブルに在するかどうかを判定する。存在する場合、検証結果判定部１０５は、リクエスト２１０の情報（リクエスト２１０の示す公開鍵証明書）は失効していると判定し、合致しなければリクエスト２１０の情報（リクエスト２１０の示す公開鍵証明書）は失効していないと判定する（ステップＳ４５）。検証サーバ装置１００の情報送信部１０２は、検証依頼ユーザ端末装置２００にステップＳ４５で判定した結果を送信する（ステップＳ４６）。
【００２４】
なお、図７のハッシュテーブル１１０では、「その公開鍵証明書シリアル番号−先頭シリアル番号」としたが、先頭シリアル番号から「その公開鍵証明書シリアル番号」を引いた値を用いてもよいし、絶対値を用いてもよい。絶対値を記憶するように構成するときは、上記「（ａ）引き算の結果」の絶対値と比較を行う。
【００２５】
実施の形態１の検証サーバ装置１００によれば、最小完全ハッシュ関数を使用すると共にＶａｌｕｅにシリアル番号の差分値を格納することによって、無駄なメモリ空間を確保する必要がなる。このため、仮に１００万ユーザの失効を想定した場合、Ｖａｌｕｅを２＾２４ｂｉｔ（３ｂｙｔｅ）で表記でき、従来の２０ｂｙｔｅと比較すると格納領域が１／６になる効果がある。
【００２６】
以上のように、検証サーバ装置１００は、ハッシュテーブル１１０のＶａｌｕｅでシリアル番号そのものを格納するのではなく、「その公開鍵証明書シリアル番号−先頭シリアル番号」の引き算の値を格納するので、検証サーバ装置の記憶装置における省メモリ化を図ることができる。
また検証サーバ装置１００での検証の際には、ハッシュ値をＫｅｙとし、Ｖａｌｕｅとして「その公開鍵証明書シリアル番号−先頭シリアル番号」の引き算の値をハッシュテーブルから検索する。この場合、Ｖａｌｕｅは３バイト程度であるから、検索が高速になる。
【００２７】
以上説明したように、検証サーバ装置１００は、ＣＡ端末装置３００から送信された失効情報３１０（ＣＲＬ）からシリアル番号と発行者を取り出し、それら値を最小完全ハッシュ関数に入力し、ハッシュ値を出力する。
このハッシュ値をＫｅｙとし、「シリアル番号−先頭シリアル番号」をＶａｌｕｅとするハッシュテーブル１１０を作成する。
検証サーバ装置１００は、このハッシュテーブル１１０を用いて検証結果を判別する。一般のハッシュテーブルではシリアル番号などの有効性が判別可能な情報をそのまま格納しなければならず、仮にシリアル番号をそのまま格納した場合、ＲＦＣ５２８０の規定に従い２０ｂｙｔｅのメモリ空間を確保しなければならない。しかし、多くのＣＡの運用としてシリアル番号は、初期値から新規の証明書が発行されるたびにインクリメントされている。よって、「シリアル番号−先頭シリアル番号」をＶａｌｕｅとするハッシュテーブル１１０を作成することで、Ｖａｌｕｅの必要なバイト数を３バイト程度にすることができる。
【００２８】
実施の形態２．
実施の形態２は、コンピュータである検証サーバ装置１００のハードウェア構成を説明する。図８は、コンピュータである検証サーバ装置１００の外観の一例を示す図である。
図９は、検証サーバ装置１００のハードウェア資源の一例を示す図である。
【００２９】
外観を示す図８において、検証サーバ装置１００は、システムユニット８３０、ＣＲＴ（Ｃａｔｈｏｄｅ・Ｒａｙ・Ｔｕｂｅ）やＬＣＤ（液晶）の表示画面を有する表示装置８１３、キーボード８１４（Ｋｅｙ・Ｂｏａｒｄ：Ｋ／Ｂ）、マウス８１５、ＦＤＤ８１７（Ｆｌｅｘｉｂｌｅ・Ｄｉｓｋ・  Ｄｒｉｖｅ）、コンパクトディスク装置８１８（ＣＤＤ：Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｄｒｉｖｅ）、プリンタ装置８１９などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。システムユニット８３０はネットワークを介して、検証依頼ユーザ端末装置２００、ＣＡ端末装置３００、検証対象ユーザ端末装置４００と接続している。
【００３０】
またハードウェア資源を示す図９において、検証サーバ装置１００は、プログラムを実行するＣＰＵ８１０（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を備えている。ＣＰＵ８１０は、バス８２５を介してＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）８１１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）８１２、表示装置８１３、キーボード８１４、マウス８１５、通信ボード８１６、ＦＤＤ８１７、ＣＤＤ８１８、プリンタ装置８１９、磁気ディスク装置８２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置８２０の代わりに、光ディスク装置、フラッシュメモリなどの記憶装置でもよい。
【００３１】
ＲＡＭ８１２は、揮発性メモリの一例である。ＲＯＭ８１１、ＦＤＤ８１７、ＣＤＤ８１８、磁気ディスク装置８２０等の記憶媒体は、不揮発性メモリの一例である。これらは、「記憶装置」あるいは記憶部、格納部、バッファの一例である。通信ボード８１６、キーボード８１４、ＦＤＤ８１７などは、入力部、入力装置の一例である。また、通信ボード８１６、表示装置８１３、プリンタ装置８１９などは、出力部、出力装置の一例である。
【００３２】
通信ボード８１６は、ネットワーク（ＬＡＮ等）に接続されている。通信ボード８１６は、ＬＡＮに限らず、インターネット、ＩＳＤＮ等のＷＡＮ（ワイドエリアネットワーク）などに接続されていても構わない。
【００３３】
磁気ディスク装置８２０には、オペレーティングシステム８２１（ＯＳ）、ウィンドウシステム８２２、プログラム群８２３、ファイル群８２４が記憶されている。プログラム群８２３のプログラムは、ＣＰＵ８１０、オペレーティングシステム８２１、ウィンドウシステム８２２により実行される。
【００３４】
上記プログラム群８２３には、以上の実施の形態１の説明において「〜部」として説明した機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ８１０により読み出され実行される。
【００３５】
ファイル群８２４には、以上の実施の形態１の説明において、「〜の判定結果」、「〜の算出結果」、「〜の抽出結果」、「〜の生成結果」、「〜の処理結果」として説明した情報や、データや信号値や変数値やパラメータなどが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ８１０によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【００３６】
また、以上に述べた実施の形態１の説明において、データや信号値は、ＲＡＭ８１２のメモリ、ＦＤＤ８１７のフレキシブルディスク、ＣＤＤ８１８のコンパクトディスク、磁気ディスク装置８２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ・Ｖｅｒｓａｔｉｌｅ・Ｄｉｓｋ）等の記録媒体に記録される。また、データや信号は、バス８２５や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００３７】
また、以上の実施の形態の説明において、「〜部」として説明したものは、「〜手段」、「〜回路」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明したものは、ＲＯＭ８１１に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ８１０により読み出され、ＣＰＵ８１０により実行される。すなわち、プログラムは、以上に述べた「〜部」としてコンピュータを機能させるものである。あるいは、以上に述べた「〜部」の手順や方法をコンピュータに実行させるものである。
【００３８】
以上の実施の形態では、検証システム、検証サーバ装置１００等を説明したが、検証サーバ装置１００の動作をコンピュータに実行させる情報生成プログラムとして把握することも可能である。あるいは、情報生成プログラムを記録したコンピュータ読み取り可能な記録媒体として把握することも可能である。さらに、検証サーバ装置１００の動作を情報生成方法として把握することも可能である。
【符号の説明】
【００３９】
１００  検証サーバ装置、１０２  情報送信部、１０３  失効情報抽出部、１０４  ハッシュ表生成部、１０５  検証結果判定部、１０６  情報受信部、１１０  ハッシュテーブル、２００  検証依頼ユーザ端末装置、２０１  リクエスト生成部、２０６  情報受信部、２１０  リクエスト、３００  ＣＡ端末装置、３０１  失効情報生成部、３０２  情報送信部、３１０  失効情報、４００  検証対象ユーザ端末装置、４０１  署名データ生成部、４０２  情報送信部。
【図１】
0005473694.tif 000002
【図２】
0005473694.tif 000003
【図３】
0005473694.tif 000004
【図４】
0005473694.tif 000005
【図５】
0005473694.tif 000006
【図６】
0005473694.tif 000007
【図７】
0005473694.tif 000008
【図８】
0005473694.tif 000009
【図９】
0005473694.tif 000010