(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-20
(45)【発行日】2024-08-28
(54)【発明の名称】マルチユーザ厳密認証トークン
(51)【国際特許分類】
G06F 21/31 20130101AFI20240821BHJP
G06F 21/84 20130101ALI20240821BHJP
【FI】
G06F21/31
G06F21/84
(21)【出願番号】P 2023010865
(22)【出願日】2023-01-27
(62)【分割の表示】P 2021015462の分割
【原出願日】2016-09-21
【審査請求日】2023-02-24
(32)【優先日】2015-09-21
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】516195720
【氏名又は名称】ワンスパン インターナショナル ゲゼルシャフト ミット ベシュレンクテル ハフツング
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100114018
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100122116
【氏名又は名称】井上 浩二
(72)【発明者】
【氏名】ニコラ フォル
(72)【発明者】
【氏名】フレデリク メンヌ
(72)【発明者】
【氏名】リュドビック ジョリ
(72)【発明者】
【氏名】ギヨーム テクスロン
【審査官】小林 秀和
(56)【参考文献】
【文献】米国特許第08341744(US,B1)
【文献】特表2006-527430(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/31
G06F 21/84
(57)【特許請求の範囲】
【請求項1】
遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護する方法であって、
取引データを取得するステップと、
前記取得した前記取引データを前記ユーザによる参照のためパーソナルコンピューティング機器のディスプレイに表示するステップであって、前記パーソナルコンピューティング機器で実行される認証アプリケーションが、前記取得した前記取引データを前記パーソナルコンピューティング機器の前記ディスプレイの取引データ提示エリアに表示する、ステップと、
前記取引データに関連づけられた動的認証情報を取得するステップと、
前記動的認証情報を検証のため利用可能にするステップと、
前記パーソナルコンピューティング機器で実行中の他のアプリケーションのどのウィンドウも、前記認証アプリケーションの取引データ提示エリアを部分的または全体的に隠しまたは覆うことができないことを前記パーソナルコンピューティング機器において保証するステップと、
を前記パーソナルコンピューティング機器に実行させることを含
み、
前記取引データに関連づけられた前記動的認証情報を取得するステップは、前記取引データを、前記パーソナルコンピューティング機器に保存された秘密鍵を含む暗号鍵、または前記秘密鍵から生成される暗号鍵と暗号論的に結合することにより前記動的認証情報を生成することを含む、方法。
【請求項2】
前記取引データ提示エリアは、前記パーソナルコンピューティング機器の前記ディスプレイの前記認証アプリケーションの取引データ表示ウィンドウの全体または一部を含み、
前記パーソナルコンピューティング機器で実行中の他のアプリケーションの他のウィンドウが、前記認証アプリケーションの取引データ表示ウィンドウを部分的または全体的に隠しまたは覆うことができないことを前記パーソナルコンピューティング機器において保証するステップを更に含む、請求項1に記載の方法。
【請求項3】
前記パーソナルコンピューティング機器で実行中の他のアプリケーションの他のウィンドウが、前記取引データ表示ウィンドウを部分的または全体的に隠しまたは覆うことができないことを前記パーソナルコンピューティング機器において保証するステップは、前記認証アプリケーションが、前記パーソナルコンピューティング機器のオペレーティングシステムの1以上のオペレーティングシステム機能を呼び出して、前記取引データ表示ウィンドウが最前面のままであることを保証または強制するステップを含む、請求項2に記載の方法。
【請求項4】
前記認証アプリケーションが、前記1以上のオペレーティングシステム機能を呼び出して、前記取引データ表示ウィンドウが最前面のままであることを保証または強制するステップは、前記認証アプリケーションが、前記1以上のオペレーティングシステム機能を呼び出して、前記取引データ表示ウィンドウが前記取引データを表示している間、または前記認証アプリケーションが前記表示された前記取引データに対する前記ユーザの承認または拒否の指示を受信するまで、前記取引データ表示ウィンドウが最前面のままであることを保証または強制するステップを含む、請求項3に記載の方法。
【請求項5】
遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護するパーソナルコンピューティング機器であって、前記パーソナルコンピューティング機器は、前記ユーザに情報を表示するディスプレイと、前記ユーザから入力を受信するユーザ入力インタフェースと、オペレーティングシステムのソフトウェアおよび認証アプリケーションのソフトウェアを保存する記憶部と、オペレーティングシステムのソフトウェアおよび認証アプリケーションのソフトウェアを実行するデータ処理部とを備え、前記認証アプリケーションは前記パーソナルコンピューティング機器に、
取引データを取得させ、
前記取得した前記取引データを前記ユーザによる参照のため前記ディスプレイの取引データ提示エリアに表示させ、
前記取引データに関連づけられた動的認証情報を取得させ、
前記動的認証情報を検証のため利用可能にさせ、
前記パーソナルコンピューティング機器で実行中の他のアプリケーションのどのウィンドウも、前記認証アプリケーションの取引データ提示エリアを部分的または全体的に隠しまたは覆うことができないことを保証さ
せるように構成され、
前記取引データに関連づけられた前記動的認証情報を取得させることは、前記取引データを、前記パーソナルコンピューティング機器に保存された秘密鍵を含む暗号鍵、または前記秘密鍵から生成される暗号鍵と暗号論的に結合することにより前記動的認証情報を生成することを含む、パーソナルコンピューティング機器。
【請求項6】
前記取引データ提示エリアは、前記パーソナルコンピューティング機器の前記ディスプレイの前記認証アプリケーションの取引データ表示ウィンドウの全体または一部を含み、
前記認証アプリケーションは、前記パーソナルコンピューティング機器で実行中の他のアプリケーションの他のウィンドウが、前記認証アプリケーションの取引データ表示ウィンドウを部分的または全体的に隠しまたは覆うことができないことを、前記パーソナルコンピューティング機器に保証させるように更に構成される、請求項
5に記載のパーソナルコンピューティング機器。
【請求項7】
前記パーソナルコンピューティング機器で実行中の他のアプリケーションの他のウィンドウが、前記取引データ表示ウィンドウを部分的または全体的に隠しまたは覆うことができないことを保証することは、前記認証アプリケーションが、前記オペレーティングシステムのソフトウェアの1以上のオペレーティングシステム機能を呼び出して、前記取引データ表示ウィンドウが最前面のままであることを保証または強制する
ことを含む、請求項
6に記載のパーソナルコンピューティング機器。
【請求項8】
前記認証アプリケーションが、前記1以上のオペレーティングシステム機能を呼び出して、前記取引データ表示ウィンドウが最前面のままであることを保証または強制することは、前記認証アプリケーションが、前記1以上のオペレーティングシステム機能を呼び出して、前記取引データ表示ウィンドウが前記取引データを表示している間、または前記認証アプリケーションが前記表示された前記取引データに対する前記ユーザの承認または拒否の指示を前記ユーザ入力インタフェースを介して受信するまで、前記取引データ表示ウィンドウが最前面のままであることを保証または強制する
ことを含む、請求項
7に記載のパーソナルコンピューティング機器。
【請求項9】
遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護するためのシステムであって、前記遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバと、前記遠隔アクセス可能なコンピュータアプリケーションとの前記ユーザの情報交換を許可するためのアクセス機器と、前記遠隔アクセス可能なコンピュータアプリケーションの取引データに関連づけられた動的認証情報の妥当性を検証する認証情報検証サーバと、前記ユーザに情報を表示するディスプレイ、前記ユーザから入力を受信するユーザ入力インタフェース、オペレーティングシステムのソフトウェアおよび認証アプリケーションのソフトウェアを保存する記憶部、および、前記オペレーティングシステムのソフトウェアと前記認証アプリケーションのソフトウェアとを実行するデータ処理部とを備えるパーソナルコンピューティング機器とを備え、前記認証アプリケーションは前記パーソナルコンピューティング機器に、
前記取引データを取得させ、
前記取得した前記取引データを前記ユーザによる参照のため前記ディスプレイの取引データ提示エリアに表示させ、
前記取引データに関連づけられた前記動的認証情報を取得させ、
前記動的認証情報を検証のため利用可能にさせ、
前記パーソナルコンピューティング機器で実行中の他のアプリケーションのどのウィンドウも、前記認証アプリケーションの取引データ提示エリアを部分的または全体的に隠しまたは覆うことができないことを保証さ
せるように構成され、
前記取引データに関連づけられた前記動的認証情報を取得させることは、前記取引データを、前記パーソナルコンピューティング機器に保存された秘密鍵を含む暗号鍵、または前記秘密鍵から生成される暗号鍵と暗号論的に結合することにより前記動的認証情報を生成することを含む、システム。
【請求項10】
前記取引データ提示エリアは、前記パーソナルコンピューティング機器の前記ディスプレイの前記認証アプリケーションの取引データ表示ウィンドウの全体または一部を含み、
前記認証アプリケーションは、前記パーソナルコンピューティング機器で実行中の他のアプリケーションの他のウィンドウが、前記認証アプリケーションの取引データ表示ウィンドウを部分的または全体的に隠しまたは覆うことができないことを、前記パーソナルコンピューティング機器に保証させるように更に構成される、請求項
9に記載のシステム。
【請求項11】
前記パーソナルコンピューティング機器で実行中の他のアプリケーションの他のウィンドウが、前記取引データ表示ウィンドウを部分的または全体的に隠しまたは覆うことができないことを保証することは、前記認証アプリケーションが、前記オペレーティングシステムのソフトウェアの1以上のオペレーティングシステム機能を呼び出して、前記取引データ表示ウィンドウが最前面のままであることを保証または強制する
ことを含む、請求項
10に記載のシステム。
【請求項12】
前記認証アプリケーションが、前記1以上のオペレーティングシステム機能を呼び出して、前記取引データ表示ウィンドウが最前面のままであることを保証または強制することは、前記認証アプリケーションが、前記1以上のオペレーティングシステム機能を呼び出して、前記取引データ表示ウィンドウが前記取引データを表示している間、または前記認証アプリケーションが前記表示された前記取引データに対する前記ユーザの承認または拒否の指示を前記ユーザ入力インタフェースを介して受信するまで、前記取引データ表示ウィンドウが最前面のままであることを保証または強制する
ことを含む、請求項
11に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2015年9月21日に出願された、「A MULTI-USER STRONG AUTHENTICATION TOKEN(マルチユーザ厳密認証トークン)」という名称の米国仮出願第62/221,343号に関連してその利益を主張するものであり、その内容は参照によりここに援用される。
【0002】
本発明は、コンピュータおよびアプリケーションへの遠隔アクセスおよびコンピュータネットワークを介した遠隔取引の保護に関する。より具体的には、本発明は、スマートフォンなどのモバイル機器における認証アプリケーションに対する新しい形式の攻撃に対抗するための方法および装置に関する。
【背景技術】
【0003】
コンピュータシステムおよびアプリケーションのリモートアクセスが人気を得るにつれて、インターネットなどの公衆ネットワークを介して遠隔アクセスされる取引の数および種類は、劇的に増加してきている。この人気は、セキュリティに対する需要を明確なものとし、特に、アプリケーションに遠隔アクセスする人が自ら名乗るその人であることを保証する方法、遠隔で実行される取引が正規の人により開始されたものであることを保証する方法、そして取引データはアプリケーションサーバに受信される前に変更されていないことを保証する方法、に対する需要を明確なものとしている。
【0004】
遠隔アプリケーションへのアクセスを保護する1つの方法に、ユーザのスマートフォンなどのユーザのパーソナル機器における認証アプリケーションの使用がある。場合によっては、こうした認証アプリケーションは、認証情報を動的に生成するよう適応されている。場合によっては、これらの動的認証情報は、ユーザがアクセスしており保護の必要な遠隔アプリケーションにユーザが転送できるよう、ユーザのパーソナル機器において、例えば英数字の文字列の形式でユーザに提示される。これと異なり、認証アプリケーションは、生成された動的認証情報を直接(例えばユーザのパーソナル機器により確立されたインターネット接続を用いて)遠隔アプリケーションに送信してもよい。動的認証情報を受信すると遠隔アプリケーションは、ユーザまたはユーザのパーソナル機器から受信した動的認証情報を検証し、受信した動的認証情報の検証に成功したことを条件に、ユーザによるアクセスを許可する。
【0005】
場合によっては、ユーザは、遠隔アプリケーションに取引を送信しようとする。この場合遠隔アプリケーションは、ユーザに、パーソナル機器上の認証アプリケーションにより動的認証情報を生成し、その動的認証情報を遠隔アプリケーションに提供することを要求することがある。そして、遠隔アプリケーションは、ユーザから受信した動的認証情報を検証し、受信した動的認証情報の検証に成功したことを条件として取引を承認する。
【0006】
動的認証情報が、取引を特徴づける取引データに暗号論的に関連づけられている場合、その動的認証情報は、署名または取引データ署名とも称される。
【0007】
場合によっては、認証アプリケーションは、取引データを取得してユーザに提示し、これらの取引データをユーザが検証できるようにしてもよい。場合によっては、認証アプリケーションは、ユーザに取引データを提示し、ユーザに提示された取引データの承認を求め、ユーザが提示された取引データを承認した場合のみ動的認証情報またはこれらの取引データの署名を生成し表示するようにしてもよい。場合によっては、認証アプリケーションは、明示的な承認を要求することなく動的認証情報を生成し、例えば、情報の生成の対象となる取引データを、生成された動的認証情報とともにユーザに提示し、ユーザが取引データの正否を検証してその検証に基づいて生成された動的認証情報を転送するか否かを判断することができるようにしてよい。
【0008】
場合によっては、ユーザは、アクセス装置を用いて遠隔アプリケーションにアクセスし情報交換してよい。例えばユーザは、遠隔アプリケーションをホスティングする遠隔サーバコンピュータにインターネットなどのネットワークを介して接続された、パーソナルコンピュータ(PC)またはラップトップなどのコンピューティング機器を用いてよい。ユーザは、アクセス機器を用いて遠隔アプリケーションに取引を送信してよい。この場合、攻撃者は、例えば中間者(man-in-the-middle)またはブラウザ内(man-in-the-browser)攻撃により(例えばユーザのPCまたはラップトップにインストールされたマルウェアを使用して)干渉を試み、ユーザの意図した正規の取引データを不正な取引データに置き換えようとする。例えば、ユーザがインターネットバンキングアプリケーションにアクセスしていて送金要求を送信する場合、攻撃者は、意図される振込先口座番号を、攻撃者に関連する不正な口座番号で置き換えようとするかもしれない。
【0009】
このような攻撃に対する防御のため、遠隔アプリケーションは、ユーザが遠隔アプリケーションにアクセスするために使用しているアクセス機器とは異なる、ユーザの認証機器に、受信した取引データを送信してよい。認証機器は、ユーザは遠隔アプリケーションが受信したデータを検証することができるよう、遠隔アプリケーションから受信した取引データをユーザに提示してよい。認証機器はまた、提示された取引データに関連づけ、または結びつけられる動的認証情報を生成しユーザに提示してもよい。この場合、ユーザは、ユーザによる取引データの承認の証拠として遠隔アプリケーションに動的認証情報を転送してよい。
【0010】
もしも攻撃者が、正規ユーザがアクセス機器を用いて遠隔アプリケーションに送信しようとしていた実際の取引データを不正なデータで置き換えたとすると、遠隔アプリケーションはこれらの不正なデータを受信してユーザの認証機器にこれらの不正なデータを送信することになる。認証機器は、ユーザによる検証のためこれらの不正なデータを提示する。提示されたデータの検証において、ユーザは、提示されたデータと、ユーザが実際に遠隔アプリケーションに送信しようとしていた取引の実データとの相違に気付き、(認証機器が対応する動的認証情報を生成することができない)不正データを拒否し、または、(認証機器が何らか認証情報を生成して生成された認証情報を受信した取引データとともにユーザに提示した場合には)生成された認証情報を転送しないようにことができる。どちらにしても、遠隔アプリケーションが不正データに適合する認証情報を受信することはなく、不正な取引は承認されない。攻撃者はこのことを予測し、ユーザが送信した正規データとともに遠隔アプリケーションがユーザの認証機器に送信して認証機器での検証を受けることとなる(不正の)確認データを再置き換えするかもしれない。しかし、もし動的認証情報が取引データと暗号論的に結びつけられていれば(例えば、認証機器が遠隔アプリケーションから受信しユーザに提示された確認データに基づき暗号書面を生成するならば)、これも検出可能である。より具体的には、受信した認証情報を検証するために、遠隔アプリケーションは、検証プロセスにおいて、攻撃者から最初に受信した(ユーザが送信しようとしたデータの代わりに攻撃者が遠隔アプリケーションに送信した)不正データを使用する。しかしこの場合、動的認証情報は、遠隔アプリケーションが認証機器に送信しようとした確認データではなく、攻撃者がユーザの認証機器に提供した再置き換えデータに暗号論的に結びつけられており、動的認証情報の検証は失敗することになる。
【0011】
場合によっては、ユーザの認証機器は、ユーザに関連づけられたパーソナル機器であってよい。場合によっては、ユーザの認証機器は、上述の認証およびデータ書面機能専用のハードウェア機器であってよい。また、場合によっては、ユーザの認証機器は、他の多数のアプリケーションの中で認証アプリケーションもサポート可能な、パーソナル多機能機器であってよい。認証アプリが装備されたユーザのスマートフォンまたはタブレットコンピュータは、こうしたパーソナル多機能機器の例である。
【0012】
ここでの発明の背景の詳解は、発明の前後関係の説明のため記載されている。このことは、ここまで詳解した内容が本出願の優先日において出版され、知られ、または一般的知識となっていたことの自認とされるものではない。
【発明の概要】
【発明が解決しようとする課題】
【0013】
上述したセキュリティ解決策が様々な中間者攻撃を阻止するのに大きな役割を果すところ、この解決策は、一方で遠隔アプリケーションから受信した確認データの認証機器によるユーザへの実際の表現と他方で対応する動的認証情報の認証機器による生成との間の結びつきを遮断するような認証機器の操作を、攻撃者はすることができないとの前提に依存している。これは、専用ハードウェアの認証機器においては合理的な前提である。しかし、典型的なスマートフォンやタブレットコンピュータといった、機器の機能を拡充するための追加ソフトウェアをユーザがインストールすることのできるオープンなオペレーティングシステムを有する多目的コンピューティング機器においては、より疑問の余地がある。
【0014】
後者の場合、攻撃者がユーザの認証機器への何らかのマルウェアのインストールに成功し、ユーザが検証のため認証機器上で見るために入手したデータが、認証機器の認証アプリケーションが遠隔アプリケーションから受信し、認証機器が動的認証情報を生成するために用いる確認データと異なることが考えられる。この場合、攻撃者は、認証アプリケーションが実際には遠隔アプリケーションが現実に受信し認証機器に確認データとして送信した不正取引データを処理しているにもかかわらず、遠隔アプリケーションに認識されている取引データが、ユーザが最初に送信しようとしていた取引にまさに対応するものであるとユーザに信じさせることに成功するかもしれない。
【0015】
例えば、スマートフォンまたはタブレットのプラットフォームによっては、後述する「オーバーレイ攻撃(an overlay attack)」とも呼ばれる攻撃を仕掛けることができるかもしれない。ユーザの認証機器の認証アプリケーションが検証のためユーザに認証データを、例えば認証アプリケーションのあるウィンドウに提示すると、あるマルウェアが、認証アプリケーションにより提示される現実の確認データが隠されてユーザから見えないように、そしてユーザがその代わりにマルウェアウィンドウに表示されたデータ、例えばユーザが見るものと考えている最初の取引データを見るように、ユーザによる検証/確認のため取引データを提示するために用いられる認証ウィンドウの領域の上にマルウェアウィンドウを即時に配置するかもしれない。この攻撃が慎重に実行されると、ユーザはこのタイプの攻撃に気づくことができないかもしれない。このタイプの攻撃はオーバーレイ攻撃とも呼ばれ、認証ウィンドウの上に配置されるマルウェアウィンドウはオーバーレイウィンドウとも呼ばれる。
【0016】
このようなオーバーレイ攻撃を阻止するための解決策が求められている。
【課題を解決するための手段】
【0017】
本発明は、認証機器のディスプレイおよび/または入力インタフェースを、上述のように、完全にまたはユーザが少なくとも何か問題があることに気づくことなく、オーバーレイ攻撃を仕掛けることができないように、または少なくとも困難にすることで、オーバーレイ攻撃を実行することができないよう、または、ユーザが視覚的な兆候によりオーバーレイ攻撃の存在の明確な警告を受けるよう、保証することを目的とする。
【0018】
第1実施形態では、認証機器の認証アプリケーションは、オーバーレイ攻撃を積極的に不能にするよう適応されてよい。ある実施形態で、認証プログラムは、認証ウィンドウが他のウィンドウにより覆われているか否かを検出するよう適応されてよく、認証アプリケーションのウィンドウが他のウィンドウにより覆われていることを検出すると適切な処置をとるよう適応されてよい。ある実施形態で、認証アプリケーションは、認証アプリケーションにより生成されユーザに提示される情報を含むウィンドウが常に最前面に配置され、情報がオーバーレイウィンドウにより覆われないように適応されてよい。認証アプリケーションは、認証アプリケーションが動作しているコンピューティング機器のオペレーティングシステムの1以上の適切なオペレーティングシステムを呼び出すことにより、上記を実行してもよい。例えば、ある実施形態で、認証機器は、電子コンシューマ機器(例えばスマートフォンまたはタブレットコンピュータ)などの電子機器であってよい。認証機器は、オペレーティングシステム(例えばアンドロイド(Android(登録商標))またはiOS)を実行し、認証アプリケーションは、認証機器にインストールされるソフトウェアであってよく、認証機器のメモリに保存され、認証機器のマイクロプロセッサで実行されてよい。ある実施形態で、認証機器における認証アプリケーションは、認証アプリケーションのウィンドウが他のウィンドウに覆われているか否かを認証アプリケーションが判定できるようにする1以上の機能をオペレーティングシステムから呼び出してよい。ある実施形態で、認証機器における認証アプリケーションは、認証アプリケーションのウィンドウが他のウィンドウに覆われている場合に、認証アプリケーションによるユーザ入力の受け取りを禁止する1以上の機能をオペレーティングシステムから呼び出してよい。
【0019】
ここで用いた「機能をオペレーティングシステムから呼び出し」という用語は、アプリケーションおよびオペレーティングシステムの情報交換に影響を及ぼす属性の値を設定することを含む。
【0020】
第2実施形態では、認証アプリケーションは、オーバーレイの存在により自動的にユーザが動的認証情報を取得できないようにするよう適応されてよい。これは、ある実施形態では、認証アプリケーションがオーバーレイウィンドウの存在を実際に検出することなく実現可能である。例えば、ある実施形態では、認証アプリケーションは、ユーザに取引データを提示し、対応する動的認証情報を生成する機能と別に、ユーザが動的認証情報を取得するのに必須な他の機能(例えばユーザに動的認証情報を提示する機能、または、提示された取引データの承認指示をユーザから取得する機能)を有してよい。ある実施形態では、認証データによる取引データのユーザへの提示は、ユーザが動的認証情報を取得するのに必須な他の機能と連携し、認証アプリケーションにより提示される認証データを隠すオーバーレイウィンドウの存在がこうした他の機能を必然的に妨害して、こうした他の機能が動作して目的を達することを自動的に阻止するようにしてもよい。
【0021】
第3実施形態では、認証アプリケーションは、オーバーレイウィンドウが存在すると、オーバーレイウィンドウが存在することをユーザに明確に示す効果を奏することとなる視覚的な異常を自動的に生じるように適応されてよい。例えば、こうした視覚的な異常は、認証ウィンドウのオーバーレイウィンドウとの境界における背景(例えば特定の視覚的パターン)の不連続であってよい。このような明確で予期せぬ不連続が存在により、ユーザは必然的にオーバーレイウィンドウの存在の警告を受ける。
【0022】
これらの様々な実施形態の詳細は、以下に詳述される。
【0023】
取引データ提示エリアが覆われているか否かの検出
【0024】
ある実施形態では、認証アプリケーションは、認証アプリケーションの取引データ提示エリア、すなわち、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが、例えば他のアプリケーションのウィンドウにより部分的にまたは完全に、覆われている、または覆われているようであるか否かを検出するよう適応されてよい。取引データ提示エリア(認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリア)が他のウィンドウにより覆われている場合、これは認証アプリケーションがオーバーレイ攻撃の対象となっていることを示すものかもしれない。ある実施形態では、認証アプリケーションは、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが他のアプリケーションの他のウィンドウにより部分的にまたは完全に覆われていることを認証アプリケーションが検出した場合に、オーバーレイ攻撃を阻止し得る対策を取るよう適応されてよい。ある実施形態では、認証アプリケーションは、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが他のアプリケーションの他のウィンドウにより部分的にまたは完全に覆われていることを認証アプリケーションが検出した場合に、通常の動作モードに代えてセーフモードに移行するよう適応されてよい。
【0025】
例えば、ある実施形態では、認証アプリケーションは、受信または所得した取引データに対して動的認証情報(例えば署名)を生成するよう適応されてよい。通常の動作モードにおいて、認証アプリケーションは生成された動的認証情報を取引データと同時に表示してよい。しかし、認証アプリケーションが、取引データ提示エリア、すなわち自身のウィンドウまたは表示エリア、またはより具体的には取引データを表示するために用いるエリアが、部分的にまたは完全に、覆われている、または覆われているようであることを検出した場合、認証アプリケーションは、生成した動的認証情報の表示を開始できない、または停止するセーフモードに移行してよい。
【0026】
ある実施形態では、認証は、参照するユーザのために認証アプリケーションが取引データを表示し、表示された取引データのユーザによる承認指示を受信した後にのみ、一連の取引データに対応する動的認証情報の生成および/または表示を行うよう適応されてよい。ある実施形態では、認証アプリケーションは、このような承認指示のための機構を、通常動作モードのときにユーザに提供してよい。例えば、ある実施形態では、認証アプリケーションは、認証アプリケーションが通常動作モードのときに、認証アプリケーションのOKボタンにタッチすることによって取引データの承認をユーザが指示できるようにしてよい。ある実施形態では、認証アプリケーションが、自身のウィンドウまたは表示エリア、またはより具体的には取引データを表示するために用いるエリアが、部分的にまたは完全に、覆われている、または覆われているようであることを検出した場合、認証アプリケーションは、ユーザが取引データを承認することのできる機構を認証アプリケーションが無効にする、または、ユーザの承認を認証アプリケーションが無視または拒否するセーフモードに移行してよい。
【0027】
ある実施形態では、認証アプリケーションは、オペレーティングシステムの1以上の機能を呼び出して(またはオペレーティングシステムが使用する属性の値を設定して)、認証プログラムのウィンドウが他のウィンドウによって完全にまたは部分的に覆われた場合に、オペレーティングシステムが認証アプリケーションにユーザの所定の入力を渡さないようにしてもよい。例えば、ある実施形態では、認証アプリケーションが参照のためユーザに取引データを表示し、認証アプリケーションが表示した取引データへのユーザの承認を指示するためにユーザがタッチするOKボタンも提供してよい。ユーザがOKボタンにタッチすると、認証アプリケーションは取引データに対応する動的認証情報を生成し表示してよい。ある実施形態では、認証アプリケーションは、オペレーティングシステムの1以上の機能を呼び出して(またはオペレーティングシステムが使用する属性の値を設定して)、認証アプリケーションのウィンドウが他のウィンドウによって完全にまたは部分的に覆われた場合に、OKボタンへのタッチを破棄し、または、認証アプリケーションに渡さないようにしてよい。例えば、Android 2.3またはそれ以降のオペレーティングシステムで動作している認証アプリケーションは、AndroidのViewクラスの「filterTouchesWhenObscured」属性を設定してよい。このようにすると、認証アプリケーションは、認証ウィンドウが他のウィンドウに覆われていればいつでもタッチを破棄する。
【0028】
ある実施形態では、認証アプリケーションは、取引データ提示エリアが、例えば他のウィンドウにより、完全にまたは部分的に覆われている(または、覆われているようである、または覆われているように見える)か否かを検出するよう適応されてよい。ある実施形態では、認証アプリケーションは、取引データ提示エリアが完全にまたは部分的に覆われている(または、覆われているようである、または覆われているように見える)か否かを検証してよく、この検証を、例えば認証アプリケーションが動作する装置のオペレーティングシステムの1以上の適切な機能を呼び出すことにより実行してもよい。このような場合、取引データ提示エリアが完全にまた部分的に覆われている(または覆われているようである、または覆われているように見える)と認証アプリケーションが結論を出すと、認証アプリケーションは、提示された取引データに対するユーザの承認を受け入れないように、または、(例えばOKボタンを無効にすることにより)提示された取引データをユーザが受け入れることができないように、または、取引データについて生成され、通常は取引データとともにユーザに提示される動的認証情報を表示しないように適応されてよい。取引の承認をユーザが指示するのに通常OKボタンが用いられる場合においては、上述した承認機構の無効化は、OKボタンを無反応状態にして「グレイアウト」(不活性)状態で表示するものであってよい。このようにすると、企てられた攻撃を能動的に無効状態にするのに加えて、異常(企てられた可能性のあるオーバーレイ攻撃)の存在の明確な視覚的表示を提供することとなる。
【0029】
ある実施形態では、取引データ提示エリアが完全にまたは部分的に覆われている状況ではなくなったことを検出した後に、認証アプリケーションはセーフモードから通常動作モードに復帰し、すなわち、隠蔽が発生していなかったように再び動作するようにしてもよい。ある実施形態では、認証アプリケーションは、認証アプリケーションが隠蔽を検出しない遅延時間の後に、通常動作モードに復帰するよう適応されてよい。この遅延時間は、例えば5秒または10秒であってよい。遅延時間は、一般には1秒と30秒との間の持続時間を有する。ある実施形態では、認証アプリケーションは、遅延時間中またはその後に再び隠蔽が発生していることを認証アプリケーションが検出した場合に、認証アプリケーションが再びセーフモードに移行するよう適応されてよい。隠蔽が存在しなくなったことを認証アプリケーションが検出した後、認証アプリケーションがセーフモードから通常動作モードに復帰するまでにこうした遅延時間を適用する効果は、認証アプリケーションの取引データ提示エリアへのオーバーレイを非常に短い(認証アプリケーションが通常動作モードに再び復帰するには十分なくらいの長さの)時間で終えるようなオーバーレイ攻撃への対策になるということである。
【0030】
取引データ提示エリアが覆われていないかどうかの検出
【0031】
ある実施形態では、認証アプリケーションは、デフォルト設定でセーフモードであってよく、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが覆われていないかどうかを検出するよう適応されてよく、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが覆われていないと検出された後に、セーフモードから通常動作モードに切り替えるよう適応されてよい。
【0032】
ある実施形態では、認証アプリケーションは、スマートフォンまたはタブレットコンピュータといった認証機器で動作していてよい。ある実施形態では、認証機器は、例えばAndroidまたはiOSといったオペレーティングシステムを有してよい。ある実施形態では、認証アプリケーションが動作している認証機器のオペレーティングシステムは、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリアが覆われているか覆われていないかを認証アプリケーションが点検または検出できるようにする機能をサポートしてよく、認証アプリケーションは、認証アプリケーションのウィンドウまたは認証アプリケーション表示エリア、または認証アプリケーションが取引データを表示するために用いるディスプレイのエリア覆われているか覆われていないかを検出するためにオペレーティングシステムのこの機能を使用するよう適応されてよく、認証アプリケーションは、その情報を上述のように使用するよう適応されてよい。
【0033】
取引データ提示エリアの強制最前面化
【0034】
ある実施形態では、認証アプリケーションが動作している認証機器のオペレーティングシステムは、認証アプリケーションが取引データを表示するために用いる認証アプリケーションのウィンドウを認証アプリケーションが最前面となるよう強制する機能をサポートしてよく、認証アプリケーションは、認証アプリケーションが取引データを表示するために用いる認証アプリケーションのウィンドウを、取引データが表示されている間最前面となるよう強制し、認証アプリケーションが取引データを表示している間、他のウィンドウによって認証アプリケーションのウィンドウがオーバーレイされることがないように、オペレーティングシステムのこの機能を使用するよう適応されてよい。
【0035】
取引データの提示と認証情報の提示との連携
【0036】
ある実施形態では、認証アプリケーションは、取引データを、その取引データに対応して認証アプリケーションが生成する動的認証情報とともにユーザに提示してよい。ある実施形態では、認証アプリケーションは、取引データの提示を対応して生成された動的認証情報の提示から分離し、オーバーレイ攻撃が非常に困難または不可能であるようなやり方で、取引データと動的認証情報とをユーザに提示し、そうして認証アプリケーションが受信して動的認証情報の生成に使用しユーザに提示しようとしていた(不正の)取引データをオーバーレイ攻撃が隠し、または、他のデータ、すなわちユーザが期待しておりオーバーレイ攻撃がユーザを欺くためにユーザに提示したいと望むデータによって覆い、最終的にユーザに、正しい取引データが認証アプリケーションにより動的認証情報を生成するために用いられていると信じさせることを、非常に困難または不可能とする。例えば、ある実施形態では、認証アプリケーションは、取引データと生成された動的認証情報とが、ディスプレイの同一エリアを占めるように提示してもよい。ある実施形態では、認証アプリケーションは、例えば、取引データと生成された動的認証情報とを、重複するような、または重なり合うようなやり方で提示してよい。ある実施形態では、提示された取引認証データの位置に対する提示された動的認証情報の位置は、セッションごとに、および/または、認証アプリケーションのインスタンスまたはトークンごとに、好ましくは予測不可能に変動してよい。ある実施形態では、認証アプリケーションは、認証データと動的認証情報とを共に、例えば重複した、または混ざり合った、しかし、好ましくはユーザが容易に取引データを動的認証情報から区別できるようなやり方で、提示してよい。例えば、認証アプケーションは取引データを表す数字または文字を、動的認証情報を表す数字または文字とは異なる方法で提示してよい。例えば、認証アプリケーションは、動的認証情報を表す文字または数字と異なるフォントタイプ、フォントサイズ、および/または、フォント色を、取引データを表す文字または数字に用いてよい。ある実施形態では、取引データおよび/または動的認証情報に用いられる1つのまたは複数のフォントの特徴は、認証アプリケーションにより選択されてよい。また、ある実施形態では、これらのフォントの特徴は、例えばユーザ入力を介して、ユーザにより選択されてよい。フォントの特徴は、メモリに、例えば認証アプリケーションのみアクセス可能な安全な場所に、保存されてよい。
【0037】
取引データと認証情報との間の異なる展開(evolution)に伴う動的要素
【0038】
ある実施形態では、取引データおよび/または生成された動的認証情報の提示の外観は、時間とともに変動してよい。ある実施形態では、この時間に依存した外観の変動は、表示されている取引データと生成された動的認証情報との相違を強調するようなものであってよい。ある実施形態では、認証アプリケーションは、この外観を漸進的または連続的なやり方で変動させてよい。ある実施形態では、認証アプリケーションは、この外観を突然または不連続的なやり方で変動させてよい。例えば、ある実施形態で、認証アプリケーションが取引データと生成された動的認証情報とを表示するために用いるフォントの特徴は、時間とともに変わってよい。例えば、フォントサイズまたはフォント色が時間とともに変わってよい。ある実施形態で、認証アプリケーションは、生成された動的認証情報を表示するために用いられる1つのまたは複数のフォントの特徴を、取引データを表示するために用いられる1つのまたは複数のフォントの特徴とは独立に変更してよい。ある実施形態では、認証アプリケーションは、取引データと生成された動的認証情報の、他のウィンドウおよび/または認証アプリケーションの表示ウィンドウに対する相対的な位置を、変動させてよい。ある実施形態で、フォントの特徴はユーザの選択に基づいてよい。
【0039】
生成された認証情報の可視化または可視化状態維持のためのユーザの積極的関与の要求
【0040】
ある実施形態では、認証アプリケーションは、ある取引データについて動的認証情報を生成してよく、動的認証情報の生成の元となった取引データをユーザに表示してよい。認証アプリケーションは、ユーザが認証アプリケーションに特定の方法で関与した場合に、ユーザに動的認証情報を表示するよう適応されてよい。例えば、ある実施形態では、認証アプリケーションは、タッチスクリーンを有する、例えばスマートフォンやタブレットコンピュータといったコンピューティングプラットフォームで動作していてよく、認証アプリケーションは、動的認証情報を生成して対応する取引データを表示してよく、ユーザは、取引データを表示するエリアにタッチし、取引データをスワイプしてずらし、生成された動的認証情報を見えるようにする必要があってよい。例えば、ある実施形態では、認証アプリケーションは、例えば、取引データにタッチし横にスライドさせることによってユーザが開く、または取り除く必要のある、ドアまたはカーテンの表現の上に取引データを表示し、開かれた、またはスライドによりずらされたドアまたはカーテンの後ろから生成された動的認証情報が現れるようにしてよい。例えば、ある実施形態では、取引データを表示するエリアまたはペインが2つの部分を有し、または2分割されていてよい。このとき、一見すると取引データのペインの後ろに隠れている生成された動的認証情報が可視化されるために、ユーザは、それぞれの部分に別の指で触れて、取引データ表示エリアの2つの部分が離れるように2本の指を動かし/スライドさせなければならない。ある実施形態では、認証アプリケーションと認証アプリケーションが動作しているコンピューティングプラットフォームは、認証アプリケーションが他のアプリケーションの他のウィンドウにより隠され、または覆われていない場合にのみ、このようなユーザのタッチ関与を認証アプリケーションが受信できるよう適応されてよい。こうすることにより、取引データのペインが他のウィンドウによりオーバーレイされている場合に、ユーザは認証アプリケーションと情報交換することができないため、認証アプリケーションがユーザに生成された動的認証情報を明かすことを確実になくすことができる。
【0041】
オーバーレイの存在のユーザへの可視化
【0042】
ある実施形態では、認証アプリケーションは、取引データを表示するアプリケーションウィンドウのエリアにマッチするオーバーレイをマルウェアアプリケーションが提供することが難しくなるようなやり方で、取引データを表示するよう適合されてよい。オーバーレイウィンドウが取引データを表示する認証ウィンドウのエリアにマッチしない場合、認証アプリケーションウィンドウの全体的な外観に異常が生じ、ユーザはオーバーレイウィンドウの存在の警告を受け取り、このまま、例えば認証アプリケーションにより生成され表示された動的認証情報のリモートアプリケーションへの転送を、進めるのが安全でないと結論づけることができる。
【0043】
取引データ提示エリアの変動
【0044】
例えば、ある実施形態では、取引データを表示する認証ウィンドウのエリアが、好ましくは予測不可能なやり方で取引ごとに変動する、位置、大きさ、および/または、形といった視覚的に識別可能な特徴を有して表示されるように、認証アプリケーションが適応されてよい。ある実施形態では、取引データを表示する認証ウィンドウのエリアは、好ましくは予測不可能なやり方で、認証機器または認証アプリケーションのインスタンスごとに変動する、位置、大きさ、および/または、形といった視覚的に識別可能な特徴を有してよい。位置、大きさ、および/または、形といった、取引データを表示する認証アプリケーションのウィンドウの視覚的に識別可能な特徴がこのように変動すると、マルウェアのオーバーレイウィンドウが取引データを表示する認証アプリケーションのウィンドウのエリアにマッチせず、隠す領域が大きすぎ、または小さすぎる可能性が大きくなり、ユーザは、何かが正しくないという事実を示す明確な視覚的手掛りを見つける機会を得ることができる。
【0045】
ある実施形態では、認証アプリケーションの取引データ提示エリアの位置、大きさ、および/または、形は、ある認証機器または認証アプリのインスタンスにおけるある取引でのデータ提示中に、予測不可能なやり方で動的に変わってよい。こうすることにより、オーバーレイ攻撃の実行はずっと困難になる。ユーザに見つからないようにするには、オーバーレイウィンドウを生成するマルウェアは、認証アプリケーションの取引データ提示エリアの変化し続ける位置、大きさ、および/または、形を、どうにかして連続的かつリアルタイムに追跡する必要がある。そうしなければ、ユーザは、オーバーレイウィンドウの存在を示す明確な視覚的手掛りを見つける機会を得ることになるからである。
【0046】
取引データ提示エリアのカスタマイズ
【0047】
ある実施形態では、取引データ提示エリアの全般的印象は、認証アプリケーションによってローカルに管理され、好ましくは他のアプリケーションからアクセスできないパラメータに基づいて、認証機器ごとに、好ましくは予測不可能なやり方で、異なっていてよい。マルウェアのオーバーレイウィンドウが(ユーザの認証機器における認証アプリケーションのインスタンスの特定の全般的印象によるユーザ体験に基づいて)ユーザの予測するものと異なる全般的印象を示している場合、このことによりユーザは何かが正しくないという警告を受けることができる。例えば、ある実施形態において、取引データを提示するためのフォントタイプ、フォントサイズ、および/または、フォント色は、認証機器ごとに異なってよい。他の実施形態では、取引データは、例えば個別化され容易に識別可能な複雑な絵または写真のような高度にカスタマイズされた背景の上に表示されてよく、ある実施形態ではユーザがそのような背景を、例えばユーザ入力を介して自ら選択し、ユーザによる選択の入力はメモリに保存されてよい。この背景が認証機器ごとに(好ましくは予測不可能なやり方で)異なっている場合、現実の認証アプリケーションからユーザが期待する同じ背景とともにオーバーレイウィンドウを提示することが、マルウェアアプリケーションに可能とは考えにくい。
【0048】
取引データ提示エリアとその周囲との間の連続性
【0049】
ある実施形態では、取引データ提示エリアは認証アプリケーションウィンドウ全体の一部でしかなく、ユーザが認証アプリケーションの一見通常のユーザ体験を得ることができなくならないように、認証アプリケーションのウィンドウ全体をオーバーレイウィンドウがカバーすることは、できないかもしれない。ある実施形態では、認証アプリケーションは、ユーザが動的認証情報を見、または取得することができるよう、ユーザから常に可視、および/または、アクセス可能に維持される領域を有している。例えば、ある実施形態では、認証アプリケーションのウィンドウは取引データおよび対応する動的認証情報を同時に提示してよい。このような場合、ユーザが認証情報をリモートアプリケーションに転送することができなくなってしまうので、オーバーレイウィンドウは動的認証情報の提示を覆うことができず、そうしてマルウェアの目的を頓挫させることになる。他の例では、認証ウィンドウは、認証アプリケーションに提示された取引データを承認または確認するためにユーザが押すためのボタンを有してもよく、それによって認証アプリケーションは、ユーザがボタンの押下により取引データを承認した場合のみ、表示された取引データに対応する動的認証情報を生成し、および/または表示するよう適応されてよい。この場合でも、ユーザが承認の意思表示をすることができず動的認証情報が生成されなくなってしまうので、オーバーレイウィンドウは承認ボタンを覆うことができない。
【0050】
ある実施形態では、認証アプリケーションは、(オーバーレイウィンドウにより隠されることになる)認証ウィンドウの取引データ提示エリアと、必ずしもオーバーレイウィンドウに覆われるわけではない認証ウィンドウのエリアと、の間の視覚的連続性を生成することにより、認証ウィンドウの少なくとも一部をオーバーレイしないようにするこの要求を利用してよく、これによりオーバーレイウィンドウが存在すると必ず、またはおそらく、この視覚的連続性が乱れ、また視覚的不連続性が生じ、ユーザは容易に気付いて何かが正しくないことを識別することができる。オーバーレイ攻撃が妥当な合理性をもってユーザに見つからないようにするには、常にこのような視覚的不連続性を生じないようにしなければならない。以下に、オーバーレイ攻撃がこのような不連続性を生じないようにすることをより困難にするための認証プログラムの例を述べる。
【0051】
例えば、ある実施形態では、認証アプリケーションは認証ウィンドウに視覚的に知覚可能な特徴、例えば視覚的に知覚可能なパターンを適用してよく、これにより、認証ウィンドウを一部だけ覆うオーバーレイウィンドウが存在すると、必然的に、またはおそらく、この視覚的に知覚可能な特徴を妨げ、オーバーレイウィンドウの存在によってユーザが知覚可能な視覚的な断絶または不連続が生じ、異常としてユーザに認識されることになる。こうした視覚的に知覚可能な特徴は、静的なものであっても動的なものであってもよい。すなわち、ある実施形態では、この視覚的に知覚可能な特徴は、時間の関数として変動または展開してよい。ある実施形態では、この視覚的に知覚可能な特徴は、認証アプリケーションのインスタンスごとに変動してよい。ある実施形態では、この視覚的に知覚可能な特徴は、取引認証セッションごとに変動してよい。例えば、ある実施形態では、認証アプリケーションは取引データを背景の上に表示してよい。ある実施形態では、背景は、ユーザの目には所定の規則性または秩序を有し、同時に、他の可能な背景と識別するための所定の特徴を有する、視覚的パターンを有している。背景は、取引データを表示するために準備されたエリアを超えて延びていてよく、他のエリアまで延びていてもよい。さらに、背景は、例えば表示された取引データをユーザが確認するためのボタンを有するエリアまで延びていてよく、また、背景は、認証アプリが表示された取引データ上に生成した署名といった、認証アプリが表示された取引データについて生成した動的認証情報を表示するために認証アプリが用いるディスプレイのエリアまで延びてよい。パターンの不連続性が存在すると、ユーザはオーバーレイウィンドウの存在を示す明確な視覚的手掛かりを見出す機会を得ることができる。パターン自体は、例えば取引データを表示するエリアをオーバーレイするウィンドウによりユーザがパターンの不連続性を可能な限り容易に気付くようなものであるのが好ましい。
【0052】
ある実施形態では、背景は単に所定の色調に色付けられてよい。ある実施形態では、背景の色調は規則的な階調を有して(例えば背景の一端から他端にかけてある色から他の色に規則的なやり方で徐々に変わって)よい。
【0053】
ある実施形態では、パターンは平面の規則的または準規則的なタイル敷きであってよい。ある実施形態では、パターンは例えばらせん状であってよい。
【0054】
他の実施形態では、背景は、規則的または準規則的なパターンを表示するのではなく、ユーザにより認識できる、またはユーザにとって意味のある画像を表示してよい。例えば、ある実施形態では、背景は風景や顔の画像であってよい。
【0055】
ある実施形態では、認証アプリケーションが用いる背景は変動してよく、予測不能であってよい。ある実施形態では、認証アプリケーションに用いられる背景は、認証機器ごとに、または認証アプリのインスタンスごとに、変動してよい。ある実施形態では、特定の認証アプリまたは認証機器が用いる背景は、認証セッションごとに変動してよい。例えば、ある実施形態では、認証アプリは認証セッションごとに異なるタイルパターンおよび/または異なる色を用いてよい。ある実施形態では、それぞれ異なる認証アプリのインスタンスまたは認証機器は、それぞれ個別の画像を背景として用いるよう構成されてよい。ある実施形態では、この画像はユーザにより選択されてよい。例えば、ユーザは入力インタフェースを用いて特定の背景または複数の背景を選択し、ユーザの選択がメモリに保存されてよい。
【0056】
ある実施形態では、特定の認証セッションのために特定の認証アプリケーションが用いる背景が時間により変動してよい。すなわち、背景が時間的変化を有してよい。例えば、ある実施形態では、認証アプリケーションに用いられている背景の視覚的に知覚可能な特徴のいくつかは、認証アプリケーションがユーザに取引データを表示している時間に展開してよい。ある実施形態では、認証アプリケーションは、背景を突然に変更してよい。ある実施形態では、認証アプリケーションは、背景を徐々に変更してよい。
【0057】
ある実施形態では、認証アプリケーションは、背景に用いられる色を変更してよい。
【0058】
ある実施形態では、認証アプリケーションは、背景に用いられるパターンを変更してよい。例えば、ある実施形態では、背景は周期的なタイルパターンを有してよく、タイルの形状が時間によって変わってもよい。例えば、タイルの大きさが変わってよく、タイルの角度が変わってもよい。
【0059】
ある実施形態では、認証アプリケーションは、取引データを表示する間に背景を移動してよい。例えば、認証アプリケーションは背景を移し、または回転させてよい。
【0060】
ある実施形態では、認証アプリケーションは、時間によって変わるよう背景を変形させてよい。認証アプリケーションが背景に適用する変形は、ユーザにより識別され得る視覚的に知覚可能なパターンを有してよく、このパターンは、ユーザに知覚され得るように時間によって展開してよい。例えば、ある実施形態では、認証アプリケーションは変形の波または波紋(例えば圧縮および/または膨張の波または波紋)を背景の中で動かしてよい。ある実施形態では、こうした変形は、背景の一端から他端に動く直線的な波であってよい。ある実施形態では、変形の波は、認証ウィンドウ内にあってもなくてもよい原点を中心とする半径上であってよい。好ましくは変形は、オーバーレイウィンドウにより覆われる背景の部分およびオーバーレイウィンドウにより覆われない認証ウィンドウの背景の部分の両方で生じ、オーバーレイウィンドウの境界は変形パターンを横切るため、もしオーバーレイウィンドウが認証アプリケーションと同じ背景を模倣するだけでなく認証アプリケーションと同じ変形も模倣することができるのでなければ、ユーザはオーバーレイウィンドウの存在を示す明確な視覚的手掛かりを見出すことができる。
【0061】
ある実施形態では、認証アプリケーションは、背景を帯状の区画(水平、垂直、または斜めであってよい)に分割し、それぞれの区画が別々に展開してよい。例えば、それぞれの区画の背景の部分は、他の区画の動きと独立に変わってよい。ある実施形態では、認証アプリケーションは、認証ウィンドウの取引データ提示エリア(オーバーレイウィンドウに隠される)およびオーバーレイウィンドウに覆われる必要のない認証ウィンドウのエリアの背景に常に少なくとも1つの区画が存在するよう、区画の方向を選択してよい。こうすることにより、オーバーレイウィンドウの存在によって少なくともその区画では不連続が必ず発生することになり、ユーザはオーバーレイウィンドウの存在を喚起される。
【0062】
ある実施形態では、経時的変更自体の特徴が可変であってよい。こうした経時的変更自体の特徴は、例えば、認証機器または認証アプリケーションのインスタンスごと、および/または、認証セッションごと、および/または、特定の認証機器または認証アプリケーションのインスタンスにおける特定に認証セッションごとに、変わってよい。例えば、ある実施形態では背景が動き、背景の移動パラメータが可変であってよい。移動パラメータは、移動が平行移動または回転を含むか否か、平行移動または回転の方向、回転の中心、平行移動および/または回転の速度を含んでよい。ある実施形態では背景は時間によって変形し、変形のパラメータが可変であってよい。例えば変形の、速度、振幅または強さまたは方向が可変であってよく、また、波または波紋の、速度、振幅または強さ、波長または方向が可変であってよい。
【0063】
認証アプリケーションが用いる背景のこうした変動性、より具体的には予測不能な変動性は、ある時点で背景が有しているパターンをオーバーレイ攻撃が把握することを著しく困難にており、そのため、オーバーレイウィンドウがリアルタイムに背景を適応してオーバーレイウィンドウの背景がオーバーレイウィンドウにより覆われていない認証ウィンドウの背景の部分に切れ目なく適合するようにすることは難しい、もしくは不可能である。
【0064】
複合ソリューション
【0065】
ある実施形態では、上述したソリューションの2以上が複合的に適用されてよい。
【0066】
取引データの受信
【0067】
ある実施形態では、認証アプリケーションを実行している認証機器は、取引データを受信するよう適応されたデータ入力インタフェースを有してよい。ある実施形態では、認証アプリケーションは、取引データを取得し、取得した取引データを本出願の中で記載したように使用するために、例えば、取得した取引データをユーザに表示し、および/または、取得した取引データに対応する動的認証情報を生成するために、このデータ入力インタフェースを用いるよう適応されてよい。
【0068】
例えば、ある実施形態では、リモートアプリケーションにアクセスするためにユーザが使用しているアクセス機器がコード化された取引データを含む2次元画像を表示し、認証機器がカメラを有し、認証アプリケーションがこのカメラを用いしてアクセス機器のディスプレイに表示された2次元画像を撮像し、2次元画像をデコードして、本出願の中で記載したように使用するために、コード化された取引データを読み出すよう適応されてよい。
【0069】
ある実施形態では、リモートアプリケーションにアクセスするためにユーザが使用しているアクセス機器がコード化された取引データを含む一連の2次元画像を表示し、認証機器がカメラを有し、認証アプリケーションがこのカメラを用いしてアクセス機器のディスプレイに表示された一連の2次元画像から成る動画または一連の画像を作成し、一連の2次元画像をデコードして、本出願の中で記載したように使用するために、コード化された取引データを読み出すよう適応されてよい。
【0070】
ある実施形態では、リモートアプリケーションにアクセスするためにユーザが雌雄しているアクセス機器が取引データをエンコードした動画等を表示し、認証機器がカメラを有し、認証アプリケーションがこのカメラを用いしてアクセス機器のディスプレイに表示された動画等を録画し、録画された動画等をデコードして、本出願の中で記載したように使用するために、コード化された取引データを読み出すよう適応されてよい。
【0071】
例えば、ある実施形態では、機器は無線データ通信インタフェース(例えばスマートフォンまたはタブレットコンピュータにおける3Gまたは4Gの無線データインタフェース)を有してよく、認証アプリケーションは、この無線データ通信インタフェースを用いて、取引データを含むメッセージを受信し、メッセージをデコードして、本出願の中で記載したように使用するために、コード化された取引データを読み出すよう適応されてよい。
【0072】
動的認証情報の生成
【0073】
ある実施形態では、認証アプリケーションは、動的変数を暗号上の秘密と暗号化的に結合させることによって動的認証情報を生成するよう適応されてよい。ある実施形態では、認証アプリケーションは、動的変数を、認証アプリケーションのあるインスタンスに関連づけられた1以上の認証情報生成鍵を含む暗号上の秘密と暗号化的に結合させることによって動的認証情報を生成するよう適応されてよい。ある実施形態では、認証情報生成鍵は、インスタンスに関連づけられたデータの一部であってよい。ある実施形態では、認証アプリケーションは、インスタンスに関連づけられたデータを用いることにより、認証情報生成鍵の値を決定する。動的変数は、例えばリアルタイムクロック(例えば認証アプリケーションが動作しているコンピューティングプラットフォームの時計)の値といったトークンにより内部的に生成される値であってよく、また、認証アプリケーションのインスタンスに関連づけられ、例えば値を用いて動的認証情報が生成されるたびに認証アプリケーションのインスタンスによって加算(または減算)されるカウンタといった、現在の値の関数として自動的に更新されるデータの一部であるような、イベント関連変数の値であってよく、認証アプリケーションのインスタンスにより以前に生成され、そのインスタンスに関連づけられたデータの一部として保存された動的認証情報の値であってよい。動的変数は、アプリケーションサーバにより生成されるチャレンジ、または、上述のようにトークンに提供されており署名されることとなる取引データといった、認証アプリケーションのインスタンスにより受信される外部生成値であってもよい。動的変数は、内部生成値と外部生成値との組み合わせであってもよい。例えば、取引データの署名に対するリプレイアタックを防ぐために、トークンは、取引データと、時計、例えば認証アプリケーションが動作しているコンピューティングプラットフォームの時計により提供される時間値との組み合わせから成る動的変数を用いてもよい。認証アプリケーションが動的変数として内部生成値のみを用いる場合、動的変数は内部動的変数と呼ばれ、生成された動的認証情報は「ワンタイムパスワード」と呼ばれてよい。トークンが外部で生成されたチャレンジから成る動的変数を用いる場合、生成された動的認証情報は「レスポンス」と呼ばれてよい。トークンが取引データから成る動的認証情報を用いる場合、生成された動的認証情報は「取引データ署名」または単に短く「署名」と呼ばれてよい。
【0074】
サーバにより最初に生成された動的認証情報の復旧
【0075】
ある実施形態では、認証アプリケーションがユーザに表示する、または、検証ないしアプリケーションサーバに送信する実際の動的認証情報は、認証アプリケーションにより最初に生成されたものではない。そうではなく、動的認証情報は最初にいずれかのサーバ(検証サーバなど)により最初に生成され、認証機器に送信されてよい。例えば、動的認証情報は、動的認証情報が関連づけられる取引データから暗号関数により生成される電子署名として作成されてよく、乱数または疑似乱数の関数として生成され、例えばその動的認証情報が用いられる取引とともにデータベースに保存されてよい。例えば、ある実施形態では、サーバは、参照され承認される必要のある取引データに対応する動的認証情報を生成し、取引データと対応する動的認証情報とを含むメッセージを認証機器に送信してよい。認証機器における認証アプリケーションはメッセージを受信し、このメッセージから取引データと対応する動的認証情報とを読み出してよい。したがって、ある実施形態では、認証機器における認証アプリケーションの動的認証情報を生成する動作は、サーバで最初に作成された動的認証情報を含むメッセージの受信と、その後の取引データと対応する動的認証情報とを含むメッセージからの動的認証情報の抽出と、を含み、またはこれらにより構成されていてよい。
【0076】
例えば、ある実施形態では、サーバは参照され承認される必要のある取引データに対応する認証情報を生成し、取引データと対応する動的認証情報とを含むメッセージを認証機器に送信してよい。認証機器における認証アプリケーションは、メッセージを受信して取引データと対応する動的認証情報とをこのメッセージから読み出してよい。したがって、ある実施形態では、認証機器における認証アプリケーションの動的認証情報を生成する動作は、サーバで最初に作成された動的認証情報を含むメッセージの樹脂と、その後の受信したメッセージからの動的認証情報の抽出と、を含み、またはこれらにより構成されていてよい。
【0077】
機密性のため暗号化された動的認証情報
【0078】
このようなメッセージの中の動的認証情報を、メッセージを傍受してメッセージから動的認証情報を抽出しようとする中間者から防御するため、メッセージの中の動的認証情報の機密性を防御するための暗号技術が用いられてよい。例えば、ある実施形態では、メッセージの中の動的認証情報は暗号化され、認証アプリケーションが、受信したメッセージから動的認証情報を読み出す動作の一部として動的認証情報を復号化するよう適応されてよい。ある実施形態では、動的認証情報を含むメッセージが暗号化され、認証アプリケーションが、受信したメッセージから動的認証情報を読み出す動作の一部としてメッセージを復号化するよう適応されてよい。
【0079】
取引データに暗号論的に、例えば署名を通して、結合される動的認証情報
【0080】
このようなメッセージの中の動的認証情報を、メッセージを傍受してメッセージの中の動的認証情報に対応するメッセージの中の取引データを動的認証情報に対応しない他の取引データで置き換えようとする中間者から防御するため、メッセージに含まれる動的認証情報と取引データとの間のリンクまたは対応の完全性を防御するための暗号技術が用いられてよい。ある実施形態では、メッセージは取引データと対応する動的認証情報とに対する署名を含み、認証アプリケーションが、受信したメッセージから動的認証情報と取引データとを読み出す動作の一部として、メッセージからこの署名を抽出し、この抽出された署名を検証するよう適応されてよい。
【0081】
ある実施形態では、認証アプリケーションはユーザ(290)に生成された動的認証情報を提示するよう適応されてよい。ある実施形態では、ユーザは提示された動的認証情報を検証のためサーバ(220)に転送してよい。ある実施形態では、認証機器は、動的認証情報をユーザに視覚的方法で(例えばディスプレイを用いて)提示してよい。ある実施形態では、提示された動的認証情報は、文字列形式にコード化されていてよい。ある実施形態では、文字列は10進数の数字のみから成ってよい。ある実施形態では、文字列は英数文字を含んでよい。ある実施形態では、文字列は非アルファベット筆記体系の文字(例えば中国語や日本語の文字など)を含んでよい。
【0082】
ある実施形態では、認証機器または認証アプリケーションは、取引データに対する署名を生成するよう適応されてよい。ある実施形態では、認証機器または認証アプリケーションは、署名が生成された、または生成される取引データをユーザに表示し、認証機器または認証アプリケーションが署名を生成した、または生成する対象となる取引データの正しさを検証することができるようにしてよい。ある実施形態では、認証機器または認証アプリケーションは、取引データをユーザに表示してよく、ユーザは、表示された取引データを、(例えば認証アプリケーションのOKボタンにタッチまたはクリックすることにより)確認または承認しなければならず、これを条件として認証機器または認証アプリケーションは、表示され承認された取引データに対する署名および/または生成を行う。ある実施形態では
【0083】
ある実施形態では、認証アプリケーションを実行している認証機器は、動的認証情報を検証するために、生成された動的認証情報を自動的に、例えば遠隔アプリケーションをホスティングするアプリケーションサーバまたは認証情報生成サーバを含む遠隔サーバに送信するよう適応されてよい。ある実施形態では、認証アプリケーションを実行している認証機器は、遠隔サーバと直接または間接にデータ接続されてよい。例えば、ある実施形態では、認証アプリケーションを実行している認証機器はインターネット接続を有し、このインターネット接続を用いて、生成された動的認証情報を遠隔サーバに送信してよい。ある実施形態では、認証アプリケーションを実行している認証機器は、認証アプリを実行している例えばスマートフォンまたはタブレットコンピュータであってよく、スマートフォンはまたはタブレットコンピュータは、無線インターネット接続を有してよい。
【0084】
ある実施形態では、認証アプリケーションを実行している認証機器は、生成された動的認証情報をユーザに対し表示するよう適応されてよく、ユーザは表示された動的認証情報を、遠隔アプリケーションと情報交換するためにユーザが用いるアクセス機器にコピーしてよく、アクセス機器は、ユーザが提供した動的認証情報を、遠隔サーバに転送してよい。
【0085】
ある実施形態では、遠隔サーバは、例えば遠隔アプリケーションをホスティングするアプリケーションサーバであってよい。また対案として、遠隔サーバは、認証情報検証サーバといった異なるサーバであってよい。後者の場合、遠隔サーバは、受信した動的認証情報の検証に後に、受信した動的認証情報の検証の結果を遠隔アプリケーションに通知してよい。
【0086】
ユーザまたはユーザが送信した取引を認証する方法
【0087】
本発明のある態様では、ユーザと遠隔アプリケーションとの間の情報交換を保護するために、ユーザまたはユーザが遠隔アプリケーションに送信した取引を認証する方法が提供される。
【0088】
ある実施形態では、本発明の方法は、認証機器で動作している認証アプリケーションが本明細書に記載されたように動作する少なくともいくつかのステップを含んでよい。
【0089】
ある実施形態では、方法は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護する方法を含んでよく、この方法は、パーソナルコンピューティング機器において、取引データを取得するステップと、ユーザによる参照のためパーソナルコンピューティング機器のディスプレイに取得した取引データを表示するステップと、取引データに関連づけられた動的認証情報を取得するステップと、動的認証情報を検証のため利用可能にするステップとを含んでよい。
【0090】
ある実施形態では、取引データを取得するステップは、パーソナルコンピューティング機器において、取引データを含むメッセージを受信することを含んでよい。
【0091】
ある実施形態では、取引データを取得するステップは、ユーザに関連づけられた秘密情報を、またはこれから得られる暗号鍵をパラメータとして暗号アルゴリズムを適用することを含んでよい。ある実施形態では、秘密情報はパーソナルコンピューティング機器に保存されてよい。ある実施形態では、動的認証情報は、取引データに暗号アルゴリズムを適用することにより取得されてよい。ある実施形態では、動的認証情報の値は、暗号アルゴリズムの結果であってよい。ある実施形態では、暗号アルゴリズムは、時間値またはイベント関連変数の値といったその他のデータを用いてもよい。
【0092】
ある実施形態では、動的認証情報は、パーソナルコンピューティング機器に受信され、取引データを含むメッセージの少なくとも一部に暗号アルゴリズムを適用することにより取得されてよい。ある実施形態では、このメッセージの少なくとも一部に暗号アルゴリズムを適用することは、メッセージの一部を復号化することを含んでよい。
【0093】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、取得された取引データを表示するステップを実行しているときに、パーソナルコンピューティング機器に、ユーザの承認または否認をユーザが指示するための承認指示機構を提供することと、この機構を用いてユーザの承認または否認の指示をユーザから取得することを含んでよい。ある実施形態では、ユーザの承認または否認の指示をユーザから取得することは、パーソナルコンピューティング機器のユーザ入力インタフェースを通してユーザから入力信号を受信することを含む。ある実施形態では、パーソナルコンピューティング機器のユーザ入力インタフェースはタッチスクリーンを含んでよく、ユーザから入力信号を受信することは、タッチスクリーンの特定のエリアへのタッチまたはクリックを検出することを含んでよい。ある実施形態では、承認指示機構を提供することは、パーソナルコンピューティング機器のディスプレイに、ユーザがクリックまたはタッチするための少なくとも1つのボタンを表示することを含んでよい。ある実施形態では、承認指示機構を提供することは、パーソナルコンピューティング機器のディスプレイに、ユーザがクリックまたはタッチするためのOKボタンとキャンセルボタンとを表示することを含んでよく、これにより、ユーザの承認を取得することはOKボタンのクリックまたはタッチを受信することを含み、ユーザの否認を取得することはキャンセルボタンのクリックまたはタッチを受信することを含む。ある実施形態では、取得されたユーザの承認または否認は、表示された取引データの承認または否認と解釈されてよい。ある実施形態では、少なくとも動的認証情報を取得するステップまたは動的認証情報を検証のため利用可能にするステップは、パーソナルコンピューティング機器においてこの機構を通してユーザの承認を取得することを条件としてよい。
【0094】
ある実施形態では、動的認証情報を検証のため利用可能にするステップは、パーソナルコンピューティング機器のディスプレイに動的認証情報を表示することを含んでよい。ある実施形態では、動的認証情報を検証のため利用可能にするステップは、さらに、パーソナルコンピューティング機器のディスプレイに表示された動的認証情報を遠隔アクセス可能なコンピュータアプリケーションに提供することを含んでよい。ある実施形態では、動的認証情報を検証のため利用可能にするステップは、さらに、アクセスコンピューティング機器(パーソナルコンピュータまたはタブレットコンピュータなど)で、ユーザにより手動でコピーされた、パーソナルコンピューティング機器のディスプレイに表示された動的認証情報を受信し、アプセスコンピューティング機器が受信した動的認証情報を、コンピュータネットワークを介して、認証情報検証サーバまたは遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバといったサーバに送信することを含んでよい。
【0095】
ある実施形態では、動的認証情報を検証のため利用可能にするステップは、パーソナルコンピューティング機器が、パーソナルコンピューティング機器に含まれるデータ通信インタフェースを用いて、認証情報検証サーバまたは遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバといったサーバに、データ通信ネットワークを介して動的認証情報を送信することを含んでよい。
【0096】
ある実施形態では、上述のコンピュータネットワークおよび/またはデータ通信ネットワークは、インターネットおよび/または携帯電話データネットワークのような無線データ通信ネットワークを含んでよい。
【0097】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証情報検証サーバが動的認証情報を受信し検証するステップを含んでよい。ある実施形態では、動的認証情報を検証するステップは、本明細書に記載の検証方法のいずれかを含んでよい。
【0098】
ある実施形態では、ユーザによる参照のためパーソナルコンピューティング機器のディスプレイに取得した取引データを表示するステップは、パーソナルコンピューティング機器で動作している認証アプリケーションが、パーソナルコンピューティング機器のディスプレイの取引データ提示エリアに取得した取引データを表示することを含んでよい。ある実施形態では、取引データ提示エリアは、パーソナルコンピューティング機器のディスプレイにおける認証アプリケーションの取引データ表示ウィンドウの全体または一部であってよい。
【0099】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、パーソナルコンピューティング機器において、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウも、認証アプリケーションの取引データ提示エリアを、部分的または全体的に、隠しまたは覆うことができないことを保証するステップを含んでよい。ある実施形態では、方法はさらに、パーソナルコンピューティング機器において、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウも、認証アプリケーションのトラザクションデータ表示ウィンドウを、部分的または全体的に、隠しまたは覆っていないことを保証するステップを含んでよい。ある実施形態では、パーソナルコンピューティング機器において、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウも、取引データ表示ウィンドウを、部分的または全体的に、隠しまたは覆っていないことを保証するステップは、取引データ表示ウィンドウが最前面のままであることを保証するために、または、取引データ表示ウィンドウが最前面のままであることを強制するために、オペレーティングシステムの1以上の機能を認証アプリケーションが呼び出すことを含んでよい。ある実施形態では、取引データ表示ウィンドウが最前面のままであることを保証または強制するために、オペレーティングシステムの1以上の機能を認証アプリケーションが呼び出すステップは、取引データ表示ウィンドウが取引データを表示している間、または、表示された取引データへのユーザの承認または否認の指示を認証アプリケーションが受信するまで、取引データ表示ウィンドウが最前面のままであることを保証または強制するために、オペレーティングシステムの1以上の機能を認証アプリケーションが呼び出すことを含んでよい。
【0100】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、認証アプリケーションのウィンドウでないウィンドウにより、部分的または全体的に、隠されまたは覆われている場合に、少なくとも動的認証情報を検証のため利用可能にするステップが実行されないことを保証するステップを含んでよい。ある実施形態では、少なくとも動的認証情報を検証のため利用可能にするステップは、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引表示ウィンドウが、認証アプリケーションのウィンドウでないウィンドウにより、部分的または全体的に、隠されまたは覆われている限り、実行されない。
【0101】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることが、認証アプリケーションまたはパーソナルコンピューティング機器のオペレーティングシステムにより検出された場合に、承認指示機構が無効化されていることを保証するステップを含んでよい。ある実施形態では、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることが検出された場合に、承認指示機構が無効化されていることを保証するステップは、ユーザが承認を指示するユーザの入力イベントを、オペレーティングシステムが、ブロックするように、または承認指示機構に渡さないようにする1以上のオペレーティングシステムの機能を認証アプリケーションが呼び出すことを含んでよい。
【0102】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われているかを、検出または検証するための、オーバーレイ検出ステップを含んでよい。ある実施形態では、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われているかを、検出または検証することは、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われているかを検出するためのオペレーティングシステムの1以上の昨日を認証アプリケーションが呼び出すことを含んでよい。
【0103】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることが検出された場合、認証アプリケーションが承認指示機構を無効化するステップを含んでよい。
【0104】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることが検出された場合、承認指示機構により取得されたユーザによる承認の指示を無視するステップを含んでよい。ある実施形態では、動的認証情報を検証のため利用可能にするステップは、オーバーレイ検知ステップ(例えば、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われているかを、検出または検証すること)において、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることが示されなかったことを条件としてよい。
【0105】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、オーバーレイ検出ステップにおいて、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われていると検出された場合にユーザに異常の存在を警告する視覚表示をユーザに提供するステップを含んでよい。
【0106】
ある実施形態では、方法は上記実施形態の方法を含み、さらに、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていることがオーバーレイ検出ステップで示された場合に、認証アプリケーションがセーフモードに入るステップと、少なくとも、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、少なくとも所定の最小時間範囲の間、他のウィンドウにより、部分的または全体的に、隠されまたは覆われていなくなるまで、認証アプリケーションがセーフモードを維持するステップと、を含んでよい。ある実施形態では、この最小時間範囲は、認証アプリケーションの設定可能なパラメータであってよい。ある実施形態では、この最小時間範囲はゼロ秒である。ある実施形態では、この最小時間範囲は少なくとも2秒である。ある実施形態では、この時間範囲は30秒未満である。ある実施形態では、この最小時間範囲は、30秒以上2分未満である。
【0107】
ある実施形態では、認証アプリケーションがセーフモードである限り、認証指示機構は無効化されてよく、または、認証指示機構により取得されたユーザの承認の指示は無視されてよく、または、動的認証情報の生成は実行されなくてよく(または保留されてよく)、または、動的認証情報を検証のため利用可能にするステップは実行されなくてよい(または保留されてよい)。ある実施形態では、認証アプリケーションがセーフモードである限り、認証アプリケーションは、認証アプリケーションがセーフモードであることをユーザに警告する視覚的表示を提供してよい。
【0108】
承認指示機構が提供されるある実施形態では、承認指示機構は、パーソナルコンピューティング機器のディスプレイにおける視覚的承認有効化要素を含んでよい。このとき、視覚的承認有効化要素は、ユーザの操作に反応する有効化エリアを有し、視覚的承認有効化要素の有効化エリアに覆われたディスプレイのエリアは表示された取引データのすべてを覆うディスプレイ上の長方形と少なくとも部分的に重なり、ユーザが承認を指示するためにはユーザは視覚的承認有効化要素を有効化しなければならない。ある実施形態では、認証アプリケーションのウィンドウではないウィンドウにより覆われる視覚的承認有効化要素の有効化エリアの少なくともいずれかの部分は、視覚的承認有効化要素を有効化するためのユーザの操作に反応しない。ある実施形態では、ユーザが視覚的承認有効化要素をユーザが有効化することは、ユーザが視覚的承認有効化要素の有効化エリアをクリック、タッチ、またはスライドさせることを含んでよい。ある実施形態では、視覚的承認有効化要素は、クリック可能な、または、タッチ可能なボタンを含んでよい。ある実施形態では、表示された取引データの少なくとも一部は、視覚的承認有効化要素の有効化エリアの上に表示されてよい。ある実施形態では、表示された取引データの少なくとも一部は、視覚的承認有効化要素の有効化エリアの、左、右、上、または下のうち少なくとも2つの位置に表示される。
【0109】
ある実施形態では、動的認証情報を検証のため利用可能にするステップは、パーソナルコンピューティング機器のディスプレイに動的認証情報を表示してよい。このとき、視覚的承認有効化要素の有効化エリアは表示された取引データに覆われ、動的認証情報を表示するエリアは取引データを表示するエリアに覆われ、動的認証情報はユーザが視覚的承認有効化要素を有効化するまで不可視である。ある実施形態では、視覚的承認有効化要素を有効化することは、視覚的承認有効化要素の少なくとも一部をユーザがタッチおよびスライドし、表示された取引データの少なくとも一部をずらして動的認証情報の表現を露出させることを含んでよい。ある実施形態では、視覚的承認有効化要素を有効化することは、視覚的承認有効化要素の少なくとも2つの箇所にユーザがタッチおよび異なる方向にスライドし、表示された取引データの少なくとも一部をずらして動的認証情報の表現を露出させることを含んでよい。ある実施形態では、視覚的承認有効化要素をユーザが解放すると、表示された取引データは元の位置に戻り、表示された動的認証情報は不可視になる。
【0110】
ある実施形態では、方法は上記実施形態の方法を含み、動的認証情報を検証のため利用可能にするステップは、パーソナルコンピューティング機器のディスプレイに動的認証情報を表示するとともに取引データを表示することを含んでよい。このとき、動的認証情報は取引データと同時にディスプレイの同一エリアに表示され、表示されたすべての取引データを囲むすべての長方形は、動的認証情報の少なくとも一部も自動的に囲む。例えば、ある実施形態では取引データおよび動的認証情報は、重なり合うように、または、積み重なって表示されてよく、また、動的認証情報は、表示された取引データに取り囲まれるように表示されてよい。ある実施形態では、パーソナルコンピューティング機器のディスプレイにおける動的認証情報の表現、および、パーソナルコンピューティング機器のディスプレイにおける取引データの表現は、ユーザが動的認証情報を取引データから区別できるように、異なる視覚特性を有してよい。例えば、ある実施形態では、動的認証情報の表示に用いられる一部または全部の文字は、取引データの表示に用いられる一部または全部の文字と異なる視覚を有する。ある実施形態では、動的認証情報の表示に用いられる一部または全部の文字は、取引データの表示に用いられる一部または全部の文字とは異なるフォントタイプ、フォントサイズ、またはフォント色を有する。
【0111】
ある実施形態では、方法はユーザの遠隔アクセス可能なコンピュータアプリケーションとの情報交換セッションの保護を目的としてよく、前記情報交換セッションに関連する取引データを取得するステップと、パーソナルコンピューティング機器で動作している認証アプリケーションにより、取得した取引データを、ユーザによる参照のためパーソナルコンピューティング機器のディスプレイの第1エリアに表示するステップと、取引データに関連づけられた動的認証情報を取得するステップと、認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第2エリアを用いて動的認証情報を検証のため利用可能にするステップと、第1エリアの第1の視覚的に知覚可能な要素と第2エリアの第2の視覚的に知覚可能な要素とを共通の所定値とすることにより、第1エリアと第2エリアとの間の視覚的に知覚可能な連続性を形成するステップと、をパーソナルコンピューティング機器で実行し、認証アプリケーションのウィンドウではなく第1エリアを部分的または全体的に、隠しまたは覆い、前記第1および第2の視覚的に知覚可能な要素のための共通の所定値と同じ値による視覚的に知覚可能な第3の値を有しないオーバーレイウィンドウの存在によりオーバーレイウィンドウと第2エリアとの間の視覚的に知覚可能な不連続を生じさせてユーザに前記オーバーレイウィンドウの存在を警告するようにすることを含んでよい。
【0112】
ある実施形態では、認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第2エリアを用いて動的認証情報を検証のため利用可能にするステップは、前記第2エリアに動的認証情報を表示することを含んでよい。
【0113】
ある実施形態では、認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第2エリアを用いて動的認証情報を検証のため利用可能にするステップは、ユーザによる承認または否認をユーザが指示するための承認指示機構をパーソナルコンピューティング機器で提供することと、この機構を用いてユーザからユーザの承認または否認の指示を取得することとを含んでよい。このとき、承認指示機構は、パーソナルコンピューティング機器のディスプレイに、ユーザが承認を指示するためには有効化しなければならない視覚的承認有効化要素を含んでよい。このとき、視覚的承認有効化要素は、ユーザの操作に反応する有効化エリアを有し、このとき視覚的承認有効化要素の有効化エリアは、第2エリアの一部である。
【0114】
ある実施形態では、認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第2エリアを用いて動的認証情報を検証のため利用可能にするステップは、さらに、ユーザの承認が取得された場合、パーソナルコンピューティング機器のディスプレイに動的認証情報を表示することを含んでよい。
【0115】
ある実施形態では、認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第2エリアを用いて動的認証情報を検証のため利用可能にするステップは、さらに、ユーザの承認が取得された場合、データ通信ネットワークを介してサーバコンピュータに動的認証情報を送信することを含んでよい。
【0116】
ある実施形態では、第1および第2の視覚的に知覚可能な要素のための共通の所定値は、予測不能な要素または予測不能な態様を有してよい。ある実施形態では、視覚的に知覚可能な要素のための共通の所定値は、時間によって変動してよい。ある実施形態では、視覚的に知覚可能な要素のための共通の所定値は、情報交換セッションごとに変動してよい。ある実施形態では、視覚的に知覚可能な要素のための共通の所定値は、パーソナルコンピューティング機器ごとに変動してよい。ある実施形態では、視覚的に知覚可能な要素のための共通の所定値は、ユーザごとに変動してよい。ある実施形態では、第1および第2の視覚的に知覚可能な要素のための共通の所定値は、同じタイプの視覚的に知覚可能な要素について、所定値または標準値が異なってよい。
【0117】
ある実施形態では、共通の所定値は、オーバーレイ攻撃を組み込む者が、特定のパーソナルコンピューティング機器における特定の認証アプリケーションのインスタンスが特定の認証セッションまたはユーザ情報交換セッションまたは取引または認証アプリケーションの使用に用いる共通の所定値の正しい値を予め知る、または推測することが困難または不可能であるという意味で予測不能な要素または態様を有してよい。ある実施形態では、共通の所定値は、特定の認証アプリケーションまたは特定のパーソナルコンピューティング機器または特定の過去の認証セッションまたはユーザ情報交換セッションまたは取引または認証アプリケーションの使用のために用いられた共通の所定値を知っていることが、オーバーレイ攻撃を組み込む者が、異なるかもしれない特定のパーソナルコンピューティング機器における異なるかもしれない特定の認証アプリケーションのインスタンスが後続の特定の認証セッションまたはユーザ情報交換セッションまたは取引または認証アプリケーションの使用に用いる共通の所定値の正しい値を予め知る、または推測するために十分でないという意味で予測不能な要素または態様を有してよい。ある実施形態では、共通の所定値は、乱数的または疑似乱数的に決定されるという意味で予測不能な要素または態様を有してよい。ある実施形態では、共通の所定値は、例えば認証アプリケーションのインスタンスごとに、または、パーソナルコンピューティング機器ごとに異なる秘密鍵を用いるアルゴリズムを用いて決定されてよい。
【0118】
ある実施形態では、第1エリアは第2エリアに隣接してよい。
【0119】
ある実施形態では、第1および第2の視覚的に知覚可能な要素は、これらの第1および第2エリアに表示されるテキストの一部または全部の文字を含んでよく、共通の所定値はこれらの文字の視覚特性であってよい。共通の所定値は、例えば、これらの文字のフォントサイズ、フォントタイプ、またはフォント色であってよい。
【0120】
ある実施形態では、第1の視覚的に知覚可能な要素は第1エリアの第1背景を含み、第2の視覚的に知覚可能な要素は第2エリアの第2背景を含み、共通の所定値は、第1および第2背景の視覚特性を含んでよい。例えば、共通の所定値は、第1および第2背景の色またはパターン(例えばタイルパターン)を含んでよい。
【0121】
ある実施形態では、第1および第2背景は不均一であってよく、第1の視覚的に知覚可能な要素は第1背景の第1変形を含んでよく、第2の視覚的に知覚可能な要素は第2背景の第2変形を含んでよく、共通の所定値は第1および第2変形の共通の特性を含んでよい。
【0122】
ある実施形態では、第1背景は第1画像を含んでよく、第2背景は第2画像を含んでよく、このとき、共通の所定値は、第1および第2画像がいずれも単一の元画像の一部であることを含んでよい。例えば、第1および第2画像は、同一の元画像を半分にしたそれぞれ一方であってよく、このとき、そのことをユーザは認識可能である。元画像は、多数収集した画像からランダムに選択された画像であってよい。元画像は、例えば風景の画像であってよい。
【0123】
ある実施形態では、共通の所定値は時間によって変わってよい。ある実施形態では、共通の所定値は時間によって予測不能に変わってよい。
【0124】
ある実施形態では、第1および第2エリアの第1および第2の視覚的に知覚可能な要素は時間によって変動してよく、共通の所定値は第1および第2の視覚的に知覚可能な要素の時間による変動の態様のための共通の値であってよい。例えば、第1の視覚的に知覚可能な要素は第1エリアの第1背景の第1運動を含んでよく、第2の視覚的に知覚可能な要素は第2エリアの第2背景の第2運動を含んでよく、共通の所定値は第1および第2運動の共通の特性であってよい。例えば、ある実施形態では、共通の所定値はこれらの第1および第2運動の共通の速度を含んでよく、または、共通の所定値は第1および第2運動の共通の方向を含んでよい。
【0125】
ある実施形態では、方法は上記実施形態の方法を含み、動的認証情報を取得するステップは、パーソナルコンピューティング機器に保存された秘密鍵を含む、または秘密鍵から取得される暗号鍵を用いてパラメータ化された暗号アルゴリズムを用いることを含んでよい。例えば、ある実施形態では、動的認証情報を取得するステップは、取引データを、パーソナルコンピューティング機器に保存された秘密鍵を含む、または秘密鍵から生成される暗号鍵と暗号論的に結合することにより動的認証情報を生成することを含んでよい。例えば、ある実施形態では、動的認証情報を生成するステップは、取引データを含むメッセージの少なくとも一部を復号し、メッセージの復号された部分から動的認証情報を読み出すことを含んでよく、このとき、復号は、パーソナルコンピューティング機器に保存された秘密鍵を含む、または秘密鍵から取得される暗号論的復号鍵を用いてパラメータ化された暗号論的復号アルゴリズムを実行することにより行われてよい。
【0126】
ある実施形態では、動的認証情報を検証のため利用可能にするステップは、動的認証情報を認証情報検証サーバに送信することを含んでよい。例えば、ある実施形態では、動的認証情報を検証のため利用可能にするステップは、認証アプリケーションがパーソナルコンピューティング機器に、動的認証情報を含むメッセージを、認証情報検証サーバまたは認証情報検証サーバに動的認証情報を転送する遠隔アプリケーションサーバといったサーバコンピュータに送信させることを含んでよい。例えば、ある実施形態では、動的認証情報を検証のため利用可能にするステップは、認証アプリケーションがパーソナルコンピューティング機器に、動的認証情報をパーソナルコンピューティング機器のディスプレイに表示させ、ユーザが表示された動的認証情報を認証情報検証サーバに、例えば表示された動的認証情報を、ユーザが情報交換に用いるアクセス機器に手動でコピーすることにより、転送できるようにすることを含んでよい。このとき、アクセス機器は、続いて、ユーザがコピーした動的認証情報を、例えばインターネットといったコンピュータネットワークを介して、認証情報検証サーバ、または動的認証情報を認証情報検証サーバに転送する遠隔アプリケーションサーバに送信してよい。ある実施形態では、パーソナルコンピューティング機器にこれらのステップを行わせるステップの全部または少なくとも一部は、パーソナルコンピューティング機器で動作する認証アプリケーションソフトウェアにより実行されてよい。
【0127】
ユーザまたはユーザにより送信された取引の認証のための装置
【0128】
本発明のある態様では、ユーザまたはユーザにより遠隔アプリケーションに送信された取引を、ユーザと遠隔アプリケーションとの間の情報交換を保護するために認証するための認証装置が、本明細書に記載されているように、提供される。ある実施形態では、認証装置は、本明細書に記載のすべての認証装置またはパーソナルコンピューティング機器を含む。
【0129】
ある実施形態では、認証装置は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護するパーソナルコンピューティング機器を含み、こうしたパーソナルコンピューティング機器は、ユーザに情報を表示するディスプレイと、ユーザから入力を受信するユーザ入力インタフェースと、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部と、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを実行するデータ処理部とを備えてよく、認証アプリケーションソフトウェアは、パーソナルコンピューティング機器に、取引データを取得させ、取得された取引データをユーザによる参照のためディスプレイの取引データ提示エリアに表示させ、取引データに関連づけられた動的認証情報を取得させ、動的認証情報を検証のため利用可能にさせ、認証アプリケーションの取引データ提示エリアが、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウにより、部分的または全体的に、隠されまたは覆われている場合、少なくとも動的認証情報を検証のため利用可能にさせるステップは実行されない、または実行に成功できないことを保証させるよう構成されてよい。
【0130】
ある実施形態では、認証装置は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護するパーソナルコンピューティング機器を含み、こうしたパーソナルコンピューティング機器は、ユーザに情報を表示するディスプレイと、ユーザから入力を受信するユーザ入力インタフェースと、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部と、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを実行するデータ処理部とを備えてよく、認証アプリケーションソフトウェアは、パーソナルコンピューティング機器に、取引データを取得させ、取得された取引データをユーザによる参照のためディスプレイの認証アプリケーションの取引データ表示ウィンドウに表示させ、取引データに関連づけられた動的認証情報を取得させ、動的認証情報を検証のため利用可能にさせ、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、認証アプリケーションにより表示されない他のウィンドウにより、部分的または全体的に、隠されまたは覆われている場合、少なくとも動的認証情報を検証のため利用可能にさせるステップは実行されない、または実行に成功できないことを保証させるよう構成されてよい。
【0131】
ある実施形態では、認証装置は、パーソナルコンピューティング機器のユーザの遠隔アクセス可能なコンピュータアプリケーションとの情報交換セッションを保護するためのパーソナルコンピューティング機器を含み、こうしたパーソナルコンピューティング機器は、ユーザに情報を表示するディスプレイと、ユーザから入力を受信するユーザ入力インタフェースと、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部と、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを実行するデータ処理部とを備えてよく、認証アプリケーションソフトウェアは、パーソナルコンピューティング機器に、情報交換セッションに関係する取引データを取得させ、取得した取引データをユーザによる参照のためパーソナルコンピューティング機器のディスプレイの第1エリアに表示させ、取引データに関連づけられた動的認証情報を取得し、パーソナルコンピューティング機器のディスプレイの第2エリアを用いて動的認証情報を検証のため利用可能にさせ、第1エリアの第1の視覚的に知覚可能な要素および第2エリアの第2の視覚的に知覚可能な要素に同じ共通の所定値を適用することにより第1エリアと第2エリアとの間に視覚的に知覚可能な連続性を生成し、認証アプリケーションにより表示されず第1エリアを部分的または全体的に隠しまたは覆い第1および第2の視覚的に知覚可能な要素のための前記共通な所定値と同じ値の第3の視覚的に知覚可能な要素を有しないオーバーレイウィンドウの存在により、オーバーレイウィンドウと第2エリアとの間に、前記オーバーレイウィンドウの存在をユーザに警告する視覚的に知覚可能な不連続性を生じさせるよう構成されてよい。
【0132】
ある実施形態では、装置は、上述したいずれかの方法の1以上または全部を実行するよう適応されたパーソナルコンピューティング機器を備えてよい。ある実施形態では、パーソナルコンピューティング機器は、ディスプレイと、ユーザ入力インタフェースと、データ処理部と、記憶部とを備えてよい。ある実施形態では、パーソナルコンピューティング機器は、また、データ通信インタフェースを備えてよい。ある実施形態では、記憶部は、データ処理部で実行される認証アプリケーションを含むソフトウェアを保存してよい。ある実施形態では、認証アプリケーションは、本明細書に記載したいずれかの認証アプリケーションを含んでよい。ある実施形態では、認証アプリケーションは、データ処理部に実行されたときに、パーソナルコンピューティング機器に、上述したいずれかの方法の1以上または全部を実行させてよい。ある実施形態では、記憶部はオペレーティングシステムのソフトウェアコードも保存してよく、データ処理部はオペレーティングシステムを実行するよう適応され、および/または、構成されてよく、パーソナルコンピューティング機器は、認証アプリケーションを動作させている間、オペレーティングシステムを動作させていてよい。ある実施形態では、認証アプリケーションは、本明細書でより詳細に説明したように、1以上のオペレーティングシステムの機能を呼び出すよう適応されてよい。
【0133】
ユーザを認証、または、ユーザにより送信された取引を認証するためのシステム
【0134】
本発明のある態様では、本明細書で記載したように、ユーザまたはユーザにより遠隔アプリケーションに送信された取引を認証し、ユーザと遠隔アプリケーションとの間の情報交換を保護するためのシステムが提供される。ある実施形態では、システムは本明細書に記載したいずれかの認証装置または認証機器を含んでよい。ある実施形態では、システムは遠隔アクセス可能なコンピュータアプリケーションをホスティングするよう適応された遠隔アプリケーションサーバを備えてよい。ある実施形態では、システムは、本明細書で記載したいずれかの認証情報検証サーバを備えてよい。ある実施形態では、遠隔アプリケーションサーバおよび/または認証情報検証サーバは、1以上のサーバコンピュータを備えてよい。ある実施形態では、遠隔アプリケーションサーバおよび認証情報検証サーバは、同一のサーバに統合されてよい。
【0135】
ある実施形態では、システムは、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護するためのシステムを含み、こうしたシステムは、遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバと、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を許可するためのアクセス機器と、ユーザに情報を表示するディスプレイ、ユーザから入力を受信するユーザ入力インタフェース、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部、およびオペレーティングシステムソフトウェアと認証アプリケーションソフトウェアとを実行するデータ処理部とを備えるパーソナルコンピューティング機器とを備え、認証アプリケーションはパーソナルコンピューティング機器に、取引データを取得させ、取得した取引データをユーザによる参照のためディスプレイの取引データ提示エリアに表示させ、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウも、認証アプリケーションの取引データ提示エリアを、部分的または全体的に、隠しまたは覆うことができないことを保証させるよう構成されてよい。
【0136】
ある実施形態では、システムは、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換セッションを保護するためのシステムを含み、こうしたシステムは、遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバと、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を許可するためのアクセス機器と、遠隔アクセス可能なコンピュータプログラムの取引データに関連づけられた動的認証情報の妥当性を検証する認証情報検証サーバと、ユーザに情報を表示するディスプレイ、ユーザから入力を受信するユーザ入力インタフェース、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部、および、オペレーティングシステムソフトウェアと認証アプリケーションソフトウェアとを実行するデータ処理部とを備えるパーソナルコンピューティング機器とを備え、認証アプリケーションはパーソナルコンピューティング機器に、取引データを取得させ、取得した取引データをユーザによる参照のためディスプレイの取引データ提示エリアに表示させ、取引データに関連づけられた動的認証情報を取得させ、動的認証情報を検証のため利用可能にさせ、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、認証アプリケーションのウィンドウでないウィンドウにより、部分的または全体的に、隠されまたは覆われている場合、少なくとも動的認証情報を検証のため利用可能にするステップは実行されない、または実行に成功できないことを保証させるよう構成されてよい。
【0137】
ある実施形態では、システムは、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換セッションを保護するためのシステムを含み、こうしたシステムは、遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバと、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を許可するためのアクセス機器と、遠隔アクセス可能なコンピュータプログラムの取引データに関連づけられた動的認証情報の妥当性を検証する認証情報検証サーバと、ユーザに情報を表示するディスプレイ、ユーザから入力を受信するユーザ入力インタフェース、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部、および、オペレーティングシステムソフトウェアと認証アプリケーションソフトウェアとを実行するデータ処理部とを備えるパーソナルコンピューティング機器とを備え、認証アプリケーションはパーソナルコンピューティング機器に、前記情報交換セッションに関連する取引データを取得させ、取得した取引データをユーザによる参照のためパーソナルコンピューティング機器のディスプレイの第1エリアに表示させ、取引データに関連づけられた動的認証情報を取得し、パーソナルコンピューティング機器のディスプレイの第2エリアを用いて動的認証情報を検証のため利用可能にさせ、第1エリアの第1の視覚的に知覚可能な要素および第2エリアの第2の視覚的に知覚可能な要素に同じ共通の所定値を適用することにより第1エリアと第2エリアとの間に視覚的に知覚可能な連続性を生成し、認証アプリケーションにより表示されず第1エリアを部分的または全体的に隠しまたは覆い第1および第2の視覚的に知覚可能な要素のための前記共通な所定値と同じ値の第3の視覚的に知覚可能な要素を有しないオーバーレイウィンドウの存在により、オーバーレイウィンドウと第2エリアとの間に、前記オーバーレイウィンドウの存在をユーザに警告する視覚的に知覚可能な不連続性を生じさせるよう構成されてよい。
【図面の簡単な説明】
【0138】
上述した、および他の本発明の特徴および効果は、添付図面に示すように、以下の本発明のより詳細な実施形態の説明から明らかとなる。
【0139】
【
図1】本発明のある態様における典型的な装置の模式図である。
【0140】
【
図2】本発明のある態様における典型的なシステムの模式図である。
【0141】
【
図3】本発明のある態様における典型的な装置の模式図である。
【0142】
【
図4】本発明のある態様における典型的な方法の模式図である。
【0143】
【
図5】本発明のある態様における他の典型的な方法の模式図である。
【0144】
【
図6】本発明のある態様におけるさらに他の典型的な方法の模式図である。
【発明を実施するための形態】
【0145】
本発明のいくつかの実施例を以下に説明する。詳細な実施例を説明するが、これは説明のみを目的としていることを理解されたい。当業者は、本発明の精神および範囲から離れることなく、他の部品および構成を使用することができることを理解するだろう。本発明を完全に理解できるようにするため、様々の具体的な詳細が提供される。しかし、本発明がこうした具体的な詳細ななくとも実施可能であることは、当業者には理解されるだろう。他の例では、既知の方法、手続、部品および回路は、本発明が不明確にならないよう、詳細には記載していない。記載した実施形態への様々な変更は当業者に明らかだろう。そして、以下に記述する実施形態の一般原則は、他の実施形態にも適用可能である。
【0146】
図1は、本発明のある態様における典型的な電子装置100の模式図である。
図1の装置は、認証機器である。ある実施形態では、認証機器は、ユーザに代わって動的認証情報を生成するよう適応される。ある実施形態では、認証機器により生成された動的認証情報は、例えば、ワンタイムパスワード、および/または、例えば取引データへの電子署名、および/または、チャレンジへのレスポンスであってよい。ある実施形態では、認証機器はスマートフォンまたはタブレットコンピュータであってよい。
【0147】
プロセッサ150およびメモリ160
【0148】
認証機器は、データ処理命令セットを実行するよう適応されたデジタルデータ処理部150を備えてよい。ある実施形態では、データ処理部150は、例えば1以上のマイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(Digital Signal Processor, DSP)、FPGA(Field Programmable Gate Arrays)等であってよい。ある実施形態では、デジタルデータ処理部は、1つ以上のソフトウェアに含まれる命令を実行してよい。これらの1つ以上のソフトウェアは、例えばオペレーティングシステム(例えばAndroidまたはiOSなど)および/または本明細書にてより詳細に説明されているように動的認証情報を生成するよう適応された認証アプリケーションを含んでよい。ある実施形態では、認証アプリケーションにより生成される動的認証情報は、例えば、ワンタイムパスワード、および/または、例えば取引データへの電子署名、および/または、チャレンジへのレスポンスであってよい。
【0149】
多重インスタンス
【0150】
ある実施形態では、認証機器は、それぞれ異なるユーザに関連づけられる認証アプリケーションの多重インスタンスをサポートするよう適応される。ある実施形態で、それぞれのインスタンスは、例えば、そのインスタンスに関連づけられたユーザのために動的認証情報を生成するため認証アプリケーションが使用する1以上の暗号論的認証情報生成キーといった暗号鍵を決定するために認証アプリケーションが用いるデータを含んでよい。
【0151】
認証機器は、デジタルデータ処理部に接続される記憶部160を含んでよい。ある実施形態では、記憶部は、データ処理部により実行されるソフトウェアまたはファームウェアを保存するよう適応されたプログラム記憶部を含んでよい。例えば、ある実施形態では、認証機器のメモリに保存されたソフトウェアまたはファームウェアは、オペレーティングシステムおよび/または認証アプリケーションを含んでよい。
【0152】
ある実施形態では、記憶部160は、データを永続的または一時的に保存するよう適応されたデータ記憶部を含んでよい。ある実施形態では、データ記憶部は、暗号鍵またはPINまたはパスワード参照データといった秘密データを安全に保存するよう適応されてよい。ある実施形態では、データ記憶部は、認証アプリケーションの多重インスタンスのデータを保存するよう適応されてよい。
【0153】
記憶部は、例えばRAM(Random Access Memory)メモリ、ROM(Read-Only Memory)メモリ、EPROM(Erasable Programmable Read-Only Memory)メモリ、一回プログラマブルメモリ、フラッシュメモリ、半導体メモリ、ハードディスク等を備えてよい。
【0154】
ユーザインタフェース120、130
【0155】
ある実施形態では、認証機器は、ユーザと情報交換する、例えばユーザとデータ、情報および/または命令を交換するためのユーザインタフェース120、130を備えてよい。
【0156】
ある実施形態では、認証機器のユーザインタフェースは、ユーザに厳密認証トークンの情報および/またはデータを提示するための出力ユーザインタフェース130を含んでよい。ある実施形態では、出力ユーザインタフェースは、例えばディスプレイ130またはオーディオ出力インタフェースを含んでよい。ある実施形態では、認証機器のユーザインタフェースは、ユーザから例えば(チャレンジまたは取引データのような)入力データまたは(確認またはキャンセルのような)指示またはPINといった入力を受け付けるための入力ユーザインタフェース120を含んでよい。ある実施形態では、入力ユーザインタフェースは、例えばキーボードを含んでよい。ある実施形態では、認証機器のユーザインタフェースは、ユーザ出力インタフェースおよびユーザ入力インタフェースの両方の機能を提供するよう適応されたタッチスクリーンを含んでよい。
【0157】
データ入力インタフェース140
【0158】
ある実施形態では、認証機器は、デジタルデータ入力インタフェースを備えてよい。ある実施形態では、認証機器のデジタル入力インタフェースは、デジタルデータメッセージを受信するよう適応されてよい。ある実施形態では、データ入力インタフェースは光学画像取得部140を含んでよい。ある実施形態では、光学画像取得部はカメラを含んでよい。ある実施形態では、認証機器は、光学画像取得部により、デジタルデータメッセージとともにエンコードされる画像を取得するよう適応されてよい。ある実施形態では、画像は二次元バーコードを含んでよい。ある実施形態では、画像の形式は標準で定義されていてよい。例えば、ある実施形態では、光学画像はQRコード(登録商標)であってよい。
【0159】
他の実施形態では、デジタルデータ入力インタフェースは、トークンに対するメッセージまたは命令とともにエンコードされる音響信号を取得するよう適応された音響インタフェースを含んでよい。ある実施形態では、音響インタフェースはマイクを含んでよい。ある実施形態では、音響インタフェースは、音響電気信号を、後に例えば上述のデジタルデータ処理部により処理されるデジタル信号に変換するアナログ-デジタル変換器を含んでよい。
【0160】
ある実施形態では、デジタルデータ入力インタフェースは、無線データ通信インタフェースを含んでよい。ある実施形態では、無線データ通信インタフェースは、アンテナを含んでよい。ある実施形態では、無線データ通信インタフェースは、デジタルデータメッセージがコード化されて変調された無線信号を受信するよう適応されてよい。
【0161】
ある実施形態では、認証機器で動作している認証アプリケーションは、デジタルデータメッセージを受信するためにデータ入力インタフェースを用いるよう適応されてよい。ある実施形態では、デジタルデータメッセージは取引データを含んでよく、認証アプリケーションは、デジタルデータメッセージに含まれる取引データを受信し、受信した取引データを更なる処理、例えば、本明細書により詳細に記載したように、ユーザへの表示および/または対応する動的認証情報の生成のために使用するよう適応されてよい。
【0162】
認証情報の生成
【0163】
認証機器は、本明細書でより詳細に説明したように、動的認証情報を生成するよう適応されてよい。ある実施形態では、データ処理部150は、動的認証情報を生成するために暗号論的計算を実行してよい。ある実施形態では、認証機器は、記憶部160に永続的または一時的に保存された暗号鍵、または、記憶部160に永続的または一時的に保存されたデータから認証機器が導出する暗号鍵を用いて、動的認証情報を生成するよう適応されてよい。ある実施形態では、認証機器は、記憶部160に保存された認証アプリケーションのインスタンスの一部であるデータを用いて動的認証情報を生成するよう適応されてよい。
【0164】
ある実施形態では、認証機器または認証アプリケーションは、トークンに供給される内部値を含む動的変数を用いて動的認証情報を生成するよう適応されてよい。例えば、ある実施形態では、認証機器は時計170を備え、認証機器または認証アプリケーションは、時計により供給される時間値を内部値として使用してよい。ある実施形態では、認証機器は、カウンタといったイベント関連変数を、認証アプリケーションのインスタンスのデータの一部として維持してよく、認証機器または認証アプリケーションは、このイベント関連変数の値を、そのインスタンス用の動的認証情報を生成するための内部値として使用し、認証機器または認証アプリケーションが動的認証情報を生成するためのこのカウンタの値を使用するたびに、現在の値の関数としてイベント関連変数の値を(例えばカウンタの値を増加または減少させることにより)更新するよう適応されてよい。例えば、ある実施形態では、イベント関連変数の更新された値は、イベント関連変数の現在の値にハッシュ関数を適用することにより計算されてよい。
【0165】
ある実施形態では、認証機器または認証アプリケーションは、トークンに供給される外部値を含む動的変数を用いて動的認証情報を生成するよう適応されてよい。ある実施形態では、こうした外部値は、サーバにより生成されたチャレンジまたは署名されるべき取引データを含んでよい。ある実施形態では、外部値は、認証機器または認証アプリケーションに、トークンのユーザ入力インタフェースを用いてユーザにより手動で供給されてよい。例えば、トークンは、ユーザがトークンの備えるキーボードで文字列として入力するチャレンジまたは取引データを取得してもよい。ある実施形態では、外部値は、認証機器のデータ入力インタフェースを介して認証機器または認証アプリケーションが受信するメッセージまたは命令に含めて供給される。
【0166】
ある実施形態では、認証機器または認証アプリケーションは、生成された動的認証情報をユーザに提示するよう適応されてよい。例えば、ある実施形態では、認証機器または認証アプリケーションは、認証機器のディスプレイに、生成された動的認証情報を可読文字列として表示してもよい。ある実施形態では、文字列は十進数の文字のみを含んでよい。他の実施形態では、文字列は英数文字を含んでよい。
【0167】
安全な専用ハードウェアトークン
【0168】
ある実施形態では、認証機器100は専用ハードウェア機器であり、トークンまたは厳密認証トークンと呼ばれてよい。ある実施形態では、トークンはユーザのアプリケーションへのアクセスを保護する、または、こうしたアプリケーションとのユーザの情報交換を保護する方法に専ら使用されてよい。ある実施形態では、認証機器の主要な目的は、ユーザのアプリケーションへのアクセスを保護する、または、こうしたアプリケーションとのユーザの情報交換を保護する方法に使用されることである。ある実施形態では、認証機器のセキュリティ機器としての確実な専用を保証するため、認証機器は、ファームウェアを変更できないよう適応されてよい。ある実施形態では、認証機器のセキュリティ機器としての確実な専用を保証するため、ファームウェアのいかなる変更または更新も、承認された信頼できる管理機関のみが認証機器のファームウェアを更新または変更できることを保証するよう設計された安全なファームウェア更新手順を通してのみ可能である。こうすることにより、信頼できる管理機関は、ユーザのアプリケーションへのアクセスを保護する、またはこうしたアプリケーションとのユーザの情報交換を保護する方法への認証機器の専用を解除し得るファームウェアの更新が発生しないことを保証することができる。信頼できる管理機関により承認されていない追加ソフトウェアをユーザがインストール可能な機器は、専用機器とは見なされない。電気通信施設を提供することを主目的とする機器は、ユーザのアプリケーションへのアクセスを保護する、またはこうしたアプリケーションとのユーザの情報交換を保護する方法の使用の専用機器とは見なされない。汎用PC、ノートパソコン、タブレットコンピュータ、およびスマートフォンは、専用機器とは見なされない。
【0169】
非専用パーソナルコンピューティング機器におけるソフトウェアトークン
【0170】
ある実施形態では、認証機器100は、本明細書に記載の認証機能の実行および動的認証情報の生成専用ではないハードウェア機器100を含む。ある実施形態では、ハードウェア機器は、認証機能および動的認証情報生成以外の機能も提供するパーソナルユーザ機器またはパーソナルコンピューティング機器100を含んでよい。例えば、ある実施形態では、パーソナルコンピューティング機器は、電話の発呼またはインターネットのブラウズまたは電子メールの送受信といった電気通信サービスも提供してよい。ある実施形態では、パーソナルコンピューティング機器は、パーソナルコンピューティング機器に含まれるカメラにより写真を撮影する、または、動画を作成するといった他の機能を提供してよい。ある実施形態では、パーソナルコンピューティング機器は、パーソナルコンピューティング機器の機能を豊富にするために追加のアプリケーションまたはアプリをユーザがインストールできるようにするオペレーティングシステムを備えてよい。ある実施形態では、追加のアプリケーションまたはアプリのインストールの可能性は、信頼できる第三者管理機関による管理を受けていない、または、承認を必要としない。ある実施形態では、追加のアプリケーションまたはアプリのインストールの可能性は、集中管理機関(例えばパーソナルコンピューティング機器の提供者または製造者に関連づけられた機関)により管理されてよく、しかし、集中管理機関は、遠隔アプリケーションによる信頼を受けていない、または、受けていなくてもよい。ある実施形態では、パーソナルコンピューティング機器は、本明細書に記載の動的認証情報の生成のための認証アプリケーションまたはアプリを含んでよい。ある実施形態では、認証アプリケーションまたはアプリは、パーソナルコンピューティング機器に初期値として存在しておらず、しかし、パーソナルコンピューティング機器がユーザに配布された後にパーソナルコンピューティング機器にインストールされなければならない。ある実施形態では、認証アプリケーションまたはアプリのパーソナルコンピューティング機器へのインストールは、パーソナルコンピューティング機器へのユーザの動作により開始されてよい。ある実施形態では、認証アプリケーションまたはアプリは、ユーザによる事前のパーソナルコンピューティング機器への動作を要求することなく、パーソナルコンピューティング機器に自動的にプッシュされてよい。ある実施形態では、こうした認証アプリケーションまたはアプリのプッシュは、認証アプリケーションまたはアプリの提供者により行われてよい。ある実施形態では、プッシュは、遠隔アプリケーションのアプリケーションオーナーにより行われてよく、ユーザによる遠隔アプリケーションへのアクセスは、認証アプリケーションまたはアプリにより保護されることになる。ある実施形態では、パーソナルコンピューティング機器は、パーソナルコンピューティング機器がユーザに提供されたときに初期値として認証アプリケーションまたはアプリの実行コードを含んでいるが、認証アプリケーションまたはアプリは、設定データおよび/または暗号鍵および/またはパスワードまたはPINの値および/またはユーザに関する生体テンプレートといったパーソナライズデータの設定を必要としてよい。ある実施形態では、パーソナルコンピューティング機器は、例えばスマートフォンまたはタブレットを含んでよい。
【0171】
図3は、本発明のある態様による典型的な装置の模式図である。
【0172】
認証機器100は、例えば
図1を用いて説明した認証機器の1つといった、本明細書に記載の認証機器の1つを例えば備えてよい。
【0173】
鑑賞機器は、認証アプリケーションを実行していてよい。認証アプリケーションは、取引データを提示する機能を、ユーザにアクセス可能または視認可能でなければならない認証アプリケーションの他の機能の視覚的外観と視覚的に連携させ、ユーザが動的認証情報を取得でき、または、認証アプリケーションが動的認証情報を生成および/またはユーザまたは遠隔検証サーバといった何らかの宛先に提供できるよう、可能性のあるオーバーレイ攻撃を阻止するよう適応されてよい。図示された実施形態では、動的認証情報(「215431」)が、取引データに重畳するよう提示されている。
【0174】
例えば、認証アプリケーションは、取引データに対応する動的認証情報を生成し、生成した動的認証情報を、対応する取引データとともに同時に表示してよい。表示された取引データの参照にあたり、ユーザが表示された取引データを承認する場合、ユーザは、対応する表示された動的認証情報を、遠隔アプリケーションに転送してよい。仮に認証アプリケーションが動的認証情報と取引データとをディスプレイの離散した重複しないエリアに表示するとしたら、動的認証情報が対応する取引データに、オーバーレイ攻撃がユーザに代わりに見せたい別の取引データを重畳することが、オーバーレイ攻撃にとって比較的容易となるだろう。しかし、本発明の態様に従って、認証アプリケーションが、取引データの提示と対応する動的認証情報の提示とを、例えば取引データと対応する動的認証情報とを1つに重畳させるようディスプレイの同一のエリアを用いることにより、連携させた場合、認証アプリケーションにより表示された取引データに重畳して隠すオーバーレイ攻撃は、自動的に動的認証情報にも重畳して隠すことになる。この場合、ユーザは動的認証情報を見ることができないため、ユーザは、認証アプリケーションにより生成され表示された動的認証情報をコピーして遠隔アプリケーションに転送することができない。遠隔アプリケーションが動的認証情報を受信しないため、遠隔アプリケーションはこの動的認証情報に対応する取引を承認することはなく、不正な取引へと導くオーバーレイ攻撃者の試みは失敗する。
【0175】
図3に図示した例では、例えばインターネットバンキングのウェブサイトといった遠隔アプリケーションに送信を希望する取引データを、中間者攻撃者が操作している。例えば、攻撃者は、例えばアカウント番号(
図3では「アカウント」と図示)および宛先識別番号(
図3では「受取人」と図示)の元の値を、攻撃者のアカウント番号(「91-226461-2」)および宛先識別子(「GANGSTER BAD BOY」)に置き換えることにより、元のユーザの取引データを不正の取引データに置換している。遠隔アプリケーションとユーザは、最初はこの置換に気付かないかもしれない。遠隔アプリケーションは、受信した(不正の)取引データを、参照および承認のためユーザの認証機器に送信してよい。認証機器は(不正の)取引データを受信し、対応する動的認証情報(「215431」)を生成し、受信した(不正の)取引データと対応して生成された動的認証情報とを表示する。ユーザが表示された取引データを参照し、ユーザがこれらの表示された取引データを承認し、表示された動的認証情報をコピーして遠隔アプリケーションに転送した場合を考える。この場合、表示された取引データは、ユーザの入力した元の取引データと一致しないため、ユーザは、表示された(不正の)取引データを参照したときに、何か重大な問題が起きたことを理解し、そうして、ユーザは表示された動的認証情報を転送しないだろう。この参照制御を回避するため、攻撃者は、認証アプリケーションが受信し表示する不正の取引データを、ユーザが遠隔アプリケーションに提供しようとしている元の取引データを表示するオーバーレイウィンドウで隠してオーバーレイ攻撃を仕掛けようとすることが考えられる。しかし、本実施形態では認証アプリケーションは取引データと対応する動的認証情報とが重なり合うように表示しているため、認証アプリケーションにより表示される取引データを隠すオーバーレイウィンドウはすべて、取引データとまったく同じディスプレイ上のエリア130に認証アプリケーションによりまた表示される対応する動的認証情報をも必然的に隠すこととなる。これは、ユーザに対して何かが非常に問題であることを示す明確な視覚的手掛りを提供するのみならず、ユーザが(仮にユーザがこの手掛りを無視するとしても)動的認証情報を見て取得することを不可能にし、そしてユーザが不正の取引データに対応する動的認証情報を遠隔アプリケーションに転送することを不可能にする。正当な対応する動的認証情報を受信していないので、遠隔アプリケーションは(不正の)取引データを拒絶し、不正な取引へと導く攻撃者の試みは失敗する。
【0176】
図2は、本発明のある態様による典型的なシステムの模式図である。
【0177】
ある実施形態では、本発明のシステム200は、以下の要素を含む。
【0178】
1以上の遠隔アプリケーションサーバコンピュータ210。1以上の遠隔アプリケーションサーバコンピュータ210は、複数のユーザのうち1以上のユーザ290により遠隔アクセス可能な1以上の遠隔アプリケーションをホストしてよい。遠隔アプリケーションサーバコンピュータ210は、例えばウェブサーバであってよい。1以上の遠隔アプリケーションは、1以上のアプリケーション提供者の管理下にあってよい。
【0179】
複数のユーザのうち1以上のユーザ290を1以上の遠隔アプリケーションに遠隔アクセス可能にし、アクセス機器とも呼ばれる複数のクライアントコンピューティング機器230。クライアントコンピューティング機器またはアクセス機器230は、例えばPC(パーソナルコンピュータ)、ノートパソコンまたはタブレットコンピュータを含む。
【0180】
1以上のアプリケーションサーバコンピュータ210と複数のクライアントコンピューティング機器またはアクセス機器230とを接続するコンピュータネットワーク250。ある実施形態では、コンピュータネットワーク210はインターネットを含んでよい。ある実施形態では、コンピュータネットワーク210は公衆電話網を含んでよい。ある実施形態では、コンピュータネットワーク210は無線電話ネットワークを含んでよい。
【0181】
本明細書において、例えば
図1を参照してより詳細に記載された複数の認証機器100。認証機器100は、複数のユーザに配布されてよい。ある実施形態では、認証機器100は1以上のアプリケーション提供者によってユーザに配布されてよい。ある実施形態では、認証機器100は本明細書で記載したように適応される認証アプリケーションを含むコンシューマ電子機器であってよい。ある実施形態では、認証機器100は、例えばスマートフォンまたはタブレットコンピュータといったパーソナルコンピューティング機器を含んでよい。ある実施形態では、認証機器100は、例えばAndroidまたはiOSといったオペレーティングシステムを含んでよい。ある実施形態では、認証アプリケーションはスマートフォンのアプリまたはタブレットのアプリを含んでよい。ある実施形態では、ユーザ290は、提供者から認証アプリケーションを取得し、認証アプリケーションを自らの選択で機器100にインストールしてよい。ある実施形態では、ユーザ290は認証アプリケーションをアプリストアから取得してよい。
【0182】
1以上の認証情報検証サーバ220。ある実施形態では、1以上の認証情報検証サーバ220のそれぞれは、1以上のアプリケーションサーバ210の少なくとも1つと接続され、検証サーバに接続された1以上のアプリケーションサーバ210によりホストされる遠隔アプリケーションが、こうした遠隔アプリケーションと情報交換するユーザ290から受信する動的認証情報を、検証するよう構成されてよい。ある実施形態では、アプリケーションサーバ210のそれぞれは、1以上の認証情報検証サーバ220の少なくとも1つと接続され、アプリケーションサーバ210にホストされる遠隔アプリケーションが遠隔アプリケーションと情報交換するユーザ290から受信した動的認証情報を1以上の認証情報検証サーバ220のうちの接続された1つに転送するよう構成されてよい。遠隔アプリケーションから動的認証情報を受信すると、認証情報検証サーバは、ユーザおよび/または動的認証情報を生成した認証機器100に関連づけられたデータを読み出し、そのデータを用いて受信した動的認証情報の正当性を暗号論的に検証してよい。例えば、ある実施形態では、認証情報検証サーバは、動的認証情報に対して基準値を生成し、生成された基準値を受信した動的認証情報と比較し、受信した動的認証情報が生成した基準値に適合した場合、受信した動的認証情報の検証を成功したと判定してよい。ある実施形態では、認証情報検証サーバは、サーバが受信した取引データ、および/または、カウンタ編集のサーバコピーまたはユーザおよび/または時間値に関連づけられたイベント関連変数といった基準入力データに暗号論的アルゴリズムを適用することにより基準値を生成してよい。ある実施形態では、認証情報検証サーバは、ユーザに関連づけられた秘密の値を含む、または秘密の値から得られる秘密鍵を用いてこの暗号論的アルゴリズムをパラメータ化してよい。認証情報検証サーバ220は、検証が成功したか否かを示す信号を遠隔アプリケーションに返してよい。信号が検証の成功を示す場合、遠隔アプリケーションは、ユーザのアクセスを許可するか否か、または、ユーザに要求された所定の動作(ユーザにより送信された取引の実行など)を実行するか否かの決定にその情報を用いてよい。
【0183】
図4は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護する方法400を模式的に示している。方法は、以下のステップをパーソナルコンピューティング機器に実行させることを含む:取引データを取得するステップ402;ユーザによる参照のためパーソナルコンピューティング機器のディスプレイに取得した取引データを表示するステップ404、このときパーソナルコンピューティング機器で動作している認証アプリケーションは、パーソナルコンピューティング機器のディスプレイの取引データ提示エリアに取得した取引データを表示する;取引データに関連づけられた動的認証情報を取得するステップ406;動的認証情報を検証のため利用可能にするステップ408;および、パーソナルコンピューティング機器において、パーソナルコンピューティング機器で動作している他のアプリケーションのどのウィンドウも、認証アプリケーションの取引データ提示エリアを、部分的または全体的に、隠しまたは覆うことができないことを保証するステップ410。
【0184】
図5は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護する方法500を模式的に示している。方法は、以下のステップをパーソナルコンピューティング機器に実行させることを含む:取引データを取得するステップ502;パーソナルコンピューティング機器で動作している認証アプリケーションにより、取得した取引データをユーザによる参照のためパーソナルコンピューティング機器のディスプレイの取引データ表示ウィンドウに表示するステップ504;取引データに関連づけられた動的認証情報を取得するステップ506;動的認証情報を検証のため利用可能にするステップ508;および、認証アプリケーションの取引データ提示エリアまたは認証アプリケーションの取引データ表示ウィンドウが、認証アプリケーションのウィンドウでないウィンドウにより、部分的または全体的に、隠されまたは覆われている場合、少なくとも動的認証情報を検証のため利用可能にするステップは実行されない、または実行に成功できないことを保証するステップ510。
【0185】
図6は、遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換セッションを保護する方法600を模式的に示している。方法は、以下のステップをパーソナルコンピューティング機器に実行させることを含む:前記情報交換セッションに関連する取引データを取得するステップ602;パーソナルコンピューティング機器で動作している認証アプリケーションにより、取得した取引データを、ユーザによる参照のためパーソナルコンピューティング機器のディスプレイの第1エリアに表示するステップ604;取引データに関連づけられた動的認証情報を取得するステップ606;認証アプリケーションにより、パーソナルコンピューティング機器のディスプレイの第2エリアを用いて動的認証情報を検証のため利用可能にするステップ608;および、第1エリアの第1の視覚的に知覚可能な要素と第2エリアの第2の視覚的に知覚可能な要素とを共通の所定値とすることにより、第1エリアと第2エリアとの間の視覚的に知覚可能な連続性を形成し、認証アプリケーションのウィンドウではなく第1エリアを部分的または全体的に、隠しまたは覆い、前記第1および第2の視覚的に知覚可能な要素のための共通の所定値と同じ値による視覚的に知覚可能な第3の値を有しないオーバーレイウィンドウの存在によりオーバーレイウィンドウと第2エリアとの間の視覚的に知覚可能な不連続を生じさせてユーザに前記オーバーレイウィンドウの存在を警告するようにするステップ610。
【0186】
多数の実施例をここに説明した。しかしながら、様々な修正を加えることができることは理解されるであろう。例えば、1以上の実施例の要素は、更なる実施例を形成するため、結合され、削除され、修正され、または補充されてよい。従って、他の実施例は添付の特許請求の範囲に含まれる。加えて、本発明の特定の特徴は、いくつかの実施例のうちの1つのみに関連して開示されている場合であっても、こうした特徴は、所定のまたは特定の応用に要求され、または、有利となるよう、他の実施例の他の1以上の特徴と組み合わされてよい。本発明の様々な実施形態を上述したが、これは例示のために提示されたものであり、限定のためでないことを理解されたい。特に、発明の主題を記述する目的で構成要素または方法のすべての考え得る組み合わせを記載することは、もちろん不可能である。しかし、当業者は本発明の更なる多数の組み合わせおよび変形が可能であることを認識することができる。このように、本発明の幅と範囲は、上述した典型的な実施形態のいずれによっても制限されるべきではない。むしろ、本発明の少なくとも1つの実施形態の範囲は、以下の特許請求の範囲およびその均等物のみに従って規定される。
上述の実施形態は下記のように記載され得るが、下記に限定されるものではない。
[構成1]
遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護する方法であって、
取引データを取得するステップと、
パーソナルコンピューティング機器で動作している認証アプリケーションにより、取得した前記取引データを前記ユーザによる参照のため前記パーソナルコンピューティング機器のディスプレイの取引データ表示ウィンドウに表示するステップと、
前記取引データに関連づけられた動的認証情報を取得するステップと、
前記動的認証情報を検証のため利用可能にするステップと、
前記認証アプリケーションの取引データ提示エリアまたは前記認証アプリケーションの取引データ表示ウィンドウが前記認証アプリケーションにより表示されていないウィンドウにより部分的または全体的に隠されまたは覆われている場合、少なくとも前記動的認証情報を検証のため利用可能にするステップは実行されないまたは実行に成功できないことを保証するステップと、
をパーソナルコンピューティング機器に実行させることを含む、方法。
[構成2]
少なくとも前記動的認証情報を検証のため利用可能にするステップは、前記認証アプリケーションの取引データ提示エリアまたは前記認証アプリケーションの取引表示ウィンドウが前記認証アプリケーションのウィンドウでないウィンドウにより部分的または全体的に隠されまたは覆われている限り、実行されないまたは実行に成功できない、構成1に記載の方法。
[構成3]
前記取得した前記取引データを表示するステップにおいて、前記ユーザによる承認または否認を前記ユーザが指示するための承認指示機構を前記パーソナルコンピューティング機器で提供するステップと、
この機構を用いて前記ユーザから前記ユーザの承認または否認の指示を取得するステップであって、少なくとも前記動的認証情報を検証のため利用可能にするステップは、前記承認指示機構を介して前記ユーザの承認の指示を受信したことを条件として実行され、
前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われている場合、前記承認指示機構が無効化されることを保証するステップと、
をさらに含む、構成1または2に記載の方法。
[構成4]
前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われている場合、前記承認指示機構が無効化されることを保証するステップは、前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われているときに、前記パーソナルコンピューティング機器のオペレーティングシステムがユーザの承認を示すユーザ入力イベントを遮断するようにする、または、前記承認指示機構に渡さないようにする1以上のオペレーティングシステム機能を、前記認証アプリケーションが呼び出すことを含む、構成3に記載の方法。
[構成5]
前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われているか否かを前記認証アプリケーションが検出また検証するオーバーレイ検出ステップをさらに含む、構成1ないし4のいずれか一項に記載の方法。
[構成6]
前記オーバーレイ検出ステップは、前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われているか否かを検出するための前記パーソナルコンピューティング機器のオペレーティングシステムの1以上のオペレーティングシステム機能を、前記認証アプリケーションが呼び出すことを含む、構成5に記載の方法。
[構成7]
前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われているか否かを前記認証アプリケーションが検出または検証するオーバーレイ検出ステップと、
前記オーバーレイ検出ステップにおいて、前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われていると検出された場合、前記承認指示機構により取得された前記ユーザの承認指示を無視するステップと、
を含む、構成3に記載の方法。
[構成8]
前記オーバーレイ検出ステップにおいて、前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われていると検出されなかったことを条件として、前記動的認証情報を検証のため利用可能にするステップを実行する、構成5または6に記載の方法。
[構成9]
前記オーバーレイ検出ステップにおいて前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われていると検出された場合に、前記ユーザに異常の存在を警告する視覚表示を前記ユーザに提供するステップをさらに含む、構成5ないし8のいずれか一項に記載の方法。
[構成10]
前記オーバーレイ検出ステップにおいて前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われていると検出された場合に前記認証アプリケーションがセーフモードに入り、少なくとも前記認証アプリケーションの取引データ表示ウィンドウが少なくとも最小時間範囲の間他のウィンドウにより部分的または全体的に隠されまたは覆われていなくなるまで前記認証アプリケーションがセーフモードに維持されるステップをさらに含む、構成5ないし9のいずれか一項に記載の方法。
[構成11]
前記認証アプリケーションがセーフモードである限り、前記動的認証情報を取得するステップは実行されず、または、前記動的認証情報を検証のため利用可能にするステップは実行されない、構成10に記載の方法。
[構成12]
前記認証アプリケーションがセーフモードである限り、前記認証アプリケーションは、前記認証アプリケーションがセーフモードであることを前記ユーザに警告する視覚表示を提供する、構成10に記載の方法。
[構成13]
前記承認指示機構は、前記パーソナルコンピューティング機器のディスプレイにおいて、前記ユーザが承認を指示するためにユーザが有効化しなければならない視覚的承認有効化要素を有し、前記視覚的承認有効化要素は、前記ユーザの操作に反応する有効化エリアを有し、前記視覚的承認有効化要素の前記有効化エリアに覆われたディスプレイのエリアは表示された取引データのすべてを覆うディスプレイ上の長方形と少なくとも部分的に重なる、構成3に記載の方法。
[構成14]
前記他のウィンドウに覆われた前記視覚的承認有効化要素の前記有効化エリアの少なくともいずれかの部分は、前記視覚的承認有効化要素を有効化するためのユーザの操作に反応しない、構成13に記載の方法。
[構成15]
前記ユーザが前記視覚的承認有効化要素を有効化することは、前記ユーザが前記視覚的承認有効化要素の前記有効化エリアをクリック、タッチ、またはスライドさせることを含む、構成13または14に記載の方法。
[構成16]
前記視覚的承認有効化要素は、クリック可能な、または、タッチ可能なボタンを含む、構成15に記載の方法。
[構成17]
表示された前記取引データの少なくとも一部は、前記視覚的承認有効化要素の前記有効化エリアの上に表示される、構成13または14に記載の方法。
[構成18]
表示された前記取引データの少なくとも一部は、前記視覚的承認有効化要素の前記有効化エリアの、左、右、上、または下のうち少なくとも2つの位置に表示される、構成13または14に記載の方法。
[構成19]
前記動的認証情報を検証のため利用可能にするステップは、前記パーソナルコンピューティング機器のディスプレイに前記動的認証情報を表示するステップを含み、前記視覚的承認有効化要素の前記有効化エリアは表示された前記取引データに覆われ、前記動的認証情報を表示するエリアは前記取引データを表示するエリアに覆われ、前記動的認証情報は前記ユーザが前記視覚的承認有効化要素を有効化するまで不可視である、構成13または14に記載の方法。
[構成20]
前記視覚的承認有効化要素を有効化することは、前記視覚的承認有効化要素の少なくとも一部を前記ユーザがタッチおよびスライドし、表示された前記取引データの少なくとも一部をずらして前記動的認証情報の表現を露出させることを含む、構成19に記載の方法。
[構成21]
前記視覚的承認有効化要素を有効化することは、前記視覚的承認有効化要素の少なくとも2つの箇所を前記ユーザがタッチおよび異なる方向にスライドし、表示された前記取引データの少なくとも一部をずらして前記動的認証情報の表現を露出させることを含む、構成19または20に記載の方法。
[構成22]
前記視覚的承認有効化要素を前記ユーザが解放すると、表示された前記取引データは元の位置に戻り、表示された前記動的認証情報は不可視になる、構成20または21に記載の方法。
[構成23]
前記動的認証情報を検証のため利用可能にするステップは、前記動的認証情報を表示された前記取引データとともに前記パーソナルコンピューティング機器のディスプレイに表示することを含み、前記動的認証情報は表示された前記取引データと同時に前記ディスプレイの同一エリアに表示され、表示されたすべての前記取引データを囲むすべての長方形は、前記動的認証情報の少なくとも一部も囲む、構成1または2に記載の方法。
[構成24]
前記取引データおよび前記動的認証情報は、重なり合うように、または、積み重なって表示される、構成23に記載の方法。
[構成25]
前記動的認証情報は、表示された前記取引データに取り囲まれるように表示される、構成23に記載の方法。
[構成26]
前記動的認証情報の表現および前記ディスプレイにおける前記取引データの表現は、前記ユーザが前記動的認証情報を前記取引データから区別できるように、異なる視覚特性を有する、構成23ないし25のいずれか一項に記載の方法。
[構成27]
前記動的認証情報の表示に用いられる文字は、前記取引データの表示に用いられる文字とは異なる視覚特性を有する、構成26に記載の方法。
[構成28]
前記動的認証情報の表示に用いられる文字は、前記取引データの表示に用いられる文字と異なるフォントタイプ、フォントサイズ、またはフォント色を有する、構成27に記載の方法。
[構成29]
前記取引データに関連づけられた前記動的認証情報を取得するステップは、前記取引データを、前記パーソナルコンピューティング機器に保存された秘密鍵を含む暗号鍵、または前記秘密鍵から生成される暗号鍵と暗号論的に結合することにより前記動的認証情報を生成することを含む、構成1に記載の方法。
[構成30]
遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換を保護するパーソナルコンピューティング機器であって、前記パーソナルコンピューティング機器は、前記ユーザに情報を表示するディスプレイと、前記ユーザから入力を受信するユーザ入力インタフェースと、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部と、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを実行するデータ処理部とを備え、前記認証アプリケーションは前記パーソナルコンピューティング機器に、
取引データを取得させ、
取得した前記取引データを前記ユーザによる参照のため前記ディスプレイの前記認証アプリケーションの取引データ表示ウィンドウに表示させ、
前記取引データに関連づけられた動的認証情報を取得させ、
前記動的認証情報を検証のため利用可能にさせ、
前記認証アプリケーションの取引データ提示エリアまたは前記認証アプリケーションの取引データ表示ウィンドウが、前記認証アプリケーションにより表示されない他のウィンドウにより部分的または全体的に隠されまたは覆われている場合、少なくとも前記動的認証情報を検証のため利用可能にさせるステップは実行されない、または実行に成功できないことを保証させる、パーソナルコンピューティング機器。
[構成31]
遠隔アクセス可能なコンピュータアプリケーションとのユーザの情報交換セッションを保護するためのシステムであって、前記遠隔アクセス可能なコンピュータアプリケーションをホスティングする遠隔アプリケーションサーバと、遠隔アクセス可能なコンピュータアプリケーションとの前記ユーザの情報交換を許可するためのアクセス機器と、前記遠隔アクセス可能なコンピュータプログラムの取引データに関連づけられた動的認証情報の妥当性を検証する認証情報検証サーバと、前記ユーザに情報を表示するディスプレイ、前記ユーザから入力を受信するユーザ入力インタフェース、オペレーティングシステムソフトウェアおよび認証アプリケーションソフトウェアを保存する記憶部、および、前記オペレーティングシステムソフトウェアと前記認証アプリケーションソフトウェアとを実行するデータ処理部とを備えるパーソナルコンピューティング機器とを備え、前記認証アプリケーションは前記パーソナルコンピューティング機器に、
取引データを取得させ、
取得した前記取引データを前記ユーザによる参照のため前記パーソナルコンピューティング機器の前記ディスプレイの前記認証アプリケーションの取引データ表示ウィンドウに表示させ、
前記取引データに関連づけられた動的認証情報を取得させ、
前記動的認証情報を検証のため利用可能にさせ、
前記認証アプリケーションの取引データ提示エリアまたは前記認証アプリケーションの取引データ表示ウィンドウが、前記認証アプリケーションにより表示されない他のウィンドウにより部分的または全体的に隠されまたは覆われている場合、少なくとも前記動的認証情報を検証のため利用可能にさせるステップは実行されない、または実行に成功できないことを保証させる、システム。
[構成32]
前記オーバーレイ検出ステップにおいて前記認証アプリケーションの取引データ表示ウィンドウが他のウィンドウにより部分的または全体的に隠されまたは覆われていると検出された場合に前記認証アプリケーションがセーフモードに入り、少なくとも前記認証アプリケーションの取引データ表示ウィンドウが少なくとも最小時間範囲の間他のウィンドウにより部分的または全体的に隠されまたは覆われていなくなるまで前記認証アプリケーションがセーフモードに維持されるステップをさらに含み、
前記認証アプリケーションがセーフモードである限り、前記承認指示機構は無効化され、または、前記承認指示機構による取得された前記ユーザの承認は無視され、または、前記動的認証情報を取得するステップは実行されず、または、前記動的認証情報を検証のため利用可能にするステップは実行されない、構成7に記載の方法。