説明

各セキュリティチャレンジを特徴付ける1つ以上の誤り率を使用する遂次認証のための方法、システム、およびプログラム

【課題】各セキュリティチャレンジを特徴付ける1つ以上の誤り率を使用する、ユーザの逐次認証のための方法および装置を提供する。
【解決手段】本発明の一局面によれば、中間認証結果を得るために、ユーザに対して少なくとも1つの知識チャレンジが試行され、ユーザチャレンジは、累積認証結果が1つ以上の基準を満たすまで継続する。中間認証結果は、例えば、知識チャレンジ毎の1つ以上の誤承認および誤拒絶誤り確率に基づく。誤承認誤り確率は、知識チャレンジに対して正しく回答した別のユーザである確率を示す。誤拒絶誤り確率は、知識チャレンジに対して正しく回答しなかった真正ユーザである確率を示す。誤承認および誤拒絶誤り確率は、フィールドデータ、または所定のチャレンジについての既知の情報に基づいて適応されうる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般的に、ユーザ認証手法に関し、より特定的には、逐次ユーザ認証を提供する手法に関する。
【背景技術】
【0002】
ユーザの身元の主張を認証することは、物理的および論理的アクセスの両方に関して、システム、ネットワーク、サービス、機構のセキュリティを保証する重要な一工程である。既存のユーザ認証は、単一の検証オブジェクト、例えばパスワードまたは個人識別番号(PIN)というユーザの知識に基づいて、または単一の検証オブジェクト、例えば鍵またはカードを所有しているということに基づいて行われることが多い。他の既存の認証手法には、バイオメトリックによる特徴、例えば指紋、声紋、虹彩スキャン、または顔スキャンを検証オブジェクトとして使用することが含まれる。
【0003】
検証は、典型的には、アクセスを試みたときにユーザから取得される検証オブジェクトを予め記憶されたオブジェクトと比較することによって行われる。バイオメトリックシステムは、例えば、典型的には、入力されたバイオメトリックが基準バイオメトリックテンプレートとどの程度類似しているかを評価する類似スコアを作成する。その後、閾値がスコアに適用されて、所定のユーザを承認するか、または拒絶するかについての2値決定を行う。所有に基づくユーザ認証システムは、2値の承認/拒絶決定を、物理装置(例えば、鍵)または仮想装置(例えば、デジタル証明書)の存在に基づいて行う。知識検証については、単一のチャレンジによって、ユーザの応答の正確性に基づく2値決定がもたらされることになる。
【0004】
認証の目的で複数のチャレンジがユーザに提示される場合に、ユーザ認証は、逐次的であるといわれる。逐次ユーザ認証は、同一のモード(例えば、知識検証質問のみを提示する)からの一連の認証チャレンジを使用することによって、または複数の検証モード(例えば、ランダムな知識チャレンジを提示し、1つ以上の物理キーを要求するという両方)を使用することによって達成される。バイオメトリックの種類によっては、バイオメトリックスに基づく逐次認証も可能である。例えば、指紋は不変であり、逐次チャレンジは、全く同一の指紋を取り込むので得策ではないだろう。しかしながら、人間の声は確かに変化するので、逐次音声バイオメトリックス(「話者認識」)は得策である。
【0005】
逐次ユーザ認証を使用する場合、ユーザを承認または拒絶する2値決定を行うための規則またはアルゴリズムの組は、単純な閾値よりも複雑な場合がある。なぜならば、個々の対話動作(チャレンジ)から生じた結果が矛盾することがあるからである。ポリシーとは、各動作において、ユーザを承認するか、ユーザを拒絶するか、またはユーザに新たなチャレンジを提示するかを指定する規則の組である。
【0006】
測定されたバイオメトリック(話者認識)および知識応答の両方に基づいてユーザの対話を支配するポリシーとともに会話型バイオメトリックスを使用して話者認証および知識検証を組み合わせるための数多くの手法が提案または示唆されてきている。例えば、特許文献1は、共有されたコンテキストを使用して複数の認証オブジェクトを組み合わせ、かつ、カスタマイズ可能な対話設計を様々なユーザの好みおよびトランザクション/アプリケーションの要請に合うようにすることができる、動的なユーザ認証を可能にする認証フレームワークを開示する。また、特許文献2も参照のこと。
【0007】
【特許文献1】米国特許出願第10/283729号、「Methods and Apparatus for Dynamic User Authentication Using Customizable Context−Dependent Interaction Across Multiple Verification Objects」
【特許文献2】米国特許第6529871号、「A Way to Identify Using Both Voice Authentication and Personal Queries」
【発明の開示】
【発明が解決しようとする課題】
【0008】
このような会話型バイオメトリック手法は、高度な柔軟性、精度、利便性、および堅固さを有する改良された認証フレームワークを提供するものであるが、数多くの制約があり、これらを克服すれば、ユーザ認証手法の効率性およびセキュリティをさらに向上させることができよう。特に、会話型バイオメトリックスのための上述の手法は、チャレンジ毎に2値決定を生じさせる。
【0009】
したがって、チャレンジ毎に連続値スコアを生じさせる会話型バイオメトリックスのための方法および装置に対する必要性が存在する。連続値スコアは、セキュリティレベルを設定する前に複数のバイオメトリックシステムを融合させることができる。さらに、知識認証システムから類似性スコアを測定する方法および装置に対する必要性が存在する。さらに、測定された知識スコアに基づいた逐次認証を管理する方法および装置に対する必要性が存在する。
【0010】
一般的に、各セキュリティチャレンジを特徴付ける1つ以上の誤り率を使用する、ユーザの逐次認証のための方法および装置を提供する。
【課題を解決するための手段】
【0011】
本発明の一局面によれば、中間認証結果を得るために、ユーザに対して少なくとも1つの知識チャレンジが試行され、ユーザチャレンジは、累積認証結果が1つ以上の基準を満たすまで継続する。中間認証結果は、例えば対数尤度比に基づき、累積認証結果は、例えば個々の対数尤度比の総計である。
【0012】
中間認証結果は、例えば、知識チャレンジ毎の1つ以上の誤承認および誤拒絶誤り確率に基づく。誤承認誤り確率は、知識チャレンジに対して正しく回答した別のユーザである確率を示す。誤拒絶誤り確率は、知識チャレンジに対して正しく回答しなかった真正ユーザである確率を示す。
【0013】
本発明の他の局面によれば、1つ以上の誤承認および誤拒絶誤り確率は、フィールドデータ、または所定のチャレンジについての既知の情報に基づいて適応される。例えば、FA値およびFR値は、測定されたFA値およびFR値を反映するフィールドデータに適応することによって変更されてもよい。FA値およびFR値は、予想されたセキュリティ違反を反映して変更されてもよい。本発明によって提供される連続スコアは、FAおよびFRなどのパラメータを有する統計的なモデルを意味するので、容易に適応可能である。加えて、本発明によって提供される連続スコアは、1つ以上の中間認証結果および累積認証結果が他の検証方法(バイオメトリックまたは所有に基づく認証など)からの結果と組み合わされることを許容する。
【発明を実施するための最良の形態】
【0014】
本発明のより完全な理解とともに、本発明のさらなる特徴および利点は、以下の詳細な説明および図面を参照して得られるだろう。
【0015】
本発明は、逐次認証システムを提供する。開示された逐次認証システムは、対話動作毎に類似性スコアを測定する目的の知識検証に基づく。開示された逐次認証システムは、ユーザの身元の主張が真正である確率と、ユーザがその主張する人物ではない確率とを連続的に推定する。
【0016】
ユーザ認証中に、一連のチャレンジがユーザに提示され、各ユーザ応答は、1つ以上のモデルと比較され、中間認証決定(対数尤度比(LLR)など)が生じる。各対話動作において、個々の動作からの中間決定は組み合わされて(LLRの総計など)、類型認証結果を作成して、最終的にはユーザの身元の主張を承認または拒絶する。逐次認証処理のために使用されるモデルは、認証中にユーザデータから適応されてもよく、話者認識(または他の様式)を行う音声バイオメトリックモデルとともに使用されて、ユーザ認証タスクを完了してもよい。
【0017】
本発明の一局面によれば、ユーザまたは背景モデルもしくはその両方は、各セキュリティチャレンジを特徴付ける偽承認(FA)および偽拒絶(FR)誤り率を備える。FAは、セキュリティチャレンジに対して正しく回答した異なるユーザである確率を示し、FRは、正しく回答しなかった真正のユーザである確率を示す。各チャレンジに割り当てられたFAおよびFRは、背景モデルにのみあってもよく、したがって、すべてのユーザが同一のFAおよびFRを有すると仮定してもよく、または、ユーザ固有のFAおよびFAが各チャレンジに割り当てられて、ユーザモデルに記憶されていてもよい。また、図4とともに以下に説明するように、ユーザモデルは、セキュリティチャレンジに対する正しい応答を含む。
【0018】
本発明のさらなる局面によれば、FA値およびFR値は、測定されたFA値およびFR値を反映するフィールドデータに適応することによって変更されてもよい。また、FA値およびFR値は、予想されたセキュリティ違反を反映して変更されてもよい。例えば、社会保障番号のリポジトリが盗まれた場合には、社会保障番号チャレンジに割り当てられたFAは、典型的に予想されるよりも高くなるように更新されることになる。本発明によって提供される連続スコアは、FAおよびFRなどのパラメータを有する統計的なモデルを意味するので、容易に適応可能である。
【0019】
本発明は、クライアント−サーバアーキテクチャの一例を使用して例示される。しかしながら、本発明は、任意の特定のシステムアーキテクチャとともに使用することに限られるものではないことは当然である。むしろ、本発明は、高度な柔軟性、精度、利便性、または堅固さあるいはそのすべてを提供する認証フレームワークを提供するのか好ましい任意のシステムアーキテクチャに対して、より一般的に適用可能である。すなわち、本発明の手法は、単一のコンピュータシステム、または適切なネットワークによって結合された複数のコンピュータシステム上で実施されてもよく、その例を以下に説明する。
【0020】
一実施形態において、対話型設計は、XML(拡張可能なマーク付け言語)を使用する統計ステートマシンとして実施された認証ポリシーに基づく。加えて、該当する認証オブジェクト(例えば、回答すべき質問または実行するべき行為)を指定するファイルと、ユーザプロファイル(例えば、ユーザが選択した認証オブジェクトと、正しい回答またはユーザの好みあるいはその両方)を含むファイルとがあり、それらは両方共、XMLを使用して実施されてもよい。
【0021】
認証対話全体は、(ユーザの好みおよびトランザクションまたはアプリケーション要件に基づいて選択された)実質的な認証ポリシーに基づいて、共有コンテキストに対する動作を使用し、さらには実質的な認証オブジェクトおよび関係ユーザプロファイルを使用して、動的に決定される。
【0022】
そのような取り組みによって、既存の認証システムと比較して大幅に改良された認証能力が提供され、非常に高度な精度、柔軟性、利便性、および堅固さが保証される。
【0023】
さらに、以下に詳細に例示的に説明するように、本発明の認証手法は、以下の要素を使用する:(1)検証オブジェクトおよび検証エンジン、(2)検証ポリシーおよび検証ポリシーマネージャ、および(3)ユーザモデルである。
【0024】
検証オブジェクトは、ユーザの身元を検証する目的で使用することができるオブジェクトであって、ユーザのバイオメトリック特徴(例えば、声紋、指紋、顔スキャン、虹彩スキャン、手書きの署名、またはキーボードを打つ際の強弱の変化)、ユーザの知識(例えば、パスワード、パスフレーズ、または個人的な質問に対する回答もしくはそのすべて)、およびユーザの所有物(例えば、鍵、カード、トークン、証明書、呼者識別情報を送信する携帯電話または家庭用電話、クライアントソフトウェアを有する個人またはハンドヘルドコンピュータ、またはユーザの位置もしくはそのすべて)などである。上記オブジェクト例の一覧は、網羅しているという意味ではなく、さらに、本発明は、任意の特定のオブジェクトに限定されるという意味ではないことは当然である。
【0025】
検証エンジンは、検証オブジェクトをユーザモデルに記憶された表現と照合するために使用される。検証エンジンの例には、ユーザの指紋を照合するための指紋認識システム、音声応答システムなどの質問に対する口語による回答を評価するための会話型システム、ユーザの口語の発話を抽出および認識するための(自然理解手法を含んでもよい)音声または声紋認識システムのような会話型システム(この会話型システムは、合成質問またはプロンプトを生成するための音声合成システムを含んでもよい)、ユーザの電話番号を抽出および照合するための呼者識別認識システム、ユーザのバッジまたはカードをスキャンするためのバッジリーダ、ユーザのPINを確認するためのPIN確認システム、ユーザの顔スキャンを抽出および照合するための顔認識システム、ユーザの虹彩を抽出および照合するための虹彩認識システム、ユーザの筆跡を認識する筆跡認識システム、ユーザがキーボードを打つ際の強弱の変化を照合するためのキーボード変化認識装置、および、本明細書に記載、またはそうでなければ既知、もしくはその両方である他の様式固有のエンジンが含まれる。これらのエンジンの種類は周知なので、そのようなエンジンの詳細についてのさらなる説明は必要なく、したがって、本明細書には記載されていないのは当然である。繰り返すが、上記エンジン例の一覧は、網羅しているという意味ではなく、さらに、本発明は、任意の特定の検証エンジンに限定されるという意味ではないことは当然である。
【0026】
検証エンジンは、典型的には、ユーザ入力をユーザが登録した際に作成されたユーザのモデルと比較することによってユーザ検証を行うが、本発明は、ユーザ登録を必要とする検証エンジンに限定されるものではない。ユーザに登録を要求しない、非管理の検証エンジンを使用してもよい。非管理の検証エンジンを使用する場合には、検証エンジンによって測定されるようなユーザ属性を含む単一のユーザモデルを使用してもよい。例えば、以下の検証エンジンが使用できる:音響アクセント認識、言語識別、および顔特徴検出(例えば、目の色、眼鏡検出)である。この場合、個々の検証エンジンのいずれも、ユーザ登録は必要なく、ユーザが話した音声アクセント、言語、目の色、およびユーザが眼鏡をかけているかどうかを示して、あるユーザモデルが使用される。
【0027】
よって、個々の検証エンジンを使用して、所定の静的なやり方で動作する単純な検証ステップを行うことができる一方で、より高度の精度および柔軟性を達成するために、複数の検証オブジェクトを使用して動的なユーザ認証を行うことを、本発明は認識している。本発明は、そのような改良された認証フレームワークを提供する。
【0028】
この目標および他の目標を達成するために、本発明は、ユーザと認証システムを含むシステム全体との間の対話および様々な検証エンジン間の対話を支配する検証ポリシーを使用する。リアルタイムで変化する必要性を含む、ユーザ固有の、トランザクション固有の、またはアプリケーション固有の認証という幅広い種類の必要性を満たすために、任意の数の検証ポリシーを書くことができる。
【0029】
わかるように、そのような検証ポリシーは、すべての検証オブジェクトに渡って共有される共通のコンテキストに対する動作を使用する検証ポリシーマネージャによって管理されて、認証システムの最大のプログラミング性を達成する。
【0030】
ユーザモデルは、典型的には、ユーザがシステムに登録する際に、ユーザによって提供された入力(例えば、音声のサンプル、指紋のサンプル、または個人的な質問に対する回答ならびにそのすべて)または他の手段を通じて取得された入力(過去のトランザクションの詳細、直近の請求の残高、発行された鍵またはバッジの通し番号、またはスマートカードまたはクライアントソフトウェアに含まれる暗号鍵ならびにそのすべてなど)を使用して作成される。
【0031】
ユーザモデルは、新たな請求が発行された場合、残高が変化した場合、またはより多くの音声サンプルが利用可能である場合など、必要な場合にリアルタイムで更新されてもよい。個々のユーザモデルは、当該ユーザに該当するすべての検証オブジェクトに関する情報を含み、これには検証オブジェクトに関するユーザの任意の好み(例えば、あるユーザは、数字よりも色についての質問を好む場合がある)が含まれる。また、ユーザモデルは、好ましくは、社会保障番号の第1桁目および第3桁目を加えるように要求するなどの、検証オブジェクトの重要な操作に対応している。繰り返すが、上述の例はいずれも、本発明を制限するものではない。
【0032】
本発明のいくつかの原理および特徴の一般的な上記説明を前提として、これらの原則および特徴の実施形態の例を図の場合において示す。
【0033】
最初に図1を参照すると、ブロック図は、本発明の一実施形態に係る逐次認証を実施するための認証システムのクライアント−サーバアーキテクチャを示している。図示のように、認証システム100は、検証クライアント装置102と、検証サーバ104とを備え、これらはネットワークアダプタ106を介して結合されている。検証クライアント装置102は、コンテキスト108と、それに関連するアプリケーション110とを有する。検証サーバ104は、検証ポリシーマネージャ112と、複数の検証エンジン114−1から114−Nとを備え、ここで、Nは2,3,4...の任意の整数であってもよく、本発明の特定の実施が対応できる検証オブジェクト系統または種類の数を表す。認証システム100は、データマネージャ116と、検証オブジェクト記憶装置118と、検証ポリシー記憶装置120と、ユーザモデル記憶装置122とをさらに備える。データマネージャ116およびデータ記憶装置118,120および122は、検証サーバの枠の外に示されているが、検証サーバ上で実施されてもよいことは当然である。
【0034】
検証クライアント装置102は、ユーザとのインターフェイスとなり、ユーザからの入力を収集し、検証サーバ104とネットワークアダプタ106を通じて通信し、アプリケーション110と通信する役割を担う。本発明の一実施形態において、検証クライアント装置102は、コンテキスト108を取得および維持する役割も担う。
【0035】
一代替実施形態において、コンテキスト108は、中央データベース(図示せず)上に記憶されてもよく、認証システム100の他の構成要素によってアクセス可能であってもよい。そのような実施により、検証クライアント装置102と検証サーバ104との間のステートレスな動作が可能になり、検証処理における互いに異なる動作について互いに異なるサーバを使用することができるようになり、これにより、検証処理中に特定のサーバがダウンしてしまうことに対する保護を提供し、サーバリソースの負荷バランスも改善できる。
【0036】
コンテキスト108は、検証処理についての全ての該当する変数を記録し、これには、(1)ユーザ名、(2)実施されている検証ポリシーの現在の状態、(3)呼び出されている検証オブジェクトに関する履歴および呼び出しに関連するスコアおよび結果、(4)トランザクションに固有の要件(例えば、所望の精度の度合いまたはトランザクションの性質)、(5)ユーザに固有の要件(例えば、風邪を引いているユーザは、声紋照合に頼らない方がよい場合がある)、および(6)他の物理的および論理的変数(例えば、リモートまたはローカルといったネットワーク接続の種類、もしくは音声チャンネルの品質)などがある。
【0037】
また、コンテキスト108は、外部検証元(図示せず)からの検証スコアを表す他の変数を記録してもよい。例えば、銀行に来た顧客は、入り口で銀行カードを機械に通して読み込ませた後にそのような行為を行っていた場合があり、その情報は、外部スコアとしてコンテキスト108に含められて、カウンタまたは現金自動預払機における後続の認証処理のために使用されてもよい。
【0038】
コンテキスト108に最初から含まれていた変数は、検証オブジェクトに関連したシステムデフォルト変数、および最初の構築の際の他の既知の要件である。しかしながら、さらなる検証オブジェクトがシステムに追加されるか、または新たな要件が見つかるに従って、ユーザが定義した変数がコンテキスト108に追加されてもよい。
【0039】
ネットワークアダプタ106は、検証クライアント装置102と検証サーバ104との間の通信を可能にする。ネットワークアダプタ106は、標準的な伝送制御プロトコル(TCP)/インターネットプロトコル(IP)またはセキュアソケットレイヤ(SSL)プロトコルなどのネットワークトランスポートプロトコルを実施する。認証システム100が単一のコンピュータシステム上で実施される一実施形態においては、ネットワークアダプタは必要ないことは当然である。
【0040】
図示のように、検証サーバ104は、検証ポリシーマネージャ112と、一連の検証エンジン114−1から114−Nとを備える。各検証エンジンは、所定の検証オブジェクトまたは検証オブジェクトの系統(種類)に対して動作する。例えば、指紋検証エンジンは、特定の指紋または他の種類の指紋(例えば、親指の指紋または人差し指の指紋)に対して動作してもよい。同様に、知識検証エンジンは、異なる種類のチャレンジ−レスポンス型の質問に対して動作してもよい。
【0041】
柔軟性のあるアーキテクチャによって、新たな検証エンジンおよび検証オブジェクトを容易に追加することができる。追加すべき検証エンジンが、新たな種類の場合もあるし、既存の種類の場合もある。例えば、顔認識エンジンは、声紋および指紋認識エンジンを既に備える検証サーバに追加してもよいし、または第2の声紋認証エンジン(例えば異なる製造元からの場合もある)を追加することもできる。同様に、新たな検証オブジェクトを新たな検証エンジンまたは既存の検証エンジンに追加することもできる(新たな質問を既存の知識検証エンジンに追加するなど)。
【0042】
検証ポリシーマネージャ112は、所定のユーザモデルについての検証ポリシーを解釈して、認証処理全体を駆動する。検証ポリシーマネージャ112は、現在のコンテキスト108を検証クライアント装置102から受信し、当該コンテキストに対して動作し、現在の検証オブジェクトの更新されたステータスを組み込み、更新されたコンテキストを検証処理中に行われるべき次のステップの仕様と共に検証クライアント装置102へ返す。
【0043】
検証ポリシーマネージャ112は、オプションとして、有限ステートマシンにおける状態を呼び出し、当該ステートマシンの状況を解釈し、次の状態へ分岐する役割を担ってもよい。検証ポリシーマネージャ112は、検証処理についての最終的な承認または拒絶決定を行う実体であり、場合によっては、現在のトランザクションが必要とし、かつ実施されている検証ポリシーが許可するのであれば、中間決定を行ってもよい。
【0044】
データマネージャ116は、検証オブジェクト記憶装置118、検証ポリシー記憶装置120、およびユーザモデル記憶装置122を含む外部記憶リソースを制御する。これらのリソースは、検証サーバ104(検証ポリシーマネージャ112または個々の検証エンジン114−1から114−Nのいずれか)によって直接アクセスされてもよい。一代替実施形態において、そのようなリソースは、検証クライアント装置102によってアクセスされて、ネットワークアダプタ106を介して検証サーバ104へ送られてもよい。
【0045】
アプリケーション110は、アクセスを許可する前にユーザ認証が必要なアプリケーションである。アプリケーションの例には、銀行業務アプリケーション、旅行アプリケーション、および電子メールアプリケーションが含まれる。アプリケーション110は、アプリケーション固有およびトランザクション固有の情報および要件を提供する役割を担う。本発明は、任意の特定のアプリケーションに限定されないことは当然である。
【0046】
本発明の一実施形態において、検証クライアント装置102は、XMLメッセージインターフェイスを使用して検証サーバ104と通信する。
【0047】
さらに、代替実施形態において、検証サーバに関連する構成要素同士は、ネットワークアダプタ106上で互いに通信してもよい。よって、例えば、1つ以上の検証エンジン114は、ネットワークアダプタ106上で検証ポリシーマネージャ112と通信してもよい。同様に分散された配置が、検証ポリシーマネージャ112およびデータマネージャ116、ならびにデータマネージャ116およびデータ記憶装置118,120,および122に関して存在してもよい。よって、図1に示す構成要素の相互接続性は例示であり、したがって、他の適切な相互接続を実施して本発明の認証機能性を提供してもよいことは当然である。
【0048】
今度は図2を参照すると、ブロック図は、本発明の一実施形態に係る逐次認証を実施するための計算システム環境の一例を示している。一例として、計算システム200は、分散型計算システムの少なくとも一部を表わしてもよく、ユーザは、コンピュータシステム202(以下、例示的に「クライアント」またはクライアント装置と称する)を介して他のコンピュータシステム204(例示的に「サーバ」と称する)とネットワーク206を介して通信する。ネットワークは、例えばインターネットまたはワールドワイドウェブ、もしくはローカルエリアネットワークとコンピュータが通信できる任意の適切なネットワークであってもよい。しかしながら、本発明は、任意の特定の種類のネットワークに限定されるものではない。実際、コンピュータシステムは、ネットワークなしで直接リンクされてもよいことは当然である。
【0049】
さらに、図2には、簡略化のため2つのコンピュータシステムのみが図示されているが、ネットワークは複数のクライアント装置と複数のサーバとをリンクしてもよいことは当然である。しかしながら、本発明の手法は、単一のコンピュータシステム上で実施されてもよいのは当然であり、例えば、ユーザは、認証動作を行うコンピュータシステムと直接対話する。
【0050】
図1を参照すると、検証クライアント装置102は、コンピュータシステム202を介して実施されてもよく、検証サーバ104(およびその構成要素)と、データマネージャ116と、各オブジェクト記憶装置、ポリシー記憶装置、およびユーザモデル記憶装置(118,120および122)とは、コンピュータシステム204を介して実施されてもよいことは当然である。したがって、ネットワークアダプタ106は、ネットワーク206に従って実施されることになろう。
【0051】
よって、図2は、ネットワーク上を通信する各コンピュータシステムについてのアーキテクチャの一例を一般的に示すことは当然である。図示のように、コンピュータシステム202は、プロセッサ208−A、メモリ210−A、およびI/O装置212−Aを備え、これらはすべてコンピュータバス214−Aを介して結合されている。同様に、コンピュータシステム204は、プロセッサ208−B、メモリ210−B、およびI/O装置212−Bを備え、これらはすべてコンピュータバス214−Bを介して結合されている。
【0052】
本明細書において使用されているような「プロセッサ」という用語は、1つ以上の処理装置を含む意味であることは当然であり、これには中央処理装置(CPU)または他の処理回路が含まれる。また、本明細書において使用されているような「メモリ」という用語は、プロセッサまたはCPUに関連するメモリを含むことを意味しており、RAM、ROM、固定的かつ継続的メモリ装置(例えば、ハードドライブ)、または着脱可能な継続的メモリ装置(例えば、ディスケットまたはCD−ROM)などである。加えて、本明細書において使用されているような「I/O装置」という用語は、データを処理部に入力するための1つ以上の入力装置(例えば、キーボードまたはマウス)と、処理部に関連する結果を提供するための1つ以上の出力装置(例えば、ディスプレイ)とを含む意味である。さらに、コンピュータシステム202に関連するI/O装置は、認証システムが対応している検証オブジェクトに関連する特定のデータの収集に必要な装置を含むのが当然であり、例えば、声紋認識のための音声データまたは提示された質問に対する答えもしくはその両方を取り込むマイクロフォン、そのような質問をユーザに対して出力するスピーカ、顔スキャナ、虹彩スキャナ、または指紋スキャナもしくはそれらすべてである。
【0053】
図2に示すクライアントコンピュータシステムは、パーソナルコンピュータ、携帯情報端末、または携帯電話のような、進歩的な手法を実施するようにプログラムされたコンピュータシステムを備えてもよいことは当然である。同様に、図2に示すサーバコンピュータシステムは、パーソナルコンピュータ、マイクロコンピュータ、またはミニコンピュータのような、進歩的な手法を実施するようにプログラムされたコンピュータシステムを備えてもよい。しかしながら、本発明は、任意の特定のコンピュータアーキテクチャに制限されるものではない。
【0054】
したがって、本明細書に記載されているような、本発明の手法を行うソフトウェア命令またはコードは、例えばROM、固定または着脱可能メモリなどの1つ以上の関連メモリ装置に記憶されてもよく、使用できる状況にある場合には、RAMにロードされてCPUによって実行されてもよい。
【0055】
今度は図3を参照すると、検証オブジェクトのレジストリの例が図示されている。この特定の実施形態において、レジストリ300は、XMLを使用して表されており、検証オブジェクト記憶装置118(図1)に記憶されている。
【0056】
仕様には、登録されたすべての検証オブジェクトの記述が含まれており、これらは、新たな検証オブジェクトが追加されると更新できる。本例における第1のオブジェクト(302)は、誕生日(DOB)オブジェクトであって、これは、問答(QA)型であり、このオブジェクトに対して動作する役割を担う検証エンジンは、知識検証エンジンである。提示されたプロンプトを含んで、このオブジェクトが呼び出されたときに必要な応答をユーザに対して促すようにしてもよいが、このプロンプトは、必要があれば、検証クライアントによって修正または置き換えられてもよい。「パープレキシティ」とは、検証オブジェクトに関連した困難性を表す量であり、検証決定を行う際に検証ポリシーマネージャによってオプションで使用されてもよい。
【0057】
本例における第2のオブジェクト(304)は、呼者識別であり、これは、電話通信接続の場合に、呼を生じさせた電話の電話番号を該当するユーザモデルの電話番号と照合しようと試みるものである。この情報は、ユーザからの明示的な入力なしで電話通信接続インフラストラクチャから自動的に取得されてもよいので、プロンプトは指定されていない。
【0058】
本例における第3のオブジェクト(306)は、声紋オブジェクトであり、この場合、音声検証エンジンは1つの種類の検証オブジェクトに対して動作するので、種類は指定されていない。声紋は、盗まれないであろうバイオメトリック特徴であるという前提で、この例においては、高いパープレキシティが指定されている。
【0059】
第4および第5のオブジェクト(308および310)は、仕様の階層的性質を示しており、CAR_COLORオブジェクトは親オブジェクトCOLORからのデフォルトの性質を継承する。
【0060】
本例における最後の2つのオブジェクト(312および314)は、動的検証オブジェクトの例であり、これによって、意図された応答が動的に変化し、本例において、正しい応答がユーザモデルからではなくアプリケーションから得られる。現在の残高(CUR_BALANCE)オブジェクト(312)は、数値型(APP_NUM)のアプリケーション固有のオブジェクトであり、最終取引日(LAST_TRANSACTION_DATE)オブジェクト(314)は、ストリング型のアプリケーション固有のオブジェクトである。
【0061】
今度は図4を参照すると、ユーザモデルの一例が図示されている。この特定の実施形態において、ユーザモデル400は、XMLを使用して表現されており、ユーザモデル記憶装置122(図1)に記憶される。
【0062】
ユーザモデルは、登録データを提供した検証オブジェクトの記述を含む。第1のオブジェクト(402)は、呼者IDオブジェクトであり、これに対するユーザの正しい応答は、本例においては914−945−3000である。このオブジェクトに対するユーザの好みをオプションで含めて、可能であれば、好みがより強いオブジェクトを選択する際に検証ポリシーによって使用されてもよい。
【0063】
第2および第3のオブジェクト(DOB404およびCOLOR406)は、類似している。第4のオブジェクト(車の色またはCAR_COLOR408)は、本例においては2つの応答を有している。なぜならば、このユーザは車を2台所有しており、どちらの応答も正しい答えとして承認してもよいからである。第5のオブジェクト(410)は、声紋オブジェクトであり、モデルパラメータを必要とする。モデルパラメータは、ファイルに記憶されてもよく、ファイル名が含まれる。最後の2つのオブジェクト(CUR_BALANCE412およびLAST_TRANSACTION_DATE414)は、正しい応答が含まれていない。なぜならば、これらは動的な検証オブジェクトであるからで、現時点での正しい応答を、アプリケーションから得なければならない。
【0064】
上述のように、本発明によれば、任意のオブジェクトをリアルタイムで更新または削除してもよく、新たなオブジェクトをリアルタイムで追加することもできる。
【0065】
図4に示すように、本発明に係るユーザモデルは、各セキュリティチャレンジを特徴付ける偽承認(FA)および偽拒絶(FR)誤り率を備える。FAは、セキュリティチャレンジに対して正しく回答した異なるユーザである確率を示し、セキュリティチャレンジに対して正しく回答した異なるユーザである確率を示し、FRは、正しく回答しなかった真正のユーザである確率を示す。各チャレンジに割り当てられたFAおよびFRは、背景モデルにのみあってもよく、したがって、すべてのユーザが同一のFAおよびFRを有すると仮定してもよく、または、ユーザ固有のFAおよびFAが各チャレンジに割り当てられていてもよい。例えば、特定のチャレンジは、FA値が0.001であり、FR値が0.07を有していてもよい。
【0066】
ユーザモデル400におけるFA率が低いほど、例えば、ユーザはチャレンジに対して回答を容易に行うことを示してもよい。同様に、社会保障番号チャレンジに対する背景モデル540におけるFA率が低いほど、例えば、社会保障番号のリポジトリが盗まれていることを示してもよい。
【0067】
ユーザモデル400におけるFR率が低いほど、例えば、ユーザは特定のチャレンジに対する答えを忘れてしまうことが多いことを示してもよい。同様に、特定のチャレンジに対する背景モデル540におけるFR率が低いほど、例えば、数多くのユーザが当該チャレンジに対する答えを忘れがちであることを示してもよい。
【0068】
また、ユーザモデルは、図4に示すように、セキュリティチャレンジに対する正しい応答を含む。FA値およびFR値は、実際に測定されたFAおよびFRを反映するフィールドデータに適応することによって変更されてもよい。例えば、数多くのユーザが当該チャレンジに対する答えを忘れがちである場合、FR値を増加しなければならない。FA値およびFR値は、予想されたセキュリティ違反を反映して変更されてもよい。例えば、社会保障番号のリポジトリが盗まれた場合には、社会保障番号チャレンジに割り当てられたFAは、典型的に予想されるよりも高くなるように更新されることになる。
【0069】
図5は、本発明の特徴を組み込んだ逐次認証システム500を示すブロック図である。図5に示すように、逐次認証システム500は、ユーザモデル400を使用して、各ユーザの予想される振舞いを記述している。加えて、逐次認証システム500は、ユーザの一般的な個体群の予想される振舞いを記述する背景モデル540をオプションで使用する。背景モデル540は、例えば、個々のユーザモデル400の集まりであってもよい。
【0070】
ユーザモデル400および背景モデル540は、当業者に自明であろう任意の周知の手法を使用して作成されてもよい。例えば、ユーザモデル400および背景モデル540は、混合ガウス分布モデル(GMM)および隠れマルコフモデル(HMM)など、統計的に生成されるモデルを使用して作成されてもよい。加えて、人工ニューラルネットワーク(ANN)およびサポートベクトルマシン(SVM)などの識別モデルを使用してもよい。注意すべきは、ユーザモデル400は、チャレンジ毎にFR率を含み、オプションでFA率を含み、背景モデル540は、チャレンジ毎にFA率を含み、オプションでFR率を含むということである。
【0071】
先に記したように、各対話動作において、セキュリティチャレンジがユーザに対して提示される。チャレンジは、典型的には、ユーザが応えなければならない質問である。各動作が完了すると、段階510において、背景モデル540とユーザモデル400とを使用して中間決定が計算される。段階510において生成された中間決定は、その後、モジュール520へ渡され、そこでは、中間決定を集約して、累積結果525を形成して、これによって、ユーザ承認/拒絶決定が行われる。最終決定ができない場合には、モジュール520は、追加のチャレンジをユーザに提示する必要があるということを示す第3の状態の累積結果(「未決定」)を生じさせる。オプションで、ユーザモデルまたは背景モデルもしくはその両方は、段階515において、新たなユーザ入力を反映するように適応されてもよい。
【0072】
一実施形態において、(中間結果を形成する)対話動作毎に対数尤度比(LLR)スコアが計算されて、動作に対して総計される(そして、累積ユーザ承認/拒絶結果525を形成する)。LLRスコアの総計は、2つの閾値と比較されて、例えばワルドのSPRT理論に基づいて決定がなされる。例えば、エー・ワルド(A.Wald),「シーケンシャルアナリシス(Sequential Analysis)」、(ジェイ・ウィリー(J.Wiley),1947年)を参照のこと。
【0073】
LLRスコアが高閾値を超える場合には、ユーザは承認される。累積LLRスコアが低閾値に満たない場合には、ユーザは拒絶され、LLRスコアが2つの閾値の間にある場合には、対話は継続する。(背景モデル540に記憶された)チャレンジ毎の包括的なFAおよびFRを想定すると、LLRスコアは以下のように計算されてもよい。
【0074】
所定のチャレンジiについて、当該チャレンジを特徴付ける2つのパラメータを定義する。
【0075】
は、当該チャレンジについての偽承認(FA)率(例えば、答えを推測する確率または答えを危険にさらす確率)である。
【0076】
qiは、当該チャレンジについての偽拒絶(R)率(例えば、答えを忘れる確率または答えを知らない確率)である。
【0077】
対話全体についての測定は、バイナリベクトル
【0078】
【数1】

【0079】
によって表されてもよく、これは以降xアンダーバーと記載する。ここで、xアンダーバーにおける各ビットは、特定のチャレンジに対する正しい回答の場合の1または誤った回答の場合の2のいずれかである。
【0080】
話者の主張が真の場合をλと定義し、話者が他のアカウントに侵入しようと試みている相補的な場合を
【0081】
【数2】

【0082】
と定義し、これは以降λバーと記載すると、以下の確率が、動作番号jについて計算できる。
【0083】
【数3】

【0084】
【数4】

【0085】
であり、各動作についてのLLRは、
【0086】
【数5】

【0087】
今、動作同士は独立している(実際には、誕生日などの複数のフィールド動作は単一の動作のように扱うこともできよう)こととし、動作番号Nの後、対数尤度比(LLR)は以下のように計算される。
【0088】
【数6】

【0089】
したがって、LLRの値は、動作数とともに増加し、これは総計なので、この総計の分布は、個々の動作に基づくLLR推定値を想定した、よりガウス的なものとなる。
【0090】
バイオメトリックと、知識に基づくシステムとの単純明快な組み合わせの仕方は、2つのスコアを加算するか、または平均化することであろう。知識バイオメトリックスコアは、話者検証エンジンから返されたスコア(これは、バイオメトリックLLRの推定値である)か、このスコアの確率的な解釈であってもよい。その後、閾値は、組み合わせられたスコア525に適用される。
【0091】
図6は、本発明の特徴を組み込んだ逐次認証処理600の実施の一例を説明するフローチャートである。図6に示すように、逐次認証処理600は、まずステップ610中に、チャレンジをユーザに対して提示する。その後、ステップ620中に、ユーザ応答がユーザモデル400または背景モデル540もしくはその両方と比較されて、中間認証決定を生成する。対話動作毎に、以下のように対数尤度比(LLR)スコアを計算してもよい。
【0092】
【数7】

【0093】
その後、累積認証決定525は、ステップ630中に、現在の中間認証決定(例えば、LLR値)をLLR値の総計に加えることによって更新される。加えて、ユーザモデル400または背景モデル540もしくはその両方は、必要があれば、ステップ640中にユーザデータに基づいて更新される。例えば、FA値およびFR値は、ステップ640中に、測定されたFA値およびFR値を反映するフィールドデータに適応することによって変更されてもよい。また、FA値およびFR値は、予想されたセキュリティ違反を反映して変更されてもよい。例えば、社会保障番号のリポジトリが盗まれた場合には、社会保障番号チャレンジに割り当てられたFAは、典型的に予想されるよりも高くなるように更新されることになる。
【0094】
最後に、ステップ650において、累積認証決定(LLRスコアの総計)525を確立された閾値に対して評価するためのテストが行われる。実施の一例において、LLRスコアの総計は、2つの閾値と比較されて、決定がなされてもよい。LLRスコアが高閾値を超える場合には、ユーザは承認される(ステップ650からの分岐A)。累積LLRスコアが低閾値に満たない場合には、ユーザは拒絶され(ステップ650からの分岐B)、LLRスコアが2つの閾値の間にある場合には、対話は継続する(ステップ650からの分岐C)。
【0095】
システムおよび製品の詳細
技術において既知であるように、本明細書において述べた方法および装置は、コンピュータ読み取り可能なコード手段が実施されたコンピュータ読み取り可能な媒体を自ら備える製品として配布されてもよい。コンピュータ読み取り可能なプログラムコード手段は、コンピュータシステムとともに、本明細書において述べた方法を実行または装置を作成するためのすべてまたはいくつかのステップを実行するように動作可能である。コンピュータ読み取り可能な媒体は、記録可能な媒体(例えば、フレキシブルディスク、ハードドライブ、コンパクトディスク、またはメモリカード)であってもよく、送信媒体(例えば、時分割多重アクセス、符号分割多重アクセス、または他の無線周波数チャンネルを使用する光ファイバ、ワールドワイドウェブ、ケーブル、または無線チャンネルを備えるネットワーク)であってもよい。コンピュータシステムとともに使用するのに適した情報を記憶できる周知または開発済みの任意の媒体を使用してもよい。コンピュータ読み取り可能なコード手段は、コンピュータが指示またはデータを読み取ることができるための任意の機構であって、磁気媒体において磁気を変化させたものまたはコンパクトディスクの表面において高さを変化させたものなどである。
【0096】
本明細書において述べたコンピュータシステムおよびサーバは、それぞれ、本明細書において開示された方法、ステップおよび機能を実施するための関連プロセッサを構成するであろうメモリを含む。メモリは、分散されていてもローカルであってもよく、プロセッサは、分散されていても単一であってもよい。メモリは、電気、磁気、または光学メモリ、もしくはこれらまたは他の種類の記憶装置の任意の組み合わせとして実施されてもよい。さらに、「メモリ」という用語は、関連プロセッサによってアクセスされるアドレス指定可能な空間におけるアドレスから読み出され、またはそこへ書き込まれる任意の情報を含むのに十分なほど広く解釈されるべきである。この定義によって、ネットワーク上の情報は、まだメモリ内にある。なぜならば、関連プロセッサは、ネットワークから情報を取り出すことができるからである。
【0097】
本明細書において提示および説明した実施形態および変形は、本発明の原理を例示するに過ぎず、様々な修正が、本発明の範囲および精神から逸脱することなく当業者によって実施されてもよい。
【図面の簡単な説明】
【0098】
【図1】本発明に係る逐次認証を実施するための認証システムのクライアント−サーバアーキテクチャを示すブロック図である。
【図2】本発明に係る逐次認証を実施するための計算システム環境の一例を示すブロック図である。
【図3】本発明の一実施形態に係る複数の検証オブジェクトの仕様の一例を示す図である。
【図4】本発明の一実施形態に係る複数の検証オブジェクトを含むユーザモデルの使用の一例を示す図である。
【図5】本発明の特徴を組み込んだ逐次認証システムを示すブロック図である。
【図6】本発明の特徴を組み込んだ逐次認証処理の実施の一例を説明するフローチャートである。
【符号の説明】
【0099】
102 検証クライアント装置
104 検証サーバ
106 ネットワークアダプタ
110 アプリケーション
108 コンテキスト
112 検証ポリシーマネージャ
114−1 検証エンジン#1
114−N 検証エンジン#N
116 データマネージャ
118 検証オブジェクト記憶装置
120 検証ポリシー記憶装置
122 ユーザモデル記憶装置

【特許請求の範囲】
【請求項1】
ユーザの逐次認証のための方法であって、
中間認証結果を得るために、前記ユーザに対して少なくとも1つの知識チャレンジを試行するステップであって、前記中間認証結果は、知識チャレンジ毎の1つ以上の誤承認および誤拒絶誤り確率に基づく、ステップと、
前記ユーザに対して少なくとも1つの知識チャレンジを試行する前記ステップを、累積認証結果が1つ以上の基準を満たすまで繰り返すステップとを含む、方法。
【請求項2】
前記誤承認誤り確率は、前記知識チャレンジに対して正しく回答した別のユーザである確率を示す、請求項1に記載の方法。
【請求項3】
前記誤拒絶誤り確率は、知識チャレンジに対して正しく回答しなかった真正ユーザである確率を示す、請求項1に記載の方法。
【請求項4】
1つ以上の前記誤承認および誤拒絶誤り確率は、ユーザの個体群について規定される、請求項1に記載の方法。
【請求項5】
1つ以上の前記誤承認および誤拒絶誤り確率は、前記ユーザについて規定される、請求項1に記載の方法。
【請求項6】
1つ以上の前記誤承認および誤拒絶誤り確率は、フィールドデータに基づいて適応される、請求項1に記載の方法。
【請求項7】
1つ以上の前記誤承認および誤拒絶誤り確率は、所定のチャレンジについての既知の情報に基づいて適応される、請求項1に記載の方法。
【請求項8】
前記中間認証結果は、連続スコアである、請求項1に記載の方法。
【請求項9】
前記中間認証結果は、対数尤度比に基づく、請求項1に記載の方法。
【請求項10】
前記累積認証結果は、個々の対数尤度比の総計である、請求項1に記載の方法。
【請求項11】
1つ以上の前記中間認証結果および前記累積認証結果は、バイオメトリック検証方法からの結果に組み合わされる、請求項1に記載の方法。
【請求項12】
1つ以上の前記中間認証結果および前記累積認証結果は、話者検証方法からの結果に組み合わされる、請求項1に記載の方法。
【請求項13】
ユーザの逐次認証のためのシステムであって、
メモリと、
メモリに結合された少なくとも1つのプロセッサとを備え、
中間認証結果を得るために、前記ユーザに対して少なくとも1つの知識チャレンジを試行するように動作し、前記中間認証結果は、知識チャレンジ毎の1つ以上の誤承認および誤拒絶誤り確率に基づいており、
累積認証結果が1つ以上の基準を満たすまで前記チャレンジを繰り返すように動作する、システム。
【請求項14】
前記誤承認誤り確率は、前記知識チャレンジに対して正しく回答した別のユーザである確率を示し、前記誤拒絶誤り確率は、知識チャレンジに対して正しく回答しなかった真正ユーザである確率を示す、請求項13に記載のシステム。
【請求項15】
1つ以上の前記誤承認および誤拒絶誤り確率は、ユーザの個体群について規定される、請求項13に記載のシステム。
【請求項16】
1つ以上の前記誤承認および誤拒絶誤り確率は、前記ユーザについて規定される、請求項13に記載のシステム。
【請求項17】
1つ以上の前記誤承認および誤拒絶誤り確率は、フィールドデータ、または所定のチャレンジについての既知の情報に基づいて適応される、請求項13に記載のシステム。
【請求項18】
前記中間認証結果は、対数尤度比に基づいており、前記累積認証結果は、個々の対数尤度比の総計である、請求項13に記載のシステム。
【請求項19】
請1つ以上の前記中間認証結果および前記累積認証結果は、バイオメトリック検証方法からの1つ以上の結果と、話者検証方法からの結果とに組み合わされる、請求項13に記載のシステム。
【請求項20】
ユーザの逐次認証のためのプログラムであって、該プログラムが、
中間認証結果を得るために、前記ユーザに対して少なくとも1つの知識チャレンジを試行するステップと、
前記ユーザに対して少なくとも1つの知識チャレンジを試行する前記ステップを、累積認証結果が1つ以上の基準を満たすまで繰り返すステップとをコンピュータに実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2007−4796(P2007−4796A)
【公開日】平成19年1月11日(2007.1.11)
【国際特許分類】
【出願番号】特願2006−169543(P2006−169543)
【出願日】平成18年6月20日(2006.6.20)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【Fターム(参考)】