(57)【要約】【課題】公開鍵基盤技術の安全性を保ちつつ，公開鍵証明書のサブジェクトに記載されている個体を特定することの可能なプライバシー情報を検証者側に知らせないようにしてネットワーク上での資格認証を実現すること。【解決手段】信頼できる第三者機関が運営する属性証明書検証装置のみがユーザの公開鍵証明書にアクセスできるような環境を用意し，検証者（本実施形態の例ではサービス提供装置１５０）は，資格を提示したユーザ（本実施形態の例では利用者装置１４０）から受信した属性証明書情報と署名データ情報とを属性証明書検証装置（本実施形態の例では符号１３０）に送信し，属性証明書検証装置に前記属性証明書の提示者の正当性の判断を依頼することで，検証者（例，サービス提供装置１５０）にユーザ（例，利用者装置１４０）の公開鍵証明書（特に，公開鍵証明書に含まれるプライバシー情報）を渡さない属性証明書検証方法である。【選択図】図１３
2006340178.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上でサービスを提供するサービス提供装置が，前記サービスを利用しようとするサブジェクトに関する属性情報を認証するための属性証明書検証方法であって，
前記サブジェクトが利用する利用者装置は，資格証明に必要なデータである署名対象データと，前記サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，前記サブジェクトの公開鍵証明書に結びついた属性証明書と，を含み，且つ前記サブジェクトの公開鍵証明書を含まない署名データを生成し，前記サービス提供装置に対して送信する署名データ送信ステップを実行し，
前記サービス提供装置は，前記利用者装置から前記署名データを受信し，前記署名データに含まれている署名対象データと，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書と，を含んだ検証要求データを生成し，前記属性証明書の検証を代行する属性証明書検証装置に対して前記検証要求データを送信する検証要求データ送信ステップを実行し，
前記属性証明書検証装置は，前記サービス提供装置から前記検証要求データを受信し，前記検証要求データに含まれている署名対象データと，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書と，前記属性証明書検証装置内に予め保管しておいた信頼のできる認証局装置の公開鍵証明書と，前記属性証明書の記載内容をもとに前記認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって前記属性証明書を提示した者の正当性の検証，および，前記検証要求データに含まれているサブジェクトの公開鍵証明書に結びついた属性証明書と，信頼のできる認証局の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって前記属性証明書の内容の正当性の検証を行い，前記属性証明書の検証結果を含んだ検証応答データを生成し，前記サービス提供装置に対して前記検証応答データを返信する属性証明書検証ステップを実行し，
前記サービス提供装置は，前記属性証明書検証装置から検証応答データを受信し，前記検証応答データに含まれている属性証明書の検証結果をもとに，サブジェクトの属性に関する認証結果を前記利用者装置に送信する属性認証結果送信ステップを実行する
ことを特徴とする属性証明書検証方法。
【請求項２】
ネットワーク上でサービスを提供するサービス提供装置が，前記サービスを利用しようとするサブジェクトに関する属性情報を認証するための属性証明書検証方法であって，
前記サブジェクトが利用する利用者装置は，資格証明に必要なデータである署名対象データと，前記サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，前記サブジェクトの公開鍵証明書に結びついた属性証明書と，を含み，且つ前記サブジェクトの公開鍵証明書を含まない署名データを生成し，前記サービス提供装置に対して送信する署名データ送信ステップを実行し，
前記サービス提供装置が，前記利用者装置から前記署名データを受信し，前記署名データに含まれている署名対象データのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書と，を含んだ検証要求データを生成し，属性証明書の検証を代行する属性証明書検証装置に対して前記検証要求データを送信する検証要求データ送信ステップを実行し，
前記属性証明書検証装置は，前記サービス提供装置から前記検証要求データを受信し，前記検証要求データに含まれている署名対象データのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書と，前記属性証明書検証装置内に予め保管しておいた信頼のできる認証局の公開鍵証明書と，前記属性証明書の記載内容をもとに認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書を提示した者の正当性の検証，および，当該検証要求データに含まれているサブジェクトの公開鍵証明書に結びついた属性証明書と，信頼のできる認証局の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書の内容の正当性の検証を行い，前記属性証明書の検証結果を含んだ検証応答データを生成し，前記サービス提供装置に対して前記検証応答データを返信する属性証明書検証ステップを実行し，
前記サービス提供装置は，前記属性証明書検証装置から検証応答データを受信し，前記検証応答データに含まれている属性証明書の検証結果をもとに，サブジェクトの属性に関する認証結果を前記利用者装置に送信する属性認証結果送信ステップを実行する
ことを特徴とする属性証明書検証方法。
【請求項３】
ネットワーク上でサービスを提供するサービス提供装置が，前記サービスを利用しようとするサブジェクトに関する属性情報を認証するための属性証明書検証装置であって，
前記サービス提供装置から検証要求データを受信する検証要求データ受信機能と，
信頼する認証局装置の公開鍵証明書を保管しておく信頼点情報管理機能と，
前記サービス提供装置から受信した検証要求データに含まれている署名対象データあるいは署名対象データのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書と，前記信頼点情報管理機能から取り出した信頼する認証局の公開鍵証明書と，前記属性証明書の記載内容をもとに認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認を行う属性証明書提示者正当性検証機能と，
前記検証要求データに含まれているサブジェクトの公開鍵証明書に結びついた属性証明書と，サービス提供装置が信頼する認証局の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認を行う属性証明書内容正当性検証機能と，
前記属性証明書の検証結果を含んだ検証応答データを生成する検証応答データ生成機能と，
前記サービス提供装置に対して前記検証応答データを返信する検証応答データ返信機能と，を有する
ことを特徴とする属性証明書検証装置。
【請求項４】
ネットワーク上でサービスを提供するサービス提供装置が，前記サービスを利用しようとするサブジェクトに関する属性情報を認証するための属性証明書検証方法であって，
前記サブジェクトが利用する利用者装置は，資格証明に必要なデータである署名対象データと，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報と，を含み，且つサブジェクトの公開鍵証明書および属性証明書を含まない署名データを生成し，前記サービス提供装置に対して送信する署名データ送信ステップを実行し，
前記サービス提供装置は，前記利用者装置から前記署名データを受信し，前記署名データに含まれている署名対象データと，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報と，前記サービス提供装置が信頼する認証局の公開鍵証明書と，を含んだ検証要求データを生成し，前記属性証明書の検証を代行する属性証明書検証装置に対して前記検証要求データを送信する検証要求データ送信ステップを実行し，
前記属性証明書検証装置は，前記サービス提供装置から検証要求データを受信し，前記検証要求データに含まれている署名対象データと，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報をもとに属性認証局装置から取得した属性証明書と，前記サービス提供装置が信頼する認証局装置の公開鍵証明書と，前記取得した属性証明書の記載内容をもとに前記認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書を提示した者の正当性の検証，および，前記取得した属性証明書と，前記検証要求データに含まれている前記サービス提供装置が信頼する認証局装置の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって前記属性証明書の内容の正当性の検証を行い，前記属性証明書の検証結果と，前記属性証明書あるいは前記属性証明書内に記載されている属性情報を含んだ検証応答データを生成し，前記サービス提供装置に対して前記検証応答データを返信する属性証明書検証ステップを実行し，
前記サービス提供装置は，前記属性証明書検証装置から前記検証応答データを受信し，前記検証応答データに含まれている属性証明書の検証結果と属性証明書に記載された属性情報をもとに，サブジェクトの属性に関する認証結果を前記利用者装置に送信する属性認証結果送信ステップを実行する
ことを特徴とする属性証明書検証方法。
【請求項５】
ネットワーク上でサービスを提供するサービス提供装置が，前記サービスを利用しようとするサブジェクトに関する属性情報を認証するための属性証明書検証方法であって，
前記サブジェクトが利用する利用者装置は，資格証明に必要なデータである署名対象データと，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報と，を含み，且つサブジェクトの公開鍵証明書および属性証明書を含まない署名データを生成し，前記サービス提供装置に対して送信する署名データ送信ステップを実行し，
前記サービス提供装置は，前記利用者装置から前記署名データを受信し，前記署名データに含まれている署名対象データのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報と，サービス提供装置が信頼する認証局装置の公開鍵証明書とを含んだ検証要求データを生成し，前記属性証明書の検証を代行する属性証明書検証装置に対して前記検証要求データを送信する検証要求データ送信ステップを実行し，
前記属性証明書検証装置は，前記サービス提供装置から検証要求データを受信し，前記検証要求データに含まれている署名対象データのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報をもとに属性認証局装置から取得した属性証明書と，前記サービス提供装置が信頼する認証局装置の公開鍵証明書と，前記取得した属性証明書の記載内容をもとに前記認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書を提示した者の正当性の検証，および，前記取得した属性証明書と，前記検証要求データに含まれている前記サービス提供装置が信頼する認証局装置の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書の内容の正当性の検証を行い，前記属性証明書の検証結果と，前記属性証明書あるいは前記属性証明書内に記載されている属性情報を含んだ検証応答データを生成し，前記サービス提供装置に対して前記検証応答データを返信する属性証明書検証ステップを実行し，
前記サービス提供装置は，前記属性証明書検証装置から前記検証応答データを受信し，前記検証応答データに含まれている属性証明書の検証結果と属性証明書に記載された属性情報をもとに，サブジェクトの属性に関する認証結果を前記利用者装置に送信する属性認証結果送信ステップを実行する
ことを特徴とする属性証明書検証方法。
【請求項６】
ネットワーク上でサービスを提供するサービス提供装置が，前記サービスを利用しようとするサブジェクトに関する属性情報を認証するための属性証明書検証方法であって，
前記サブジェクトが利用する利用者装置は，資格証明に必要なデータである署名対象データと，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報と，を含み，且つサブジェクトの公開鍵証明書および属性証明書を含まない署名データを生成し，前記サービス提供装置に対して送信する署名データ送信ステップを実行し，
前記サービス提供装置は，前記利用者装置から前記署名データを受信し，前記署名データに含まれている署名対象データと，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報とを含んだ検証要求データを生成し，前記属性証明書の検証を代行する属性証明書検証装置に対して前記検証要求データを送信する検証要求データ送信ステップを実行し，
前記属性証明書検証装置は，前記サービス提供装置から前記検証要求データを受信し，前記検証要求データに含まれている署名対象データと，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報をもとに属性認証局装置から取得した属性証明書と，前記属性証明書検証装置内に予め保管しておいた信頼のできる認証局装置の公開鍵証明書と，前記取得した属性証明書の記載内容をもとに前記認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書を提示した者の正当性の検証，および，前記取得した属性証明書と，信頼のできる認証局装置の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書の内容の正当性の検証を行い，前記属性証明書の検証結果と，前記属性証明書あるいは前記属性証明書内に記載されている属性情報を含んだ検証応答データを生成し，前記サービス提供装置に対して前記検証応答データを返信する属性証明書検証ステップを実行し，
前記サービス提供装置は，前記属性証明書検証装置から前記検証応答データを受信し，前記検証応答データに含まれている属性証明書の検証結果と属性証明書に記載された属性情報をもとに，サブジェクトの属性に関する認証結果を前記利用者装置に送信する属性認証結果送信ステップを実行する
ことを特徴とする属性証明書検証方法。
【請求項７】
ネットワーク上でサービスを提供するサービス提供装置が，前記サービスを利用しようとするサブジェクトに関する属性情報を認証するための属性証明書検証方法であって，
前記サブジェクトが利用する利用者装置は，資格証明に必要なデータである署名対象データと，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報と，を含み，且つサブジェクトの公開鍵証明書および属性証明書を含まない署名データを生成し，前記サービス提供装置に対して送信する署名データ送信ステップを実行し，
前記サービス提供装置は，前記利用者装置から前記署名データを受信し，前記署名データに含まれている署名対象データのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報とを含んだ検証要求データを生成し，前記属性証明書の検証を代行する属性証明書検証装置に対して前記検証要求データを送信する検証要求データ送信ステップを実行し，
前記属性証明書検証装置は，前記サービス提供装置から検証要求データを受信し，前記検証要求データに含まれている署名対象データのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報をもとに属性認証局装置から取得した属性証明書と，前記属性証明書検証装置内に予め保管しておいた信頼のできる認証局装置の公開鍵証明書と，前記取得した属性証明書の記載内容をもとに前記認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書を提示した者の正当性の検証，および，前記取得した属性証明書と，信頼のできる認証局装置の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書の内容の正当性の検証を行い，前記属性証明書の検証結果と，前記属性証明書あるいは前記属性証明書内に記載されている属性情報を含んだ検証応答データを生成し，前記サービス提供装置に対して前記検証応答データを返信する属性証明書検証ステップを実行し，
前記サービス提供装置は，前記属性証明書検証装置から前記検証応答データを受信し，前記検証応答データに含まれている属性証明書の検証結果と属性証明書に記載された属性情報をもとに，サブジェクトの属性に関する認証結果を前記利用者装置に送信する属性認証結果送信ステップを実行する
ことを特徴とする属性証明書検証方法。
【請求項８】
ネットワーク上でサービスを提供するサービス提供装置が，前記サービスを利用しようとするサブジェクトに関する属性情報を認証するための属性証明書検証装置であって，
前記サービス提供装置から検証要求データを受信する検証要求データ受信機能と，
前記サービス提供装置から受信した検証要求データに含まれているサブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報をもとに属性認証局装置から前記属性証明書を取得する属性証明書取得機能と，
前記サービス提供装置から受信した検証要求データに含まれている署名対象データあるいは署名対象データのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，前記サービス提供装置が信頼する認証局の公開鍵証明書と，前記属性証明書取得機能によって取得したサブジェクトの公開鍵証明書に結びついた属性証明書と，前記属性証明書の記載内容をもとに認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認を行う属性証明書提示者正当性検証機能と，
前記検証要求データに含まれているサブジェクトの公開鍵証明書に結びついた属性証明書と，前記サービス提供装置が信頼する認証局の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認を行う属性証明書内容正当性検証機能と，
前記属性証明書の検証結果と，前記属性証明書取得機能によって取得した属性証明書あるいは前記属性証明書内に記載されている属性情報とを含んだ検証応答データを生成する検証応答データ生成機能と，
前記サービス提供装置に対して前記検証応答データを返信する検証応答データ返信機能と，を有する
ことを特徴とする属性証明書検証装置。
【請求項９】
ネットワーク上でサービスを提供するサービス提供装置が，前記サービスを利用しようとするサブジェクトに関する属性情報を認証するための属性証明書検証装置であって，
前記サービス提供装置から検証要求データを受信する検証要求データ受信機能と，
信頼する認証局装置の公開鍵証明書を保管しておく信頼点情報管理機能と，
前記サービス提供装置から受信した検証要求データに含まれているサブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報をもとに前記属性認証局装置から，前記属性証明書を取得する属性証明書取得機能と，
前記サービス提供装置から受信した検証要求データに含まれている署名対象データあるいは署名対象データのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，前記信頼点情報管理機能から取り出した信頼する認証局の公開鍵証明書と，前記属性証明書取得機能によって取得したサブジェクトの公開鍵証明書に結びついた属性証明書と，前記属性証明書の記載内容をもとに認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認を行う属性証明書提示者正当性検証機能と，
前記検証要求データに含まれているサブジェクトの公開鍵証明書に結びついた属性証明書と，前記信頼点情報管理機能から取り出した信頼する認証局の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認を行う属性証明書内容正当性検証機能と，
前記属性証明書の検証結果と，前記属性証明書取得機能によって取得した属性証明書あるいは前記属性証明書内に記載されている属性情報とを含んだ検証応答データを生成する検証応答データ生成機能と，
前記サービス提供装置に対して前記検証応答データを返信する検証応答データ返信機能と，を有する
ことを特徴とする属性証明書検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，公開鍵証明書に含まれている個人や端末を特定する情報を，検証者に知らせることなく，安全に資格や権限のみの認証を行うための好適な技術に関する。
【背景技術】
【０００２】
ネットワーク上で提供されるサービスでは，通信相手の特定のために，公開鍵証明書を用いた認証方法が用いられている。そして，公開鍵暗号レベルの安全性で，資格や権限を認証する方法として属性証明書を利用する方法がある（例えば，非特許文献１参照）。公開鍵証明書は，公開鍵の値と，当該公開鍵に対応した秘密鍵を所有している人の名前あるいは端末の識別番号等とを結びつけたデータであり，認証局の電子署名によって，その内容は保証されている。
【０００３】
属性証明書は，公開鍵証明書を特定する情報と，公開鍵証明書の所有者が保持する属性情報を結びつけたデータであり，属性認証局の電子署名によって，その内容は保証されている。ここで，公開鍵証明書を特定する情報とは，一般的に，公開鍵証明書の発行者名とシリアル番号で構成されるものであり，公開鍵証明書の所有者の名前や端末の識別情報のような，公開鍵証明書の所有者が個別に特定されてしまう情報は含まれていない。
【０００４】
また，属性証明書を用いて資格の認証を行うには，当該属性証明書以外に，当該属性証明書を提示した者の電子署名，当該属性証明書に対応する公開鍵証明書，その他自分の信頼する認証局の証明書から当該属性証明書や前記公開鍵証明書までの認証パスを構成する公開鍵証明書，及び，認証パス中の各証明書に関する失効情報を使用する。
【０００５】
属性証明書を効率的に検証する方法としては，検証者が検証対象の属性証明書，および，信頼する認証局の公開鍵証明書を属性証明書検証装置に対して送信し，当該属性証明書検証装置が検証処理を代行して，その結果を検証者に返信するという方法がある（例えば，特許文献１参照）。
【特許文献１】特開２００３−３４８０７７号公報
【非特許文献１】International Telecommunication Union著「Information technology - Open systems interconnection - The Directory: Public-key and attribute certificate frameworks (ITU-T Recommendation X.509)」，（スイス），International Telecommunication Union，２０００年３月３１日，ｐ．１−１２９
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来の属性証明書を用いた資格認証方法では，検証の際に，属性証明書の保有者の公開鍵証明書を必要とするため，公開鍵証明書に記載された当該証明書の所有者の名前や端末番号のような個体を特定するのに可能な情報を検証者に知られてしまうことになる。
【０００７】
本来，資格の認証は，資格を提示した側の資格に関する情報のみを検証者に示せば必要十分であり，相手に氏名等のプライバシー情報を知られる必要はないものである。例えば，２０歳以上の人のみアクセス可能なサービスが存在した場合，サービス提供側では，アクセスしてきたユーザの年齢という属性情報のみ確認すればよいのだが，公開鍵証明書ベースの認証を行うと，公開鍵証明書に記載された氏名等がサービス提供者側に知られてしまい，ユーザのプライバシーを侵害する恐れが生じる。
【０００８】
本発明は，公開鍵証明書に含まれている個人や端末が特定されるようなプライバシー情報を，検証者（本実施形態ではサービス提供装置１５０）に知らせることなく，安全に資格や権限のみの認証を行う属性証明書検証方法及び装置を提供するものである。
【課題を解決するための手段】
【０００９】
本発明の主旨は，信頼できる第三者機関が運営する属性証明書検証装置のみがユーザの公開鍵証明書にアクセスできるような環境を用意し，検証者（本実施形態の例ではサービス提供装置１５０）は，資格を提示したユーザ（本実施形態の例では利用者装置１４０）から受信した属性証明書情報と署名データ情報とを属性証明書検証装置（本実施形態の例では符号１３０）に送信し，属性証明書検証装置に前記属性証明書の提示者の正当性の判断を依頼することで，検証者（例，サービス提供装置１５０）にユーザ（例，利用者装置１４０）の公開鍵証明書（特に，公開鍵証明書に含まれるプライバシー情報）を渡さない属性証明書検証方法を実現する。
【００１０】
また，属性証明書の具体的な検証方法としては，次のような手順から成り立っている。すなわち，ネットワーク上でサービスを提供するサービス提供装置が，前記サービスを利用しようとするサブジェクトに関する属性情報を認証するための属性証明書検証方法であって，
前記サブジェクトが利用する利用者装置は，資格証明に必要なデータである署名対象データと，前記サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，前記サブジェクトの公開鍵証明書に結びついた属性証明書と，を含み，且つ前記サブジェクトの公開鍵証明書を含まない署名データを生成し，前記サービス提供装置に対して送信する署名データ送信ステップを実行し，
前記サービス提供装置は，前記利用者装置から前記署名データを受信し，前記署名データに含まれている署名対象データと，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書と，を含んだ検証要求データを生成し，前記属性証明書の検証を代行する属性証明書検証装置に対して前記検証要求データを送信する検証要求データ送信ステップを実行し，
前記属性証明書検証装置は，前記サービス提供装置から前記検証要求データを受信し，前記検証要求データに含まれている署名対象データあるいはそのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書と，前記属性証明書検証装置内に予め保管しておいた信頼のできる認証局装置の公開鍵証明書と，前記属性証明書の記載内容をもとに前記認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって前記属性証明書を提示した者の正当性の検証，および，前記検証要求データに含まれているサブジェクトの公開鍵証明書に結びついた属性証明書と，信頼のできる認証局の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって前記属性証明書の内容の正当性の検証を行い，前記属性証明書の検証結果を含んだ検証応答データを生成し，前記サービス提供装置に対して前記検証応答データを返信する属性証明書検証ステップを実行し，
前記サービス提供装置は，前記属性証明書検証装置から検証応答データを受信し，前記検証応答データに含まれている属性証明書の検証結果をもとに，サブジェクトの属性に関する認証結果を前記利用者装置に送信する属性認証結果送信ステップを実行する属性証明書検証方法。
【００１１】
また，属性証明書の具体的な検証装置としては，次のような構成から成り立っている。すなわち，ネットワーク上でサービスを提供するサービス提供装置が，前記サービスを利用しようとするサブジェクトに関する属性情報を認証するための属性証明書検証装置であって，
前記サービス提供装置から検証要求データを受信する検証要求データ受信機能と，
信頼する認証局装置の公開鍵証明書を保管しておく信頼点情報管理機能と，
前記サービス提供装置から受信した検証要求データに含まれている署名対象データあるいは署名対象データのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書と，前記信頼点情報管理機能から取り出した信頼する認証局の公開鍵証明書と，前記属性証明書の記載内容をもとに認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認を行う属性証明書提示者正当性検証機能と，
前記検証要求データに含まれているサブジェクトの公開鍵証明書に結びついた属性証明書と，サービス提供装置が信頼する認証局の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認を行う属性証明書内容正当性検証機能と，
前記属性証明書の検証結果を含んだ検証応答データを生成する検証応答データ生成機能と，
前記サービス提供装置に対して前記検証応答データを返信する検証応答データ返信機能と，を有する属性証明書検証装置。
【発明の効果】
【００１２】
本発明によれば，公開鍵証明書に含まれている個人や端末を特定する情報を，検証者に知らせることなく，公開鍵暗号レベルの安全性で資格や権限を認証することが可能となる。すなわち，ユーザの特定や追跡を防止するといったプライバシー保護を考慮した資格認証を実現することができる。
【００１３】
このように，会員，年齢，性別，アクセス権限等の資格のみの認証を行うネットワークサービスにおいて，属性証明書検証装置を利用することが可能な環境を用意することで，ユーザの公開鍵証明書をサービス提供者に提示することのないプライバシーを考慮した資格証明を実現することができる。
【発明を実施するための最良の形態】
【００１４】
本発明の実施形態に係る属性証明書検証装置及び方法について，図面を参照しながら以下詳細に説明する。なお，以下で説明する図面において，同一の番号は同様の部品・要素を表すものとする。また，本発明は以下説明する部品・要素に限定されるものではない。
【００１５】
図１は，本発明の実施形態に係る属性証明書検証装置を適用するためのシステム構成を示す図である。各エンティティに対して公開鍵証明書を発行する認証局装置１１０と，認証局装置１１０によって発行された公開鍵証明書に，属性値を割り付けた属性証明書を発行する属性認証局装置１２０と，検証者（本実施形態の例ではサービス提供装置１５０）から送付されてきた属性証明書の提示者（本実施形態の例では利用者装置１４０）の正当性の検証を代行する属性証明書検証装置１３０と，サービスを利用する側の端末である利用者装置１４０と，資格認証を含めたサービスを提供する側の装置であるサービス提供装置１５０と，がネットワーク１６０で接続されている。
【００１６】
認証局装置１１０は，信頼できる認証局によって安全に運用されるものとする。また，属性認証局装置１２０は，信頼できる属性認証局によって安全に運用されるものとする。さらに，属性証明書検証装置１３０は，信頼できる機関によって安全に運用されるものとする。
【００１７】
図２は，本発明の実施形態に係る属性証明書検証装置１３０の他，図１に示す，認証局装置１１０，属性認証局装置１２０，利用者装置１４０，及び，サービス提供装置１５０のハードウェア構成を示す図である。
【００１８】
図１に示す各装置１１０〜１５０は，入力装置２１０と，表示装置２２０と，ＣＰＵ２３０と，メモリ２４０と，記憶装置２５０と，通信装置２６０とが，バス２７０によって接続された構成となっている。
【００１９】
入力装置２１０は，各装置１１０〜１５０を利用する人が，データや命令等を入力するために用いられるものであり，キーボードやマウス等で構成される。また，表示装置２２０は，各装置１１０〜１５０を利用する人に対して，メッセージ等を表示するために用いられるものであり，ＣＲＴや液晶ディスプレイ等で構成される。また，ＣＰＵ２３０は，メモリ２４０や記憶装置２５０に格納されたプログラムを実行することで，各装置１１０〜１５０の構成要素を統括的に制御したり，様々な演算処理を行ったりする。
【００２０】
また，メモリ２４０には，図３〜図７において示すようなプログラムや，処理に必要なデータが一時的に格納される。また，記憶装置２５０は，各装置１１０〜１５０で使用されるプログラムやデータを永続的に記憶するために用いられるものであり，ハードディスク等で構成される。また，通信装置２６０は，ネットワーク１６０を介して，図１に示す各装置１１０〜１５０間でのデータのやり取りを行うためのインタフェースである。また，バス２７０は，各構成要素２１０〜２６０の間でデータをやり取りするための伝送路であり，バス以外の伝送路を用いても良い。
【００２１】
図３〜図７において示すような各プログラムは，あらかじめ，記憶装置２５０に格納されていても良いし，必要なときに，各装置１１０〜１５０が利用可能な，着脱可能な記憶媒体または通信媒体（通信回線または通信回線上の搬送波やデジタル信号）を介して，記憶装置２５０に導入されてもよい。
【００２２】
図３〜図７では，各装置１１０〜１５０に関するソフトウェア構成を示す。図３は，認証局装置１１０のソフトウェア構成を示す図である。
【００２３】
認証局装置１１０のメモリ２４０には，オペレーティングシステム３１０と，公開鍵証明書発行プログラム３２０と，失効情報発行プログラム３３０と，情報公開プログラム３４０といったプログラム等が一時的に格納される。また，認証局装置１１０の記憶装置２５０には，認証局の所有する秘密鍵３５０と，当該秘密鍵に対応した認証局の公開鍵証明書３６０と，当該認証局が発行した公開鍵証明書に関する失効情報３７０と，当該認証局が各利用者もしくは端末に対して発行した公開鍵証明書３８０等のデータが格納されている。
【００２４】
オペレーティングシステム３１０は，認証局装置１１０の全体の制御を行うために，ファイル管理，プロセス管理，デバイス管理といった機能を実現するためのプログラムである。また，公開鍵証明書発行プログラム３２０は，あるユーザに関して，当該ユーザの識別名とユーザの所有する公開鍵とを結びつけ，この結びつけた情報に対し認証局の秘密鍵を用いて電子署名を施した公開鍵証明書を発行するプログラムである。
【００２５】
この認証局装置１１０では，認証局自身に対する認証局の公開鍵証明書３６０と，属性認証局装置１２０を運用する属性認証局への公開鍵証明書４６０と，属性証明書検証装置１３０に対する公開鍵証明書５５０と，利用者装置１４０を使用する利用者もしくは当該利用者装置１４０自体への公開鍵証明書３８０を発行する。また，失効情報発行プログラム６３０は，当該認証局が発行した公開鍵証明書に関して，失効されている公開鍵証明書の情報の一覧に，当該認証局の秘密鍵３５０を用いて電子署名を施した失効情報３７０を生成するプログラムである。生成された失効情報は記憶装置２５０内で保管される。また，情報公開プログラム３４０は，認証局装置１１０の記憶装置２５０内にある失効情報３７０や利用者または端末の公開鍵証明書３８０を，ユーザからの問い合わせによって開示するプログラムである。
【００２６】
利用者または端末の公開鍵証明書３８０については，属性証明書検証装置１３０からのアクセスのみ公開するように，当該情報公開プログラム３４０が制御する（認証局装置１１０は属性証明書検証装置１３０からのアクセスのみに応答して利用者の公開鍵証明書３８０を公開する）。属性証明書検証装置１３０からのアクセスかどうかを判断するための方法については，ＳＳＬクライアント認証等，既存の仕組みで実現するものとする。認証局の秘密鍵３５０は，認証局が所有する秘密鍵情報であり，当該認証局内で安全に管理されるものとする。
【００２７】
また，認証局の公開鍵証明書３６０は，公開鍵証明書発行プログラム３２０にて，自身に発行した自己署名の公開鍵証明書である。また，失効情報３７０は，失効情報発行プログラム３３０によって生成される，公開鍵証明書が失効しているかどうかを確認するための情報であり，例えば，証明書失効リスト（ＣＲＬ）等が該当する。また，利用者または端末の公開鍵証明書３８０は，公開鍵証明書発行プログラム３２０にて，利用者もしくは利用者の利用する利用者装置１４０に対して発行された公開鍵証明書である。
【００２８】
図４は，本実施形態に関連する属性認証局装置１２０のソフトウェア構成を示す図である。図４において，属性認証局装置１２０のメモリ２４０には，オペレーティングシステム３１０と，属性証明書発行プログラム４２０と，属性証明書失効情報発行プログラムと４３０と，情報公開プログラム４８０と，からなるプログラム等が一時的に格納される。また，属性認証局装置１２０の記憶装置２５０には，属性認証局の所有する秘密鍵４５０と，当該秘密鍵に対応した公開鍵証明書４６０と，属性証明書失効情報４７０等のデータが格納されている。また，当該記憶装置２５０には，利用者または端末の属性証明書６６０が格納されている場合もある。なお，以下，図面で点線枠で囲まれるプログラムやデータは必須のものではなくて必要に応じて所持されるものである。
【００２９】
属性証明書発行プログラム４２０は，公開鍵証明書を所有している或るユーザに関して，当該ユーザの公開鍵証明書情報とユーザの属性値とを結びつけ，この結びつけた情報に対し属性認証局の秘密鍵４５０を用いて電子署名を施した属性証明書を発行するプログラムである。また，属性証明書失効情報発行プログラム４３０は，当該属性認証局が発行した属性証明書に関して，失効されている属性証明書の情報の一覧に，当該属性認証局の秘密鍵４５０を用いて電子署名を施した属性証明書失効情報４７０を生成するプログラムである。生成された失効情報は記憶装置２５０内で保管される。
【００３０】
また，情報公開プログラム４８０は，属性認証局装置１２０の記憶装置２６０内にある失効情報４７０を，ユーザからの問い合わせによって開示するプログラムである。また，属性認証局装置１２０の記憶装置２５０が利用者または端末の属性証明書６６０を格納している場合，当該情報公開プログラム４８０は，ユーザからの問い合わせによって，対応する利用者または端末の属性証明書も開示する。
【００３１】
属性認証局の秘密鍵４５０は，属性認証局が所有する秘密鍵情報であり，当該属性認証局内で安全に管理されるものとする。また，属性認証局の公開鍵証明書４６０は，認証局装置１１０の公開鍵証明書発行プログラム３２０にて発行された，当該属性認証局の所有する秘密鍵４５０に対応した公開鍵証明書である。
【００３２】
また，属性証明書失効情報４７０は，属性証明書失効情報発行プログラム４３０によって生成される，属性証明書が失効しているかどうかを確認するための情報であり，例えば，属性証明書証明書失効リスト（ＡＣＲＬ）等が該当する。また，利用者または端末の属性証明書６６０は，属性認証局装置１２０の属性証明書発行プログラム４２０にて発行された，利用者または端末の公開鍵証明書３８０と結びついている属性証明書である。
【００３３】
図５は，本実施形態に係る属性証明書検証装置１３０のソフトウェア構成を示す図である。図５において，属性証明書検証装置１３０のメモリ２４０には，オペレーティングシステム３１０と，属性証明書提示者正当性検証プログラム５２０と，属性証明書内容正当性検証プログラム５３０と，属性証明書取得プログラム５７０と，からなるプログラム等が一時的に格納される。また，属性証明書検証装置１３０の記憶装置２５０には，属性証明書検証装置１３０が保持する秘密鍵５４０と，当該秘密鍵に対応した公開鍵証明書５５０と，キャッシュ情報５６０等のデータが格納されている。また，当該記憶装置２５０には，信頼点情報７５０が格納されている場合もある。信頼点情報７５０は，サービス提供装置１５０を運用する者が信頼している認証局の公開鍵証明書のことである。
【００３４】
属性証明書提示者正当性検証プログラム５２０は，属性証明書を提示した者あるいは端末（本実施形態の例では利用者装置１４０）が正当な属性証明書の保有者であるかどうかを確認するプログラムである。具体的には，図８右側点線枠内（太い破線枠内）の処理を行う。当該提示者正当性検証プログラムの処理は，図１３のフローにおける，ステップ２０１１，２０１３，２０１４，及び，２０１５に該当する。
【００３５】
また，属性証明書内容正当性検証プログラム５３０は，属性証明書の内容が正しい属性認証局によって保証されたものであるかどうかを確認するプログラムである。具体的には，図８左側点線枠内（細い点線枠内）の処理を行う。当該内容正当性検証プログラムの処理は，図１３のフローにおける，主としてステップ２０１２に該当する。属性証明書取得プログラム５７０は，利用者または端末の属性証明書６６０を取得するために必要な情報を元に，属性認証局装置１２０に対し，当該属性証明書６６０を要求し，当該属性証明書を取得するプログラムである。当該プログラムの処理は，図１３のフローにおける，ステップ２０２０に該当する。
【００３６】
属性証明書検証局の秘密鍵５４０は，属性証明書検証局が所有する秘密鍵情報であり，当該属性証明書検証局内で安全に管理されるものとする。また，属性証明書検証局の公開鍵証明書５５０は，認証局装置１１０の公開鍵証明書発行プログラム３２０にて発行された，当該属性証明書検証局の所有する秘密鍵５４０に対応した公開鍵証明書である。
【００３７】
また，キャッシュ情報５６０とは，属性証明書の内容の正当性の検証や，属性証明書の提示者の正当性の検証を行った際に使用した，各証明書や各失効情報そのもの，当該証明書や当該失効情報で構成される認証パスの情報，あるいは，当該認証パスに対して得られた検証結果等であり，次回以降の検証時に再利用するために使われるものである。また，信頼点情報７５０は，サービス提供装置１５０を運用する者が信頼している認証局の公開鍵証明書，あるいは，当該属性証明書検証装置１３０の運営ポリシーとして信頼する認証局の公開鍵証明書のことである。
【００３８】
図６は，本実施形態に関連する利用者装置１４０のソフトウェア構成を示す図である。図６において，利用者装置１４０のメモリ２４０には，オペレーティングシステム３１０と，サービス利用プログラム６２０と，属性証明書利用プログラム６３０と，からなるプログラム等が一時的に格納される。また，利用者装置１４０の記憶装置２５０には，当該利用者装置１４０を利用する者もしくは当該利用者装置自身の秘密鍵６５０と，当該秘密鍵６５０に対応した公開鍵証明書と結びついている属性証明書６６０（オプションとして）もしくは当該属性証明書６６０を取得するために必要な情報６７０（オプションとして），等のデータが格納されている。
【００３９】
サービス利用プログラム６２０は，サービス提供装置１５０がネットワーク１６０上で提供しているサービスを利用するために必要なプログラムである。サービス提供装置１５０がＷｅｂサービスを提供している場合，サービス利用プログラム６２０は，Ｗｅｂブラウザ等に相当する。当該プログラムの処理は，図１３のフローにおける，ステップ２００１，２００４，２００６，及び，２０１９に該当する。属性証明書利用プログラム６３０は，サービス提供装置１５０に対して資格の提示を行う際に必要な署名データ１０３０を生成するプログラムである。当該属性証明書利用プログラム６３０の処理は，図１３のフローにおける，ステップ２００５に該当する。
【００４０】
利用者または端末の秘密鍵６５０は，利用者が所有もしくは利用者装置１４０自身が管理するする秘密鍵情報であり，当該利用者装置１４０内で安全に管理されるものとする。また，利用者または端末の属性証明書６６０は，属性認証局装置１２０の属性証明書発行プログラム４２０にて発行された，利用者または端末の公開鍵証明書３８０と結びついている属性証明書である。また，利用者または端末の属性証明書を取得するために必要な情報６７０は，利用者または端末の属性証明書６６０を取得するために必要な情報であり，例えば，属性認証局装置１２０のネットワーク上のアドレス，および，図９で示している属性証明書の発行者名および属性証明書シリアル番号の組み合わせ等が該当する。
【００４１】
図７は，本実施形態に関連するサービス提供装置１５０のソフトウェア構成を示す図である。サービス提供装置１５０のメモリ２４０には，オペレーティングシステム３１０と，サービス提供プログラム７２０と，属性証明書検証装置利用プログラム７３０と，からなるプログラム等が一時的に格納される。さらに，属性証明書内容正当性検証プログラム５２０が当該サービス提供装置１５０のメモリ２４０に格納されていてもよい（オプションとして）。また，サービス提供装置１５０の記憶装置２５０には，サービス提供のために必要なデータ群７４０等のデータが格納されている。当該記憶装置２５０には，信頼点情報７５０が格納されている場合もある。
【００４２】
サービス提供プログラム７２０は，当該サービス提供装置１５０がネットワーク１６０上で提供しているサービスを提供するために必要なプログラムである。当該サービス提供プログラム７２０は，Ｗｅｂサーバプログラム等が相当する。サービス提供プログラム７２０の処理は，図１３のフローにおける，ステップ２００２，２００３，２００７，及び，２０１８に該当する。属性証明書検証装置利用プログラム７３０は，属性証明書検証装置１３０に対して資格の提示者の検証を依頼し，その結果を受信・解析するプログラムである。当該プログラム７３０の処理は，図１３のフローにおける，ステップ２００９，２０１０，２０１６，及び２０１７に該当する。
【００４３】
サービス提供用データ７４０は，サービス提供プログラム７２０にて使用されるデータ群であり，サービス提供プログラムがＷｅｂサーバプログラムであるとするならば，ＨＴＭＬファイルや，サービスに必要なデータベースファイル等が該当する。信頼点情報７５０は，サービス提供装置１５０を運用する者が信頼している認証局の公開鍵証明書のことである。
【００４４】
図８は，本発明の実施形態に係る属性証明書検証装置を適用したシステムにおける認証パスの構造を示す図である。認証パスの最上位のルートは，認証局の公開鍵証明書３６０である。ここで，認証パスは，公開鍵証明書について認証局から利用者または端末までの階層構造的なルートとなっている。当該公開鍵証明書に対応した秘密鍵３５０（認証局自身の秘密鍵）によって署名されたデータとして，属性認証局の公開鍵証明書４６０，利用者または端末の公開鍵証明書３８０，及び，失効情報３７０が存在する。また，属性認証局の公開鍵証明書４６０に対応した秘密鍵４５０（属性認証局自身の秘密鍵）によって署名されたデータとして，利用者または端末の属性証明書６６０，及び，属性証明書失効情報４７０が存在する。また，利用者または端末の公開鍵証明書３８０に対応した秘密鍵６５０（利用者／端末自身の秘密鍵）によって署名されたデータとして，署名データ１０３０が存在する。  
属性証明書の検証には，属性証明書の内容の正当性の検証と，属性証明書を提示した者または端末の正当性の検証の両方を行う必要がある。属性証明書の内容の正当性の検証とは，認証局の公開鍵証明書３６０から，利用者または端末の属性証明書６６０までの認証パスを構築および検証し，各証明書の有効性を確認する処理で，属性証明書内容正当性検証プログラム５２０によって実現される（図８の左側細い点線枠を参照）。
【００４５】
本処理は，従来の方法と同様であるが，具体的には，利用者または端末の属性証明書６６０が入力として与えられたとき，その上位にくる証明書である属性認証局の公開鍵証明書４６０を署名データ１０３０内（図１０参照），もしくは，検証要求データ１１３０内（図１１参照）等から取得する。次に，属性認証局の公開鍵証明書４６０の上位にくる認証局の公開鍵証明書３６０を署名データ１０３０，もしくは，検証要求データ１１３０等から取得する。続いて，認証局の公開鍵証明書３６０が，信頼点情報７５０（図５参照）と一致することを確認する。さらに，利用者または端末の属性証明書６６０に付与されている属性認証局の署名を，属性認証局の公開鍵証明書４６０を用いて署名検証する。そして，属性認証局の公開鍵証明書４６０に付与されている属性認証局の署名を，認証局の公開鍵証明書３６０を用いて署名検証する。
【００４６】
また，利用者または端末の属性証明書６６０が失効されているかどうかを確認するため，属性認証局装置１２０の属性証明書失効情報公開プログラム４４０にて公開される属性証明書失効情報４７０を取得する。そして，当該失効情報４７０に付与されている属性認証局の署名を，属性認証局の公開鍵証明書４６０を用いて署名検証する。さらに，当該失効情報４７０に記載されている失効情報から，利用者または端末の属性証明書６６０の有効であることを確認する。
【００４７】
同様に，属性認証局の公開鍵証明書４６０が失効されているかどうかを確認するため，認証局装置１１０の失効情報公開プログラム３４０にて公開される失効情報３７０を取得する。そして，当該情報３７０に付与されている認証局の署名を，認証局の公開鍵証明書３６０を用いて署名検証する。さらに，当該情報３７０に記載されている失効情報から，属性認証局の公開鍵証明書４６０の有効であることを確認する。これらの処理に成功した場合，属性証明書の内容は正当であると判断し，そうでない場合は不正であると判断する。
【００４８】
属性証明書を提示した者または端末の正当性の検証とは，属性証明書を提示した者または端末が生成した署名データ１０３０の署名検証，認証局の公開鍵証明書３６０から利用者または端末の公開鍵証明書３８０までの認証パスを構築および検証，及び，各証明書の有効性を確認する処理で，属性証明書提示者正当性検証プログラム５２０によって実現される。本処理は，具体的には，利用者または端末の属性証明書６６０が入力として与えられたとき，当該属性証明書に記載されている利用者または端末の公開鍵証明書３８０へのポインタ（後述する図９に示す公開鍵証明書シリアル番号と公開鍵証明書発行者名との組み合わせ）を取得する。
【００４９】
次に，取得した情報を元に，認証局装置１１０の情報公開プログラム３４０にて公開され利用者または端末の公開鍵証明書３８０を取得する。当該公開鍵証明書を取得する際は，ＳＳＬクライアント認証など安全性の高い方法で認証を行う。次に，取得した利用者または端末の公開鍵証明書３８０の上位にくる認証局の公開鍵証明書３６０を，検証要求データ１１３０等から取得する。続いて，認証局の公開鍵証明書３６０が，検証要求データに含まれている信頼点情報７５０と一致することを確認する。
【００５０】
さらに，署名データ１０３０に付与されている利用者または端末の署名が，利用者または端末の公開鍵証明書３８０に対応する秘密鍵で付与されたかどうかを確認するため，検証要求データに含まれる署名対象データ１０１０もしくはそのハッシュ値と，利用者または端末の秘密鍵による署名値１０２０と，利用者または端末の公開鍵証明書３８０を用いて署名検証を行う。そして，利用者または端末の公開鍵証明書３８０に付与されている利用者または端末の署名を，認証局の公開鍵証明書３６０を用いて署名検証する。
【００５１】
また，利用者または端末の公開鍵証明書３８０が失効されているかどうかを確認するため，認証局装置１１０の情報公開プログラム３４０にて公開される失効情報３７０を取得する。そして，当該情報３７０に付与されている認証局の署名を，認証局の公開鍵証明書３６０を用いて署名検証する。さらに，当該情報３７０に記載されている失効情報から，利用者または端末の公開鍵証明書３８０の有効であることを確認する。これらの処理に成功した場合，属性証明書の提示者は正当であると判断し，そうでない場合は不正であると判断する。
【００５２】
図９は，本実施形態で用いる，利用者または端末の公開鍵証明書３８０，及び，属性証明書６６０のデータ仕様を示す図である。利用者または端末の公開鍵証明書３８０は，従来技術の仕様のものとする。具体的には，公開鍵証明書シリアル番号，公開鍵証明書の発行者名，公開鍵証明書のサブジェクト名，公開鍵証明書の有効期間，公開鍵情報等の要素を署名対象に含む，認証局の秘密鍵３５０によって，電子署名が付与されたデータである。公開鍵証明書シリアル番号と公開鍵証明書の発行者の組み合わせは，一般的に公開鍵証明書を一意に特定するものであり，その組み合わせを公開鍵証明書のポインタとする。
【００５３】
また，公開鍵証明書のサブジェクト名には，例えば，当該証明書の所有者の名前，端末や機器の識別番号，など個体が特定されてしまうようなプライバシー情報が記載されているものとする（公開鍵証明書でその所有者の氏名欄がサブジェクトと記されているので，氏名などの個人を識別する情報がサブジェクトと同義的に用いられる）。なお，公開鍵証明書のサブジェクトを利用者装置１４０からサービス提供装置１５０に知らせることなく，資格や権限のみの認証を行う手法が本実施形態の特徴の１つである。
【００５４】
利用者または端末の属性証明書６６０も，従来技術の仕様のものとする。具体的には，利用者の公開鍵証明書の発行者名，利用者の公開鍵証明書シリアル番号，属性証明書の発行者名，属性証明書の有効期間，属性情報等の要素を署名対象に含む，属性認証局の秘密鍵４５０によって，電子署名が付与されたデータである。利用者の公開鍵証明書の発行者名と利用者の公開鍵証明書シリアル番号は，公開鍵証明書シリアル番号と公開鍵証明書の発行者に一致させる。
【００５５】
次に，図１０〜図１２には，本実施形態で用いる各データ仕様を示す。図１０は，本実施形態における署名データ１０３０のデータ仕様を示す図である（サービス提供装置１５０による署名要求を受けて利用者装置１４０が生成する署名データの仕様を示す）。
【００５６】
図１０において，署名データ１０３０は，署名対象データ１０１０と，認証局の公開鍵証明書３６０と，属性認証局の公開鍵証明書４６０と，利用者または端末の属性証明書６６０もしくは当該属性証明書６６０を取得するために必要な情報６７０と，署名対象データ１０１０に対して利用者または端末の秘密鍵６５０によって署名された署名値１０２０と，で構成されるデータである。署名対象データ１０１０は，資格証明に必要なデータ（取引上必要なデータでも可）もしくは乱数等のデータである。
【００５７】
また，認証局の公開鍵証明書３６０と，属性認証局の公開鍵証明書４６０については，署名データ１０３０に含んでいなくともよい。また，属性認証局装置１２０の記憶装置２５０内に，利用者または端末の属性証明書６６０が格納されている場合には，利用者または端末の属性証明書６６０ではなく当該属性証明書６６０を取得するために必要な情報６７０を，当該署名データ１０３０に含めてよい。属性認証局装置１２０の記憶装置２５０内に，利用者または端末の属性証明書６６０が格納されていない場合には，属性証明書６６０を取得するために必要な情報６７０ではなく，利用者または端末の属性証明書６６０を，当該署名データ１０３０に含めなければならない。また，この署名データは，図１３のステップ２００５にて，利用者装置１４０によって生成されるものである。ここで，署名データ１０３０には，図９に示す利用者の公開鍵証明書３８０（特に，公開鍵証明書に含まれるプライバシー情報であるサブジェクト）が含まれていないことが本実施形態における特徴の１つである。
【００５８】
図１１は，本実施形態における検証要求データ１１３０のデータ仕様を示す図である（サービス提供装置１５０が利用者装置１４０からの署名データ１０３０を受けて属性証明書検証装置１３０に検証を求めるために生成するデータである）。検証要求データ１１３０は，署名対象データ１０１０もしくはそのハッシュ値と，信頼点情報７５０と，認証局の公開鍵証明書３６０と，属性認証局の公開鍵証明書４６０と，利用者または端末の属性証明書６６０もしくは当該証明書に記された公開鍵証明書のポインタと，当該属性証明書６６０を取得するために必要な情報６７０と，利用者または端末の秘密鍵による署名値１０２０と，内容正当性検証実行有無フラグ１１１０と，その他改ざん検知，リプレイ攻撃防止，アクセス管理等のために必要な情報１１２０と，で構成されるデータである。
【００５９】
署名対象データ１０１０については，当該データ自体を属性証明書検証装置に送信するとプライバシーの漏洩につながる場合，署名対象データ１０１０そのものを格納するのではなく，そのハッシュ値を格納する。利用者または端末の属性証明書６６０については，内容正当性検証実行有無フラグ１１１０が無に設定する場合のみ，当該属性証明書の代わりに当該属性証明書に対応した公開鍵証明書のポインタを格納してもよい。また，利用者装置から受信した署名データに属性証明書６６０が含まれておらず，当該属性証明書を取得するために必要な情報６７０が含まれていた場合には，利用者または端末の属性証明書６６０や当該属性証明書に対応した公開鍵証明書のポインタではなく，この必要な情報６７０を署名データ１０３０内に含めるものとする。
【００６０】
内容正当性検証実行有無フラグ１１１０は，属性証明書検証装置１３０にて，属性証明書の内容の正当性検証を実行するかどうか指定するフラグである（内容正当性評価を，サービス提供装置１５０で実行するか属性証明書検証装置１３０で実行するかを指定するフラグ）。利用者装置１４０に，属性証明書内容正当性検証プログラム５２０が実装されている場合は，内容正当性検証実行有無フラグ１１１０を無にしてもよい。そうでない場合は，当該フラグを有にしなければならない。
【００６１】
その他の情報１１２０は，改ざんを検知するための情報やリプレイ攻撃を防止するための情報，アクセス管理等のために必要な情報であり，例えば，サービス提供装置１５０が秘密鍵を所有している場合の当該秘密鍵による署名値，あるいは，検証要求データ１１３０と検証応答データ１２３０を対応させるための乱数情報等が該当する。また，認証局の公開鍵証明書３６０と，属性認証局の公開鍵証明書４６０と，その他の情報１１２０については，検証要求データ１１３０に含んでいなくともよい。この検証要求データは，図１３のステップ２００９にて，サービス提供装置１５０によって生成されるものである。
【００６２】
図１２は，本実施形態における検証応答データ１２３０のデータ仕様を示す図である。検証応答データ１２３０は，検証要求データ１１１０もしくはその一部と，検証結果情報１２１０と，認証局の公開鍵証明書３６０と，属性証明書検証局の公開鍵証明書５５０と，検証要求データ１１１０もしくはその一部及び検証結果情報１２１０及び利用者または端末の属性証明書６６０もしくは当該属性証明書６６０に記載されている属性情報１２４０を署名対象として属性証明書検証局の秘密鍵５４０によって署名された署名値１２２０と，で構成されるデータである。検証要求データ１１１０については，検証応答データ１２３０のサイズが膨大になってしまう場合，検証要求データ１１１０自体を格納するのではなく，どの証明書と署名を検証したのかがわかる必要最低限の情報のみを格納してもよい。
【００６３】
また，検証結果情報１２１０は，検証要求データにて指定された情報が正しく検証できたかどうかを表す情報である。また，認証局の公開鍵証明書３６０については，検証要求データ１１３０に含んでいなくともよい。また，検証要求データ１１３０内に，利用者または端末の属性証明書６６０もしくは当該属性証明書に記載された公開鍵証明書のポインタが含まれていない場合，当該検証要求データに対応する検証応答データ１２３０には，利用者または端末の属性証明書６６０もしくは当該属性証明書６６０に記載されている属性情報１２４０を含めなければならない。この検証応答データは，図１３のステップ２０１４にて，本実施形態に係る属性証明書検証装置１３０によって生成されるものである。なお，サービス提供装置（検証者）１５０は，この検証応答データ１２３０を受信し，当該データ１２３０の属性証明書検証局の公開鍵証明書５５０の公開鍵を用いて検証結果情報１２１０を解読することとなる（図１３のＳ２０１７参照）。
【００６４】
図１３は，本発明の実施形態に係る属性証明書検証装置を用いた資格認証方法のフローを示す図である。利用者装置１４０と，サービス提供装置１５０と，属性証明書検証装置１３０との間において，サービス提供者装置１５０が利用者装置１４０に対する資格認証を行うための手順について記述する。
【００６５】
図１３において，まず，利用者装置１４０でサービス利用プログラム６２０を起動し，サービス提供装置１５０にサービスを享受するための要求，すなわち，サービス要求を送信する（ステップ２００１）。サービス提供装置１５０では，利用者装置１４０が送信したサービス要求をサービス提供プログラム７２０にて受信する（ステップ２００２）。上記ステップにてサービス要求を受信したら，サービス提供プログラム７２０は，資格を認証するために必要な署名データの要求，すなわち，署名要求を，利用者装置１４０に送信する。認証時のリプレイアタックを考慮して，当該サービス提供装置１５０にて乱数を生成して記憶装置２５０内に保存するとともに，当該乱数を含めた形で利用者装置１４０に情報も含めて送信してもよい（ステップ２００３）。
【００６６】
利用者装置１４０では，サービス提供装置１５０が送信した署名要求をサービス利用プログラム６２０にて受信する（ステップ２００４）。上記ステップにて，署名要求を受信したら，サービス利用プログラム６２０は，属性証明書利用プログラム６３０に対して，署名データ１０３０の生成を要求する。属性証明書利用プログラム６３０は，図１０のデータ仕様に則って，署名データ１０３０を生成する。署名対象データ１０１０は，サービス利用プログラムが生成する資格認証を行うために必要もしくは付随するデータである。ステップ２００３にて生成された乱数でもよい。また，各証明書は，当該装置内の記憶装置２５０から取得する。
【００６７】
また，属性認証局装置１２０の記憶装置２５０内に利用者または端末の属性証明書６６０が格納されている場合には，利用者または端末の属性証明書６６０の代わりとして，当該属性証明書６６０を取得するために必要な情報６７０を署名データ１０３０に含めてもよい。署名値は，署名対象データ１０１０を署名対象範囲に含め，利用者または端末の秘密鍵６５０を用いて生成する（ステップ２００５）。上記ステップにて，署名データ１０３０を生成したら，サービス利用プログラム６２０は，サービス提供装置１５０に対して，当該署名データ１０３０を送信する（ステップ２００６）。
【００６８】
サービス提供装置１５０では，利用者装置１４０が送信した署名データ１０３０をサービス提供プログラム７２０にて受信する（この受信した署名データ１０３０には，利用者装置の公開鍵証明書は含まれておらず，したがって，利用者装置のプライバシー情報であるサブジェクトは記載されていない）。この際，ステップ２００３で乱数を生成し，ステップ２００５にて署名対象データ１０１０に当該乱数が含まれている場合は，サービス提供装置内に記録しておいた乱数と一致することを確認する。一致しなかった場合は，リプレイアタックされたとみなし，利用者装置１４０のアクセスを拒否する（ステップ２００７）。
【００６９】
続いて，サービス提供装置１５０では，属性証明書検証装置利用プログラム７３０によって，属性証明書検証装置１３０に対して送付する検証要求データ１１３０を生成する。検証要求データの具体的な生成方法については，図１１の説明にて記述している。信頼点情報７５０として，サービス提供装置１５０内に格納されているものを使用する場合には，当該検証要求データ１１３０内に信頼点情報７５０を含めなければならない。信頼点情報７５０として，属性証明書検証装置１３０内に格納されているものを使用する場合は，当該検証要求データ１１３０に信頼点情報を含めなくてよい。
【００７０】
また，ステップ２００７にて受信した署名データ１０３０内に，利用者または端末の属性証明書６６０が含まれていない場合，すなわち，利用者または端末の属性証明書６６０を取得するために必要な情報６７０が含まれている場合は，属性証明書６６０の代わりに当該情報６７０を検証要求データに含めることとする。検証要求データ１１３０内の内容正当性検証実行有無フラグ１１１０は，無に設定する（ステップ２００９）。上記ステップにて，検証要求データ１１３０を生成したら，属性証明書検証装置利用プログラム７３０は，属性証明書検証装置１３０に当該検証要求データ１１３０を送信する（ステップ２０１０）。
【００７１】
属性証明書検証装置１３０では，サービス提供装置１５０が送信した検証要求データ１１３０を受信する（ステップ２０１１）。上記ステップにて，検証要求データ１１３０を受信した後，当該検証要求データ１１３０に利用者または端末の属性証明書６６０を取得するために必要な情報６７０が含まれている場合には，当該情報６７０を元に属性証明書取得プログラム５７０を用いて，属性認証局装置１２０から，検証対象となる利用者または端末の属性証明書６６０を取得する。当該検証要求データ１１３０に，利用者または端末の属性証明書６６０を取得するために必要な情報６７０が含まれていない場合，本ステップは省略される（ステップ２０２０）。
【００７２】
続いて，ステップ２０１１にて受信した検証要求データ内に含まれている利用者または端末の属性証明書６６０，または，ステップ２０２０にて属性認証局装置１２０より取得した利用者または端末の属性証明書６６０を検証対象とし，ステップ２０１１にて受信した検証要求データ内に含まれている信頼点情報７５０，または，属性証明書検証装置１３０の記憶装置２５０内に格納されている信頼点情報７５０をトラストアンカーとし，図８に示す属性証明書の内容の正当性の検証として囲んである処理（図８に示す細い点線枠内処理）を，属性証明書内容正当性検証プログラム５３０によって実行する。具体的な処理については，上記図８の説明にて記述している。本ステップでは，検証に必要な情報を収集するために，認証局装置１１０や属性認証局装置１２０との通信も発生するが，図８の説明にて記述していること，および，背景技術にて実施可能であることから，本ステップにおける具体的な処理手順の記述については省略する（ステップ２０１２）。
【００７３】
続いて，上記ステップ２０１２にて検証対象とした属性証明書と，検証要求データ１１３０に含まれる署名対象データもしくはそのハッシュ値１０１０，等の情報に関して，図８に示す属性証明書を提示した者の正当性の検証として囲んである処理（図８に示す太い破線枠内処理）を，属性証明書提示者正当性検証プログラム５２０によって実行する。具体的な処理については，図８の説明にて記述している。本ステップでは，検証に必要な情報を収集するために，認証局装置１１０との通信も発生するが，図８の説明にて記述していること，および，背景技術にて実施可能であることから，本ステップにおける具体的な処理手順の記述については省略する（ステップ２０１３）。
【００７４】
次に，属性証明書検証装置１３０では，サービス提供装置１５０に対して送付する検証応答データ１２３０を生成する（サービス提供装置１５０に送信した署名データおよび属性証明書検証装置に送信した検証要求データには利用者装置の公開鍵証明書は入っていないが，属性証明書検証装置は認証局装置から利用者装置の公開鍵証明書を入手できることを前提として，所定の属性情報をもった利用者装置の正当性の結果のみを応答するデータ（利用者装置の公開鍵証明書は含まれていない）を生成する）。検証応答データの具体的な生成方法については，図１２の説明にて記述している。当該検証応答データ１２３０内の検証結果情報１２１０には，上記ステップ２０１２および２０１３にて検証した結果を格納するものとする。また，上記ステップ２０１１にて受信した検証要求データ１１３０に，利用者または端末の属性証明書６６０を取得するために必要な情報６７０が含まれている場合には，上記ステップ２０２０にて取得した利用者または端末の属性証明書６６０あるいは当該属性証明書６６０を解析および抽出した当該属性証明書６６０内に記載されている属性情報１２４０を，当該検証応答データ１２３０に含める。
【００７５】
また，当該検証応答データは，改ざん防止と生成者証明のため，属性証明書検証局の秘密鍵５４０にて電子署名を付与する（ステップ２０１４）。上記ステップにて，検証応答データ１２３０を生成したら，属性証明書検証装置１３０では，サービス提供装置１５０に当該検証応答データ１２３０を送信する（ステップ２０１５）。
【００７６】
サービス提供装置１５０では，属性証明書検証装置１３０が送信した検証応答データ１２３０を，属性証明書検証装置利用プログラム７３０にて受信する（ステップ２０１６）。上記ステップにて，検証応答データ１２３０を受信したら，当該データに付与されている属性証明書検証局の署名値１２２０を，当該データ中に含まれている属性証明書検証局の公開鍵証明書５５０で検証できることを確認する。また，当該公開鍵証明書に付与されている署名が，その上位の公開鍵証明書である認証局の公開鍵証明書３６０で検証できることを確認する。さらに，認証局の公開鍵証明書３６０が，サービス提供装置１５０内にある信頼点情報７５０と一致することを確認する（ステップ２０１７）。
【００７７】
上記ステップ２０１２，２０１３，および，２０１７にて，検証処理が全て成功している場合には，属性証明書の検証に成功したものとし，続いて，サービス提供装置１５０の提供するサービスを利用する資格があるかどうかを，上記ステップ２０１６にて受信した検証応答データ１２３０内に含まれる利用者または端末の属性証明書６６０を解析及び抽出することによって得られた属性情報６７０，もしくは，上記ステップ２０１６にて受信した検証応答データ１２３０内に含まれる利用者または端末の属性証明書に記載されている属性情報６７０を元に確認する。
【００７８】
資格の確認の結果，サービスを利用する資格があると確認された場合には，サービス提供プログラム７２０は，正しいサービス応答を利用者装置１４０に送信する。そうでない場合は，サービスを利用できない旨記したサービス応答を利用者装置１４０に送信する（ステップ２０１８）。利用者装置１４０では，サービス提供装置１５０が送信したサービス応答を，サービス利用プログラム６２０にて受信する（ステップ２０１９）。以上の手順によって，サービス提供者装置１５０における利用者装置１４０の資格認証は，従来の安全性を確保しつつ，プライバシーも保護した形で実施することが可能となる。
【００７９】
次に，図１４，図１５および図１６を参照しながら，本発明の実施形態に係る属性証明書検証装置を用いた資格認証の種々の態様を再説明する。図１４において，属性証明書検証装置１３０は，信頼する認証局の公開鍵証明書を保管しておく信頼点情報管理機能を備えている。サービス提供装置１５０は利用者装置１４０からの署名対象データと，署名値と，属性証明書とをもとに，署名対象データもしくはそのハッシュ値と，署名値と，属性証明書もしくは利用者公開鍵証明書のポインタとを含む検証要求データを生成して，属性証明書検証装置１３０に送信する。
【００８０】
属性証明書検証装置１３０は，サービス提供装置１５０からの検証要求データと，信頼点情報（認証局の公開鍵証明書）と，認証局から得た利用者（サブジェクト）の公開鍵証明書と，を用いて利用者の正当性を検証し，さらに，属性証明書と認証局の公開鍵証明書とを用いて属性証明書の正当性を検証して，検証結果をサービス提供装置１５０に返信する。
【００８１】
属性証明書検証装置１３０における具体的な検証手法は，サービス提供装置から検証要求データを受信し，検証要求データに含まれている署名対象データあるいはそのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書と，属性証明書検証装置内に予め保管しておいた信頼のできる認証局装置の公開鍵証明書と，属性証明書の記載内容をもとに認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書を提示した者の正当性の検証，および，検証要求データに含まれているサブジェクトの公開鍵証明書に結びついた属性証明書と，信頼のできる認証局の公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書の内容の正当性の検証を行い，属性証明書の検証結果を含んだ検証応答データを生成し，サービス提供装置に対して検証応答データを返信する。
【００８２】
図１５の（１），（２）においては，サービス提供装置１５０が信頼点情報管理機能を備えている。サービス提供装置１５０は利用者装置１４０からの署名対象データと，署名値と，属性証明書のポインタとをもとに，署名対象データもしくはそのハッシュ値と，署名値と，属性証明書のポインタと，信頼点情報とを含む検証要求データを生成して，属性証明書検証装置１３０に送信する。属性証明書検証装置１３０は，サービス提供装置１５０からの検証要求データと，属性認証局から得る属性証明書と，認証局から得る利用者の公開鍵証明書と，に基づいて利用者の正当性を検証するとともに，属性証明書の正当性を検証して，検証結果と属性証明書もしくは属性値をサービス提供装置１５０に返信する。
【００８３】
属性証明書検証装置１３０における具体的な検証手法は，サービス提供装置から検証要求データを受信し，検証要求データに含まれている署名対象データあるいはそのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報をもとに属性認証局装置から取得した属性証明書と，サービス提供装置が信頼する認証局装置の公開鍵証明書と，この取得した属性証明書の記載内容をもとに認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書を提示した者の正当性の検証，および，この取得した属性証明書と，検証要求データに含まれているサービス提供装置が信頼する認証局装置の公開鍵証明書をさらに用いて，認証パスの構築，検証および有効性確認によって属性証明書の内容の正当性の検証を行い，属性証明書の検証結果と，属性証明書あるいは属性証明書内に記載されている属性情報を含んだ検証応答データを生成し，サービス提供装置に対して検証応答データを返信する。
【００８４】
図１６の（１），（２）においては，属性証明書検証装置１３０が，信頼する認証局の公開鍵証明書を保管しておく信頼点情報管理機能を備えている。サービス提供装置１５０は利用者装置１４０からの署名対象データと，署名値と，属性証明書のポインタとをもとに，署名対象データもしくはそのハッシュ値と，署名値と，属性証明書のポインタとを含む検証要求データを生成して，属性証明書検証装置１３０に送信する。属性証明書検証装置１３０は，サービス提供装置１５０からの検証要求データと，属性認証局から得る属性証明書と，認証局から得る利用者の公開鍵証明書と，信頼点情報に基づいて利用者の正当性を検証するとともに，属性証明書の正当性を検証して，検証結果と属性証明書もしくは属性値をサービス提供装置１５０に返信する。
【００８５】
属性証明書検証装置１３０における具体的な検証手法は，サービス提供装置から検証要求データを受信し，検証要求データに含まれている署名対象データあるいはそのハッシュ値と，サブジェクトの公開鍵証明書に対応した秘密鍵によって生成される署名値と，サブジェクトの公開鍵証明書に結びついた属性証明書を取得するために必要な情報をもとに属性認証局装置から取得した属性証明書と，属性証明書検証装置内に予め保管しておいた信頼のできる認証局装置の公開鍵証明書と，この取得した属性証明書の記載内容をもとに認証局装置から取得したサブジェクトの公開鍵証明書を用いて，認証パスの構築，検証および有効性確認によって属性証明書を提示した者の正当性の検証，および，この取得した属性証明書と，信頼のできる認証局装置の公開鍵証明書をさらに用いて，認証パスの構築，検証および有効性確認によって属性証明書の内容の正当性の検証を行い，属性証明書の検証結果と，属性証明書あるいは属性証明書内に記載されている属性情報を含んだ検証応答データを生成し，サービス提供装置に対して検証応答データを返信する。
【００８６】
以上説明したように，本発明の実施形態は，次のような技術的観点をもって構成することを主たる特徴とするものである。すなわち，公開鍵基盤技術の安全性を保ちつつ，公開鍵証明書のサブジェクトに記載されている個体を特定することの可能なプライバシー情報を検証者側に知らせないようにして，ネットワーク上での資格認証を実現することを課題として，信頼できる第三者機関が運営する属性証明書検証装置のみがユーザの公開鍵証明書にアクセスできるような環境を用意し，検証者は，資格を提示したユーザから受信した属性証明書情報と署名データ情報とを属性証明書検証装置に送信し，属性証明書検証装置に当該属性証明書の提示者の正当性の判断を依頼することで，検証者にユーザの公開鍵証明書の内容を知らせない方法を実現する。
【図面の簡単な説明】
【００８７】
【図１】本発明の実施形態に係る属性証明書検証装置を適用するためのシステム構成を示す図である。
【図２】本発明の実施形態に係る属性証明書検証装置の他，図１示す，認証局装置，属性認証局装置，利用者装置，及び，サービス提供装置のハードウェア構成を示す図である。
【図３】本実施形態に関連する認証局装置のソフトウェア構成を示す図である。
【図４】本実施形態に関連する属性認証局装置のソフトウェア構成を示す図である。
【図５】本実施形態に係る属性証明書検証装置のソフトウェア構成を示す図である。
【図６】本実施形態に関連する利用者用装置のソフトウェア構成を示す図である。
【図７】本実施形態に関連するサービス提供装置のソフトウェア構成を示す図である。
【図８】本発明の実施形態に係る属性証明書検証装置を適用したシステムにおける認証パスの構造を示す図である。
【図９】本実施形態で用いる利用者または端末の公開鍵証明書，及び，属性証明書のデータ仕様を示す図である。
【図１０】本実施形態における署名データのデータ仕様を示す図である。
【図１１】本実施形態における検証要求データのデータ仕様を示す図である。
【図１２】本実施形態における検証応答データのデータ仕様を示す図である。
【図１３】本発明の実施形態に係る属性証明書検証装置を用いた資格認証方法のフローを示す図である。
【図１４】本発明の実施形態に係る属性証明書検証装置を用いた資格認証の一態様を示す図である。
【図１５】本発明の実施形態に係る属性証明書検証装置を用いた資格認証の他の態様を示す図である。
【図１６】本発明の実施形態に係る属性証明書検証装置を用いた資格認証の別の態様を示す図である。
【符号の説明】
【００８８】
１１０：認証局装置，１２０：属性認証局装置，１３０：属性証明書検証装置，１４０：利用者装置，１５０：サービス提供装置，１６０：ネットワーク，２１０：入力装置，２２０：表示装置，２３０：ＣＰＵ，２４０：メモリ，２５０：記憶装置，２６０：通信装置，２７０：バス，３１０：オペレーティングシステム，３２０：公開鍵証明書発行プログラム，３３０：失効情報発行プログラム，３４０：情報公開プログラム，３５０：認証局の秘密鍵，３６０：認証局の公開鍵証明書，３７０：失効情報，３８０：利用者または端末の公開鍵証明書，４２０：属性証明書発行プログラム，４３０：属性証明書失効情報発行プログラム，４４０：属性証明書失効情報公開プログラム，４５０：属性認証局の秘密鍵，４６０：属性認証局の公開鍵証明書，４７０：属性証明書失効情報，４８０：情報公開プログラム，５２０：属性証明書提示者正当性検証プログラム，５３０：属性証明書内容正当性検証プログラム，５４０：属性証明書検証局の秘密鍵，５５０：属性証明書検証局の公開鍵証明書，５６０：キャッシュ情報，６２０：サービス利用プログラム，６３０：属性証明書利用プログラム，６５０：利用者または端末の秘密鍵，６６０：利用者または端末の属性証明書，６７０：利用者または端末の属性証明書を取得するために必要な情報，７２０：サービス提供プログラム，７３０：属性証明書検証装置利用プログラム，７４０：サービス提供用データ，７５０：信頼点情報，１０１０：署名対象データ，１０２０：利用者または端末の秘密鍵による署名値，１０３０：署名データ，１１１０：内容正当性検証実行有無フラグ，１１２０：その他の情報，１１３０：検証要求データ，１２１０：検証結果情報，１２２０：属性証明書検証局の秘密鍵による署名値，１２３０：検証応答データ，利用者または端末の属性証明書に記載されている属性情報
【図１】
2006340178.tif 000003
【図２】
2006340178.tif 000004
【図３】
2006340178.tif 000005
【図４】
2006340178.tif 000006
【図５】
2006340178.tif 000007
【図６】
2006340178.tif 000008
【図７】
2006340178.tif 000009
【図８】
2006340178.tif 000010
【図９】
2006340178.tif 000011
【図１０】
2006340178.tif 000012
【図１１】
2006340178.tif 000013
【図１２】
2006340178.tif 000014
【図１３】
2006340178.tif 000015
【図１４】
2006340178.tif 000016
【図１５】
2006340178.tif 000017
【図１６】
2006340178.tif 000018