(57)【要約】【課題】  特にサーバー側でのパスワード生成、または照合の処理負荷、及び端末側とサーバー側との時刻のずれによる認証失敗の可能性を最小限に抑制する端末やサーバーなどの通信装置を提供する。【解決手段】  端末１０は、サーバー２０との接続時間を計測する接続時間計測部１１１と、サーバー２０と次に接続する際に使用されるパスワードのパラメーターに、計測した接続時間を用いてパスワードを生成するパスワード生成部１１２と、生成したパスワードを記憶するパスワード記憶部１１３とを備え、サーバー２０は、端末１０との接続時間を計測する接続時間計測部１２１と、端末１０と次に接続する際に使用されるパスワード候補のパラメーターに、計測した接続時間を用いてパスワード候補を生成するパスワード候補生成部１２２と、生成したパスワード候補を記憶するパスワード候補記憶部１２３とを備える。【選択図】  図１
2007018140.tif 000002
【特許請求の範囲】
【請求項１】
他の通信装置と通信する通信装置であって、
前記他の通信装置との接続開始時刻および接続終了時刻から、前記他の通信装置との接続時間を計測する接続時間計測手段と、
前記他の通信装置と次に接続する際に使用されるパスワードのパラメーターに前記接続時間を用いて、前記パスワードを生成するパスワード生成手段と、
前記パスワードを記憶するパスワード記憶手段と
を備えることを特徴とする通信装置。
【請求項２】
前記パスワード生成手段は、
前記他の通信装置と初めて接続する場合には、前記接続時間をゼロとして、前記パスワードを生成する
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
前記接続時間計測手段は、
前記他の通信装置と接続している途中で、前記接続時間が変更された場合には、変更前の接続時間および変更後の接続時間を記憶する
ことを特徴とする請求項１に記載の通信装置。
【請求項４】
前記パスワード生成手段は、
前記他の通信装置との接続が終了した後に、前記パスワードを生成する
ことを特徴とする請求項１に記載の通信装置。
【請求項５】
前記パスワード生成手段は、
前記接続時間を単位時間ずつずらした複数の時間毎に、パスワードを生成し、
前記パスワード記憶手段は、
複数のパスワードを記憶する
ことを特徴とする請求項１に記載の通信装置。
【請求項６】
前記通信装置は、さらに、
前々回接続時間と前回の接続時に使用されたパスワードが生成されるにあたって用いられた時間との差分に、前回接続時間と前々回接続時間との比率を掛けた値で、前回接続時間を補正する接続時間補正値算出手段を備え、
前記パスワード生成手段は、
補正された前回接続時間を基にパスワードを生成する
ことを特徴とする請求項５に記載の通信装置。
【請求項７】
前記通信装置は、
前記他の通信装置に接続する場合には、前記パスワードを前記他の通信装置に送信するパスワード送信手段
を備えることを特徴とする請求項１に記載の通信装置。
【請求項８】
前記通信装置は、
前記他の通信装置から接続される場合には、前記他の通信装置から送信された前記パスワードを受信するパスワード受信手段と、
受信されたパスワードを照合するパスワード照合手段と
を備えることを特徴とする請求項１に記載の通信装置。
【請求項９】
他の通信装置と通信する通信装置を制御するパスワード変更方法であって、
前記他の通信装置との接続開始時刻および接続終了時刻から、前記他の通信装置との接続時間を計測する接続時間計測ステップと、
前記他の通信装置と次に接続する際に使用されるパスワードのパラメーターに前記接続時間を用いて、前記パスワードを生成するパスワード生成ステップと、
前記パスワードを記憶するパスワード記憶ステップと
を含むことを特徴とするパスワード変更方法。
【請求項１０】
通信装置と通信するコンピュータシステムに実行させるパスワード変更プログラムであって、
前記通信装置との接続開始時刻および接続終了時刻から、前記通信装置との接続時間を計測する接続時間計測ステップと、
前記通信装置と次に接続する際に使用されるパスワードのパラメーターに前記接続時間を用いて、前記パスワードを生成するパスワード生成ステップと、
前記パスワードを記憶するパスワード記憶ステップと
をコンピュータシステムに実行させることを特徴とするパスワード変更プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバーが端末にパスワード認証によりアクセスの許可を与えるネットワークシステムにおいて、パスワードを変更する方法、パスワード変更を実現するパスワード認証システム、及び、パスワード変更方法を実行させるプログラムに関する。
【背景技術】
【０００２】
従来、パスワード認証によりサーバーが端末にアクセスの許可を与えるネットワークシステムにおいて、パスワードの流出を防止するために、ユーザーから端末に対するログインの度に、パスワードを自動的に変更する、ワンタイムパスワードシステムが存在する（例えば、特許文献１参照。）。一例として、特許文献１では、ログイン開始時刻をもとにパスワードを算出するアクセス同期方式を採用している。
【０００３】
この方式では、端末側・サーバー側でそれぞれ認識している現在時刻にずれがある場合を考慮している。現在時刻にずれがある場合、サーバー側が生成したパスワードと端末から受信したパスワードとを照合しても、一致せずに端末がログインできない可能性がある。そのため、図１４に示されるように、サーバー２０側では、ログイン開始時刻を単位時間ずつ前後にずらした時刻をもとに正しいパスワードの候補を複数算出する（例えば、テーブル４０参照。）。それぞれの候補（テーブル４０の各パスワード）と端末から受信したパスワード“Ｐ”（テーブル３０のパスワード）を照合して一致するものがあれば端末１０にネットワークへのアクセスの許可を与えるようにしている。
【特許文献１】特開平１１−３１６７４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、端末１０側・サーバー２０側でそれぞれ認識している現在時刻のずれを上記の方法で吸収しようとすると、サーバー２０では端末１０から受信したパスワードと複数のパスワード候補との照合により処理負荷が増大し、その分ログイン完了が遅延することとなる。加えて、現在時刻のずれが大きいと、図１５に示されるように、最悪の場合端末１０で生成されるパスワードがサーバーで生成されるパスワード候補の中に入らず認証失敗となる可能性がある（テーブル４１の破線部分）。
【０００５】
また、パスワードの生成にログイン開始時刻を使用すると、図１６に示されるように、端末１０側・サーバー２０側双方でログイン要求中にパスワード生成の処理負荷が生じることになるので、その分ログイン完了が遅延することとなる（処理５１，５２，６１，６２）。
【０００６】
本発明は上記課題を解決するためになされたもので、特にサーバー側でのパスワード生成、または照合の処理負荷、及び端末側とサーバー側との時刻のずれによる認証失敗の可能性を最小限に抑制する端末やサーバーなどの通信装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述の課題を解決するために、本発明に係る通信装置は、（ａ）他の通信装置と通信する通信装置であって、（ｂ）前記他の通信装置との接続開始時刻および接続終了時刻から、前記他の通信装置との接続時間を計測する接続時間計測手段と、（ｃ）前記他の通信装置と次に接続する際に使用されるパスワードのパラメーターに前記接続時間を用いて、前記パスワードを生成するパスワード生成手段と、（ｄ）前記パスワードを記憶するパスワード記憶手段とを備えることとする。
【０００８】
これによって、パスワードの生成に前回接続時間を使用することで、通信装置間のクロック精度のずれの影響を無くし、さらに、パスワードの生成または照合の処理負荷によるログインの遅延を軽減でき、かつ認証失敗の可能性も低減できる。
【０００９】
例えば、時刻情報をもとにネットワーク認証のパスワードを更新するワンタイムパスワードシステムを本発明に係る通信装置で構成すれば、高い認証成功率を維持しながら、サーバー側の処理負荷を軽減しログインの所要時間を短縮することができる。
【００１０】
なお、本発明は、通信装置におけるパスワード変更機能として実現することができるだけではなく、通信装置におけるパスワード変更方法、そのパスワード変更方法をコンピュータシステムなどに実行させるパスワード変更プログラムとしても実現することができる。また、複数の通信装置から構成される通信システムにおけるパスワード変更機能、その通信システムにおけるパスワード変更方法、そのパスワード変更方法を複数のコンピュータシステムなどに連携させて実行させるパスワード変更プログラム群としても実現することができる。
【発明の効果】
【００１１】
本発明に係る通信装置（端末およびサーバー）、その通信装置を制御するパスワード変更方法、およびそのパスワード変更方法をコンピュータシステムなどに実行させるパスワード変更プログラムによれば、パスワードの生成に前回接続時間を使用し、さらにサーバー側では前回のパスワード照合結果をもとに端末・サーバーそれぞれのクロック精度のずれを補正するので、サーバー側で生成するパスワード候補数を絞り込むことでパスワード生成・照合の処理負荷によるログインの遅延を軽減でき、かつ認証失敗の可能性も低減できる。
【００１２】
また、パスワードの算出は前回のログアウト後に行うので、パスワード算出の処理負荷によるログインの遅延を除去できる。
【００１３】
また、接続中に現在時刻の設定が変更されても接続時間を正しく計測できる。
【００１４】
すなわち、本発明に係る通信装置（端末およびサーバー）、パスワード変更方法、及びパスワード変更プログラムによれば、端末およびサーバーのそれぞれが計測した前回接続時間をもとにパスワードを算出して、端末およびサーバーのそれぞれが認識する現在時刻のずれを吸収しながら、前回のパスワード照合結果をもとに端末およびサーバーのそれぞれのクロック精度のずれを補正することで、サーバー側で生成するパスワード候補数を絞り込むことができる手段を有し、また、ログイン前に予めパスワードを算出させる手段を有することで、高い認証成功率を維持しながら、サーバー側の処理負荷を軽減しログインの所要時間を短縮することができる。
【発明を実施するための最良の形態】
【００１５】
（第１の実施形態）
以下、本発明を実施するための第1の実施形態に係るパスワード変更方法について図面を参照しながら詳細に説明する。
【００１６】
第１の実施形態に係るパスワード変更方法は、端末、サーバーなどのような通信装置から構成されるパスワード変更システムにおいて、他の通信装置との接続開始時刻および接続終了時刻から、他の通信装置との接続時間を計測し、他の通信装置と次に接続する際に使用されるパスワードのパラメーターに、計測した接続時間を用いて、パスワードを生成し、生成したパスワードを記憶することを特徴とする。
【００１７】
ここで、他の通信装置と通信する通信装置は、他の通信装置が端末ならばサーバーであり、サーバーならば端末である。
【００１８】
以上の点を踏まえて第１の実施形態に係るパスワード変更方法について説明する。まず、第１の実施形態に係るパスワード変更システムの構成について説明する。
【００１９】
図１は、第１の実施形態に係るパスワード変更システムの構成を示す図である。
【００２０】
図１に示されるように、第１の実施形態に係るパスワード変更システムは、パスワードを生成しログイン時に送信する端末１１０と、ログイン時に端末が送信してくるパスワードの候補を生成し、ログイン時に端末１１０などから受信したパスワードと照合するサーバー１２０と、などを備える。
【００２１】
ここで、端末１１０は、ログインからログアウトまでの経過時間を計測する接続時間計測部１１１と、接続時間をもとにパスワードを生成するパスワード生成部１１２と、生成されたパスワードをログイン完了時まで保持するパスワード記憶部１１３と、記憶されたパスワードを読み出しサーバーに送信するパスワード送信部１１４と、ログイン開始を検出し接続時間の計測を開始させ、パスワードを生成、及び送信させるログイン検出部１１５と、ログアウト完了を検出し接続時間の計測を停止させるログアウト検出部１１６と、などを備える。
【００２２】
一方、サーバー１２０は、ログインからログアウトまでの経過時間を計測する接続時間計測部１２１と、接続時間をもとにパスワード候補を生成するパスワード候補生成部１２２と、生成されたパスワード候補をログイン完了時まで保持するパスワード候補記憶部１２３と、端末からのパスワードを受信するパスワード受信部１２４と、受信したパスワードとサーバー１２０が生成したパスワード候補とを照合するパスワード照合部１２５と、ログイン開始を検出し接続時間の計測を開始させ、パスワード候補を生成させるログイン検出部１２６と、ログアウト完了を検出し接続時間の計測を停止させるログアウト検出部１２７と、などを備える。
【００２３】
上記構成のパスワード変更方法による認証方法を、下記の通りに説明する。
【００２４】
端末１１０におけるパスワード生成手順、及びサーバー２０におけるパスワード候補生成手順を以下に説明する。
【００２５】
図２に示されるように、端末１１０において、ログイン要求が開始すると（Ｓ１０１：Ｙｅｓ）、ログイン検出部１１５は、接続時間計測部１１１に接続時間の計測開始を指示し（Ｓ１０２）、パスワード生成部１１２にパスワード生成を指示する（Ｓ１０５）。ログアウトが完了し接続が切断されると（Ｓ１０８：Ｙｅｓ）、ログアウト検出部１１６は、接続時間計測部１１１に接続時間の計測停止を指示し（Ｓ１０９）、接続時間計測部１２１は、接続時間の計測を停止する（Ｓ１１０）。ログイン検出部１１５から接続時間の計測開始を指示されたとき、接続時間計測部１１１は、今回の接続時間の計測を開始するとともに（Ｓ１０３）、パスワード生成部１１２に対し、前回計測した接続時間を出力し（Ｓ１０４）、パスワード生成部１１２は、入力された前回接続時間をもとにパスワードを生成し（Ｓ１０６）、パスワード記憶部１１３に記憶させる（Ｓ１０７）。
【００２６】
これに対して、サーバー１２０においても、図２に示される認証処理と同様に、ログイン要求が開始すると（Ｓ１０１：Ｙｅｓ）、ログイン検出部１２６は、接続時間計測部１２１に接続時間の計測開始を指示し（Ｓ１０２）、パスワード候補生成部１２２にパスワード生成を指示する（Ｓ１０５）。ログアウトが完了し接続が切断されると（Ｓ１０８：Ｙｅｓ）、ログアウト検出部１２７は、接続時間計測部１２１に接続時間の計測停止を指示し（Ｓ１０９）、接続時間計測部１２１は、接続時間の計測を停止する（Ｓ１１０）。ログイン検出部１２６から接続時間の計測開始を指示されたとき、接続時間計測部１２１は、今回の接続時間の計測を開始するとともに（Ｓ１０３）、パスワード候補生成部１２２に対し、前回計測した接続時間を出力し（Ｓ１０４）、パスワード候補生成部１２２は、入力された前回接続時間をもとにパスワードを生成し（Ｓ１０６）、パスワード候補記憶部１２３に記憶させる（Ｓ１０７）。
【００２７】
上記の手順に示したように、パスワード生成には前回接続時間を使用することで、端末１１０およびサーバー１２０間の現在時刻のずれが吸収されるので、後述するように、高い認証成功率を維持しながら、パスワード候補生成数の絞込みによってサーバー１２０側のパスワード候補生成・パスワード照合による処理負荷を軽減（即ち、ログイン所要時間の短縮）することが可能となる。
【００２８】
端末１１０、及びサーバー１２０におけるパスワード送受信、及び照合の手順を以下に説明する。
【００２９】
図３（ａ）に示されるように、端末１１０がネットワークにログインするとき（Ｓ１２１：Ｙｅｓ）、ログイン検出部１１５はパスワード送信部１１４に対しサーバー１２０へのパスワード送信を指示する（Ｓ１２２）。パスワード送信部１１４はこのとき、パスワード記憶部１１３から生成されたパスワードを読み出し、通信路を介してサーバー１２０に送信する（Ｓ１２３）。
【００３０】
これに対して、図３（ｂ）に示されるように、サーバー１２０側では、パスワード受信部１２４が通信路を介して端末からパスワードを受信すると（Ｓ１２５）、それをパスワード照合部１２５に通知する（Ｓ１２６）。パスワード照合部１２５はこのとき、パスワード候補記憶部１２３から生成されたパスワード候補を逐次読み出し通知されたパスワードと照合する（Ｓ１２７）。
【００３１】
パスワード照合部１２５はその後、パスワード照合の結果認証に成功したか、または失敗したかの種別をパスワード候補生成部１２２に通知する。パスワード候補生成部１２２はパスワード候補生成数と、その最大値・最小値を記憶しており、パスワード照合部１２５から認証の成功・失敗の種別を通知されるとパスワード候補生成数を変動させる。認証成功を通知された場合、パスワード候補生成数が最小値より大きければ１減少させ、最小値に達していれば現在値を維持する。認証失敗を通知された場合、パスワード候補生成数が最大値より小さければ１増加させ、最大値に達していれば現在値を維持する。
【００３２】
パスワード候補生成数は値が減少すればするほど認証に失敗する可能性が高まるが、パスワード生成には前回接続時間を使用することで、端末１１０とサーバー１２０との間の現在時刻のずれが吸収されているため、パスワード候補生成数の最小値が適切な値に設定されていれば、高い認証成功率を維持しながら、パスワード候補生成数の絞込みによってサーバー１２０側のパスワード候補生成とパスワード照合とによる処理負荷を軽減、すなわち、ログイン所要時間を短縮することが可能となる。
【００３３】
（第２の実施形態）
以下、本発明を実施するための第２の実施形態に係るパスワード変更方法について図面を参照しながら詳細に説明する。
【００３４】
第２の実施形態に係るパスワード変更方法は、第１の実施形態におけるパスワード変更システムに、さらに、他の通信装置と初めて接続する場合には、接続時間をゼロとして、パスワードを生成することを特徴とする。
【００３５】
以上の点を踏まえて第２の実施形態に係るパスワード変更方法について説明する。まず、第２の実施形態に係るパスワード変更システムの構成について説明する。
【００３６】
図４に示されるように、第２の実施形態に係るパスワード変更システムの構成は、第１の実施形態と比べて、パスワード生成部１１２、およびパスワード候補生成部１２２の代わりに、パスワード生成部２１２、およびパスワード候補生成部２２２を備える点が異なる。そして、端末２１０が接続先サーバー２２０に初めて接続するときに、パスワード生成部２１２、およびパスワード候補生成部２２２に以下の手順が追加される。
【００３７】
端末２１０側では、接続しようとしているサーバー２２０と初めて認証する場合、ログイン検出部１１５からパスワード生成部２１２にパスワード生成を指示されると、パスワード生成部２１２は接続時間を０と見なしてパスワードを生成する。サーバー２２０側では、初めて接続してくる端末２１０からログインを要求された場合、ログイン検出部１２６からパスワード候補生成部２２２にパスワード生成を指示されると、パスワード候補生成部２２２は接続時間を０と見なしてパスワード候補を１つ生成する。
【００３８】
上記のような手順により、端末２１０が接続先のサーバー２２０に初めて接続するとき、すなわち、前回接続時間が未計測の場合においても、第１の実施形態と同様の構成でパスワードの生成、及び認証を行うことができる。
【００３９】
（第３の実施形態）
以下、本発明を実施するための第３の実施形態に係るパスワード変更方法について図面を参照しながら詳細に説明する。
【００４０】
第３の実施形態に係るパスワード変更方法は、他の通信装置と接続している途中で、接続時間が変更された場合には、変更前の接続時間および変更後の接続時間を記憶することを特徴とする。
【００４１】
以上の点を踏まえて第３の実施形態に係るパスワード変更方法について説明する。まず、第３の実施形態に係るパスワード変更システムの構成について説明する。
【００４２】
図５に示されるように、第３の実施形態に係るパスワード変更システムの構成は、第１の実施形態と比べて、接続時間計測部１１１、および接続時間計測部１２１の代わりに、接続時間計測部３１１、および接続時間計測部３２１を備える点が異なる。そして、接続時間を求めるときに、接続時間計測部３１１、および接続時間計測部３２１に以下の手順が追加される。
【００４３】
接続時間計測部３１１は、ログイン検出部１１５から接続時間計測開始を指示された時刻と、ログアウト検出部３１６から接続時間計測停止を指示された時刻との差分で接続時間を求める。同様に、接続時間計測部３２１は、ログイン検出部３２６から接続時間計測開始を指示された時刻と、ログアウト検出部３２７から接続時間計測停止を指示された時刻との差分で接続時間を求める。
【００４４】
しかし、そのため、接続中に端末３１０、またはサーバー３２０で現在時刻の設定が変更になると出力される接続時間が狂い、その結果、端末３１０が誤ったパスワードを生成、またはサーバー３２０が誤ったパスワード候補を生成してしまう。
【００４５】
上記のような現象を回避するため、接続時間計測部３１１は、端末３１０で現在時刻の設定が変更されたとき、変更前の設定時刻と変更後の設定時刻の差分を逐次記憶し、ログアウト検出部１１６から接続時間計測停止を指示されたとき、それまでに記憶した設定時刻の差分の合計で接続時間を補正してパスワード生成部１１２に出力する。同様に、接続時間計測部３２１は、サーバー３２０で現在時刻の設定が変更されたとき、変更前の設定時刻と変更後の設定時刻の差分を逐次記憶し、ログアウト検出部３２７から接続時間計測停止を指示されたとき、それまでに記憶した設定時刻の差分の合計で接続時間を補正してパスワード候補生成部３２２に出力する。
【００４６】
上記のような手順により、接続中に端末３１０、またはサーバー３２０で現在時刻の設定が変更されても接続時間を正しく計測することができる。すなわち、現在時刻の設定変更により端末が誤ったパスワードを生成、またはサーバーが誤ったパスワード候補を生成してしまう可能性を回避できる。
【００４７】
（第４の実施形態）
以下、本発明を実施するための第４の実施形態に係るパスワード変更方法について図面を参照しながら詳細に説明する。
【００４８】
第４の実施形態に係るパスワード変更方法は、他の通信装置との接続が終了した後に、パスワードを生成することを特徴とする。
【００４９】
以上の点を踏まえて第４の実施形態に係るパスワード変更方法について説明する。まず、第４の実施形態に係るパスワード変更システムの構成について説明する。
【００５０】
図６は、第４の実施形態に係るパスワード変更システムの構成を示す図である。
【００５１】
図６に示されるように、第４の実施形態に係るパスワード変更システムは、第１の実施形態をもとに構成されており、パスワード生成部１１２、ログイン検出部１１５、ログアウト検出部１１６、パスワード候補生成部１２２、ログイン検出部１２６、ログイン検出部１２７の代わりに、パスワード生成部４１２、ログイン検出部４１５、ログアウト検出部４１６、パスワード候補生成部４２２、ログイン検出部４２６、ログイン検出部４２７を備える点が異なる。そして、接続時間計測部１１１が、パスワード生成部４１２に対して計測した接続時間を出力し、パスワード生成部４１２が、入力された接続時間をもとにパスワードを生成するのが、ログアウトが完了し接続が切断され、ログアウト検出部４１６から指示されたときに実施される。同様に、接続時間計測部１２１が、パスワード候補生成部４２２に対して計測した接続時間を出力し、パスワード候補生成部４２２が、入力された接続時間をもとにパスワードを生成するのが、ログアウトが完了し接続が切断され、ログアウト検出部４２７から指示されたときに実施される。
【００５２】
上記のような手順により、図７に示されるように、端末４１０においては、ログアウト完了時に、ログアウト検出部４１６からパスワード生成部４１２にパスワード生成指示を出し、パスワードを生成する（処理４５１）。そして、ログイン開始時に、ログイン検出部４１５からパスワード生成部４１２にパスワード生成指示を出さずに、ログイン検出部４１５からパスワード送信部１１４にパスワード送信指示を出し、ログアウト完了時に生成したパスワードを送信する（処理４５２）。
【００５３】
これに対して、サーバー４２０においては、ログアウト完了時に、ログアウト検出部４２７からパスワード候補生成部４２２にパスワード候補生成指示を出し、パスワード候補を生成する（処理４６１）。そして、ログイン開始時に端末４１０から送信されたパスワードを受信すると、ログイン検出部４２６からパスワード候補生成部４２２にパスワード候補生成指示を出さずに、ログアウト完了時に生成したパスワード候補と照合する（処理４６２）。結果、ログイン要求中のパスワード生成処理の負荷が削減され、その分ログイン所要時間を短縮できるようになる。
【００５４】
（第５の実施形態）
以下、本発明を実施するための第５の実施形態に係るパスワード変更方法について図面を参照しながら詳細に説明する。
【００５５】
第５の実施形態に係るパスワード変更方法は、前々回接続時間と前回の接続時に使用されたパスワードが生成されるにあたって用いられた時間との差分に、前回接続時間と前々回接続時間との比率を掛けた値で、前回接続時間を補正し、補正した前回接続時間を基にパスワードを生成することを特徴とする。
【００５６】
以上の点を踏まえて第５の実施形態に係るパスワード変更方法について説明する。まず、第５の実施形態に係るパスワード変更システムの構成について説明する。
【００５７】
図８は、第５の実施形態に係るパスワード変更システムの構成を示す図である。
【００５８】
図８に示されるように、第５の実施形態に係るパスワード変更システムは、第１の実施形態と比べて、接続時間計測部１２１、パスワード候補生成部１２２、パスワード照合部１２５の代わりに、接続時間計測部５２１、パスワード候補生成部５２２、パスワード照合部５２５を備える。さらに、新たに接続時間補正値算出部５２８を備える点が異なる。
【００５９】
接続時間補正値算出部２８は、前回のパスワード照合結果をもとに、端末１１０およびサーバー５２０のそれぞれのクロック誤差による接続時間計測結果のずれの補正値を算出する。具体的には、パスワード候補生成部５２２に対し、パスワード候補生成時に、端末１１０およびサーバー５２０のクロック精度のずれによる誤差、すなわち、接続時間計測部１１１、および接続時間計測部５２１それぞれで計測した接続時間の誤差を補正する値を出力する。補正値の算出手順を以下に説明する。
【００６０】
パスワード照合部５２５は、認証完了時に端末１１０とサーバー５２０との間での接続時間の計測誤差を判定し、その値を接続時間補正値算出部５２８に通知する。ここで、図９に示されるように、計測誤差の値“Ｘ”は、サーバー５２０側で計測した前回接続時間“Ｔ-Ｘ”と、端末１１０から受信したパスワード“Ｐ”との照合で一致したパスワード候補“Ｐ”の元となった接続時間“Ｔ”との差分とする。
【００６１】
接続時間補正値算出部５２８は、計測誤差を通知されると、図１０に示されるように、接続時間計測部５２１から取得される過去２回分の接続時間の比率、すなわち、前々回接続時間“Ｔ-Ｘ”（接続時間５５１）および前回接続時間“Ｔ´？Ｚ”（接続時間５５３の計測部分）の比率を計測誤差“Ｘ”と掛けて、パスワード生成に使用する前回接続時間の補正値“Ｖ”を求めてパスワード候補生成部５２２に通知する。パスワード候補生成部２２は、接続時間計測部５２１から通知された前回接続時間“Ｔ´？Ｚ”（時間５５３の計測時間）を、接続時間補正値算出部５２８から通知された補正値“Ｖ”と足した値に置き換えてパスワード候補を生成する。
【００６２】
なお、端末１１０とサーバー５２０がパスワード変更を行うのが初めての場合、前回接続時間計測誤差が未判定のため、ここでは仮に補正値＝０とし、上記の補正値を求める処理は次回以降のパスワード変更時に行う。
【００６３】
上記の手順で端末・サーバー間での接続時間の計測誤差を補正することで、高い認証成功率を維持しながら、パスワード候補生成数をさらに絞り込むことによってサーバー側のパスワード候補生成・パスワード照合による処理負荷を軽減（即ち、ログイン所要時間の短縮）することが可能となる。
【００６４】
（第６の実施形態）
以下、本発明を実施するための第６の実施形態に係るソフトウェアについて図面を参照しながら詳細に説明する。
【００６５】
図１１は、第６の実施形態に係る端末側のソフトウェアの処理を表すフローチャートである。端末１１０は、図には示されてはいないが、図１１のフローチャートに記載の処理が実装されたソフトウェアを格納しているメモリやハードディスクなどの記録媒体、ネットワークアダプタ、およびＣＰＵなどを備える。
【００６６】
図１２は、第６の実施形態に係るサーバー側のソフトウェアの処理を表すフローチャートである。サーバー１２０は、図には示されてはいないが、図１２のフローチャートに記載の処理が実装されたソフトウェアを格納しているメモリ・ハードディスクなどの記録媒体、およびＣＰＵなどを備える。本発明に係るパスワード変更方法は、端末・サーバーそれぞれに備わっているＣＰＵが、記録媒体に格納されたソフトウェアを実行することにより実現される。
【００６７】
端末側の処理を、図１１を参照しながら説明する。
【００６８】
第６の実施形態に係る端末側のソフトウェアは、計測した前回接続時間Ｔ（計測方法は後述する）をもとにパスワードＰを生成し（Ｓ６０２）、ログインの開始を待つ（Ｓ６０３）。ここでＦ（Ｔ）とは、計測した前回接続時間Ｔをもとにパスワード生成するための関数である。
【００６９】
また、接続先のサーバーと初めて認証するときは、前回接続時間Ｔを０と見なして（Ｓ６０１）パスワードを生成する。以上の手順により、端末が接続先サーバーに初めて接続するとき、即ち前回接続時間が未計測の場合においても、第６の実施形態でパスワードの生成、及び認証を行うことができる。
【００７０】
ユーザーからのログインの操作が行われると、パスワードをサーバーに送信する（Ｓ６０４）。認証に失敗した場合（Ｓ６０６：Ｙｅｓ）は、ログイン開始待ち状態（Ｓ６０３）に戻る。
【００７１】
認証に成功すると（Ｓ６０５：Ｙｅｓ）、接続時間Ｔの計測を開始し（Ｓ６０７）ログアウトの完了を待つ（Ｓ６１１）。ログアウトが完了し接続が切断されると（Ｓ６１１：Ｙｅｓ）、接続時間Ｔの計測を停止し（Ｓ６１２）、パスワード生成ステップ（Ｓ６０２）に戻る。
【００７２】
ここで、接続中に端末で現在時刻の設定が変更されたとき（Ｓ６０９：有）、変更前の設定時刻Ｓ２と変更後の設定時刻Ｓ１の差分Ｓを逐次算出し、その度に積算値を変数Ｔ´に格納する（Ｓ６１０）。ログアウト後、接続時間Ｔは、端末の設定時刻の変更前後の差分の積算値Ｔ´で補正される（Ｓ６１３）。
【００７３】
以上の手順により、接続中に端末で現在時刻の設定が変更されても接続時間を正しく計測することができる。即ち、現在時刻の設定変更により端末が誤ったパスワードを生成してしまう可能性を回避できる。
【００７４】
以上の手順でパスワードＰを生成することで、図７に示されるように、ログイン要求中のパスワード生成処理の負荷が削減され、その分ログイン所要時間を短縮できるようになる。また、パスワード生成には前回接続時間Ｔを使用することで、端末・サーバー間の現在時刻のずれが吸収されるので、後述するように、高い認証成功率を維持しながら、パスワード候補生成数の絞込みによってサーバー側のパスワード候補生成・パスワード照合による処理負荷を軽減（即ち、ログイン所要時間の短縮）することが可能となる。
【００７５】
サーバー側の処理を、図１２を参照しながら説明する。
【００７６】
図１２、図１３に示されるように、第６の実施形態に係るサーバー側のソフトウェアは予め、計測した前回接続時間Ｔ（具体的な計測方法は後述する）を計測誤差補正値ｖ（具体的な算出方法は後述する）で補正した時間を中心に単位時間ずつずらした接続時間をもとにパスワード候補を生成してから（Ｓ６２２、Ｓ６２３）、パスワードの受信を待つ（Ｓ６２４）。ここで、Ｆ（）は接続時間をもとにパスワード生成するための関数、Ｐ［］は各パスワード候補を格納するための配列、ｎはパスワード候補の生成個数、ｍは補正した接続時間をもとに生成したパスワードを格納する配列要素の位置を表す。
【００７７】
また、接続してくる端末がサーバーと認証するのが初めての場合は、前回接続時間Ｔを０と見なして（Ｓ６２１）パスワード候補を生成する。以上の手順により、端末が接続先サーバーに初めて接続するとき、即ち前回接続時間が未計測の場合においても、第６の実施形態でパスワードの生成、及び認証を行うことができる。加えて、本ステップでは、ｎは１に（即ち、パスワード候補は複数生成しない）、ｖは０に（前回接続時間が未計測のため）初期化する。
【００７８】
パスワードを受信して（Ｓ６２４：Ｙｅｓ）、照合の結果（パスワード照合の手順は後述する）認証に成功すると（Ｓ６２６：Ｙｅｓ）、接続時間Ｔの計測を開始し（Ｓ６３４）ログアウトの完了を待つ（Ｓ６３８）。ログアウトが完了し接続が切断されると（Ｓ６３８：Ｙｅｓ）、接続時間の計測を停止し（Ｓ６３９）、端末側・サーバー側の接続時間計測誤差の補正値ｖを求めて（Ｓ６４１〜Ｓ６４４。具体的な算出方法は後述する）パスワード候補生成のステップに戻る（Ｓ６２２、Ｓ６２３）。
【００７９】
ここで、接続中にサーバーで現在時刻の設定が変更されたとき（Ｓ６３６：有）、変更前の設定時刻Ｓ２と変更後の設定時刻Ｓ１の差分Ｓを逐次算出し、その度に積算値を変数Ｔ´に格納する（Ｓ６３７）。ログアウト後、接続時間Ｔは、端末の設定時刻の変更前後の差分の積算値Ｔ´で補正される（Ｓ６４０）。
【００８０】
以上の手順により、接続中にサーバーで現在時刻の設定が変更されても接続時間を正しく計測することができる。即ち、現在時刻の設定変更によりサーバーが誤ったパスワードを生成してしまう可能性を回避できる。
【００８１】
以上の手順で端末からログイン要求前に予めパスワード候補を生成することで、図７に示すように、ログイン要求中のパスワード候補生成処理の負荷が削減され、その分ログイン所要時間を短縮できるようになる。また、パスワード候補生成には前回接続時間Ｔを使用することで、端末・サーバー間の現在時刻のずれが吸収されるので、後述するように、高い認証成功率を維持しながら、パスワード候補生成数ｎの絞込みによってサーバー側のパスワード候補生成・パスワード照合による処理負荷を軽減（即ち、ログイン所要時間の短縮）することが可能となる。
【００８２】
前述した端末側・サーバー側の接続時間計測誤差の補正値ｖは以下のように求める。先ず、前回接続時間Ｔ１と前々回接続時間Ｔ２の比率ｋを求め（Ｓ６４３）、図１０に示されるように、端末側・サーバー側の間の前回接続時間計測誤差を判定しｋを掛けて補正値ｖとする（Ｓ６４４）。計測誤差の値は、図９に示されるように、サーバー側で計測した前回接続時間と、端末から受信したパスワードとの照合で一致したパスワード候補の元となった接続時間との差分とする。即ち、ステップＳ６２３にて、サーバー側で計測した前回接続時間Ｔをもとに算出したパスワード候補が格納された配列要素位置であるｌと、照合で一致したパスワード候補が格納された配列要素位置であるｃｎｔとの差分が計測誤差となる（照合の具体的な手順については後述する）。
【００８３】
なお、当該端末との間でパスワード変更を行うのが初めての場合（Ｓ６４１：1回目）、ステップＳ６２６〜Ｓ６２８では単一の初期パスワードの照合しか行っておらず、即ち前回接続時間計測誤差が未判定のため、ここではｖの値は求めず（Ｓ６２１で０に初期化されたまま）とし、ｖを求める処理は次回以降（Ｓ６４１：２回目以降）のパスワード変更時に行う。
【００８４】
上記の手順で端末・サーバー間での接続時間の計測誤差の補正値ｖを求め、サーバーで計測した接続時間Ｔを補正することで、後述するように、高い認証成功率を維持しながら、パスワード候補生成数ｎの絞込みによってサーバー側のパスワード候補生成・パスワード照合による処理負荷を軽減（即ち、ログイン所要時間の短縮）することが可能となる。
【００８５】
パスワード照合の手順を、以下に具体的に説明する。パスワードを受信すると（Ｓ６２４：Ｙｅｓ）、受信したパスワードＰをＰ［］に格納されたパスワード候補と順番に照合する（Ｓ６２６〜Ｓ６２８）。ここで、ｃｎｔは照合するパスワード候補が格納された配列要素の位置を示すカウンタである。照合の結果、一致するパスワード候補が見つかった場合（ＳＴ６２６：Ｙｅｓ）、パスワード候補生成数ｎが最小値ＮＭＩＮより大きければ（Ｓ６３１：Ｙｅｓ）１減少させ（Ｓ６３２）、小さければＮＭＩＮに設定して（Ｓ６３３）接続時間計測を開始する（Ｓ６３４）。照合の結果、一致するパスワード候補が見つからなかった場合（Ｓ６２８：Ｙｅｓ）、パスワード候補生成数ｎが最大値ＮＭＡＸより小さければ（Ｓ６２９：Ｙｅｓ）１増加させ（Ｓ６３０）、パスワード候補を生成し直して（Ｓ６０２、Ｓ６０３に戻る）端末が再度ログインしてくるのを待つ（Ｓ６２４）。
【００８６】
パスワード候補生成数ｎは値が減少すればするほど認証に失敗する可能性が高まるが、パスワード生成には前回接続時間Ｔを使用することで端末・サーバー間の現在時刻のずれが吸収されていることと、端末・サーバー間のクロックのずれによる接続時間の計測誤差がｖで補正されているため、パスワード候補生成数ｎの最小値ＮＭＩＮが適切な値に設定されていれば、高い認証成功率を維持しながら、パスワード候補生成数ｎの絞込みによってサーバー側のパスワード候補生成・パスワード照合による処理負荷を軽減（即ち、ログイン所要時間の短縮）することが可能となる。
【００８７】
なお、第１の実施形態〜第５の実施形態に係るパスワード変更方法は、接続時間を単位時間ずつずらした複数の時間毎に、パスワードを生成し、生成した複数のパスワードを記憶することとしてもよい。
【００８８】
なお、第１の実施形態〜第５の実施形態に係るパスワード変更システムを構成する通信装置（端末またはサーバー）は、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＨＤＤ（Hard Disk Drive）、ネットワークアダプタなどを備える。さらに、ＨＤＤには、ＯＳ（Operating System）とＯＳの稼動下で実行されるプログラムがインストールされている。そして、プログラムが実行されることによって、パスワード変更システムを構成する通信装置（端末またはサーバー）としての各機能が実現されるとしてもよい。
【００８９】
なお、第１の実施形態〜第５の実施形態に係るパスワード変更システムを構成する通信装置（端末またはサーバー）において実行されて本発明に係る１以上の機能が実現されるプログラム（以下、パスワード変更プログラムと呼称する。）を、コンピュータシステム、組み込みシステムなどのようなハードウェアシステムに読み出され得るように、光学記録媒体（例えば、ＣＤ-ＲＯＭなど。）、磁気記録媒体（例えば、ハードディスクなど。）、光磁気記録媒体（例えば、ＭＯなど。）、半導体メモリ（例えば、メモリカードなど。）などのようなコンピュータ読み取り可能な記録媒体に記録しておくとしてもよい。そして、これ等の記録媒体を介して、他のハードウェアシステムにおいて実行されるとしてもよい。また、ネットワーク上のハードウェアシステムにパスワード変更プログラムを保持しておき、ネットワークを介してパスワード変更プログラムをダウンロードした他のハードウェアシステムにおいて実行されるとしてもよい。
【産業上の利用可能性】
【００９０】
本発明に係るパスワード変更方法、装置、及びソフトウェアは、端末・サーバーそれぞれの現在時刻、及びクロック精度のずれを補正する手段を有し、サーバー側で生成するパスワード候補数を絞り込むことでパスワード生成・照合の処理負荷を軽減でき、かつ認証失敗の可能性も低減できる。また、パスワードの算出はログイン前に予め行うので、パスワード算出の処理負荷によるログインの所要時間を短縮できる。従って、時刻情報を用いたワンタイムパスワードシステムにおいて、ログイン認証を高速に、かつ高い成功率で行うために有効である。また、本発明に係るパスワード変更方法、装置、及びソフトウェアは、金融機関のＡＴＭ等における暗証番号管理等の用途にも応用できる。
【図面の簡単な説明】
【００９１】
【図１】本発明を実施するための第１の実施形態に係るパスワード変更システムの構成を示す図である。
【図２】本発明を実施するための第１の実施形態に係るパスワード変更システムにおいて、端末側のパスワード生成手順、サーバー側のパスワード候補生成手順を示す図である。
【図３】本発明を実施するための第１の実施形態に係るパスワード変更システムにおいて、（ａ）端末側のパスワードの送受信の手順、（ｂ）サーバー側のパスワードの照合の手順を示す図である。
【図４】本発明を実施するための第２の実施形態に係るパスワード変更システムの構成を示す図である。
【図５】本発明を実施するための第３の実施形態に係るパスワード変更システムの構成を示す図である。
【図６】本発明を実施するための第４の実施形態に係るパスワード変更システムの構成を示す図である。
【図７】本発明を実施するための第４の実施形態に係るパスワード変更方法によりログイン中の処理負荷が軽減され、ログイン所要時間が短縮されることを説明するための図である。
【図８】本発明を実施するための第５の実施形態に係るパスワード変更システムの構成を示す図である。
【図９】本発明を実施するための第５の実施形態に係るパスワード変更方法における、端末側・サーバー側との接続時間計測誤差を求める手順を説明するための図である。
【図１０】本発明を実施するための第５の実施形態に係るパスワード変更方法における、端末側・サーバー側との接続時間計測誤差の補正値を求める手順を説明するための図である。
【図１１】本発明を実施するための第６の実施形態に係るソフトウェアにおける端末側の処理を表すフローチャートである。
【図１２】本発明を実施するための第６の実施形態に係るソフトウェアにおけるサーバー側の処理を表す第１のフローチャートである。
【図１３】本発明を実施するための第６の実施形態に係るソフトウェアにおけるサーバー側の処理を表す第２のフローチャートである。
【図１４】従来の、ログイン開始時刻をもとにしたパスワード自動更新方法を説明するための図である。
【図１５】従来の、ログイン開始時刻をもとにしたパスワード自動更新方法で、認証に失敗する場合を説明するための図である。
【図１６】従来のパスワード変更方法でかかる処理負荷によるログイン遅延を説明するための図である。
【符号の説明】
【００９２】
１０，１１０，２１０，３１０，４１０  端末
１１１，３１１  接続時間計測部
１１２，２１２，４１２  パスワード生成部
１１３  パスワード記憶部
１１４  パスワード送信部
１１５，４１５  ログイン検出部
１１６，４１６  ログアウト検出部
２０，１２０，２２０，３２０，４２０，５２０  サーバー
１２１，３２１，５２１  接続時間計測部
１２２，２２２，４２２，５２２  パスワード候補生成部
１２３  パスワード候補記憶部
１２４  パスワード受信部
１２５，５２５  パスワード照合部
１２６，４２６  ログイン検出部
１２７，４２７  ログアウト検出部
５２８  接続時間補正値算出部
【図１】
2007018140.tif 000003
【図２】
2007018140.tif 000004
【図３】
2007018140.tif 000005
【図４】
2007018140.tif 000006
【図５】
2007018140.tif 000007
【図６】
2007018140.tif 000008
【図７】
2007018140.tif 000009
【図８】
2007018140.tif 000010
【図９】
2007018140.tif 000011
【図１０】
2007018140.tif 000012
【図１１】
2007018140.tif 000013
【図１２】
2007018140.tif 000014
【図１３】
2007018140.tif 000015
【図１４】
2007018140.tif 000016
【図１５】
2007018140.tif 000017
【図１６】
2007018140.tif 000018