(57)【要約】【課題】ユーザの秘密鍵を安全に管理しつつ、スパイウェアによる認証情報の不正取得に対する耐性を備える鍵管理技術を提供する。【解決手段】鍵管理装置は、鍵管理サーバ装置と耐タンパ性を有する秘密鍵管理装置とで構成される。秘密鍵管理装置は、ユーザの秘密鍵を管理し、電子署名を生成する（Ｓ１０８）。鍵管理サーバ装置は、端末装置から受信したサービス提供装置のサイト識別情報のサイトが不正なサイトか否かを判定し（Ｓ１０４）、ユーザ認証（Ｓ１０５）において、端末装置との通信に通常用いる通信手段とは異なる第２の通信手段を介して端末装置に一時的な認証情報を送信し、端末装置から前記通信手段を介して当該一時的な認証情報に対応する応答情報を受信し、その受信した応答情報が当該一時的な認証情報に対応する情報であるか否かを比較して、スパイウェアによる認証情報の不正取得に対処する。【選択図】図１
2011071721.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの使用する端末装置と通信可能に接続され、前記端末装置から受信した電子データに対して電子署名を生成する鍵管理装置であって、
前記鍵管理装置は、
前記端末装置からのサービス提供要求に対応してサービスを提供するサービス提供装置のネットワーク上の場所を示すサイト識別情報および暗号鍵の生成条件を示す暗号鍵生成条件情報を関連付けたサイト鍵条件対応情報と、前記サイト識別情報で識別されるサイトが不正なサイトであるか否かを判定する情報を格納したサイト判定情報と、前記暗号鍵を識別する鍵ＩＤと前記暗号鍵生成条件情報とを関連付けた鍵選択情報と、前記鍵ＩＤと秘密鍵とを関連付けた秘密鍵情報とを記憶する記憶部と、
前記端末装置からのサービス提供要求に対して前記サービス提供装置がユーザ認証のために返信する前記電子データと、そのサービス提供装置のサイト識別情報と、を前記端末装置から受け付ける通信部の受信手段と、
前記サイト識別情報を用いて前記サイト判定情報を参照し、そのサイト識別情報のサイトが不正なサイトか否かを判定するサイト判定部と、
前記サイト判定部によって前記サイト識別情報のサイトが不正なサイトでないと判定されたとき、前記サイト識別情報を用いて前記サイト鍵条件対応情報を参照し、前記サイト識別情報に関連付けられた暗号鍵生成条件情報を抽出し、前記抽出された暗号鍵生成条件情報を用いて前記鍵選択情報を参照し、前記抽出された暗号鍵生成条件情報に関連付けられた鍵ＩＤを抽出する鍵ＩＤ抽出部と、
前記抽出した鍵ＩＤを用いて前記秘密鍵情報を参照し、前記抽出した鍵ＩＤに関連付けられた秘密鍵を抽出する秘密鍵抽出部と、
前記抽出された秘密鍵を用いて、前記電子データに対応する電子署名を生成する署名生成部と、
前記生成した電子署名を前記端末装置に出力する前記通信部の送信手段と、
を備えることを特徴とする鍵管理装置。
【請求項２】
前記鍵管理装置は、さらに、
前記端末装置または前記端末装置のユーザが使用する第２の端末装置との間で前記通信部とは異なる通信手段を有する第２の通信部を介して通信する通信手段を備え、
前記サイト判定部によって前記サイト識別情報のサイトが不正なサイトでないと判定されたとき、
一時的な認証情報を生成し、前記第２の通信部を介して、当該一時的な認証情報を前記端末装置または前記第２の端末装置に出力し、
前記出力に応じて前記ユーザによって操作される前記端末装置から、当該一時的な認証情報の出力に対応する応答情報を前記通信部を介して受信し、その受信した応答情報が、当該一時的な認証情報に対応する情報か否かを比較し、その比較結果において、当該応答情報が当該一時的な認証情報に対応する情報である場合に、前記秘密鍵抽出部、前記署名生成部、および前記通信部の送信手段における処理を実行する
ことを特徴とする請求項１に記載の鍵管理装置。
【請求項３】
前記鍵管理装置は、さらに、耐タンパ性を有するハードウェア暗号モジュールを備え、
前記耐タンパ性を有するハードウェア暗号モジュールでは、少なくとも、前記秘密鍵情報を記憶しており、前記秘密鍵抽出部および前記署名生成部の処理を実行する
ことを特徴とする請求項１または請求項２に記載の鍵管理装置。
【請求項４】
前記暗号鍵生成条件情報は、暗号鍵生成用のアルゴリズム種別、鍵長、および認証局情報のいずれかまたは組み合わせである
ことを特徴とする請求項１ないし請求項３のいずれか一項に記載の鍵管理装置。
【請求項５】
前記鍵管理装置の前記通信部の受信手段は、さらに、前記暗号鍵生成用のアルゴリズム種別および鍵長を前記端末装置から受け付け、
前記耐タンパ性を有するハードウェア暗号モジュールは、
前記サイト判定部によって前記サイト識別情報のサイトが不正なサイトでないと判定されたとき、前記暗号鍵生成用のアルゴリズム種別および鍵長を用いて、秘密鍵とその秘密鍵に対応する公開鍵とを生成する鍵生成部と、
前記鍵ＩＤを生成して、前記鍵ＩＤと前記秘密鍵とを関連付けて前記秘密鍵情報に記憶する鍵ＩＤ生成部と、
を備えることを特徴とする請求項４に記載の鍵管理装置。
【請求項６】
前記鍵管理装置は、
前記サイト判定部によって前記サイト識別情報のサイトが不正なサイトでないと判定されたとき、
一時的な認証情報を生成し、前記第２の通信部を介して、当該一時的な認証情報を前記端末装置または前記第２の端末装置に出力し、
前記端末装置から、当該一時的な認証情報の出力に対応する応答情報を前記通信部を介して受信し、その受信した応答情報が、当該一時的な認証情報と同じか否かを比較し、その比較結果において、当該応答情報と当該一時的な認証情報とが同じ場合に、前記鍵生成部および前記鍵ＩＤ生成部における処理を実行する
ことを特徴とする請求項５に記載の鍵管理装置。
【請求項７】
前記鍵ＩＤ抽出部は、
前記抽出した鍵ＩＤに関連付けられた秘密鍵を複数抽出した場合、
前記抽出した複数の鍵ＩＤの中から一つを選択入力可能な入力画面情報を、前記端末装置に前記通信部の送信手段を介して出力し、
前記端末装置から当該入力画面情報を用いて選択入力された鍵ＩＤを前記通信部の受信手段を介して受け付ける
ことを特徴とする請求項１に記載の鍵管理装置。
【請求項８】
ユーザの使用する端末装置と通信可能に接続され、前記端末装置から受信した電子データに対して電子署名を生成する鍵管理装置であって、
前記鍵管理装置は、
前記端末装置からのサービス提供要求に対応してサービスを提供するサービス提供装置のネットワーク上の場所を示すサイト識別情報および暗号鍵の生成条件を示す暗号鍵生成条件情報を関連付けたサイト鍵条件対応情報と、前記サイト識別情報で識別されるサイトが不正なサイトであるか否かを判定する情報を格納したサイト判定情報と、ユーザを識別するユーザＩＤと前記暗号鍵を識別する鍵ＩＤと前記暗号鍵生成条件情報とを関連付けた鍵選択情報と、前記鍵ＩＤと秘密鍵とを関連付けた秘密鍵情報とを記憶する記憶部と、
前記端末装置からのサービス提供要求に対して前記サービス提供装置がユーザ認証のために返信する前記電子データと、そのサービス提供装置のサイト識別情報と、前記ユーザＩＤと、を前記端末装置から受け付ける通信部の受信手段と、
前記サイト識別情報を用いて前記サイト判定情報を参照し、そのサイト識別情報のサイトが不正なサイトか否かを判定するサイト判定部と、
前記サイト判定部によって前記サイト識別情報のサイトが不正なサイトでないと判定されたとき、前記サイト識別情報を用いて前記サイト鍵条件対応情報を参照し、前記サイト識別情報に関連付けられた暗号鍵生成条件情報を抽出し、前記抽出した暗号鍵生成条件情報および前記ユーザＩＤを用いて前記鍵選択情報を参照し、前記抽出した暗号鍵生成条件情報および前記ユーザＩＤに関連付けられた鍵ＩＤを抽出する鍵ＩＤ抽出部と、
前記抽出した鍵ＩＤを用いて前記秘密鍵情報を参照し、前記抽出した鍵ＩＤに関連付けられた秘密鍵を抽出する秘密鍵抽出部と、
前記抽出された秘密鍵を用いて、前記電子データに対応する電子署名を生成する署名生成部と、
前記生成した電子署名を前記端末装置に出力する前記通信部の送信手段と、
を備えることを特徴とする鍵管理装置。
【請求項９】
前記鍵管理装置は、
前記通信部によって前記ユーザＩＤを受け付けなかった場合、
前記ユーザＩＤを入力可能な入力画面情報を、前記端末装置に前記通信部の送信手段を介して出力し、
前記端末装置から当該入力画面情報を用いて入力されたユーザＩＤを前記通信部の受信手段を介して受け付ける
ことを特徴とする請求項８に記載の鍵管理装置。
【請求項１０】
ユーザの使用する端末装置と通信可能に接続され、前記端末装置から受信した電子データに対して電子署名を生成する鍵管理装置において用いられる鍵管理方法であって、
前記鍵管理装置は、
前記端末装置からのサービス提供要求に対応してサービスを提供するサービス提供装置のネットワーク上の場所を示すサイト識別情報および暗号鍵の生成条件を示す暗号鍵生成条件情報を関連付けたサイト鍵条件対応情報、前記サイト識別情報で識別されるサイトが不正なサイトであるか否かを判定する情報を格納したサイト判定情報、前記暗号鍵を識別する鍵ＩＤと前記暗号鍵生成条件情報とを関連付けた鍵選択情報、および前記鍵ＩＤと秘密鍵とを関連付けた秘密鍵情報を記憶する記憶部と、前記端末装置との間で情報を送受信する通信部と、を備え、
前記端末装置からのサービス提供要求に対して前記サービス提供装置がユーザ認証のために返信する前記電子データと、そのサービス提供装置のサイト識別情報と、を前記端末装置から前記通信部を介して受け付ける受付ステップと、
前記サイト識別情報を用いて前記サイト判定情報を参照し、そのサイト識別情報のサイトが不正なサイトか否かを判定するサイト判定ステップと、
前記サイト識別情報のサイトが不正なサイトでないと判定されたとき、前記サイト識別情報を用いて前記サイト鍵条件対応情報を参照し、前記サイト識別情報に関連付けられた暗号鍵生成条件情報を抽出し、前記抽出された暗号鍵生成条件情報を用いて前記鍵選択情報を参照し、前記抽出された暗号鍵生成条件情報に関連付けられた鍵ＩＤを抽出する鍵ＩＤ抽出ステップと、
前記抽出した鍵ＩＤを用いて前記秘密鍵情報を参照し、前記抽出した鍵ＩＤに関連付けられた秘密鍵を抽出する秘密鍵抽出ステップと、
前記抽出された秘密鍵を用いて、前記電子データに対応する電子署名を生成する署名生成ステップと、
前記生成した電子署名を前記端末装置に前記通信部を介して出力する出力ステップ
を実行することを特徴とする鍵管理方法。
【請求項１１】
前記鍵管理装置は、さらに、
前記端末装置または前記端末装置のユーザが使用する第２の端末装置との間で前記通信部とは異なる通信手段を有する第２の通信部を介して通信する通信手段を備え、
前記サイト判定部によって前記サイト識別情報のサイトが不正なサイトでないと判定されたとき、
一時的な認証情報を生成し、前記第２の通信部を介して、当該一時的な認証情報を前記端末装置または前記第２の端末装置に出力し、
前記出力に応じて前記ユーザによって操作される前記端末装置から、当該一時的な認証情報の出力に対応する応答情報を前記通信部を介して受信し、その受信した応答情報が、当該一時的な認証情報に対応する情報か否かを比較し、その比較結果において、当該応答情報が当該一時的な認証情報に対応する情報である場合に、前記秘密鍵抽出ステップ、前記署名生成ステップ、および前記出力ステップにおける処理を実行する
ことを特徴とする請求項１０に記載の鍵管理方法。
【請求項１２】
前記鍵管理装置は、さらに、耐タンパ性を有するハードウェア暗号モジュールを備え、
前記耐タンパ性を有するハードウェア暗号モジュールでは、少なくとも、前記秘密鍵情報を記憶しており、前記秘密鍵抽出ステップおよび前記署名生成ステップにおける処理を実行する
ことを特徴とする請求項１０または請求項１１に記載の鍵管理方法。
【請求項１３】
前記暗号鍵生成条件情報は、暗号鍵生成用のアルゴリズム種別、鍵長、および認証局情報のいずれかまたは組み合わせである
ことを特徴とする請求項１０ないし請求項１２のいずれか一項に記載の鍵管理方法。
【請求項１４】
前記受付ステップでは、さらに、前記暗号鍵生成用のアルゴリズム種別および鍵長を前記端末装置から受け付け、
前記耐タンパ性を有するハードウェア暗号モジュールは、
前記サイト判定部によって前記サイト識別情報のサイトが不正なサイトでないと判定されたとき、前記暗号鍵生成用のアルゴリズム種別および鍵長を用いて、秘密鍵とその秘密鍵に対応する公開鍵とを生成する鍵生成ステップと、
前記鍵ＩＤを生成して、前記鍵ＩＤと前記秘密鍵とを関連付けて前記秘密鍵情報に記憶する鍵ＩＤ生成ステップと、
を実行することを特徴とする請求項１３に記載の鍵管理方法。
【請求項１５】
ユーザの使用する端末装置と通信可能に接続され、前記端末装置から受信した電子データに対して電子署名を生成する鍵管理装置において用いられる鍵管理方法であって、
前記鍵管理装置は、
ユーザの使用する端末装置からのサービス提供要求に対応してサービスを提供するサービス提供装置のネットワーク上の場所を示すサイト識別情報および暗号鍵の生成条件を示す暗号鍵生成条件情報を関連付けたサイト鍵条件対応情報と、前記サイト識別情報で識別されるサイトが不正なサイトであるか否かを判定する情報を格納したサイト判定情報と、ユーザを識別するユーザＩＤと前記暗号鍵を識別する鍵ＩＤと前記暗号鍵生成条件情報とを関連付けた鍵選択情報と、前記鍵ＩＤと秘密鍵とを関連付けた秘密鍵情報とを記憶する記憶部を備え、
前記端末装置からのサービス提供要求に対して前記サービス提供装置がユーザ認証のために返信する前記電子データと、そのサービス提供装置のサイト識別情報と、前記ユーザＩＤと、を前記端末装置から受け付ける受付ステップと、
前記サイト識別情報を用いて前記サイト判定情報を参照し、そのサイト識別情報のサイトが不正なサイトか否かを判定するサイト判定ステップと、
前記サイト識別情報のサイトが不正なサイトでないと判定されたとき、前記サイト識別情報を用いて前記サイト鍵条件対応情報を参照し、前記サイト識別情報に関連付けられた暗号鍵生成条件情報を抽出し、前記抽出した暗号鍵生成条件情報および前記ユーザＩＤを用いて前記鍵選択情報を参照し、前記抽出した暗号鍵生成条件情報および前記ユーザＩＤに関連付けられた鍵ＩＤを抽出し、前記抽出した鍵ＩＤを用いて前記秘密鍵情報を参照し、前記抽出した鍵ＩＤに関連付けられた秘密鍵を抽出する鍵ＩＤ抽出ステップと、
前記抽出された秘密鍵を用いて、前記電子データに対応する電子署名を生成する署名生成ステップと、
前記生成した電子署名を前記端末装置に出力する送信ステップ
を実行することを特徴とする鍵管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザ認証に用いる暗号鍵の管理技術に関する。
【背景技術】
【０００２】
近年の情報通信技術の高度化にともなって、守秘する必要のある情報が暗号化されてネットワークを介してやり取りされるようになってきている。このようなネットワークを介した情報のやり取りは、遠く離れた人とでも簡単に高速に行うことができる反面、通信相手が他人になりすますといった脅威も存在する。通信相手のなりすましを防ぐ方法の１つとして、電子証明書を用いた認証方法がある。
【０００３】
例えば、特許文献１では、なりすましを目的とした認証データの送信を検出する技術が開示されている。その開示技術では、クライアントがアプリケーションサーバにログインしたときに、アプリケーションサーバは、セッションＩＤを生成し、これを共通鍵と関連付けて記憶すると共に、セッションＩＤを含む暗号化した通信データを生成する。そして、アプリケーションサーバは、この暗号化した通信データを認証依頼としてクライアントを経由したリダイレクトを用いて認証サーバに送信する。認証サーバは、クライアントにパスワード入力を要求し、その要求に対して入力されたパスワードが正当であれば、認証依頼に基づいて認証処理を実行する。次に、認証サーバは、その認証処理の結果を含む認証データを、クライアントを経由したリダイレクトを用いてアプリケーションサーバに返信する。そして、アプリケーションサーバは、クライアントのログオン時に生成したセッションＩＤと、返信されてきた認証データ内のセッションＩＤと比較する。その比較結果に基づいて、セッションＩＤが異なればなりすましと判定する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−１８６１２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の技術では、アプリケーションサーバは、認証依頼のメッセージを生成するために、署名機能、暗号化機能、認証サーバの証明書を管理する機能、および認証サーバで生成された認証データに対する復号機能や署名検証機能を備える必要がある。したがって、既に実運用されているアプリケーションサーバに前記の各機能を追加するためには、開発費用をかけてシステムを改修しなければならず、導入までにも時間がかかってしまうという問題がある。また、鍵を利用する際のクライアントの認証がパスワードによって行われるため、ユーザがパスワードを忘れてしまった場合には、鍵を利用できなくなるという問題がある。さらに、ユーザがアプリケーションごとに異なる複数の鍵を所有している場合には、鍵をアプリケーションごとに管理しなければならないといった煩わしい手間が生じ、ユーザの利便性が損なわれるという問題もある。
【０００６】
また、電子証明書を用いた認証を行うためには、ユーザに秘密鍵を安全に管理してもらう必要がある。しかし、特許文献１に記載の技術では、ユーザの使用する端末装置がスパイウェアに感染してしまった場合に、認証情報がキャプチャされて利用され、不正に秘密鍵が流出して悪用される可能性や、ユーザの意図しない電子署名が出回る可能性がある。なお、秘密鍵を安全に管理するための方法として、秘密鍵を耐タンパ性を有するハードウェア内に格納する方法がある。しかし、この方法では、ユーザに秘密鍵を格納したハードウェアを配付する必要があり、費用や時間がかかってしまうという問題がある。
【０００７】
そこで、本発明は、ユーザの秘密鍵を安全に管理しつつ、スパイウェアによる認証情報の不正取得に対する耐性を備える鍵管理技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
前記課題を解決するために、本発明は、ユーザの秘密鍵を管理する鍵管理装置であって、ユーザの使用する端末装置からのサービス提供要求に対してサービス提供装置がユーザ認証のために返信する電子データと、そのサービス提供装置のサイト識別情報と、を端末装置から受け付け、サイト識別情報を用いてそのサイト識別情報のサイトが不正なサイトか否かを判定し、不正なサイトでないと判定されたとき、サイト識別情報に関連付けられた暗号鍵の生成条件を示す暗号鍵生成条件情報を抽出し、さらにその抽出された暗号鍵生成条件情報に関連付けられた秘密鍵を抽出し、その秘密鍵を用いて前記電子データに対応する電子署名を生成し、その生成した電子署名を端末装置に出力することを特徴とする。また、鍵管理装置は、端末装置との間でサイト識別情報や電子署名の送受信に用いる通信手段とは異なる第２の通信手段を備え、その第２の通信手段を介して端末装置または端末装置のユーザが使用する第２の端末装置に一時的な認証情報を送信し、端末装置から前記通信手段を介して当該一時的な認証情報に対応する応答情報を受信し、その受信した応答情報が当該一時的な認証情報に対応する情報であるか否かを比較することによって、スパイウェアによる認証情報の不正取得に対処することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、ユーザの秘密鍵を安全に管理しつつ、スパイウェアによる認証情報の不正取得に対する耐性を備える鍵管理技術を提供することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態における認証処理の概要を示す図である。
【図２】本実施形態における暗号鍵生成処理の概要を示す図である。
【図３】本実施形態における鍵管理システムの構成例を示す図である。
【図４】鍵管理システムを構成する各装置の内部構成例を示す図である。
【図５】鍵管理サーバ装置の機能例を示す図である。
【図６】秘密鍵管理装置の機能例を示す図である。
【図７】端末装置の機能例を示す図である。
【図８】鍵管理サーバ装置の記憶部に記憶されるサイト情報の一例を示す図である。
【図９】鍵管理サーバ装置の記憶部に記憶されるユーザ情報の一例を示す図である。
【図１０】秘密鍵管理装置の記憶部に記憶されるユーザ秘密鍵の一例を示す図である。
【図１１】サービス認証処理の流れを示す図である。
【図１２】署名処理（１／２）の流れを示す図である。
【図１３】署名処理（２／２）の流れを示す図である。
【図１４】ユーザ認証処理の流れを示す図である。
【図１５】ユーザ登録処理の流れを示す図である。
【図１６】証明書発行処理の流れを示す図である。
【図１７】鍵生成処理（１／２）の流れを示す図である。
【図１８】鍵生成処理（２／２）の流れを示す図である。
【図１９】ユーザ情報変更処理の流れを示す図である。
【図２０】ユーザ情報削除処理の流れを示す図である。
【図２１】鍵削除処理（１／２）の流れを示す図である。
【図２２】鍵削除処理（２／２）の流れを示す図である。
【発明を実施するための形態】
【００１１】
次に、本発明を実施するための形態（以降、「本実施形態」と称す）について、適宜図面を参照しながら詳細に説明する。初めに、本実施形態における認証処理の概要および暗号鍵生成処理の概要について説明する。
【００１２】
≪認証処理の概要≫
本実施形態における認証処理の概要について、図１を用いて説明する。認証処理では、ユーザがサービスを享受するためにサービス提供装置にアクセスしたときに、そのユーザまたはユーザの使用する端末装置が正当であるか否かを認証する処理のことである。認証処理は、図１に示すように、鍵管理装置、端末装置、およびサービス提供装置の間で実行される。鍵管理装置は、鍵管理サーバ装置と秘密鍵管理装置とで構成される。鍵管理サーバ装置は、ユーザの使用する端末装置との間で情報の送受信を行う。また、秘密鍵管理装置は、鍵管理サーバ装置との間で情報の送受信を行い、ユーザの秘密鍵を管理する。秘密鍵管理装置は、耐タンパ性を有するハードウェアで構成されている。また、端末装置は、端末装置からのサービス提供要求に対応してサービスを提供するサービス提供装置との間で情報の送受信を行う。
【００１３】
まず、ステップＳ１０１では、端末装置は、サービス提供装置に、サービス提供要求を送信する。ステップＳ１０２では、サービス提供装置は、サービス提供要求を送信してきた端末装置に対して、ユーザ認証に用いる電子データを返信する。ステップＳ１０３では、端末装置は、サービス提供装置のネットワーク上の場所を示すサイト識別情報と前記電子データとを鍵管理サーバ装置に送信する。
【００１４】
ステップＳ１０４では、鍵管理サーバ装置は、サイト識別情報を用いて、そのサイト識別情報のサイトが不正なサイトか否かを判定する。その判定結果が不正なサイトでないという判定の場合、ステップＳ１０５では、鍵管理サーバ装置と端末装置との間で、ユーザ認証が実行される。具体的には、鍵管理サーバ装置は、一時的な認証情報を生成し、電子データおよびサイト識別情報の受信時に用いた通信手段とは異なる第２の通信手段を介して、端末装置または端末装置のユーザが使用する第２の端末装置に一時的な認証情報を送信する。そして、鍵管理サーバ装置は、端末装置から前記通信手段を介して当該一時的な認証情報に対応する応答情報を受信し、その応答情報が当該一時的な認証情報に対応する情報であるか否かを比較する。その比較において、応答情報が一時的な認証情報に対応する情報である場合には、ユーザ認証が成功したと判定し、ステップＳ１０６へ進む。
【００１５】
ステップＳ１０６では、鍵管理サーバ装置は、サイト識別情報に対応する鍵ＩＤ（秘密鍵に関連付けられた識別情報）を抽出する。そして、ステップＳ１０７では、鍵管理サーバ装置は、秘密鍵管理装置に、鍵ＩＤとステップＳ１０３で受信した電子データを出力する。ステップＳ１０８では、秘密鍵管理装置は、鍵ＩＤに対応する秘密鍵を抽出し、その秘密鍵を用いて前記電子データの電子署名を生成する。ステップＳ１０９では、秘密鍵管理装置は、生成した電子署名を鍵管理サーバ装置に出力する。また、ステップＳ１１０では、鍵管理サーバ装置は、電子署名を端末装置に送信する。
【００１６】
ステップＳ１１１では、端末装置は、電子署名、前記電子データ、公開鍵、および後記する認証装置によって認証されたその公開鍵のユーザ証明書をサービス提供装置に送信する。ステップＳ１１２では、サービス提供装置は、ユーザ証明書を用いて公開鍵の検証を実行し、電子署名とユーザ証明書とを用いて電子署名の検証を実行し、電子データ、公開鍵、および電子署名を用いて、改ざんの有無の検証を実行する。そして、ステップＳ１１３では、サービス提供装置は、検証結果を認証メッセージとして端末装置に送信する。
【００１７】
以上、認証処理の流れでは、鍵管理装置は、秘密鍵を耐タンパ性を有するハードウェアによってユーザを識別可能に管理するため、ユーザの秘密鍵を安全に管理しつつ、ユーザによる秘密鍵の管理を代行することができる。また、鍵管理装置は、正当なサイトの場合のみ認証処理を実行し、ユーザ認証（ステップＳ１０５）において、スパイウェアによる認証情報の不正取得に対処することができる。
【００１８】
≪暗号鍵生成処理の概要≫
本実施形態における暗号鍵生成処理の概要について、図２を用いて説明する。暗号鍵生成処理では、暗号鍵（以降、単に鍵とも称す）を生成するとともに、認証局に備えられる認証装置にアクセスして、生成した公開鍵に対応する電子証明書を作成する処理のことである。暗号鍵生成処理は、図２に示すように、鍵管理装置、端末装置、および認証装置の間で実行される。鍵管理装置、鍵管理サーバ装置、秘密鍵管理装置、および端末装置は、図１と同様であるので説明を省略する。なお、認証装置は、端末装置からの証明書発行申請要求に対応して証明書を発行する。
【００１９】
まず、ステップＳ２０１では、端末装置は、公開鍵に対応するユーザ証明書の発行を申請するために、証明書発行申請要求を認証装置に送信する。ステップＳ２０２では、認証装置は、証明書発行に用いる電子データ（暗号鍵生成用のアルゴリズムおよび鍵長等を含む）を返信する。ステップＳ２０３では、端末装置は、サイト識別情報および電子データを鍵管理サーバ装置に送信する。
【００２０】
ステップＳ２０４では、ステップＳ１０４と同様に、鍵管理サーバ装置は、サイト識別情報を用いて、そのサイト識別情報のサイトが不正なサイトか否かを判定する。その判定結果が不正なサイトでないという判定の場合、ステップＳ２０５では、ステップＳ１０５と同様に、鍵管理サーバ装置と端末装置との間で、ユーザ認証が実行される。そして、ユーザ認証が成功した場合、処理はステップＳ２０６に進む。
【００２１】
ステップＳ２０６では、鍵管理サーバ装置は、証明書発行に用いる電子データを秘密鍵管理装置に出力する。ステップＳ２０７では、秘密鍵管理装置は、秘密鍵とその秘密鍵に対応する公開鍵とを生成し、鍵ＩＤを生成し、鍵ＩＤと秘密鍵とを関連付けて記憶する。ステップＳ２０８では、秘密鍵管理装置は、鍵ＩＤと公開鍵とを鍵管理サーバ装置に出力する。ステップＳ２０９では、鍵管理サーバ装置は、公開鍵を端末装置に送信する。
【００２２】
ステップＳ２１０では、端末装置は、認証装置への申請要求データと公開鍵とを組み合わせて、署名対象データを生成する。ステップＳ２１１では、端末装置、鍵管理サーバ装置、および秘密鍵管理装置の間で、ステップＳ１０３〜Ｓ１１０と同様の処理を実行し、端末装置は電子署名を受信する。
【００２３】
ステップＳ２１２では、端末装置は、署名対象データと電子署名とを用いて申請データを生成する。そして、ステップＳ２１３では、端末装置は、認証装置に、申請データを送信する。ステップＳ２１４では、認証装置は、申請データに含まれる公開鍵を用いて電子署名を検証する。そして、検証結果において不正なしと判定した場合、ステップＳ２１５では、認証装置は、ユーザ証明書を端末装置に送信する。
【００２４】
以上、暗号鍵生成処理の流れでは、秘密鍵は、耐タンパ性を有するハードウェアの秘密鍵管理装置によって生成され、ユーザを識別可能に管理されるため、ユーザが秘密鍵を管理する必要がない。また、正当なサイトの場合のみ認証処理が実行され、ユーザ認証（ステップＳ２０５，Ｓ２１１）において、スパイウェアによる認証情報の不正取得に対処することができる。
【００２５】
≪鍵管理システムの構成≫
次に、鍵管理システム３００の構成について、図３を用いて説明する。鍵管理システム３００は、鍵管理装置３１０、サービス提供装置３２０、認証装置３３０、端末装置７００、および第２の端末装置８００がネットワーク３４０に接続されて構成される。鍵管理装置３１０は、鍵管理サーバ装置５００と、耐タンパ性を有する秘密鍵管理装置６００とで構成される。鍵管理サーバ装置５００は、ネットワーク３４０を介してユーザの使用する端末装置７００との間で情報を送受信する。秘密鍵管理装置６００は、鍵管理サーバ装置５００から取得した情報に基づいて、電子署名や暗号鍵を生成し、秘密鍵を管理する。端末装置７００は、例えば、ＰＣ（Personal Computer）等であって、ユーザによって操作される。第２の端末装置（携帯電話等）８００は、端末装置７００のユーザが所有する別の通信手段（第２の通信手段）である。サービス提供装置３２０は、ネットワーク３４０を介して、端末装置７００からのサービス提供要求に対応するサービスを提供する。なお、サービス提供装置３２０は、サービス提供要求を受信したとき、ユーザ認証に用いる電子データを端末装置７００に返信する。また、認証装置３３０は、認証局に設置され、ネットワーク３４０を介して、端末装置７００からの証明書発行申請要求に対応して証明書を発行する。なお、認証装置３３０は、証明書発行申請要求を受信したとき、証明書発行に用いる電子データ（暗号鍵生成用のアルゴリズムや鍵長等）を端末装置７００に返信する。
【００２６】
なお、図３には、鍵管理装置３１０、サービス提供装置３２０、認証装置３３０、鍵管理サーバ装置５００、秘密鍵管理装置６００、端末装置７００、および第２の端末装置８００は、それぞれ１台しか記載していないが、それぞれ２台以上であっても構わない。また、端末装置７００が、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）を用いた通信手段と、その通信手段とは異なる第２の通信手段として電子メール等の別の通信方式を備える場合には、第２の端末装置８００は備えられていなくても構わない。
【００２７】
鍵管理装置３１０、サービス提供装置３２０、認証装置３３０、鍵管理サーバ装置５００、秘密鍵管理装置６００、および端末装置７００の内部構成について、図４を用いて説明する（適宜図３参照）。当該各装置は、ＣＰＵ（Central Processing Unit）４１０と、主記憶装置であるメモリ４２０と、外部記憶装置であるＨＤＤ（Hard Disk Drive）４３０と、ネットワークに接続するためのＮＩＣ（Network Interface Card）等の通信Ｉ／Ｆ（Interface）４５０と、ディスプレイ等の出力装置を接続する出力Ｉ／Ｆ４６０と、キーボードやマウス等の入力装置を接続する入力Ｉ／Ｆ４７０と、ＤＶＤ（Digital Versatile Disk）やＣＤ（Compact Disk）等の可搬性を有する記憶媒体に対して情報を読み書きする読書装置４８０と、を備えた一般的なコンピュータにより実現できる。
【００２８】
例えば、ＣＰＵ４１０は、ＨＤＤ４３０に記憶されている所定のプログラムをメモリ４２０にロードしてＣＰＵ４１０で実行することで、各装置の機能を実現することができる。また、この所定のプログラムは、読書装置４８０を介して記憶媒体から、または、通信Ｉ／Ｆ４５０を介してネットワーク３４０から、ＨＤＤ４３０にダウンロードされ、その後に、メモリ４２０上にロードされてＣＰＵ４１０により実行されるようにしてもよい。また、読書装置４８０を介して記憶媒体から、あるいは、通信Ｉ／Ｆ４５０を介してネットワーク３４０から、メモリ４２０上に直接ロードされ、ＣＰＵ４１０により実行されるようにしてもよい。
【００２９】
なお、図４に示すタンパ検知装置４４０は、秘密鍵管理装置６００に備えられている。タンパ検知装置４４０は、秘密鍵管理装置６００に対して、こじ開け等の物理的に不正な操作が行われた場合に、その不正な操作を検知して、ユーザの秘密鍵を消去して、秘密鍵の漏洩を防止する。
【００３０】
第２の端末装置８００は、それがＰＣである場合には、端末装置７００と同様の内部構成となる。また、第２の端末装置８００が携帯電話である場合には、電子メールが使用可能であれば良く、公知の内部構成を備えていれば良い。
【００３１】
≪鍵管理サーバ装置の機能≫
鍵管理サーバ装置５００の機能を、図５を用いて説明する（適宜図３参照）。図５に示すように、鍵管理サーバ装置５００は、制御部５１０、記憶部５２０、入力部５３０、出力部５４０、および通信部５５０を備える。なお、制御部５１０は図４に示すＣＰＵ４１０およびメモリ４２０に対応し、記憶部５２０は図４に示すＨＤＤ４３０に対応し、入力部５３０は図４に示す入力Ｉ／Ｆ４７０に対応し、出力部５４０は図４に示す出力Ｉ／Ｆ４６０に対応し、および通信部５５０は図４に示す通信Ｉ／Ｆ４５０に対応する。
【００３２】
制御部５１０は、全体制御部５１１と、鍵管理サービス提供部５１２と、サイト情報管理部５１３とを備える。
【００３３】
全体制御部５１１は、鍵管理サーバ装置５００の処理全体を制御する。例えば、全体制御部５１１は、ファイル管理、プロセス管理、デバイス管理といった処理を実行する。
【００３４】
鍵管理サービス提供部５１２は、ネットワーク３４０を介して、ユーザの秘密鍵の管理サービスを提供する。例えば、その管理サービスは、ＷｅｂサーバプログラムとＷｅｂアプリケーションプログラム等で構成されるものとして説明を行うが、Ｗｅｂの形態に限定されず、専用のアプリケーションによって構成されていても良い。また、鍵管理サービス提供部５１２は、ＳＳＬ（Secure Socket Layer）通信またはＴＬＳ（Transport Layer Security）通信を行うために必要な暗号処理や、鍵および証明書の管理を実行する。
【００３５】
なお、鍵管理サービス提供部５１２は、ユーザ認証のときに、Ｗｅｂとは別の通信手段やプロトコルを用いて、第２の通信部５５３を介して、端末装置７００に認証用の情報を送信する。例えば、別の通信手段やプロトコルとして、電子メールを用いる場合で説明するが、電子メール以外に、専用のアプリケーションを用いても構わない。なお、電子メールを用いる場合、鍵管理サービス提供部５１２は、メールサーバとの間の認証処理や、Ｓ／ＭＩＭＥ（Secure Multipurpose Internet Mail Extensions）通信を行うために必要な暗号処理を実行する。
【００３６】
サイト情報管理部５１３は、サイト判定部５１３１および鍵ＩＤ抽出部５１３２を備える。サイト判定部５１３１は、端末装置７００から電子署名の生成要求を受信したときに、ユーザが電子署名を提示しようとしているサービス提供装置３２０が不正なサイトでないことを確認する処理を実行する。鍵ＩＤ抽出部５１３２は、当該サービス提供装置３２０に適した秘密鍵を選定するために、サイト識別情報を用いてその秘密鍵に関連付けられている鍵ＩＤを抽出する処理を実行する。また、サイト情報管理部５１３は、鍵管理サーバ装置５００の運用者によって設定される、不正なサイトかどうかを判断するための判断条件およびサービス毎に適した鍵の選定条件を受け付ける処理を実行する。
【００３７】
記憶部５２０は、サーバ証明書５２１、サーバ秘密鍵５２２、サイト情報５２３、ユーザ情報５２４、および管理用認証情報５２５を備える。サーバ証明書５２１は、ＳＳＬもしくはＴＬＳに必要なサーバ証明書およびその上位にくるすべての認証局証明書を格納している。サーバ秘密鍵５２２は、サーバ証明書５２１に格納されたサーバ証明書の公開鍵に対応する秘密鍵を格納する。
【００３８】
サイト情報５２３は、サイト情報管理部５１３で使用する、不正なサイトかどうかを判断するための判断条件に関する情報と、サービス毎に適した鍵の選定条件に関する情報と、を格納する。
【００３９】
ユーザ情報５２４は、鍵管理サーバ装置５００が提供するサービスのユーザ毎に、当該ユーザを識別するためのユーザＩＤ、当該ユーザの属性情報と、当該ユーザが使用可能なすべての鍵ＩＤと、当該ユーザのアクセスごとに生成されるセッションＩＤ、署名対象データやサービス提供装置３２０のＵＲＩ(Uniform Resource Identifier)を含む当該ユーザが送信してきた署名生成要求情報、当該ユーザのユーザ認証に必要な一時的な認証情報、および各々のサービスに対する当該ユーザのアクセス権限を特定する情報を格納する。
【００４０】
管理用認証情報５２５は、秘密鍵管理装置６００に記憶されている秘密鍵にアクセスするときに用いる管理用の認証情報を格納する。当該管理用の認証情報は、秘密鍵管理装置６００に記憶したものと同じ管理用認証情報である。なお、当該管理用の認証情報は、鍵管理サーバ装置５００の運用者および鍵管理サービス提供部５１２からのアクセスに対して与えられたアクセス権限のことであり、例えば、全体制御部５１１による、アクセス制御または一般的な暗号ソフトウェア等により保護された形態で格納される。
【００４１】
入力部５３０は、情報の入力を受け付ける。また、出力部５４０は、情報を出力する。また、通信部５５０の送信手段５５１は、ネットワーク３４０を介した情報の送信を実行し、通信部５５０の受信手段５５２は、ネットワーク３４０を介した情報の受信を実行する。なお、第２の通信部５５３は、通信部５５０の送信手段５５１および受信手段５５２とは異なる通信方式で情報の送受信を行う。本実施形態では、通信部５５０の送信手段５５１および受信手段５５２が、Ｗｅｂの方式で通信を行うのに対して、第２の通信部５５３は、電子メールで通信を行うものとする。
【００４２】
≪秘密鍵管理装置の機能≫
秘密鍵管理装置６００の機能を、図６を用いて説明する（適宜図３参照）。図６に示すように、秘密鍵管理装置６００は、制御部６１０、記憶部６２０、入力部６３０、出力部６４０、および通信部６５０を備える。なお、制御部６１０は図４に示すＣＰＵ４１０およびメモリ４２０に対応し、記憶部６２０は図４に示すＨＤＤ４３０に対応し、入力部６３０は図４に示す入力Ｉ／Ｆ４７０に対応し、出力部６４０は図４に示す出力Ｉ／Ｆ４６０に対応し、および通信部６５０は図４に示す通信Ｉ／Ｆ４５０に対応する。
【００４３】
制御部６１０は、全体制御部６１１と、鍵管理部６１２と、タンパ検知処理部６１３と、を備える。タンパ検知処理部６１３は、図４に示すタンパ検知装置４４０に対応する。
【００４４】
全体制御部６１１は、秘密鍵管理装置６００の処理全体を制御する。例えば、ファイル管理、プロセス管理、デバイス管理といった処理を実行する。
【００４５】
鍵管理部６１２は、署名生成部６１２１、鍵生成部６１２２、鍵ＩＤ生成部６１２３、および秘密鍵抽出部６１２４を備える。鍵管理部６１２は、鍵管理サーバ装置５００からユーザの秘密鍵が必要となる暗号処理の要求を受け付け、要求元の認証を行って、秘密鍵へのアクセス権限の確認、鍵の削除等の管理を実行し、その実行結果を鍵管理サーバ装置５００に応答する。また、署名生成部６１２１は、電子署名を生成する。鍵生成部６１２２は、暗号鍵（秘密鍵とその秘密鍵に対応する公開鍵の組）を生成する。鍵ＩＤ生成部６１２３は、生成した暗号鍵を識別する鍵ＩＤを生成し、鍵ＩＤと暗号鍵とを関連付けてユーザ秘密鍵６２１に記憶する。秘密鍵抽出部６１２４は、鍵ＩＤを用いて、ユーザ秘密鍵６２１に記憶されている秘密鍵を抽出する。
【００４６】
タンパ検知処理部６１３は、秘密鍵管理装置６００に対して、こじ開け等の物理的に不正な操作が行われた場合に、その不正な操作を検知し、ユーザ秘密鍵６２１に記憶している秘密鍵を消去して、秘密鍵の漏洩を防止する。
【００４７】
記憶部６２０は、ユーザ秘密鍵６２１と、管理用認証情報６２２と、を備える。ユーザ秘密鍵６２１は、ユーザ用の秘密鍵と当該秘密鍵を特定する鍵ＩＤとを、複数格納する。管理用認証情報６２２は、ユーザ秘密鍵６２１の秘密鍵にアクセスするための管理用の認証情報を格納する。
【００４８】
入力部６３０は、情報の入力を受け付ける。また、出力部６４０は、情報を出力する。また、通信部６５０は、鍵管理サーバ装置５００との間での情報の送受信を行う。
【００４９】
≪端末装置の機能≫
端末装置７００の機能を、図７を用いて説明する（適宜図３参照）。図７に示すように、端末装置７００は、制御部７１０、記憶部７２０、入力部７３０、出力部７４０、および通信部７５０を備える。なお、制御部７１０は図４に示すＣＰＵ４１０およびメモリ４２０に対応し、記憶部７２０は図４に示すＨＤＤ４３０に対応し、入力部７３０は図４に示す入力Ｉ／Ｆ４７０に対応し、出力部７４０は図４に示す出力Ｉ／Ｆ４６０に対応し、および通信部７５０は図４に示す通信Ｉ／Ｆ４５０に対応する。
【００５０】
制御部７１０は、全体制御部７１１と、サービス利用部７１２と、認証部７１３と、を備える。
【００５１】
全体制御部７１１は、端末装置７００の処理全体を制御する。例えば、ファイル管理、プロセス管理、デバイス管理といった処理を実行する。
【００５２】
サービス利用部７１２は、ネットワーク３４０を介して、サービス提供装置３２０からサービス提供を受ける処理を実行する。例えば、サービスはＷｅｂで提供されるものとして説明を行うが、Ｗｅｂの形態に限定されなくても良い。サービス利用部７１２は、Ｗｅｂブラウザを用いて処理を行い、ネットワーク３４０上のＷｅｂサーバに公開されたＨＴＭＬ（HyperText Markup Language）ファイル、画像ファイル、音楽ファイル等をダウンロードし、レイアウトを解析して表示あるいは再生等を行い、また、フォームを使用してユーザがデータをＷｅｂサーバに送信することや、Ｊａｖａ（登録商標）等で記述されたプログラムを動作させることも可能である。また、サービス利用部７１２は、ＳＳＬまたはＴＬＳ通信を行うために必要な暗号処理や、鍵および証明書の管理を実行する。
【００５３】
また、サービス利用部７１２は、ユーザ認証のときに、Ｗｅｂとは別の通信手段やプロトコルを用いて、第２の通信部７５１を介して、鍵管理サーバ装置５００から、認証用の情報を受信する。例えば、別の通信手段やプロトコルとして、電子メールを用いる場合で説明するが、電子メール以外に、専用のアプリケーションを用いても構わない。なお、電子メールを用いる場合、サービス利用部７１２は、メーラーを用いて処理を行い、ネットワーク３４０上のメールサーバに蓄積されたユーザのアカウント宛の電子メールをダウンロードし、表示等を行う。また、サービス利用部７１２は、メールサーバとの間の認証処理、Ｓ／ＭＩＭＥ（Secure Multipurpose Internet Mail Extensions）通信を行うために必要な暗号処理、鍵およびユーザ証明書の管理を実行する。
【００５４】
認証部７１３は、サービス利用部７１２から、ユーザの秘密鍵が必要となる暗号処理の要求を受け付け、鍵管理サーバ装置５００から処理結果を受信し、その処理結果を処理要求元に送信する。
【００５５】
記憶部７２０は、ユーザ証明書７２１と、鍵管理サービス情報７２２と、を備える。ユーザ証明書７２１は、サービス提供装置３２０が提供するサービスの利用に必要なユーザ証明書と、その上位に当るすべての認証局証明書とを格納する。なお、ユーザ証明書は、認証装置３３０によって発行される。また、鍵管理サービス情報７２２は、鍵管理サーバ装置５００が提供する鍵管理サービスにおいて使用する情報を格納する。例えば、ユーザを識別するためのユーザＩＤや、ユーザからのアクセスごとに生成されるセッションＩＤ等のユーザのアクセスを特定する情報を格納する。
【００５６】
入力部７３０は、情報の入力を受け付ける。また、出力部７４０は、情報を出力する。また、通信部７５０は、ネットワーク３４０を介した情報の送受信を行う。なお、第２の通信部７５１は、通信部７５０とは異なる通信方式で情報の送受信を行う。本実施形態では、通信部７５０が、Ｗｅｂの方式で通信を行うのに対して、第２の通信部７５１は、電子メールで通信を行うものとする。
【００５７】
≪サービス提供装置の機能≫
サービス提供装置３２０の機能については、図示していないが、簡単に説明する。サービス提供装置３２０は、ネットワーク３４０を介して、端末装置７００からのサービス提供要求に対応するサービスを提供する。例えば、ＷｅｂサーバプログラムとＷｅｂアプリケーションプログラム等で構成されるものとして説明を行うが、専用のアプリケーションを用いても構わない。また、サービス提供装置３２０は、サービス提供要求を送信してきた端末装置に対して、ユーザの認証に用いる電子データを返信し、端末装置から送信されてきた電子署名やユーザ証明書等を検証し、ユーザを識別するユーザＩＤや当該ユーザの属性情報によって特定されるユーザのアクセス権の認可を行う。
【００５８】
≪認証装置の機能≫
認証装置３３０の機能については、図示していないが、簡単に説明する。認証装置３３０は、例えば、あるユーザに関して、当該ユーザの識別名（ユーザＩＤ）とユーザの所有する公開鍵とを結びつけ、この結びつけた情報に対し認証装置秘密鍵を用いて電子署名を施したユーザ証明書（公開鍵証明書）を発行する処理を行う。また、認証装置３３０は、自身の発行したユーザ証明書の管理を行い、そのユーザ証明書（公開鍵証明書）に関して、失効したユーザ証明書（公開鍵証明書）の情報の一覧に、認証装置秘密鍵を用いて電子署名を施した証明書失効情報の生成等も行う。なお、本実施形態においては、認証装置３３０は、ルート証明書となる認証局証明書と、ユーザ証明書とを発行するものとする。なお、本実施形態においては、ルート証明書とユーザ証明書という２階層で説明を行うが、認証の階層構造は３階層以上であっても構わない。
【００５９】
さらに、認証装置３３０は、公開鍵証明書の検証を求める要求に応じて、証明書失効情報を送信する。例えば、本実施形態では、認証装置３３０がＬＤＡＰ（Lightweight Directory Access Protocol）サーバ等の機能も有し、証明書失効情報が証明書失効リスト（ＣＲＬ）であるものとして説明を行う。しかし、認証装置３３０は、このような態様に限定されず、オンライン証明書ステータスプロトコル（ＯＣＳＰ）のように、証明書の有効性確認に関する要求を受け付け、要求に応じて応答を返信するような処理を行ってもよい。
【００６０】
≪サイト情報の一例≫
ここで、図５に示す鍵管理サーバ装置５００の記憶部５２０のサイト情報５２３の一例について、図８を用いて説明する（適宜図５参照）。
【００６１】
図８に示すサイト情報５２３は、予め鍵管理サーバ装置５００の運用者によって、サイト情報管理部５１３を介して設定される。不正サイト情報８１０には、不正なサイトのサイト識別情報が格納されている。また、正当サイト情報８２０には、正当なサイトのサイト識別情報が格納されている。不正サイト情報８１０または正当サイト情報８２０は、図１に示すステップＳ１０４（不正なサイト判定）において、サービス提供装置３２０が不正なサイトでないことを確認するために参照される。この不正なサイト判定において、不正サイト情報８１０に登録されているサイトを不正なサイトとして判定するのか、または正当サイト情報８２０に登録されているサイト以外を不正なサイトとして判定するのかの設定も、サイト情報管理部５１３を介して運用者によって設定されるものとする。なお、不正サイト情報８１０および正当サイト情報８２０は、特許請求の範囲において、サイト判定情報と称する。
【００６２】
サイト鍵条件対応情報８３０は、サイト識別情報、アルゴリズム種別、鍵長、およびサービス提供装置３２０がサポートする認証局名を関連付けて記憶している。そして、鍵ＩＤ抽出部５１３２は、図１に示すステップＳ１０６（サイト識別情報に対応する鍵ＩＤ抽出）において、サイト鍵条件対応情報８３０を参照して、受信したサイト識別情報がサイト鍵条件対応情報８３０に存在した場合、その存在した行のアルゴリズム種別、鍵長、認証局名等の条件に関する暗号鍵生成条件情報を抽出する。
【００６３】
≪ユーザ情報の一例≫
次に、図５に示す鍵管理サーバ装置５００の記憶部５２０のユーザ情報５２４の一例について、図９を用いて説明する（適宜図５参照）。ユーザ情報５２４は、ユーザＩＤ、鍵ＩＤ、アルゴリズム種別、鍵長、認証局名、利用優先度等を関連付けた鍵選択情報９１０を格納している。鍵ＩＤ抽出部５１３２は、暗号鍵生成条件情報が抽出されている場合、図１に示すステップＳ１０６（サイト識別情報に対応する鍵ＩＤ抽出）において、鍵選択情報９１０を参照して、その抽出されている暗号鍵生成条件情報に一致する条件を満たす鍵ＩＤを抽出する。また、鍵ＩＤ抽出部５１３２は、暗号鍵生成条件情報以外にユーザＩＤも取得されている場合には、そのユーザＩＤおよび暗号鍵生成条件情報を用いて、鍵選択情報９１０を参照して、ユーザＩＤおよび暗号鍵生成条件情報を満足する鍵ＩＤを抽出する。
【００６４】
≪ユーザ秘密鍵の一例≫
次に、図６に示す秘密鍵管理装置６００の記憶部６２０のユーザ秘密鍵６２１の一例について、図１０を用いて説明する（適宜図６参照）。ユーザ秘密鍵６２１は、鍵ＩＤと秘密鍵とを関連付けた秘密鍵情報１０００を格納している。秘密鍵抽出部６１２４は、鍵ＩＤ抽出部５１３２によって抽出された鍵ＩＤを用いて、秘密鍵情報１０００を参照して、秘密鍵を抽出する。
【００６５】
≪サービス認証処理の流れ≫
次に、サービス認証処理の流れを、図１１を用いて説明する（適宜図３，図７参照）。この図１１に示したサービス認証処理の流れは、図１に示した認証処理の流れを別の形式で表したものである。なお、サービス提供装置３２０が提供するサービスおよび鍵管理サーバ装置５００が提供するサービスは、ＳＳＬもしくはＴＬＳ通信により、暗号化等のセキュリティが施されているものとする。
【００６６】
まず、ステップＳ１０１０では、端末装置７００のサービス利用部７１２は、入力部７３０を介してユーザによって入力される、サービス提供装置３２０が提供するサービスの利用を行うためのＵＲＬ（Uniform Resource Locator）の入力を受け付け、通信部７５０を介して、サービス提供装置３２０にアクセス要求（サービス提供要求）を送信する。ステップＳ１０２０では、サービス提供装置３２０は、端末装置７００からアクセス要求（サービス提供要求）を受信する。
【００６７】
ステップＳ１０３０では、サービス提供装置３２０は、ユーザの認証を行うために必要な認証（署名）要求を端末装置７００に返信する。認証（署名）要求には、認証の度に新たに生成される乱数等の署名対象データ（電子データ）が含まれる。署名対象データは、例えば、ＳＳＬもしくはＴＬＳのクライアント認証を行う際にサーバから送信されるハンドシェイクのメッセージ等である。ステップＳ１０４０では、端末装置７００のサービス利用部７１２は、通信部７５０を介して、サービス提供装置３２０から認証（署名）要求データを受信する。
【００６８】
ステップＳ１０５０では、端末装置７００は、受信した認証（署名）要求データを用いて、鍵管理サーバ装置５００との間で署名要求から署名応答までの一連の処理（図１２および図１３の署名処理）を実行する。
【００６９】
ステップＳ１０６０では、端末装置７００のサービス利用部７１２は、ステップＳ１０５０で取得した署名応答を認証（署名）応答とし、通信部７５０を介して、サービス提供装置３２０に認証（署名）応答を送信する。ステップＳ１０７０では、サービス提供装置３２０は、端末装置７００が送信した認証（署名）応答を受信する。認証（署名）応答には、ユーザの秘密鍵で署名された電子署名とユーザ証明書が含まれる。
【００７０】
ステップＳ１０８０では、サービス提供装置３２０は、受信した認証（署名）応答を用いて検証を行う。具体的には、サービス提供装置３２０は、認証（署名）応答に含まれる電子署名をユーザ証明書を用いて署名検証すること、一般的なＰＫＩ（Public Key Infrastructure）の仕様に従って当該ユーザ証明書を検証すること、および当該ユーザの認可を行うこと、を実行する。
【００７１】
ステップＳ１０９０では、サービス提供装置３２０は、ステップＳ１０８０の検証結果に応じて、検証後の認証メッセージを生成し、端末装置７００に当該認証メッセージを送信する。ステップＳ１１００では、端末装置７００のサービス利用部７１２は、通信部７５０を介して認証メッセージを受信し、受信した認証メッセージを出力部７４０に出力する。
【００７２】
≪署名処理の流れ≫
次に、図１１のステップＳ１０５０で実行される署名処理の流れを、図１２，図１３を用いて説明する（適宜図３，図５〜９参照）。
【００７３】
まず、ステップＳ２０１０では、端末装置７００の認証部７１３は、サービス利用部７１２が受信した認証要求元情報を取得する。なお、認証要求元情報は、ステップＳ１０４０の認証（署名）要求に含まれるサイト識別情報（サービス提供装置３２０のサービスのＵＲＩ）である。認証要求元情報は、サイト識別情報以外に、例えば、受信したサービスのウィンドウのタイトル、受信したＨＴＭＬデータ中に含まれるユーザの属性情報を示すパラメータ、サービス提供装置３２０側からの問い合わせで入力したユーザＩＤや口座番号等である。特に、ユーザＩＤや口座番号は、インターネットバンキング等での鍵の選定に用いることができる。
【００７４】
ステップＳ２０２０では、端末装置７００の認証部７１３は、サービス利用部７１２を介して、鍵管理サーバ装置５００に署名要求を送信する。署名要求は、ステップＳ１０４０にて受信した認証（署名）要求データに含まれる署名対象データと、ステップＳ２０１０にて取得した認証要求元情報のサイト識別情報と、端末装置７００のＩＰアドレスとを含む。さらに、ユーザＩＤが既に鍵管理サービス情報７２２に記憶されている場合、署名要求には、そのユーザＩＤが含まれる。ステップＳ２０３０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、通信部５５０の受信手段５５２を介して、署名要求を受信する。
【００７５】
ステップＳ２０４０では、鍵管理サーバ装置５００のサイト情報管理部５１３のサイト判定部５１３１は、受信した認証要求元情報のサイト識別情報を用いて、サイト情報５２３の不正サイト情報８１０を参照し、認証要求元のサイトが不正なサイトか否かを判定する。認証要求元のサイトが不正なサイトである場合（ステップＳ２０４０で「不正」）、サイト判定部５１３１は、署名要求を拒否する署名拒否メッセージを端末装置７００に送信し、ステップＳ２０４１では、端末装置７００の認証部７１３が、その署名拒否メッセージを受信し、その署名拒否メッセージの内容を出力部７４０に出力する。本実施形態では、本ステップＳ２０４１に到達した時点で処理は終了する。
【００７６】
また、認証要求元のサイトが不正なサイトでない場合（ステップＳ２０４０で「不正でない」）、ステップＳ２０５０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ２０３０で受信した署名要求に対してセッションＩＤを生成し、当該セッションＩＤに、当該署名要求に含まれる署名対象データと、認証要求元情報のサイト識別情報と、ユーザＩＤ（署名要求に存在した場合）と、を関連付けした形でユーザ情報５２４に記憶する。
【００７７】
ステップＳ２０６０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ２０３０で受信した署名要求の中にユーザＩＤが存在しているかどうかを確認する。ユーザＩＤが存在する場合（ステップＳ２０６０で「存在する」）、当該ユーザＩＤを本ステップ以降使用するものとして、図１３のＳ２１２０に進む。また、ユーザＩＤが存在しない場合（ステップＳ２０６０で「存在しない」）、鍵管理サービスを利用するときにユーザＩＤの指定が必要となるので、ステップＳ２０７０に進む。
【００７８】
ステップＳ２０７０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、端末装置７００に、ユーザＩＤを指定することをユーザに促す入力画面情報を示すユーザＩＤ要求を送信する。このとき、ステップＳ２０５０で生成したセッションＩＤも送信する。ステップＳ２０８０では、端末装置７００の認証部７１３は、サービス利用部７１２を介して、ユーザＩＤ要求を取得し、ユーザＩＤの入力画面情報を出力部７４０に出力する。また、認証部７１３は、受信したセッションＩＤを鍵管理サービス情報７２２に記憶する。
【００７９】
ステップＳ２０９０では、端末装置７００の認証部７１３は、入力部７３０を介して、入力画面を用いてユーザＩＤの入力を受け付ける。ステップＳ２１００では、端末装置７００の認証部７１３は、ステップＳ２０９０で入力されたユーザＩＤとステップＳ２０８０で記憶したセッションＩＤとを、サービス利用部７１２を介して、鍵管理サーバ装置５００に送信する。ステップＳ２１１０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、受信したユーザＩＤおよびセッションＩＤを、通信部５５０を介して受信する。
【００８０】
図１３に示すステップＳ２１２０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、特定されたユーザＩＤを基にユーザ認証（図１４のユーザ認証処理）を実行する。詳細については、後記する。ここでは、ユーザ認証に成功したものとして、ステップＳ２１３０に進む。
【００８１】
ステップＳ２１３０では、鍵管理サーバ装置５００のサイト情報管理部５１３の鍵ＩＤ抽出部５１３２は、ステップＳ２０３０にて受信した認証要求元情報のサイト識別情報を基に、当該認証要求元のサイトに適した鍵の選定を行う。具体的には、まず、ステップＳ２０５０にて記憶した認証要求元情報のサイト識別情報を検索キーとして、図８に示すサイト鍵条件対応情報８３０を参照して、認証要求元のサイトのサイト識別情報が登録されているかどうかを確認する。当該認証要求元のサイトのサイト識別情報が、サイト鍵条件対応情報８３０に存在したならば、存在した行のアルゴリズム種別、鍵長、および認証局名等の暗号鍵の生成条件を示す暗号鍵生成条件情報を抽出する。続いて、ステップＳ２０６０またはステップＳ２１１０にて特定したユーザＩＤおよび／または暗号鍵生成条件情報を検索キーとして、図９に示す鍵選択情報９１０を参照し、当該ユーザＩＤおよび／または暗号鍵生成条件情報に関連付いているすべての鍵ＩＤの候補を取得する。
【００８２】
ここで、鍵ＩＤの候補を１つに絞ることができた場合（ステップＳ２１３０で「候補が１つ」）、当該鍵ＩＤを以降使用するものとし、ステップＳ２１９０に進む。鍵ＩＤの候補が複数存在する場合（ステップＳ２１３０で「候補が複数」）、候補の鍵の鍵ＩＤ一覧を取得し、ステップＳ２１４０に進む。また、サイト鍵条件対応情報８３０の中に認証要求元のサイトのサイト識別情報が存在しなかった場合には、ユーザＩＤを検索キーとして鍵選択情報９１０を検索し、当該ユーザＩＤに関連付いているすべての鍵ＩＤ一覧を取得し、ステップＳ２１４０に進む。
【００８３】
また、条件に適合する鍵ＩＤが存在しなかった場合（ステップＳ２１３０で「選定不可」）、使用可能な鍵がないものとして、端末装置７００に署名拒否メッセージを送信し、ステップＳ２１３１に進む。ステップＳ２１３１では、端末装置７００の認証部７１３は、署名拒否メッセージを受信し、その署名拒否メッセージの内容を出力部７４０に出力する。本実施形態では、本ステップＳ２１３１に到達した時点で処理は終了する。
【００８４】
ステップＳ２１４０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ２１３０において取得した鍵ＩＤの一覧から一つの鍵ＩＤを選択することをユーザに促す入力画面情報を鍵ＩＤ要求として、端末装置７００に送信する。ステップＳ２１５０では、端末装置７００の認証部７１３は、鍵ＩＤ要求を受信し、鍵ＩＤの入力画面を、出力部７４０に出力する。ステップＳ２０６０では、端末装置７００の認証部７１３は、入力部７３０を介して、一つの鍵ＩＤの入力を受け付ける。
【００８５】
ステップＳ２１７０では、端末装置７００の認証部７１３は、ステップＳ２１６０で受け付けた鍵ＩＤを、鍵管理サーバ装置５００に送信する。また、ステップＳ２０８０で記憶したセッションＩＤも送信する。ステップＳ２１８０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、鍵ＩＤおよびセッションＩＤを、通信部５５０を介して受信する。
【００８６】
ステップＳ２１９０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、署名対象データに対する電子署名を生成するための署名生成要求を、秘密鍵管理装置６００に送信する。署名生成要求は、当該鍵ＩＤと、署名対象データと、管理用認証情報５２５に記憶する管理用認証情報とを含む。なお、署名対象データは、ステップＳ２０５０においてセッションＩＤに関連付けられたものが取得される。ステップＳ２２００では、秘密鍵管理装置６００の鍵管理部６１２は、通信部６５０を介して、署名生成要求を受信する。
【００８７】
ステップＳ２２１０では、ステップＳ２２００にて受信した署名対象データに対する電子署名を生成する。その手順として、秘密鍵管理装置６００の鍵管理部６１２は、ステップＳ２２００で受信した管理用認証情報と、管理用認証情報６２２に記憶してある管理用認証情報を比較することで鍵へのアクセス権があるかどうかの認証を行う。そして、認証に成功した場合は、秘密鍵抽出部６１２４は、ステップＳ２２００にて受信した鍵ＩＤを用いて、秘密鍵情報１０００を参照して、当該鍵ＩＤに関連付けられた秘密鍵を抽出する。次に、署名生成部６１２１は、抽出した秘密鍵を用いて、ステップＳ２２００にて受信した署名対象データに対する電子署名を生成する。なお、アクセス権の認証に成功しなかった場合は、署名生成に失敗したものとする。
【００８８】
ステップＳ２２２０では、秘密鍵管理装置６００の鍵管理部６１２は、ステップＳ２２１０で生成された署名（電子署名）、または、署名生成に失敗した旨のメッセージを、鍵管理サーバ装置５００に送信する。なお、署名を送信する際には、ユーザＩＤも送信する。ステップＳ２２３０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、署名または署名生成失敗の旨のメッセージを受信する。また、ユーザＩＤも受信した場合には、ユーザ情報５２４に当該ユーザＩＤを記憶する。
【００８９】
ステップＳ２２４０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ２２３０にて受信した署名（電子署名）または署名生成に失敗した旨のメッセージを、署名応答として、端末装置７００に送信する。ステップＳ２２５０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ２０５０において記憶したセッションＩＤと、当該セッションＩＤに関連付けられている署名対象データと、認証要求元情報と、ユーザＩＤ（署名要求に存在していた場合）と、をユーザ情報５２４から削除する。また、ステップＳ２２６０では、端末装置７００の認証部７１３は、ステップＳ２２４０にて送信された署名（電子署名）または署名生成に失敗した旨のメッセージを受信する。そして、端末装置７００の認証部７１３は、署名（電子署名）を受信した場合には、次のステップへ進み、署名生成に失敗した旨のメッセージを受信した場合には、当該メッセージの内容を出力部７４０に出力し、処理は終了する。
【００９０】
≪ユーザ認証処理の流れ≫
次に、ユーザ認証処理の流れを、図１４を用いて説明する（適宜図３，図５，図７参照）。なお、端末装置７００の鍵管理サービス情報７２２には、この処理の以前に実行されたステップの中において、処理を特定するセッションＩＤが記憶されているものとする。
【００９１】
ステップＳ３０１０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、既に特定されているユーザＩＤに対応した一時的な認証情報を生成する。本実施形態においては、当該一時的な認証情報は、例えば、ワンタイムパスワードのようなものである。当該一時的な認証情報は、既に特定されているセッションＩＤに、当該一時的な認証情報を関連付けて、ユーザ情報５２４に記憶される。
【００９２】
ステップＳ３０２０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、端末装置７００に、一時的な認証情報に対応する応答情報の入力を促す入力画面情報を示す認証情報要求を送信する。続いて、ステップＳ３０３０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、一時的な認証情報もしくはその一時的な認証情報を導出するための情報を、端末装置７００または第２の端末装置８００に送信する。なお、端末装置７００および第２の端末装置８００のいずれかに送信するか、また、どのような通信手段で送信するか、については、ユーザによって事前に選択されているものとする。
【００９３】
ここでの通信手段は、以前のステップまでにおいて端末装置７００と鍵管理サーバ装置５００との間で通信していた方法とは別の通信手段が指定されるものとする。本実施形態では、端末装置７００の第２の通信部７５１を介して電子メールを送信する場合と、第２の端末装置８００に電子メールを送信する場合と、がある。また、一時的な認証情報を端末装置７００に電子メールで送信する場合、一時的な認証情報は、コンピュータ内部のプログラムが自動で識別することが困難な形態で送信する。例えば、一時的な認証情報で使用する文字の形状を歪ませて画像データで送信する方法、一時的な認証情報で使用する文字を表形式で表現したものと当該表から一時的な認証情報を導き出すための質問とをセットとして送信する方法、または、「１＋１の答え」のようにユーザが比較的容易かつ一意に導き出せる答えに対する質問文を送信する方法等である。
【００９４】
ステップＳ３０４０では、端末装置７００の認証部７１３は、ステップＳ３０２０にて送信された認証情報要求を受信し、一時的な認証情報の入力画面を、出力部５４０に出力する。また、ステップＳ３０５０では、端末装置７００の認証部７１３は、一時的な認証情報あるいは当該一時的な認証情報を導出するための情報を受信し、その情報の内容を出力部７４０に出力する。または、ステップＳ３０５１では、第２の端末装置８００は、一時的な認証情報あるいは当該一時的な認証情報を導出するための情報を受信し、その情報の内容を図示しない表示装置に出力する。
【００９５】
ステップＳ３０６０では、端末装置７００の認証部７１３は、ステップＳ３０５０またはＳ３０５１にて受信した一時的な認証情報、または、一時的な認証情報を導出するための情報に対応して、ユーザによって端末装置７００の入力部７３０を介して入力される、一時的な認証情報に対応する応答情報の入力を受け付ける。
【００９６】
ステップＳ３０７０では、端末装置７００の認証部７１３は、ステップＳ３０６０で入力された応答情報を、鍵管理サーバ装置５００に送信する。また、記憶されているセッションＩＤも送信する。ステップＳ３０８０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ３０７０にて送信された応答情報およびセッションＩＤを受信する。
【００９７】
ステップＳ３０９０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ３０８０にて受信したセッションＩＤを基に、ステップＳ３０８０にて受信した応答情報がステップＳ３０１０の一時的な認証情報に対応する情報か否かを検証する。検証に成功した場合（ステップＳ３０９０で「成功」）、端末装置７００のＩＰアドレスをアクセス履歴として、ユーザＩＤに関連付けしてユーザ情報５２４に記憶する。また、検証に失敗した場合（ステップＳ３０９０で「失敗」）、検証に失敗した旨のメッセージを生成し、検証失敗メッセージとして、端末装置７００に送信し、ステップＳ３０９１に進む。ステップＳ３０９１では、端末装置７００の認証部７１３は、検証失敗メッセージを受信し、その検証失敗メッセージの内容を出力部７４０に出力する。本実施形態においては、本ステップＳ３０９１に到達した時点で処理は終了する。
【００９８】
以上、図１１〜図１４の手順を実施することにより、鍵管理装置３１０（図３参照）は、ユーザを識別するユーザＩＤやサイト識別情報に関連付けられた鍵ＩＤを用いて秘密鍵を管理するため、ユーザの秘密鍵を安全に管理しつつ、ユーザによる秘密鍵の管理を代行することができる。そのため、ユーザに鍵管理用のハードウェアを配付することが不要で、ＰＫＩレベルの安全性を有する認証の仕組みが提供可能となる。また、鍵管理装置３１０は、正当なサイトの場合のみユーザ認証処理を実行し、ユーザ認証（ステップＳ２１２０）によって、スパイウェアによる認証情報の不正取得に対処することができる。また、サービス提供者側は、ＳＳＬもしくはＴＬＳといった既存の認証の仕組みを利用すれば、サービス提供装置の改修は不要となる。
【００９９】
≪ユーザ登録処理の流れ≫
次に、ユーザ情報を登録するユーザ登録処理の流れを、図１５を用いて説明する（適宜図３，図５，図７参照）。
【０１００】
ステップＳ４０１０では、端末装置７００のサービス利用部７１２は、入力部７３０を介して、鍵管理サーバ装置５００が提供するユーザ登録用のサービスを利用するためのＵＲＬの入力を受け付け、通信部７５０を介して、鍵管理サーバ装置５００にユーザ登録要求を送信する。ステップＳ４０２０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、端末装置７００が送信したユーザ登録要求を受信する。
【０１０１】
ステップＳ４０３０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、鍵管理サービスの利用のために必要なユーザ情報の入力を促す入力画面情報を示すユーザ情報要求を端末装置７００に送信する。このとき、鍵管理サービス提供部５１２は、セッションＩＤを生成し、ユーザ情報５２４に記憶するとともに、生成したセッションＩＤをユーザ情報要求とともに端末装置７００に送信する。ステップＳ４０４０では、端末装置７００のサービス利用部７１２は、ステップＳ４０３０にて送信されたユーザ情報要求を受信し、ユーザ情報要求の内容を、出力部７４０に出力する。また、サービス利用部７１２は、受信したセッションＩＤを、鍵管理サービス情報７２２に記憶する。
【０１０２】
ステップＳ４０５０では、端末装置７００のサービス利用部７１２は、入力部７３０を介して、鍵管理サービスを利用するために必要なユーザ情報の入力を受け付ける。本実施形態では、入力するユーザ情報として、ユーザの氏名、住所、電話番号等の情報以外に、当該ユーザが当該鍵管理サービスを利用する際のユーザＩＤ（鍵管理サーバ装置５００側で割り当てる場合は不要）と、クレジットカード番号等の鍵管理サービスを利用する際の課金に関する情報と、一時的な認証情報の通知手段（例えば、電子メール等）と、一時的な認証情報の通知先（例えば、第２の端末装置８００で使用している電子メールのアドレス等）と、を含んでも良い。
【０１０３】
ステップＳ４０６０では、端末装置７００のサービス利用部７１２は、ステップＳ４０５０で入力されたユーザ情報を、鍵管理サーバ装置５００に送信する。このとき、ステップＳ４０４０にて記憶したセッションＩＤも送信する。ステップＳ４０７０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ４０６０にて送信されたユーザ情報およびセッションＩＤを受信する。そして、ステップＳ４０８０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ４０７０にて受信したユーザ情報とセッションＩＤとを関連付け、仮登録という形でユーザ情報５２４に記憶する。なお、ステップＳ４０５０において、ユーザにユーザＩＤを入力させていない場合は、鍵管理サービス提供部５１２がユーザＩＤを自動的に生成し、割り当てた上で、ユーザ情報５２４に記憶する。
【０１０４】
ステップＳ４０９０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ４０８０で記憶された情報を基に、図１４のユーザ認証処理を実行する。ここでは、ユーザ認証に成功したものとして、ステップＳ４１００に進む。ステップＳ４１００では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ４０８０において記憶したユーザ情報を本登録という形でユーザ情報５２４に記憶する。
【０１０５】
ステップＳ４１１０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ユーザ登録が完了した旨の通知を示すメッセージであるユーザ登録完了通知を端末装置７００に送信する。このとき、ユーザＩＤも送信する。ステップＳ４１２０では、端末装置７００のサービス利用部７１２は、ステップＳ４１１０で送信されてきたユーザ登録完了通知およびユーザＩＤを受信し、ユーザ登録完了通知の内容を、出力部７４０に出力する。また、ステップＳ４１３０では、端末装置７００のサービス利用部７１２は、ステップＳ４１２０にて受信したユーザＩＤを、鍵管理サービス情報７２２に記憶する。
【０１０６】
≪証明書発行処理の流れ≫
次に、証明書発行処理の流れを、図１６を用いて説明する（適宜図３，図５，図７参照）。なお、証明書の発行を受ける際の前提として、ユーザ情報の登録が済んでいるものとする。
【０１０７】
ステップＳ５０１０では、端末装置７００のサービス利用部７１２は、入力部７３０を介して、認証装置３３０が提供する証明書発行サービスを利用するためのＵＲＬの入力を受け付け、通信部７５０を介して、認証装置３３０に証明書発行申請要求を送信する。ステップＳ５０２０では、認証装置３３０は、端末装置７００が送信した証明書発行申請要求を受信する。
【０１０８】
ステップＳ５０３０では、認証装置３３０は、証明書の発行に必要な申請データ（ＣＳＲ：Certificate Signing Request）を要求するための申請データ要求を端末装置７００に送信する。申請データ要求には、証明書の発行に必要な暗号鍵のアルゴリズム種別や鍵長が含まれる。ステップＳ５０４０では、端末装置７００のサービス利用部７１２は、ステップＳ５０３０にて送信された申請データ要求を受信する。
【０１０９】
ステップＳ５０５０では、端末装置７００は、ステップＳ５０４０にて受信した申請データ要求を用いて、鍵管理サーバ装置５００との間で鍵生成要求から応答までの一連の処理（図１７および図１８の鍵生成処理）を実行する。本ステップＳ５０５０の詳細は、後記する。続いて、ステップＳ５０５０にて鍵生成に成功した場合、ステップＳ５０６０では、端末装置７００は、鍵管理サーバ装置５００との間で署名要求から署名応答までの一連の処理（図１２および図１３の署名処理）を実行する。
【０１１０】
次に、ステップＳ５０７０では、端末装置７００のサービス利用部７１２は、ステップＳ５０６０にて生成した署名対象データと、ステップＳ５０６０にて受信した電子署名とを組み合わせて、申請データ（ＣＳＲ）を生成する。ステップＳ５０８０では、端末装置７００のサービス利用部７１２は、ステップＳ５０７０にて生成した申請データ（ＣＳＲ）を認証装置３３０に送信する。ステップＳ５０９０では、認証装置３３０は、端末装置７００が送信した申請データ（ＣＳＲ）を受信する。
【０１１１】
続いてステップＳ５１００では、認証装置３３０は、ステップＳ５０９０にて受信した申請データ（ＣＳＲ）の検証を行い、発行審査を実行する。具体的には、申請データに含まれる電子署名を、当該申請データに含まれるユーザの公開鍵を用いて検証するといった一般的なＰＫＩの仕様に従って当該ユーザの申請データを検証する。なお、証明書の発行審査については、本実施形態では申請データのフォーマットに不備がないことをチェックした後にステップＳ５１１０に進むものとするが、認証局内の審査する人が目視等で審査を実施する場合には、一旦、端末装置７００に申請データを受け付けた旨のメッセージを返信し、審査が完了した時点で、証明書の取得先をユーザに電子メール等で通知し、端末装置７００から認証装置３３０にアクセスされたことを受けて、ステップＳ５１１０に進んでもよい。
【０１１２】
ステップＳ５１１０では、認証装置３３０は、ステップＳ５１００の審査に成功した場合は、申請データに基づきユーザ証明書を生成し、端末装置７００に当該ユーザ証明書を送信する。審査に失敗した場合には、審査に失敗した旨の審査メッセージを端末装置７００に送信する。ステップＳ５１２０では、端末装置７００のサービス利用部７１２は、ユーザ証明書を受信した場合は、ユーザ証明書７２１に格納し、審査メッセージを受信した場合は、当該審査メッセージの内容を出力部７４０に出力する。
【０１１３】
≪鍵生成処理の流れ≫
次に、鍵生成処理の流れを、図１７，図１８を用いて説明する（適宜図３，図５〜７参照）。
【０１１４】
ステップＳ６０１０では、端末装置７００の認証部７１３は、ステップＳ５０４０にて受信した申請データの送信元であるサービス提供装置３２０のサービスのＵＲＩを、鍵生成要求元情報として、サービス利用部７１２から取得する。
【０１１５】
ステップＳ６０２０では、端末装置７００の認証部７１３は、鍵管理サーバ装置５００に暗号鍵の生成を要求する鍵生成要求を送信する。鍵生成要求は、ステップＳ５０４０にて受信した暗号鍵のアルゴリズム種別および鍵長と、ステップＳ６０１０にて取得した鍵生成要求元情報と、端末装置７００のＩＰアドレスとを含む。さらに、ユーザＩＤが既に鍵管理サービス情報７２２に記憶されている場合、鍵生成要求は、ユーザＩＤも含む。ステップＳ６０３０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、端末装置７００が送信した鍵生成要求を受信する。
【０１１６】
ステップＳ６０４０では、鍵管理サーバ装置５００のサイト判定部５１３１は、鍵生成要求元のサイトが不正なサイトか否かを判定する。鍵生成要求元のサイトが不正なサイトである場合（ステップＳ６０４０で「不正」）、サイト判定部５１３１は、鍵の生成を拒否する旨の鍵生成拒否メッセージを生成し、端末装置７００に送信する。ステップＳ６０４１では、端末装置７００の認証部７１３は、ステップＳ６０４０において送信された鍵生成拒否メッセージを受信し、その鍵生成拒否メッセージの内容を出力部７４０に出力する。本実施形態においては、本ステップＳ６０４１に到達した時点で処理は終了する。
【０１１７】
また、鍵生成要求元のサイトが不正なサイトでない場合（ステップＳ６０４０で「不正でない」）、処理はステップＳ６０５０へ進む。ステップＳ６０５０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ６０３０の鍵生成要求に対してセッションＩＤを生成し、当該セッションＩＤに、ステップＳ６０３０にて受信した鍵生成要求に含まれる、暗号鍵のアルゴリズム種別および鍵長と、鍵生成要求元情報と、ユーザＩＤ（鍵生成要求に存在した場合）とを関連付けて、ユーザ情報５２４に記憶する。
【０１１８】
ステップＳ６０６０〜Ｓ６１１０の処理は、図１２のステップＳ２０６０〜Ｓ２１１０と同様の処理であるので、説明を省略する。また、ステップＳ６１２０では、図１４に示すユーザ認証処理が実行される。ここでは、ユーザ認証に成功したものとして、ステップＳ６１３０に進む。
【０１１９】
図１８に示すステップＳ６１３０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ユーザの秘密鍵および公開鍵のペアを生成するための鍵生成要求を、秘密鍵管理装置６００に送信する。鍵生成要求は、暗号鍵のアルゴリズム種別および鍵長と、管理用認証情報５２５から取得した管理用認証情報とを含む。ステップＳ６１４０では、秘密鍵管理装置６００の鍵管理部６１２は、ステップＳ６１３０にて送信された鍵生成要求を、通信部６５０を介して受信する。
【０１２０】
ステップＳ６１５０では、秘密鍵管理装置６００の鍵管理部６１２は、ステップＳ６１４０にて受信した管理用認証情報と、秘密鍵管理装置６００の管理用認証情報６２２に記憶してある管理用認証情報とを比較することで鍵へのアクセス権があるかどうかの認証を実行する。アクセス権の認証に成功した場合は、ステップＳ６１５０では、鍵管理部６１２の鍵生成部６１２２は、ステップＳ６１４０にて受信した鍵生成要求中のアルゴリズム種別および鍵長に基づいて、暗号鍵（秘密鍵およびその秘密鍵に対応する公開鍵）を生成する。また、鍵ＩＤ生成部６１２３は、秘密鍵管理装置６００内でユニークな鍵ＩＤを生成する。そして、生成された鍵と鍵ＩＤとは、相互に関連付けられてユーザ秘密鍵６２１に格納される。アクセス権の認証に成功しなかった場合は、鍵生成に失敗したものとする。
【０１２１】
ステップＳ６１６０では、秘密鍵管理装置６００の鍵管理部６１２は、ステップＳ６１５０にて生成された秘密鍵に関連付けされた鍵ＩＤと、当該秘密鍵に対応する公開鍵と、を鍵管理サーバ装置５００に送信する。なお、ステップＳ６１５０にて、鍵生成に失敗している場合は、鍵生成に失敗した旨の鍵生成失敗メッセージを、鍵管理サーバ装置５００に送信する。ステップＳ６１７０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ６１６０にて送信された鍵ＩＤおよび公開鍵、または鍵生成失敗メッセージを受信する。
【０１２２】
ステップＳ６１８０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ６１７０にて鍵ＩＤを受信している場合には、ステップＳ６０６０またはＳ６１１０で特定されたユーザＩＤに関連付けて鍵ＩＤをユーザ情報５２４に記憶する。
【０１２３】
ステップＳ６１９０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ６１７０にて鍵ＩＤおよび公開鍵を受信した場合には、鍵生成が完了した旨の鍵生成完了メッセージを、またステップＳ６１７０にて鍵生成失敗メッセージを受信した場合には、その鍵生成失敗メッセージを、公開鍵応答として、端末装置７００に送信する。ステップＳ６２００では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ２０５０において記憶したセッションＩＤと、当該セッションＩＤに関連付けされている暗号鍵のアルゴリズム種別および鍵長と、鍵生成要求元情報と、ユーザＩＤ（鍵生成要求に存在していた場合）と、をユーザ情報５２４から削除する。そして、ステップＳ６２１０では、端末装置７００の認証部７１３は、ステップＳ６１９０にて送信された公開鍵応答を受信する。公開鍵応答が鍵生成完了メッセージであった場合には、次のステップに進む。また、鍵生成応答が鍵生成失敗メッセージであった場合には、当該鍵生成失敗メッセージを示す内容を出力部７４０に出力し、処理は終了する。
【０１２４】
≪ユーザ情報変更処理の流れ≫
次に、ユーザ情報変更処理の流れを、図１９を用いて説明する（適宜図３，図５，図７参照）。
【０１２５】
まず、ステップＳ７０１０では、端末装置７００のサービス利用部７１２は、入力部７３０を介して、鍵管理サーバ装置５００が提供するユーザ変更用のサービスを利用するためのＵＲＬの入力を受け付け、通信部７５０を介して、鍵管理サーバ装置５００にユーザ情報変更要求を送信する。また、鍵管理サービス情報７２２にユーザＩＤが記憶されている場合には、ユーザ情報変更要求にユーザＩＤも含む。ステップＳ７０２０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、端末装置７００によって送信されたユーザ情報変更要求を受信する。
【０１２６】
次に、ステップＳ７０３０〜Ｓ７０８０の処理は、図１２に示すステップＳ２０６０〜Ｓ２１１０の処理と同様であるので、説明を省略する。そして、ステップＳ７０９０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、図１４に示すユーザ認証処理を実行する。
【０１２７】
ステップＳ７１００では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ユーザ情報を変更するために必要なユーザ情報の変更入力画面を示す変更情報要求を端末装置７００に送信する。このとき、Ｓ７０９０において受信したセッションＩＤも変更情報要求と併せて送信される。ステップＳ７１１０では、端末装置７００のサービス利用部７１２は、ステップＳ７１００にて送信された変更情報要求を受信し、ユーザ情報の変更入力画面を、出力部７４０に出力する。
【０１２８】
ステップＳ７１２０では、端末装置７００のサービス利用部７１２は、入力部７３０を介して、ユーザ情報の変更に必要な変更情報の入力を受け付ける。本実施形態では、入力する変更情報は、ユーザの氏名、住所、および電話番号以外に、クレジットカード番号等の鍵管理サービスを利用する際の課金に関する情報と、一時的な認証情報の通知手段（例えば、電子メール等）と、一時的な認証情報の通知先（例えば、第２の端末装置８００で使用している電子メールのアドレス等）とを含む。
【０１２９】
ステップＳ７１３０では、端末装置７００のサービス利用部７１２は、ステップＳ７１２０で入力された変更情報を、鍵管理サーバ装置５００に送信する。また、併せて、ステップＳ７０５０にて記憶したセッションＩＤも送信する。ステップＳ７１４０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ７１３０にて送信された変更情報およびセッションＩＤを受信する。
【０１３０】
ステップＳ７１５０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ユーザ情報の変更が完了した旨の通知を示すメッセージである変更完了通知を端末装置７００に送信する。ステップＳ７１６０では、端末装置７００のサービス利用部７１２は、ステップＳ７１５０にて送信された変更完了通知を受信し、変更完了通知の内容を、出力部７４０に出力する。
【０１３１】
≪ユーザ情報削除処理の流れ≫
次に、ユーザ情報削除処理の流れを、図２０を用いて説明する（適宜図３，図５，図７参照）。
【０１３２】
まず、ステップＳ８０１０では、端末装置７００のサービス利用部７１２は、入力部７３０を介して、鍵管理サーバ装置５００が提供するユーザ削除用のサービスを利用するためのＵＲＬの入力を受け付け、通信部７５０を介して、鍵管理サーバ装置５００にユーザ情報削除要求を送信する。また、鍵管理サービス情報７２２にユーザＩＤが記憶されている場合には、ユーザ情報削除要求にユーザＩＤを含めて送信する。ステップＳ８０２０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、端末装置７００が送信したユーザ情報削除要求を受信する。
【０１３３】
次に、ステップＳ８０３０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ８０２０にて受信したユーザ情報削除要求に基づき、鍵管理サーバ装置５００と、秘密鍵管理装置６００と、端末装置７００と、第２の端末装置８００との間で鍵削除の一連の処理（図２１および図２２のＳ９０３０〜Ｓ９２５０の鍵削除処理）を実行する。本ステップＳ８０３０の詳細は、後記する。
【０１３４】
ステップＳ８０４０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ８０３０にて特定されたユーザＩＤと、当該ユーザＩＤに関連付けられているすべての情報を、ユーザ情報５２４から削除する。そして、ステップＳ８０５０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ユーザ情報の削除が完了した旨の通知を示すメッセージである削除完了通知を端末装置７００に送信する。ステップＳ８０６０では、端末装置７００のサービス利用部７１２は、ステップＳ８０５０にて送信された削除完了通知を受信し、削除完了通知の内容を、出力部７４０に出力する。続いて、ステップＳ８０７０では、端末装置７００のサービス利用部７１２は、鍵管理サービス情報７２２内の当該ユーザＩＤに関連付けられている情報をすべて削除する。
【０１３５】
≪鍵削除処理の流れ≫
次に、鍵削除処理の流れを、図２１，図２２を用いて説明する（適宜図３，図５〜７参照）。
【０１３６】
まず、ステップＳ９０１０では、端末装置７００の認証部７１３は、通信部７５０を介して、鍵管理サーバ装置５００に鍵削除要求を送信する。鍵削除要求は、端末装置７００のＩＰアドレスと、鍵管理サービス情報７２２にユーザＩＤが記憶されている場合には当該ユーザＩＤと、鍵削除方法とを含む。鍵削除方法は、認証部７１３によって指定される。図２０のステップから本削除処理が実行される場合には一括削除が指定され、ステップＳ９０１０から鍵削除処理の手順が始まる場合には個別削除が指定される。ステップＳ９０２０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、端末装置７００が送信した鍵削除要求を受信する。
【０１３７】
ステップＳ９０３０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ９０２０の鍵削除要求に対してセッションＩＤを生成し、当該セッションＩＤと、アクセス元のＩＰアドレスと、ユーザＩＤ（鍵削除要求に存在した場合）と、鍵削除方法とを関連付けて、ユーザ情報５２４に記憶する。
【０１３８】
次に、ステップＳ９０４０〜Ｓ９０９０の処理は、図１２のステップＳ２０６０〜Ｓ２１１０の処理と同様であるので、説明を省略する。そして、ステップＳ９１００では、図１４に示すユーザ認証処理を実行する。ここでは、ユーザ認証に成功したものとして、ステップＳ９１１０に進む。
【０１３９】
図２２に示すステップＳ９１１０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、鍵削除方法を判定する。ステップＳ９０３０にて記憶した鍵削除方法が一括削除であった場合（ステップＳ９１１０で「一括削除」）、ユーザ情報５２４から、ステップＳ９０４０またはＳ９０８０にて特定されたユーザＩＤに関連付けられている鍵ＩＤの１つを、登録された順等で自動的に選択し、ステップＳ９１７０に進む。また、ステップＳ９０３０にて記憶した鍵削除方法が個別削除であった場合（ステップＳ９１１０で「個別削除」）、ユーザ情報５２４から、ステップＳ９０４０またはＳ９０８０にて特定されたユーザＩＤに関連付けられている鍵ＩＤの一覧を取得し、ステップＳ９１２０に進む。なお、当該ユーザＩＤに鍵ＩＤが１つも関連付けられていない場合（ステップＳ９１１０で「削除対象なし」）、鍵の削除が完了したものとして、ステップＳ９２３０に進む。
【０１４０】
ステップＳ９１２０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、端末装置７００に、ステップＳ９１１０において取得した鍵ＩＤの一覧から、削除する鍵ＩＤの選択をユーザに促す選択画面情報を示す鍵ＩＤ要求を送信する。ステップＳ９１３０では、端末装置７００の認証部７１３は、ステップＳ９１２０にて送信された鍵ＩＤ要求を受信し、鍵ＩＤ要求の選択画面を出力部７４０に出力する。ステップＳ９１４０では、端末装置７００の認証部７１３は、入力部７３０を介して、削除する鍵の鍵ＩＤの入力を受け付ける。
【０１４１】
ステップＳ９１５０では、端末装置７００の認証部７１３は、ステップＳ９１４０で入力された鍵ＩＤを、鍵管理サーバ装置５００に送信する。このとき、ステップＳ９０６０にて記憶しておいたセッションＩＤも送信する。ステップＳ９１６０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ９１５０にて送信された鍵ＩＤおよびセッションＩＤを受信する。
【０１４２】
ステップＳ９１７０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ９１１０〜Ｓ９１６０において選定された鍵ＩＤを基に、当該鍵ＩＤに関連付けられた秘密鍵の削除を行うための鍵削除要求を、秘密鍵管理装置６００に送信する。鍵削除要求は、当該鍵ＩＤと、管理用認証情報５２５に記憶しておいた管理用認証情報とを含む。ステップＳ９１８０では、秘密鍵管理装置６００の鍵管理部６１２は、ステップＳ９１７０にて送信された鍵削除要求を受信する。
【０１４３】
ステップＳ９１９０では、秘密鍵管理装置６００の鍵管理部６１２は、ステップＳ９１８０にて受信した管理用認証情報と、管理用認証情報６２２に記憶している管理用認証情報を比較することで鍵へのアクセス権があるかどうかの認証を行う。アクセス権の認証に成功した場合は、ステップＳ９１８０にて受信した鍵ＩＤと、当該鍵ＩＤに関連付けられた秘密鍵とを、ユーザ秘密鍵６２１から削除する。
【０１４４】
ステップＳ９２００では、秘密鍵管理装置６００の鍵管理部６１２は、ステップＳ９１９０の処理結果に基づいて、鍵削除に成功した旨または失敗した旨のメッセージである鍵削除応答を、鍵管理サーバ装置５００に送信する。ステップＳ９２１０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ９２００にて送信された鍵削除応答を受信する。
【０１４５】
ステップＳ９２２０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、鍵削除方法の判定を行う。ステップＳ９０３０にて記憶した鍵削除方法が、一括削除であった場合には、ユーザ情報５２４から、ユーザＩＤに関連付けられている鍵ＩＤの１つを、登録された順等で自動的に選択し、ステップＳ９１７０に戻り、鍵の削除を続ける。また、ステップＳ９０３０にて記憶した鍵削除方法が個別削除であった場合、または、ステップＳ９２１０にて受信した鍵削除応答が鍵削除に失敗した旨のメッセージであった場合には、ステップＳ９２３０に進む。
【０１４６】
ステップＳ９２３０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、鍵削除が完了した旨もしくは鍵削除に失敗した旨のメッセージである鍵削除応答を、端末装置７００に送信する。ステップＳ９２４０では、鍵管理サーバ装置５００の鍵管理サービス提供部５１２は、ステップＳ９２３０において記憶したセッションＩＤと、当該セッションに関連付けられた情報と、本鍵削除処理の中で削除した鍵の鍵ＩＤと、当該鍵ＩＤに関連する情報と、をユーザ情報５２４から削除する。ステップＳ９２５０では、端末装置７００の認証部７１３は、ステップＳ９２３０にて送信された鍵削除応答を受信する。
【０１４７】
なお、本鍵削除処理が、図２０のステップＳ８０２０を経て実行される場合、図２０のステップＳ８０４０に戻る。また、本鍵削除処理が、図２１のステップＳ９０１０から始まった場合は、本ステップＳ９２５０に到達した時点で処理は終了する。また、端末装置７００が鍵削除失敗の旨のメッセージを受信した場合には、当該メッセージの内容を出力部７４０に出力し、処理は終了する。
【０１４８】
以上、本実施形態に記載の鍵管理装置３１０（鍵管理サーバ装置５００および秘密鍵管理装置６００の組）が、鍵生成部６１２２において鍵を生成して、ユーザの代わりに秘密鍵を管理する構成を備えているため、ユーザに認証用のハードウェアを配付する必要がなく、鍵の安全性を確保することができる。また、ユーザ認証（図１４参照）において、一時的な認証情報もしくは一時的な認証情報を導出するための情報は、鍵にアクセスする都度、別の通信手段（第２の通信部５５３）によって通知されるので、スパイウェアによる認証情報の不正取得に対する耐性を備えることができる。さらに、ユーザ認証においては、ユーザは、図１４のステップＳ３０１０において生成された一時的な認証情報を送信してもらえるため、パスワード忘れによる心配が無用となる。
【０１４９】
また、鍵の使用時等に、認証要求元情報のサイト識別情報を、端末装置７００から鍵管理サーバ装置５００に送信することにより、従来ユーザ自身が行わなければならなかった、フィッシング等を避けるための不正サイトの判断や、サービス提供装置３２０の認証に適した鍵（証明書）の選定作業を、簡素化もしくは省略することができるようになる。また、サービス提供装置３２０側に署名機能、暗号化機能、認証サーバの証明書を管理する機能、復号機能、署名検証機能を持たせる必要がないため、サービス提供装置３２０の改修の必要がなく、サービス提供者にとって本実施形態の鍵管理システム３００の導入が容易となる。
【０１５０】
なお、本実施形態では、端末装置７００のユーザが第２の端末装置８００を所有しているものとして説明した。しかし、端末装置７００自体は、サービス提供者側の窓口端末でも良く、第２の端末装置８００をユーザが所有する形態でも良い。あるいは、端末装置７００のみをユーザが使用する形態であっても良い。
【０１５１】
また、ステップＳ２０４０では、鍵管理サーバ装置５００のサイト情報管理部５１３のサイト判定部５１３１は、受信した認証要求元情報のサイト識別情報を用いて、サイト情報５２３の不正サイト情報８１０を参照し、認証要求元のサイトが不正なサイトか否かを判定するものとして説明した。しかし、例えば、鍵管理サーバ装置５００の運用者が認めている正当なサイトの利用を許可しても良い。この場合には、図８に示す正当サイト情報８２０を参照して、サイト識別情報が存在したならばステップＳ２０５０に進むようにしても良い。
【０１５２】
また、本実施形態では、図３に示すように鍵管理装置３１０は、鍵管理サーバ装置５００と秘密鍵管理装置６００との組として説明したが、鍵管理サーバ装置５００と秘密鍵管理装置６００とを一体とした装置で構成しても構わない。
【０１５３】
また、本実施形態では、図１１に示すステップＳ１０４０およびＳ１０６０、図１６に示すステップＳ５０４０を、端末装置７００を経由するリダイレクトによって実行しても構わない。
【符号の説明】
【０１５４】
３００  鍵管理システム
３１０  鍵管理装置
３２０  サービス提供装置
３３０  認証装置
３４０  ネットワーク
４４０  タンパ検知装置
５００  鍵管理サーバ装置
５１０  制御部
５２０  記憶部
５２３  サイト情報
５２４  ユーザ情報
５５０  通信部
５５１  送信手段
５５２  受信手段
５５３  第２の通信部
６００  秘密鍵管理装置
６１０  制御部
６１２  鍵管理部
６１３  タンパ検知処理部
６２０  記憶部
６２１  ユーザ秘密鍵
７００  端末装置
７１０  制御部
７２０  記憶部
７５０  通信部
７５１  第２の通信部
８００  第２の端末装置
８１０  不正サイト情報
８２０  正当サイト情報
８３０  サイト鍵条件対応情報
９１０  鍵選択情報
１０００  秘密鍵情報
５１３１  サイト判定部
５１３２  鍵ＩＤ抽出部
６１２１  署名生成部
６１２２  鍵生成部
６１２３  鍵ＩＤ生成部
６１２４  秘密鍵抽出部
【図１】
2011071721.tif 000003
【図２】
2011071721.tif 000004
【図３】
2011071721.tif 000005
【図４】
2011071721.tif 000006
【図５】
2011071721.tif 000007
【図６】
2011071721.tif 000008
【図７】
2011071721.tif 000009
【図８】
2011071721.tif 000010
【図９】
2011071721.tif 000011
【図１０】
2011071721.tif 000012
【図１１】
2011071721.tif 000013
【図１２】
2011071721.tif 000014
【図１３】
2011071721.tif 000015
【図１４】
2011071721.tif 000016
【図１５】
2011071721.tif 000017
【図１６】
2011071721.tif 000018
【図１７】
2011071721.tif 000019
【図１８】
2011071721.tif 000020
【図１９】
2011071721.tif 000021
【図２０】
2011071721.tif 000022
【図２１】
2011071721.tif 000023
【図２２】
2011071721.tif 000024