(57)【特許請求の範囲】
【請求項１】
複数のコードを含む認証情報であって、所定の複雑性の条件に従う認証情報を取得する認証情報取得手段と、
前記認証情報取得手段により取得された前記認証情報に含まれる前記複数のコードのそれぞれの入力操作のコストを取得するコスト取得手段と、
前記コスト取得手段により取得されたコストに基づいて、前記認証情報の入力コストを算出する算出手段と、
前記算出手段により算出された前記入力コストに基づいて、前記認証情報取得手段により取得された前記認証情報の適否を判定する判定手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記コスト取得手段は、入力可能な複数のコードがそれぞれ割り当てられた複数の入力手段群の中から入力に用いられる入力手段群の切り替えが可能な入力環境において、前記認証情報に含まれる前記複数のコードのそれぞれを入力するための入力手段群の切り替え回数に基づく前記コストを取得することを特徴とする情報処理装置。
【請求項３】
請求項１又は２に記載の情報処理装置において、
前記コスト取得手段は、前記認証情報に含まれる前記複数のコードのそれぞれを入力するための操作の回数に基づく前記コストを取得することを特徴とする情報処理装置。
【請求項４】
請求項１乃至３の何れか１項に記載の情報処理装置において、
前記コスト取得手段は、入力可能なコードがそれぞれ割り当てられた複数の入力手段が配置された入力環境において、前記認証情報に含まれる前記複数のコードのそれぞれが割り当てられた入力手段の位置に基づく前記コストを取得することを特徴とする情報処理装置。
【請求項５】
請求項１乃至４の何れか１項に記載の情報処理装置において、
前記認証情報の入力に利用される入力環境を特定する特定手段を更に備え、
前記コスト取得手段は、前記特定手段により特定された前記入力環境に対応するコストの決定規則に基づいて、前記コストを取得することを特徴とする情報処理装置。
【請求項６】
請求項１乃至５の何れか１項に記載の情報処理装置において、
前記認証情報取得手段は、ユーザ操作によって入力された前記認証情報を取得し、
前記判定手段により判定された前記適否を出力する出力手段を更に備えることを特徴とする情報処理装置。
【請求項７】
請求項６に記載の情報処理装置において、
前記出力手段は、前記判定手段により前記認証情報が適切ではないと判定された場合、前記認証情報の修正方法であって、前記判定手段が修正後の認証情報を適切であると判定する修正方法を出力することを特徴とする情報処理装置。
【請求項８】
請求項１乃至５の何れか１項に記載の情報処理装置において、
前記認証情報取得手段は、前記条件に従う認証情報を生成し、該認証情報が前記判定手段により適切であると判定されるまで認証情報の生成を繰り返し、
前記判定手段により適切であると判定された認証情報を出力する出力手段を更に備えることを特徴とする情報処理装置。
【請求項９】
請求項８に記載の情報処理装置において、
前記認証情報取得手段は、生成された認証情報が前記判定手段により適切ではないと判定された場合、該認証情報を修正することにより新たな認証情報を生成することを特徴とする情報処理装置。
【請求項１０】
請求項１乃至９の何れか１項に記載の情報処理装置において、
前記認証情報の入力に用いられる端末の種類を特定する種類特定手段と、
前記種類特定手段により特定された前記種類に基づいて、前記複雑性の条件を決定する条件決定手段を更に備え、
前記認証情報取得手段は、前記条件決定手段により決定された前記条件に従う認証情報を取得することを特徴とする情報処理装置。
【請求項１１】
コンピュータにより実行される情報処理方法であって、
複数のコードを含む認証情報であって、所定の複雑性の条件に従う認証情報を取得する認証情報取得ステップと、
前記認証情報取得ステップにより取得された前記認証情報に含まれる前記複数のコードのそれぞれの入力操作のコストを取得するコスト取得ステップと、
前記コスト取得ステップにより取得されたコストに基づいて、前記認証情報の入力コストを算出する算出ステップと、
前記算出ステップにより算出された前記入力コストに基づいて、前記認証情報取得ステップにより取得された前記認証情報の適否を判定する判定ステップと、
を含むことを特徴とする情報処理方法。
【請求項１２】
コンピュータを、
複数のコードを含む認証情報であって、所定の複雑性の条件に従う認証情報を取得する認証情報取得手段、
前記認証情報取得手段により取得された前記認証情報に含まれる前記複数のコードのそれぞれの入力操作のコストを取得するコスト取得手段、
前記コスト取得手段により取得されたコストに基づいて、前記認証情報の入力コストを算出する算出手段、及び、
前記算出手段により算出された前記入力コストに基づいて、前記認証情報取得手段により取得された前記認証情報の適否を判定する判定手段、
として機能させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認証に用いられる認証情報を評価する技術分野に関する。
【背景技術】
【０００２】
従来、ユーザを認証するための情報として、パスワードなどの認証情報が広く利用されている。安全性の観点から、認証情報は一般的に複雑である方がよいとされている。例えば、特許文献１には、文字数が所定数以上であり、且つ複数種類の文字を含むパスワードのみを登録することが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−８３９１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、同様の複雑性を有する認証情報の間であっても、ユーザによる入力負担が異なることがある。そのため、例えば所定の複雑性の条件に従ってパスワードが自動的に生成される場合、ユーザは過度な入力負担を強いられることがあった。また、例えばユーザが手動で所定の複雑性の条件に従ってパスワードを設定する場合、ユーザは入力負担が小さくなるように認証情報を設定する傾向がある。この場合、安全性が低下するおそれがある。【０００５】
本発明は、以上の点に鑑みてなされたものであり、安全性を確保しつつ、認証情報の入力負担を適切に保つことを可能とする情報処理装置、情報処理方法及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、請求項１に記載の発明は、複数のコードを含む認証情報であって、所定の複雑性の条件に従う認証情報を取得する認証情報取得手段と、前記認証情報取得手段により取得された前記認証情報に含まれる前記複数のコードのそれぞれの入力操作のコストを取得するコスト取得手段と、前記コスト取得手段により取得されたコストに基づいて、前記認証情報の入力コストを算出する算出手段と、前記算出手段により算出された前記入力コストに基づいて、前記認証情報取得手段により取得された前記認証情報の適否を判定する判定手段と、を備えることを特徴とする。【０００７】
この発明によれば、情報処理装置は、所定の複雑性の条件に従う認証情報に含まれる各コードの入力操作のコストに基づく認証情報の入力コストに基づいて、認証情報の適否を判定する。そのため、適否の判定結果に基づき、安全性を確保しつつ、認証情報の入力負担を適切に保つことができる。【０００８】
請求項２に記載の発明は、請求項１に記載の情報処理装置において、前記コスト取得手段は、入力可能な複数のコードがそれぞれ割り当てられた複数の入力手段群の中から入力に用いられる入力手段群の切り替えが可能な入力環境において、前記認証情報に含まれる前記複数のコードのそれぞれを入力するための入力手段群の切り替え回数に基づく前記コストを取得することを特徴とする。【０００９】
この発明によれば、入力手段群の切り換え操作が可能な入力環境に対して適切な入力コストを算出することができる。【００１０】
請求項３に記載の発明は、請求項１又は２に記載の情報処理装置において、前記コスト取得手段は、前記認証情報に含まれる前記複数のコードのそれぞれを入力するための操作の回数に基づく前記コストを取得することを特徴とする。【００１１】
この発明によれば、コードによって操作回数が異なる入力環境に対して適切な入力コストを算出することができる。【００１２】
請求項４に記載の発明は、請求項１乃至３の何れか１項に記載の情報処理装置において、前記コスト取得手段は、入力可能なコードがそれぞれ割り当てられた複数の入力手段が配置された入力環境において、前記認証情報に含まれる前記複数のコードのそれぞれが割り当てられた入力手段の位置に基づく前記コストを取得することを特徴とする。【００１３】
この発明によれば、入力手段の位置によって入力負担が異なる入力環境に対して適切な入力コストを算出することができる。【００１４】
請求項５に記載の発明は、 請求項１乃至４の何れか１項に記載の情報処理装置において、前記認証情報の入力に利用される入力環境を特定する特定手段を更に備え、前記コスト取得手段は、前記特定手段により特定された前記入力環境に対応するコストの決定規則に基づいて、前記コストを取得することを特徴とする。【００１５】
この発明によれば、入力環境が予め定められていない場合であっても、認証情報の入力に利用される入力環境に対して適切な入力コストを算出することができる。【００１６】
請求項６に記載の発明は、請求項１乃至５の何れか１項に記載の情報処理装置において、前記認証情報取得手段は、ユーザ操作によって入力された前記認証情報を取得し、前記判定手段により判定された前記適否を出力する出力手段を更に備えることを特徴とする。【００１７】
この発明によれば、ユーザにより入力される認証情報の入力負担を適切に保つことができる。【００１８】
請求項７に記載の発明は、請求項６に記載の情報処理装置において、前記出力手段は、前記判定手段により前記認証情報が適切ではないと判定された場合、前記認証情報の修正方法であって、前記判定手段が修正後の認証情報を適切であると判定する修正方法を出力することを特徴とする。【００１９】
この発明によれば、出力された修正方法に基づいてユーザが認証情報を修正することにより、修正された認証情報の入力負担を適切に保つことができる。【００２０】
請求項８に記載の発明は、請求項１乃至５の何れか１項に記載の情報処理装置において、前記認証情報取得手段は、前記条件に従う認証情報を生成し、該認証情報が前記判定手段により適切であると判定されるまで認証情報の生成を繰り返し、前記判定手段により適切であると判定された認証情報を出力する出力手段を更に備えることを特徴とする。【００２１】
この発明によれば、自動的に生成される認証情報の入力負担を適切に保つことができる。【００２２】
請求項９に記載の発明は、請求項８に記載の情報処理装置において、前記認証情報取得手段は、生成された認証情報が前記判定手段により適切ではないと判定された場合、該認証情報を修正することにより新たな認証情報を生成することを特徴とする。【００２３】
この発明によれば、生成された認証情報とは関係なく新しい認証情報を生成するよりも、生成される認証情報の入力負担を適切に保つことを容易にすることができる。【００２４】
請求項１０に記載の発明は、請求項１乃至９の何れか１項に記載の情報処理装置において、前記認証情報の入力に用いられる端末の種類を特定する種類特定手段と、前記種類特定手段により特定された前記種類に基づいて、前記複雑性の条件を決定する条件決定手段を更に備え、前記認証情報取得手段は、前記条件決定手段により決定された前記条件に従う認証情報を取得することを特徴とする。【００２５】
この発明によれば、端末装置の種類に適した、認証情報の複雑性の条件を課すことができる。【００２６】
請求項１１に記載の発明は、コンピュータにより実行される情報処理方法であって、複数のコードを含む認証情報であって、所定の複雑性の条件に従う認証情報を取得する認証情報取得ステップと、前記認証情報取得ステップにより取得された前記認証情報に含まれる前記複数のコードのそれぞれの入力操作のコストを取得するコスト取得ステップと、前記コスト取得ステップにより取得されたコストに基づいて、前記認証情報の入力コストを算出する算出ステップと、前記算出ステップにより算出された前記入力コストに基づいて、前記認証情報取得ステップにより取得された前記認証情報の適否を判定する判定ステップと、を含むことを特徴とする。【００２７】
請求項１２に記載の発明はコンピュータを、複数のコードを含む認証情報であって、所定の複雑性の条件に従う認証情報を取得する認証情報取得手段、前記認証情報取得手段により取得された前記認証情報に含まれる前記複数のコードのそれぞれの入力操作のコストを取得するコスト取得手段、前記コスト取得手段により取得されたコストに基づいて、前記認証情報の入力コストを算出する算出手段、及び、前記算出手段により算出された前記入力コストに基づいて、前記認証情報取得手段により取得された前記認証情報の適否を判定する判定手段、として機能させることを特徴とする。
【発明の効果】
【００２８】
本発明によれば、情報処理装置は、所定の複雑性の条件に従う認証情報に含まれる各コードの入力操作のコストに基づく認証情報の入力コストに基づいて、認証情報の適否を判定する。そのため、適否の判定結果に基づき、安全性を確保しつつ、認証情報の入力負担を適切に保つことができる。
【図面の簡単な説明】
【００２９】
【図１Ａ】認証装置１をサーバ装置に適用した場合の情報処理システムＳ１の概要構成の一例を示す図である。
【図１Ｂ】認証装置１を端末装置に適用した場合の情報処理システムＳ２の概要構成の一例を示す図である。
【図２Ａ】一実施形態に係る認証装置１の概要構成の一例を示すブロック図である。
【図２Ｂ】一実施形態に係る認証装置１のシステム制御部１６の機能ブロックの一例を示す図である。
【図３Ａ】入力コストが下限値未満である場合のパスワード入力画面の表示例を示す図である。
【図３Ｂ】入力コストが上限値よりも大きい場合のパスワード入力画面の表示例を示す図である。
【図４Ａ】ユーザ端末２が所定のスマートフォンである場合の入力環境の例を示す図である。
【図４Ｂ】ユーザ端末２が所定のスマートフォンである場合の入力コストテーブルの例を示す図である。
【図４Ｃ】ユーザ端末２が所定のスマートフォンである場合の入力コストテーブルの例を示す図である。
【図５Ａ】ユーザ端末２が所定の携帯電話機である場合の入力環境の例を示す図である。
【図５Ｂ】ユーザ端末２が所定の携帯電話機である場合の入力コストテーブルの例を示す図である。
【図６Ａ】ユーザ端末２がフリック入力が可能なスマートフォンである場合の入力環境の例を示す図である。
【図６Ｂ】ユーザ端末２が、フリック入力が可能なスマートフォンである場合の入力コストテーブルの例を示す図である。
【図７】ユーザ端末２がパーソナルコンピュータである場合の入力コストテーブルの例を示す図である。
【図８】一実施形態に係る認証装置１のシステム制御部１６の入力パスワード登録制御処理の一例を示すフローチャートである。
【図９】一実施形態に係る認証装置１のシステム制御部１６の入力パスワード検査処理の一例を示すフローチャートである。
【図１０】一実施形態に係る認証装置１のシステム制御部１６の入力コスト算出処理の一例を示すフローチャートである。
【図１１】一実施形態に係る認証装置１のシステム制御部１６の入力コスト算出処理の一例を示すフローチャートである。
【図１２Ａ】登録パスワード再入力画面の表示例である。
【図１２Ｂ】ユーザによるパスワードの修正例を示す。
【図１２Ｃ】登録パスワード再入力画面の表示例である。
【図１２Ｄ】ユーザによるパスワードの修正例を示す。
【図１２Ｅ】登録パスワード再入力画面の表示例である。
【図１２Ｆ】ユーザによるパスワードの修正例を示す。
【図１３Ａ】登録パスワード再入力画面の表示例である。
【図１３Ｂ】ユーザによるパスワードの修正例を示す。
【図１３Ｃ】登録パスワード再入力画面の表示例である。
【図１３Ｄ】ユーザによるパスワードの修正例を示す。
【図１３Ｅ】登録パスワード再入力画面の表示例である。
【図１３Ｆ】ユーザによるパスワードの修正例を示す。
【図１４】一実施形態に係る認証装置１のシステム制御部１６の入力パスワード登録制御処理の一例を示すフローチャートである。
【図１５】一実施形態に係る認証装置１のシステム制御部１６のパスワード生成制御処理の一例を示すフローチャートである。
【図１６】一実施形態に係る認証装置１のシステム制御部１６のパスワード生成制御処理の一例を示すフローチャートである。
【図１７】一実施形態に係る認証装置１のシステム制御部１６の入力パスワード検査処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００３０】
以下、図面を参照して本発明の実施形態について詳細に説明する。なお、以下に説明する実施の形態は、複数の文字コードを含むパスワードを用いた認証を行う認証装置に対して本発明を適用した場合の実施形態である。データとしてのパスワードは、実際には文字を示す文字コードを含む。ただし、実施形態においては、説明の便宜上、文字コードのことも単に文字と称する。また、実施形態においては、記号も文字に含まれるものとする。
【００３１】
［１．第１実施形態］
認証装置は、パスワードを用いたユーザ認証を行うコンピュータである。また、認証装置は、新しいパスワードを登録又は設定するときに、パスワードの適否を判定する。認証装置は、例えばサーバ装置であってもよいし、端末装置であってもよい。先ずは認証装置がサーバ装置に適用された場合について説明し、最後に認証装置が端末装置に適用された場合について説明する。
【００３２】
［１−１．情報処理システムの概要］
先ず、本実施形態に係る情報処理システムＳ１の概要について、図１Ａを用いて説明する。図１Ａは、認証装置１をサーバ装置に適用した場合の情報処理システムＳ１の概要構成の一例を示す図である。
【００３３】
図１Ａに示すように、情報処理システムＳ１は、サーバ装置としての認証装置１と複数のユーザ端末２とを含んで構成されている。そして、認証装置１と各ユーザ端末２とは、ネットワークＮＷを介して、例えば、通信プロトコルにＴＣＰ／ＩＰ等を用いて相互にデータの送受信が可能になっている。なお、ネットワークＮＷは、例えば、インターネット、専用通信回線（例えば、ＣＡＴＶ（Community Antenna Television）回線）、移動体通信網（基地局等を含む）、及びゲートウェイ等により構築されている。
【００３４】
認証装置１は、例えば、情報処理システムＳ１を利用するユーザへ所定のサービスを提供するための処理を行うサーバ装置であってもよい。或いは、認証装置１は、例えば情報処理システムＳ１で提供されるサービスをユーザが受けるためのユーザ認証を行う認証サーバであってもよい。認証装置１は、ユーザ情報ＤＢ３にアクセス可能に構成されている。ユーザ情報ＤＢ３は、情報処理システムＳ１に会員登録されたユーザに関する情報を登録するデータベースである。例えば、ユーザ情報ＤＢ３には、ユーザごとにユーザＩＤ、パスワード等が対応付けて登録されている。ユーザＩＤは、ユーザの識別情報である。パスワードは、本発明における認証情報の一例である。情報処理システムＳ１自身がユーザ情報ＤＢ３を備えてもよいし、情報処理システムＳ１とユーザ情報ＤＢ３がネットワークを介して接続されてもよい。ユーザを認証するとき、認証装置１は、ユーザ端末２からユーザＩＤ及びパスワードを受信する。認証装置１は、例えば受信したユーザＩＤに対応するパスワードをユーザ情報ＤＢ３から取得し、取得したパスワードと受信したパスワードとが一致するか否かを判定する。認証装置１は、パスワードが一致する場合には、認証が成功したと判定し、パスワードが一致しない場合には、認証が失敗したと判定する。認証が成功することにより、ユーザは情報処理システムＳ１にログインする。
【００３５】
ユーザ端末２は、情報処理システムＳ１を利用しようとするユーザが用いる端末装置である。本実施形態においてユーザは、特定の種類の端末装置を用いてのみ情報処理システムＳ１を利用可能である。端末装置の種類の例として、スマートフォン、タブレット型コンピュータ、携帯電話機、パーソナルコンピュータ、ＰＤＡ（Personal Digital Assistant）、ＳＴＢ(Set Top Box)等がある。また、機種、商品シリーズ等で端末装置の種類が分けられてもよい。ユーザ端末２は、例えばＣＰＵ、ＲＯＭ、ＲＡＭ、フラッシュメモリ、ハードディスクドライブ等を備えてもよい。また、ユーザ端末２には、例えばブラウザ、電子メールクライアント等のソフトウェアがインストールされている。ユーザ端末２は、ユーザに対してパスワードの入力環境を提供する。パスワードの入力環境とは、例えばパスワードに用いることが可能な文字を入力するためのユーザインターフェースである。本実施形態においては、情報処理システムＳ１を利用する複数のユーザ端末２の間で入力環境は同一であり、また単一の入力環境のみが利用されるものとする。
【００３６】
例えばユーザが情報処理システムＳ１に会員登録するとき、認証装置１は、そのユーザのユーザＩＤ及びパスワードをユーザ情報ＤＢ３に登録する。また例えば、ユーザがパスワードを変更するとき、認証装置１は、新しいパスワードをユーザ情報ＤＢ３に登録する。このとき、認証装置１は、所定の登録要件を満たすパスワードのみを登録する。登録要件とは、登録又は設定可能なパスワードとして新しいパスワードが情報処理システムＳ１によって受け入れられる条件である。具体的に、登録要件は、パスワードの複雑性の条件である。この登録要件により、登録されるパスワードが所定の複雑性を有し、パスワードが或る程度の強度を有することになる。例えば、情報処理システムＳ１の管理者により登録要件が予め定められていてもよい。登録要件は、例えばパスワードの文字数が所定数以上であることであってもよい。また登録要件は、例えばパスワードの文字数が第１所定数以上であり且つ第２所定数以下であることであってもよい。また登録要件は、例えばパスワードに含まれる文字の種類が所定数以上であることであってもよい。また登録要件は、例えばパスワードに含まれる文字が所定の種類の文字を必ず含むことであってもよい。また登録要件は、例えば複数の条件の組み合わせであってもよい。管理者はパスワードに用いることが可能な文字種を自由に決めることができる。文字種として、例えば、英小文字、英大文字、数字、記号、マルチバイト文字等がある。マルチバイト文字として、例えば、漢字、ひらがら、片仮名などがある。なお、本実施形態においては、一例として英小文字、英大文字及び数字を利用可能であるものとして説明する。
【００３７】
ユーザがパスワードを入力するとき、例えば、入力する文字によって入力負担が小さかったり大きかったりする。そのため、同じ登録要件を満たすパスワードの間においても、パスワードによってユーザによる入力負担が異なることがある。パスワードの入力負担が過度に大きいと、ユーザにとってパスワードの入力操作が面倒となる。その一方で、パスワードの入力負担が小さいと安全性が低下するおそれがある。その理由は、第三者がユーザのパスワードを割り出そうとするとき、例えば総当たり攻撃などで入力負担が小さいパスワードから試す可能性があるからである。そこで、認証装置１は、安全性を確保しつつパスワードの入力負担が適切な範囲となるよう、パスワードの入力コストに基づいて、そのパスワードの適否を判定する。入力コストは、例えば入力負担を示す値である。入力負担が大きいほどパスワードの入力負担が大きい。本実施形態においては、認証装置１は、ユーザにより入力されたパスワードの適否を判定する。
【００３８】
［１−２．認証装置の構成］
次に、認証装置１の構成について、図２Ａを用いて説明する。図２Ａは、本実施形態に係る認証装置１の概要構成の一例を示すブロック図である。図２Ａに示すように、認証装置１は、通信部１１と、記憶部１２と、操作部１３と、表示部１４と、入出力インターフェース１５と、システム制御部１６と、を備えている。そして、システム制御部１６と入出力インターフェース１５とは、システムバス１７を介して接続されている。
【００３９】
通信部１１は、ネットワークＮＷに接続して、ユーザ端末２等との通信状態を制御する。記憶部１２は、データやプログラムを記憶する。記憶部１２の例として、ハードディスクドライブ、フラッシュメモリ等が挙げられる。記憶部１２には、例えばユーザ情報ＤＢ３が記憶されていてもよい。また記憶部１２には、入力コストテーブルが記憶されている。入力コストテーブルは、パスワードに用いられる文字の入力コストの決定規則を示す情報である。具体的に、入力コストテーブルは、パスワードに用いられる文字の入力コストを格納するテーブルである。記憶部１２には、ユーザ端末２の入力環境に対応した入力コストテーブルが記憶されている。入力コストテーブルには、例えばパスワードに用いることが可能な文字又は文字種に少なくとも対応付けて、入力コストが格納されている。入力コストテーブルの構成例については後述する。記憶部１２には、更にオペレーティングシステム、認証処理プログラム等のプログラムが記憶されている。認証処理プログラムは、ユーザの認証に関する処理を行うためのプログラムである。また、認証処理プログラムは、登録又は設定されるパスワードの適否を判定するためのプログラムである。認証処理プログラムは、本発明における情報処理プログラムの一例である。なお、各種のプログラムは、例えば、他のサーバ装置等からネットワークＮＷを介して取得されるようにしてもよいし、光ディスク等の記録媒体に記録されてドライブ装置を介して読み込まれるようにしてもよい。操作部１３は、操作者による操作を受け付け、操作内容に対応する信号をシステム制御部１６に出力する。操作部１３の例として、キー、ボタン、スイッチ、キーボード、マウス、タッチパネル、リモコン等が挙げられる。なお、認証装置１は操作部１３を備えていなくてもよい。例えば認証装置１は、操作部１３と有線又は無線により接続されていてもよい。表示部１４は、システム制御部１６の制御により、画像、文字等の情報を表示する。表示部１４の例として、液晶ディスプレイ、ＣＲＴディスプレイ、ＬＥＤ等が挙げられる。なお、認証装置１は表示部１４を備えていなくてもよい。例えば認証装置１は、表示部１４と有線又は無線により接続されていてもよい。入出力インターフェース１５は、通信部１１及び記憶部１２とシステム制御部１６との間のインターフェース処理を行う。システム制御部１６は、ＣＰＵ（Central Processing Unit）１６ａ、ＲＯＭ（Read Only Memory）１６ｂ、ＲＡＭ（Random Access Memory）１６ｃ等により構成されている。ＣＰＵ１６ａは、プロセッサの一例である。なお、本発明は、ＣＰＵと異なる様々なプロセッサに対しても適用可能である。記憶部１２、ＲＯＭ１６ｂ及びＲＡＭ１６ｃは、それぞれメモリの一例である。なお、本発明は、ハードディスク、ＲＯＭ及びＲＡＭと異なる様々なメモリに対しても適用可能である。
【００４０】
［１−３．システム制御部の機能概要］
次に、図２Ｂ乃至図３Ｂを用いて、システム制御部１６の機能概要について説明する。図２Ｂは、本実施形態に係る認証装置１のシステム制御部１６の機能ブロックの一例を示す図である。システム制御部１６は、ＣＰＵ１６ａが、認証処理プログラム等のプログラムを読み出し実行することにより、図２Ｂに示すように、パスワード取得部１６１、文字入力コスト取得部１６２、パスワード入力コスト算出部１６３、適否判定部１６４、出力部１６５等として機能する。パスワード取得部１６１は、本発明における認証情報取得手段の一例である。文字入力コスト取得部１６２は、本発明におけるコスト取得手段の一例である。パスワード入力コスト算出部１６３は、本発明における算出手段の一例である。適否判定部１６４は、本発明における判定手段の一例である。出力部１６５は、本発明における出力手段の一例である。
【００４１】
パスワード取得部１６１は、登録要件に従うパスワードを取得する。本実施形態において、パスワード取得部１６１は、ユーザにより入力されたパスワードをユーザ端末２から取得する。例えば、パスワード取得部１６１は、ユーザ端末２に登録情報入力画面を表示させる。登録情報入力画面においてユーザがユーザＩＤ及びパスワードを入力すると、ユーザ端末２はユーザＩＤ及びパスワードを認証装置１へ送信する。パスワード取得部１６１は、例えばユーザ端末２から受信したパスワードが登録要件を満たすか否かを判定する。パスワードが登録要件を満たさない場合、パスワード取得部１６１は、ユーザ端末２に再度パスワード入力画面を表示させ、ユーザ端末２からユーザにパスワードの再入力を促させる。また例えば、ユーザ端末２が、パスワードが登録要件を満たすか否かを判定してもよい。そして、ユーザ端末２は、入力されたパスワードが登録要件を満たす場合にのみ、パスワードを認証装置１へ送信してもよい。
【００４２】
文字入力コスト取得部１６２は、パスワード取得部１６１により取得されたパスワードに含まれる複数の文字のそれぞれの入力コストを取得する。具体的に、文字入力コスト取得部１６２は、ユーザ端末２における入力環境に対応した入力コストを、入力コストテーブルから取得する。例えば、文字入力コスト取得部１６２は、入力された文字又は文字種に対応する入力コストを入力コストテーブルから取得する。また、例えば直前に入力された文字又は文字種によって次に入力される文字又は文字種の入力コストが変化してもよい。この場合、例えば、文字入力コスト取得部１６２は、直前の文字又は文字種と、次の文字又は文字種に対応する入力コストを入力コストテーブルから取得する。
【００４３】
パスワード入力コスト算出部１６３は、文字入力コスト取得部１６２により取得された入力コストに基づいて、パスワードの入力コストを算出する。例えば、パスワード入力コスト算出部１６３は、パスワードに含まれる複数の文字の入力コストを足し合わせて、パスワードの入力コストを算出してもよい。入力環境、入力コストテーブル、パスワードの入力コストの算出の例については後述する。
【００４４】
適否判定部１６４は、パスワード入力コスト算出部１６３により算出された入力コストに基づいて、パスワードの適否を判定する。具体的に、適否判定部１６４は、入力コストが予め定められた下限値以上であり且つ上限値以下である場合、パスワードが適切であると判定する。一方、適否判定部１６４は、入力コストが下限値未満であるか又は上限値よりも大きい場合、パスワードが適切ではないと判定する。下限値及び上限値は例えば記憶部１２に記憶される。下限値及び上限値により、パスワードの入力コストが適切に保たれる。例えば情報処理システムＳ１の管理者が下限値及び上限値を決定してもよい。なお、適否判定部１６４は、例えば入力コストが下限値以上である場合はパスワードが適切であると判定し、入力コストが下限値未満である場合にのみパスワードが適切ではないと判定してもよい。
【００４５】
出力部１６５は、適否判定部１６４によりパスワードが適切ではないと判定された場合、パスワードの再入力を促す情報を出力する。例えば、出力部１６５は、パスワードを再入力するための登録パスワード再入力画面をユーザ端末２により表示させる。図３Ａは、入力コストが下限値未満である場合のパスワード入力画面の表示例を示す。図３Ａに示すように、登録パスワード再入力画面には、パスワード入力フィールド２０１、登録ボタン２０２、メッセージ２０３が表示される。メッセージ２０３は、入力されたパスワードが適切ではないことを示す。例えば、メッセージ２０３は、例えば前回入力されたパスワードよりも入力しにくいパスワードの入力を促すメッセージであってもよい。図３Ｂは、入力コストが上限値よりも大きい場合のパスワード入力画面の表示例を示す。図３Ｂに示すように、登録パスワード再入力画面には、パスワード入力フィールド２０１、登録ボタン２０２、メッセージ２０４が表示される。メッセージ２０４は、入力されたパスワードが適切ではないことを示す。メッセージ２０４は、例えば前回入力されたパスワードよりも入力しやすいパスワードの入力を促すメッセージであってもよい。登録パスワード再入力画面において、ユーザがパスワード入力フィールド２０１にパスワードを入力して登録ボタン２０２を選択すると、ユーザ端末２は、入力されたパスワードを認証装置１へ送信する。すると、システム制御部１６は、再入力されたパスワードの入力コストを算出して、パスワードの適否を判定する。なお、出力部１６５は、パスワードが不適切である場合であっても、パスワードの再入力をユーザに強制しなくてもよい。例えば、出力部１６５はパスワードが不適切であるメッセージをユーザ端末２に表示させる一方で、入力されたパスワードを登録するか又はパスワードを再入力するかをユーザに選択させてもよい。
【００４６】
なお、システム制御部１６は、例えばユーザがパスワードを構成する文字を一文字ずつ入力するごとに、現時点で入力されているパスワードが登録要件を満たすか否かを判定し、また現時点で入力されているパスワードの適否を判定してもよい。このとき、システム制御部１６は、例えばパスワードの適否を判定するたびに、その判定結果を登録情報入力画面に表示させてもよい。
【００４７】
［１−４．入力コストテーブル、入力コストの算出の例］
次に、入力コストテーブルの例及び入力コストの算出例を、図４Ａ乃至図７を用いて説明する。
【００４８】
［１−４−１．入力手段群の切り替えが可能な入力環境］
入力環境が、入力可能な複数の文字がそれぞれ割り当てられた複数の入力手段群の中から入力に用いられる入力手段群の切り替えが可能な環境である場合がある。この場合、入力コストテーブルは、パスワードに含まれる複数の文字のそれぞれを入力するための入力手段群の切り替え回数に基づく入力コストを格納してもよい。入力手段は、例えば文字を入力するための最小限の構成要素であってもよい。例えば、入力手段は、キー、ボタン、スイッチ等であってもよい。入力手段は、例えばハードウェアであってもよいし、ソフトウェア的に画面に表示されるものであってもよい。１つの入力手段群は、例えば入力可能な文字が１つ以上割り当てられている入力手段を複数含む。また、入力手段群は、文字が割り当てられていない入力手段も含んでいてもよい。そのような入力手段として、例えばシフトキー、エスケープキー、機能キー等がある。或る入力手段群に含まれる入力手段が操作された後、同一の入力手段群に含まれる別の入力手段を操作するためには、入力手段群を切り替えるための操作を要さない。
【００４９】
図４Ａは、ユーザ端末２が所定のスマートフォンである場合の入力環境の例を示す図である。例えば、或るスマートフォンは、ソフトウェアキーボードを画面に表示させるとする。ソフトウェアキーボードは、複数のキーを含む。ソフトウェアキーボードは、本発明における入力手段群の一例である。この場合のユーザ端末２は、ソフトウェアキーボーとして、例えば図４Ａに示すように小文字キーボード１００、大文字キーボード１１０及び数字キーボード１２０を表示可能である。具体的に、ユーザ端末２は、ユーザの操作に基づき、入力に用いられるソフトウェアキーボードを切り替えて表示させる。図４Ａの例において、各ソフトウェアキーボードの各キーには、入力可能な文字が基本的に１文字割り当てられている。パスワードの入力開始時、ユーザ端末２は小文字キーボード１００を表示する。小文字キーボード１００は、英小文字を入力するためのキーボードである。従って、小文字キーボード１００は、それぞれ英小文字が割り当てられた複数のキーを含む。更に小文字キーボード１００は、切替キー１０１及び１０２を含む。ユーザが切替キー１０１を押すと、ユーザ端末２は、ソフトウェアキーボードを大文字キーボード１１０に切り替える。また、ユーザが切替キー１０２を押すと、ユーザ端末２は、ソフトウェアキーボードを数字キーボード１２０に切り替える。大文字キーボード１１０は、英大文字を入力するためのキーボードである。従って、大文字キーボード１１０は、それぞれ英大文字が割り当てられた複数のキーを含む。更に大文字キーボード１１０は、切替キー１１１及び１１２を含む。ユーザが切替キー１１１を押すと、ユーザ端末２は、ソフトウェアキーボードを小文字キーボード１００に切り替える。また、ユーザが切替キー１１２を押すと、ユーザ端末２は、ソフトウェアキーボードを数字キーボード１２０に切り替える。また、ユーザが何れかのキーを選択して大文字を一文字入力すると、ユーザ端末２は、ソフトウェアキーボードを小文字キーボード１００に切り替える。数字キーボード１２０は、数字及び記号を入力するためのキーボードである。従って、数字キーボード１２０は、それぞれ数字又は記号が割り当てられた複数のキーを含む。更に数字キーボード１２０は、切替キー１２１を含む。ユーザが切替キー１２１を押すと、ユーザ端末２は、ソフトウェアキーボードを小文字キーボード１００に切り替える。
【００５０】
図４Ｂは、ユーザ端末２が所定のスマートフォンである場合の入力コストテーブルの例を示す図である。パスワードの入力に用いられるソフトウェアキーボードの切替が可能である場合、各文字の入力コストは、その文字の入力に用いられるソフトウェアキーボードと、直前の文字の入力に用いられるソフトウェアキーボードとに応じて変化する。具体的に、ソフトウェアキーボードを切り替える回数が異なる。そこで、例えば入力コストテーブルには、文字を入力するためにソフトウェアキーボードを切り替える操作の回数に応じたコストがその文字の入力コストとして格納される。図４Ａの例の場合、直前に入力された文字の文字種と次に入力される文字の文字種とに応じて、次の文字の入力コストが変化する。そこで、例えば図４Ｂに示すように、入力コストテーブルには、直前の文字の文字種と次の文字の文字種とに対応付けて、次の文字の文字種の入力コストが格納される２次元配列であってもよい。図４Ｂの例では直前の文字種が行に対応し次の文字種が列に対応しているが、直前の文字種が列に対応し次の文字種が行に対応してもよい。図４Ｂの例では、キーの１回の操作につき１の入力コストがかかるものとしている。パスワードの一文字目を入力するとき、すなわち、直前に入力されている文字がないとき、画面には小文字キーボード１００が表示されている。従って、英小文字を入力する場合、ユーザは、小文字キーボード１００上の所望のキーを押す操作を行えばよい。そこで、この場合の英小文字の入力コストが１となる。一方、英大文字又は数字を入力する場合、ユーザは、切替キー１０１又は１０２を操作して、ソフトウェアキーボードを切り替えてから、所望のキーを選択操作する必要がある。従って、英大文字及び数字の入力コストはそれぞれ１となる。直前に入力された文字が小文字である場合、画面には小文字キーボード１００が表示されている。従って、この場合の英小文字、英大文字及び数字の入力コストもそれぞれ１、２、２である。また、直前に入力された文字が大文字である場合、大文字が入力されることにより、大文字キーボード１１０から小文字キーボード１００に切り替わる。従って、この場合の英小文字、英大文字及び数字の入力コストもそれぞれ１、２、２である。直前に入力された文字が数字である場合、画面には数字キーボード１２０が表示されている。従って、小文字を入力する場合、ユーザは、切替キー１２１を操作してソフトウェアキーボード英小文字キーボード１００に切り替えてから、所望のキーを選択操作する必要がある。従って、英小文字の入力コストは２となる。また、英大文字を入力する場合、ユーザは、切替キー１２１を操作してソフトウェアキーボード英小文字キーボード１００に切り替え、更に切替キー１０１を操作してソフトウェアキーボード英大文字キーボード１１０に切り替えてから、所望のキーを選択操作する必要がある。従って、英大文字の入力コストは３となる。また、数字の入力コストは１となる。
【００５１】
例えば、パスワードが「ｏＪ３Ｘ７０ｃ」であるとする。この場合、「ｏ」から「ｃ」までの文字の入力コストはそれぞれ１、２、２、３、２、１、２である。従って、パスワードの入力コストは１３である。
【００５２】
図４Ｃは、ユーザ端末２が所定のスマートフォンである場合の入力コストテーブルの別の例を示す図である。図４Ｃに示すように、入力コストテーブルには、直前に入力された文字と次に入力された文字とに対応付けて入力コストが格納されてもよい。入力コストテーブルが図４Ｂと図４Ｃの何れであっても、パスワードの入力コストは同じである。
【００５３】
［１−４−２．文字によって操作回数が異なる入力環境］
入力環境が、入力される文字によって入力手段の操作回数が異なる環境である場合がある。この場合、入力コストテーブルは、パスワードに含まれる複数の文字のそれぞれを入力するための操作回数に基づく入力コストを格納してもよい。文字を入力するための操作として、例えば入力手段を押す操作、入力手段を動かす操作等がある。また、画面に表示される入力手段の操作として、例えば入力手段を指又はペンで押す操作、押した指又はペンをスライドさせる操作、押した指又はペンを払う操作、タップ、クリック、ドラッグ等がある。
【００５４】
図５Ａは、ユーザ端末２が所定の携帯電話機である場合の入力環境の例を示す図である。或る携帯電話機は文字を入力するための複数のキーを備える。例えばユーザ端末２は、図５Ａに示すような操作部１３０を備える。なお、例えば図５Ａに示すようなソフトウェアキーボードが画面に表示されてもよい。操作部１３０は、複数の文字がそれぞれ割り当てられた複数のキーを含む。操作部１３０においては、ユーザが同一のキーを連続して押した回数に応じて、入力される文字が変わる。更に操作部１３０は確定キー１３２を含む。確定キー１３２は、文字の入力を確定するためのキーである。例えばユーザが操作部１３０のキー１３１を１回押すごとに、「ａ」、「ｂ」、「ｃ」、「Ａ」、「Ｂ」、「Ｃ」、「２」と、入力される文字が変化する。ユーザが確定キー１３２を押すか又はキー１３１とは別のキーを押すと、入力が確定する。
【００５５】
図５Ｂは、ユーザ端末２が所定の携帯電話機である場合の入力コストテーブルの例を示す図である。図５Ａの例の場合、文字によって入力操作の回数が変化する。例えば、「ａ」を入力するための操作は１回であり、「２」を入力するための操作は７回である。操作の回数が多いほど入力コストが大きい。また、直前の文字のキーと次の文字のキーとが同一である場合、ユーザは、直前の文字を確定するため確定キー１３２を押す必要がある。そのため、直前の文字のキーと次の文字のキーに応じても入力操作の回数が異なる。そこで、入力コストテーブルには、図５Ｂに示すように、直前の文字と次の文字に対応付けて、入力操作の回数に応じた次の文字の入力コストが格納される。図５Ｂの例では、キーの１回の操作につき１の入力コストがかかるものとしている。例えば、パスワードの一文字目として「ａ」を入力するためのコストは１である。また、「２」の入力コストは７である。直前の文字「ａ」である場合において、次に「ａ」を入力するためのコストは２である。直前の文字「ａ」である場合において、次に「ｄ」を入力するためのコストは１である。
【００５６】
例えば、パスワードが「ｃＢｘ９ｙ６」であるとする。この場合、「ｃ」から「６」までの文字の入力コストはそれぞれ３、５、２、１０、４、７である。従って、パスワードの入力コストは３１である。
【００５７】
図６Ａは、ユーザ端末２が、フリック入力が可能なスマートフォンである場合の入力環境の例を示す図である。例えば、別の或るスマートフォンは、フリック入力が可能なソフトウェアキーボードを画面に表示させるとする。この場合のユーザ端末２は、ソフトウェアキーボーとして、例えば図６Ａに示すように小文字・数字キーボード１３０及び大文字キーボード１４０を表示可能である。小文字・数字キーボード１３０及び大文字キーボード１４０の各文字キーには複数の文字が割り当てられている。小文字・数字キーボード１３０は、英小文字及び数字を入力するためのキーボードである。例えば、ユーザが小文字・数字キーボード１３０のキー１３１をタップすると、「ａ」が入力される。タップとは、指でキーを押して離す操作である。ユーザがキー１３１をフリックすると、「ａ」とは異なる文字が入力される。フリックとは、指でキーを押して、押した指を何れかの方向に払う操作である。例えば、ユーザが指を左に払うと、「ｂ」が入力される。また、ユーザが指を上に払うと、「ｃ」が入力される。また、ユーザが指を下に払うと、「２」が入力される。小文字・数字キーボード１３０は更に切替キー１３２を含む。ユーザが切替キー１３２を押すと、ユーザ端末２は、ソフトウェアキーボードを大文字キーボード１４０に切り替える。大文字キーボード１４０は、英大文字を入力するためのキーボードである。大文字キーボード１４０においても小文字・数字キーボード１３０と同様の操作が可能である。大文字キーボード１４０は更に切替キー１４１を含む。ユーザが切替キー１４１を押すと、ユーザ端末２は、ソフトウェアキーボードを小文字・数字キーボード１３０に切り替える。
【００５８】
図６Ｂは、ユーザ端末２が、フリック入力が可能なスマートフォンである場合の入力コストテーブルの例を示す図である。フリック入力が可能である場合、文字によって操作の回数が異なる。具体的に、タップの場合、ユーザはキーを一瞬押すという操作を行えばよい。つまり、タップは１つの操作のみを含む。一方、フリックの場合、ユーザはキーを押す操作と、押した指を払う操作を行う必要がある。すなわち、フリックは２つの操作を含む。操作回数が多いほど、入力コストが大きい。また、直前の文字の文字種と次の文字の文字種に応じて、ソフトウェアキーボードの切替操作が必要であるか否かが異なる。そこで、例えば図６Ｂに示すように、入力コストテーブルには、直前の文字の文字種と次の文字とに対応付けて、次の文字の入力コストが格納されてもよい。例えば、ソフトウェアキーボードの切替操作が不要である場合に、タップで入力される文字の入力コストは１であり、フリックで入力される文字の入力コストは２である。ソフトウェアキーボードの切替操作が必要である場合、タップで入力される文字の入力コストは２であり、フリックで入力される文字の入力コストは３である。
【００５９】
例えば、パスワードが「ｊＺｘ９ｒａ」であるとする。この場合、「ｊ」から「ａ」までの文字の入力コストはそれぞれ１、３、３、２、２、１である。従って、パスワードの入力コストは１２である。
【００６０】
例えば、パスワードに用いる文字としてマルチバイト文字が許容されている場合、一般的には文字ごとに操作回数が異なる。例えば、ＱＷＥＲＴＹ配列のキーボードでマルチバイト文字を入力すると仮定する。この場合、「あ」を入力するには、「ａ」のキーを押す必要がある。また、「か」を入力するには、「ｋ」のキーと「ａ」のキーを押す必要がある。また、「亜」を入力するには、「ａ」のキーを押した後にスペースキーを１回以上押す必要がある。そのため、入力コストテーブルは、例えば、マルチバイト文字に対応付けて、操作回数に応じた入力コストを格納する一次元配列であってもよい。
【００６１】
［１−４−３．入力手段の位置によって入力負担が異なる入力環境］
入力環境が、入力手段群における入力手段の位置又は複数の入力手段の配置によって文字の入力負担が異なる環境である場合がある。この場合、入力コストテーブルは、パスワードに含まれる複数の文字のそれぞれを入力するための入力手段の位置に基づく入力コストを格納してもよい。
【００６２】
図７は、ユーザ端末２がパーソナルコンピュータである場合の入力コストテーブルの例を示す図である。パーソナルコンピュータにおいては、一般的にＱＷＥＲＴＹ配列のキーボードが利用されている。このようなキーボードの場合、一般的にユーザは両手の指を使って文字を入力する。またキーの配列に基づき、どの指でどのキーを押すかが決まっている。例えばこのような場合、文字が割り当てられたキーの位置に応じて入力コストが変化する場合がある。例えば、ユーザが同一の指で異なるキーを連続して押す場合、ユーザが別々の指で異なるキーを連続して押す場合よりも、入力コストが大きい。例えば、ユーザが「ａ」の次に「ｑ」を入力する場合、「ａ」の次に「ｒ」を入力する場合よりも、ユーザは入力操作がしにくい。そこで、入力コストテーブルには、図６に示すように、直前の文字と次の文字に対応付けて、直前の文字が割り当てられたキーと次の文字が割り当てられたキーとの配置に応じた次の文字の入力コストが格納される。例えば、直前の文字が割り当てられたキーと次の文字が割り当てられたキーとが同じ指で押される異なるキーである場合、異なる指で押されるキーである場合よりも、入力コストが０．５大きくなっている。例えば、直前の文字が「ｃ」である場合に次に「ｃ」を入力するコストは１であるが、直前の文字が「ｄ」である場合に次に「ｃ」を入力するコストは１．５である。また、このようなキーボードの場合、文字によってキーを押す操作の回数が異なる。例えば、英小文字及び数字は、文字キーを１回押すだけ入力可能である。一方、英大文字の場合は、シフトキーと文字キーとの両方を押す必要がある。つまり２回の操作が必要である。従って、文字によってキーの操作回数が異なる。例えば、直前の文字が「ａ」である場合に次に「Ａ」を入力するためのコストは２である。また、直前の文字が「Ｈ」である場合に次に「Ａ」を入力するためのコストも２である。一方、直前の文字が「Ａ」である場合に次に「Ａ」を入力するためのコストは１である。その理由は、この場合シフトキーは押したままでよいからである。
【００６３】
例えば、パスワードが「Ｎｐ４ｄＭｕ７」であるとする。この場合、「Ｎ」から「７」までの文字の入力コストはそれぞれ２、１、１、１、２、１．５、１．５である。従って、パスワードの入力コストは１０である。
【００６４】
なお、キーの位置に基づく入力コストについては上述した例に限られるものではない。例えば、直前の文字のキーと次の文字のキーとの距離に基づいて入力コストが決定されてもよい。例えば、ユーザが直前に押したキーの周辺に配置されているキーを押す場合、指を細かく動かす必要がある。そこで、次の文字のキーが直前の文字のキーに隣接している場合、隣接していない場合よりも入力コストが大きくてもよい。また、例えば、直前の文字のキーを操作する手と次の文字のキーを操作する手とに基づいて入力コストが決定されてもよい。例えば、両手で交互にキーを押すよりも、同一の手で連続してキーを押す方が入力しにくい。そこで、直前の文字のキーと次の文字のキーとが同じ手で操作される場合、異なる手で操作される場合よりも入力コストが大きくてもよい。また、キーに割り当てられた指に基づいて入力コストが決定されてもよい。例えば、一般的に人差し指よりも小指の方がキーの操作がし難い。そこで、例えば「４」、「ｒ」、「ｆ」、「ｖ」の入力コストよりも、「１」、「ｑ」、「ａ」、「ｚ」の方の入力コストが大きくてもよい。また例えば、キーの位置による文字の入力負担は個人差が存在する場合がある。そこで、如何なる基準で入力コストを決定するかをユーザによって設定可能に認証装置１が構成されてもよい。この場合、例えば記憶部１２に予め複数の入力コストテーブルが記憶されていてもよい。そして、文字入力コスト取得部１６２は、ユーザの設定に対応する入力コストテーブルを利用して入力コストを取得してもよい。
【００６５】
上述した入力コストの値は例示である。文字の入力操作の負担に基づいた入力コストであれば、上述した例とは異なる値が入力コストテーブルに格納されてもよい。また例えば、直前に入力された文字が次に入力された文字の入力コストに影響しない場合、入力コストテーブルは、入力された文字に対応付けて入力コストを格納する一次元配列であってもよい。また、本発明は、上述した入力環境以外にも、様々な入力環境に対して適用可能である。この場合、入力環境に応じた入力コストテーブルが記憶部１２に記憶される。
【００６６】
［１−５．情報処理システムの動作］
次に、情報処理システムＳ１の動作について、図８乃至図１０を用いて説明する。図８は、本実施形態に係る認証装置１のシステム制御部１６の入力パスワード登録制御処理の一例を示すフローチャートである。登録情報入力画面においてユーザがユーザＩＤ及びパスワードを入力すると、ユーザ端末２は入力されたユーザＩＤ及びパスワードを含むパスワード登録要求を認証装置１に送信する。システム制御部１６は、パスワード登録要求を受信したときに入力パスワード登録制御処理を開始させる。図８に示すように、パスワード取得部１６１は、パスワード登録要求から、入力されたユーザＩＤ及びパスワードを取得する（ステップＳ１）。
【００６７】
次いで、システム制御部１６は、パスワード検査処理を実行する（ステップＳ２）。パスワード検査処理において、システム制御部１６は、入力されたパスワードが登録要件を満たすか否かを判定する。また、システム制御部１６は、パスワードの入力コストに基づいてパスワードの適否を判定する。図９は、本実施形態に係る認証装置１のシステム制御部１６の入力パスワード検査処理の一例を示すフローチャートである。図９に示すように、パスワード取得部１６１は、入力されたパスワードが登録要件を満たすか否かを判定する（ステップＳ１１）。このとき、パスワード取得部１６１は、パスワードが登録要件を満たさないと判定した場合には（ステップＳ１１：ＮＯ）、ステップＳ１２に進む。ステップＳ１２において、パスワード取得部１６１は、パスワード検査処理における判定結果を「登録要件違反」に設定して、入力パスワード検査処理を終了させる。一方、パスワード取得部１６１は、パスワードが登録要件を満たすと判定した場合には（ステップＳ１１：ＹＥＳ）、ステップＳ１３に進む。
【００６８】
ステップＳ１３において、システム制御部１６は、入力コスト算出処理を実行する。図１０は、本実施形態に係る認証装置１のシステム制御部１６の入力コスト算出処理の一例を示すフローチャートである。図１０に示すように、パスワード入力コスト算出部１６３は、位置番号ｉを１に設定する。また、パスワード入力コスト算出部１６３は、パスワードの入力コストを０に設定する（ステップＳ２１）。次いで、文字入力コスト取得部１６２は、位置番号ｉが１であるか否かを判定する（ステップＳ２２）。このとき、文字入力コスト取得部１６２は、位置番号ｉが１であると判定した場合には（ステップＳ２２：ＹＥＳ）、ステップＳ２３に進む。ステップＳ２３において、文字入力コスト取得部１６２は、直前文字を「該当なし」に設定して、ステップＳ２５に進む。一方、字入力コスト取得部１６２は、位置番号ｉが１ではないと判定した場合には（ステップＳ２２：ＮＯ）、ステップＳ２４に進む。ステップＳ２４において、文字入力コスト取得部１６２は、入力されたパスワードからｉ−１番目の文字を取得する。そして、文字入力コスト取得部１６２は、直前文字を、ｉ−１番目の文字に設定する。次いで、文字入力コスト取得部１６２は、ステップＳ２５に進む。
【００６９】
ステップＳ２５において、文字入力コスト取得部１６２は、入力されたパスワードからｉ番目の文字を取得する。そして、文字入力コスト取得部１６２は、次文字を、ｉ番目の文字に設定する。次いで、文字入力コスト取得部１６２は、入力コストテーブルから、直前文字又は直前文字の文字種と、次文字又は次文字の文字種とに対応する入力コストを、次文字の入力コストとして取得する（ステップＳ２６）。次いで、パスワード入力コスト算出部１６３は、入力コストテーブルから取得した入力コストをパスワードの入力コストに加算する（ステップＳ２７）。
【００７０】
次いで、パスワード入力コスト算出部１６３は、位置番号ｉが入力されたパスワードの文字数の値未満であるか否かを判定する（ステップＳ２８）。このとき、パスワード入力コスト算出部１６３は、位置番号ｉがパスワードの文字数の値未満であると判定した場合には（ステップＳ２８：ＹＥＳ）、ステップＳ２９に進む。ステップＳ２９において、パスワード入力コスト算出部１６３は、位置番号ｉに１を加算してステップＳ２２に進む。一方、パスワード入力コスト算出部１６３は、位置番号ｉがパスワードの文字数の値未満ではないと判定した場合には（ステップＳ２８：ＮＯ）、入力コスト算出処理を終了させる。
【００７１】
入力コスト算出処理が終了すると、図９に示すように、適否判定部１６４は、パスワードの入力コストが下限値未満であるか否かを判定する（ステップＳ１４）。このとき、適否判定部１６４は、入力コストが下限値未満であると判定した場合には（ステップＳ１４：ＹＥＳ）、ステップＳ１５に進む。ステップＳ１５において、適否判定部１６４は、判定結果を「不適切」に設定して、パスワード検査処理を終了させる。一方、適否判定部１６４は、入力コストが下限値未満ではないと判定した場合には（ステップＳ１４：ＮＯ）、ステップＳ１６に進む。
【００７２】
ステップＳ１６において、適否判定部１６４は、パスワードの入力コストが上限値よりも大きいか否かを判定する。このとき、適否判定部１６４は、入力コストが上限値よりも大きいと判定した場合には（ステップＳ１６：ＹＥＳ）、ステップＳ１５に進む。一方、適否判定部１６４は、入力コストが上限値よりも大きくはないと判定した場合には（ステップＳ１６：ＮＯ）、ステップＳ１７に進む。ステップＳ１７において、適否判定部１６４は、判定結果を「適切」に設定して、パスワード検査処理を終了させる。
【００７３】
パスワード検査処理が終了すると、図８に示すように出力部１６５は、判定結果が「適切」に設定されている否かを判定する（ステップＳ３）。このとき、出力部１６５は、判定結果が「適切」に設定されていると判定した場合には（ステップＳ３：ＹＥＳ）、ステップＳ４に進む。ステップＳ４において、出力部１６５は、入力されたユーザＩＤ及びパスワードを対応付けてユーザ情報ＤＢ３に登録する。次いで、出力部１６５は、登録完了画面のウェブページをユーザ端末２に出力して（ステップＳ５）、入力パスワード登録制御処理を終了させる。ユーザ端末２は、認証装置１から受信したウェブページに基づいて登録完了画面を表示する。登録完了画面は、入力されたパスワードが適切であったことを示す。例えば登録完了画面には、ユーザＩＤ及びパスワードの登録が完了したことを示すメッセージが表示される。
【００７４】
ステップＳ３において、出力部１６５は、判定結果が「適切」に設定されていないと判定した場合には（ステップＳ３：ＮＯ）、ステップＳ６に進む。ステップＳ６において、出力部１６５は、出力部１６５は、判定結果が「不適切」に設定されているか否かを判定する。このとき、出力部１６５は、判定結果が「不適切」に設定されていると判定した場合には（ステップＳ６：ＹＥＳ）、ステップＳ７に進む。ステップＳ７において、出力部１６５は、パスワードが不適切であることを示す登録パスワード再入力画面のウェブページをユーザ端末２に出力して、入力パスワード登録制御処理を終了させる。ユーザ端末２は、受信したウェブページに基づいて、図３Ａ又は図３Ｂに示すような登録パスワード再入力画面を表示する。
【００７５】
一方、出力部１６５は、判定結果が「不適切」に設定されていないと判定した場合には（ステップＳ６：ＮＯ）、ステップＳ８に進む。ステップＳ８において、出力部１６５は、パスワードが登録要件を満たさないことを示す登録パスワード再入力画面のウェブページをユーザ端末２に出力して、入力パスワード登録制御処理を終了させる。
【００７６】
［１−６．認証装置が端末装置に適用された場合］
次に、認証装置１が端末装置に適用された場合について図１Ｂを用いて説明する。図１Ｂは、認証装置１を端末装置に適用した場合の情報処理システムＳ２の概要構成の一例を示す図である。図２に示すように、情報処理システムＳ２は、端末装置として認証装置１を含む。この場合の認証装置１は例えばネットワークに接続可能であってもよい。また、２以上の認証装置１が存在してもよい。認証装置１は、例えば、スマートフォン、タブレット型コンピュータ、携帯電話機、パーソナルコンピュータ、ＰＤＡ、ＳＴＢ等であってもよい。認証装置１はユーザにより利用される。
【００７７】
例えば、認証装置１を利用するためのパスワードをユーザが設定することができるように認証装置１が構成されていてもよい。またユーザは、設定されたパスワードの変更が可能なように、認証装置１が構成されていてもよい。本実施形態において、認証装置１におけるパスワードの入力環境は単一である。記憶部１２には、入力環境に対応する入力コストテーブルが記憶されている。認証装置１は、入力コストテーブルに基づいて、入力されたパスワードの入力コストを算出して、パスワードの適否を判定する。
【００７８】
認証装置１が端末装置である場合の処理は、図８乃至図１０のフローチャートで示した処理と基本的に同様である。ただし、図８に示す入力パスワード登録制御処理において、出力部１６５は、操作部１３を用いて入力されたパスワードを取得する。また、出力部１６５は、パスワードが適切であると判定した場合には、パスワードを記憶部１２に記憶させる。また、出力部１６５は、登録完了画面、登録パスワード再入力画面等の画面を表示部１４に出力する。
【００７９】
以上説明したように、本実施形態によれば、システム制御部１６が、所定の登録要件に従うパスワードを取得する。また、システム制御部１６が、パスワードに含まれる複数の文字のそれぞれの入力操作のコストを取得する。また、システム制御部１６が、取得されたコストに基づいて、パスワードの入力コストを算出する。また、システム制御部１６が、算出された入力コストに基づいて、パスワードの適否を判定する。従って、適否の判定結果に基づき、安全性を確保しつつ、パスワードの入力負担を適切に保つことができる。
【００８０】
また、システム制御部１６が、パスワードに含まれる複数の文字のそれぞれを入力するための入力手段群の切り替え回数に基づくコストを取得してもよい。この場合、入力手段群の切り換え操作が可能な入力環境に対して適切な入力コストを算出することができる。
【００８１】
また、システム制御部１６が、パスワードに含まれる複数の文字のそれぞれを入力するための操作の回数に基づくコストを取得すしてもよい。この場合、文字によって操作回数が異なる入力環境に対して適切な入力コストを算出することができる。
【００８２】
また、システム制御部１６が、パスワードに含まれる複数の文字のそれぞれが割り当てられた入力手段の位置に基づくコストを取得してもよい。この場合、入力手段の位置によって入力負担が異なる入力環境に対して適切な入力コストを算出することができる。
【００８３】
また、システム制御部１６が、ユーザ操作によって入力されたパスワードを取得し、取得したパスワードに対して判定された適否を出力してもよい。この場合、ユーザにより入力されるパスワードの入力負担を適切に保つことができる。
【００８４】
［２．第２実施形態］
次に、第２実施形態について図１１を用いて説明する。第１実施形態においては、パスワードの入力環境が１つに限定されていた。本実施形態においては、入力環境が複数存在する。本実施形態においても、認証装置１は、例えばサーバ装置であってもよいし、端末装置であってもよい。以下に説明する点を除き、第２実施形態は第１実施形態と基本的に同様である。
【００８５】
認証装置１がサーバ装置である場合、情報処理システムＳ１におけるユーザ端末２として、複数の種類の端末装置が情報処理システムＳ１を利用可能である。ユーザ端末２の種類によって入力環境が異なる場合がある。
【００８６】
文字入力コスト取得部１６２は、複数の入力環境の中から実際にパスワードの入力に利用される入力環境を特定する。例えば、認証装置１とユーザ端末２がＨＴＴＰで通信する場合、文字入力コスト取得部１６２は、ユーザ端末２からのリクエストに含まれるユーザエージェント情報を用いてもよい。この場合、認証装置１は、ユーザエージェント情報に対応する入力環境を特定する。
【００８７】
同じ種類のユーザ端末２又は同一のユーザ端末２において、入力環境が変化してもよい。例えば、ユーザが入力環境を切り替えることを可能とするユーザ端末２が存在する。例えば、ソフトウェアキーボード等の入力手段群を画面に表示するユーザ端末２である場合、入力環境に切り換えにより、文字の入力方法、入力手段群のレイアウトや種類、入力手段群の切り換え方法等が異なる場合がある。このような場合、文字入力コスト取得部１６２は、例えばユーザ端末２に現在の入力環境の情報を要求してもよい。この要求に応じて、ユーザ端末２は、例えば現在の入力環境を示す入力環境ＩＤを認証装置１に送信する。文字入力コスト取得部１６２は、入力環境ＩＤを受信することによりユーザ端末２の入力環境を特定する。
【００８８】
認証装置１が端末装置である場合、ユーザ端末２と同様に、認証装置１における入力環境を切り替えることが可能な場合がある。この場合、例えば記憶部１２に現在の入力環境を示す情報が記憶されている。文字入力コスト取得部１６２は、この情報に基づいて認証装置１における入力環境を特定する。
【００８９】
記憶部１２には、複数の入力コストテーブルが記憶される。各入力コストテーブルは、例えばその入力コストテーブルに対応する入力環境を示す入力環境ＩＤに関連付けて記憶される。また、記憶部１２には、ユーザエージェント／入力環境変換テーブル変換テーブルが記憶されてもよい。ユーザエージェント／入力環境変換テーブルは、ユーザエージェント情報と、そのユーザエージェント情報が示すユーザ端末２の種類に対応する入力環境ＩＤとを対応付けて記憶するテーブルである。
【００９０】
図１１は、本実施形態に係る認証装置１のシステム制御部１６の入力コスト算出処理の一例を示すフローチャートである。図１１において図１０と同様の処理については同様の符号が付されている。図１１に示すように、文字入力コスト取得部１６２は、パスワードの入力環境を特定する（ステップＳ３１）。認証装置１がサーバ装置である場合、文字入力コスト取得部１６２は、例えばユーザ端末２から受信した登録要求からユーザエージェント情報を取得してもよい。この場合、文字入力コスト取得部１６２は、ユーザエージェント／入力環境変換テーブルから、ユーザエージェント情報に対応する入力環境ＩＤを取得する。また、文字入力コスト取得部１６２は、例えば登録要求を送信してきたユーザ端末２へ入力環境ＩＤの要求を送信してもよい。この要求に応じて、ユーザ端末２は、現在の入力環境を示す入力環境ＩＤを認証装置１へ送信する。認証装置１が端末装置である場合、文字入力コスト取得部１６２は、例えば記憶部１２から現在の入力環境を示す情報を取得してもよい。そして、文字入力コスト取得部１６２は、取得した情報に対応する入力環境ＩＤを取得してもよい。
【００９１】
ステップＳ３１を終えると、文字入力コスト取得部１６２は、入力環境に対応する入力コストテーブルを決定する（ステップＳ３２）。具体的に、文字入力コスト取得部１６２は、取得した入力環境ＩＤに対応する入力コストテーブルを、記憶部１２から特定する。次いで、システム制御部１６はＳ２１〜Ｓ２５を実行する。次いで、文字入力コスト取得部１６２は、ステップＳ３２で決定した入力コストテーブルから、直前文字又は直前文字の文字種と、次文字又は次文字の文字種とに対応する入力コストを、次文字コードの入力コストとして取得する（ステップＳ３３）。次いで、システム制御部１６は、ステップＳ２７〜Ｓ２９を実行する。
【００９２】
以上説明したように、本実施形態によれば、システム制御部１６が、パスワードの入力に利用される入力環境を特定し、特定された入力環境に対応する入力コストテーブルに基づいて、パスワードに含まれる文字の入力コストを取得する。従って、入力環境が予め定められていない場合であっても、パスワードの入力に利用される入力環境に対して適切な入力コストを算出することができる。
【００９３】
［３．第３実施形態］
次に、第３実施形態について図１２Ａ乃至図１４を用いて説明する。本実施形態において、認証装置１は、入力されたパスワードが適切ではないと判定した場合、適切であると判定されるようなパスワードの修正方法を出力する。これにより、ユーザによるパスワードの登録又は設定の負担を軽減することができる。本実施形態においても、認証装置１は、例えばサーバ装置であってもよいし、端末装置であってもよい。以下に説明する点を除き、第２実施形態は、第１実施形態又は第２実施形態と基本的に同様である。
【００９４】
入力されたパスワードが適切ではないと適否判定部１６４により判定された場合、出力部１６５は、入力されたパスワードの修正方法を決定する。パスワードの修正は、例えばパスワードの一部の変更、削除、入れ替えや、パスワードに対する文字の追加等であってもよい。こうした修正により、出力部１６５は、適否判定部１６４が適切であると判定するパスワードを生成又は取得する。そして、出力部１６５は、適否判定部１６４が適切であると判定するパスワードの修正方法を登録パスワード再入力画面に表示させる。例えばユーザに対する提案又は修正例として修正方法が表示されてもよい。この場合のユーザは、表示された修正方法通りに必ずしもパスワードを修正する必要はない。以下にパスワードの修正例を示す。以下の例では、説明の便宜上、図４Ｂに示す入力コストテーブルに基づいて入力コストが算出されるものとする。
【００９５】
先ず、パスワードの入力コストが下限値未満である場合の修正例を説明する。ユーザは、最初にパスワードとして「ｄＡＪ３９５ａ０」を入力したところ、入力コストが下限値未満であったとする。出力部１６５は、例えばパスワードに追加する文字数を修正方法として出力してもよい。文字数によって最低限増加する入力コストが決まる。出力部１６５は、例えば修正前のパスワードの入力コストと下限値との差に基づいて、追加する文字数を決定してもよい。図１２Ａは、登録パスワード再入力画面の表示例である。図１２Ａに示す登録パスワード再入力画面には、パスワードに３文字追加することを促すメッセージ２１１が表示されている。図１２Ｂは、ユーザによるパスワードの修正例を示す。メッセージ２１１を見たユーザは、先に入力したパスワードに３文字を追加する。これにより、入力コストが３以上増加する。図１２Ｂの例では、「ｄＡＪ３９５ａ０」の後に「１ｙｚ」が追加されている。従って入力コストが４増加する。
【００９６】
文字種によって入力コストが変化する場合がある。この場合、出力部１６５は、例えばパスワードの一部の文字を、その文字の文字種とは異なる文字種の文字に変更することを修正方法として出力してもよい。出力部１６５は、例えばパスワードの中から相対的に入力コストが低い文字種の文字を特定し、その文字種よりも入力コストが高い文字種を特定してもよい。このとき、出力部１６５は、例えば修正前のパスワードの入力コストと下限値との差に基づき、変更対象の文字及び変更後の文字種を特定してもよい。そして、出力部１６５は、特定した結果を修正方法として出力してもよい。図１２Ｃは、登録パスワード再入力画面の表示例である。図１２Ｃに示す登録パスワード再入力画面には、パスワードに含まれる「９」（５番目の文字）を、英大文字に変更することを促すメッセージ２１２が表示されている。図１２Ｄは、ユーザによるパスワードの修正例を示す。メッセージ２１２を見たユーザは、例えば図１２Ｄに示すように、パスワード中の「９」を「Ｐ」に変更する。修正前のパスワードにおいて、「９５」の入力コストは２である。修正後のパスワードにおいて、「Ｐ５」の入力コストは５である。従って、入力コストが３増加している。なお、出力部１６５は、例えば２文字以上の文字を変更する修正方法を出力してもよい。
【００９７】
直前に入力された文字又はその文字種によって次に入力される文字の入力コストが変化する場合がある。この場合、出力部１６５は、例えばパスワード中の或る文字と別の文字とを入れ替えることを修正方法として出力してもよい。出力部１６５は、例えば入れ替えを行うことによって、入れ替え前よりも入力コストが増加する２つの文字を特定してもよい。このとき、出力部１６５は、例えば修正前のパスワードの入力コストと下限値との差に基づき、入れ替える文字を特定してもよい。そして、出力部１６５は、特定した結果を修正方法として出力してもよい。図１２Ｅは、登録パスワード再入力画面の表示例である。図１２Ｅに示す登録パスワード再入力画面には、パスワードに含まれる「Ｊ」と「９」とを入れ替えることを促すメッセージ２１３が表示されている。図１２Ｆは、ユーザによるパスワードの修正例を示す。メッセージ２１３を見たユーザは、例えば図１２Ｆに示すように、パスワード中の「Ｊ」の位置と「９」の位置とを入れ替える。修正前のパスワードにおいて、「Ｊ３９５」の入力コストは６である。修正後のパスワードにおいて、「９３Ｊ５」の入力コストは８である。従って、入力コストが３増加している。なお、出力部１６５は、例えば３文字以上の文字を入れ替える修正方法を出力してもよい。
【００９８】
次に、パスワードの入力コストが上限値より大きい場合の修正例を説明する。ユーザは、最初にパスワードとして「ｏ４７２Ｓｊ５ｘｗ０ｅ」を入力したところ、入力コストが上限値より大きかったとする。例えば、出力部１６５は、パスワードから削除する文字を修正方法として出力してもよい。出力部１６５は、例えばパスワード中で入力コストが相対的に大きい文字を削除対象として特定してもよい。このとき、出力部１６５は、例えば修正前のパスワードの入力コストと上限値との差に基づいて、削除する文字及び削除する文字数を特定してもよい。そして、出力部１６５は、特定した結果を修正方法として出力してもよい。図１３Ａは、登録パスワード再入力画面の表示例である。図１３Ａに示す登録パスワード再入力画面には、パスワードに含まれる「Ｓｊ」を削除することを促すメッセージ２１４が表示されている。図１３Ｂは、ユーザによるパスワードの修正例を示す。メッセージ２１４を見たユーザは、例えば図１３Ｂに示すように、パスワードから「Ｓｊ」を削除する。修正前のパスワードにおいて、「Ｓｊ５」の入力コストは６である。修正後のパスワードにおいて、「５」の入力コストは１である。従って、入力コストが５減少している。
【００９９】
文字種によって入力コストが変化する場合、出力部１６５は、例えばパスワードの一部の文字の文字種を別の文字種の文字に変更することを修正方法として出力してもよい。この場合、出力部１６５は、入力コストが減少するように、変更対象の文字及び変更後の文字種を特定する。図１３Ｃは、登録パスワード再入力画面の表示例である。図１３Ｃに示す登録パスワード再入力画面には、パスワードに含まれる「０」を、アルファベットの小文字に変更することを促すメッセージ２１５が表示されている。図１３Ｄは、ユーザによるパスワードの修正例を示す。メッセージ２１４を見たユーザは、例えば図１３Ｄに示すように、パスワード中の「０」を「ａ」に変更する。修正前のパスワードにおいて、「０ｅ」の入力コストは４である。修正後のパスワードにおいて、「ａｅ」の入力コストは２である。従って、入力コストが２減少している。なお、出力部１６５は、例えば２文字以上の文字を変更する修正方法を出力してもよい。
【０１００】
直前に入力された文字又はその文字種によって次に入力される文字の入力コストが変化する場合、出力部１６５は、例えばパスワード中の或る文字と別の文字とを入れ替えることを修正方法として出力してもよい。この場合、出力部１６５は、入力コストが減少するように、入れ替える２つの文字を特定してもよい。図１３Ｅは、登録パスワード再入力画面の表示例である。図１３Ｅに示す登録パスワード再入力画面には、パスワードに含まれる「Ｓ」と「０」とを入れ替えることを促すメッセージ２１６が表示されている。図１３Ｆは、ユーザによるパスワードの修正例を示す。メッセージ２１６を見たユーザは、例えば図１３Ｆに示すように、パスワード中の「Ｓ」の位置と「０」の位置とを入れ替える。修正前のパスワードにおいて、「Ｓｊ」の入力コストは５であり、「０ｅ」の入力コストは４である。修正後のパスワードにおいて、「０ｊ」の入力コストは３であり、「Ｓｅ」の入力コストは４である。従って、入力コストが２減少している。なお、出力部１６５は、例えば３文字以上の文字を入れ替える修正方法を出力してもよい。
【０１０１】
出力部１６５は、例えば上述した種類の方法とは異なる種類の方法を出力してもよい。また、出力部１６５は、入力コストが下限値未満である場合と上限値より大きい場合とで、それぞれ予め定められた種類の方法を修正方法として出力してもよい。また、出力部１６５は、例えば所定の条件に基づいて、修正方法の複数の種類の中から何れかの種類を決定し、決定した種類の方法を修正方法として出力してもよい。また、出力部１６５は、複数の修正方法を組み合わせてもよい。
【０１０２】
図１４は、本実施形態に係る認証装置１のシステム制御部１６の入力パスワード登録制御処理の一例を示すフローチャートである。図１４において図８と同様の処理については同様の符号が付されている。図１４に示すように、システム制御部１６はステップＳ１〜Ｓ３を実行する。ステップＳ３において、出力部１６５は、判定結果が「適切」に設定されている場合には（ステップＳ３：ＹＥＳ）、ステップＳ４及びＳ５を実行する。一方、出力部１６５は、判定結果が「適切」に設定されてない場合には（ステップＳ３：ＮＯ）、ステップＳ６の判定を行う。ステップＳ６において、出力部１６５は、判定結果が「不適切」に設定されていない場合には（ステップＳ６：ＮＯ）、ステップＳ８を実行する。一方、出力部１６５は、判定結果が「不適切」に設定されている場合には（ステップＳ６：ＹＥＳ）、ステップＳ４１に進む。
【０１０３】
ステップＳ４１において、出力部１６５は、入力されたパスワードのコピーを生成する。次いで、出力部１６５は、パスワードのコピーを修正する（ステップＳ４２）。パスワードの入力コストが下限値未満であるとき、出力部１６５は、例えば入力コストと下限値未満とのコスト差を算出してもよい。出力部１６５は、例えばコスト差に相当する文字数を決定してもよい。そして、出力部１６５は、決定した文字数分の文字をパスワードのコピーに追加してもよい。この場合、出力部１６５は、追加する文字の入力コストが最小となるように、追加する文字を決定してもよい。また例えば、出力部１６５は、パスワードのコピーの中で変更する文字を決定してもよい。例えば、出力部１６５は、変更する文字をランダムに決定してもよいし、所定の条件に基づいて決定してもよい。例えば、出力部１６５は、入力コストテーブルを参照して、パスワードの中で入力コストが最も小さい文字を決定してもよい。次いで、出力部１６５は、例えば決定した文字の文字種とは異なる文字種の中で、入力コストが大きくなる文字種を変更後の文字種として決定してもよい。そして、出力部１６５は、パスワードのコピーにおいて決定した文字を、変更後の文字種の所定の文字に変更してもよい。また例えば、出力部１６５は、パスワードのコピーの中で位置を入れ替える複数の文字を決定してもよい。この場合、出力部１６５は、入れ替える文字をランダムに決定してもよいし、所定の条件に基づいて入れ替える文字を決定してもよい。例えば、出力部１６５は、入力コストテーブルを参照して、パスワードの中で入力コストが最も小さい複数の文字を決定してもよい。出力部１６５は、パスワードのコピーにおいて、決定した複数の文字の位置を互いに入れ替える。
【０１０４】
パスワードの入力コストが上限値より大きいとき、出力部１６５は、例えばパスワードのコピーの中から削除する文字を決定してもよい。このとき、出力部１６５は、例えば削除する文字をランダムに決定してもよいし、所定の条件に基づいて決定してもよい。例えば、出力部１６５は、パスワードの中で入力コストが最も大きい文字を決定してもよい。そして、出力部１６５は、パスワードのコピーから、決定した文字を削除してもよい。また例えば、出力部１６５は、パスワードのコピーの中で変更する文字を決定してもよい。例えば、出力部１６５は、変更する文字をランダムに決定してもよいし、所定の条件に基づいて決定してもよい。例えば、出力部１６５は、入力コストテーブルを参照して、パスワードの中で入力コストが最も大きい文字を決定してもよい。次いで、出力部１６５は、例えば決定した文字の文字種とは異なる文字種の中で、入力コストが小さくなる文字種を変更後の文字種として決定してもよい。そして、出力部１６５は、パスワードのコピーにおいて決定した文字を、変更後の文字種の所定の文字に変更してもよい。また例えば、出力部１６５は、パスワードのコピーの中で位置を入れ替える複数の文字を決定してもよい。この場合、出力部１６５は、入れ替える文字をランダムに決定してもよいし、所定の条件に基づいて入れ替える文字を決定してもよい。例えば、出力部１６５は、入力コストテーブルを参照して、パスワードの中で入力コストが最も大きい複数の文字を決定してもよい。出力部１６５は、パスワードのコピーにおいて、決定した複数の文字の位置を互いに入れ替える。
【０１０５】
ステップＳ４２を終えると、システム制御部１６はパスワード検査処理を実行する（ステップＳ４３）。パスワード検査処理及び入力コスト算出処理は、図９及び図１０に示した通りである。ただし、ステップＳ４３においては、修正されたパスワードのコピーに対して処理が実行される。次いで、出力部１６５は、判定結果が「適切」に設定されている否かを判定する（ステップＳ４４）。このとき、出力部１６５は、パスワード検査処理における判定結果が「適切」に設定されていないと判定した場合には（ステップＳ４４：ＮＯ）、ステップＳ４１に進む。パスワードのコピーが登録要件を満たしていない場合、又はパスワードのコピーが適切ではない場合、出力部１６５は、パスワードの新たなコピーを生成して（ステップＳ４１）、新たなコピーを修正する（ステップＳ４２）。このとき、出力部１６５は、例えばこれまでの修正において変更した文字、入れ替えた文字又は削除した文字とは異なる文字を変更、入れ替え又は削除する。また例えば、出力部１６５は、これまでの修正において変更した文字、入れ替えた文字又は削除した文字に追加して、更に変更、入れ替え又は削除する文字を決定してもよい。また例えば、出力部１６５は、追加する文字数を変更してもよい。こうして、出力部１６５は、パスワードの修正されたコピーが適切であると判定されるまで、パスワードのコピーを修正する。ステップＳ４２において、出力部１６５は、判定結果が「適切」に設定されていると判定した場合には（ステップＳ４４：ＹＥＳ）、ステップＳ４５に進む。ステップＳ４５において、出力部１６５は、登録パスワード再入力画面のウェブページをユーザ端末２に出力する。このとき、出力部１６５は、パスワードのコピーが適切であると判定された修正方法を示すメッセージをウェブページに追加する。ステップＳ４５を終えると、出力部１６５は、入力パスワード登録制御処理を終了させる。
【０１０６】
以上説明したように、本実施形態によれば、システム制御部１６が、パスワードが適切ではないと判定された場合、パスワードの修正方法であって、修正後のパスワードを適切であると判定される修正方法を出力する。従って、出力された修正方法に基づいてユーザがパスワードを修正することにより、修正されたパスワードの入力負担を適切に保つことができる。
【０１０７】
［４．第４実施形態］
次に、第４実施形態について図１５を用いて説明する。本実施形態において、認証装置１は、登録又は設定するパスワードを自動的に生成する。これによって認証装置１は、適否を判定するパスワードを取得する。本実施形態においても、認証装置１は、例えばサーバ装置であってもよいし、端末装置であってもよい。適否が判定されるパスワードの取得方法を除き、第４実施形態は、第１実施形態又は第２実施形態と同様である。
【０１０８】
認証装置１がサーバ装置である場合、パスワード取得部１６１は、例えば情報処理システムＳ１に会員登録を行うユーザのパスワードを生成してもよい。また、登録したパスワードを変更するとき、パスワード取得部１６１は、変更後の新しいパスワードを生成してもよい。認証装置１が端末装置である場合、例えば認証装置１、認証装置１の所定の機能又は所定のソフトウェアを利用するためのパスワードを設定するときに、パスワード取得部１６１はパスワードを生成してもよい。また、設定したパスワードを変更するとき、パスワード取得部１６１は、変更後の新しいパスワードを生成してもよい。
【０１０９】
出力部１６５は、パスワード取得部１６１により生成されて、適否判定部１６４により適切であると判定されたパスワードを出力する。認証装置１がサーバ装置である場合、出力部１６５は、例えばユーザ端末２の画面にパスワードを生成させてもよい。また例えば、出力部１６５は、対象のユーザ宛てにパスワードを記載した電子メールを送信してもよい。認証装置１が端末装置である場合、出力部１６５は、例えば表示部１４にパスワードを表示させてもよい。
【０１１０】
図１５は、本実施形態に係る認証装置１のシステム制御部１６のパスワード生成制御処理の一例を示すフローチャートである。認証装置１がサーバ装置である場合、例えば認証装置１がユーザ端末２からパスワードの生成又は変更の要求を受信したとき、システム制御部１６はパスワード生成制御処理を実行してもよい。認証装置１が端末装置である場合、例えばユーザが操作部１３を操作することによりパスワードの生成又は変更を要求したとき、システム制御部１６はパスワード生成制御処理を実行してもよい。図１５に示すように、パスワード取得部１６１は、パスワードを生成する（ステップＳ５１）。例えば、パスワード取得部１６１は、パスワードを構成する複数の文字のそれぞれをランダムに生成してもよい。このとき、パスワード取得部１６１は、例えば登録要件を満たすようにパスワードを生成してもよい。次いで、システム制御部１６は、パスワード検査処理を実行する（ステップＳ５２）。パスワード検査処理及び入力コスト算出処理は、図９及び図１０に示した通りである。ステップＳ５２においては、生成されたパスワードに対して処理が実行される。次いで、パスワード取得部１６１は、パスワード検査処理における判定結果が「適切」に設定されている否かを判定する（ステップＳ５３）。このとき、パスワード取得部１６１は、判定結果が「適切」に設定されていないと判定した場合には（ステップＳ５３：ＮＯ）、ステップＳ５１に進む。こうして、パスワード取得部１６１は、適切なパスワードが生成されるまでパスワードの生成を繰り返す。一方、パスワード取得部１６１は、判定結果が「適切」に設定されていると判定した場合には（ステップＳ５３：ＹＥＳ）、ステップＳ５４に進む。ステップＳ５４において、出力部１６５は、生成されたパスワードを登録する。認証装置１がサーバ装置である場合、出力部１６５は、ユーザＩＤとパスワードとを対応付けてユーザ情報ＤＢ３に登録する。認証装置１が端末装置である場合、出力部１６５は、パスワードを記憶部１２に記憶させる。次いで、出力部１６５は、生成されたパスワードを出力する（ステップＳ５５）。パスワードの出力方法については上述した通りである。ステップＳ５５を終えると、出力部１６５は、パスワード生成制御処理を終了させる。
【０１１１】
以上説明したように、本実施形態によれば、システム制御部１６が、登録要件に従うパスワードを生成し、生成されたパスワードが適切であると判定されるまでパスワードの生成を繰り返し、適切であると判定されたパスワードを出力する。従って、自動的に生成されるパスワードの入力負担を適切に保つことができる。
【０１１２】
［５．第５実施形態］
次に、第５実施形態について図１６を用いて説明する。本実施形態において、認証装置１は、自動的に生成したパスワードが適切ではない場合、生成したパスワードを修正することにより、適否を判定するパスワードを再生成する。毎回ランダムにパスワードを生成するよりも、パスワードを修正した方が適切なパスワードを早く生成することができる蓋然性がある。パスワード取得部１６１は、例えば第３実施形態で説明した方法でパスワードを修正してもよい。以下に説明する点を除き、第５実施形態は第４実施形態と同様である。
【０１１３】
図１６は、本実施形態に係る認証装置１のシステム制御部１６のパスワード生成制御処理の一例を示すフローチャートである。図１６において図１５と同様の処理については同様の符号が付されている。図１６に示すように、システム制御部１６は、ステップＳ５１〜Ｓ５３を実行する。ステップＳ５３において、パスワード取得部１６１は、判定結果が「適切」に設定されていない場合（ステップＳ５３：ＮＯ）、ステップＳ６１に進む。ステップＳ６１において、パスワード取得部１６１は、生成されたパスワードを修正することにより新たなパスワードを生成する。パスワードの修正方法は、図１４に示す入力パスワード登録制御処理のステップＳ４２におけるパスワードのコピーの修正方法と同様であってもよい。次いで、システム制御部１６は、パスワード検査処理を実行する（ステップＳ５２）。この場合、修正されたパスワードに対して処理が実行される。こうして、パスワード取得部１６１は、パスワードが適切であると判定されるまで、生成されたパスワードに対して修正を追加していく。ステップＳ５３において、判定結果が「適切」に設定されている場合（ステップＳ５３：ＹＥＳ）、出力部１６５は、ステップＳ５４及び５５を実行する。
【０１１４】
以上説明したように、本実施形態によれば、システム制御部１６が、生成されたパスワードが適切ではないと判定された場合、生成されたパスワードを修正することにより新たなパスワードを生成する。従って、生成されたパスワードとは関係なく新しいパスワードを生成するよりも、生成されるパスワードの入力負担を適切に保つことを容易にすることができる。
【０１１５】
［６．第６実施形態］
次に、第６実施形態について図１７を用いて説明する。本実施形態において、認証装置１は、ユーザ端末２の種類に基づいてパスワードの登録要件を決定する。本実施形態において、認証装置１は、例えばサーバ装置であってもよい。以下に説明する点を除き、第６実施形態は第１実施形態〜第５実施形態と同様である。
【０１１６】
例えばユーザ端末２の種類によって安全性が異なる場合がある。例えば、パーソナルコンピュータとスマートフォンとを比較する場合、パーソナルコンピュータを複数のユーザが共有する蓋然性は、スマートフォンを複数のユーザが共有する蓋然性よりも高い。従って、パーソナルコンピュータの方がスマートフォンよりも安全性が低い場合がある。そこで、パスワード取得部１６１は、例えばパーソナルコンピュータが利用される場合のパスワードの登録要件を、スマートフォンが利用される場合のパスワードの登録要件よりも厳しくしてもよい。登録要件を厳しくすることは、パスワードの複雑性が増すように登録要件を決定することである。例えば、パスワード取得部１６１は、パスワードの文字数の下限値を大きくしてもよいし、パスワードに含まれる文字種の数を多くしてもよい。登録要件の一例を挙げると、パーソナルコンピュータに対しては、例えば文字数が８以上であり、パスワードは必ず英大文字、英小文字及び数字のそれぞれを少なくとも１つ含むことであってもよい。スマートフォンに対しては、例えば文字数が６以上であり、パスワードは必ずアルファベット（大文字か小文字かを問わない）及び数字のそれぞれを少なくとも１つ含むことであってもよい。または、認証装置１は、例えばスマートフォンについての登録要件よりもパーソナルコンピュータについての登録要件よりも緩めてもよい。登録要件を緩めることは、パスワードの複雑性が低下するように登録要件を決定することである。
【０１１７】
複数種類のユーザ端末２に対して同一の登録要件が適用されてもよい。例えば、スマートフォン、携帯電話機、ＰＤＡに対して同一の登録要件が適用され、パーソナルコンピュータ、ＳＴＢに対して別の登録要件が適用されてもよい。また例えば、３つ以上の登録要件があってもよい。
【０１１８】
１人のユーザが複数種類のユーザ端末２を利用して情報処理システムＳ１を利用可能なように認証装置１が構成されてもよい。そして、システム制御部１６は、例えばユーザ端末２の種類ごとに異なる登録要件をパスワードに適用し、ユーザがユーザ端末２の種類ごとに異なるパスワードを設定可能にしてもよい。この場合、システム制御部１６は、１人のユーザに対してユーザ端末２の種類ごとに異なるパスワードをユーザ情報ＤＢ３に登録し、ユーザ端末２の種類ごとに異なるパスワードを用いてユーザの認証を行ってもよい。
【０１１９】
記憶部１２には、複数の登録要件情報が記憶される。登録要件情報は、登録要件を示す情報である。例えば、登録要件情報は、パスワードの文字数の下限値、上限値、パスワードに利用可能な文字種、必須の文字種等を含んでいてもよい。各登録要件情報は、例えば登録要件ＩＤと対応付けて記憶されている。登録要件ＩＤは、登録要件情報の識別情報である。また、記憶部１２には、ユーザエージェント／登録要件変換テーブルが記憶されてもよい。ユーザエージェント／登録要件変換テーブルは、ユーザエージェント情報と、そのユーザエージェント情報が示すユーザ端末２の種類に対応する登録要件ＩＤとを対応付けて記憶するテーブルである。
【０１２０】
図１７は、本実施形態に係る認証装置１のシステム制御部１６の入力パスワード検査処理の一例を示すフローチャートである。図１７において図９と同様の処理については同様の符号が付されている。図１７に示すように、パスワード取得部１６１は、入力されたパスワードの登録又はパスワードの生成を要求したユーザ端末２の種類を特定する（ステップＳ７１）。例えば、パスワード取得部１６１は、ユーザ端末２からの要求からユーザエージェント情報を取得してもよい。次いで、パスワード取得部１６１は、ユーザ端末２の種類に対応する登録要件を決定する（ステップＳ７２）。例えば、パスワード取得部１６１は、取得したユーザエージェント情報に対応する登録要件ＩＤをユーザエージェント／登録要件変換テーブルから取得する。次いで、パスワード取得部１６１は、登録要件ＩＤに対応する登録要件情報を記憶部１２から特定する。
【０１２１】
次いで、パスワード取得部１６１は、特定した登録要件情報に基づいて、パスワードが登録要件を満たすか否かを判定する（ステップＳ７３）。例えば、パスワードの文字数が下限値よりも少ない場合、又は上限値よりも多い場合、パスワード取得部１６１は、パスワードが登録要件を満たさないと判定する。また例えば、パスワードが、利用可能な文字種の文字とも必須の文字種の文字とも異なる文字を含む場合、パスワード取得部１６１は、パスワードが登録要件を満たさないと判定する。また例えば、パスワードが、必須の文字種の文字を含まない場合、パスワード取得部１６１は、パスワードが登録要件を満たさないと判定する。パスワード取得部１６１は、パスワードが登録要件を満たさないと判定した場合には（ステップＳ７３：ＮＯ）、ステップＳ１２に進む。一方、パスワード取得部１６１は、パスワードが登録要件を満たすと判定した場合には（ステップＳ７３：ＹＥＳ）、ステップＳ１３に進む。システム制御部１６は、第１実施形態と同様に、ステップＳ１３〜Ｓ１７を実行する。
【０１２２】
以上説明したように、本実施形態によれば、システム制御部１６が、パスワードの入力に用いられるユーザ端末２の種類を特定し、特定された種類に基づいて、登録要件を決定し、決定された登録要件に従うパスワードを取得する。従って、ユーザ端末２の種類に適した登録要件を課すことができる。
【０１２３】
なお、上記各実施形態においては、認証情報がパスワードに適用されていた。しかしながら、認証情報がパスワードとは異なる情報に適用されてもよい。例えば、認証に用いられる情報であって、ユーザにより入力可能であり且つ複雑性の条件が定められている情報に認証情報を適用することができる。例えば、ユーザの識別情報に認証情報が適用されてもよい。また、認証情報は、文字や記号を示すコードと異なるコードを含んでもよい。認証情報は、ユーザの操作により入力可能な文字が含まれればよい。例えば、認証情報は、画像、アイコン、シンボル、又は符号等を示すコードを含んでもよい。
【符号の説明】
【０１２４】
１  認証装置
２  ユーザ端末
３  ユーザ情報ＤＢ
１１  通信部
１２  記憶部
１３  操作部
１４  表示部
１５  入出力インターフェース
１６  システム制御部
１６ａ  ＣＰＵ
１６ｂ  ＲＯＭ
１６ｃ  ＲＡＭ
１７  システムバス
１６１  パスワード取得部
１６２  文字入力コスト取得部
１６３  パスワード入力コスト算出部
１６４  適否判定部
１６５  出力部
ＮＷ  ネットワーク
Ｓ１、Ｓ２  情報処理システム
【要約】
安全性を確保しつつ、認証情報の入力負担を適切に保つことを目的とする。情報処理装置は、所定の複雑性の条件に従う認証情報を取得する。情報処理装置は、認証情報に含まれる複数のコードのそれぞれの入力操作のコストを取得する。情報処理装置は、取得されたコストに基づいて、認証情報の入力コストを算出する。情報処理装置は、算出された入力コストに基づいて認証情報の適否を判定する。【図１Ａ】
0005690458.tif 000002
【図１Ｂ】
0005690458.tif 000003
【図２Ａ】
0005690458.tif 000004
【図２Ｂ】
0005690458.tif 000005
【図３Ａ】
0005690458.tif 000006
【図３Ｂ】
0005690458.tif 000007
【図４Ａ】
0005690458.tif 000008
【図４Ｂ】
0005690458.tif 000009
【図４Ｃ】
0005690458.tif 000010
【図５Ａ】
0005690458.tif 000011
【図５Ｂ】
0005690458.tif 000012
【図６Ａ】
0005690458.tif 000013
【図６Ｂ】
0005690458.tif 000014
【図７】
0005690458.tif 000015
【図８】
0005690458.tif 000016
【図９】
0005690458.tif 000017
【図１０】
0005690458.tif 000018
【図１１】
0005690458.tif 000019
【図１２Ａ】
0005690458.tif 000020
【図１２Ｂ】
0005690458.tif 000021
【図１２Ｃ】
0005690458.tif 000022
【図１２Ｄ】
0005690458.tif 000023
【図１２Ｅ】
0005690458.tif 000024
【図１２Ｆ】
0005690458.tif 000025
【図１３Ａ】
0005690458.tif 000026
【図１３Ｂ】
0005690458.tif 000027
【図１３Ｃ】
0005690458.tif 000028
【図１３Ｄ】
0005690458.tif 000029
【図１３Ｅ】
0005690458.tif 000030
【図１３Ｆ】
0005690458.tif 000031
【図１４】
0005690458.tif 000032
【図１５】
0005690458.tif 000033
【図１６】
0005690458.tif 000034
【図１７】
0005690458.tif 000035