(57)【要約】【課題】本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる利用者認証装置、システム、方法及びプログラムを提供すること。【解決手段】利用者認証装置１０は、秘密鍵と秘密情報の種類とを対応付け、ユーザの識別情報ごとに記憶する秘密鍵記憶手段３１を有し、乱数を生成し、認証に使用する秘密情報を指定する指定情報を作成し、生成した乱数と、指定情報とをクライアント端末５０に送信し、送信された乱数及び指定情報を受信し、指定情報に基づいた秘密情報をユーザから受け付け、受け付けた秘密情報に基づいて乱数を暗号化したクライアント端末５０から、暗号を受信し、指定情報に基づいた秘密鍵を秘密鍵記憶手段３１に基づいて抽出し、抽出した秘密鍵を用いて、受信した暗号を復号し、ユーザを認証する。【選択図】図１
2015119226.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末から送信された情報に基づいてユーザを認証する利用者認証装置であって、
前記ユーザに関する複数の秘密情報について、それぞれの前記秘密情報に基づいて生成された秘密鍵と前記秘密情報の種類とを対応付け、前記ユーザの識別情報ごとに記憶する秘密鍵記憶手段と、
乱数を生成する乱数生成手段と、
前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成手段と、
前記乱数生成手段によって生成された乱数と、前記指定情報作成手段によって作成された前記指定情報とを前記クライアント端末に送信する乱数送信手段と、
前記乱数送信手段によって送信された前記乱数及び前記指定情報を受信し、前記指定情報に基づいた前記秘密情報を前記ユーザから受け付け、受け付けた前記秘密情報に基づいて前記乱数を暗号化したクライアント端末から、前記乱数が暗号化された暗号を受信する暗号受信手段と、
前記指定情報に基づいた前記秘密鍵を前記秘密鍵記憶手段に基づいて抽出し、抽出した秘密鍵を用いて、前記暗号受信手段によって受信された前記暗号を復号し、前記ユーザを認証する認証手段と、
を備える利用者認証装置。
【請求項２】
前記指定情報作成手段は、指定した前記秘密情報の利用方法をも含む前記指定情報を作成する、請求項１に記載の利用者認証装置。
【請求項３】
前記認証手段によって認証されたレベルを、前記指定情報に基づいて決定する認証レベル決定手段をさらに備える請求項１又は２に記載の利用者認証装置。
【請求項４】
前記指定情報作成手段は、複数の前記秘密情報を指定する前記指定情報を作成する際に、複数の前記秘密情報の組み合わせを、前記指定情報を作成するごとに変更する、請求項１から３のいずれか一項に記載の利用者認証装置。
【請求項５】
前記指定情報作成手段は、前記秘密情報の利用方法として、指定した前記秘密情報のうちいずれかの前記秘密情報であって指定した個数の前記秘密情報によって認証する条件であるＯＲ条件を含む前記指定情報を作成し、
前記認証手段は、前記暗号受信手段によって受信された前記暗号を、前記指定情報において指定されている複数の前記秘密情報にそれぞれ対応する前記秘密鍵によって復号し、復号できた場合の乱数が、前記乱数送信手段によって送信された乱数とそれぞれ同一である場合に認証する、請求項１から４のいずれか一項に記載の利用者認証装置。
【請求項６】
利用者認証装置と、クライアント端末とを備え、ユーザを認証する利用者認証システムであって、
前記利用者認証装置は、
前記ユーザに関する複数の秘密情報に基づいて生成された秘密鍵と前記秘密情報の種類とを対応付け、前記ユーザの識別情報ごとに記憶する秘密鍵記憶手段と、
乱数を生成する乱数生成手段と、
前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成手段と、
前記乱数生成手段によって生成された乱数と、前記指定情報作成手段によって作成された前記指定情報とを前記クライアント端末に送信する乱数送信手段と、を備え、
前記クライアント端末は、
前記乱数送信手段によって送信された前記乱数と前記指定とを受信する端末受信手段と、
前記端末受信手段によって受信された前記指定情報に対応する前記秘密情報を前記ユーザから受け付ける受付手段と、
前記受付手段によって受け付けられた前記秘密情報を用いて、前記乱数を暗号化する暗号化手段と、
前記暗号化手段によって暗号化された暗号を前記利用者認証装置に送信する端末送信手段と、を備え、
前記利用者認証装置は、
前記端末送信手段によって送信された前記暗号を受信する暗号受信手段と、
前記秘密鍵記憶手段に基づいて、前記指定情報に対応付けられた前記秘密鍵を抽出し、抽出した秘密鍵を用いて、前記暗号受信手段によって受信された暗号を復号し、前記ユーザを認証する認証手段と、をさらに備える、
利用者認証システム。
【請求項７】
請求項１に記載の利用者認証装置が実行する方法であって、
前記乱数生成手段が、乱数を生成する乱数生成ステップと、
前記指定情報作成手段が、前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成ステップと、
前記乱数送信手段が、前記乱数生成ステップによって生成された前記乱数と、前記指定情報作成ステップによって作成された前記指定情報とを前記クライアント端末に送信する乱数送信ステップと、
前記暗号受信手段が、前記乱数送信ステップによって送信された前記乱数及び前記指定情報を受信し、前記指定情報に基づいた前記秘密情報を前記ユーザから受け付け、受け付けた前記秘密情報に基づいて前記乱数を暗号化したクライアント端末から、前記乱数が暗号化された暗号を受信する暗号受信ステップと、
前記認証手段が、前記指定情報に基づいた前記秘密鍵を前記秘密鍵記憶手段に基づいて抽出し、抽出した秘密鍵を用いて、前記暗号受信ステップによって受信された前記暗号を復号し、前記ユーザを認証する認証ステップと、
を備える方法。
【請求項８】
コンピュータに、請求項７に記載の方法の各ステップを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、利用者を認証する利用者認証装置、システム、方法及びプログラムに関する。
【背景技術】
【０００２】
従来より、システムやサービスを利用する利用者について、利用者が本人であることを認証するための技術として、様々な技術が開示されている。例えば、通信ネットワークにおける利用者の認証をするための技術を開示する特許文献１が知られている。
【０００３】
特許文献１では、ネットワークのデータベース内に全利用者のＩＤと秘密情報が保管されている場合において、各利用者がネットワークを認証するためにネットワークに乱数を送り、ネットワークが当該利用者の秘密情報を暗号鍵として暗号化し該当の利用者に送り返す技術が開示されている。
【０００４】
また、このような認証のための技術を開示する非特許文献１が知られている。非特許文献１は、チャレンジアンドレスポンス認証方式の技術を開示する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平６−３５０５９８号公報
【非特許文献】
【０００６】
【非特許文献１】ＲＦＣ１９９４  ＰＰＰ  Ｃｈａｌｌｅｎｇｅ  Ｈａｎｄｓｈａｋｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ  （ＣＨＡＰ），  １９９６．
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１では、データベース内に秘密情報が保管され、ユーザの秘密情報が漏洩する危険性があった。
【０００８】
また、従来技術では、認証に使用するユーザの秘密情報は１つであった。もしくは、複数の秘密情報を認証に使用する場合に、ＯＲ条件による指定をするためには、すべての秘密情報の組み合わせをサーバに保管するか、膨大な組み合わせをサーバに保存しておく必要があった。
【０００９】
そこで、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる装置が求められている。
【００１０】
本発明は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる利用者認証装置、システム、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明では、ユーザに複数の秘密情報の入力を要求する、もしくは、数ある秘密情報の中からいくつかの秘密情報を入力することで認証する新たな認証方式を提案する。この秘密情報の選択は、認証サーバ側で指定してもよいし、ユーザが現在使用可能な秘密情報のみ指定して入力するという方式でもよい。この際、サーバ側が管理する情報は、秘密情報に対応する秘密鍵でよく、想定されるすべての秘密情報の組み合わせに応じた情報を保存しておく必要のない方式とする。また、入力された秘密情報の組み合わせによって認証レベルを決定する。そして、認証レベルに従って提供するサービスを変更するシステムに対し、適切な認証レベルを提供することができる。
【００１２】
具体的には、以下のような解決手段を提供する。
（１）  クライアント端末から送信された情報に基づいてユーザを認証する利用者認証装置であって、前記ユーザに関する複数の秘密情報について、それぞれの前記秘密情報に基づいて生成された秘密鍵と前記秘密情報の種類とを対応付け、前記ユーザの識別情報ごとに記憶する秘密鍵記憶手段と、乱数を生成する乱数生成手段と、前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成手段と、前記乱数生成手段によって生成された乱数と、前記指定情報作成手段によって作成された前記指定情報とを前記クライアント端末に送信する乱数送信手段と、前記乱数送信手段によって送信された前記乱数及び前記指定情報を受信し、前記指定情報に基づいた前記秘密情報を前記ユーザから受け付け、受け付けた前記秘密情報に基づいて前記乱数を暗号化したクライアント端末から、前記乱数が暗号化された暗号を受信する暗号受信手段と、前記指定情報に基づいた前記秘密鍵を前記秘密鍵記憶手段に基づいて抽出し、抽出した秘密鍵を用いて、前記暗号受信手段によって受信された前記暗号を復号し、前記ユーザを認証する認証手段と、を備える利用者認証装置。
【００１３】
（１）の構成によれば、（１）に係る利用者認証装置は、ユーザに関する複数の秘密情報について、それぞれの秘密情報に基づいて生成された秘密鍵と秘密情報の種類とを対応付け、ユーザの識別情報ごとに記憶する秘密鍵記憶手段を有している。そして、（１）に係る利用者認証装置は、乱数を生成し、複数の秘密情報のうち認証に使用する秘密情報を指定する指定情報を作成し、生成した乱数と、作成した指定情報とをクライアント端末に送信し、送信された乱数及び指定情報を受信し、指定情報に基づいた秘密情報をユーザから受け付け、受け付けた秘密情報に基づいて乱数を暗号化したクライアント端末から、乱数が暗号化された暗号を受信し、指定情報に基づいた秘密鍵を秘密鍵記憶手段に基づいて抽出し、抽出した秘密鍵を用いて、受信した暗号を復号し、ユーザを認証する。
【００１４】
すなわち、（１）に係る利用者認証装置は、本人を認証するための秘密情報を保管する必要がなく、クライアント端末との通信において秘密情報を用いないで、認証に使用する秘密情報を指定する。
したがって、（１）に係る利用者認証装置は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
【００１５】
（２）  前記指定情報作成手段は、指定した前記秘密情報の利用方法をも含む前記指定情報を作成する、（１）に記載の利用者認証装置。
【００１６】
したがって、（２）に係る利用者認証装置は、秘密情報を組み合わせて利用者をさらに安全に認証することができる。
【００１７】
（３）  前記認証手段によって認証されたレベルを、前記指定情報に基づいて決定する認証レベル決定手段、をさらに備える（１）又は（２）に記載の利用者認証装置。
【００１８】
したがって、（３）に係る利用者認証装置は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができ、決定された認証レベルに応じて提供するサービスを変更するシステムに、適切な認証レベルの情報を提供することができる。
【００１９】
（４）  前記指定情報作成手段は、複数の前記秘密情報を指定する前記指定情報を作成する際に、複数の前記秘密情報の組み合わせを、前記指定情報を作成するごとに変更する、（１）から（３）のいずれか一項に記載の利用者認証装置。
【００２０】
したがって、（４）に係る利用者認証装置は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者をさらに安全に認証することができる。
【００２１】
（５）  前記指定情報作成手段は、前記秘密情報の利用方法として、指定した前記秘密情報のうちいずれかの前記秘密情報であって指定した個数の前記秘密情報によって認証する条件であるＯＲ条件を含む前記指定情報を作成し、前記認証手段は、前記暗号受信手段によって受信された前記暗号を、前記指定情報において指定されている複数の前記秘密情報にそれぞれ対応する前記秘密鍵によって復号し、復号できた場合の乱数が、前記乱数送信手段によって送信された乱数とそれぞれ同一である場合に認証する、（１）から（４）のいずれか一項に記載の利用者認証装置。
【００２２】
したがって、（５）に係る利用者認証装置は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
【００２３】
（６）  利用者認証装置と、クライアント端末とを備え、ユーザを認証する利用者認証システムであって、前記利用者認証装置は、前記ユーザに関する複数の秘密情報に基づいて生成された秘密鍵と前記秘密情報の種類とを対応付け、前記ユーザの識別情報ごとに記憶する秘密鍵記憶手段と、乱数を生成する乱数生成手段と、前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成手段と、前記乱数生成手段によって生成された乱数と、前記指定情報作成手段によって作成された前記指定情報とを前記クライアント端末に送信する乱数送信手段と、を備え、前記クライアント端末は、前記乱数送信手段によって送信された前記乱数と前記指定とを受信する端末受信手段と、前記端末受信手段によって受信された前記指定情報に対応する前記秘密情報を前記ユーザから受け付ける受付手段と、前記受付手段によって受け付けられた前記秘密情報を用いて、前記乱数を暗号化する暗号化手段と、前記暗号化手段によって暗号化された暗号を前記利用者認証装置に送信する端末送信手段と、を備え、前記利用者認証装置は、前記端末送信手段によって送信された前記暗号を受信する暗号受信手段と、前記秘密鍵記憶手段に基づいて、前記指定情報に対応付けられた前記秘密鍵を抽出し、抽出した秘密鍵を用いて、前記暗号受信手段によって受信された暗号を復号し、前記ユーザを認証する認証手段と、をさらに備える、利用者認証システム。
【００２４】
したがって、（６）に係る利用者認証システムは、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
【００２５】
（７）  （１）に記載の利用者認証装置が実行する方法であって、前記乱数生成手段が、乱数を生成する乱数生成ステップと、前記指定情報作成手段が、前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成ステップと、前記乱数送信手段が、前記乱数生成ステップによって生成された前記乱数と、前記指定情報作成ステップによって作成された前記指定情報とを前記クライアント端末に送信する乱数送信ステップと、前記暗号受信手段が、前記乱数送信ステップによって送信された前記乱数及び前記指定情報を受信し、前記指定情報に基づいた前記秘密情報を前記ユーザから受け付け、受け付けた前記秘密情報に基づいて前記乱数を暗号化したクライアント端末から、前記乱数が暗号化された暗号を受信する暗号受信ステップと、前記認証手段が、前記指定情報に基づいた前記秘密鍵を前記秘密鍵記憶手段に基づいて抽出し、抽出した秘密鍵を用いて、前記暗号受信ステップによって受信された前記暗号を復号し、前記ユーザを認証する認証ステップと、を備える方法。
【００２６】
したがって、（７）に係る方法は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
【００２７】
（８）  コンピュータに、（７）に記載の方法の各ステップを実行させるためのプログラム。
【００２８】
したがって、（８）に係るプログラムは、コンピュータに、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証させることができる。
【発明の効果】
【００２９】
本発明によれば、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
さらに、本発明により、より柔軟なユーザ認証方式を実現することができる。
【図面の簡単な説明】
【００３０】
【図１】本発明の一実施形態に係る利用者認証装置の構成を示す図である。
【図２】本発明の一実施形態に係る利用者認証装置の秘密鍵記憶手段の例を示す図である。
【図３】本発明の一実施形態に係る利用者認証装置及びクライアント端末の処理を示すフローチャートである。
【発明を実施するための形態】
【００３１】
本技術は、利用者認証装置１０がユーザを認証する方式である。
ユーザは、認証に使う秘密情報を指定し、それを公開鍵として属性暗号方式で用いられる秘密鍵の生成を行い、生成された秘密鍵を利用者認証装置１０に登録する。なお、実際の秘密鍵の生成は信頼できる第三者が行う。このとき、利用者認証装置１０に保存される秘密鍵の個数は、ユーザの秘密情報の個数に等しく、その組み合わせを考慮する必要はない。
利用者認証装置１０は、チャレンジとして乱数を生成し、クライアントに送信する。その際、どの秘密情報を入力すべきかを指定した情報もクライアント端末５０に送付する。暗号化の際の暗号化ポリシーがそのままユーザの秘密情報の選択ポリシーとなる。
クライアント端末５０は、ユーザに対し、利用者認証装置１０から指定された秘密情報の入力を促す。入力された秘密情報を利用して、送られてきた乱数を暗号化し利用者認証装置１０に送信する。
利用者認証装置１０は、送られてきた暗号文を秘密鍵を使って復号し、自分が送付した乱数と一致するかどうかを検証する。一致すれば認証完了とする。
【００３２】
＜属性暗号について＞
属性暗号とは、複数の属性Ａ，Ｂ，Ｃ，…を使って暗号化、復号を行う手法であり、それぞれの属性に対して鍵ａ，ｂ，ｃ，…が割り当てられる。暗号化の際に復号の条件を指定することで、特定の属性を持つ人物しか復号できないようにする。条件の設定には、ＡかつＢ（ＡＮＤ条件）、Ａ又はＢ（ＯＲ条件）を指定できる。
本発明では、属性がユーザの秘密情報であり公開されない。また、属性に対しての鍵は、認証を行う利用者認証装置１０に登録される。
【００３３】
＜認証手順＞
具体的な手順は以下の通りである。
（１）ユーザは、認証に使う秘密情報を指定し、それを公開鍵として属性暗号方式で用いられる秘密鍵の生成を行う。生成された秘密鍵を利用者認証装置１０に登録する。
（２）利用者認証装置１０はチャレンジとして乱数Ｒを生成し、クライアント端末５０に送信する。その際、どの秘密情報を入力すべきかを指定した情報（ポリシー）もクライアント端末５０に送付する。
（３）クライアント端末５０は、ユーザに対し、利用者認証装置１０から指定された秘密情報の入力を促す。秘密情報の入力を利用して、送られてきた乱数を暗号化する。暗号化の際の暗号化ポリシーがそのままユーザの秘密情報の選択ポリシーとなる。
（４）利用者認証装置１０は、ポリシーに従って秘密鍵を選択し、選択した秘密鍵を使って送られてきた暗号文を復号し、自分が送付した乱数と一致するかどうかを検証する。一致すれば認証完了とする。なお、ポリシーとしてＯＲ条件を用いた場合、入力されたそれぞれの秘密情報に対応する秘密鍵すべてで同様の検証を実施しなければならない。
【００３４】
以下、本発明の実施形態について図に従ってさらに説明する。
図１は、本発明の一実施形態に係る利用者認証装置１０の構成を示す図である。
利用者認証装置１０は、秘密鍵記憶手段３１と、乱数生成手段１１と、指定情報作成手段１２と、乱数送信手段１３と、暗号受信手段１４と、認証手段１５と、認証レベル決定手段１６とを備える。各手段ごとに説明する。
【００３５】
秘密鍵記憶手段３１は、ユーザに関する複数の秘密情報について、それぞれの秘密情報に基づいて生成された秘密鍵と秘密情報の種類とを対応付け、ユーザの識別情報ごとに記憶する。ここで、ユーザに関する複数の秘密情報とは、例えば、職業が「公務員」、趣味が「剣道３段」、給料が「２０万円」等である。秘密鍵は、秘密情報のそれぞれを公開鍵として生成される。鍵生成は信頼できる第三者によって行われる。なお、公開鍵は、秘密情報のハッシュ値としてもよい。
秘密鍵記憶手段３１は、後述する図２のように、ユーザＩＤごとに、秘密情報の種類と秘密鍵とを対応付けて記憶する。なお、利用者認証装置１０に保存される秘密鍵は、ユーザの秘密情報から生成されているが、一方向性関数を用いて生成されるため、秘密鍵から秘密情報を復元することは不可能である。
【００３６】
乱数生成手段１１は、乱数を生成する。指定情報作成手段１２は、複数の秘密情報のうち認証に使用する秘密情報を指定する指定情報を作成する。
指定情報作成手段１２によって作成される指定情報によって、認証されるユーザがクライアント端末５０において入力する秘密情報が指定される。例えば、職業と趣味とが指定された場合、上述の例において、ユーザは、認証されるために、クライアント端末５０において、職業として「公務員」、趣味として「剣道３段」を入力する必要がある。
【００３７】
秘密情報の指定情報は、指定した秘密情報の利用方法、例えば、ＡＮＤ条件や、ＯＲ条件をも含む。ＡＮＤ条件や、ＯＲ条件の場合の認証方法については、後述の認証手段１５において説明する。
なお、秘密情報の指定情報は、秘密情報のリストであってもよい。利用者認証装置１０は、許容される秘密情報のリストのみを送信し、クライアント端末５０においてユーザによってそのリストの中から秘密情報が選択される方式としてもよい。その場合には、クライアント端末５０は、ユーザによって選択された秘密情報の種類も返信する。
【００３８】
乱数送信手段１３は、乱数生成手段１１によって生成された乱数と、指定情報作成手段１２によって作成された指定情報とをクライアント端末５０に送信する。
【００３９】
クライアント端末５０において、端末受信手段５１は、乱数送信手段１３によって送信された乱数と指定情報とを受信し、受付手段５２は、端末受信手段５１によって受信された指定情報に対応する秘密情報をユーザから受け付け、暗号化手段５３は、受付手段５２によって受け付けられた秘密情報を用いて端末受信手段５１が受信した乱数を暗号化し、端末送信手段５４は、暗号化手段５３によって暗号化された乱数を利用者認証装置１０に送信する。
すなわち、乱数及び指定情報を受信したクライアント端末５０は、ユーザに対し、指定された秘密情報の入力を促し、入力された秘密情報に基づいて、受信した乱数を暗号化し、暗号化した暗号を利用者認証装置１０に送信する。
【００４０】
暗号受信手段１４は、クライアント端末５０から暗号を受信する。なお、ユーザ側で選択した秘密情報を入力する方式の場合、クライアント端末５０は、選択された秘密情報の種類も送信し、暗号受信手段１４は、送信された秘密情報の種類も受信する。
【００４１】
認証手段１５は、指定情報に基づいた秘密鍵を秘密鍵記憶手段３１に基づいて抽出し、抽出した秘密鍵を用いて、暗号受信手段１４によって受信された暗号を復号し、ユーザを認証する。
具体的には、認証手段１５は、秘密情報の指定情報に基づいて、秘密鍵を選択し、選択した秘密鍵を用いて暗号を復号する。そして、認証手段１５は、復号した暗号と送付した乱数とが一致するかどうかを検証し、一致すれば認証完了とする。
【００４２】
秘密情報の指定情報が、ＡＮＤ条件の場合、認証手段１５は、入力されたそれぞれの秘密情報に対応する秘密鍵すべてで同様の検証を実施し、送付した乱数との一致がすべての秘密鍵で成立する場合に認証を完了する。
秘密情報の指定情報が、ＯＲ条件の場合、認証手段１５は、入力されたそれぞれの秘密情報に対応する秘密鍵すべてで同様の検証を実施し、送付した乱数との一致が、条件（例えば、いずれか２つ以上の秘密鍵において一致すること、というような条件）に合う場合に認証を完了する。なお、ＯＲ条件の場合、ユーザが入力可能な秘密情報を選択して入力するとしてもよい。
【００４３】
認証レベル決定手段１６は、認証手段１５によって認証されたレベルを、指定情報に基づいて決定する。具体的には、認証レベル決定手段１６は、例えば、秘密情報の指定情報が、ＯＲ条件の場合、選択された秘密情報の数に応じて認証レベルを決定（例えば、秘密情報が２種類以下では認証レベルを低とし、３種類又は４種類の場合に認証レベルを中とし、５種類以上の場合に認証レベルを高とする認証レベルを決定）する。
【００４４】
利用者認証装置１０は、認証レベルを決定し、決定された認証レベルに応じて提供するサービスを変更するシステム（例えば、認証レベルが中なら決済処理が可能とし、認証レベルが低なら閲覧のみを可能とする、等のシステム）に、適切な認証レベルの情報を提供することができる。
【００４５】
さらに、指定情報作成手段１２は、複数の秘密情報を指定する指定情報を作成する際に、複数の秘密情報の組み合わせを、指定情報を作成するごとに変更するとしてもよい。すなわち、指定情報作成手段１２は、秘密情報の指定情報において、ｎ個の秘密情報を指定する際に、このｎ個の組み合わせを、指定情報を作成するごとに毎回変更するとしてもよい。利用者認証装置１０は、より強固に安全性を向上させた方式を実現することができる。
【００４６】
さらに、指定情報作成手段１２は、秘密情報の利用方法として、指定した秘密情報のうちいずれかの秘密情報であって指定した個数の秘密情報によって認証する条件であるＯＲ条件を含む指定情報を作成してもよい。この場合、認証手段１５は、暗号受信手段１４によって受信された暗号を、指定情報において指定されている複数の秘密情報にそれぞれ対応する秘密鍵によって復号し、復号できた場合の乱数が、乱数送信手段１３によって送信された乱数とそれぞれ同一である場合に認証する。
すなわち、指定情報作成手段１２は、ＯＲ条件を活用して、複数の秘密情報の中からｎ個の秘密情報を入力させることも可能である。この場合、任意のｎ個の秘密情報が正しければよい。
【００４７】
なお、利用者認証装置１０は、オンライン辞書攻撃に対する対策として、認証を所定の回数失敗した場合にはアカウントをロックし、所定の期間、認証処理を受け付けないようにしてもよい。
【００４８】
図２は、本発明の一実施形態に係る利用者認証装置の秘密鍵記憶手段３１の例を示す図である。秘密鍵記憶手段３１は、図２の例に示すように、ユーザＩＤごとに、秘密情報の種類と、秘密鍵とを対応付けて記憶する。ユーザＩＤは、ユーザを識別できる情報であればよい。秘密情報の種類は、例えば、職業や趣味等であるが、本人を認証するための秘密情報を示すものであればよい。秘密鍵は、秘密情報に基づいて生成された秘密鍵である。
【００４９】
図３は、本発明の一実施形態に係る利用者認証装置１０及びクライアント端末５０の処理を示すフローチャートである。利用者認証装置１０及びクライアント端末５０は、コンピュータ及びその周辺装置が備えるハードウェア並びに該ハードウェアを制御するソフトウェアによって構成され、以下の処理は、それぞれの制御部（例えば、利用者認証装置１０のＣＰＵ、及びクライアント端末５０のＣＰＵ）が所定のソフトウェアに従い実行する処理である。
【００５０】
ステップＳ１０１において、利用者認証装置１０のＣＰＵ（乱数生成手段１１、指定情報作成手段１２）は、乱数を生成し、秘密情報を指定する指定情報を作成する。
【００５１】
ステップＳ１０２において、利用者認証装置１０のＣＰＵ（乱数送信手段１３）は、生成した乱数と、秘密情報の指定情報とをクライアント端末５０に送信する。クライアント端末５０のＣＰＵ（端末受信手段５１）は、利用者認証装置１０から送信された乱数と秘密情報の指定情報とを受信する。
【００５２】
ステップＳ２０１において、クライアント端末５０のＣＰＵ（受付手段５２）は、利用者認証装置１０から受信した指定情報によりユーザからの秘密情報の入力を受け付ける。
【００５３】
ステップＳ２０２において、クライアント端末５０のＣＰＵ（暗号化手段５３）は、ユーザが入力した秘密情報を用いて、利用者認証装置１０から受信した乱数を暗号化する。
【００５４】
ステップＳ２０３において、クライアント端末５０のＣＰＵ（端末送信手段５４）は、乱数を暗号化した暗号を利用者認証装置１０に送信する。利用者認証装置１０のＣＰＵ（暗号受信手段１４）は、クライアント端末５０から送信された暗号を受信する。
【００５５】
ステップＳ１０３において、利用者認証装置１０のＣＰＵ（認証手段１５、認証レベル決定手段１６）は、受信した暗号を秘密鍵で復号すると共に検証し、認証する。さらに、利用者認証装置１０のＣＰＵ（認証レベル決定手段１６）は、認証されたレベルを決定する。
【００５６】
本実施形態によれば、利用者認証装置１０は、ユーザに関する複数の秘密情報について、それぞれの秘密情報に割り当てられた公開鍵及び秘密鍵のうち秘密鍵と秘密情報の種類とを対応付け、ユーザの識別情報ごとに記憶する秘密鍵記憶手段３１を有している。そして、利用者認証装置１０は、乱数を生成し、複数の秘密情報のうち認証に使用する秘密情報を指定する指定情報を作成し、生成した乱数と、指定情報とをクライアント端末５０に送信する。クライアント端末５０は、送信された乱数及び指定情報を受信し、指定情報に基づいた秘密情報をユーザから受け付け、受け付けた秘密情報に基づいて乱数を暗号化し、利用者認証装置１０に送信する。利用者認証装置１０は、クライアント端末５０から、乱数が暗号化された暗号を受信し、指定情報に基づいた秘密鍵を秘密鍵記憶手段３１に基づいて抽出し、抽出した秘密鍵を用いて、受信した暗号を復号し、ユーザを認証する。
さらに、利用者認証装置１０は、指定した秘密情報の利用方法（ＡＮＤ条件やＯＲ条件）をも含む指定情報を作成し、認証したレベルを、指定情報に基づいて決定する。
したがって、利用者認証装置１０は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
さらに、利用者認証装置１０は、決定された認証レベルに応じて提供するサービスを変更するシステムに、適切な認証レベルの情報を提供することができる。
【００５７】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
【符号の説明】
【００５８】
１０    利用者認証装置
１１    乱数生成手段
１２    指定情報作成手段
１３    乱数送信手段
１４    暗号受信手段
１５    認証手段
１６    認証レベル決定手段
３１    秘密鍵記憶手段
５０    クライアント端末
５１    端末受信手段
５２    受付手段
５３    暗号化手段
５４    端末送信手段
【図１】
2015119226.tif 000003
【図２】
2015119226.tif 000004
【図３】
2015119226.tif 000005