(57)【要約】  認証機器を用いて遠隔アクセス可能なアプリケーションを保護する装置、方法およびシステムが開示される。より詳細には、取引データを表示し、これらの取引データに対して署名を生成する認証アプリケーションに対するオーバーレイ攻撃を阻止する装置、方法およびシステムが開示される。
2018534706.tif 000002
【特許請求の範囲】
【請求項１】
遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護する方法であって、
取引データを取得するステップと、
パーソナルコンピューティング機器で動作している認証アプリケーションにより、取得した前記取引データを前記ユーザによる参照のため前記パーソナルコンピューティング機器のディスプレイの取引データ表示ウィンドウに表示するステップと、
前記取引データに関連づけられた動的認証情報を取得するステップと、
前記動的認証情報を検証のため利用可能にするステップと、
前記認証アプリケーションの取引データ提示エリアまたは前記認証アプリケーションの取引データ表示ウィンドウが前記認証アプリケーションにより表示されていないウィンドウにより部分的または全体的に隠されまたは覆われている場合、少なくとも前記動的認証情報を検証のため利用可能にするステップは実行されないまたは実行に成功できないことを保証するステップと、
をパーソナルコンピューティング機器に実行させることを含む、方法。
【請求項２】
少なくとも前記動的認証情報を検証のため利用可能にするステップは、前記認証アプリケーションの取引データ提示エリアまたは前記認証アプリケーションの取引表示ウィンドウが前記認証アプリケーションのウィンドウでないウィンドウにより部分的または全体的に隠されまたは覆われている限り、実行されないまたは実行に成功できない、請求項１に記載の方法。
【請求項３】
前記取得した前記取引データを表示するステップにおいて、前記ユーザによる承認または否認を前記ユーザが指示するための承認指示機構を前記パーソナルコンピューティング機器で提供するステップと、
この機構を用いて前記ユーザから前記ユーザの承認または否認の指示を取得するステップであって、少なくとも前記動的認証情報を検証のため利用可能にするステップは、前記承認指示機構を介して前記ユーザの承認の指示を受信したことを条件として実行され、
前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われている場合、前記承認指示機構が無効化されることを保証するステップと、
をさらに含む、請求項１または２に記載の方法。
【請求項４】
前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われている場合、前記承認指示機構が無効化されることを保証するステップは、前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われているときに、前記パーソナルコンピューティング機器のオペレーティングシステムがユーザの承認を示すユーザ入力イベントを遮断するようにする、または、前記承認指示機構に渡さないようにする１以上のオペレーティングシステム機能を、前記認証アプリケーションが呼び出すことを含む、請求項３に記載の方法。
【請求項５】
前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われているか否かを前記認証アプリケーションが検出また検証するオーバーレイ検出ステップをさらに含む、請求項１ないし４のいずれか一項に記載の方法。
【請求項６】
前記オーバーレイ検出ステップは、前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われているか否かを検出するための前記パーソナルコンピューティング機器のオペレーティングシステムの１以上のオペレーティングシステム機能を、前記認証アプリケーションが呼び出すことを含む、請求項５に記載の方法。
【請求項７】
前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われているか否かを前記認証アプリケーションが検出または検証するオーバーレイ検出ステップと、
前記オーバーレイ検出ステップにおいて、前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われていると検出された場合、前記承認指示機構により取得された前記ユーザの承認指示を無視するステップと、
を含む、請求項３に記載の方法。
【請求項８】
前記オーバーレイ検出ステップにおいて、前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われていると検出されなかったことを条件として、前記動的認証情報を検証のため利用可能にするステップを実行する、請求項５または６に記載の方法。
【請求項９】
前記オーバーレイ検出ステップにおいて前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われていると検出された場合に、前記ユーザに異常の存在を警告する視覚表示を前記ユーザに提供するステップをさらに含む、請求項５ないし８のいずれか一項に記載の方法。
【請求項１０】
前記オーバーレイ検出ステップにおいて前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われていると検出された場合に前記認証アプリケーションがセーフモードに入り、少なくとも前記認証アプリケーションの取引データ表示ウィンドウが少なくとも最小時間範囲の間他のウィンドウにより部分的または全体的に隠されまたは覆われていなくなるまで前記認証アプリケーションがセーフモードに維持されるステップをさらに含む、請求項５ないし９のいずれか一項に記載の方法。
【請求項１１】
前記認証アプリケーションがセーフモードである限り、前記承認指示機構は無効化され、または、前記承認指示機構による取得された前記ユーザの承認は無視され、または、前記動的認証情報を生成するステップは実行されず、または、前記動的認証情報を検証のため利用可能にするステップは実行されない、請求項１０に記載の方法。
【請求項１２】
前記認証アプリケーションがセーフモードである限り、前記認証アプリケーションは、前記認証アプリケーションがセーフモードであることを前記ユーザに警告する視覚表示を提供する、請求項１０に記載の方法。
【請求項１３】
前記承認指示機構は、前記パーソナルコンピューティング機器のディスプレイにおいて、前記ユーザが承認を指示するためにユーザが有効化しなければならない視覚的承認有効化要素を有し、前記視覚的承認有効化要素は、前記ユーザの操作に反応する有効化エリアを有し、前記視覚的承認有効化要素の前記有効化エリアに覆われたディスプレイのエリアは表示された取引データのすべてを覆うディスプレイ上の長方形と少なくとも部分的に重なる、請求項３に記載の方法。
【請求項１４】
前記他のウィンドウに覆われた前記視覚的承認有効化要素の前記有効化エリアの少なくともいずれかの部分は、前記視覚的承認有効化要素を有効化するためのユーザの操作に反応しない、請求項１３に記載の方法。
【請求項１５】
前記ユーザが前記視覚的承認有効化要素を有効化することは、前記ユーザが前記視覚的承認有効化要素の前記有効化エリアをクリック、タッチ、またはスライドさせることを含む、請求項１３または１４に記載の方法。
【請求項１６】
前記視覚的承認有効化要素は、クリック可能な、または、タッチ可能なボタンを含む、請求項１５に記載の方法。
【請求項１７】
表示された前記取引データの少なくとも一部は、前記視覚的承認有効化要素の前記有効化エリアの上に表示される、請求項１３または１４に記載の方法。
【請求項１８】
表示された前記取引データの少なくとも一部は、前記視覚的承認有効化要素の前記有効化エリアの、左、右、上、または下のうち少なくとも２つの位置に表示される、請求項１３または１４に記載の方法。
【請求項１９】
前記動的認証情報を検証のため利用可能にするステップは、前記パーソナルコンピューティング機器のディスプレイに前記動的認証情報を表示するステップを含み、前記視覚的承認有効化要素の前記有効化エリアは表示された前記取引データに覆われ、前記動的認証情報を表示するエリアは前記取引データを表示するエリアに覆われ、前記動的認証情報は前記ユーザが前記視覚的承認有効化要素を有効化するまで不可視である、請求項１３または１４に記載の方法。
【請求項２０】
前記視覚的承認有効化要素を有効化することは、前記視覚的承認有効化要素の少なくとも一部を前記ユーザがタッチおよびスライドし、表示された前記取引データの少なくとも一部をずらして前記動的認証情報の表現を露出させることを含む、請求項１９に記載の方法。
【請求項２１】
前記視覚的承認有効化要素を有効化することは、前記視覚的承認有効化要素の少なくとも２つの箇所を前記ユーザがタッチおよび異なる方向にスライドし、表示された前記取引データの少なくとも一部をずらして前記動的認証情報の表現を露出させることを含む、請求項１９または２０に記載の方法。
【請求項２２】
前記視覚的承認有効化要素を前記ユーザが解放すると、表示された前記取引データは元の位置に戻り、表示された前記動的認証情報は不可視になる、請求項２０または２１に記載の方法。
【請求項２３】
前記動的認証情報を検証のため利用可能にするステップは、前記動的認証情報を表示された前記取引データとともに前記パーソナルコンピューティング機器のディスプレイに表示することを含み、前記動的認証情報は表示された前記取引データと同時に前記ディスプレイの同一エリアに表示され、表示されたすべての前記取引データを囲むすべての長方形は、前記動的認証情報の少なくとも一部も囲む、請求項１または２に記載の方法。
【請求項２４】
前記取引データおよび前記動的認証情報は、重なり合うように、または、積み重なって表示される、請求項２３に記載の方法。
【請求項２５】
前記動的認証情報は、表示された前記取引データに取り囲まれるように表示される、請求項２３に記載の方法。
【請求項２６】
前記動的認証情報の表現および前記ディスプレイにおける前記取引データの表現は、前記ユーザが前記動的認証情報を前記取引データから区別できるように、異なる視覚特性を有する、請求項２３ないし２５のいずれか一項に記載の方法。
【請求項２７】
前記動的認証情報の表示に用いられる文字は、前記取引データの表示に用いられる文字とは異なる視覚特性を有する、請求項２６に記載の方法。
【請求項２８】
前記動的認証情報の表示に用いられる文字は、前記取引データの表示に用いられる文字と異なるフォントタイプ、フォントサイズ、またはフォント色を有する、請求項２７に記載の方法。
【請求項２９】
前記取引データに関連づけられた前記動的認証情報を取得するステップは、前記取引データを、前記パーソナルコンピューティング機器に保存された秘密鍵を含む暗号鍵、または前記秘密鍵から生成される暗号鍵と暗号論的に結合することにより前記動的認証情報を生成することを含む、請求項１に記載の方法。
【請求項３０】
遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護するパーソナルコンピューティング機器であって、前記パーソナルコンピューティング機器は、前記ユーザに情報を表示するディスプレイと、前記ユーザから入力を受信するユーザ入力インタフェースと、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部と、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを実行するデータ処理部とを備え、前記認証アプリケーションは前記パーソナルコンピューティング機器に、
取引データを取得させ、
取得した前記取引データを前記ユーザによる参照のため前記ディスプレイの前記認証アプリケーションの取引データ表示ウィンドウに表示させ、
前記取引データに関連づけられた動的認証情報を取得させ、
前記動的認証情報を検証のため利用可能にさせ、
前記認証アプリケーションの取引データ提示エリアまたは前記認証アプリケーションの取引データ表示ウィンドウが、前記認証アプリケーションにより表示されない他のウィンドウにより部分的または全体的に隠されまたは覆われている場合、少なくとも前記動的認証情報を検証のため利用可能にさせるステップは実行されない、または実行に成功できないことを保証させる、パーソナルコンピューティング機器。
【請求項３１】
遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換セッションを保護するためのシステムであって、前記遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバと、遠隔アクセス可能なコンピュータアプリケーションとの前記ユーザの情報交換を許可するためのアクセス機器と、前記遠隔アクセス可能なコンピュータプログラムの取引データに関連づけられた動的認証情報の妥当性を検証する認証情報検証サーバと、前記ユーザに情報を表示するディスプレイ、前記ユーザから入力を受信するユーザ入力インタフェース、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部、および、前記オペレーティングシステムソフトウェアと前記認証アプリケーションソフトウェアとを実行するデータ処理部とを備えるパーソナルコンピューティング機器とを備え、前記認証アプリケーションは前記パーソナルコンピューティング機器に、
取引データを取得させ、
取得した前記取引データを前記ユーザによる参照のため前記パーソナルコンピューティング機器の前記ディスプレイの前記認証アプリケーションの取引データ表示ウィンドウに表示させ、
前記取引データに関連づけられた動的認証情報を取得させ、
前記動的認証情報を検証のため利用可能にさせ、
前記認証アプリケーションの取引データ提示エリアまたは前記認証アプリケーションの取引データ表示ウィンドウが、前記認証アプリケーションにより表示されない他のウィンドウにより部分的または全体的に隠されまたは覆われている場合、少なくとも前記動的認証情報を検証のため利用可能にさせるステップは実行されない、または実行に成功できないことを保証させる、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２０１５年９月２１日に出願された、「A MULTI-USER STRONG AUTHENTICATION TOKEN（マルチユーザ厳密認証トークン）」という名称の米国仮出願第６２／２２１，３４３号に関連してその利益を主張するものであり、その内容は参照によりここに援用される。
【０００２】
本発明は、コンピュータおよびアプリケーションへの遠隔アクセスおよびコンピュータネットワークを介した遠隔取引の保護に関する。より具体的には、本発明は、スマートフォンなどのモバイル機器における認証アプリケーションに対する新しい形式の攻撃に対抗するための方法および装置に関する。
【背景技術】
【０００３】
コンピュータシステムおよびアプリケーションのリモートアクセスが人気を得るにつれて、インターネットなどの公衆ネットワークを介して遠隔アクセスされる取引の数および種類は、劇的に増加してきている。この人気は、セキュリティに対する需要を明確なものとし、特に、アプリケーションに遠隔アクセスする人が自ら名乗るその人であることを保証する方法、遠隔で実行される取引が正規の人により開始されたものであることを保証する方法、そして取引データはアプリケーションサーバに受信される前に変更されていないことを保証する方法、に対する需要を明確なものとしている。
【０００４】
遠隔アプリケーションへのアクセスを保護する１つの方法に、ユーザのスマートフォンなどのユーザのパーソナル機器における認証アプリケーションの使用がある。場合によっては、こうした認証アプリケーションは、認証情報を動的に生成するよう適応されている。場合によっては、これらの動的認証情報は、ユーザがアクセスしており保護の必要な遠隔アプリケーションにユーザが転送できるよう、ユーザのパーソナル機器において、例えば英数字の文字列の形式でユーザに提示される。これと異なり、認証アプリケーションは、生成された動的認証情報を直接（例えばユーザのパーソナル機器により確立されたインターネット接続を用いて）遠隔アプリケーションに送信してもよい。動的認証情報を受信すると遠隔アプリケーションは、ユーザまたはユーザのパーソナル機器から受信した動的認証情報を検証し、受信した動的認証情報の検証に成功したことを条件に、ユーザによるアクセスを許可する。
【０００５】
場合によっては、ユーザは、遠隔アプリケーションに取引を送信しようとする。この場合遠隔アプリケーションは、ユーザに、パーソナル機器上の認証アプリケーションにより動的認証情報を生成し、その動的認証情報を遠隔アプリケーションに提供することを要求することがある。そして、遠隔アプリケーションは、ユーザから受信した動的認証情報を検証し、受信した動的認証情報の検証に成功したことを条件として取引を承認する。
【０００６】
動的認証情報が、取引を特徴づける取引データに暗号論的に関連づけられている場合、その動的認証情報は、署名または取引データ署名とも称される。
【０００７】
場合によっては、認証アプリケーションは、取引データを取得してユーザに提示し、これらの取引データをユーザが検証できるようにしてもよい。場合によっては、認証アプリケーションは、ユーザに取引データを提示し、ユーザに提示された取引データの承認を求め、ユーザが提示された取引データを承認した場合のみ動的認証情報またはこれらの取引データの署名を生成し表示するようにしてもよい。場合によっては、認証アプリケーションは、明示的な承認を要求することなく動的認証情報を生成し、例えば、情報の生成の対象となる取引データを、生成された動的認証情報とともにユーザに提示し、ユーザが取引データの正否を検証してその検証に基づいて生成された動的認証情報を転送するか否かを判断することができるようにしてよい。
【０００８】
場合によっては、ユーザは、アクセス装置を用いて遠隔アプリケーションにアクセスし情報交換してよい。例えばユーザは、遠隔アプリケーションをホスティングする遠隔サーバコンピュータにインターネットなどのネットワークを介して接続された、パーソナルコンピュータ（ＰＣ）またはラップトップなどのコンピューティング機器を用いてよい。ユーザは、アクセス機器を用いて遠隔アプリケーションに取引を送信してよい。この場合、攻撃者は、例えば中間者（man-in-the-middle）またはブラウザ内（man-in-the-browser）攻撃により（例えばユーザのＰＣまたはラップトップにインストールされたマルウェアを使用して）干渉を試み、ユーザの意図した正規の取引データを不正な取引データに置き換えようとする。例えば、ユーザがインターネットバンキングアプリケーションにアクセスしていて送金要求を送信する場合、攻撃者は、意図される振込先口座番号を、攻撃者に関連する不正な口座番号で置き換えようとするかもしれない。
【０００９】
このような攻撃に対する防御のため、遠隔アプリケーションは、ユーザが遠隔アプリケーションにアクセスするために使用しているアクセス機器とは異なる、ユーザの認証機器に、受信した取引データを送信してよい。認証機器は、ユーザは遠隔アプリケーションが受信したデータを検証することができるよう、遠隔アプリケーションから受信した取引データをユーザに提示してよい。認証機器はまた、提示された取引データに関連づけ、または結びつけられる動的認証情報を生成しユーザに提示してもよい。この場合、ユーザは、ユーザによる取引データの承認の証拠として遠隔アプリケーションに動的認証情報を転送してよい。
【００１０】
もしも攻撃者が、正規ユーザがアクセス機器を用いて遠隔アプリケーションに送信しようとしていた実際の取引データを不正なデータで置き換えたとすると、遠隔アプリケーションはこれらの不正なデータを受信してユーザの認証機器にこれらの不正なデータを送信することになる。認証機器は、ユーザによる検証のためこれらの不正なデータを提示する。提示されたデータの検証において、ユーザは、提示されたデータと、ユーザが実際に遠隔アプリケーションに送信しようとしていた取引の実データとの相違に気付き、（認証機器が対応する動的認証情報を生成することができない）不正データを拒否し、または、（認証機器が何らか認証情報を生成して生成された認証情報を受信した取引データとともにユーザに提示した場合には）生成された認証情報を転送しないようにことができる。どちらにしても、遠隔アプリケーションが不正データに適合する認証情報を受信することはなく、不正な取引は承認されない。攻撃者はこのことを予測し、ユーザが送信した正規データとともに遠隔アプリケーションがユーザの認証機器に送信して認証機器での検証を受けることとなる（不正の）確認データを再置き換えするかもしれない。しかし、もし動的認証情報が取引データと暗号論的に結びつけられていれば（例えば、認証機器が遠隔アプリケーションから受信しユーザに提示された確認データに基づき暗号書面を生成するならば）、これも検出可能である。より具体的には、受信した認証情報を検証するために、遠隔アプリケーションは、検証プロセスにおいて、攻撃者から最初に受信した（ユーザが送信しようとしたデータの代わりに攻撃者が遠隔アプリケーションに送信した）不正データを使用する。しかしこの場合、動的認証情報は、遠隔アプリケーションが認証機器に送信しようとした確認データではなく、攻撃者がユーザの認証機器に提供した再置き換えデータに暗号論的に結びつけられており、動的認証情報の検証は失敗することになる。
【００１１】
場合によっては、ユーザの認証機器は、ユーザに関連づけられたパーソナル機器であってよい。場合によっては、ユーザの認証機器は、上述の認証およびデータ書面機能専用のハードウェア機器であってよい。また、場合によっては、ユーザの認証機器は、他の多数のアプリケーションの中で認証アプリケーションもサポート可能な、パーソナル多機能機器であってよい。認証アプリが装備されたユーザのスマートフォンまたはタブレットコンピュータは、こうしたパーソナル多機能機器の例である。
【００１２】
ここでの発明の背景の詳解は、発明の前後関係の説明のため記載されている。このことは、ここまで詳解した内容が本出願の優先日において出版され、知られ、または一般的知識となっていたことの自認とされるものではない。
【発明の概要】
【発明が解決しようとする課題】
【００１３】
上述したセキュリティ解決策が様々な中間者攻撃を阻止するのに大きな役割を果すところ、この解決策は、一方で遠隔アプリケーションから受信した確認データの認証機器によるユーザへの実際の表現と他方で対応する動的認証情報の認証機器による生成との間の結びつきを遮断するような認証機器の操作を、攻撃者はすることができないとの前提に依存している。これは、専用ハードウェアの認証機器においては合理的な前提である。しかし、典型的なスマートフォンやタブレットコンピュータといった、機器の機能を拡充するための追加ソフトウェアをユーザがインストールすることのできるオープンなオペレーティングシステムを有する多目的コンピューティング機器においては、より疑問の余地がある。
【００１４】
後者の場合、攻撃者がユーザの認証機器への何らかのマルウェアのインストールに成功し、ユーザが検証のため認証機器上で見るために入手したデータが、認証機器の認証アプリケーションが遠隔アプリケーションから受信し、認証機器が動的認証情報を生成するために用いる確認データと異なることが考えられる。この場合、攻撃者は、認証アプリケーションが実際には遠隔アプリケーションが現実に受信し認証機器に確認データとして送信した不正取引データを処理しているにもかかわらず、遠隔アプリケーションに認識されている取引データが、ユーザが最初に送信しようとしていた取引にまさに対応するものであるとユーザに信じさせることに成功するかもしれない。
【００１５】
例えば、スマートフォンまたはタブレットのプラットフォームによっては、後述する「オーバーレイ攻撃(an overlay attack)」とも呼ばれる攻撃を仕掛けることができるかもしれない。ユーザの認証機器の認証アプリケーションが検証のためユーザに認証データを、例えば認証アプリケーションのあるウィンドウに提示すると、あるマルウェアが、認証アプリケーションにより提示される現実の確認データが隠されてユーザから見えないように、そしてユーザがその代わりにマルウェアウィンドウに表示されたデータ、例えばユーザが見るものと考えている最初の取引データを見るように、ユーザによる検証／確認のため取引データを提示するために用いられる認証ウィンドウの領域の上にマルウェアウィンドウを即時に配置するかもしれない。この攻撃が慎重に実行されると、ユーザはこのタイプの攻撃に気づくことができないかもしれない。このタイプの攻撃はオーバーレイ攻撃とも呼ばれ、認証ウィンドウの上に配置されるマルウェアウィンドウはオーバーレイウィンドウとも呼ばれる。
【００１６】
このようなオーバーレイ攻撃を阻止するための解決策が求められている。
【課題を解決するための手段】
【００１７】
本発明は、認証機器のディスプレイおよび／または入力インタフェースを、上述のように、完全にまたはユーザが少なくとも何か問題があることに気づくことなく、オーバーレイ攻撃を仕掛けることができないように、または少なくとも困難にすることで、オーバーレイ攻撃を実行することができないよう、または、ユーザが視覚的な兆候によりオーバーレイ攻撃の存在の明確な警告を受けるよう、保証することを目的とする。
【００１８】
第１実施形態では、認証機器の認証アプリケーションは、オーバーレイ攻撃を積極的に不能にするよう適応されてよい。ある実施形態で、認証プログラムは、認証ウィンドウが他のウィンドウにより覆われているか否かを検出するよう適応されてよく、認証アプリケーションのウィンドウが他のウィンドウにより覆われていることを検出すると適切な処置をとるよう適応されてよい。ある実施形態で、認証アプリケーションは、認証アプリケーションにより生成されユーザに提示される情報を含むウィンドウが常に最前面に配置され、情報がオーバーレイウィンドウにより覆われないように適応されてよい。認証アプリケーションは、認証アプリケーションが動作しているコンピューティング機器のオペレーティングシステムの１以上の適切なオペレーティングシステムを呼び出すことにより、上記を実行してもよい。例えば、ある実施形態で、認証機器は、電子コンシューマ機器（例えばスマートフォンまたはタブレットコンピュータ）などの電子機器であってよい。認証機器は、オペレーティングシステム（例えばアンドロイド（Android（登録商標））またはiOS）を実行し、認証アプリケーションは、認証機器にインストールされるソフトウェアであってよく、認証機器のメモリに保存され、認証機器のマイクロプロセッサで実行されてよい。ある実施形態で、認証機器における認証アプリケーションは、認証アプリケーションのウィンドウが他のウィンドウに覆われているか否かを認証アプリケーションが判定できるようにする１以上の機能をオペレーティングシステムから呼び出してよい。ある実施形態で、認証機器における認証アプリケーションは、認証アプリケーションのウィンドウが他のウィンドウに覆われている場合に、認証アプリケーションによるユーザ入力の受け取りを禁止する１以上の機能をオペレーティングシステムから呼び出してよい。
【００１９】
ここで用いた「機能をオペレーティングシステムから呼び出し」という用語は、アプリケーションおよびオペレーティングシステムの情報交換に影響を及ぼす属性の値を設定することを含む。
【００２０】
第２実施形態では、認証アプリケーションは、オーバーレイの存在により自動的にユーザが動的認証情報を取得できないようにするよう適応されてよい。これは、ある実施形態では、認証アプリケーションがオーバーレイウィンドウの存在を実際に検出することなく実現可能である。例えば、ある実施形態では、認証アプリケーションは、ユーザに取引データを提示し、対応する動的認証情報を生成する機能と別に、ユーザが動的認証情報を取得するのに必須な他の機能（例えばユーザに動的認証情報を提示する機能、または、提示された取引データの承認指示をユーザから取得する機能）を有してよい。ある実施形態では、認証データによる取引データのユーザへの提示は、ユーザが動的認証情報を取得するのに必須な他の機能と連携し、認証アプリケーションにより提示される認証データを隠すオーバーレイウィンドウの存在がこうした他の機能を必然的に妨害して、こうした他の機能が動作して目的を達することを自動的に阻止するようにしてもよい。
【００２１】
第３実施形態では、認証アプリケーションは、オーバーレイウィンドウが存在すると、オーバーレイウィンドウが存在することをユーザに明確に示す効果を奏することとなる視覚的な異常を自動的に生じるように適応されてよい。例えば、こうした視覚的な異常は、認証ウィンドウのオーバーレイウィンドウとの境界における背景（例えば特定の視覚的パターン）の不連続であってよい。このような明確で予期せぬ不連続が存在により、ユーザは必然的にオーバーレイウィンドウの存在の警告を受ける。
【００２２】
これらの様々な実施形態の詳細は、以下に詳述される。
【００２３】
取引データ提示エリアが覆われているか否かの検出
【００２４】
ある実施形態では、認証アプリケーションは、認証アプリケーションの取引データ提示エリア、すなわち、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが、例えば他のアプリケーションのウィンドウにより部分的にまたは完全に、覆われている、または覆われているようであるか否かを検出するよう適応されてよい。取引データ提示エリア（認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリア）が他のウィンドウにより覆われている場合、これは認証アプリケーションがオーバーレイ攻撃の対象となっていることを示すものかもしれない。ある実施形態では、認証アプリケーションは、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが他のアプリケーションの他のウィンドウにより部分的にまたは完全に覆われていることを認証アプリケーションが検出した場合に、オーバーレイ攻撃を阻止し得る対策を取るよう適応されてよい。ある実施形態では、認証アプリケーションは、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが他のアプリケーションの他のウィンドウにより部分的にまたは完全に覆われていることを認証アプリケーションが検出した場合に、通常の動作モードに代えてセーフモードに移行するよう適応されてよい。
【００２５】
例えば、ある実施形態では、認証アプリケーションは、受信または所得した取引データに対して動的認証情報（例えば署名）を生成するよう適応されてよい。通常の動作モードにおいて、認証アプリケーションは生成された動的認証情報を取引データと同時に表示してよい。しかし、認証アプリケーションが、取引データ提示エリア、すなわち自身のウィンドウまたは表示エリア、またはより具体的には取引データを表示するために用いるエリアが、部分的にまたは完全に、覆われている、または覆われているようであることを検出した場合、認証アプリケーションは、生成した動的認証情報の表示を開始できない、または停止するセーフモードに移行してよい。
【００２６】
ある実施形態では、認証は、参照するユーザのために認証アプリケーションが取引データを表示し、表示された取引データのユーザによる承認指示を受信した後にのみ、一連の取引データに対応する動的認証情報の生成および／または表示を行うよう適応されてよい。ある実施形態では、認証アプリケーションは、このような承認指示のための機構を、通常動作モードのときにユーザに提供してよい。例えば、ある実施形態では、認証アプリケーションは、認証アプリケーションが通常動作モードのときに、認証アプリケーションのＯＫボタンにタッチすることによって取引データの承認をユーザが指示できるようにしてよい。ある実施形態では、認証アプリケーションが、自身のウィンドウまたは表示エリア、またはより具体的には取引データを表示するために用いるエリアが、部分的にまたは完全に、覆われている、または覆われているようであることを検出した場合、認証アプリケーションは、ユーザが取引データを承認することのできる機構を認証アプリケーションが無効にする、または、ユーザの承認を認証アプリケーションが無視または拒否するセーフモードに移行してよい。
【００２７】
ある実施形態では、認証アプリケーションは、オペレーティングシステムの１以上の機能を呼び出して（またはオペレーティングシステムが使用する属性の値を設定して）、認証プログラムのウィンドウが他のウィンドウによって完全にまたは部分的に覆われた場合に、オペレーティングシステムが認証アプリケーションにユーザの所定の入力を渡さないようにしてもよい。例えば、ある実施形態では、認証アプリケーションが参照のためユーザに取引データを表示し、認証アプリケーションが表示した取引データへのユーザの承認を指示するためにユーザがタッチするＯＫボタンも提供してよい。ユーザがＯＫボタンにタッチすると、認証アプリケーションは取引データに対応する動的認証情報を生成し表示してよい。ある実施形態では、認証アプリケーションは、オペレーティングシステムの１以上の機能を呼び出して（またはオペレーティングシステムが使用する属性の値を設定して）、認証アプリケーションのウィンドウが他のウィンドウによって完全にまたは部分的に覆われた場合に、ＯＫボタンへのタッチを破棄し、または、認証アプリケーションに渡さないようにしてよい。例えば、Android 2.3またはそれ以降のオペレーティングシステムで動作している認証アプリケーションは、AndroidのViewクラスの「filterTouchesWhenObscured」属性を設定してよい。このようにすると、認証アプリケーションは、認証ウィンドウが他のウィンドウに覆われていればいつでもタッチを破棄する。
【００２８】
ある実施形態では、認証アプリケーションは、取引データ提示エリアが、例えば他のウィンドウにより、完全にまたは部分的に覆われている（または、覆われているようである、または覆われているように見える）か否かを検出するよう適応されてよい。ある実施形態では、認証アプリケーションは、取引データ提示エリアが完全にまたは部分的に覆われている（または、覆われているようである、または覆われているように見える）か否かを検証してよく、この検証を、例えば認証アプリケーションが動作する装置のオペレーティングシステムの１以上の適切な機能を呼び出すことにより実行してもよい。このような場合、取引データ提示エリアが完全にまた部分的に覆われている（または覆われているようである、または覆われているように見える）と認証アプリケーションが結論を出すと、認証アプリケーションは、提示された取引データに対するユーザの承認を受け入れないように、または、（例えばＯＫボタンを無効にすることにより）提示された取引データをユーザが受け入れることができないように、または、取引データについて生成され、通常は取引データとともにユーザに提示される動的認証情報を表示しないように適応されてよい。取引の承認をユーザが指示するのに通常ＯＫボタンが用いられる場合においては、上述した承認機構の無効化は、ＯＫボタンを無反応状態にして「グレイアウト」（不活性）状態で表示するものであってよい。このようにすると、企てられた攻撃を能動的に無効状態にするのに加えて、異常（企てられた可能性のあるオーバーレイ攻撃）の存在の明確な視覚的表示を提供することとなる。
【００２９】
ある実施形態では、取引データ提示エリアが完全にまたは部分的に覆われている状況ではなくなったことを検出した後に、認証アプリケーションはセーフモードから通常動作モードに復帰し、すなわち、隠蔽が発生していなかったように再び動作するようにしてもよい。ある実施形態では、認証アプリケーションは、認証アプリケーションが隠蔽を検出しない遅延時間の後に、通常動作モードに復帰するよう適応されてよい。この遅延時間は、例えば５秒または１０秒であってよい。遅延時間は、一般には１秒と３０秒との間の持続時間を有する。ある実施形態では、認証アプリケーションは、遅延時間中またはその後に再び隠蔽が発生していることを認証アプリケーションが検出した場合に、認証アプリケーションが再びセーフモードに移行するよう適応されてよい。隠蔽が存在しなくなったことを認証アプリケーションが検出した後、認証アプリケーションがセーフモードから通常動作モードに復帰するまでにこうした遅延時間を適用する効果は、認証アプリケーションの取引データ提示エリアへのオーバーレイを非常に短い（認証アプリケーションが通常動作モードに再び復帰するには十分なくらいの長さの）時間で終えるようなオーバーレイ攻撃への対策になるということである。
【００３０】
取引データ提示エリアが覆われていないかどうかの検出
【００３１】
ある実施形態では、認証アプリケーションは、デフォルト設定でセーフモードであってよく、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが覆われていないかどうかを検出するよう適応されてよく、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが覆われていないと検出された後に、セーフモードから通常動作モードに切り替えるよう適応されてよい。
【００３２】
ある実施形態では、認証アプリケーションは、スマートフォンまたはタブレットコンピュータといった認証機器で動作していてよい。ある実施形態では、認証機器は、例えばAndroidまたはiOSといったオペレーティングシステムを有してよい。ある実施形態では、認証アプリケーションが動作している認証機器のオペレーティングシステムは、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが覆われているか覆われていないかを認証アプリケーションが点検または検出できるようにする機能をサポートしてよく、認証アプリケーションは、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリア覆われているか覆われていないかを検出するためにオペレーティングシステムのこの機能を使用するよう適応されてよく、認証アプリケーションは、その情報を上述のように使用するよう適応されてよい。
【００３３】
取引データ提示エリアの強制最前面化
【００３４】
ある実施形態では、認証アプリケーションが動作している認証機器のオペレーティングシステムは、認証アプリケーションが取引データを表示するために用いる認証アプリケーションのウィンドウを認証アプリケーションが最前面となるよう強制する機能をサポートしてよく、認証アプリケーションは、認証アプリケーションが取引データを表示するために用いる認証アプリケーションのウィンドウを、取引データが表示されている間最前面となるよう強制し、認証アプリケーションが取引データを表示している間、他のウィンドウによって認証アプリケーションのウィンドウがオーバーレイされることがないように、オペレーティングシステムのこの機能を使用するよう適応されてよい。
【００３５】
取引データの提示と認証情報の提示との連携
【００３６】
ある実施形態では、認証アプリケーションは、取引データを、その取引データに対応して認証アプリケーションが生成する動的認証情報とともにユーザに提示してよい。ある実施形態では、認証アプリケーションは、取引データの提示を対応して生成された動的認証情報の提示から分離し、オーバーレイ攻撃が非常に困難または不可能であるようなやり方で、取引データと動的認証情報とをユーザに提示し、そうして認証アプリケーションが受信して動的認証情報の生成に使用しユーザに提示しようとしていた（不正の）取引データをオーバーレイ攻撃が隠し、または、他のデータ、すなわちユーザが期待しておりオーバーレイ攻撃がユーザを欺くためにユーザに提示したいと望むデータによって覆い、最終的にユーザに、正しい取引データが認証アプリケーションにより動的認証情報を生成するために用いられていると信じさせることを、非常に困難または不可能とする。例えば、ある実施形態では、認証アプリケーションは、取引データと生成された動的認証情報とが、ディスプレイの同一エリアを占めるように提示してもよい。ある実施形態では、認証アプリケーションは、例えば、取引データと生成された動的認証情報とを、重複するような、または重なり合うようなやり方で提示してよい。ある実施形態では、提示された取引認証データの位置に対する提示された動的認証情報の位置は、セッションごとに、および／または、認証アプリケーションのインスタンスまたはトークンごとに、好ましくは予測不可能に変動してよい。ある実施形態では、認証アプリケーションは、認証データと動的認証情報とを共に、例えば重複した、または混ざり合った、しかし、好ましくはユーザが容易に取引データを動的認証情報から区別できるようなやり方で、提示してよい。例えば、認証アプケーションは取引データを表す数字または文字を、動的認証情報を表す数字または文字とは異なる方法で提示してよい。例えば、認証アプリケーションは、動的認証情報を表す文字または数字と異なるフォントタイプ、フォントサイズ、および／または、フォント色を、取引データを表す文字または数字に用いてよい。ある実施形態では、取引データおよび／または動的認証情報に用いられる１つのまたは複数のフォントの特徴は、認証アプリケーションにより選択されてよい。また、ある実施形態では、これらのフォントの特徴は、例えばユーザ入力を介して、ユーザにより選択されてよい。フォントの特徴は、メモリに、例えば認証アプリケーションのみアクセス可能な安全な場所に、保存されてよい。
【００３７】
取引データと認証情報との間の異なる展開（evolution）に伴う動的要素
【００３８】
ある実施形態では、取引データおよび／または生成された動的認証情報の提示の外観は、時間とともに変動してよい。ある実施形態では、この時間に依存した外観の変動は、表示されている取引データと生成された動的認証情報との相違を強調するようなものであってよい。ある実施形態では、認証アプリケーションは、この外観を漸進的または連続的なやり方で変動させてよい。ある実施形態では、認証アプリケーションは、この外観を突然または不連続的なやり方で変動させてよい。例えば、ある実施形態で、認証アプリケーションが取引データと生成された動的認証情報とを表示するために用いるフォントの特徴は、時間とともに変わってよい。例えば、フォントサイズまたはフォント色が時間とともに変わってよい。ある実施形態で、認証アプリケーションは、生成された動的認証情報を表示するために用いられる１つのまたは複数のフォントの特徴を、取引データを表示するために用いられる１つのまたは複数のフォントの特徴とは独立に変更してよい。ある実施形態では、認証アプリケーションは、取引データと生成された動的認証情報の、他のウィンドウおよび／または認証アプリケーションの表示ウィンドウに対する相対的な位置を、変動させてよい。ある実施形態で、フォントの特徴はユーザの選択に基づいてよい。
【００３９】
生成された認証情報の可視化または可視化状態維持のためのユーザの積極的関与の要求
【００４０】
ある実施形態では、認証アプリケーションは、ある取引データについて動的認証情報を生成してよく、動的認証情報の生成の元となった取引データをユーザに表示してよい。認証アプリケーションは、ユーザが認証アプリケーションに特定の方法で関与した場合に、ユーザに動的認証情報を表示するよう適応されてよい。例えば、ある実施形態では、認証アプリケーションは、タッチスクリーンを有する、例えばスマートフォンやタブレットコンピュータといったコンピューティングプラットフォームで動作していてよく、認証アプリケーションは、動的認証情報を生成して対応する取引データを表示してよく、ユーザは、取引データを表示するエリアにタッチし、取引データをスワイプしてずらし、生成された動的認証情報を見えるようにする必要があってよい。例えば、ある実施形態では、認証アプリケーションは、例えば、取引データにタッチし横にスライドさせることによってユーザが開く、または取り除く必要のある、ドアまたはカーテンの表現の上に取引データを表示し、開かれた、またはスライドによりずらされたドアまたはカーテンの後ろから生成された動的認証情報が現れるようにしてよい。例えば、ある実施形態では、取引データを表示するエリアまたはペインが２つの部分を有し、または２分割されていてよい。このとき、一見すると取引データのペインの後ろに隠れている生成された動的認証情報が可視化されるために、ユーザは、それぞれの部分に別の指で触れて、取引データ表示エリアの２つの部分が離れるように２本の指を動かし／スライドさせなければならない。ある実施形態では、認証アプリケーションと認証アプリケーションが動作しているコンピューティングプラットフォームは、認証アプリケーションが他のアプリケーションの他のウィンドウにより隠され、または覆われていない場合にのみ、このようなユーザのタッチ関与を認証アプリケーションが受信できるよう適応されてよい。こうすることにより、取引データのペインが他のウィンドウによりオーバーレイされている場合に、ユーザは認証アプリケーションと情報交換することができないため、認証アプリケーションがユーザに生成された動的認証情報を明かすことを確実になくすことができる。
【００４１】
オーバーレイの存在のユーザへの可視化
【００４２】
ある実施形態では、認証アプリケーションは、取引データを表示するアプリケーションウィンドウのエリアにマッチするオーバーレイをマルウェアアプリケーションが提供することが難しくなるようなやり方で、取引データを表示するよう適合されてよい。オーバーレイウィンドウが取引データを表示する認証ウィンドウのエリアにマッチしない場合、認証アプリケーションウィンドウの全体的な外観に異常が生じ、ユーザはオーバーレイウィンドウの存在の警告を受け取り、このまま、例えば認証アプリケーションにより生成され表示された動的認証情報のリモートアプリケーションへの転送を、進めるのが安全でないと結論づけることができる。
【００４３】
取引データ提示エリアの変動
【００４４】
例えば、ある実施形態では、取引データを表示する認証ウィンドウのエリアが、好ましくは予測不可能なやり方で取引ごとに変動する、位置、大きさ、および／または、形といった視覚的に識別可能な特徴を有して表示されるように、認証アプリケーションが適応されてよい。ある実施形態では、取引データを表示する認証ウィンドウのエリアは、好ましくは予測不可能なやり方で、認証機器または認証アプリケーションのインスタンスごとに変動する、位置、大きさ、および／または、形といった視覚的に識別可能な特徴を有してよい。位置、大きさ、および／または、形といった、取引データを表示する認証アプリケーションのウィンドウの視覚的に識別可能な特徴がこのように変動すると、マルウェアのオーバーレイウィンドウが取引データを表示する認証アプリケーションのウィンドウのエリアにマッチせず、隠す領域が大きすぎ、または小さすぎる可能性が大きくなり、ユーザは、何かが正しくないという事実を示す明確な視覚的手掛りを見つける機会を得ることができる。
【００４５】
ある実施形態では、認証アプリケーションの取引データ提示エリアの位置、大きさ、および／または、形は、ある認証機器または認証アプリのインスタンスにおけるある取引でのデータ提示中に、予測不可能なやり方で動的に変わってよい。こうすることにより、オーバーレイ攻撃の実行はずっと困難になる。ユーザに見つからないようにするには、オーバーレイウィンドウを生成するマルウェアは、認証アプリケーションの取引データ提示エリアの変化し続ける位置、大きさ、および／または、形を、どうにかして連続的かつリアルタイムに追跡する必要がある。そうしなければ、ユーザは、オーバーレイウィンドウの存在を示す明確な視覚的手掛りを見つける機会を得ることになるからである。
【００４６】
取引データ提示エリアのカスタマイズ
【００４７】
ある実施形態では、取引データ提示エリアの全般的印象は、認証アプリケーションによってローカルに管理され、好ましくは他のアプリケーションからアクセスできないパラメータに基づいて、認証機器ごとに、好ましくは予測不可能なやり方で、異なっていてよい。マルウェアのオーバーレイウィンドウが（ユーザの認証機器における認証アプリケーションのインスタンスの特定の全般的印象によるユーザ体験に基づいて）ユーザの予測するものと異なる全般的印象を示している場合、このことによりユーザは何かが正しくないという警告を受けることができる。例えば、ある実施形態において、取引データを提示するためのフォントタイプ、フォントサイズ、および／または、フォント色は、認証機器ごとに異なってよい。他の実施形態では、取引データは、例えば個別化され容易に識別可能な複雑な絵または写真のような高度にカスタマイズされた背景の上に表示されてよく、ある実施形態ではユーザがそのような背景を、例えばユーザ入力を介して自ら選択し、ユーザによる選択の入力はメモリに保存されてよい。この背景が認証機器ごとに（好ましくは予測不可能なやり方で）異なっている場合、現実の認証アプリケーションからユーザが期待する同じ背景とともにオーバーレイウィンドウを提示することが、マルウェアアプリケーションに可能とは考えにくい。
【００４８】
取引データ提示エリアとその周囲との間の連続性
【００４９】
ある実施形態では、取引データ提示エリアは認証アプリケーションウィンドウ全体の一部でしかなく、ユーザが認証アプリケーションの一見通常のユーザ体験を得ることができなくならないように、認証アプリケーションのウィンドウ全体をオーバーレイウィンドウがカバーすることは、できないかもしれない。ある実施形態では、認証アプリケーションは、ユーザが動的認証情報を見、または取得することができるよう、ユーザから常に可視、および／または、アクセス可能に維持される領域を有している。例えば、ある実施形態では、認証アプリケーションのウィンドウは取引データおよび対応する動的認証情報を同時に提示してよい。このような場合、ユーザが認証情報をリモートアプリケーションに転送することができなくなってしまうので、オーバーレイウィンドウは動的認証情報の提示を覆うことができず、そうしてマルウェアの目的を頓挫させることになる。他の例では、認証ウィンドウは、認証アプリケーションに提示された取引データを承認または確認するためにユーザが押すためのボタンを有してもよく、それによって認証アプリケーションは、ユーザがボタンの押下により取引データを承認した場合のみ、表示された取引データに対応する動的認証情報を生成し、および／または表示するよう適応されてよい。この場合でも、ユーザが承認の意思表示をすることができず動的認証情報が生成されなくなってしまうので、オーバーレイウィンドウは承認ボタンを覆うことができない。
【００５０】
ある実施形態では、認証アプリケーションは、（オーバーレイウィンドウにより隠されることになる）認証ウィンドウの取引データ提示エリアと、必ずしもオーバーレイウィンドウに覆われるわけではない認証ウィンドウのエリアと、の間の視覚的連続性を生成することにより、認証ウィンドウの少なくとも一部をオーバーレイしないようにするこの要求を利用してよく、これによりオーバーレイウィンドウが存在すると必ず、またはおそらく、この視覚的連続性が乱れ、また視覚的不連続性が生じ、ユーザは容易に気付いて何かが正しくないことを識別することができる。オーバーレイ攻撃が妥当な合理性をもってユーザに見つからないようにするには、常にこのような視覚的不連続性を生じないようにしなければならない。以下に、オーバーレイ攻撃がこのような不連続性を生じないようにすることをより困難にするための認証プログラムの例を述べる。
【００５１】
例えば、ある実施形態では、認証アプリケーションは認証ウィンドウに視覚的に知覚可能な特徴、例えば視覚的に知覚可能なパターンを適用してよく、これにより、認証ウィンドウを一部だけ覆うオーバーレイウィンドウが存在すると、必然的に、またはおそらく、この視覚的に知覚可能な特徴を妨げ、オーバーレイウィンドウの存在によってユーザが知覚可能な視覚的な断絶または不連続が生じ、異常としてユーザに認識されることになる。こうした視覚的に知覚可能な特徴は、静的なものであっても動的なものであってもよい。すなわち、ある実施形態では、この視覚的に知覚可能な特徴は、時間の関数として変動または展開してよい。ある実施形態では、この視覚的に知覚可能な特徴は、認証アプリケーションのインスタンスごとに変動してよい。ある実施形態では、この視覚的に知覚可能な特徴は、取引認証セッションごとに変動してよい。例えば、ある実施形態では、認証アプリケーションは取引データを背景の上に表示してよい。ある実施形態では、背景は、ユーザの目には所定の規則性または秩序を有し、同時に、他の可能な背景と識別するための所定の特徴を有する、視覚的パターンを有している。背景は、取引データを表示するために準備されたエリアを超えて延びていてよく、他のエリアまで延びていてもよい。さらに、背景は、例えば表示された取引データをユーザが確認するためのボタンを有するエリアまで延びていてよく、また、背景は、認証アプリが表示された取引データ上に生成した署名といった、認証アプリが表示された取引データについて生成した動的認証情報を表示するために認証アプリが用いるディスプレイのエリアまで延びてよい。パターンの不連続性が存在すると、ユーザはオーバーレイウィンドウの存在を示す明確な視覚的手掛かりを見出す機会を得ることができる。パターン自体は、例えば取引データを表示するエリアをオーバーレイするウィンドウによりユーザがパターンの不連続性を可能な限り容易に気付くようなものであるのが好ましい。
【００５２】
ある実施形態では、背景は単に所定の色調に色付けられてよい。ある実施形態では、背景の色調は規則的な階調を有して（例えば背景の一端から他端にかけてある色から他の色に規則的なやり方で徐々に変わって）よい。
【００５３】
ある実施形態では、パターンは平面の規則的または準規則的なタイル敷きであってよい。ある実施形態では、パターンは例えばらせん状であってよい。
【００５４】
他の実施形態では、背景は、規則的または準規則的なパターンを表示するのではなく、ユーザにより認識できる、またはユーザにとって意味のある画像を表示してよい。例えば、ある実施形態では、背景は風景や顔の画像であってよい。
【００５５】
ある実施形態では、認証アプリケーションが用いる背景は変動してよく、予測不能であってよい。ある実施形態では、認証アプリケーションに用いられる背景は、認証機器ごとに、または認証アプリのインスタンスごとに、変動してよい。ある実施形態では、特定の認証アプリまたは認証機器が用いる背景は、認証セッションごとに変動してよい。例えば、ある実施形態では、認証アプリは認証セッションごとに異なるタイルパターンおよび／または異なる色を用いてよい。ある実施形態では、それぞれ異なる認証アプリのインスタンスまたは認証機器は、それぞれ個別の画像を背景として用いるよう構成されてよい。ある実施形態では、この画像はユーザにより選択されてよい。例えば、ユーザは入力インタフェースを用いて特定の背景または複数の背景を選択し、ユーザの選択がメモリに保存されてよい。
【００５６】
ある実施形態では、特定の認証セッションのために特定の認証アプリケーションが用いる背景が時間により変動してよい。すなわち、背景が時間的変化を有してよい。例えば、ある実施形態では、認証アプリケーションに用いられている背景の視覚的に知覚可能な特徴のいくつかは、認証アプリケーションがユーザに取引データを表示している時間に展開してよい。ある実施形態では、認証アプリケーションは、背景を突然に変更してよい。ある実施形態では、認証アプリケーションは、背景を徐々に変更してよい。
【００５７】
ある実施形態では、認証アプリケーションは、背景に用いられる色を変更してよい。
【００５８】
ある実施形態では、認証アプリケーションは、背景に用いられるパターンを変更してよい。例えば、ある実施形態では、背景は周期的なタイルパターンを有してよく、タイルの形状が時間によって変わってもよい。例えば、タイルの大きさが変わってよく、タイルの角度が変わってもよい。
【００５９】
ある実施形態では、認証アプリケーションは、取引データを表示する間に背景を移動してよい。例えば、認証アプリケーションは背景を移し、または回転させてよい。
【００６０】
ある実施形態では、認証アプリケーションは、時間によって変わるよう背景を変形させてよい。認証アプリケーションが背景に適用する変形は、ユーザにより識別され得る視覚的に知覚可能なパターンを有してよく、このパターンは、ユーザに知覚され得るように時間によって展開してよい。例えば、ある実施形態では、認証アプリケーションは変形の波または波紋（例えば圧縮および／または膨張の波または波紋）を背景の中で動かしてよい。ある実施形態では、こうした変形は、背景の一端から他端に動く直線的な波であってよい。ある実施形態では、変形の波は、認証ウィンドウ内にあってもなくてもよい原点を中心とする半径上であってよい。好ましくは変形は、オーバーレイウィンドウにより覆われる背景の部分およびオーバーレイウィンドウにより覆われない認証ウィンドウの背景の部分の両方で生じ、オーバーレイウィンドウの境界は変形パターンを横切るため、もしオーバーレイウィンドウが認証アプリケーションと同じ背景を模倣するだけでなく認証アプリケーションと同じ変形も模倣することができるのでなければ、ユーザはオーバーレイウィンドウの存在を示す明確な視覚的手掛かりを見出すことができる。
【００６１】
ある実施形態では、認証アプリケーションは、背景を帯状の区画（水平、垂直、または斜めであってよい）に分割し、それぞれの区画が別々に展開してよい。例えば、それぞれの区画の背景の部分は、他の区画の動きと独立に変わってよい。ある実施形態では、認証アプリケーションは、認証ウィンドウの取引データ提示エリア（オーバーレイウィンドウに隠される）およびオーバーレイウィンドウに覆われる必要のない認証ウィンドウのエリアの背景に常に少なくとも１つの区画が存在するよう、区画の方向を選択してよい。こうすることにより、オーバーレイウィンドウの存在によって少なくともその区画では不連続が必ず発生することになり、ユーザはオーバーレイウィンドウの存在を喚起される。
【００６２】
ある実施形態では、経時的変更自体の特徴が可変であってよい。こうした経時的変更自体の特徴は、例えば、認証機器または認証アプリケーションのインスタンスごと、および／または、認証セッションごと、および／または、特定の認証機器または認証アプリケーションのインスタンスにおける特定に認証セッションごとに、変わってよい。例えば、ある実施形態では背景が動き、背景の移動パラメータが可変であってよい。移動パラメータは、移動が平行移動または回転を含むか否か、平行移動または回転の方向、回転の中心、平行移動および／または回転の速度を含んでよい。ある実施形態では背景は時間によって変形し、変形のパラメータが可変であってよい。例えば変形の、速度、振幅または強さまたは方向が可変であってよく、また、波または波紋の、速度、振幅または強さ、波長または方向が可変であってよい。
【００６３】
認証アプリケーションが用いる背景のこうした変動性、より具体的には予測不能な変動性は、ある時点で背景が有しているパターンをオーバーレイ攻撃が把握することを著しく困難にており、そのため、オーバーレイウィンドウがリアルタイムに背景を適応してオーバーレイウィンドウの背景がオーバーレイウィンドウにより覆われていない認証ウィンドウの背景の部分に切れ目なく適合するようにすることは難しい、もしくは不可能である。
【００６４】
複合ソリューション
【００６５】
ある実施形態では、上述したソリューションの２以上が複合的に適用されてよい。
【００６６】
取引データの受信
【００６７】
ある実施形態では、認証アプリケーションを実行している認証機器は、取引データを受信するよう適応されたデータ入力インタフェースを有してよい。ある実施形態では、認証アプリケーションは、取引データを取得し、取得した取引データを本出願の中で記載したように使用するために、例えば、取得した取引データをユーザに表示し、および／または、取得した取引データに対応する動的認証情報を生成するために、このデータ入力インタフェースを用いるよう適応されてよい。
【００６８】
例えば、ある実施形態では、リモートアプリケーションにアクセスするためにユーザが使用しているアクセス機器がコード化された取引データを含む２次元画像を表示し、認証機器がカメラを有し、認証アプリケーションがこのカメラを用いしてアクセス機器のディスプレイに表示された２次元画像を撮像し、２次元画像をデコードして、本出願の中で記載したように使用するために、コード化された取引データを読み出すよう適応されてよい。
【００６９】
ある実施形態では、リモートアプリケーションにアクセスするためにユーザが使用しているアクセス機器がコード化された取引データを含む一連の２次元画像を表示し、認証機器がカメラを有し、認証アプリケーションがこのカメラを用いしてアクセス機器のディスプレイに表示された一連の２次元画像から成る動画または一連の画像を作成し、一連の２次元画像をデコードして、本出願の中で記載したように使用するために、コード化された取引データを読み出すよう適応されてよい。
【００７０】
ある実施形態では、リモートアプリケーションにアクセスするためにユーザが雌雄しているアクセス機器が取引データをエンコードした動画等を表示し、認証機器がカメラを有し、認証アプリケーションがこのカメラを用いしてアクセス機器のディスプレイに表示された動画等を録画し、録画された動画等をデコードして、本出願の中で記載したように使用するために、コード化された取引データを読み出すよう適応されてよい。
【００７１】
例えば、ある実施形態では、機器は無線データ通信インタフェース（例えばスマートフォンまたはタブレットコンピュータにおける３Ｇまたは４Ｇの無線データインタフェース）を有してよく、認証アプリケーションは、この無線データ通信インタフェースを用いて、取引データを含むメッセージを受信し、メッセージをデコードして、本出願の中で記載したように使用するために、コード化された取引データを読み出すよう適応されてよい。
【００７２】
動的認証情報の生成
【００７３】
ある実施形態では、認証アプリケーションは、動的変数を暗号上の秘密と暗号化的に結合させることによって動的認証情報を生成するよう適応されてよい。ある実施形態では、認証アプリケーションは、動的変数を、認証アプリケーションのあるインスタンスに関連づけられた１以上の認証情報生成鍵を含む暗号上の秘密と暗号化的に結合させることによって動的認証情報を生成するよう適応されてよい。ある実施形態では、認証情報生成鍵は、インスタンスに関連づけられたデータの一部であってよい。ある実施形態では、認証アプリケーションは、インスタンスに関連づけられたデータを用いることにより、認証情報生成鍵の値を決定する。動的変数は、例えばリアルタイムクロック（例えば認証アプリケーションが動作しているコンピューティングプラットフォームの時計）の値といったトークンにより内部的に生成される値であってよく、また、認証アプリケーションのインスタンスに関連づけられ、例えば値を用いて動的認証情報が生成されるたびに認証アプリケーションのインスタンスによって加算（または減算）されるカウンタといった、現在の値の関数として自動的に更新されるデータの一部であるような、イベント関連変数の値であってよく、認証アプリケーションのインスタンスにより以前に生成され、そのインスタンスに関連づけられたデータの一部として保存された動的認証情報の値であってよい。動的変数は、アプリケーションサーバにより生成されるチャレンジ、または、上述のようにトークンに提供されており署名されることとなる取引データといった、認証アプリケーションのインスタンスにより受信される外部生成値であってもよい。動的変数は、内部生成値と外部生成値との組み合わせであってもよい。例えば、取引データの署名に対するリプレイアタックを防ぐために、トークンは、取引データと、時計、例えば認証アプリケーションが動作しているコンピューティングプラットフォームの時計により提供される時間値との組み合わせから成る動的変数を用いてもよい。認証アプリケーションが動的変数として内部生成値のみを用いる場合、動的変数は内部動的変数と呼ばれ、生成された動的認証情報は「ワンタイムパスワード」と呼ばれてよい。トークンが外部で生成されたチャレンジから成る動的変数を用いる場合、生成された動的認証情報は「レスポンス」と呼ばれてよい。トークンが取引データから成る動的認証情報を用いる場合、生成された動的認証情報は「取引データ署名」または単に短く「署名」と呼ばれてよい。
【００７４】
サーバにより最初に生成された動的認証情報の復旧
【００７５】
ある実施形態では、認証アプリケーションがユーザに表示する、または、検証ないしアプリケーションサーバに送信する実際の動的認証情報は、認証アプリケーションにより最初に生成されたものではない。そうではなく、動的認証情報は最初にいずれかのサーバ（検証サーバなど）により最初に生成され、認証機器に送信されてよい。例えば、動的認証情報は、動的認証情報が関連づけられる取引データから暗号関数により生成される電子署名として作成されてよく、乱数または疑似乱数の関数として生成され、例えばその動的認証情報が用いられる取引とともにデータベースに保存されてよい。例えば、ある実施形態では、サーバは、参照され承認される必要のある取引データに対応する動的認証情報を生成し、取引データと対応する動的認証情報とを含むメッセージを認証機器に送信してよい。認証機器における認証アプリケーションはメッセージを受信し、このメッセージから取引データと対応する動的認証情報とを読み出してよい。したがって、ある実施形態では、認証機器における認証アプリケーションの動的認証情報を生成する動作は、サーバで最初に作成された動的認証情報を含むメッセージの受信と、その後の取引データと対応する動的認証情報とを含むメッセージからの動的認証情報の抽出と、を含み、またはこれらにより構成されていてよい。
【００７６】
例えば、ある実施形態では、サーバは参照され承認される必要のある取引データに対応する認証情報を生成し、取引データと対応する動的認証情報とを含むメッセージを認証機器に送信してよい。認証機器における認証アプリケーションは、メッセージを受信して取引データと対応する動的認証情報とをこのメッセージから読み出してよい。したがって、ある実施形態では、認証機器における認証アプリケーションの動的認証情報を生成する動作は、サーバで最初に作成された動的認証情報を含むメッセージの樹脂と、その後の受信したメッセージからの動的認証情報の抽出と、を含み、またはこれらにより構成されていてよい。
【００７７】
機密性のため暗号化された動的認証情報
【００７８】
このようなメッセージの中の動的認証情報を、メッセージを傍受してメッセージから動的認証情報を抽出しようとする中間者から防御するため、メッセージの中の動的認証情報の機密性を防御するための暗号技術が用いられてよい。例えば、ある実施形態では、メッセージの中の動的認証情報は暗号化され、認証アプリケーションが、受信したメッセージから動的認証情報を読み出す動作の一部として動的認証情報を復号化するよう適応されてよい。ある実施形態では、動的認証情報を含むメッセージが暗号化され、認証アプリケーションが、受信したメッセージから動的認証情報を読み出す動作の一部としてメッセージを復号化するよう適応されてよい。
【００７９】
取引データに暗号論的に、例えば署名を通して、結合される動的認証情報
【００８０】
このようなメッセージの中の動的認証情報を、メッセージを傍受してメッセージの中の動的認証情報に対応するメッセージの中の取引データを動的認証情報に対応しない他の取引データで置き換えようとする中間者から防御するため、メッセージに含まれる動的認証情報と取引データとの間のリンクまたは対応の完全性を防御するための暗号技術が用いられてよい。ある実施形態では、メッセージは取引データと対応する動的認証情報とに対する署名を含み、認証アプリケーションが、受信したメッセージから動的認証情報と取引データとを読み出す動作の一部として、メッセージからこの署名を抽出し、この抽出された署名を検証するよう適応されてよい。
【００８１】
ある実施形態では、認証アプリケーションはユーザ（２９０）に生成された動的認証情報を提示するよう適応されてよい。ある実施形態では、ユーザは提示された動的認証情報を検証のためサーバ（２２０）に転送してよい。ある実施形態では、認証機器は、動的認証情報をユーザに視覚的方法で（例えばディスプレイを用いて）提示してよい。ある実施形態では、提示された動的認証情報は、文字列形式にコード化されていてよい。ある実施形態では、文字列は１０進数の数字のみから成ってよい。ある実施形態では、文字列は英数文字を含んでよい。ある実施形態では、文字列は非アルファベット筆記体系の文字（例えば中国語や日本語の文字など）を含んでよい。
【００８２】
ある実施形態では、認証機器または認証アプリケーションは、取引データに対する署名を生成するよう適応されてよい。ある実施形態では、認証機器または認証アプリケーションは、署名が生成された、または生成される取引データをユーザに表示し、認証機器または認証アプリケーションが署名を生成した、または生成する対象となる取引データの正しさを検証することができるようにしてよい。ある実施形態では、認証機器または認証アプリケーションは、取引データをユーザに表示してよく、ユーザは、表示された取引データを、（例えば認証アプリケーションのＯＫボタンにタッチまたはクリックすることにより）確認または承認しなければならず、これを条件として認証機器または認証アプリケーションは、表示され承認された取引データに対する署名および／または生成を行う。ある実施形態では
【００８３】
ある実施形態では、認証アプリケーションを実行している認証機器は、動的認証情報を検証するために、生成された動的認証情報を自動的に、例えば遠隔アプリケーションをホスティングするアプリケーションサーバまたは認証情報生成サーバを含む遠隔サーバに送信するよう適応されてよい。ある実施形態では、認証アプリケーションを実行している認証機器は、遠隔サーバと直接または間接にデータ接続されてよい。例えば、ある実施形態では、認証アプリケーションを実行している認証機器はインターネット接続を有し、このインターネット接続を用いて、生成された動的認証情報を遠隔サーバに送信してよい。ある実施形態では、認証アプリケーションを実行している認証機器は、認証アプリを実行している例えばスマートフォンまたはタブレットコンピュータであってよく、スマートフォンはまたはタブレットコンピュータは、無線インターネット接続を有してよい。
【００８４】
ある実施形態では、認証アプリケーションを実行している認証機器は、生成された動的認証情報をユーザに対し表示するよう適応されてよく、ユーザは表示された動的認証情報を、遠隔アプリケーションと情報交換するためにユーザが用いるアクセス機器にコピーしてよく、アクセス機器は、ユーザが提供した動的認証情報を、遠隔サーバに転送してよい。
【００８５】
ある実施形態では、遠隔サーバは、例えば遠隔アプリケーションをホスティングするアプリケーションサーバであってよい。また対案として、遠隔サーバは、認証情報検証サーバといった異なるサーバであってよい。後者の場合、遠隔サーバは、受信した動的認証情報の検証に後に、受信した動的認証情報の検証の結果を遠隔アプリケーションに通知してよい。
【００８６】
ユーザまたはユーザが送信した取引を認証する方法
【００８７】
本発明のある態様では、ユーザと遠隔アプリケーションとの間の情報交換を保護するために、ユーザまたはユーザが遠隔アプリケーションに送信した取引を認証する方法が提供される。
【００８８】
ある実施形態では、本発明の方法は、認証機器で動作している認証アプリケーションが本明細書に記載されたように動作する少なくともいくつかのステップを含んでよい。
【００８９】
ある実施形態では、方法は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護する方法を含んでよく、この方法は、パーソナルコンピューティング機器において、取引データを取得するステップと、ユーザによる参照のためパーソナルコンピューティング機器のディスプレイに取得した取引データを表示するステップと、取引データに関連づけられた動的認証情報を取得するステップと、動的認証情報を検証のため利用可能にするステップとを含んでよい。
【００９０】
ある実施形態では、取引データを取得するステップは、パーソナルコンピューティング機器において、取引データを含むメッセージを受信することを含んでよい。
【００９１】
ある実施形態では、取引データを取得するステップは、ユーザに関連づけられた秘密情報を、またはこれから得られる暗号鍵をパラメータとして暗号アルゴリズムを適用することを含んでよい。ある実施形態では、秘密情報はパーソナルコンピューティング機器に保存されてよい。ある実施形態では、動的認証情報は、取引データに暗号アルゴリズムを適用することにより取得されてよい。ある実施形態では、動的認証情報の値は、暗号アルゴリズムの結果であってよい。ある実施形態では、暗号アルゴリズムは、時間値またはイベント関連変数の値といったその他のデータを用いてもよい。
【００９２】
ある実施形態では、動的認証情報は、パーソナルコンピューティング機器に受信され、取引データを含むメッセージの少なくとも一部に暗号アルゴリズムを適用することにより取得されてよい。ある実施形態では、このメッセージの少なくとも一部に暗号アルゴリズムを適用することは、メッセージの一部を復号化することを含んでよい。
【００９３】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、取得された取引データを表示するステップを実行しているときに、パーソナルコンピューティング機器に、ユーザの承認または否認をユーザが指示するための承認指示機構を提供することと、この機構を用いてユーザの承認または否認の指示をユーザから取得することを含んでよい。ある実施形態では、ユーザの承認または否認の指示をユーザから取得することは、パーソナルコンピューティング機器のユーザ入力インタフェースを通してユーザから入力信号を受信することを含む。ある実施形態では、パーソナルコンピューティング機器のユーザ入力インタフェースはタッチスクリーンを含んでよく、ユーザから入力信号を受信することは、タッチスクリーンの特定のエリアへのタッチまたはクリックを検出することを含んでよい。ある実施形態では、承認指示機構を提供することは、パーソナルコンピューティング機器のディスプレイに、ユーザがクリックまたはタッチするための少なくとも１つのボタンを表示することを含んでよい。ある実施形態では、承認指示機構を提供することは、パーソナルコンピューティング機器のディスプレイに、ユーザがクリックまたはタッチするためのＯＫボタンとキャンセルボタンとを表示することを含んでよく、これにより、ユーザの承認を取得することはＯＫボタンのクリックまたはタッチを受信することを含み、ユーザの否認を取得することはキャンセルボタンのクリックまたはタッチを受信することを含む。ある実施形態では、取得されたユーザの承認または否認は、表示された取引データの承認または否認と解釈されてよい。ある実施形態では、少なくとも動的認証情報を取得するステップまたは動的認証情報を検証のため利用可能にするステップは、パーソナルコンピューティング機器においてこの機構を通してユーザの承認を取得することを条件としてよい。
【００９４】
ある実施形態では、動的認証情報を検証のため利用可能にするステップは、パーソナルコンピューティング機器のディスプレイに動的認証情報を表示することを含んでよい。ある実施形態では、動的認証情報を検証のため利用可能にするステップは、さらに、パーソナルコンピューティング機器のディスプレイに表示された動的認証情報を遠隔アクセス可能なコンピュータアプリケーションに提供することを含んでよい。ある実施形態では、動的認証情報を検証のため利用可能にするステップは、さらに、アクセスコンピューティング機器（パーソナルコンピュータまたはタブレットコンピュータなど）で、ユーザにより手動でコピーされた、パーソナルコンピューティング機器のディスプレイに表示された動的認証情報を受信し、アプセスコンピューティング機器が受信した動的認証情報を、コンピュータネットワークを介して、認証情報検証サーバまたは遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバといったサーバに送信することを含んでよい。
【００９５】
ある実施形態では、動的認証情報を検証のため利用可能にするステップは、パーソナルコンピューティング機器が、パーソナルコンピューティング機器に含まれるデータ通信インタフェースを用いて、認証情報検証サーバまたは遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバといったサーバに、データ通信ネットワークを介して動的認証情報を送信することを含んでよい。
【００９６】
ある実施形態では、上述のコンピュータネットワークおよび／またはデータ通信ネットワークは、インターネットおよび／または携帯電話データネットワークのような無線データ通信ネットワークを含んでよい。
【００９７】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証情報検証サーバが動的認証情報を受信し検証するステップを含んでよい。ある実施形態では、動的認証情報を検証するステップは、本明細書に記載の検証方法のいずれかを含んでよい。
【００９８】
ある実施形態では、ユーザによる参照のためパーソナルコンピューティング機器のディスプレイに取得した取引データを表示するステップは、パーソナルコンピューティング機器で動作している認証アプリケーションが、パーソナルコンピューティング機器のディスプレイの取引データ提示エリアに取得した取引データを表示することを含んでよい。ある実施形態では、取引データ提示エリアは、パーソナルコンピューティング機器のディスプレイにおける認証アプリケーションの取引データ表示ウィンドウの全体または一部であってよい。
【００９９】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、パーソナルコンピューティング機器において、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウも、認証アプリケーションの取引データ提示エリアを、部分的または全体的に、隠しまたは覆うことができないことを保証するステップを含んでよい。ある実施形態では、方法はさらに、パーソナルコンピューティング機器において、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウも、認証アプリケーションのトラザクションデータ表示ウィンドウを、部分的または全体的に、隠しまたは覆っていないことを保証するステップを含んでよい。ある実施形態では、パーソナルコンピューティング機器において、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウも、取引データ表示ウィンドウを、部分的または全体的に、隠しまたは覆っていないことを保証するステップは、取引データ表示ウィンドウが最前面のままであることを保証するために、または、取引データ表示ウィンドウが最前面のままであることを強制するために、オペレーティングシステムの１以上の機能を認証アプリケーションが呼び出すことを含んでよい。ある実施形態では、取引データ表示ウィンドウが最前面のままであることを保証または強制するために、オペレーティングシステムの１以上の機能を認証アプリケーションが呼び出すステップは、取引データ表示ウィンドウが取引データを表示している間、または、表示された取引データへのユーザの承認または否認の指示を認証アプリケーションが受信するまで、取引データ表示ウィンドウが最前面のままであることを保証または強制するために、オペレーティングシステムの１以上の機能を認証アプリケーションが呼び出すことを含んでよい。
【０１００】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、認証アプリケーションのウィンドウでないウィンドウにより、部分的または全体的に、隠されまたは覆われている場合に、少なくとも動的認証情報を検証のため利用可能にするステップが実行されないことを保証するステップを含んでよい。ある実施形態では、少なくとも動的認証情報を検証のため利用可能にするステップは、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引表示ウィンドウが、認証アプリケーションのウィンドウでないウィンドウにより、部分的または全体的に、隠されまたは覆われている限り、実行されない。
【０１０１】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることが、認証アプリケーションまたはパーソナルコンピューティング機器のオペレーティングシステムにより検出された場合に、承認指示機構が無効化されていることを保証するステップを含んでよい。ある実施形態では、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることが検出された場合に、承認指示機構が無効化されていることを保証するステップは、ユーザが承認を指示するユーザの入力イベントを、オペレーティングシステムが、ブロックするように、または承認指示機構に渡さないようにする１以上のオペレーティングシステムの機能を認証アプリケーションが呼び出すことを含んでよい。
【０１０２】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われているかを、検出または検証するための、オーバーレイ検出ステップを含んでよい。ある実施形態では、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われているかを、検出または検証することは、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われているかを検出するためのオペレーティングシステムの１以上の昨日を認証アプリケーションが呼び出すことを含んでよい。
【０１０３】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることが検出された場合、認証アプリケーションが承認指示機構を無効化するステップを含んでよい。
【０１０４】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることが検出された場合、承認指示機構により取得されたユーザによる承認の指示を無視するステップを含んでよい。ある実施形態では、動的認証情報を検証のため利用可能にするステップは、オーバーレイ検知ステップ（例えば、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われているかを、検出または検証すること）において、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることが示されなかったことを条件としてよい。
【０１０５】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、オーバーレイ検出ステップにおいて、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われていると検出された場合にユーザに異常の存在を警告する視覚表示をユーザに提供するステップを含んでよい。
【０１０６】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることがオーバーレイ検出ステップで示された場合に、認証アプリケーションがセーフモードに入るステップと、少なくとも、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、少なくとも所定の最小時間範囲の間、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていなくなるまで、認証アプリケーションがセーフモードを維持するステップと、を含んでよい。ある実施形態では、この最小時間範囲は、認証アプリケーションの設定可能なパラメータであってよい。ある実施形態では、この最小時間範囲はゼロ秒である。ある実施形態では、この最小時間範囲は少なくとも２秒である。ある実施形態では、この時間範囲は３０秒未満である。ある実施形態では、この最小時間範囲は、３０秒以上２分未満である。
【０１０７】
ある実施形態では、認証アプリケーションがセーフモードである限り、認証指示機構は無効化されてよく、または、認証指示機構により取得されたユーザの承認の指示は無視されてよく、または、動的認証情報の生成は実行されなくてよく（または保留されてよく）、または、動的認証情報を検証のため利用可能にするステップは実行されなくてよい（または保留されてよい）。ある実施形態では、認証アプリケーションがセーフモードである限り、認証アプリケーションは、認証アプリケーションがセーフモードであることをユーザに警告する視覚的表示を提供してよい。
【０１０８】
承認指示機構が提供されるある実施形態では、承認指示機構は、パーソナルコンピューティング機器のディスプレイにおける視覚的承認有効化要素を含んでよい。このとき、視覚的承認有効化要素は、ユーザの操作に反応する有効化エリアを有し、視覚的承認有効化要素の有効化エリアに覆われたディスプレイのエリアは表示された取引データのすべてを覆うディスプレイ上の長方形と少なくとも部分的に重なり、ユーザが承認を指示するためにはユーザは視覚的承認有効化要素を有効化しなければならない。ある実施形態では、認証アプリケーションのウィンドウではないウィンドウにより覆われる視覚的承認有効化要素の有効化エリアの少なくともいずれかの部分は、視覚的承認有効化要素を有効化するためのユーザの操作に反応しない。ある実施形態では、ユーザが視覚的承認有効化要素をユーザが有効化することは、ユーザが視覚的承認有効化要素の有効化エリアをクリック、タッチ、またはスライドさせることを含んでよい。ある実施形態では、視覚的承認有効化要素は、クリック可能な、または、タッチ可能なボタンを含んでよい。ある実施形態では、表示された取引データの少なくとも一部は、視覚的承認有効化要素の有効化エリアの上に表示されてよい。ある実施形態では、表示された取引データの少なくとも一部は、視覚的承認有効化要素の有効化エリアの、左、右、上、または下のうち少なくとも２つの位置に表示される。
【０１０９】
ある実施形態では、動的認証情報を検証のため利用可能にするステップは、パーソナルコンピューティング機器のディスプレイに動的認証情報を表示してよい。このとき、視覚的承認有効化要素の有効化エリアは表示された取引データに覆われ、動的認証情報を表示するエリアは取引データを表示するエリアに覆われ、動的認証情報はユーザが視覚的承認有効化要素を有効化するまで不可視である。ある実施形態では、視覚的承認有効化要素を有効化することは、視覚的承認有効化要素の少なくとも一部をユーザがタッチおよびスライドし、表示された取引データの少なくとも一部をずらして動的認証情報の表現を露出させることを含んでよい。ある実施形態では、視覚的承認有効化要素を有効化することは、視覚的承認有効化要素の少なくとも２つの箇所にユーザがタッチおよび異なる方向にスライドし、表示された取引データの少なくとも一部をずらして動的認証情報の表現を露出させることを含んでよい。ある実施形態では、視覚的承認有効化要素をユーザが解放すると、表示された取引データは元の位置に戻り、表示された動的認証情報は不可視になる。
【０１１０】
ある実施形態では、方法は上記実施形態の方法を含み、動的認証情報を検証のため利用可能にするステップは、パーソナルコンピューティング機器のディスプレイに動的認証情報を表示するとともに取引データを表示することを含んでよい。このとき、動的認証情報は取引データと同時にディスプレイの同一エリアに表示され、表示されたすべての取引データを囲むすべての長方形は、動的認証情報の少なくとも一部も自動的に囲む。例えば、ある実施形態では取引データおよび動的認証情報は、重なり合うように、または、積み重なって表示されてよく、また、動的認証情報は、表示された取引データに取り囲まれるように表示されてよい。ある実施形態では、パーソナルコンピューティング機器のディスプレイにおける動的認証情報の表現、および、パーソナルコンピューティング機器のディスプレイにおける取引データの表現は、ユーザが動的認証情報を取引データから区別できるように、異なる視覚特性を有してよい。例えば、ある実施形態では、動的認証情報の表示に用いられる一部または全部の文字は、取引データの表示に用いられる一部または全部の文字と異なる視覚を有する。ある実施形態では、動的認証情報の表示に用いられる一部または全部の文字は、取引データの表示に用いられる一部または全部の文字とは異なるフォントタイプ、フォントサイズ、またはフォント色を有する。
【０１１１】
ある実施形態では、方法はユーザの遠隔アクセス可能なコンピュータアプリケーションとの情報交換セッションの保護を目的としてよく、前記情報交換セッションに関連する取引データを取得するステップと、パーソナルコンピューティング機器で動作している認証アプリケーションにより、取得した取引データを、ユーザによる参照のためパーソナルコンピューティング機器のディスプレイの第１エリアに表示するステップと、取引データに関連づけられた動的認証情報を取得するステップと、認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第２エリアを用いて動的認証情報を検証のため利用可能にするステップと、第１エリアの第１の視覚的に知覚可能な要素と第２エリアの第２の視覚的に知覚可能な要素とを共通の所定値とすることにより、第１エリアと第２エリアとの間の視覚的に知覚可能な連続性を形成するステップと、をパーソナルコンピューティング機器で実行し、認証アプリケーションのウィンドウではなく第１エリアを部分的または全体的に、隠しまたは覆い、前記第１および第２の視覚的に知覚可能な要素のための共通の所定値と同じ値による視覚的に知覚可能な第３の値を有しないオーバーレイウィンドウの存在によりオーバーレイウィンドウと第２エリアとの間の視覚的に知覚可能な不連続を生じさせてユーザに前記オーバーレイウィンドウの存在を警告するようにすることを含んでよい。
【０１１２】
ある実施形態では、認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第２エリアを用いて動的認証情報を検証のため利用可能にするステップは、前記第２エリアに動的認証情報を表示することを含んでよい。
【０１１３】
ある実施形態では、認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第２エリアを用いて動的認証情報を検証のため利用可能にするステップは、ユーザによる承認または否認をユーザが指示するための承認指示機構をパーソナルコンピューティング機器で提供することと、この機構を用いてユーザからユーザの承認または否認の指示を取得することとを含んでよい。このとき、承認指示機構は、パーソナルコンピューティング機器のディスプレイに、ユーザが承認を指示するためには有効化しなければならない視覚的承認有効化要素を含んでよい。このとき、視覚的承認有効化要素は、ユーザの操作に反応する有効化エリアを有し、このとき視覚的承認有効化要素の有効化エリアは、第２エリアの一部である。
【０１１４】
ある実施形態では、認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第２エリアを用いて動的認証情報を検証のため利用可能にするステップは、さらに、ユーザの承認が取得された場合、パーソナルコンピューティング機器のディスプレイに動的認証情報を表示することを含んでよい。
【０１１５】
ある実施形態では、認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第２エリアを用いて動的認証情報を検証のため利用可能にするステップは、さらに、ユーザの承認が取得された場合、データ通信ネットワークを介してサーバコンピュータに動的認証情報を送信することを含んでよい。
【０１１６】
ある実施形態では、第１および第２の視覚的に知覚可能な要素のための共通の所定値は、予測不能な要素または予測不能な態様を有してよい。ある実施形態では、視覚的に知覚可能な要素のための共通の所定値は、時間によって変動してよい。ある実施形態では、視覚的に知覚可能な要素のための共通の所定値は、情報交換セッションごとに変動してよい。ある実施形態では、視覚的に知覚可能な要素のための共通の所定値は、パーソナルコンピューティング機器ごとに変動してよい。ある実施形態では、視覚的に知覚可能な要素のための共通の所定値は、ユーザごとに変動してよい。ある実施形態では、第１および第２の視覚的に知覚可能な要素のための共通の所定値は、同じタイプの視覚的に知覚可能な要素について、所定値または標準値が異なってよい。
【０１１７】
ある実施形態では、共通の所定値は、オーバーレイ攻撃を組み込む者が、特定のパーソナルコンピューティング機器における特定の認証アプリケーションのインスタンスが特定の認証セッションまたはユーザ情報交換セッションまたは取引または認証アプリケーションの使用に用いる共通の所定値の正しい値を予め知る、または推測することが困難または不可能であるという意味で予測不能な要素または態様を有してよい。ある実施形態では、共通の所定値は、特定の認証アプリケーションまたは特定のパーソナルコンピューティング機器または特定の過去の認証セッションまたはユーザ情報交換セッションまたは取引または認証アプリケーションの使用のために用いられた共通の所定値を知っていることが、オーバーレイ攻撃を組み込む者が、異なるかもしれない特定のパーソナルコンピューティング機器における異なるかもしれない特定の認証アプリケーションのインスタンスが後続の特定の認証セッションまたはユーザ情報交換セッションまたは取引または認証アプリケーションの使用に用いる共通の所定値の正しい値を予め知る、または推測するために十分でないという意味で予測不能な要素または態様を有してよい。ある実施形態では、共通の所定値は、乱数的または疑似乱数的に決定されるという意味で予測不能な要素または態様を有してよい。ある実施形態では、共通の所定値は、例えば認証アプリケーションのインスタンスごとに、または、パーソナルコンピューティング機器ごとに異なる秘密鍵を用いるアルゴリズムを用いて決定されてよい。
【０１１８】
ある実施形態では、第１エリアは第２エリアに隣接してよい。
【０１１９】
ある実施形態では、第１および第２の視覚的に知覚可能な要素は、これらの第１および第２エリアに表示されるテキストの一部または全部の文字を含んでよく、共通の所定値はこれらの文字の視覚特性であってよい。共通の所定値は、例えば、これらの文字のフォントサイズ、フォントタイプ、またはフォント色であってよい。
【０１２０】
ある実施形態では、第１の視覚的に知覚可能な要素は第１エリアの第１背景を含み、第２の視覚的に知覚可能な要素は第２エリアの第２背景を含み、共通の所定値は、第１および第２背景の視覚特性を含んでよい。例えば、共通の所定値は、第１および第２背景の色またはパターン（例えばタイルパターン）を含んでよい。
【０１２１】
ある実施形態では、第１および第２背景は不均一であってよく、第１の視覚的に知覚可能な要素は第１背景の第１変形を含んでよく、第２の視覚的に知覚可能な要素は第２背景の第２変形を含んでよく、共通の所定値は第１および第２変形の共通の特性を含んでよい。
【０１２２】
ある実施形態では、第１背景は第１画像を含んでよく、第２背景は第２画像を含んでよく、このとき、共通の所定値は、第１および第２画像がいずれも単一の元画像の一部であることを含んでよい。例えば、第１および第２画像は、同一の元画像を半分にしたそれぞれ一方であってよく、このとき、そのことをユーザは認識可能である。元画像は、多数収集した画像からランダムに選択された画像であってよい。元画像は、例えば風景の画像であってよい。
【０１２３】
ある実施形態では、共通の所定値は時間によって変わってよい。ある実施形態では、共通の所定値は時間によって予測不能に変わってよい。
【０１２４】
ある実施形態では、第１および第２エリアの第１および第２の視覚的に知覚可能な要素は時間によって変動してよく、共通の所定値は第１および第２の視覚的に知覚可能な要素の時間による変動の態様のための共通の値であってよい。例えば、第１の視覚的に知覚可能な要素は第１エリアの第１背景の第１運動を含んでよく、第２の視覚的に知覚可能な要素は第２エリアの第２背景の第２運動を含んでよく、共通の所定値は第１および第２運動の共通の特性であってよい。例えば、ある実施形態では、共通の所定値はこれらの第１および第２運動の共通の速度を含んでよく、または、共通の所定値は第１および第２運動の共通の方向を含んでよい。
【０１２５】
ある実施形態では、方法は上記実施形態の方法を含み、動的認証情報を取得するステップは、パーソナルコンピューティング機器に保存された秘密鍵を含む、または秘密鍵から取得される暗号鍵を用いてパラメータ化された暗号アルゴリズムを用いることを含んでよい。例えば、ある実施形態では、動的認証情報を取得するステップは、取引データを、パーソナルコンピューティング機器に保存された秘密鍵を含む、または秘密鍵から生成される暗号鍵と暗号論的に結合することにより動的認証情報を生成することを含んでよい。例えば、ある実施形態では、動的認証情報を生成するステップは、取引データを含むメッセージの少なくとも一部を復号し、メッセージの復号された部分から動的認証情報を読み出すことを含んでよく、このとき、復号は、パーソナルコンピューティング機器に保存された秘密鍵を含む、または秘密鍵から取得される暗号論的復号鍵を用いてパラメータ化された暗号論的復号アルゴリズムを実行することにより行われてよい。
【０１２６】
ある実施形態では、動的認証情報を検証のため利用可能にするステップは、動的認証情報を認証情報検証サーバに送信することを含んでよい。例えば、ある実施形態では、動的認証情報を検証のため利用可能にするステップは、認証アプリケーションがパーソナルコンピューティング機器に、動的認証情報を含むメッセージを、認証情報検証サーバまたは認証情報検証サーバに動的認証情報を転送する遠隔アプリケーションサーバといったサーバコンピュータに送信させることを含んでよい。例えば、ある実施形態では、動的認証情報を検証のため利用可能にするステップは、認証アプリケーションがパーソナルコンピューティング機器に、動的認証情報をパーソナルコンピューティング機器のディスプレイに表示させ、ユーザが表示された動的認証情報を認証情報検証サーバに、例えば表示された動的認証情報を、ユーザが情報交換に用いるアクセス機器に手動でコピーすることにより、転送できるようにすることを含んでよい。このとき、アクセス機器は、続いて、ユーザがコピーした動的認証情報を、例えばインターネットといったコンピュータネットワークを介して、認証情報検証サーバ、または動的認証情報を認証情報検証サーバに転送する遠隔アプリケーションサーバに送信してよい。ある実施形態では、パーソナルコンピューティング機器にこれらのステップを行わせるステップの全部または少なくとも一部は、パーソナルコンピューティング機器で動作する認証アプリケーションソフトウェアにより実行されてよい。
【０１２７】
ユーザまたはユーザにより送信された取引の認証のための装置
【０１２８】
本発明のある態様では、ユーザまたはユーザにより遠隔アプリケーションに送信された取引を、ユーザと遠隔アプリケーションとの間の情報交換を保護するために認証するための認証装置が、本明細書に記載されているように、提供される。ある実施形態では、認証装置は、本明細書に記載のすべての認証装置またはパーソナルコンピューティング機器を含む。
【０１２９】
ある実施形態では、認証装置は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護するパーソナルコンピューティング機器を含み、こうしたパーソナルコンピューティング機器は、ユーザに情報を表示するディスプレイと、ユーザから入力を受信するユーザ入力インタフェースと、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部と、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを実行するデータ処理部とを備えてよく、認証アプリケーションソフトウェアは、パーソナルコンピューティング機器に、取引データを取得させ、取得された取引データをユーザによる参照のためディスプレイの取引データ提示エリアに表示させ、取引データに関連づけられた動的認証情報を取得させ、動的認証情報を検証のため利用可能にさせ、認証アプリケーションの取引データ提示エリアが、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウにより、部分的または全体的に、隠されまたは覆われている場合、少なくとも動的認証情報を検証のため利用可能にさせるステップは実行されない、または実行に成功できないことを保証させるよう構成されてよい。
【０１３０】
ある実施形態では、認証装置は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護するパーソナルコンピューティング機器を含み、こうしたパーソナルコンピューティング機器は、ユーザに情報を表示するディスプレイと、ユーザから入力を受信するユーザ入力インタフェースと、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部と、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを実行するデータ処理部とを備えてよく、認証アプリケーションソフトウェアは、パーソナルコンピューティング機器に、取引データを取得させ、取得された取引データをユーザによる参照のためディスプレイの認証アプリケーションの取引データ表示ウィンドウに表示させ、取引データに関連づけられた動的認証情報を取得させ、動的認証情報を検証のため利用可能にさせ、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、認証アプリケーションにより表示されない他のウィンドウにより、部分的または全体的に、隠されまたは覆われている場合、少なくとも動的認証情報を検証のため利用可能にさせるステップは実行されない、または実行に成功できないことを保証させるよう構成されてよい。
【０１３１】
ある実施形態では、認証装置は、パーソナルコンピューティング機器のユーザの遠隔アクセス可能なコンピュータアプリケーションとの情報交換セッションを保護するためのパーソナルコンピューティング機器を含み、こうしたパーソナルコンピューティング機器は、ユーザに情報を表示するディスプレイと、ユーザから入力を受信するユーザ入力インタフェースと、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部と、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを実行するデータ処理部とを備えてよく、認証アプリケーションソフトウェアは、パーソナルコンピューティング機器に、情報交換セッションに関係する取引データを取得させ、取得した取引データをユーザによる参照のためパーソナルコンピューティング機器のディスプレイの第１エリアに表示させ、取引データに関連づけられた動的認証情報を取得し、パーソナルコンピューティング機器のディスプレイの第２エリアを用いて動的認証情報を検証のため利用可能にさせ、第１エリアの第１の視覚的に知覚可能な要素および第２エリアの第２の視覚的に知覚可能な要素に同じ共通の所定値を適用することにより第１エリアと第２エリアとの間に視覚的に知覚可能な連続性を生成し、認証アプリケーションにより表示されず第１エリアを部分的または全体的に隠しまたは覆い第１および第２の視覚的に知覚可能な要素のための前記共通な所定値と同じ値の第３の視覚的に知覚可能な要素を有しないオーバーレイウィンドウの存在により、オーバーレイウィンドウと第２エリアとの間に、前記オーバーレイウィンドウの存在をユーザに警告する視覚的に知覚可能な不連続性を生じさせるよう構成されてよい。
【０１３２】
ある実施形態では、装置は、上述したいずれかの方法の１以上または全部を実行するよう適応されたパーソナルコンピューティング機器を備えてよい。ある実施形態では、パーソナルコンピューティング機器は、ディスプレイと、ユーザ入力インタフェースと、データ処理部と、記憶部とを備えてよい。ある実施形態では、パーソナルコンピューティング機器は、また、データ通信インタフェースを備えてよい。ある実施形態では、記憶部は、データ処理部で実行される認証アプリケーションを含むソフトウェアを保存してよい。ある実施形態では、認証アプリケーションは、本明細書に記載したいずれかの認証アプリケーションを含んでよい。ある実施形態では、認証アプリケーションは、データ処理部に実行されたときに、パーソナルコンピューティング機器に、上述したいずれかの方法の１以上または全部を実行させてよい。ある実施形態では、記憶部はオペレーティングシステムのソフトウェアコードも保存してよく、データ処理部はオペレーティングシステムを実行するよう適応され、および／または、構成されてよく、パーソナルコンピューティング機器は、認証アプリケーションを動作させている間、オペレーティングシステムを動作させていてよい。ある実施形態では、認証アプリケーションは、本明細書でより詳細に説明したように、１以上のオペレーティングシステムの機能を呼び出すよう適応されてよい。
【０１３３】
ユーザを認証、または、ユーザにより送信された取引を認証するためのシステム
【０１３４】
本発明のある態様では、本明細書で記載したように、ユーザまたはユーザにより遠隔アプリケーションに送信された取引を認証し、ユーザと遠隔アプリケーションとの間の情報交換を保護するためのシステムが提供される。ある実施形態では、システムは本明細書に記載したいずれかの認証装置または認証機器を含んでよい。ある実施形態では、システムは遠隔アクセス可能なコンピュータアプリケーションをホスティングするよう適応された遠隔アプリケーションサーバを備えてよい。ある実施形態では、システムは、本明細書で記載したいずれかの認証情報検証サーバを備えてよい。ある実施形態では、遠隔アプリケーションサーバおよび／または認証情報検証サーバは、１以上のサーバコンピュータを備えてよい。ある実施形態では、遠隔アプリケーションサーバおよび認証情報検証サーバは、同一のサーバに統合されてよい。
【０１３５】
ある実施形態では、システムは、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護するためのシステムを含み、こうしたシステムは、遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバと、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を許可するためのアクセス機器と、ユーザに情報を表示するディスプレイ、ユーザから入力を受信するユーザ入力インタフェース、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部、およびオペレーティングシステムソフトウェアと認証アプリケーションソフトウェアとを実行するデータ処理部とを備えるパーソナルコンピューティング機器とを備え、認証アプリケーションはパーソナルコンピューティング機器に、取引データを取得させ、取得した取引データをユーザによる参照のためディスプレイの取引データ提示エリアに表示させ、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウも、認証アプリケーションの取引データ提示エリアを、部分的または全体的に、隠しまたは覆うことができないことを保証させるよう構成されてよい。
【０１３６】
ある実施形態では、システムは、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換セッションを保護するためのシステムを含み、こうしたシステムは、遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバと、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を許可するためのアクセス機器と、遠隔アクセス可能なコンピュータプログラムの取引データに関連づけられた動的認証情報の妥当性を検証する認証情報検証サーバと、ユーザに情報を表示するディスプレイ、ユーザから入力を受信するユーザ入力インタフェース、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部、および、オペレーティングシステムソフトウェアと認証アプリケーションソフトウェアとを実行するデータ処理部とを備えるパーソナルコンピューティング機器とを備え、認証アプリケーションはパーソナルコンピューティング機器に、取引データを取得させ、取得した取引データをユーザによる参照のためディスプレイの取引データ提示エリアに表示させ、取引データに関連づけられた動的認証情報を取得させ、動的認証情報を検証のため利用可能にさせ、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、認証アプリケーションのウィンドウでないウィンドウにより、部分的または全体的に、隠されまたは覆われている場合、少なくとも動的認証情報を検証のため利用可能にするステップは実行されない、または実行に成功できないことを保証させるよう構成されてよい。
【０１３７】
ある実施形態では、システムは、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換セッションを保護するためのシステムを含み、こうしたシステムは、遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバと、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を許可するためのアクセス機器と、遠隔アクセス可能なコンピュータプログラムの取引データに関連づけられた動的認証情報の妥当性を検証する認証情報検証サーバと、ユーザに情報を表示するディスプレイ、ユーザから入力を受信するユーザ入力インタフェース、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部、および、オペレーティングシステムソフトウェアと認証アプリケーションソフトウェアとを実行するデータ処理部とを備えるパーソナルコンピューティング機器とを備え、認証アプリケーションはパーソナルコンピューティング機器に、前記情報交換セッションに関連する取引データを取得させ、取得した取引データをユーザによる参照のためパーソナルコンピューティング機器のディスプレイの第１エリアに表示させ、取引データに関連づけられた動的認証情報を取得し、パーソナルコンピューティング機器のディスプレイの第２エリアを用いて動的認証情報を検証のため利用可能にさせ、第１エリアの第１の視覚的に知覚可能な要素および第２エリアの第２の視覚的に知覚可能な要素に同じ共通の所定値を適用することにより第１エリアと第２エリアとの間に視覚的に知覚可能な連続性を生成し、認証アプリケーションにより表示されず第１エリアを部分的または全体的に隠しまたは覆い第１および第２の視覚的に知覚可能な要素のための前記共通な所定値と同じ値の第３の視覚的に知覚可能な要素を有しないオーバーレイウィンドウの存在により、オーバーレイウィンドウと第２エリアとの間に、前記オーバーレイウィンドウの存在をユーザに警告する視覚的に知覚可能な不連続性を生じさせるよう構成されてよい。
【図面の簡単な説明】
【０１３８】
上述した、および他の本発明の特徴および効果は、添付図面に示すように、以下の本発明のより詳細な実施形態の説明から明らかとなる。
【０１３９】
【図１】本発明のある態様における典型的な装置の模式図である。
【０１４０】
【図２】本発明のある態様における典型的なシステムの模式図である。
【０１４１】
【図３】本発明のある態様における典型的な装置の模式図である。
【０１４２】
【図４】本発明のある態様における典型的な方法の模式図である。
【０１４３】
【図５】本発明のある態様における他の典型的な方法の模式図である。
【０１４４】
【図６】本発明のある態様におけるさらに他の典型的な方法の模式図である。
【発明を実施するための形態】
【０１４５】
本発明のいくつかの実施例を以下に説明する。詳細な実施例を説明するが、これは説明のみを目的としていることを理解されたい。当業者は、本発明の精神および範囲から離れることなく、他の部品および構成を使用することができることを理解するだろう。本発明を完全に理解できるようにするため、様々の具体的な詳細が提供される。しかし、本発明がこうした具体的な詳細ななくとも実施可能であることは、当業者には理解されるだろう。他の例では、既知の方法、手続、部品および回路は、本発明が不明確にならないよう、詳細には記載していない。記載した実施形態への様々な変更は当業者に明らかだろう。そして、以下に記述する実施形態の一般原則は、他の実施形態にも適用可能である。
【０１４６】
図１は、本発明のある態様における典型的な電子装置１００の模式図である。図１の装置は、認証機器である。ある実施形態では、認証機器は、ユーザに代わって動的認証情報を生成するよう適応される。ある実施形態では、認証機器により生成された動的認証情報は、例えば、ワンタイムパスワード、および／または、例えば取引データへの電子署名、および／または、チャレンジへのレスポンスであってよい。ある実施形態では、認証機器はスマートフォンまたはタブレットコンピュータであってよい。
【０１４７】
プロセッサ１５０およびメモリ１６０
【０１４８】
認証機器は、データ処理命令セットを実行するよう適応されたデジタルデータ処理部１５０を備えてよい。ある実施形態では、データ処理部１５０は、例えば１以上のマイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ（Digital Signal Processor, ＤＳＰ）、ＦＰＧＡ（Field Programmable Gate Arrays）等であってよい。ある実施形態では、デジタルデータ処理部は、１つ以上のソフトウェアに含まれる命令を実行してよい。これらの１つ以上のソフトウェアは、例えばオペレーティングシステム（例えばAndroidまたはiOSなど）および／または本明細書にてより詳細に説明されているように動的認証情報を生成するよう適応された認証アプリケーションを含んでよい。ある実施形態では、認証アプリケーションにより生成される動的認証情報は、例えば、ワンタイムパスワード、および／または、例えば取引データへの電子署名、および／または、チャレンジへのレスポンスであってよい。
【０１４９】
多重インスタンス
【０１５０】
ある実施形態では、認証機器は、それぞれ異なるユーザに関連づけられる認証アプリケーションの多重インスタンスをサポートするよう適応される。ある実施形態で、それぞれのインスタンスは、例えば、そのインスタンスに関連づけられたユーザのために動的認証情報を生成するため認証アプリケーションが使用する１以上の暗号論的認証情報生成キーといった暗号鍵を決定するために認証アプリケーションが用いるデータを含んでよい。
【０１５１】
認証機器は、デジタルデータ処理部に接続される記憶部１６０を含んでよい。ある実施形態では、記憶部は、データ処理部により実行されるソフトウェアまたはファームウェアを保存するよう適応されたプログラム記憶部を含んでよい。例えば、ある実施形態では、認証機器のメモリに保存されたソフトウェアまたはファームウェアは、オペレーティングシステムおよび／または認証アプリケーションを含んでよい。
【０１５２】
ある実施形態では、記憶部１６０は、データを永続的または一時的に保存するよう適応されたデータ記憶部を含んでよい。ある実施形態では、データ記憶部は、暗号鍵またはＰＩＮまたはパスワード参照データといった秘密データを安全に保存するよう適応されてよい。ある実施形態では、データ記憶部は、認証アプリケーションの多重インスタンスのデータを保存するよう適応されてよい。
【０１５３】
記憶部は、例えばＲＡＭ（Random Access Memory）メモリ、ＲＯＭ（Read-Only Memory）メモリ、ＥＰＲＯＭ（Erasable Programmable Read-Only Memory）メモリ、一回プログラマブルメモリ、フラッシュメモリ、半導体メモリ、ハードディスク等を備えてよい。
【０１５４】
ユーザインタフェース１２０、１３０
【０１５５】
ある実施形態では、認証機器は、ユーザと情報交換する、例えばユーザとデータ、情報および／または命令を交換するためのユーザインタフェース１２０、１３０を備えてよい。
【０１５６】
ある実施形態では、認証機器のユーザインタフェースは、ユーザに厳密認証トークンの情報および／またはデータを提示するための出力ユーザインタフェース１３０を含んでよい。ある実施形態では、出力ユーザインタフェースは、例えばディスプレイ１３０またはオーディオ出力インタフェースを含んでよい。ある実施形態では、認証機器のユーザインタフェースは、ユーザから例えば（チャレンジまたは取引データのような）入力データまたは（確認またはキャンセルのような）指示またはＰＩＮといった入力を受け付けるための入力ユーザインタフェース１２０を含んでよい。ある実施形態では、入力ユーザインタフェースは、例えばキーボードを含んでよい。ある実施形態では、認証機器のユーザインタフェースは、ユーザ出力インタフェースおよびユーザ入力インタフェースの両方の機能を提供するよう適応されたタッチスクリーンを含んでよい。
【０１５７】
データ入力インタフェース１４０
【０１５８】
ある実施形態では、認証機器は、デジタルデータ入力インタフェースを備えてよい。ある実施形態では、認証機器のデジタル入力インタフェースは、デジタルデータメッセージを受信するよう適応されてよい。ある実施形態では、データ入力インタフェースは光学画像取得部１４０を含んでよい。ある実施形態では、光学画像取得部はカメラを含んでよい。ある実施形態では、認証機器は、光学画像取得部により、デジタルデータメッセージとともにエンコードされる画像を取得するよう適応されてよい。ある実施形態では、画像は二次元バーコードを含んでよい。ある実施形態では、画像の形式は標準で定義されていてよい。例えば、ある実施形態では、光学画像はＱＲコード（登録商標）であってよい。
【０１５９】
他の実施形態では、デジタルデータ入力インタフェースは、トークンに対するメッセージまたは命令とともにエンコードされる音響信号を取得するよう適応された音響インタフェースを含んでよい。ある実施形態では、音響インタフェースはマイクを含んでよい。ある実施形態では、音響インタフェースは、音響電気信号を、後に例えば上述のデジタルデータ処理部により処理されるデジタル信号に変換するアナログ−デジタル変換器を含んでよい。
【０１６０】
ある実施形態では、デジタルデータ入力インタフェースは、無線データ通信インタフェースを含んでよい。ある実施形態では、無線データ通信インタフェースは、アンテナを含んでよい。ある実施形態では、無線データ通信インタフェースは、デジタルデータメッセージがコード化されて変調された無線信号を受信するよう適応されてよい。
【０１６１】
ある実施形態では、認証機器で動作している認証アプリケーションは、デジタルデータメッセージを受信するためにデータ入力インタフェースを用いるよう適応されてよい。ある実施形態では、デジタルデータメッセージは取引データを含んでよく、認証アプリケーションは、デジタルデータメッセージに含まれる取引データを受信し、受信した取引データを更なる処理、例えば、本明細書により詳細に記載したように、ユーザへの表示および／または対応する動的認証情報の生成のために使用するよう適応されてよい。
【０１６２】
認証情報の生成
【０１６３】
認証機器は、本明細書でより詳細に説明したように、動的認証情報を生成するよう適応されてよい。ある実施形態では、データ処理部１５０は、動的認証情報を生成するために暗号論的計算を実行してよい。ある実施形態では、認証機器は、記憶部１６０に永続的または一時的に保存された暗号鍵、または、記憶部１６０に永続的または一時的に保存されたデータから認証機器が導出する暗号鍵を用いて、動的認証情報を生成するよう適応されてよい。ある実施形態では、認証機器は、記憶部１６０に保存された認証アプリケーションのインスタンスの一部であるデータを用いて動的認証情報を生成するよう適応されてよい。
【０１６４】
ある実施形態では、認証機器または認証アプリケーションは、トークンに供給される内部値を含む動的変数を用いて動的認証情報を生成するよう適応されてよい。例えば、ある実施形態では、認証機器は時計１７０を備え、認証機器または認証アプリケーションは、時計により供給される時間値を内部値として使用してよい。ある実施形態では、認証機器は、カウンタといったイベント関連変数を、認証アプリケーションのインスタンスのデータの一部として維持してよく、認証機器または認証アプリケーションは、このイベント関連変数の値を、そのインスタンス用の動的認証情報を生成するための内部値として使用し、認証機器または認証アプリケーションが動的認証情報を生成するためのこのカウンタの値を使用するたびに、現在の値の関数としてイベント関連変数の値を（例えばカウンタの値を増加または減少させることにより）更新するよう適応されてよい。例えば、ある実施形態では、イベント関連変数の更新された値は、イベント関連変数の現在の値にハッシュ関数を適用することにより計算されてよい。
【０１６５】
ある実施形態では、認証機器または認証アプリケーションは、トークンに供給される外部値を含む動的変数を用いて動的認証情報を生成するよう適応されてよい。ある実施形態では、こうした外部値は、サーバにより生成されたチャレンジまたは署名されるべき取引データを含んでよい。ある実施形態では、外部値は、認証機器または認証アプリケーションに、トークンのユーザ入力インタフェースを用いてユーザにより手動で供給されてよい。例えば、トークンは、ユーザがトークンの備えるキーボードで文字列として入力するチャレンジまたは取引データを取得してもよい。ある実施形態では、外部値は、認証機器のデータ入力インタフェースを介して認証機器または認証アプリケーションが受信するメッセージまたは命令に含めて供給される。
【０１６６】
ある実施形態では、認証機器または認証アプリケーションは、生成された動的認証情報をユーザに提示するよう適応されてよい。例えば、ある実施形態では、認証機器または認証アプリケーションは、認証機器のディスプレイに、生成された動的認証情報を可読文字列として表示してもよい。ある実施形態では、文字列は十進数の文字のみを含んでよい。他の実施形態では、文字列は英数文字を含んでよい。
【０１６７】
安全な専用ハードウェアトークン
【０１６８】
ある実施形態では、認証機器１００は専用ハードウェア機器であり、トークンまたは厳密認証トークンと呼ばれてよい。ある実施形態では、トークンはユーザのアプリケーションへのアクセスを保護する、または、こうしたアプリケーションとのユーザの情報交換を保護する方法に専ら使用されてよい。ある実施形態では、認証機器の主要な目的は、ユーザのアプリケーションへのアクセスを保護する、または、こうしたアプリケーションとのユーザの情報交換を保護する方法に使用されることである。ある実施形態では、認証機器のセキュリティ機器としての確実な専用を保証するため、認証機器は、ファームウェアを変更できないよう適応されてよい。ある実施形態では、認証機器のセキュリティ機器としての確実な専用を保証するため、ファームウェアのいかなる変更または更新も、承認された信頼できる管理機関のみが認証機器のファームウェアを更新または変更できることを保証するよう設計された安全なファームウェア更新手順を通してのみ可能である。こうすることにより、信頼できる管理機関は、ユーザのアプリケーションへのアクセスを保護する、またはこうしたアプリケーションとのユーザの情報交換を保護する方法への認証機器の専用を解除し得るファームウェアの更新が発生しないことを保証することができる。信頼できる管理機関により承認されていない追加ソフトウェアをユーザがインストール可能な機器は、専用機器とは見なされない。電気通信施設を提供することを主目的とする機器は、ユーザのアプリケーションへのアクセスを保護する、またはこうしたアプリケーションとのユーザの情報交換を保護する方法の使用の専用機器とは見なされない。汎用ＰＣ、ノートパソコン、タブレットコンピュータ、およびスマートフォンは、専用機器とは見なされない。
【０１６９】
非専用パーソナルコンピューティング機器におけるソフトウェアトークン
【０１７０】
ある実施形態では、認証機器１００は、本明細書に記載の認証機能の実行および動的認証情報の生成専用ではないハードウェア機器１００を含む。ある実施形態では、ハードウェア機器は、認証機能および動的認証情報生成以外の機能も提供するパーソナルユーザ機器またはパーソナルコンピューティング機器１００を含んでよい。例えば、ある実施形態では、パーソナルコンピューティング機器は、電話の発呼またはインターネットのブラウズまたは電子メールの送受信といった電気通信サービスも提供してよい。ある実施形態では、パーソナルコンピューティング機器は、パーソナルコンピューティング機器に含まれるカメラにより写真を撮影する、または、動画を作成するといった他の機能を提供してよい。ある実施形態では、パーソナルコンピューティング機器は、パーソナルコンピューティング機器の機能を豊富にするために追加のアプリケーションまたはアプリをユーザがインストールできるようにするオペレーティングシステムを備えてよい。ある実施形態では、追加のアプリケーションまたはアプリのインストールの可能性は、信頼できる第三者管理機関による管理を受けていない、または、承認を必要としない。ある実施形態では、追加のアプリケーションまたはアプリのインストールの可能性は、集中管理機関（例えばパーソナルコンピューティング機器の提供者または製造者に関連づけられた機関）により管理されてよく、しかし、集中管理機関は、遠隔アプリケーションによる信頼を受けていない、または、受けていなくてもよい。ある実施形態では、パーソナルコンピューティング機器は、本明細書に記載の動的認証情報の生成のための認証アプリケーションまたはアプリを含んでよい。ある実施形態では、認証アプリケーションまたはアプリは、パーソナルコンピューティング機器に初期値として存在しておらず、しかし、パーソナルコンピューティング機器がユーザに配布された後にパーソナルコンピューティング機器にインストールされなければならない。ある実施形態では、認証アプリケーションまたはアプリのパーソナルコンピューティング機器へのインストールは、パーソナルコンピューティング機器へのユーザの動作により開始されてよい。ある実施形態では、認証アプリケーションまたはアプリは、ユーザによる事前のパーソナルコンピューティング機器への動作を要求することなく、パーソナルコンピューティング機器に自動的にプッシュされてよい。ある実施形態では、こうした認証アプリケーションまたはアプリのプッシュは、認証アプリケーションまたはアプリの提供者により行われてよい。ある実施形態では、プッシュは、遠隔アプリケーションのアプリケーションオーナーにより行われてよく、ユーザによる遠隔アプリケーションへのアクセスは、認証アプリケーションまたはアプリにより保護されることになる。ある実施形態では、パーソナルコンピューティング機器は、パーソナルコンピューティング機器がユーザに提供されたときに初期値として認証アプリケーションまたはアプリの実行コードを含んでいるが、認証アプリケーションまたはアプリは、設定データおよび／または暗号鍵および／またはパスワードまたはＰＩＮの値および／またはユーザに関する生体テンプレートといったパーソナライズデータの設定を必要としてよい。ある実施形態では、パーソナルコンピューティング機器は、例えばスマートフォンまたはタブレットを含んでよい。
【０１７１】
図３は、本発明のある態様による典型的な装置の模式図である。
【０１７２】
認証機器１００は、例えば図１を用いて説明した認証機器の１つといった、本明細書に記載の認証機器の１つを例えば備えてよい。
【０１７３】
鑑賞機器は、認証アプリケーションを実行していてよい。認証アプリケーションは、取引データを提示する機能を、ユーザにアクセス可能または視認可能でなければならない認証アプリケーションの他の機能の視覚的外観と視覚的に連携させ、ユーザが動的認証情報を取得でき、または、認証アプリケーションが動的認証情報を生成および／またはユーザまたは遠隔検証サーバといった何らかの宛先に提供できるよう、可能性のあるオーバーレイ攻撃を阻止するよう適応されてよい。図示された実施形態では、動的認証情報（「２１５４３１」）が、取引データに重畳するよう提示されている。
【０１７４】
例えば、認証アプリケーションは、取引データに対応する動的認証情報を生成し、生成した動的認証情報を、対応する取引データとともに同時に表示してよい。表示された取引データの参照にあたり、ユーザが表示された取引データを承認する場合、ユーザは、対応する表示された動的認証情報を、遠隔アプリケーションに転送してよい。仮に認証アプリケーションが動的認証情報と取引データとをディスプレイの離散した重複しないエリアに表示するとしたら、動的認証情報が対応する取引データに、オーバーレイ攻撃がユーザに代わりに見せたい別の取引データを重畳することが、オーバーレイ攻撃にとって比較的容易となるだろう。しかし、本発明の態様に従って、認証アプリケーションが、取引データの提示と対応する動的認証情報の提示とを、例えば取引データと対応する動的認証情報とを１つに重畳させるようディスプレイの同一のエリアを用いることにより、連携させた場合、認証アプリケーションにより表示された取引データに重畳して隠すオーバーレイ攻撃は、自動的に動的認証情報にも重畳して隠すことになる。この場合、ユーザは動的認証情報を見ることができないため、ユーザは、認証アプリケーションにより生成され表示された動的認証情報をコピーして遠隔アプリケーションに転送することができない。遠隔アプリケーションが動的認証情報を受信しないため、遠隔アプリケーションはこの動的認証情報に対応する取引を承認することはなく、不正な取引へと導くオーバーレイ攻撃者の試みは失敗する。
【０１７５】
図３に図示した例では、例えばインターネットバンキングのウェブサイトといった遠隔アプリケーションに送信を希望する取引データを、中間者攻撃者が操作している。例えば、攻撃者は、例えばアカウント番号（図３では「アカウント」と図示）および宛先識別番号（図３では「受取人」と図示）の元の値を、攻撃者のアカウント番号（「91-226461-2」）および宛先識別子（「GANGSTER BAD BOY」）に置き換えることにより、元のユーザの取引データを不正の取引データに置換している。遠隔アプリケーションとユーザは、最初はこの置換に気付かないかもしれない。遠隔アプリケーションは、受信した（不正の）取引データを、参照および承認のためユーザの認証機器に送信してよい。認証機器は（不正の）取引データを受信し、対応する動的認証情報（「215431」）を生成し、受信した（不正の）取引データと対応して生成された動的認証情報とを表示する。ユーザが表示された取引データを参照し、ユーザがこれらの表示された取引データを承認し、表示された動的認証情報をコピーして遠隔アプリケーションに転送した場合を考える。この場合、表示された取引データは、ユーザの入力した元の取引データと一致しないため、ユーザは、表示された（不正の）取引データを参照したときに、何か重大な問題が起きたことを理解し、そうして、ユーザは表示された動的認証情報を転送しないだろう。この参照制御を回避するため、攻撃者は、認証アプリケーションが受信し表示する不正の取引データを、ユーザが遠隔アプリケーションに提供しようとしている元の取引データを表示するオーバーレイウィンドウで隠してオーバーレイ攻撃を仕掛けようとすることが考えられる。しかし、本実施形態では認証アプリケーションは取引データと対応する動的認証情報とが重なり合うように表示しているため、認証アプリケーションにより表示される取引データを隠すオーバーレイウィンドウはすべて、取引データとまったく同じディスプレイ上のエリア１３０に認証アプリケーションによりまた表示される対応する動的認証情報をも必然的に隠すこととなる。これは、ユーザに対して何かが非常に問題であることを示す明確な視覚的手掛りを提供するのみならず、ユーザが（仮にユーザがこの手掛りを無視するとしても）動的認証情報を見て取得することを不可能にし、そしてユーザが不正の取引データに対応する動的認証情報を遠隔アプリケーションに転送することを不可能にする。正当な対応する動的認証情報を受信していないので、遠隔アプリケーションは（不正の）取引データを拒絶し、不正な取引へと導く攻撃者の試みは失敗する。
【０１７６】
図２は、本発明のある態様による典型的なシステムの模式図である。
【０１７７】
ある実施形態では、本発明のシステム２００は、以下の要素を含む。
【０１７８】
１以上の遠隔アプリケーションサーバコンピュータ２１０。１以上の遠隔アプリケーションサーバコンピュータ２１０は、複数のユーザのうち１以上のユーザ２９０により遠隔アクセス可能な１以上の遠隔アプリケーションをホストしてよい。遠隔アプリケーションサーバコンピュータ２１０は、例えばウェブサーバであってよい。１以上の遠隔アプリケーションは、１以上のアプリケーション提供者の管理下にあってよい。
【０１７９】
複数のユーザのうち１以上のユーザ２９０を１以上の遠隔アプリケーションに遠隔アクセス可能にし、アクセス機器とも呼ばれる複数のクライアントコンピューティング機器２３０。クライアントコンピューティング機器またはアクセス機器２３０は、例えばＰＣ（パーソナルコンピュータ）、ノートパソコンまたはタブレットコンピュータを含む。
【０１８０】
１以上のアプリケーションサーバコンピュータ２１０と複数のクライアントコンピューティング機器またはアクセス機器２３０とを接続するコンピュータネットワーク２５０。ある実施形態では、コンピュータネットワーク２１０はインターネットを含んでよい。ある実施形態では、コンピュータネットワーク２１０は公衆電話網を含んでよい。ある実施形態では、コンピュータネットワーク２１０は無線電話ネットワークを含んでよい。
【０１８１】
本明細書において、例えば図１を参照してより詳細に記載された複数の認証機器１００。認証機器１００は、複数のユーザに配布されてよい。ある実施形態では、認証機器１００は１以上のアプリケーション提供者によってユーザに配布されてよい。ある実施形態では、認証機器１００は本明細書で記載したように適応される認証アプリケーションを含むコンシューマ電子機器であってよい。ある実施形態では、認証機器１００は、例えばスマートフォンまたはタブレットコンピュータといったパーソナルコンピューティング機器を含んでよい。ある実施形態では、認証機器１００は、例えばAndroidまたはiOSといったオペレーティングシステムを含んでよい。ある実施形態では、認証アプリケーションはスマートフォンのアプリまたはタブレットのアプリを含んでよい。ある実施形態では、ユーザ２９０は、提供者から認証アプリケーションを取得し、認証アプリケーションを自らの選択で機器１００にインストールしてよい。ある実施形態では、ユーザ２９０は認証アプリケーションをアプリストアから取得してよい。
【０１８２】
１以上の認証情報検証サーバ２２０。ある実施形態では、１以上の認証情報検証サーバ２２０のそれぞれは、１以上のアプリケーションサーバ２１０の少なくとも１つと接続され、検証サーバに接続された１以上のアプリケーションサーバ２１０によりホストされる遠隔アプリケーションが、こうした遠隔アプリケーションと情報交換するユーザ２９０から受信する動的認証情報を、検証するよう構成されてよい。ある実施形態では、アプリケーションサーバ２１０のそれぞれは、１以上の認証情報検証サーバ２２０の少なくとも１つと接続され、アプリケーションサーバ２１０にホストされる遠隔アプリケーションが遠隔アプリケーションと情報交換するユーザ２９０から受信した動的認証情報を１以上の認証情報検証サーバ２２０のうちの接続された１つに転送するよう構成されてよい。遠隔アプリケーションから動的認証情報を受信すると、認証情報検証サーバは、ユーザおよび／または動的認証情報を生成した認証機器１００に関連づけられたデータを読み出し、そのデータを用いて受信した動的認証情報の正当性を暗号論的に検証してよい。例えば、ある実施形態では、認証情報検証サーバは、動的認証情報に対して基準値を生成し、生成された基準値を受信した動的認証情報と比較し、受信した動的認証情報が生成した基準値に適合した場合、受信した動的認証情報の検証を成功したと判定してよい。ある実施形態では、認証情報検証サーバは、サーバが受信した取引データ、および／または、カウンタ編集のサーバコピーまたはユーザおよび／または時間値に関連づけられたイベント関連変数といった基準入力データに暗号論的アルゴリズムを適用することにより基準値を生成してよい。ある実施形態では、認証情報検証サーバは、ユーザに関連づけられた秘密の値を含む、または秘密の値から得られる秘密鍵を用いてこの暗号論的アルゴリズムをパラメータ化してよい。認証情報検証サーバ２２０は、検証が成功したか否かを示す信号を遠隔アプリケーションに返してよい。信号が検証の成功を示す場合、遠隔アプリケーションは、ユーザのアクセスを許可するか否か、または、ユーザに要求された所定の動作（ユーザにより送信された取引の実行など）を実行するか否かの決定にその情報を用いてよい。
【０１８３】
図４は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護する方法４００を模式的に示している。方法は、以下のステップをパーソナルコンピューティング機器に実行させることを含む：取引データを取得するステップ４０２；ユーザによる参照のためパーソナルコンピューティング機器のディスプレイに取得した取引データを表示するステップ４０４、このときパーソナルコンピューティング機器で動作している認証アプリケーションは、パーソナルコンピューティング機器のディスプレイの取引データ提示エリアに取得した取引データを表示する；取引データに関連づけられた動的認証情報を取得するステップ４０６；動的認証情報を検証のため利用可能にするステップ４０８；および、パーソナルコンピューティング機器において、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウも、認証アプリケーションの取引データ提示エリアを、部分的または全体的に、隠しまたは覆うことができないことを保証するステップ４１０。
【０１８４】
図５は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護する方法５００を模式的に示している。方法は、以下のステップをパーソナルコンピューティング機器に実行させることを含む：取引データを取得するステップ５０２；パーソナルコンピューティング機器で動作している認証アプリケーションにより、取得した取引データをユーザによる参照のためパーソナルコンピューティング機器のディスプレイの取引データ表示ウィンドウに表示するステップ５０４；取引データに関連づけられた動的認証情報を取得するステップ５０６；動的認証情報を検証のため利用可能にするステップ５０８；および、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、認証アプリケーションのウィンドウでないウィンドウにより、部分的または全体的に、隠されまたは覆われている場合、少なくとも動的認証情報を検証のため利用可能にするステップは実行されない、または実行に成功できないことを保証するステップ５１０。
【０１８５】
図６は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換セッションを保護する方法６００を模式的に示している。方法は、以下のステップをパーソナルコンピューティング機器に実行させることを含む：前記情報交換セッションに関連する取引データを取得するステップ６０２；パーソナルコンピューティング機器で動作している認証アプリケーションにより、取得した取引データを、ユーザによる参照のためパーソナルコンピューティング機器のディスプレイの第１エリアに表示するステップ６０４；取引データに関連づけられた動的認証情報を取得するステップ６０６；認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第２エリアを用いて動的認証情報を検証のため利用可能にするステップ６０８；および、第１エリアの第１の視覚的に知覚可能な要素と第２エリアの第２の視覚的に知覚可能な要素とを共通の所定値とすることにより、第１エリアと第２エリアとの間の視覚的に知覚可能な連続性を形成し、認証アプリケーションのウィンドウではなく第１エリアを部分的または全体的に、隠しまたは覆い、前記第１および第２の視覚的に知覚可能な要素のための共通の所定値と同じ値による視覚的に知覚可能な第３の値を有しないオーバーレイウィンドウの存在によりオーバーレイウィンドウと第２エリアとの間の視覚的に知覚可能な不連続を生じさせてユーザに前記オーバーレイウィンドウの存在を警告するようにするステップ６１０。
【０１８６】
多数の実施例をここに説明した。しかしながら、様々な修正を加えることができることは理解されるであろう。例えば、１以上の実施例の要素は、更なる実施例を形成するため、結合され、削除され、修正され、または補充されてよい。従って、他の実施例は添付の特許請求の範囲に含まれる。加えて、本発明の特定の特徴は、いくつかの実施例のうちの１つのみに関連して開示されている場合であっても、こうした特徴は、所定のまたは特定の応用に要求され、または、有利となるよう、他の実施例の他の１以上の特徴と組み合わされてよい。本発明の様々な実施形態を上述したが、これは例示のために提示されたものであり、限定のためでないことを理解されたい。特に、発明の主題を記述する目的で構成要素または方法のすべての考え得る組み合わせを記載することは、もちろん不可能である。しかし、当業者は本発明の更なる多数の組み合わせおよび変形が可能であることを認識することができる。このように、本発明の幅と範囲は、上述した典型的な実施形態のいずれによっても制限されるべきではない。むしろ、本発明の少なくとも１つの実施形態の範囲は、以下の特許請求の範囲およびその均等物のみに従って規定される。
【図１】
2018534706.tif 000003
【図２】
2018534706.tif 000004
【図３】
2018534706.tif 000005
【図４】
2018534706.tif 000006
【図５】
2018534706.tif 000007
【図６】
2018534706.tif 000008
【国際調査報告】
2018534706.tif 000009
2018534706.tif 000010