(57)【要約】【課題】改良された認証方法及びシステムを提供する。【解決手段】第１のコンピュータ装置へのユーザアクセスを、第２のコンピュータ装置を用いて制御することと関連した方法が提供される。１つの方法は、第１のアルゴリズムに従って認証データを生成するステップと、認証データ及び第２のコンピュータ装置と共有している情報を用いて第２のアルゴリズムに従って許容レスポンスデータを生成するステップとを含む。認証データは、第２のコンピュータ装置において受信され、ここで、共有情報及び受信した認証データを用いて第２のアルゴリズムに従ってレスポンスデータが生成される。第２の装置によって生成されたレスポンスデータは、第１のコンピュータ装置において受信され、許容レスポンスデータと比較される。レスポンスデータが許容レスポンスデータと一致している場合に、第１のコンピュータ装置へのアクセスが許可される。【選択図】図１
2012530996.tif 000002
【特許請求の範囲】
【請求項１】
ユーザによるリモートコンピュータへのアクセスを認証するためのシステムであって、
データネットワークに機能的に接続されており、チャレンジデータオブジェクトを受信しかつ前記ユーザによって入力されたレスポンスデータを送信するようにプログラミングされている第１のユーザコンピュータと、
前記データネットワークを介して前記第１のユーザコンピュータに機能的に接続されており、チャレンジデータオブジェクトを前記第１のユーザコンピュータに送信しかつ前記第１のユーザコンピュータからレスポンスデータを受信するようにプログラミングされているサーバと、
固有識別データを含み、ユーザによって入力された前記チャレンジデータオブジェクトを受信しかつ前記固有識別データを用いて前記レスポンスデータを計算して出力するようにプログラミングされている第２のユーザコンピュータとを含むことを特徴とするシステム。
【請求項２】
前記サーバが、固有識別子を含むデータストレージを含み、前記チャレンジデータオブジェクト及び前記ストアされた固有識別子を用いて比較用レスポンスデータを計算しかつ前記受信したレスポンスデータを前記比較用レスポンスデータと比較するようにさらにプログラミングされていることを特徴とする請求項１に記載のシステム。
【請求項３】
前記チャレンジデータオブジェクトが文字数字の列であることを特徴とする請求項１に記載のシステム。
【請求項４】
前記チャレンジデータオブジェクトが画像であることを特徴とする請求項１に記載のシステム。
【請求項５】
前記チャレンジデータオブジェクトがバーコードであることを特徴とする請求項１に記載のシステム。
【請求項６】
前記チャレンジデータオブジェクトが音声であることを特徴とする請求項１に記載のシステム。
【請求項７】
前記固有識別子が、前記ユーザに固有のデータオブジェクトのハッシュであることを特徴とする請求項１に記載のシステム。
【請求項８】
前記ユーザに固有の前記データオブジェクトが、電話番号または移動体装置ハードウェア識別番号のうちのいずれか１つであることを特徴とする請求項７に記載のシステム。
【請求項９】
前記サーバが、前記ユーザに固有の前記データオブジェクトに関連付けられた前記ユーザに固有のユーザ名及びパスワードを含むデータ構造をさらに含むことを特徴とする請求項７に記載のシステム。
【請求項１０】
リモートサーバへのアクセスを安全にする方法であって、
第１のユーザコンピュータに、チャレンジデータオブジェクトを送信するステップと、
第２のユーザコンピュータに、固有識別データ及び前記チャレンジデータオブジェクトを用いてレスポンスデータを計算しかつ前記レスポンスデータを出力するステップを実行時に行うプログラムコードを含むデータを送信するステップと、
前記第１のユーザコンピュータから前記レスポンスデータを受信するステップと、
前記受信したレスポンスデータが前記送信されたチャレンジデータオブジェクトに正確に対応していることを検証するステップとを含むことを特徴とする方法。
【請求項１１】
前記固有識別データが、前記プログラムコードを含む前記データとともに含まれていることを特徴とする請求項１０に記載の方法。
【請求項１２】
前記固有識別データが、前記第２のユーザコンピュータのハードウェアから派生したものであることを特徴とする請求項１１に記載の方法。
【請求項１３】
前記第１のユーザコンピュータが、インターネットにつながったパーソナルコンピュータであり、前記第２のユーザコンピュータが携帯電話であることを特徴とする請求項１０に記載の方法。
【請求項１４】
前記チャレンジデータオブジェクトが文字数字の列であることを特徴とする請求項１０に記載の方法。
【請求項１５】
前記チャレンジデータオブジェクトが画像であることを特徴とする請求項１０に記載の方法。
【請求項１６】
前記チャレンジデータオブジェクトがバーコードであることを特徴とする請求項１０に記載の方法。
【請求項１７】
前記チャレンジデータオブジェクトが音声であることを特徴とする請求項１０に記載の方法。
【請求項１８】
前記固有識別子が、前記ユーザに固有のデータオブジェクトのハッシュであることを特徴とする請求項１０に記載の方法。
【請求項１９】
前記ユーザに固有の前記データオブジェクトが、電話番号または移動体装置ハードウェア識別番号のうちのいずれか１つであることを特徴とする請求項１８に記載の方法。
【請求項２０】
請求項１０の前記一連のステップを協働して行う１若しくは複数のコンピュータを含むシステム。
【請求項２１】
ユーザによるリモートコンピュータへのアクセスを認証する方法であって、該方法がユーザのコンピュータ上で実行され、
メモリからチャレンジデータオブジェクトを読み出すステップと、
メモリから固有識別データを読み出すステップと、
レスポンスデータを計算するステップと、
前記レスポンスデータを出力するステップとを含むことを特徴とする方法。
【請求項２２】
ユーザによるリモートコンピュータへのアクセスを認証する方法であって、
前記ユーザに関連する固有識別データを読み出すステップと、
前記固有識別データを、請求項２１の前記一連のステップを実行時に行うコンピュータプログラムを含むデータオブジェクトに挿入するステップと、
前記固有識別データ及び前記コンピュータプログラムを含む前記データオブジェクトを送信するステップとを含むことを特徴とする方法。
【請求項２３】
チャレンジデータオブジェクトを、前記ユーザによって操作される第１のコンピュータに送信するステップと、
前記ユーザによって操作される第２のコンピュータ上での前記送信されたプログラムの動作によって計算されたレスポンスデータを受信するステップと、
前記受信したレスポンスデータが前記送信されたチャレンジデータオブジェクトに正確に対応していることを検証するステップとをさらに含むことを特徴とする請求項２２に記載の方法。
【請求項２４】
ユーザによるリモートコンピュータへのアクセスを認証する方法であって、
チャレンジデータオブジェクトを受信するステップと、
前記チャレンジデータオブジェクトの受信に対応して、前記リモートコンピュータと共有している所定の固有識別子を用いて、そのデータを抽出するために前記チャレンジデータオブジェクトにおける第１の位置群を計算するステップと、
前記計算した位置において前記チャレンジデータオブジェクトからデータを抽出するステップと、
前記抽出したデータに基づいて、レスポンスデータを生成するステップとを含むことを特徴とする方法。
【請求項２５】
前記受信するステップが、画像取込、音声取込、文字数字テキストの入力のうちの１つを含むことを特徴とする請求項２４に記載の方法。
【請求項２６】
前記受信するステップが、前記ユーザによるコンピュータユーザインタフェースの操作であることを特徴とする請求項２４に記載の方法。
【請求項２７】
前記第１の位置群を第２の位置群に置き換えるステップをさらに含み、前記第２の位置群が、前記第１の位置群の値に基づいて計算されることを特徴とする請求項２４に記載の方法。
【請求項２８】
前記第１のユーザコンピュータ及び前記第２のユーザコンピュータが、同じハードウェア装置上で実行する２つのプロセスであることを特徴とする請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本継続特許出願は、２００９年６月２４日出願の英国特許出願第０９１０８９７．８号（特許文献１）を引用することを以て本明細書の一部となし、35 U.S.C. 119の定めるところにより継続出願として上記特許出願に基づく優先権を主張する。
【０００２】
本発明は、コンピュータ装置へのアクセスを制御する方法に関する。本発明は、同方法を行うシステムと、適切なコンピュータ上で実行された場合に同方法を行わせるコンピュータプログラムにも関する。
【背景技術】
【０００３】
コンピュータシステムへのアクセスを要求するユーザの真正性を確立することは、最も重要である。このことは、コンピュータシステムが、データベースなどの情報のリポジトリへのアクセスを含むかまたは有するときに特に当てはまる。情報のリポジトリには、機密扱いの、秘密の、特定の人しか知らないかまたは限定された情報、例えば、銀行記録、一身専属性の情報、あるいは正規ユーザに他のコンピュータシステムまたはデータベースへのアクセスを許可するための認証の詳細などが入っていることが多い。インターネットに接続されたコンピュータシステムに対する攻撃は、特によくみられ、画策されやすい。従って、そのようなコンピュータシステムの所有者または保守管理者は普通、システムがコンピュータシステムへの不正アクセスを制限または防止することができることを確実にする。
【０００４】
コンピュータシステムにアクセスしたいユーザは、自身の身元を既知の、認証されたユーザ名として与えることを要求される。このユーザ名は、通常はパスワードまたはパスフレーズと関連付けられており、その構成は、そのような知識を持つことを許されている者にのみ知らされている。しかし、正規ユーザは、容易に推測されるユーザ名を有しかつ／または辞書に載っている言葉に基づくパスワードまたはパスフレーズを選択しているかまたは付与されているのが普通である。それにより、認証システムは、攻撃されやすくなって弱体化される。攻撃が成功したら、コンピュータシステムと、関連するデータベースにストアされた情報とに対する不正かつ悪意もあるアクセスが可能になるかもしれない。
【０００５】
ユーザ名またはパスワードは、コンピュータシステムまたは関連するデータベースへのアクセスを得ようとするユーザによって端末に入力されるときに、傍受（盗み見）されることがある。例えば、既存の認証システムによって示されるフォームフィールドにユーザがユーザ名及びパスワードを入力するとき、何気なくそれを見た者が、キーボードのどのキーが押されているのか、または文字コード表からどの文字（数字・符号）が選択されているのかに気付くことがある。さらに遠回しに言えば、コンピュータシステムまたは関連するデータベースへのアクセスを要求するユーザによって提供される認証情報を、ユーザの全てのキー入力または操作を記録する際に取り込む（キャプチャする）ことができるキーロギングソフトが、寄生する形で端末に侵入しているかもしれない。そのように集めた認証情報を用いて、コンピュータシステムまたは関連するデータベースにアクセスすることができる。
詳細を集めるためにキーロギングソフトが使用されることを防止するために、ログインフォームの内容がユーザによってストアされることを認めているセキュリティシステムもあるが、ユーザは、或る時点で、特定のコンピュータシステムまたは関連するデータベースへのアクセスの要求に関連したフォームに認証情報を入力しなければならない。また、これらの認証情報がストアされているファイルは、たとえそれが暗号化された形であっても、アクセス可能である場合がある。
【０００６】
あるいは、特定のコンピュータシステムまたは関連するデータベースにアクセスするための個人用ライセンスをライセンスを受けていない者と共有しようとして、ユーザ名及び対応するパスワードが真正なユーザによって意図的に公開されることがある。盗まれた認証は、窃盗犯または彼らのエージェントによって同じように公開される可能性がある。こうして、データベースにストアされ、支払い済みのアカウント保有者のみがアクセスすべき商業的に価値がある資料を、そのような価値ある資料へのアクセスに対して対価を支払っていない者たちが利用できるようになる場合がある。認証アカウント用のユーザ名及び対応するパスワードが公開ウェブページに公然と掲載され、その事実がしばらくの間ライセンサに知られていない状態であるかもしれないということがあり得る。結果として、セキュリティリークが発見されて、攻撃されたアカウントが一時的に止められかつ／または関連ログイン認証情報が変更されるまで、多くの商業的損害がもたらされたかもしれない。
【０００７】
場合によっては、ユーザのユーザ名及びパスワードは、失効せず、アカウントが閉じられるまでアカウントに関連付けられる。しかし、ユーザ名及び関連パスワードが所定期間経過後に失効し、ユーザが定期的に新しいパスワードを発行されるかまたは選択することを要求されることも、当分野ではよく知られている。パスワードの変更を頻繁に行うのであれば、ユーザは新しいパスワードを覚えていなければならないが、パスワードが文字及び数字のランダムな組合せであれば（これは、総当たり攻撃で容易に破られないので、より安全な形態のパスワードであることを意味する）、ユーザがそれを覚えていることは難しいであろう。あるいは、ユーザは、単にパスワードのリストを周期的に繰り返してもよいが、認証システムのセキュリティは時間とともに低下する。
【０００８】
自動プロセス（例えば、悪意のあるソフトウェアが、ユーザに関する既知の個人情報のリスト、例えば電子メールアドレス、名前及び名前の変型などを使用するもの）によって「傍受」されたアカウントへの悪意のあるアクセスを防止するために、当技術分野の認証システムは、上記プロセスと人間を区別する入力を要求することがある。それゆえ、或る認証システムがユーザ名及びパスワードとして電子メールアドレスを要求するフォームを提示する場合には、認証システムは、例えばＣＡＰＴＣＨＡシステムを用いて、文字の動的に生成された歪んだ画像（イメージ）または英数字のランダムな組合せを提示することもできる。ユーザは、これに応えて、歪んだ画像に示されている言葉または文字（数字・符号も含む）をフォームフィールド入力することが期待される。
【０００９】
画像は、機械（コンピュータ）が文字を解釈することができず、従って人間のみが認証システムによってこのチャレンジに応答することができるように設計される。当然のことながら、例えばウェブページから、または後ろからのぞき込むことによって真正ユーザのユーザ名及びパスワードを取得した悪意のあるユーザは誰でも、歪んだ画像を解釈し、チャレンジへの有効なレスポンスを提供することができる。従って、認証システムは、悪意のあるユーザに対して安全ではない。さらに、目の不自由な人々は認証システムを使用することができない。
【００１０】
従って、保護されたコンピュータシステムまたは接続されたデータベースとの伝送中の傍受、またはユーザ入力をキーログするかまたは何気なく見てしまうことによる傍受、または公共のウェブサイトでの意図的な公開のリスクを低下させるさらなるセキュリティの程度を認証システムが提供することが望ましい。上記した認証技術を向上させるために、ユーザにアクセサリー（付属機器類）を提供してもよいし、またはユーザの行動様式に関する統計データを収集してもよい。
【００１１】
米国特許第６，９８３，８８２号明細書（特許文献２）には、認証されるべき生体情報をユーザから入手し、そのように入手された情報を当該ユーザのリファレンス情報と比較する認証デバイスが教示されている。認証は、認証される個人に固有のものであるが、グループやチームに容易に与えることができず、収集できる生体情報との一貫性に関連する問題が生じやすい。
【００１２】
欧州特許第１３０８９０９号明細書（特許文献３）は、時間とともに変化する無線信号を端末が受信する認証手段を教示している。無線信号は、擬似乱数生成用のシードデータ（seed data）を提供し、擬似乱数から署名（シグネチャ）を生成することができる。同じ無線信号は、アクセスされることになるコンピュータシステムによって、予期される署名が該コンピュータシステムによって生成され得るように受信され、端末によって生成された署名と比較される。両者が一致する場合、アクセスが許可される。端末は、署名を生成するためのアルゴリズムを用いてプログラミングされたプロセッサを含むチップを有するカードと併用される。
【００１３】
欧州特許第１８４３２７２号明細書（特許文献４）には、携帯型端末に接続するためのドングルが開示されている。そのような接続の結果、ユーザが銀行サービスとの取引のための認証セッションを完了することができるように端末によってユーザに提示されるコードが得られる。専用端末及びドングルの支給は、コストが掛かり、多くの場合ユーザにとって不便であり、ユーザは、認証セッションを開始するときに、これらの一般的でないアクセサリーが確実に手元にあるようにしなければならない。米国特許出願第２００８／０１６２３３８号明細書（特許文献５）には、ＩＰアドレス、ブラウザＩＤ、ユーザの最後のログインからの２４時間制の時刻及び時間などのオンラインセッション統計のモニタリングが教示されている。これらの要素に基づいて非蓋然性の程度が計算され、非蓋然性の程度がしきい値を超えた場合にアクセスが許可される。通常は使用しないリモートサイトからの認証を得ようと試みるユーザは、このシステムを用いるとき、許可されるべきときにアクセスを拒否される可能性がある。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】英国特許出願第０９１０８９７．８号
【特許文献２】米国特許第６，９８３，８８２号明細書
【特許文献３】欧州特許第１３０８９０９号明細書
【特許文献４】欧州特許第１８４３２７２号明細書
【特許文献５】米国特許出願第２００８／０１６２３３８号明細書
【発明の概要】
【発明が解決しようとする課題】
【００１５】
上記の各先行技術は、様々な問題のうちの１つを抱えている。例を挙げると、ハッカーがいとも簡単に打ち破ってしまう（例えば一要素認証技術）、より安全ではあるが扱いにくくて使いづらい、有効なユーザへのアクセスを拒否する傾向がある、利用するために高価な機器を必要とする、などである。
【課題を解決するための手段】
【００１６】
本発明の第１の態様によれば、第１のコンピュータ装置（通常はサーバ）へのアクセスを制御する方法であって、第１のアルゴリズムに従ってチャレンジデータオブジェクトを含む認証データを生成するステップと、認証データすなわちチャレンジデータオブジェクト及び第２のコンピュータ装置と共有している固有識別情報を用いて第２のアルゴリズムに従って許容（acceptable）レスポンスデータを生成するステップと、第２のコンピュータ装置において認証データを受信するステップと、第２のコンピュータ装置において共有固有識別情報及び受信した認証データまたはチャレンジデータオブジェクトを用いて第２のアルゴリズムに従ってレスポンスデータを生成するステップと、第２の装置によって生成されたレスポンスデータを受信するステップと、レスポンスデータを許容レスポンスデータと比較するステップと、レスポンスデータが許容レスポンスデータと一致している場合に、第１のコンピュータ装置へのアクセスを許可するステップとを含む方法が提供される。
【００１７】
本発明は、適切にプログラミングされた携帯電話や携帯情報端末（ＰＤＡ）などの容易に入手可能なコンピューティング機器を介して利用しやすい第２の要素を認証プロセスに導入することによって、先行技術が提起する問題を克服する。これは、第２のコンピュータ装置として用いられることができる。そのような装置は、今や先進国世界においてほぼ至る所で使われており、現代の携帯電話には、インターネットから適切なアプリケーションソフトをダウンロードすることができる。従って、本発明は、ユーザへの追加的負担をそれほど発生させずに、追加費用がほとんどまたは全くなしで、認証プロセスにより提供されるセキュリティのレベルを劇的に高める。
【００１８】
本発明の第２の態様によれば、第１のコンピュータ装置へのアクセスを制御する方法であって、第１のアルゴリズムに従って認証データを生成するステップと、認証データ及び第２のコンピュータ装置と共有している情報を用いて第２のアルゴリズムに従って許容レスポンスデータを生成するステップと、第２のコンピュータ装置によって生成されたレスポンスデータを受信するステップと、レスポンスデータを許容レスポンスデータと比較するステップと、レスポンスデータが許容レスポンスデータと一致している場合に、第１のコンピュータ装置へのアクセスを許可するステップとを含む方法が提供される。
【００１９】
通常、これらの第１及び第２の態様において、第１のコンピュータ装置は、以下のステップ群、すなわち、第１のアルゴリズムに従って認証データを生成するステップと、認証データ及び第２のコンピュータ装置と共有している情報を用いて第２のアルゴリズムに従って許容レスポンスデータを生成するステップと、第２の装置によって生成されたレスポンスデータを受信するステップと、レスポンスデータを許容レスポンスデータと比較するステップと、レスポンスデータが許容レスポンスデータと一致している場合に、第１のコンピュータ装置へのアクセスを許可するステップのうちの少なくとも１つのステップを実行する。
【００２０】
許容レスポンスデータを生成するステップは、第２の装置によって生成されたレスポンスデータを受信した後に行ってもよい。
【００２１】
レスポンスデータは、無線通信リンク経由で受信することができる。
【００２２】
レスポンスデータを受信するステップは、レスポンスデータを含むショートメッセージサービス（Short Message Service）「ＳＭＳ」メッセージまたは電子メールを受信するステップを含み得る。
【００２３】
本発明の第３の態様によれば、第１のコンピュータ装置へのアクセスの制御に用いるために第２のコンピュータ装置においてレスポンスデータを生成する方法であって、第１のアルゴリズムに従って遠隔装置において生成された認証データを第２のコンピュータ装置において受信するステップと、認証データの受信に対応して、認証データ及び遠隔装置と共有している所定の情報を用いて第２のアルゴリズムに従ってレスポンスデータを生成するステップとを含む方法が提供される。
【００２４】
通常、この第３の態様において、遠隔装置は第１のコンピュータ装置である。
【００２５】
通常、第１及び第３の態様において、第２のコンピュータ装置において認証データを受信するステップは、認証データが埋め込まれている画像をカメラを用いて取り込むステップを含む。画像は、２次元バーコードであることが好ましい。あるいは、画像は、コンピュータの視覚的表示装置（ＶＤＵ）用に設定され、ＶＤＵ画素または画素群のクロミナンス、輝度及び画像内の位置のうちの１若しくは複数を用いて認証データを提示することができる。画像の複雑さは、カメラが確実に取り込むことができる画像解像度及びＶＤＵの解像度によって決定される。
【００２６】
別の代替形態として、第１及び第３の態様において、第２のコンピュータ装置における認証データを受信するステップは、マイクロホンを通しての或る音声または一連の音声を受信するステップを含む。
【００２７】
さらなる代替形態として、第１及び第３の態様において、第２のコンピュータ装置において認証データを受信するステップは、無線通信リンク経由、例えばBluetooth（登録商標）経由、ＷｉＦｉ経由などで認証データを受信するステップを含む。
【００２８】
別の代替形態では、第１及び第３の態様において、第２のコンピュータ装置において認証データを受信するステップは、認証データを含むユーザ入力（例えばキーパッドを用いて）を受信するステップを含む。
【００２９】
あるいは、第１及び第３の態様において、第２のコンピュータ装置における認証データを受信するステップは、認証データを含むショートメッセージサービス「ＳＭＳ」メッセージまたは電子メールを受信するステップを含む。
【００３０】
通常、これら３つの態様のいずれにおいても、共有情報は、第２の装置に固有の、例えば国際移動体装置識別番号（International Mobile Equipment Identity）「ＩＭＥＩ」や移動加入者識別番号（International Mobile Subscriber Identity）「ＩＭＳＩ」などの識別子またはその表現／派生物を含む。
【００３１】
第４の態様によれば、第１のコンピュータ装置へのアクセスを制御するためのシステムであって、上記した第２の態様の方法のステップを行うように適合されたプロセッサ及び／または上記した第３の態様の方法のステップを行うように適合されたプロセッサを含むシステムが提供される。
【００３２】
第５の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第２の態様の方法を行わせるコンピュータ実装可能な命令を含むコンピュータプログラムが提供される。
【００３３】
第６の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第３の態様の方法を行わせるコンピュータ実装可能な命令を含むコンピュータプログラムが提供される。
【００３４】
第７の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第２の態様の方法を行わせるコンピュータプログラムを含むコンピュータプログラム製品が提供される。
【００３５】
第８の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第３の態様の方法を行わせるコンピュータプログラムを含むコンピュータプログラム製品が提供される。
【００３６】
本発明の第９の態様によれば、第１のコンピュータ装置へのアクセスを制御する方法であって、第２のコンピュータ装置と共有している情報を用いて第１のアルゴリズムに従ってシードデータから認証データを生成するステップと、第２のコンピュータ装置において認証データを受信するステップと、第２のコンピュータ装置において第２のアルゴリズムに従って共有情報及び受信した認証データを用いてレスポンスデータを生成するステップと、第２の装置によって生成されたレスポンスデータを受信するステップと、第１のコンピュータ装置においてレスポンスデータをシードデータと比較するステップと、レスポンスデータがシードデータと一致している場合に、第１のコンピュータ装置へのアクセスを許可するステップとを含む方法が提供される。
【００３７】
本発明の第１０の態様によれば、第１のコンピュータ装置へのアクセスを制御する方法であって、第２のコンピュータ装置と共有している情報を用いて第１のアルゴリズムに従ってシードデータから認証データを生成するステップと、第２の装置から生じたレスポンスデータを受信するステップと、レスポンスデータをシードデータと比較するステップと、レスポンスデータがシードデータと一致している場合に、第１のコンピュータ装置へのアクセスを許可するステップとを含む方法が提供される。
【００３８】
通常、これらの第９及び第１０の態様によれば、レスポンスデータを受信するステップは、無線通信リンクを通してレスポンスデータを受信するステップを含む。
【００３９】
レスポンスデータを受信するステップは、レスポンスデータを含むショートメッセージサービス「ＳＭＳ」メッセージまたは電子メールを受信するステップを含み得る。
【００４０】
本発明の第１１の態様によれば、第１のコンピュータ装置へのアクセスの制御に用いるために第２のコンピュータ装置においてレスポンスデータを生成する方法であって、第２のコンピュータ装置と共有している情報を用いて第１のアルゴリズムに従って遠隔装置において生成された認証データを第２のコンピュータ装置において受信するステップと、認証データの受信に対応して、認証データ及び共有情報を用いて第２のアルゴリズムに従ってレスポンスデータを生成するステップとを含む方法が提供される。
【００４１】
通常、この第１１の態様によれば、遠隔装置は第１のコンピュータ装置である。
【００４２】
第９または第１１の態様において、第２のコンピュータ装置における認証データを受信するステップは、認証データが埋め込まれている画像をカメラを用いて取り込むステップを含むことが好ましい。画像は２次元バーコードであることが、より好ましい。あるいは、画像は、コンピュータの視覚的表示装置（ＶＤＵ）用に設定され、ＶＤＵ画素または画素群のクロミナンス、輝度及び画像内の位置のうちの１若しくは複数を用いて認証データを提示することができる。画像の複雑さは、カメラが確実に取り込むことができる画像解像度及びＶＤＵの解像度によって決定される。
【００４３】
あるいは、第９または第１１の態様において、第２のコンピュータ装置において認証データを受信するステップは、マイクロホンを通して或る音声または一連の音声を受信するステップを含む。
【００４４】
別の代替形態として、第９または第１１の態様において、第２のコンピュータ装置において認証データを受信するステップは、無線通信リンク経由、例えばBluetooth（登録商標）経由、ＷｉＦｉ経由などで認証データを受信するステップを含む。
【００４５】
さらなる代替形態として、第９または第１１の態様において、第２のコンピュータ装置において認証データを受信するステップは、認証データを含むユーザ入力（例えばキーパッドを用いて）を受信するステップを含む。
【００４６】
さらに別の代替形態として、第９または第１１の態様において、第２のコンピュータ装置において認証データを受信するステップは、認証データを含むショートメッセージサービス「ＳＭＳ」メッセージまたは電子メールを受信するステップを含む。
【００４７】
通常、第９または第１１の態様において、第１及び第２のアルゴリズムは、互いに逆のアルゴリズムを含む。
【００４８】
第１のアルゴリズムは、非対称暗号化アルゴリズムであり、第２のアルゴリズムは、第１のアルゴリズムに対応する非対称復号アルゴリズムであり、共有秘密情報は、第１及び第２のアルゴリズムによって用いられる所定の公開鍵を含むことが好ましい。例えば、第１及び第２のアルゴリズムはそれぞれ、高度暗号化標準（ＡＥＳ）で規定される暗号化アルゴリズム及び復号アルゴリズムであってよい。共有秘密情報は、国際移動体装置識別番号「ＩＭＥＩ」または移動加入者識別番号「ＩＭＳＩ」であるかあるいはそこから派生した所定の秘密鍵を含み得る。
【００４９】
あるいは、第１のアルゴリズムは、非対称暗号化アルゴリズムであり、第２のアルゴリズムは、第１のアルゴリズムに対応する非対称復号アルゴリズムであり、共有情報は、所定の１対の公開鍵／秘密鍵と、暗号化アルゴリズムによって用いられる所定の公開鍵と、復号アルゴリズムによって用いられる所定の秘密鍵とを含む。例えば、第１及び第２のアルゴリズムは、それぞれＲＳＡ暗号化アルゴリズムの暗号化及び復号部分であってよい。共有秘密情報は、国際移動体装置識別番号「ＩＭＥＩ」または移動加入者識別番号「ＩＭＳＩ」から派生した所定の１対の公開鍵／秘密鍵を含み得る。
【００５０】
通常、第９、第１０または第１１の態様のいずれにおいても、シードデータは、ＵＮＩＸ（登録商標）タイムスタンプ、擬似乱数、ユーザ入力から無作為に選ばれた文字などを含む。
【００５１】
本発明の第１２の態様によれば、第１のコンピュータ装置へのアクセスを制御するためのシステムであって、上記した第９または第１０の態様の方法のステップを行うように適合されたプロセッサ及び／または上記した第１１の態様の方法のステップを行うように適合されたプロセッサを含むシステムが提供される。
【００５２】
本発明の第１３の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第１０の態様の方法を行わせるコンピュータ実装可能な命令を含むコンピュータプログラムが提供される。
【００５３】
本発明の第１４の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第１１の態様の方法を行わせるコンピュータ実装可能な命令を含むコンピュータプログラムが提供される。
【００５４】
本発明の第１５の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第１０の態様の方法を行わせるコンピュータプログラムを含むコンピュータプログラム製品が提供される。
【００５５】
本発明の第１６の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第１１の態様の方法を行わせるコンピュータプログラムを含むコンピュータプログラム製品が提供される。
【００５６】
本発明の第１７の態様によれば、第１のコンピュータ装置へのアクセスを制御する方法であって、第１のアルゴリズムに従ってシードデータから認証データを生成するステップと、第２のコンピュータ装置において認証データを受信するステップと、第２のコンピュータ装置において第１のコンピュータ装置と共有している情報及び受信した認証データを用いて第２のアルゴリズムに従ってレスポンスデータを生成するステップと、第２の装置によって生成されたレスポンスデータを受信するステップと、受信したレスポンスデータ及び共有情報を用いて、レスポンスデータが第２の装置によって生成されたことを検証するステップと、第２の装置がレスポンスデータを生成したことが検証された場合に、第１のコンピュータ装置へのアクセスを許可するステップとを含む方法が提供される。
【００５７】
本発明の第１８の態様によれば、第１のコンピュータ装置へのアクセスを制御する方法であって、第１のアルゴリズムに従ってシードデータから認証データを生成するステップと、第２の装置によって生成されたレスポンスデータを受信するステップと、受信したレスポンスデータ及び第２の装置との共有情報を用いて、レスポンスデータが第２の装置によって生成されたことを検証するステップと、第２の装置がレスポンスデータを生成したことが検証された場合に、第１のコンピュータ装置へのアクセスを許可するステップとを含む方法が提供される。
【００５８】
通常、第１７及び第１８の態様において、レスポンスデータを受信するステップは、無線通信リンク経由、例えばBluetooth（登録商標）経由、ＷｉＦｉ経由などでレスポンスデータを受信するステップを含む。
【００５９】
あるいは、レスポンスデータを受信するステップは、レスポンスデータを含むショートメッセージサービス「ＳＭＳ」メッセージまたは電子メールを受信するステップを含む。
【００６０】
本発明の第１９の態様によれば、第１のコンピュータ装置へのアクセスの制御に用いるために第２のコンピュータ装置においてレスポンスデータを生成する方法であって、第２のコンピュータ装置と共有している情報を用いて第１のアルゴリズムに従って遠隔装置において生成された認証データを第２のコンピュータ装置において受信するステップと、認証データの受信に対応して、認証データ及び共有情報を用いて認証データまたはその派生物にデジタル署名アルゴリズムを用いてデジタル署名するステップとを含む方法が提供される。例えば、デジタル署名アルゴリズムは、デジタル署名アルゴリズム（ＤＳＡ）標準または同等のもの、例えば楕円曲線デジタル署名アルゴリズム（ＥＣＤＳＡ）などに従う署名アルゴリズムであってよい。同様に、第２の装置によってレスポンスデータが生成されたことの検証は、デジタル署名アルゴリズム（ＤＳＡ）標準または同等のもの、例えば楕円曲線デジタル署名アルゴリズム（ＥＣＤＳＡ）などに従う検証アルゴリズムによって行うことができる。
【００６１】
通常、第１７または第１９の態様において、第２のコンピュータ装置において認証データを受信するステップは、認証データが埋め込まれている画像をカメラを用いて取り込むステップを含む。画像は、２次元バーコードであることが好ましい。あるいは、画像は、コンピュータの視覚的表示装置（ＶＤＵ）用に設定され、ＶＤＵ画素または画素群のクロミナンス、輝度及び画像内の位置のうちの１若しくは複数を用いて認証データを提示することができる。画像の複雑さは、カメラが確実に取り込むことができる画像解像度及びＶＤＵの解像度によって決定される。
【００６２】
あるいは、第１７または第１９の態様において、第２のコンピュータ装置において認証データを受信するステップは、マイクロホンを通して或る音声または一連の音声を受信するステップを含む。
【００６３】
通常、第１７または第１９の態様において、第２のコンピュータ装置において認証データを受信するステップは、無線通信リンク経由、例えばBluetooth（登録商標）経由またはＷｉＦｉ経由で認証データを受信するステップを含む。
【００６４】
[0064]あるいは、第１７または第１９の態様において、第２のコンピュータ装置において認証データを受信するステップは、認証データを含むユーザ入力（例えばキーパッドを用いて）を受信するステップを含む。
【００６５】
さらなる代替形態として、第２のコンピュータ装置において認証データを受信するステップは、認証データを含むショートメッセージサービス「ＳＭＳ」メッセージまたは電子メールを受信するステップを含む。
【００６６】
第１７、第１８または第１９の態様によれば、共有情報は、国際移動体装置識別番号「ＩＭＥＩ」または移動加入者識別番号「ＩＭＳＩ」に基づくかあるいはそこから派生した１対の公開鍵を含むことが好ましい。
【００６７】
本発明の第２０の態様によれば、第１のコンピュータ装置へのアクセスを制御するためのシステムであって、上記した第１８の態様の方法のステップを行うように適合されたプロセッサ及び／または上記した第１９の態様の方法のステップを行うように適合されたプロセッサを含むシステムが提供される。
【００６８】
本発明の第２１の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第１８の態様の方法を行わせるコンピュータ実装可能な命令を含むコンピュータプログラムが提供される。
【００６９】
本発明の第２２の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第１９の態様の方法を行わせるコンピュータ実装可能な命令を含むコンピュータプログラムが提供される。
【００７０】
本発明の第２３の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第１８の態様の方法を行わせるコンピュータプログラムを含むコンピュータプログラム製品が提供される。
【００７１】
本発明の第２４の態様によれば、或るプログラム可能なコンピュータによって実行されるときに該プログラム可能なコンピュータに上記した第１９の態様の方法を行わせるコンピュータプログラムを含むコンピュータプログラム製品が提供される。
【００７２】
本発明のさらなる態様によれば、画像から認証データを読み出す方法であって、遠隔装置において生成された認証データを第２のコンピュータ装置において受信するステップと、認証データの受信に対応して、認証データ及び遠隔装置と共有している所定の情報を用いてアルゴリズムに従ってレスポンスデータを生成するステップとを含み、アルゴリズムは、遠隔装置と共有している所定の情報に従って遠隔装置及び第２のコンピュータ装置によって最初に生成され、アルゴリズムの値がストアされ、該アルゴリズムの値は、レスポンスデータを生成するためにその後の認証データの受信に対応して認証データとともに新しいアルゴリズムを生成するためのシード値として用いられる、該方法が提供される。
【００７３】
認証用画像は、特定の点または位置においてエンコードされた情報とともに「ノーマルイメージ（normal image）」の形をとることができる。特定の点において必要とされるデータを与えるために画像を微妙に操作することによって、あるいは、変更のない画像を用い、画像が読み出される点または位置を計算することによって。チャレンジデータオブジェクト内の特定データが、それによって、特定の位置において抽出される。それゆえ、チャレンジデータオブジェクトの認証用画像フォームとしてロゴまたは微妙に変更したロゴを使用することができる。
【００７４】
第１の操作された画像のための計算に関連する点の座標または位置は、クライアントアプリケーションとサーバアプリケーションとの間で予め共有されることになる。第２の例として、第１の座標群または位置群を含むそのようなデータ値に関するいくつかの相互に共有されるが変化するデータに対して関数を実行することによって、座標を計算することができる。
【００７５】
この方法の１つは、装置の固有識別子から第１の座標群（第１の座標群のみ）を計算し、これをサーバ側及びクライアント側の双方においてストアすることであろう。その後、前の座標を数学関数にシード値として渡すことによって、後の各座標群が計算されることになる。
【００７６】
同じ関数及び同じシード値を用いると、クライアントアプリケーション及びサーバアプリケーションは、互いに通信する必要なく、同じ座標を導き出すことになる。この方法は、これらの点での情報の解析によって得られる値がその後共通アルゴリズムのためのシードとして用いられる方法と非常によく似ている。
【００７７】
座標のための基準値は、標準的なグリッドに基づく「バーコード」形式の画像と同じ方法で計算されることになる。これを効果的にするために画像のサイズ及び方向を知る検出可能な方法があるはずであり、それについて本明細書においてさらに説明する。
【図面の簡単な説明】
【００７８】
【図１】本発明の好適実施形態に従う認証システムの俯瞰図（high level view）を示す。
【図２】本発明の第１の実施形態に従う認証方法のステップを示すフローチャート。
【図３】本発明の第２の実施形態に従う認証方法のステップを示すフローチャート。
【図４】本発明の第３の実施形態に従う認証方法のステップを示すフローチャート。
【発明を実施するための形態】
【００７９】
最初に図１を参照すると、本発明の或る実施形態に従う認証システム１が示されている。認証システム１は、ユーザ端末２と、認証サーバ３と、両者に接続されているネットワーク４と、ユーザ端末２及び／またはネットワーク４と通信可能にリンクされ得る携帯電話５とを含む。ネットワークは、インターネットを含みかつ／またはパーソナル・エリア・ネットワーク（ＰＡＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）及びワイド・エリア・ネットワーク（ＷＡＮ）のうちの１若しくは複数を含むことができる。
【００８０】
ユーザ端末２はインターネットブラウザを含み、それを通じてユーザは、端末２とやりとりし、ネットワーク４を介して認証サーバ３と通信することができる。これらの通信は、ハイパーテキスト転送プロトコル（HyperText Transfer Protocol Secure：ＨＴＴＰＳ）などを用いて安全なチャネルを介して行われることになる。それゆえ、ユーザは、インターネットブラウザを、後述するように自分の携帯電話５と併用して、認証サーバ３に対して自身を認証し、安全なサービスにアクセスすることができる。
【００８１】
図１に示した認証サーバ３は、ネットワークサーバ６と、アプリケーションサーバ７と、ユーザデータベース８とを含む。ネットワークサーバ６は、認証サーバ３に対し、既知のネットワーク２５の通信プロトコル、例えばＴＣＰ／ＩＰを用いて、ネットワーク４を介して、ユーザ端末２及びユーザ端末２に接続された他のネットワーク装置との通信を可能にさせる従来のサーバである。ユーザデータベース８内には、認証システム１による要求に応じて認証サーバ３に登録されたそれぞれのユーザに対応する記録が多数ストアされている。各記録は、認証サーバ３に登録された特定ユーザに対応する多数の情報を含み、情報は、特定の登録ユーザの携帯電話５に対応するユーザ名または電子メールアドレス、パスワード及び共有情報９を含む。
【００８２】
アプリケーションサーバ７は、本発明に従って認証方法を実行するために、イメージプロセッサ１０と、暗号化モジュール１１と、認証モジュール１２とをさらに含む。これらの各々は、それ以外のもののうちの任意の１若しくは複数と通信するように動作可能であり、それらの機能については、以下で図２ないし図４を参照して詳細に説明する。サーバソフトウェアは、例えばＰＨＰ、ＪＳＰ、ＡＳＰ．ｎｅｔ、ＳＳＩ、ＣＧＩ、ＳＣＧＩ、ＦａｓｔＣＧＩなどの動的コンテンツ生成を可能にする言語や、ＮＳＡＰＩ、ＩＳＡＰＩなどのサーバＡＰＩで書かれたものであってよい。
【００８３】
図１に示した携帯電話５は、インタフェースモジュール１３と、処理モジュール１４と、暗号化モジュール１５と、メモリ１６とを含み、これらの各々は、その他のもののうちの任意の１つ若しくは複数と通信するように動作可能である。インタフェースモジュール１３は、携帯電話５に対し、通信基地局１７またはＷｉＦｉハブ（図示せず）経由でユーザ端末２との通信及び／またはネットワーク４への接続を可能にさせる従来のソフトウェアを含む。そのような通信は、例えば電子メールの送受信を含むＴＣＰ／ＩＰなどの既知のネットワーク通信プロトコルを用いて、ＵＳＢリンクまたは同等のものを経由しての直接有線通信、Bluetooth（登録商標）またはＷｉＦｉを用いた無線通信及び、ショートメッセージサービス（ＳＭＳ）メッセージ経由の通信を含むことができる。そのような通信はまた、例えばユーザ端末のＶＤＵ上に表示された画像を、携帯電話５のカメラまたは携帯電話５に取り付けられたカメラを用いて取り込み、取り込んだ画像を解釈して情報を抽出することを含むこともできる。
【００８４】
携帯電話５は、以下で図２ないし図４を参照して説明するように、そのユーザを認証サーバ３に対して認証する際に、処理モジュール１４と、暗号化モジュール１５と、メモリ１６とを用いる。
【００８５】
ここで図２を参照すると、本発明の第１の実施形態に従って実行される方法ステップを示すフローチャートが示されている。図２に示した方法ステップを行う前に、方法ステップにおいて言及されるユーザは既に認証サーバ３に登録済みであることに留意されたい。結果として、ユーザの携帯電話５は登録が済んでおり、ユーザデータベース８及び携帯電話５のメモリ１６の各々には、対応する共有情報９がストアされた状態になっている。
【００８６】
この実施形態において、共有情報９は、携帯電話５の国際移動体装置識別番号（ＩＭＥＩ）の派生物を含む。ユーザデータベース８及びメモリ１６の各々には、ユーザのユーザ名または電子メールアドレスと、任意選択で１若しくは複数の対応するパスワードもストアされた状態になっている。
【００８７】
この第１の実施形態によると、認証方法の第１のステップは、ユーザ端末２においてユーザ入力を受信することである。ユーザ入力は、ユーザ端末２のキーボードを介して入力され、ユーザ名または電子メールアドレスと、任意選択でパスワードとを含む。ユーザ入力はその後、ネットワーク４を介して認証サーバ３に伝達される。ユーザ入力が無効であると認証サーバ３が判定した場合、例えば、ユーザ入力がユーザデータベース８内の任意の記録中のユーザ名または電子メールアドレスに正確に対応していない場合、第１のステップが繰り返されることになる。
【００８８】
その一方で、受信したユーザ入力が有効である場合、アプリケーションサーバ７は、アルゴリズムＡ１を用いてシードデータから認証データすなわちチャレンジデータオブジェクトを生成２１する。シードデータは、ユーザ入力の受信２０に対応して、例えば、受信したユーザ名または電子メールアドレス及び／またはパスワードの表現（例えば、ユーザ名または電子メールアドレス及び／またはパスワードを形成する文字のＡＳＣＩＩ値を用いた表現）と混合した時間値を用いることによって、生成されることが好ましい。この混合は、算術演算、例えば、加算、連結またはそれらの組合せなどであってよい。このようにして、シードデータと、その結果として認証データとが、それぞれの生成ステップにおいて互いに異なる。
【００８９】
この実施形態において、アルゴリズムＡ１に従って認証データを生成２１するために、アプリケーションサーバ７は、受信２０したユーザ入力中のユーザ名または電子メールアドレスの最初の３つの文字のＡＳＣＩＩ値を含む整数の配列を形成する。１０桁のＵＮＩＸ（登録商標）タイムスタンプから８桁が取られ、配列の各整数に加えられる。整数配列の最初の３つの値の１６進表現を連結させることによって、文字列が形成される。この文字列は、チャレンジデータオブジェクトを含む認証データである。
【００９０】
認証データはその後、ネットワークサーバ６によってフォーマットされ、ユーザの携帯電話５に伝達されることができる。認証データは、最初にイメージプロセッサ１０によって従来の２次元バーコードとしてフォーマットされ、次にネットワークサーバ６によって適切にパケット化されてネットワーク４を介してユーザ端末２に伝達され、そのディスプレイ上に表示されることが好ましい。あるいは、認証データをパケット化し、例えば、電子メール、ＳＭＳメッセージまたはBluetooth（登録商標）転送を通じて携帯電話５に直接転送してもよい。別の実施形態では、認証データすなわちチャレンジデータオブジェクトは、ユーザ端末２に送信され、レンダリングされるかまたはユーザに表示され、ユーザはその後、携帯電話５にチャレンジデータオブジェクトを入力する。ユーザは、表示された画像を取り込むか、音声を取り込むか、文字数字テキストを打ち込むか、または別な方法で携帯電話のユーザインタフェースを作動させることによって、チャレンジデータオブジェクトを入力することができる。
【００９１】
次のステップは、チャレンジデータオブジェクトを含む認証データを携帯電話５において受信２２することである。認証データは、インタフェースモジュール１３を経由して、またはネットワーク４を介して、または電子メールとして、またはＳＭＳメッセージとして、またはBluetooth（登録商標）経由で、または有線通信を経由して、受信２２されることができる。この実施形態において、認証データは、携帯電話５のカメラまたは携帯電話５に接続されたカメラを用いて、ユーザ端末２のディスプレイ上に表示された２次元バーコードを取り込むことによって、インタフェースモジュール１３を経由して受信される。ユーザは、表示された画像を取り込むか、音声を取り込むか、文字数字テキストを打ち込むか、または別な方法で携帯電話のユーザインタフェースを作動させることによって、チャレンジデータオブジェクトを入力することができる。その後、従来のやり方で処理モジュール１４によって２次元バーコードから認証データが得られる。
【００９２】
チャレンジデータオブジェクトを含む認証データの受信２２に対応して、次の方法ステップでは、暗号化モジュール１５がアルゴリズムＢ１に従ってレスポンスデータを生成２３する。この実施形態において、アルゴリズムＢ１は、高度暗号化標準（ＡＥＳ）を含み、受信した認証データを暗号化するために用いる対称鍵として、共有情報９中の携帯電話５のＩＭＥＩ番号の派生物を用いる。このようにして暗号化モジュール１５によって生成２３されたレスポンスデータは、携帯電話５において受信２２された認証データの暗号化版である。
【００９３】
より具体的には、アルゴリズムＢ１は、ＡＥＳ１２８暗号（平文を暗号化するためのＡＥＳアルゴリズムの鍵長１２８ビットのバージョン）を含み、１２８ビットの対称鍵として、共有情報９中の携帯電話５のＩＭＥＩ番号の派生物を用いる。この派生物は、以下のようにＩＭＥＩ番号から派生した１２８ビットの２進数である。携帯電話のＩＭＥＩ番号の１４個の文字のＡＳＣＩＩ値の二進表現は、各文字の二進表現間に０を置いて連結させられる。結果として１２５ビットの２進数が得られ、これに１つの先行ゼロ及び２つの後置ゼロが付加されることにより共有情報中の１２８ビットの派生物が作成される。この実施形態において、アルゴリズムＢ１は、ＡＥＳアルゴリズムによって要求される各ラウンド鍵を作成するための鍵生成アルゴリズムを含む。代替実施形態では、共有情報９は、携帯電話のＩＭＥＩ番号の派生物とともに、ラウンド鍵全てを含むことができる。暗号化モジュール１５によって生成されたレスポンスデータは、それゆえ、共有情報９からの携帯電話のＩＭＥＩ番号の派生物を１２８ビットの対称鍵として用いて、受信した認証データにＡＥＳ１２８暗号演算を行った結果を含む。レスポンスデータはその後、認証サーバ３に伝達される前に処理モジュール１４によってフォーマットされることができる。この実施形態において、レスポンスデータは、ユーザがユーザ端末２においてレスポンスデータを手動入力するためのプロンプトとともに、携帯電話５のディスプレイ上に表示される。あるいは、認証データは、処理モジュール１４からインタフェースモジュール１３へ渡され、その後パケット化されて、電子メールで、あるいはＳＭＳメッセージまたは同様のものとして、有線または無線リンク経由でユーザ端末２に転送されるか、またはネットワーク４を介して認証サーバ３に伝達されることができる。
【００９４】
レスポンスデータを生成し終わったら、次の方法ステップは、レスポンスデータを認証サーバ３において受信２４することである。この実施形態において、レスポンスデータは、ユーザによってユーザ端末２において手動入力され、そこからネットワーク４を介して認証サーバ３に伝達される。あるいは、認証データは、携帯電話５から有線または無線リンク経由でユーザ端末２へ、または認証サーバ３に直接ＳＭＳメッセージとして、またはネットワーク４を介して例えば電子メールで、転送されてもよい。
【００９５】
本方法はその後、レスポンスデータの受信２４に対応して、許容レスポンスデータを生成２５するステップに進む。この実施形態において、ユーザの携帯電話５上の暗号化モジュール１５及びアプリケーションサーバ７上の暗号化モジュール１１はともに、アルゴリズムＢ１を実行して同一の結果をもたらすことができる。それゆえ、暗号化モジュール１１は、アルゴリズムＢ１を用いて、生成２１された認証データから許容レスポンスデータを生成２５する。許容レスポンスデータは、携帯電話５におけるレスポンスデータの生成２３に関連して上記したステップと同一または少なくとも等価なステップに従って生成２５される。代替実施形態では、許容レスポンスデータは、レスポンスデータの受信２４に対応せずに、認証データ生成後のどの時点で生成されてもよい。
【００９６】
認証モジュール１２はその後、生成２５された許容レスポンスデータを受信２４したレスポンスデータと比較２６し、両者が一致する場合、認証サーバ３は、ユーザを認証し２７、安全なサービスへのアクセスを許可する。両者が異なる場合、アクセスは拒否され、認証サーバが認証データを生成２１する時点から上記方法が繰り返される。
【００９７】
ここで、図３を参照すると、本発明の第２の実施形態に従って実行される方法ステップを示すフローチャートが示されている。図３に示した方法ステップを行う前に、方法ステップにおいて言及されるユーザは既に認証サーバ３に登録済みであることに留意されたい。結果として、ユーザの携帯電話５は登録が済んでおり、ユーザデータベース８及び携帯電話５のメモリ１６の各々には、対応する共有情報９がストアされた状態になっている。この実施形態において、共有情報９は、携帯電話５の国際移動体装置識別番号（ＩＭＥＩ）の派生物を含む。ユーザデータベース８及びメモリ１６の各々には、ユーザのユーザ名または電子メールアドレスと、任意選択で１若しくは複数の対応するパスワードもストアされた状態になっている。
【００９８】
この実施形態に従う方法の第１のステップとして、認証サーバ３においてユーザ入力が受信３０される。この第１のステップは、第１の実施形態に従う方法の第１のステップに相当するので、ユーザ入力に含まれるもの及び受信の方法は、図２に示した第１のステップに関連して上記したものと同じである。ユーザ入力が無効であると認証サーバ３が判定した場合、例えば、ユーザ入力がユーザデータベース８内のどの記録にも正確に対応していない場合、第１のステップが繰り返されることになる。
【００９９】
その一方で、受信したユーザ入力が有効であれば、第２のステップにおいて、アプリケーションサーバ７は、アルゴリズムＡ２に従ってシードデータから認証データを生成３１する。シードデータは、受信したユーザ入力に対応していることが好ましい。このシードデータは、ユーザ入力の受信２０に対応して、例えば、ユーザ名または電子メールアドレス及び／またはパスワードの表現（例えば、ユーザ名または電子メールアドレス及び／またはパスワードを形成する文字のＡＳＣＩＩ値を用いた表現）と混合した時間値を用いることによって、生成される。この混合は、算術演算、例えば、加算、連結またはそれらの組合せなどであってよい。このようにして、シードデータと、その結果として認証データとが、それぞれの生成ステップにおいて互いに異なる。
【０１００】
この実施形態において、アルゴリズムＡ２は互いに逆のアルゴリズムＢ２を有し、両アルゴリズムは、高度暗号化標準（ＡＥＳ）アルゴリズムの暗号及び逆暗号をそれぞれ含む。
【０１０１】
この実施形態において、アプリケーションサーバ７は、受信２０したユーザ入力中のユーザ名または電子メールアドレスの最初の３つの文字のＡＳＣＩＩ値を含む整数の配列を形成する。１０桁のＵＮＩＸ（登録商標）タイムスタンプから８桁が取られ、排他的論理和演算を用いて配列の各整数と組み合わされ、シードデータが生成される。認証データを生成３１するために、暗号化モジュール１１は整数配列アルゴリズムＡ２を実行する。アルゴリズムＡ２は、ＡＥＳ１２８暗号（平文を暗号化するためのＡＥＳアルゴリズムの鍵長１２８ビットのバージョン）を含み、対称鍵として、共有情報９中の携帯電話５のＩＭＥＩ番号の派生物を用いる。この派生物は、第１の実施形態に関連して上記したように、ＩＭＥＩ番号から派生した１２８ビットの２進数である。この実施形態において、アルゴリズムＡ２は、ＡＥＳアルゴリズムによって要求される各ラウンド鍵を作成するための鍵生成アルゴリズムを含む。代替実施形態では、共有情報９は、携帯電話のＩＭＥＩ番号の派生物とともに、ラウンド鍵全てを含むことができる。生成された認証データは、それゆえ、共有情報９からの携帯電話のＩＭＥＩ番号の派生物を１２８ビットの対称鍵として用いて、シードデータから生成された整数配列にＡＥＳ１２８暗号演算を行った結果を含む。その後、第１の実施形態に関連して上記したように、生成された認証データを伝送する準備をする。
【０１０２】
この第２の実施形態に従う方法の第３のステップとして、生成された認証データは、携帯電話５において受信３２される。このステップは、第１の実施形態の第３の方法ステップに相当するので、認証サーバ３からの認証データの伝達の方法及び携帯電話５による受信の方法は、図２に示した第３のステップに関連して上記したものと同じである。
【０１０３】
次のステップでは、認証データの受信に対応して、暗号化モジュール１５は、アルゴリズムＢ２に従ってレスポンスデータを生成３３する。レスポンスデータを生成３３する際、暗号化モジュール１５は、アルゴリズムＢ２と、共有情報９中の携帯電話５のＩＭＥＩ番号の派生物とを用いて、受信した認証データからシードデータを導き出す。より具体的には、アルゴリズムＢ２は、ＡＥＳ１２８逆暗号（暗号文を復号するためのＡＥＳアルゴリズムの鍵長１２８ビットのバージョン）を含み、対称鍵として、共有情報９中の携帯電話５のＩＭＥＩ番号の派生物を用いる。この派生物は、第１の実施形態に関連して上記したように、ＩＭＥＩ番号から派生した１２８ビットの２進数である。この実施形態において、アルゴリズムＢ２は、ＡＥＳアルゴリズムによって要求される各ラウンド鍵を作成するための鍵生成アルゴリズムを含む。代替実施形態では、共有情報９は、携帯電話のＩＭＥＩ番号の派生物とともに、ラウンド鍵全てを含むことができる。生成されたレスポンスデータは、それゆえ、共有情報９からの携帯電話５のＩＭＥＩ番号の派生物を１２８ビットの対称鍵として用いて、受信した認証データにＡＥＳ１２８逆暗号演算を行った結果を含む。
【０１０４】
認証サーバ３はその後、次の方法ステップにおいて、生成３１されたレスポンスデータを受信する。このステップは、第１の実施形態に従う方法の第５のステップに相当するので、携帯電話５からのレスポンスデータの伝達の方法及び認証サーバ５による受信の方法は、図２に示した第５のステップに関連して上記したものと同じである。受信したレスポンスデータは認証データを生み出したシードデータを含んでいるはずなので、この実施形態では許容レスポンスデータを生成するステップを要しないことに留意されたい。
【０１０５】
第２の実施形態の最後から２番目の方法ステップとして、認証モジュール１２は、レスポンスデータを、認証データを生み出したシードデータと比較する３５。両者が一致している場合、認証サーバ３はユーザを認証３６し、安全なサービスへのアクセスを許可するが、そうでなければアクセスは拒否され、アプリケーションサーバ７が認証データを生成３１する時点から上記方法が繰り返される。
【０１０６】
図４は、本発明の第３の実施形態に従って実行される方法ステップを示すフローチャートが示されている。図４に示した方法ステップを行う前に、方法ステップにおいて言及されるユーザは既に認証サーバ３に登録済みであることに留意されたい。結果として、ユーザの携帯電話５は登録が済んでおり、ユーザデータベース８及び携帯電話５のメモリ１６の各々には、対応する共有情報９がストアされた状態になっている。この実施形態において、共有情報９は、デジタル署名アルゴリズムを用いて認証を促進するために、１対の公開鍵／秘密鍵を含む。代替実施形態では、公開鍵及び秘密鍵は、携帯電話５のＩＭＥＩ番号から派生したものであったよい。
【０１０７】
この第３の実施形態に従う方法の最初の３つのステップにおいて、認証サーバ３においてユーザ入力が受信４０され、認証データが生成４１され、認証データは携帯電話５において受信４２される。この第１のステップは、第１及び第２の実施形態に従う方法の第１のステップに相当するので、ユーザ入力に含まれるもの及び受信４０の方法は、図２に示した第１のステップに関連して上記したものと同じである。ユーザ入力が無効であると認証サーバ３が判定した場合、例えば、ユーザ入力がユーザデータベース８内のどの記録にも正確に対応していない場合、第１のステップが繰り返されることになる。その一方で、ユーザ入力が有効である場合、本方法は第１の実施形態に従う第２の方法ステップに相当する第２のステップに進むので、図２に示した第２のステップに関連して上記したのと同じ方法で認証データが生成４１される。あるいは、認証データは、図３に示した第２のステップに関連して上記したように生成４１されてもよい。第３のステップは、第１及び第２の実施形態に従う方法の第３のステップに相当するので、認証サーバ３からの認証データの伝達の方法及び携帯電話５による受信の方法は、図２に示した第３のステップに関連して上記したものと同じである。
【０１０８】
暗号化モジュール１５はその後、認証データの受信に対応して、アルゴリズムＢ３に従ってレスポンスデータを生成４３する。この実施形態において、アルゴリズムＢ３はＤＳＡデジタル署名アルゴリズムであり、該アルゴリズムは、ストアされたメモリ１６から読み出された共有情報９であるかまたはそこから派生した秘密鍵を用いて受信した認証データに署名することによってデジタル署名を生成するために用いられる。生成されたレスポンスデータは、それゆえ、生成されたデジタル署名を含む。
【０１０９】
この第３の実施形態に従う第５の方法ステップにおいて、認証サーバ３においてレスポンスデータが受信４４される。このステップは、第１の実施形態に従う方法の第５のステップに相当するので、携帯電話５からのレスポンスデータの伝達の方法及び認証サーバ５による受信の方法は、図２に示した第５のステップに関連して上記したものと同じである。
【０１１０】
レスポンスデータの受信４４に対応して、暗号化モジュール１１は、アルゴリズムＣ３に従って、生成４１された認証データから検証データを生成４５する。検証データは、レスポンスデータ中の受信された署名と、ユーザデータベース８から読み出された共有情報９であるかまたはそこから派生した公開鍵とを用いて生成される。この実施形態において、アルゴリズムＣ３は、アルゴリズムＢ３に対応するＤＳＡデジタル署名の検証である。
【０１１１】
第３の実施形態に従う方法の最後から２番目のステップでは、認証モジュール１２は、レスポンスデータ中の受信された署名を、認証モジュール１２によって生成４５された検証データと比較４６する。両者が一致している場合、認証サーバ３はユーザを認証４７し、安全なサービスへのアクセスを許可するが、そうでなければアクセスは拒否され、認証サーバ３が認証データを生成４１する時点から上記方法が繰り返される。
【０１１２】
上記した種々の実施形態の説明は、特定のブロック暗号化アルゴリズム及びデジタル署名アルゴリズムについて言及しているが、当然のことながら、代替実施形態では、代わりに任意の適切な暗号化アルゴリズムを用いることができる。例えば、ＡＥＳアルゴリズムの代わりに、３ＤＥＳまたはストリーム暗号、例えばＲＣ４やＲＣ５などを用いることができ、代わりにＤＳＡアルゴリズムの楕円曲線アナログを用いることもできる。さらに、当然のことながら、第２及び第３の実施形態を組み合わせることにより、正暗号（forward cipher）及び逆暗号を用いて認証データ及びレスポンスデータをそれぞれ生成し、ＤＳＡアルゴリズムを用いて、認証データにデジタル署名をインクルードしかつデジタル署名を検証することができる。
【０１１３】
上記した各実施形態において、上記各方法は、認証サーバ３と携帯電話５との間で実行される。当然のことながら、上記各方法は、認証サーバにおいて行われる方法ステップの全てが行われるスタンドアロンのコンピュータにアクセスする場合にも適用される。
【０１１４】
さらに、認証サーバ３は様々な構成部品を含むと説明してきたが、当然のことながら、これらの構成部品は、実際には、別体をなすハードウェアに含まれることもある。それゆえ、上記したアプリケーションサーバ３は、実際には、各サーバが上記した方法の各ステップのうちの１若しくは複数を行う相互接続されたサーバのネットワークであってよい。
【０１１５】
本明細書において、或る画像を生成し、それを、例えばネットワーク４を介して伝達するためにパケット化することにより、生成された認証データを携帯電話５への伝達のためにフォーマットすることについて言及してきた。当然のことながら、端末２上のウェブブラウザに端末２のＶＤＵ上で画像のレンダリングをさせる画像のＨＴＭＬ記述を、ＰＨＰを用いて生成することができる。
【図１】
2012530996.tif 000003
【図２】
2012530996.tif 000004
【図３】
2012530996.tif 000005
【図４】
2012530996.tif 000006
【国際調査報告】
2012530996.tif 000007
2012530996.tif 000008
2012530996.tif 000009