(57)【要約】【課題】認証情報の窃取を効率的に防止するワンタイムパスワードによる認証サーバを提供する。【解決手段】ユーザが利用するユーザ端末１０と通信可能に接続され、ユーザの認証を行うユーザ認証サーバ２００は、前記ユーザ端末１０からワンタイムパスワードを受信し、前記入力されたワンタイムパスワードが有効であるか否かを識別し、前記識別の結果、有効であった場合にのみ、前記ユーザ端末１０から、ワンタイムパスワード以外に認証に用いる認証情報を受信し、前記認証情報を用いて前記ユーザの認証を行う。【選択図】図１
2015162211.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが利用するユーザ端末と通信可能に接続され、ユーザの認証を行うユーザ認証サーバであって、
前記ユーザ端末から、前記ユーザの識別子と、ワンタイムパスワードとを受信するワンタイムパスワード受信手段と、
前記受信した識別子とワンタイムパスワードの組み合わせが有効であるか否かを識別するワンタイムパスワード識別手段と、
前記識別の結果、有効であった場合にのみ、前記ユーザ端末から、ワンタイムパスワード以外に認証に用いる認証情報を受信する認証情報受信手段と、
前記認証情報を用いて前記ユーザの認証を行う認証実行手段と、
を備えることを特徴とするユーザ認証サーバ。
【請求項２】
ワンタイムパスワードを生成するための鍵と、ユーザ情報とを関連付けて記憶させたワンタイムパスワードデータベースを備え、  前記ワンタイムパスワードを生成するための鍵を生成するワンタイムパスワード生成用鍵生成手段と、
前記ワンタイムパスワードを生成するための鍵からワンタイムパスワードを生成するワンタイムパスワード生成手段と、
前記ワンタイムパスワードデータベースから、前記受信した識別子で特定されるユーザと関連付けられて記憶された鍵を抽出するワンタイムパスワード生成用鍵抽出手段と、
を備え、前記抽出された鍵から生成されたワンタイムパスワードと、前記受信したワンタイムパスワードとを比較することにより、前記受信した識別子とワンタイムパスワードの組み合わせが有効であるか否かを識別することを特徴とする請求項１に記載のユーザ認証サーバ。
【請求項３】
認証履歴データベースを備え、
前記ユーザについて前記認証を行った際、当該ユーザのユーザ関連情報を取得し、認証履歴として記憶させる認証履歴記憶手段と、
前記ユーザについて前記認証を行う際、当該ユーザの認証履歴を抽出する認証履歴抽出手段と、
前記抽出した認証履歴と、取得したユーザ関連情報とを比較して、差分を抽出する認証履歴差分抽出手段と、
前記抽出した差分が、所定の閾値を超えていた場合、前記ユーザの認証時に警告処理と認証処理の中止の少なくともいずれかを行う警告処理手段と、
を備えることを特徴とする請求項１又は請求項２に記載のユーザ認証サーバ。
【請求項４】
警告履歴データベースを備え、
前記警告を表示又は認証処理を中止した場合に、認証を行ったユーザとともに前記警告履歴データベースに警告履歴を記録させる警告履歴記憶手段と、
前記ユーザについて前記認証を行う際、当該ユーザの警告履歴を抽出する警告履歴抽出手段と、を備え、
前記抽出した警告履歴の数が、所定の閾値を超えていた場合、前記ユーザの認証時に警告処理と認証処理の中止のいずれかを行うことを特徴とする請求項３に記載のユーザ認証サーバ。
【請求項５】
ユーザが利用するユーザ端末と通信可能に接続され、ユーザの認証を行うユーザ認証サーバが実行するユーザ認証方法であって、
前記ユーザ端末から、前記ユーザの識別子と、ワンタイムパスワードとを受信するステップと、
前記受信した識別子とワンタイムパスワードの組み合わせが有効であるか否かを識別するステップと、
前記識別の結果、有効であった場合にのみ、前記ユーザ端末から、ワンタイムパスワード以外に認証に用いる認証情報を受信するステップと、
前記認証情報を用いて前記ユーザの認証を行うステップと、
を備えることを特徴とするユーザ認証方法。
【請求項６】
ユーザが利用するユーザ端末と通信可能に接続され、ユーザの認証を行うユーザ認証サーバに、
前記ユーザ端末から、前記ユーザの識別子と、ワンタイムパスワードとを受信するステップ、
前記受信した識別子とワンタイムパスワードの組み合わせが有効であるか否かを識別するステップ、
前記識別の結果、有効であった場合にのみ、前記ユーザ端末から、ワンタイムパスワード以外に認証に用いる認証情報を受信するステップ、
前記認証情報を用いて前記ユーザの認証を行うステップ、
を実行させることを特徴とするユーザ認証サーバ用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワンタイムパスワードを用いて不正なパスワード収集を防止するユーザ認証サーバ、ユーザ認証方法、ユーザ認証サーバ用プログラムに関する。
【背景技術】
【０００２】
近年、公衆回線網に接続された端末をＷｅｂサーバ等と接続することで、ユーザに様々なサービスが提供されている。その一例として、物品や金融商品の売買や口座振替、入出金といった金銭に関わる処理が、公衆回線網を通じて行えるようになっている。
【０００３】
このような金銭に関わる手続きにおいては、本人確認が特に重要である。なぜならば、自分のアカウントに他人がアクセスできる場合には、自分の金品を他人に使われてしまうおそれがあるためである。そこで各サービスでは、本人のみが知り得るＩＤやパスワードを発行し、ログイン処理を必要とすることで、サービスを利用できる人間を本人に限定している。
【０００４】
しかしながら、そのような認証処理を採用しても不正ログイン事件は多く、安全な認証方法への要請が高まっている。
【０００５】
このような課題に対して、照合などの認証のための処理を複数行う場合において、時間的に後に行う認証処理に用いる情報を認証対象者に通知するための方法を複数用意することで、専用の装置、端末などを用意しなくとも、安全性を確保できる個人認証技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−２５５５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１によれば、照合などの認証のための処理を複数行う場合、時間的に後に行う処理に用いる情報を認証対象者に通知するための方法を複数用意しておくことで、低コストかつ安全な認証方式を利便性の低下を抑止して実現することが可能である。また、この方法について、先に行う認証とは別の手段で必要な情報を通知することが好適であることが示されている。また、一例として、ワンタイムパスワードの配布方式を携帯電話のメールと電話の２つ方法を予め登録することにより代替手段を確保することが挙げられている。
【０００８】
しかしながら、特許文献１で開示されている方法では、ワンタイムパスワードといった頻繁に変更される認証方式を時間的に後に行うこととしており、時間的に前に行われる認証方式について、総当たり方式を初めとする手法によりパスワードの不正取得が可能になってしまうおそれがあった。
【０００９】
そこで、本発明の発明者は、ＩＤとパスワード等の組み合わせによる従来型の認証方式による認証を行うよりも前にワンタイムパスワードによる認証処理を行い、ワンタイムパスワードによる認証に成功して初めて従来型の認証方式による認証を行うことで、安全性を担保しつつ認証情報の不正取得を効率的に防げる点に着目した。
【００１０】
本発明は、これらの課題に鑑み、ユーザの認証時にワンタイムパスワードによる認証と、その他の認証を含む二ステップ以上の認証を行うシステムにおいて、前記その他の認証を行うよりも前にワンタイムパスワードによる認証を行い、ワンタイムパスワードによる認証に成功した時のみその他の認証を行う事で、総当たり方式等の手法による認証情報の不正取得を効率的に防ぎつつ、ユーザの安全性と利便性を高めるユーザ認証サーバを提供する。
【課題を解決するための手段】
【００１１】
本発明では、以下のような解決手段を提供する。
第１の特徴に係る発明は、ユーザが利用するユーザ端末と通信可能に接続され、ユーザの認証を行うユーザ認証サーバであって、
前記ユーザ端末から、前記ユーザの識別子と、ワンタイムパスワードとを受信するワンタイムパスワード受信手段と、
前記受信した識別子とワンタイムパスワードの組み合わせが有効であるか否かを識別するワンタイムパスワード識別手段と、
前記識別の結果、有効であった場合にのみ、前記ユーザ端末から、ワンタイムパスワード以外に認証に用いる認証情報を受信する認証情報受信手段と、
前記認証情報を用いて前記ユーザの認証を行う認証実行手段と、
を備えることを特徴とするユーザ認証サーバを提供する。
【００１２】
第１の特徴に係る発明によれば、ユーザが利用するユーザ端末と通信可能に接続され、ユーザの認証を行うユーザ認証サーバは、前記ユーザ端末から、前記ユーザの識別子と、ワンタイムパスワードとを受信し、前記受信した識別子とワンタイムパスワードの組み合わせが有効であるか否かを識別し、前記識別の結果、有効であった場合にのみ、前記ユーザ端末から、ワンタイムパスワード以外に認証に用いる認証情報を受信し、前記認証情報を用いて前記ユーザの認証を行う。
【００１３】
第１の特徴に係る発明は、ユーザ認証サーバのカテゴリであるが、ユーザ認証方法、及びユーザ認証サーバ用プログラムのカテゴリにおいても、同一の作用、効果を奏する。
【００１４】
第２の特徴に係る発明は、ワンタイムパスワードを生成するための鍵と、ユーザ情報とを関連付けて記憶させたワンタイムパスワードデータベースを記憶部に備え、
前記ワンタイムパスワードを生成するための鍵を生成するワンタイムパスワード生成用鍵生成手段と、
前記ワンタイムパスワードを生成するための鍵からワンタイムパスワードを生成するワンタイムパスワード生成手段と、
前記ワンタイムパスワードデータベースから、前記受信した識別子で特定されるユーザと関連付けられて記憶された鍵を抽出するワンタイムパスワード生成用鍵抽出手段と、
を備え、前記抽出された鍵から生成されたワンタイムパスワードと、前記受信したワンタイムパスワードとを比較することにより、前記受信した識別子とワンタイムパスワードの組み合わせが有効であるか否かを識別することを特徴とする第１の特徴に係る発明であるユーザ認証サーバを提供する。
【００１５】
第２の特徴に係る発明によれば、第１の特徴に係る発明であるユーザ認証サーバは、ワンタイムパスワードを生成するための鍵と、ユーザ情報とを関連付けて記憶させたワンタイムパスワードデータベースを記憶部に備え、前記ワンタイムパスワードを生成するための鍵を生成し、前記ワンタイムパスワードを生成するための鍵からワンタイムパスワードを生成し、前記ワンタイムパスワードデータベースから、前記受信した識別子で特定されるユーザと関連付けられて記憶された鍵を抽出し、前記抽出された鍵から生成されたワンタイムパスワードと、前記受信したワンタイムパスワードとを比較することにより、前記受信した識別子とワンタイムパスワードの組み合わせが有効であるか否かを識別することを特徴とする第１の特徴に係る発明であるユーザ認証サーバを提供する。
【００１６】
第３の特徴に係る発明は、認証履歴データベースを記憶部に備え、
前記ユーザについて前記認証を行った際、当該ユーザのユーザ関連情報を取得し、認証履歴として記憶させる認証履歴記憶手段と、
前記ユーザについて前記認証を行う際、当該ユーザの認証履歴を抽出する認証履歴抽出手段と、
前記抽出した認証履歴と、取得したユーザ関連情報とを比較して、差分を抽出する認証履歴差分抽出手段と、
前記抽出した差分が、所定の閾値を超えていた場合、前記ユーザの認証時に警告処理と認証処理の中止の少なくともいずれかを行う警告処理手段と、
を備えることを特徴とする第１又は第２の特徴に係る発明であるユーザ認証サーバを提供する。
【００１７】
第３の特徴に係る発明によれば、第１又は第２の特徴に係る発明であるユーザ認証サーバは、認証履歴データベースを記憶部に備え、前記ユーザについて前記認証を行った際、当該ユーザのユーザ関連情報を取得し、認証履歴として記憶させ、前記ユーザについて前記認証を行う際、当該ユーザの認証履歴を抽出し、前記抽出した認証履歴と、取得したユーザ関連情報とを比較して、差分を抽出し、前記抽出した差分が、所定の閾値を超えていた場合、前記ユーザの認証時に警告処理と認証処理の中止の少なくともいずれかを行う。
【００１８】
第４の特徴に係る発明は、警告履歴データベースを備え、
前記警告を表示又は認証処理を中止した場合に、認証を行ったユーザとともに前記警告履歴データベースに警告履歴を記録させる警告履歴記憶手段と、
前記ユーザについて前記認証を行う際、当該ユーザの警告履歴を抽出する警告履歴抽出手段と、を備え、
前記抽出した警告履歴の数が、所定の閾値を超えていた場合、前記ユーザの認証時に警告処理と認証処理の中止のいずれかを行うことを特徴とする第３の特徴に係る発明であるユーザ認証サーバを提供する。
【００１９】
第４の特徴に係る発明によれば、第３の特徴に係る発明であるユーザ認証サーバは、警告履歴データベースを備え、前記警告を表示又は認証処理を中止した場合に、認証を行ったユーザとともに前記警告履歴データベースに警告履歴を記録させ、前記ユーザについて前記認証を行う際、当該ユーザの警告履歴を抽出し、前記抽出した警告履歴の数が、所定の閾値を超えていた場合、前記ユーザの認証時に警告処理と認証処理の中止のいずれかを行う。
【００２０】
第５の特徴に係る発明は、ユーザが利用するユーザ端末と通信可能に接続され、ユーザの認証を行うユーザ認証サーバが実行するユーザ認証方法であって、
前記ユーザ端末から、前記ユーザの識別子と、ワンタイムパスワードとを受信するステップと、
前記受信した識別子とワンタイムパスワードの組み合わせが有効であるか否かを識別するステップと、
前記識別の結果、有効であった場合にのみ、前記ユーザ端末から、ワンタイムパスワード以外に認証に用いる認証情報を受信するステップと、
前記認証情報を用いて前記ユーザの認証を行うステップと、
を備えることを特徴とするユーザ認証方法を提供する。
【００２１】
第６の特徴に係る発明は、ユーザが利用するユーザ端末と通信可能に接続され、ユーザの認証を行うユーザ認証サーバに、
前記ユーザ端末から、前記ユーザの識別子と、ワンタイムパスワードとを受信するステップ、
前記受信した識別子とワンタイムパスワードの組み合わせが有効であるか否かを識別するステップ、
前記識別の結果、有効であった場合にのみ、前記ユーザ端末から、ワンタイムパスワード以外に認証に用いる認証情報を受信するステップ、
前記認証情報を用いて前記ユーザの認証を行うステップ、
を実行させることを特徴とするユーザ認証サーバ用プログラムを提供する。
【発明の効果】
【００２２】
本発明によれば、ユーザの認証時にワンタイムパスワードによる認証と、その他の認証を含む二ステップ以上の認証を行うシステムにおいて、前記その他の認証を行うよりも前にワンタイムパスワードによる認証を行い、ワンタイムパスワードによる認証に成功した時のみその他の認証を行う事で、総当たり方式を初めとする認証情報の不正取得を効率的に防ぎつつ、ユーザの安全性と利便性を高めるユーザ認証サーバを提供することが可能となる。
【図面の簡単な説明】
【００２３】
【図１】図１は、ユーザ認証システム１の概要を説明するための図である。
【図２】図２は、ユーザ認証システム１の全体構成図である。
【図３】図３は、ユーザ端末１０、ユーザ認証サーバ２００の機能ブロック図である。
【図４】図４は、ユーザ端末１０、ユーザ認証サーバ２００が実行するワンタイムパスワード認証処理を示すフローチャート図である。
【図５】図５は、ユーザ端末１０、ユーザ認証サーバ２００が実行するワンタイムパスワード生成用鍵共有処理を示すフローチャート図である。
【図６】図６は、ユーザ端末１０、ユーザ認証サーバ２００が実行する認証処理を示すフローチャート図である。
【図７】図７は、ユーザ端末１０の表示部に表示された警告画面の一例である。
【図８】図８は、ワンタイムパスワードデータベース２５０内に記憶されているテーブルの一例である
【図９】図９は、認証履歴データベース２５１内に記憶されているテーブルの一例である
【図１０】図１０は、警告履歴データベース２５２内に記憶されているテーブルの一例である
【発明を実施するための形態】
【００２４】
以下、本発明を実施するための最良の形態について図を参照しながら説明する。なお、これはあくまでも一例であって、本発明の技術的範囲はこれに限られるものではない。
【００２５】
［ユーザ認証システム１の概要］
図１は、本発明の好適な実施形態であるユーザ認証システム１の概要を説明するための図である。この図１に基づいて、ユーザ認証システム１の概要を説明する。
【００２６】
ここでは、本発明であるユーザ認証システム１の認証フローを、従来の認証フローと比較して説明する。初めに、従来の認証フローについて説明する。ここで、ウェブサービス等を利用するユーザは、ユーザ端末１０を用いてユーザ認証サーバ２００にアクセスし、ＩＤ、パスワード等の認証情報を送信して認証を試みる（ステップＳ０１）。
【００２７】
ユーザ認証サーバ２００は、認証情報が正しい時はログインの成功を通知する（ステップＳ０２）。その後、ユーザ端末１０は別途ワンタイムパスワードの入力を求められる。これは、振込や購入といった、より重要度の高く高度な安全性が求められる機能を利用する場合や、より安全性の高いログインを求められる場合に見受けられる。
【００２８】
ユーザ端末１０はワンタイムパスワードを送信すると、ユーザ認証サーバ２００はワンタイムパスワードを照合し、正規のワンタイムパスワードである場合には、ユーザ端末は認証に成功したとして、様々な機能を利用可能となる（ステップＳ０４）。
【００２９】
しかしながら、この認証フローでは、ステップＳ０１に示す認証情報の送信と、ステップＳ０２に示す認証結果の取得のプロセスを容易に実行可能であるので、これを繰り返す等して認証情報が不正に取得されてしまうおそれがあるという問題があった。
【００３０】
一方で、ユーザ認証システム１の認証フローでは、ユーザ端末１０はステップＳ０１、Ｓ０２に示す認証処理よりも先に、ＩＤ及びワンタイムパスワードの送信を行う（ステップＳ０５）。ワンタイムパスワードデータベース２５０には、ユーザのＩＤとワンタイムパスワードを生成するための鍵が関連付けられて記憶されている。ユーザ認証サーバ２００はワンタイムパスワードデータベース２５０からＩＤによってワンタイムパスワード生成用の鍵を抽出してワンタイムパスワードを生成した後、送信されたワンタイムパスワードを照合し、正規のワンタイムパスワードである場合には、ユーザ端末は認証に成功したとして次の認証ステップに進む（ステップＳ０６）。
【００３１】
ユーザ端末１０は、ワンタイムパスワードの認証に成功して初めてパスワード等の認証情報を送信することができる（ステップＳ０７）。このような構成において、ログイン結果の取得（ステップＳ０８）にはワンタイムパスワードの認証が必須となる。
【００３２】
ユーザ認証システム１において、ワンタイムパスワードに対しては総当たりによる不正取得が理論上可能である。しかしながら、万が一ワンタイムパスワードを不正取得されても、そのワンタイムパスワードは一度利用する、一定時間が経過する等により利用できなくなるため、認証情報の不正取得に対する安全性は、従来の認証フローと比較して劇的に向上する。以上が、ユーザ認証システム１の概要である。
【００３３】
［ユーザ認証システム１のシステム構成］
図２は、本発明の好適な実施形態であるユーザ認証システム１のシステム構成図である。ユーザ認証システム１は、公衆回線網３（インターネット網や第３世代、第４世代通信網など）、ユーザ端末１０、ユーザ認証サーバ２００、ワンタイムパスワードデータベース２５０、認証履歴データベース２５１、警告履歴データベース２５２から構成される。
【００３４】
ユーザ端末１０は、公衆回線網３を介して、ユーザ認証サーバ２００と通信可能に接続されている。ユーザ認証システム１内の通信は、無線通信、有線通信を問わない。ユーザ端末１０が公衆回線網３と接続するために、ルータ等のネットワーク機器を介して通信可能であってよい。
【００３５】
ユーザ端末１０は、ユーザがシステムの認証を行い、機能を発揮させる一般的な情報端末であってよく、後述する機能を備える情報機器や電化製品である。ユーザ端末１０は、例えば、携帯電話、スマートフォン、複合型プリンタ、テレビ、ルータ又はゲートウェイ等のネットワーク機器、コンピュータに加えて、冷蔵庫、洗濯機等の白物家電であってもよいし、電話機、ネットブック端末、スレート端末、電子書籍端末、電子辞書端末、携帯型音楽プレーヤ、携帯型コンテンツ再生・録画プレーヤ等の一般的な情報家電であってよい。
【００３６】
ユーザ認証サーバ２００は、記憶部にワンタイムパスワードデータベース２５０、認証履歴データベース２５１、警告履歴データベース２５２を備え、ユーザ端末１０に対して認証処理を行う、後述の機能を備えたサーバである。
【００３７】
［各機能の説明］
図３は、ユーザ端末１０、ユーザ認証サーバ２００の機能ブロックと各機能の関係を示す図である。
【００３８】
ユーザ端末１０は、制御部１１として、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ），ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ），ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等を備え、通信部１２として、例えば、ＩＥＥＥ８０２．１１に準拠したＷｉＦｉ（Ｗｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ対応デバイス又は、第３世代移動通信システム等のＩＭＴ−２０００規格に準拠した無線デバイス等を備える（有線によるＬＡＮ接続であってもよい）。
【００３９】
さらに、ユーザ端末１０は、入出力部１３として、制御部で制御したデータや画像を出力表示する表示部を備え、かつ、ユーザやサポート者からの入力を受付けるタッチパネルやキーボード、マウス等を備える。
【００４０】
ユーザ端末１０において、制御部１１が所定のプログラムを読み込むことで、通信部１２と協働して、ワンタイムパスワード生成リクエスト送信モジュール１４、ワンタイムパスワード送信モジュール１５、認証情報送信モジュール１６、ワンタイムパスワード受信モジュール１７を実現する。また、ユーザ端末１０において、制御部１１が所定のプログラムを読み込むことで、入出力部１３と協働してワンタイムパスワード入力受付モジュール１８、認証情報入力受付モジュール１９、警告表示モジュール２０を実現する。
【００４１】
ユーザ認証サーバ２００は、同様に、制御部２０１として、ＣＰＵ，ＲＡＭ，ＲＯＭ等を備え、通信部２０２として、例えば、ＩＥＥＥ８０２．１１に準拠したＷｉＦｉ対応デバイスを備える（有線であってもよい）。加えて、ユーザ認証サーバ２００は、記憶部２０３として、ハードディスクや半導体メモリによる、データのストレージ部を備える。ユーザ認証サーバ２００は、ワンタイムパスワードデータベース２５０、認証履歴データベース２５１、警告履歴データベース２５２を記憶部２０３に備える。
【００４２】
ユーザ認証サーバ２００において、制御部２０１が所定のプログラムを読み込むことで、通信部２０２と協働して、ワンタイムパスワード受信モジュール２０４、認証情報受信モジュール２０５、警告処理モジュール２０６を実現する。また、ユーザ認証サーバ２００において、制御部２０１が所定のプログラムを読み込むことで、記憶部２０３と協働して、ワンタイムパスワード生成モジュール２０７、ワンタイムパスワード識別モジュール２０８、認証実行モジュール２０９、ワンタイムパスワード生成用鍵生成モジュール２１０、ワンタイムパスワード生成用鍵抽出モジュール２１１、認証履歴記憶モジュール２１２、認証履歴抽出モジュール２１３、認証履歴差分抽出モジュール２１４、警告履歴記憶モジュール２１５、警告履歴抽出モジュール２１６を実現する。
【００４３】
［ワンタイムパスワード認証処理］
図４は、ユーザ端末１０、ユーザ認証サーバ２００が実行するワンタイムパスワード認証処理のフローチャートである。上述した各装置のモジュールが行う処理について、本処理にて併せて説明する。
【００４４】
はじめに、ユーザ端末１０とユーザ認証サーバ２００は、ユーザ端末１０にワンタイムパスワードを通知するため、ワンタイムパスワード生成用鍵共有処理を行う（ステップＳ１１）。
【００４５】
［ワンタイムパスワード生成用鍵共有処理］
図５は、ユーザ端末１０、ユーザ認証サーバ２００が実行するワンタイムパスワード生成用鍵共有処理のフローチャートである。上述した各装置のモジュールが行う処理について、本処理にて併せて説明する
【００４６】
ここで、そもそもワンタイムパスワードとは、一度きりや一定期間のみといった特定の条件を満たす間のみ有効なパスワードを指す。その特性上、ワンタイムパスワードの不正取得に十分な機会と時間が与えられることはほぼないといってよく、高度な安全性を担保できる。
【００４７】
はじめに、ユーザ端末１０のワンタイムパスワード生成リクエスト送信モジュール１４は、ユーザ認証サーバ２００に対してワンタイムパスワードの生成リクエストを送信する（ステップＳ２１）。ユーザ認証サーバ２００はこれを受信すると（ステップＳ２２）、ワンタイムパスワード生成用鍵生成モジュール２１０がワンタイムパスワードを生成するための鍵を生成する（ステップＳ２３）。
【００４８】
ワンタイムパスワードの生成後、ワンタイムパスワード生成用鍵生成モジュール２１０は生成したワンタイムパスワード生成用鍵とユーザを関連づける（ステップＳ２４）。この関連付けは、ワンタイムパスワードデータベース２５０に、ワンタイムパスワード生成用鍵と、ユーザを特定する識別子を関連付けて記憶させることにより行う。
【００４９】
最後に、ユーザ認証サーバ２００は、ユーザ端末１０にワンタイムパスワード生成用鍵を送信し（ステップＳ２５）、ユーザ端末１０のワンタイムパスワード受信モジュール１７がこれを受信する（ステップＳ２６）。ここで、送信するのはワンタイムパスワード生成用鍵ではなく、ワンタイムパスワード生成モジュール２０７が生成用鍵から生成したワンタイムパスワードそのものであってもよい。なお、この送受信は、スマートフォンやトークン端末、メールアドレスのような別経路でワンタイムパスワードを通知する構成であってもよい。以上が、ワンタイムパスワード生成用鍵共有処理の手順である。
【００５０】
ワンタイムパスワード認証処理に戻り、ユーザ端末１０のワンタイムパスワード入力受付モジュール１８は、ユーザからワンタイムパスワードの入力を受け付ける（ステップＳ１２）。そして、ワンタイムパスワード送信モジュール１５は、入力されたワンタイムパスワードと、ユーザ端末１０の持ち主であるユーザの識別子を送信する（ステップＳ１３）。この識別子とは、いわゆるユーザＩＤを指す。
【００５１】
ユーザ認証サーバ２００のワンタイムパスワード受信モジュール２０４は、ユーザ端末１０からワンタイムパスワードとユーザの識別子を受信すると（ステップＳ１４）、ワンタイムパスワード識別モジュール２０８が、受信したワンタイムパスワードが有効であるかを識別する（ステップＳ１５）。
【００５２】
ここで、有効であるかの判断は、以下のような手続きに則って行われる。すなわち、ユーザ認証サーバ２００のワンタイムパスワード生成用鍵抽出モジュール２１１は、ワンタイムパスワードデータベース２５０からから、受信したユーザの識別子と関連付けられて記憶された鍵を抽出する。そして、ワンタイムパスワード生成モジュール２０７が抽出された鍵からワンタイムパスワードを生成し、ユーザ端末１０から受信したワンタイムパスワードと一致しているかによってワンタイムパスワードの有効性を識別する。
【００５３】
図８は、ワンタイムパスワードデータベース２５０内に記憶されているテーブルの一例である。ワンタイムパスワードデータベース２５０は、いわゆるユーザマスタと同様の構成で、ユーザＩＤ、パスワード、メールアドレス等といったユーザの基本情報に加えて、ワンタイムパスワードの生成に使われた鍵が記憶されている。また、あるユーザに対してワンタイムパスワードを明示的に無効にする場合は、ＮＵＬＬが記憶される。
【００５４】
ここで受信したワンタイムパスワードを識別した結果、有効なワンタイムパスワードではない場合（ステップＳ１５：「ＮＯ」の場合）には、以降の処理を行わず、そのままワンタイムパスワード認証処理を終了する。そうすることで、パスワードを窃取しようと試みるアクセスに対して、認証情報の受信、及び受信した認証情報が有効か否かを判断する機会を与えず、アクセスを終了させることが可能となっている。
【００５５】
一方で、受信したワンタイムパスワードが有効であった場合（ステップＳ１５：「ＹＥＳ」の場合）には、続いてユーザ端末１０から認証情報を受信する。ユーザ端末１０の
認証情報入力受付モジュール１９は、ユーザからワンタイムパスワードではないパスワードといったログインのための認証情報の入力を受け付け（ステップＳ１６）、認証情報送信モジュール１６が入力された認証情報をユーザ認証サーバ２００に送信する（ステップＳ１７）。また、認証情報送信モジュール１６は同時に、ＩＰアドレスやリンク元ＵＲＬ等のいわゆるサーバ環境変数と、デバイスの固有ＩＤといった機種情報を主としたユーザ関連情報を送信する。
【００５６】
ユーザ認証サーバ２００の認証情報受信モジュール２０５はこれを受信すると（ステップＳ１８）、ユーザ端末１０、及びユーザ認証サーバ２００は、送受信された認証情報及びユーザ関連情報を用いて、認証処理を実行する（ステップＳ１９）。
【００５７】
［認証処理］
図６は、ユーザ端末１０、ユーザ認証サーバ２００が実行する認証処理のフローチャートである。上述した各装置のモジュールが行う処理について、本処理にて併せて説明する
【００５８】
初めに、ユーザ認証サーバ２００の認証履歴抽出モジュール２１３は、今回認証対象となっているユーザについて認証履歴データベース２５１から認証履歴を抽出する（ステップＳ３１）。続いて、認証履歴差分抽出モジュール２１４は、認証履歴の中のユーザ関連情報と、今回受信したユーザ関連情報との差分を抽出する（ステップＳ３２）。
【００５９】
図９は、認証履歴データベース２５１内に記憶されているテーブルの一例である。ユーザごとにユニークに振られたユーザＩＤと、認証を試みた日時と、接続元のＩＰアドレス及び接続元の国と、取得可能であれば位置が記憶されている。また、各認証については、認証の成功、失敗、中止が認証結果として記憶されている。
【００６０】
ここで差分の抽出は、通常の利用と今回の接続がどれだけ異なっているかを定量的に判断する処理である。一例として、抽出された認証履歴のそれぞれの項目について最も多い値、又は平均値を算出して、今回のユーザ関連情報と比較する。後述する閾値は、項目ごとに定められてよく、例えば位置については１０ｋｍ、ＩＰアドレスについては下から二番目の数値が変化したか否かを閾値とするといった設定が可能である。
【００６１】
続いて、ユーザ認証サーバ２００の警告履歴抽出モジュール２１６は、今回認証対象となっているユーザについて警告履歴を抽出する（ステップＳ３３）。なお、認証対象となっているユーザの特定は、認証情報として送られてきたユーザＩＤ等のユニークな識別子をもって行う。対象のユーザが存在しない時は、正しく認証されないことが明らかなので、認証処理を初めから行わず終了してよい。また、ユニークな識別子がなく、複数のユーザがパスワード等の別の情報次第で認証対象となる場合は、それらの複数ユーザ全てについてこれらの認証履歴、警告履歴の抽出を行ってよい。
【００６２】
ここで、ユーザ認証サーバ２００の警告処理モジュール２０６は、前記抽出したユーザ関連情報の差分、又は前記抽出した警告回数が所定の閾値を超えているか否かを判断する（ステップＳ３４）。ここで、いずれかが閾値を超えていると判断された場合（ステップＳ３４：「ＹＥＳ」の場合）。には、警告処理モジュール２０６による警告処理が行われる。
【００６３】
警告処理の一例として、警告処理モジュール２０６はユーザ端末１０に対して警告表示指示を送信し（ステップＳ３６）、ユーザ端末１０の警告表示モジュール２０が警告を表示してよい。また、認証処理を中止し、認証を行わないまま認証処理を終えてもよい。警告処理はユーザに注意喚起を示す処理であってよく、ユーザ認証サーバ２００の管理者や、認証対象となっているユーザのメールアドレスに警告メールが送信されるなどしてもよい。
【００６４】
図７は、ユーザ端末１０の表示部に表示された警告画面の一例である。ログインページであることを示すページ名７１が表示されたウィンドウ内に、警告ウィンドウ７２が表示され、ログイン処理が不正である確率が高い旨を示すメッセージ７３が記載される。その根拠７４が示されても良い。ユーザは、通常ＯＫボタン７５を押しても認証処理を続行できず、一旦メールやＳＭＳといった、保証された別経路による認証の確認が行われることが多い。
【００６５】
一方で、前記抽出したユーザ関連情報の差分、又は前記抽出した警告回数がいずれも所定の閾値を超えていない場合（ステップＳ３４：「ＮＯ」の場合）には、セキュリティリスクはないものとして、受信した認証情報に基づく認証処理を行う（ステップＳ３５）。この認証処理は、ＩＤとパスワードの照合といったいわゆるログイン処理に他ならないので、詳細は割愛する。
【００６６】
最後に、ユーザ認証サーバ２００の認証履歴記憶モジュール２１２は今回の認証について認証履歴を認証履歴データベース２５１に記憶させ、また警告履歴記憶モジュール２１５は、今回の認証で警告が行われた場合は警告履歴を記憶させる。なお、認証履歴の記憶は認証が成功した時のみならず、失敗したときや、中止された時についても履歴を記憶してよい。
【００６７】
図１０は、警告履歴データベース２５２内に記憶されているテーブルの一例である。ここでは、ユーザごとにユニークに振られたユーザＩＤと、警告が行われた日時と、警告が行われた原因とが関連付けられて記憶され、あわせて警告が行われた認証についてのメール認証が行われたか否かが記憶されている。
【００６８】
ここで、認証履歴と警告履歴は関連付けられて参照できてよい。すなわち、メール未認証である警告アクセスは不正なアクセスである可能性が高く、そのようなアクセスである場合のユーザ関連情報は、一致していれば不正の可能性があるとして別途制限を設け、警告処理の条件とすることが可能である。
【００６９】
以上が、認証処理の手順である。また、認証処理の終了をもって、ワンタイムパスワード認証処理も終了する。
【００７０】
以上の処理において、ユーザ端末１０が発揮している機能は、大部分が一般的なインターネットブラウザと文字入力インターフェースにより提供される機能である。すなわち、特別な機能を備えた端末を導入しなくとも、安全性を向上させられる点も本特許の効果の一つであるといえる。
【００７１】
以上が、ワンタイムパスワード認証処理の手順である。
【００７２】
上述した手段、機能は、コンピュータ（ＣＰＵ，情報処理装置，各種端末を含む）が、所定のプログラムを読み込んで、実行することによって実現される。プログラムは、例えば、フレキシブルディスク、ＣＤ（ＣＤ−ＲＯＭなど）、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭなど）等のコンピュータ読取可能な記録媒体に記録された形態で提供される。この場合、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し記憶して実行する。また、そのプログラムを、例えば、磁気ディスク、光ディスク、光磁気ディスク等の記憶装置（記録媒体）に予め記録しておき、その記憶装置から通信回線を介してコンピュータに提供するようにしてもよい。
【００７３】
以上、本発明の実施形態について説明したが、本発明は上述したこれらの実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
【符号の説明】
【００７４】
１  ユーザ認証システム、３  公衆回線網、１０  ユーザ端末、２００  ユーザ認証サーバ、２５０  ワンタイムパスワードデータベース、２５１  認証履歴データベース、２５２  警告履歴データベース
【図１】
2015162211.tif 000003
【図２】
2015162211.tif 000004
【図３】
2015162211.tif 000005
【図４】
2015162211.tif 000006
【図５】
2015162211.tif 000007
【図６】
2015162211.tif 000008
【図７】
2015162211.tif 000009
【図８】
2015162211.tif 000010
【図９】
2015162211.tif 000011
【図１０】
2015162211.tif 000012