(57)【特許請求の範囲】
【請求項１】
情報通信端末を用いて利用対象システムを利用するユーザに対する認証を行う認証システムであって、
ユーザ毎に、該ユーザのセキュリティトークンを識別するためのトークンＩＤを含むユーザアカウント情報を管理する認証データベースと、
前記ユーザアカウント情報に含まれる前記トークンＩＤに基づいてトークンコードを生成する同期サーバと、を備え、
前記情報通信端末は、
幾何学的パターンを構成する要素群の中から選択された特定の要素から構成されるパスワード導出パターンを記憶する手段と、
前記同期サーバによって生成されるトークンコードと同期したトークンコードを前記ユーザのセキュリティトークンから取得する手段と、
前記幾何学的パターンのうちの前記パスワード導出パターンを構成する前記特定の要素に前記取得したトークンコードを割り当てるとともに、前記幾何学的パターンのうちの残りの要素に任意のコードを割り当てることによって、暗証表を生成する手段と、
前記生成した暗証表を含む被認証情報入力画面をユーザインターフェース上に表示する手段と、
前記被認証情報入力画面に対して入力されたパスワードを含むユーザ認証要求を前記認証システムに送信する手段とを備え、
前記認証システムは、
前記情報通信端末によって送信された前記ユーザ認証要求を受信し、
前記認証データベースを参照して前記ユーザ認証要求に対応するトークンＩＤを特定し、該特定したトークンＩＤに従って前記同期サーバによって生成されたトークンコードと前記受信したユーザ認証要求に含まれるパスワードとに基づいて認証判定を行い、
前記認証判定の結果を前記利用対象システムに送信する、
認証システム。
【請求項２】
利用対象システムを利用するユーザに対する認証システムによる認証に用いられる情報通信端末であって、
幾何学的パターンを構成する要素群の中から選択された特定の要素から構成されるパスワード導出パターンを記憶する手段と、
前記認証システムによって生成されるトークンコードと同期したトークンコードを取得する手段と、
前記幾何学的パターンのうちの前記パスワード導出パターンを構成する前記特定の要素に前記取得したトークンコードを割り当てるとともに、前記幾何学的パターンのうちの残りの要素に任意のコードを割り当てることによって、暗証表を生成する手段と、
前記生成した暗証表を含む被認証情報入力画面をユーザインターフェース上に表示する手段と、
を含む、情報通信端末。
【請求項３】
利用対象システムを利用するユーザに対する認証システムによる認証を行うためのプログラムであって、
前記プログラムは、情報通信端末のプロセッサの制御の下で実行されることにより、前記情報通信端末に、
幾何学的パターンを構成する要素群の中から選択された特定の要素から構成されるパスワード導出パターンを記憶する手段と、
前記認証システムによって生成されるトークンコードと同期したトークンコードを取得する手段と、
前記幾何学的パターンのうちの前記パスワード導出パターンを構成する前記特定の要素に前記取得したトークンコードを割り当てるとともに、前記幾何学的パターンのうちの残りの要素に任意のコードを割り当てることによって、暗証表を生成する手段と、
前記生成した暗証表を含む被認証情報入力画面をユーザインターフェース上に表示する手段と、
を実現させる、プログラム。
【請求項４】
情報通信端末を用いて利用対象システムを利用するユーザに対する認証を行う認証システムであって、
ユーザ毎に、幾何学的パターンを構成する要素群の中から選択された特定の要素から構成されるパスワード導出パターンと該ユーザのセキュリティトークンを識別するためのトークンＩＤとを含むユーザアカウント情報を管理する認証データベースと、
前記ユーザアカウント情報に含まれる前記トークンＩＤに基づいてトークンコードを生成する同期サーバと、を備え、
前記情報通信端末は、
前記同期サーバによって生成されるトークンコードと同期したトークンコードを前記ユーザのセキュリティトークンから取得する手段と、
幾何学的パターンを構成する要素群のそれぞれに前記取得したトークンコードを割り当てることによって、暗証表を生成する手段と、
前記生成した暗証表を含む被認証情報入力画面をユーザインターフェース上に表示する手段と、
前記被認証情報入力画面に対して入力されたパスワードを含むユーザ認証要求を前記認証システムに送信する手段とを備え、
前記認証システムは、
前記情報通信端末によって送信された前記ユーザ認証要求を受信し、
前記認証データベースを参照して前記ユーザ認証要求に対応するトークンＩＤを特定し、
前記特定したトークンＩＤに従って前記同期サーバによって生成されたトークンコードと前記ユーザ認証要求に対応するユーザのパスワード導出パターンとから該ユーザのパスワードを特定し、
前記特定したパスワードと前記受信したユーザ認証要求に含まれるパスワードとに基づいて認証判定を行い、
前記認証判定の結果を前記利用対象システムに送信する、
認証システム。
【請求項５】
利用対象システムを利用するユーザに対する認証システムによる認証に用いられる情報通信端末であって、
前記認証システムによって生成されるトークンコードと同期したトークンコードを取得する手段と、
幾何学的パターンを構成する要素群のそれぞれに記取得したトークンコードを割り当てることによって、暗証表を生成する手段と、
前記生成した暗証表を含む被認証情報入力画面をユーザインターフェース上に表示する手段と、
を含む、情報通信端末。
【請求項６】
利用対象システムを利用するユーザに対する認証システムによる認証を行うためのプログラムであって、
前記プログラムは、情報通信端末のプロセッサの制御の下で実行されることにより、前記情報通信端末に、
前記認証システムによって生成されるトークンコードと同期したトークンコードを取得する手段と、
幾何学的パターンを構成する要素群のそれぞれに前記取得したトークンコードを割り当てることによって、暗証表を生成する手段と、
前記生成した暗証表を含む被認証情報入力画面をユーザインターフェース上に表示する手段と、
を実現させるプログラム。
【請求項７】
情報通信端末を用いて利用対象システムを利用するユーザに対する認証を行う認証システムであって、
ユーザ認証要求を受信し、該受信したユーザ認証要求に基づいて所定の認証判定を行い、該認証判定の結果を前記利用対象システムに送信する認証サーバと、
ユーザ毎に、幾何学的パターンを構成する要素群の中から選択された特定の要素から構成されるパスワード導出パターンと該ユーザのセキュリティトークンを識別するためのトークンＩＤとを含むユーザアカウント情報を管理する認証データベースと、
前記ユーザアカウント情報に含まれる前記トークンＩＤに基づいてトークンコードを生成する同期サーバと、を備え、
前記認証システムは、
前記ユーザ認証要求を受信する前に、前記情報通信端末による前記利用対象システムの利用開始に基づく事前通知を受信したか否かによって、前記所定の認証判定の処理内容を選択する、
認証システム。
【請求項８】
前記認証システムは、
前記ユーザ認証要求を受信する前に、前記情報通信端末による前記利用対象システムの利用開始に基づく事前通知を受信しなかった場合には、
前記認証データベースを参照して前記受信したユーザ認証要求に対応するトークンＩＤを特定し、該特定したトークンＩＤに従って前記同期サーバによって生成されたトークンコードと前記受信したユーザ認証要求に含まれるパスワードとに基づいて前記認証判定を行う、
請求項７記載の認証システム。
【請求項９】
前記認証システムは、
前記ユーザ認証要求を受信する前に、前記情報通信端末による前記利用対象システムの利用開始に基づく事前通知を受信した場合には、
前記認証データベースを参照して前記ユーザ認証要求に対応するトークンＩＤを特定し、前記特定したトークンＩＤに従って前記同期サーバによって生成されたトークンコードと前記ユーザ認証要求に対応するユーザのパスワード導出パターンとから該ユーザのパスワードを特定し、前記特定したパスワードと前記受信したユーザ認証要求に含まれるパスワードとに基づいて前記認証判定を行う、
請求項７または８記載の認証システム。
【請求項１０】
前記認証システムは、前記事前通知を受信してから所定の時間内に前記ユーザ認証要求が到着した場合に、前記ユーザ認証要求を受信する、請求項７乃至９のいずれかに記載の認証システム。
【請求項１１】
前記認証システムは、前記事前通知を受信した場合に、前記利用対象システムに該事前通知があった旨を通知する、請求項１０記載の認証システム。
【請求項１２】
利用対象システムを利用するユーザに対する認証システムによる認証に用いられる情報通信端末であって、
幾何学的パターンを構成する要素群の中から選択された特定の要素から構成されるパスワード導出パターンを記憶する手段と、
前記認証システムによって生成されるトークンコードと同期したトークンコードを前記ユーザのセキュリティトークンから取得する手段と、
前記幾何学的パターンのうちの前記パスワード導出パターンを構成する前記特定の要素に前記取得したトークンコードを割り当てるとともに、前記幾何学的パターンのうちの残りの要素に任意のコードを割り当てることによって、暗証表を生成する第１の暗証表生成手段と、
前記幾何学的パターンを構成する要素群のそれぞれに前記取得したトークンコードを割り当てることによって、暗証表を生成する第２の暗証表生成手段と、
前記第１の暗証表生成手段又は前記第２の暗証表生成手段のいずれかで生成した暗証表を含む画面をユーザインターフェース上に表示する手段と、を含み、
ネットワーク通信の状況に応じて、前記第１の暗証表生成手段又は前記第２の暗証表生成手段のいずれかを実行するように構成された、
情報通信端末。
【請求項１３】
前記情報通信端末は、前記ネットワーク通信が可能でない場合に、前記第１の暗号表生成手段を実行し、前記ネットワーク通信が可能である場合に、前記第２の暗号表生成手段を実行する、請求項１２記載の情報通信端末。
【請求項１４】
前記利用対象システムの利用開始に基づく事前通知を前記認証システムに送信する送信手段をさらに含む、請求項１２記載の情報通信端末。
【請求項１５】
利用対象システムを利用するユーザに対する認証を行う認証システムであって、
ユーザ認証要求を受信し、該受信したユーザ認証要求に基づいて所定の認証判定を行い、該認証判定の結果を前記利用対象システムに送信する認証サーバと、
所定の幾何学的パターンを構成する要素群のうちの特定の要素により構成される前記ユーザのパスワード導出パターンと、該ユーザのセキュリティトークンを識別するためのトークンＩＤとを関連付けたユーザアカウント情報を記憶する認証データベースと、
前記トークンＩＤで識別されるセキュリティトークンと同期して該セキュリティトークンと同一のトークンコードを生成する同期サーバと、を備え、
前記認証サーバは、
前記ユーザの情報通信端末からの前記利用対象システムへの認証開始要求に基づいて、該ユーザに、前記セキュリティトークンが生成したトークンコードと前記認証データベースに記憶されたパスワード導出パターンとに従って形成されるパスワード情報を含む被認証情報を入力させるために、該情報通信端末のユーザインターフェース上に被認証情報入力画面を提供する手段と、
前記情報通信端末から送信される被認証情報に基づいて、前記認証データベースの対応するユーザアカウント情報を参照し、前記同期サーバから該ユーザのセキュリティトークンに対応するトークンコードを取得する手段と、
前記認証データベースの前記対応するユーザアカウント情報を参照し、前記取得したトークンコードと該ユーザのパスワード導出パターンとに基づいて、前記被認証情報の認証判定を行う手段と、
前記認証判定の結果を前記利用対象システムに通知する手段と、
備える、ユーザ認証システム。
【請求項１６】
利用対象システムを利用するユーザに対する認証を行うためのユーザ認証方法であって、
認証システムが、所定の幾何学的パターンを構成する要素群のうちの特定の要素により構成される前記ユーザのパスワード導出パターンと、該ユーザのセキュリティトークンを識別するためのトークンＩＤとを関連付けたユーザアカウント情報を認証データベースに登録することと、
前記利用対象システム又は前記認証システムのいずれかが、前記ユーザの情報通信端末からの前記利用対象システムへの認証開始要求に基づいて、該情報通信端末のユーザインターフェース上に被認証情報入力画面を提供し、該ユーザに、前記セキュリティトークンが生成したトークンコードと前記登録されたパスワード導出パターンとに従って形成されるパスワード情報を含む被認証情報を入力させることと、
前記認証システムが、前記情報通信端末から送信される被認証情報を受信し、該受信した被認証情報に基づいて、前記認証データベースの対応するユーザアカウント情報を参照し、該ユーザのセキュリティトークンと同一のトークンコードを生成することと、
前記認証システムが、前記認証データベースの前記対応するユーザアカウント情報を参照し、前記生成したトークンコードと該ユーザのパスワード導出パターンとに基づいて、前記被認証情報の認証判定を行うことと、
前記認証システムが、前記認証判定の結果を前記利用対象システムに通知することと、
を含むユーザ認証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータセキュリティに関し、特に、コンピュータシステムに対するユーザ認証の方法及びこれを実現するためのシステム並びにこれに用いられる情報通信端末に関する。
【背景技術】
【０００２】
コンピュータセキュリティは、コンピュータシステムを悪意ある第三者による不正な利用から守るために極めて重要な技術である。コンピュータシステムに対する不正なアクセスを防止するためのユーザ認証の単純な例は、認証サーバに予め登録されたユーザＩＤとパスワードとを用いた方式である。ユーザ認証は、要求されるセキュリティレベルや使用環境に応じて、さまざまな方式が提案されている。【０００３】
チャレンジ＆レスポンス認証は、ユーザ認証に用いられる文字列に特殊な処理を施すことにより、通信途中においてパスワード等が盗聴されることを防止する技術である。典型的には、この認証技術は、インターネット等のような安全性が保証されない通信経路を利用してユーザ認証せざるを得ないような環境で用いられる。【０００４】
チャレンジ＆レスポンス認証においては、まず、認証を受けたいクライアントが認証要求をサーバに送り、サーバはそれに対してランダムな例えば数値列（「チャレンジ」と呼ばれる。）を返信する。クライアントは、ユーザが入力したパスワードとチャレンジとを例えば乱数表に従って「レスポンス」と呼ばれる数値列を作成し、サーバに送信する。サーバ側では、送信したチャレンジとあらかじめ登録されたそのユーザのパスワードから同じようにレスポンスを作成し、送られてきたレスポンスと比較する。レスポンスが一致すれば、パスワードは正しいことになり、認証が成功したことになる。【０００５】
下記特許文献１は、チャレンジ＆レスポンス認証をさらに発展させたものであって、パスワードそのものでなく、パスワードを導き出すための幾何学的パターン（「パスワード導出パターン」乃至は「パスワード抜き出しパターン」と呼ばれる。）を用いたユーザ認証方式を開示する。具体的には、特許文献１は、ユーザ毎にパスワード導出パターンを認証サーバに予め登録しておき、ユーザがシステムを利用する際に、認証サーバが提示用パターンを生成してユーザに提示して、この提示用パターンについてユーザ自身のパスワード導出パターンに対応するパスワードを入力させ、認証サーバが、提示した提示用パターンとユーザ自身の登録してあるパスワード導出パターンとに基づいて、入力されたパスワードに対して認証を行い、その認証結果を利用対象システムに通知するユーザ認証方法およびユーザ認証システムを開示する。【０００６】
また、セキュリティトークンは、コンピュータシステムに対するユーザ認証を補助するためのデバイスであり、例えば、内部でトークンコードを生成し、ディスプレイ上にそれを表示する。典型的には、セキュリティトークンは、認証側のシステムが生成するトークンコードと同一のトークンコードを時刻同期で生成することができる。【０００７】
下記特許文献２は、ユーザがアクセスしたサーバ（サイト）が正当であるか否かを容易に確認するサイト確認方法を開示する。具体的には、特許文献２は、ユーザが第１の情報端末装置からサイトを管理する第１のサーバにアクセスした場合に、第１のサーバが、第１の情報端末装置に所定の確認情報を表示させる第１の表示ステップと、ユーザが第２の情報端末装置から第２のサーバにアクセスした場合に、第２のサーバが、第２の情報端末装置に当該所定の確認情報を表示させる第２の表示ステップとを備えるサイト確認方法を開示する。さらに、かかる特許文献２においては、第２のサーバ及び第２の情報端末装置の代わりに、セキュリティトークン（ハードウェアトークン）を用いる確認方法も開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】国際公開ＷＯ２００３／０６９４９０
【特許文献２】国際公開ＷＯ２００７／０２６４８６
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ユーザ認証において、そこで利用されるパスワードの漏洩（盗聴）は、非常に深刻なセキュリティ問題を招く結果となる。従って、ユーザによるパスワードの管理はきわめて重要であり、また、個々のユーザが自身の行動に「責任」を持つことが、システムのセキュリティ問題を考慮する上で、基本となる。【００１０】
一般的に、ユーザ認証に使用されるパスワードは、システムごとに要求されるものであり、また、その書式（例えば使用可能文字や文字数等）もさまざまである。このため、多くのシステムを利用するユーザは、それに応じて多くのパスワードを管理しなければならず、パスワードの管理は、ユーザに対してある種の負担を与えていた。ユーザは、本来、自身のパスワードを記憶に留めるように努めているはずであるが、多くのパスワードを管理するような場合には、それらを手帳等に書き留めることも少なくない。また、パスワードの管理を煩わしく感じるユーザは、パスワードを例えば自身の誕生日といった記憶しやすい数字に設定したり、システム毎のパスワードを全て共通の数字に設定して統一的に管理するのが実情である。【００１１】
しかしながら、このようなパスワードの管理に対するユーザの行動は、そのシステムをセキュリティリスクに晒すことを意味しており、ユーザがこのような行動をとる限り、従来の単なるパスワードを用いたユーザ認証では、本質的なセキュリティ問題が存在する。【００１２】
また、ユーザが細心の注意を払ってパスワードの管理をしていたとしても、例えば、店舗に設置された端末装置上で入力しているパスワードを盗み見られたり、また、その端末装置自体に「盗聴」機構が組み込まれ、これによりパスワードが第三者に漏洩するというセキュリティ問題も存在していた。【００１３】
さらに、乱数表を用いたユーザ認証であっても、ユーザがその乱数表を紛失し、または盗難に遭い、第三者が入手した場合には、もはや従来のユーザ認証と同等のセキュリティレベルがあるにすぎず、この種のユーザ認証では、システムに対する不正アクセスを有効に防止することは困難であった。この点は、セキュリティトークンを用いたユーザ認証であっても同様である。【００１４】
そこで、本発明は、上記課題を解決するために、システムに対する第三者の不正アクセスを有効に防止する新たなユーザ認証方法及びこれを実現するシステムを提供することを目的とする。【００１５】
また、本発明は、既存のシステムインフラストラクチャを最大限活用することにより、余分なコスト負担をかけることない、有効なユーザ認証方法及びシステムを提供することを目的とする。【００１６】
さらに、本発明は、システムに対する不正アクセスを有効に防止しつつ、ユーザによるパスワード管理を容易にして、あらゆるユーザにとって使い勝手のよいユーザ認証方法及びシステムを提供することを目的とし、ひいてはユーザの行動に起因する本質的なセキュリティ問題を排除することを目的とする。【００１７】
具体的には、本発明は、パスワード導出パターンを用いたユーザ認証方法の概念を応用した、さらにセキュリティ効果の高いユーザ認証方法及びこれを実現するシステムを提供することを目的とする。【００１８】
また、本発明は、セキュリティトークンを用いたユーザ認証方法をベースにし、さらにセキュリティ効果の高いユーザ認証方法及びこれを実現するシステムを提供することを目的とする。【００１９】
さらにまた、本発明は、ユーザが置かれたネットワーク通信状況に応じて、適切なユーザ認証方法に切り替えることができる方法及びシステムを提供することを目的とする。【００２０】
さらにまた、本発明は、かかるユーザ認証方法及びシステムにおいて用いられるユーザアカウント情報の登録方法及びこれを実現するユーザインターフェースを提供することを目的とする。
【課題を解決するための手段】
【００２１】
上記課題を解決するための第１の観点に従う本発明は、情報通信端末が、予め登録されたユーザのパスワード導出パターンを構成する各要素（セル）に認証システム側と時刻同期して生成されたトークンコードを構成する数字及び／又は文字（以下、「数字等」という。）を割り当てるとともに、他の要素にランダムに生成された数字等を割り当てた暗証表をユーザインターフェース上に表示し、ユーザは、該暗証表を参照して、自身のパスワード導出パターンを構成する各要素に割り当てられた数字等を抜き出してパスワード（パスコード）として入力し、認証システムは、該生成した時刻同期のトークンコードに基づいて、入力されたパスワードに対する認証判定を行うユーザ認証方法及びこれを実現するシステムである。かかる第１の観点に従う発明は、第１の実施形態によって説明される。【００２２】
即ち、本発明は、情報通信端末を用いて利用対象システムを利用するユーザに対する認証を行う認証システムであって、ユーザ毎に、該ユーザのセキュリティトークンを識別するためトークンＩＤを含むユーザアカウント情報を管理する認証データベースと、前記ユーザアカウント情報に含まれる前記トークンＩＤに基づいてトークンコードを生成する同期サーバと、を備える認証システムである。前記情報通信端末は、幾何学的パターンを構成する要素群の中から選択された特定の要素から構成されるパスワード導出パターンを記憶する手段と、前記同期サーバによって生成されるトークンコードと時刻同期したトークンコードを前記ユーザのセキュリティトークンから取得する手段と、前記幾何学的パターンのうちの前記パスワード導出パターンを構成する前記特定の要素に前記取得したトークンコードを割り当てるとともに、前記幾何学的パターンのうちの残りの要素に任意のコードを割り当てることによって、暗証表を生成する手段と、前記生成した暗証表を含む被認証情報入力画面をユーザインターフェース上に表示する手段と、前記被認証情報入力画面に対して入力されたパスワードを含むユーザ認証要求を前記認証システムに送信する手段とを備え、前記認証システムは、前記情報通信端末によって送信された前記ユーザ認証要求を受信し、前記認証データベースを参照して前記ユーザ認証要求に対応するトークンＩＤを特定し、該特定したトークンＩＤに従って前記同期サーバによって生成されたトークンコードと前記受信したユーザ認証要求に含まれるパスワードとに基づいて認証判定を行い、前記認証判定の結果を前記利用対象システムに送信する。【００２３】
上記課題を解決するための第２の観点に従う本発明は、情報通信端末が、認証システムと時刻同期で生成されたトークンコードを幾何学的パターンの各要素に割り当てて構成した暗証表をユーザインターフェース上に表示し、ユーザは、表示された暗証表を参照し、自身のパスワード導出パターンに対応する各要素に割り当てられた数字等を抜き出してパスワードとして入力し、認証システムは、情報通信端末と時刻同期で生成された同じ暗証表（即ち、トークンコード）及び予め登録されたユーザのパスワード導出パターンに基づいて、入力されたパスワードに対する認証判定を行うユーザ認証方法及びこれを実現するシステムである。かかる第２の観点に従う発明は、第２の実施形態によって説明される。【００２４】
即ち、本発明は、情報通信端末を用いて利用対象システムを利用するユーザに対する認証を行う認証システムであって、ユーザ毎に、幾何学的パターンを構成する要素群の中から選択された特定の要素から構成されるパスワード導出パターンと該ユーザのセキュリティトークンを識別するためトークンＩＤとを含むユーザアカウント情報を管理する認証データベースと、前記ユーザアカウント情報に含まれる前記トークンＩＤに基づいてトークンコードを生成する同期サーバと、を備える認証システムである。前記情報通信端末は、前記同期サーバによって生成されるトークンコードと時刻同期したトークンコードを前記ユーザのセキュリティトークンから取得する手段と、幾何学的パターンを構成する要素群のそれぞれに前記取得したトークンコードを割り当てることによって、暗証表を生成する手段と、前記生成した暗証表を含む被被認証情報入力画面をユーザインターフェース上に表示する手段と、前記被認証情報入力画面に対して入力されたパスワードを含むユーザ認証要求を前記認証システムに送信する手段とを備え、前記認証システムは、前記情報通信端末によって送信された前記ユーザ認証要求を受信し、前記認証データベースを参照して前記ユーザ認証要求に対応するトークンＩＤを特定し、前記特定したトークンＩＤに従って前記同期サーバによって生成されたトークンコードと前記ユーザ認証要求に対応するユーザのパスワード導出パターンとから該ユーザのパスワードを特定し、前記特定したパスワードと前記受信したユーザ認証要求に含まれるパスワードとに基づいて認証判定を行い、前記認証判定の結果を前記利用対象システムに送信する。【００２５】
上記課題を解決するための第３の観点に従う本発明は、ユーザが、情報通信端末のユーザインターフェース上に表示された幾何学的パターンに対して、認証システム側と時刻同期で生成されたトークンコードを構成する数字等を自身のパスワード導出パターンに対応する各要素に順番に割り当てることでパスワード情報を入力し、認証システムは、情報通信端末と時刻同期で生成されたトークンコードに基づいて、入力されたパスワード情報に対する認証判定を行うユーザ認証方法及びこれを実現するシステムである。かかる第３の観点に従う発明は、第３の実施形態によって説明される。【００２６】
即ち、本発明は、利用対象システムを利用するユーザに対する認証を行う認証システムであって、ユーザ認証要求を受信し、該受信したユーザ認証要求に基づいて所定の認証判定を行い、該認証判定の結果を前記利用対象システムに送信する認証サーバと、所定の幾何学的パターンを構成する要素群のうちの特定の要素により構成される前記ユーザのパスワード導出パターンと、該ユーザのセキュリティトークンを識別するためのトークンＩＤとを関連付けたユーザアカウント情報を記憶する認証データベースと、前記トークンＩＤで識別されるセキュリティトークンと同期して該セキュリティトークンと同一のトークンコードを生成する同期サーバと、を備える認証システムである。そして、前記認証サーバは、前記ユーザの情報通信端末からの前記利用対象システムへの認証開始要求に基づいて、該ユーザに、前記セキュリティトークンが生成したトークンコードと前記登録したパスワード導出パターン従って形成されるパスワード情報を含む被認証情報を入力させるために、該情報通信端末のユーザインターフェース上に被認証情報入力画面を提供する手段と、前記情報通信端末から送信される被認証情報に基づいて、前記認証データベースの対応するユーザアカウント情報を参照し、前記同期サーバから該ユーザのセキュリティトークンに対応するトークンコードを取得する手段と、前記認証データベースの前記対応するユーザアカウント情報を参照し、前記取得したトークンコードと該ユーザのパスワード導出パターンとに基づいて、前記被認証情報の認証判定を行う手段と、前記認証判定の結果を前記利用対象システムに通知する手段と、備える。【００２７】
上記課題を解決するための第４の観点に従う本発明は、上記いずれかの観点に従うユーザ認証方法を、ユーザが置かれた所定の環境乃至は条件に従って、切り替えるようにしたユーザ認証方法及びこれを実現するシステムである。かかる第４の観点に従う発明は、第４の実施形態によって説明される。【００２８】
即ち、本発明は、情報通信端末を用いて利用対象システムを利用するユーザに対する認証を行う認証システムであって、ユーザ認証要求を受信し、該受信したユーザ認証要求に基づいて所定の認証判定を行い、該認証判定の結果を前記利用対象システムに送信する認証サーバと、ユーザ毎に、幾何学的パターンを構成する要素群の中から選択された特定の要素から構成されるパスワード導出パターンと該ユーザのセキュリティトークンを識別するためトークンＩＤとを含むユーザアカウント情報を管理する認証データベースと、
前記ユーザアカウント情報に含まれる前記トークンＩＤに基づいてトークンコードを生成する同期サーバと、を備え、前記ユーザ認証要求を受信する前に、前記情報通信端末による前記利用対象システムの利用開始に基づく事前通知を受信したか否かによって、前記所定の認証判定の処理内容を選択するようにした認証システムである。【００２９】
上記装置（システム）の発明は、方法の発明として把握することができる。また、これらの発明は、コンピュータのプロセッサの制御の下で実行されることで、所定のハードウェアと相まってコンピュータに所定の機能を実現させるプログラムおよび該プログラムを記録した記録媒体としても把握される。【００３０】
上記一の観点における特定のフィーチャ（技術的事項）を、適宜改良しながら、上記他の観点に追加し、又は該他の観点における特定のフィーチャと置換することもできる。【００３１】
なお、本明細書において、手段とは、単に物理的手段を意味するものではなく、その手段が有する機能をソフトウェアによって実現する場合も含む。また、１つの手段が有する機能が２つ以上の物理的手段により実現されても、２つ以上の手段の機能が１つの物理的手段により実現されても良い。
【発明の効果】
【００３２】
本発明によれば、コンピュータシステムに対する第三者の不正アクセスを有効に防止することができるようになる。特に、本発明によれば、ユーザによるパスワード管理を容易にして、あらゆるユーザにとって使い勝手のよいユーザ認証方法及びシステムが提供されることになり、ひいてはユーザの行動に起因する本質的なセキュリティ問題を排除することができるようになる。【００３３】
また、本発明によれば、既存のシステムインフラストラクチャを最大限活用しているので、余分なコスト負担をかけることなく、このようなユーザ認証方法及びシステムを容易に導入することができるようになる。【００３４】
本発明の他の技術的特徴、目的、及び作用効果乃至は利点は、添付した図面を参照して説明される以下の実施形態により明らかにされる。
【図面の簡単な説明】
【００３５】
【図１】本発明の一実施形態に係るユーザ認証方法の概略スキームを説明するための概略である。
【図２】本発明の一実施形態に係るユーザ認証方法において使用されるパスワード導出パターンを説明するための図である。
【図３Ａ】本発明の一実施形態に係るユーザ認証方法におけるパスワード導出パターンの登録画面の一例を示す図である。
【図３Ｂ】本発明の一実施形態に係るユーザ認証方法におけるパスワード導出パターンの登録画面の他の例を示す図である。
【図４Ａ】本発明の一実施形態に係るユーザ認証方法におけるパスワード導出パターンの設定確認画面の一例を示す図である。
【図４Ｂ】本発明の一実施形態に係るユーザ認証方法におけるパスワード導出パターンの設定確認画面の他の例を示す図である。
【図５】本発明の一実施形態に係るユーザ認証方法における認証データベースのデータ構造の一例を示す図である。
【図６Ａ】本発明の一実施形態に係るユーザ認証方法における情報通信端末の処理を説明するためのフローチャートである。
【図６Ｂ】本発明の一実施形態に係るユーザ認証方法における情報通信端末の処理を説明するためのフローチャートである。
【図７】本発明の一実施形態に係るユーザ認証方法における情報通信端のユーザインターフェース上に表示されたログイン画面の一例を示す図である。
【図８】本発明の一実施形態に係る認証システムの機能的構成を示すブロックダイアグラムである。
【図９】本発明の一実施形態に係るユーザ認証方法における認証システムにおける処理を説明するためのフローチャートである。
【図１０】本発明の一実施形態に係るユーザ認証方法の概略スキームを説明するための概略である。
【図１１】本発明の一実施形態に係るユーザ認証方法における情報通信端末の処理を説明するためのフローチャートである。
【図１２】本発明の一実施形態に係るユーザ認証方法における認証データベースのデータ構造の一例を示す図である。
【図１３】本発明の一実施形態に係る認証システムの機能的構成を示すブロックダイアグラムである。
【図１４】本発明の一実施形態に係るユーザ認証方法のおけるトークンコードからパスワードを特定する方法を説明するための図である。
【図１５】本発明の一実施形態に係るユーザ認証方法における認証システムによる処理を説明するためのフローチャートである。
【図１６】本発明の一実施形態に係るユーザ認証方法の概略スキームを説明するための概略である。
【図１７】本発明の一実施形態に係るユーザ認証方法における情報通信端末のユーザインターフェース上に表示された設定の確認画面の一例を示す図である。
【図１８】本発明の一実施形態に係るユーザ認証方法における利用対象システムの処理を説明するためのフローチャートである。
【図１９】本発明の一実施形態に係るユーザ認証方法における情報通信端のユーザインターフェース上に表示されたログイン画面の一例を示す図である。
【図２０】本発明の一実施形態に係るユーザ認証方法におけるハードウェアトークンのディスプレイ画面の表示例を示す図である。
【図２１Ａ】本発明の一実施形態に係るユーザ認証方法におけるユーザ認証要求の一例を示す図である。
【図２１Ｂ】本発明の一実施形態に係るユーザ認証方法におけるユーザ認証要求の他の例を示す図である。
【図２２Ａ】本発明の一実施形態に係る認証システムの機能的構成の一例を示すブロックダイアグラムである。
【図２２Ｂ】本発明の一実施形態に係る認証システムの機能的構成の他の例を示すブロックダイアグラムである。
【図２３】本発明の一実施形態に係るユーザ認証方法における認証システムによる処理を説明するためのフローチャートである。
【図２４Ａ】本発明の一実施形態に係るユーザ認証方法における認証システムによる処理を説明するためのフローチャートである。
【図２４Ｂ】本発明の一実施形態に係るユーザ認証方法における認証システムによる処理を説明するためのフローチャートである。
【図２５】本発明の一実施形態に係るユーザ認証方法における情報通信端末の処理を説明するためのフローチャートである。
【図２６】本発明の一実施形態に係るユーザ認証方法における認証システムによる処理を説明するためのフローチャートである。
【図２７Ａ】本発明の一実施形態に係るユーザ認証方法における認証システムによる処理の他の例を説明するためのフローチャートである。
【図２７Ｂ】本発明の一実施形態に係るユーザ認証方法における認証システムによる処理の他の例を説明するためのフローチャートである。
【図２８】本発明の一実施形態に係るユーザ認証方法におけるパスワード導出パターンを登録するためのユーザインターフェースの一例を示す図である。
【図２９】本発明の一実施形態に係るユーザ認証方法におけるパスワード導出パターンを登録するためのユーザインターフェースの一例を示す図である。
【図３０Ａ】本発明の一実施形態に係るユーザ認証方法におけるパスワード導出パターンを登録するためのユーザインターフェースの一例を示す図である。
【図３０Ｂ】本発明の一実施形態に係るユーザ認証方法におけるパスワード導出パターンを登録するためのユーザインターフェースの一例を示す図である。
【図３１Ａ】本発明の一実施形態に係るユーザ認証方法におけるパスワード導出パターンを登録するためのユーザインターフェースの一例を示す図である。
【図３１Ｂ】本発明の一実施形態に係るユーザ認証方法におけるパスワード導出パターンを登録するためのユーザインターフェースの一例を示す図である。
【図３２】本発明の一実施形態に係るユーザ認証方法におけるコンピューティングデバイスの概略構成を示す図である。
【発明を実施するための形態】
【００３６】
次に、本発明の実施の形態について、図面を参照しつつ説明する。
【００３７】
［第１の実施形態］
（概要）
本実施形態は、情報通信端末が、予め登録されたユーザのパスワード導出パターンを構成する各要素（セル）に認証システム側と時刻同期して生成されたトークンコードを構成する数字及び／又は文字（以下、「数字等」という。）を割り当てるとともに、他の要素にランダムに生成された数字等を割り当てた暗証表をユーザインターフェース上に表示し、ユーザは、該暗証表を参照して、自身のパスワード導出パターンを構成する各要素に割り当てられた数字等を抜き出してパスワード（パスコード）として入力し、認証システムは、該生成した時刻同期のトークンコードに基づいて、入力されたパスワードに対する認証判定を行うユーザ認証方法及びこれを実現するシステムを開示する。
【００３８】
図１は、本発明の一実施形態に係るユーザ認証方法の概略スキームを説明するための概略である。同図に示すように、かかるスキームにおいて、ユーザは、インターネット１０に接続可能な情報通信端末２０を所持しており、また、ユーザが利用しようとする対象システム３０（以下、「利用対象システム３０」という。）及び認証システム４０がインターネット１０に接続されている。本例では、インターネットを用いて説明するが、ＩＰネットワークに限らず、ノード間通信を可能とするあらゆるプロトコルのネットワークが適用可能である。認証システム４０は、例えば、認証サーバ４２、認証データベース４４及び同期サーバ４６を含んで構成される。
【００３９】
情報通信端末２０は、典型的には、ユーザが所有するコンピューティングデバイスであり、例えば、パーソナルコンピュータや、携帯電話機、ＰＤＡ、フィーチャーフォン（スマートフォン）、タブレットコンピュータ及びその他のインテリジェントデバイスが該当するが、これらに限られるものではない。ここでは、情報通信端末２０は、タッチパネルを備えたスマートフォンであるものとする。情報通信端末２０は、例えば、図示しないＷｉＦｉネットワークを介して、ＩＰネットワークによって構築されたインターネット１０に通信接続することができ、或いはキャリアネットワーク１２からゲートウェイ１４を介してインターネットに通信接続することができる。これにより、情報通信端末２０は、インターネット１０上のさまざまなノード（例えばＷｅｂサーバやクラウドサーバ）にアクセスすることができる。情報通信端末２０のハードウェア構成は既知であるので、ここでは省略する。なお、本明細書に開示された他の実施形態から明らかなように、情報通信端末２０は、通信機能を必須としておらず、単なる情報端末に置換することができる。
【００４０】
本実施形態では、情報通信端末２０は、例えばソフトウェアトークン２２ａを含んで構成される。即ち、情報通信端末２０には、セキュリティトークン機能（タイムシンクロナス機能）を実現するアプリケーションプログラム（以下、「セキュリティトークンプログラム」という。）がインストールされ、情報通信端末２０は、プロセッサの制御の下、セキュリティトークンプログラムを実行することにより、同期サーバ４６と時刻同期したトークンコードを生成することができるように構成されている。トークンコードは、所定の時間間隔毎に変化することから、ワンタイムパスワード（ＯＴＰ）と呼ばれることもある。より具体的には、情報通信端末２０と同期サーバ４６とは、同じパスワード生成アルゴリズムを有するセキュリティトークンプログラムを実装する。従って、情報通信端末２０と同期サーバ４６とは、同じシードを用いることによって、時刻同期の同じトークンコードを生成することができる。同期サーバ４６は、例えば、セキュリティトークンプログラム毎に割り当てられたトークンＩＤに従ってパスワード生成アルゴリズムを特定する。
【００４１】
パスワード生成アルゴリズムには、既知のものを利用することができ、例えば、あるシードからハッシュ関数のような数学的アルゴリズムを用いてトークンコードが生成される。シードは、例えば、現在時刻を使用するのであっても良いし、前回生成したパスワードを使用するものであっても良いし、又はこれらの組み合わせであっても良い。或いは、ソフトウェアトークン２２ａ毎に割り当てられたトークンＩＤやユーザの情報に由来する値等（例えばユーザ名やユーザの誕生日、メールアドレス又はこれらの組み合わせ等）を用いても良い。例えば、セキュリティトークンプログラムは、トークンＩＤに対して所定の変換アルゴリズムを用いてシードを生成する。セキュリティトークンプログラムは、所定の時間毎（例えば１分毎）にトークンコードを生成するように構成されても良いし、ユーザのログイン時といったイベント時にそれを生成するように構成されても良い。
【００４２】
なお、ソフトウェアトークン２２ａの代わりに、他の実施形態で示されるような物理デバイスとしてのセキュリティトークン（ハードウェアトークン２２ｂ）が用いられても良い（図１６参照）。ハードウェアトークン２２ｂは、例えば、ＵＳＢインターフェース等を介して情報通信端末２０に接続される。即ち、ハードウェアトークン２２ｂは情報通信端末２０に接続されると、その内部でトークンコードを生成し、これを情報通信端末２０に提供する。或いは、ユーザは、ハードウェアトークン２２ｂのディスプレイに表示されたトークンコードを情報通信端末２０に入力する。以下では、ソフトウェアトークン２２ａとハードウェアトークン２２ｂとを区別することなく、単に、セキュリティトークン２２と呼ぶことがある。
【００４３】
また、情報通信端末２０は、後述するように、パスワード導出パターンに関する情報を記憶する。パスワード導出パターンに関する情報は、後述するパスワード導出パターン（パスワード抜き出しパターン）及び導出ルールを含む。
【００４４】
パスワード導出パターンとは、ある幾何学的なパターンを構成するセル（要素）群の中から、ユーザによって任意の順序で選択された特定の要素群の配列パターン及びその選択順序を定義したものである。言い換えれば、パスワード導出パターンは、幾何学的パターンにおけるどの要素群がどのような順番で選択されたかを示した配列ルールである。ここで注意すべきことは、パスワード導出パターンは、幾何学的パターン中の特定の要素に割り当てられた具体的な値そのものをいうのではなく、あくまでも、どの要素をどのような順番で選択したかという情報を表しているということである。
【００４５】
利用対象システム３０は、ユーザが利用しようとするシステムであり、典型的には、ユーザによる利用に際してユーザ認証を要求するシステムである。利用対象システム３０は、例えば、Ｗｅｂサイトを形成するＷｅｂサーバであっても良いし、クラウドサービスを提供するクラウドサーバであっても良い。このような場合には、典型的には、ユーザは、情報通信端末２０を介してこのようなサーバにアクセスすることになる。他の例として、利用対象システム３０は、ユーザのパーソナルコンピュータであっても良い。さらに他の例として、利用対象システム３０は、自動ロッカー（コインロッカー）やセキュリティルームの鍵開閉システム、現金自動預払機（ＡＴＭ）等であっても良い。さらに他の例として、利用対象システム３０は、情報通信端末２０においてアプリケーションプログラムが実行されることにより実現される仮想マシンであっても良い。
【００４６】
認証システム４０は、利用対象システム３０を利用しようとするユーザの認証を行うコンピュータシステムである。認証システム４０は、例えば、認証サーバ４２、認証データベース４４、及び同期サーバ４６等を含んで構成される。認証システム４０は、例えば、１以上の汎用のコンピューティングデバイスによって実現することができる。コンピューティングデバイスのハードウェア構成は既知であるが、図３３に概略的に示される。
【００４７】
認証サーバ４２は、認証データベース４４及び同期サーバ４６の機能を備え、１つのコンピューティングデバイスで構成されても良い。認証システム４０が、機能的又は論理的にどのように構成されるかは任意である。認証システム４０は、例えば、ＳＳＬ等のセキュアな通信技術を利用することによって、インターネット１０を介して、利用対象システム３０と通信可能に接続される。
【００４８】
認証サーバ４２は、認証データベース４４及び同期サーバ４６と協働し、ユーザ認証処理を統括的に制御するためのサーバコンピュータである。認証データベース４４は、個々のユーザによって予め登録された、ユーザ認証に必要なユーザアカウント情報を管理するデータベースである。認証データベース４４は、例えば、利用対象システム３０を利用可能なユーザに関する情報及びユーザ毎のセキュリティトークン２２に関する情報をユーザアカウント情報として管理する。
【００４９】
同期サーバ４６は、ユーザ毎のセキュリティトークン２２に関する情報及びシードを用いて、対応するパスワード生成アルゴリズムに従って、特定のユーザのセキュリティトークン２２と時刻同期したトークンコードを生成するためのサーバコンピュータである。シードは、例えば、セキュリティトークン２２に関する情報（例えばトークンＩＤ）から所定の変換アルゴリズムを用いて生成され、図示しないデータベースにユーザ毎に管理される。同期サーバ４６は、例えば、認証サーバ４２からの問い合わせ要求に応答し、特定のユーザのセキュリティトークン２２と時刻同期したトークンコードを認証サーバ４２に提供する。
【００５０】
なお、本例では、利用対象システム３０と認証システム４０とは、それぞれ運用主体が異なり、物理的に離れたコンピュータシステムを想定しているが、これに限られるものではない。例えば、同一の事業者が利用対象システム３０及び認証システム４０の両方を運用するものであっても良く、これらが１つ又は複数のコンピュータシステムで構成されるものであっても良い。従って、利用対象システム３０が認証システム４０の機能を含むように（又はその逆に）構成されても良い。
【００５１】
以上のような構成において、本実施形態に係るユーザ認証方法は、以下のように実現される。
【００５２】
ユーザ認証を要求する利用対象システム３０の利用に先立ち、ユーザは、まず、利用対象システムへのユーザ登録、ソフトウェアトークンの設定及び情報通信端末２０へのパスワード導出パターンの登録を行う。（図中(1)及び(1)'）
【００５３】
即ち、ユーザは、情報通信端末２０を用いて、利用対象システム３０に対する自身のユーザアカウント情報を認証システム４０の認証データベース４４に予め登録する。例えば、ユーザが、利用対象システム３０を利用するためのアプリケーションプログラムを情報通信端末２０にインストールし、未だ、そのユーザアカウントを持っていない場合、ユーザは、情報通信端末２０のユーザインターフェースを介してユーザアカウント登録画面に誘導され、ユーザアカウント情報を登録することになる。ユーザアカウント情報の登録は、情報通信端末２０に代えて、例えばパーソナルコンピュータによって行われても良い。ユーザが既にユーザアカウントを持っており、ユーザアカウント情報が認証データベース４４に登録されている場合、このようなステップは省略される。
【００５４】
また、ユーザは、情報通信端末２０にセキュリティトークンプログラムがインストールされていない場合には、これをインストールし、該セキュリティトークンプログラムに割り当てられたトークンＩＤを認証データベース４４に登録する。トークンＩＤの登録は、上記のユーザアカウント情報の登録処理の中で行われても良い。
【００５５】
さらに、ユーザは、情報通信端末２０にパスワード導出パターンを登録する。例えば、ユーザは、情報通信端末２０にインストールされたアプリケーションプログラムを実行し、これにより実現される登録処理に従って、パスワード導出パターンの登録を行う。登録されたパスワード導出パターンは、該アプリケーションプログラムが参照するデータとして、情報通信端末２０内に例えば暗号化された状態で保持される。即ち、本実施形態では、パスワード導出パターンは、認証データベース４４に記憶されるのではなく、情報通信端末２０の中に記憶される。パスワード導出パターンの登録は、同様に、上記のユーザアカウント情報の登録処理の中で行われても良い。
【００５６】
ユーザは、利用対象システム３０を利用するため、情報通信端末２０を用いて、対応するアプリケーションプログラムを起動すると、例えば情報通信端末２０は、そのユーザインターフェース上にログイン画面（被認証情報入力画面）を表示し、ユーザにユーザ名及びパスワード等の被認証情報の入力を促す（図中(2)）。被認証情報は、認証システム４０による認証を受ける情報である。ユーザアカウント登録画面に誘導されユーザアカウント情報の登録を終えたユーザは、そのままログイン画面に誘導されても良い。図示されていないが、アプリケーションプログラムは、起動時に、情報通信端末２０が利用対象システム３０にアクセスして、実行に必要なリソースを取得するように、構成されても良い。ログイン画面は、後述するように、幾何学的パターンを構成する複数の要素のそれぞれに一見するとランダムな数字等が割り当てられた暗証表を含む。本実施形態では、暗証表中、該ユーザのパスワード導出パターンを構成する各要素には、情報通信端末２０のセキュリティトークンプログラムによって生成されたトークンコードを構成する数字等のそれぞれが割り当てられ、残りの各要素にはランダムな数字等が割り当てられる。つまり、本実施形態の暗証表は、認証システム４０と時刻同期したトークンコードがパスワード導出パターンに対応する各要素に埋め込まれて構成される。言い換えれば、該ユーザのパスワード導出パターンに対応する各要素以外の要素に割り当てられた数字等は、パスワード導出パターンに対応する各要素に割り当てられた数字等をカムフラージュするためにユーザに提示される。なお、本明細書では、被認証情報入力画面をログイン画面として説明しているが、これに限られるものではない。例えば、利用対象システム３０が提供するサービスによっては、ログイン後にさらに第２暗証を要求する場合もあり、このための画面もまた被認証情報入力画面でありうる。
【００５７】
次に、ユーザは、表示された暗証表から、自身のパスワード導出パターンを構成する各要素に割り当てられた数字等を順番に抜き出して、パスワードとして入力する。ユーザは、パスワードを入力した後、例えばログインボタンを選択すると、入力されたパスワードを含むログイン要求が利用対象システム３０に送信される（図中(3)）。
【００５８】
利用対象システム３０は、ログイン要求を情報通信端末２０から受け付けると、ユーザ認証を行うため、ログイン要求に基づくユーザ認証要求を認証サーバ４２に送信する（図中(4)）。この場合、利用対象システム３０は、自身のシステムＩＤをユーザ認証要求に含めて認証サーバ４２に送信しても良い。これによって、認証サーバ４２は、異なる利用対象システム３０からのユーザ認証要求に応じることができる。なお、ユーザから見れば、情報通信端末２０によるログイン要求もある種のユーザ認証要求とみなすことができる。
【００５９】
認証サーバ４２は、ユーザ認証要求を受け付けると、認証データベース４４を参照し、該ユーザのトークンＩＤを特定する（図中(5)）。続いて、認証サーバ４２は、トークンＩＤに基づいて、ユーザのセキュリティトークンと時刻同期したトークンコードを同期サーバ４６に問い合わせて、同期サーバ４６から該ユーザのトークンコードを取得する（図中(6)）。認証サーバ４２は、ユーザのトークンコードを取得すると、これをユーザから送信されたパスワードと比較照合することによって認証判定を行い、該認証判定の結果を利用対象システム３０に送信する（図中(7)）。
【００６０】
利用対象システム３０は、認証サーバ４２による認証判定の結果をユーザに返答し、該認証判定の結果に応じて次の処理に進むことになる（図中(8)）。例えば、認証判定の結果が認証不成立である場合、ユーザはログインできなかったことが通知され、又は、認証成立の場合はログインを受け付けて、ユーザは、例えば所定の処理結果を与えられ、又はサービスを受けられることになる。
【００６１】
（パスワード導出パターンの説明）
図２は、本発明の一実施形態に係るユーザ認証方法において使用されるパスワード導出パターンを説明するための図である。
【００６２】
即ち、図２（ａ）は、４行１２列のマトリックスで構成された幾何学的パターンの一例を示す図である。本例では、幾何学的パターンは、ユーザが視認しやすいよう、４行４列毎のブロックに区切られている。同図（ａ）において、ユーザによって選択された要素は、視覚的に区別されるよう、ハッチングがなされ、また、選択された順番にその要素内に番号が付されている。幾何学的パターンの中からユーザによって選択された要素が、パスワード導出パターンとなる。各要素は、例えば、“（行番号，列番号）”で特定される。従って、本例のパスワード導出パターンは、例えば“（３，２），（０，５），（３，７），（０，１０）”と表わされる。或いは、一番左のブロックの左上の要素を“０”番として順番にシーケンシャル番号を割り当てたとすると、パスワード導出パターンは“１４，１７，３１，３４”と表わされる。
【００６３】
また、図２（ｂ）は、４行４列のマトリックスで構成された幾何学的パターンの例を示す図である。この場合のパスワード導出パターンは、例えば“（０，０），（３，２），（２，１），（２，３）”と表わされる。或いは、シーケンシャル番号を用いて、“０，１４，９，７”と表される。
【００６４】
パスワード導出パターンは、ユーザ認証を行うために用いられもので、ユーザが記憶すべき要素の配列ルールである。その意味で、パスワード導出パターンは、ある種のパスワードとみなすことができる。幾何学的パターン及びその中のパスワード導出パターンを構成する要素の数（例えば６個）、その配列構造は任意であり、ユーザ認証におけるセキュリティレベルに応じて適宜設定される。なお、パスワード導出パターンの概念については、特許文献１に詳述されている。
【００６５】
図３Ａは、本発明の一実施形態に係るユーザ認証方法におけるパスワード導出パターンの登録画面の一例を示す図である。本実施形態では、このような登録画面は、情報通信端末２０にインストールされたアプリケーションプログラムの機能によって実現されるが、これに限られない。他の実施形態では、このような登録画面は、ページ記述言語（例えばＨＴＭＬ５等）に従って記述される画面構成プログラムにより構成され、管理者側のコンピュータシステム（例えば利用対象システム３０や認証サーバ４２）にアクセスすることにより提供される。
【００６６】
図３Ａを参照して、パスワード導出パターン登録画面は、例えば、ユーザ名入力フィールド３０１、携帯電話番号入力フィールド３０２、及びパスワード導出パターン入力フィールド３０３を含む。
【００６７】
ユーザ名入力フィールド３０１は、利用対象システム３０を利用するユーザの名前を入力するためのフィールドである。ユーザ名は、利用対象システム３０において一意に識別される文字列等であれば良く、例えば、ユーザのメールアドレスが用いられても良い。例えば、ユーザが、ユーザ名入力フィールド３０１をタップすると、ソフトウェアキーボードが表示され、これを用いて文字列等を入力する。タップは、例えば、ユーザの指又はスタイラスによりなされる。
【００６８】
携帯電話番号入力フィールド３０２は、利用対象システム３０の利用に際してユーザ認証に用いる情報通信端末２０を特定するための個体識別情報を入力するためのフィールドである。本実施形態では、ユーザが所有する情報通信端末２０に割り当てられた携帯電話番号をそのまま用いるものとするが、これに限られるものでなく、例えば、ＭＡＣアドレス等の機器ＩＤを用いても良い。なお、携帯電話番号入力フィールド３０２は、省略されても良い。例えば、利用対象システム３０が、アプリケーションプログラムの実行により実現されるシステムである場合、携帯電話番号入力フィールド３０２は省略される。
【００６９】
パスワード導出パターン入力フィールド３０３は、例えば、４行１２列のマトリックス状に配置された４８個の要素群からなる幾何学的パターンを含んで構成される。本例では幾何学的パターンは、４行４列毎のブロックに区切られている。ユーザは、幾何学的パターンのうち、登録したいパスワード導出パターンに対応する要素を順次に所定の数だけタップして選択する。タップされ選択された要素は、視覚的に区別されるよう、例えば所定の色でハイライトされ、さらに、選択された順番を示す番号が要素内に表示される。同図では、“（３，２）”の要素が最初に選択されている様子が示されている。ここで選択された要素のシーケンスがパスワード導出パターンに相当する。
【００７０】
パスワード導出パターン入力フィールド３０３は、情報通信端末２０の画面サイズ及び表示内容を考慮して、例えば、図３Ｂに示すように、幾何学的パターンの少なくとも一部（例えば１つブロック）を仮想的に表示するように構成されても良い。この場合、ユーザは、パスワード導出パターン入力フィールド３０３内を横方向にスワイプ乃至はフリックすることにより、該フィールド３０３内をスクロールさせて画面外の見えていない部分を画面内に表示させながら、表示された部分の個々の要素をタップすることで選択することができる。或いは、ユーザが情報通信端末２０を横向きに持った場合、情報通信端末２０はこれを検知し、画面内の表示内容を９０度回転させることで、幾何学的パターンの要素群全てが表示されるようにしても良い。
【００７１】
パスワード導出パターンの登録において、例えば、同じ要素が２回以上選択されても良い。例えば、２回選択された要素は、他の色でハイライトされ、２個の番号が表示される。この場合、重なり合って視認できなくなることを防止するため、例えば、吹き出しを使って各番号を表示しても良い。また、要素が選択された順番は、番号に代え、或いはそれに加えて、幾何学的パターン上、選択された要素同士を結ぶ軌跡によって示されても良い。
【００７２】
また、各要素の選択は、タップに代え、一筆書きの要領で、幾何学的パターン上をドラッグすることでなされても良い。即ち、ユーザは、選択した最初の要素を起点として、ドラッグしながら略直線の軌跡を引き、選択する要素上で一旦停止しながら、所定の数だけ要素を選択していく。情報通信端末２０は、例えば、登録画面内の指が接触した位置及び接触時間に基づいて、タップ、ドラッグ又はスワイプ等の操作アクションを特定しながら、入力情報を受け付ける。
【００７３】
ユーザが各入力フィールド３０１〜３０３に必要な情報を入力した後、設定確認ボタン３０４をタップすると、情報通信端末２０は、入力情報に基づくパスワード導出パターンを登録データとして仮登録し、続いて、設定確認画面を情報通信端末２０のユーザインターフェースに表示させる。
【００７４】
設定確認画面は、再度、パスワード導出パターンの各要素をユーザに選択させることで、パスワード導出パターンの確認を行うための画面である。図４Ａは、情報通信端末２０のユーザインターフェース上に表示された設定確認画面の一例を示す図である。また、図４Ｂは、図３Ｂに示した登録画面に対応する設定確認画面の一例を示す図である。
【００７５】
即ち、同図に示すように、設定確認画面は、幾何学的パターンを含むパスワード入力フィールド４０１を含む。ユーザは、幾何学的パターンのうち、先に仮登録したパスワード導出パターンに対応する各要素を同じ順番で選択する。ユーザがパスワード入力フィールド４０１の幾何学的パターンの所定の要素を選択した後、ＯＫボタン４０２を選択すると、情報通信端末２０は、先に仮登録したパスワード導出パターンと今回のパスワード導出パターンとが一致するか否かを判断し、一致すると判断する場合には、該パスワード導出パターンをアプリケーションプログラムが参照するデータとして正式に登録する。
【００７６】
なお、本例では、設定確認画面がユーザに１回のみ提供されるものとしたが、これに限られるものでなく、複数回反復して提供されるようにしても良い。反復は、例えば、ユーザの意思で反復ボタン（図示せず）を選択させることにより、或いは、入力時の時間に応じて（例えば入力に時間がかかる場合等）強制的に行わせるようにしても良い。このような反復により、ユーザに自身のパスワード導出パターンの記憶の定着を促進させることができる。
【００７７】
パスワード導出パターンの登録は、本明細書で説明される他の方法によっても行うことができる。例えば、上記特許文献１に開示されたパスワード導出パターンの登録方法も本発明に適用することができる。
【００７８】
（認証データベースの説明）
図５は、本発明の一実施形態に係るユーザ認証方法において使用される認証データベースのデータ構造の一例を示す図である。認証データベース４４は、例えば、各利用対象システム３０について、ユーザ毎のユーザアカウント情報を１つのレコードとして管理する。
【００７９】
即ち、同図に示すように、認証データベース４４における１つのレコードは、システムＩＤ、ユーザ名、端末ＩＤ、及びトークンＩＤの各フィールドから構成されている。本実施形態では、認証データベース４４におけるユーザアカウント情報にはパスワード導出パターンが含まれなくても良い。システムＩＤは、各ユーザが利用可能な利用対象システム３０を識別するためのＩＤである。ユーザ名は、ユーザ毎に割り当てられたシステム上のユーザ名である。端末ＩＤは、各ユーザがユーザ認証に用いるために用いる情報通信端末２０に割り当てられた固有のデバイスＩＤである。端末ＩＤは、例えばＭＡＣアドレスを用いることができる。トークンＩＤは、各ユーザの情報通信端末２０にインストールされたセキュリティトークンプログラムに割り当てられた固有のＩＤである。トークンＩＤは、利用対象システム３０毎に異なるものが用いられても良い。
【００８０】
本例では、ユーザ“ｏｇａｗａ”は、システムＩＤ“３６５７８９７９”および“３６５７８９８０”で示されるそれぞれの利用対象システム３０に利用可能なユーザとして登録されている。また、ユーザ“ｏｇａｗａ”がユーザ認証に用いる情報通信端末２０として、端末ＩＤ“０９０ｘｘｘｘ１２３４”で示される情報通信端末２０が設定され、ソフトウェアトークンとして、トークンＩＤ“０５：３Ａ：ｘｘ：ｙｙ：ｚｚ：００”が登録されている。
【００８１】
（情報通信端末の説明）
図６Ａ及び６Ｂは、本発明の一実施形態に係るユーザ認証方法における情報通信端末の処理を説明するためのフローチャートである。かかる処理は、例えば、情報通信端末２０が、プロセッサの制御の下、所定のアプリケーションプログラムを実行することにより、実現される。かかる処理は、シーケンシャルに実行されても良いし、処理の結果に矛盾を生じない限り、並列又は並行に実行されても良い。
【００８２】
同図Ａに示すように、まず、情報通信端末２０は、アプリケーションプログラムの実行を開始すると、ユーザインターフェース上にログイン情報を入力するためのログイン画面を表示するため、暗証表を生成する（Ｓ６０１Ａ）。即ち、情報通信端末２０は、同図Ｂに示すように、ユーザのパスワード導出パターンを読み出すとともに（Ｓ６０１Ｂ）、セキュリティトークンプログラムを呼び出し、同期サーバ４６と時刻同期のトークンコードを生成する（Ｓ６０２Ｂ）。次に、情報通信端末２０は、生成したトークンコードを構成する数字等を先頭から順番に、暗証表（幾何学的パターン）におけるパスワード導出パターンを構成する各要素に割り当てる（Ｓ６０３Ｂ）。続いて、情報通信端末２０は、暗証表の残りの各要素に、ランダムに生成した数字等を割り当てて（Ｓ６０４Ｂ）、暗証表を完成させる。情報通信端末２０は、暗証表を生成すると、これを含むログイン画面を表示する（同図ＡのＳ６０２Ａ）。
【００８３】
図７は、情報通信端末２０のユーザインターフェース上に表示されたログイン画面の一例を示す図である。同図に示すようにログイン画面は、例えば、ユーザ名入力フィールド７０１、暗証表７０２及びパスワードを入力するためのパスワード入力フィールド７０３を含む。ユーザ名入力フィールド７０１は、ユーザがユーザアカウント情報として登録したユーザ名を入力するためのフィールドである。暗証表７０２は、幾何学的パターンの各要素に、一見するとランダムな数字が割り当てられた表である。ユーザは、暗証表７０２を参照し、自身のパスワード導出パターンに対応する各要素に割り当てられた数字を抜き出して、パスワード入力フィールド７０３に入力する。同図においては、例えば図２に示したパスワード導出パターンを用いて、暗証表７０２から抜き出された数字“５４６０”が、パスワード入力フィールド７０３に入力された様子を示している。
【００８４】
図６Ａに戻り、ユーザは、ログイン画面に対して、必要なログイン情報（被認証情報）を入力し、例えばログインボタン７０４を選択すると、情報通信端末２０は、該ログイン情報を含むログイン要求を利用対象システム３０に送信する（Ｓ６０３Ａ）。利用対象システム３０は、ログイン要求を受け付けると、該ログイン情報を含むユーザ認証要求を認証サーバ４２に送信し、該ユーザの認証判定を受ける。利用対象システム３０は、認証判定の結果を認証サーバから受信し、情報通信端末２０に送信する。これにより、情報通信端末２０は、ログイン要求に対する認証判定の結果を受信する（Ｓ６０４Ａ）。
【００８５】
なお、情報通信端末２０は、ログイン要求を利用対象システム３０に送信するのではなく、直接、認証システム４０（例えば認証サーバ４２）に送信し、認証判定の結果を受信するように構成されても良い。
【００８６】
また、本例では、パスワード導出パターンが４個の要素から構成されているが、これに限られるものではない。例えば、６個の要素により構成されるものであっても良い。また、各要素には１個（１桁）の数字が割り当てられたが、これに限られるものではなく、１個以上の数字であっても良い。或いは、１個以上の文字であっても良いし、そのような数字と文字との混在であっても良い。また、各要素に割り当てられる桁数（文字数）を増やす代わりに、パスワード導出パターンを構成する要素数を減らしても良い。情報通信端末２０は、内部的に生成された数値（トークンコード及び乱数値）を文字コード表に照らして、１個以上の数字又は文字に変換し、要素に割り当てる。
【００８７】
（認証サーバの説明）
次に、本実施形態の認証システム４０の機能的構成を説明する。図８は、本発明の一実施形態に係る認証システムの機能的構成を示すブロックダイアグラムである。
【００８８】
同図を参照し、ユーザ認証要求受信部８０１は、例えば利用対象システム３０からログイン情報を含むユーザ認証要求を受け付ける。ユーザ認証要求受信部８０１は、受け付けたユーザ認証要求におけるログイン情報をセキュリティトークン管理部８０２及びユーザ認証判定部８０３のそれぞれに送出する。なお、ログイン情報は、その全てが各部に通知されても良いし、各部の処理において必要な一部の情報が送出されても良い。
【００８９】
セキュリティトークン管理部８０２は、例えば、セキュリティトークン特定部８０２１と、トークンコード生成部８０２２とを含む。セキュリティトークン特定部８０２１は、認証データベース４４を参照し、ログイン情報が示すユーザの情報通信端末２０にインストールされているセキュリティトークンプログラムのトークンＩＤをトークンコード生成部８０２２に送出する。トークンコード生成部８０２２は、トークンＩＤで識別されるセキュリティトークンプログラムと時刻同期で同一のトークンコード（ワンタイムパスワード）を生成する。即ち、トークンコード生成部８０２２は、ユーザのセキュリティトークンプログラム毎に、例えば、同一のシード及び数学的アルゴリズムを用いることによって、該ユーザのセキュリティトークンプログラムによって生成されるトークンコードと同一のトークンコードを時刻同期で生成するように構成される。数学的アルゴリズムは、例えば、ハッシュ関数のような既知のものを用いることができる。セキュリティトークン管理部８０２は、トークンコード生成部８０２２によって生成されたトークンコードをユーザ認証判定部８０３に送出する。
【００９０】
ユーザ認証判定部８０３は、ユーザ認証要求受信部８０１から送出されたログイン情報と、セキュリティトークン管理部８０２のトークンコード生成部８０２２から送出されたトークンコードとに基づいて、該ユーザの認証判定を行う。即ち、ユーザ認証判定部８０３は、ログイン情報に含まれるパスワードと、生成したトークンコードとを比較して、これらが一致すると判断する場合、認証成立であると判定し、一致しない場合、認証不成立であると判定する。ユーザ認証判定部８０３は、認証判定の結果を認証判定結果送信部８０４に送出する。認証判定結果送信部８０４は、認証判定の結果をユーザ認証要求元の利用対象システム３０に送信する。
【００９１】
図９は、本発明の一実施形態に係るユーザ認証方法における認証システムにおける処理を説明するためのフローチャートである。かかる処理は、例えば、認証システム４０を構成する１つ又はそれ以上のコンピューティングデバイスが、プロセッサの制御の下、所定のプログラムを実行することにより実現される。かかる処理は、シーケンシャルに実行されても良いし、処理の結果に矛盾を生じない限り、並列に又は並行に実行されても良い。
【００９２】
即ち、同図に示すように、認証サーバ４２は、例えば利用対象システム３０からログイン情報を含むユーザ認証要求を受け付けると（Ｓ９０１）、認証データベース４４を参照し、ユーザの情報通信端末２０にインストールされたセキュリティトークンプログラム（即ち、トークンＩＤ）を特定する（Ｓ９０２）。認証サーバ４２は、該特定したセキュリティトークンプログラムと時刻同期した同一のトークンコードを取得するために、トークンＩＤを用いて同期サーバ４６に問い合わせる（Ｓ９０３）。これを受けて、同期サーバ４６は、該トークンＩＤからユーザのシードを特定し、所定のパスワード生成アルゴリズムを用いて、情報通信端末２０のセキュリティトークンプログラムと時刻同期した同一のトークンコードを生成し、該生成したトークンコードを認証サーバ４２に返す。これにより、認証サーバ４２は、該ユーザが所持するセキュリティトークン２２が生成したトークンコードと同一のトークンコードを取得する（Ｓ９０４）。
【００９３】
次に、認証サーバ４２は、利用対象システム３０から送出されたログイン情報に含まれるパスワードと取得したトークンコードとに基づいて、該ユーザの認証判定を行う（Ｓ９０５）。認証サーバ４２は、ログイン情報に含まれるパスワードと取得したトークンコードとが一致すると判断する場合、認証成立であると判定し、一致しない場合、認証不成立であると判定する。認証サーバ４２は、認証判定の結果をユーザ認証要求元の利用対象システム３０に送信する（Ｓ９０６）。
【００９４】
以上のように、本実施形態によれば、情報通信端末２０が、パスワード導出パターンを保持し、セキュリティトークン機能を有することにより、認証システム４０からチャレンジを受けることなく、ユーザ認証を行うことができるようになる。
【００９５】
なお、本実施形態では、情報通信端末２０と利用対象システム３０及び認証システム４０とはインターネット１０を介して通信可能に接続された構成を示したが、これに限られるものではない。情報通信端末２０と利用対象システム３０とは、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の近距離通信によって接続されても良い。また、例えば、利用対象システム３０がセキュリティルームの鍵開閉システムである場合、情報通信端末２０のユーザインターフェース上のログイン画面に表示される暗証表（図７参照）に従って、利用対象システム３０に設けられたユーザインターフェースにパスワードを入力する構成を採用することができる。この例によれば、情報通信端末２０の通信機能が有効でない状況であっても、ユーザ認証を行うことができるという利点がある。
【００９６】
なお、認証システム４０は、別の実施形態で説明されるユーザ認証要求の事前通知を受け、これに対応するユーザ認証要求のみを、一定時間の間だけ、受け付けるように構成されても良い。このような構成により、認証システム４０は、事前通告を受けた場合のみ、これに対応するユーザ認証要求を受け付ければ良いので、悪意ある第三者からのアタックに晒されるリスクを低減することができ、よりセキュアなユーザ認証方法及びシステムを提供することができるようになる。
【００９７】
［第２の実施形態］
（概要）
本実施形態は、情報通信端末が、認証システムと時刻同期で生成されたトークンコードを幾何学的パターンの各要素に割り当てて構成した暗証表をユーザインターフェース上に表示し、ユーザは、表示された暗証表を参照し、自身のパスワード導出パターンに対応する各要素に割り当てられた数字等を抜き出してパスワードとして入力し、認証システムは、情報通信端末と時刻同期で生成された同じ暗証表（即ち、トークンコード）及び予め登録されたユーザのパスワード導出パターンに基づいて、入力されたパスワードに対する認証判定を行うユーザ認証方法及びこれを実現するシステムを開示する。
【００９８】
本実施形態は、暗証表の全ての要素に認証システムと時刻同期した数字等が割り当てられ、また、認証システムにパスワード導出パターンが登録されている点で、上記第１の実施形態と異なる。以下では、第１の実施形態と重複するものについては、適宜、省略して説明する。
【００９９】
図１０は、本発明の一実施形態に係るユーザ認証方法の概略スキームを説明するための概略である。同図に示すように、かかるスキームにおいて、ユーザは、インターネット１０に接続可能な情報通信端末２０を所持しており、また、利用対象システム３０及び認証システム４０がインターネット１０に接続されている。認証システム３０は、例えば、認証サーバ４２、認証データベース４４’及び同期サーバ４６を含んで構成される。情報通信端末２０は、上記第１の実施形態と同様に、例えばソフトウェアトークン２２ａを含んで構成される。
【０１００】
認証サーバ４２は、認証データベース４４’及び同期サーバ４６と協働し、ユーザ認証処理を統括的に制御するためのサーバコンピュータである。本実施形態の認証データベース４４’は、個々のユーザによって予め登録された、ユーザ認証に必要なユーザアカウント情報を管理するデータベースである。認証データベース４４’は、例えば、利用対象システム３０を利用可能なユーザに関する情報、ユーザ毎のセキュリティトークンに関する情報、及びパスワード導出ルールに関する情報をユーザアカウント情報として管理する。
【０１０１】
本実施形態では、ユーザ認証を要求する利用対象システム３０の利用に先立ち、ユーザは、まず、利用対象システム３０に対するユーザ登録（パスワード導出パターンの登録を含む。）及びソフトウェアトークン２２ａの設定を行う（図中(1)及び(1)'）。
【０１０２】
即ち、ユーザは、情報通信端末２０を用いて、利用対象システム３０に対する自身のユーザアカウント情報を認証システム４０の認証データベース４４’に予め登録する。このような登録処理は、例えば、上述したように、ユーザは、情報通信端末２０において利用対象システム３０を利用するためのアプリケーションプログラムを実行することにより、行われる。本実施形態では、ユーザのパスワード導出パターンは、ユーザアカウント情報の一部として、認証データベース４４’に登録される。
【０１０３】
また、ユーザは、情報通信端末２０にセキュリティトークンプログラムに割り当てられたトークンＩＤを認証データベース４４’に登録する。トークンＩＤの登録は、上記のユーザアカウント情報の登録処理の中で行われても良い。
【０１０４】
ユーザは、利用対象システム３０を利用するため、情報通信端末２０を用いて、対応するアプリケーションプログラムを起動すると、例えば情報通信端末２０のユーザインターフェース上にログイン画面が表示されて、ユーザ名及びパスワードの入力を促される（図中(2)）。ログイン画面は、幾何学的パターンを構成する複数の要素のそれぞれに一見するとランダムな数字等が割り当てられた暗証表を含んで構成される。本実施形態では、暗証表中の全ての要素のそれぞれに、情報通信端末２０のセキュリティトークンプログラムによって生成されたトークンコードが割り当てられる。
【０１０５】
次に、ユーザは、表示された暗証表から、自身のパスワード導出パターンを構成する各要素に割り当てられた数字等を順番に抜き出して、パスワードとして入力する。ユーザは、パスワードを入力した後、例えばログインボタンを選択すると、入力されたパスワードを含むログイン要求が利用対象システム３０に送信される（図中(3)）。
【０１０６】
利用対象システム３０は、ログイン要求を情報通信端末２０から受け付けると、ユーザ認証を行うため、ログイン要求に基づくユーザ認証要求を認証サーバ４２に送信する（図中(4)）。認証サーバ４２は、ユーザ認証要求を受け付けると、認証データベース４４’を参照し、該ユーザのパスワード導出パターン及びトークンＩＤを特定する（図中(5)）。続いて、認証サーバ４２は、トークンＩＤに基づいて、該ユーザのセキュリティトークンと時刻同期した同一のトークンコードを同期サーバ４６に問い合わせて、同期サーバ４６から該ユーザの暗号表を構成するためのトークンコードを取得する（図中(6)）。認証サーバ４２は、次に、ユーザのパスワード導出パターンに従って、対応する要素から数字等を抽出してパスワードを特定し、これをユーザから送信されたパスワードと比較照合することによって認証判定を行い、該認証判定の結果を利用対象システム３０に送信する（図中(7)）。
【０１０７】
利用対象システム３０は、該認証判定の結果をユーザに返答し、該認証判定の結果に応じて次の処理に進むことになる（図中(8)）。例えば、認証判定の結果が認証不成立である場合、ユーザはログインできなかったことが通知され、また、認証成立の場合はログインを受け付けて、ユーザは、例えば所定の処理結果を与えられ、又はサービスを受けられることになる。
【０１０８】
（パスワード導出パターンの登録）
ユーザは、例えば、既述の図３Ａに示したパスワード導出パターンの登録画面を用いて登録する。このような登録画面は、例えば、ページ記述言語に従って記述される画面構成プログラムにより構成される。本実施形態では、管理者側のコンピュータシステム（例えば利用対象システム３０や認証サーバ４２）が、このような登録画面を構成する画面構成プログラムをユーザの情報通信端末２０に送信することにより、情報通信端末２０のユーザインターフェース上に登録画面を表示させる。ユーザは、幾何学的パターンのうち、登録したいパスワード導出パターンに対応する要素を順次に所定の数だけタップして選択する。
【０１０９】
ユーザが各入力フィールドに必要な情報を入力した後、設定確認ボタン３０４をタップすると、情報通信端末２０は、入力情報を含んだ登録要求を認証サーバ４２に送信する。認証サーバ４２は、受信した登録要求に基づいて、ユーザのパスワード導出パターンを登録データとして仮登録して、既述の図４Ａに示した設定の確認画面を情報通信端末２０のユーザインターフェースに表示させる。
【０１１０】
ユーザがパスワード入力フィールド４０１における幾何学的パターンの所定の要素を選択した後、ＯＫボタン４０２を選択すると、情報通信端末２０は、選択されたパスワード導出パターンを含む確認要求を認証サーバ４２に送信する。
【０１１１】
認証サーバ４２は、受信した確認要求に含まれるパスワード導出パターンが、先に仮登録したパスワード導出パターンと一致するか否かを判断し、一致すると判断する場合には、認証データベース４４’に、パスワード導出パターンを含むユーザアカウント情報を正式に登録する。
【０１１２】
なお、情報通信端末２０は、仮登録すべきパスワード導出パターンを認証サーバ４２に送信するのではなく、情報通信端末２０が、仮登録のパスワード導出パターンを内部に保持しておき、２回目に入力されたパスワード導出パターンとの一致確認を行った後に、登録すべきパスワード導出パターンを認証サーバ４２に送信するように構成しても良い。
【０１１３】
（情報通信端末の説明）
本実施形態では、情報通信端末２０における暗証表の生成処理が、第１の実施形態と異なるので、図６Ｂに代わる図１１を用いて、かかる処理を説明する。
【０１１４】
即ち、情報通信端末２０は、セキュリティトークンプログラムを呼び出し、同期サーバ４６と時刻同期のトークンコードを生成する（Ｓ１１０１）。本実施形態では、トークンコードを構成する数字等は、暗証表（幾何学的パターン）を構成する要素の数だけ生成される。また、既述したように、各要素には、１個又はそれ以上の数字等が割り当てられる。次に、情報通信端末２０は、生成したトークンコードを構成する数字等を先頭から順番に、幾何学的パターンの各要素に割り当てていき、暗号表を完成させる（Ｓ１１０２）。
【０１１５】
上述したように、情報通信端末２０は、暗証表を生成すると、これを含むログイン画面（図７参照）を表示し、ユーザに、該暗号表に従うパスワードの入力を促す（図６ＡのＳ６０２Ａ）。ユーザは、暗証表７０２を参照し、自身のパスワード導出パターンに対応する各要素に割り当てられた数字等を抜き出して、パスワード入力フィールド７０３に入力する。ユーザが、ログイン画面に対して必要なログイン情報（被認証情報）を入力し、例えばログインボタン７０４を選択すると、情報通信端末２０は、該ログイン情報を含むログイン要求を利用対象システム３０に送信する（Ｓ６０３Ａ）。利用対象システム３０は、ログイン要求を受け付けると、該ログイン情報を含むユーザ認証要求を認証サーバ４２に送信し、該ユーザの認証判定を受ける。利用対象システム３０は、認証判定の結果を認証サーバから受信し、情報通信端末２０に送信する。これにより、情報通信端末２０は、ログイン要求に対する認証判定の結果を受信する（Ｓ６０４Ａ）。
【０１１６】
なお、情報通信端末２０は、ログイン要求を利用対象システム３０に送信するのではなく、直接、認証システム４０（例えば認証サーバ４２）に送信し、認証判定の結果を受信するように構成されても良い。
【０１１７】
また、本例では、被認証情報には入力されたパスワードが含まれる構成となっているが、例えば、別の実施形態で説明されるように、入力されたパスワードを暗証表のうちのパスワード導出パターンに対応する各要素に割り当て、これを被認証情報に含めても良い。この場合には、認証システム４０は、登録されたパスワード導出パターンに従い、被認証情報からパスワードを抜き出すことになる。
【０１１８】
（認証データベースの説明）
図１２は、本発明の一実施形態に係るユーザ認証方法において使用される認証データベースのデータ構造の一例を示す図である。認証データベース４４’は、例えば、各利用対象システム３０について、ユーザ毎のユーザアカウント情報を１つのレコードとして管理する。
【０１１９】
即ち、同図に示すように、認証データベース４４’における１つのレコードは、システムＩＤ、ユーザ名、端末ＩＤ、トークンＩＤ、及びパスワード導出パターンの各フィールドから構成されている。即ち、本実施形態の認証データベース４４’にはパスワード導出パターンが登録される。パスワード導出パターンは、各ユーザが登録したパスワード導出パターンであって、ユーザが選択した要素の配列及びその選択順序を示す。
【０１２０】
本例では、ユーザ“ｏｇａｗａ”は、システムＩＤ“３６５７８９７９”および“３６５７８９８０”で示されるそれぞれの利用対象システム３０に利用可能なユーザとして登録されている。また、ユーザ“ｏｇａｗａ”がユーザ認証に用いる情報通信端末２０として、端末ＩＤ“０９０ｘｘｘｘ１２３４”で示される情報通信端末が設定され、ソフトウェアトークンとして、トークンＩＤ“０５：３Ａ：ｘｘ：ｙｙ：ｚｚ：００”が登録されている。さらに、システムＩＤ“３６５７８９７９”で示される利用対象システム３０に登録されたユーザ“ｏｇａｗａ”のパスワード導出パターンとして、“（３，２），（０，５），（３，７），（０，１０）”が登録されている。
【０１２１】
（認証サーバの説明）
次に、本実施形態の認証システム４０の機能的構成を説明する。図１３は、本発明の一実施形態に係る認証システムの機能的構成を示すブロックダイアグラムである。同図において、図８に示した構成要素と同一の構成要素には、同一の符号を付している。
【０１２２】
同図を参照し、ユーザ認証要求受信部８０１は、例えば利用対象システム３０からログイン情報を含むユーザ認証要求を受け付ける。ユーザ認証要求受信部８０１は、受け付けたユーザ認証要求におけるログイン情報をセキュリティトークン管理部８０２、パスワード導出パターン特定部１３０１及びユーザ認証判定部８０３のそれぞれに送出する。なお、ログイン情報は、その全てが各部に通知されても良いし、各部の処理において必要な一部の情報が送出されても良い。
【０１２３】
セキュリティトークン管理部８０２は、例えば、セキュリティトークン特定部８０２１と、トークンコード生成部８０２２とを含む。セキュリティトークン特定部８０２１は、認証データベース４４’を参照し、ログイン情報が示すユーザの情報通信端末２０にインストールされているセキュリティトークンプログラムのトークンＩＤをトークンコード生成部８０２２に送出する。トークンコード生成部８０２２は、トークンＩＤで識別されるセキュリティトークンプログラムと時刻同期する同一のトークンコードを生成する。トークンコードは、暗証表（幾何学的パターン）を構成する要素の数に対応する数字等から構成される。セキュリティトークン管理部８０２は、トークンコード生成部８０２２によって生成されたトークンコードをパスワード特定部１３０２に送出する。
【０１２４】
一方、ユーザ認証要求受信部８０１から送出されたログイン情報を受けたパスワード導出パターン特定部１３０１は、認証データベース４４’を参照し、ログイン情報が示すユーザのパスワード導出パターンを特定する。即ち、パスワード導出パターン特定部１３０１は、所定の幾何学的パターンの要素群のうちのユーザが選択した要素の配列パターン及び選択順序を示すパスワード導出パターンを特定する。パスワード導出パターン特定部１３０１は、特定したパスワード導出パターンをパスワード特定部１３０２に送出する。
【０１２５】
パスワード特定部１３０２は、トークンコード生成部８０２２によって生成されたトークンコードと、パスワード導出パターン特定部１３０１によって特定されたパスワード導出パターンとに基づいて、該ユーザの認証判定に必要なパスワードを特定する。即ち、パスワード特定部１３０２は、トークンコードの中からパスワード導出パターンを構成する各要素に対応する数字等を順番に抽出してパスワードを特定する。パスワード特定部１３０２は、特定したパスワードをユーザ認証判定部８０３に送出する。
【０１２６】
例えば、トークンコード生成部８０２２が、図１４に示すような、４８個の数字列からなるトークンコードを生成したとする。本例では、トークンコードは、一連の１６個の数字が１つのブロックに対応する。また、登録されたユーザのパスワード導出パターンは、図２（ａ）に示したパターンであるとする。従って、この場合、パスワード特定部１３０２は、“０４６０”をユーザのパスワードとして抽出することになる。
【０１２７】
ユーザ認証判定部８０３は、ユーザ認証要求受信部８０１から送出されたログイン情報と、パスワード特定部１３０２によって特定されたパスワードとに基づいて、該ユーザの認証判定を行う。即ち、ユーザ認証判定部８０３は、ログイン情報に含まれるパスワードと、生成したトークンコード及びパスワード導出パターンから特定されるパスワードとを比較して、これらが一致すると判断する場合、認証成立であると判定し、一致しない場合、認証不成立であると判定する。ユーザ認証判定部８０３は、認証判定の結果を認証判定結果送信部８０４に送出する。認証判定結果送信部８０４は、認証判定の結果をユーザ認証要求元の利用対象システム３０に送信する。
【０１２８】
図１５は、本発明の一実施形態に係るユーザ認証方法における認証システムによる処理を説明するためのフローチャートである。かかる処理は、例えば、認証システム４０を構成する１つ又はそれ以上のコンピューティングデバイスが、プロセッサの制御の下、所定のプログラムを実行することにより実現される。かかる処理は、シーケンシャルに実行されても良いし、処理の結果に矛盾を生じない限り、並列に又は並行に実行されても良い。
【０１２９】
即ち、同図に示すように、認証サーバ４２は、例えば利用対象システム３０からログイン情報を含むユーザ認証要求を受け付けると（Ｓ１５０１）、認証データベース４４を参照し、該ユーザのパスワード導出パターンを特定する（Ｓ１５０２）。
【０１３０】
さらに、認証サーバ４２は、認証データベース４４’を参照し、ユーザの情報通信端末２０にインストールされたセキュリティトークンプログラム（即ち、トークンＩＤ）を特定する（Ｓ１５０３）。認証サーバ４２は、該特定したセキュリティトークンプログラムと時刻同期したトークンコードを取得するために、同期サーバ４６にトークンＩＤを用いてトークンコードを問い合わせる（Ｓ１５０４）。これを受けて、同期サーバ４６は、該トークンＩＤからユーザのシードを特定し、所定のパスワード生成アルゴリズムを用いて、情報通信端末２０のセキュリティトークンプログラムと時刻同期した同一のトークンコードを生成し、該生成したトークンコードを認証サーバ４２に返す。これにより、認証サーバ４２は、該ユーザが所持するセキュリティトークンが生成したトークンコードと時刻同期した同一のトークンコードを取得する（Ｓ１５０５）。
【０１３１】
ユーザのパスワード導出パターン及びトークンコードを特定した認証サーバ４２は、これらを用いて、該ユーザのパスワードを特定する（Ｓ１５０６）。即ち、上述したように、認証サーバ４２は、特定したトークンコードを構成する数字等を順番にパスワード導出パターンの各要素に割り当てていくことで、ユーザのパスワードを特定する。
【０１３２】
次に、認証サーバ４２は、利用対象システム３０から送出されたログイン情報に含まれるパスワードと取得したトークンコードとに基づいて、該ユーザの認証判定を行う（Ｓ１５０７）。認証サーバ４２は、ログイン情報に含まれるパスワードと取得したトークンコードとが一致すると判断する場合、認証成立であると判定し、一致しない場合、認証不成立であると判定する。認証サーバ４２は、認証判定の結果をユーザ認証要求元の利用対象システム３０に送信する（Ｓ１５０８）。
【０１３３】
以上のように、本実施形態によれば、上記第１の実施形態と同様の利点を得ることができる。特に、本実施形態では、認証システムがパスワード導出パターン及びセキュリティトークンを管理することで、情報通信端末がパスワード導出パターンを保持せずに、パスワード導出パターンを用いたユーザ認証を行うことができるようになる。
【０１３４】
なお、認証システム４０は、別の実施形態で説明される、ユーザ認証要求の事前通知を受け、これに対応するユーザ認証要求のみを受け付けるように構成されても良い。このような構成により、認証システム４０は、事前通告を受けた場合のみ、これに対応するユーザ認証要求を受け付ければ良いので、悪意ある第三者からのアタックに晒されるリスクを低減することができ、よりセキュアなユーザ認証方法及びシステムを提供することができるようになる。
【０１３５】
［第３の実施形態］
（概要）
本実施形態は、ユーザが、情報通信端末のユーザインターフェース上に表示された幾何学的パターンに対して、認証システム側と時刻同期で生成されたトークンコードを構成する数字等を自身のパスワード導出パターンに対応する各要素に順番に割り当てることでパスワード情報を入力し、認証システムは、情報通信端末と時刻同期で生成されたトークンコードに基づいて、入力されたパスワード情報に対する認証判定を行うユーザ認証方法及びこれを実現するシステムを開示する。なお、本実施形態のパスワード情報は、トークンコードが各要素に割り当てられたパスワード導出パターンを含む。以下の説明では、第１の実施形態と重複するものについては、適宜、省略する。
【０１３６】
図１６は、本発明の一実施形態に係るユーザ認証方法の概略スキームを説明するための概略である。同図に示すように、かかるスキームにおいて、ユーザは、インターネット１０に接続可能な情報通信端末２０及びセキュリティトークン２２（ハードウェアトークン２２ｂ）を所持しており、ユーザが利用しようとする利用対象システム３０及び認証システム４０がインターネット１０に接続されている。認証システム４０は、例えば、認証サーバ４２、認証データベース４４’及び同期サーバ４６を含んで構成される。本実施形態の認証データベース４４’は、上記第２の実施形態と同様に、利用対象システム３０を利用可能なユーザに関する情報、並びにユーザ毎のセキュリティトークンに関する情報及びパスワード導出ルールに関する情報をユーザアカウント情報として管理する。なお、上記実施形態で示されたように、ハードウェアトークン２２ｂの代わりにソフトウェアトークン２２ａが用いられても良い。
【０１３７】
本実施形態では、ユーザ認証を要求する利用対象システム３０の利用に先立ち、ユーザは、まず、利用対象システム３０に対するユーザ登録（パスワード導出パターンの登録を含む。）及びハードウェアトークン２２ｂの設定を行う（図中(1)及び(1)'）。
【０１３８】
即ち、ユーザは、情報通信端末２０を用いて、利用対象システム３０に対する自身のユーザアカウント情報を認証システム４０の認証データベース４４’に予め登録する。このような登録処理は、例えば、上述したように、ユーザは、情報通信端末２０において利用対象システム３０を利用するためのアプリケーションプログラムを実行することにより、行われる。本実施形態では、ユーザのパスワード導出パターンは、ユーザアカウント情報の一部として、認証データベース４４’に登録される。
【０１３９】
また、ユーザは、ハードウェアトークン２２ｂに割り当てられたトークンＩＤを認証データベース４４’に登録する。トークンＩＤは、上記のユーザアカウント情報の登録処理の中で行われても良い。
【０１４０】
ユーザは、情報通信端末２０を用いて、利用対象システム３０にアクセスすると（図中(2)）、例えば情報通信端末２０のユーザインターフェース上にログイン画面（被認証情報入力画面）が表示され、ユーザアカウント及びパスワードの入力を促される（図中(3)）。情報通信端末２０のユーザインターフェース上に表示されるこのような画面は、例えば、ページ記述言語（ＨＴＭＬ５等）に従った画面構成プログラム及び／又はデータ（以下、単に「画面構成プログラム」という。）により記述され、構成される。ログイン画面を構成する画面構成プログラムは、例えば、利用対象システム３０から直接的に送信されても良いし、認証サーバ４２から送信されても良い。後者の場合、例えば、利用対象システム３０は、ユーザからのアクセス要求に対して、これを認証サーバ４２にリダイレクトし、認証サーバ４２が、利用対象システムに３０代わって、パスワードの入力を受け付ける。パスワード入力画面は、後述するように、幾何学的パターンを含み、幾何学的パターンの各要素に任意の数字等を入力できるように構成されている。
【０１４１】
次に、ユーザは、所持するハードウェアトークン２２ｂを操作してトークンコードを表示させ、表示されたトークンコードを情報通信端末２０上のログイン入力画面に入力する（図中(4)）。この場合、ユーザは、自身のパスワード導出パターンに従って、表示されたトークンコードを先頭から順番に、幾何学的パターンの対応する要素に入力していくことになる。ユーザは、ログイン画面にトークンコードを入力し、例えばログインボタンを選択すると、入力されたログイン情報（被認証情報）が利用対象システム３０に送信される（図中(5)）。
【０１４２】
利用対象システム３０は、ログイン画面に対するログイン情報を情報通信端末２０から受け付けると、ユーザ認証を行うため、ログイン情報を含むユーザ認証要求を認証サーバ４２に送信する（図中(6)）。この場合、利用対象システム３０は、自身のシステムＩＤをユーザ認証要求に含めて認証サーバ４２に送信しても良い。これによって、認証サーバ１４４は、個々の利用対象システム３０からのユーザ認証要求を行うことができるようになる。
【０１４３】
認証サーバ４２は、ログイン情報を含むユーザ認証要求を受け付けると、認証データベース４４’を参照し、該ユーザのパスワード導出パターンを特定するとともに（図中(7)）、該ユーザのハードウェアトークン２２ｂに対応するトークンコードを同期サーバ４６に問い合わせて、同期サーバ４６から該ユーザのトークンコードを取得する（図中(8)）。認証サーバ４２は、該ユーザのパスワード導出パターンを特定し、また、トークンコードを取得すると、これらをユーザから送信されたログイン情報と比較照合することによって認証判定を行い、該認証判定の結果を利用対象システム３０に送信する（図中(9)）。利用対象システム３０は、該認証判定の結果をユーザに返答し、該認証判定の結果に応じて次の処理に進むことになる（図中(9)）。例えば、認証判定の結果が認証不成立である場合、ユーザはログインできなかったことが通知され、また、認証成立の場合はログインを受け付けて、ユーザは、例えば会員ユーザ向けのサービスを受けられることになる。
【０１４４】
（セキュリティトークンの登録）
ユーザは、利用対象システム３０の利用に先立ち、自身が所持するハードウェアトークン２２に関する情報を、認証データベース４４’に登録する必要がある。例えば、ユーザは、ハードウェアトークン２２の利用申し込み時に、ユーザアカウント情報（例えばユーザ名及び／又は端末ＩＤ）を利用対象システム３０の管理者に通知することにより、管理者は、ユーザにハードウェアトークン２２を譲渡又は貸与するとともに、そのトークンＩＤをユーザ名及び／又は端末ＩＤに関連付けて、認証データベース４４’のユーザアカウント情報を更新する。この結果、同期サーバは、トークンＩＤを認識することにより、該トークンＩＤによって識別されるハードウェアトークン２２が生成するトークンコードと同一のトークンコードを生成することができる。
【０１４５】
或いは、上述のパスワード導出パターンの登録画面を用いて、ユーザがパスワード導出パターンとともにハードウェアトークン２２のトークンＩＤを登録できるようにしても良い。例えば、登録画面は、トークンＩＤ入力フィールドを含み、ユーザは、そこに自身のハードウェアトークン２２のトークンＩＤを入力する。
【０１４６】
（パスワード導出パターンの登録）
ユーザは、例えば、既述の図３Ａや図３Ｂに示したパスワード導出パターンの登録画面を用いて登録する。このような登録画面は、ページ記述言語（例えばＨＴＭＬ５）に従って記述される画面構成プログラムにより構成され、管理者側のコンピュータシステム（例えば利用対象システム３０や認証サーバ４２）から提供される。典型的には、例えば、認証サーバ４２は、ユーザの情報通信端末２０に画面構成プログラムを送信することにより、情報通信端末２０のユーザインターフェース上に該画面構成プログラムに従った登録画面を表示させる。例えば、ユーザが、利用対象システム３０に対するユーザアカウントの登録を希望する場合、利用対象システム３０は、該ユーザのメールアドレスに対して、登録画面のＵＲＬを含むメールを送信し、これを受けたユーザが、該メール中のＵＲＬを選択するという方法で、このような登録画面がユーザに提供されることになる。或いは、認証サーバ４２に代え、利用対象システム３０が、登録画面をユーザの情報通信端末２０に提供し、該情報通信端末２０から送信される登録要求を認証サーバ４２に送信するように構成しても良い。
【０１４７】
ユーザが各入力フィールドに必要な情報を入力した後、設定の確認ボタンをタップすると、情報通信端末２０は、入力情報を含んだ登録要求を認証サーバ４２に送信する。認証サーバ４２は、受信した登録要求に基づいて、ユーザのパスワード導出パターンを仮登録して、設定の確認画面を情報通信端末２０のユーザインターフェースに表示させる。
【０１４８】
設定の確認画面は、ユーザが設定したパスワード導出パターンに従ってユーザに実際にトークンコード（ワンタイムパスワード）を入力させることで、パスワード導出パターンを確認させる画面である。図１７は、情報通信端末２０のユーザインターフェース上に表示された設定の確認画面の一例を示す図である。
【０１４９】
即ち、同図に示すように、設定の確認画面は、確認用のトークンコード及び幾何学的パターンを含むパスワード入力フィールド１７０１を含む。ユーザは、幾何学的パターンのうち、先に入力したパスワード導出パターンに対応する要素を選択し、続いて、確認用のトークンコードの文字列を先頭から順番に入力する。例えば、パスワード導出パターンが図２（ａ）に示したパターンであり、確認用のトークンコードが“８４６３”であったとする。この場合、ユーザは、図２（ａ）に示した番号“１”の要素に対応する要素を選択して“８”を入力し、次に、番号“２”の要素に対応する要素を選択して“４”を入力し、…というように、登録されている全ての要素にトークンコードを順番に入力する。
【０１５０】
なお、確認用のトークンコードが設定の確認画面に表示されるではなく、ハードウェアトークン２２ｂの画面にトークンコードを表示させ、これを用いるように構成しても良い。
【０１５１】
ユーザがパスワード入力フィールド１７０１の幾何学的パターンの所定の要素にトークンコードを入力した後、ＯＫボタン１７０２を選択すると、情報通信端末２０は、選択された要素及び入力されたトークンコードからなるパスワード情報を含む確認要求を認証サーバ４２に送信する。
【０１５２】
認証サーバ４２は、受信した確認要求に含まれるパスワード情報が、先に仮登録したパスワード導出パターンと確認用のトークンコードとから導き出されるパスワード情報に一致するか否かを判断し、一致すると判断する場合には、認証データベース４４’に、パスワード導出パターンを含むユーザアカウント情報を正式に登録する。
【０１５３】
（認証データベースの説明）
本実施形態の認証データベース４４’は、上記第２の実施形態と同一のものを用いることができるため、説明を省略する。
【０１５４】
（利用対象システムの説明）
図１８は、本発明の一実施形態に係るユーザ認証方法における利用対象システムの処理を説明するためのフローチャートである。かかる処理は、例えば、利用対象システム３０を構成する１つ又はそれ以上のコンピューティングデバイスが、プロセッサの制御の下、所定のプログラムを実行することにより、実現される。かかる処理は、シーケンシャルに実行されても良いし、処理の結果に矛盾を生じない限り、並列又は並行に実行されても良い。
【０１５５】
同図に示すように、まず、利用対象システム３０は、情報通信端末２０から利用要求を受信すると（Ｓ１８０１）、情報通信端末２０のユーザインターフェース上にログイン画面（被認証情報入力画面）を表示させるため、該ログイン画面を構成するための画面構成プログラムを情報通信端末２０に送信する（Ｓ１８０２）。これを受けて、情報通信端末２０は、そのユーザインターフェース上にログイン画面を表示する。
【０１５６】
図１９は、情報通信端末２０のユーザインターフェース上に表示されたログイン画面の一例を示す図である。同図に示すようにログイン画面は、例えば、ユーザアカウントを入力するためのユーザ名入力フィールド１９０１及びパスワード導出パターンに従ったパスワード情報を入力するためのパスワード入力フィールド１９０２を含む。パスワード入力フィールド１９０２は、複数の要素からなる幾何学的パターンを含み、ユーザが任意の要素に任意の数字等を入力できるように構成される。任意の数字等は、例えば、情報通信端末２０のユーザインターフェース上にオーバーラップ表示されるソフトウェアキーボードにより入力される。ユーザは、別に操作することによってハードウェアトークン２２に表示されたトークンコードを、自身のパスワード導出パターンに対応する各要素に順番に入力する。つまり、ログイン画面のパスワード入力フィールド１９０２に入力されたパスワード情報は、幾何学的パターンにおける位置情報とトークンコードとの組み合わせからなる情報である。
【０１５７】
図２０は、ハードウェアトークン２２のディスプレイ画面の表示例を示す図である。ユーザが例えばハードウェアトークン２２の図示しないスイッチを操作すると、ハードウェアトークン２２は、ディスプレイ画面に、トークンコードを表示する。本例では、トークンコードとして、“５７０３”が表示されている。ユーザは、表示されたトークンコードを左から順番に、自身のパスワード導出パターンに対応する各セルに当て嵌めて入力する。つまり、図１９は、ユーザがパスワード入力フィールド１９０２にトークンコードを２桁目まで入力した様子を示している。
【０１５８】
ユーザは、ログイン画面に対して、ログインに必要なログイン情報（被認証情報）を入力し、例えばログインボタン１９０３を選択すると、情報通信端末２０は、該ログイン情報を含むログイン要求を利用対象システム３０に送信する。図２１は、ログイン要求の一例を示す図である。ログイン要求におけるパスワード情報は、同図Ａに示すように、パスワード導出パターンにおける位置情報にトークンコードが関連付けられている。
【０１５９】
なお、パスワード情報は、本例のように、パスワード導出パターンにおける位置情報及びトークンコードにより構成されるのではなく、同図Ｂに示すように、暗証表を利用するものであっても良い。即ち、情報通信端末２０は、暗証表のうちのパスワード導出パターンに対応する各要素に、ユーザにより入力されたトークンコードを割り当ててパスワード情報を生成する。理解のため、図中、ユーザにより入力されたトークンコードに矢印を付している。これにより、たとえ通信内容を盗聴されたとしても、パスワード導出パターン及び入力されたトークンコードは第三者に認識されないので、これらの漏洩を有効に防止することができる。
【０１６０】
図１８に戻り、利用対象システム３０は、情報通信端末２０から送信されるログイン要求を受信すると（Ｓ１８０３）、ログイン要求に基づくユーザ認証要求を認証サーバ４２に送信する（Ｓ１８０４）。例えば、利用対象システム３０は、ログイン要求に自身のシステムＩＤを付加する。
【０１６１】
認証サーバ４２は、これを受けて、後述するユーザ認証判定処理を行い、その認証判定の結果を利用対象システム３０に送信する。これを受けて、利用対象システム３０は、認証判定の結果を受信し（Ｓ１８０５）、認証結果に応じた処理を行う（Ｓ１８０６）。
【０１６２】
なお、上述したように、ログイン画面は、利用対象システム３０ではなく、認証システム１３０（例えば認証サーバ４２）によって提供されても良い。この場合、例えば、利用対象システム３０は、ユーザからの利用要求を受信すると、これを認証サーバ４２にリダイレクトし、認証サーバ４２から認証結果が送信されて来るのを待つことになる。
【０１６３】
（認証サーバの説明）
次に、本実施形態の認証システム４０の機能的構成を説明する。図２２Ａは、本発明の一実施形態に係る認証システムの機能的構成を示すブロックダイアグラムである。同図において、図８及び１３に示した構成要素と同一の構成要素には、同一の符号を付している。なお、認証システム４０が図２１Ｂに示したログイン要求に基づくユーザ認証要求を受け付ける場合には、図２２Ｂに示す機能的構成に従って説明される。
【０１６４】
同図を参照し、ユーザ認証要求受信部８０１は、例えば利用対象システム３０からログイン情報を含むユーザ認証要求を受け付ける。ユーザ認証要求部８０１は、受け付けたユーザ認証要求におけるログイン情報をセキュリティトークン管理部８０２、パスワード導出パターン特定部１３０１及びユーザ認証判定部８０３のそれぞれに送出する。なお、ログイン情報は、その全てが各部に通知されても良いし、各部の処理において必要な一部の情報が送出されても良い。
【０１６５】
セキュリティトークン管理部８０２は、例えば、セキュリティトークン特定部８０２１と、トークンコード生成部８０２２とを含む。セキュリティトークン特定部８０２１は、認証データベース４４'を参照し、ログイン情報が示すユーザの情報通信端末２０にインストールされているセキュリティトークンプログラムのトークンＩＤをトークンコード生成部８０２２に送出する。トークンコード生成部８０２２は、トークンＩＤで識別されるセキュリティトークンプログラムと時刻同期する同一のトークンコードを生成する。トークンコードは、暗証表（幾何学的パターン）を構成する要素の数に対応する数字等から構成される。セキュリティトークン管理部８０２は、トークンコード生成部８０２２によって生成されたトークンコードをパスワード情報特定部２２０１に送出する。
【０１６６】
一方、ユーザ認証要求受信部８０１から送出されたログイン情報を受けたパスワード導出パターン特定部１３０１は、認証データベース４４’を参照し、ログイン情報が示すユーザのパスワード導出パターンを特定する。即ち、パスワード導出パターン特定部１３０１は、所定の幾何学的パターンの要素群のうちのユーザが選択した要素の配列パターン及び選択順序を示すパスワード導出パターンを特定する。パスワード導出パターン特定部１３０１は、特定したパスワード導出パターンをパスワード情報特定部２２０１に送出する。
【０１６７】
パスワード情報特定部２２０１は、トークンコード生成部８０２２によって生成されたトークンコードと、パスワード導出パターン特定部１３０１によって特定されたパスワード導出パターンとに基づいて、該ユーザの認証判定に必要なパスワード情報を特定する。即ち、ここでいうパスワード情報は、幾何学的パターンにおける位置情報とトークンコードとを含む。パスワード情報特定部２２０１は、特定したパスワード情報をユーザ認証判定部８０３に送出する。
【０１６８】
ユーザ認証判定部８０３は、ユーザ認証要求受信部８０１から送出されたログイン情報と、パスワード情報特定部２２０１から送出されたパスワード情報とに基づいて、該ユーザの認証判定を行う。即ち、ユーザ認証判定部８０３は、ログイン情報に含まれるパスワード情報と、パスワード情報特定部２２０１から送出されたパスワード情報とを比較して、これらが一致すると判断する場合、認証成立であると判定し、一致しない場合、認証不成立であると判定する。ユーザ認証判定部８０３は、認証判定の結果を認証判定結果送信部８０４に送出する。認証判定結果送信部８０４は、認証判定の結果をユーザ認証要求元の利用対象システム３０に送信する。
【０１６９】
図２３は、本発明の一実施形態に係るユーザ認証方法における認証システムによる処理を説明するためのフローチャートである。かかる処理は、例えば、認証システム４０を構成する１つ又はそれ以上のコンピューティングデバイスが、プロセッサの制御の下、所定のプログラムを実行することにより、実現される。かかる処理は、シーケンシャルに実行されても良いし、処理の結果に矛盾を生じない限り、並列に又は並行に実行されても良い。
【０１７０】
即ち、同図に示すように、認証サーバ４２は、例えば利用対象システム３０からログイン情報を含むユーザ認証要求を受け付けると（Ｓ２３０１）、認証データベース４４’を参照し、該ユーザのパスワード導出パターンを特定する（Ｓ２３０２）。
【０１７１】
さらに、認証サーバ４２は、認証データベース４４’を参照し、ユーザの情報通信端末２０にインストールされたセキュリティトークンプログラム（トークンＩＤ）を特定する（Ｓ２３０３）。認証サーバ４２は、該特定したセキュリティトークンプログラムと時刻同期したトークンコードを取得するために、同期サーバ４６にトークンＩＤを用いてトークンコードを問い合わせる（Ｓ２３０４）。これを受けて、同期サーバ４６は、該トークンＩＤからユーザのシードを特定し、所定のパスワード生成アルゴリズムを用いて、情報通信端末２０のセキュリティトークンプログラムと時刻同期した同一のトークンコードを生成し、該生成したトークンコードを認証サーバ４２に返す。これにより、認証サーバ４２は、該ユーザが所持するセキュリティトークンが生成したトークンコードと時刻同期した同一のトークンコードを取得する（Ｓ２３０５）。
【０１７２】
ユーザのトークンコード及びパスワード導出パターンを特定した認証サーバ４２は、これらを用いて、該ユーザのパスワード情報を特定する（Ｓ２３０６）。つまり、認証サーバ４２は、特定したトークンコードを構成する文字列等を先頭から順番にパスワード導出パターンの要素の選択順序に従って各要素に割り当てていくことで、ユーザのパスワード情報を特定する。
【０１７３】
次に、認証サーバ４２は、利用対象システム３０から送出されたログイン情報と特定したパスワード情報とに基づいて、該ユーザの認証判定を行う（Ｓ２３０７）。認証サーバ４２は、ログイン情報に含まれるパスワード情報と特定したパスワード情報とが一致すると判断する場合、認証成立であると判定し、一致しない場合、認証不成立であると判定する。認証サーバ４２は、認証判定の結果をユーザ認証要求元の利用対象システム３０に送信する（Ｓ２３０８）。
【０１７４】
図２２Ｂは、本実施形態に係る認証システムの機能的構成の他の例を示すブロックダイアグラムである。即ち、同図は、図２１Ｂに示したユーザ認証要求に対応した認証システム４０の機能的構成を示している。同図において、既述した図に示した構成要素と同一の構成要素には、同一の符号を付している。
【０１７５】
同図を参照して、ユーザ認証要求受信部８０１は、例えば利用対象システム３０からログイン情報を含むユーザ認証要求を受け付ける。ユーザ認証要求受信部８０１は、受け付けたユーザ認証要求におけるログイン情報をセキュリティトークン管理部８０２、パスワード導出パターン特定部１３０１及びパスワード抽出部２２０２のそれぞれに送出する。なお、ログイン情報は、その全てが各部に通知されても良いし、各部の処理において必要な一部の情報が送出されても良い。
【０１７６】
既述したように、ユーザ認証要求受信部８０１から送出されたログイン情報を受け付けたパスワード導出パターン特定部１３０１は、認証データベース４４’を参照し、ログイン情報が示すユーザのパスワード導出パターンを特定する。パスワード導出パターン特定部１３０１は、特定したパスワード導出パターンをパスワード抽出部２２０２に送出する。
【０１７７】
また、既述したように、セキュリティトークン管理部８０２は、認証データベース４４’を参照し、ログイン情報が示すユーザの情報通信端末２０にインストールされているセキュリティトークンプログラムのトークンＩＤに基づいて、該セキュリティトークンプログラムと時刻同期する同一のトークンコードを生成する。本実施形態では、ここで生成されたトークンコードがパスワードとなる。セキュリティトークン管理部８０２は、生成したトークンコードをユーザ認証判定部８０３に送出する。
【０１７８】
一方、ユーザ認証要求受信部８０１から送出されたログイン情報を受けたパスワード抽出部２２０２は、パスワード導出パターン特定部１３０１によって特定されたパスワード導出パターンに基づいて、ユーザ認証要求におけるパスワード情報から該ユーザの認証判定に必要なパスワードを抽出する。
【０１７９】
ユーザ認証判定部８０３は、セキュリティトークン管理部８０２から送出されたトークンコードと、パスワード抽出部２２０２から送出されたパスワードとに基づいて、該ユーザの認証判定を行う。即ち、ユーザ認証判定部８０３は、セキュリティトークン管理部８０２から送出されたトークンコードと、ログイン情報から抽出されたパスワードとを比較して、これらが一致すると判断する場合、認証成立であると判定し、一致しない場合、認証不成立であると判定する。ユーザ認証判定部８０３は、認証判定の結果を認証判定結果送信部８０４に送出する。認証判定結果送信部８０４は、認証判定の結果をユーザ認証要求元の利用対象システム３０に送信する。
【０１８０】
以上のように、本実施形態によれば、上記各実施形態と同様の利点を得ることができる。特に、本実施形態によれば、パスワード導出パターンとトークンコードとを有機的に関連付けたパスワード情報を用いてユーザ認証判定を行うことができるようになる。
【０１８１】
なお、認証システム４０は、他の実施形態で説明されるユーザ認証要求の事前通知を受け、これに対応するユーザ認証要求のみを受け付けるように構成されても良い。このような構成により、認証システム４０は、事前通告を受けた場合のみ、これに対応するユーザ認証要求を受け付ければ良いので、悪意ある第三者からのアタックに晒されるリスクを低減することができ、よりセキュアなユーザ認証方法及びシステムを提供することができるようになる。
【０１８２】
［第４の実施形態］
（概要）
本実施形態は、上記実施形態で示されたいずれかのユーザ認証方法を、ユーザが置かれた所定の環境乃至は条件に従って、切り替えるようにしたユーザ認証方法を開示する。以下では、第１の実施形態で示されたユーザ認証方法（以下、「第１のユーザ認証方法」という。）又は第２の実施形態で示されたユーザ認証方法（以下、「第２のユーザ認証方法」という。）のいずれかに切り替える例で説明する。
【０１８３】
本例では、利用対象システム３０は、自動ロッカーやセキュリティルームの鍵開閉システム、現金自動預払機（ＡＴＭ）等であるものとする。典型的には、このような利用対象システム３０は、ユーザから、直接、パスワードやＰＩＮ等を受け付けるように構成される。また、利用対象システム３０は、第１のユーザ認証方法を実現するため、認証システム４０の機能をその内部に含んで構成されても良い。即ち、利用対象システム３０は、物理的に離れた認証システム４０と通信することなく、時刻同期のトークンコードを用いて、ユーザによって入力されたパスワードに対する認証判定を行うことができるように構成されても良い。なお、これは、利用対象システム３０が、認証システム４０と通信可能に接続される構成を排除する趣旨ではない。認証システム４０は、第２のユーザ認証方法を実現するため、パスワード導出パターンを記憶する認証データベース４４’を備える。
【０１８４】
図２４Ａ及び図２４Ｂは、本発明の一実施形態に係るユーザ認証方法の概略スキームを説明するための概略である。即ち、図２４Ａは、第１のユーザ認証方法が用いられる場合のスキームの一例を示し、図２４Ｂは、第２のユーザ認証法が用いられる場合のスキームの一例を示している。
【０１８５】
同図に示すように、ユーザは、インターネット１０に接続可能な情報通信端末２０を所持しており、利用対象システム３０を直接的に操作できる環境下にいる。また、利用対象システム３０と認証システム４０とはインターネット１０に接続されている。なお、同図では、ユーザ登録等の事前ステップについては省略されている。
【０１８６】
まず、ユーザの情報通信端末２０が、例えば無線ＬＡＮやキャリアネットワークに接続できず、従って、インターネット１０に接続できない環境に置かれている場合について、同図Ａを用いて説明する。
【０１８７】
ユーザは、情報通信端末２０を用いて、利用対象システム３０を利用するためのアプリケーションプログラムを起動する。情報通信端末２０は、ネットワーク通信ができないため、ソフトウェアトークン２２ａを用いて認証システム４０と時刻同期したトークンコードを生成し、内部に登録されているパスワード導出パターンを構成する各要素に該トークンコードを割り当てるとともに、他の要素にランダムに生成した数字等を割り当てて暗証表を生成し、ユーザインターフェース上にこれを表示する（図中(1)）。ユーザは、表示された暗証表を参照し、パスワード導出パターンを構成する各要素に割り当てられた数字等を抜き出して、利用対象システム３０のユーザインターフェースにこれをパスワードとして入力する（図中(2)）。
【０１８８】
利用対象システム３０は、入力されたパスワードを受け付けると、これを含むユーザ認証要求を認証システム４０に送信する（図中(3)）。認証システム４０は、ユーザ認証システムを受信すると、上述した第１のユーザ認証方法で、入力されたパスワードに対する認証判定を行う。即ち、認証システム４０は、情報通信端末２０と時刻同期で生成されたトークンコードと入力されたパスワードとを比較照合し、認証判定を行い、該認証判定の結果を利用対象システム３０に送信する（図中(4)）。なお、認証システム４０は、後述するユーザ認証要求の事前通知の有無に関する情報を該認証判定の結果に含めて利用対象システム３０に通知するようにしても良い。
【０１８９】
利用対象システム３０は、認証判定の結果を受けて、所定の処理を実行する。即ち、利用対象システム３０は、認証不成立である場合、ユーザインターフェース上に、ログインできなかったことを示す画面を表示し、又は、認証成立の場合はログインを受け付けて、所定のサービスを提供する。
【０１９０】
次に、ユーザの情報通信端末２０が、インターネット１０に接続できる環境に置かれている場合について、同図Ｂを用いて説明する。このような環境では、認証システム４０は、セキュリティの観点から、後述するユーザ認証要求の事前通知を受け、これに対応するユーザ認証要求のみを受け付けるように構成されている。
【０１９１】
ユーザは、情報通信端末２０を用いて、利用対象システム３０を利用するためのアプリケーションプログラムを起動する。情報通信端末２０は、ネットワーク通信ができる環境にいるため、ソフトウェアトークンを用いて認証システムと時刻同期したトークンコードを幾何学的パターンの各要素に割り当てて構成した暗証表をユーザインターフェース上に表示する（図中(1)）。
【０１９２】
このとき、情報通信端末２０は、アプリケーションプログラムが起動され、ユーザ認証手続きが起こりうることを示すユーザ認証要求の事前通知を認証システム４０に送信する（図中(2)）。ユーザ認証要求の事前通知は、利用対象システム３０を介して認証システム４０に送信されても良いし、認証システム４０に直接送信されても良い。認証システム４０は、該事前通知を受けた場合、ユーザ認証判定処理に第２のユーザ認証方法を用いるよう制御する。また、認証システム４０は、該事前通知を受けて、例えば、該ユーザに対するユーザ認証要求を、所定の時間だけ受信できるように、制御する。さらに、認証システム４０は、該事前通知があったことをこのタイミングで（即ち、認証判定の結果を通知する前に）利用対象システム３０に通知しても良い。
【０１９３】
ユーザは、表示された暗証表を参照し、パスワード導出パターンを構成する各要素に割り当てられた数字等を抜き出して、利用対象システム３０のユーザインターフェースにこれをパスワードとして入力する（図中(3)）。
【０１９４】
利用対象システム３０は、入力されたパスワードを受け付けると、これを含むユーザ認証要求を認証システム４０に送信する（図中(4)）。認証システム４０は、例えば、ユーザ認証要求の事前通知を受信してから所定の時間内にユーザ認証要求が到着した場合のみ、受信を許可するように構成される。認証システム４０は、ユーザ認証要求を受信すると、上述した第２のユーザ認証方法で、入力されたパスワードに対する認証判定を行う。即ち、認証システム４０は、情報通信端末２０と時刻同期で生成されたトークンコードのうち、パスワード導出パターンを構成する各要素の数字等を抽出し、該抽出した数字列等と入力されたパスワードとを比較照合し、認証判定を行い、該認証判定の結果を利用対象システム３０に送信する（図中(5)）。認証システム４０は、ユーザ認証要求の事前通知の有無に関する情報を先に通知するのに代えて、認証判定の結果にそれを含めるようにしても良い。
【０１９５】
利用対象システム３０は、認証判定の結果を受けて、同様に、所定の処理を実行する。なお、利用対象システム３０は、認証システム４０から与えられる事前通知の有無に関する情報に基づいて、ユーザに提供するサービスの種類乃至はレベルを変更するように制御しても良い。
【０１９６】
（情報通信端末における処理の説明）
図２５は、本発明の一実施形態に係るユーザ認証方法における情報通信端末の処理を説明するためのフローチャートである。
【０１９７】
同図に示すように、情報通信端末２０は、アプリケーションプログラムの実行を開始すると、ネットワーク通信が可能であるか否かを判断する（Ｓ２５０１）。情報通信端末２０は、ネットワーク通信が可能でないと判断すると（Ｓ２５０１のＮｏ）、第１のユーザ認証方法に従う暗証表を生成し（Ｓ２５０２）、これをユーザインターフェース上に表示する（Ｓ２５０３）。即ち、第１のユーザ認証方法に従う暗証表は、図６Ｂに示した方法によって生成される。
【０１９８】
これに対して、情報通信端末２０は、ネットワーク通信が可能であると判断すると（Ｓ２５０１のＹｅｓ）、第２のユーザ認証方法に従う暗証表を生成し（Ｓ２５０４）、これをユーザインターフェース上に表示する（Ｓ２５０３）。即ち、第２のユーザ認証方法に従う暗証表は、図１１に示した方法によって生成される。
【０１９９】
ユーザは、表示された暗証表を参照し、パスワード導出パターンを構成する各要素に割り当てられた数字等を抜き出して、利用対象システム３０のユーザインターフェースにこれをパスワードとして入力する。このことから明らかなように、情報通信端末２０のユーザインターフェース上に表示される暗証表は、その生成方法が異なるのみであり、ユーザは、いずれの方法で生成されたかによって数字等の抜き出し方法を変える等を意識する必要はない。
【０２００】
（認証サーバの説明）
図２６は、本発明の一実施形態に係るユーザ認証方法における認証システムによる処理を説明するためのフローチャートである。なお、以下では、認証システム４０による処理として説明するが、上記実施形態と同様に、認証サーバ４２が、認証データベース４４’及び同期サーバ４６と協働して、処理を行うものと考えることができる。
【０２０１】
即ち、同図に示すように、認証システム４０は、利用対象システム３０から所定のメッセージを受信するまで待機する（Ｓ２６０１）。認証システム４０は、所定のメッセージを受信した場合（Ｓ２６０１のＹｅｓ）、ユーザ認証要求の事前通知に関するフラグがＯＮであるか否かを判断する（Ｓ２６０２）。
【０２０２】
認証システム４０は、ユーザ認証要求の事前通知に関するフラグがＯＮでないと判断する場合（Ｓ２６０２のＮｏ）、該所定のメッセージがユーザ認証要求の事前通知であるか否かを判断する（Ｓ２６０３）。認証システム４０は、該所定のメッセージがユーザ認証要求の事前通知でないと判断する場合（Ｓ２６０３のＮｏ）、続いて、それがユーザ認証要求であるか否かを判断する（Ｓ２６０４）。
【０２０３】
認証システム４０は、利用対象システム３０から受信した所定のメッセージが事前通知でなく、かつ、ユーザ認証要求でないと判断する場合（Ｓ２６０４のＮｏ）、Ｓ２６０１の判断処理に制御を戻して、受信待ちの状態になる。これに対して、認証システム４０は、利用対象システム３０から受信した所定のメッセージが事前通知でなく、かつ、ユーザ認証要求であると判断する場合（Ｓ２６０４のＹｅｓ）、第１のユーザ認証方法による認証判定を行う（Ｓ２６０５）。即ち、認証システム４０は、情報通信端末２０と時刻同期で生成されたトークンコードとユーザ認証要求に含まれるパスワードとを比較照合し、認証判定を行い、該認証判定の結果を利用対象システム３０に送信する。
【０２０４】
一方、認証システム４０は、利用対象システム３０から受信した所定のメッセージがユーザ認証要求の事前通知であると判断する場合（Ｓ２６０３のＹｅｓ）、ユーザ認証要求の事前通知に関するフラグをＯＮにセットして、タイマーによる計時を開始する（Ｓ２６０６）、Ｓ２６０１の判断処理に制御を戻す。
【０２０５】
Ｓ２６０２の判断処理において、認証システム４０は、ユーザ認証要求の事前通知に関するフラグがＯＮであると判断する場合（Ｓ２６０２のＹｅｓ）、続いて、タイマーによる計時が一定時間経過したか否かを判断する（Ｓ２６０７）。認証システム４０は、一定時間経過していると判断する場合（Ｓ２６０７のＹｅｓ）、ユーザ認証要求の事前通知に関するフラグをＯＦＦにセットして、タイマーをリセットする（Ｓ２６０８）。
【０２０６】
認証システム４０は、タイマーによる計時が一定時間経過していないと判断する場合（Ｓ２６０７のＮｏ）、続いて、所定のメッセージがユーザ認証要求であるか否かを判断する（Ｓ２６０９）。認証システム４０は、該所定のメッセージがユーザ認証要求であると判断する場合（Ｓ２６０９のＹｅｓ）、第２のユーザ認証方法による認証判定を行う（Ｓ２６０５）。即ち、情報通信端末２０と時刻同期で生成されたトークンコードのうち、パスワード導出パターンを構成する各要素の数字等を抽出し、該抽出した数字列等と入力されたパスワードとを比較照合し、認証判定を行い、該認証判定の結果を利用対象システム３０に送信する。
【０２０７】
図２７Ａ及び２７Ｂは、認証システムによる処理の別の例を示すフローチャートである。即ち、本例は、情報通信端末２０が、ユーザ認証要求の事前通知を、直接、認証システム４０に送信する場合の処理を示している。
【０２０８】
即ち、同図Ａに示すように、認証システム４０は、情報通信端末２０からユーザ認証要求の事前通知を受信するまで待機する（Ｓ２７０１Ａ）。認証システム４０は、情報通信端末２０からユーザ認証要求の事前通知を受信すると（Ｓ２７０１ＡのＹｅｓ）、ユーザ認証要求の事前通知に関するフラグをＯＮにセットして（Ｓ２７０２Ａ）、タイマーによる計時を開始する（Ｓ２７０３Ａ）。続いて、認証システム４０は、ユーザ認証要求の事前通知があったことを示す通知を利用対象システム３０に送信する（Ｓ２７０４Ａ）。なお、Ｓ２７０４Ａのステップを省略し、該通知を、既述したように、認証判定の結果に含めるようにしても良い。
【０２０９】
一方、認証システム４０は、利用対象システム３０からのユーザ認証要求を受信するまで待機する（Ｓ２７０１Ｂ）。認証システム４０は、ユーザ認証要求を受信すると（Ｓ２７０１ＢのＹｅｓ）、続いて、ユーザ認証要求の事前通知に関するフラグがＯＮであるか否かを判断する（Ｓ２７０２Ｂ）。
【０２１０】
認証システム４０は、ユーザ認証要求の事前通知に関するフラグがＯＮでないと判断する場合（Ｓ２７０２ＢのＮｏ）、第１のユーザ認証方法による認証判定を行う（Ｓ２７０３Ｂ）。即ち、認証システム４０は、情報通信端末２０と時刻同期で生成されたトークンコードとユーザ認証要求に含まれるパスワードとを比較照合し、認証判定を行い、該認証判定の結果を利用対象システム３０に送信する。
【０２１１】
これに対して、認証システム４０は、ユーザ認証要求の事前通知に関するフラグがＯＮであると判断する場合（Ｓ２７０２ＢのＹｅｓ）、続いて、タイマーによる計時が一定時間経過したか否かを判断する（Ｓ２７０４Ｂ）。認証システム４０は、一定時間経過していると判断する場合（Ｓ２７０４ＢのＹｅｓ）、ユーザ認証要求の事前通知に関するフラグをＯＦＦにセットして、タイマーをリセットする（Ｓ２７０５Ｂ）。
【０２１２】
Ｓ２７０４Ｂのステップにおいて、一定時間経過していないと判断する場合（Ｓ２７０４ＢのＮｏ）、認証システム４０は、第２のユーザ認証方法による認証判定を行う（Ｓ２７０６Ｂ）。即ち、情報通信端末２０と時刻同期で生成されたトークンコードのうち、パスワード導出パターンを構成する各要素の数字等を抽出し、該抽出した数字列等と入力されたパスワードとを比較照合し、認証判定を行い、該認証判定の結果を利用対象システム３０に送信する。
【０２１３】
以上のように、本実施形態によれば、上記実施形態と同様の利点を得ることができることに加え、ユーザの情報通信端末２０がネットワーク通信環境にいるか否かにより、適切なユーザ認証方法を切り替えることができるようになる。
【０２１４】
なお、本実施形態では、第１のユーザ認証方法と第２のユーザ認証とを組み合わせた例が示されたが、これに限られず、第３の実施形態で説明されたユーザ認証方法を用いても良い。
【０２１５】
［その他の実施形態］
上記実施形態では、情報通信端末２０は、暗証表を生成し、該暗証表に基づく認証情報入力画面をそのユーザインターフェースに表示するように構成されているが、例えば、利用対象システム３０が認証情報入力画面を表示し、ユーザによるパスワードの入力を受け付けるように構成されても良い。即ち、情報通信端末２０が暗証表を生成し、これをそのユーザインターフェースに表示する一方、例えばユーザの所定の操作をトリガとして利用対象システム３０は被認証情報入力画面を表示する。ユーザは、情報通信端末２０のユーザインターフェースを参照して、認証情報入力画面にパスワードを入力すると、利用対象システム３０は、これを受けて、ユーザ認証要求を認証システム４０に送信する。このようにしても、上記実施形態と同様の利点を奏することができる。
【０２１６】
また、情報通信端末２０のユーザインターフェースを用いて、パスワード導出パターンの対応するセル（要素）にトークンコードを入力する方法を例示する。
【０２１７】
図２８に示す例は、ユーザが、画面内に表示された数字タイル２８０１から所望の数字アイコンをタップし、幾何学的パターンにおけるパスワード導出パターンに対応する要素までドラッグして、数字を入力する方法である。ユーザが数字アイコンを所定の要素上でドロップすることで、当該要素に数字が入力される。
【０２１８】
図２９に示す例は、ユーザが、画面内に表示された幾何学的パターンにおけるパスワード導出パターンに対応する要素に対して、該当する数字に対応する回数分タップして、数字を入力する方法である。例えば、要素に対する最初のタップにより当該要素に“０”が入力されるものとする。例えば、３行５列の要素に“７”を入力する場合、ユーザは、所定のタップスピードで８回タップする。情報通信端末２０は、一定時間、タップがないとタップ入力終了であると判断する。
【０２１９】
図３０Ａ及び３０Ｂは、タップした要素にテンキーが表示される例である。本例では、幾何学的パターンの全ての要素に予め“０”が与えられている。即ち、図３０Ａに示すように、ユーザは、画面内に表示された幾何学的パターンにおけるパスワード導出パターンに対応する一の要素をタップする。これにより、タップされたことが視覚的に区別されるように、当該要素は、ハイライトされた後、当該要素の直上に、図３０Ｂに示すようなテンキーがオーバーラップ表示される。ユーザが、テンキーに対してさらに所望の数字をタップすることで、当該要素に数字が入力される。なお、表示されたテンキーに対してユーザによる入力が一定時間何もないと、当該選択された要素に予め与えられている“０”が入力されることになる。
【０２２０】
図３１Ａ及び３１Ｂは、幾何学的パターン上を一筆書きの要領でなぞることにより所望の要素を選択する例である。即ち、図３１Ａに示すように、ユーザは、最初の要素をタップして選択すると、該要素を起点として、ドラッグしながら略直線の軌跡を引き、選択する要素上で一旦停止しながら、所定の数だけ要素を選択していく。ユーザが、ドラッグした指を離すことで、要素の選択が終了する。これにより、選択されたことが視覚的に区別されるように、当該要素は、ハイライトされる。次に、ユーザは、選択した要素に対して順番に、数字タイルの数字を選択して、トークンコードを入力する。
【０２２１】
図３２は、本発明の一実施形態に係るコンピューティングデバイスの概略的なハードウェア構成を示すブロックダイアグラムである。同図に示すように、コンピューティングデバイスは、典型的には、１又は２以上のプロセッサモジュール３２０１、チップセット３２０２、メモリモジュール３２０３、ストレージデバイス３２０４、Ｉ／Ｏコントローラ３２０５、各種のペリフェラルインターフェース３２０６を含むが、これらに限られるものではない。
【０２２２】
プロセッサモジュール３２０１は、例えば、プロセッサコア、マイクロコントローラ、デジタル信号プロセッサ及び／又はこれらの組み合わせを含むが、これらに限られるものではない。ここでは、「プロセッサコア」という用語は、メインプロセッサを意味するプロセッサやＣＰＵ、ＭＰＵ等と同義のものとして扱われる。プロセッサモジュールは、１次又はそれ以上のレベルのキャッシュ機構を含んでも良い。
【０２２３】
チップセット３２０２は、プロセッサモジュール３２０１、メモリモジュール３２０３、ストレージデバイス３２０４及びＩ／Ｏコントローラ３２０５等を接続するバスとのブリッジや、コンピューティングデバイスを構成するために必要な他のコンポーネントを集積した回路からなる。チップセット３２０２は、例えば、プロセッサモジュール３２０１によって制御される。
【０２２４】
メモリモジュール３２０３は、典型的には、揮発性メモリ（例えばＲＡＭ）、不揮発性メモリ（例えばＲＯＭやフラッシュメモリ等）及び／又はこれらの組み合わせからなる１次記憶装置である。メモリモジュール３２０３は、典型的には、デバイスドライバ、オペレーティングシステム（ＯＳ）プログラム、１又は２以上のアプリケーションプログラム及びプログラムデータ等の全部又は一部を保持し、プロセッサコアの利用に供される。
【０２２５】
ストレージデバイス３２０４は、典型的には、ハードディスクドライブ（ＨＤＤ）や光学式ディスクドライブ、ソリッドステートデバイス（ＳＳＤ）等からなる。ストレージデバイスは、プロセッサモジュールの２次記憶装置として機能し、ＯＳ、アプリケーションプログラム、プログラムデータ及び各種のデータベースを記憶する。これらのプログラム及びデータの全部又は一部は、外部記憶装置３２０７に記憶されても良い。
【０２２６】
なお、情報通信端末２０としてのコンピューティングデバイスは、例えば、無線通信を実現する各種のコンポーネント（例えば、アンテナ、無線通信用チップ、マイク及びスピーカ等）やユーザインターフェースを実現するコンポーネント（例えば、タッチパネル等）を含んで構成される。
【０２２７】
上記各実施形態は、本発明を説明するための例示であり、本発明をこれらの実施形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱しない限り、さまざまな形態で実施することができる。
【０２２８】
例えば、本明細書に開示される方法においては、その結果に矛盾が生じない限り、ステップ、動作又は機能を異なる順に実施しても良い。説明されたステップ、動作及び機能は、単なる例として提供されており、ステップ、動作及び機能のうちのいくつかは、発明の要旨を逸脱しない範囲で、省略でき、また、互いに結合させることで一つのものとしてもよく、また、他のステップ、動作又は機能を追加してもよい。
【０２２９】
また、本明細書では、さまざまな実施形態が開示されているが、一の実施形態における特定のフィーチャ（技術的事項）を、適宜改良しながら、他の実施形態に追加し、又は該他の実施形態における特定のフィーチャと置換することができ、そのような形態も本発明の要旨に含まれる。
【産業上の利用可能性】
【０２３０】
本発明は、コンピュータシステムへのログインのみならず、オンラインバンキングやオンラインショッピング等を提供するＷｅｂサイトやさまざまなクラウドサービスへのログイン、鍵開閉システム等を含むあらゆるシステムで要求されるユーザ認証の分野において利用可能である。
【符号の説明】
【０２３１】
１０…ネットワーク（インターネット）
１２…キャリアネットワーク
１４…ゲートウェイ
２０…情報通信端末
２２…セキュリティトークン
２２ａ…ソフトウェアトークン
２２ｂ…ハードウェアトークン
３０…利用対象システム
４０…認証システム
４２…認証サーバ
４４，４４’…認証データベース
４６…同期サーバ
【要約】
【課題】  システムに対する第三者の不正アクセスを有効に防止するユーザ認証技術を提供する。
【解決手段】  本発明は、情報通信端末が、ユーザのパスワード導出パターンを構成する各要素に認証システム側と時刻同期して生成されたトークンコードを構成する数字等を割り当てるとともに、他の要素にランダムに生成された数字等を割り当てた暗証表をユーザインターフェース上に表示し、ユーザは、該暗証表を参照して、自身のパスワード導出パターンを構成する各要素に割り当てられた数字等を抜き出してパスワードとして入力し、認証システムは、該生成した時刻同期のトークンコードに基づいて、入力されたパスワードに対する認証判定を行うユーザ認証方法及びシステムである。
【選択図】  図１【図１】
0005608838.tif 000002
【図２】
0005608838.tif 000003
【図３Ａ】
0005608838.tif 000004
【図３Ｂ】
0005608838.tif 000005
【図４Ａ】
0005608838.tif 000006
【図４Ｂ】
0005608838.tif 000007
【図５】
0005608838.tif 000008
【図６Ａ】
0005608838.tif 000009
【図６Ｂ】
0005608838.tif 000010
【図７】
0005608838.tif 000011
【図８】
0005608838.tif 000012
【図９】
0005608838.tif 000013
【図１０】
0005608838.tif 000014
【図１１】
0005608838.tif 000015
【図１２】
0005608838.tif 000016
【図１３】
0005608838.tif 000017
【図１４】
0005608838.tif 000018
【図１５】
0005608838.tif 000019
【図１６】
0005608838.tif 000020
【図１７】
0005608838.tif 000021
【図１８】
0005608838.tif 000022
【図１９】
0005608838.tif 000023
【図２０】
0005608838.tif 000024
【図２１Ａ】
0005608838.tif 000025
【図２１Ｂ】
0005608838.tif 000026
【図２２Ａ】
0005608838.tif 000027
【図２２Ｂ】
0005608838.tif 000028
【図２３】
0005608838.tif 000029
【図２４Ａ】
0005608838.tif 000030
【図２４Ｂ】
0005608838.tif 000031
【図２５】
0005608838.tif 000032
【図２６】
0005608838.tif 000033
【図２７Ａ】
0005608838.tif 000034
【図２７Ｂ】
0005608838.tif 000035
【図２８】
0005608838.tif 000036
【図２９】
0005608838.tif 000037
【図３０Ａ】
0005608838.tif 000038
【図３０Ｂ】
0005608838.tif 000039
【図３１Ａ】
0005608838.tif 000040
【図３１Ｂ】
0005608838.tif 000041
【図３２】
0005608838.tif 000042