(57)【要約】【課題】署名データや公開鍵証明書の信頼度を提供できるようにすることを目的とする。【解決手段】リスク定義ファイル３９１は、電子署名の署名値と電子署名の署名値以外の複数のデータ項目とを含んだ署名データ１１０に含まれるデータ項目のうち検証対象のデータ項目を検証項目として示す。検証サーバ通信部３６０は、署名データ１１０を含んだ検証リクエスト１２０を受信する。項目検証部３２０は、リスク定義ファイル３９１に基づいて署名データ１１０から署名値と検証項目とを抽出し、抽出した署名値が正しいか否かを署名値の所定の検証方法で検証し、抽出した検証項目が正しいか否かを検証項目の所定の検証方法で検証する。検証結果値算出部３４０は、署名値の検証結果と各検証項目の検証結果とに基づいて署名データ１１０の信頼度を検証結果値３９９として算出する。検証サーバ通信部３６０は、検証結果値３９９を含んだ検証レスポンス１３０を送信する。【選択図】図５
2013062650.tif 000002
【特許請求の範囲】
【請求項１】
電子署名の署名値と電子署名の署名値以外の複数のデータ項目とを含んだ署名付きデータに含まれるデータ項目のうち検証対象のデータ項目を検証項目として示す検証項目データを記憶する検証装置記憶部と、
署名付きデータが入力される署名付きデータ入力部と、
前記検証装置記憶部に記憶される検証項目データに基づいて前記署名付きデータ入力部に入力された署名付きデータから署名値と検証項目とを抽出し、抽出した署名値が正しいか否かを署名値の所定の検証方法で検証し、抽出した検証項目が正しいか否かを検証項目の所定の検証方法で検証する項目検証部と、
前記項目検証部によって得られた前記署名値の検証結果と前記検証項目の検証結果とに基づいて前記署名付きデータの信頼度をデータ信頼度として算出する信頼度算出部と、
前記信頼度算出部によって算出されたデータ信頼度を出力するデータ信頼度出力部と
を備えることを特徴とするデータ検証装置。
【請求項２】
前記検証項目データは、電子署名の署名値を含んだ複数の検証項目を示すと共に検証項目毎に検証項目の種類を項目種類として示し、
前記検証装置記憶部は、項目種類毎に当該項目種類に属する検証項目の検証結果に応じた数値を検証値として示す検証値データを記憶し、
前記データ検証装置は、さらに、
前記検証項目データに基づいて検証項目毎に項目種類を判定し、前記検証値データから項目種類毎に検証値を取得し、各項目種類に属する検証項目の検証結果と各項目種類の検証値とに基づいて前記署名付きデータの検証値を算出する検証値算出部を備え、
前記信頼度算出部は、前記検証値算出部によって算出された前記署名付きデータの検証値に基づいて前記データ信頼度を算出する
ことを特徴とする請求項１記載のデータ検証装置。
【請求項３】
前記信頼度算出部は、前記署名付きデータの検証値を用いてデータ信頼度の所定の算出式を計算して前記データ信頼度を算出する
ことを特徴とする請求項２記載のデータ検証装置。
【請求項４】
前記検証装置記憶部は、検証値の範囲毎にデータ信頼度を示す信頼度データを記憶し、
前記信頼度算出部は、前記署名値の検証値と各検証項目の検証値とを用いて前記署名付きデータの検証値を算出し、算出した署名付きデータの検証値に対応するデータ信頼度を前記署名付きデータの信頼度として前記信頼度データから取得する
ことを特徴とする請求項２記載のデータ検証装置。
【請求項５】
電子署名の署名値と電子署名の署名値以外の複数のデータ項目とを含んだ署名付きデータに含まれるデータ項目のうち検証対象のデータ項目を検証項目として示す検証項目データを記憶する検証装置記憶部を備えるデータ検証装置のデータ検証方法であって、
署名付きデータ入力部が、署名付きデータを入力し、
項目検証部が、前記検証装置記憶部に記憶される検証項目データに基づいて前記署名付きデータ入力部に入力された署名付きデータから署名値と検証項目とを抽出し、抽出した署名値が正しいか否かを署名値の所定の検証方法で検証し、抽出した検証項目が正しいか否かを検証項目の所定の検証方法で検証し、
信頼度算出部が、前記項目検証部によって得られた前記署名値の検証結果と前記検証項目の検証結果とに基づいて前記署名付きデータの信頼度をデータ信頼度として算出し、
データ信頼度出力部が、前記信頼度算出部によって算出されたデータ信頼度を出力する
ことを特徴とするデータ検証装置のデータ検証方法。
【請求項６】
電子署名の署名値と電子署名の署名値以外の複数のデータ項目とを含んだ署名付きデータに含まれるデータ項目のうち検証対象のデータ項目を検証項目として示す検証項目データを記憶する検証装置記憶部を備えるデータ検証装置を機能させるデータ検証プログラムであって、
署名付きデータが入力される署名付きデータ入力部と、
前記検証装置記憶部に記憶される検証項目データに基づいて前記署名付きデータ入力部に入力された署名付きデータから署名値と検証項目とを抽出し、抽出した署名値が正しいか否かを署名値の所定の検証方法で検証し、抽出した検証項目が正しいか否かを検証項目の所定の検証方法で検証する項目検証部と、
前記項目検証部によって得られた前記署名値の検証結果と前記検証項目の検証結果とに基づいて前記署名付きデータの信頼度をデータ信頼度として算出する信頼度算出部と、
前記信頼度算出部によって算出されたデータ信頼度を出力するデータ信頼度出力部として前記データ検証装置を機能させる
ことを特徴とするデータ検証プログラム。
【請求項７】
電子署名の署名値と電子署名の署名値以外の複数のデータ項目とを含んだ署名付きデータに含まれるデータ項目のうち検証対象のデータ項目を検証項目として示す検証項目データを記憶する検証装置記憶部と、
署名付きデータが入力される署名付きデータ入力部と、
前記検証装置記憶部に記憶される検証項目データに基づいて前記署名付きデータ入力部に入力された署名付きデータから署名値と検証項目とを抽出し、抽出した署名値が正しいか否かを署名値の所定の検証方法で検証し、抽出した検証項目が正しいか否かを検証項目の所定の検証方法で検証する項目検証部と、
前記項目検証部によって得られた前記署名値の検証結果と前記検証項目の検証結果とを前記署名値の検証結果と前記検証項目の検証結果とに基づく特定の値を前記署名付きデータの検証値として提供する検証値提供装置へ送信し、前記検証値提供装置から前記署名付きデータの検証値を受信する検証値取得部と、
前記検証値取得部によって受信された前記署名付きデータの検証値に基づいて前記署名付きデータの信頼度をデータ信頼度として算出する信頼度算出部と、
前記信頼度算出部によって算出されたデータ信頼度を出力するデータ信頼度出力部と
を備えることを特徴とするデータ検証装置。
【請求項８】
請求項７記載のデータ検証装置と、前記署名値の検証結果と前記検証項目の検証結果とに基づいて前記署名付きデータの検証値を前記データ検証装置へ提供する検証値提供装置とを有する
ことを特徴とするデータ検証システム。
【請求項９】
電子署名の署名値と電子署名の署名値以外の複数のデータ項目とを含んだ署名付きデータに含まれるデータ項目のうち検証対象のデータ項目を検証項目として示す検証項目データを記憶する検証装置記憶部を備えるデータ検証装置のデータ検証方法であって、
署名付きデータ入力部が、署名付きデータを入力し、
項目検証部が、前記検証装置記憶部に記憶される検証項目データに基づいて前記署名付きデータ入力部に入力された署名付きデータから署名値と検証項目とを抽出し、抽出した署名値が正しいか否かを署名値の所定の検証方法で検証し、抽出した検証項目が正しいか否かを検証項目の所定の検証方法で検証し、
検証値取得部が、前記項目検証部によって得られた前記署名値の検証結果と前記検証項目の検証結果とを前記署名値の検証結果と前記検証項目の検証結果とに基づく特定の値を前記署名付きデータの検証値として提供する検証値提供装置へ送信し、前記検証値提供装置から前記署名付きデータの検証値を受信し、
信頼度算出部が、前記検証値取得部によって受信された前記署名付きデータの検証値に基づいて前記署名付きデータの信頼度をデータ信頼度として算出し、
データ信頼度出力部が、前記信頼度算出部によって算出されたデータ信頼度を出力する
ことを特徴とするデータ検証装置のデータ検証方法。
【請求項１０】
電子署名の署名値と電子署名の署名値以外の複数のデータ項目とを含んだ署名付きデータに含まれるデータ項目のうち検証対象のデータ項目を検証項目として示す検証項目データを記憶する検証装置記憶部を備えるデータ検証装置を機能させるデータ検証プログラムであって、
署名付きデータが入力される署名付きデータ入力部と、
前記検証装置記憶部に記憶される検証項目データに基づいて前記署名付きデータ入力部に入力された署名付きデータから署名値と検証項目とを抽出し、抽出した署名値が正しいか否かを署名値の所定の検証方法で検証し、抽出した検証項目が正しいか否かを検証項目の所定の検証方法で検証する項目検証部と、
前記項目検証部によって得られた前記署名値の検証結果と前記検証項目の検証結果とを前記署名値の検証結果と前記検証項目の検証結果とに基づく特定の値を前記署名付きデータの検証値として提供する検証値提供装置へ送信し、前記検証値提供装置から前記署名付きデータの検証値を受信する検証値取得部と、
前記検証値取得部によって受信された前記署名付きデータの検証値に基づいて前記署名付きデータの信頼度をデータ信頼度として算出する信頼度算出部と、
前記信頼度算出部によって算出されたデータ信頼度を出力するデータ信頼度出力部として前記データ検証装置を機能させる
ことを特徴とするデータ検証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、署名付きデータを検証するデータ検証装置、データ検証装置のデータ検証方法、データ検証プログラムおよびデータ検証システムに関するものである。
【背景技術】
【０００２】
様々な環境で公開鍵基盤（ＰＫＩ：Ｐｕｂｌｉｃ  Ｋｅｙ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ）が整備されている中、利用者にとって電子署名の検証処理が身近になりつつある。
【０００３】
例えば、電子署名は、ウェブ（ＷＷＷ：Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）の購買システムや、ｅ−文章法によって普及が進んでいる文章の電子化で利用されている。
利用者が購買システムや電子文章を安全に利用するためには、データの改ざんや他人への成りすましなどを検出可能な電子署名技術の検証処理が必要不可欠である。
【０００４】
一般に、これら検証処理は、利用者の端末にクライアントツールを導入するか、検証サーバに依頼することによって実行されている。
そして、検証処理の結果は、「成功（データが正当）」または「失敗（データが不当）」を表す２値情報で示される。但し、２値情報に加えて、検証が失敗した場合に失敗の理由（データが不当である理由）を提示するクライアントツールやＤＶＣＳ（Ｄａｔａ  Ｖａｌｉｄａｔｉｏｎ  ａｎｄ  Ｃｅｒｔｉｆｉｃａｔｉｏｎ  Ｓｅｒｖｅｒ）と呼ばれるサーバも存在する。
【０００５】
つまり、利用者は、電子署名が付されたデータの検証結果として検証処理が成功したか失敗したかの２値情報（および失敗の理由）だけしか知ることができない。
例えば、利用者は、より信頼性の高い公開鍵証明書（電子署名が付されたデータの一例）を検証結果に基づいて選択することができない。
【０００６】
また、有効期限が切れた公開鍵証明書やその署名データは失効されてしかるべきであるが、有効期限が少し前の時刻（例えば、１秒前）である場合、利用者の利便性を考慮して有効期限切れを致命的なセキュリティリスクとして扱わない柔軟な設計のシステムも有用である。
しかし、従来の検証結果の内容では、有効期限切れが致命的なセキュリティリスクであるか否かを判断することができない。
【０００７】
以下の特許文献１は、ヒステリシス署名と呼ばれる署名データを電子文章に付与するたびに過去に生成した署名データを取り込んで新しい署名を生成する方式を開示する。つまり、特許文献１に記載される発明は、署名データや公開鍵証明書に付与する一般的な電子署名ではなく、ヒステリシス署名という特殊な署名を扱うものである。
特許文献２、３は、検証の高速化を実現するため、電子文章の内容について重要度を設定して重要度によって検証する方式を開示する。ただし、電子文章の内容について重要度を設定しなければならないため、検証できる電子文章が限られてしまう。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００４−１０４７５０号公報
【特許文献２】特開２００８−０９８７８３号公報
【特許文献３】特開２００８−３１２０４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、例えば、署名データや公開鍵証明書の信頼度を提供できるようにすることを目的とする。
【課題を解決するための手段】
【００１０】
本発明のデータ検証装置は、
電子署名の署名値と電子署名の署名値以外の複数のデータ項目とを含んだ署名付きデータに含まれるデータ項目のうち検証対象のデータ項目を検証項目として示す検証項目データを記憶する検証装置記憶部と、
署名付きデータが入力される署名付きデータ入力部と、
前記検証装置記憶部に記憶される検証項目データに基づいて前記署名付きデータ入力部に入力された署名付きデータから署名値と検証項目とを抽出し、抽出した署名値が正しいか否かを署名値の所定の検証方法で検証し、抽出した検証項目が正しいか否かを検証項目の所定の検証方法で検証する項目検証部と、
前記項目検証部によって得られた前記署名値の検証結果と前記検証項目の検証結果とに基づいて前記署名付きデータの信頼度をデータ信頼度として算出する信頼度算出部と、
前記信頼度算出部によって算出されたデータ信頼度を出力するデータ信頼度出力部とを備える。
【発明の効果】
【００１１】
本発明によれば、例えば、署名データや公開鍵証明書の信頼度（データ信頼度）を提供することができる。
これにより、例えば、利用者による公開鍵証明書の選択、利用者の利便性の向上や柔軟な設計のシステムの構築を実現することができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１におけるデータ検証システム１００の概要図。
【図２】実施の形態１における検証リクエスト１２０と署名データ１１０とのフォーマットの一例を示す図。
【図３】実施の形態１における公開鍵証明書１１１と失効リスト１１２とのフォーマットの一例を示す図。
【図４】実施の形態１におけるユーザ端末装置２００の機能構成図。
【図５】実施の形態１における検証サーバ装置３００の機能構成図。
【図６】実施の形態１におけるリスク定義ファイル３９１の一例を示す図。
【図７】実施の形態１におけるリスク定義ファイル３９１の一例を示す図。
【図８】実施の形態１におけるリスク値定義ファイル３９２と発行局定義ファイル３９３との一例を示す図。
【図９】実施の形態１におけるユーザ端末装置２００の検証依頼処理を示すフローチャート。
【図１０】実施の形態１における検証サーバ装置３００のデータ検証処理を示すフローチャート。
【図１１】実施の形態１におけるユーザ端末装置２００および検証サーバ装置３００のハードウェア資源の一例を示す図。
【図１２】実施の形態２における検証結果値定義ファイル３９４の一例を示す図。
【図１３】実施の形態３（実施例１）におけるデータ検証システム１００のシステム構成図。
【図１４】実施の形態３（実施例１）における検証サーバ装置３００のデータ検証処理を示すフローチャート。
【図１５】実施の形態３（実施例１）における定義端末装置４００のリスク値応答処理を示すフローチャート。
【図１６】実施の形態３（実施例２）におけるデータ検証システム１００のシステム構成図。
【図１７】実施の形態３（実施例２）における定義端末装置４００のリスク値応答処理を示すフローチャート。
【図１８】実施の形態３（実施例２）における調査端末装置５００の証明書信頼度応答処理を示すフローチャート。
【発明を実施するための形態】
【００１３】
実施の形態１．
署名付きデータを検証し、検証した署名付きデータの信頼度を算出し、算出した信頼度を提示するシステムの形態について説明する。
【００１４】
図１は、実施の形態１におけるデータ検証システム１００の概要図である。
実施の形態１におけるデータ検証システム１００の概要について、図１に基づいて説明する。
【００１５】
以下、電子署名の署名値を含んだ電子データを「署名データ１１０（または署名付きデータ）」という。
【００１６】
データ検証システム１００は、ユーザ端末装置２００と検証サーバ装置３００とを有する。
ユーザ端末装置２００と検証サーバ装置３００とは、インターネットやＬＡＮ（ローカルエリアネットワーク）などのネットワーク１０９を介して電子データの通信を行う。
【００１７】
署名データ１１０を取得したユーザは、署名データ１１０が第三者（不正者）によって改ざんされておらず、且つ、他人に成りすました第三者によって生成されていない信頼できるデータであるか否かを検証するため、署名データ１１０の検証を要求する検証リクエスト１２０をユーザ端末装置２００を操作して検証サーバ装置３００へ送信する。
ユーザ端末装置２００は、ユーザの操作に従って署名データ１１０を含んだ検証リクエスト１２０を生成し、生成した検証リクエスト１２０を検証サーバ装置３００へ送信する。
【００１８】
検証サーバ装置３００は、検証リクエスト１２０に含まれる署名データ１１０を検証して署名データ１１０の信頼度を算出し、算出した署名データ１１０の信頼度を示す検証結果値３９９を含んだ検証レスポンス１３０をユーザ端末装置２００へ送信する。
【００１９】
ユーザ端末装置２００は検証レスポンス１３０に含まれる検証結果値３９９を表示し、ユーザは表示された検証結果値３９９に基づいて署名データ１１０が信頼できるデータであるか否かを判断する。
【００２０】
例えば、検証サーバ装置３００は、ＤＶＣＳ（Ｄａｔａ  Ｖａｌｉｄａｔｉｏｎ  ａｎｄ  Ｃｅｒｔｉｆｉｃａｔｉｏｎ  Ｓｅｒｖｅｒ）として実装される。
この場合、ユーザ端末装置２００と検証サーバ装置３００とは、ＤＶＣＳのプロトコルに従って検証リクエスト１２０と検証レスポンス１３０とを通信する。
【００２１】
図２は、実施の形態１における検証リクエスト１２０と署名データ１１０とのフォーマットの一例を示す図である。
実施の形態１における検証リクエスト１２０と署名データ１１０とのフォーマット（データ形式）について、図２に基づいて説明する。
【００２２】
例えば、検証リクエスト１２０や署名データ１１０のフォーマットとしてＣＭＳ（Ｃｒｙｐｔｏｇｒａｐｈｉｃ  Ｍｅｓｓａｇｅ  Ｓｙｎｔａｘ）のフォーマットを利用することができる。
【００２３】
検証リクエスト１２０は、「データタイプ」「データ」「署名値」などの項目を含んだデータである。「署名値」が含まれる検証リクエスト１２０は署名データ１１０の一例である。
【００２４】
「データタイプ」は、検証リクエスト１２０の種類を示す。実施の形態では、「署名データの検証」を示す値を設定する。
「データ」は、署名データ１１０を示す。
「署名値」は、検証リクエスト１２０の所定の項目（例えば、署名データなど）を対象として所定の署名アルゴリズムによって生成された署名値を示す。
【００２５】
署名データ１１０は、「コンテンツタイプ」「コンテンツ」などの項目を含む。
【００２６】
「コンテンツタイプ」は、コンテンツ（データ）の種類を示す。実施の形態では、「署名データ」を示す値を設定する。
「コンテンツ」は、署名データ１１０の中身を示す。
【００２７】
「コンテンツ」は、「バージョン番号」「元データ情報」「公開鍵証明書」「失効リスト」「署名者情報」などの項目を含む。
【００２８】
「バージョン番号」は、コンテンツの形式を識別するバージョンの番号を示す。
【００２９】
「元データ情報」は、「元データタイプ」「元データ」を含み、署名されたデータ（元データ）の情報を示す。
「元データタイプ」は、署名されたデータの種類を示す。
「元データ」は、署名されたデータを示す。
【００３０】
「公開鍵証明書」は、署名データ１１０に含まれる署名値の検証に用いる１つまたは複数の公開鍵証明書（証明書チェーン）を示す。但し、「公開鍵証明書」は設定しなくても構わない。
例えば、「公開鍵証明書」には、署名データ１１０を生成したユーザまたは装置（以下、「署名者」という）に対して発行された公開鍵証明書および、その公開鍵証明書を発行した発行局（または発行局の装置、以下同様）に対して発行された公開鍵証明書が含まれる。さらに、その発行局が下位の発行局である場合、その発行局に対して上位の発行局から発行された公開鍵証明書が含まれる。
このように、上位・下位の関係を有する複数の発行局によって発行された公開鍵証明書の組み合わせを「証明書チェーン」という。
発行局は、一般的に、「認証局（ＣＡ：Ｃｅｒｔｉｆｉｃａｔｅ  Ａｕｔｈｏｒｉｔｙ）」と呼ばれる。また、最上位の認証局のことを「ルート認証局」という。
公開鍵証明書は「電子証明書」または「デジタル証明書」ともいう。
【００３１】
「失効リスト」は、失効した公開鍵証明書の一覧（ＣＲＬ：Ｃｅｒｔｉｆｉｃａｔｅ  Ｒｅｖｏｃａｔｉｏｎ  Ｌｉｓｔ）を示す。但し、「失効リスト」は設定しなくても構わない。
【００３２】
「署名者情報」は、「バージョン番号」「公開鍵証明書情報」「ハッシュアルゴリズム情報」「属性情報」「署名アルゴリズム情報」「署名値」などの項目を含み、署名者の情報を示す。
【００３３】
「バージョン番号」は、署名者情報の形式を識別するバージョンの番号を示す。
【００３４】
「公開鍵証明書情報」は、「発行者名」「シリアル番号」を含み、署名者の公開鍵証明書の情報を示す。
「発行者名」は、署名者の公開鍵証明書を発行した発行局の名称を示す。
「シリアル番号」は、署名者の公開鍵証明書を識別する番号を示す。
【００３５】
「ハッシュアルゴリズム情報」は、署名データ１１０の署名値を生成するためのハッシュ値の算出に用いられたハッシュアルゴリズム（ハッシュ関数）の情報を示す。ハッシュ関数にはＳＨＡ２、ＳＨＡ５１２、ＳＨＡ１、ＲＣ４などがある。
【００３６】
「属性情報」は、「属性タイプ」「属性データ」を含み、属性データの情報を示す。
「属性タイプ」は、属性データの種類を示す。
「属性データ」は、属性データの中身を示す。例えば、署名データ１１０の署名値を生成するために算出されたハッシュ値が設定される。
【００３７】
「署名アルゴリズム情報」は、署名データ１１０の署名値の生成に用いられた署名アルゴリズムの情報を示す。署名アルゴリズムにはＲＳＡ（登録商標）やＤＳＡなどがある。
【００３８】
「署名値」は、署名データ１１０の所定の項目（例えば、元データなど）を対象として算出された署名値（署名データ１１０の署名値）を示す。
【００３９】
図３は、実施の形態１における公開鍵証明書１１１と失効リスト１１２とのフォーマットの一例を示す図である。
実施の形態１における公開鍵証明書１１１と失効リスト１１２とについて、図３に基づいて説明する。
【００４０】
公開鍵証明書１１１は、「バージョン番号」「シリアル番号」「発行者」「有効期間」「サブジェクト」「サブジェクト鍵識別情報」「公開鍵」「署名アルゴリズム情報」「署名値」などの項目を含んだデータである。「署名値」を含んだ公開鍵証明書１１１は署名データ１１０の一例である。
【００４１】
「バージョン番号」は、公開鍵証明書１１１の形式を識別するバージョンの番号を示す。
「シリアル番号」は、公開鍵証明書１１１を識別する番号を示す。
「発行者」は、公開鍵証明書１１１を発行した発行局を示す。
「有効期間」は、公開鍵証明書１１１の有効期間を示す。
「サブジェクト」は、公開鍵証明書１１１を識別する名前を示す。例えば、「サブジェクト」は、国名、ユーザ名、組織名などを示す。
「サブジェクト鍵識別情報」は、サブジェクトが示す名前に相当する値を示す。例えば、サブジェクトが示す名前の要素に「ＪＰ」が含まれる場合、サブジェクト鍵識別情報には「ＪＰ」に相当する「２５４６＝ｃｏｕｎｔｒｙＮａｍｅ」が含まれる。
「公開鍵」は、公開鍵証明書１１１によって証明される公開鍵を示す。
「署名アルゴリズム情報」は、公開鍵証明書１１１の署名値の生成に用いられた署名アルゴリズムの情報を示す。
「署名値」は、公開鍵証明書１１１の所定の項目（例えば、公開鍵など）を対象として算出された署名値（公開鍵証明書１１１の署名値）を示す。
【００４２】
失効リスト１１２は、「バージョン番号」「発行者」「今回更新日時」「次回更新日時」「証明書リスト」「ＣＲＬ番号」「サブジェクト鍵識別情報」「署名アルゴリズム情報」「署名値」などの項目を含んだデータである。「署名値」を含んだ失効リスト１１２は署名データ１１０の一例である。
【００４３】
「バージョン番号」は、失効リスト１１２の形式を識別するバージョンの番号を示す。
「発行者」は、失効リスト１１２を発行した発行局を示す。
「今回更新日時」は、この失効リスト１１２が生成された日時を示す。
「次回更新日時」は、この失効リスト１１２が更新されて新たな失効リスト１１２が生成される日時を示す。
「証明書リスト」は、失効した公開鍵証明書の一覧（シリアル番号など）を示す。
「ＣＲＬ番号」は、この失効リスト１１２を識別する番号を示す。
「サブジェクト鍵識別情報」は、この失効リスト１１２を発行した発行局の公開鍵証明書に設定されたサブジェクト鍵識別情報を示す。
「署名アルゴリズム情報」は、失効リスト１１２の署名値の生成に用いられた署名アルゴリズムの情報を示す。
「署名値」は、失効リスト１１２の所定の項目（例えば、証明書リストなど）を対象として算出された署名値（失効リスト１１２の署名値）を示す。
【００４４】
図４は、実施の形態１におけるユーザ端末装置２００の機能構成図である。
実施の形態１におけるユーザ端末装置２００の機能構成について、図４に基づいて説明する。
【００４５】
ユーザ端末装置２００は、リクエスト生成部２１０、レスポンス表示部２２０、ユーザ端末通信部２３０およびユーザ端末記憶部２９０を備える。
【００４６】
リクエスト生成部２１０は、署名データ１１０を含んだ検証リクエスト１２０（図２参照）を生成する。
【００４７】
ユーザ端末通信部２３０は、ユーザ端末装置２００で使用するデータの通信を行う。
例えば、ユーザ端末通信部２３０は、リクエスト生成部２１０によって生成された検証リクエスト１２０を検証サーバ装置３００へ送信し、検証サーバ装置３００から検証レスポンス１３０を受信する。
【００４８】
レスポンス表示部２２０は、ユーザ端末通信部２３０によって受信された検証レスポンス１３０に含まれる検証結果値３９９を表示装置に表示する。
【００４９】
ユーザ端末記憶部２９０は、ユーザ端末装置２００で使用するデータを記憶する。
例えば、署名データ１１０、検証リクエスト１２０、検証レスポンス１３０は、ユーザ端末記憶部２９０に記憶されるデータの一例である。
また、ユーザまたはユーザ端末装置２００の公開鍵証明書はユーザ端末記憶部２９０に記憶されるデータの一例である（図示省略）。
【００５０】
図５は、実施の形態１における検証サーバ装置３００の機能構成図である。
実施の形態１における検証サーバ装置３００の機能構成について、図５に基づいて説明する。
【００５１】
検証サーバ装置３００（データ検証装置の一例）は、リクエスト検証部３１０、項目検証部３２０、リスク値算出部３３０、検証結果値算出部３４０、レスポンス生成部３５０、検証サーバ通信部３６０、検証情報定義部３８０および検証サーバ記憶部３９０を備える。
【００５２】
リクエスト検証部３１０は、検証リクエスト１２０（図２参照）に含まれる署名値を検証する。
【００５３】
レスポンス生成部３５０は、検証結果値３９９（データ信頼度の一例）を含んだ検証レスポンス１３０を生成する。
【００５４】
検証情報定義部３８０は、後述するリスク定義ファイル３９１、リスク値定義ファイル３９２または発行局定義ファイル３９３などの定義ファイルを生成する。
例えば、管理者は、定義ファイル（リスク定義ファイル３９１など）の設定値をキーボードやマウスなどの入力機器を用いて検証サーバ装置３００に入力する。検証情報定義部３８０は、入力された設定値を設定して定義ファイルを生成し、生成した定義ファイルを検証サーバ記憶部３９０に記憶する。
【００５５】
検証サーバ記憶部３９０（検証装置記憶部の一例）は、検証サーバ装置３００で使用するデータを記憶する。
例えば、後述するリスク定義ファイル３９１、リスク値定義ファイル３９２および発行局定義ファイル３９３は、検証サーバ記憶部３９０に記憶されるデータの一例である。また、検証リクエスト１２０や検証レスポンス１３０も検証サーバ記憶部３９０に記憶されるデータの一例である。
また、各発行局の公開鍵証明書、各発行局が発行したユーザまたは発行局の公開鍵証明書、各発行局が発行した公開鍵証明書の失効リスト（ＣＲＬ）は、検証サーバ記憶部３９０に記憶されるデータの一例である（図示省略）。
【００５６】
リスク定義ファイル３９１（検証項目データの一例）は、電子署名の署名値と電子署名の署名値以外の複数のデータ項目とを含んだ署名データ１１０（署名付きデータ）に含まれるデータ項目のうち検証対象のデータ項目を検証項目として示す。
リスク定義ファイル３９１は、電子署名の署名値を含んだ複数の検証項目を示すと共に検証項目毎に検証項目の種類をセキュリティリスク（項目種類の一例）として示す。
【００５７】
リスク値定義ファイル３９２（検証値データの一例）は、セキュリティリスク毎に当該セキュリティリスクに属する検証項目の検証結果に応じた数値をリスク値（検証値の一例）として示す。
【００５８】
発行局定義ファイル３９３は、公開鍵証明書を発行する発行局毎に発行局の信頼度を示す。
【００５９】
検証サーバ通信部３６０（署名付きデータ入力部、データ信頼度出力部の一例）は、署名データ１１０を含んだ検証リクエスト１２０をユーザ端末装置２００から受信する。
検証サーバ通信部３６０は、レスポンス生成部３５０によって生成された検証レスポンス１３０をユーザ端末装置２００へ送信する。
【００６０】
項目検証部３２０（項目検証部の一例）は、リスク定義ファイル３９１に基づいて署名データ１１０から署名値と検証項目とを抽出する。
項目検証部３２０は、抽出した署名値が正しいか否かを署名値の所定の検証方法で検証し、抽出した検証項目が正しいか否かを検証項目の所定の検証方法で検証する。
【００６１】
リスク値算出部３３０（検証値算出部の一例）は、リスク定義ファイル３９１に基づいて検証項目毎に項目種類を判定する。
リスク値算出部３３０は、リスク値定義ファイル３９２からセキュリティリスク（項目種類の一例）毎にリスク値（検証値の一例）を取得する。
リスク値算出部３３０は、各セキュリティリスクに属する検証項目の検証結果と各セキュリティリスクのリスク値とに基づいて署名データ１１０のリスク値を算出する。
【００６２】
検証結果値算出部３４０（信頼度算出部の一例）は、項目検証部３２０によって得られた署名値の検証結果と検証項目の検証結果とに基づいて署名データ１１０の信頼度を検証結果値３９９（データ信頼度の一例）として算出する。
【００６３】
例えば、検証結果値算出部３４０は、以下のように検証結果値３９９を算出する。
検証結果値算出部３４０は、リスク値算出部３３０によって算出された署名データ１１０のリスク値に基づいて検証結果値３９９を算出する。
検証結果値算出部３４０は、署名データ１１０のリスク値を用いて検証結果値３９９の所定の算出式を計算して検証結果値３９９を算出する。
【００６４】
図６、７は、実施の形態１におけるリスク定義ファイル３９１の一例を示す図である。
実施の形態１におけるリスク定義ファイル３９１について、図６、７に基づいて説明する。
【００６５】
リスク定義ファイル３９１は、リスク定義テーブル３９１ａ−ｃを含んだデータである。
リスク定義テーブル３９１ａ−ｃは、「検証項目」と「セキュリティリスク」とを対応付けて設定したデータである。
【００６６】
リスク定義テーブル３９１ａ（図６参照）は、署名データ１１０の検証項目毎にセキュリティリスクを示す。
リスク定義テーブル３９１ｂ（図７参照）は、公開鍵証明書の検証項目毎にセキュリティリスクを示す。
リスク定義テーブル３９１ｃ（図７参照）は、公開鍵証明書の失効リスト（ＣＲＬ）の検証項目毎にセキュリティリスクを示す。
【００６７】
「検証項目」は、検証対象となるデータ項目である。
【００６８】
「セキュリティリスク」は、検証項目が間違った値である場合にその間違いの種類を示す。
例えば、セキュリティリスクは、「記述ミス」「有効期間外」「アルゴリズムの危殆化」「公開鍵失効」「悪意ある情報の改ざん」などに分類することができる。署名データ１１０の信頼度に影響を与える度合い（影響度、重要度）はセキュリティリスクの分類によって異なる。
【００６９】
「記述ミス」は単なる誤記であり、署名データ１１０の信頼度に与える影響度は低いと考えられる。
「有効期間外」は有効期間を過ぎたことを意味し、当該データは有効期間を過ぎるまでは有効である。有効期間が過ぎてから経過した経過期間が短い場合（例えば、１日）、署名データ１１０の信頼度に与える影響度は中程度だと考えられる。経過時間が長い場合（例えば、１カ月）、署名データ１１０の信頼度に与える影響度は高いと考えられる。
「アルゴリズムの危殆化」は安全度の低いアルゴリズムが使用されたことを意味する。例えば、ＲＣ４やＤＥＳといったアルゴリズムは安全度の低いアルゴリズムであるが、１日や２日で解読できるとは考えにくいため、署名データ１１０の信頼度に与える影響度は中程度だと考えられる。
「公開鍵失効」は失効した公開鍵が使用されたことを意味し、署名データ１１０の信頼度に与える影響度は高いと考えられる。
「悪意ある情報の改ざん」は重要な項目が改ざんされたことを意味し、署名データ１１０の信頼度に与える影響度は高いと考えられる。
【００７０】
図８は、実施の形態１におけるリスク値定義ファイル３９２と発行局定義ファイル３９３との一例を示す図である。
実施の形態１におけるリスク値定義ファイル３９２と発行局定義ファイル３９３とについて、図８に基づいて説明する。
【００７１】
リスク値定義ファイル３９２は、「セキュリティリスク」毎に「基準リスク値」と「拡張リスク値」とを示すデータである。つまり、リスク値定義ファイル３９２は、「セキュリティリスク」と「基準リスク値」と「拡張リスク値」とを対応付けて設定したデータである。
【００７２】
「基準リスク値」は、当該セキュリティリスクに該当する検証項目が存在する場合のリスク値を示す。リスク値とは、署名データ１１０の検証結果値３９９を算出するための検証項目毎の数値である。
「拡張リスク値」は、当該セキュリティリスクに該当する検証項目が複数存在する場合のリスク値の係数を示す。つまり、拡張リスク値は基準リスク値に乗算する値である。「ｎ」は検証項目の数を表す。
【００７３】
例えば、リスク値は以下のように算出される。リスク値が高いほど安全度は低い。
「記述ミス」の検証項目が１つ存在した場合のリスク値は、基準リスク値を適用して「０．０２」である。
「記述ミス」の検証項目が３つ存在した場合のリスク値は、基準リスク値「０．０２」と拡張リスク値（階乗ｎ！）とを適用して「０．１２（＝０．０２×（１×２×３））」である。但し、「記述ミス」の拡張リスク値は「ｎ」や「１からｎまでの整数の和」などでもよい。
「有効期間外」や「アルゴリズムの危殆化」の検証項目が１つ存在した場合のリスク値は、基準リスク値を適用して「０．３」である。
「有効期間外」や「アルゴリズムの危殆化」の検証項目が３つ存在した場合のリスク値は、基準リスク値「０．３」と拡張リスク値「ｎ」とを適用して「０．９（＝０．３×３）」である。但し、「有効期間外」の拡張リスク値は「ｎ！」や「１からｎまでの整数の和」などでもよい。
「公開鍵失効」や「悪意ある情報の改ざん」の検証項目が１つでも存在する場合、リスク値は基準リスク値を適用して「１．０」である。
【００７４】
「有効期間外」は有効期間後に経過した経過時間の時間長の範囲毎に設定してもよい。経過時間の時間長が長いほど基準リスク値および拡張リスク値は高くなる。
例えば、経過時間が１日未満である場合の基準リスク値を「０．１」とし、経過時間が１日以上１週間未満である場合の基準リスク値を「０．３」とし、経過時間が１週間以上である場合の基準リスク値を「１．０」とする。
この場合、検証サーバ装置３００のリスク値算出部３３０は経過時間を算出し、算出した経過時間に対応する基準リスク値および拡張リスク値をリスク値定義ファイル３９２から取得し、取得した基準リスク値と拡張リスク値とに基づいてリスク値を算出する。
【００７５】
「アルゴリズムの危殆化」はアルゴリズムと有効期間後に経過した経過時間の時間長の範囲との組み合わせ毎に設定してもよい。アルゴリズムの安全度が高く経過時間の時間長が長いほど基準リスク値および拡張リスク値は高くなる。
例えば、ＲＣ４やＤＥＳといった安全度の低いアルゴリズム（解読に要する解読時間が短いアルゴリズム）であっても経過時間が１日未満である場合の基準リスク値を「０．１」とする。また、経過時間が１日以上２日未満である場合の基準リスク値を「０．３」とし、経過時間が２日以上である場合の基準リスク値を「１．０」とする。
この場合、検証サーバ装置３００のリスク値算出部３３０は経過時間を算出し、算出した経過時間とアルゴリズムとに対応する基準リスク値および拡張リスク値をリスク値定義ファイル３９２から取得し、取得した基準リスク値と拡張リスク値とに基づいてリスク値を算出する。
【００７６】
発行局定義ファイル３９３は、「発行局」と「審査方法」との組み合わせ毎に「信頼度」を示すデータである。つまり、発行局定義ファイル３９３は、「発行局」と「審査方法」と「信頼度」とを対応付けて設定したデータである。
【００７７】
「発行局」は、公開鍵証明書を発行する発行局が信頼できる発行局であるか否かを示す。以下、信頼できる発行局を「登録発行局」といい、信頼できる発行局以外の発行局を「未登録発行局」という。
「審査方法」は、公開鍵証明書を発行するための審査手続きの方法として「オンライン」または「オフライン」を示す。
「信頼度」は、公開鍵証明書の信頼度を示す。値が大きいほど信頼度は高い。
【００７８】
図９は、実施の形態１におけるユーザ端末装置２００の検証依頼処理を示すフローチャートである。
実施の形態１におけるユーザ端末装置２００の検証依頼処理について、図９に基づいて説明する。
【００７９】
Ｓ１１０において、リクエスト生成部２１０は、ユーザ端末記憶部２９０から署名データ１１０を取得し、取得した署名データ１１０を含んだ検証リクエスト１２０（図２参照）を生成する。
Ｓ１１０の後、Ｓ１２０に進む。
【００８０】
Ｓ１２０において、ユーザ端末通信部２３０は、Ｓ１１０で生成された検証リクエスト１２０を検証サーバ装置３００へ送信する。
【００８１】
検証サーバ装置３００は、検証リクエスト１２０を受信し、受信した検証リクエスト１２０に含まれる署名データ１１０を検証し、署名データ１１０の検証結果値３９９を含んだ検証レスポンス１３０を送信する。検証レスポンス１３０は、検証リクエスト１２０（図２参照）と同様に署名値を含む。
Ｓ１２０の後、Ｓ１３０に進む。
【００８２】
Ｓ１３０において、ユーザ端末通信部２３０は、検証サーバ装置３００から送信された検証レスポンス１３０を受信する。
Ｓ１３０の後、Ｓ１４０に進む。
【００８３】
Ｓ１４０において、レスポンス表示部２２０は、Ｓ１３０で受信された検証レスポンス１３０に含まれる署名値を所定の署名（検証）アルゴリズムに従って検証する。例えば、検証レスポンス１３０に署名アルゴリズムを指定する情報を設定する。
【００８４】
署名値が正しい場合、レスポンス表示部２２０は、検証レスポンス１３０に含まれる検証結果値３９９を表示装置に表示する。
【００８５】
ユーザは、表示装置に表示された検証結果値３９９を参照し、署名データ１１０が信頼できるデータであるか否かを判断する。
検証結果値３９９については後述する。
Ｓ１４０により、ユーザ端末装置２００の検証依頼処理は終了する。
【００８６】
図１０は、実施の形態１における検証サーバ装置３００のデータ検証処理を示すフローチャートである。
実施の形態１における検証サーバ装置３００のデータ検証処理（データ検証方法の一例）について、図１０に基づいて説明する。
【００８７】
Ｓ２１０において、ユーザ端末装置２００は、署名データ１１０を含んだ検証リクエスト１２０（図２参照）を送信する。
検証サーバ装置３００の検証サーバ通信部３６０は、ユーザ端末装置２００から送信された検証リクエスト１２０を受信する。
Ｓ２１０の後、Ｓ２２０に進む。
【００８８】
Ｓ２２０において、リクエスト検証部３１０は、Ｓ２１０で受信された検証リクエスト１２０に含まれる署名値を所定の署名（検証）アルゴリズムに従って検証する。例えば、検証リクエスト１２０に署名アルゴリズムを指定する情報を設定する。
署名値が正しい場合、Ｓ２３０に進む。
署名値が正しくない場合、レスポンス生成部３５０が検証エラーを示す検証レスポンス１３０を生成し、検証サーバ通信部３６０が検証エラーを示す検証レスポンス１３０をユーザ端末装置２００へ送信し、検証サーバ装置３００のデータ検証処理は終了する（図示省略）。
【００８９】
Ｓ２３０において、項目検証部３２０は、Ｓ２１０で受信された検証リクエスト１２０から署名データ１１０を取得する。
項目検証部３２０は、検証サーバ記憶部３９０に記憶されたリスク定義ファイル３９１を参照し、リスク定義ファイル３９１に示される検証項目毎に検証項目の値を署名データ１１０から取得する。
項目検証部３２０は、検証項目毎に検証項目の値を所定の検証方法に従って検証して検証項目が正しいか否かを判定する。検証方法の具体例について別途説明する。
Ｓ２３０の後、Ｓ２４０に進む。
【００９０】
Ｓ２４０において、リスク値算出部３３０は、リスク定義ファイル３９１に基づいて検証項目毎にセキュリティリスクを判定し、リスク値定義ファイル３９２からセキュリティリスク毎にリスク値を取得し、各セキュリティリスクに属する検証項目の検証結果と各セキュリティリスクのリスク値とに基づいて署名データ１１０のリスク値を算出する。
【００９１】
例えば、リスク値算出部３３０は、以下のように、署名データ１１０のリスク値を算出する。
リスク値算出部３３０は、Ｓ２３０の検証結果に基づいて、正しくない検証項目（以下、「不正項目」という）を判定する。
リスク値算出部３３０は、不正項目毎に不正項目のセキュリティリスクをリスク定義ファイル３９１を参照して判定する。
リスク値算出部３３０は、セキュリティリスク毎に不正項目の数を算出する。
リスク値算出部３３０は、セキュリティリスク毎にセキュリティリスクの基準リスク値と拡張リスク値（または拡張リスク値を識別する情報）とをリスク値定義ファイル３９２から取得する。
リスク値算出部３３０は、セキュリティリスク毎に不正項目の数と基準リスク値と拡張リスク値とに基づいてセキュリティリスクのリスク値を算出する。
リスク値算出部３３０は、各セキュリティリスクのリスク値に基づいて署名データ１１０のリスク値を算出する。
【００９２】
例えば、図８に示すリスク値定義ファイル３９２に基づいて、各セキュリティリスクのリスク値は以下の通りである。
「記述ミス」の不正項目が１つ存在する場合、「記述ミス」のリスク値は基準リスク値を適用して「０．０２」である。
「記述ミス」の不正項目が３つ存在する場合、「記述ミス」のリスク値は基準リスク値「０．０２」と拡張リスク値（階乗ｎ！）とを適用して「０．１２（＝０．０２×（１×２×３））」である。但し、「記述ミス」の拡張リスク値は「ｎ」や「１からｎまでの整数の和」などでもよい。
「有効期間外」または「アルゴリズムの危殆化」の不正項目が１つ存在する場合、「有効期間外」または「アルゴリズムの危殆化」のリスク値は、基準リスク値を適用して「０．３」である。
「有効期間外」または「アルゴリズムの危殆化」の不正項目が３つ存在する場合、「有効期間外」または「アルゴリズムの危殆化」のリスク値は、基準リスク値「０．３」と拡張リスク値「ｎ」とを適用して「０．９（＝０．３×３）」である。但し、「有効期間外」の拡張リスク値は「ｎ！」や「１からｎまでの整数の和」などでもよい。
「公開鍵失効」または「悪意ある情報の改ざん」の不正項目が１つ以上存在する場合、「公開鍵失効」または「悪意ある情報の改ざん」のリスク値は基準リスク値を適用して「１．０」である。
【００９３】
例えば、リスク値算出部３３０は、各セキュリティリスクのリスク値を合計した値を署名データ１１０のリスク値として算出する。また、リスク値算出部３３０は、各セキュリティリスクのリスク値のうち最も大きいリスク値を署名データ１１０のリスク値として選択してもよい。
但し、署名データ１１０のリスク値の上限値（例えば、「１．０」）を設けてもよい。例えば、各セキュリティリスクのリスク値を合計した値（または選択したリスク値）が「１．０」以上である場合、署名データ１１０のリスク値は「１．０」である。
また、「公開鍵失効」または「悪意ある情報の改ざん」の不正項目が少なくとも１つ存在する場合、「公開鍵失効」または「悪意ある情報の改ざん」の不正項目の数または他のセキュリティリスク「記述ミス」「有効期間外」の不正項目の数に関係無く、署名データ１１０のリスク値は「１．０」である。
【００９４】
さらに、リスク値算出部３３０は、署名データ１１０の証明書チェーンを構成する複数の公開鍵証明書を検証サーバ記憶部３９０から検索し、検索結果に基づいて証明書チェーンの信頼度を発行局定義ファイル３９３から取得する。
【００９５】
例えば、リスク値算出部３３０は、以下のように証明書チェーンの信頼度を取得する。
【００９６】
署名データ１１０の証明書チェーンとは、署名データ１１０の公開鍵証明書（または署名データ１１０として検証リクエスト１２０に設定された公開鍵証明書）を含んだ一連の公開鍵証明書である。
署名データ１１０の公開鍵証明書とは、署名データ１１０に設定された「公開鍵証明書情報」の「発行者名」「シリアル番号」によって識別される公開鍵証明書である。
リスク値算出部３３０は、署名データ１１０の公開鍵証明書（または署名データ１１０として設定された公開鍵証明書）を発行した発行局から最上位（ルート）の発行局までの一連の発行局が発行した複数の公開鍵証明書を各公開鍵証明書の「公開鍵証明書情報」に基づいて検証サーバ記憶部３９０から検索する。こうして、検証サーバ記憶部３９０から検索する複数の公開鍵証明書が証明書チェーンである。
【００９７】
各発行局が発行した全ての公開鍵証明書は、信頼できる発行局（登録発行局）によって発行された公開鍵証明書と、登録発行局以外の発行局（未登録発行局）によって発行された公開鍵証明書とに分けて、検証サーバ記憶部３９０に予め記憶しておく。
さらに、登録発行局によって発行された公開鍵証明書は、オンライン審査を経て発行された公開鍵証明書と、オフライン審査を経て発行された公開鍵証明書とに分けて、検証サーバ記憶部３９０に予め記憶しておく。
以下、登録発行局のオンライン審査を経て発行された公開鍵証明書を「オンライン証明書」といい、登録発行局のオフライン審査を経て発行された公開鍵証明書を「オフライン証明書」といい、未登録発行局によって発行された公開鍵証明書を「未登録証明書」という。
【００９８】
リスク値算出部３３０は、証明書チェーンを構成する公開鍵証明書毎に公開鍵証明書の検索結果に基づいて公開鍵証明書に対応する信頼度を発行局定義ファイル３９３から取得する。
図８に示す発行局定義ファイル３９３の場合、オンライン証明書の信頼度は「登録発行局」と「オンライン」とに対応する「３」である。同様に、オフライン証明書の信頼度は「５」であり、未登録証明書の信頼度は「１」である。
リスク値算出部３３０は、取得した複数の信頼度のうち最も低い信頼度を証明書チェーンの信頼度として判定する。
例えば、証明書チェーンを構成する全ての公開鍵証明書がオフライン証明書である場合、証明書チェーンの信頼度はオフライン証明書の信頼度「５」である。
また、証明書チェーンがオンライン証明書とオフライン証明書と未登録証明書とを含む場合、証明書チェーンの信頼度は、最も低い「未登録発行局」の信頼度「１」である。
但し、リスク値算出部３３０は、取得した複数の信頼度のうち最も高い信頼度を証明書チェーンの信頼度として判定してもよいし、取得した複数の信頼度に基づいて証明書チェーンの信頼度（例えば、平均値）を算出してもよい。
【００９９】
Ｓ２４０の後、Ｓ２５０に進む。
【０１００】
Ｓ２５０において、検証結果値算出部３４０は、Ｓ２４０で得られた署名データ１１０のリスク値と証明書チェーンの信頼度とに基づいて、署名データ１１０の検証結果値３９９を算出する。
【０１０１】
例えば、検証結果値算出部３４０は、署名データ１１０のリスク値と証明書チェーンの信頼度とを代入して以下の算出式（１）を計算し、署名データ１１０の検証結果値３９９を算出する。
【０１０２】
検証結果値３９９＝（１．０−リスク値）×（証明書チェーンの信頼度）・・・式（１）
【０１０３】
但し、（１．０−リスク値）と（証明書チェーンの信頼度）とを四則演算した値（例えば、足し算した値）を検証結果値３９９にしてもよい。
また、（リスク値）と（証明書チェーンの信頼度）とを四則演算した値を検証結果値３９９にしてもよい。
さらに、（１．０−リスク値）（リスク値）または（証明書チェーンの信頼度）を検証結果値３９９にしてもよい。
【０１０４】
Ｓ２５０の後、Ｓ２６０に進む。
【０１０５】
Ｓ２６０において、レスポンス生成部３５０は、Ｓ２５０で算出した検証結果値３９９を含んだ検証レスポンス１３０を生成する。
このとき、レスポンス生成部３５０は、検証結果値３９９を含んだ所定の項目を対象として所定の署名アルゴリズムによって署名値を算出し、算出した署名値を検証レスポンス１３０に設定する。
Ｓ２６０の後、Ｓ２７０に進む。
【０１０６】
Ｓ２７０において、検証サーバ通信部３６０は、Ｓ２６０で生成された検証レスポンス１３０をユーザ端末装置２００へ送信する。
Ｓ２７０により、検証サーバ装置３００のデータ検証処理は終了する。
【０１０７】
上記のＳ２３０（図１０参照）において、項目検証部３２０は、以下のような検証を行う。
【０１０８】
例えば、項目検証部３２０は、図６、７に示した署名データ１１０、公開鍵証明書、失効リストの検証項目「コンテンツタイプ」、「元データタイプ」、「属性タイプ」、「ＣＲＬ番号」、「バージョン番号」を以下のように検証し、各検証項目が正しいか否かを判定する。
【０１０９】
「コンテンツタイプ」、「元データタイプ」、「属性タイプ」、「ＣＲＬ番号」、各種の「バージョン番号」の正しい値を一覧にした一覧ファイルを検証サーバ記憶部３９０に予め記憶しておく。
項目検証部３２０は、これら検証項目の値が一覧ファイルに設定されているいずれかの値と一致する場合に検証項目が正しいと判定し、これら検証項目の値が一覧ファイルに設定されているいずれの値とも一致しない場合に検証項目が正しくないと判定する。
【０１１０】
例えば、項目検証部３２０は、図６に示した署名データ１１０の各検証項目を以下のように検証し、各検証項目が正しいか否かを判定する。
【０１１１】
項目検証部３２０は、「署名アルゴリズム情報」が示す署名（検証）アルゴリズムに従って署名データ１１０の「署名値」が正しいか否かを判定する。
【０１１２】
例えば、項目検証部３２０は、以下のように「署名値」を検証する。
項目検証部３２０は「公開鍵証明書情報」で識別される公開鍵証明書を検証サーバ記憶部３９０から取得する。
項目検証部３２０は、「署名アルゴリズム情報」が示す署名アルゴリズムに従って公開鍵証明書に含まれる公開鍵を用いて署名データ１１０の「署名値」を復号する。
項目検証部３２０は、「元データ」を含む所定の検証項目を対象として「署名アルゴリズム情報」が示すハッシュ関数を計算してハッシュ値を算出する。
項目検証部３２０は、算出したハッシュ値と「署名値」を復号した値とが一致する場合に「署名値」が正しいと判定する。ハッシュ値と「署名値」を復号した値とが一致しない場合、項目検証部３２０は「署名値」が正しくないと判定する。
【０１１３】
項目検証部３２０は、「元データ」を含む所定の検証項目を対象として「ハッシュアルゴリズム情報」が示すハッシュ関数を計算してハッシュ値を算出する。
項目検証部３２０は、算出したハッシュ値と「属性データ」に設定されているハッシュ値とが一致する場合に「元データ」および「属性データ」が正しいと判定する。ハッシュ値が一致しない場合、項目検証部３２０は「元データ」および「属性データ」が正しくないと判定する。
【０１１４】
項目検証部３２０は、検証サーバ記憶部３９０を検索し、「公開鍵証明書情報」で識別される公開鍵証明書が登録発行局によって発行された公開鍵証明書であるか否かを判定する。
さらに、項目検証部３２０は、「公開鍵証明書情報」で識別される公開鍵証明書が失効しているか否かを判定する。つまり、項目検証部３２０は、公開鍵証明書情報の「発行者名」で識別される発行局の失効リストを検証サーバ記憶部３９０から取得し、取得した失効リストに公開鍵証明書情報の「シリアル番号」が設定されているか否かを判定する。
「公開鍵証明書情報」で識別される公開鍵証明書が登録発行局によって発行されて失効していない公開鍵証明書である場合、項目検証部３２０は、「公開鍵証明書情報」が正しいと判定する。それ以外の場合、項目検証部３２０は「公開鍵証明書情報」が正しくないと判定する。
【０１１５】
ハッシュアルゴリズム（ハッシュ関数）または署名アルゴリズム毎にアルゴリズムが安全か否かを示す一覧ファイルを検証サーバ記憶部３９０に予め記憶しておく。例えば、一覧ファイルは、ハッシュ関数「ＳＨＡ２」「ＳＨＡ５１２」が安全であり、ハッシュ関数「ＳＨＡ１」「ＲＣ４」が安全でないことを示す。
項目検証部３２０は、「ハッシュアルゴリズム情報」または「署名アルゴリズム情報」によって識別されるアルゴリズムが安全であるか否かを一覧ファイルを参照して判定する。
アルゴリズムが安全である場合、項目検証部３２０は検証項目が正しいと判定し、アルゴリズムが安全でない場合、項目検証部３２０は検証項目が正しくないと判定する。
【０１１６】
例えば、項目検証部３２０は、図７に示した公開鍵証明書の各検証項目を以下のように検証し、各検証項目が正しいか否かを判定する。
【０１１７】
項目検証部３２０は、署名データ１１０（図６参照）の「公開鍵証明書情報」と同様に「発行者」と「シリアル番号」とが正しいか否かを判定する。
【０１１８】
項目検証部３２０は、「有効期間」に示される日時と現在の日時とを比較する。
現在の日時が「有効期間」に示される日時を過ぎていない場合、項目検証部３２０は「有効期間」が正しいと判定し、現在の日時が「有効期間」に示される日時を過ぎている場合、項目検証部３２０は「有効期間」が正しくないと判定する。
【０１１９】
項目検証部３２０は、「発行者」「シリアル番号」で識別される公開鍵証明書を検証サーバ記憶部３９０から取得し、取得した公開鍵証明書と「サブジェクト」「サブジェクト鍵識別情報」を比較する。
「サブジェクト」「サブジェクト鍵識別情報」が一致する場合、項目検証部３２０は、「サブジェクト」「サブジェクト鍵識別情報」が正しいと判定する。「サブジェクト」「サブジェクト鍵識別情報」が一致しない場合、項目検証部３２０は、「サブジェクト」「サブジェクト鍵識別情報」が正しくないと判定する。
【０１２０】
項目検証部３２０は、「発行者」で識別される発行局が発行した公開鍵証明書の失効リストを検証サーバ記憶部３９０から取得する。
項目検証部３２０は、公開鍵証明書の失効リストに「シリアル番号」の値が設定されているか否かを判定する。
公開鍵証明書の失効リストに「シリアル番号」の値が設定されている場合、項目検証部３２０は「公開鍵」を正しくないと判定し、公開鍵証明書の失効リストに「シリアル番号」の値が設定されていない場合、項目検証部３２０は「公開鍵」を正しいと判定する。
【０１２１】
項目検証部３２０は、所定の署名（検証）アルゴリズムに従って公開鍵証明書の「署名値」が正しいか否かを判定する。例えば、公開鍵証明書に署名アルゴリズムを指定する情報を設定する。
【０１２２】
例えば、項目検証部３２０は、以下のように「署名値」を検証する。
項目検証部３２０は「発行者」で識別される発行局の公開鍵証明書を検証サーバ記憶部３９０から取得する。
項目検証部３２０は、署名アルゴリズムに従って発行局の公開鍵証明書に含まれる公開鍵を用いて検証対象の公開鍵証明書の「署名値」を復号する。
項目検証部３２０は、「公開鍵」を含む所定の検証項目を対象として所定のハッシュ関数を計算してハッシュ値を算出する。
項目検証部３２０は、算出したハッシュ値と「署名値」を復号した値とが一致する場合に「署名値」が正しいと判定する。ハッシュ値と「署名値」を復号した値とが一致しない場合、項目検証部３２０は「署名値」が正しくないと判定する。
【０１２３】
例えば、項目検証部３２０は、図７に示した公開鍵証明書の失効リストの各検証項目を以下のように検証し、各検証項目が正しいか否かを判定する。
【０１２４】
項目検証部３２０は、検証サーバ記憶部３９０を検索し、「発行者」で識別される発行局の失効リストが検証サーバ記憶部３９０に記憶されているか否かを判定する。
「発行者」で識別される発行局の失効リストが検証サーバ記憶部３９０に記憶されている場合、項目検証部３２０は「発行者」が正しいと判定する。「発行者」で識別される発行局の失効リストが検証サーバ記憶部３９０に記憶されていない場合、項目検証部３２０は「発行者」が正しくないと判定する。
【０１２５】
項目検証部３２０は、「今回更新日時」「次回更新日時」に示される年月日と現在の年月日とを比較する。
現在の年月日が「今回更新日時」から「次回更新日時」までの期間内の日時である場合、項目検証部３２０は「今回更新日時」「次回更新日時」が正しいと判定し、現在の年月日が「今回更新日時」から「次回更新日時」までの期間内の日時でない場合、項目検証部３２０は「今回更新日時」「次回更新日時」が正しくないと判定する。
【０１２６】
項目検証部３２０は、「失効情報リスト発行者」で識別される発行局の公開鍵証明書を検証サーバ記憶部３９０から取得し、取得した公開鍵証明書と「サブジェクト鍵識別情報」を比較する。
「サブジェクト鍵識別情報」が一致する場合、項目検証部３２０は「サブジェクト鍵識別情報」が正しいと判定する。「サブジェクト鍵識別情報」が一致しない場合、項目検証部３２０は「サブジェクト鍵識別情報」が正しくないと判定する。
【０１２７】
図１１は、実施の形態１におけるユーザ端末装置２００および検証サーバ装置３００のハードウェア資源の一例を示す図である。
図１１において、ユーザ端末装置２００および検証サーバ装置３００（コンピュータの一例）は、ＣＰＵ９０１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を備えている。ＣＰＵ９０１は、バス９０２を介してＲＯＭ９０３、ＲＡＭ９０４、通信装置９０５、ディスプレイ９１１（表示装置）、キーボード９１２、マウス９１３、ドライブ装置９１４、磁気ディスク装置９２０などのハードウェアデバイスと接続され、これらのハードウェアデバイスを制御する。ドライブ装置９１４は、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）などの記憶媒体を読み書きする装置である。
ＲＯＭ９０３、ＲＡＭ９０４、磁気ディスク装置９２０およびドライブ装置９１４は記憶装置の一例である。キーボード９１２、マウス９１３および通信装置９０５は入力装置の一例である。ディスプレイ９１１および通信装置９０５は出力装置の一例である。
【０１２８】
通信装置９０５は、有線または無線で、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネット、電話回線などの通信網に接続している。
【０１２９】
磁気ディスク装置９２０には、ＯＳ９２１（オペレーティングシステム）、プログラム群９２２、ファイル群９２３が記憶されている。
【０１３０】
プログラム群９２２には、実施の形態において「〜部」として説明する機能を実行するプログラムが含まれる。プログラム（例えば、データ検証プログラム）は、ＣＰＵ９０１により読み出され実行される。すなわち、プログラムは、「〜部」としてコンピュータを機能させるものであり、また「〜部」の手順や方法をコンピュータに実行させるものである。
【０１３１】
ファイル群９２３には、実施の形態において説明する「〜部」で使用される各種データ（入力、出力、判定結果、計算結果、処理結果など）が含まれる。
【０１３２】
実施の形態において構成図およびフローチャートに含まれている矢印は主としてデータや信号の入出力を示す。
フローチャートなどに基づいて説明する実施の形態の処理はＣＰＵ９０１、記憶装置、入力装置、出力装置などのハードウェアを用いて実行される。
【０１３３】
実施の形態において「〜部」として説明するものは「〜回路」、「〜装置」、「〜機器」であってもよく、また「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ファームウェア、ソフトウェア、ハードウェアまたはこれらの組み合わせのいずれで実装されても構わない。
【０１３４】
実施の形態１において、例えば、以下のようなデータ検証システム１００について説明した。
データ検証システム１００が署名データや公開鍵証明書の検証結果を数値化することで、利用者はより信頼性の高い公開鍵証明書チェーンや公開鍵証明書を選択することが可能となる。また、有効期限切れ等のリスクがある場合であっても、検証結果の数値がしきい値を下回っていない限り、利用者もしくはシステムが適切な署名データ１１０や公開鍵証明書だと判断する柔軟な仕組みを構築することができる。
【０１３５】
検証サーバ装置３００はユーザ端末装置２００から送付された検証対象情報（署名データ１１０）を判定し、その判定結果を元に検証結果を数値化する。
検証サーバ装置３００が検証結果を数値化しているため、利用者はより結果の良い（数値が高い）署名データや公開鍵証明書を選別することができる。
複数の証明書チェーンがある場合、利用者は、数値化された検証結果を判断基準として証明書チェーンを選択することができる。
従来、有効期限が１秒過ぎるなど少しでも危険であれば、署名データや公開鍵証明書を危険と判断するしかなかった。実施の形態のデータ検証システム１００は利用者に数値情報を伝えることが可能で、検証結果の数値の範囲分だけ情報量を増加することができる。これにより、署名データや公開鍵証明書が危険であるか否かの判断を必要に応じて詳細に設定することができる。
【０１３６】
検証サーバ装置３００はユーザ端末装置２００から送付された署名データ１１０および公開鍵証明書の内部情報の検証結果を数値化して総合結果（リスク値、検証結果値３９９）を得る。
総合結果は、単純に数値を和で計算するのではなく、署名データ１１０の改ざんなどセキュリティリスクとして致命的なものは数値を０とするなど、セキュリティリスクを考慮する。また、検証結果の数値化は項目毎に計算方法が異なる。
検証サーバ装置３００はセキュリティリスクに応じた数値を計算する。例えば、検証サーバ装置３００は、致命的な誤りがある場合は低い数値を出力し、融通が利く場合（致命的でない場合）は中程度の数値を出力し、信頼できる場合は高い数値を出力する。これにより、利用者は判断基準の精度を高く保てる。
【０１３７】
検証サーバ装置３００は、基準リスク値と拡張リスク値とを持ち、検証結果から複数の誤りに対応した計算処理を行う。
基準リスク値は、セキュリティリスクに応じてあらかじめ定義した数値である。拡張リスク値は複数回誤りが発生した場合の数値である。双方を計算することでリスク値が算出される。
複数回誤りを重大なミスとして扱うことにより、検証結果のより厳密な表現が可能となる。
【０１３８】
実施の形態２．
実施の形態１と異なる検証結果値３９９の算出方法について説明する。
以下、実施の形態１と異なる事項について主に説明する。説明しない事項は実施の形態１と同様である。
【０１３９】
実施の形態２では、実施の形態１によって算出される検証結果値３９９を署名データ１１０の検証値として扱い、署名データ１１０の検証値に基づいて検証結果値３９９を決定する。
【０１４０】
データ検証システム１００のシステム構成、ユーザ端末装置２００の機能構成および検証サーバ装置３００の機能構成は、実施の形態１と同様である（図１、４、５参照）。
【０１４１】
但し、検証サーバ装置３００の検証サーバ記憶部３９０は、検証結果値定義ファイル３９４（信頼度データの一例）を予め記憶する。
検証結果値定義ファイル３９４は、署名データ１１０の検証値の範囲毎に検証結果値３９９（データ信頼度の一例）を示す。
【０１４２】
図１２は、実施の形態２における検証結果値定義ファイル３９４の一例を示す図である。
実施の形態２における検証結果値定義ファイル３９４について、図１２に基づいて説明する。
【０１４３】
検証結果値定義ファイル３９４は、５段階に分けた「検証値」と「検証結果値」とを対応付けて設定したデータである。但し、「検証値」「検証結果値」は２から４段階または６段階以上に分けても構わない。
【０１４４】
例えば、検証値が「０以上２未満」である場合、検証結果値３９９は、署名データ１１０の信頼度として「危険」を表す数値「５」である。
検証結果値３９９は、文字列（例えば「危険」）であっても構わない。
【０１４５】
ユーザ端末装置２００の検証依頼処理、検証サーバ装置３００のデータ検証処理は実施の形態１と同様である（図９、１０参照）。
【０１４６】
但し、データ検証処理（図１０参照）のＳ２５０において、検証結果値算出部３４０は、実施の形態１で説明した検証結果値３９９の算出方法によって署名データ１１０の検証値を算出する。つまり、実施の形態１によって算出される検証結果値３９９は署名データ１１０の検証値として扱われる。
そして、検証結果値算出部３４０は、署名データ１１０の検証値に対応する検証結果値３９９を検証結果値定義ファイル３９４（図１２参照）から取得する。
【０１４７】
実施の形態２の別形態として、ユーザ端末装置２００が検証結果値定義ファイル３９４を記憶してもよい。
この場合、検証サーバ装置３００は、実施の形態１で説明した算出方法によって検証結果値３９９を算出し、算出した検証結果値３９９を含んだ検証レスポンス１３０をユーザ端末装置２００へ送信する。
ユーザ端末装置２００は、検証レスポンス１３０に含まれる検証結果値３９９を検証値として検証値に対応する検証結果値を検証結果値定義ファイル３９４から取得し、取得した検証結果値（数値または文字列）を表示する。
【０１４８】
実施の形態２において、例えば、以下のようなデータ検証システム１００について説明した。
【０１４９】
検証サーバ装置３００は、署名データ１１０および公開鍵証明書の内部情報の検証結果を数値化し、各内部情報の総合結果（検証値）を算出し、総合結果の数値に対応する結果の総括値（検証結果値３９９）を出力する。
例えば、総括値は、総合結果の数値を５分割した値であり、「検証成功（安全）」「ほぼ検証成功（ほぼ安全）」「警告（少し危険）」「かなり危険」または「危険」を示す。
これにより、利用者は署名データ１１０や公開鍵証明書の信頼度を容易に判断することができる。
【０１５０】
実施の形態３．
署名データ１１０のリスク値を検証サーバ装置３００とは別の装置で算出する形態について説明する。
以下、実施の形態１、２と異なる事項について主に説明する。説明しない事項については実施の形態１、２と同様である。
【０１５１】
＜実施例１＞
図１３は、実施の形態３（実施例１）におけるデータ検証システム１００のシステム構成図である。
実施の形態３（実施例１）におけるデータ検証システム１００のシステム構成について、図１３に基づいて説明する。
【０１５２】
データ検証システム１００は、ユーザ端末装置２００と検証サーバ装置３００との他に、定義端末装置４００を有する。
検証サーバ装置３００と定義端末装置４００とは、ＬＡＮやイントラネットなどのネットワークを介してデータ通信を行う。
【０１５３】
検証サーバ装置３００は、リスク値算出部３３０の代わりにリスク値取得部３７０を備える。
【０１５４】
リスク値取得部３７０は、各検証項目の検証結果を設定してリスク値リクエスト１４１を生成し、生成したリスク値リクエスト１４１を定義端末装置４００へ送信する。
リスク値取得部３７０は、署名データ１１０のリスク値を含んだリスク値レスポンス１４２を定義端末装置４００から受信する。
【０１５５】
定義端末装置４００は、検証サーバ装置３００の代わりにリスク値算出部４１０および検証情報定義部４８０を備える。
リスク値算出部４１０および検証情報定義部４８０の機能は、実施の形態１で説明した検証サーバ装置３００のリスク値算出部３３０および検証情報定義部３８０と同様である。
【０１５６】
定義端末装置４００は、定義端末通信部４２０および定義端末記憶部４９０を備える。
定義端末通信部４２０は、検証サーバ装置３００とデータ通信を行う。例えば、定義端末通信部４２０は、署名データ１１０のリスク値を要求するリスク値リクエスト１４１や署名データ１１０のリスク値を含んだリスク値レスポンス１４２を検証サーバ装置３００と通信する。
定義端末記憶部４９０は、定義端末装置４００で使用するデータを記憶する。実施の形態１で説明したリスク定義ファイル３９１、リスク値定義ファイル３９２および発行局定義ファイル３９３は、定義端末記憶部４９０に記憶されるデータの一例である。各発行局の公開鍵証明書、各発行局が発行したユーザまたは発行局の公開鍵証明書、各発行局が発行した公開鍵証明書の失効リスト（ＣＲＬ）は、定義端末記憶部４９０に記憶されるデータの一例である（図示省略）。
【０１５７】
定義端末装置４００は、ユーザ端末装置２００や検証サーバ装置３００と同様に、ＣＰＵ、記憶装置、入出力装置、通信装置などのハードウェアを備える（図１１参照）。
【０１５８】
図１４は、実施の形態３（実施例１）における検証サーバ装置３００のデータ検証処理を示すフローチャートである。
実施の形態３（実施例１）における検証サーバ装置３００のデータ検証処理について、図１４に基づいて説明する。
【０１５９】
検証サーバ装置３００は、実施の形態１で説明したＳ２４０（図１０参照）の代わりに、Ｓ２４１を実行する。
【０１６０】
Ｓ２４１において、リスク値取得部３７０は署名データ１１０とＳ２３０で得られた各検証項目の検証結果とを設定してリスク値リクエスト１４１を生成し、生成したリスク値リクエスト１４１を検証サーバ通信部３６０を介して定義端末装置４００へ送信する。
定義端末装置４００は、リスク値リクエスト１４１に基づいて署名データ１１０のリスク値と証明書チェーンの信頼度とを取得し、署名データ１１０のリスク値と証明書チェーンの信頼度とを含んだリスク値レスポンス１４２を検証サーバ装置３００へ送信する。
リスク値取得部３７０は、定義端末装置４００から送信されたリスク値レスポンス１４２を検証サーバ通信部３６０を介して受信し、受信したリスク値レスポンス１４２から署名データ１１０のリスク値と証明書チェーンの信頼度とを取得する。
【０１６１】
Ｓ２５０において、検証結果値算出部３４０は、Ｓ２４１で取得された署名データ１１０のリスク値と証明書チェーンの信頼度とに基づいて署名データ１１０の検証結果値３９９を算出する。
署名データ１１０の検証結果値３９９の算出方法は、実施の形態１または２と同じである。
【０１６２】
図１５は、実施の形態３（実施例１）における定義端末装置４００のリスク値応答処理を示すフローチャートである。
実施の形態３（実施例１）における定義端末装置４００のリスク値応答処理について、図１５に基づいて説明する。
【０１６３】
Ｓ３１０において、定義端末通信部４２０は、署名データ１１０と各検証項目の検証結果とを含んだリスク値リクエスト１４１を検証サーバ装置３００から受信する。
Ｓ３１０の後、Ｓ３２０に進む。
【０１６４】
Ｓ３２０において、リスク値算出部４１０は、リスク値リクエスト１４１から各検証項目の検証結果を取得し、取得した各検証項目の検証結果に基づいて署名データ１１０のリスク値を算出する。
署名データ１１０のリスク値の算出方法は、実施の形態１（図１０のＳ２４０）と同様である。
Ｓ３２０の後、Ｓ３２１に進む。
【０１６５】
Ｓ３２１において、リスク値算出部４１０は、リスク値リクエスト１４１から署名データ１１０を取得し、取得した署名データ１１０に基づいて証明書チェーンの信頼度を判定する。
証明書チェーンの信頼度の判定方法は、実施の形態１（図１０のＳ２４０）と同様である。
Ｓ３２１の後、Ｓ３３０に進む。
【０１６６】
Ｓ３３０において、リスク値算出部４１０は、Ｓ３２０で算出した署名データ１１０のリスク値とＳ３２１で判定された証明書チェーンの信頼度とを含んだリスク値レスポンス１４２を生成する。
定義端末通信部４２０は、生成されたリスク値レスポンス１４２を検証サーバ装置３００へ送信する。
Ｓ３３０により、定義端末装置４００のリスク値応答処理は終了する。
【０１６７】
＜実施例２＞
図１６は、実施の形態３（実施例２）におけるデータ検証システム１００のシステム構成図である。
実施の形態３（実施例２）におけるデータ検証システム１００のシステム構成について、図１６に基づいて説明する。
【０１６８】
データ検証システム１００は、実施の形態３の実施例１の構成（図１３参照）に加えて、調査端末装置５００を有する。
【０１６９】
定義端末装置４００と調査端末装置５００とは、ＬＡＮやイントラネットなどのネットワークを介してデータ通信を行う。
【０１７０】
調査端末装置５００は、証明書信頼度判定部５１０、調査端末通信部５２０、検証情報定義部５８０および調査端末記憶部５９０を備える。
【０１７１】
証明書信頼度判定部５１０は、署名データ１１０の証明書チェーンの信頼度を判定する。証明書チェーンの信頼度の判定方法は、実施の形態１（図１０のＳ２４０）と同様である。
【０１７２】
調査端末通信部５２０は、定義端末装置４００とデータ通信を行う。例えば、調査端末通信部５２０は、証明書チェーンの信頼度を要求する信頼度リクエスト１５１や証明書チェーンの信頼度を含んだ信頼度レスポンス１５２を定義端末装置４００と通信する。
【０１７３】
検証情報定義部５８０は、発行局定義ファイル３９３を生成する。
【０１７４】
調査端末記憶部５９０は、調査端末装置５００で使用するデータを記憶する。発行局定義ファイル３９３は調査端末記憶部５９０に記憶されるデータの一例である。
また、各発行局の公開鍵証明書、各発行局が発行したユーザまたは発行局の公開鍵証明書、各発行局が発行した公開鍵証明書の失効リスト（ＣＲＬ）は、調査端末記憶部５９０に記憶されるデータの一例である（図示省略）。
【０１７５】
検証サーバ装置３００のデータ検証処理は、実施の形態３の実施例１（図１４参照）と同じである。
【０１７６】
図１７は、実施の形態３（実施例２）における定義端末装置４００のリスク値応答処理を示すフローチャートである。
実施の形態３（実施例２）における定義端末装置４００のリスク値応答処理について、図１７に基づいて説明する。
【０１７７】
定義端末装置４００は、実施の形態３の実施例１（図１５参照）で説明したＳ３２１の代わりに、Ｓ３２２を実行する。
【０１７８】
Ｓ３２２において、リスク値算出部４１０は、リスク値リクエスト１４１から署名データ１１０を取得し、取得した署名データ１１０を設定した信頼度リクエスト１５１を生成する。
定義端末通信部４２０は、生成された信頼度リクエスト１５１を調査端末装置５００へ送信する。
調査端末装置５００は、信頼度リクエスト１５１に含まれる署名データ１１０に基づいて証明書チェーンの信頼度を判定し、判定した証明書チェーンの信頼度を含んだ信頼度レスポンス１５２を定義端末装置４００へ送信する。
定義端末通信部４２０は、調査端末装置５００から信頼度レスポンス１５２を受信する。
リスク値算出部４１０は、信頼度レスポンス１５２から証明書チェーンの信頼度を取得する。
【０１７９】
Ｓ３３０において、定義端末通信部４２０は、Ｓ３２０で算出された署名データ１１０のリスク値とＳ３２２で取得された証明書チェーンの信頼度とを含んだリスク値レスポンス１４２を検証サーバ装置３００へ送信する。
【０１８０】
図１８は、実施の形態３（実施例２）における調査端末装置５００の証明書信頼度応答処理を示すフローチャートである。
実施の形態３（実施例２）における調査端末装置５００の証明書信頼度応答処理について、図１８に基づいて以下に説明する。
【０１８１】
Ｓ４１０において、調査端末通信部５２０は、署名データ１１０を含んだ信頼度リクエスト１５１を定義端末装置４００から受信する。
Ｓ４１０の後、Ｓ４２０に進む。
【０１８２】
Ｓ４２０において、証明書信頼度判定部５１０は、信頼度リクエスト１５１から署名データ１１０を取得し、取得した署名データ１１０に基づいて証明書チェーンの信頼度を判定する。
証明書チェーンの信頼度の判定方法は、実施の形態１（図１０のＳ２４０）と同様である。
Ｓ４２０の後、Ｓ４３０に進む。
【０１８３】
Ｓ４３０において、証明書信頼度判定部５１０は、Ｓ４２０で判定した証明書チェーンの信頼度を含んだ信頼度レスポンス１５２を生成する。
調査端末通信部５２０は、生成された信頼度レスポンス１５２を定義端末装置４００へ送信する。
Ｓ４３０により、調査端末装置５００の証明書信頼度応答処理は終了する。
【０１８４】
実施の形態３により、実施の形態１、２で説明した検証サーバ装置３００の機能を定義端末装置４００や調査端末装置５００に移転し、検証サーバ装置３００の処理負荷を軽減することができる。
【０１８５】
検証サーバ装置３００の機能は実施例１や実施例２と異なる形態によって他の装置に移転しても構わない。
例えば、項目検証部３２０や検証結果値算出部３４０を定義端末装置４００または他の装置に移転してもよい。
【符号の説明】
【０１８６】
１００  データ検証システム、１０９  ネットワーク、１１０  署名データ、１１１  公開鍵証明書、１１２  失効リスト、１２０  検証リクエスト、１３０  検証レスポンス、１４１  リスク値リクエスト、１４２  リスク値レスポンス、１５１  信頼度リクエスト、１５２  信頼度レスポンス、２００  ユーザ端末装置、２１０  リクエスト生成部、２２０  レスポンス表示部、２３０  ユーザ端末通信部、２９０  ユーザ端末記憶部、３００  検証サーバ装置、３１０  リクエスト検証部、３２０  項目検証部、３３０  リスク値算出部、３４０  検証結果値算出部、３５０  レスポンス生成部、３６０  検証サーバ通信部、３７０  リスク値取得部、３８０  検証情報定義部、３９０  検証サーバ記憶部、３９１  リスク定義ファイル、３９１ａ，３９１ｂ，３９１ｃ  リスク定義テーブル、３９２  リスク値定義ファイル、３９３  発行局定義ファイル、３９４  検証結果値定義ファイル、３９９  検証結果値、４００  定義端末装置、４１０  リスク値算出部、４２０  定義端末通信部、４８０  検証情報定義部、４９０  定義端末記憶部、５００  調査端末装置、５１０  証明書信頼度判定部、５２０  調査端末通信部、５８０  検証情報定義部、５９０  調査端末記憶部、９０１  ＣＰＵ、９０２  バス、９０３  ＲＯＭ、９０４  ＲＡＭ、９０５  通信装置、９１１  ディスプレイ、９１２  キーボード、９１３  マウス、９１４  ドライブ装置、９２０  磁気ディスク装置、９２１  ＯＳ、９２２  プログラム群、９２３  ファイル群。
【図１】
2013062650.tif 000003
【図２】
2013062650.tif 000004
【図３】
2013062650.tif 000005
【図４】
2013062650.tif 000006
【図５】
2013062650.tif 000007
【図６】
2013062650.tif 000008
【図７】
2013062650.tif 000009
【図８】
2013062650.tif 000010
【図９】
2013062650.tif 000011
【図１０】
2013062650.tif 000012
【図１１】
2013062650.tif 000013
【図１２】
2013062650.tif 000014
【図１３】
2013062650.tif 000015
【図１４】
2013062650.tif 000016
【図１５】
2013062650.tif 000017
【図１６】
2013062650.tif 000018
【図１７】
2013062650.tif 000019
【図１８】
2013062650.tif 000020