(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6165044
(24)【登録日】2017年6月30日
(45)【発行日】2017年7月19日
(54)【発明の名称】利用者認証装置、システム、方法及びプログラム
(51)【国際特許分類】
H04L 9/32 20060101AFI20170710BHJP
G06F 21/31 20130101ALI20170710BHJP
【FI】
H04L9/00 675A
G06F21/31
【請求項の数】8
【全頁数】12
(21)【出願番号】特願2013-259595(P2013-259595)
(22)【出願日】2013年12月16日
(65)【公開番号】特開2015-119226(P2015-119226A)
(43)【公開日】2015年6月25日
【審査請求日】2016年7月21日
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100120891
【弁理士】
【氏名又は名称】林 一好
(72)【発明者】
【氏名】清本 晋作
(72)【発明者】
【氏名】三宅 優
【審査官】
行田 悦資
(56)【参考文献】
【文献】
国際公開第2007/063876(WO,A1)
【文献】
特開2012−256008(JP,A)
【文献】
米国特許出願公開第2007/0107051(US,A1)
【文献】
後藤めぐ美,属性ベース暗号を利用したファイル名暗号化ファイル共有サービスの実装と評価,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2012年11月15日,第112巻,第315号,p.49-54
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/32
G06F 21/31
(57)【特許請求の範囲】
【請求項1】
クライアント端末から送信された情報に基づいてユーザを認証する利用者認証装置であって、
前記ユーザに関する複数の秘密情報について、それぞれの前記秘密情報に基づいて生成された秘密鍵と前記秘密情報の種類とを対応付け、前記ユーザの識別情報ごとに記憶する秘密鍵記憶手段と、
乱数を生成する乱数生成手段と、
前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成手段と、
前記乱数生成手段によって生成された乱数と、前記指定情報作成手段によって作成された前記指定情報とを前記クライアント端末に送信する乱数送信手段と、
前記乱数送信手段によって送信された前記乱数及び前記指定情報を受信し、前記指定情報に基づいた前記秘密情報を前記ユーザから受け付け、受け付けた前記秘密情報に基づいて前記乱数を暗号化したクライアント端末から、前記乱数が暗号化された暗号を受信する暗号受信手段と、
前記指定情報に基づいた前記秘密鍵を前記秘密鍵記憶手段に基づいて抽出し、抽出した秘密鍵を用いて、前記暗号受信手段によって受信された前記暗号を復号し、前記ユーザを認証する認証手段と、
を備える利用者認証装置。
【請求項2】
前記指定情報作成手段は、指定した前記秘密情報の利用方法をも含む前記指定情報を作成する、請求項1に記載の利用者認証装置。
【請求項3】
前記認証手段によって認証されたレベルを、前記指定情報に基づいて決定する認証レベル決定手段をさらに備える請求項1又は2に記載の利用者認証装置。
【請求項4】
前記指定情報作成手段は、複数の前記秘密情報を指定する前記指定情報を作成する際に、複数の前記秘密情報の組み合わせを、前記指定情報を作成するごとに変更する、請求項1から3のいずれか一項に記載の利用者認証装置。
【請求項5】
前記指定情報作成手段は、前記秘密情報の利用方法として、指定した前記秘密情報のうちいずれかの前記秘密情報であって指定した個数の前記秘密情報によって認証する条件であるOR条件を含む前記指定情報を作成し、
前記認証手段は、前記暗号受信手段によって受信された前記暗号を、前記指定情報において指定されている複数の前記秘密情報にそれぞれ対応する前記秘密鍵によって復号し、復号できた場合の乱数が、前記乱数送信手段によって送信された乱数とそれぞれ同一である場合に認証する、請求項1から4のいずれか一項に記載の利用者認証装置。
【請求項6】
利用者認証装置と、クライアント端末とを備え、ユーザを認証する利用者認証システムであって、
前記利用者認証装置は、
前記ユーザに関する複数の秘密情報に基づいて生成された秘密鍵と前記秘密情報の種類とを対応付け、前記ユーザの識別情報ごとに記憶する秘密鍵記憶手段と、
乱数を生成する乱数生成手段と、
前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成手段と、
前記乱数生成手段によって生成された乱数と、前記指定情報作成手段によって作成された前記指定情報とを前記クライアント端末に送信する乱数送信手段と、を備え、
前記クライアント端末は、
前記乱数送信手段によって送信された前記乱数と前記指定とを受信する端末受信手段と、
前記端末受信手段によって受信された前記指定情報に対応する前記秘密情報を前記ユーザから受け付ける受付手段と、
前記受付手段によって受け付けられた前記秘密情報を用いて、前記乱数を暗号化する暗号化手段と、
前記暗号化手段によって暗号化された暗号を前記利用者認証装置に送信する端末送信手段と、を備え、
前記利用者認証装置は、
前記端末送信手段によって送信された前記暗号を受信する暗号受信手段と、
前記秘密鍵記憶手段に基づいて、前記指定情報に対応付けられた前記秘密鍵を抽出し、抽出した秘密鍵を用いて、前記暗号受信手段によって受信された暗号を復号し、前記ユーザを認証する認証手段と、をさらに備える、
利用者認証システム。
【請求項7】
請求項1に記載の利用者認証装置が実行する方法であって、
前記乱数生成手段が、乱数を生成する乱数生成ステップと、
前記指定情報作成手段が、前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成ステップと、
前記乱数送信手段が、前記乱数生成ステップによって生成された前記乱数と、前記指定情報作成ステップによって作成された前記指定情報とを前記クライアント端末に送信する乱数送信ステップと、
前記暗号受信手段が、前記乱数送信ステップによって送信された前記乱数及び前記指定情報を受信し、前記指定情報に基づいた前記秘密情報を前記ユーザから受け付け、受け付けた前記秘密情報に基づいて前記乱数を暗号化したクライアント端末から、前記乱数が暗号化された暗号を受信する暗号受信ステップと、
前記認証手段が、前記指定情報に基づいた前記秘密鍵を前記秘密鍵記憶手段に基づいて抽出し、抽出した秘密鍵を用いて、前記暗号受信ステップによって受信された前記暗号を復号し、前記ユーザを認証する認証ステップと、
を備える方法。
【請求項8】
コンピュータに、請求項7に記載の方法の各ステップを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、利用者を認証する利用者認証装置、システム、方法及びプログラムに関する。
【背景技術】
【0002】
従来より、システムやサービスを利用する利用者について、利用者が本人であることを認証するための技術として、様々な技術が開示されている。例えば、通信ネットワークにおける利用者の認証をするための技術を開示する特許文献1が知られている。
【0003】
特許文献1では、ネットワークのデータベース内に全利用者のIDと秘密情報が保管されている場合において、各利用者がネットワークを認証するためにネットワークに乱数を送り、ネットワークが当該利用者の秘密情報を暗号鍵として暗号化し該当の利用者に送り返す技術が開示されている。
【0004】
また、このような認証のための技術を開示する非特許文献1が知られている。非特許文献1は、チャレンジアンドレスポンス認証方式の技術を開示する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平6−350598号公報
【非特許文献】
【0006】
【非特許文献1】RFC1994 PPP Challenge Handshake Authentication Protocol (CHAP), 1996.
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、特許文献1では、データベース内に秘密情報が保管され、ユーザの秘密情報が漏洩する危険性があった。
【0008】
また、従来技術では、認証に使用するユーザの秘密情報は1つであった。もしくは、複数の秘密情報を認証に使用する場合に、OR条件による指定をするためには、すべての秘密情報の組み合わせをサーバに保管するか、膨大な組み合わせをサーバに保存しておく必要があった。
【0009】
そこで、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる装置が求められている。
【0010】
本発明は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる利用者認証装置、システム、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明では、ユーザに複数の秘密情報の入力を要求する、もしくは、数ある秘密情報の中からいくつかの秘密情報を入力することで認証する新たな認証方式を提案する。この秘密情報の選択は、認証サーバ側で指定してもよいし、ユーザが現在使用可能な秘密情報のみ指定して入力するという方式でもよい。この際、サーバ側が管理する情報は、秘密情報に対応する秘密鍵でよく、想定されるすべての秘密情報の組み合わせに応じた情報を保存しておく必要のない方式とする。また、入力された秘密情報の組み合わせによって認証レベルを決定する。そして、認証レベルに従って提供するサービスを変更するシステムに対し、適切な認証レベルを提供することができる。
【0012】
具体的には、以下のような解決手段を提供する。
(1) クライアント端末から送信された情報に基づいてユーザを認証する利用者認証装置であって、前記ユーザに関する複数の秘密情報について、それぞれの前記秘密情報に基づいて生成された秘密鍵と前記秘密情報の種類とを対応付け、前記ユーザの識別情報ごとに記憶する秘密鍵記憶手段と、乱数を生成する乱数生成手段と、前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成手段と、前記乱数生成手段によって生成された乱数と、前記指定情報作成手段によって作成された前記指定情報とを前記クライアント端末に送信する乱数送信手段と、前記乱数送信手段によって送信された前記乱数及び前記指定情報を受信し、前記指定情報に基づいた前記秘密情報を前記ユーザから受け付け、受け付けた前記秘密情報に基づいて前記乱数を暗号化したクライアント端末から、前記乱数が暗号化された暗号を受信する暗号受信手段と、前記指定情報に基づいた前記秘密鍵を前記秘密鍵記憶手段に基づいて抽出し、抽出した秘密鍵を用いて、前記暗号受信手段によって受信された前記暗号を復号し、前記ユーザを認証する認証手段と、を備える利用者認証装置。
【0013】
(1)の構成によれば、(1)に係る利用者認証装置は、ユーザに関する複数の秘密情報について、それぞれの秘密情報に基づいて生成された秘密鍵と秘密情報の種類とを対応付け、ユーザの識別情報ごとに記憶する秘密鍵記憶手段を有している。そして、(1)に係る利用者認証装置は、乱数を生成し、複数の秘密情報のうち認証に使用する秘密情報を指定する指定情報を作成し、生成した乱数と、作成した指定情報とをクライアント端末に送信し、送信された乱数及び指定情報を受信し、指定情報に基づいた秘密情報をユーザから受け付け、受け付けた秘密情報に基づいて乱数を暗号化したクライアント端末から、乱数が暗号化された暗号を受信し、指定情報に基づいた秘密鍵を秘密鍵記憶手段に基づいて抽出し、抽出した秘密鍵を用いて、受信した暗号を復号し、ユーザを認証する。
【0014】
すなわち、(1)に係る利用者認証装置は、本人を認証するための秘密情報を保管する必要がなく、クライアント端末との通信において秘密情報を用いないで、認証に使用する秘密情報を指定する。
したがって、(1)に係る利用者認証装置は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
【0015】
(2) 前記指定情報作成手段は、指定した前記秘密情報の利用方法をも含む前記指定情報を作成する、(1)に記載の利用者認証装置。
【0016】
したがって、(2)に係る利用者認証装置は、秘密情報を組み合わせて利用者をさらに安全に認証することができる。
【0017】
(3) 前記認証手段によって認証されたレベルを、前記指定情報に基づいて決定する認証レベル決定手段、をさらに備える(1)又は(2)に記載の利用者認証装置。
【0018】
したがって、(3)に係る利用者認証装置は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができ、決定された認証レベルに応じて提供するサービスを変更するシステムに、適切な認証レベルの情報を提供することができる。
【0019】
(4) 前記指定情報作成手段は、複数の前記秘密情報を指定する前記指定情報を作成する際に、複数の前記秘密情報の組み合わせを、前記指定情報を作成するごとに変更する、(1)から(3)のいずれか一項に記載の利用者認証装置。
【0020】
したがって、(4)に係る利用者認証装置は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者をさらに安全に認証することができる。
【0021】
(5) 前記指定情報作成手段は、前記秘密情報の利用方法として、指定した前記秘密情報のうちいずれかの前記秘密情報であって指定した個数の前記秘密情報によって認証する条件であるOR条件を含む前記指定情報を作成し、前記認証手段は、前記暗号受信手段によって受信された前記暗号を、前記指定情報において指定されている複数の前記秘密情報にそれぞれ対応する前記秘密鍵によって復号し、復号できた場合の乱数が、前記乱数送信手段によって送信された乱数とそれぞれ同一である場合に認証する、(1)から(4)のいずれか一項に記載の利用者認証装置。
【0022】
したがって、(5)に係る利用者認証装置は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
【0023】
(6) 利用者認証装置と、クライアント端末とを備え、ユーザを認証する利用者認証システムであって、前記利用者認証装置は、前記ユーザに関する複数の秘密情報に基づいて生成された秘密鍵と前記秘密情報の種類とを対応付け、前記ユーザの識別情報ごとに記憶する秘密鍵記憶手段と、乱数を生成する乱数生成手段と、前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成手段と、前記乱数生成手段によって生成された乱数と、前記指定情報作成手段によって作成された前記指定情報とを前記クライアント端末に送信する乱数送信手段と、を備え、前記クライアント端末は、前記乱数送信手段によって送信された前記乱数と前記指定とを受信する端末受信手段と、前記端末受信手段によって受信された前記指定情報に対応する前記秘密情報を前記ユーザから受け付ける受付手段と、前記受付手段によって受け付けられた前記秘密情報を用いて、前記乱数を暗号化する暗号化手段と、前記暗号化手段によって暗号化された暗号を前記利用者認証装置に送信する端末送信手段と、を備え、前記利用者認証装置は、前記端末送信手段によって送信された前記暗号を受信する暗号受信手段と、前記秘密鍵記憶手段に基づいて、前記指定情報に対応付けられた前記秘密鍵を抽出し、抽出した秘密鍵を用いて、前記暗号受信手段によって受信された暗号を復号し、前記ユーザを認証する認証手段と、をさらに備える、利用者認証システム。
【0024】
したがって、(6)に係る利用者認証システムは、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
【0025】
(7) (1)に記載の利用者認証装置が実行する方法であって、前記乱数生成手段が、乱数を生成する乱数生成ステップと、前記指定情報作成手段が、前記複数の秘密情報のうち認証に使用する前記秘密情報を指定する指定情報を作成する指定情報作成ステップと、前記乱数送信手段が、前記乱数生成ステップによって生成された前記乱数と、前記指定情報作成ステップによって作成された前記指定情報とを前記クライアント端末に送信する乱数送信ステップと、前記暗号受信手段が、前記乱数送信ステップによって送信された前記乱数及び前記指定情報を受信し、前記指定情報に基づいた前記秘密情報を前記ユーザから受け付け、受け付けた前記秘密情報に基づいて前記乱数を暗号化したクライアント端末から、前記乱数が暗号化された暗号を受信する暗号受信ステップと、前記認証手段が、前記指定情報に基づいた前記秘密鍵を前記秘密鍵記憶手段に基づいて抽出し、抽出した秘密鍵を用いて、前記暗号受信ステップによって受信された前記暗号を復号し、前記ユーザを認証する認証ステップと、を備える方法。
【0026】
したがって、(7)に係る方法は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
【0027】
(8) コンピュータに、(7)に記載の方法の各ステップを実行させるためのプログラム。
【0028】
したがって、(8)に係るプログラムは、コンピュータに、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証させることができる。
【発明の効果】
【0029】
本発明によれば、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
さらに、本発明により、より柔軟なユーザ認証方式を実現することができる。
【図面の簡単な説明】
【0030】
【
図1】本発明の一実施形態に係る利用者認証装置の構成を示す図である。
【
図2】本発明の一実施形態に係る利用者認証装置の秘密鍵記憶手段の例を示す図である。
【
図3】本発明の一実施形態に係る利用者認証装置及びクライアント端末の処理を示すフローチャートである。
【発明を実施するための形態】
【0031】
本技術は、利用者認証装置10がユーザを認証する方式である。
ユーザは、認証に使う秘密情報を指定し、それを公開鍵として属性暗号方式で用いられる秘密鍵の生成を行い、生成された秘密鍵を利用者認証装置10に登録する。なお、実際の秘密鍵の生成は信頼できる第三者が行う。このとき、利用者認証装置10に保存される秘密鍵の個数は、ユーザの秘密情報の個数に等しく、その組み合わせを考慮する必要はない。
利用者認証装置10は、チャレンジとして乱数を生成し、クライアントに送信する。その際、どの秘密情報を入力すべきかを指定した情報もクライアント端末50に送付する。暗号化の際の暗号化ポリシーがそのままユーザの秘密情報の選択ポリシーとなる。
クライアント端末50は、ユーザに対し、利用者認証装置10から指定された秘密情報の入力を促す。入力された秘密情報を利用して、送られてきた乱数を暗号化し利用者認証装置10に送信する。
利用者認証装置10は、送られてきた暗号文を秘密鍵を使って復号し、自分が送付した乱数と一致するかどうかを検証する。一致すれば認証完了とする。
【0032】
<属性暗号について>
属性暗号とは、複数の属性A,B,C,…を使って暗号化、復号を行う手法であり、それぞれの属性に対して鍵a,b,c,…が割り当てられる。暗号化の際に復号の条件を指定することで、特定の属性を持つ人物しか復号できないようにする。条件の設定には、AかつB(AND条件)、A又はB(OR条件)を指定できる。
本発明では、属性がユーザの秘密情報であり公開されない。また、属性に対しての鍵は、認証を行う利用者認証装置10に登録される。
【0033】
<認証手順>
具体的な手順は以下の通りである。
(1)ユーザは、認証に使う秘密情報を指定し、それを公開鍵として属性暗号方式で用いられる秘密鍵の生成を行う。生成された秘密鍵を利用者認証装置10に登録する。
(2)利用者認証装置10はチャレンジとして乱数Rを生成し、クライアント端末50に送信する。その際、どの秘密情報を入力すべきかを指定した情報(ポリシー)もクライアント端末50に送付する。
(3)クライアント端末50は、ユーザに対し、利用者認証装置10から指定された秘密情報の入力を促す。秘密情報の入力を利用して、送られてきた乱数を暗号化する。暗号化の際の暗号化ポリシーがそのままユーザの秘密情報の選択ポリシーとなる。
(4)利用者認証装置10は、ポリシーに従って秘密鍵を選択し、選択した秘密鍵を使って送られてきた暗号文を復号し、自分が送付した乱数と一致するかどうかを検証する。一致すれば認証完了とする。なお、ポリシーとしてOR条件を用いた場合、入力されたそれぞれの秘密情報に対応する秘密鍵すべてで同様の検証を実施しなければならない。
【0034】
以下、本発明の実施形態について図に従ってさらに説明する。
図1は、本発明の一実施形態に係る利用者認証装置10の構成を示す図である。
利用者認証装置10は、秘密鍵記憶手段31と、乱数生成手段11と、指定情報作成手段12と、乱数送信手段13と、暗号受信手段14と、認証手段15と、認証レベル決定手段16とを備える。各手段ごとに説明する。
【0035】
秘密鍵記憶手段31は、ユーザに関する複数の秘密情報について、それぞれの秘密情報に基づいて生成された秘密鍵と秘密情報の種類とを対応付け、ユーザの識別情報ごとに記憶する。ここで、ユーザに関する複数の秘密情報とは、例えば、職業が「公務員」、趣味が「剣道3段」、給料が「20万円」等である。秘密鍵は、秘密情報のそれぞれを公開鍵として生成される。鍵生成は信頼できる第三者によって行われる。なお、公開鍵は、秘密情報のハッシュ値としてもよい。
秘密鍵記憶手段31は、後述する
図2のように、ユーザIDごとに、秘密情報の種類と秘密鍵とを対応付けて記憶する。なお、利用者認証装置10に保存される秘密鍵は、ユーザの秘密情報から生成されているが、一方向性関数を用いて生成されるため、秘密鍵から秘密情報を復元することは不可能である。
【0036】
乱数生成手段11は、乱数を生成する。指定情報作成手段12は、複数の秘密情報のうち認証に使用する秘密情報を指定する指定情報を作成する。
指定情報作成手段12によって作成される指定情報によって、認証されるユーザがクライアント端末50において入力する秘密情報が指定される。例えば、職業と趣味とが指定された場合、上述の例において、ユーザは、認証されるために、クライアント端末50において、職業として「公務員」、趣味として「剣道3段」を入力する必要がある。
【0037】
秘密情報の指定情報は、指定した秘密情報の利用方法、例えば、AND条件や、OR条件をも含む。AND条件や、OR条件の場合の認証方法については、後述の認証手段15において説明する。
なお、秘密情報の指定情報は、秘密情報のリストであってもよい。利用者認証装置10は、許容される秘密情報のリストのみを送信し、クライアント端末50においてユーザによってそのリストの中から秘密情報が選択される方式としてもよい。その場合には、クライアント端末50は、ユーザによって選択された秘密情報の種類も返信する。
【0038】
乱数送信手段13は、乱数生成手段11によって生成された乱数と、指定情報作成手段12によって作成された指定情報とをクライアント端末50に送信する。
【0039】
クライアント端末50において、端末受信手段51は、乱数送信手段13によって送信された乱数と指定情報とを受信し、受付手段52は、端末受信手段51によって受信された指定情報に対応する秘密情報をユーザから受け付け、暗号化手段53は、受付手段52によって受け付けられた秘密情報を用いて端末受信手段51が受信した乱数を暗号化し、端末送信手段54は、暗号化手段53によって暗号化された乱数を利用者認証装置10に送信する。
すなわち、乱数及び指定情報を受信したクライアント端末50は、ユーザに対し、指定された秘密情報の入力を促し、入力された秘密情報に基づいて、受信した乱数を暗号化し、暗号化した暗号を利用者認証装置10に送信する。
【0040】
暗号受信手段14は、クライアント端末50から暗号を受信する。なお、ユーザ側で選択した秘密情報を入力する方式の場合、クライアント端末50は、選択された秘密情報の種類も送信し、暗号受信手段14は、送信された秘密情報の種類も受信する。
【0041】
認証手段15は、指定情報に基づいた秘密鍵を秘密鍵記憶手段31に基づいて抽出し、抽出した秘密鍵を用いて、暗号受信手段14によって受信された暗号を復号し、ユーザを認証する。
具体的には、認証手段15は、秘密情報の指定情報に基づいて、秘密鍵を選択し、選択した秘密鍵を用いて暗号を復号する。そして、認証手段15は、復号した暗号と送付した乱数とが一致するかどうかを検証し、一致すれば認証完了とする。
【0042】
秘密情報の指定情報が、AND条件の場合、認証手段15は、入力されたそれぞれの秘密情報に対応する秘密鍵すべてで同様の検証を実施し、送付した乱数との一致がすべての秘密鍵で成立する場合に認証を完了する。
秘密情報の指定情報が、OR条件の場合、認証手段15は、入力されたそれぞれの秘密情報に対応する秘密鍵すべてで同様の検証を実施し、送付した乱数との一致が、条件(例えば、いずれか2つ以上の秘密鍵において一致すること、というような条件)に合う場合に認証を完了する。なお、OR条件の場合、ユーザが入力可能な秘密情報を選択して入力するとしてもよい。
【0043】
認証レベル決定手段16は、認証手段15によって認証されたレベルを、指定情報に基づいて決定する。具体的には、認証レベル決定手段16は、例えば、秘密情報の指定情報が、OR条件の場合、選択された秘密情報の数に応じて認証レベルを決定(例えば、秘密情報が2種類以下では認証レベルを低とし、3種類又は4種類の場合に認証レベルを中とし、5種類以上の場合に認証レベルを高とする認証レベルを決定)する。
【0044】
利用者認証装置10は、認証レベルを決定し、決定された認証レベルに応じて提供するサービスを変更するシステム(例えば、認証レベルが中なら決済処理が可能とし、認証レベルが低なら閲覧のみを可能とする、等のシステム)に、適切な認証レベルの情報を提供することができる。
【0045】
さらに、指定情報作成手段12は、複数の秘密情報を指定する指定情報を作成する際に、複数の秘密情報の組み合わせを、指定情報を作成するごとに変更するとしてもよい。すなわち、指定情報作成手段12は、秘密情報の指定情報において、n個の秘密情報を指定する際に、このn個の組み合わせを、指定情報を作成するごとに毎回変更するとしてもよい。利用者認証装置10は、より強固に安全性を向上させた方式を実現することができる。
【0046】
さらに、指定情報作成手段12は、秘密情報の利用方法として、指定した秘密情報のうちいずれかの秘密情報であって指定した個数の秘密情報によって認証する条件であるOR条件を含む指定情報を作成してもよい。この場合、認証手段15は、暗号受信手段14によって受信された暗号を、指定情報において指定されている複数の秘密情報にそれぞれ対応する秘密鍵によって復号し、復号できた場合の乱数が、乱数送信手段13によって送信された乱数とそれぞれ同一である場合に認証する。
すなわち、指定情報作成手段12は、OR条件を活用して、複数の秘密情報の中からn個の秘密情報を入力させることも可能である。この場合、任意のn個の秘密情報が正しければよい。
【0047】
なお、利用者認証装置10は、オンライン辞書攻撃に対する対策として、認証を所定の回数失敗した場合にはアカウントをロックし、所定の期間、認証処理を受け付けないようにしてもよい。
【0048】
図2は、本発明の一実施形態に係る利用者認証装置の秘密鍵記憶手段31の例を示す図である。秘密鍵記憶手段31は、
図2の例に示すように、ユーザIDごとに、秘密情報の種類と、秘密鍵とを対応付けて記憶する。ユーザIDは、ユーザを識別できる情報であればよい。秘密情報の種類は、例えば、職業や趣味等であるが、本人を認証するための秘密情報を示すものであればよい。秘密鍵は、秘密情報に基づいて生成された秘密鍵である。
【0049】
図3は、本発明の一実施形態に係る利用者認証装置10及びクライアント端末50の処理を示すフローチャートである。利用者認証装置10及びクライアント端末50は、コンピュータ及びその周辺装置が備えるハードウェア並びに該ハードウェアを制御するソフトウェアによって構成され、以下の処理は、それぞれの制御部(例えば、利用者認証装置10のCPU、及びクライアント端末50のCPU)が所定のソフトウェアに従い実行する処理である。
【0050】
ステップS101において、利用者認証装置10のCPU(乱数生成手段11、指定情報作成手段12)は、乱数を生成し、秘密情報を指定する指定情報を作成する。
【0051】
ステップS102において、利用者認証装置10のCPU(乱数送信手段13)は、生成した乱数と、秘密情報の指定情報とをクライアント端末50に送信する。クライアント端末50のCPU(端末受信手段51)は、利用者認証装置10から送信された乱数と秘密情報の指定情報とを受信する。
【0052】
ステップS201において、クライアント端末50のCPU(受付手段52)は、利用者認証装置10から受信した指定情報によりユーザからの秘密情報の入力を受け付ける。
【0053】
ステップS202において、クライアント端末50のCPU(暗号化手段53)は、ユーザが入力した秘密情報を用いて、利用者認証装置10から受信した乱数を暗号化する。
【0054】
ステップS203において、クライアント端末50のCPU(端末送信手段54)は、乱数を暗号化した暗号を利用者認証装置10に送信する。利用者認証装置10のCPU(暗号受信手段14)は、クライアント端末50から送信された暗号を受信する。
【0055】
ステップS103において、利用者認証装置10のCPU(認証手段15、認証レベル決定手段16)は、受信した暗号を秘密鍵で復号すると共に検証し、認証する。さらに、利用者認証装置10のCPU(認証レベル決定手段16)は、認証されたレベルを決定する。
【0056】
本実施形態によれば、利用者認証装置10は、ユーザに関する複数の秘密情報について、それぞれの秘密情報に割り当てられた公開鍵及び秘密鍵のうち秘密鍵と秘密情報の種類とを対応付け、ユーザの識別情報ごとに記憶する秘密鍵記憶手段31を有している。そして、利用者認証装置10は、乱数を生成し、複数の秘密情報のうち認証に使用する秘密情報を指定する指定情報を作成し、生成した乱数と、指定情報とをクライアント端末50に送信する。クライアント端末50は、送信された乱数及び指定情報を受信し、指定情報に基づいた秘密情報をユーザから受け付け、受け付けた秘密情報に基づいて乱数を暗号化し、利用者認証装置10に送信する。利用者認証装置10は、クライアント端末50から、乱数が暗号化された暗号を受信し、指定情報に基づいた秘密鍵を秘密鍵記憶手段31に基づいて抽出し、抽出した秘密鍵を用いて、受信した暗号を復号し、ユーザを認証する。
さらに、利用者認証装置10は、指定した秘密情報の利用方法(AND条件やOR条件)をも含む指定情報を作成し、認証したレベルを、指定情報に基づいて決定する。
したがって、利用者認証装置10は、本人認証に秘密情報を利用しても、秘密情報の漏洩の危険性がなく、秘密情報を組み合わせて利用者を安全に認証することができる。
さらに、利用者認証装置10は、決定された認証レベルに応じて提供するサービスを変更するシステムに、適切な認証レベルの情報を提供することができる。
【0057】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
【符号の説明】
【0058】
10 利用者認証装置
11 乱数生成手段
12 指定情報作成手段
13 乱数送信手段
14 暗号受信手段
15 認証手段
16 認証レベル決定手段
31 秘密鍵記憶手段
50 クライアント端末
51 端末受信手段
52 受付手段
53 暗号化手段
54 端末送信手段