(57)【要約】【課題】パスワードの使い回しを検知し、パスワードの使い回しの防止を促進する。【解決手段】本発明に係る登録サーバ２００は、パスワードの入力時のキー入力の特徴を示す第１のキーストローク情報と、パスワード以外の入力時のキー入力の特徴を示す第２のキーストローク情報とを取得するキーストローク情報取得部２２０と、キーストローク情報取得部２２０により取得された第１のキーストローク情報と第２のキーストローク情報とに基づき、入力されたパスワードの使い回しを検知する判定部２６０と、を備える。【選択図】図４
2017191411.tif 000002
【特許請求の範囲】
【請求項１】
ユーザによりキー入力されたパスワードの使い回しを検知する判定装置であって、
前記パスワードの入力時のキー入力の特徴を示す第１のキーストローク情報と、前記パスワード以外の入力時のキー入力の特徴を示す第２のキーストローク情報とを取得するキーストローク情報取得部と、
前記キーストローク情報取得部により取得された第１のキーストローク情報と第２のキーストローク情報とに基づき、前記入力されたパスワードの使い回しを検知する判定部と、
を備えることを特徴とする判定装置。
【請求項２】
請求項１に記載の判定装置において、
前記キーストローク情報は、前記ユーザによるキー入力の入力速度を示し、
前記判定部は、前記第１のキーストローク情報が示す前記パスワードの入力時の入力速度が、前記第２のキーストローク情報が示す前記パスワード以外の入力時の入力速度以上である場合には、前記パスワードが使い回しされていると判定することを特徴とする判定装置。
【請求項３】
請求項１に記載の判定装置において、
前記キーストローク情報は、前記ユーザによるキー入力の誤打率を示し、
前記判定部は、前記第１のキーストローク情報が示す前記パスワードの入力時の誤打率が、前記第２のキーストローク情報が示す前記パスワード以外の入力時の誤打率以下である場合には、前記パスワードが使い回しされていると判定することを特徴とする判定装置。
【請求項４】
請求項１から３のいずれか一項に記載の判定装置において、
所定の単語を記憶する単語辞書記憶部と、
入力されたパスワードが登録されるパスワード登録部と、をさらに備え、
前記判定部は、前記入力されたパスワードが使い回しされたものでないと判定し、かつ、前記入力されたパスワードが前記単語辞書記憶部に記憶されていない場合には、前記入力されたパスワードを前記パスワード登録部に登録することを特徴とする判定装置。
【請求項５】
ユーザによりパスワードのキー入力が行われるクライアント端末と、前記パスワードの使い回しを検知する判定装置とを備え、
前記クライアント端末は、
前記ユーザによるキー入力の特徴を示すキーストローク情報を生成するキーストローク情報処理部を備え、
前記判定装置は、
前記クライアント端末から、前記パスワードの入力時のキー入力の特徴を示す第１のキーストローク情報と、前記パスワード以外の入力時のキー入力の特徴を示す第２のキーストローク情報とを取得するキーストローク情報取得部と、
前記キーストローク情報取得部により取得された第１のキーストローク情報と第２のキーストローク情報とに基づき、前記入力されたパスワードの使い回しを検知する判定部と、
を備えることを特徴とする判定システム。
【請求項６】
ユーザによりキー入力されたパスワードの使い回しを検知する判定方法であって、
キーストローク情報取得部が、前記パスワードの入力時のキー入力の特徴を示す第１のキーストローク情報と、前記パスワード以外の入力時のキー入力の特徴を示す第２のキーストローク情報とを取得するステップと、
判定部が、前記取得された第１のキーストローク情報と第２のキーストローク情報とに基づき、前記入力されたパスワードの使い回しを検知するステップと、
を含むことを特徴とする判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザによりキー入力されたパスワードの使い回しを検知する判定装置、判定システムおよび判定方法に関する。
【背景技術】
【０００２】
近年、様々なＷｅｂサービスが提供されている。このようなＷｅｂサービスでは、ユーザにより登録されたユーザＩＤおよびパスワードを用いて各ユーザを特定し、サービスを提供するのが一般的である。ユーザは、複数のＷｅｂサービスを利用する場合に、複数のＷｅｂサービスそれぞれに対して異なるパスワードを設定すると、管理が煩雑となり、また、失念のおそれがあるため、複数のＷｅｂサービスに対して同じパスワードを設定する、すなわち、パスワードを使い回してしまう傾向がある。
【０００３】
このような傾向を狙った攻撃として、情報流出などしたユーザＩＤやパスワードのリストを用いてＷｅｂサービスへの不正ログインを試みるパスワードリスト攻撃がある。パスワードリスト攻撃では、パスワードが使い回しされている場合、そのパスワードを用いて１つのＷｅｂサービスに不正ログインされると、同じパスワードを登録している別のＷｅｂサービスにも不正ログインされてしまう。
【０００４】
そこで、非特許文献１には、パスワードが使い回しされている場合にも、情報漏洩のリスクを低減するアカウント管理方法が開示されている。
【０００５】
また、非特許文献２には、ユーザが複数のパスワードを管理することなく、パスワードの使い回しを防止するためのアプリケーションが開示されている。このアプリケーションでは、ユーザは、自身が設定したマスターパスワードを用いてアプリケーションにログインし、その後、Ｗｅｂサービスにアクセスする。アプリケーションは、Ｗｅｂサービスへのアクセスに対して自動的にランダムなパスワードを生成してログインするとともに、そのパスワードを記憶しておき、同じＷｅｂサービスへのアクセスには記憶しているパスワードを用いる。こうすることで、ユーザは、マスターパスワードさえ記憶しておけば、各Ｗｅｂサービスに対するパスワードを記憶しておく必要は無い。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】大谷和也，柿崎淑郎，佐々木良一，“情報漏えいリスクを低減するアカウント管理手法”，情報処理学会研究報告，２０１５．
【非特許文献２】「ＬａｓｔＰａｓｓ  Ｐａｓｓｗｏｒｄ  Ｍａｎａｇｅｒ」、[online]、［平成２８年４月４日検索］、インターネット＜ＵＲＬ：https://play.google.com/store/apps/details?id=com.lastpass.lpandroid&hl=ja＞
【発明の概要】
【発明が解決しようとする課題】
【０００７】
非特許文献１に開示されている方法は、パスワードの使い回しを前提として、情報漏洩のリスクの低減を図るものであり、パスワードの使い回しを防止することはできない。
【０００８】
また、非特許文献２に開示されているアプリケーションでは、アプリケーションのクライアント端末へのインストール、インストールしたアプリケーションの起動などの操作をユーザが行う必要があり、このような操作を行わないユーザ、あるいは、このような操作を行うことが困難なユーザによるパスワードの使い回しを防止することはできない。
【０００９】
特に、ユーザＩＤやパスワードを共有する認証連携がされていないＷｅｂサービス間では、ユーザによるパスワードの使い回しを検知し、防止することはできない。
【００１０】
上記のような問題点に鑑みてなされた本発明の目的は、パスワードの使い回しを検知し、パスワードの使い回しの防止を促進することができる判定装置、判定システムおよび判定方法を提供することにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明に係る判定装置は、ユーザによりキー入力されたパスワードの使い回しを検知する判定装置であって、前記パスワードの入力時のキー入力の特徴を示す第１のキーストローク情報と、前記パスワード以外の入力時のキー入力の特徴を示す第２のキーストローク情報とを取得するキーストローク情報取得部と、前記キーストローク情報取得部により取得された第１のキーストローク情報と第２のキーストローク情報とに基づき、前記入力されたパスワードの使い回しを検知する判定部と、を備える。
【００１２】
また、上記課題を解決するため、本発明に係る判定システムは、ユーザによりパスワードのキー入力が行われるクライアント端末と、前記パスワードの使い回しを検知する判定装置とを備え、前記クライアント端末は、前記ユーザによるキー入力の特徴を示すキーストローク情報を生成するキーストローク情報処理部を備え、前記判定装置は、前記クライアント端末から、前記パスワードの入力時のキー入力の特徴を示す第１のキーストローク情報と、前記パスワード以外の入力時のキー入力の特徴を示す第２のキーストローク情報とを取得するキーストローク情報取得部と、前記キーストローク情報取得部により取得された第１のキーストローク情報と第２のキーストローク情報とに基づき、前記入力されたパスワードの使い回しを検知する判定部と、を備える。
【００１３】
また、上記課題を解決するため、本発明に係る判定方法は、ユーザによりキー入力されたパスワードの使い回しを検知する判定方法であって、キーストローク情報取得部が、前記パスワードの入力時のキー入力の特徴を示す第１のキーストローク情報と、前記パスワード以外の入力時のキー入力の特徴を示す第２のキーストローク情報とを取得するステップと、判定部が、前記取得された第１のキーストローク情報と第２のキーストローク情報とに基づき、前記入力されたパスワードの使い回しを検知するステップと、を含む。
【発明の効果】
【００１４】
本発明に係る判定装置、判定システムおよび判定方法によれば、パスワードの使い回しを検知し、パスワードの使い回しの防止を促進することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態に係る判定システムの構成例を示す図である。
【図２】図１に示すクライアント端末の要部構成を示す図である。
【図３】図２に示すキーストローク情報処理部の構成例を示す図である。
【図４】図１に示す登録サーバの要部構成を示す図である。
【図５】図２に示すキーストローク情報処理部によるキーストローク情報の生成について説明するための図である。
【図６】図４に示す登録サーバの動作例を示すフローチャートである。
【図７】図２に示すキーストローク情報処理部の他の構成例を示す図である。
【図８】図７に示すキーストローク情報処理部によるキーストローク情報の生成について説明するための図である。
【発明を実施するための形態】
【００１６】
以下、本発明を実施するための形態について、図面を参照しながら説明する。なお、本発明は、以下の実施の形態のみに限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々の変更が可能であることはもちろんである。
【００１７】
図１は、本発明の一実施形態に係る判定システム１０の構成例を示す図である。
【００１８】
図１に示す判定システム１０は、クライアント端末１００と、クライアント端末１００とネットワーク３００を介して通信可能な登録サーバ２００（判定装置）とを備える。
【００１９】
クライアント端末１００は、ユーザにより操作されるパーソナルコンピュータなどの端末であり、Ｗｅｂサービスへの初回登録時などに、パスワードの登録要求をユーザに行う。クライアント端末１００は、複数のキーからなる入力装置（例えば、キーボード）を備えており、キーを用いた入力（キー入力）によりパスワードなどが入力される。
【００２０】
登録サーバ２００は、ユーザにより入力されたパスワードを、ネットワーク３００を介して取得し、そのパスワードの登録を許可するか否かを判定する。登録サーバ２００は、入力されたパスワードの登録を許可すると判定すると、そのパスワードを記憶する。
【００２１】
次に、クライアント端末１００および登録サーバ２００の構成について説明する。まず、クライアント端末１００の構成について説明する。
【００２２】
図２は、クライアント端末１００の要部構成を示すブロック図である。
【００２３】
図２に示すクライアント端末１００は、受信部１１０と、キーストローク情報処理部１２０と、キーストローク情報送信部１３０とを備える。なお、クライアント端末１００は、操作入力を行うための入力装置（例えば、キーボード）、ユーザへの通知を行うための通知部（表示部、音声出力部など）を備えているが、図２においては記載を省略している。
【００２４】
受信部１１０は、登録サーバ２００から送信されてきた、ユーザのキー入力の特徴を示すキーストローク情報の送信要求を受信し、キーストローク情報の送信要求を受信した旨をキーストローク情報処理部１２０に通知する。
【００２５】
キーストローク情報処理部１２０は、キーストローク情報の送信要求を受信した旨が受信部１１０から通知されると、キーストローク情報を生成し、キーストローク情報送信部１３０に出力する。本実施形態においては、キーストローク情報処理部１２０は、キー入力の入力速度を示すキーストローク情報を生成する。
【００２６】
図３は、キーストローク情報処理部１２０の構成例を示すブロック図である。
【００２７】
図３に示すキーストローク情報処理部１２０は、キーアップ／ダウン検出部１２１と、時刻取得部１２２と、キーアップ−ダウン時間／キーダウン−アップ時間計算部１２３と、キーアップ−ダウン時間平均／キーダウン−アップ時間平均計算部１２４とを備える。
【００２８】
キーアップ／ダウン検出部１２１は、キーの押下げ（キーダウン）と押下げの解除（キーアップ）とを検出し、検出結果を時刻取得部１２２とキーアップ−ダウン時間／キーダウン−アップ時間計算部１２３とに出力する。
【００２９】
時刻取得部１２２は、キーアップ／ダウン検出部１２１によりキーの押下げおよび押下げの解除が検出された時刻を取得し、キーアップ−ダウン時間／キーダウン−アップ時間計算部１２３に出力する。
【００３０】
キーアップ−ダウン時間／キーダウン−アップ時間計算部１２３は、キーアップ／ダウン検出部１２１によるキーの押下げおよび押下げの解除の検出結果と、時刻取得部１２２により取得されたキーの押下げおよび押下げの解除の時刻とに基づき、キーの押下げが解除されてから次のキーの押下げまでの時間（キーアップ−ダウン時間）およびキーの押下げから押下げの解除までの時間（キーダウン−アップ時間）を計算する。そして、キーアップ−ダウン時間／キーダウン−アップ時間計算部１２３は、計算結果をキーアップ−ダウン時間平均／キーダウン−アップ時間平均計算部１２４に出力する。
【００３１】
キーアップ−ダウン時間平均／キーダウン−アップ時間平均計算部１２４は、キーアップ−ダウン時間／キーダウン−アップ時間計算部１２３の計算結果に基づき、キーアップ−ダウン時間の平均（キーアップ−ダウン時間平均）およびキーダウン−アップ時間の平均（キーダウン−アップ時間平均）を計算し、計算結果をキーストローク情報としてキーストローク情報送信部１３０に出力する。
【００３２】
図２を再び参照すると、キーストローク情報送信部１３０は、キーストローク情報処理部１２０から出力されたキーストローク情報を、ネットワーク３００を介して登録サーバ２００に送信する。
【００３３】
上述したクライアント端末１００の各機能ブロックは、例えば、専用のソフトウェア、ブラウザのプラグインなどを用いて実装することができるが、これらに限られるものではない。
【００３４】
次に、登録サーバ２００の構成について説明する。図４は、登録サーバ２００の要部構成を示すブロック図である。
【００３５】
図４に示す登録サーバ２００は、キーストローク情報要求部２１０と、キーストローク情報取得部２２０と、キーストローク情報記憶部２３０と、パスワード取得部２４０と、単語辞書記憶部２５０と、判定部２６０と、パスワード登録部２７０と、パスワード登録拒否要求部２８０とを備える。
【００３６】
キーストローク情報要求部２１０は、キーストローク情報の送信要求をクライアント端末１００に送信する。
【００３７】
キーストローク情報取得部２２０は、キーストローク情報の送信要求に応じてクライアント端末１００から送信されてきたキーストローク情報を取得（受信）し、キーストローク情報記憶部２３０あるいは判定部２６０に出力する。
【００３８】
キーストローク情報記憶部２３０は、キーストローク情報取得部２２０から出力されたキーストローク情報を記憶する。
【００３９】
パスワード取得部２４０は、クライアント端末１００から送信されてきたパスワード（あるいはそのハッシュ値）を取得（受信）し、判定部２６０に出力する。
【００４０】
単語辞書記憶部２５０は、辞書に掲載されている所定の単語を記憶する。なお、単語辞書記憶部２５０は、単語のハッシュ値を記憶してもよい。
【００４１】
判定部２６０は、キーストローク情報取得部２２０が取得したキーストローク情報に基づき、パスワード取得部２４０が取得したパスワードの登録を許可するか否かを判定する。また、判定部２６０は、単語辞書記憶部２５０を参照し、パスワード取得部２４０が取得したパスワードの登録を許可するか否かを判定する。そして、これらの判定の結果、パスワードの登録を許可すると判定した場合には、判定部２６０は、そのパスワードをパスワード登録部２７０に記憶させる。一方、パスワードの登録を許可しないと判定した場合には、判定部２６０は、パスワードの登録を拒否する旨を示す登録拒否通知を、パスワード登録拒否要求部２８０にクライアント端末１００へ送信させる。
【００４２】
パスワード登録部２７０は、判定部２６０により登録が許可されたパスワードを記憶する。
【００４３】
パスワード登録拒否要求部２８０は、判定部２６０によりパスワードの登録を許可しないと判定されると、登録拒否通知をクライアント端末１００に送信する。パスワード登録拒否要求部２８０は、判定部２６０の判定結果に基づき、入力されたパスワードが辞書に掲載されている単語であるため、登録を拒否する旨を示す登録拒否通知、あるいは、入力されたパスワードが使い回されている可能性が有るため、登録を拒否する旨を示す登録拒否通知をクライアント端末１００に送信する。
【００４４】
なお、一般に、クライアント端末１００は、パスワードの登録の際に、ユーザ情報やパスワードなどの情報の入力の受け付け、入力されたパスワードのハッシュ値の生成、入力された情報の登録サーバ２００への送信などを行う機能を備える。また、登録サーバ２００は、クライアント端末１００からの情報の受信、受信した情報の登録などを行う機能を備える。本発明は、これらの機能に付加する形で組み込まれる。
【００４５】
次に、本実施形態に係る判定システム１０の動作について説明する。
【００４６】
まず、クライアント端末１００によるキーストローク情報の生成について、図５を参照して説明する。
【００４７】
図５に示すように、ｎ（ｎは自然数）番目のキー２１が押下され、その押下が解除されたのち、ｎ＋１番目のキー２２が押下されたとする。キーアップ／ダウン検出部１２１は、各キーの押下および押下の解除を検出する。時刻取得部１２２は、キーの押下および押下の解除が検出された時刻を取得する。
【００４８】
キーアップダウン時間／キーダウン−アップ時間計算部１２３は、キーの押下および押下の解除の検出結果およびキーの押下および押下の解除の時刻に基づき、ｎ番目のキー２１が押下されてから押下が解除される時間ＤＵn（キーダウン−アップ時間）と、ｎ番目のキーの押下が解除されてからｎ＋１番目のキーが押下されるまでの時間をＵＤn+1（キーアップ−ダウン時間）とを計算する。
【００４９】
キーアップダウン時間平均／キーダウン−アップ時間平均計算部１２４は、ＤＵnの平均時間μ＿ＤＵ（キーダウン−アップ時間平均）と、ＵＤn+1の平均時間μ＿ＵＤ（キーアップ−ダウン時間平均）とを計算し、計算した平均時間μ＿ＤＵ，μ＿ＵＤをキーストローク情報として登録サーバ２００に送信する。なお、キーアップダウン時間平均／キーダウン−アップ時間平均計算部１２４は、入力された文字列の長さをカウントしておき、一連の文字列が入力された中での平均時間μ＿ＤＵ，μ＿ＵＤを計算する。
【００５０】
次に、登録サーバ２００の動作について、図６に示すフローチャートを参照して説明する。なお、以下では、Ｗｅｂサービスへの初回登録時を例として説明する。
【００５１】
キーストローク情報要求部２１０は、パスワード以外の入力時に、キーストローク情報の送信要求をクライアント端末１００に送信する。キーストローク情報の送信要求に応じて、クライアント端末１００からパスワード以外の入力時のキーストローク情報（第２のキーストローク情報）が送信されてくると、キーストローク情報取得部２２０は、そのキーストローク情報を取得し（ステップＳ１１）、キーストローク情報記憶部２３０に記憶させる。
【００５２】
パスワード以外の入力時のキーストローク情報を取得する方法としては、Ｗｅｂサービスへの登録フォームにおいて、ユーザＩＤやパスワードの入力フォームよりも前に、ユーザの属性（名前、住所など）の入力フォームを設け、その入力フォームへの入力時に、キーストローク情報を取得する方法がある。また、別の方法として、ユーザＩＤやパスワードの入力フォームよりも前に、任意の単語や文字列をランダムに提示して入力させる入力フォームを設け、その入力フォームへの入力時にキーストローク情報を取得する方法がある。
【００５３】
キーストローク情報要求部２１０は、パスワードの入力時にも、キーストローク情報の送信要求をクライアント端末１００に送信する。キーストローク情報の送信要求に応じて、クライアント端末１００からパスワードの入力時のキーストローク情報（第１のキーストローク情報）が送信されてくると、キーストローク情報取得部２２０は、そのキーストローク情報を取得し（ステップＳ１２）、判定部２６０に出力する。また、パスワード取得部２４０は、ユーザにより入力されたパスワードがクライアント端末１００から送信されてくると、そのパスワードを取得し、判定部２６０に出力する。
【００５４】
判定部２６０は、クライアント端末１００から取得したパスワードが、単語辞書記憶部２５０に記憶されているか否かを判定する（ステップＳ１３）。
【００５５】
取得したパスワードが単語辞書記憶部２５０に記憶されていると判定した場合には（ステップＳ１３：Ｙｅｓ）、判定部２６０は、登録拒否通知をパスワード登録拒否要求部２８０にクライアント端末１００へ送信させる（ステップＳ１４）。この場合、判定部２６０は、入力されたパスワードが辞書に掲載されている単語であるため、登録を拒否する旨を示す登録拒否通知をパスワード登録拒否要求部２８０に送信させる。
【００５６】
辞書に掲載されている単語と一致するパスワードは、辞書に掲載される単語を組み合わせて不正ログインを試みる辞書攻撃に対して脆弱である。そのため、入力されたパスワードが単語辞書記憶部２５０に記憶されている場合には、そのパスワードの登録を拒否することで、安全性の向上を図ることができる。
【００５７】
取得したパスワードが単語辞書記憶部２５０に記憶されていないと判定した場合には（ステップＳ１３：Ｎｏ）、判定部２６０は、パスワードの入力時のキーストローク情報（第１のキーストローク情報）と、キーストローク情報記憶部２３０に記憶されている、パスワード以外の入力時のキーストローク情報とを比較する。具体的には、判定部２６０は、第１のキーストローク情報が示すパスワードの入力時の入力速度が、第２のキーストローク情報が示すパスワード以外の入力時の入力速度以上であるか否かを判定する（ステップＳ１５）。
【００５８】
パスワードの入力時の入力速度が、パスワード以外の入力時の入力速度以上であると判定した場合には（ステップＳ１５：Ｙｅｓ）、判定部２６０は、登録拒否通知をパスワード登録拒否要求部２８０にクライアント端末１００へ送信させる（ステップＳ１４）。この場合、判定部２６０は、入力されたパスワードが使い回されている可能性が有るため、登録を拒否する旨を示す登録拒否通知をパスワード登録拒否要求部２８０に送信させる。
【００５９】
パスワードの入力時の入力速度が、パスワード以外の入力時の入力速度以上である場合、ユーザは、そのパスワードのキー入力に慣れている、すなわち、そのパスワードを使い回している可能性が高い。そこで、パスワードの入力時の入力速度が、パスワード以外の入力時の入力速度以上である場合、そのパスワードの登録を拒否することで、パスワードの使い回しの防止を促進することができる。
【００６０】
パスワードの入力時の入力速度が、パスワード以外の入力時の入力速度以上でないと判定した場合には（ステップＳ１５：Ｎｏ）、判定部２６０は、入力されたパスワードをパスワード登録部２７０に登録する（ステップＳ１６）。すなわち、判定部２６０は、入力されたパスワードが単語辞書記憶部２５０に記憶されておらず、かつ、パスワードの入力時の入力速度がパスワード以外の入力時の入力速度以上でない（パスワードの入力に慣れていない）場合には、入力されたパスワードを安全なパスワードであると判定し、パスワード登録部２７０に登録する。したがって、「安全なパスワード」とは、「辞書に載っておらず」、かつ、「ユーザが入力に慣れていない」パスワードを指す。
【００６１】
なお、本実施形態においては、安全なパスワードを登録対象とするために、入力されたパスワードが単語辞書記憶部２５０に記憶されているか否かという判定と、入力速度を用いた判定という２つの判定を行う例を用いて説明した。ただし、パスワードの使い回しの検知のためには、入力速度を用いた判定だけでよい。
【００６２】
次に、判定部２６０による、パスワードの入力時の入力速度が、パスワード以外の入力時の入力速度以上であるか否かの判定方法の一例について説明する。
【００６３】
第２のキーストローク情報が示すパスワード以外の入力時のキーダウン−アップ時間平均をＭ＿ＤＵとし、キーアップ−ダウン時間平均をＭ＿ＵＤとする。また、第１のキーストローク情報が示すパスワードの入力時のキーダウン−アップ時間平均をμ＿ＤＵとし、キーアップ−ダウン時間平均をμ＿ＵＤとする。判定部２６０は、「μ＿ＤＵ≦Ｍ＿ＤＵ」かつ「μ＿ＵＤ≦Ｍ＿ＵＤ」である場合、パスワードの入力時の入力速度が、パスワード以外の入力時の入力速度以上であると判定する。なお、判定方法は、これに限られるものではない。
【００６４】
また、上述した実施形態においては、キーストローク情報は、キー入力の入力速度を示す例を用いて説明したが、これに限られるものではない。キーストローク情報は、ユーザによるキー入力の誤り率（誤打率）を示すものであってもよい。以下では、キーストローク情報が誤打率を示す例について説明する。
【００６５】
キーストローク情報が誤打率を示す場合、キーストローク情報処理部１２０の構成が異なる。図７は、キーストローク情報が誤打率を示す場合のキーストローク情報処理部１２０の構成を示すブロック図である。
【００６６】
図７に示すキーストローク情報処理部１２０は、削除キー検出部１２５と、削除キー打刻割合計算部１２６とを備える。
【００６７】
削除キー検出部１２５は、キー入力中における削除キーの押下を検出し、検出結果を削除キー打刻割合計算部１２６に出力する。
【００６８】
削除キー打刻割合計算部１２６は、一連のキー入力に占める削除キーの打刻（押下）の割合を計算し、計算結果をキーストローク情報としてキーストローク情報送信部１３０に出力する。
【００６９】
図８は、図７に示すキーストローク情報処理部１２０によるキーストローク情報の生成について説明するための図である。図８においては、「ｐａｓｓｗｏｒｄ」という８文字からなるパスワードが入力される例を示している。
【００７０】
図８に示すように、「ｐａｓｓｗ」まで（５文字目まで）入力され、次の６文字目が本来は「ｏ」であるにも関わらず、誤って「ａ」が入力されたとする。この場合、誤って入力された「ａ」を削除するために削除キー（Ｂａｃｋｓｐａｃｅキー）が押下される。そして、「ａ」が削除された後、「ｏ」が入力される。
【００７１】
削除キー検出部１２５は、所定数の文字列のキー入力中に削除キーが押下された回数を検出し、検出結果を削除キー打刻割合計算部１２６に出力する。
【００７２】
削除キー打刻割合計算部１２６は、所定数の文字列のキー入力中に占める削除キーの押下の割合（誤打率ｅｒｒｏｒ）を計算する。具体的には、削除キー打刻割合計算部１２６は、文字列の数をｎとし、そのｎ文字の文字列のキー入力の間に削除キーが押下された回数をｅとすると、誤打率ｅｒｒｏｒ＝ｅ／ｎを計算する。そして、削除キー打刻割合計算部１２６は、算出した誤打率ｅｒｒｏｒをキーストローク情報として、キーストローク情報送信部１３０に出力する。なお、削除キー打刻割合計算部１２６は、「↑」キー、「↓」キーのような、文字入力および文字削除に直接関係しないキーの入力回数についてはｎに含めない。
【００７３】
登録サーバ２００は、キーストローク情報が誤打率を示す場合、パスワード以外の入力時のキーストローク情報と、パスワードの入力時のキーストローク情報とを取得する。それぞれのキーストローク情報は、図６を参照して説明した方法と同様の方法により取得することができる。
【００７４】
キーストローク情報が誤打率を示す場合、ユーザがパスワードの入力に慣れているか否かの判定方法が異なる。この場合、パスワード以外の入力時のキーストローク情報が示す誤打率をＥＲＲＯＲとし、パスワードの入力時のキーストローク情報が示す誤打率をｅｒｒｏｒとすると、判定部２６０は、例えば、ｅｒｒｏｒ≦ＥＲＲＯＲである場合には、そのパスワードの入力に慣れていると判定する。
【００７５】
このように本実施形態によれば、クライアント端末１００は、ユーザによるキー入力の特徴を示すキーストローク情報を生成するキーストローク情報処理部１２０を備える。また、登録サーバ２００は、クライアント端末１００から、パスワードの入力時のキー入力の特徴を示す第１のキーストローク情報と、パスワード以外の入力時のキー入力の特徴を示す第２のキーストローク情報とを取得するキーストローク情報取得部２２０と、取得された第１のキーストローク情報と第２のキーストローク情報とに基づき、入力されたパスワードの使い回しを検知する判定部２６０とを備える。
【００７６】
パスワードの入力時の入力速度がパスワード以外の入力時の入力速度以上である場合や、パスワードの入力時の誤打率がパスワード以外の入力時の誤打率以下である場合、ユーザがそのパスワードの入力に慣れていると考えられる。すなわち、そのパスワードの使い回されたものである可能性が高い。したがって、パスワードの入力時のキーストローク情報とパスワード以外の入力時のキーストローク情報とを比較することで、ユーザがそのパスワードの入力に慣れているか、すなわち、そのパスワードが使い回されたものであるか否かを検知することができる。そのため、パスワードの使い回しの防止を促進することができる。
【００７７】
本発明を図面および実施形態に基づき説明してきたが、当業者であれば本開示に基づき種々の変形または修正を行うことが容易であることに注意されたい。したがって、これらの変形または修正は本発明の範囲に含まれることに留意されたい。
【符号の説明】
【００７８】
１０    判定システム
１００    クライアント端末
１１０    受信部
１２０    キーストローク情報処理部
１２１    キーアップ／ダウン検出部
１２２    時刻取得部
１２３    キーアップ−ダウン時間／ダウン−アップ時間計算部
１２４    キーアップ−ダウン時間平均／ダウン−アップ時間平均計算部
１２５    削除キー検出部
１２６    削除キー打刻割合計算部
１３０    キーストローク情報送信部
２００    登録サーバ（判定装置）
２１０    キーストローク情報要求部
２２０    キーストローク情報取得部
２３０    キーストローク情報記憶部
２４０    パスワード取得部
２５０    単語辞書記憶部
２６０    判定部
２７０    パスワード登録部
２８０    パスワード登録拒否要求部
【図１】
2017191411.tif 000003
【図２】
2017191411.tif 000004
【図３】
2017191411.tif 000005
【図４】
2017191411.tif 000006
【図５】
2017191411.tif 000007
【図６】
2017191411.tif 000008
【図７】
2017191411.tif 000009
【図８】
2017191411.tif 000010