以下、本発明の一実施形態に係る認証システムについて、図面を参照しながら詳細に説明する。以下に示す実施形態は本発明の実施形態の一例であって、本発明はこれらの実施形態に限定されるものではない。なお、本実施形態で参照する図面において、同一部分または同様な機能を有する部分には同一の符号または類似の符号(数字の後にA、Bなどを付しただけの符号)を付し、その繰り返しの説明は省略する場合がある。また、図面の寸法比率は説明の都合上実際の比率とは異なったり、構成の一部が図面から省略されたりする場合がある。
<第1実施形態>
本発明の第1実施形態に係る認証システムについて、図面を参照しながら詳細に説明する。
[概要]
図1は、本発明の第1実施形態に係る認証システム1の構成を示すブロック図である。認証システム1は、インターネット、通信回線などのネットワークNWに接続された通信端末10と認証装置20とを有する。本実施形態における通信端末10は、スマートフォンである。この通信端末10は、ネットワークNWに接続して他の装置と通信可能な携帯端末であればよく、例えば、携帯電話、携帯型ゲーム機などであってもよい。認証装置20は、サーバなどである。
ユーザが、通信端末10を操作してネットワークNWを介して他の装置へ接続させ、他の装置からサービスの提供を受ける場合がある。認証システム1は、このような場合に、認証装置20において通信端末10のユーザを認証するためのシステムである。第1実施形態に係る認証システム1は、ユーザによって通信端末10に所定の文字などが手書きで入力されると、この入力によって得られる情報を用いて通信端末10のユーザを認証する。なお、以下の説明において、「文字」という場合であっても、単に漢字、ひらがな、カタカナ、アルファベットなど言語に用いられる文字に限定されるものではなく、記号、図形など(円、星形、波線など)を含んでもよい。以下、認証システム1におけるユーザの認証の方法およびその方法を実現する構成を説明する。
[通信端末10のハードウエア構成]
図2は、本発明の第1実施形態に係る通信端末10の外観を示す概略図である。通信端末10は、本体100を有する。本体100の内部には、制御部11、加速度センサ12、および通信モジュール18が設けられ、本体100の一面側にディスプレイ14および操作ボタン17が設けられている。ディスプレイ14には、その表面側にタッチセンサ16が設けられ、ディスプレイ14とタッチセンサ16とでタッチパネルを構成している。なお、操作ボタン17は設けられていなくてもよい。また、図2においては示していないが、通信端末10において、マイクロフォン、スピーカ、ヘッドフォン端子、メモリカードスロットなど、別の構成が備えられていてもよい。
制御部11は、CPU(Central Processing Unit)などの演算処理回路、不揮発性メ
モリなどの記憶装置を有する。制御部11は、メモリに記憶されたプログラムをCPUにより実行して、各種機能を通信端末10において実現させる。実現される機能によって、通信端末10の各構成から出力される信号などが使用される。
加速度センサ12は、この例では、本体100に与えられる運動により生じる3軸方向の加速度を測定し、測定した結果を示す測定信号を出力する。以下の説明においては、3軸方向は、図2に記載のx方向(以下、通信端末10を基準として「端末横方向」という場合がある)、y方向(同じく「端末縦方向」という場合がある)、z方向(同じく「端末前後方向」という場合がある)であるものとする。
通信モジュール18は、制御部11の制御により、ネットワークNWと接続して、ネットワークNWに接続された認証装置20など、他の装置と情報の送受信を行う。
ディスプレイ14は、液晶ディスプレイ、有機ELディスプレイなどの表示デバイスであって、制御部11の制御により様々な画面を表示する。
タッチセンサ16は、ユーザからの入力操作を受け付けて、入力操作に応じた信号を出力する装置である。ユーザからの入力操作は、スタイラスペンなどといわれるポインティングデバイス101、ユーザの指などの接触によってタッチセンサ16に受け付けられる。そのため、タッチセンサ16は、抵抗膜方式、静電容量方式、超音波方式、表面弾性波方式などのセンサが用いられる。操作ボタン17は、タッチセンサ16と同様に、ユーザからの入力操作を受け付けて、入力操作に応じた信号を出力する。
この例では、本体100およびタッチセンサ16が、ユーザの入力を受け付ける入力装置となる。入力装置は、手で持つことができる大きさであることが望ましい。通信端末10の各構成は、1つの本体100に設けられている。そのため、通信端末10は、入力装置と同一の本体100で形成されている。しかしながら、通信端末10が複数の本体で形成されていてもよく、この場合には、いずれかの本体が入力装置として機能する。具体的な構成については、別の実施形態として後述する。
[認証装置20のハードウエア構成]
認証装置20は、上述したとおりサーバなどであり、制御部、通信モジュールなどが備えられている。認証装置20の制御部は、CPUなどの演算処理回路、ハードディスクなどの記憶装置を有し、メモリに記憶されたプログラムをCPUにより実行して、各種機能を認証装置20において実現させる。認証装置20の通信モジュールは、認証装置20の制御部の制御により、ネットワークNWと接続して、ネットワークNWに接続された通信端末10など、他の装置と情報の送受信を行う。
通信端末10または認証装置20において実行されるプログラムは、磁気記録媒体、光記録媒体、光磁気記録媒体、半導体メモリなどのコンピュータ読み取り可能な記録媒体に記憶した状態で提供されてもよい。また、各プログラムは、ネットワークNW経由でダウンロードされてもよい。
[認証システム1の機能構成]
図3は、本発明の第1実施形態に係る認証システム1の機能構成を示すブロック図である。認証システム1における機能構成は、通信端末10において実現される機能と、認証装置20において実現される機能とにより実現される。通信端末10は、センサ部120、通知部140、入力受付部160、送信部181および受信部182を有する。認証装置20は、指定部201、認証部203、生成部205、記憶部250、送信部281、および受信部282を有する。
[通信端末10の機能構成]
まず、通信端末10の機能構成を説明する。
センサ部120は、通信端末10の本体100(入力装置)に生じた運動の物理量を示す測定信号を出力する。この例では、センサ部120は、加速度センサ12により、3軸方向の加速度を示す測定信号を出力する。したがって、この例では、運動の物理量とは、加速度を示す。なお、運動の物理量であれば、どのようなものであってもよく、例えば、ジャイロセンサにより測定される角速度などであってもよい。
この例では、センサ部120は、少なくとも、入力装置への入力操作により生じた運動に係る測定信号を出力する。例えば、ユーザがポインティングデバイス101などによりタッチセンサ16に手書きでの文字入力をする場合、ポインティングデバイス101がタッチセンサ16に接触したとき、離隔したとき、または筆圧が変化したときには、端末前後方向(z軸方向)への加速度が生じやすい。また、ポインティングデバイス101がタッチセンサ16に接触した状態で移動されると、ポインティングデバイス101とタッチセンサ16間の摩擦力と手による入力装置の支持とのバランスから、端末左右方向への加速度、端末上下方向へも加速度が生じやすい。いずれにしても、筆跡以外にもユーザの書き方の癖に応じた測定信号が得られる。なお、入力装置は手による支持に限らず、机などに置かれた状態で入力操作が行われてもよい。ただし、加速度センサ12による測定信号の出力が大きくなるように、ユーザの入力操作により入力装置が動く状態で支持されていることが望ましい。なお、センサ部120は、ポインティングデバイス101等でタッチセンサ16に加えられた圧力の大きさを示す測定信号を出力してもよい。
通知部140は、ユーザを認証するための入力操作の要求を通知する。この例では、通知部140は、ディスプレイ14に、認証画面(図8参照)などを表示させることにより、ユーザに対して、ユーザを認証するための入力操作の要求を通知する。なお、ユーザに対する入力操作の要求の通知は、ディスプレイ14への表示に限らない。例えば、スピーカによって放音させたり、振動モータによって本体100を振動させたり、可視光を放射する発光素子を点灯させたりして、ユーザに通知してもよい。
また、通知部140は、照合情報を登録するための入力操作の要求を通知する。照合情報は、認証装置20においてユーザの認証を行うときに用いられる情報であり、詳細は後述する。さらに、通知部140は、認証装置20におけるユーザの認証結果を示す情報を通知する。なお、ユーザの認証結果を示す情報の通知は、ディスプレイ14への表示に限らない。例えば、スピーカによって放音させたり、振動モータによって本体100を振動させたり、可視光を放射する発光素子を点灯させたりして、ユーザに通知してもよい。
入力受付部160は、入力装置(本体100)へのユーザの接触による入力操作を受け付ける。この例では、入力受付部160は、本体100に設けられたタッチセンサ16へのユーザの接触により入力操作を受け付ける。
送信部181は、センサ部120から出力される測定信号に基づく測定情報、および入力受付部160に受け付けられた入力操作を示す操作情報を含むユーザ入力情報などを認証装置20に送信する。このとき、ユーザを識別するためのユーザID、パスワードなどがユーザ入力情報に対応付けられて通信端末10から送信されてもよい。なお、一連の情報の送受信の別のタイミングにおいてユーザIDなどが送信されてもよい。
操作情報は、この例では、タッチセンサ16の接触位置に応じた座標を示す情報(図5参照)である。測定情報は、この例では、測定信号により得られる波形のエンベロープ(包絡線)を示す情報(図6参照)である。なお、測定情報は、測定信号に基づいて得られる情報であればよく、例えば、測定信号そのものであってもよいし、測定信号の所定期間の周波数分布(周波数領域に変換して解析して得られるスペクトル、パワースペクトル等)をFFT(Fast Fourier Transform)、ウェーブレット変換などで算出した情報であってもよいし、所定期間毎の周波数分布を時系列に並べた情報であってもよい。なお、この例のように、観測される測定信号の周波数成分が時間の経過とともに変位する場合には、ウェーブレット変換または拡散ウェーブレット変換の処理を用いることが好適であり、これらの解析処理により強いゲインを有するときに得られるウェーブレット関数を規定する特徴パラメータであってもよい。ここでいう特徴パラメータとは、マザー・ウェーブレットを規定する位置パラメータおよび伸張パラメータであってもよい。
測定情報と操作情報とは、時系列に関連付けられている。そのため、測定情報と操作情報とは、所定のタイミングを基準としてその基準からの経過時間と、データの値との関係がわかるようになっている。
この例では、所定のタイミングは、ユーザが入力操作を開始したタイミング、すなわち、入力操作の要求が通知されてからタッチセンサ16の所定の領域内に最初に入力(接触)があったタイミングである。また、この例では、測定情報および操作情報は、ユーザによる入力操作が終了するまでの情報を含む。入力操作の終了とは、一定時間にわたって入力操作が受け付けられなかった場合、入力操作終了を示す操作(例えば、図8に示す認証ボタンの操作)がされた場合を示すようにすればよい。なお、測定情報および操作情報は、ユーザが入力操作を開始してから一定時間経過した場合までの情報を含むようにしてもよい。
受信部182は、送信部181から認証装置20にユーザ入力情報が送信され、その応答として、認証装置20におけるユーザの認証結果に応じた情報を受信する。受信部182は、その他にも、ユーザを認証するために入力すべき操作を指定する情報、ユーザを認証するための照合情報を生成するのに必要な入力操作の要求などを受信する。
[認証装置20の機能構成]
続いて、認証装置20の機能構成を説明する。なお、以下に説明する機能構成については、一つのサーバで実現される場合に限られず、ネットワークNWを介して接続された複数のサーバにおいて協働して実現されてもよい。例えば、記憶部250が、記憶部250以外の機能構成を実現するサーバとは異なる別のサーバで実現されてもよい。
受信部282は、通信端末10からユーザ入力情報などを受信する。記憶部250は、ユーザを認証するための照合情報を記憶する。
図4は、本発明の第1実施形態に係る照合情報を説明する図である。照合情報は、ユーザを識別するユーザIDに対して、操作情報および測定情報が関連付けられている。また、この例では、さらに判定情報が関連付けられている。なお、1つのユーザIDに複数の操作情報および複数の測定情報が関連付けられている場合もある。図4の例では、例えば、ユーザID「abc12345」には、操作情報Lc1−1、測定情報Vc−1および判定情報Jc−1の第1の組と、操作情報Lc1−2、測定情報Vc−2および判定情報Jc−2の第2の組とが対応付けられている。
図5は、本発明の第1実施形態に係る操作情報を説明する図である。図5(a)に示すように、操作情報は、筆跡座標(x,y)の時間変化を示す情報である。筆跡座標とは、画面上の所定の位置を基準とした座標であって、タッチセンサ16において検出されている座標を示している。したがって、操作情報の筆跡座標(Za0、Za1、Za2・・・Zan)を時系列に並べて表すと、例えば、図5(b)に示すように所定の文字など、ユーザがタッチセンサ16において入力すべき操作を示す情報となる。「経過時間」の「XX:YY」は、XX.YY秒を示している。このように、図5の例では、「a」の文字を書いた筆跡の座標が示されている。なお、操作情報は、筆跡がわかる情報であれば、どのようなデータ構造であってもよい。また、筆跡の座標は、最初の座標を基準として表されたものでもよい。この例では、筆跡が表す文字が、操作情報に対応付けられている。なお、操作情報が示す筆跡は、1文字でなくてもよく、複数文字であってもよい。例えば、ユーザの名前などであってもよい。
図6は、本発明の第1実施形態に係る測定情報を説明する図である。図6(a)に示すように、測定情報は、3軸方向の測定信号のエンベロープの値(x,y,z)の時間変化を示す情報である。エンベロープとは波形の包絡線である。例えば、図6(b)に示すように、z軸方向の加速度の測定信号のスペクトルS2である場合、エンベロープはスペクトルS1で表される。「経過時間」の「XX:YYY」は、XX.YYY秒を示している。このように、操作情報と測定情報とは、時間の分解能が異なっていてもよいし、同じでもよい。なお、測定情報は、測定信号に所定の信号処理を施してから生成されてもよい。信号処理は、周波数の一部を抽出するフィルタによって実現されてもよい。この場合、比較対象となる測定情報は、特定の周波数帯域の測定信号に基づいて生成される。また、信号処理はノイズ除去を行う処理であってもよい。ノイズ除去の方法は、公知の方法を用いればよい。
操作情報と測定情報とは、時間の情報により対応づけられて、筆跡における特定の部分を書いたときの測定信号のエンベロープの値がわかることになる。なお、筆跡の各部分における操作情報と測定情報との関係は、時間の情報により対応づけられていなくてもよく、何らかの情報で対応づけられていればよい。
ユーザ入力情報に含まれる操作情報および測定情報は、この例では、図5に示す操作情報、および図6に示す測定情報のデータ形式であるものとする。なお、操作情報および測定情報は、ユーザ入力情報に含まれる場合と照合情報に含まれる場合とでデータ形式が異なっていてもよい。その場合には、照合が行われる前にデータ形式を合わせる処理が実施されてもよい。
判定情報は、ユーザ入力情報と照合情報とを照合してユーザを認証するときに用いられ、正当なユーザであるかどうかの判定基準を示す情報であり、ユーザごとに異なる情報であってもよい。判定情報は、例えば、ユーザ入力情報と照合情報とを照合してユーザを認証した結果、正当なユーザであると判定するときの許容範囲を定めた情報であってもよい。また、判定情報は、照合する範囲(例えば、筆跡の特定の一部分、すなわち特定の入力操作(特定の操作情報)に対応する期間)を定めた情報であってもよい。このとき、測定情報のみがその範囲で照合されてもよいし、測定情報と操作情報とがその範囲で照合されてもよい。照合する範囲を限定する場合には、判定情報にかかわらず所定のアルゴリズムにしたがって決定されてもよい。所定のアルゴリズムには、ランダムに決定する場合を含む。なお、判定情報は、照合する範囲以外でも照合をして、照合する範囲とそれ以外で判定基準(許容範囲)が異なるように定めた情報であってもよい。
図3に戻って説明を続ける。指定部201は、上述の照合情報の操作情報に対応付けられた文字を、ユーザが入力すべき操作として指定する。なお、入力すべき操作の指定は、操作情報が示す筆跡そのもので指定してもよい。この場合には、操作情報に文字が対応付けられていなくてもよい。また、指定部201は、ユーザIDに対応する照合情報が複数ある場合には、いずれかを選択して指定する。指定部201は、所定のアルゴリズムに従って照合情報を選択する。例えば、指定される照合情報は、一のユーザIDに対応する複数の照合情報から、所定の順番に選択されてもよいし、ランダムに選択されてもよい。
認証部203は、受信部282によって受信されたユーザ入力情報と、記憶部250に記憶された照合情報とを照合し、照合結果に応じてユーザを認証する。この照合においては、様々なアルゴリズムを用いることが可能であるが、一例を以下に述べる。
認証部203は、ユーザ入力情報に含まれる操作情報(以下、ユーザ操作情報という)と、照合情報に含まれる操作情報(以下、照合操作情報という)とを比較する。この比較において、ユーザ操作情報と照合操作情報とをDP(Dynamic Programming:動的計画法
)によるマッチングなどのパターンマッチングを用いて一方の操作情報の時間を伸縮させ、ユーザ操作情報による入力操作(ユーザ筆跡)の各部分と照合入力操作(照合筆跡)の各部分との対応関係を決定する。なお、パターンマッチングは、この例に限らず、様々な公知技術を用いることができる。
そして、認証部203は、ユーザ入力情報に含まれる測定情報(以下、ユーザ測定情報という)と、照合情報に含まれる測定情報(以下、照合測定情報という)とを比較する。この比較をするときに、操作情報のパターンマッチングにおいて伸縮させた時間に対応させて、ユーザ測定情報と照合測定情報との対応関係が調整される。これにより、筆跡の各部分におけるユーザ測定情報と照合測定情報との対応関係に基づいて、測定情報の比較をすることができる。測定情報の比較においても、様々な公知技術を用いたパターンマッチングが適用できる。例えば、測定情報において、上述したウェーブレット変換等を用いた特徴パラメータを用いた場合には、測定情報の特徴パラメータ群と予め登録された特徴パラメータ群とを比較する。比較によって測定情報の特徴パラメータ群と予め登録された特徴パラメータ群との距離を算出する。ここでの距離の計測は、特徴パラメータ群により形成される空間における距離を観念するため、ユークリッド距離ではなく、ガウス関数を用いて距離が算出される。この場合、判定情報には正当なユーザとして判定されるための距離の範囲が規定される。なお、操作情報と測定情報とは互いに関連して比較されたが、それぞれ独立して比較されてもよい。例えば、操作情報は、DPマッチングによりマッチングされ、測定情報は、操作情報のマッチングとは関係なくマッチングされてもよい。
これらの比較を行った後、認証部203は、操作情報の比較による照合と、測定情報の比較による照合とに基づいてユーザの認証を行う。認証部203は、照合の結果、それぞれの相違部分があっても、判定情報が示す判定基準を満たしている場合には、通信端末10のユーザが正当なユーザであると判定する。なお、操作情報の比較においては、筆跡の比較であるが、パターンの比較に限られず、筆跡速度の比較が含まれていてもよい。筆跡速度の比較では、例えば、筆跡の第1の位置から第2の位置までに対応するユーザ操作情報における経過時間と、照合操作情報における経過時間とを比較すればよい。
生成部205は、認証装置20において認証を行う対象のユーザを登録する際に、そのユーザに対応する照合情報を生成するための処理を行う。例えば、照合情報に登録すべき操作情報と測定情報とを取得するため、通信端末10においてユーザの入力操作を要求し、通信端末10から送信された操作情報と測定情報とに基づいて、照合情報が生成される。生成された照合情報は、記憶部250に記憶される。
送信部281は、認証部203にけるユーザの認証結果に応じた情報を通信端末10に送信する。また、送信部281は、指定部201によって指定された、ユーザが入力すべき操作を示す情報、ユーザを認証するための照合情報を生成するのに必要な入力操作の要求などを通信端末10に送信する。
[認証システム1の動作]
続いて、上記の認証システム1の機能構成において実現される動作を、図7に示す通信フローを用いて説明する。
図7は、本発明の第1実施形態に係る認証システム1の処理を示す通信フロー図である。まず、通信端末10のユーザは、所定のサービスを受けるためのユーザの認証を申請する(ステップS110)。このとき、所定のサービスのログイン画面などにおいて、ユーザID、パスワードなどの入力を行う。このユーザID、パスワードなどは、この例では、ディスプレイ14に表示されたソフトウェアキーボードまたは操作ボタン17などのハードウェアキーボードでの入力が可能になっている。これにより、通信端末10から認証サーバ20にユーザ認証の要求(ユーザIDなどの情報を含む)を送信する(ステップS120)。
ユーザの認証の申請は、例えば、所定のサービスを提供するサーバへのアクセスすることなどによって行われ、この例では、サービスを提供するサーバにおいて認証装置20の機能を有するものとして説明する。仮に、サービスを提供するサーバと認証装置20とが別のサーバである場合には、認証装置20へユーザ認証の要求が転送されてもよく、ユーザ認証後は、その認証結果を用いてサービスがユーザに提供されればよい。
認証装置20は、照合情報を参照し、ユーザIDに対応するユーザが入力すべき操作を指定する(ステップS210)。このとき、ユーザIDに対応する照合情報が複数ある場合には、いずれかを選択して指定する。ここでは、「a」という文字の入力操作が指定される例を示す。認証装置20は、指定した入力操作(「a」という文字の入力操作)の要求を通信端末10に送信する(ステップS220)。通信端末10は、入力操作の要求を受信すると、ディスプレイ14に認証画面を表示することによって、ユーザに入力操作の要求を通知する(ステップS130)。
図8は、本発明の第1実施形態に係る認証画面を説明する図である。ディスプレイ14に表示される認証画面には、図8(a)に示すように入力枠AWが含まれる。この認証画面には、ステップS210で指定された文字「a」をユーザに手書きで入力する操作の要求も表示される。
なお、認証画面には、指定された文字「a」ではなく、照合操作情報が示す筆跡を表示させてもよい。筆跡の表示は、図8に示す「a」の部分であってもよいし、入力枠AWに表示させて、ユーザになぞらせてもよい。また、ユーザが入力すべき文字を覚えていればよいため、指定された文字の表示がなくてもよい。この場合には、ステップS110で説明したログイン画面と、認証画面とを共通化してもよい。
ユーザは、図8(b)に示すように、ポインティングデバイス101、指などで、要求された文字「a」を入力枠AWに入力する。なお、認証画面には、ユーザID、パスワードなどが表示されてもよい。ユーザID、パスワードなどが表示される場合には、これらを修正できるようにしてもよい。この例では、ユーザID、パスワードが表示されている領域が操作されると、ソフトウェアキーボードが例えば画面下側に表示される。ユーザはソフトウェアキーボードを操作してユーザID、パスワードを書き換え、修正ボタンB1を操作すればよい。新たなユーザIDでの認証画面がディスプレイ14に表示される。
図7に戻って説明を続ける。通信端末10は、ユーザの入力操作(入力枠AWへの手書き入力)を受け付ける(ステップS140)。通信端末10は、その入力操作に基づいて操作情報を生成する。このとき、通信端末10は、ユーザからの入力操作を受け付けているときに、その入力操作によって与えられる力で運動するため、この運動を加速度として表した測定情報についても生成する。そして、通信端末10は、操作情報と測定情報とを含むユーザ入力情報を生成する(ステップS150)。ユーザによって図8に示す認証ボタンB2が操作されると、通信端末10は、ユーザ入力情報を認証装置20に送信する(ステップS160)。
認証装置20は、ユーザ入力情報を受信すると、ユーザ入力情報と、そのユーザのユーザIDに対応する照合情報とを照合する(ステップS230)。このとき、ユーザIDに対応する照合情報(照合操作情報と照合測定情報との組)が複数であって、ステップS210において、いずれかを選択した場合には、その選択した照合情報が照合対象とされる。
認証装置20は、予め決められたアルゴリズムによって、ユーザ操作情報と照合操作情報とを比較し、また、ユーザ測定情報と照合測定情報とを比較して、ユーザの認証を行う(ステップS240)。認証装置20は、これらの比較結果が判定情報に規定された判定基準を満たしている場合に、ユーザが正当なユーザであると判定し、満たしていない場合には偽装されたユーザであると判定することで、ユーザを認証する。これによって、ユーザによる「a」という文字の入力操作による筆跡と、その入力操作により生じる通信端末10(入力装置)の運動とを用いてユーザが認証されることができる。
この通信端末10での運動は、入力操作のときのタッチセンサ16への力の加わり方、すなわち筆圧のような力によって生じることになる。ユーザが一方の手(例えば、左手)で通信端末10(本体100)を支えながら、他方の手(例えば、右手)で入力操作をしたとしても、通信端末10を支える手は完全に位置が固定されるわけではない。したがって、通信端末10は、ユーザの入力操作において、ユーザの書き方の癖の要素を測定情報として取得することができる。
このように、ユーザが文字を入力するときの筆跡を照合した認証だけではなく、その筆圧等により通信端末10に与えられる運動に応じた物理量(この例では加速度)を用いて、筆跡のみでの照合よりも高精度のユーザの認証が可能である。一方、ユーザは、通常の書き慣れた方法で要求された文字を書けばよいため、登録した筆跡(座標に対応)および書き方の癖(入力装置に与えられる力:加速度に対応)を再現できるように十分練習をしておかなくても、高精度の再現が可能である。したがって、ユーザの認証の際の判定基準が高精度の再現を求めるものであっても、そのユーザの負担を抑えることができる。また、第三者は、筆跡については目視で確認し、これを再現する練習を十分行うことで模倣することが可能であるが、ユーザの書き方の癖の模倣は容易ではない。
認証装置20は、このようにして判定されたユーザの認証結果を通信端末10に送信する(ステップS250)。なお、ユーザが受けようとするサービスが認証装置20とは異なるサーバなどで提供される場合には、そのサーバを経由して、認証結果を通信端末10に送信してもよい。
通信端末10は、認証結果を受信すると、その認証結果をディスプレイ14に表示して、ユーザに通知する(ステップS170)。なお、認証結果は、その内容が直接的にディスプレイ14に表示される場合に限らず、サービスの提供が開始されたことをもって、ユーザに通知されてもよい。通信端末10のユーザが正当なユーザであると認証された場合には、通信端末10と認証装置20(またはサービスを提供する他のサーバ)と情報の送受信を行って、ユーザにサービスの提供が開始される(ステップS300)。これらの通信フローにおける各動作は、例えば、上述した認証システム1の機能構成を用いて実現される。以上が、認証システム1におけるユーザの認証を行うときの動作の説明である。
[照合情報の登録]
続いて、認証装置20に新たな照合情報を登録する場合の例について説明する。ユーザは、通信端末10を操作して、認証装置20に自身を認証させるための登録を要求する。認証装置20からの応答を通信端末10において受信すると、ディスプレイ14に登録画面が表示される。
図9は、本発明の第1実施形態に係る登録画面を説明する図である。まず、ディスプレイ14に表示される登録画面では、ユーザID、パスワードの入力が可能になっている。また、この例では、登録画面に3つの入力枠RW1、RW2、RW3が表示され、入力すべき文字(図9の例では「a」)の指定が表示されている。なお、指定される文字はユーザが変更可能になっていてもよい。
ユーザは、指定された文字「a」を入力枠RW1、RW2、RW3にポインティングデバイス101、指などにより手書きで入力する。文字の入力に伴い、3回の入力のそれぞれに対応して、筆跡に応じた操作情報(以下、登録操作情報という)、および入力時に通信端末10に与えられた運動に応じた測定情報(以下、登録測定情報という)を含むユーザ入力情報が生成される。
図9(b)は、手書き入力後の登録画面の表示の例である。ユーザは、手書きの入力が完了した後、登録ボタンB3を操作すると、上述した3回の入力についてのユーザ入力情報が通信端末10から認証装置20に送信される。認証装置20においては、3回の入力についてのユーザ入力情報を解析して照合情報を生成し、ユーザIDと関連付けて記憶部250に記憶させる。また、判定情報については、3回の入力のユーザ入力情報に基づいて決定される。例えば、ユーザによる3回の入力による筆跡などの安定性により、判定情報が決定される。すなわち、複数回にわたって筆跡が安定している部分は、ユーザによる再現性が高いことになるため判定基準を厳しくし、不安定である部分については、判定基準を緩やかにすればよい。
以下、照合情報の生成の例について、説明する。まず、認証装置20は、3回の入力による筆跡の安定性を確認する解析を行う。例えば、3回の筆跡について、できるだけ一致点が多くなるように平行移動する調整をする。また、拡大縮小などの調整をしてもよい。
図10は、本発明の第1実施形態に係る判定情報の決定方法を説明する図である。図10に示す筆跡は、3回の入力により得られた筆跡に対して調整をした後に重ねて記載したものである。このように調整された場合、一定基準以内での一致が見られる一致範囲WLが存在する場合には、この部分についてユーザの再現性が高い部分として判定基準が厳しくなる決定をする。また、それ以外の部分については、誤差範囲WEを反映させて判定基準を決定する。このように決定された判定基準を用いて、照合情報に含まれる判定情報が生成される。
また、照合情報に含まれる操作情報については、例えば、図10に示すように調整された3回の筆跡の中間(例えば平均に相当する筆跡)を表す座標としてもよい。照合情報に含まれる測定情報についても、操作情報と同様に、各軸方向の3回の加速度の中間を表す値としてもよい。
なお、判定基準の決定において、3回の筆跡における安定性が悪すぎて、判定基準が緩くなりすぎる場合(所定の基準値よりも緩くなる場合)には、認証装置20は、別の文字を改めて指定し、改めて指定した文字の手書き入力の要求をするようにすればよい。この場合には、通信端末10のディスプレイ14には、図9(a)に対応する登録画面が再び表示されればよい。
また、上記の登録の例では、ユーザに3回の入力を要求したが、さらに多くても、少なくてもよく、1回でもよい。また、判定情報は、予め決められた判定基準としてもよいし、ユーザに判定基準の厳しさの程度を決定させてもよい。
<第2実施形態>
第2実施形態においては、ユーザIDの入力についても、手書きで入力する場合について説明する。この場合には、操作情報はユーザIDの筆跡を示す情報となる。また、認証装置20の認証部203は、筆跡から文字認識を行ってユーザIDを認識する。
図11は、本発明の第2実施形態に係るログイン画面を説明する図である。図11に示すように、認証装置20からのユーザIDおよびパスワードの入力要求が通信端末10に送信されると、通信端末20は、ユーザID、パスードの入力を要求するログイン画面をディスプレイ14に表示する。ログイン画面においては、ユーザIDを手書きで入力するための入力枠UWが設けられている。ユーザは、ポインティングデバイス101などを用いて入力枠UWへユーザIDを入力してログインボタンB4を操作すると、その入力に係るユーザ入力情報が認証装置20に送信される。
そして、認証装置20は、操作情報が示す筆跡から文字認識によりユーザIDを認識して、そのユーザIDに対応する照合情報とユーザ入力情報とを照合して、そのユーザを認証する。
なお、手書きで入力される文字は、ユーザIDではなく、パスワードであってもよいし、ユーザIDとパスワードとの双方であってもよい。また、このように操作情報がユーザIDに用いられる場合には、ユーザ入力情報と照合情報との照合は、測定情報での比較として操作情報の比較を行わなくてもよい。
<第3実施形態>
第3実施形態においては、複数の本体を有し、その一方が入力装置の機能を有している通信端末10Aについて説明する。
図12は、本発明の第3実施形態に係る通信端末10Aの外観を示す概略図である。通信端末10Aは、第1本体100aAと第2本体100bAとを有する。第1本体100aAと第2本体100bAとは、通信ケーブルC1で接続されている。この例では、通信端末10Aの第2本体100bAには、クレジットカードなどに記録された情報を読み取る読取装置30が通信ケーブルC2で接続されている。なお、通信ケーブルC1、C2で接続されている部分は、有線通信ではなく、無線通信であってもよい。また、読取装置30は、第1本体100aAまたは第2本体100bAと一体であってもよい。
第1本体100aAには、加速度センサ12A、ディスプレイ14A、タッチセンサ16Aが設けられている。したがって、この例では、通信端末10Aのうち、第1本体100aAが入力装置に対応する。第1本体100aAは、入力装置に対応するため、手で持つことができる大きさであることが望ましい。第2本体100bAには、制御部11A、通信モジュール18Aが設けられている。各構成のうち、第1実施形態における通信端末10の各構成と同様の機能を有する構成については、詳細の説明を省略する。
通信端末10Aは、クレジットカードの決済などにおいて、読取装置30において読み取られたカードの情報(例えば、カード番号)を取得し、その情報を第1実施形態におけるユーザIDに相当する情報として取り扱う。そして、ディスプレイ14Aには、ユーザ(例えば、カードの所有者)に署名を要求する画面(署名画面)が表示される。
図13は、本発明の第3実施形態に係る署名画面を説明する図である。ユーザがポインティングデバイス101A、指などにより、署名画面の署名欄に署名を入力する。そして、決済ボタンB5を操作すると、操作情報と測定情報とを含むユーザ入力情報が生成される。なお、決済ボタンB5は、ディスプレイ14に表示されたソフトウェアキーに限らず、ハードウェアキーを用いてもよい。ハードウェアキーは、本体100aA、本体100bAまたは読取装置30に設けられていればよい。
携帯端末10Aは、ユーザ入力情報と、読取装置30において読み取られたカードの情報とを認証装置20に送信する。認証装置20は、カードの情報(ユーザID)に対応する照合情報と、ユーザ入力情報とを照合してユーザの認証を行う。そして、ユーザの認証結果に応じて、クレジットカードの決済などの処理が実行されるようにすればよい。
このような通信端末10Aは、店頭でのクレジットカードの決済、インターネットなどの通信販売を行うときの決済に用いることができる。また、通信端末10Aは、ATM(Automatic teller machine:現金自動預け払い機)、電子錠付き扉などのセキュリティ装置に適用することもできる。例えば、一般的なATMにおいて、入力装置に対応する構成を取り付けることによって、通信端末10Aを適用することができる。
<第4実施形態>
第4実施形態においては、通信端末と認証装置とが一体に構成されている場合について説明する。すなわち、通信端末の制御部において、認証装置の各機能の一部が実現できるようになっている。
図14は、本発明の第4実施形態に係る通信端末10Bの機能構成を示すブロック図である。図14に示すように、通信端末10Bは、第1実施形態における通信端末10の機能に対応するセンサ部120B、通知部140Bおよび入力受付部160Bと、認証装置20の機能に対応する指定部101B、認証部103B、生成部105Bおよび記憶部150Bとを有する。通信端末10Bのユーザが予め決められた一人である場合には、記憶部150Bに記憶された照合情報がユーザIDに対応して決められていなくてもよい。各構成のうち、第1実施形態における通信端末10および認証装置20の各構成と同様の機能を有する構成については、詳細の説明を省略する。
このような通信端末10Bを使用するユーザは、第三者に通信端末10Bを使われてしまわないように、ロックをかけることができる。ロックとは、通信端末10Bの各機能の実行を制限することを示している。ロックの解除は例えばロック画面において行われる。例えば、一般的なスマートフォンなどにおいては、ユーザが電源を入れるとディスプレイにロック画面を表示し、所定の操作とパスワードの入力によってロックを解除することができる。通信端末10Bにおいては、ユーザが手書きで指定された文字を入力することによって生成されるユーザ入力情報を用いてロックを解除することができる。
図15は、本発明の第4実施形態に係るロック画面を説明する図である。ロック画面には、入力枠LWが表示される。指定された文字をユーザが手書きで入力枠LWに入力し、解除ボタンB6が操作されると、この入力に係るユーザ入力情報と照合情報とが照合されて、照合結果に応じてユーザが認証される。通信端末10Bのユーザが正当なユーザであると判定されればロックが解除され、そのユーザは、通信端末10Bにおいて制限されていた機能が自由に使えるようになる。なお、この通信端末10Bは、必ずしも通信モジュールを有していなくてもよい。したがって、本実施形態は、通信モジュールの有無に限らず様々な情報処理装置に適用することができる。
<第5実施形態>
第5実施形態においては、通信端末10のユーザが利用しようとしているサービスが、金融取引装置から提供される金融取引(残高照会、預金、振込、振替、証券取引など)である場合について説明する。
図16は、本発明の第5実施形態に係る金融取引システム1Cの機能構成を示すブロック図である。金融取引システム1Cは、通信端末10とネットワークNWを介して接続される金融取引装置50を有する。金融取引装置50は、上述の各実施形態における認証装置20と、取引部25とを有する。取引部25は、認証装置20におけるユーザの認証結果を用いて、通信端末10のユーザが正当なユーザである場合に、通信端末10からの指示に基づいて、金融取引の処理を実行する。このとき、取引部25が実行する金融取引の処理は、他のデータベースサーバなどの外部装置に対して処理の指示をするものであってもよい。なお、金融取引装置50は、認証装置20と同様に、一つのサーバで実現される場合に限られず、ネットワークNWを介して接続された複数のサーバにおいて協働して実現されてもよい。
<第6実施形態>
上述した各実施形態においては、指定部201によって指定された内容(ユーザID、パスワード、所定の文字等)がユーザによって入力されたときの操作の筆跡、筆圧等によって、そのユーザが認証されていた。第6実施形態では、指定部201の指定とは関係なくユーザによって入力されたときの操作の筆跡、筆圧等によって、ユーザが認証される場合について説明する。ここでは、指定部201の指定とは関係なくユーザによって入力される操作として、第5実施形態のように金融取引が行われる場合に、ユーザが振込の金額を指定する場合を一例として説明する。
この例では、照合情報には、各ユーザIDに対して、数字「0」から「9」に対応する操作情報、測定情報および判定情報が関連付けられている。ユーザが使用する通信端末10のディスプレイ14に振込金額を指定するための画面が表示されることによって、ユーザの入力操作の要求がなされる。この要求に応じて、ユーザがポインティングデバイス、指などにより手書きで振込金額の入力をすると、振込金額の各桁の数字毎のユーザ入力情報が、通信端末10から認証装置20に送信される。
認証装置20では、認証部103は、ユーザ入力情報に含まれる操作情報に基づいて、ユーザによって入力された数字を識別する。そして、認証部103は、ユーザ認証のときに行う照合では、照合情報のうち、識別した数字に対応する操作情報、測定情報および判定情報を用いる。このとき、ユーザが指定した振込金額のうち、一部の桁(最大の桁、最小の桁等)の数字のみ照合の対象としてもよい。
なお、ユーザによる振込金額の入力は、手書きでの入力でなくてもよい。例えば、ソフトウェアキーボード、または操作ボタン17などにより入力がされてもよい。この場合には、操作情報は入力操作を示すものとなり、ソフトウェアキーボードであれば各数字を入力するためのキーが表示される画面上の位置等であり、操作ボタン17であれば数字を入力するための操作内容を示す情報であればよい。そして、測定情報は、ソフトウェアキーボードまたは操作ボタン17で数字が入力されたときに通信端末10に与えられる運動に応じた物理量を示す情報であればよい。
上記の例は、ユーザが数字の入力操作をする場合について説明したが、数字に限らず、文字等であってもよい。例えば、検索サービスを提供するサイトにおいて、検索キーワードを入力する場合などであっても適用することができる。また、数字、文字の入力に限られず、ディスプレイ14に表示されたアイコン(例えば、図8に示す修正ボタンB1、認証ボタンB2など)をタッチするなどして入力操作をする場合にも適用可能である。この場合には、アイコンをタッチするときのユーザの癖に基づいてユーザを認証することができる。
このように、ログイン画面等において指定部201によって指定された内容を入力するときに行われる場合に限られず、各種サービスを利用しているときの様々な入力操作のときにおいてユーザの認証が行われるようにすることもできる。
<第7実施形態>
照合情報は、第1実施形態において説明したとおり予め登録された操作情報、測定情報および判定情報を関連付けたものでなくてもよい。第7実施形態では、照合情報は、過去に同じ操作がされたときの操作情報および測定情報に基づいて決められている。過去の操作とは、前回、同じサービスを受けたときの入力操作であってもよい。前回のみではなく、数回分の入力操作に基づいて決められたものであってもよい。数回分の入力操作に基づく場合については、第1実施形態における登録時に複数回の入力を要求する場合と同様な方法で操作情報等が決められればよい。
第1実施形態においては、ユーザは照合に用いるための操作情報等を登録するための作業を事前に行っていたが、第7実施形態のようにすると、過去の操作そのものが登録の作業に対応することになる。このようにすると、直前に同じ入力操作がされたときと大きく異なる筆跡、筆圧による入力操作がなされた場合には、直前に入力操作をしたユーザと今回入力操作をしたユーザとが異なるユーザであると判定することができる。
このような場合には、今回入力操作をしたユーザが正当なユーザではない可能性が高い一方、直前に入力操作をしたユーザが正当なユーザではない可能性も残る。したがって、今回の入力操作をしたユーザに対して、さらに別の方法で認証を行ってもよい。例えば、予め登録しておいた質問に対して、予め登録しておいた回答をユーザが入力することで行う認証など、公知の他の認証方法を組み合わせてもよい。別の方法で行ったユーザの認証により、正当なユーザであると判定された場合には、ユーザによる過去の入力操作に揺らぎがあったか、もしくは過去の入力操作が別のユーザによって行われた可能性があることを示しているため、ディスプレイ14にユーザに注意を促す表示をしてもよい。
なお、第1実施形態のように照合に用いるための操作情報等が初期値として予め登録され、その後のユーザの入力操作により照合情報に関連付けられている操作情報および測定情報が補正されるようにしてもよい。この補正は、この入力操作に基づいてユーザが正当であると判定された場合に実施される。このようにするとユーザの入力操作の癖が少しずつ変化しても、その変化に対応してユーザの認証をすることができるため、認証精度を向上させることもできる。
<第8実施形態>
上述した実施形態において、認証部203(103B)は、ユーザ操作情報と照合操作情報との照合結果、およびユーザ測定情報と照合測定情報との照合結果の双方に基づいて、ユーザの認証を行っていたが、第8実施形態では、ユーザ操作情報については用いずに、ユーザ測定情報と照合測定情報との照合結果に基づいて、ユーザの認証を行ってもよい。
<第9実施形態>
上述した実施形態において、認証部203(103B)は、ユーザ操作情報と照合操作情報との照合結果、およびユーザ測定情報と照合測定情報との照合結果において、それぞれ相違する部分があり、その部分が判定情報の示す判定基準を満たさない場合には、正当なユーザではないと判定した。第9実施形態では、これに加えて、過去に生成されたユーザ操作情報またはユーザ測定情報を認証装置において記憶しておき、照合すべきユーザ操作情報またはユーザ測定情報が、過去のユーザ操作情報またはユーザ測定情報と完全に一致する場合においても、正当なユーザではないと判定されるようにしてもよい。
これは、ユーザ本人になりすます不正アクセス者に対する防衛として用いることができる。例えば、不正アクセス者が、ユーザ操作情報およびユーザ測定情報の少なくとも一方に関し、過去に生成された情報を通信端末等から予め取得しておき、認証の際に生成された情報と偽装して、予め取得しておいた情報を通信端末から送信させることが想定される。ここで、各実施形態で述べたようにして新たに生成されるユーザ操作情報およびユーザ測定情報は、過去に生成された情報と全く同一になる確率は極めて小さい。したがって、認証の際に生成されたユーザ操作情報およびユーザ測定情報が、過去のユーザ操作情報またはユーザ測定情報(複数の記録が存在する場合には、それらのいずれか)と完全に一致する場合には、ユーザ本人になりすました不正なアクセスであったものとして、正当なユーザではないと判定されるようにすることで、このような不正アクセス者に対する防衛が可能となる。さらに、予め決められた連絡先(本来のユーザが所有する端末、管理者の端末等)に不正なアクセスがあったことが通知されるようにしてもよい。
<第10実施形態>
第10実施形態では、ユーザが入力操作の要求の通知を受けてから、認証結果の通知を受けるまでの間に、ユーザが通信端末10への情報の入力を中断した場合の例について説明する。
ユーザが入力したユーザIDおよびパスワードなどが入力されて、通信端末10から認証装置20にユーザ認証の要求が送信される(図7ステップS120)と、図8のようにディスプレイ14に表示された認証画面が表示される。この際、所定の時間内にユーザの入力操作がない場合、ディスプレイ14における認証画面が非表示となる。一方、認証画面の表示に必要な情報は、その通信端末10のメモリまたは認証装置20のメモリ等にキャッシュされる。なお、非表示とする情報は、ユーザによって入力された情報のみであってもよい。また、ディスプレイ14に表示された認証画面等が非表示となるのは、最後に入力操作がなされてから所定の時間内に次の入力操作がない場合であってもよい。
そして、ユーザによって通信端末10に所定の運動(以下、復帰運動という)が与えられると、キャッシュされた情報が読み出され、ディスプレイ14に認証画面が再表示されて、ユーザの入力操作が再び受け付けられる状態になる。一方、ユーザによって通信端末10に運動が与えられてから所定時間経過しても、復帰運動として検出できない場合、キャッシュされた情報が破棄され、再びユーザIDおよびパスワード等の入力から始めなくてはならないことになる。
通信端末10に与えられた運動が復帰運動であるか否かについては、上記実施形態において述べたユーザ測定情報と照合測定情報との照合を行ってユーザの認証を行う場合と同様にして、通信端末10または認証装置20において判定される。すなわち、通信端末10に与えられた運動を示すユーザ測定情報が生成され、予め登録された復帰運動を示す照合測定情報とユーザ測定情報との照合が行われ、照合結果と判定情報とに基づいて、ユーザによって通信端末10に与えられた運動が復帰運動であるかが判定される。
このように、一定時間の経過によりディスプレイ14に表示された認証画面等を非表示とすることで、通信端末10が置き忘れた場合等を考慮すると、情報漏洩を防止する観点からは好ましい。また、この場合に第三者がこの通信端末10を用いたとしても、復帰運動ではない運動が通信端末10に与えられることになるから、キャッシュされた情報が削除されることにより、また、さらにロックアウトして以後の通信端末10への入力操作を禁止することで、情報セキュリティの向上を図ることもできる。ロックアウトを解除するには、例えば、所定のパスワードの入力や、予め決められた運動を通信端末10に与えるようにすればよい。
一方、ユーザが事情により入力操作を中断しただけの場合には、復帰運動を通信端末10に与えれば、これまで入力した内容を再度入力させなくても、次の入力操作を受け付ける状態へ戻ることができ、ユーザの操作が簡略化され、効率的であり利便性が高まる。なお、復帰運動については、予めユーザによって登録されればよく、その内容の変更も可能である。これによって、ユーザ本人しか知り得ない復帰運動を通信端末10に与える必要が生じ、情報セキュリティの向上につなげることもできる。
<第11実施形態>
上述した各実施形態において、スマートフォン等の通信端末10の本体100等を入力装置の例として説明した。具体的には入力装置はタッチセンサ16を有し、タッチセンサ16へのユーザの入力操作によって、各種情報が入力される装置であった。入力装置としては、このような各種情報の入力に用いられる装置として適用されるだけでなく、他の装置を制御する指示を入力するための装置として適用されてもよい。例えば、他の装置が自動車であれば、この自動車を制御するための指示を入力するためのハンドル、アクセルペダル、ブレーキペダル等が入力装置に該当する。そして、第4実施形態において説明した情報処理装置を自動車に組み込み、この入力装置をハンドル等として適用すれば、自動車の運転者の認証をすることもできる。
このように、入力装置をハンドルとして情報処理装置を自動車に組み込んで適用した場合には、運転者が運転している間に、測定情報から運転者の運転の癖を取得することができる。このとき、所定のハンドル操作(例えば、ハンドルを右に回す操作)をしたときの運転の癖を予め照合測定情報として登録しておき、運転者がそのハンドル操作をしたとき、例え、ユーザ操作情報が所定の操作情報になったときに得られた測定情報(ユーザ測定情報)と照合測定情報とを照合すればよい。
照合結果に基づいて運転者を認証した結果、運転者が正当な運転者であると判定できなかった場合には、予め決められた連絡先(本来の運転者が所有する端末、管理者の端末等)に通常と異なる運転者が自動車を運転していることが通知されるようにしてもよい。なお、運転者が正当な運転者であると判定できなかった場合には、自動車の動作に制限をかける等、通常と異なる動作が実行されるようにしてもよい。通常と異なる動作としては、例えば、自動車を徐々に減速させて停車させたり、自動車のドアに外部からしか開かないようにロックをかけたり、ライトが点滅したり、クラクションを鳴らしたりすればよく、自動車外に対して何らかの報知がされるような動作であることが望ましい。