(57)【要約】      （修正有）【課題】質問型パスワードにおいて、質問を自動的に更新する。【解決手段】質問に対する答えをカウント値と共に記憶し、カウント値が所定範囲でパスワード、所定範囲未満でパスワードの候補、所定範囲を越えると廃棄済みのパスワードとする。パスワードに対する質問とパスワードの候補に対する質問とを複数個ずつユーザに提示して回答を求め、答えがパスワードとなる質問に全問正解すると認証する。またパスワードとパスワードの候補に対し、正解するとカウント値を加算し、誤答するとパスワードとパスワードの候補から除外する。【効果】繰り返して使用したパスワードを自動的に廃棄して、新しいパスワードで補充できる。【選択図】図６
2008015788.tif 000002
【特許請求の範囲】
【請求項１】
質問をユーザに提示して正しい答えを入力できるか否かにより、ユーザを認証する装置において、
答えがパスワードとなる質問と答えがパスワードの候補となる質問とを、各々複数ずつ記憶するための記憶手段と、
前記複数の質問から、答えがパスワードとなる質問と、答えがパスワードの候補となる質問とを、各々選択してユーザに提示するための質問選択手段と、
答えがパスワードとなる質問を所定の条件以上使用すると、その答えをパスワードから削除し、かつ答えがパスワードの候補となる質問に対して、所定の回数以上同じ答えがユーザから入力されると、その答えをパスワードに変更するためのパスワード管理手段、
とを設けたことを特徴とする、認証装置。
【請求項２】
前記パスワード管理手段では、答えがパスワードとなる質問を所定回数以上使用すると、その答えをパスワードから削除するようにしたことを特徴とする、請求項１の認証装置。
【請求項３】
前記質問選択手段は、答えがパスワードとなる質問と、答えがパスワードの候補となる質問とを、各々複数個ずつ選択してユーザに提示することを特徴とする、請求項１または２の認証装置。
【請求項４】
前記パスワード管理手段を、
答えがパスワードとなる質問にユーザが正しい答えを入力できなかった場合、その答えをパスワードから除外すると共に、
答えがパスワードの候補となる質問にユーザが正しい答えを入力できなかった場合、その答えをパスワードの候補から除外もしくはパスワードになり難くするように構成したことを特徴とする、請求項１〜３のいずれかの認証装置。
【請求項５】
ユーザに初めて提示した質問への答えを、前記パスワード記憶手段で答えとして記憶するようにしたことを特徴とする、請求項１〜４のいずれかの認証装置。
【請求項６】
質問をユーザに提示して正しい答えを入力できるか否かにより、ユーザを認証する方法において、
答えがパスワードとなる質問と答えがパスワードの候補となる質問とを、各々複数ずつ記憶し、
前記複数の質問から、答えがパスワードとなる質問と、答えがパスワードの候補となる質問とを、各々選択してユーザに提示し、
答えがパスワードとなる質問を所定の条件以上使用すると、その答えをパスワードから削除し、かつ答えがパスワードの候補となる質問に対して、所定の回数以上同じ答えがユーザから入力されると、その答えをパスワードに変更する、ことを特徴とする、認証方法。
【請求項７】
答えがパスワードとなる質問を所定回数以上使用すると、その答えをパスワードから削除することを特徴とする、請求項６の認証方法。
【請求項８】
質問をユーザに提示して正しい答えを入力できるか否かにより、ユーザを認証する装置のためのプログラムにおいて、
答えがパスワードとなる質問と答えがパスワードの候補となる質問とを、各々複数ずつ記憶するための記憶命令と、
前記複数の質問から、答えがパスワードとなる質問と、答えがパスワードの候補となる質問とを、各々選択してユーザに提示するための質問選択命令と、
答えがパスワードとなる質問を所定の条件以上使用すると、その答えをパスワードから削除し、かつ答えがパスワードの候補となる質問に対して、所定の回数以上同じ答えがユーザから入力されると、その答えをパスワードに変更するためのパスワード管理命令、
とを設けたことを特徴とする、認証プログラム。
【請求項９】
前記パスワード管理命令では、答えがパスワードとなる質問を所定回数以上使用すると、その答えをパスワードから削除するようにしたことを特徴とする、請求項８の認証プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はパスワードを用いた認証に関する。
【背景技術】
【０００２】
暗証番号などに代わるものとして、質問型のパスワードが知られている（特許文献１）。例えば「貴方のお母さんの誕生日は？」などの、本人であれば間違うはずがなく、しかも他人が答えることが難しい質問を提示し、答えをパスワードとする。このような場合、１つの質問のみでは認証の信頼性に欠けるので、例えば質問を１０問記憶し、そこからランダムに選んだ問題を５問出題し、４問以上正解で本人として認証することも知られている（特許文献１）。ここで他人が本人のふりをして例えば３回挑戦すると、１０問中の９問程度が出題されるので、４回目のチャレンジで本人になりすますことができる可能性がある。そこで質問を次々と更新することができれば認証の信頼性が保たれるが、質問を更新するには、その答えを入力する必要があるので、現実には難しい。
【特許文献１】特開２００２−２９７５４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
この発明の課題は、多数回使用したパスワードを廃棄すると共に、認証と並行して新たなパスワードを発生させ、パスワードを更新し続けることができるようにすることにある。
請求項２，３の発明での追加の課題は、認証の信頼性を向上させることにある。
請求項４の発明での追加の課題は、ユーザの記憶が変化した場合や、第３者が本人になりすまして回答した場合に、後の認証手続きに影響しないようにすることにある。
請求項５の発明での追加の課題は、パスワードの候補をユーザが意識せずに入力できるようにすることにある。
【課題を解決するための手段】
【０００４】
この発明は、質問をユーザに提示して正しい答えを入力できるか否かにより、ユーザを認証する装置において、
答えがパスワードとなる質問と答えがパスワードの候補となる質問とを、各々複数ずつ記憶するための記憶手段と、
前記複数の質問から、答えがパスワードとなる質問と、答えがパスワードの候補となる質問とを、各々選択してユーザに提示するための質問選択手段と、
答えがパスワードとなる質問を所定の条件以上使用すると、その答えをパスワードから削除し、かつ答えがパスワードの候補となる質問に対して、所定の回数以上同じ答えがユーザから入力されると、その答えをパスワードに変更するためのパスワード管理手段、
とを設けたことを特徴とする。
パスワードの削除では、パスワードの使用期間、例えばパスワードとして登録した日からの経過日数などを管理して、所定の期間以上パスワードとして使用すると削除するようにしても良い。しかし好ましくは、前記パスワード管理手段では、答えがパスワードとなる質問を所定回数以上使用すると、その答えをパスワードから削除する。
【０００５】
この発明はまた、質問をユーザに提示して正しい答えを入力できるか否かにより、ユーザを認証する方法において、
答えがパスワードとなる質問と答えがパスワードの候補となる質問とを、各々複数ずつ記憶し、
前記複数の質問から、答えがパスワードとなる質問と、答えがパスワードの候補となる質問とを、各々選択してユーザに提示し、
答えがパスワードとなる質問を所定の条件以上使用すると、その答えをパスワードから削除し、かつ答えがパスワードの候補となる質問に対して、所定の回数以上同じ答えがユーザから入力されると、その答えをパスワードに変更する、ことを特徴とする。
好ましくは、答えがパスワードとなる質問を所定回数以上使用すると、その答えをパスワードから削除する。
【０００６】
この発明はさらに、質問をユーザに提示して正しい答えを入力できるか否かにより、ユーザを認証する装置のためのプログラムにおいて、
答えがパスワードとなる質問と答えがパスワードの候補となる質問とを、各々複数ずつ記憶するための記憶命令と、
前記複数の質問から、答えがパスワードとなる質問と、答えがパスワードの候補となる質問とを、各々選択してユーザに提示するための質問選択命令と、
答えがパスワードとなる質問を所定の条件以上使用すると、その答えをパスワードから削除し、かつ答えがパスワードの候補となる質問に対して、所定の回数以上同じ答えがユーザから入力されると、その答えをパスワードに変更するためのパスワード管理命令、
とを設けたことを特徴とする。
好ましくは、前記パスワード管理命令では、答えがパスワードとなる質問を所定回数以上使用すると、その答えをパスワードから削除する。
【０００７】
好ましくは、答えがパスワードとなる質問にユーザが正しい答えを入力できなかった場合、その答えをパスワードから除外すると共に、
答えがパスワードの候補となる質問にユーザが正しい答えを入力できなかった場合、その答えをパスワードの候補から除外もしくはパスワードになり難くする。
【０００８】
また好ましくは、答えがパスワードとなる質問と、答えがパスワードの候補となる質問とを、各々複数個ずつ選択してユーザに提示する。
【０００９】
好ましくは、ユーザに初めて提示した質問への答えをその質問への正答として記憶する。
【００１０】
この明細書で、認証装置に関する記載は特に断らない限り、認証方法や認証プログラムにもそのまま当てはまり、また逆に認証方法に関する記載は、認証装置や認証プログラムにもそのまま当てはまる。
【発明の効果】
【００１１】
この発明では、答えがパスワードとなる質問にユーザが正答したことからユーザを認証する。ここで、パスワードが例えば所定の期間以上あるいは所定の回数以上使用される等のことがあると、パスワードを削除する。この一方で、パスワードの候補となる答えへの質問に所定の回数以上同じ答えがユーザから入力されると、パスワードに変更する。これらのため全体としては、パスワードが順次変更されてゆき、信頼性の高い認証ができる。
ここでパスワードが所定の回数以上使用されると削除するようにすると、短期間に多数回認証を行った場合に、繰り返し使用したパスワードを削除でき、より安全である。
【００１２】
パスワードとその候補は毎回１問ずつ質問してもよいが、これでは偶発的に正答される可能性があるので、パスワードとその候補とをそれぞれ複数ずつ質問すると、第３者が本人に成りすました場合に誤って認証することがない。またパスワードに対する質問を複数回行うと、廃棄済みのパスワードもより多数発生するので、それに応じてパスワードの候補も複数問ずつ質問する。
【００１３】
パスワードへの記憶がユーザ本人の中で変化することがある。例えば左目の視力に対する記憶が１．２からいつのまにか１．０に変化するかもしれない。そこで「あなたの左目の視力は？」という質問と、以前の記憶の１．２とをいつまでも使用し続けても意味がない。さらに第３者が本人に成りすまして認証を受けようとした場合、初めて「あなたの左目の視力は」という質問を受けると、正しい答えを入力できないであろう。この場合に、同じ質問を出し続けると、第３者が答えを入手しているかもしれない。そこで答えがパスワードとなる質問に正しい答えが入力されなかった場合、その答えをパスワードから除外する。次に答えがパスワードの候補となる質問に、ユーザが正しい答えを入力できなかった場合も、その答えをパスワードから除外する、もしくは同じ答えを入力したことに対するカウント値を０にリセット、あるいはカウント値を所定値分減算する等により、パスワードとなり難くする。
【００１４】
初めてユーザに提示した質問への答えを、そのまま答えとして記憶すると、パスワードの候補の入力手続などを特別に行わなくても、認証と並行して答えを入力することができる。
【発明を実施するための最良の形態】
【００１５】
以下に本発明を実施するための最適実施例を示す。
【実施例】
【００１６】
図１〜図７に、実施例の複合機２とその認証部６並びに認証プログラム７０を示す。図１において、２は複合機で、４はその本体であり、認証部６にはパスワードテーブル８と質問選択部１０，パスワード入力処理部１２，パスワード判定部１４が設けてある。なお認証部６は複合機２以外の他のサーバに設けてもよい。パスワードテーブル８はパスワード並びにその候補となる答えと、答えに対する質問、及び質問の提示回数のカウント値とを記憶し、例えばこれ以外に答えに対する質問、答えがパスワードとなる下限の値、答えを廃棄済みとする上限の値などを記憶する。実施例ではカウント値は正答により１ずつ加算されるものとするが、加算の単位は任意で、質問毎に加算の値を変えてもよい。
【００１７】
質問選択部１０はパスワードテーブル８から、パスワードとして登録されている答えを複数個、例えば３個と、パスワードの候補として登録されている答えを複数個、例えば２個選択し、合計５個の答えを選択する。これらの選択は、パスワードの範囲内並びにパスワードの候補の範囲内でそれぞれランダムに行うことが好ましく、ランダムに行う場合にも例えばカウント値の小さいものを優先するなどのルールを加えても良い。質問選択部１０で選択された質問は、ＬＡＮ２０を介して認証を受けようとするクライアント２２などの画面に表示され、あるいはゲートウェイ２４を介して遠隔のクライアントの画面に表示される。これに対してクライアントは答えを入力する。クライアントの画面に質問画面を表示させ、入力を受け付ける処理を、パスワード入力処理部１２で実行する。パスワード判定部１４はパスワードテーブル８を管理すると共に更新し、ユーザの認証、パスワードやその候補となる答えのカウント値の加算、パスワードテーブル８からの削除などの処理を行う。
【００１８】
図２にパスワードテーブル８の例を示すと、質問自体は多数個予めテーブル８内に用意され、５〜１０個程度を登録済のパスワードとし、他の５〜１０個程度をパスワードの候補とする。答えの欄は、初めて認証するユーザに対しては、パスワード分の個数の質問に対する答えを例えば要求し、それ以降は初めて質問を提起した際にユーザが入力した答えをそのままテーブル８に記憶する。カウント値がパスワード判定部１４により操作され、初期値は０で、１回ユーザに提示する毎に１ずつ加算される。そしてカウント値が下限の欄の値以上となると、パスワードとなり、上限の欄の値に達すると、廃棄済みパスワードとなる。この場合、テーブル８から該当するレコードを抹消しても、あるいはカウント値を０にリセットしてもよい。
【００１９】
図３にユーザ認証の手続きを示し、テーブル８から答えがパスワードとなる質問を３問、答えがパスワードの候補となる質問を２問ランダムに選択する。これが質問選択の手続である。パスワード入力では、これらの５問の質問をユーザの端末（クライアント）に提示し、ユーザの入力を待つ。パスワード判定では、入力された答えをテーブルの正解と比較し、本人認証を行うと共にカウント値を加算する。
【００２０】
図４に質問選択の手続を示すと、ステップ１でパスワードテーブル中からパスワードを３個ランダムに選択し、ステップ２でテーブル中からパスワードの候補を２個ランダムに選択する。単純にランダムに選択する代わりに、パスワードをカウント値の低いものから選択し、パスワードの候補をカウント値が１のものから選択すると、使用頻度の低いもの優先する傾向が生じる。このためカウント値の低いものから選択しても、有る程度ランダムにパスワードやその候補を選択できる。パスワードの候補の数が不足している場合、カウント値が０の質問を提示しても良い。あるいはカウント値が上限値に近いものを２個選択して提示しても良い。この場合の２問に対する入力の正誤は、無視してもあるいは考慮しても良い。
【００２１】
図５に示すように、パスワード入力では、選択された５つの質問をユーザの端末画面に表示し、ユーザから５つの答えが入力されるのを待つ。なおこの場合に、「あなたの好きな色は？」などの質問をして、答えの欄を空欄として設ける代わりに、「あなたの好きな色は？」と質問し、答えの欄に「青，赤，緑、エンジ，白」など選択肢を表示するようにしてもよい。
【００２２】
図６にパスワード判定の手続を示す。変数ｉは処理済みの質問の番号，ｊは正答されたパスワードの数，Ｃはそれぞれの質問に対するカウント値とする。そしてｉとｊの初期値を０にセットする（ステップ１１）。ステップ１２で正答が得られた場合、答えがパスワードかどうかをチェックし（ステップ１３）、パスワードであればｊの値を１加算する（ステップ１４）。ユーザに対して初めて提示された質問で、カウント値が０の場合、正答が存在しない。そこで入力された回答を答えとしてパスワード管理テーブルに記憶する（ステップ１５）。正答が入力された場合、並びに初めて提示した質問に答えが入力された場合、該当する質問のカウント値を１加算する（ステップ１６）。
【００２３】
カウンタの値が上限に達すると、該当するパスワードやそれに対する質問などのレコードを、パスワードテーブルから削除する（ステップ１８）。同様にステップ１２で正答が得られなかった場合も、該当する答えに対するレコードをパスワードテーブルから削除する。レコードを削除する代わりに、答えを削除すると共にカウント値を０にリセットし、テーブル８の最後尾に移して当分の間使用されないようにしてもよい。
【００２４】
このようにして１つの質問に対する答えを処理すると、ｉの値を１加算し（ステップ１９）、５問全ての処理が完了するまでこのループを繰り返す（ステップ２０）。５問全体の処理が行われると、答えがパスワードとなる３問に対し、全問正解かどうかをチェックし（ステップ２１）、全問正解であれば認証し（ステップ２２）、１問でも誤りが有れば認証エラーとする（ステップ２３）。本人と認証できない手続で、ユーザの答えを正答としてパスワードテーブルに記憶していることをステップ１５で実行していると、その質問と答え等をパスワードテーブルから削除する（ステップ２４）。なお質問の数をさらに増して、例えばパスワードを５問ずつ質問して４問以上正答で本人と認証するなどとしてもよい。
【００２５】
図６ではパスワードに対するカウント値は、認証毎に例えば３ずつ増加し、パスワードの候補に対するカウント値の合計は、認証毎に例えば２ずつ増加する。そこでカウンタの下限を３，上限を８などとすると、長期平均で見た場合、認証毎にパスワードを毎回２／３個作成し、３／５個廃棄していることになる。これによって作成されるパスワードの個数が、廃棄されるパスワードの個数以上となるようにする。
【００２６】
図７に認証プログラム７０の構成を示すと、テーブル作成命令７１はパスワードテーブル８を作成し、特に答えを空欄とし、カウンタの初期値や下限の値を０とし、上限の値と質問のみがセットされた状態のパスワードテーブルを記憶している。そして最初の認証のためのパスワードに対する答えをユーザに要求し、その答えをテーブル８に記載し、カウンタの値を下限値にセットする。質問選択命令７２はパスワードテーブル８から図４のアルゴリズムにより質問を選択する。パスワード入力画面表示命令７３は図５のアルゴリズムに従って、質問をユーザの端末画面に表示して入力を待つ。パスワード判定命令７４は、図６のアルゴリズムに従って本人認証を行うと共に、ユーザ管理テーブルの更新を行う。
【００２７】
実施例では以下の効果が得られる。
(1)  カウント値が上限に達するとパスワードを廃棄するので、同じパスワードをいつまでも用いることがない。
(2)  認証と並行して、パスワードの候補が答えとなる質問を行いカウンタを加算するので、新たなパスワードを作成できる。
(3)  誤答するとパスワードやその候補をパスワードテーブルから削除するので、本人の記憶が曖昧になると質問の答えが削除され、また第３者が本人に成りすまして認証を試み失敗すると質問の答えが削除される。従って答えが曖昧な質問や第３者に提示した可能性のある質問を、繰り返して用いることがない。
(4)  初めて提示した質問に対してユーザが入力した答えをテーブルに答えとして記憶するので、パスワードの作成手続のために特別な入力をしているという印象をユーザに与えない。
(5)  パスワードとなる下限値やパスワードを廃棄する上限値を適切に選ぶことにより、廃棄されるパスワード以上のパスワードが候補から追加されるようにできる。
(6)  不正な認証手続きが繰り返されると、パスワードやその候補が減少して、認証禁止になる。
(7)  答えの難易度等に応じて、パスワードになるための下限値や使用の上限値を設定できる。
(8)  続けて同じ答えが入力されないとパスワードにならないので、間違った答えがパスワードとして登録されない。
【００２８】
なおパスワードが所定個数以下になると認証を禁止することが好ましい。また答えがパスワードとなるカウント値の下限や、パスワードを廃棄するためのカウント値の上限は個別に設定可能で、難易度が高い問題では下限を例えば２程度に低くし、上限を８〜１０程度に高くしても良い。実施例では３回続けて同じ答えが入力されるとパスワードとするが、２回続けて同じ答えが入力されるとパスワードとしても良い。
【００２９】
実施例では、パスワードの有効期限を使用回数で管理したが、例えばパスワードとして最初に用いた日からの経過日数や、パスワードに対応する質問をユーザに初めて提示した日からの経過日数などのように、パスワード等としての使用期間に応じて、有効期限を定めても良い。
【図面の簡単な説明】
【００３０】
【図１】実施例の複合機とその使用環境を示すブロック図
【図２】実施例で用いたパスワードテーブルを模式的に示す図
【図３】実施例での認証手続きを示す図
【図４】実施例での質問選択アルゴリズムを示すフローチャート
【図５】実施例でのパスワード入力アルゴリズムを示すフローチャート
【図６】実施例でのパスワード判定アルゴリズムを示すフローチャート
【図７】実施例の認証プログラムのブロック図
【符号の説明】
【００３１】
２        複合機
４        複合機本体
６        認証部
８        パスワードテーブル
１０      質問選択部
１２      パスワード入力処理部
１４      パスワード判定部
２０      ＬＡＮ
２２      クライアント
２４      ゲートウェイ
７０      認証プログラム
７１      テーブル作成命令
７２      質問選択命令
７３      パスワード入力画面表示命令
７４      パスワード判定命令    
【図１】
2008015788.tif 000003
【図２】
2008015788.tif 000004
【図３】
2008015788.tif 000005
【図４】
2008015788.tif 000006
【図５】
2008015788.tif 000007
【図６】
2008015788.tif 000008
【図７】
2008015788.tif 000009