(57)【要約】【課題】セキュリティを高めることが可能な認証方法等を提供する。【解決手段】コンピュータに、認証処理が成功した状態から移行した再度の認証が要求される状態の経過時間の増加に応じて、第１の認証処理から第２の認証処理に変更する処理を実行させ、前記第２の認証処理は、前記第１の認証処理では認証成功となる最小限の入力では認証を許可せず、前記最小限の入力よりも入力量が多い所定の入力を認証成功の条件とすることを特徴とする。【選択図】図４
2015102967.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
認証処理が成功した状態から移行した再度の認証が要求される状態の経過時間の増加に応じて、第１の認証処理から第２の認証処理に変更する処理を実行させ、
前記第２の認証処理は、前記第１の認証処理では認証成功となる最小限の入力では認証を許可せず、前記最小限の入力よりも入力量が多い所定の入力を認証成功の条件とする
ことを特徴とする認証方法。
【請求項２】
前記最小限の入力は、前記所定の入力の一部の入力である
ことを特徴とする請求項１記載の認証方法。
【請求項３】
前記最小限の入力は、前記所定の入力の前方の一部の入力である
ことを特徴とする請求項１記載の認証方法。
【請求項４】
前記第１の認証処理は、前記所定の入力によっても認証を許容する
ことを特徴とする請求項１記載の認証方法。
【請求項５】
前記第１の認証処理から第２の認証処理に変更する処理は、再度の認証が要求される状態への移行からの経過時間が所定の時間を越えた場合に行う
ことを特徴とする請求項１記載の認証方法。
【請求項６】
前記最小限の入力量を表示部へ出力する
請求項１に記載の認証方法。
【請求項７】
コンピュータに、
認証処理が成功した状態から移行した再度の認証が要求される状態の経過時間の増加に応じて、第１の認証処理から第２の認証処理に変更する処理を実行させ、
前記第２の認証処理は、前記第１の認証処理では認証成功となる最小限の入力では認証を許可せず、前記最小限の入力よりも入力量が多い所定の入力を認証成功の条件とする
プログラム。
【請求項８】
認証処理が成功した状態から移行した再度の認証が要求される状態の経過時間の増加に応じて、第１の認証処理から第２の認証処理に変更する処理を実行する実行部を備え、
前記第２の認証処理は、前記第１の認証処理では認証成功となる最小限の入力では認証を許可せず、前記最小限の入力よりも入力量が多い所定の入力を認証成功の条件とする
認証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、認証方法、プログラム及び認証装置に関する。
【背景技術】
【０００２】
従来、ドアロック時からの経過時間が短いほど一致照合に要する暗号コードの必要桁数を少なくするドアロック解除装置が開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開昭６２−１８７０６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のドアロック解除装置は、メモリに入力される暗号コードと同一の暗号コードを記憶しており、セキュリティが低い。
【０００５】
一つの側面では、本発明はセキュリティを高めることが可能な認証方法等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本願に開示する認証方法は、コンピュータに、認証処理が成功した状態から移行した再度の認証が要求される状態の経過時間の増加に応じて、第１の認証処理から第２の認証処理に変更する処理を実行させ、前記第２の認証処理は、前記第１の認証処理では認証成功となる最小限の入力では認証を許可せず、前記最小限の入力よりも入力量が多い所定の入力を認証成功の条件とする。
【発明の効果】
【０００７】
一つの側面では、セキュリティを高めることが可能となる。
【図面の簡単な説明】
【０００８】
【図１】情報処理装置のハードウェア群を示すブロック図である。
【図２】決定テーブルのレコードレイアウトを示す説明図である。
【図３】ハッシュ値テーブルのレコードレイアウトを示す説明図である。
【図４】パスワード入力画面を示す説明図である。
【図５】他のパスワード入力画面を示す説明図である。
【図６】ハッシュ値記憶処理の手順を示すフローチャートである。
【図７】パスワード入力画面生成処理の手順を示すフローチャートである。
【図８】ロック解除処理の手順を示すフローチャートである。
【図９】ロック解除処理の手順を示すフローチャートである。
【図１０】実施の形態２に係るパスワード入力画面を示す説明図である。
【図１１】変更処理の手順を示すフローチャートである。
【図１２】変更処理の手順を示すフローチャートである。
【図１３】変更後のパスワード入力画面を示す説明図である。
【図１４】パスワード入力処理手順を示すフローチャートである。
【図１５】パスワード入力画面のイメージを示す説明図である。
【図１６】上述した形態のコンピュータの動作を示す機能ブロック図である。
【図１７】実施の形態５に係るコンピュータのハードウェア群を示すブロック図である。
【発明を実施するための形態】
【０００９】
実施の形態１
以下実施の形態を、図面を参照して説明する。図１は情報処理装置１のハードウェア群を示すブロック図である。情報処理装置１は、パーソナルコンピュータ、携帯電話、スマートフォン、ＰＤＡ（Personal Digital Assistant）、またはゲーム機等である。以下では情報処理装置１をコンピュータ１であるものとして説明する。コンピュータ１は制御部としてのＣＰＵ（Central Processing Unit）１１、ＲＡＭ(Random Access Memory)１２、入力部１３、表示部１４、記憶部１５、通信部１６、及び時計部１８等を含む。ＣＰＵ１１は、バス１７を介してハードウェア各部と接続されている。ＣＰＵ１１は記憶部１５に記憶された制御プログラム１５Ｐに従いハードウェア各部を制御する。ＲＡＭ１２は例えばＳＲＡＭ（Static RAM）、ＤＲＡＭ(Dynamic RAM)、フラッシュメモリ等である。ＲＡＭ１２は、記憶部としても機能し、ＣＰＵ１１による各種プログラムの実行時に発生する種々のデータを一時的に記憶する。
【００１０】
入力部１３はマウスまたはキーボード、マウスまたはタッチパネル等の入力デバイスであり、受け付けた操作情報をＣＰＵ１１へ出力する。なお、実施形態においてはパスワードを手入力する例を挙げて説明するが、マイク（図示せず）からパスワードを音声により入力しても良い。表示部１４は液晶ディスプレイまたは有機ＥＬ（electroluminescence）ディスプレイ等であり、ＣＰＵ１１の指示に従い各種情報を表示する。通信部１６は通信モジュールであり、インターネットまたは公衆回線網等の通信網Ｎを介して図示しない他のコンピュータとの間で情報の送受信を行う。
【００１１】
時計部１８は日時をＣＰＵ１１へ出力する。記憶部１５はハードディスクまたは大容量メモリであり、制御プログラム１５Ｐ、決定テーブル１５１、及びハッシュ値テーブル１５２等を記憶している。
【００１２】
図２は決定テーブル１５１のレコードレイアウトを示す説明図である。決定テーブル１５１は経過時間フィールド及び必要文字列数フィールド等を含む。経過時間フィールドには、コンピュータ１への操作入力がロックされパスワードの入力を要求する状態（以下、ロック状態という）に移行してから、入力部１３から入力情報を受け付けるまでの経過時間が記憶されている。必要文字列数フィールドには、ロック解除に必要とされるパスワードの文字列数が、経過時間に対応付けて記憶されている。本実施形態ではパスワードの全ての文字列（以下、全文字列という）数を８文字とする。
【００１３】
図２の例では、ロック状態からの経過時間が０秒以上３秒未満である場合、必要文字列数は３と記憶されている。経過時間が長くなるほど、正当な使用者とは異なる第三者による操作の可能性が高くなることから、経過時間が長い程、必要文字列数は大きな値としている。３秒以上５秒未満の場合、必要文字列数は４秒と記憶されている。５秒以上の場合は、全文字列数である８と記憶されている。なお、実施形態で示す数値例は一例であり、これに限るものではない。また、決定テーブル１５１の内容は、入力部１３からユーザが適宜の値に変更することが可能である。
【００１４】
図３はハッシュ値テーブル１５２のレコードレイアウトを示す説明図である。ハッシュ値テーブル１５２は、文字列数フィールド及びハッシュ値フィールドを含む。本実施形態では、パスワードは全文字列でabcdefghの８文字（最小限の入力よりも入力量が多い所定の入力）とする。また一部の文字列は、パスワードの先頭から連続する所定の文字列（前方の一部）である。例えば、文字列数が5文字の場合、abcdeとなる。文字列数フィールドにはパスワードの全文字列数を上限とする数字が１から順に記憶されている。なお、一部の入力であれば良く、必ずしも先頭から連続する文字列である必要は無い。例えば、３文字の場合、agh等であっても良い。なお、図３では説明のためabc等の表記を行っているが、実際には記憶しなくても良い。ハッシュ値フィールドには、文字列数に対応付けてハッシュ値（基準データ）が記憶されている。なお、文字列数は１から８までの全ての文字列数を記憶しているが、一部、例えば３から８までの文字列数を記憶しても良い。
【００１５】
ＣＰＵ１１はパスワードが設定された場合、記憶部１５に記憶したハッシュ関数に基づき、全文字列、及び、７種の一部の文字列について、ハッシュ値を生成（以下、場合により算出という）する。具体的には、ＣＰＵ１１は、aのハッシュ値、abのハッシュ値、abcのハッシュ値の如く、基準データとなるハッシュ値を順に生成し、ハッシュ値テーブル１５２に記憶する。ＣＰＵ１１は、生成したハッシュ値を文字列数に対応付けて記憶する。なお、本実施形態ではハッシュ値を用いる例を挙げたが、これに限るものではなく、他の暗号化処理により基準データを算出しても良い。
【００１６】
図４はパスワード入力画面を示す説明図である。ＣＰＵ１１は、ロック状態において、入力部１３から何らかの入力情報が入力されたか否かを判断する。ＣＰＵ１１はロック状態に移行してから入力情報が入力されるまでの経過時間を、時計部１８を参照して算出する。ＣＰＵ１１は、経過時間に対応する必要文字列数（最小限の入力量）を決定テーブル１５１から読み出す。ＣＰＵ１１は、読み出した必要文字列に対応する数字を表示部１４に表示する。図４の例では、「最初の３文字入力して下さい。」と表示されている。またＣＰＵ１１は、最初の３文字を入力させるべく、決定した文字列数３を特定するための情報を表示する。例えば、図４のパスワードボックス１４１には、最初の３つの文字列数を入力する３つの欄が表示される。またＣＰＵ１１は、全文字列数から決定した文字列数を減じた値に対応する欄（５つの欄）に、マークとしてアスタリスクを表示する。ＣＰＵ１１は、パスワードボックス１４１から決定した文字列数分のパスワードを、パスワードの先頭から順に入力部１３から受け付ける。
【００１７】
図５は他のパスワード入力画面を示す説明図である。図５に示すように、決定した文字列数に対応するパスワードボックス１４１を表示しても良い。図５の例では３の文字列を入力させるために３つの入力欄が表示されている。なお、図４及び図５に示した例は一例であり、決定した文字列数を特定できる形態であれば他の表示形態であっても良い。ＣＰＵ１１は、ＯＫボタン１４２の入力を受け付けた場合、入力された一部のパスワードに基づきハッシュ値（比較データ）を生成する。なお、ＯＫボタン１４２の入力に変えて、リターンキーの入力を受け付けるようにしても良い。ＣＰＵ１１は、決定した文字列数に対応するハッシュ値を、ハッシュ値テーブル１５２から読み出す。ＣＰＵ１１は、２つのハッシュ値が一致するか否かを判断する。ＣＰＵ１１は、一致すると判断した場合、ロックを解除する。
【００１８】
以上のハードウェア群において各種ソフトウェア処理を、フローチャートを用いて説明する。図６はハッシュ値記憶処理の手順を示すフローチャートである。ＣＰＵ１１は、最低文字列数を受け付ける（ステップＳ６１）。最低文字列数は、ロック解除に要求される最低限の文字列数である。本実施形態では３としている。ＣＰＵ１１は、ロック解除用のパスワードの入力を受け付ける（ステップＳ６２）。ＣＰＵ１１は、パスワードをＲＡＭ１２に一時的に記憶する。ＣＰＵ１１は、全文字列数を算出する（ステップＳ６３）。ＣＰＵ１１は、先頭から最低文字数分の文字を順に抽出する（ステップＳ６４）。ＣＰＵ１１は、抽出した文字列のハッシュ値を生成する（ステップＳ６５）。
【００１９】
ＣＰＵ１１は、最低文字列数に対応付けてハッシュ値を、ハッシュ値テーブル１５２に記憶する（ステップＳ６６）。ＣＰＵ１１は、次に連続する文字をステップＳ６４で抽出した文字に追加する（ステップＳ６７）。例えばステップＳ６４で抽出した文字が３文字abcである場合、dを追加してabcdとする。ＣＰＵ１１は、追加した文字列のハッシュ値を生成する（ステップＳ６８）。ＣＰＵ１１は、文字列数に対応付けて、ハッシュ値を、ハッシュ値テーブル１５２に記憶する（ステップＳ６９）。
【００２０】
ＣＰＵ１１は、追加した文字列数は、ステップＳ６３で算出した全文字列数に達したか否かを判断する（ステップＳ６１０）。ＣＰＵ１１は、達していないと判断した場合（ステップＳ６１０でＮＯ）、ステップＳ６７へ処理を戻す。これにより、全ての文字列についてのハッシュ値が順次生成される。ＣＰＵ１１は、全文字列数に達したと判断した場合（ステップＳ６１０でＹＥＳ）、処理をステップＳ６１１へ移行させる。ＣＰＵ１１は、ステップＳ６２で受け付けたパスワードをＲＡＭ１２から消去する（ステップＳ６１１）。
【００２１】
図７はパスワード入力画面生成処理の手順を示すフローチャートである。ＣＰＵ１１は、ロック状態に移行する（ステップＳ７１）。例えば、ＣＰＵ１１は、ユーザがログオフした場合、または、一定時間操作を受け付けなかった場合にロック状態に移行する。ＣＰＵ１１は、入力部１３から入力情報を受け付けたか否かを判断する（ステップＳ７２）。ＣＰＵ１１は、入力情報を受け付けていないと判断した場合（ステップＳ７２でＮＯ）、受け付けるまで待機する。ＣＰＵ１１は、入力情報を受け付けたと判断した場合（ステップＳで７２ＹＥＳ）、処理をステップＳ７３へ移行させる。
【００２２】
ＣＰＵ１１は、ステップＳ７１にてロック状態へ移行してから、ステップＳ７２で入力情報を受け付けるまでの経過時間を算出する（ステップＳ７３）。すなわちＣＰＵ１１は、認証処理が成功した状態から移行した再度の認証が要求される状態の経過時間を算出する。ＣＰＵ１１は、経過時間に対応する必要文字列数を決定テーブル１５１から読み出す（ステップＳ７４）。ＣＰＵ１１は、必要文字列数を表示部１４に表示する（ステップＳ７５）。なお、必要文字列数は必ずしも表示する必要は無い。ＣＰＵ１１は、必要文字列数分の入力枠を、パスワードボックス１４１として、表示部１４に表示する（ステップＳ７６）。
【００２３】
図８はロック解除処理の手順を示すフローチャートである。ＣＰＵ１１は、入力部１３から、文字列の入力を受け付ける（ステップＳ８１）。ＣＰＵ１１は、ＯＫボタン１４２の入力を受け付けたか否かを判断する（ステップＳ８２）。ＣＰＵ１１は、ＯＫボタン１４２の入力を受け付けていないと判断した場合（ステップＳ８２でＮＯ）、ステップＳ８１に処理を戻す。ＣＰＵ１１は、受け付けたと判断した場合（ステップＳ８２でＹＥＳ）、ステップＳ８３へ移行する。ＣＰＵ１１は、ステップＳ８１で入力された文字列が、ステップＳ７４で読み出した必要文字列数より少ない文字列数であるか否かを判断する（ステップＳ８３）。
【００２４】
ＣＰＵ１１は、少ないと判断した場合（ステップＳ８３でＹＥＳ）、ロックを維持する（ステップＳ８８）。ＣＰＵ１１は、少なくないと判断した場合（ステップＳ８３でＮＯ）、入力された文字列についてのハッシュ値を算出する（ステップＳ８４）。ＣＰＵ１１は、必要文字列数に対応するハッシュ値を、ハッシュ値テーブル１５２から読み出す（ステップＳ８５）。ＣＰＵ１１は、ステップＳ８５において読み出したハッシュ値と、ステップＳ８４で算出したハッシュ値とが一致するか否か判断する（ステップＳ８６）。
【００２５】
ＣＰＵ１１は、一致しないと判断した場合（ステップＳ８６でＮＯ）、ロックを維持する（ステップＳ８８）。ＣＰＵ１１は、一致すると判断した場合（ステップＳ８６でＹＥＳ）、ロックを解除する（ステップＳ８７）。これによりロック状態移行後直ぐにロック解除を希望する際は、少ない桁数のパスワードの入力ですむことから、利便性を高めることが可能となる。またパスワードそのものをコンピュータ１に記憶せず、ロックを解除でき、セキュリティを高めることが可能となる。ロック解除の際に必要な文字列数の情報が表示されるため、ユーザはスムーズにロック解除を行うことが可能となる。さらにロック解除に必要な文字数が表示されるため、よりスムーズにパスワードを入力することが可能となる。
【００２６】
実施の形態２
実施の形態２は必要文字列数以上の入力をも受け付ける形態に関する。図９はロック解除処理の手順を示すフローチャートである。ＣＰＵ１１は、文字列の入力を受け付ける（ステップＳ９１）。図１０は実施の形態２に係るパスワード入力画面を示す説明図である。ＣＰＵ１１は、実施の形態１のステップＳ７５と同じく必要文字列数をパスワード入力画面に表示する。ＣＰＵ１１は、パスワードボックス１４１をパスワード入力画面に表示する。実施の形態２においては全文字列数が入力できる大きさのパスワードボックス１４１が予め表示される。
【００２７】
ＣＰＵ１１は、ＯＫボタン１４２を受け付けたか否かを判断する（ステップＳ９２）。ＣＰＵ１１は、ＯＫボタン１４２を受け付けていないと判断した場合（ステップＳ９２でＮＯ）、処理をステップＳ９１に戻す。ＣＰＵ１１は、ＯＫボタン１４２を受け付けたと判断した場合（ステップＳ９２でＹＥＳ）、ステップＳ９３へ移行する。ＣＰＵ１１は、ステップＳ９２でＯＫボタン１４２が入力されることにより受け付けた文字列が、ステップＳ７４で読み出した必要文字列数より少ない文字列数であるか否かを判断する（ステップＳ９３）。
【００２８】
ＣＰＵ１１は、少ないと判断した場合（ステップＳ９３でＹＥＳ）、ロックを維持する（ステップＳ９８）。ＣＰＵ１１は、少なくないと判断した場合（ステップＳ９３でＮＯ）、ステップＳ９４へ移行する。ＣＰＵ１１はステップＳ９２でＯＫボタン１４２が入力されることにより受け付けた文字列のハッシュ値を算出する（ステップＳ９４）。ＣＰＵ１１は、ステップＳ９２でＯＫボタン１４２の入力により受け付けた入力文字列の数に対応するハッシュ値を、ハッシュ値テーブル１５２から読み出す（ステップＳ９５）。ＣＰＵ１１は、ステップＳ９５において読み出したハッシュ値と、ステップＳ９４で算出したハッシュ値とが一致するか否か判断する（ステップＳ９６）。
【００２９】
ＣＰＵ１１は、一致しないと判断した場合（ステップＳ９６でＮＯ）、ロックを維持する（ステップＳ９８）。ＣＰＵ１１は、一致すると判断した場合（ステップＳ９６でＹＥＳ）、ロックを解除する（ステップＳ９７）。なお、本実施形態では必要文字列数以上の文字列であればロックを解除することとしたが、必要文字列数と、全文字列数との２つについてのみ、ハッシュ値を読み出し、ロック解除を行うようにしても良い。これにより、ユーザが予め設定した全文字列を入力した場合でも、ロックを解除することが可能となる。
【００３０】
本実施の形態２は以上の如きであり、その他は実施の形態１と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【００３１】
実施の形態３
実施の形態３は必要文字列数を変更する形態に関する。図１１及び図１２は変更処理の手順を示すフローチャートである。ＣＰＵ１１は、ロック状態に移行する（ステップＳ１１１）。ＣＰＵ１１は、入力部１３から入力情報を受け付けたか否かを判断する（ステップＳ１１２）。ＣＰＵ１１は、入力情報を受け付けていないと判断した場合（ステップＳ１１２でＮＯ）、受け付けるまで待機する。ＣＰＵ１１は、入力情報を受け付けたと判断した場合（ステップＳで１１２でＹＥＳ）、処理をステップＳ１１３へ移行させる。
【００３２】
ＣＰＵ１１は、ステップＳ１１１にてロック状態へ移行してから、ステップＳ１１２で入力情報を受け付けるまでの経過時間を算出する（ステップＳ１１３）。ＣＰＵ１１は、経過時間に対応する必要文字列数を決定テーブル１５１から読み出す（ステップＳ１１４）。ＣＰＵ１１は、必要文字列数を表示部１４に表示する（ステップＳ１１５）。ＣＰＵ１１は、必要文字列数分の入力枠を、パスワードボックス１４１として、表示部１４に表示する（ステップＳ１１６）。
【００３３】
ＣＰＵ１１は、入力枠を表示してから、一定時間（例えば５秒）を経過したか否かを判断する（ステップＳ１１７）。ＣＰＵ１１は、経過していないと判断した場合（ステップＳ１１７でＮＯ）、ステップＳ１１８へ移行する。ＣＰＵ１１は、入力部１３から文字列の入力を受け付ける（ステップＳ１１８）。ＣＰＵ１１は、ＯＫボタン１４２の入力を受け付けたか否かを判断する（ステップＳ１１９）。ＣＰＵ１１は、ＯＫボタン１４２を受け付けていないと判断した場合（ステップＳ１１９でＮＯ）、処理をステップＳ１１７に戻す。
【００３４】
ＣＰＵ１１は、一定時間を経過したと判断した場合（ステップＳ１１７でＹＥＳ）、ユーザがパスワードを入力できる状態にもかかわらず放置したとして、ステップＳ１２０へ処理を移行させる。ＣＰＵ１１は、変更後の必要文字列数が、全文字列数に達したか否かを判断する（ステップＳ１２０）。上述した例では、全文字列数は８であるので、必要文字列数が８に達したか否かを判断する。ＣＰＵ１１は、全文字列数に達していないと判断した場合（ステップＳ１２０でＮＯ）、処理をステップＳ１２１へ移行させる。
【００３５】
ＣＰＵ１１は、必要文字列数を変更する（ステップＳ１２１）。必要文字列数の変更は一文字追加する他、予め定めた複数の文字を追加する形態であっても良い。ＣＰＵ１１は、変更後の必要文字列数を表示部１４に表示する（ステップＳ１２２）。ＣＰＵ１１は、変更後の必要文字列数分の入力枠を表示する（ステップＳ１２３）。
【００３６】
図１３は変更後のパスワード入力画面を示す説明図である。上述した例では必要文字列数は３であったので、１増加し、変更後の必要文字列数は４となる。図１３に示すように、「最低４文字入力して下さい」と変更後の必要文字列数が表示される。また４桁の空欄の入力枠と、アスタリスクが重畳された４桁の枠とが、パスワードボックス１４１として表示される。なお、ステップＳ１１６及びＳ１２３の処理を省略し、図１０の如くアスタリスクを非表示としても良い。
【００３７】
ＣＰＵ１１は、ステップＳ１２３の後、処理を再びステップＳ１１７に戻す。これにより、入力をいつまでも行わない場合、必要文字列数が徐々に増加することとなる。なお、変更処理後は、Ｓ１１７における一定時間の起算時は、ステップＳ１２１〜Ｓ１２３のいずれかの処理時とすればよい。ＣＰＵ１１は、変更後の必要文字列数が全文字列数に達したと判断した場合（ステップＳ１２０でＹＥＳ）、もはやこれ以上必要文字列数を変更することができないことから、ステップＳ１２１０へ処理を移行させる。ＣＰＵ１１は、文字列の入力を受け付ける（ステップＳ１２１０）。ＣＰＵ１１は、ＯＫボタン１４２の入力を受け付けたか否かを判断する（ステップＳ１２１１）。
【００３８】
ＣＰＵ１１は、ＯＫボタン１４２の入力を受け付けていないと判断した場合（ステップＳ１２１１でＮＯ）、処理をステップＳ１２１０へ戻す。ＣＰＵ１１は、ＯＫボタン１４２の入力を受け付けたと判断した場合（ステップＳ１２１１でＹＥＳ）、処理をステップＳ１２４へ移行させる。ＣＰＵ１１は、ステップＳ１１９においてＯＫボタン１４２の入力を受け付けたと判断した場合（ステップＳ１１９でＹＥＳ）、同じく処理をステップＳ１２４へ移行させる。
【００３９】
ＣＰＵ１１は、ステップＳ１１９またはＳ１２１１でＯＫボタン１４２が入力されることにより受け付けた文字列が、ステップＳ１１４で読み出した最初の必要文字列数、または、ステップＳ１２１にて変更後の必要文字列数よりも少ない文字列数であるか否かを判断する（ステップＳ１２４）。
【００４０】
ＣＰＵ１１は、少ないと判断した場合（ステップＳ１２４でＹＥＳ）、ロックを維持する（ステップＳ１２９）。ＣＰＵ１１は、少なくないと判断した場合（ステップＳ１２４でＮＯ）、ステップＳ１２５へ移行する。ＣＰＵ１１はステップＳ１１９またはＳ１２１１でＯＫボタン１４２が入力されることにより受け付けた文字列のハッシュ値を算出する（ステップＳ１２５）。ＣＰＵ１１は、ステップＳ１１９またはＳ１２１１でＯＫボタン１４２の入力により受け付けた入力文字列の数に対応するハッシュ値を、ハッシュ値テーブル１５２から読み出す（ステップＳ１２６）。ＣＰＵ１１は、ステップＳ１２６において読み出したハッシュ値と、ステップＳ１２５で算出したハッシュ値とが一致するか否か判断する（ステップＳ１２７）。
【００４１】
ＣＰＵ１１は、一致しないと判断した場合（ステップＳ１２７でＮＯ）、ロックを維持する（ステップＳ１２９）。ＣＰＵ１１は、一致すると判断した場合（ステップＳ１２７でＹＥＳ）、ロックを解除する（ステップＳ１２８）。これにより、利便性を考慮して必要文字列数を少なくした後に、いつまでもパスワードを入力しない場合、必要文字列数を適宜増加させることで、セキュリティの強化を図ることが可能となる。
【００４２】
本実施の形態３は以上の如きであり、その他は実施の形態１から実施の形態２と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【００４３】
実施の形態４
実施の形態４はリアルタイムでの認証処理に関する。図１４はパスワード入力処理手順を示すフローチャートである。ＣＰＵ１１は、ステップＳ７４で読み出した必要文字列数を表示部１４に表示する（ステップＳ１４１）。ＣＰＵ１１は、パスワードボックス１４１を表示する（ステップＳ１４２）。図１５はパスワード入力画面のイメージを示す説明図である。図１５Ａはパスワード入力前に表示される画面例である。ユーザは入力部１３から、パスワードボックス１４１へパスワードを入力する。この際、ＣＰＵ１１は、ＯＫボタン１４２を表示しないか、または図１５Ａに示すように操作入力を受け付けることができないよう、点線にてＯＫボタン１４２を表示する。
【００４４】
ＣＰＵ１１は、文字列の入力を受け付ける（ステップＳ１４３）。ＣＰＵ１１は、ステップＳ７４で読み出した必要文字列数に達したか否かを判断する（ステップＳ１４４）。ＣＰＵ１１は、達していないと判断した場合（ステップＳ１４４でＮＯ）、処理をステップＳ１４３に戻す。この場合、ＣＰＵ１１は、図１５Ａに示す画面を表示する。ＣＰＵ１１は、必要文字列数に達したと判断した場合（ステップＳ１４４でＹＥＳ）、処理をステップＳ１４５へ移行させる。
【００４５】
ＣＰＵ１１はＳ１４４でＹＥＳと判断した時点でＳ１４３により受け付けた文字列のハッシュ値を算出する（ステップＳ１４５）。ＣＰＵ１１は、必要文字列の数に対応するハッシュ値を、ハッシュ値テーブル１５２から読み出す（ステップＳ１４６）。ＣＰＵ１１は、ステップＳ１４６において読み出したハッシュ値と、ステップＳ１４５で算出したハッシュ値とが一致するか否か判断する（ステップＳ１４７）。
【００４６】
ＣＰＵ１１は、一致しないと判断した場合（ステップＳ１４７でＮＯ）、ロックを維持する（ステップＳ１４１０）。また、ＣＰＵ１１は、図１５Ａの画面の表示を維持する。ＣＰＵ１１は、一致すると判断した場合（ステップＳ１４７でＹＥＳ）、処理をステップＳ１４８へ移行する。ＣＰＵ１１は、入力された必要文字列数分のパスワードが正当であることを示す情報を表示部１４に表示する（ステップＳ１４８）。
【００４７】
図１５Ｂは正当であることを示す情報が表示された画面である。正当であることを示す情報は例えば、「ＯＫボタンを押して下さい」であればよい。また図１５Ａの画面で点線であり、ＯＫボタン１４２の操作入力を受け付けていなかった場合に、ＯＫボタン１４２を、操作入力を受け付けることができるよう実線にて表示しても良い。正当であることを示す情報はあくまで一例である。ユーザが必要文字列数分のパスワード（本例では３）を入力し、当該パスワードが正当であったと認識させる形態であれば、他の形態であっても良い。例えば図示しないＬＥＤを点灯させても良く、また図示しないスピーカから音声を出力するようにしても良い。
【００４８】
ＣＰＵ１１は、ＯＫボタン１４２の入力を受け付けた場合、ロックを解除する（ステップＳ１４９）。なお、本実施形態では、必要文字列数分のパスワードが入力された直後にハッシュ値を生成し、基準となるハッシュ値と一致するか否かを判断し、一致した場合に、正当であることを示す情報を表示した。ただし、正当であることを示す情報を表示することなく、直接ステップＳ１４９のロック解除処理を行っても良い。これにより、ロック解除をより短時間で行うことが可能となる。
【００４９】
本実施の形態４は以上の如きであり、その他は実施の形態１から実施の形態３と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【００５０】
実施の形態５
図１６は上述した形態のコンピュータ１の動作を示す機能ブロック図である。ＣＰＵ１１が制御プログラム１５Ｐを実行することにより、コンピュータ１は以下のように動作する。記憶処理部１６１は、予め設定されたパスワードの全ての文字列及び一部の文字列に応じて生成される基準データを記憶部１５に記憶する。決定部１６２は、前記パスワードの入力を要求する状態へ移行してからの経過時間に基づき、文字列数を決定する。生成部１６３は決定した文字列数以上の文字列を受け付けた場合に、受け付けた文字列に応じて比較データを生成する。判断部１６４は、前記比較データと前記基準データとが一致するか否かを判断する。
【００５１】
図１７は実施の形態５に係るコンピュータ１のハードウェア群を示すブロック図である。コンピュータ１を動作させるためのプログラムは、ディスクドライブ等の読み取り部１０ＡにCD-ROM、DVD（Digital Versatile Disc）ディスク、メモリーカード、またはUSB(Universal Serial Bus)メモリ等の可搬型記録媒体１Ａを読み取らせて記憶部１５に記憶しても良い。また当該プログラムを記憶したフラッシュメモリ等の半導体メモリ１Ｂをコンピュータ１内に実装しても良い。さらに、当該プログラムは、インターネット等の通信網Ｎを介して接続される他のサーバコンピュータ（図示せず）からダウンロードすることも可能である。以下に、その内容を説明する。
【００５２】
図１７に示すコンピュータ１は、上述した各種ソフトウェア処理を実行するプログラムを、可搬型記録媒体１Ａまたは半導体メモリ１Ｂから読み取り、或いは、通信網Ｎを介して他のサーバコンピュータ（図示せず）からダウンロードする。当該プログラムは、制御プログラム１５Ｐとしてインストールされ、ＲＡＭ１２にロードして実行される。これにより、上述したコンピュータ１として機能する。
【００５３】
本実施の形態５は以上の如きであり、その他は実施の形態１から４と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【００５４】
以上の実施の形態１乃至５を含む実施形態に関し、さらに以下の付記を開示する。
【００５５】
（付記１）
コンピュータに、
認証処理が成功した状態から移行した再度の認証が要求される状態の経過時間の増加に応じて、第１の認証処理から第２の認証処理に変更する処理を実行させ、
前記第２の認証処理は、前記第１の認証処理では認証成功となる最小限の入力では認証を許可せず、前記最小限の入力よりも入力量が多い所定の入力を認証成功の条件とすることを特徴とする認証方法。
（付記２）
前記最小限の入力は、前記所定の入力の一部の入力であることを特徴とする付記１記載の認証方法。
（付記３）
前記最小限の入力は、前記所定の入力の前方の一部の入力であることを特徴とする付記１記載の認証方法。
（付記４）
前記第１の認証処理は、前記所定の入力によっても認証を許容することを特徴とする付記１記載の認証方法。
(付記５)
前記第１の認証処理から第２の認証処理に変更する処理は、再度の認証が要求される状態への移行からの経過時間が所定の時間を越えた場合に行うことを特徴とする付記１記載の認証方法。
（付記６）
前記最小限の入力量を表示部へ出力する
付記１に記載の認証方法。
（付記７）
コンピュータに、
認証処理が成功した状態から移行した再度の認証が要求される状態の経過時間の増加に応じて、第１の認証処理から第２の認証処理に変更する処理を実行させ、
前記第２の認証処理は、前記第１の認証処理では認証成功となる最小限の入力では認証を許可せず、前記最小限の入力よりも入力量が多い所定の入力を認証成功の条件とするプログラム。
（付記８）
認証処理が成功した状態から移行した再度の認証が要求される状態の経過時間の増加に応じて、第１の認証処理から第２の認証処理に変更する処理を実行する実行部を備え、
前記第２の認証処理は、前記第１の認証処理では認証成功となる最小限の入力では認証を許可せず、前記最小限の入力よりも入力量が多い所定の入力を認証成功の条件とする認証装置。
（付記９）
コンピュータ１に、
予め設定されたパスワードの全ての文字列及び一部の文字列に応じて生成される基準データを記憶し、
前記パスワードの入力を要求する状態へ移行してからの経過時間に基づき、文字列数を決定し、
決定した文字列数以上の文字列を受け付けた場合に、受け付けた文字列に応じて比較データを生成し、
前記比較データと前記基準データとが一致するか否かを判断する
処理を実行させるプログラム。
【００５６】
（付記１０）
決定した文字列数を特定するための情報を表示部へ出力する
付記９に記載のプログラム。
【００５７】
（付記１１）
前記比較データと前記基準データとが一致する場合に、前記パスワードにより設定されているロックを解除する
付記９または１０に記載のプログラム。
【００５８】
（付記１２）
決定した文字列数に対応する数字を前記表示部に出力する
付記９から１１のいずれか一つに記載のプログラム。
【００５９】
（付記１３）
文字列数の決定後一定時間経過した場合、決定した文字列数よりも次に多い文字列数へ変更し、
変更した文字列数以上の文字列を受け付けた場合に、受け付けた文字列に応じて比較データを生成する
付記９から１２いずれか一つに記載のプログラム。
【００６０】
（付記１４）
決定した文字列数の文字列を受け付けた直後に受け付けた文字列に応じて比較データを生成し、
前記比較データと前記基準データとが一致すると判断した場合に、入力された文字列が正当であることを示す情報を表示する
付記９から１２のいずれか一つに記載のプログラム。
【００６１】
（付記１５）
予め設定されたパスワードの全ての文字列及び一部の文字列に応じて生成される基準データを記憶部に記憶する記憶処理部１６１と、
前記パスワードの入力を要求する状態へ移行してからの経過時間に基づき、文字列数を決定する決定部１６２と、
決定した文字列数以上の文字列を受け付けた場合に、受け付けた文字列に応じて比較データを生成する生成部１６３と、
前記比較データと前記基準データとが一致するか否かを判断する判断部１６４と
を備える情報処理装置１。
【００６２】
（付記１６）
情報処理装置１を用いた情報処理方法において、
予め設定されたパスワードの全ての文字列及び一部の文字列に応じて生成される基準データを記憶し、
前記パスワードの入力を要求する状態へ移行してからの経過時間に基づき、文字列数を決定し、
決定した文字列数以上の文字列を受け付けた場合に、受け付けた文字列に応じて比較データを生成し、
前記比較データと前記基準データとが一致するか否かを判断する
情報処理方法。
【符号の説明】
【００６３】
１      コンピュータ
１Ａ    可搬型記録媒体
１Ｂ    半導体メモリ
１０Ａ  読み取り部
１１    ＣＰＵ
１２    ＲＡＭ
１３    入力部
１４    表示部
１５    記憶部
１５Ｐ  制御プログラム
１６    通信部
１８    時計部
１４１  パスワードボックス
１４２  ＯＫボタン
１５１  決定テーブル
１５２  ハッシュ値テーブル
１６１  記憶処理部
１６２  決定部
１６３  生成部
１６４  判断部
【図１】
2015102967.tif 000003
【図２】
2015102967.tif 000004
【図３】
2015102967.tif 000005
【図４】
2015102967.tif 000006
【図５】
2015102967.tif 000007
【図６】
2015102967.tif 000008
【図７】
2015102967.tif 000009
【図８】
2015102967.tif 000010
【図９】
2015102967.tif 000011
【図１０】
2015102967.tif 000012
【図１１】
2015102967.tif 000013
【図１２】
2015102967.tif 000014
【図１３】
2015102967.tif 000015
【図１４】
2015102967.tif 000016
【図１５】
2015102967.tif 000017
【図１６】
2015102967.tif 000018
【図１７】
2015102967.tif 000019