(57)【要約】【課題】  ユーザの認証に用いられる認証用コード群が不特定の人間に盗られたとしてもそれが悪用されないようにすること【解決手段】  ユーザ登録段階において、認証装置（１３）が、複数種類の加工規則がそれぞれ割り当てられていて、割り当てられた加工規則の種類をユーザが特定できないような態様になっている複数の選択肢を、ユーザ装置（１００）に提示し、ユーザに選択された選択肢に割り当てられている加工規則と、入力された認証用コード列とに基づく認証用情報を記憶域（１７）に格納する。ユーザ端末１００は、その加工規則を表す情報を記憶しておく。ユーザ認証段階において、ユーザ端末１００は、ユーザから入力された認証用コード列を、記憶している加工規則で加工してからサーバ１３に送る。サーバ１３は、加工された認証用コード列が、記憶域に記憶されている認証用情報に適合するか否かを判断する。【選択図】図１
2007065789.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ装置と認証装置とを備えた認証システムであって、
ユーザ登録段階と、前記ユーザ登録段階の後の段階であるユーザ認証段階とがあり、
前記認証装置が、
前記ユーザ登録段階において、前記ユーザの認証用コード列の入力を前記ユーザに求める手段と、
前記ユーザ登録段階において、前記ユーザの認証用コード列を加工する規則である複数種類の加工規則がそれぞれ割り当てられていて、割り当てられた加工規則の種類をユーザが特定できないような態様になっている複数の選択肢を、ユーザの使用する前記ユーザ装置に提示する手段と、
前記ユーザ登録段階において、前記複数の選択肢の中から前記ユーザに選択された選択肢と前記ユーザの認証用コード列とに基づく情報を前記ユーザ装置から受ける手段と、
前記ユーザ登録段階において、前記受けた情報に基づく認証用情報を記憶域に格納する手段と、
前記ユーザ認証段階において、前記ユーザの認証用コード列の入力を前記ユーザに求める手段と、
前記ユーザ認証段階において、前記ユーザ登録段階で前記ユーザに選択された選択肢に割り当てられていた加工規則に従って前記ユーザの認証用コード列が前記ユーザ装置において加工されたものである加工後コード列を受ける手段と、
前記ユーザ認証段階において、前記受けた加工後コード列が、前記記憶域に記憶されている前記ユーザの認証用情報に適合するか否かを判断する手段と
を備え、前記判断によって肯定的な判断結果が得られた場合に前記当該ユーザを認証し、
前記ユーザ装置が、
不揮発性の記憶資源と、
前記ユーザ登録段階において、前記認証装置から提示された複数の選択肢を表示する手段と、
前記ユーザ登録段階において、前記認証装置からの求めに応じて前記ユーザの認証用コード列の入力を受ける手段と、
前記ユーザ登録段階において、前記表示した複数の選択肢の中から前記ユーザに選択された選択肢に割り当てられている加工規則を表す加工規則情報を前記記憶資源に格納する手段と、
前記ユーザ登録段階において、前記選択された選択肢と前記入力された認証用コード列とに基づく情報を前記認証装置に送る手段と、
前記ユーザ認証段階において、前記認証装置からの求めに応じて前記ユーザの認証用コード列の入力を受ける手段と、
前記ユーザ認証段階において、前記入力された認証用コード列を、前記記憶資源に格納されている加工規則情報が表す加工規則に従って加工することにより、前記加工後パスワード列を生成する手段と、
前記ユーザ認証段階において、前記生成された加工後パスワード列を前記認証装置に送る手段と
を備える
認証システム。
【請求項２】
前記ユーザ装置の前記格納する手段は、前記認証装置以外の装置との間で共有されることのないよう制御されるデータに、前記加工規則情報を設定し、前記加工規則情報が設定されたデータを、前記記憶資源に格納する、
請求項１記載の認証システム。
【請求項３】
前記複数の選択肢の中から選択される選択肢の数は前記ユーザの任意の数であり、
前記ユーザ装置から前記認証装置が受ける加工後コード列の長さは、前記ユーザに選択された選択肢の数に応じて異なっている、
請求項１記載の認証システム。
【請求項４】
ユーザ登録段階において、
ユーザの認証用コード列を加工する規則である複数種類の加工規則がそれぞれ割り当てられていて、割り当てられた加工規則の種類をユーザが特定できないような態様になっている複数の選択肢を、ユーザの使用するユーザ装置に提示する手段と、
前記ユーザに認証用コード列の入力を求める手段と、
前記提示した複数の選択肢の中から前記ユーザに選択された選択肢に割り当てられている加工規則と、前記ユーザに入力された認証用コード列とに基づく認証用情報を記憶域に格納する手段と、
ユーザ認証段階において、
前記ユーザ登録段階で前記ユーザに選択された選択肢に割り当てられていた加工規則に従って前記ユーザの認証用コード列が前記ユーザ装置において加工されたものである加工後コード列を受ける手段と、
前記受けた加工後コード列が、前記記憶域に記憶されている前記ユーザの認証用情報に適合するか否かを判断する手段と
を備え、前記判断によって肯定的な判断結果が得られた場合に前記当該ユーザを認証する、
認証装置。
【請求項５】
前記ユーザ登録段階において、前記複数種類の加工規則を前記複数の選択肢にそれぞれ割り当てる手段を更に有し、
前記割り当てる手段は、同一の選択肢に割り当てる加工規則の種類を、前記ユーザ登録段階の都度に違える、
請求項４記載の認証装置。
【請求項６】
前記ユーザ認証段階において、
同一のユーザであってもユーザ認証段階の都度に中身の異なる電子的な鍵を生成する手段と、
前記生成された鍵を前記ユーザ装置に提供する手段と、
前記ユーザ装置から受けた、前記提供された鍵で前記加工後コード列が暗号化されたものを、前記鍵で復号化する手段と
を備え、
前記判断する手段は、前記鍵での復号化によって得られた加工後コード列が前記ユーザの認証用情報に適合する否かを判断する、
請求項４記載の認証装置。
【請求項７】
ユーザ登録段階において、
認証装置が、前記ユーザの認証用コード列の入力をユーザに求めるステップと、
前記認証装置が、前記ユーザの認証用コード列を加工する規則である複数種類の加工規則がそれぞれ割り当てられていて、割り当てられた加工規則の種類をユーザが特定できないような態様になっている複数の選択肢を、前記ユーザの使用するユーザ装置に提示するステップと、
前記ユーザ装置が、前記認証装置から提示された複数の選択肢を表示するステップと、
前記ユーザ装置が、前記認証装置からの求めに応じて前記ユーザの認証用コード列の入力を受けるステップと、
前記ユーザ装置が、前記表示した複数の選択肢の中から前記ユーザに選択された選択肢に割り当てられている加工規則を表す加工規則情報を不揮発性の記憶資源に格納するステップと、
前記ユーザ装置が、前記選択された選択肢と前記入力された認証用コード列とに基づく情報を前記認証装置に送るステップと、
前記認証装置が、前記ユーザ装置から受けた情報に基づく認証用情報を記憶域に格納するステップと、
ユーザ認証段階において、
前記認証装置が、前記ユーザの認証用コード列の入力を前記ユーザに求めるステップと、
前記ユーザ装置が、前記認証装置からの求めに応じて前記ユーザの認証用コード列の入力を受けるステップと、
前記ユーザ装置が、前記入力された認証用コード列を、前記記憶資源に格納されている加工規則情報が表す加工規則に従って加工することにより、前記加工後パスワード列を生成するステップと、
前記ユーザ装置が、前記生成された加工後パスワード列を前記認証装置に送るステップと、
前記認証装置が、前記ユーザ装置から加工後パスワード列を受けるステップと、
前記認証装置が、前記受けた加工後コード列が、前記記憶域に記憶されている前記ユーザの認証用情報に適合するか否かを判断するステップと、
前記認証装置が、前記判断によって肯定的な判断結果が得られた場合に前記当該ユーザを認証するステップと
を有する認証方法。
【請求項８】
ユーザ登録段階において、
ユーザの認証用コード列を加工する規則である複数種類の加工規則がそれぞれ割り当てられていて、割り当てられた加工規則の種類をユーザが特定できないような態様になっている複数の選択肢を、ユーザの使用するユーザ装置に提示するステップと、
前記ユーザに認証用コード列の入力を求めるステップと、
前記提示した複数の選択肢の中から前記ユーザに選択された選択肢に割り当てられている加工規則と、前記ユーザに入力された認証用コード列とに基づく認証用情報を記憶域に格納するステップと、
ユーザ認証段階において、
前記ユーザ登録段階で前記ユーザに選択された選択肢に割り当てられていた加工規則に従って前記ユーザの認証用コード列が前記ユーザ装置において加工されたものである加工後コード列を受けるステップと、
前記受けた加工後コード列が、前記記憶域に記憶されている前記ユーザの認証用情報に適合するか否かを判断するステップと
前記判断によって肯定的な判断結果が得られた場合に前記当該ユーザを認証するステップと
をコンピュータに実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザを認証するための技術に関する。
【背景技術】
【０００２】
認証技術として、例えば、以下の特許文献１乃至特許文献４に開示されている技術がある。
【０００３】
【特許文献１】特開２００５−８５０７１号公報
【特許文献２】特開２００２−２４５２４４号公報
【特許文献３】特開２００３−３３７７９９号公報
【特許文献４】特許第２９９３２７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、近年、「フィッシング詐欺」と呼ばれる新手の詐欺が問題視されてきている。「フィッシング詐欺」とは、金融機関或いはオンラインショップ等の特定機関を装ってメールを発行し、そのメールの受信者から、その受信者の当該特定機関での認証用コード群（例えば、クレジットカード番号、有効期限、暗証番号など）を釣り上げる（つまり不正に取得する）詐欺行為である。フィッシング詐欺を行う者（以下、フィッシング詐欺師）は、不特定多数のインターネット利用者に偽メールを送りつけ、認証用コード群を引き出す。
【０００５】
具体的には、例えば、フィッシング詐欺師は、クレジットカード会社名義で、「プレゼントに当選されました」というメッセージと、認証用コード群の入力を受付けるページのＵＲＬとを記載したメールを不特定多数のインターネット利用者に送信する。メール受信者は、フィッシング詐欺とは気づかずに、受信したメールに記載されているＵＲＬにアクセスし、それにより表示されたページに認証用コード群を入力してしまうと、フィッシング詐欺師に自分の認証用コード群を与えてしまうことになる。その結果、自分が与えた認証用コード群が悪用される（例えば、自分になりすまされて買い物がされてしまう）ことがある。
【０００６】
このようなフィッシング詐欺の対策が望まれている。フィッシング詐欺に限らず、他の方法で盗られた認証用コード群が悪用されてしまうことを防ぐことが望まれている。
【０００７】
従って、本発明の目的は、ユーザの認証に用いられる認証用コード群が不特定の人間に盗られたとしてもそれが悪用されないようにすることにある。
【０００８】
本発明の他の目的は、後の説明から明らかになるであろう。
【課題を解決するための手段】
【０００９】
本発明に従う認証システムは、ユーザ装置と認証装置とを備え、ユーザ登録段階と、前記ユーザ登録段階の後の段階であるユーザ認証段階とがある。前記認証装置が、前記ユーザ登録段階において、前記ユーザの認証用コード列の入力を前記ユーザに求める手段と、前記ユーザ登録段階において、前記ユーザの認証用コード列を加工する規則である複数種類の加工規則がそれぞれ割り当てられていて、割り当てられた加工規則の種類をユーザが特定できないような態様になっている複数の選択肢を、ユーザの使用する前記ユーザ装置に提示する手段と、前記ユーザ登録段階において、前記複数の選択肢の中から前記ユーザに選択された選択肢と前記ユーザの認証用コード列とに基づく情報（例えば、選択された選択肢を特定するための情報と認証用コード列とのセット、或いは、選択された選択肢に割り当てられている加工規則で加工された認証用コード列）を前記ユーザ装置から受ける手段と、前記ユーザ登録段階において、前記受けた情報に基づく認証用情報（例えば、受けた情報それ自体、或いは、受けた認証用コード列を、選択された選択肢に割り当てられている加工規則で加工したもの）を記憶域に格納する手段と、前記ユーザ認証段階において、前記ユーザの認証用コード列の入力を前記ユーザに求める手段と、前記ユーザ認証段階において、前記ユーザ登録段階で前記ユーザに選択された選択肢に割り当てられていた加工規則に従って前記ユーザの認証用コード列が前記ユーザ装置において加工されたものである加工後コード列を受ける手段と、前記ユーザ認証段階において、前記受けた加工後コード列が、前記記憶域に記憶されている前記ユーザの認証用情報に適合するか否かを判断する（例えば、認証用情報から得られた加工後コード列と受けた加工後コード列とが一致するか否かを判断する）手段とを備え、前記判断によって肯定的な判断結果が得られた場合に前記当該ユーザを認証する。前記ユーザ装置が、不揮発性の記憶資源と、前記ユーザ登録段階において、前記認証装置から提示された複数の選択肢を表示する手段と、前記ユーザ登録段階において、前記認証装置からの求めに応じて前記ユーザの認証用コード列の入力を受ける手段と、前記ユーザ登録段階において、前記表示した複数の選択肢の中から前記ユーザに選択された選択肢に割り当てられている加工規則を表す加工規則情報を前記記憶資源に格納する手段と、前記ユーザ登録段階において、前記選択された選択肢と前記入力された認証用コード列とに基づく情報を前記認証装置に送る手段と、前記ユーザ認証段階において、前記認証装置からの求めに応じて前記ユーザの認証用コード列の入力を受ける手段と、前記ユーザ認証段階において、前記入力された認証用コード列を、前記記憶資源に格納されている加工規則情報が表す加工規則に従って加工することにより、前記加工後パスワード列を生成する手段と、前記ユーザ認証段階において、前記生成された加工後パスワード列を前記認証装置に送る手段とを備える。
【００１０】
本発明に従う認証システムの第一の態様では、前記ユーザ装置の前記格納する手段は、前記認証装置以外の装置との間で共有されることのないよう制御されるデータ（例えばＷＥＢブラウザによって制御されるデータ）に、前記加工規則情報を設定し、前記加工規則情報が設定されたデータを、前記記憶資源に格納することができる。
【００１１】
ここで、そのデータとして、クッキー或いはシェアドオブジェクトとすることができる。具体的には、例えば、認証装置が、そのデータをユーザ装置に提供し、ユーザ装置（例えばユーザ装置に備えられているＷｅｂブラウザ）が、そのデータに、前記加工規則情報を設定することができる。
【００１２】
本発明に従う認証システムの第二の態様では、前記複数の選択肢の中から選択される選択肢の数は前記ユーザの任意の数であってもよい。この場合、前記ユーザ装置から前記認証装置が受ける加工後コード列の長さは、前記ユーザに選択された選択肢の数に応じて異なっている。
【００１３】
本発明に従う認証装置は、ユーザの認証用コード列を加工する規則である複数種類の加工規則がそれぞれ割り当てられていて、割り当てられた加工規則の種類をユーザが特定できないような態様になっている複数の選択肢を、ユーザの使用するユーザ装置に提示する手段と、前記ユーザに認証用コード列の入力を求める手段と、前記提示した複数の選択肢の中から前記ユーザに選択された選択肢に割り当てられている加工規則と、前記ユーザに入力された認証用コード列とに基づく認証用情報を記憶域に格納する手段とを備える。これらの各手段は、ユーザ登録段階で実行されるようになっている。更に、認証装置は、前記ユーザ登録段階で前記ユーザに選択された選択肢に割り当てられていた加工規則に従って前記ユーザの認証用コード列が前記ユーザ装置において加工されたものである加工後コード列を受ける手段と、前記受けた加工後コード列が、前記記憶域に記憶されている前記ユーザの認証用情報に適合するか否かを判断する手段とを備え、これらはユーザ認証段階で実行されるようになっている。
【００１４】
本発明に従う認証装置の第一の態様では、前記ユーザ登録段階において、前記複数種類の加工規則を前記複数の選択肢にそれぞれ割り当てる手段が更に備えられる。前記割り当てる手段は、同一の選択肢に割り当てる加工規則の種類を、前記ユーザ登録段階の都度に違えることができる。
【００１５】
本発明に従う認証装置の第二の態様では、同一のユーザであってもユーザ認証段階の都度に中身の異なる電子的な鍵を生成する手段と、前記生成された鍵を前記ユーザ装置に提供する手段と、前記ユーザ装置から受けた、前記提供された鍵で前記加工後コード列が暗号化されたものを、前記鍵で復号化する手段とが更に備えられる。これらは、前記ユーザ認証段階において実行される。前記判断する手段は、前記鍵での復号化によって得られた加工後コード列が前記ユーザの認証用情報に適合する否かを判断する。
【００１６】
上述した各手段は、ハードウェア、コンピュータプログラム又はそれらの組み合わせで実現することができる。コンピュータプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録しておきその記録媒体からインストールすることもできるし、通信ネットワークを介して或る装置からダウンロードすることもできる。
【発明の効果】
【００１７】
本発明によれば、ユーザの認証に用いられる認証用コード群が不特定の人間に盗られたとしてもそれが悪用されないようにすることができる。
【発明を実施するための最良の形態】
【００１８】
以下、図面を参照して、本発明の一実施形態について説明する。
【００１９】
図１は、本発明の一実施形態に係る認証システムの構成例を示す。
【００２０】
例えば、ＷＥＢサーバ１３は、通信ネットワーク（例えばインターネット）５１を介して、ユーザが使用する各ユーザ端末（別の言い方をすればクライアントマシン）１００と通信することができる。ユーザ端末１００は、ＣＰＵやメモリ等を備えた据置型の或いはモバイル型のコンピュータマシンであり、具体的には、例えば、パーソナルコンピュータ、携帯電話機などである。ＷＥＢサーバ１３は、データベース（例えばデータベースサーバ）１７にも通信可能に接続することができる。データベース１７には、後述するユーザテーブル３１を格納することができる。
【００２１】
ＷＥＢサーバ１３は、例えば、通信ネットワーク５１を介した通信を行うためのインターフェース装置（以下、「Ｉ／Ｆ」と略記）７や、データベース１７と通信を行うためのＩ／Ｆ５を備える。また、ＷＥＢサーバ１３は、プロセッサ９や、メモリ１１及び／又はメディアドライブ（例えばハードディスクドライブ）３等の記憶資源を備える。記憶資源には、複数種類のソフトウェア（コンピュータプログラム）が記憶され、各種ソフトウェアが適宜にプロセッサ９に読み込まれて実行される。
【００２２】
図１Ｂは、ＷＥＢサーバ１３におけるソフトウェアアーキテクチャの概要の一例を示す。
【００２３】
ＷＥＢサーバ１３では、ウィンドウズ（登録商標）等のオペレーティングシステム（ＯＳ）２１上で、アプリケーションプログラムの一種として認証プログラム２３が実行される。認証プログラム２３には、複数のプログラムモジュールが含まれている。複数のプログラムモジュールには、例えば、メールやＵＲＬを生成することができるメール／ＵＲＬ生成モジュール２４と、ユーザから入力されたパスワードの加工を制御する加工制御モジュール２５と、電子的な鍵を生成するための鍵生成モジュール２６と、生成された鍵を用いた復号化を行うための復号化モジュール２７とがある。認証プログラム２３は、これらのモジュール２４、２５、２６及び２７を適宜に利用して種々の処理を実行することができる。勿論、認証プログラム２３は、これらのモジュール２４、２５、２６及び２７以外のモジュールを備えることもできる。
【００２４】
図１Ｃは、ユーザ端末１００に備えられるソフトウェアアーキテクチャの概要の一例を示す。
【００２５】
ユーザ端末１００では、ウィンドウズ（登録商標）等のＯＳ１２１上で、アプリケーションプログラムの一種としてＷＥＢブラウザ１２３が実行される。ＷＥＢブラウザ１２３には、種々のコンピュータプログラム、例えば、制御プログラム１２５がプラグインされている。
【００２６】
制御プログラム１２５は、例えば、ＷＥＢサーバ１３から指定された場所からダウンロードされたコンピュータプログラムとすることができる。制御プログラム１２５は、例えば、Javascript（登録商標）で記述されたものであり、ユーザ端末１００における所定の記憶域（例えば所定のフォルダ）１２８上のクッキー１２６に記述されている加工方式情報が表す加工方式で、ＷＥＢブラウザ１２３が表示している画面上でユーザから入力されたパスワードを加工することができる（Javaは登録商標）。
【００２７】
なお、図１Ｃに記載のアーキテクチャは一例にすぎず、他のアーキテクチャを採用することができる。例えば、制御プログラム１２５は、プラグインされることに代えて、例えば、ＷＥＢブラウザ１２３が、所定のタイミングで、ＷＥＢサーバ１３から制御プログラム１２５を受信し（例えばＨＴＭＬで書かれた画面情報（例えばログイン用の画面の情報）と共に受信し）、それを解釈して実行しても良い。制御プログラム１２５もＷＥＢブラウザ１２３も、ユーザ端末１００内の図示しないプロセッサに読み込まれて実行されるものである。
【００２８】
図２は、ユーザテーブル３１の構成例を示す。
【００２９】
ユーザテーブル３１には、各ユーザ毎に、少なくとも、ユーザがＷＥＢサーバ１３にログインするために必要な情報が登録される。具体的には、例えば、ユーザテーブル３１には、各ユーザ毎に、ユーザＩＤ、加工後パスワード群、加工方式情報群及び電子メールアドレスが登録される。加工後パスワード群とは、加工方式情報群に含まれる各加工方式情報が表す加工方式で加工された後のパスワードである。二種類以上の加工方式に従ってパスワードが加工された場合には、加工後パスワード群は、加工された各パスワードが一つに連結されたもので構成される（詳細は後述する）。加工方式情報群とは、加工方式を表す加工方式情報を一つ以上含んだ情報である。加工方式とは、パスワードをどのように加工するかの方式であり、パスワードの変換規則と言うこともできる。図２には全てを図示しているわけではないが、この実施形態では、複数種類の加工方式として、５種類の加工方式「反転」、「１文字左シフト」、「２文字右シフト」、「２文字左シフト」及び「１文字右シフト」が用意されている。例えば、「反転」とは、パスワードを構成する各コードの位置を左右に反転することの意味であり、具体例として、パスワードが"１２３４５"である場合には、加工方式「反転」に従うと、加工後のパスワードは"５４３２１"となる。また、「１文字左シフト」とは、パスワードを構成する各コードの位置が一つ左に移動し、それに伴って、一番左に位置するコードが一番右に位置することを意味する。具体例として、パスワードが"１２３４５"である場合では、加工方式「１文字左シフト」に従うと、加工後のパスワードは"２３４５１"となる（なお、他のシフト系の加工方式についての説明は省略するが、この「１文字左シフト」の加工方式についての説明から、他のシフト系の加工方式についても理解することができる）。
【００３０】
この実施形態では、ユーザは、複数種類の加工方式の中から一種類以上の加工方式を選択することができる。二種類以上の加工方式が選択された場合、各種加工方式によって加工された各パスワードが連結され、複数の加工後パスワードから成る加工後パスワード群とされる。つまり、選択された加工方式の種類の数が多いほど、加工後パスワード群の桁数も多くなる。例えば、図２を見れば分かるとおり、パスワードが５桁の場合、選択された加工方式が３種類であれば、３種類の加工方式に従って加工された３つのパスワードが連結されるので、加工後パスワード群は１５桁になり、一方、選択された加工方式が２種類であれば、同様の理由から、加工後パスワード群は１０桁になる。
【００３１】
以下、図３以降を参照して、本実施形態で行われる処理の流れを説明する。
【００３２】
図３及び図４は、ユーザ登録処理の流れの一例を示す。
【００３３】
ＷＥＢサーバ（以下、単に「サーバ」と言う）１３は、所定のタイミングで（例えば、ユーザ端末１００からの所定の要求に応答して後述のユーザ登録画面４１をユーザ端末１００に提供する場合に）、各選択肢と各種加工方式とをランダムに組み合わせる（ステップＳ１）。具体的には、例えば、認証プログラム２３を読み出して実行するプロセッサ９が（以下、「認証プログラム２３が」と言う）、各選択肢と各種加工方式との不規則的な組み合わせを決定し、その組み合わせをメモリ１１に記憶させておく。ここで、選択肢とは、ユーザ端末１００に表示されてユーザの選択を受け得る情報である。この実施形態では、選択肢として、番号が採用されるが、それに限らず、他種の情報、例えば、アルファベット、色などを採用することができる。大事なことは、選択肢は、選択肢を見ただけでは、ユーザがその選択肢に対応付けられた加工方式を特定できないような態様になっていることである。ここでは、選択肢「１」に対して加工方式「反転」が、選択肢「２」に対して加工方式「１文字左シフト」が、選択肢「３」に対して加工方式「２文字右シフト」が、選択肢「４」に対して加工方式「２文字左シフト」が、選択肢「５」に対して「１文字右シフト」が、それぞれ組み合わされたとする。
【００３４】
次に、認証プログラム２３は、ユーザＩＤの登録欄４３、パスワードの登録欄４５及び複数の加工方式の選択肢４７が表示される電子的な画面（以下、ユーザ登録画面）４１を準備し（Ｓ２）、準備したユーザ登録画面４１をユーザ端末１００に提供する（Ｓ３）。ここで着目すべき工夫点として、各選択肢と各選択肢に組み合わされた加工方式とのうち、準備されるユーザ登録画面４１に表示されるのは、選択肢のみであって、加工方式は表示されない点である。
【００３５】
ユーザ端末１００のＷＥＢブラウザ１２３は、提供されたユーザ登録画面４１を、ユーザ端末１００の図示しない表示装置に表示する。ＷＥＢブラウザ１２３は、ユーザから、ユーザＩＤ及びパスワードの入力や、一つ以上の選択肢の選択を受ける（Ｓ４）。ここでは、選択肢「１」、「３」及び「４」が選択されたとする。
【００３６】
ＷＥＢブラウザ１２３が、選択肢「１」、「３」及び「４」にそれぞれ対応した加工方式「反転」、「２文字右シフト」及び「２文字左シフト」を表す情報をクッキー１２６（サーバ１３から所定のタイミングで受けたもの）に設定すると共に、ユーザＩＤ、パスワード及びユーザに指定された選択肢「１」、「３」、「４」を、サーバ１３に送信する（Ｓ５）。
【００３７】
なお、ここでは、例えば、ＷＥＢブラウザ１２３が、Ｓ３で、サーバ１３から提供されたユーザ登録画面４１の情報と共に、どの選択肢にどの加工方式が対応しているのかを表す情報を受けていて、Ｓ５で、その情報を基に、ユーザから指定された選択肢に対応する加工方式を表す情報をクッキー１２６に設定して保存しても良い。或いは、例えば、ＷＥＢブラウザ１２３が、Ｓ５で、ユーザに指定された各選択肢に対応する加工方式をサーバ１３に問い合わせ、サーバ１３が、その選択肢に対応する加工方式の情報をメモリ１１から特定してユーザ端末１００に返答し、ＷＥＢブラウザ１２３が、返答された加工方式をクッキー１２６に設定して、例えばユーザ端末１００内のハードディスクドライブに保存しても良い。また、ＷＥＢブラウザ１２３は、制御プログラム１２５を実行することにより、選択された選択肢に対応する加工方式でパスワードを加工して加工後パスワード群を生成し、加工後パスワード群をサーバ１３に送信しても良い。
【００３８】
サーバ１３は、ユーザＩＤ、パスワード及び一以上の選択肢を受信する（Ｓ６）。認証プログラム２３は、受信した一以上の選択肢にそれぞれ対応した一以上の加工方式情報をメモリ１１から特定し、加工制御モジュール２５により、特定された一以上の加工方式情報が表す一以上の加工方式で、受信したパスワードを加工する（Ｓ７）。ここでは、例えば、選択肢「１」、「３」及び「４」にそれぞれ対応した３種類の加工方式に従ってパスワードが加工され、その結果、３つの加工後パスワードから成る加工後パスワード群が得られる。
【００３９】
認証プログラム２３は、ユーザＩＤ、加工後パスワード群及び加工方式情報群（ユーザに選択された一以上の選択肢に対応する一以上の加工方式情報を含んだもの）を、データベース（以下、ＤＢ）１７内のユーザテーブル３１に登録する（Ｓ８）。なお、認証プログラム２３は、加工後パスワード群がユーザ端末１００で生成された場合には、そのユーザ端末１００からの加工後パスワード群をユーザテーブル３１に登録しても良い。
【００４０】
次に、認証プログラム２３は、電子メールアドレス登録欄４９を有した電子的な画面４８を準備してユーザ端末１００に送信する（Ｓ９）。
【００４１】
ユーザ端末１００のＷＥＢブラウザ１２３が、画面４８を受けて表示する。画面４８の登録欄４９に電子メールアドレスが入力された場合、ＷＥＢブラウザ１２３は、その電子メールアドレスをサーバ１３に送信する（Ｓ１０）。
【００４２】
認証プログラム２３は、電子メールアドレスを受け、その電子メールアドレスを、ＤＢ１７内のユーザテーブル３１の、Ｓ８で登録したユーザＩＤに対応する位置に登録する（Ｓ１１）。
【００４３】
その後、認証プログラム２３は、登録完了通知をユーザ端末１００に送信する（Ｓ１２）。ユーザ端末１００がその通知を受領することにより（Ｓ１３）、ユーザ登録の終了となる。
【００４４】
図５は、ログイン処理の流れの一例を示す。
【００４５】
認証プログラム２３が、鍵生成モジュール２６により、電子的な鍵（例えば乱数）を生成してメモリ１１に記憶させ、生成した鍵と、ユーザＩＤ入力欄５３及びパスワード入力欄５５を有した電子的な画面（以下、ログイン要求画面）５１とを、ユーザ端末１００に提供する（Ｓ１１）。
【００４６】
ユーザ端末１００は、ログイン要求画面５１及び鍵を受信し、ＷＥＢブラウザ１２３が、受信したログイン要求画面５１を表示する。やがて、ＷＥＢブラウザ１２３は、ユーザからユーザＩＤ及びパスワードの入力を受ける（Ｓ１２）。
【００４７】
ＷＥＢブラウザ１２３は、パスワードの入力を受けた場合、通信相手のサーバ１３のドメイン名に対応したクッキー１２６を所定の記憶域１２８から特定する（Ｓ１３）。そして、ＷＥＢブラウザ１２３は、制御プログラム１２５を実行することにより（このプログラム１２５は例えばＳ１１で受けても良い）、特定されたクッキー１２６に設定されている加工方式情報群中の各加工方式情報が表す各加工方式で、入力されたパスワードを加工し、それにより、加工後パスワード群を生成する（Ｓ１４）。
【００４８】
また、ＷＥＢブラウザ１２３は、生成された加工後パスワード群を、上記受信した鍵（例えば乱数）で暗号化することにより、暗号加工後パスワード群を生成する（Ｓ１５）。この暗号化のためのプログラムも、プラグインされていても良いし、所定のタイミングでサーバ１３から提供されても良い。
【００４９】
ＷＥＢブラウザ１２３は、入力されたユーザＩＤ及び生成された暗号加工後パスワード群と、ログイン要求とを、サーバ１３に送信する（Ｓ１６）。
【００５０】
サーバ１３は、ユーザＩＤ及び暗号加工後パスワード群とログイン要求とを受信する（Ｓ１７）。
【００５１】
ログイン要求に応答して、認証プログラム２３が、受信したユーザＩＤに対応する加工後パスワード群をＤＢ１７内のユーザテーブル３１から取得する（Ｓ１８）。また、認証プログラム２３は、復号化モジュール２７により、受信した暗号加工後パスワード群をＳ１１で生成した鍵（メモリ１１に記憶させた鍵）で復号化することで、加工後パスワード群を得る（Ｓ１９）。なお、この復号化に失敗した場合、認証プログラム２３は、ユーザ端末１００にエラー報告をしてもよい。
【００５２】
認証プログラム２３は、Ｓ１８で取得された加工後パスワード群と、Ｓ１９で得られた加工後パスワード群とを比較する（Ｓ２０）。その結果、一致が得られなければ（Ｓ２１でＮＯ）、認証プログラム２３は、ログインを拒否し（Ｓ２２）、一方、一致が得られたならば（Ｓ２１でＹＥＳ）、ログインを許可する（Ｓ２３）。
【００５３】
このログイン処理によれば、ユーザ登録処理においてユーザ端末１００に保存されたクッキー１２６に設定されている加工方式情報群を基に、ログイン処理において入力されたパスワードが加工される。しかし、この実施形態では、別のユーザ端末１００にも、そのクッキー１２６を設定することができる。以下、そのために行われる処理流れの一例を説明する。
【００５４】
図６は、ユーザ登録処理においてユーザ端末１００に保存されたクッキー１２６を別のユーザ端末１００に設定するための準備処理の流れの一例を示す。
【００５５】
この準備処理は、例えば、ログイン処理において、Ｓ２３でログイン許可され、ログイン済み状態になっている場合に行なわれる。
【００５６】
ＷＥＢブラウザ１２３は、他のユーザ端末１００からでもログインすることができるようにすることをサーバ１３に依頼する（Ｓ３１）。
【００５７】
認証プログラム２３は、その依頼に応答して、ログイン済みになっているユーザのユーザＩＤに対応した加工方式情報群及び電子メールアドレスを、ＤＢ１７内のユーザテーブル３１から取得する（Ｓ３２）。
【００５８】
次に、認証プログラム２３は、取得した加工方式情報群及び有効期限（例えば現時点から１０日後の日時）を設定したクッキー１２６を準備し、そのクッキー１２６を所定の記憶域（例えばＤＢ１７）に格納し、格納後のクッキー１２６の場所を示すＵＲＬを、メール／ＵＲＬ生成モジュール２４により生成する（Ｓ３３）。なお、上記の有効期限とは、クッキー１２６の有効期限、換言すれば、生成されたＵＲＬの有効期限である。
【００５９】
認証プログラム２３は、メール／ＵＲＬ生成モジュール２４により、Ｓ３２で取得した電子メールアドレス宛ての電子メールを準備し、その電子メールに、Ｓ３３で生成したＵＲＬを記載する（Ｓ３４）。
【００６０】
サーバ２３は、生成された電子メールを送信し（Ｓ３５）、依頼受付完了画面を、Ｓ３１の依頼元のユーザ端末１００に提供する（Ｓ３６）。
【００６１】
この一連の準備処理により、ユーザは、Ｓ３３で準備されたクッキー１２６のＵＲＬを取得することができる。具体的には、例えば、ユーザは、ユーザ登録処理において登録した電子メールアドレスを別の所望のユーザ端末１００に設定すれば、その別のユーザ端末１００で、Ｓ３５で送信された電子メールを受信することができる。或いは、ユーザは、ログイン済みのユーザ端末１００で電子メールを受信し、別の所望のユーザ端末１００に設定されている別の電子メールアドレスにその電子メールを転送することにより、その別のユーザ端末１００で、Ｓ３５で送信された電子メールを受信することもできる。
【００６２】
図７は、クッキー１２６のＵＲＬが記載された電子メールが別のユーザ端末１００に入力された後に行われる処理の流れの一例を示す。
【００６３】
別のユーザ端末１００は、ユーザからの操作に応答して、電子メールに書かれているＵＲＬにアクセスする（Ｓ４１）。
【００６４】
サーバ１３の認証プログラム２３は、そのアクセスを受けた場合、そのアクセスで指定されているＵＲＬに存在するクッキー１２６の有効期限をチェックする（Ｓ４２）。その結果、アクセスを受けた日時が有効期限を過ぎていれば（Ｓ４３でＮＯ）、認証プログラム２３は、別のユーザ端末１００にエラーを報告し（Ｓ４４）、一方、アクセスを受けた日時が有効期限内であれば（Ｓ４３でＹＥＳ）、指定されたＵＲＬに存在するクッキー１２６を、別のユーザ端末１００に送信する（Ｓ４５）。
【００６５】
別のユーザ端末１００は、サーバ１３からクッキー１２６を受信し、受信したクッキー１２６を、その端末１００内の記憶資源３０３に保存することができる（Ｓ４６）。この後は、別のユーザ端末１００は、図５に例示したログイン処理において、Ｓ１１−Ｓ２１が行われることにより、Ｓ２３のように、ログインを許可してもらうことができる。
【００６６】
以上、上述した実施形態によれば、ログイン処理において、ユーザ端末１００で、ユーザに予め選択された加工方式でパスワードが加工されて加工後パスワード群が生成され、サーバ１３では、ユーザ端末１００から受信した加工後パスワード群の正当性が検証される。これにより、仮に、フィッシング詐欺等の方法によってパスワードが盗られてしまったとしても、予め選択された加工方式さえ知られなければ、盗られたパスワードでサーバ１３にログインされてしまうことを防ぐことができる。
【００６７】
また、上述した実施形態によれば、ユーザ登録処理において選択され得る各選択肢と各加工方式との組み合わせは、ユーザ登録処理の都度に異なる。すなわち、或るユーザ登録処理において或る選択肢に対応付けられた加工方式と、別のユーザ登録処理において同一の選択肢に対応付けられた加工方式とが異なる。これは、加工方式が漏洩することの防止に貢献すると考えられる。
【００６８】
また、上述した実施形態によれば、ユーザ登録処理において、各選択肢と各選択肢に対応付けられた各加工方式とのうち、表示されるのは選択肢のみであって、加工方式は表示されない。そして、選択肢は、それを見ただけでは、それに対応付けられている加工方式が分からないような態様になっている。このことも、加工方式が漏洩することの防止に貢献すると考えられる。
【００６９】
また、上述した実施形態によれば、サーバ１３で鍵が生成され、生成された鍵がユーザ端末１００に送られ、ユーザ端末１００が、その鍵で、生成された加工後パスワード群を暗号化してから送信するようになっているが、その鍵は、ログイン処理の都度に異なる値である。これにより、暗号加工後パスワード群が盗聴されたとしても、盗聴された暗号加工後パスワード群を用いて別のログイン処理で不正にログインされてしまうといったことを防ぐことができる。
【００７０】
以上、本発明の一実施形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲をこの実施形態にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。
【００７１】
例えば、加工後パスワード群同士の一致というのは、完全に加工後パスワード群同士が一致していることに限らず、実質的に一致、換言すれば、一致しているという関係性が得られればよい。例えば、一方の加工後パスワード群が「Ｋ」で、他方の加工後パスワード群が「−Ｋ」でも、一致としてもよい（例えばＫは０又は０以外のコード）。
【００７２】
また、例えば、加工後パスワード群は、ユーザテーブル３１に登録されなくてもよい。この場合、認証プログラム２３は、ユーザ認証の際には、ユーザテーブル３１からパスワードと加工方式情報群とを読出し、それらに基づいて加工後パスワード群を生成し、生成された加工後パスワード群と、ユーザ端末１００から受信した加工後パスワード群とを比較しても良い。或いは、認証プログラム２３は、ユーザテーブル３１に登録されている加工方式情報群を基に、ユーザ端末１００からの加工後パスワード群からパスワードを算出し、算出されたパスワードと、ユーザテーブル３１に登録されているパスワードとを比較しても良い。
【００７３】
また、例えば、クッキー１２６の代わりに、別種の電子的なファイル、例えば、いわゆるフラッシュクライアントといわゆるフラッシュコミュニケーションサーバとの間で共有されるシェアドオブジェクトが採用されても良い。
【図面の簡単な説明】
【００７４】
【図１】図１は、本発明の一実施形態に係る認証システムの構成例を示す。図１Ｂは、ＷＥＢサーバ１３におけるソフトウェアアーキテクチャの概要の一例を示す。図１Ｃは、ユーザ端末１００におけるソフトウェアアーキテクチャの概要の一例を示す。
【図２】図２は、ユーザテーブル３１の構成例を示す。
【図３】図３は、本発明の一実施形態におけるユーザ登録処理の流れの一例の一部を示す。
【図４】図４は、本発明の一実施形態におけるユーザ登録処理の流れの一例の残りの一部を示す。
【図５】図５は、本発明の一実施形態におけるログイン処理の流れの一例を示す。
【図６】図６は、ユーザ登録処理においてユーザ端末１００に保存されたクッキー１２６を別のユーザ端末１００に設定するための準備処理の流れの一例を示す。
【図７】図７は、クッキー１２６のＵＲＬが記載された電子メールが別のユーザ端末１００に入力された後に行われる処理の流れの一例を示す。
【符号の説明】
【００７５】
１１…メモリ  １３…ＷＥＢサーバ  １７…データベース  ２３…認証プログラム  ２４…メール／ＵＲＬ生成モジュール  ２５…加工制御モジュール  ２６…鍵生成モジュール  ２７…復号化モジュール  １００…ユーザ端末  １２３…ＷＥＢブラウザ  １２５…制御プログラム
【図１】
2007065789.tif 000003
【図２】
2007065789.tif 000004
【図３】
2007065789.tif 000005
【図４】
2007065789.tif 000006
【図５】
2007065789.tif 000007
【図６】
2007065789.tif 000008
【図７】
2007065789.tif 000009