(57)【特許請求の範囲】
【請求項１】
ユーザの操作によってサーバ装置との間でネットワークを介して秘匿通信をする前に、前記サーバ装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なクライアント装置であって、
前記ユーザを生体認証するための生体認証手段と、
公開鍵を含むクライアント証明書が記憶された証明書記憶手段と、
前記公開鍵に対応する秘密鍵が記憶された秘密鍵記憶手段と、
前記生体認証手段の生体認証方式を示す生体認証方式情報が記憶された生体認証方式記憶手段と、
前記合意処理中に、前記サーバ装置から乱数を含むメッセージを受信する手段と、
前記メッセージの受信後、前記生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージを前記サーバ装置に送信する手段と、
前記生体認証交渉メッセージの送信後、前記サーバ装置から通知された生体認証方式情報に基づいて、前記生体認証手段を起動する手段と、
前記乱数を前記秘密鍵に基づいて暗号化し、暗号化乱数を生成する手段と、
前記生体認証手段による生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記暗号化乱数と前記クライアント証明書とから前記秘密鍵に基づいて、認証子を生成する手段と、
前記生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記暗号化乱数と前記クライアント証明書と前記認証子とを含む認証コンテキストを前記サーバ装置に送信することにより、前記合意処理を継続する手段と、
を備えたことを特徴とするクライアント装置。
【請求項２】
ユーザに操作されるクライアント装置との間でネットワークを介して秘匿通信をする前に、前記クライアント装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なサーバ装置であって、
受け入れ可能な前記ユーザの生体認証方式を示す複数の生体認証方式情報が記憶された生体認証方式記憶手段と、
前記合意処理中に、乱数を含むメッセージを前記クライアント装置に送信する手段と、
前記メッセージの送信後、前記クライアント装置の生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージを前記クライアント装置から受信する手段と、
前記生体認証交渉メッセージ内の生体認証方式情報が前記生体認証方式記憶手段内の各生体認証方式情報のいずれかに一致するか否かを判定する手段と、
前記判定の結果が一致を示すとき、当該生体認証方式情報を前記クライアント装置に通知する手段と、
前記通知の後、前記生体認証方式情報に基づく生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と暗号化乱数とクライアント証明書と認証子とを含む認証コンテキストを前記クライアント装置から受信する手段と、
前記認証コンテキスト内の生体認証の結果が不正を示すとき、前記合意処理を中断する手段と、
前記認証コンテキスト内の生体認証方式情報と前記通知した生体認証方式情報とが互いに異なるとき、前記合意処理を中断する手段と、
前記認証コンテキスト内の暗号化乱数を前記クライアント証明書内の公開鍵に基づいて復号し、得られた乱数が前記メッセージ内の乱数と異なるとき、前記合意処理を中断する手段と、
前記クライアント証明書内の公開鍵に基づいて前記認証子を検証し、検証結果が不正を示すとき、前記合意処理を中断する手段と、
を備えたことを特徴とするサーバ装置。
【請求項３】
ユーザの操作によってサーバ装置との間でネットワークを介して秘匿通信をする前に、前記サーバ装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なクライアント装置であって、
前記合意処理中に、前記ユーザから生体情報を取得するための生体情報取得手段と、
前記生体情報取得手段の生体認証方式を示す生体認証方式情報が記憶された生体認証方式記憶手段と、
第１乱数を生成するための乱数生成手段と、
前記合意処理中に、前記第１乱数と、使用可能な暗号アルゴリズムのリストとを含む第１メッセージを作成し、この第１メッセージを前記サーバ装置に送信する手段と、
前記第１メッセージの送信後、前記サーバ装置から第２乱数と、前記リスト内で使用する暗号アルゴリズムの指定とを含む第２メッセージを受信する手段と、
前記生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージを前記サーバ装置に送信する手段と、
前記生体認証交渉メッセージの送信後、前記サーバ装置から通知された生体認証方式情報に基づいて、前記生体情報取得手段を起動する手段と、
前記指定された暗号アルゴリズムを使用して、プリマスターシークレットデータを生成して、当該プリマスターシークレットデータを暗号化し、当該暗号化したプリマスターシークレットデータを含む第３メッセージを前記サーバ装置に送信する手段と、
前記第１乱数、前記第２乱数及び前記プリマスターシークレットデータに基づいて、ハッシュアルゴリズムにより暗号化用パラメータを生成する手段と、
前記生体情報取得手段により取得した生体情報を前記暗号化用パラメータに基づいて暗号化し、得られた暗号化生体情報を前記サーバ装置に通知することにより、前記合意処理を継続する手段と、
を備えたことを特徴とするクライアント装置。
【請求項４】
ユーザに操作されるクライアント装置との間でネットワークを介して秘匿通信をする前に、前記クライアント装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なサーバ装置であって、
受け入れ可能な前記ユーザの生体認証方式を示す複数の生体認証方式情報が記憶された生体認証方式記憶手段と、
前記ユーザの生体参照情報が記憶された生体参照情報記憶手段と、
前記合意処理中に、前記クライアント装置から第１乱数と、使用可能な暗号アルゴリズムのリストとを含む第１メッセージを受信する手段と、
前記第１メッセージの受信後、第２乱数と、前記リスト内で使用する暗号アルゴリズムの指定とを含む第２メッセージを前記クライアント装置に送信する手段と、
前記クライアント装置の生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージを前記クライアント装置から受信する手段と、
前記生体認証交渉メッセージ内の生体認証方式情報が前記生体認証方式記憶手段内の各生体認証方式情報のいずれかに一致するか否かを判定する手段と、
前記判定の結果が一致を示すとき、当該生体認証方式情報を前記クライアント装置に通知する手段と、
前記指定した暗号アルゴリズムを使用して暗号化されたプリマスターシークレットデータを含む第３メッセージを前記クライアント装置から受信する手段と、
前記通知の後、前記生体認証方式情報に従って取得された前記ユーザの生体情報が前記第１乱数、前記第２乱数及び前記プリマスターシークレットデータに基づいて暗号化されてなる暗号化生体情報を前記クライアント装置から受信する手段と、
前記第３メッセージ内の前記暗号化されたプリマスターシークレットデータを、前記指定した暗号アルゴリズムを使用して復号する手段と、
前記第１メッセージ内の第１乱数、前記第２メッセージ内の第２乱数及び前記復号したプリマスターシークレットデータに基づいて、ハッシュアルゴリズムにより暗号化用パラメータを生成する手段と、
前記暗号化生体情報を前記暗号化用パラメータに基づいて復号する手段と、
前記復号により得られた生体情報を、前記生体参照情報記憶手段内の生体参照情報に基づいて生体認証する生体認証手段と、
前記生体認証の結果が不正を示すとき、前記合意処理を中断する手段と、
を備えたことを特徴とするサーバ装置。
【請求項５】
ユーザの操作によってサーバ装置との間でネットワークを介して秘匿通信をする前に、前記サーバ装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なクライアント装置であって、
前記ユーザを生体認証するための生体認証手段と、
公開鍵を含むクライアント証明書が記憶された証明書記憶手段と、
前記公開鍵に対応する秘密鍵が記憶された秘密鍵記憶手段と、
前記合意処理中に、前記ユーザの生体認証の結果に基づいてクライアント証明書を取得する旨を含む第１メッセージを前記サーバ装置に送信する手段と、
前記第１メッセージの送信後、前記サーバ装置から乱数を含む第２メッセージを受信する手段と、
前記第２メッセージの受信後、前記生体認証手段を起動する手段と、
前記乱数を前記秘密鍵に基づいて暗号化し、暗号化乱数を生成する手段と、
前記生体認証手段による生体認証の結果が正当のとき、前記証明書記憶手段内のクライアント証明書を前記サーバ装置に送信する手段と、
前記生体認証の結果およびその処理の正当性を保証する情報及び前記暗号化乱数から前記秘密鍵に基づいて、認証子を生成する手段と、
前記生体認証の結果およびその処理の正当性を保証する情報及び前記暗号化乱数と前記認証子とを含む認証コンテキストを前記サーバ装置に送信することにより、前記合意処理を継続する手段と、
を備えたことを特徴とするクライアント装置。
【請求項６】
ユーザに操作されるクライアント装置との間でネットワークを介して秘匿通信をする前に、前記クライアント装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なサーバ装置であって、
前記合意処理中に、前記ユーザの生体認証の結果に基づいてクライアント証明書を取得する旨を含む第１メッセージを前記クライアント装置から受信する手段と、
前記第１メッセージの受信後、乱数を含む第２メッセージを前記クライアント装置に送信する手段と、
前記第２メッセージの送信後、前記クライアント装置からクライアント証明書を受信する手段と、
前記第２メッセージの送信後、前記ユーザの生体認証の結果およびその処理の正当性を保証する情報と暗号化乱数と認証子とを含む認証コンテキストを前記クライアント装置から受信する手段と、
前記受信したクライアント証明書及び認証コンテキストを記憶する記憶手段と、
前記記憶手段に記憶された認証コンテキスト内の生体認証の結果が不正を示すとき、前記合意処理を中断する手段と、
前記記憶手段に記憶された認証コンテキスト内の暗号化乱数を前記クライアント証明書内の公開鍵に基づいて復号し、得られた乱数が前記第２メッセージ内の乱数と異なるとき、前記合意処理を中断する手段と、
前記記憶手段に記憶されたクライアント証明書内の公開鍵に基づいて前記認証子を検証し、検証結果が不正を示すとき、前記合意処理を中断する手段と、
を備えたことを特徴とするサーバ装置。
【請求項７】
ユーザの操作によってサーバ装置との間でネットワークを介して秘匿通信をする前に、前記サーバ装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なクライアント装置であって、
公開鍵を含むクライアント証明書が記憶された証明書記憶手段と、
前記公開鍵に対応する秘密鍵が記憶された秘密鍵記憶手段と、
前記合意処理の前に、前記ユーザを生体認証するための生体認証手段と、
前記生体認証手段の生体認証方式を示す生体認証方式情報が記憶された生体認証方式記憶手段と、
前記生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記クライアント証明書とから前記秘密鍵に基づいて、認証子を生成する手段と、
前記合意処理の前に、前記生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記クライアント証明書と前記認証子とを含む認証コンテキストを生成する手段と、
前記合意処理の前に、前記認証コンテキストをタイムスタンプ提供装置に送信する手段と、
前記送信した認証コンテキスト及び前記タイムスタンプ提供装置における日時情報に対して、当該タイムスタンプ提供装置の秘密鍵に基づいて生成されたタイムスタンプが付与されることにより、前記タイムスタンプが付与された認証コンテキストを前記タイムスタンプ提供装置から受信する手段と、
前記合意処理中に、前記生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージを前記サーバ装置に送信する手段と、
前記生体認証交渉メッセージの送信後、前記サーバ装置から通知された生体認証方式情報に基づいて、前記タイムスタンプが付与された認証コンテキストを前記サーバ装置に送信することにより、前記合意処理を継続する手段と、
を備えたことを特徴とするクライアント装置。
【請求項８】
ユーザに操作されるクライアント装置との間でネットワークを介して秘匿通信をする前に、前記クライアント装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なサーバ装置であって、
受け入れ可能な前記ユーザの生体認証方式を示す複数の生体認証方式情報が記憶された生体認証方式記憶手段と、
前記合意処理中に、前記クライアント装置の生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージを前記クライアント装置から受信する手段と、
前記生体認証交渉メッセージ内の生体認証方式情報が前記生体認証方式記憶手段内の各生体認証方式情報のいずれかに一致するか否かを判定する手段と、
前記判定の結果が一致を示すとき、当該生体認証方式情報を前記クライアント装置に通知する手段と、
前記通知の後、タイムスタンプ提供装置の秘密鍵によるタイムスタンプが付与され且つ前記ユーザの生体認証の結果、生体認証方式情報、クライアント証明書及び認証子を含む認証コンテキストを前記クライアント装置から受信する手段と、
前記認証コンテキスト内の生体認証の結果が不正を示すとき、前記合意処理を中断する手段と、
前記認証コンテキスト内の生体認証方式情報が前記通知した生体認証方式とは異なるとき、前記合意処理を中断する手段と、
前記クライアント証明書内の公開鍵に基づいて前記認証子を検証し、検証結果が不正を示すとき、前記合意処理を中断する手段と、
前記タイムスタンプ提供装置の秘密鍵に対応する公開鍵に基づいて前記タイムスタンプを復号し、得られた日時情報と現在の日時情報との差分が予め定めた値よりも大きいとき、前記合意処理を中断する手段と、
を備えたことを特徴とするサーバ装置。
【請求項９】
ユーザの操作によってサーバ装置との間でネットワークを介して秘匿通信をする前に、前記サーバ装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なクライアント装置のプログラムであって、
前記クライアント装置のコンピュータを、
前記ユーザを生体認証するための生体認証手段、
公開鍵を含むクライアント証明書を証明書記憶手段に書き込む手段、
前記公開鍵に対応する秘密鍵を秘密鍵記憶手段に書き込む手段、
前記生体認証手段の生体認証方式を示す生体認証方式情報を生体認証方式記憶手段に書き込む手段、
前記合意処理中に、前記サーバ装置から乱数を含むメッセージを受信する手段、
前記メッセージの受信後、前記生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージを前記サーバ装置に送信する手段、
前記生体認証交渉メッセージの送信後、前記サーバ装置から通知された生体認証方式情報に基づいて、前記生体認証手段を起動する手段、
前記乱数を前記秘密鍵に基づいて暗号化し、暗号化乱数を生成する手段、
前記生体認証手段による生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記暗号化乱数と前記クライアント証明書とから前記秘密鍵に基づいて、認証子を生成する手段、
前記生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記暗号化乱数と前記クライアント証明書と前記認証子とを含む認証コンテキストを前記サーバ装置に送信することにより、前記合意処理を継続する手段、
として機能させるためのプログラム。
【請求項１０】
ユーザに操作されるクライアント装置との間でネットワークを介して秘匿通信をする前に、前記クライアント装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なサーバ装置のプログラムであって、
前記サーバ装置のコンピュータを、
受け入れ可能な前記ユーザの生体認証方式を示す複数の生体認証方式情報を生体認証方式記憶手段に書き込む手段、
前記合意処理中に、乱数を含むメッセージを前記クライアント装置に送信する手段、
前記メッセージの送信後、前記クライアント装置の生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージを前記クライアント装置から受信する手段、
前記生体認証交渉メッセージ内の生体認証方式情報が前記生体認証方式記憶手段内の各生体認証方式情報のいずれかに一致するか否かを判定する手段、
前記判定の結果が一致を示すとき、当該生体認証方式情報を前記クライアント装置に通知する手段、
前記通知の後、前記生体認証方式情報に基づく生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と暗号化乱数とクライアント証明書と認証子とを含む認証コンテキストを前記クライアント装置から受信する手段、
前記認証コンテキスト内の生体認証の結果が不正を示すとき、前記合意処理を中断する手段、
前記認証コンテキスト内の生体認証方式情報と前記通知した生体認証方式情報とが互いに異なるとき、前記合意処理を中断する手段、
前記認証コンテキスト内の暗号化乱数を前記クライアント証明書内の公開鍵に基づいて復号し、得られた乱数が前記メッセージ内の乱数と異なるとき、前記合意処理を中断する手段、
前記クライアント証明書内の公開鍵に基づいて前記認証子を検証し、検証結果が不正を示すとき、前記合意処理を中断する手段、
として機能させるためのプログラム。
【請求項１１】
ユーザの操作によってサーバ装置との間でネットワークを介して秘匿通信をする前に、前記サーバ装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なクライアント装置のプログラムであって、
前記クライアント装置のコンピュータを、
前記合意処理中に、前記ユーザから生体情報を取得するための生体情報取得手段、
前記生体情報取得手段の生体認証方式を示す生体認証方式情報を生体認証方式記憶手段に書き込む手段、
第１乱数を生成するための乱数生成手段、
前記合意処理中に、前記第１乱数と、使用可能な暗号アルゴリズムのリストとを含む第１メッセージを作成し、この第１メッセージを前記サーバ装置に送信する手段、
前記第１メッセージの送信後、前記サーバ装置から第２乱数と、前記リスト内で使用する暗号アルゴリズムの指定とを含む第２メッセージを受信する手段、
前記生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージを前記サーバ装置に送信する手段、
前記生体認証交渉メッセージの送信後、前記サーバ装置から通知された生体認証方式情報に基づいて、前記生体情報取得手段を起動する手段、
前記指定された暗号アルゴリズムを使用して、プリマスターシークレットデータを生成して、当該プリマスターシークレットデータを暗号化し、当該暗号化したプリマスターシークレットデータを含む第３メッセージを前記サーバ装置に送信する手段、
前記第１乱数、前記第２乱数及び前記プリマスターシークレットデータに基づいて、ハッシュアルゴリズムにより暗号化用パラメータを生成する手段、
前記生体情報取得手段により取得した生体情報を前記暗号化用パラメータに基づいて暗号化し、得られた暗号化生体情報を前記サーバ装置に通知することにより、前記合意処理を継続する手段、
として機能させるためのプログラム。
【請求項１２】
ユーザに操作されるクライアント装置との間でネットワークを介して秘匿通信をする前に、前記クライアント装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なサーバ装置のプログラムであって、
前記サーバ装置のコンピュータを、
受け入れ可能な前記ユーザの生体認証方式を示す複数の生体認証方式情報を生体認証方式記憶手段に書き込む手段、
前記ユーザの生体参照情報を生体参照情報記憶手段に書き込む手段、
前記合意処理中に、前記クライアント装置から第１乱数と、使用可能な暗号アルゴリズムのリストとを含む第１メッセージを受信する手段、
前記第１メッセージの受信後、第２乱数と、前記リスト内で使用する暗号アルゴリズムの指定とを含む第２メッセージを前記クライアント装置に送信する手段、
前記クライアント装置の生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージを前記クライアント装置から受信する手段、
前記生体認証交渉メッセージ内の生体認証方式情報が前記生体認証方式記憶手段内の各生体認証方式情報のいずれかに一致するか否かを判定する手段、
前記判定の結果が一致を示すとき、当該生体認証方式情報を前記クライアント装置に通知する手段、
前記指定した暗号アルゴリズムを使用して暗号化されたプリマスターシークレットデータを含む第３メッセージを前記クライアント装置から受信する手段、
前記通知の後、前記生体認証方式情報に従って取得された前記ユーザの生体情報が前記第１乱数、前記第２乱数及び前記プリマスターシークレットデータに基づいて暗号化されてなる暗号化生体情報を前記クライアント装置から受信する手段、
前記第３メッセージ内の前記暗号化されたプリマスターシークレットデータを、前記指定した暗号アルゴリズムを使用して復号する手段、
前記第１メッセージ内の第１乱数、前記第２メッセージ内の第２乱数及び前記復号したプリマスターシークレットデータに基づいて、ハッシュアルゴリズムにより暗号化用パラメータを生成する手段、
前記暗号化生体情報を前記暗号化用パラメータに基づいて復号する手段、
前記復号により得られた生体情報を、前記生体参照情報記憶手段内の生体参照情報に基づいて生体認証する生体認証手段、
前記生体認証の結果が不正を示すとき、前記合意処理を中断する手段、
として機能させるためのプログラム。
【請求項１３】
ユーザの操作によってサーバ装置との間でネットワークを介して秘匿通信をする前に、前記サーバ装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なクライアント装置のプログラムであって、
前記クライアント装置のコンピュータを、
前記ユーザを生体認証するための生体認証手段、
公開鍵を含むクライアント証明書を証明書記憶手段に書き込む手段、
前記公開鍵に対応する秘密鍵を秘密鍵記憶手段に書き込む手段、
前記合意処理中に、前記ユーザの生体認証の結果に基づいてクライアント証明書を取得する旨を含む第１メッセージを前記サーバ装置に送信する手段、
前記第１メッセージの送信後、前記サーバ装置から乱数を含む第２メッセージを受信する手段、
前記第２メッセージの受信後、前記生体認証手段を起動する手段、
前記乱数を前記秘密鍵に基づいて暗号化し、暗号化乱数を生成する手段、
前記生体認証手段による生体認証の結果が正当のとき、前記証明書記憶手段内のクライアント証明書を前記サーバ装置に送信する手段、
前記生体認証の結果およびその処理の正当性を保証する情報及び前記暗号化乱数から前記秘密鍵に基づいて、認証子を生成する手段、
前記生体認証の結果およびその処理の正当性を保証する情報及び前記暗号化乱数と前記認証子とを含む認証コンテキストを前記サーバ装置に送信することにより、前記合意処理を継続する手段、
として機能させるためのプログラム。
【請求項１４】
ユーザに操作されるクライアント装置との間でネットワークを介して秘匿通信をする前に、前記クライアント装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なサーバ装置のプログラムであって、
前記サーバ装置のコンピュータを、
前記合意処理中に、前記ユーザの生体認証の結果に基づいてクライアント証明書を取得する旨を含む第１メッセージを前記クライアント装置から受信する手段、
前記第１メッセージの受信後、乱数を含む第２メッセージを前記クライアント装置に送信する手段、
前記第２メッセージの送信後、前記クライアント装置からクライアント証明書を受信する手段、
前記第２メッセージの送信後、前記ユーザの生体認証の結果と暗号化乱数と認証子とを含む認証コンテキストを前記クライアント装置から受信する手段、
前記受信したクライアント証明書及び認証コンテキストを記憶手段に書き込む手段、
前記記憶手段に記憶された認証コンテキスト内の生体認証の結果が不正を示すとき、前記合意処理を中断する手段、
前記記憶手段に記憶された認証コンテキスト内の暗号化乱数を前記クライアント証明書内の公開鍵に基づいて復号し、得られた乱数が前記第２メッセージ内の乱数と異なるとき、前記合意処理を中断する手段、
前記記憶手段に記憶されたクライアント証明書内の公開鍵に基づいて前記認証子を検証し、検証結果が不正を示すとき、前記合意処理を中断する手段、
として機能させるためのプログラム。
【請求項１５】
ユーザの操作によってサーバ装置との間でネットワークを介して秘匿通信をする前に、前記サーバ装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なクライアント装置のプログラムであって、
前記クライアント装置のコンピュータを、
公開鍵を含むクライアント証明書を証明書記憶手段に書き込む手段、
前記公開鍵に対応する秘密鍵を秘密鍵記憶手段に書き込む手段、
前記合意処理の前に、前記ユーザを生体認証するための生体認証手段、
前記生体認証手段の生体認証方式を示す生体認証方式情報を生体認証方式記憶手段に書き込む手段、
前記生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記クライアント証明書とから前記秘密鍵に基づいて、認証子を生成する手段、
前記合意処理の前に、前記生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記クライアント証明書と前記認証子とを含む認証コンテキストを生成する手段、
前記合意処理の前に、前記認証コンテキストをタイムスタンプ提供装置に送信する手段、
前記送信した認証コンテキスト及び前記タイムスタンプ提供装置における日時情報に対して、当該タイムスタンプ提供装置の秘密鍵に基づいて生成されたタイムスタンプが付与されることにより、前記タイムスタンプが付与された認証コンテキストを前記タイムスタンプ提供装置から受信する手段、
前記合意処理中に、前記生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージを前記サーバ装置に送信する手段、
前記生体認証交渉メッセージの送信後、前記サーバ装置から通知された生体認証方式情報に基づいて、前記タイムスタンプが付与された認証コンテキストを前記サーバ装置に送信することにより、前記合意処理を継続する手段、
として機能させるためのプログラム。
【請求項１６】
ユーザに操作されるクライアント装置との間でネットワークを介して秘匿通信をする前に、前記クライアント装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能なサーバ装置のプログラムであって、
前記サーバ装置のコンピュータを、
受け入れ可能な前記ユーザの生体認証方式を示す複数の生体認証方式情報を生体認証方式記憶手段に書き込む手段、
前記合意処理中に、前記クライアント装置の生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージを前記クライアント装置から受信する手段、
前記生体認証交渉メッセージ内の生体認証方式情報が前記生体認証方式記憶手段内の各生体認証方式情報のいずれかに一致するか否かを判定する手段、
前記判定の結果が一致を示すとき、当該生体認証方式情報を前記クライアント装置に通知する手段、
前記通知の後、タイムスタンプ提供装置の秘密鍵によるタイムスタンプが付与され且つ前記ユーザの生体認証の結果およびその処理の正当性を保証する情報、生体認証方式情報、クライアント証明書及び認証子を含む認証コンテキストを前記クライアント装置から受信する手段、
前記認証コンテキスト内の生体認証の結果が不正を示すとき、前記合意処理を中断する手段、
前記認証コンテキスト内の生体認証方式情報が前記通知した生体認証方式とは異なるとき、前記合意処理を中断する手段、
前記クライアント証明書内の公開鍵に基づいて前記認証子を検証し、検証結果が不正を示すとき、前記合意処理を中断する手段、
前記タイムスタンプ提供装置の秘密鍵に対応する公開鍵に基づいて前記タイムスタンプを復号し、得られた日時情報と現在の日時情報との差分が予め定めた値よりも大きいとき、前記合意処理を中断する手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュアセッションを確立するクライアント装置、サーバ装置及びプログラムに係り、例えば、２回のハンドシェイクに伴う不要なパスを存在させずに、エンティティ認証及び生体認証に基づくセキュアセッションを確立し得るクライアント装置、サーバ装置及びプログラムに関する。
【背景技術】
【０００２】
ネットワーク上で情報を暗号化通信するためのプロトコルの１つにＴＬＳ（Transport Layer Security）プロトコルがある。このＴＬＳプロトコルは、エンティティ認証を行った後にセキュアセッションを確立してデータの暗号通信を可能にする技術である（例えば、非特許文献１参照。）。
【０００３】
ＴＬＳプロトコルの関連技術として、ＴＬＳ内部アプリケーション（TLS Inner Application）がある。ＴＬＳ内部アプリケーションは、ＴＬＳハンドシェイク（TLS handshake）によりセキュアセッションを確立した後に、レコード層（Record Layer）において拡張処理を可能にしている（例えば、非特許文献２参照。）。ＴＬＳ内部アプリケーションでは、この拡張処理で生体認証を行うことにより、エンティティ認証と生体認証とを行うことができる（例えば、特許文献１−３及び非特許文献３参照）。
【特許文献１】特開２００３−４４４３６号公報
【特許文献２】特開２００６−１１７６８号公報
【特許文献３】特開２００３−２２４５６２号公報
【非特許文献１】T. Dierks、C. Allen、" The TLS Protocol Version 1.0"、[online]、 [2007年4月27日検索]、インターネット＜URL：http://www.ietf.org/rfc/rfc2246.txt＞
【非特許文献２】P. Funk, S. Blake-Wilson, N. Smith, H. Tschofenig, T. Hardjono、" TLS Inner Application Extension (TLS/IA) draft-funk-tls-inner-application-extension-03.txt"、[online]、 [2007年4月27日検索]、インターネット＜URL：http://tools.ietf.org/wg/tls/draft-funk-tls-inner-application-extension-03.txt＞
【非特許文献３】S. Santesson、" TLS Handshake Message for Supplemental Data"、[online]、 [2007年4月27日検索]、インターネット＜URL：http://www.ietf.org/rfc/rfc4680.txt＞
【非特許文献４】S. Blake-Wilson, M. Nystrom, D. Hopwood, J. Mikkelsen, T. Wright、" Transport Layer Security (TLS) Extension"、[online]、 [2007年4月27日検索]、インターネット＜URL：http://www.ietf.org/rfc/rfc4366.txt＞
【非特許文献５】C. Adams, P. Cain, D. Pinkas, R. Zuccherato、" Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)"、[online]、 [2007年4月27日検索]、インターネット＜URL：http://www.ietf.org/rfc/rfc3161.txt＞
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、以上のようなＴＬＳプロトコル又はＴＬＳ内部アプリケーションの技術においては、本発明者の検討によれば、以下の点で改良の余地があると考えられる。
【０００５】
ＴＬＳプロトコル又はＴＬＳ内部アプリケーションのいずれにしても、エンティティ認証によってセキュアセッションを確立した後に生体認証を行う場合に、単純にエンティティ認証と生体認証をそれぞれ行っていることからハンドシェイク（handshake）を２回行っているに過ぎず、不要なパスが存在する。
【０００６】
さらにエンティティ認証でセキュアセッションを確立した後に生体認証に失敗した場合には、ＴＬＳのセッションを破棄しなければならないので、生体認証までの処理が無駄になってしまう。この場合、エンティティ認証でセキュアセッションを確立した処理という大きい処理が無駄になっている。このため、このような無駄になる処理は低減することが望ましい。
【０００７】
本発明は上記実情を考慮してなされたもので、２回のハンドシェイクに伴う不要なパスを存在させずに、エンティティ認証及び生体認証に基づくセキュアセッションを確立し得るクライアント装置、サーバ装置及びプログラムを提供することを目的とする。
【０００８】
本発明の他の目的は、生体認証に失敗した場合でも、無駄になる処理を低減し得るクライアント装置、サーバ装置及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
第１乃至第４の発明は、ユーザに操作されるクライアント装置とサーバ装置との間でネットワークを介して秘匿通信をする前に、前記サーバ装置との間で互いの証明書認証を含む合意処理を実行し、前記証明書認証の結果が正当のとき、前記秘匿通信をするためのセッションを確立可能な前記クライアント装置及び前記サーバ装置を対象とする。
【００１０】
ここで、第１の発明のクライアント装置は、前記ユーザを生体認証するための生体認証手段と、公開鍵を含むクライアント証明書が記憶された証明書記憶手段と、前記公開鍵に対応する秘密鍵が記憶された秘密鍵記憶手段と、前記生体認証手段の生体認証方式を示す生体認証方式情報が記憶された生体認証方式記憶手段と、前記合意処理中に、前記サーバ装置から乱数を含むメッセージを受信する手段と、前記メッセージの受信後、前記生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージを前記サーバ装置に送信する手段と、前記生体認証交渉メッセージの送信後、前記サーバ装置から通知された生体認証方式情報に基づいて、前記生体認証手段を起動する手段と、前記乱数を前記秘密鍵に基づいて暗号化し、暗号化乱数を生成する手段と、前記生体認証手段による生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記暗号化乱数と前記クライアント証明書とから前記秘密鍵に基づいて、認証子を生成する手段と、前記生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記暗号化乱数と前記クライアント証明書と前記認証子とを含む認証コンテキストを前記サーバ装置に送信することにより、前記合意処理を継続する手段と、を備えている。
【００１１】
第１の発明のサーバ装置は、受け入れ可能な前記ユーザの生体認証方式を示す複数の生体認証方式情報が記憶された生体認証方式記憶手段と、前記合意処理中に、乱数を含むメッセージを前記クライアント装置に送信する手段と、前記メッセージの送信後、前記クライアント装置の生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージを前記クライアント装置から受信する手段と、前記生体認証交渉メッセージ内の生体認証方式情報が前記生体認証方式記憶手段内の各生体認証方式情報のいずれかに一致するか否かを判定する手段と、前記判定の結果が一致を示すとき、当該生体認証方式情報を前記クライアント装置に通知する手段と、前記通知の後、前記生体認証方式情報に基づく生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と暗号化乱数とクライアント証明書と認証子とを含む認証コンテキストを前記クライアント装置から受信する手段と、前記認証コンテキスト内の生体認証の結果が不正を示すとき、前記合意処理を中断する手段と、前記認証コンテキスト内の生体認証方式情報と前記通知した生体認証方式情報とが互いに異なるとき、前記合意処理を中断する手段と、前記認証コンテキスト内の暗号化乱数を前記クライアント証明書内の公開鍵に基づいて復号し、得られた乱数が前記メッセージ内の乱数と異なるとき、前記合意処理を中断する手段と、前記クライアント証明書内の公開鍵に基づいて前記認証子を検証し、検証結果が不正を示すとき、前記合意処理を中断する手段と、を備えている。
【００１２】
また、第２の発明のクライアント装置は、前記合意処理中に、前記ユーザから生体情報を取得するための生体情報取得手段と、前記生体情報取得手段の生体認証方式を示す生体認証方式情報が記憶された生体認証方式記憶手段と、第１乱数を生成するための乱数生成手段と、前記合意処理中に、前記第１乱数と、使用可能な暗号アルゴリズムのリストとを含む第１メッセージを作成し、この第１メッセージを前記サーバ装置に送信する手段と、前記第１メッセージの送信後、前記サーバ装置から第２乱数と、前記リスト内で使用する暗号アルゴリズムの指定とを含む第２メッセージを受信する手段と、前記生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージを前記サーバ装置に送信する手段と、前記生体認証交渉メッセージの送信後、前記サーバ装置から通知された生体認証方式情報に基づいて、前記生体情報取得手段を起動する手段と、前記指定された暗号アルゴリズムを使用して、プリマスターシークレットデータを生成して、当該プリマスターシークレットデータを暗号化し、当該暗号化したプリマスターシークレットデータを含む第３メッセージを前記サーバ装置に送信する手段と、前記第１乱数、前記第２乱数及び前記プリマスターシークレットデータに基づいて、ハッシュアルゴリズムにより暗号化用パラメータを生成する手段と、前記生体情報取得手段により取得した生体情報を前記暗号化用パラメータに基づいて暗号化し、得られた暗号化生体情報を前記サーバ装置に通知することにより、前記合意処理を継続する手段と、を備えている。
【００１３】
第２の発明のサーバ装置は、受け入れ可能な前記ユーザの生体認証方式を示す複数の生体認証方式情報が記憶された生体認証方式記憶手段と、前記ユーザの生体参照情報が記憶された生体参照情報記憶手段と、前記合意処理中に、前記クライアント装置から第１乱数と、使用可能な暗号アルゴリズムのリストとを含む第１メッセージを受信する手段と、前記第１メッセージの受信後、第２乱数と、前記リスト内で使用する暗号アルゴリズムの指定とを含む第２メッセージを前記クライアント装置に送信する手段と、前記クライアント装置の生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージを前記クライアント装置から受信する手段と、前記生体認証交渉メッセージ内の生体認証方式情報が前記生体認証方式記憶手段内の各生体認証方式情報のいずれかに一致するか否かを判定する手段と、前記判定の結果が一致を示すとき、当該生体認証方式情報を前記クライアント装置に通知する手段と、前記指定した暗号アルゴリズムを使用して暗号化されたプリマスターシークレットデータを含む第３メッセージを前記クライアント装置から受信する手段と、前記通知の後、前記生体認証方式情報に従って取得された前記ユーザの生体情報が前記第１乱数、前記第２乱数及び前記プリマスターシークレットデータに基づいて暗号化されてなる暗号化生体情報を前記クライアント装置から受信する手段と、前記第３メッセージ内の前記暗号化されたプリマスターシークレットデータを、前記指定した暗号アルゴリズムを使用して復号する手段と、前記第１メッセージ内の第１乱数、前記第２メッセージ内の第２乱数及び前記復号したプリマスターシークレットデータに基づいて、ハッシュアルゴリズムにより暗号化用パラメータを生成する手段と、前記暗号化生体情報を前記暗号化用パラメータに基づいて復号する手段と、前記復号により得られた生体情報を、前記生体参照情報記憶手段内の生体参照情報に基づいて生体認証する生体認証手段と、前記生体認証の結果が不正を示すとき、前記合意処理を中断する手段と、を備えている。
【００１４】
さらに、第３の発明のクライアント装置は、前記ユーザを生体認証するための生体認証手段と、公開鍵を含むクライアント証明書が記憶された証明書記憶手段と、前記公開鍵に対応する秘密鍵が記憶された秘密鍵記憶手段と、前記合意処理中に、前記ユーザの生体認証の結果に基づいてクライアント証明書を取得する旨を含む第１メッセージを前記サーバ装置に送信する手段と、前記第１メッセージの送信後、前記サーバ装置から乱数を含む第２メッセージを受信する手段と、前記第２メッセージの受信後、前記生体認証手段を起動する手段と、前記乱数を前記秘密鍵に基づいて暗号化し、暗号化乱数を生成する手段と、前記生体認証手段による生体認証の結果が正当のとき、前記証明書記憶手段内のクライアント証明書を前記サーバ装置に送信する手段と、前記生体認証の結果およびその処理の正当性を保証する情報及び前記暗号化乱数から前記秘密鍵に基づいて、認証子を生成する手段と、前記生体認証の結果およびその処理の正当性を保証する情報及び前記暗号化乱数と前記認証子とを含む認証コンテキストを前記サーバ装置に送信することにより、前記合意処理を継続する手段と、を備えている。
【００１５】
第３の発明のサーバ装置は、前記合意処理中に、前記ユーザの生体認証の結果に基づいてクライアント証明書を取得する旨を含む第１メッセージを前記クライアント装置から受信する手段と、前記第１メッセージの受信後、乱数を含む第２メッセージを前記クライアント装置に送信する手段と、前記第２メッセージの送信後、前記クライアント装置からクライアント証明書を受信する手段と、前記第２メッセージの送信後、前記ユーザの生体認証の結果およびその処理の正当性を保証する情報と暗号化乱数と認証子とを含む認証コンテキストを前記クライアント装置から受信する手段と、前記受信したクライアント証明書及び認証コンテキストを記憶する記憶手段と、前記記憶手段に記憶された認証コンテキスト内の生体認証の結果が不正を示すとき、前記合意処理を中断する手段と、前記記憶手段に記憶された認証コンテキスト内の暗号化乱数を前記クライアント証明書内の公開鍵に基づいて復号し、得られた乱数が前記第２メッセージ内の乱数と異なるとき、前記合意処理を中断する手段と、前記記憶手段に記憶されたクライアント証明書内の公開鍵に基づいて前記認証子を検証し、検証結果が不正を示すとき、前記合意処理を中断する手段と、を備えている。
【００１６】
また、第４の発明のクライアント装置は、公開鍵を含むクライアント証明書が記憶された証明書記憶手段と、前記公開鍵に対応する秘密鍵が記憶された秘密鍵記憶手段と、前記合意処理の前に、前記ユーザを生体認証するための生体認証手段と、前記生体認証手段の生体認証方式を示す生体認証方式情報が記憶された生体認証方式記憶手段と、前記生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記クライアント証明書とから前記秘密鍵に基づいて、認証子を生成する手段と、前記合意処理の前に、前記生体認証の結果およびその処理の正当性を保証する情報と前記生体認証方式情報と前記クライアント証明書と前記認証子とを含む認証コンテキストを生成する手段と、前記合意処理の前に、前記認証コンテキストをタイムスタンプ提供装置に送信する手段と、前記送信した認証コンテキスト及び前記タイムスタンプ提供装置における日時情報に対して、当該タイムスタンプ提供装置の秘密鍵に基づいて生成されたタイムスタンプが付与されることにより、前記タイムスタンプが付与された認証コンテキストを前記タイムスタンプ提供装置から受信する手段と、前記合意処理中に、前記生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージを前記サーバ装置に送信する手段と、前記生体認証交渉メッセージの送信後、前記サーバ装置から通知された生体認証方式情報に基づいて、前記タイムスタンプが付与された認証コンテキストを前記サーバ装置に送信することにより、前記合意処理を継続する手段と、を備えている。
【００１７】
第４の発明のサーバ装置は、受け入れ可能な前記ユーザの生体認証方式を示す複数の生体認証方式情報が記憶された生体認証方式記憶手段と、前記合意処理中に、前記クライアント装置の生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージを前記クライアント装置から受信する手段と、前記生体認証交渉メッセージ内の生体認証方式情報が前記生体認証方式記憶手段内の各生体認証方式情報のいずれかに一致するか否かを判定する手段と、前記判定の結果が一致を示すとき、当該生体認証方式情報を前記クライアント装置に通知する手段と、前記通知の後、タイムスタンプ提供装置の秘密鍵によるタイムスタンプが付与され且つ前記ユーザの生体認証の結果およびその処理の正当性を保証する情報、生体認証方式情報、クライアント証明書及び認証子を含む認証コンテキストを前記クライアント装置から受信する手段と、前記認証コンテキスト内の生体認証の結果が不正を示すとき、前記合意処理を中断する手段と、前記認証コンテキスト内の生体認証方式情報が前記通知した生体認証方式とは異なるとき、前記合意処理を中断する手段と、前記クライアント証明書内の公開鍵に基づいて前記認証子を検証し、検証結果が不正を示すとき、前記合意処理を中断する手段と、前記タイムスタンプ提供装置の秘密鍵に対応する公開鍵に基づいて前記タイムスタンプを復号し、得られた日時情報と現在の日時情報との差分が予め定めた値よりも大きいとき、前記合意処理を中断する手段と、を備えている。
【００１８】
なお、以上の各発明は、各々の「装置」として表現したが、「装置」に限らず、「方法」、「プログラム」又は「プログラムを記憶したコンピュータ読み取り可能な記憶媒体」として表現してもよい。
【００１９】
（作用）
第１乃至第４の各発明においては、証明書認証を含む合意処理中に、生体認証をも実行する構成により、２回のハンドシェイクに伴う不要なパスを存在させずに、エンティティ認証及び生体認証に基づくセキュアセッションを確立することができる。また、生体認証に失敗した場合でも、従来に比べ、無駄になる処理を低減することができる。
【００２０】
ここで、第１の発明においては、前述した作用に加え、合意処理中のメッセージに含まれる乱数から生成した暗号化乱数を含む認証コンテキストをサーバ装置に送信する構成により、証明書認証を含む合意処理と生体認証とを有機的に結合させるので、生体認証に伴う通信の発生を抑制することができる。
【００２１】
第２の発明においては、前述した作用に加え、合意処理中の各メッセージに含まれる第１乱数、第２乱数及びプリマスターシークレットデータに基づいて生体情報を暗号化してサーバ装置に送信する構成により、証明書認証を含む合意処理と生体認証とを有機的に結合させつつ、サーバマッチングによる生体認証を実現させることができる。
【００２２】
第３の発明においては、前述した作用に加え、ユーザの生体認証の結果に基づいてクライアント証明書を取得する旨を含む第１メッセージをサーバ装置に送信する構成により、生体認証に基づいて取得したクライアント証明書を用いてセキュアセッションを確立していることをサーバ装置が検証することができる。
【００２３】
第４の発明においては、前述した作用に加え、合意処理の前に、タイムスタンプを付与した認証コンテキストを生成しておき、合意処理中に、タイムスタンプを付与した認証コンテキストをサーバ装置に送信する構成により、合意処理を中断することなく予め作成した認証コンテキストに基づいてセキュアセッションを確立することができる。また、認証コンテキストに付与したタイムスタンプにより、再送攻撃を防止することができる。
【発明の効果】
【００２４】
以上説明したように本発明によれば、証明書認証を含む合意処理中に、生体認証をも実行する構成により、２回のハンドシェイクに伴う不要なパスを存在させずに、エンティティ認証及び生体認証に基づくセキュアセッションを確立することができる。また、生体認証に失敗した場合でも、従来に比べ、無駄になる処理を低減することができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の各実施形態について図面を用いて説明するが、その前に、各実施形態の前提となるＴＬＳハンドシェイク（ＲＦＣ）の各メッセージの概要を述べておく。
【００２６】
ＴＬＳハンドシェイクの各メッセージは、クライアントハロー（Client Hello）、サーバハロー（Server Hello）、サーバ証明書（Server Certificate）（オプション）、証明書要求（Certificate Request）（オプション）、サーバハロー終了（Server Hello Done）、クライアント証明書（Client Certificate）（オプション）、クライアント鍵交換（Client Key Exchange）、証明書検証（Certificate Verify）（オプション）、暗号化仕様変更（Change Cipher Spec）、終了（Finished）、暗号化仕様変更（Change Cipher Spec）、終了（Finished）、の順に通信される。
【００２７】
ここで、クライアントハロー（Client Hello）メッセージは、クライアントからサーバに初めて接続を行うとき、あるいはサーバからHello Requestを受取った時に送信される。クライアントハローメッセージの中には、使用する暗号化アルゴリズムや圧縮アルゴリズムのリストが格納される。既存のセッションを再開するときには、セッションＩＤも送信される。クライアントハローメッセージを送信すると、クライアントは、サーバ側から送信されるサーバハローメッセージを待つ。
【００２８】
サーバハロー（Server Hello）メッセージは、クライアントから送信された暗号化アルゴリズムと圧縮アルゴリズムのリストからどれを使用するかを指定する。セッションＩＤも送信されてきて、サーバが許可する場合には既存セッションを再開する。
【００２９】
サーバ証明書（Server Certificate）メッセージ（オプション）は、サーバから自身の証明書（ＣＣＩＴＴ勧告Ｘ．５０９で規定される形式）をクライアントに送信する。また、ここにはルート認証局までの証明書のリストを全て含んだ形式で送信される。
【００３０】
証明書要求（Certificate Request）メッセージ（オプション）は、サーバからクライアントの証明書の提示を要求する場合に送られる。このメッセージには、サーバが信頼する認証局のリストが付加されている。
【００３１】
サーバハロー終了（Server Hello Done）メッセージは、ハローメッセージの一連の送受信が無事に終了すると、クライアントに送信される。その後、サーバはクライアントからのメッセージを待つ。
【００３２】
クライアント証明書（Client Certificate）メッセージ（オプション）は、サーバから証明書要求（Certificate Request）を受信した場合に送信される。サーバからの要求に適した証明書が無ければ、証明書無し（no_certificate）の警告（Alert）を返信する。データの形式は、サーバ証明書（Server Certificate）と同じである。
【００３３】
クライアント鍵交換（Client Key Exchange）メッセージでは、クライアントハローとサーバハローとで合意した暗号化アルゴリズムを使用して、プリマスターシークレットデータを生成して、暗号化して送信する。プリマスターシークレットデータとは、暗号化に使用するセッション鍵を生成する時に使用されるマスターシークレットを生成する元となるデータである。
【００３４】
証明書検証（Certificate Verify）メッセージ（オプション）では、クライアントの証明書を送信している場合、クライアントが今までのサーバとのハローメッセージのやり取りから署名を生成してサーバに送信する。具体的には、今までのやり取りのデータのハッシュ値をクライアント側の秘密鍵で暗号化したものを送信する。サーバは、クライアントから受信した証明書をクライアント側の公開鍵で復号し、取得したハッシュ値と比較して署名を検証する。
【００３５】
暗号化仕様変更（Change Cipher Spec）メッセージは、クライアントから双方で合意した暗号化アルゴリズムで通信を行うことを宣言するメッセージである。
【００３６】
終了（Finished）メッセージは、クライアントが、サーバとのやり取りが正常に終了し、セッション確立のために必要なデータが揃ったことをサーバに知らせるためのメッセージである。
【００３７】
暗号化仕様変更（Change Cipher Spec）メッセージは、サーバから双方で合意した暗号化アルゴリズムで通信を行うことを宣言するメッセージである。
【００３８】
終了（Finished）メッセージは、サーバが、クライアントとのやり取りが正常に終了し、セッション確立のために必要なデータが揃ったことをクライアントに知らせるためのメッセージである。
【００３９】
以上がＴＬＳハンドシェイクの概要である。続いて、本発明の各実施形態を説明する。なお、以下の各実施形態は、装置毎に、ハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体から対応する装置のコンピュータにインストールされ、対応する装置の機能を実現させるためのプログラムが用いられる。
【００４０】
（第１の実施形態）
図１は本発明の第１の実施形態に係る認証システムの構成を示す模式図である。この認証システムは、インターネット等のネットワークを介して互いに通信可能なクライアント装置１００及びサーバ装置２００から構成される。
【００４１】
ここで、クライアント装置１００は、通信部１０１、制御部１０２、セキュリティポリシー保存部１０３、鍵保存部１０４、生体認証処理制御部１０５、テンプレート保存部１０６、生体情報取得部１０７、生体認証実行部１０８、認証コンテキスト生成部１０９、秘匿部１１０、暗号化部１１１、圧縮部１１２、検証部１１３及び鍵交換部１１４を備えている。
【００４２】
通信部１０１は、制御部１０２に制御され、インターネットを介してサーバ装置２００とデータを送受信する機能をもっている。
【００４３】
制御部１０２は、合意処理中の周知のメッセージ制御機能に加え、合意処理中に生体認証に関するメッセージを制御するように各部１０１，１０３〜１１４を制御する機能をもっている。各メッセージの詳細は後述する。
【００４４】
具体的には制御部１０２は、周知のメッセージ制御機能に加え、合意処理中に、サーバ装置から乱数データを含むサーバハローメッセージを通信部１０１により受信する機能と、サーバハローメッセージの受信後、生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージをサーバ装置２００に送信する機能と、生体認証交渉メッセージの送信後、サーバ装置２００から通知された生体認証方式情報に基づいて、生体認証処理制御部１０５を起動する機能と、サーバハローメッセージ内の乱数データをクライアントの秘密鍵に基づいて暗号化部１１１により暗号化し、暗号化乱数を生成する機能と、認証コンテキスト生成部１０９から受けた認証コンテキストを通信部１０１によりサーバ装置２００に送信することにより、合意処理を継続する機能とをもっている。
【００４５】
セキュリティポリシー保存部１０３は、制御部１０２から読出／書込可能な記憶装置であり、周知の秘匿通信のセキュリティポリシーに加え、生体認証に関するセキュリティポリシーが予め保存されている。
【００４６】
ここで、セキュリティポリシーは、例えば図２に示すように、実行可能なポリシーとして、生体認証実行部１０８の安全性、生体認証実行部１０８の品質、生体認証方式を示す生体認証方式情報、照合パラメータ、テンプレートの安全性、テンプレートの品質が記述されている。
【００４７】
鍵保存部１０４は、制御部１０２、秘匿部１１０及び認証コンテキスト生成部１０９から読出／書込可能な記憶装置であり、クライアント装置１００の公開鍵を含むクライアント証明書と、当該公開鍵に対応する秘密鍵とが保存されている。
【００４８】
生体認証処理制御部１０５は、制御部１０２に制御されて生体認証処理を行うように、テンプレート保存部１０６、生体情報取得部１０７及び生体認証実行部１０８を制御する機能と、得られた生体認証の結果を認証コンテキスト生成部１０９に送出する機能とをもっている。
【００４９】
テンプレート保存部１０６は、予め登録された利用者の生体情報（テンプレート）が格納され、生体認証処理制御部１０５からの要求によりテンプレートを生体認証実行部１０８に出力する機能をもっている。
【００５０】
生体情報取得部１０７は、生体認証処理制御部１０５に制御され、利用者の生体情報を取得して生体認証実行部１０８に出力する機能をもっている。
【００５１】
生体認証実行部１０８は、生体認証処理制御部１０５に制御され、生体情報取得部１０７から受けた生体情報とテンプレート保存部１０６内のテンプレートとに基づく生体認証処理を実行し、生体認証の結果を生体認証処理制御部１０５に出力する機能をもっている。
【００５２】
認証コンテキスト生成部１０９は、生体認証処理制御部１０５により得られた生体認証の結果およびその処理の正当性を保証する情報と生体認証方式情報と暗号化乱数とクライアント証明書とからクライアントの秘密鍵に基づいて、認証子（デジタル署名）を生成する機能と、生体認証の結果と生体認証方式情報と暗号化乱数とクライアント証明書と認証子とを含む認証コンテキストを制御部１０２に送出する機能とをもっている。
【００５３】
ここで、認証コンテキストの一例としては、図３に示すように、一般コンテキストｇ及び特定コンテキストｐを備えたものとしてもよい。一般コンテキストｇは、ヘッダブロックｇｈ及びｇｈに対する認証子ブロックｇａを備えている。特定コンテキストｐは、ヘッダブロックｐｈ、データブロックｐｄ、クライアント証明書ブロックｐｃ及びｐｈ，ｐｄ，ｐｃに対する認証子ブロックｇａを備えている。一般コンテキストｇのヘッダブロックｇｈは、特定コンテキストのヘッダブロックｐｈを一意に特定可能なヘッダ情報を含んでいる。データブロックｐｄは、例えば、生体認証の結果、生体認証方式情報及び暗号化乱数を含んでいる。
【００５４】
秘匿部１１０は、制御部１０２に制御されて鍵に関する秘匿処理を実行するものであり、具体的には、暗号化部１１１、圧縮部１１２、検証部１１３及び鍵交換部１１４を備えている。なお、秘匿部１１０の機能ブロックは、合意処理のオプションで選択しなかった場合のように、使用しない場合もある。これは以下の各実施形態でも同様である。
【００５５】
暗号化部１１１は、制御部１０２から鍵及びデータを受けると、鍵に基づいてデータを暗号化し、得られた暗号化データを制御部１０２に送出する機能をもっている。また、暗号化部１１１は、擬似乱数生成関数（pseudo-random function：ＰＲＦ）により擬似乱数を生成する機能をもっている。
【００５６】
圧縮部１１２は、制御部１０２から受けたデータを圧縮し、得られた圧縮データを制御部１０２に送出する機能をもっている。
【００５７】
検証部１１３は、制御部１０２から鍵及びデータを受けると、鍵に基づいてデータを検証し、検証結果を制御部１０２に送出する機能をもっている。
【００５８】
鍵交換部１１４は、制御部１０２から鍵及びデータを受けると、鍵及びデータに基づいて鍵交換処理を実行し、得られた処理結果を制御部１０２に送出する機能をもっている。
【００５９】
一方、サーバ装置２００は、通信部２０１、制御部２０２、セキュリティポリシー保存部２０３、鍵保存部２０４、認証コンテキスト検証部２０５、秘匿部２０６、暗号化部２０７、圧縮部２０８、検証部２０９及び鍵交換部２１０を備えている。
【００６０】
通信部２０１は、制御部２０２に制御され、インターネットを介してクライアント装置１００とデータを送受信する機能をもっている。
【００６１】
制御部２０２は、周知のメッセージ制御機能に加え、合意処理中に生体認証に関するメッセージを制御するように各部２０１，２０３〜２１０を制御する機能をもっている。各メッセージの詳細は後述する。
【００６２】
具体的には制御部２０２は、周知のメッセージ制御機能に加え、合意処理中に、乱数を含むメッセージをクライアント装置１００に送信する機能と、メッセージの送信後、クライアント装置１００の生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージをクライアント装置１００から受信する機能と、生体認証交渉メッセージ内の生体認証方式情報がセキュリティポリシー保存部２０３内の各生体認証方式情報のいずれかに一致するか否かを判定する機能と、判定の結果が一致を示すとき、当該生体認証方式情報をクライアント装置１００に通知する機能と、通知の後、生体認証方式情報に基づく生体認証の結果およびその処理の正当性を保証する情報と生体認証方式情報と暗号化乱数とクライアント証明書と認証子とを含む認証コンテキストをクライアント装置１００から受信する機能と、認証コンテキストを認証コンテキスト検証部２０５に送出し、認証コンテキスト検証部２０５から受けた検証結果に応じて合意処理を継続又は中断する機能とをもっている。
【００６３】
セキュリティポリシー保存部２０３は、制御部２０２から読出／書込可能な記憶装置であり、周知の秘匿通信のセキュリティポリシーに加え、生体認証に関するセキュリティポリシーが予め保存されている。
【００６４】
ここで、セキュリティポリシーは、例えば図４に示すように、（後述するステップＳＴ１３の）アプリケーション毎に、受け入れ可能なポリシーを列挙しており、各ポリシーには、生体認証実行部の安全性、生体認証実行部の品質、生体認証方式を示す生体認証方式情報、照合パラメータ、テンプレートの安全性、テンプレートの品質が記述されている。また、セキュリティポリシーは、例えば図５に示すように、（後述するステップＳＴ１３の）アプリケーション毎に、受け入れ可能なポリシーが複数存在してもよい。
【００６５】
鍵保存部２０４は、制御部２０２及び秘匿部２０６から読出／書込可能な記憶装置であり、サーバ装置２００の公開鍵を含むサーバ証明書と、当該公開鍵に対応する秘密鍵とが保存されている。
【００６６】
認証コンテキスト検証部２０５は、（ｉ）認証コンテキスト内の生体認証の結果が不正を示すとき、（ｉｉ）認証コンテキスト内の生体認証方式情報と通知した生体認証方式情報とが互いに異なるとき、（ｉｉｉ）認証コンテキスト内の暗号化乱数をクライアント証明書内の公開鍵に基づいて復号し、得られた乱数がメッセージ内の乱数と異なるとき、又は（ｉｖ）クライアント証明書内の公開鍵に基づいて認証子を検証し、検証結果が不正を示すとき、のいずれかに該当する場合、合意処理を中断する旨の検証結果を制御部に送出する機能と、上記（ｉ）〜（ｉｖ）に該当しない場合、合意処理を継続する旨の検証結果を制御部２０２に送出する機能と、をもっている。
【００６７】
秘匿部２０６は、制御部２０２に制御されて鍵に関する秘匿処理を実行するものであり、具体的には、暗号化部２０７、圧縮部２０８、検証部２０９及び鍵交換部２１０を備えている。なお、秘匿部２０６の機能ブロックは、合意処理のオプションで選択しなかった場合のように、使用しない場合もある。これは以下の各実施形態でも同様である。
【００６８】
暗号化部２０７は、制御部２０２から鍵及びデータを受けると、鍵に基づいてデータを暗号化し、得られた暗号化データを制御部２０２に送出する機能をもっている。また、暗号化部２０７は、擬似乱数生成関数（pseudo-random function：ＰＲＦ）により擬似乱数を生成する機能をもっている。
【００６９】
圧縮部２０８は、制御部２０２から受けたデータを圧縮し、得られた圧縮データを制御部２０２に送出する機能をもっている。
【００７０】
検証部２０９は、制御部２０２から鍵及びデータを受けると、鍵に基づいてデータを検証し、検証結果を制御部２０２に送出する機能をもっている。
【００７１】
鍵交換部２１０は、制御部２０２から鍵及びデータを受けると、鍵及びデータに基づいて鍵交換処理を実行し、得られた処理結果を制御部２０２に送出する機能をもっている。
【００７２】
次に、以上のように構成された認証システムの動作を図６のシーケンス図を用いて説明する。なお、各シーケンス図は秘匿通信のハンドシェイクプロトコルを表している。また、図中に網掛けで表したステップ（ＳＴ１，ＳＴ２，ＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ，ＳＴ-ＢＰ，ＳＴ-ＢＶ）以外のステップＳＴ３〜ＳＴ５、ＳＴ６〜１３は周知技術と同じであるため、詳細な説明を省略する。これは以下の各実施形態でも同様である。
【００７３】
（ステップＳＴ１）
クライアント装置１００においては、ハンドシェイクの拡張処理がある旨を通知するため、従来のハロー（Hello）メッセージを拡張したクライアントハローメッセージＭCHを制御部１０２が通信部１０１によりサーバ装置２００に送信する。
【００７４】
このクライアントハロー（ClientHello）メッセージＭCHは、図７に示すように、クライアントのプロトコルバージョン(ProtocolVersion)、クライアント装置１００が生成した乱数データ（Random）、セッションＩＤ（SessionID）、クライアント装置１００が実行可能な暗号化アルゴリズム（CipherSuite）、クライアント装置１００が実行可能な圧縮方式（CompressionMethod）、このハンドシェイクで拡張処理を行うことを示す拡張(Extension)リストＭCH-LISTを含んでいる。この拡張リストＭCH-LISTについては、例えば図８に示すように、生体認証に基づくクライアント認証（Client_auth）を含む拡張型（ExtensionType）と、生体認証方式情報（unit8 AuthenticationMethod[2]）を含む拡張方式（ExtensionMethod）とを含んでいる。
【００７５】
この拡張リストＭCH-LISTにより通知する内容は、生体認証に基づいてクライアント認証を行い、クライアント認証の結果に応じてセキュアセッションを確立することである。その他の詳細は周知の技術と同じであるので省略する。
【００７６】
（ステップＳＴ２）
サーバ装置２００においては、クライアントハローメッセージＭCHを通信部２０１により制御部２０２が受信する。制御部２０２は、ハンドシェイクの拡張処理について了解した旨を通知するため、拡張したサーバハロー（ServerHello）メッセージＭSHを通信部２０１によりクライアント装置１００に送信する。
【００７７】
サーバハローメッセージＭSHは、図９に示すように、サーバ装置２００のプロトコルバージョン(ProtocolVersion)、サーバ装置２００が生成した乱数データ（Random）、セッションＩＤ（SessionID）、サーバ装置２００が合意した暗号化アルゴリズム（CipherSuite）、サーバ装置２００が合意した圧縮方式（CompressionMethod）、このハンドシェイクで拡張処理を行うことを示す拡張リスト(Extension)を含んでいる。
【００７８】
その他の詳細は周知の技術と同じであるので省略する。
【００７９】
（ステップＳＴ３）
サーバ装置２００においては、サーバ認証を行うため、及びクライアント装置１００との鍵交換に必要なデータを送信するため、鍵保存部２０４内のサーバ証明書を含むサーバ証明書（ServerCertificate）メッセージを制御部２０２が通信部２０１によりクライアント装置１００に送信する。またサーバ証明書にクライアント装置１００との鍵交換に必要なデータが含まれていない場合、制御部２０２は、通信部２０１により、サーバ証明書メッセージに続けてサーバ鍵交換（ServerKeyExchange）メッセージをクライアント装置１００に送信する。
【００８０】
もしサーバ認証を行わない場合、図１０に示すように、サーバ証明書メッセージを送信せずに、サーバ鍵交換メッセージをクライアント装置１００に送信する。
【００８１】
（ステップＳＴ４）
サーバ装置２００においては、オプションで選択されていれば制御部２０２が通信部２０１により、クライアント証明書を要求する証明書要求（CertificateRequest）メッセージをクライアント装置１００に送信する。
【００８２】
（ステップＳＴ５）
サーバ装置２００においては、制御部２０２が通信部２０１により、ハローメッセージの一連の処理が終了した旨のサーバハロー終了（ServerHelloDone）メッセージをクライアント装置１００に送信する。
【００８３】
（ステップＳＴ−ＣＢＮ）
クライアント装置１００においては、クライアント装置１００で実行可能な生体認証方式のリストをサーバに通知するため、制御部１０２が通信部１０１により、クライアント生体認証交渉（ClientBiometricNegotiation）メッセージＭCBNをサーバ装置２００に送信する。
【００８４】
クライアント生体認証交渉メッセージＭCBNは、図１１に示すように、クライアント装置１００で実行可能な生体認証方式を示す生体認証方式情報をリストにした生体認証方式リスト（BiometricMethodList）を含んでいる。
【００８５】
（ステップＳＴ−ＳＢＮ）
サーバ装置２００においては、クライアント生体認証交渉メッセージを制御部２０２が通信部２０１により受信すると、制御部２０２がクライアント生体認証交渉メッセージ内の生体認証方式リストの生体認証方式情報がセキュリティポリシー保存部２０３内の生体認証方式情報のいずれかに一致するか否かを判定する。
【００８６】
制御部２０２は、判定の結果が一致を示すとき、当該生体認証方式情報を含むサーバ生体認証交渉（ServerBiometricNegotiation）メッセージＭSBNを通信部２０１によりクライアント装置１００に送信する。ここで選択した方式は複数であってもよい。
【００８７】
サーバ生体認証交渉メッセージＭSBNは、図１２に示すように、セキュリティポリシー保存部２０３内のセキュリティポリシーを満たす生体認証方式を示す生体認証方式情報をリストにした生体認証方式リスト（BiometricMethodList）を含んでいる。
【００８８】
（ステップＳＴ−ＢＰ）
クライアント装置１００においては、サーバ生体認証交渉メッセージを制御部１０２が通信部１０１により受信すると、制御部１０２が、サーバ生体認証交渉メッセージ内の生体認証方式情報に基づいて、生体認証処理制御部１０５を起動する。生体認証処理制御部１０５は、各部１０６〜１０８を制御してユーザの生体認証処理を実行し、得られた生体認証の結果を認証コンテキスト生成部１０９に送出する。
【００８９】
また、制御部１０２は、暗号化部１１１により、サーバハロー（ServerHello）メッセージＭSHに含まれる乱数データを鍵保存部１０４内の秘密鍵に基づいて暗号化し、暗号化乱数を生成する。この暗号化乱数は、制御部１０２から認証コンテキスト生成部１０９に送出される。
【００９０】
認証コンテキスト生成部１０９は、生体認証の結果と生体認証方式情報と暗号化乱数と鍵保存部１０４内のクライアント証明書とから、鍵保存部１０４内の秘密鍵に基づいて、認証子を生成する。
【００９１】
しかる後、認証コンテキスト生成部１０９は、生体認証の結果および生体認証処理の正当性を保証するための取得した生体情報（サンプル）や参照した生体情報（テンプレート）および参照した生体情報の証明書（テンプレート証明書）などの各種情報と生体認証方式情報と暗号化乱数とクライアント証明書と認証子とを含む認証コンテキストを生成し、この認証コンテキストを制御部１０２に送出する。
【００９２】
制御部１０２は、この認証コンテキストを含む生体認証処理（BiometricProcess）メッセージＭBPを通信部１０１によりサーバ装置２００に送信する。これにより、合意処理は継続される。
【００９３】
生体認証処理メッセージＭBPは、図１３に示すように、クライアントで実行された生体認証結果である認証結果（AuthenticationResult）を含んでいる。認証結果は、例えばサーバから提示された認証方式からクライアント装置１００が選択した認証方式と認証結果のデータが含まれる。本実施形態では、前述した認証コンテキストが拡張データ（ExtensionData）に含まれていればよい。
【００９４】
またチャレンジデータの作成方法としては、サーバハローメッセージに含まれるチャレンジを利用する以外に、周知の技術を用いてクライアントハローメッセージ及びサーバハローメッセージによって合意した暗号化アルゴリズム（CipherSuite）により乱数を生成してチャレンジデータとしても良い。
【００９５】
（ステップＳＴ−ＢＶ）
サーバ装置２００においては、生体認証処理メッセージＭBPを制御部２０２が通信部２０１により受信すると、制御部２０２が生体認証処理メッセージＭBP内の認証コンテキストを認証コンテキスト検証部２０５に送出する。
【００９６】
認証コンテキスト検証部２０５は、認証コンテキストを検証し、検証結果を制御部２０２に送出する。制御部２０２は、認証コンテキストの検証結果に応じて合意処理を継続又は中断する。合意処理を中断する場合の検証結果としては、例えば（ｉ）認証コンテキスト内の生体認証の結果が不正を示すとき、（ｉｉ）認証コンテキスト内の生体認証方式情報と通知した生体認証方式情報とが互いに異なるとき、（ｉｉｉ）認証コンテキスト内の暗号化乱数をクライアント証明書内の公開鍵に基づいて復号し、得られた乱数がサーバハローメッセージ内の乱数と異なるとき、又は（ｉｖ）クライアント証明書内の公開鍵に基づいて認証子を検証し、検証結果が不正を示すとき、などがある。なお、ここでは、合意処理を継続する検証結果を得たとする。
【００９７】
制御部２０２は、検証した結果を通知するため、図１４に示すように、認証コンテキストの検証結果を示す認証結果（AuthenticationResult）、生体認証処理の情報を格納する認証情報（AuthenticateInfo）及びこれら項目に対してサーバの秘密鍵で作成された署名（Signature）が含まれた生体認証検証（BiometricVerify）メッセージＭBVを通信部２０１によりクライアント装置１００に送信する。
【００９８】
（ステップＳＴ６）
クライアント装置１００は、生体認証検証メッセージＭBVを制御部１０２が通信部１０１により受信する。しかる後、制御部１０２は、サーバがクライアントの証明書を要求している場合には、鍵保存部１０４内のクライアント証明書を含むクライアント証明書（ClientCertificate）メッセージを通信部１０１によりサーバ装置２００に送信する。
【００９９】
（ステップＳＴ７）
クライアント装置１００においては、プリマスターシークレット（premaster_secret）をサーバに通知するため、制御部１０２がクライアント鍵交換（ClientKeyExchange）メッセージを通信部１０１によりサーバ装置２００に送信する。
【０１００】
（ステップＳＴ８）
クライアント装置１００においては、ステップＳＴ６でクライアント証明書を送信した場合、クライアント証明書の検証のため、制御部１０２は、暗号化部１１１により、現在までのメッセージに対して鍵保存部内１０４の秘密鍵に基づいてデジタル署名を生成する。しかる後、制御部１０２は、現在までのメッセージとデジタル署名とを含むクライアント検証（ClientVerify）メッセージを通信部１０１によりサーバ装置２００に送信する。
【０１０１】
（ステップＳＴ９）
クライアント装置１００においては、制御部１０２が通信部１０１により、双方で合意した暗号化アルゴリズムで秘匿通信を行うことを宣言する暗号化仕様変更（ChangeCipherSpec）メッセージをサーバ装置２００に送信する。
【０１０２】
（ステップＳＴ１０）
クライアント装置１００においては、制御部１０２が通信部１０１により、サーバとのやり取りが正常に終了し、セッション確立のために必要なデータが揃った旨の終了（Finished）メッセージをサーバ装置２００に送信する。
【０１０３】
（ステップＳＴ１１）
サーバ装置２００においては、制御部２０２が通信部２０１により、双方で合意した暗号化アルゴリズムで秘匿通信を行うことを宣言する暗号化仕様変更メッセージをクライアント装置１００に送信する。
【０１０４】
（ステップＳＴ１２）
サーバ装置２００においては、制御部２０２が通信部２０１により、クライアントとのやり取りが正常に終了し、セッション確立のために必要なデータが揃った旨の終了メッセージをクライアント装置１００に送信する。
【０１０５】
（ステップＳＴ１３）
ステップＳＴ１２の完了後、クライアント装置及びサーバ装置は、秘匿通信を実行可能な鍵を共有でき、その後のセッションにおいてクライアント装置−サーバ装置間でセキュアセッションを確立することができる。
【０１０６】
上述したように本実施形態によれば、証明書認証を含む合意処理中に、生体認証をも実行する構成により、２回のハンドシェイクに伴う不要なパスを存在させずに、エンティティ認証及び生体認証に基づくセキュアセッションを確立することができる。また、生体認証に失敗した場合でも、従来に比べ、無駄になる処理を低減することができる。
【０１０７】
また、合意処理中のメッセージに含まれる乱数から生成した暗号化乱数を含む認証コンテキストを含む生体認証処理メッセージＭBPをサーバ装置２００に送信する構成により、証明書認証を含む合意処理と生体認証とを有機的に結合させるので、生体認証に伴う通信の発生を抑制することができる。また生体認証により、不正なユーザが正当なクライアント装置を利用したなり済ましを防止することができる。
【０１０８】
またステップＳＴ４，ＳＴ６，ＳＴ８はオプションの処理であり、このステップの処理を行わず、ステップＳＴ５の処理において一時的な鍵をサーバで生成して利用するなら、ハンドシェイクはクライアントの生体認証の結果のみからセキュアセッションを確立することが可能となる。
【０１０９】
ステップＳＴ４，ＳＴ６，ＳＴ８の処理を行えば生体認証の結果とクライアントの証明書による認証の結果に応じてセキュアセッションを確立することとなる。
【０１１０】
さらにステップＳＴ３でサーバの証明書を送信すれば、サーバの証明書の認証の結果にも応じた結果セキュアセッションを確立することとなる。
【０１１１】
本実施形態からクライアント装置１００に接続されている任意の生体認証装置（各部１０５〜１０８）でセキュアセッションを確立することが可能であり、サーバ装置２００は自身が保持するポリシーに従って、例えば生体認証装置の精度で判断することが可能になる。
【０１１２】
補足すると、ＴＬＳを拡張する技術としてはＴＬＳ拡張方式（TLS Extension）が知られている（例えば、非特許文献４参照。）。本発明者は、本実施形態を着想する前に、ＴＬＳ拡張方式を用いてＴＬＳハンドシェイクを拡張し、生体認証に基づいてセキュアセッションを確立することを考えた。ただし、単純に従来のＴＬＳハンドシェイクに生体認証のパスを追加するような拡張では、生体認証の処理に必要となる各種データ、例えばチャレンジデータやネゴシエーション等の処理をどのようにハンドシェイク中に行うかが不明であり、生体認証に基づいてセキュアセッションを正しく確立することができない。
【０１１３】
しかしながら、本実施形態によれば、ＴＬＳハンドシェイクを拡張する際に、生体認証処理に必要な情報やネゴシエーションの処理を適切に行うので、ＴＳＬハンドシェイクをＴＬＳ拡張方式により適切に拡張することができる。
【０１１４】
また、本実施形態において、生体認証装置（各部１０５〜１０８）はクライアント装置１００に含まれているが、生体認証装置は外部装置であっても良く、またテンプレート保存部１０６も例えばＩＣカードのようにクライアント装置１００の外部にあって接続されていても良く、クライアントマッチングが実行可能な形態であれば良い。
【０１１５】
また実施形態では、ＴＬＳハンドシェイクを拡張して生体認証を行っているが、他にもセキュアセッションを確立するＳＳＬ（Secure Socket Layer）や他のハンドシェイクへも同様に適用することが可能である。
【０１１６】
以上から、生体認証の結果に基づいてセキュアセッションを確立するためのメッセージを送る装置を構成できるとともに、及び生体認証の結果に基づいてセキュアセッションを確立するためのメッセージの作成を実現することができる。
【０１１７】
また、本実施形態は、「ステップＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ」、「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」及び「ステップＳＴ６〜ＳＴ８」の順序を変更しても、同様に実施して同様の効果を得ることができる。但し、「ステップＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ」は「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」よりも先に実行する必要がある。
【０１１８】
具体的には本実施形態は、「ステップＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ」、「ステップＳＴ６〜ＳＴ８」及び「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」の順序で実行することもできる。また、本実施形態は「ステップＳＴ６〜ＳＴ８」、「ステップＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ」及び「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」の順序で実行することもできる。
【０１１９】
（第２の実施形態）
図１５は本発明の第２の実施形態に係る認証システムの構成を示す模式図であり、図１とほぼ同一部分には同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。なお、以下の各実施形態も同様にして重複した説明を省略する。
【０１２０】
第２の実施形態は、第１の実施形態の変形例であり、クライアント装置１００ａ側で取得した生体認証の結果をサーバ装置２００ａ側で生体認証するサーバマッチングの実施形態である。
【０１２１】
これに伴い、クライアント装置１００ａは、図１に示したクライアント装置１００に比べ、テンプレート保存部１０６及び生体認証実行部１０８が省略され、前述した機能が変更された制御部１０２ａ及び生体認証処理制御部１０５ａを備えた構成となっている。
【０１２２】
ここで、制御部１０２ａは、クライアントの乱数（第１乱数）を生成するための乱数生成機能と、合意処理中に、クライアントの乱数を含むクライアントハローメッセージ（第１メッセージ）を作成し、このクライアントハローメッセージを通信部１０１によりサーバ装置２００ａに送信する機能と、クライアントハローメッセージの送信後、サーバ装置２００ａからサーバ乱数（第２乱数）を含むサーバハローメッセージ（第２メッセージ）を受信する機能と、生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージをサーバ装置２００ａに送信する機能と、生体認証交渉メッセージの送信後、サーバ装置２００ａから通知された生体認証方式情報に基づいて、生体認証処理制御部１０５ａを起動する機能と、暗号化部１１１により、クライアント乱数（第１乱数）及びサーバ乱数（第２乱数）に基づいてハッシュアルゴリズムにより暗号化用パラメータを生成する機能と、生体認証処理制御部１０５ａにより取得した生体情報を暗号化用パラメータに基づいて暗号化部１１１により暗号化し、得られた暗号化生体情報をサーバ装置２００ａに通知することにより、合意処理を継続する機能とをもっている。
【０１２３】
生体認証処理制御部１０５ａは、制御部１０２ａにより起動されると、生体情報取得部１０７によりユーザの生体情報を取得し、この生体情報を制御部１０２ａに送出する機能をもっている。
【０１２４】
同様に、サーバ装置２００ａは、図１に示したサーバ装置２００に比べ、テンプレート保存部２１１及び生体認証実行部２１２が付加され、前述した機能が変更された制御部２０２ａを備えた構成となっている。
【０１２５】
制御部２０２ａは、合意処理中に、クライアント装置１００ａからクライアント装置１００ａが生成した乱数データ（第１乱数。以下、クライアント乱数ともいう）を含むクライアントハローメッセージ（第１メッセージ）を通信部２０１により受信する機能と、クライアントハローメッセージの受信後、サーバ装置２００ａが生成した乱数データ（第２乱数。以下、サーバ乱数ともいう）を含むサーバハローメッセージ（第２メッセージ）をクライアント装置１００ａに通信部２０１を介して送信する機能と、クライアント装置１００ａの生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージをクライアント装置１００ａから通信部２０１により受信する機能と、生体認証交渉メッセージ内の生体認証方式情報がセキュリティポリシー保存部２０３内の各生体認証方式情報のいずれかに一致するか否かを判定する機能と、判定の結果が一致を示すとき、当該生体認証方式情報をクライアント装置１００ａに通信部２０１を介して通知する機能と、通知の後、生体認証方式情報に従って取得されたユーザの生体情報がクライアント乱数（第１乱数）及びサーバ乱数（第２乱数）に基づいて暗号化されてなる暗号化生体情報をクライアント装置１００ａから通信部２０１により受信する機能と、クライアントハローメッセージ内のクライアント乱数及びサーバハローメッセージ内のサーバ乱数に基づいて、ハッシュアルゴリズムにより暗号化用パラメータを暗号化部２０７により生成する機能と、暗号化部２０７により、暗号化生体情報を暗号化用パラメータに基づいて復号する機能と、復号により得られた生体情報を生体認証実行部２１２に送出する機能と、生体認証実行部２１２から受けた生体認証の結果が不正を示すとき、合意処理を中断する機能とをもっている。
【０１２６】
テンプレート保存部２１１は、予め登録された利用者の生体情報（テンプレート）が格納され、生体認証実行部２１２からの要求によりテンプレートを生体認証実行部２１２に出力する機能をもっている。
【０１２７】
生体認証実行部２１２は、制御部２０２ａから受けた生体情報を、テンプレート保存部２１１内のテンプレートに基づいて生体認証し、生体認証の結果を制御部２０２ａに送出する機能をもっている。
【０１２８】
次に、以上のように構成された認証システムの動作を図１６のシーケンス図を用いて説明する。なお、各シーケンス図は秘匿通信のハンドシェイクプロトコルを表している。
【０１２９】
（ステップＳＴ１〜ＳＴ８）
ステップＳＴ１〜ＳＴ−ＳＢＮまでは第１の実施形態と同じであるので説明を省略する。また、ステップＳＴ−ＳＢＮの後に、前述したステップＳＴ６〜ＳＴ８を実行しなければならない。
【０１３０】
（ステップＳＴ−ＢＰ）
クライアント装置１００ａにおいては、サーバ装置２００ａから通知された生体認証方式情報を含むサーバ生体認証交渉メッセージを制御部１０２ａが通信部１０１により受信する。制御部１０２ａは、サーバ生体認証交渉メッセージ内の生体認証方式情報に基づいて、生体認証処理制御部１０５ａを起動する。生体認証処理制御部１０５ａは、生体情報取得部１０７を制御してユーザの生体情報を取得し、得られた生体情報を制御部１０２ａに送出する。
【０１３１】
制御部１０２ａは、生体情報を取得すると、暗号化部１１１により、クライアントハローメッセージ内の乱数データ及びサーバハローメッセージ内の乱数データに基づいて暗号化用パラメータを生成し、この暗号化用パラメータにより生体情報を暗号化し、暗号化生体情報を得る。
【０１３２】
しかる後、制御部１０２ａは、この暗号化生体情報を含む生体認証処理（BiometricProcess）メッセージＭBPを通信部１０１によりサーバ装置２００ａに送信する。
【０１３３】
なお、生体情報を暗号化する手法は、例えば、以下のような手法を用いればよい。
【０１３４】
クライアント装置１００ａは、生体情報を暗号化及び圧縮する仕様として、クライアントハローメッセージＭCH及びサーバハローメッセージＭSHによって合意したものを使用する。
【０１３５】
また、クライアント装置１００ａは、生体情報を暗号化する鍵（必要なら加えて初期ベクタ）等のパラメータを、標準状態で使用する主要パラメータ（例、クライアント／サーバ書込ＭＡＣシークレット、クライアント／サーバ書込キー、クライアント／サーバ書込初期ベクタ等）と同様に生成する。
【０１３６】
すなわち、クライアント装置１００ａは、周知の技術におけるメッセージに含まれるサーバ乱数、クライアント乱数及びプリマスターシークレットを用い、ハッシュアルゴリズムに基づいて、生体情報の暗号化用パラメータ（暗号化鍵）を生成する。具体的には、制御部１０２ａは、サーバ乱数、クライアント乱数及びプリマスターシークレットを暗号化部１１１の擬似乱数生成関数（pseudo-random function：ＰＲＦ）に入力し、得られた値をマスターシークレットとする。
【０１３７】
次に、マスターシークレット、サーバランダム及びクライアントランダムを同様に疑似乱数生成関数ＰＲＦに入力して得られた値をキーブロックとして、このキーブロックを必要なサイズに分割して、各パラメータを得る。このとき、周知の秘匿通信プロトコルでは、本来余分なキーブロックを破棄するが、ここでは暗号化用パラメータ（書込キー、書込初期ベクタ）分を余分なキーブロックとして生成する。しかる後、暗号化部１１１は、この暗号化用パラメータに基づいて生体情報を暗号化し、得られた暗号化生体情報を制御部１０２ａに送出する。
【０１３８】
制御部１０２ａは、この暗号化生体情報を認証結果（AuthenticationResult）の拡張データ（ExtensionData）に格納して生体認証処理（BiometricProcess）メッセージＭBPを構成してサーバ装置２００ａへ送信する。
【０１３９】
（ステップＳＴ−ＢＶ）
サーバ装置２００ａにおいては、この生体認証処理メッセージＭBPを制御部２０２ａが通信部２０１により受信する。
【０１４０】
制御部２０２ａは、暗号化部２０７の制御により、クライアントと同様に各乱数から暗号化用パラメータを生成し、この暗号化用パラメータに基づいて、生体認証処理メッセージＭBPに含まれる暗号化生体情報を復号し、生体情報を得る。
【０１４１】
制御部２０２ａは、この生体情報を生体情報検証部２１２に送出する。生体情報検証部２１２は、この生体情報に基づいてサーバマッチングを行い、生体認証の結果を制御部２０２ａに送出する。
【０１４２】
しかる後、制御部２０２ａは、この生体認証の結果を含む生体認証検証（BiometricVerify）メッセージＭBVを通信部２０１によりクライアント装置１００ａに送信する
（ステップＳＴ９〜ＳＴ１３）
ステップＳＴ９〜ＳＴ１３は第１の実施形態と同じであるので説明を省略する。
【０１４３】
上述したように本実施形態によれば、サーバマッチングを行う構成に変形しても、証明書認証を含む合意処理中に、生体認証をも実行する構成により、２回のハンドシェイクに伴う不要なパスを存在させずに、エンティティ認証及び生体認証に基づくセキュアセッションを確立することができる。また、生体認証に失敗した場合でも、従来に比べ、無駄になる処理を低減することができる。
【０１４４】
また、合意処理中の各ハローメッセージに含まれるクライアント乱数及びサーバ乱数に基づいて生体情報を暗号化してサーバ装置２００ａに送信する構成により、証明書認証を含む合意処理と生体認証とを有機的に結合させつつ、サーバマッチングによる生体認証を実現させることができる。また、生体認証により、不正なユーザが正当なクライアント装置を利用したなり済ましを防止できる。
【０１４５】
また第１の実施形態において、もし暗号化して生体情報の結果を送信するような場合は本実施形態と同じシーケンスで実行することにより暗号化することも可能になる。
【０１４６】
本実施形態ではクライアント装置１００ａで生体情報を取得してサーバ装置２００ａへ送信し、サーバ装置２００ａで保持するテンプレートと照合処理を行うことで生体認証を実行するが、クライアント装置１００ａから取得した生体情報とテンプレートを送信し、サーバ装置２００ａで照合処理を行うような実施形態でも良く、その組み合わせは生体認証の実施形態の組み合わせだけあるといえる
以上から、生体情報をサーバ装置２００ａに安全に送り、サーバ装置２００ａにおける照合結果に基づいてセキュアセッションを確立するためのメッセージを送る装置を構成できるとともに、及び生体認証の結果に基づいてセキュアセッションを確立するためのメッセージの作成を実現することができる。
【０１４７】
補足すると、従来のＴＬＳプロトコル又はＴＬＳ内部アプリケーションのいずれにしても、クライアント装置が生体情報をサーバ装置に送信し、サーバ装置がマッチングにより生体認証を行ってセキュアセッションを確立する場合、生体情報が資格証明情報（クレデンシャルな情報）であることから、生体情報を暗号化して送信する必要がある。しかしながら、単純に従来のＴＬＳハンドシェイク中において生体認証を行う場合、生体情報をセキュアセッションの確立前に送信する必要があるので、生体情報を暗号化等により保護する手段が存在しない。これに対し、本実施形態では、前述した通り、生体情報を暗号化して送信することにより保護することができる。
【０１４８】
また、本実施形態は、「ステップＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ」及び「ステップＳＴ６〜ＳＴ８」の順序を変更しても、同様に実施して同様の効果を得ることができる。但し、「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」は動かすことはできない。理由は、データを暗号化するためには「ステップＳＴ６〜ＳＴ８」のパスが必要であり、生体認証交渉をするためには「ステップＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ」が必要なためである。
【０１４９】
具体的には本実施形態は、「ステップＳＴ６〜ＳＴ８」、「ステップＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ」及び「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」の順序で実行することもできる。
【０１５０】
（第３の実施形態）
図１７は本発明の第３の実施形態に係る認証システムの構成を示す模式図である。  
第３の実施形態は、第１の実施形態の変形例であり、クライアント装置１００ｂ側で生体認証を行い、生体認証の結果に基づいて取得したクライアント証明書をサーバ装置２００ｂに送信してクライアント認証を行う実施形態である。
【０１５１】
これに伴い、クライアント装置１００ｂは、図１に示したクライアント装置１００に比べ、前述した機能が変更された制御部１０２ｂ及び認証コンテキスト生成部１０９ｂを備えた構成となっている。
【０１５２】
ここで、制御部１０２ｂは、合意処理中に、ユーザの生体認証の結果に基づいてクライアント証明書を取得する旨を含むクライアントハローメッセージ（第１メッセージ）をサーバ装置２００ｂに通信部１０１を介して送信する機能と、クライアントハローメッセージの送信後、サーバ装置２００ｂからサーバ乱数を含むサーバハローメッセージ（第２メッセージ）を通信部１０１により受信する機能と、サーバハローメッセージの受信後、生体認証処理制御部１０５を起動する機能と、暗号化部１１１により、サーバ乱数を鍵保存部１０４内の秘密鍵に基づいて暗号化し、暗号化乱数を生成する機能と、生体認証処理制御部１０５により得られた生体認証の結果が正当のとき、鍵保存部１０４内のクライアント証明書をサーバ装置１００ｂに通信部１０１を介して送信する機能と、生体認証の結果およびその処理の正当性を保証する情報及び暗号化乱数を認証コンテキスト生成部１０９ｂに送出する機能と、認証コンテキスト生成部１０９ｂから受けた認証コンテキストをサーバ装置２００ｂに通信部１０１から送信することにより、合意処理を継続する機能とをもっている。
【０１５３】
認証コンテキスト生成部１０９ｂは、制御部１０２ｂから受けた生体認証の結果及び暗号化乱数から鍵保存部１０４内の秘密鍵に基づいて、認証子を生成する機能と、生体認証の結果及び暗号化乱数と認証子とを含む認証コンテキストを生成する機能と、生成した認証コンテキストを制御部１０２ｂに送出する機能とをもっている。
【０１５４】
ここで、認証コンテキストの一例としては、図１８に示すように、前述した図３の構成に比べ、クライアント証明書ブロックｐｃを省略したものとしてもよい。データブロックｐｄは、例えば生体認証の結果、及び暗号化乱数を含んでいるが、前述とは異なり、生体認証方式情報を省略してもよい。生体認証方式情報が省略可能なことは、前述とは異なり、生体認証交渉ステップが無く、任意の生体認証方式を使用可能なことによる。
【０１５５】
同様に、サーバ装置２００ｂは、図１に示したサーバ装置２００に比べ、前述した機能が変更された制御部２０２ｂ及び認証コンテキスト検証部２０５ｂを備えた構成となっている。
【０１５６】
制御部２０２ｂは、合意処理中に、ユーザの生体認証の結果に基づいてクライアント証明書を取得する旨を含むクライアントハローメッセージ（第１メッセージ）をクライアント装置１００ｂから通信部２０１を介して受信する機能と、クライアントハローメッセージの受信後、サーバ乱数を含むサーバハローメッセージ（第２メッセージ）をクライアント装置１００ｂに通信部２０１を介して送信する機能と、サーバハローメッセージの送信後、クライアント装置１００ｂからクライアント証明書を通信部２０１により受信する機能と、サーバハローメッセージの送信後、ユーザの生体認証の結果と暗号化乱数と認証子とを含む認証コンテキストをクライアント装置１００ｂから通信部２０１を介して受信する機能と、受信したクライアント証明書及び認証コンテキストを鍵保存部２０４に書き込む機能と、認証コンテキスト検証部２０５ｂを起動する機能と、認証コンテキスト検証部２０５ｂから受けた検証結果に応じて、合意処理を継続又は中断する機能とをもっている。
【０１５７】
認証コンテキスト検証部２０５ｂは、制御部２０２ｂに起動されると、鍵保存部２０４内の認証コンテキストを検証し、（ｉ）鍵保存部２０４に記憶された認証コンテキスト内の生体認証の結果が不正を示すとき、（ｉｉ）鍵保存部２０４に記憶された認証コンテキスト内の暗号化乱数をクライアント証明書内の公開鍵に基づいて復号し、得られた乱数がサーバハローメッセージ内の乱数と異なるとき、又は（ｉｉｉ）鍵保存部２０４に記憶されたクライアント証明書内の公開鍵に基づいて認証子を検証し、検証結果が不正を示すとき、のいずれかの場合には合意処理を中断する旨の検証結果を制御部２０２ｂに送出する機能と、上記（ｉ）〜（ｉｉｉ）以外のとき、合意処理を継続する旨の検証結果を制御部２０２ｂに送出する機能とをもっている。
【０１５８】
次に、以上のように構成された認証システムの動作を図１９のシーケンス図を用いて説明する。
【０１５９】
（ステップＳＴ１）
クライアント装置１００ｂは、ハンドシェイクの拡張処理があることを通知するため、拡張したクライアントハローメッセージＭCHを制御部１０２ｂが通信部１０１によりサーバ装置２００ｂに送信する。
【０１６０】
クライアントハローメッセージＭCHの拡張（Extension）リストでは、クライアント装置１００ｂのクライアント証明書を生体認証の結果に基づいて取得したことと、生体認証の結果を送付することをサーバ装置２００ｂに通知する。
【０１６１】
（ステップＳＴ２）
サーバ装置２００ｂにおいては、クライアントハローメッセージＭCHを通信部２０１により制御部２０２ｂが受信する。制御部２０２ｂは、ハンドシェイクの拡張処理について了解した旨を通知するため、拡張したサーバハローメッセージＭSHを通信部２０１によりクライアント装置１００ｂに送信する。
【０１６２】
（ステップＳＴ３〜ＳＴ５）
ステップＳＴ３〜ＳＴ５までは第１の実施形態と同じであるので説明を省略する。  
（ステップＳＴ−ＢＰ１）
クライアント装置１００ｂにおいては、ステップＳＴ５のサーバハロー終了（ServerHelloDone）メッセージを制御部１０２ｂが通信部１０１により受信すると、制御部１０２ｂが生体認証処理制御部１０５を起動する。生体認証処理制御部１０５は、各部１０６〜１０８を制御してユーザの生体認証処理を実行し、得られた生体認証の結果を制御部１０２ｂに送出する。
【０１６３】
制御部１０２ｂは、生体認証の結果が正当のとき、合意処理を継続してステップＳＴ６に移行する。なお、ここでの生体認証方式は、第１の実施形態とは異なり、サーバ装置２００ｂとの生体認証交渉ステップを経ておらず、任意の生体認証方式を用いている。
【０１６４】
（ステップＳＴ６）
クライアント装置１００ｂにおいては、制御部１０２ｂが、鍵保存部１０４内のクライアント証明書を含むクライアント証明書（ClientCertificate）メッセージを通信部１０１によりサーバ装置２００に送信する。
【０１６５】
（ステップＳＴ７及びＳＴ８）
ステップＳＴ７及びＳＴ８は第１の実施形態と同じであるので説明を省略する。  
（ステップＳＴ−ＢＰ２）
制御部１０２ｂは、暗号化部１１１により、サーバハロー（ServerHello）メッセージＭSHに含まれる乱数データを鍵保存部１０４内の秘密鍵に基づいて暗号化し、暗号化乱数を生成する。この暗号化乱数は、制御部１０２ｂから認証コンテキスト生成部１０９ｂに送出される。また、制御部１０２ｂは、ステップＳＴ６で取得した生体認証の結果も認証コンテキスト生成部１０９ｂに送出する。
【０１６６】
認証コンテキスト生成部１０９ｂは、生体認証の結果と暗号化乱数とから鍵保存部１０４内の秘密鍵に基づいて、認証子を生成する。
【０１６７】
しかる後、認証コンテキスト生成部１０９ｂは、生体認証の結果および生体認証処理の正当性を保証するための取得した生体情報（サンプル）や参照した生体情報（テンプレート）および参照した生体情報の証明書（テンプレート証明書）などの各種情報と暗号化乱数と認証子とを含む認証コンテキストを生成し、この認証コンテキストを制御部１０２ｂに送出する。
【０１６８】
制御部１０２ｂは、この認証コンテキストを含む生体認証処理（BiometricProcess）メッセージＭBPを通信部１０１によりサーバ装置２００ｂに送信する。これにより、合意処理は継続される。
【０１６９】
なお、もし暗号化する必要があれば、第２の実施形態と同様の処理を行うことで、認証コンテキストを暗号化して送信することも可能である。
【０１７０】
（ステップＳＴ−ＢＶ）
サーバ装置２００ｂにおいては、生体認証処理メッセージＭBPを制御部２０２ｂが通信部２０１により受信すると、制御部２０２ｂが生体認証処理メッセージＭBP内の認証コンテキストを認証コンテキスト検証部２０５ｂに送出する。
【０１７１】
認証コンテキスト検証部２０５ｂは、認証コンテキストを検証し、検証結果を制御部２０２ｂに送出する。制御部２０２ｂは、認証コンテキストの検証結果に応じて合意処理を継続又は中断する。合意処理を中断する場合の検証結果としては、例えば（ｉ）鍵保存部２０４に記憶された認証コンテキスト内の生体認証の結果が不正を示すとき、（ｉｉ）鍵保存部２０４に記憶された認証コンテキスト内の暗号化乱数をクライアント証明書内の公開鍵に基づいて復号し、得られた乱数がサーバハローメッセージ内の乱数と異なるとき、（ｉｉｉ）鍵保存部２０４に記憶されたクライアント証明書内の公開鍵に基づいて認証子を検証し、検証結果が不正を示すとき、などがある。なお、ここでは、合意処理を継続する検証結果を得たとする。
【０１７２】
制御部２０２ｂは、検証した結果を通知するため、認証コンテキストの検証結果を示す認証結果（AuthenticationResult）、生体認証処理の情報を格納する認証情報（AuthenticateInfo）及びこれら項目に対してサーバの秘密鍵で作成された署名（Signature）が含まれた生体認証検証（BiometricVerify）メッセージＭBVを通信部２０１によりクライアント装置１００ｂに送信する。
【０１７３】
（ステップＳＴ９〜ＳＴ１３）
ステップＳＴ９〜ＳＴ１３は第１の実施形態と同じであるので説明を省略する。
【０１７４】
上述したように本実施形態によれば、生体認証によりクライアント証明書を取得してサーバ装置２００ｂに送信する構成に変形しても、前述同様に、証明書認証を含む合意処理中に、生体認証をも実行する構成により、２回のハンドシェイクに伴う不要なパスを存在させずに、エンティティ認証及び生体認証に基づくセキュアセッションを確立することができる。また、生体認証に失敗した場合でも、従来に比べ、無駄になる処理を低減することができる。
【０１７５】
また、ユーザの生体認証の結果に基づいてクライアント証明書を取得する旨を含むクライアントメッセージをサーバ装置２００ｂに送信する構成により、生体認証に基づいて取得したクライアント証明書を用いてセキュアセッションを確立していることをサーバ装置２００ｂが検証することができる。また、生体認証により、不正なユーザが正当なクライアント装置を利用したなり済ましを防止できる。
【０１７６】
以上から、生体認証の結果に基づいて取得した証明書を用いてセキュアセッションを確立するためのメッセージを送る装置を構成できるとともに、及び生体認証の結果に基づいて取得して証明書を用いてセキュアセッションを確立するためのメッセージの作成を実現することができる。
【０１７７】
補足すると、従来のＴＬＳプロトコル又はＴＬＳ内部アプリケーションのいずれにしても、エンティティ装置が保持する証明書に基づいてエンティティ認証を行ってセキュアセッションを確立する際に、エンティティ装置の証明書を生体認証の結果に基づいて取得していた場合、そのことをサーバに通知する手段がＴＬＳハンドシェイクには存在しない。これに対し、本実施形態では、前述した通り、エンティティ装置（クライアント装置１００ｂ）の証明書を生体認証の結果に基づいて取得していたことをサーバ装置２００ｂに通知することができる。
【０１７８】
また、本実施形態は、「ステップＳＴ６〜ＳＴ８」及び「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」の順序を変更し、「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」及び「ステップＳＴ６〜ＳＴ８」の順序で実行しても同様の効果を得ることができる。
【０１７９】
（第４の実施形態）
図２０は本発明の第４の実施形態に係る認証システムの構成を示す模式図である。  
第４の実施形態は、第１の実施形態の変形例であり、合意処理の前に、予め認証コンテキストにタイムスタンプを作成しておく実施形態である。なお、タイムスタンプは、例えば、ＲＦＣ３１６１に準拠したタイムスタンプサービス（例えば、非特許文献５参照。）を利用して作成してもよい。
【０１８０】
これに伴い、クライアント装置１００ｃは、図１に示したクライアント装置１００に比べ、タイムスタンプ付与部１１５が付加され、前述した機能が変更された制御部１０２ｃ及び認証コンテキスト生成部１０９ｃを備えた構成となっている。
【０１８１】
ここで、制御部１０２ｃは、合意処理の前に、生体認証処理制御部１０５を起動する機能と、生体認証処理制御部１０５から受けた生体認証の結果を認証コンテキスト生成部１０９ｃに送出する機能と、認証コンテキスト生成部１０９ｃから受けた認証コンテキストをタイムスタンプ付与部１１５に送出する機能と、タイムスタンプが付与された認証コンテキストをタイムスタンプ付与部１１５から受ける機能と、合意処理中に、生体認証方式情報を含む生体認証交渉メッセージを作成し、この生体認証交渉メッセージをサーバ装置２００ｃに通信部１０１を介して送信する機能と、生体認証交渉メッセージの送信後、サーバ装置２００ｃから通知された生体認証方式情報に基づいて、前述したタイムスタンプが付与された認証コンテキストをサーバ装置２００ｃに通信部１０１を介して送信することにより、合意処理を継続する機能とをもっている。
【０１８２】
認証コンテキスト生成部１０９ｃは、制御部１０２ｃから生体認証の結果を受けると、当該生体認証の結果とセキュリティポリシー保存部１０３内の生体認証方式情報と鍵保存部１０４内のクライアント証明書とからクライアント秘密鍵に基づいて、認証子を生成する機能と、合意処理の前に、生体認証の結果およびその処理の正当性を保証する情報と生体認証方式情報とクライアント証明書と認証子とを含む認証コンテキストを生成する機能と、この認証コンテキストを制御部１０２ｃに送出する機能とをもっている。
【０１８３】
タイムスタンプ付与部１１５は、制御部１０２ｃから認証コンテキストを受けると、合意処理の前に、認証コンテキストをタイムスタンプ提供装置３００に通信部１０１を介して送信する機能と、送信した認証コンテキスト及びタイムスタンプ提供装置３００における日時情報に対して、当該タイムスタンプ提供装置３００のタイムスタンプ秘密鍵に基づいて生成されたタイムスタンプが付与されることにより、タイムスタンプが付与された認証コンテキストをタイムスタンプ提供装置３００から通信部１０１を介して受信する機能と、このタイムスタンプが付与された認証コンテキストを制御部１０２ｃに送出する機能とをもっている。
【０１８４】
なお、タイムスタンプの付与方法は任意の方式が使用可能であるが、ここでは、外部のタイムスタンプ提供装置３００に依頼して付与する方式を用いている。タイムスタンプ提供装置３００は、タイムスタンプ公開鍵及びタイムスタンプ秘密鍵を記憶装置（図示せず）に保持しており、クライアント装置１００ｃから認証コンテキストを受信すると、この認証コンテキストに現在の日時情報を付加した情報に対し、タイムスタンプ秘密鍵に基づいてタイムスタンプ（デジタル署名）を生成する機能と、このタイムスタンプを付与した認証コンテキストをクライアント装置１００ｃに返信する機能と、サーバ装置２００ｃから要求を受けると、タイムスタンプ公開鍵をサーバ装置２００ｃに送信する機能とをもっている。
【０１８５】
一方、サーバ装置２００ｃは、図１に示したサーバ装置２００に比べ、タイムスタンプ検証部２１３が付加され、前述した機能が変更された制御部２０２ｃ及び認証コンテキスト検証部２０５ｃを備えた構成となっている。
【０１８６】
制御部２０２ｃは、合意処理中に、クライアント装置１００ｃの生体認証方式を示す生体認証方式情報を含む生体認証交渉メッセージをクライアント装置１００ｃから通信部２０１を介して受信する機能と、生体認証交渉メッセージ内の生体認証方式情報がセキュリティポリシー保存部２０３内の各生体認証方式情報のいずれかに一致するか否かを判定する機能と、判定の結果が一致を示すとき、当該生体認証方式情報をクライアント装置１００ｃに通信部２０１を介して通知する機能と、通知の後、タイムスタンプ提供装置３００の秘密鍵によるタイムスタンプが付与され且つユーザの生体認証の結果、生体認証方式情報、クライアント証明書及び認証子を含む認証コンテキストをクライアント装置１００ｃから通信部２０１を介して受信する機能と、このタイムスタンプが付与された認証コンテキストのうち、タイムスタンプをタイムスタンプ検証部２１３に送出すると共に、認証コンテキストを認証コンテキスト検証部２０５ｃに送出する機能と、各検証部２１３，２０５ｃから受けた検証結果に基づいて、合意処理を継続又は中断する機能とをもっている。
【０１８７】
認証コンテキスト検証部２０５ｃは、制御部２０２ｃから受けた認証コンテキストを検証し、（ｉ）認証コンテキスト内の生体認証の結果が不正を示すとき、（ｉｉ）認証コンテキスト内の生体認証方式情報が、通知した生体認証方式とは異なるとき、又は（ｉｉｉ）クライアント証明書内の公開鍵に基づいて認証子を検証し、検証結果が不正を示すとき、のいずれかの場合には合意処理を中断する旨の検証結果を制御部２０２ｃに送出する機能と、上記（ｉ）〜（ｉｉｉ）以外のとき、合意処理を継続する旨の検証結果を制御部２０２ｃに送出する機能とをもっている。
【０１８８】
タイムスタンプ検証部２１３は、タイムスタンプ提供装置３００のタイムスタンプ秘密鍵に対応するタイムスタンプ公開鍵を予め記憶装置（図示せず）に保持しておき、制御部２０２ｃからタイムスタンプを受けると、タイムスタンプ公開鍵に基づいて当該タイムスタンプを復号し、得られた日時情報と現在の日時情報との差分が予め定めた値よりも大きいとき、合意処理を中断する旨の検証結果を制御部２０２ｃに送出する機能と、当該差分が予め定めた値以下のとき、合意処理を継続する旨の検証結果を制御部２０２ｃに送出する機能とをもっている。
【０１８９】
なお、タイムスタンプの検証方法は、タイムスタンプ提供装置３００の公開鍵を取得してタイムスタンプ検証部２１３が検証する方式に限らず、タイムスタンプ提供装置３００に検証を依頼する等というように、タイムスタンプの付与方法に対応する任意の検証方式が使用可能となっている。
【０１９０】
（全体のシーケンス）
次に、以上のように構成された認証システムの動作を図２１のシーケンス図を用いて説明する。
【０１９１】
（ステップＳＴ０）
クライアント装置１００ｃは、ユーザの生体認証を予め実行し、その生体認証の結果を含む認証コンテキストを生成し、認証コンテキストに対して既存の技術を用いてタイムスタンプを付与する。
【０１９２】
具体的には例えば、クライアント装置１００ｃにおいては、制御部１０２ｃが、合意処理の前に、生体認証処理制御部１０５を起動する。
【０１９３】
制御部１０２ｃは、生体認証処理制御部１０５から受けた生体認証の結果を認証コンテキスト生成部１０９ｃに送出する。
【０１９４】
認証コンテキスト生成部１０９ｃは、制御部１０２ｃから生体認証の結果を受けると、当該生体認証の結果とセキュリティポリシー保存部１０３内の生体認証方式情報と鍵保存部１０４内のクライアント証明書とからクライアント秘密鍵に基づいて、認証子を生成する。
【０１９５】
しかる後、認証コンテキスト生成部１０９ｃは、生体認証の結果および生体認証処理の正当性を保証するための取得した生体情報（サンプル）や参照した生体情報（テンプレート）および参照した生体情報の証明書（テンプレート証明書）などの各種情報と生体認証方式情報とクライアント証明書と認証子とを含む認証コンテキストを生成し、この認証コンテキストを制御部１０２ｃに送出する。
【０１９６】
制御部１０２ｃは、この認証コンテキストをタイムスタンプ付与部１１５に送出する。
【０１９７】
タイムスタンプ付与部１１５は、この認証コンテキストをタイムスタンプ提供装置３００に通信部１０１を介して送信する。
【０１９８】
タイムスタンプ提供装置３００は、この認証コンテキストに日時情報を付加した情報に対し、当該タイムスタンプ提供装置３００のタイムスタンプ秘密鍵に基づいてタイムスタンプを生成し、このタイムスタンプを認証コンテキストに付与する。
【０１９９】
また、タイムスタンプ提供装置３００は、このタイムスタンプを付与した認証コンテキストをクライアント装置１００ｃに送信する。
【０２００】
クライアント装置１００ｃにおいては、タイムスタンプ付与部１１５が、このタイムスタンプが付与された認証コンテキストを通信部１０１を介して受信すると、このタイムスタンプが付与された認証コンテキストを制御部１０２ｃに送出する。
【０２０１】
制御部１０２ｃは、このタイムスタンプが付与された認証コンテキストを記憶装置（図示せず）に保存する。
【０２０２】
（ステップＳＴ１）
クライアント装置１００ｃは、ハンドシェイクの拡張処理があることを通知するため、拡張したクライアントハローメッセージＭCHを制御部１０２ｃが通信部１０１により送信する。
【０２０３】
クライアントハローメッセージＭBHの拡張（Extension）リストでは、タイムスタンプを付与した認証コンテキストを用いてクライアント認証を行うことを通知する。
【０２０４】
（ステップＳＴ２）
サーバ装置２００ｃは、クライアントハローメッセージＭCHを通信部２０１により制御部２０２ｃが受信する。制御部２０２ｃは、ハンドシェイクの拡張処理について了解したことを通知するため、拡張したサーバハローメッセージＭSHを通信部２０１によりクライアント装置１００ｃに送信する。
【０２０５】
（ステップＳＴ３〜ＳＴ５）
ステップＳＴ３〜ＳＴ５までは第１の実施形態と同じであるので説明を省略する。
【０２０６】
（ステップＳＴ−ＣＢＮ）
クライアント装置１００ｃにおいては、クライアント装置１００ｃで予め実行した生体認証の生体認証方式をサーバに通知するため、制御部１０２が通信部１０１により、生体認証方式情報を含むクライアント生体認証交渉（ClientBiometricNegotiation）メッセージＭCBNを送信する。
【０２０７】
クライアント生体認証交渉メッセージＭCBNは、図１１に示したように、生体認証方式情報をリストにした生体認証方式リスト（BiometricMethodList）を含んでいる。
【０２０８】
（ステップＳＴ−ＳＢＮ）
サーバ装置２００ｃにおいては、クライアント生体認証交渉メッセージを制御部２０２ｃが通信部２０１により受信すると、制御部２０２ｃがクライアント生体認証交渉メッセージ内の生体認証方式リストの生体認証方式情報がセキュリティポリシー保存部２０３内の生体認証方式情報のいずれかに一致するか否かを判定する。
【０２０９】
制御部２０２ｃは、判定の結果が一致を示すとき、当該生体認証方式情報を含むサーバ生体認証交渉（ServerBiometricNegotiation）メッセージＭSBNを通信部２０１によりクライアント装置１００ｃに送信する。ここで選択した方式は複数であっても良い。
【０２１０】
もし、予め実行した生体認証方式がサーバのポリシーを満たさない場合には、周知の技術であるＴＬＳハンドシェイクにおける警告（Alert）を返すことでハンドシェイク処理を中止させる。
【０２１１】
（ステップＳＴ−ＢＰ）
クライアント装置１００ｃにおいては、サーバ生体認証交渉メッセージを制御部１０２が通信部１０１により受信すると、制御部１０２が、サーバ生体認証交渉メッセージ内の生体認証方式情報に基づいて、該当する認証コンテキストを含む生体認証処理（BiometricProcess）メッセージＭBPを通信部１０１によりサーバ装置２００に送信する。
【０２１２】
生体認証処理メッセージＭBPは、図１３に示したように、認証結果（AuthenticationResult）を含んでいる。認証結果（AuthenticationResult）には予め作成したタイムスタンプが付与された認証コンテキストが含まれる。
【０２１３】
（ステップＳＴ−ＢＶ）
サーバ装置２００ｃは、生体認証処理メッセージＭBPを制御部２０２ｃが通信部２０１により受信すると、制御部２０２ｃが生体認証処理メッセージＭBP内のタイムスタンプが付与された認証コンテキストのうち、タイムスタンプをタイムスタンプ検証部２１３に送出すると共に、認証コンテキストを認証コンテキスト検証部２０５ｃに送出する。
【０２１４】
タイムスタンプ検証部２１３は、タイムスタンプを検証し、検証結果を制御部２０２ｃに送出する。認証コンテキスト検証部２０５ｃは、認証コンテキストを検証し、検証結果を制御部２０２ｃに送出する。
【０２１５】
制御部２０２ｃは、各検証部２１３，２０５ｃから受けた検証結果に基づいて、合意処理を継続又は中断する。合意処理を中断する場合の検証結果としては、例えば（ｉ）認証コンテキスト内の生体認証の結果が不正を示すとき、（ｉｉ）認証コンテキスト内の生体認証方式情報が、通知した生体認証方式とは異なるとき、（ｉｉｉ）クライアント証明書内の公開鍵に基づいて認証子を検証し、検証結果が不正を示すとき、又は（ｉｖ）タイムスタンプを復号して得られた日時情報と現在の日時情報との差分が予め定めた値よりも大きいとき、などがある。なお、ここでは、合意処理を継続する旨の検証結果を得たとする。
【０２１６】
制御部２０２ｃは、検証した結果を通知するため、図１４に示したように、タイムスタンプが付与された認証コンテキストの検証結果（AuthenticationResult）、生体認証処理の情報を格納する認証処理情報格納領域（AuthenticateInfo）及びこれら項目に対してサーバの秘密鍵で作成された署名（Signature）が含まれた生体認証検証（BiometricVerify）メッセージＭBVを送信する。
【０２１７】
（ステップＳＴ６〜ＳＴ１３）
ステップＳＴ６〜ＳＴ１３は第１の実施形態と同じ動作をするので説明を省略する。
【０２１８】
上述したように本実施形態によれば、予め生体認証を実行して生成した認証コンテキストにタイムスタンプを付与しておく構成に変形しても、前述同様に、証明書認証を含む合意処理中に、生体認証をも実行する構成により、２回のハンドシェイクに伴う不要なパスを存在させずに、エンティティ認証及び生体認証に基づくセキュアセッションを確立することができる。また、生体認証に失敗した場合でも、従来に比べ、無駄になる処理を低減することができる。
【０２１９】
また、合意処理の前に、タイムスタンプを付与した認証コンテキストを生成しておき、合意処理中に、当該タイムスタンプを付与した認証コンテキストをサーバ装置２００ｃに送信する構成により、合意処理を中断することなく予め作成した認証コンテキストに基づいてセキュアセッションを確立することができる。また、認証コンテキストに付与されたタイムスタンプにより、再送攻撃を防止することができる。
【０２２０】
また、予め作成した認証コンテキストに基づいてセキュアセッションを確立するためのメッセージを送る装置を構成できるとともに、及び予め作成した認証コンテキストに基づいてセキュアセッションを確立するためのメッセージの作成を実現することができる。
【０２２１】
さらに、クライアント装置１００ｃとサーバ装置２００ｃとの間で、ハンドシェイク処理を中断することなく予め作成した認証コンテキストを用いてセキュアセッションを確立することができる。
【０２２２】
補足すると、従来のＴＬＳのプロトコル中において生体認証を行う場合には、再送攻撃などを防ぐ意味からプロトコル中で得たチャレンジを用いて生体認証を行う必要がある。
【０２２３】
従って、従来のＴＬＳプロトコルでは処理を一旦中断し、例えば照合処理を行うためにユーザの生体情報を取得する必要がある。このため、従来のＴＬＳプロトコルでは、生体認証に基づいてセキュアセッションを確立する場合、クライアント装置とサーバ装置とで一連の動作として処理を実行できず、ハンドシェイクが中断してしまう。
【０２２４】
これに対し、本実施形態では、前述した通り、ハンドシェイク処理を中断することなく予め作成した認証コンテキストを用いてセキュアセッションを確立することができる。
【０２２５】
また、本実施形態は、「ステップＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ」、「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」及び「ステップＳＴ６〜ＳＴ８」の順序を変更しても、同様に実施して同様の効果を得ることができる。但し、「ステップＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ」は「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」よりも先に実行する必要がある。
【０２２６】
具体的には本実施形態は、「ステップＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ」、「ステップＳＴ６〜ＳＴ８」及び「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」の順序で実行することもできる。また、本実施形態は「ステップＳＴ６〜ＳＴ８」、「ステップＳＴ-ＣＢＮ，ＳＴ-ＳＢＮ」及び「ステップＳＴ-ＢＰ，ＳＴ-ＢＶ」の順序で実行することもできる。
【０２２７】
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【０２２８】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【０２２９】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が上記実施形態を実現するための各処理の一部を実行しても良い。
【０２３０】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶又は一時記憶した記憶媒体も含まれる。
【０２３１】
また、記憶媒体は１つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【０２３２】
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【０２３３】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【０２３４】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【図面の簡単な説明】
【０２３５】
【図１】本発明の第１の実施形態に係る認証システムの構成を示す模式図である。
【図２】同実施形態におけるセキュリティポリシーを説明するための模式図である。
【図３】同実施形態における認証コンテキストを説明するための模式図である。
【図４】同実施形態におけるセキュリティポリシーを説明するための模式図である。
【図５】同実施形態におけるセキュリティポリシーを説明するための模式図である。
【図６】同実施形態における動作を説明するためのシーケンス図である。
【図７】同実施形態におけるクライアントハローメッセージの構成を示す模式図である。
【図８】同実施形態におけるクライアントハローメッセージの拡張リストの一例を示す模式図である。
【図９】同実施形態におけるサーバハローメッセージの構成を示す模式図である。
【図１０】同実施形態における動作の変形例を示すシーケンス図である。
【図１１】同実施形態におけるクライアント生体認証交渉メッセージの構成を示す模式図である。
【図１２】同実施形態におけるサーバ生体認証交渉メッセージの構成を示す模式図である。
【図１３】同実施形態における生体認証処理メッセージの構成を示す模式図である。
【図１４】同実施形態における生体認証検証メッセージの構成を示す模式図である。
【図１５】本発明の第２の実施形態に係る認証システムの構成を示す模式図である。
【図１６】同実施形態における動作を説明するためのシーケンス図である。
【図１７】本発明の第３の実施形態に係る認証システムの構成を示す模式図である。
【図１８】同実施形態における認証コンテキストを説明するための模式図である。
【図１９】同実施形態における動作を説明するためのシーケンス図である。
【図２０】本発明の第４の実施形態に係る認証システムの構成を示す模式図である。
【図２１】同実施形態における動作を説明するためのシーケンス図である。
【符号の説明】
【０２３６】
１００，１００ａ〜１００ｃ…クライアント装置、１０１，２０１…通信部、１０２，１０２ａ〜１０２ｃ，２０２，２０２ａ〜２０２ｃ…制御部、１０３，２０３…セキュリティポリシー保存部、１０４，２０４…鍵保存部、１０５，１０５ａ…生体認証処理制御部、１０６，２１１…テンプレート保存部、１０７…生体情報取得部、１０８，２１２…生体認証実行部、１０９，１０９ｂ，１０９ｃ…認証コンテキスト生成部、１１０，２０６…秘匿部、１１１，２０７…暗号化部、１１２，２０８…圧縮部、１１３，２０９…検証部、１１４，２１０…鍵交換部、１１５…タイムスタンプ付与部、２００，２００ａ〜２００ｃ…サーバ装置、２０５，２０５ｂ，２０５ｃ…認証コンテキスト検証部、２１３…タイムスタンプ検証部。
【図１】
0005132222.tif 000002
【図２】
0005132222.tif 000003
【図３】
0005132222.tif 000004
【図４】
0005132222.tif 000005
【図５】
0005132222.tif 000006
【図６】
0005132222.tif 000007
【図７】
0005132222.tif 000008
【図８】
0005132222.tif 000009
【図９】
0005132222.tif 000010
【図１０】
0005132222.tif 000011
【図１１】
0005132222.tif 000012
【図１２】
0005132222.tif 000013
【図１３】
0005132222.tif 000014
【図１４】
0005132222.tif 000015
【図１５】
0005132222.tif 000016
【図１６】
0005132222.tif 000017
【図１７】
0005132222.tif 000018
【図１８】
0005132222.tif 000019
【図１９】
0005132222.tif 000020
【図２０】
0005132222.tif 000021
【図２１】
0005132222.tif 000022