(57)【要約】【課題】セキュリティレベルを向上することができる認証システム、認証方法、及び認証プログラムを提供すること。【解決手段】本発明の実施の形態にかかる認証システムは、オペレータによるパスワードの入力を受け付ける入出力部１０１と、入出力部１０１で入力されたパスワードとパスワードの入力時刻を記憶する記憶部１０６と、記憶部１０６に記憶されたパスワードと入力時刻を、予め設定された設定時刻及び設定パスワードと比較することで、認証を行う認証部１０４とを備えたものである。【選択図】図１
2015079418.tif 000002
【特許請求の範囲】
【請求項１】
オペレータによるパスワードの入力を受け付ける入出力部と、
前記入出力部で入力されたパスワードと前記パスワードの入力時刻を記憶する記憶部と、
前記記憶部に記憶された前記パスワードと前記入力時刻を、予め設定された設定時刻及び設定パスワードと比較することで、認証を行う認証部とを備えた認証システム。
【請求項２】
前記記憶部が、前記パスワードの入力開始時刻と入力終了時刻を記憶し、
前記認証部が前記入力可能時刻と前記入力終了時刻を用いて認証を行う請求項１に記載の認証システム。
【請求項３】
前記入力部が搭載された端末の動作を検出する動作検出部をさらに備え、
前記動作検出部で検出された動作と、前記パスワードとを組み合わせた入力規則とし、
前記認証部が、前記入力規則を用いて認証を行う請求項１、又は２に記載の認証システム。
【請求項４】
オペレータによって入力されたパスワード、及び前記パスワードの入力時刻を記憶部に記憶するステップと、
前記パスワード及び前記入力時刻を、予め設定された設定時刻及び設定パスワードと比較するステップと、
比較結果に応じて認証を行うステップと、を備えた認証方法。
【請求項５】
前記パスワードの入力開始時刻と入力終了時刻を記憶部に記憶し、
前記入力可能時刻と前記入力終了時刻を用いて認証を行う請求項４に記載の認証方法。
【請求項６】
前記パスワードを入力する端末の動作を検出し、
前記パスワード入力時の前記端末の動作と前記パスワードとを組み合わせた入力規則を用いて認証を行う請求項４、又は５に記載の認証方法。
【請求項７】
パスワードによる認証をコンピュータに対して実行させる認証プログラムであって、
オペレータによって入力されたパスワード、及び前記パスワードの入力時刻を記憶部に記憶し、
前記パスワード及び前記入力時刻を、予め設定された設定時刻及び設定パスワードと比較し、
比較結果に応じて認証を行うこと、
をコンピュータに実行させる認証プログラム。
【請求項８】
前記パスワードの入力開始時刻と入力終了時刻を記憶部に記憶し、
前記入力可能時刻と前記入力終了時刻を用いて認証を行うこと、
をコンピュータに実行させる請求項７に記載の認証プログラム。
【請求項９】
前記パスワードを入力する端末の動作を検出し、
前記パスワード入力時の前記端末の動作と前記パスワードとを組み合わせた入力規則を用いて認証を行うこと、
をコンピュータに実行させる請求項７、又は８に記載の認証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認証システム、認証方法、及び認証プログラムに関する。
【背景技術】
【０００２】
利用者の正当性を証明するために、ユーザがパスワードを入力するシステムは広く利用されている（特許文献１、２）。入力されたパスワードは、予め設定されたパスワードと何らかの方法で一致を確認し、これが一致した場合にのみ正当なユーザであると認める。これにより、サービスが利用可能になる
【０００３】
パスワードに名前や生年月日、電話番号などの意味を持ったものを使用すると、第三者に容易に推測されてしまう。これを防ぐためには複雑で特定の意味を持たない長いパスワードを設定する必要がある。パスワードはその性質上、紙媒体などに記録することなくユーザ個人が覚えておくことが望ましい。しかしながら、複雑で特定の意味を持たない長いパスワードを覚えておくことは困難であり、ユーザにとって負担となる。また、パスワード自体が、第三者に漏洩してしまった場合、複雑で特定の意味を持たない長いパスワードを設定しても、なりすましによる不正使用は防げない。
【０００４】
特許文献１では、入力履歴情報をユーザ認証のデータとする認証装置が開示されている。特許文献１では、文字キーだけでなく、「ＣａｐｓＬｏｃｋ」キー、「Ｓｈｉｆｔ」キー、「Ｄｅｌｅｔｅ」キー等の入力履歴情報を用いて、認証を行っている。また、特許文献２では、パスワードが２文字以上の文字列からなり、文字間の入力時間間隔情報を用いて認証を行う認証システムが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−１８２７７３号公報
【特許文献２】特開２００２−１５７５３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、パスワードを入力しているところを、第三者に見られてしまった場合、第三者による不正使用が行われてしまうおそれがあるという問題点がある
【０００７】
本発明は、高いセキュリティの認証システム、認証方法、及び認証プログラムを提供するものである。
【課題を解決するための手段】
【０００８】
本願発明の一態様にかかる認証システムは、オペレータによるパスワードの入力を受け付ける入出力部と、前記入出力部で入力されたパスワードと前記パスワードの入力時刻を記憶する記憶部と、前記記憶部に記憶された前記パスワードと前記入力時刻を、予め設定された設定時刻及び設定パスワードと比較することで、認証を行う認証部とを備えたものである。
【０００９】
本願発明の一態様にかかる認証方法は、オペレータによって入力されたパスワード、及び前記パスワードの入力時刻を記憶部に記憶するステップと、前記パスワード及び前記入力時刻を、予め設定された設定時刻及び設定パスワードと比較するステップと、比較結果に応じて認証を行うステップと、を備えたものである。
【００１０】
本願発明の一態様にかかる認証プログラムは、パスワードによる認証をコンピュータに対して実行させるプログラムであって、オペレータによって入力されたパスワード、及び前記パスワードの入力時刻を記憶部に記憶し、前記パスワード及び前記入力時刻を、予め設定された設定時刻及び設定パスワードと比較し、比較結果に応じて認証を行うこと、をコンピュータに実行させるものである。
【発明の効果】
【００１１】
本発明によれば、高いセキュリティの認証システム、認証方法、及び認証プログラムを提供することができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１にかかる認証システムの構成を示すブロック図である。
【図２】パスワード設定画面を示す図である。
【図３】アクション設定に対応する文字列を示す表である。
【図４】パスワード認証画面を示す図である。
【図５】時刻設定に対応する文字列を示す表である。
【図６】パスワード設定の処理を示すフローチャートである。
【図７】パスワード認証の処理を示すフローチャートである。
【図８】パスワード認証の処理を簡略化して示すフローチャートである。
【図９】実施の形態２にかかる認証システムの構成を示すブロック図である。
【発明を実施するための形態】
【００１３】
添付の図面を参照して本発明の実施形態を説明する。以下に説明する実施形態は本発明の実施例であり、本発明は、以下の実施形態に制限されるものではない。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
【００１４】
本実施の形態にかかる認証システムは、携帯端末、タブレット端末、スマートフォン、パーソナルコンピュータ等の電子機器（以下、端末とする）に搭載されている。あるいは、本実施の形態にかかる認証システムはネットワークを介して、端末からサーバに認証を行う認証システムに対しても適用可能である。したがって、認証システムは、物理的に単一な端末に搭載されているものに限られるものではない。
【００１５】
本実施の形態にかかる認証システムについて、図１を用いて説明する。図１は、認証システムの構成を示すブロック図である。認証システム１００は、入出力部１０１と、動作検出部１０２と、制御部１０３と、認証部１０４と、一時記憶部１０５と、記憶部１０６とを備えている。
【００１６】
入出力部１０１は、パスワードの設定、入力、情報の出力を行うユーザインタフェースである。例えば、入出力部１０１は、モニタ等の出力部と、タッチパネル、キーボート、マウスなどに入力部を備えている。入出力部１０１は、オペレータによるパスワード入力等の操作を受け付ける。例えば、入出力部１０１は、タッチパネルなどによって入力されたパスワードを制御部１０３に送出する。制御部１０３から出力された情報が入出力部１０１に送出されると、入出力部１０１のモニタが表示を行う。
【００１７】
動作検出部１０２は、入出力部１０１が搭載された端末の振動や回転などのアクションを検出する。例えば、動作検出部１０２は、タブレット端末やスマートフォンなどで広く利用されているジャイロセンサ等を有している。そして、動作検出部１０２は、端末の動作に基づく検出信号をアクション情報として制御部１０３に出力する。例えば、動作検出部１０２は、端末（入力端末）の振動、左回転、右回転を検出する。
【００１８】
制御部１０３は、入出力部１０１、動作検出部１０２、認証部１０４、一時記憶部１０５、記憶部１０６等を統括的に制御する。例えば、制御部１０３は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等の演算処理ユニットを備えている。
【００１９】
認証部１０４は、入出力部１０１で入力された入力情報と、予め記憶されている認証情報を比較して、比較結果に基づいて認証を行う。これにより、入力されたパスワードの正当性が判断される。例えば、オペレータが、パスワード設定を行うと、設定パスワードに基づく認証情報が記憶部１０６に記憶される。そして、認証時にオペレータが入力したパスワードに基づく入力情報と、認証情報が一致する場合、認証が成功する。これにより、サービスが利用可能となる。一方、入力されたパスワードに基づく入力情報と、認証情報が一致しない場合、認証が失敗する。これにより、サービスの利用が拒絶される。
【００２０】
一時記憶部１０５は、登録前のパスワード設定や、入力されたパスワードを一時的に記憶する。記憶部１０６は、オペレータによって登録されたパスワード設定を認証情報として記憶する。一時記憶部１０５と記憶部１０６は例えば、バッファやメモリ等である。認証部１０４は、一時記憶部１０５に記憶された入力パスワードと、記憶部１０６に記憶された設定パスワードを比較する。そして、認証部１０４は、比較結果に応じて、ユーザ認証を行う。
【００２１】
本実施の形態では、タッチパネルやキーボードなどによる文字入力だけではなく、時刻情報及びアクション情報を用いてパスワード認証を行う。例えば、入力したパスワードと、パスワードの入力時刻と、パスワード入力中の端末動作（アクション）とを入力情報として用いる。そして、入力情報が予め設定した設定情報と一致しているか否かによって、認証を行っている。
【００２２】
次に、パスワード設定について、図２及び図３を用いて説明する。図２は、パスワード設定を行う設定画面の一例を示す図である。例えば、オペレータがパスワードの設定を行う場合、入出力部１０１のモニタは、図２のパスワード設定ウィンドウを表示する。パスワード設定ウィンドウには、主として、パスワードを入力するためのパスワード設定欄１と、アクション設定入力欄１８と、時刻設定入力欄１９と、パスワード設定（ＯＫ）ボタン１５と、キャンセルボタン１６とが含まれる。図３は、端末のアクションに対応するアクション設定文字列を示す表である。
【００２３】
パスワード設定欄１は、オペレータが入力したパスワード（文字）と、アクション設定文字列とを組み合わせた入力規則を表示する。すなわち、オペレータが入力した文字と、アクション設定に基づくアクション設定文字列を順番に配列することで、入力規則が決定される。具体的には、オペレータが文字を入力していくことで、パスワード設定欄１に入力した文字が追加される。また、オペレータがアクション設定を行うことで、パスワード設定欄１に図３に示すようなアクション設定文字列が追加される。ここでは、パスワード設定欄１にａ＠Ｂ１＠ｂ＠Ｒ９０＠ｃ＠Ｌ９０＠が表示されている。
【００２４】
アクション設定入力欄１８には、端末振動設定２、左回転設定３、右回転設定４、アクション回数設定５、アクション設定ボタン６、アクション制御文字７の入力項目がある。なお、入力端末がタブレット端末やスマートフォン等の回転可能な電子機器であるとして説明する。
【００２５】
アクション制御文字７は、パスワード設定欄１において、アクション設定に基づく文字列であることを識別するために設けられている。すなわち、パスワード設定欄１において、「＠」は、端末のアクション設定であることを示す文字である。ここでは、「＠」をアクション制御文字のデフォルト値としているが、アクション制御文字は「＠」以外の文字であってもよい。
【００２６】
オペレータが、端末振動設定２、左回転設定３、又は右回転設定４のチェックボックスをチェックして、アクション設定ボタン６を押す。すると、チェックしたアクション設定に応じたアクション設定文字列がパスワード入力のパスワード設定欄１として追加される。端末のアクション設定に対応するアクション設定文字列は図３に示すようになっている。端末の振動、左回転、右回転ごとに異なるアクション設定文字列が設定されている。
【００２７】
例えば、オペレータが端末振動設定２をチェックして、アクション回数５を設定する。アクション回数５には、１〜１０までの数値（整数）が入力可能である。ここでは、振動回数を１回として、アクション設定ボタン６を押す。すると、パスワード設定欄１に１回の振動を示す＠Ｂ１＠が入力される。なお、＠はアクション制御文字７であり、Ｂはアクションが振動であることを示す文字であり、１は振動回数を示している。なお、アクション回数５を２回として、アクション設定ボタン６を押した場合、＠Ｂ２＠がパスワード設定欄１に入力される。
【００２８】
また、オペレータが左９０度回転３をチェックして、アクション設定ボタン６を押すと、パスワード設定欄１に左９０度回転を示す＠Ｌ９０＠が入力される。オペレータが右９０度回転４をチェックして、アクション設定ボタン６を押すと、パスワード設定欄１に右９０度回転を示す＠Ｒ９０＠が入力される。
【００２９】
図２では、パスワード設定欄１に、ａ＠Ｂ１＠ｂ＠Ｒ９０＠ｃ＠Ｌ９０＠が入力されている。これは、以下の（１）〜（６）の順番で入力規則が設定されたことを示している。
（１）文字ａの入力、（２）１回の端末振動、（３）文字ｂの入力、（４）右９０度回転、（５）文字ｃの入力、（６）左９０度回転
【００３０】
このように、オペレータによる文字入力と、アクション設定に基づいて、入力規則が設定される。すなわち、パスワード文字とアクション設定文字列との組み合わせが、パスワード設定欄１に表示される。もちろん、アクション設定文字列は、上記の例に限定されるものではない。さらに、入力規則を決定するためのアクションも、振動、左９０度回転、右９０度回転に限定されるものではない。例えば、上下反転等を設定アクションとしてもよい。
【００３１】
次に、時刻設定入力欄１９について説明する。時刻設定入力欄１９には、時刻設定要否８、秒指定９、分指定１０、入力開始時刻（秒）１１、入力可能時間１２、入力開始時刻（分）１３、及び入力可能時間１４が入力項目となっている。時刻設定要否８は、認証に時刻情報を用いるか否かを決定するためのチェックボックスである。例えば、時刻設定要否８を使用しないとするチェックボックスをチェックすると、時刻情報を使用せずに認証を行う。すなわち、文字入力とアクション設定からなる入力規則のみに基づいて、認証を行う。一方、時刻設定要否８を使用しないとするチェックボックスをチェックしないと、時刻情報を使用して認証を行う。すなわち、秒指定９又は分指定１０のチェックボックスをチェックすると入力規則と時刻設定の両方に基づいて、認証を行う。
【００３２】
時刻情報を用いる場合、秒指定９と分指定１０とが択一的に選択される。オペレータが秒指定９のチェックボックスをチェックすると、秒指定９が選択される。秒指定９が選択されると、入力時刻の秒に基づいて、認証が行われる。秒指定９が選択されると、オペレータは、入力開始時刻１１と入力可能時間１２とを入力する。例えば、図２では、ＸＸ時ＸＸ分００秒が入力開始時刻１１として設定され、１０秒が入力可能時間１２として設定されている。この場合、ＸＸ時ＸＸ分００秒から１０秒以内にパスワード入力が行われると認証が成功する。なお、ＸＸは任意の値である。したがって、１分ごとにパスワード認証が成功するようになる。
【００３３】
オペレータが分指定１０のチェックボックスをチェックすると、分指定１０が選択される。分指定１０が選択されると、入力時刻の分秒に基づいて、認証が行われる。分指定１０が選択されると、オペレータは、入力開始時刻１３と入力可能時間１４とを入力する。例えば、図２では、ＸＸ時１５分００秒が入力開始時刻１３として設定され、３０秒が入力可能時間１４として設定されている。この場合、ＸＸ時１５分００秒から３０秒以内にパスワード入力が行われると認証が成功する。なお、ＸＸは任意の値である。したがって、１時間ごとにパスワード認証が成功するようになる。
【００３４】
このように、入力開始時刻１１、１３と、入力可能時間１２、１４を設定することで、パスワードの認証が成功する時間を制限することができる。よって、パスワードが漏えいした場合でも、不正使用を防止することができる。これにより、セキュリティを向上することができる。ここで、時刻をｈｈｍｍｓｓと表記する。すなわち、ｈｈは０時〜２３時を示し、ｍｍは０分〜５９分を示し、ｓｓは０秒〜５９秒を示すものとする。例えば、秒指定９を用いる場合、時刻ｈｈｍｍｓｓのうちのｓｓを抜き出して、設定時刻とする。分指定１０の場合、時刻ｈｈｍｍｓｓのうちのｍｍｓｓを抜き出して、設定時刻とする。
【００３５】
そして、オペレータがパスワード設定（ＯＫ）ボタン１５を押すと、パスワード設定が完了する。これにより、一時記憶部１０５に記憶されていた入力規則（パスワード設定欄１の文字列）、及び設定時刻が記憶部１０６に記憶される。一方、オペレータがキャンセルボタン１６をクリックすると、パスワード設定がキャンセルされる。これにより、一時記憶部１０５に記憶されていた入力規則、及び設定時刻が破棄される。
【００３６】
次に、パスワード認証画面について、説明する。図４は、パスワード認証画面を示す図である。すなわち、パスワード入力画面では、図４に示すパスワード入力ウィンドウがモニタに表示される。
【００３７】
制御部１０３は、サービスを提供する前にユーザＩＤを入力して、パスワード認証画面を表示させる。パスワード認証画面には、時計２１と、パスワード入力欄２２と、認証ボタン２３が含まれている。時計２１は、現在時刻を表示する。時計２１は、現在時間をｈｈｍｍｓｓで表示している。パスワード入力欄２２は、オペレータが入力した文字を表示する。認証ボタン２３をクリックすることで、パスワードの入力が終了して、認証が行われる。パスワード認証画面中に時計２１を表示させることで、オペレータがパスワードの入力開始時刻と入力終了時刻を容易に認識することができる。よって、時刻情報に基づく認証を容易に行うことができる。
【００３８】
ここで、パスワードの入力時刻と、設定時刻について、図５を用いて説明する。図５は、設定時刻と、入力時刻を説明するための表である。また、図５では、制御文字を「＠」としている。
【００３９】
ここで、項番１には、パスワード設定画面で入力された設定時刻を示している。ここでは、設定時刻は文字列として示されている。例えば、設定時刻は、＠ＳｍｍｓｓＰｐｐ＠として設定されている。上記の通り、ｍｍは０〜５９分が入力され、ｓｓは０〜５９秒が入力される。「ｍｍｓｓ」には、入力開始時刻１１、又は入力開始時刻１３が入力される。秒指定９とした場合、ｍｍには、＊＊が入力される。ｐｐには、パスワードの入力可能時間１２、又は入力可能時間１４が入力される。
【００４０】
例えば、＠Ｓ＊＊００Ｐ１０＠の場合、秒指定９によって、ＸＸ時ＸＸ分００秒から１０秒間でパスワードを入力する設定を示す。また、＠Ｓ１５００Ｐ３０＠の場合、分指定１０によって、ＸＸ時１５分００秒から３０秒間でパスワードを入力する設定を示す。
【００４１】
項番２には、パスワード認証画面で入力されたパスワードの入力開始時刻を示している。例えば、オペレータがパスワード認証画面で最初の文字を入力した時刻を入力開始時刻とする。項番３は、パスワード認証画面で入力されたパスワードの入力終了時刻を示している。例えば、オペレータがパスワード認証画面で認証ボタン２３をクリックした時刻を入力終了時間とする。入力開始時刻、及び入力終了時刻は、それぞれｈｈｍｍｓｓ（ｈｈ時間ｍｍ分ｓｓ秒）として入力される。
【００４２】
制御部１０３は、入力された時間情報に基づいて、時刻設定文字列を生成する。記憶部１０６、又は一時記憶部１０５は時刻設定文字列を記憶する。認証部１０４は、入力開始時刻、及び入力終了時刻を設定時刻と比較することで、認証を行う。すなわち、設定時刻で示される範囲外の時間に、パスワードの入力が行われた場合に、認証が失敗する。
【００４３】
次に、パスワード設定における処理について、図６を用いて説明する。図６は、パスワード設定の処理を示すフローチャートである。まず、オペレータがパスワード設定を行うと、入出力部１０１がパスワード設定画面を表示する（Ｓ１）。パスワード設定画面は、図２に示すようなウィンドウとなっている。
【００４４】
次に、オペレータの処理を待つ（Ｓ２）。ここで、オペレータの入力によって、Ｂ１〜Ｂ５の５つに分岐する。オペレータが文字を入力した場合（Ｂ１）、入力された文字を入力バッファに格納する。すなわち、一時記憶部１０５が入力された文字を記憶する。そして、Ｓ２に戻る。
【００４５】
オペレータがアクション設定ボタン６をクリックした場合（Ｂ２）、制御部１０３はアクション設定文字列を作成して、入力バッファに追加する（Ｓ４）。すなわち、一時記憶部１０５が入力されたアクション設定文字列を記憶する。そして、Ｓ２に戻る。
【００４６】
オペレータがアクション制御文字７を変更した場合（Ｂ３）、制御部１０３がアクション制御文字７の入力を検出する。すると、制御部１０３は、入力バッファのアクション設定文字列を検索して、変更後のアクション制御文字を用いたアクション設定文字列に置き換える（Ｓ５）。これにより、パスワード設定欄１のアクション制御文字が新しいアクション制御文字に更新される。そして、Ｓ２に戻る。
【００４７】
オペレータがキャンセルボタン１６をクリックした場合（Ｂ４）、入力バッファを破棄する。すなわち、一時記憶部１０５に記憶された設定パスワード文字列のデータが消去される。そして、パスワード設定画面を閉じて（Ｓ８）、処理を終了する。
【００４８】
オペレータがパスワード設定ボタン１５をクリックした場合（Ｂ５）、時刻設定で「使用しない」以外が選択されているかを確認する（Ｓ７）。すなわち、秒指定９、又は分指定１０がチェックされているか否かを確認する。「使用しない」以外が選択されている場合、制御部１０３は、時刻設定の文字列を作成して、入力バッファの先頭に追加する（Ｓ７１）。すなわち、パスワード設定欄１の入力規則の先頭に、時刻設定文字列を追加して、記憶部１０６に記憶する。時刻設定文字列は図５の項番１に基づいて作成される。
【００４９】
そして、制御部１０３が、入力バッファの文字列の妥当性を確認する（Ｓ７２）。文字列の妥当性は、アクション制御文字に基づいて、確認することができる。例えば、アクション制御文字の数が偶数であるならば、制御部１０３は、妥当と判断する。一方、アクション制御文字の数が奇数であるならば、制御部１０３は、妥当でないと判断する。また、文字列が図３の表の項番１〜３に該当する場合、または図５の表の項番１に該当する場合、制御部１０３は妥当であると判断する。一方、文字列が図３の表の項番１〜３、または図５の表の項番１に該当しない場合、制御部１０３は妥当でないと判断する。
【００５０】
文字列が妥当でない場合、制御文字に誤りがある旨のエラーを表示する（Ｓ７３）。文字列が妥当である場合、設定時刻と入力規則に基づく設定情報の文字列を記憶部１０６に保存する（Ｓ７４）。そして、パスワード設定画面を閉じて（Ｓ８）、終了する。
【００５１】
また、パスワード時刻設定で「使用しない」が選択されている場合、上記と同様に、制御部１０３が、入力バッファの文字列の妥当性を確認する（Ｓ７２）。制御文字に誤りがある場合、制御文字に誤りがある旨のエラーを表示する（Ｓ７３）。そして、Ｓ２に戻り、オペレータの処理を待つ。制御文字に誤りがない場合、設定時刻と入力規則に基づく設定パスワード文字列を記憶部１０６に保存する（Ｓ７４）。そして、パスワード設定画面を閉じて（Ｓ８）、終了する。このようにして、時刻情報と動作情報をパスワード文字に組み合わせた設定情報が設定パスワード文字列として生成される。
【００５２】
次に、パスワード認証の処理について、図７を用いて説明する。図７は、パスワード認証の処理を示すフローチャートである。パスワード認証では、図４に示すパスワード認証画面が表示される。
【００５３】
まず、オペレータからのパスワード認証の要求があると、制御部１０３は、サービスを提供する前に、図４のパスワード認証画面を表示する（Ｓ１１）。そして、オペレータの処理を待つ（Ｓ１２）。オペレータによる入力内容の違いによって、Ｂ１１〜Ｂ１４の４つに分岐する。
【００５４】
オペレータがパスワード入力欄（図４参照）に文字を入力した場合（Ｂ１１）、入力文字を取得する（Ｓ１３）。オペレータが端末の振動アクションを行った場合（Ｂ１２）、端末の振動を図３の項番１に示す振動アクション設定文字列に変換する（Ｓ１４）。すなわち、動作検出部１０２が端末の振動を検出する。そして、制御部１０３が、振動回数に応じたアクション設定文字列を生成する。例えば、振動回数が１回の場合、＠Ｂ１＠がアクション設定文字列として生成される。
【００５５】
オペレータが端末の回転アクションを行った場合（Ｂ１３）、端末の回転を図３の項番２、３に示す回転アクション設定文字列に変換する（Ｓ１５）。すなわち、動作検出部１０２が端末の回転を検出する。そして、制御部１０３が、回転方向に応じたアクション設定文字列を生成する。例えば、左９０度回転の場合、＠Ｌ９０＠がアクション設定文字列として生成される。また、右９０度回転の場合、＠Ｒ９０＠がアクション設定文字列として生成される。
【００５６】
そして、Ｂ１〜Ｂ３に分岐して、文字の取得及びアクション設定文字列の生成を行った後は、以下の共通処理（Ｓ３１〜Ｓ３３）を実施する。まず、入力バッファが空なのか、すなわち、最初の入力か否かを確認する（Ｓ３１）。空の場合、すなわち、最初の入力の場合は、入力開始時刻を示す文字列（表２の項番２）を入力バッファに格納する（Ｓ３２）。入力開始時刻は、最初の文字入力を行った時刻又は端末のアクションを行った時刻である。次に、Ｓ１３〜Ｓ１５で取得または作成した文字列を、入力バッファに格納（Ｓ３３）して、Ｓ１２に戻る。このように、一時記憶部１０５は、入力開始時刻を示す文字列の後に、最初の入力に応じた文字列を付加する。
【００５７】
入力バッファが空でない場合、すなわち、既に入力バッファに文字列が格納されている場合、Ｓ１３〜Ｓ１５の文字列を入力バッファに格納する（Ｓ３３）。すなわち、既に一時記憶部１０５に格納されている文字列の後に、Ｓ１３〜Ｓ１５の文字列を追加する。そして、Ｓ１２に戻る。
【００５８】
オペレータが認証ボタン２３をクリックした場合（Ｂ１４）、入力終了時刻を入力バッファに格納する（Ｓ１６）。すなわち、認証ボタン２３をクリックするまで、文字列の入力バッファへの格納を繰り返し行う。入力終了時刻は、例えば、認証ボタン２３をクリックした時刻である。表２の項番３に示す入力完了時刻の文字列を一時記憶部１０５に記憶する。この時点で、認証対象のパスワードが完成する。以下に、パスワード入力画面で入力された入力パスワード文字列の１例を示す。
@ST172201@a@B1@b@R90@c@L90@@ET172209@
【００５９】
上記の場合、時刻17：22：01にパスワードの入力が開始され、時刻17：22：09に入力が完了(認証要求開始)したことを表す。なお、入力パスワード文字列に含まれる入力規則は以下の内容を表している。
【００６０】
（１）文字ａを入力、（２）端末を１回振動させる、（３）文字ｂを入力、（４）端末を右方向に90度回転、（５）ｃを入力、（６）端末を左方向に90度回転
【００６１】
次に認証動作の詳細を説明する。認証は、図８に示すように、「入力規則の確認」、「入力時間の確認」および「入力開始時刻の確認」の３つにより実行される。そして、全てにおいて確認OKであった場合に認証成功とする。以下、設定された設定パスワード文字列を「@S**00P10@a@B1@b@R90@c@L90@」とし、入力された入力パスワード文字列を「@ST172201@a@B1@b@R90@c@L90@@ET172209@」として説明する。
【００６２】
保存されている設定パスワード文字列をパスワード時刻（ＰＷ１１）とそれ以外（ＰＷ１２）に分割する（Ｓ６０１）。ＰＷ１２は入力規則に相当する。以下、分割されたＰＷ１１とＰＷ１２を示す。
@S**00P10@  ・・・  (PW11)
a@B1@b@R90@c@L90@ ・・・ (PW12)
【００６３】
次に、入力バッファの内容を入力開始時刻（ＰＷ２１）、入力終了時刻（ＰＷ２２）、及び、それ以外（ＰＷ１３）に分割する（Ｓ６０２）。すなわち、図４のパスワード入力画面で入力されたパスワードと、端末動作と、入力時刻に基づいて生成された入力パスワード文字列を入力開始時刻と、入力終了時刻、及び入力規則の３つに分離する。ＰＷ２３は入力規則に相当する。以下、分割されたＰＷ２１〜ＰＷ３３を示す。
@ST172201@ ・・・ (PW21)
@ET172209@ ・・・ （PW22）
a@B1@b@R90@c@L90@ ・・・ (PW23)
【００６４】
入力文字列とアクションが正しいか確認するため、ＰＷ１２とＰＷ２３を比較する（Ｓ６０１）。すなわち、時刻情報以外の入力規則が設定情報と一致するか否かを確認する。パスワード設定時と認証時のアクション設定文字列の作成方法は同じなので、ＰＷ１２とＰＷ２３が文字列として一致する事を確認する。一致しない場合は、Ｓ６０９に遷移して認証失敗とする。一致している場合、Ｓ６０４に移行する。
【００６５】
次に、パスワードが入力可能時間内に入力されたか否かを確認する。入力された入力パスワード文字列には、入力開始時刻と入力終了時刻が付加されている。この差分（秒）を計算して、設定されているパスワード入力可能時間内であるかを確認する。
【００６６】
そのため、ＰＷ１１から入力開始時刻（ＰＷ３１）と入力可能時間（ＰＷ３２）を取得する（Ｓ６０４）。すなわち、ＰＷ１１を入力開始時刻（ＰＷ３１）と入力可能時間（ＰＷ３２）に分割する。なお、ＰＷ３１に関しては、数値として比較するため、ＰＷ３１に＊＊が含まれる場合、００に変換する。すなわち、秒指定の場合は、分の情報を００とする。そして、ＰＷ３１にＰＷ３２を加算した値とＰＷ３３とする。上記の場合のＰＷ３１〜ＰＷ３３を以下に示す。
**00 → 0000 ・・・ (PW31)
10 ・・・ (PW32)
0010 ・・・ (PW33)
【００６７】
ＰＷ２１とＰＷ２２からｈｈｍｍｓｓを抜き出して、ＰＷ４１、ＰＷ４２とし、ＰＷ４１とＰＷ４２の差分（秒）をＰＷ４３とする（Ｓ６０５）。ＰＷ４３は、ＰＷ４２からＰＷ４１を引いた値であり、パスワードの入力に要した時間となる。上記の場合のＰＷ４１〜ＰＷ４３を以下に示す。
172201 ・・・ (PW41)
172209 ・・・ (PW42)
8 ・・・ (PW43)
【００６８】
このように、パスワード入力画面においてパスワードの入力に要した時間は８秒となる。そして、ＰＷ４３がＰＷ３２以下であるか否かを確認する（Ｓ６０６）。すなわち、入力終了時刻と入力開始時刻との差分（ＰＷ４３）が、入力可能時間（ＰＷ３２）以下となっているか否かを確認する。これにより、入力可能時間内にパスワードの入力が実行されたのかを確認することができる。ＰＷ４３がＰＷ３２よりも大きい場合、Ｓ６０９に遷移して認証失敗とする。ＰＷ４３がＰＷ３２以下の場合、Ｓ６０７に移行する。
【００６９】
最後にパスワードの入力開始時刻を確認する。Ｓ６０３とＳ６０６の確認で、端末アクションを含めたパスワードが、設定された時間内に入力された事が確認できている。後は、パスワードの入力を開始した入力開始時刻が、設定されている秒（または分）から入力可能時間の設定秒を加算した時間までの範囲に収まっていることを確認すれば良い。以下にその動作を説明する。
【００７０】
ＰＷ４１からｍｍｓｓの部分のみを抜き出し、ＰＷ５１とする（Ｓ６０７）。但し、この時、ＰＷ１１に＊＊が含まれている場合、秒のみを意識するので、ｍｍの部分は００に置き換える。すなわち、秒指定の場合は、ｍｍを００に置き換え、分指定の場合は、ｍｍをそのままとする。以下に、上記の場合のＰＷ５１を示す。
2201 → 0001 ・・・ (PW51)
【００７１】
パスワードの入力開始時刻がＰＷ３１以上で、ＰＷ３３以下の範囲内であることを確認する（Ｓ６０８）。比較は、ＰＷ３１、ＰＷ３３、ＰＷ５１を数値として比較する。ＰＷ５１がＰＷ３１以上、ＰＷ３３以下であれば、入力開始時刻が範囲内で実行されたと判断する。したがって、範囲内に実行されたと判断された場合、認証成功としサービスを利用可能とする（Ｓ６１０）。ＰＷ５１がＰＷ３１より小さい場合、又はＰＷ３３より大きい場合、入力開始時刻が範囲外と判断する。この場合は、認証失敗として、サービスを利用不可とする（Ｓ６０９）。
【００７２】
上記したように、本実施形態では、入力文字や端末のアクションだけでなく、入力時刻に基づいて、認証を行っている。このようにすることで、セキュリティレベルを向上することができる。なお、上記の説明では、動作検出の結果を用いて認証を行ったが、動作検出結果を用いずに、パスワードとその入力時刻のみで認証を行ってもよい。パスワードと入力時刻を用いることで、セキュリティレベルを向上することができる。また、入力開始時刻と入力終了時刻を用いることで、よりセキュリティレベルを向上することができる。例えば、入力開始時刻と入力終了時刻の差から、実際に入力に要した入力時間を求める。そして、入力可能時間と、入力時間を比較して、比較結果により認証を行う。さらに、パスワードと入力時刻に、端末の動作検出結果を組み合わせることで、よりセキュリティレベルを向上することができる。
【００７３】
パスワードの文字を含む入力規則が一致し、かつ入力時刻が条件を満たした場合のみ、正当なユーザであると認証する。こうすることでパスワード自体の漏洩による不正利用を防ぎ、意味を持ったパスワードであってもセキュリティ強化を図ることが出来る。また、指紋認証や静脈認証などの生体認証装置などの特殊なデバイスを使用することなくセキュリティを強化することができる。
【００７４】
以上、本実施の形態にかかる認証方法をまとめると、図８に示すようになる。まず、端末アクションを含めた入力規則の正当性を確認する（Ｓ１０１）。次に、パスワードが入力可能時間内に入力されたか否かを確認する（Ｓ１０２）。そして、パスワードの入力開始時刻が、指定された範囲内であるか否かを確認する（Ｓ１０３）。そして、Ｓ１０１〜Ｓ１０３の全てにおいて、正当性が確認された場合に、認証ＯＫとする。このようにすることで、セキュリティレベルを向上することができる。もちろん、本実施の形態に係るパスワード認証処理は、上記の順番に限られるものではない。
【００７５】
実施の形態２．
本実施の形態に係る認証システムについて、図９を用いて説明する。図９は認証システムの構成を示すブロック図である。なお、本実施の形態に係る認証システム１００に対して、実施の形態１で示した認証システム及び認証方法を適宜追加してもよい。
【００７６】
認証システム１００は、入出力部１０１と、記憶部１０６と、認証部１０４とを備えている。入出力部１０１は、オペレータによるパスワードの入力を受け付ける。記憶部１０６は、入出力部１０１で入力されたパスワードと前記パスワードの入力時刻を記憶する。認証部１０４は、記憶部１０６に記憶されたパスワードと入力時刻を用いて認証を行う。このようにすることで、セキュリティレベルを向上することができる。
【００７７】
その他の実施の形態．
本発明の他の実施の形態として、スタンドアロン環境だけではなく、ネットワーク経由での認証も考えられる。例えば、クライアントとサーバをネットワークで接続して、クライアントから送信された入力規則が付加されたパスワードをサーバ側で認証する。認証が成功した場合に、正当なユーザにサービスを提供することが考えられる。この場合は、クライアントとサーバの間で、制御文字およびシステム時刻の同期を行う必要がある。スタンドアロン環境でのＰＣ（パーソナルコンピュータ）や携帯端末などの認証や、ネットワークを経由した環境で、サービスを利用するための正当な利用者であることを確認するためのシステムとして利用することができる。
【００７８】
実施の形態１、又は２にかかる認証方法における処理のうちの一部又は全部は、コンピュータプログラムによって実行されても良い。上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、ＣＤ−ＲＯＭ(Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ(例えば、マスクＲＯＭ、ＰＲＯＭ(Programmable ROM）、ＥＰＲＯＭ(Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ(Random Access Memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００７９】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記によって限定されるものではない。本願発明の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【００８０】
１００  認証システム
１０１  入出力部
１０２  動作検出部
１０３  制御部
１０４  認証部
１０５  一時記憶部
１０６  記憶部
【図１】
2015079418.tif 000003
【図３】
2015079418.tif 000004
【図５】
2015079418.tif 000005
【図６】
2015079418.tif 000006
【図７】
2015079418.tif 000007
【図８】
2015079418.tif 000008
【図９】
2015079418.tif 000009
【図２】
2015079418.tif 000010
【図４】
2015079418.tif 000011