[1.第1実施形態]
図1は、本発明の第1実施形態に係るサービスシステムの全体構成を示すブロック図である。図1に示すサービスシステム1は、所定のサービスを提供する。例えば、サービスシステム1は、所定のサービスとして、金融機関が提供するインターネットバンキングサービス、通販会社が提供する通販サービス、又は、SNS(Social Networking Service)等を提供する。
図1に例示するように、サービスシステム1は、ユーザU_1~U_mが所持するユーザ装置10_1~10_m(mは2以上の整数)と、ネットワークNWと、管理サーバ20とを備える。さらに、管理サーバ20は、プロファイルサーバ20Aと、認証サーバ20B(認証装置)とを備える。
以下の説明では、同種の要素を区別する場合には、ユーザ装置10_1、ユーザ装置10_2、ユーザU_1、ユーザU_2のように参照符号を使用する。一方、同種の要素を区別しない場合には、ユーザ装置10、ユーザUのように、参照符号のうちの共通番号または符号だけを使用する。さらに、「_x」が付与された要素は、ユーザU_xに関係する要素であるとする。xは、1からmまでの整数である。
第1実施形態では、ユーザ装置10としてスマートフォン又はタブレット端末等の可搬型の端末装置を想定する。但し、ユーザ装置10としては、任意の情報処理装置を採用することができ、例えば、パーソナルコンピュータ等の端末型の情報機器であってもよい。
プロファイルサーバ20Aは、ユーザ装置10を所持するユーザUのプロファイルを特定する。具体的には、プロファイルサーバ20Aは、ユーザ装置10の位置情報、ユーザ装置10の通信履歴、ユーザ装置10のアドレス帳情報、ユーザ装置10がアクセスしたSNSサーバにおける他者とのつながり、又は、ユーザ装置10の契約情報等を解析することにより、あるユーザ装置10を所持するユーザUのプロファイルとして、ユーザU_xと、他のユーザU_yとの関係を特定する。yは、1以上m以下の整数である。プロファイルサーバ20Aは、ユーザU_xとユーザU_yとの関係について、例えば、ユーザU_xとユーザU_yとが、家族、友人、又は同僚等の関係にあることを特定する。
認証サーバ20Bは、サービスシステム1のサービスをユーザUに提供する。さらに、認証サーバ20Bは、ユーザUのログイン時に、ユーザUを認証する。ユーザUの認証とは、ユーザ装置10_xを操作するユーザUが、ユーザU_x本人であり、他の人の成りすましでないことを確認することである。
図2は、プロファイルサーバ20Aのハードウェア構成を例示するブロック図である。プロファイルサーバ20Aは、処理装置21A、記憶装置22A、通信装置24A、計時装置25A、及びバス29Aを備える。処理装置21A、記憶装置22A、通信装置24A、及び計時装置25Aは、情報を通信するためのバス29Aで接続される。バス29Aは、単一のバスで構成されてもよいし、装置間で異なるバスで構成されてもよい。
処理装置21Aは、プロファイルサーバ20Aの全体を制御するプロセッサであり、例えば単数又は複数のチップで構成される。処理装置21Aは、例えば、周辺装置とのインタフェース、演算装置及びレジスタ等を含む中央処理装置(CPU:Central Processing Unit)で構成される。なお、処理装置21Aの機能の一部又は全部を、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)等のハードウェアで実現してもよい。処理装置21Aは、各種の処理を並列的又は逐次的に実行する。
記憶装置22Aは、処理装置21Aが読取可能な記録媒体であり、処理装置21Aが実行する制御プログラムPRaを含む複数のプログラム、処理装置21Aが使用する各種のデータ、プロファイル管理テーブルTBLa、及び関係管理テーブルTBLbを記憶する。記憶装置22Aは、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)等の記憶回路の1種類以上で構成される。
図3は、プロファイル管理テーブルTBLaの記憶内容の一例を示す説明図である。図3に示されるプロファイル管理テーブルTBLaは、ユーザUごとに、場所、位置情報、セルID(IDentifier)、及び滞在期間を互いに対応付けて記憶する。
場所は、ユーザ装置10の位置情報INFOb_x等の解析により、ユーザUが周期的に滞在する場所の名称である。位置情報は、この場所の座標である。セルIDは、この場所にユーザUが滞在した場合にユーザ装置10の通信先となる基地局に割り当てられたIDである。滞在期間は、この場所に滞在する期間である。
図3に示されるプロファイル管理テーブルTBLaは、プロファイル管理テーブルTBLa_1、プロファイル管理テーブルTBLa_2、プロファイル管理テーブルTBLa_3、…、及び、プロファイル管理テーブルTBLa_mを有する。プロファイル管理テーブルTBLa_xは、ユーザU_xのプロファイル管理テーブルTBLaである。
図3の例では、ユーザU_1は、平日の21時から翌日の7時まで、位置情報が示す位置に滞在したことを示す。平日の夜間にユーザU_1が滞在したことから、プロファイルサーバ20Aは、この滞在した位置が、ユーザU_1の自宅であると推定する。また、ユーザU_1は、平日の9時から17時まで、位置情報が示す位置に滞在したことを示す。平日の昼間にユーザU_1が滞在したことから、この滞在した位置が、ユーザU_1の勤務先であると推定する。また、ユーザU_1は、水曜日の19:00から20:30まで、位置情報が示す位置に滞在したことを示す。プロファイルサーバ20Aは、例えば、位置情報、及び近距離無線通信装置18と心拍計と間の通信を確認したことによって、この滞在した位置が、ユーザU_1が通うフィットネスジムであると推定する。
図4は、関係管理テーブルTBLbの記憶内容の一例を示す説明図である。図4に示される関係管理テーブルTBLbは、ユーザUごとに、関係情報及び装置IDを互いに対応付けて記憶する。図4に示す関係管理テーブルTBLbは、プロファイルサーバ20Aの記憶内容の一例を示す。プロファイルサーバ20Aは、プロファイル管理テーブルTBLaを参照して、関係管理テーブルTBLbを生成し、ユーザ装置10_1~10_mのそれぞれに、ユーザ装置10_1~10_mに対応する関係管理テーブルTBLbを送信する。従って、ユーザ装置10_xは、関係管理テーブルTBLbのうち、自身の関係管理テーブルTBLb_xを記憶する。
関係情報は、対象となるユーザUと、このユーザUと特定の関係を有する者(以下、「特定ユーザ」と称する場合がある)との関係の深さを示す。特定の関係を有する者は、ユーザU_1~U_mのいずれかのうち対象となるユーザUを除いた者である。ユーザUと特定の関係を有する者は、1又は複数存在する。特定の関係には、関係の深い順に、家族、友人、および同僚がある。すなわち、関係情報は関係の深さを示す情報でもある。
装置IDは、特定ユーザが所持するユーザ装置10を一意に識別する識別情報である。装置IDは、例えば、ユーザ装置10に含まれるSIM(Subscriber Identity Module)カードのSIMIDである。以下では、説明を容易にするために、ユーザ装置10の符号を、装置IDとする。例えば、ユーザ装置10_1の装置IDは、「10_1」となる。
図4に示す例では、関係管理テーブルTBLbは、関係管理テーブルTBLb_1、関係管理テーブルTBLb_2、関係管理テーブルTBLb_3、…、及び、関係管理テーブルTBLb_mを含む。関係管理テーブルTBLb_xは、ユーザU_xの関係管理テーブルTBLbである。関係管理テーブルTBLb_1は、ユーザU_1とユーザU_2とが家族の関係にあり、ユーザU_1とユーザU_3とが家族の関係にあり、ユーザU_1とユーザU_4とが同僚の関係にあることを示す。
関係管理テーブルTBLbの生成方法として、プロファイルサーバ20Aは、プロファイル管理テーブルTBLaを参照して、例えば、ユーザU_xについて推定した位置に滞在するユーザUを抽出し、この推定した位置に基づいて、ユーザU_xとの関係を推定する。プロファイルサーバ20Aは、推定した位置に対応する関係を示す情報を記憶する。この情報は、例えば、自宅に対応する関係が家族であり、勤務先に対応する関係が同僚であり、フィットネスジムに対応する関係が友人であることを示す。
図4の例では、プロファイルサーバ20Aは、ユーザU_1の自宅に滞在するユーザU_2及びユーザU_3を、自宅に対応する関係として、家族であると推定する。同様に、プロファイルサーバ20Aは、ユーザU_1の勤務先に滞在するユーザU_4を、勤務先に対応する関係として、同僚であると推定する。
説明を図2に戻す。通信装置24Aは、移動体通信網又はインターネット等のネットワークNWを介して他の装置と通信する機器であり、通信装置24Aは、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード又は通信モジュールとも表記される。通信装置24Aは、ネットワークNWを介して、例えば、認証サーバ20B及びユーザ装置10と通信可能である。
計時装置25Aは、現在の日時を示す日時情報を生成する。具体的には、水晶発振器などで生成されるクロック信号を分周して得たパルス信号をカウントすることによって、日時情報を生成する。
図5は、認証サーバ20Bのハードウェア構成を例示するブロック図である。認証サーバ20Bは、処理装置21B、記憶装置22B(記憶部)、通信装置24B、計時装置25B、及びバス29Bを備える。
処理装置21Bは処理装置21A、記憶装置22Bは記憶装置22A、通信装置24Bは通信装置24A、計時装置25Bは計時装置25A、バス29Bはバス29Aと同様の構成である。但し、記憶装置22Bは、制御プログラムPRbを記憶する点で、記憶装置22Aと相違する。
図6は、ユーザ装置10_xのハードウェア構成を例示するブロック図である。以下では、ユーザ装置10_x(第1端末装置)を例にして説明する。ユーザ装置10_x以外のユーザ装置10も、ユーザ装置10_xと同様の構成である。
ユーザ装置10_xは、処理装置11、記憶装置12、通信装置13、表示装置14、操作装置15、計時装置16、GPS(Global Positioning System)装置17、近距離無線通信装置18、及びバス19を具備するコンピュータシステムにより実現される。処理装置11、記憶装置12、通信装置13、表示装置14、操作装置15、計時装置16、GPS装置17、及び近距離無線通信装置18は、情報を通信するためのバス19で接続される。バス19は、単一のバスで構成されてもよいし、装置間で異なるバスで構成されてもよい。なお、ユーザ装置10_xの各要素は、単数又は複数の機器で構成され、ユーザ装置10_xの一部の要素を省略してもよい。
処理装置11は、ユーザ装置10_xの全体を制御するプロセッサであり、上述したプロファイルサーバ20Aの処理装置21A及び認証サーバ20Bの処理装置21Bと同様である。但し、処理装置11は、通常、処理装置21A及び処理装置21Bより処理能力が低い。
記憶装置12は、処理装置11が読取可能な記録媒体である。記憶装置12は、処理装置11が実行する制御プログラムPRcを含む複数のプログラム、関係管理テーブルTBLbの一部である関係管理テーブルTBLb_x、状態情報INFOa_x、位置情報INFOb_x、及び処理装置11が使用する各種のデータを記憶する。記憶装置12は、上述した記憶装置22Aと同様に、例えば、ROM、EPROM、EEPROM、RAM等の記憶回路の1種類以上で構成される。
通信装置13は、移動体通信網又はインターネット等のネットワークNWを介して他の装置と通信する機器であり、通信装置24Aと同様に構成される。
表示装置14は、処理装置11による制御のもとで各種の画像を表示する。例えば液晶表示パネル、又は有機EL(Electro Luminescence)表示パネル等の各種の表示パネルが表示装置14として好適に利用される。
操作装置15は、ユーザ装置10_xが使用する情報を入力するための機器である。操作装置15は、利用者による操作を受付ける。具体的には、操作装置15は、数字及び文字等の符号を入力するための操作と、表示装置14が表示するアイコンを選択するための操作とを受付ける。例えば、表示装置14の表示面に対する接触を検出するタッチパネルが操作装置15として好適である。なお、利用者が操作可能な複数の操作子を操作装置15が含んでもよい。
計時装置16は、現在の日時を示す日時情報を生成する機器であり、計時装置25Aと同様に構成される。
GPS装置17は複数の衛星からの電波を受信し、受信した電波から位置情報INFOb_xを生成する。位置情報INFOb_xは、ユーザ装置10_xの位置を示す。位置情報INFOb_xは、位置を特定できるのであれば、どのような形式であってもよい。位置情報INFOb_xは、例えば、ユーザ装置10の緯度と経度とを示す。この例では、位置情報INFOb_xはGPS装置17から得られることを例示するが、ユーザ装置10は、どのような方法で位置情報INFOb_xを取得してもよい。例えば、ユーザ装置10の通信先となる基地局に割り当てられたセルIDを取得し、当該セルIDを位置情報INFOb_xとして用いてもよい。さらに、ユーザ装置10が無線LAN(Local Area Network)のアクセスポイントと通信する場合には、アクセスポイントに割り当てられたネットワーク上の識別アドレス(MAC(Media Access Control)アドレス)と実際の住所(位置)とを互いに対応付けたデータベースからアクセスポイントの位置を取得し、当該アクセスポイントの位置を位置情報INFOb_xとして用いてもよい。
近距離無線通信装置18は、近距離無線通信によって他の装置と通信する機器である。近距離無線通信には、例えばBluetooth(登録商標)、ZigBee、又は、WiFi(登録商標)等が挙げられる。他の装置としては、例えば、他のユーザ装置10、又は、ユーザUに装着されており、ユーザUの心拍数を測定する心拍計等である。
ユーザ装置10、及び管理サーバ20の各要素について、「装置」という文言は、回路、デバイス又はユニット等の他の用語に読替えてもよい。また、管理サーバ20の各要素は、単数又は複数の機器で構成され、管理サーバ20の一部の要素を省略してもよい。
[1.1.第1実施形態の機能]
図7は、ユーザ装置10_x及び認証サーバ20Bの機能を示す機能ブロック図である。処理装置11は、記憶装置12から制御プログラムPRcを読み出して実行することによって、送信部31として機能する。処理装置21Bは、記憶装置22Bから制御プログラムPRbを読み出して実行することによって、取得部41、決定部42、認証部43、及びサービス提供部44として機能する。
ユーザU_xがサービスシステム1のサービスにログインするための認証要求を受付けた場合、送信部31は、関係管理テーブルTBLb_xを参照して、状態情報INFOa_xを生成し、生成した状態情報INFOa_xを、認証サーバ20Bに送信する。ユーザ装置10_xは関係管理テーブルTBLb_xをプロファイルサーバ20Aから取得している。プロファイルサーバ20Aは、プロファイル管理テーブルTBLaを参照して、関係管理テーブルTBLbを生成する。
送信部31は、関係管理テーブルTBLb_xを参照して、状態情報INFOa_xを生成する。状態情報INFOa_xは、ユーザ装置10_xが近距離無線通信によって認識したユーザ装置10のうち、ユーザU_xと特定の関係を有する者が所持するユーザ装置10(第2端末装置の一例)の状態を示す。1又は複数の特定ユーザは、関係管理テーブルTBLb_xに登録されたユーザ装置10を所持する。以下では、説明の簡略化のため、特定ユーザの数は2人であり、ユーザU_y、及びU_zであるとする。y及びzは、1以上m以下の互いに異なる整数である。以下の説明では、近距離無線通信によってユーザ装置10を認識できる範囲を、「所定範囲」と称する。ユーザ装置10を認識したとは、ユーザ装置10からの近距離無線の信号を受信でき、かつ、この信号に含まれる装置IDを読み取れることをいう。例えば、近距離無線通信がBluetooth(登録商標)であれば、ユーザ装置10を認識した状態とは、ペアリングが可能な状態である。なお、ユーザ装置10を認識した状態は、必ずしもペアリングが実行され、通信が確立されている状態である必要はなく、装置IDを読み取ることができれば足りる。状態情報INFOa_xは、以下に示す4つの態様がある。
第1の態様における状態情報INFOa_xが示す状態(特定ユーザが所持するユーザ装置10に関する状態)は、特定ユーザが所持し、かつ、所定範囲内に位置するユーザ装置10の数である。以下、特定ユーザが所持し、かつ、所定範囲内に位置するユーザ装置10の数を、「近接装置数」(近接装置(proximity devices)の個数)と称する。特定ユーザが所持し、かつ、所定範囲内に位置するユーザ装置10がない場合、近接装置数は0となる。例えば、第1の態様における状態情報INFOa_xは、ユーザ装置10_y及び10_zのうち、所定範囲内に位置するユーザ装置10の数を近接装置数として記憶する。
第2の態様における状態情報INFOa_xが示す状態は、特定ユーザが所持し、かつ、所定範囲内に位置するユーザ装置10と、ユーザ装置10_xとの距離である。以下、前述のユーザ装置10と、ユーザ装置10_xとの距離を、「近接距離」(proximity/ proximity distance)と称する。送信部31は、例えば、近距離無線通信装置18が特定ユーザのユーザ装置10を検出したときの受信信号強度に基づいて、近接距離を特定する。
第3の態様における状態情報INFOa_xが示す状態は、特定ユーザが所持し、かつ、所定範囲内に位置するユーザ装置10が所定範囲内に位置(滞在)した時間長、即ち、ユーザ装置10が近距離無線通信によって認識可能な範囲に滞在した時間長である。以下、前述のユーザ装置10が所定範囲内に滞在した時間長を、「近接時間」と称する。
第4の態様における状態情報INFOa_xが示す状態は、第1の態様、第2の態様、及び、第3の態様における状態情報INFOa_xが示す状態の組み合わせである。すなわち、第4の態様における状態情報INFOa_xが示す状態は、近接装置数、近接距離、及び、近接時間である。図8を用いて、第4の態様における状態情報INFOa_xの記憶内容の一例を示す。
図8は、第4の態様における状態情報INFOa_xの記憶内容の一例を示す説明図である。図8に示される状態情報INFOa_xは、ユーザU_xと特定の関係を有する者が所持し、かつ、所定範囲内に位置するユーザ装置10ごとに、装置ID、近接距離、及び近接時間を互いに対応付けて記憶する。
装置IDは、特定ユーザが所持し、かつ、ユーザ装置10_xの所定範囲内に位置するユーザ装置10の装置IDである。近接距離は、特定ユーザが所持し、かつ、所定範囲内に位置するユーザ装置10とユーザ装置10_xとの近接距離である。近接時間は、特定ユーザが所持し、かつ、所定範囲内に位置するユーザ装置10の近接時間である。図8に示される状態情報INFOa_xに登録されたレコードの数が近接装置数を示す。
図8に示される状態情報INFOa_xにおいて、特定ユーザが所持し、かつ、ユーザ装置10_xの所定範囲に位置するユーザ装置10の数は、ユーザ装置10_y及び10_zの2つである。状態情報INFOa_xのうち、近接距離は、特定ユーザが所持し、かつ、所定範囲内に位置するユーザ装置10と、ユーザ装置10_xとの距離を示す。図示の例においては、ユーザ装置10_yとユーザ装置10_xとの距離が2mであり、ユーザ装置10_zとユーザ装置10_xとの距離が2.5mである。近接時間は、特定ユーザが所持し、かつ、所定範囲内に位置するユーザ装置10が、当該所定範囲に滞在した時間長を示す。図示の例においては、ユーザ装置10_yの近接時間が10分であり、ユーザ装置10_zの近接時間が1時間である。図8に示されるように、第4の態様における状態情報INFOa_xは、近接装置数が2以上である場合、特定ユーザが所持し、かつ、所定範囲内に位置するユーザ装置10のそれぞれの近接距離及び近接時間を含む。
説明を図7に戻す。認証サーバ20Bの取得部41は、ユーザ装置10_xから、状態情報INFOa_xを取得する。決定部42は、取得部41が取得した状態情報INFOa_xに基づいて、認証強度を決定する。認証強度とは、ユーザ装置10_xを所持するユーザUが、ユーザU_xであることを判定するために用いる認証方法の精度である。認証強度が高い場合、判定精度が高くなり、認証強度が低い場合、判定精度が低くなる。以下の説明では、認証強度は、n段階あり、1段階目の認証強度が最も低く、n段階目の認証強度が最も高いとする。nは、2以上の整数である。具体的な決定方法について、状態情報INFOa_xの態様ごとに説明する。
第1の態様における状態情報INFOa_xにおいて、決定部42は、状態情報INFOa_xが示す近接装置数が多いほど、認証強度を低くする。例えば、以下に示す2つの方法がある。第1の方法において、決定部42は、状態情報INFOa_xが示す近接装置数が所定値未満であれば、認証強度を最高値nに決定し、状態情報INFOa_xが示す近接装置数が所定値以上であれば認証強度を最高値nから1段階減少させる。第2の方法において、決定部42は、複数の所定値を用いて、認証強度を決定する。例えば、決定部42は、状態情報INFOa_xが示す近接装置数が、第1所定値以上、かつ第1所定値より大きい第2所定値未満であれば認証強度を最高値nから1段階減少させ、第2所定値以上であれば、認証強度を最高値nから2段階減少させる。第2の方法において、nは3以上の整数である。
第2の態様における状態情報INFOa_xにおいて、決定部42は、状態情報INFOa_xが示す近接距離が短いほど、認証強度を低くする。例えば、以下に示す2つの方法がある。第1の方法において、決定部42は、状態情報INFOa_xが示す近接距離が所定距離より大きければ、認証強度を最高値nに決定し、状態情報INFOa_xが示す近接距離が所定距離以下であれば認証強度を最高値nから1段階減少させる。第2の方法において、決定部42は、複数の所定距離を用いて、認証強度を決定する。例えば、決定部42は、状態情報INFOa_xが示す近接距離が、第1所定距離以下、かつ第1所定距離より小さい第2所定距離より大きければ認証強度を最高値nから1段階減少させ、第2所定距離以下であれば、認証強度を最高値nから2段階減少させる。第2の方法において、nは3以上の整数である。
第3の態様における状態情報INFOa_xにおいて、決定部42は、状態情報INFOa_xが示す近接時間が長いほど、認証強度を低くする。例えば、以下に示す2つの方法がある。第1の方法において、決定部42は、状態情報INFOa_xが示す近接時間が所定時間より短ければ、認証強度を最高値nに決定し、状態情報INFOa_xが示す近接時間が所定時間以上であれば、認証強度を最高値nから1段階減少させる。第2の方法において、決定部42は、複数の所定時間を用いて、認証強度を決定する。例えば、決定部42は、状態情報INFOa_xが示す近接時間が、第1所定時間以上、かつ第1所定時間より長い第2所定時間より短ければ認証強度を最高値nから1段階減少させ、第2所定時間以上であれば、認証強度を最高値nから2段階減少させる。第2の方法において、nは3以上の整数である。
第4の態様における状態情報INFOa_xにおいて、決定部42は、状態情報INFOa_xが示す近接装置数、近接距離、及び近接時間をパラメータとする評価関数を用いて評価値を算出し、算出された評価値に応じて認証強度を決定する。評価値は、1を最低値とし、認証強度の最高値nを最大値とする。評価値に応じて認証強度を決定する例として、決定部42は、評価値の値を、認証強度として決定する。
評価関数は、近接装置数に関して、第1の態様における状態情報INFOa_xと同様に、1つの所定値を用いてもよいし、複数の所定値を用いてもよい。
以下の説明では、評価関数は、近接装置数を1つの所定値と比較することとして説明する。
さらに、評価関数は、状態情報INFOa_xが示す近接装置数が1以上である場合、状態情報INFOa_xが示す近接距離が短いほど、認証強度を低くする。評価関数は、近接距離に関して、第2の態様における状態情報INFOa_xと同様に、1つの所定距離を用いてもよいし、複数の所定距離を用いてもよい。状態情報INFOa_xが示す近接装置数が2以上である場合、図8に示された状態情報INFOa_xのように、状態情報INFOa_xが示す近接距離は2以上となる。評価関数は、2以上の近接距離の平均値、最大値、又は最小値等のいずれを用いてもよい。
以下の説明では、評価関数は、近接距離を1つの所定距離と比較し、状態情報INFOa_xが示す近接装置数が2以上であれば、2以上の近接距離の最小値を用いることとして説明する。
さらに、評価関数は、状態情報INFOa_xが示す近接装置数が1以上である場合、状態情報INFOa_xが示す近接時間が長いほど、認証強度を低くする。評価関数は、近接時間に関して、第3の態様における状態情報INFOa_xと同様に、1つの所定時間を用いてもよいし、複数の所定時間を用いてもよい。状態情報INFOa_xが示す近接装置数が2以上である場合、図8に示された状態情報INFOa_xのように、状態情報INFOa_xが示す近接時間は2以上となる。評価関数は、2以上の近接時間の平均値、最大値、又は最小値等のいずれを用いてもよい。
以下の説明では、評価関数は、近接時間を1つの所定時間と比較し、状態情報INFOa_xが示す近接装置数が2以上であれば、2以上の近接時間の最大値を用いることとして説明する。
決定部42は、算出された評価値を、ユーザUの認証強度として決定する。以下の記載では、特に説明がない場合、状態情報INFOa_xは、第4の態様であるとする。
以下の記載では、特に説明がない場合、状態情報INFOa_xは、第4の態様であるとする。認証部43は、決定部42が決定した認証強度に応じた認証方法によって、ユーザUを認証する。認証方法は、認証強度に応じて複数存在する。本実施形態では、認証強度の最高値nを3とし、認証強度に応じて、以下の認証方法が実施されるとする。
認証強度が1:ユーザID及びパスワードを用いた認証
認証強度が2:ユーザID及びパスワードを用いた認証、並びに、生体認証
認証強度が3:ユーザID及びパスワードを用いた認証、生体認証、並びに、ワンタイムパスワードを用いた認証
ユーザID及びパスワードを用いた認証において、認証部43は、ユーザ装置10_xから送信されたユーザU_xのユーザID及びパスワードが、記憶装置22Bに予め記憶されたユーザID及びパスワードと一致するかを判断する。なお、ユーザ装置10_xは、ユーザID及びパスワードそのものを認証サーバ20Bに対して送信することも考えられるが、セキュリティ向上のため、ユーザID及び初期値に一方向性関数を適用して得られた値、及び、パスワード及び初期値に一方向性関数を適用して得られた値を送信することが好ましい。さらに、一方向性関数を適用する回数は、1回でもよいが、複数回であることが好ましい。一方向性関数を用いる場合には、認証サーバ20Bの記憶装置22Bには、ユーザID及び初期値を一方向性関数に代入して得られた値、及び、パスワード及び初期値を一方向性関数に代入して得られた値が予め記憶される。初期値は、ユーザUごとに互いに異なる数値であることが好ましい。一方向性関数は、例えば、SHA(Secure Hash Algorithm)-256、又は、SHA-512である。以下では、説明の簡略化のため、単に、ユーザID及びパスワードを送信するものとする。
生体認証において、認証部43は、ユーザ装置10_xから送信されたユーザU_xの生体情報と、記憶装置22Bに予め記憶された生体情報とが一致するかを判断する。生体情報は、例えば、指紋を示す画像情報、又は、虹彩を示す画像情報である。なお、ユーザ装置10_xは、生体情報そのものを認証サーバ20Bに対して送信することも考えられるが、セキュリティ向上のため、生体情報及び初期値に一方向性関数を適用して得られた値を送信することが好ましい。さらに、一方向性関数を適用する回数は、1回でもよいが、複数回であることが好ましい。初期値は、ユーザUごとに互いに異なる値であることが好ましい。以下では、説明の簡略化のため、単に、生体情報を送信するものとする。
ワンタイムパスワードを用いた認証において、認証部43は、ユーザ装置10_xから送信されたワンタイムパスワードが、認証部43が生成したワンタイムパスワードと一致するかを判断する。ワンタイムパスワードを用いた認証を実現する方法は、下記に示す2つの方法がある。
第1の方法において、認証部43は、認証部43が生成したワンタイムパスワードを、記憶装置22Bに予め記憶された、ユーザU_xのメールアドレスに送信する。ユーザU_xが認証部43からのメールを閲覧し、ユーザ装置10_xは、ユーザU_xの操作によって、ワンタイムパスワードの入力を受付け、認証サーバ20Bに送信する。
第2の方法において、ユーザ装置10_xは、認証部43がワンタイムパスワードを生成する同一のアルゴリズム、及び、前述のアルゴリズムに対する同一のパラメータ値に基づいてワンタイムパスワードを生成し、認証サーバ20Bに送信する。アルゴリズムが同一であり、かつ、パラメータ値が同一であれば、生成されるワンタイムパスワードは同一の値となる。パラメータの種類としては、例えば、初期値、及び、現在日時等がある。
認証部43は、認証強度に応じた認証方法によって、ユーザU_xの認証を実施し、認証に成功したか、認証に失敗したかを判定する。
サービス提供部44は、認証部43が認証に成功したと判定した場合に、サービスシステム1のサービスを提供する。
[1.2.認証強度の変化の一例]
より具体的な説明として、図9及び図10を用いて、状態情報INFOa_xの変化に応じた認証強度の変化の一例を示す。図9及び図10において、ユーザ装置10_xが近距離無線通信により認識可能な範囲である所定範囲を、ユーザ装置10_xから4mの範囲とする。さらに、評価関数は、状態情報INFOa_xが示す近接装置数が所定値(ここでは、所定値=2個とする)以上であれば、評価値(ひいては、認証強度)を1段階減少させるとする。さらに、評価関数は、状態情報INFOa_xが示す近接装置数が所定値「2」以上である場合、2以上の近接距離の最小値を用いる。この最小値又は1つの近接距離が所定距離(ここでは、所定距離=2mとする)以下であれば、評価値(ひいては、認証強度)を1段階減少させるとする。さらに、評価関数は、状態情報INFOa_xが示す近接装置数が2以上である場合、2以上の近接時間の最大値を用いるとし、この最大値又は1つの近接時間が所定時間(ここでは、所定時間=1時間とする)以上であれば、評価値(ひいては、認証強度)を1段階減少させるとする。
図9は、経過時刻と近接距離との関係を示す説明図である。図10は、経過時刻と認証強度との関係を示す説明図である。図9に示されるグラフg1は、経過時刻と近接距離との関係を示す。グラフg1の横軸は、経過時刻である。グラフg1の縦軸は、近接距離を示す。グラフg1内の近接距離d_yは、ユーザ装置10_yの近接距離を示す。グラフg1内の近接距離d_zは、ユーザ装置10_zの近接距離を示す。
近接距離d_yが示すように、ユーザ装置10_yは、時刻t1から時刻t4まで、ユーザ装置10_xから2m離れており、時刻t4から時刻t6まで0.5m離れている。さらに、ユーザ装置10_yは、時刻t0から時刻t1まで、及び、時刻t6以降では、ユーザ装置10_xの所定範囲内に位置しない。さらに、時刻t5は、時刻t1から1時間が経過した時刻である。
近接距離d_zが示すように、ユーザ装置10_zは、時刻t2から時刻t3まで、ユーザ装置10_xから3m離れている。さらに、ユーザ装置10_zは、時刻t0から時刻t2まで、及び、時刻t3以降では、ユーザ装置10_xの所定範囲内に位置しない。
図10に示されるグラフg2は、経過時刻と認証強度との関係を示す。グラフg2の横軸は、経過時刻である。グラフg2の縦軸は、認証強度を示す。
時刻t0から時刻t1までにおいて、近接装置数が0である。この場合、決定部42は、認証強度を最大値の3に決定する。時刻t1から時刻t2までにおいて、近接装置数は1であるため所定値「2」より小さく、近接距離が1mより大きく、かつ、近接時間も所定時間「1時間」より短いため、決定部42は、認証強度を最大値の3に決定する。
時刻t2から時刻t3までにおいて、近接装置数が2であるため、所定値「2」以上である。従って、決定部42は、認証強度を最大値の3から1段階減少させて、2に決定する。時刻t3から時刻t4までにおいて、近接装置数が1に戻ったため、近接装置数が所定値「2」を下回る。従って、決定部42は、認証強度を最大値の3に決定する。
時刻t4から時刻t5までにおいて、近接距離が0.5mであるから、所定距離「1m」以下である。従って、決定部42は、認証強度を最大値の3から1段階減少させて、2に決定する。時刻t5から時刻t6までにおいても、近接距離が0.5mであるから、所定距離「1m」以下である。さらには近接時間が所定時間「1時間」を超えたため、決定部42は、認証強度を2から1段階減少させて、1に決定する。時刻t6以降においては、近接装置数が0であるため、決定部42は、認証強度を最大値の3に決定する。
図示の例では、ユーザ装置10_yは、時刻t6以降においてユーザ装置10_xの所定範囲内に位置しないため、近接装置数が0となった。仮に、時刻t6において、ユーザ装置10_yが所定距離「1m」より離れており、かつ、ユーザ装置10_xの所定範囲(4m)内に位置した場合、近接装置数は1となる。この場合、近接時間が1時間を超えているが、近接距離が所定距離「1m」より大きい。従って、時刻t6において、認証強度は、時刻t5から時刻t6までの認証強度から1段階上昇し、2となる。
[1.3.第1実施形態におけるフローチャート]
次に、サービスシステム1が実施する処理について、図11~図14に示されるフローチャートを用いて説明する。図11~図14に示すフローチャートにおいて、破線の矢印は、ユーザ装置10_xと認証サーバ20Bとの間の通信を示す。図11~図14の説明において、単に処理装置11と記載した場合、ユーザ装置10_xの処理装置11を示す。
図11は、サービスシステム1が実行する処理の流れを示すフローチャートである。処理装置11は、サービスシステム1のサービスへの認証要求が発生したか否かを判断する(S1)。サービスシステム1のサービスへの認証要求が発生していない場合(S1:No)、処理装置11は、ステップS1の処理を再び実施する。
一方、サービスシステム1のサービスへの認証要求が発生した場合(S1:Yes)、処理装置11は、関係管理テーブルTBLb_xを参照して、状態情報INFOa_xを生成する(S2)。次に、処理装置11は、状態情報INFOa_xを、認証サーバ20Bに送信する(S3)。
処理装置21Bは、ユーザ装置10_xから、状態情報INFOa_xを取得する(S4)。次に、処理装置21Bは、状態情報INFOa_xが示す近接装置数、近接距離、及び、近接時間をパラメータとして代入した評価関数を用いて評価値を算出する評価値算出処理を実施する(S5)。
図12は、評価値算出処理のフローチャートである。処理装置21Bは、評価値を認証強度の最高値nに設定する(S11)。次に、処理装置21Bは、パラメータとして代入された近接装置数が1以上であるか否かを判断する(S12)。近接装置数が1以上である場合(S12:Yes)、処理装置21Bは、近接装置数が所定値(2個)以上であるか否かを判断する(S13)。近接装置数が所定値以上である場合(S13:Yes)、処理装置21Bは、評価値が最低値か否かを判断する(S14)。評価値が最低値でない場合(S14:No)、処理装置21Bは、評価値を1段階減少させる(S15)。
ステップS15の処理が終了した場合、近接装置数が所定値未満である場合(S13:No)、又は、評価値が最低値である場合(S14:Yes)、のいずれかの場合、処理装置21Bは、パラメータとして代入された近接距離が所定距離(1m)以下か否かを判断する(S16)。近接距離が所定距離以下である場合(S16:Yes)、処理装置21Bは、評価値が最低値か否かを判断する(S17)。評価値が最低値でない場合(S17:No)、処理装置21Bは、評価値を1段階減少させる(S18)。
ステップS18の処理が終了した場合、近接距離が所定距離より大きい場合(S16:No)、又は、評価値が最低値である場合(S17:Yes)、のいずれかの場合、処理装置21Bは、パラメータとして代入された近接時間が所定時間(1時間)以上か否かを判断する(S19)。近接時間が所定時間以上である場合(S19:Yes)、処理装置21Bは、評価値が最低値か否かを判断する(S20)。評価値が最低値でない場合(S20:No)、処理装置21Bは、評価値を1段階減少させる(S21)。
ステップS21の処理が終了した場合、近接時間が所定時間未満である場合(S19:No)、評価値が最低値である場合(S20:Yes)、又は、近接装置数が0である場合(S12:No)、のいずれかの場合、処理装置21Bは、評価値を出力する(S22)。ステップS22の処理終了後、処理装置21Bは、図12に示す一連の処理を終了し、図11に示したステップS6の処理を実行する。
説明を図11に戻す。
処理装置21Bは、認証強度を、出力された評価値に応じた認証強度に決定する(S6)。次に、処理装置11と処理装置21Bとは、協働して認証処理を実施する(S7)。
図13及び図14は、認証処理のフローチャートである。処理装置21Bは、ユーザID及びパスワードの送信要求をユーザ装置10_xに送信する(S31)。送信要求を受信すると、処理装置11は、ユーザU_xの操作によって、ユーザID及びパスワードの入力を受付ける(S32)。次に、処理装置11は、入力されたユーザID及びパスワードを、認証サーバ20Bに送信する(S33)。
ユーザID及びパスワードを受信すると、処理装置21Bは、記憶装置22Bに予め記憶されたユーザID及びパスワードを参照して、受信したユーザID及びパスワードが正しいか否かを判断する(S34)。受信したユーザID及びパスワードが正しい場合(S34:Yes)、処理装置21Bは、認証強度が2以上か否かを判断する(S35)。認証強度が2以上である場合(S35:Yes)、処理装置21Bは、生体情報の送信要求をユーザ装置10_xに送信する(S36)。
生体情報の送信要求を受信すると、処理装置11は、ユーザU_xの操作によって、生体情報を取得する(S37)。次に、処理装置11は、取得した生体情報を、認証サーバ20Bに送信する(S38)。
生体情報を受信すると、処理装置21Bは、記憶装置22Bに予め記憶された生体情報を参照して、受信した生体情報が正しいか否かを判断する(S39)。受付けた生体情報が正しい場合(S39:Yes)、処理装置21Bは、認証強度が3か否かを判断する(S41)。認証強度が3である場合(S41:Yes)、処理装置21Bは、ワンタイムパスワードの送信要求を、ユーザ装置10_xに送信する(S42)。
ワンタイムパスワードの送信要求を受信すると、処理装置11は、ユーザU_xの操作によって、ワンタイムパスワードの入力を受付ける(S43)。次に、処理装置11は、入力されたワンタイムパスワードを、認証サーバ20Bに送信する(S44)。
ワンタイムパスワードを受信すると、処理装置21Bは、認証部43が生成したワンタイムパスワードを参照して、受信したワンタイムパスワードが正しいか否かを判断する(S45)。
以下に示す3つの態様のいずれかである場合に、処理装置21Bは、ユーザU_xの認証に成功したと判定する(S46)。第1の態様は、受付けたユーザID及びパスワードが正しく(S34:Yes)、かつ、認証強度が2未満である場合に(S35:No)、認証に成功したと判定する。第2の態様は、受付けたユーザID及びパスワードが正しく(S34:Yes)、受付けた生体情報が正しく(S39:Yes)、かつ、認証強度が2以上(S35:Yes)3未満の場合に(S41:No)、認証に成功したと判定する。第3の態様は、受付けたユーザID及びパスワードが正しく(S34:Yes)、受付けた生体情報が正しく(S39:Yes)、受付けたワンタイムパスワードが正しく(S45:Yes)、かつ、認証強度が3の場合に(S41:Yes)、認証に成功したと判定する。
一方、以下に示す3つの態様のいずれかである場合に、処理装置21Bは、ユーザU_xの認証に失敗したと判定する(S47)。第1の態様は、受付けたユーザID及びパスワードの少なくともいずれかが正しくない場合(S34:No)である。第2の態様は、受付けたユーザID及びパスワードが正しい(S34:Yes)が、認証強度が2以上(S35:Yes)であり、かつ、受付けた生体情報が正しくない場合(S39:No)である。第3の態様は、受付けたユーザID及びパスワードが正しく(S34:Yes)、かつ、受付けた生体情報が正しい(S39:Yes)が、認証強度が3(S41:Yes)であり、かつ、受付けたワンタイムパスワードが正しくない場合(S45:No)である。
ステップS46の処理終了後、又は、ステップS47の処理終了後、処理装置21Bは、認証結果をユーザ装置10_xに送信する(S48)。ステップS48の処理終了後、処理装置21Bは、認証処理を終了し、図11に示すステップS8の処理を実行する。ユーザ装置10_xは、認証結果を表示装置14に表示する(S49)。ステップS49の処理終了後、ユーザ装置10_xは、認証処理を終了する。その後、認証結果が成功を示す場合には、認証サーバ20Bから提供されたサービスに関する処理を実行し、認証が失敗を示す場合に、図11に示された一連の処理を終了する。
説明を図11に戻す。
処理装置21Bは、認証に成功したか否かを判断する(S8)。認証に成功した場合(S8:Yes)、処理装置21Bは、ユーザ装置10_xにサービスを提供する(S9)。ステップS9の処理終了後、又は、処理認証に成功していない場合(S8:No)、処理装置21Bは、図11に示された一連の処理を終了する。
本実施形態の認証サーバ20Bは、状態情報INFOa_xを取得し、状態情報INFOa_xに基づいて、認証強度を決定し、決定した認証強度に応じた認証方法によってユーザUを認証する。状態情報INFOa_xは、ユーザU_xが所持するユーザ装置10_xが近距離無線通信によって認識しているユーザ装置10のうち、ユーザU_xと特定の関係を有する特定ユーザが所持するユーザ装置10の状態である。状態情報INFOa_xは、ユーザ装置10_xを所持している人物が正当なユーザU_xである確度を示している。具体的には、状態情報INFOa_xには、ユーザ装置10の数、ユーザ装置10_xまでの距離、ユーザ装置10が近距離無線通信によって認識可能な範囲に滞在した時間長が含まれる。従って、状態情報INFOa_xは、ユーザ装置10_xを所持するユーザUを特定ユーザがどの程度信頼しているかの度合いを示すと言える。従って、本実施形態によれば、セキュリティを確保しつつ、ユーザ装置10_xを所持するユーザUが特定ユーザに信頼されている度合いに応じた、適切な強度の認証方法によって、ユーザU_xを認証できる。状態情報INFOa_xが示す確度が高い場合には、認証強度を低減させることにより、認証にかかるユーザU_xの操作負担が低減し、利便性が向上する。
また、本実施形態において、第1の態様における状態情報INFOa_xが示す状態は、ユーザ装置10_xと近距離無線通信によって認識されたユーザ装置10のうち、特定ユーザが所持するユーザ装置10の数である。例えば、ユーザ装置10_xの所定範囲内に特定ユーザが多い程、ユーザ装置10_xを所持するユーザUがユーザU_x本人である可能性が高くなるため、認証強度を減少させて利便性を向上させても、セキュリティを確保できる。より具体的には、ユーザ装置10_xの所定範囲内に特定ユーザが1人のみいる場合、ユーザ装置10_xを不正に入手した第三者は、特定ユーザの背中の方向等、この特定ユーザの死角に位置することにより、特定ユーザの近距離範囲内に近づくことが可能である。これに対し、ユーザ装置10_xの所定範囲内に特定ユーザが増える程、死角が減り、第三者が近づくことが困難になる。従って、ユーザ装置10_xの所定範囲内にユーザU_xの特定ユーザが所定数存在する場合には、ユーザ装置10_xのユーザUが真のユーザU_xである可能性が高くなるため、認証強度を減少させて利便性を向上させても、セキュリティを確保できる。
また、本実施形態において、第2の態様における状態情報INFOa_xが示す近接距離は、ユーザ装置10_xと、特定ユーザが所持し、かつ、所定範囲内に位置するユーザ装置10との間の距離である。例えば、近接距離が近いほど、ユーザ装置10_xを所持するユーザUが真のユーザU_xである可能性が高くなるため、認証強度を減少させて利便性を向上させても、セキュリティを確保できる。
また、本実施形態において、第3の態様における状態情報INFOa_xが示す近接時間は、特定ユーザが所持するユーザ装置10が近距離無線通信によって認識可能な範囲に滞在した時間長である。例えば、近接時間が長いほど、ユーザ装置10_xを所持するユーザUが真のユーザU_xである可能性が高くなるため、認証強度を減少させて利便性を向上させても、セキュリティを確保できる。
また、本実施形態において、第4の態様における状態情報INFOa_xは、近接装置数、近接距離、及び、近接時間である。そして、決定部42は、近接装置数、近接距離、及び、近接時間をパラメータとする評価関数を用いて評価値を算出し、算出された評価値に応じて認証強度を決定する。近接装置数が多いほど、近接距離が短いほど、及び、近接時間が長いほど、ユーザ装置10_xのユーザUが真のユーザU_xである可能性が高くなるため、認証強度を減少させて利便性を向上させても、セキュリティを確保できる。
[2.第2実施形態]
上述した第1実施形態において、決定部42は、状態情報INFOa_xに基づいて、認証強度を決定した。これに対して、第2実施形態において、記憶装置22Bが、プロファイル管理テーブルTBLaを記憶し、送信部31は、状態情報INFOa_xと、位置情報INFOb_xとを認証サーバ20Bに送信し、決定部42は、位置情報INFOb_xと状態情報INFOa_xとに基づいて、認証強度を決定する。以下、第2実施形態と第1実施形態の相違点について説明する。
図15は、第2実施形態に係る認証サーバ20Bのハードウェア構成を例示するブロック図である。記憶装置22Bは、プロファイル管理テーブルTBLa、及び制御プログラムPRbを含む複数のプログラムを記憶する。認証サーバ20Bはプロファイル管理テーブルTBLaをプロファイルサーバ20Aから取得している。プロファイルサーバ20Aは、プロファイル管理テーブルTBLaを、認証サーバ20Bに送信する。
図16は、第2実施形態に係るユーザ装置10_x及び認証サーバ20Bの機能を示す機能ブロック図である。第2実施形態に係る送信部31は、ユーザU_xがサービスシステム1のサービスにログインするための認証要求を受付けた場合、関係管理テーブルTBLb_xを参照して、状態情報INFOa_xを生成する。送信部31は、認証要求を受付けた時点においてGPS装置17が生成した位置情報INFOb_xと、状態情報INFOa_xとを、処理装置21Bに送信する。
第2実施形態に係る取得部41は、ユーザ装置10_xから、位置情報INFOb_xと状態情報INFOa_xとを取得する。第2実施形態に係る決定部42は、位置情報INFOb_xが示す位置と所定位置との比較結果と、状態情報INFOa_xとに基づいて、認証強度を決定する。所定位置は、プロファイル管理テーブルTBLa_xの位置情報が示す位置である。決定部42は、例えば、位置情報INFOb_xが示す位置と、プロファイル管理テーブルTBLa_xの位置情報が示す位置との間の距離が所定距離以内であれば、認証強度を現在の認証強度から1段階減少させる。
本実施形態の認証サーバ20Bにおいて、取得部41は、位置情報INFOb_xと、状態情報INFOa_xとを取得する。決定部42は、位置情報INFOb_xが示す位置と所定位置との比較結果、及び、状態情報INFOa_xに基づいて、認証強度を決定する。位置情報INFOb_xが示す位置が、ユーザU_xの自宅又はユーザU_xの勤務先等の所定位置から所定範囲であれば、ユーザ装置10_xを所持するユーザUがユーザU_x本人である可能性が高くなるため、認証強度を減少させて利便性を向上させても、セキュリティを確保できる。
[3.第3実施形態]
上述した第1実施形態において、決定部42は、状態情報INFOa_xに基づいて、認証強度を決定した。これに対して、第3実施形態において、記憶装置22Bが関係管理テーブルTBLbを記憶する。そして、処理装置21Bは、関係管理テーブルTBLb_xを参照して、状態情報INFOa_xに含まれる装置ID(第2端末装置を識別する識別情報)と対応する関係情報を特定し、特定した関係情報と状態情報INFOa_xとに基づいて、認証強度を決定する。以下、第3実施形態と第1実施形態の相違点について説明する。
図17は、第3実施形態に係る認証サーバ20Bのハードウェア構成を例示するブロック図である。記憶装置22Bは、関係管理テーブルTBLb、及び制御プログラムPRbを含む複数のプログラムを記憶する。認証サーバ20Bは関係管理テーブルTBLbをプロファイルサーバ20Aから取得している。プロファイルサーバ20Aは、関係管理テーブルTBLbを、認証サーバ20Bに送信する。
図18は、第3実施形態に係るユーザ装置10_x及び認証サーバ20Bの機能を示す機能ブロック図である。認証サーバ20Bの処理装置21Bは、記憶装置22Bから制御プログラムPRbを読み取り実行することによって、取得部41、決定部42、認証部43、サービス提供部44、及び、特定部45として機能する。
第3実施形態における状態情報INFOa_xは、特定ユーザが所持し、かつ所定範囲内に位置するユーザ装置10の装置IDを含む。
特定部45は、関係管理テーブルTBLb_xを参照して、取得部41が取得した状態情報INFOa_xに含まれる装置IDと対応する関係情報を特定する。例えば、状態情報INFOa_xに含まれる装置IDが、「10_y」であれば、特定部45は、関係管理テーブルTBLb_xを参照して、「10_y」に対応する関係情報を特定する。特定した関係情報は、ユーザU_yと、ユーザU_xとの関係の深さを示す。
決定部42は、特定部45が特定した関係情報と、状態情報INFOa_xとに基づいて、認証強度を決定する。例えば、決定部42は、関係情報が示す深さが深いほど、認証強度を低く決定する。より具体的には、決定部42は、関係情報が家族を示す場合、認証強度を2段階減少させ、関係情報が友人を示す場合、認証強度を1段階減少させる。
本実施形態の認証サーバ20Bにおいて、記憶装置22Bが関係管理テーブルTBLbを記憶する。特定部45が、関係管理テーブルTBLb_xを参照して、状態情報INFOa_xに含まれる装置IDと対応する関係情報を特定する。決定部42は、特定部45が特定した関係情報と状態情報INFOa_xとに基づいて、認証強度を決定する。特定した関係情報が示す関係が深いほど、ユーザ装置10_xを所持するユーザUと、状態情報INFOa_xに含まれる装置IDのユーザ装置10を所持するユーザUとは、長い時間の交流があったとみなせる。長い時間の交流があるため、ユーザ装置10_xを所持するユーザUが、ユーザ装置10_xを不正に入手した第三者であることは発生し難い状況である。従って、特定した関係情報が示す関係が深いほど、ユーザ装置10_xを所持するユーザUが真のユーザU_xである可能性が高くなるため、認証強度を減少させて利便性を向上させても、セキュリティを確保できる。
[4.変形例]
本発明は、以上に例示した各実施形態に限定されない。具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2以上の態様を併合してもよい。
(1)上述した第1実施形態において、決定部42は、第1の態様における状態情報INFOa_xが示す近接装置数が多いほど、認証強度を低くすることを説明したが、本発明はこれに限定されるものではない。例えば、ユーザ装置10_xの所定範囲内に、特定ユーザが所持するユーザ装置10が多く位置し、他のユーザUが所持するユーザ装置10も多く位置する場合、多くの特定ユーザ及び特定ユーザ以外の人の陰に第三者が隠れることが可能になる。従って、決定部42は、(状態情報INFOa_xが示す近接装置数/ユーザ装置10_xの所定範囲内のユーザ装置10の数)が大きいほど、認証強度を低く決定してもよい。
(2)上述した第1実施形態において、決定部42は、第2の態様における状態情報INFOa_xが示す近接距離が短いほど、認証強度を低くすることを説明したが、本発明はこれに限定されるものではない。例えば、第三者が、ユーザ装置10_xと、特定ユーザが所持するユーザ装置10_yとを不正に入手することが考えられる。この場合、ひとりの第三者が、ユーザ装置10_x及びユーザ装置10_yを所持する。第三者がユーザ装置10_x及び10_yを所持する場合のユーザ装置10_xとユーザ装置10_yとの間の距離は、ユーザU_xがユーザ装置10_xを所持し、ユーザU_yがユーザ装置10_yを所持する場合と比較して、短くなる傾向にある。従って、決定部42は、状態情報INFOa_xが示す近接距離が、2人がそれぞれユーザ装置10を所持するにしては短い所定距離以下である場合、認証強度を高くしてもよい。
(3)上述した第1実施形態において、決定部42は、第3の態様における状態情報INFOa_xが示す近接時間が長いほど、認証強度を低くすることを説明したが、本発明はこれに限定されるものではない。例えば、第三者が、ユーザ装置10_xと、特定ユーザが所持するユーザ装置10_yとを不正に入手することが考えられる。この場合、第三者が、ユーザ装置10_x及びユーザ装置10_yを1日中所持することも可能である。一方、一般的なユーザUは、平日の昼間には勤務先又は学校に位置し、平日の夜間には自宅に位置する可能性が高い。従って、平日の昼間に、ユーザ装置10_xの所定範囲内に位置する特定ユーザと、平日の夜間にユーザ装置10_xの所定範囲内に位置する特定ユーザとは、互いに異なる可能性が高い。そこで、決定部42は、状態情報INFOa_xが示す近接時間が1時間以上12時間未満である場合、認証強度を低くし、近接時間が12時間以上であれば、認証強度を高くしてもよい。
(4)上述した各実施形態において、認証処理を実行する契機は、ログイン時であったが、本発明はこれに限定されるものではない。例えば、サービスシステム1がインターネットバンキングサービスを提供する場合、認証サーバ20B及び、振込み時に認証処理を実施してもよい。また、サービスシステム1が通信販売サービスを提供する場合、商品の購入時に認証処理を実施してもよい。
(5)上述した各実施形態において、プロファイルサーバ20Aが、プロファイル管理テーブルTBLaを生成したが、本発明はこれに限定されるものではない。例えば、ユーザ装置10が、ユーザUの登録操作によって、プロファイル管理テーブルTBLa_xを生成してもよい。
(6)上述した各実施形態において、管理サーバ20は、プロファイルサーバ20Aと認証サーバ20Bとによって構成されたが、本発明はこれに限定されるものではなく、これらが、1個のサーバで構成されてもよい。又は、処理装置21Bがサービス提供部44を実現せず、プロファイルサーバ20A及び認証サーバ20Bとは異なるサーバの処理装置が、サービス提供部44を実現してもよい。
(7)上述した各実施形態において、プロファイルサーバ20Aが、プロファイル管理テーブルTBLaを生成したが、本発明はこれに限定されるものではない。例えば、ユーザ装置10が、ユーザUの登録操作によって、プロファイル管理テーブルTBLa_xを生成してもよい。
(8)上述した各実施形態において、認証サーバ20Bがユーザ装置10_xを所持するユーザUを認証したが、本発明はこれに限定されるものではない。例えば、ユーザ装置10_xが、ユーザ装置10_xを所持するユーザUを認証してもよい。ユーザ装置10_xが、ユーザ装置10_xを所持するユーザUを認証する場合とは、例えば、ユーザ装置10_xのロックを解除する場合、又は、ユーザ装置10_xのアプリを起動する場合である。
(9)上述した各実施形態において、認証強度の最大値を3としたが、本発明はこれに限定されるものではない。例えば、認証強度の最大値は2でもよいし、3より大きくてもよい。また、特定ユーザ(ユーザ装置10_xと特定の関係を有する者)は、家族、友人、または同僚であるとしたが、これに限られない。また、関係の深度を数値(例えば、「1」~「5」の5段階)で表わした関係指標(深度指標)を関係管理テーブルTBLb_xの関係情報として記憶してもよい。
(10)上述した各実施形態では、ユーザID及びパスワードを用いた認証、生体認証、並びに、ワンタイムパスワードを用いた認証を用いたが、本発明はこれに限定されるものではない。例えば、他の認証として、ユーザUの生年月日又はユーザUの母親の旧姓等、ユーザUのみが知る情報を用いた認証を用いてもよい。
(11)上述した各実施形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及び/又はソフトウェアの任意の組み合わせによって実現される。また、各機能ブロックの実現手段は特に限定されない。すなわち、各機能ブロックは、物理的及び/又は論理的に結合した1つの装置により実現されてもよいし、物理的及び/又は論理的に分離した2つ以上の装置を直接的及び/又は間接的に(例えば、有線及び/又は無線)で接続し、これら複数の装置により実現されてもよい。
(12)上述した各実施形態において、情報の通知は、本明細書で説明した態様/実施形態に限られず、他の方法で行われてもよい。例えば、情報の通知は、物理レイヤシグナリング(例えば、DCI(Downlink Control Information)、UCI(Uplink Control Information))、上位レイヤシグナリング(例えば、RRC(Radio Resource Control)シグナリング、MAC(Medium Access Control)シグナリング、報知情報(MIB(Master Information Block)、SIB(System Information Block)))、その他の信号又はこれらの組み合わせによって実施されてもよい。また、RRCシグナリングは、RRCメッセージと呼ばれてもよく、例えば、RRC接続セットアップ(RRC Connection Setup)メッセージ、RRC接続再構成(RRC Connection Reconfiguration)メッセージなどであってもよい。
(13)上述した各実施形態における処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本明細書で説明した方法については、例示的な順序で様々なステップの要素を提示しており、提示した特定の順序に限定されない。
(14)上述した各実施形態において、基地局によって行われるとした特定動作(例えば、基地局による位置情報の特定)は、場合によってはその上位ノード(upper node)によって行われることもある。基地局を有する1つ又は複数のネットワークノード(network nodes)からなるネットワークにおいて、端末との通信のために行われる様々な動作は、基地局及び/又は基地局以外の他のネットワークノード(例えば、MME又はS-GWなどが考えられるが、これらに限られない)によって行われ得ることは明らかである。上記において基地局以外の他のネットワークノードが1つである場合を例示したが、複数の他のネットワークノードの組み合わせ(例えば、MME及びS-GW)であってもよい。
(15)上述した各実施形態において、情報等は、上位レイヤ(又は下位レイヤ)から下位レイヤ(又は上位レイヤ)へ出力され得る。複数のネットワークノードを介して入出力されてもよい。
(16)上述した各実施形態において、入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルで管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
(17)上述した各実施形態において、判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:true又はfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
(18)上述した各実施形態では、携帯電話機又はスマートフォン等の可搬型の情報処理装置をユーザ装置10として例示したが、ユーザ装置10の具体的な形態は任意であり、前述の各形態の例示には限定されない。例えば、可搬型又は据置型のパーソナルコンピュータをユーザ装置10として利用してもよい。
(19)上述した各実施形態では、記憶装置12は、処理装置11が読取可能な記録媒体であり、ROM及びRAMなどを例示したが、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリデバイス(例えば、カード、スティック、キードライブ)、CD-ROM(Compact Disc-ROM)、レジスタ、リムーバブルディスク、ハードディスク、フロッピー(登録商標)ディスク、磁気ストリップ、データベース、サーバその他の適切な記憶媒体である。また、プログラムは、ネットワークNWから送信されても良い。また、プログラムは、電気通信回線を介して通信網から送信されても良い。記憶装置22A及び記憶装置22Bも、記憶装置12と同様である。
(20)上述した各実施形態は、LTE(Long Term Evolution)、LTE-A(LTE-Advanced)、SUPER 3G、IMT-Advanced、4G、5G、FRA(Future Radio Access)、W-CDMA(登録商標)、GSM(登録商標)、CDMA2000、UMB(Ultra Mobile Broadband)、IEEE 802.11(Wi-Fi)、IEEE 802.16(WiMAX)、IEEE 802.20、UWB(Ultra-WideBand)、Bluetooth(登録商標)、その他の適切なシステムを利用するシステム及び/又はこれらに基づいて拡張された次世代システムに適用されてもよい。
(21)上述した各実施形態において、説明した情報及び信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上述の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
なお、本明細書で説明した用語及び/又は本明細書の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。
(22)図7、図16、及び図18に例示された各機能は、ハードウェア及びソフトウェアの任意の組合せによって実現される。また、各機能は、単体の装置によって実現されてもよいし、相互に別体で構成された2個以上の装置によって実現されてもよい。
(23)上述した各実施形態で例示したプログラムは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード又はハードウェア記述言語と呼ばれるか、他の名称によって呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順又は機能等を意味するよう広く解釈されるべきである。
また、ソフトウェア、命令などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア及びデジタル加入者回線(DSL)などの有線技術及び/又は赤外線、無線及びマイクロ波などの無線技術を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び/又は無線技術は、伝送媒体の定義内に含まれる。
(24)上述した各実施形態において、「システム」及び「ネットワーク」という用語は、互換的に使用される。
(25)上述した各実施形態において、情報、パラメータなどは、絶対値で表されてもよいし、所定の値からの相対値で表されてもよいし、対応する別の情報で表されてもよい。例えば、無線リソースはインデックスで指示されるものであってもよい。
(26)上述したパラメータに使用する名称はいかなる点においても限定的なものではない。さらに、これらのパラメータを使用する数式等は、本明細書で明示的に開示したものと異なる場合もある。様々なチャネル(例えば、PUCCH、PDCCHなど)及び情報要素(例えば、TPCなど)は、あらゆる好適な名称によって識別できるので、これらの様々なチャネル及び情報要素に割り当てている様々な名称は、いかなる点においても限定的なものではない。
(27)上述した各実施形態において、基地局は、1つ又は複数(例えば、3つ)の(セクタとも呼ばれる)セルを収容できる。基地局が複数のセルを収容する場合、基地局のカバレッジエリア全体は複数のより小さいエリアに区分でき、各々のより小さいエリアは、基地局サブシステム(例えば、屋内用の小型基地局RRH:Remote Radio Head)によって通信サービスを提供することもできる。「セル」又は「セクタ」という用語は、このカバレッジにおいて通信サービスを行う基地局、及び/又は基地局サブシステムのカバレッジエリアの一部又は全体を指す。さらに、「基地局」「eNB」、「セル」、及び「セクタ」という用語は、本明細書では互換的に使用され得る。基地局は、固定局(fixed station)、NodeB、eNodeB(eNB)、アクセスポイント(access point)、フェムトセル、スモールセルなどの用語で呼ばれる場合もある。
(28)上述した各実施形態において、ユーザ装置10は、移動局である場合が含まれる。移動局は、当業者によって、加入者局、モバイルユニット、加入者ユニット、ワイヤレスユニット、リモートユニット、モバイルデバイス、ワイヤレスデバイス、ワイヤレス通信デバイス、リモートデバイス、モバイル加入者局、アクセス端末、モバイル端末、ワイヤレス端末、リモート端末、ハンドセット、ユーザエージェント、モバイルクライアント、クライアント、又はいくつかの他の適切な用語で呼ばれる場合もある。
(29)上述した各実施形態において、「接続された(connected)」という用語、又はこれらのあらゆる変形は、2又はそれ以上の要素間の直接的又は間接的なあらゆる接続又は結合を意味し、互いに「接続」された2つの要素間に1又はそれ以上の中間要素が存在することを含むことができる。要素間の接続は、物理的なものであっても、論理的なものであっても、或いはこれらの組み合わせであってもよい。本明細書で使用する場合、2つの要素は、1又はそれ以上の電線、ケーブル及び/又はプリント電気接続を使用することにより、並びにいくつかの非限定的かつ非包括的な例として、無線周波数領域、マイクロ波領域及び光(可視及び不可視の両方)領域の波長を有する電磁エネルギーなどの電磁エネルギーを使用することにより、互いに「接続」されると考えることができる。
(30)上述した各実施形態において、「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
(31)本明細書で使用する「第1」、「第2」などの呼称を使用した要素へのいかなる参照も、それらの要素の量又は順序を全般的に限定するものではない。これらの呼称は、2つ以上の要素間を区別する便利な方法として本明細書で使用され得る。従って、第1及び第2の要素への参照は、2つの要素のみがそこで採用され得ること、又は何らかの形で第1の要素が第2の要素に先行しなければならないことを意味しない。
(32)上述した各実施形態において「含む(including)」、「含んでいる(comprising)」、及びそれらの変形が、本明細書あるいは特許請求の範囲で使用されている限り、これら用語は、用語「備える」と同様に、包括的であることが意図される。さらに、本明細書あるいは特許請求の範囲において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。
(33)本願の全体において、例えば、英語におけるa、an及びtheのように、翻訳によって冠詞が追加された場合、これらの冠詞は、文脈から明らかにそうではないことが示されていなければ、複数を含む。
(34)本発明が本明細書中に説明した実施形態に限定されないことは当業者にとって明白である。本発明は、特許請求の範囲の記載に基づいて定まる本発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施できる。従って、本明細書の記載は、例示的な説明を目的とし、本発明に対して何ら制限的な意味を有さない。また、本明細書に例示した態様から選択された複数の態様を組合わせてもよい。