(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-03-24
(45)【発行日】2023-04-03
(54)【発明の名称】リレー攻撃を防ぐシステムおよび方法
(51)【国際特許分類】
H04L 9/32 20060101AFI20230327BHJP
G06F 21/44 20130101ALI20230327BHJP
【FI】
H04L9/32 200B
G06F21/44
(21)【出願番号】P 2020529163
(86)(22)【出願日】2018-11-28
(86)【国際出願番号】 US2018062759
(87)【国際公開番号】W WO2019108595
(87)【国際公開日】2019-06-06
【審査請求日】2021-08-03
(32)【優先日】2017-11-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】505468864
【氏名又は名称】ビザ インターナショナル サービス アソシエーション
(74)【代理人】
【識別番号】110000855
【氏名又は名称】弁理士法人浅村特許事務所
(72)【発明者】
【氏名】サリバン、ブライアン
(72)【発明者】
【氏名】ワン、クァン
(72)【発明者】
【氏名】チェン、ユエシー
(72)【発明者】
【氏名】オービェ、クリスチャン
(72)【発明者】
【氏名】フリュールシャイム、クリスチャン
(72)【発明者】
【氏名】ハプアラクチー、パサン
【審査官】行田 悦資
(56)【参考文献】
【文献】特開2008-199620(JP,A)
【文献】特表2016-521029(JP,A)
【文献】特開2017-085368(JP,A)
【文献】特開2014-106593(JP,A)
【文献】特表2008-515315(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/32
G06F 21/44
(57)【特許請求の範囲】
【請求項1】
介入デバイスから、ユーザデバイスによって、第一の公開鍵を含む第一のアクセスデバイスの第一のアクセスデバイス識別データを受信することと、
前記第一のアクセスデバイスに近接する前記ユーザデバイスによって、前記介入デバイスを介して第二のアクセスデバイスからメッセージを受信することとであって、前記メッセージが、少なくとも第二のアクセスデバイス識別データを含むメッセージデータと、前記第二のアクセスデバイスに関連付けられた公開/秘密鍵ペアの秘密鍵を用いて、前記少なくとも第二のアクセスデバイス識別データのハッシュに署名することにより生成されるデジタル署名とを含むように、受信することと、
第二の公開鍵を使用して前記デジタル署名から前記ハッシュを取得することと、
前記メッセージデータの追加のハッシュを生成することと、
前記ユーザデバイスによって、前記ハッシュを前記追加のハッシュと比較することと、
前記ユーザデバイスによって、前記ハッシュが前記追加のハッシュに一致するかどうかを決定することと、
前記ハッシュが前記追加のハッシュと一致しない、かつ、前記ハッシュを取得するために使用される前記第二の公開鍵が、前記第一のアクセスデバイスに関連付けられた前記第一の公開鍵である場合、
前記ユーザデバイスによって、当該ユーザデバイスのユーザに対して、前記第一のアクセスデバイス識別データと異なることを示す前記第二のアクセスデバイス識別データを提示することと、
前記ユーザが、前記第二のアクセスデバイスと対話する意図を確認していないときは、前記ユーザデバイスによって、前記第二のアクセスデバイスとのさらなる対話を自動的に終了することと、
前記ハッシュが前記追加のハッシュに一致する、かつ、前記ハッシュを取得するために使用した第二の公開鍵がメッセージで受信される場合、
前記ユーザデバイスのユーザが前記第二のアクセスデバイスと対話する前記意図を確認していないと決定することと、
前記ユーザが前記第二のアクセスデバイスと対話する意図を確認していないと決定したことに少なくとも部分的に基づいて前記第二のアクセスデバイスとのさらなる対話を終了することとを含む、方法。
【請求項2】
前記介入デバイスは、第一の介入デバイスであり、前記メッセージが、前記第一の介入デバイスおよび第二の介入デバイスを介して前記第二のアクセスデバイスから前記ユーザデバイスに送信される、請求項1に記載の方法。
【請求項3】
前記メッセージデータは対話値をさらに含み、前記デジタル署名は前記メッセージデータの前記ハッシュに署名することによって作成される、請求項1に記載の方法。
【請求項4】
前記第一のアクセスデバイスおよび前記第二のアクセスデバイスが、自動燃料ディスペンサーである、請求項1に記載の方法。
【請求項5】
前記第二の公開鍵が、前記第一のアクセスデバイス識別データで受信される、請求項1に記載の方法。
【請求項6】
前記第二の公開鍵が、前記第二のアクセスデバイスと関連付けられ、前記メッセージデータが前記
第二の公開鍵をさらに含む、請求項1に記載の方法。
【請求項7】
前記ユーザデバイスによって、前記ユーザデバイスの前記ユーザに、前記第一のアクセスデバイスと対話する要求において前記第一のアクセスデバイス識別データを提示することと、
前記ユーザデバイスによって、前記ユーザが前記第一のアクセスデバイスと対話することを望むという前記ユーザからの確認を受信することとをさらに含む、請求項1に記載の方法。
【請求項8】
前記ハッシュが前記追加のハッシュと一致しない、かつ、前記ハッシュを取得するために使用された前記第二の公開鍵が、前記第一のアクセスデバイスに関連付けられた前記第一の公開鍵であるとき、
前記ユーザデバイスによって、前記ユーザデバイスの前記ユーザが前記第二のアクセスデバイスと対話することを望むという確認を受信することとをさらに含む、請求項1に記載の方法。
【請求項9】
前記ユーザデバイスの前記ユーザが前記第二のアクセスデバイスと対話することを望むという前記確認を受信したことに応答して、前記ユーザデバイスによって、前記第二のアクセスデバイスに、前記少なくとも第二のアクセスデバイス識別データおよび前記第一のアクセスデバイスに関連付けられた前記第一の公開鍵を含む第二のメッセージデータを含む第二のメッセージを送信することをさらに含み、前記第二のメッセージを送信することにより、前記第二のアクセスデバイスが前記第二のメッセージのさらなる処理を終了する、請求項8に記載の方法。
【請求項10】
前記第二のアクセスデバイスが、前記ユーザデバイスから受信された前記第二のメッセージデータが前記第二のアクセスデバイスから前記ユーザデバイスに送信された前記メッセージデータと一致しないと決定したことに少なくとも部分的に基づいて、前記第二のメッセージのさらなる処理を終了する、請求項9に記載の方法。
【請求項11】
ユーザデバイスであって、
プロセッサと、
コンピューター可読媒体であって、
介入デバイスから、第一の公開鍵を含む第一のアクセスデバイスの第一のアクセスデバイス識別データを受信することと、
前記ユーザデバイスが前記第一のアクセスデバイスに近接するとき、前記介入デバイスを介して第二のアクセスデバイスからメッセージを受信することとであって、前記メッセージが、少なくとも第二のアクセスデバイス識別データを含むメッセージデータと、前記第二のアクセスデバイスに関連付けられた公開/秘密鍵ペアの秘密鍵を用いて、前記少なくとも第二のアクセスデバイス識別データのハッシュに署名することにより生成されるデジタル署名とを含む、受信することと、
第二の公開鍵を使用して前記デジタル署名から前記ハッシュを取得することと、
前記メッセージデータの追加のハッシュを生成することと、
前記ハッシュを前記追加のハッシュと比較することと、
前記ハッシュが前記追加のハッシュと一致するかどうかを決定することと、
前記ハッシュが前記追加のハッシュと一致しない、かつ、前記ハッシュを取得するために使用される前記第二の公開鍵が、前記第一のアクセスデバイスに関連付けられた前記第一の公開鍵である場合、
前記ユーザデバイスによって、当該ユーザデバイスのユーザに対して、前記第一のアクセスデバイス識別データと異なることを示す前記第二のアクセスデバイス識別データを提示することと、
前記ユーザが、前記第二のアクセスデバイスと対話する意図を確認していないときは、前記第二のアクセスデバイスとのさらなる対話を自動的に終了することと、
前記ハッシュが前記追加のハッシュに一致する、かつ、前記ハッシュを取得するために使用した第二の公開鍵がメッセージで受信される場合、
前記ユーザデバイスのユーザが前記第二のアクセスデバイスと対話する前記意図を確認していないと決定することと、
前記ユーザが前記第二のアクセスデバイスと対話する意図を確認していないと決定したことに少なくとも部分的に基づいて前記第二のアクセスデバイスとのさらなる対話を終了することとを含む、方法を実行するために、前記プロセッサによって実行可能であるコードを含むコンピューター可読媒体とを含む、ユーザデバイス。
【請求項12】
前記介入デバイスが、第一の介入デバイスであり、前記メッセージが、前記第一の介入デバイスおよび第二の介入デバイスを介して前記第二のアクセスデバイスから前記ユーザデバイスに送信される、請求項11に記載のユーザデバイス。
【請求項13】
前記メッセージデータが対話値をさらに含み、前記デジタル署名が前記メッセージデータの前記ハッシュに署名することによって作成される、請求項11に記載のユーザデバイス。
【請求項14】
前記第一のアクセスデバイスおよび前記第二のアクセスデバイスが、自動燃料ディスペンサーである、請求項11に記載のユーザデバイス。
【請求項15】
前記第二の公開鍵が、前記第一のアクセスデバイス識別データで受信される、請求項11に記載のユーザデバイス。
【請求項16】
前記第二の公開鍵が、前記第二のアクセスデバイスと関連付けられ、前記メッセージデータが前記第二の公開鍵をさらに含む、請求項11に記載のユーザデバイス。
【請求項17】
前記方法が、
前記ユーザデバイスの前記ユーザに、前記第一のアクセスデバイスと対話する要求において前記第一のアクセスデバイス識別データを提示することと、
前記ユーザが前記第一のアクセスデバイスと対話することを望むという前記ユーザからの確認を受信することとをさらに含む、請求項11に記載のユーザデバイス。
【請求項18】
前記ハッシュが前記追加のハッシュと一致しない、かつ、前記ハッシュを取得するために使用された前記第二の公開鍵が、前記第一のアクセスデバイスに関連付けられた前記第一の公開鍵であるとき、前記方法が、
前記ユーザデバイスの前記ユーザが前記第二のアクセスデバイスと対話することを望むという確認を受信することとをさらに含む、請求項11に記載のユーザデバイス。
【請求項19】
前記方法が、
前記ユーザデバイスの前記ユーザが前記第二のアクセスデバイスと対話することを望むという前記確認を受信したことに応答して、前記ユーザデバイスによって、前記第二のアクセスデバイスに、前記少なくとも第二のアクセスデバイス識別データおよび前記第一のアクセスデバイスに関連付けられた前記第一の公開鍵を含む第二のメッセージデータを含む第二のメッセージを送信することをさらに含み、前記第二のメッセージを送信することにより、前記第二のアクセスデバイスが前記第二のメッセージのさらなる処理を終了する、請求項18に記載のユーザデバイス。
【請求項20】
前記第二のアクセスデバイスが、前記ユーザデバイスから受信された前記第二のメッセージデータが前記第二のアクセスデバイスから前記ユーザデバイスに送信された前記メッセージデータと一致しないと決定したことに少なくとも部分的に基づいて、前記第二のメッセージのさらなる処理を終了する、請求項19に記載のユーザデバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2017年11月28日に提出された米国仮出願番号62/591,708の優先権を主張し、その開示は全ての目的に対して参照により全体が本明細書に組み込まれる。
【背景技術】
【0002】
リレー攻撃は、非接触型デバイスと非接触端末間の支払い取引など、接触および非接触型のアクセス取引で可能である。例えば、攻撃者(例えば、情報を盗むために共に行動する一人または複数の人物または不正行為ユーザ)は、リレー攻撃を実施するために二つの無線対応モバイルデバイスおよび無線対応モバイルデバイスで二つのモバイルアプリケーションを使用することができる。一般的なリレー攻撃では、攻撃者は、第一のモバイルアプリケーションで第一のモバイルデバイスを使用して、被害者のポケット内の非接触型デバイスにタップし通信する。攻撃者は、第二のモバイルアプリケーションで第二のモバイルデバイスを使用して、例えば、小売業者または他の資源プロバイダーでの非接触端末にタップし通信する。
【0003】
非接触端末によって発行されたコマンドメッセージは、第二のモバイルデバイスから第一のモバイルデバイスにリレーされ、次に被害者の非接触型デバイスによって受信される。被害者の非接触型デバイスは、コマンドメッセージに応答する。デバイス上のアクセス情報(例えば、プライマリーアカウント番号(PAN)などの支払い情報)は、第一のモバイルデバイスから第二のモバイルデバイスへ、そして非接触端末にリレーすることができる。このようなリレー攻撃を実施することにより、攻撃者は、被害者のデバイスを被害者の所有からとることなく、被害者の非接触型デバイスを使用して、アクセス取引(例えば、購買取引)を実行することができる。この特定の例は、小売業者が関与するものであるが、この問題が、リソースへのアクセスが望ましい他の状況(例えば、建物にアクセスする試みや、コンピューター内のデータにアクセスする試みなど)に存在することが理解されている。
【0004】
Bluetooth低エネルギー(BLE)を使用して非接触型デバイスと非接触端末間の通信を行うモバイル取引は、通常、デバイスと端末間の近接によって起こる。ただし、これらの取引は依然としてリレー攻撃を被る。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本明細書に記載される実施形態は、個別および総合的にこれらの問題を解決する。
【課題を解決するための手段】
【0006】
本発明の一実施形態は、方法に関する。方法は、介入デバイスから、ユーザデバイスによって、第一のアクセスデバイスのために第一のアクセスデバイス識別データを受信することを含む。方法は、第一のアクセスデバイスに近接しているユーザデバイスによって、介入デバイスを介して第二のアクセスデバイスからメッセージを受信することをさらに含んでもよい。一部の実施形態では、メッセージは、少なくとも第二のアクセスデバイス識別データを含むメッセージデータと、第二のアクセスデバイスに関連付けられた公開/秘密鍵ペアの秘密鍵を用いて、少なくとも第二のアクセスデバイス識別データのハッシュに署名することによって作成されるデジタル署名とを含んでもよい。方法は、公開鍵を使用してデジタル署名からハッシュを取得することをさらに含んでもよい。方法は、メッセージデータの追加のハッシュを生成することをさらに含んでもよい。方法は、ユーザデバイスによって、ハッシュを追加のハッシュと比較することをさらに含むことができる。方法は、ユーザデバイスによって、ハッシュが追加のハッシュに一致するかどうかを決定することをさらに含んでもよい。方法は、ハッシュがさらに追加のハッシュに一致しない場合、ユーザデバイスによって、第二のアクセスデバイスとのさらなる対話を自動的に終了することをさらに含んでもよい。方法は、ハッシュが追加のハッシュと一致する場合、ユーザデバイスのユーザが第二のアクセスデバイスと対話する意図を確認していないと決定することと、ユーザが第二のアクセスデバイスと対話する意図を確認していないと決定したことに少なくとも部分的に基づいて第二のアクセスデバイスとのさらなる対話を終了することとをさらに含んでもよい。
【0007】
本開示の別の実施形態は、ユーザデバイスに関する。一部の実施形態では、ユーザデバイスは、プロセッサおよび非一時的コンピューター可読媒体を含んでもよい。一部の実施形態では、コンピューター可読媒体は、本明細書に記載する方法のいずれかを実装するために、プロセッサにより実行可能なコードを含み得る。
【0008】
本開示の別の実施形態は、システムに関する。システムは、少なくとも一つのユーザデバイスおよび少なくとも一つのアクセスデバイスを含んでもよい。一部の実施形態では、ユーザデバイスおよび/またはアクセスデバイスは、プロセッサおよび非一時的コンピューター可読媒体を含んでもよい。一部の実施形態では、コンピューター可読媒体は、本明細書に記載する方法のいずれかを実装するために、プロセッサにより実行可能なコードを含み得る。
【図面の簡単な説明】
【0009】
【
図1】
図1は、一部の実施形態による例示的なリレー攻撃を示すブロック図である。
【
図2】
図2は、一部の実施形態によるアクセスデバイスへの接続を確立するための例示的なユーザインターフェースを示す。
【
図3】
図3は、一部の実施形態によるアクセスデバイスとの対話を確認するための例示的なユーザインターフェースを示す。
【
図4】
図4は、一部の実施形態によるリレー攻撃を防止するための例示的な方法を示すブロック図を示す。
【
図5】
図5は、一部の実施形態によるデジタル署名を生成するための例示的な方法を示す概略図を示す。
【
図6】
図6に、一部の実施形態によるリレー攻撃を防止するための別の例示的な方法を示すブロック図を示す。
【
図7】
図7は、一部の実施形態によるリレー攻撃を防止するための別の例示的な方法を説明するブロック図を示す。
【
図8】
図8は、一部の実施形態によるリレー攻撃を防止するための別の例示的な方法を説明するブロック図を示す。
【
図9】
図9は、一部の実施形態によるリレー攻撃を防止するためのさらなる一つの例示的な方法を示すブロック図を示す。
【
図10】
図10は、本発明の実施形態による、例示的なユーザデバイスのブロック図を示す。
【
図11】
図11は、本発明の実施形態による例示的なアクセスデバイスのブロック図を示す。
【
図12】
図12は、取引処理システムを示すブロック図を示す。
【
図13】
図13は、建物アクセスシステムを示すブロック図を示す。
【発明を実施するための形態】
【0010】
Bluetooth低エネルギー(BLE)は、ほとんどの現代のスマートフォンで利用できる通信技術である。BLE技術はモバイル支払いに活用されている。低摩擦対話に対して魅力的である可能性があるBLEの機能は、デバイス(アクセスデバイスやユーザの電話など)間の接続の確率を容易にすることである。例えば、一つのデバイスを別のデバイスに接続する場合、従来のBluetoothの場合と同様に、PINまたはパスフレーズを交換する必要はない。
【0011】
しかしながら、ユーザデバイスにおけるBLE機能の広範な利用可能性は、ユーザデバイスとアクセスデバイス間のBLE接続を確立するシンプルさとともに、不幸なことに、不正行為者が、BLEアクセスデバイスを模倣することができるモバイルアプリケーションを開発することをもくろませる。アプリケーションプロトコルレベルで保護しない場合、不正行為者はリレー攻撃を実行することができる。例えば、不正行為者は、ユーザデバイスが対話しようとしているアクセスデバイスを模倣し、ユーザデバイスのユーザがアクセスデバイスの代わりに不正デバイスに接続し得る。ローカルな本物のアクセスデバイスにコミュニケーションする代わりに、不正行為者は、リモートアクセスデバイスにおける共犯者への拡張コミュニケーションチャネルを確立することができ、また、不正行為者のデバイスは、ユーザが意図したアクセスデバイスではなく、ユーザがリモートアクセスデバイスと無意識に対話するように通信プロトコルを操作することができる。
【0012】
本発明の特定の実施形態について論じる前に、いくつかの用語を詳細に説明することができる。
【0013】
「ユーザデバイス」は、ユーザによって運搬および操作可能な任意の電子デバイスを含むことができ、また、ネットワークへの遠隔通信機能を提供することができる。遠隔通信機能の例には、移動電話(無線)ネットワーク、Bluetooth(登録商標)、Bluetooth低エネルギー(BLE)(登録商標)、無線データネットワーク(例えば、3G、4Gまたは同様のネットワーク)、Wi-Fi、Wi-Max、またはインターネットもしくはプライベートネットワークなどのネットワークへのアクセスを提供できるいかなる他の通信媒体を使用することを含む。ユーザデバイスの例として、移動電話(例えば、携帯電話)、PDA、タブレットコンピューター、ネットブック、ラップトップコンピューター、パーソナル音楽プレーヤー、手持ち式専用リーダーなどが挙げられる。ユーザデバイスのさらなる例としては、スマートウォッチ、フィットネスバンド、アンクルブレスレット、リング、イヤリングなどのウェアラブルデバイス、リモートコミュニケーション機能付き自動車などがある。ユーザデバイスは、こうした機能を実行するための任意の好適なハードウェアおよびソフトウェアを含んでもよく、さらに複数のデバイスまたはコンポーネントを含んでもよい(例えば、デバイスが他のデバイスにテザリングすることによりネットワークへリモートアクセスする場合、すなわち、他のデバイスを中継として使用する場合、両方のデバイスを合わせて単一のユーザデバイスと考えてもよい)。
【0014】
「対話データ」とは、アクセスデバイスとユーザデバイス間の対話に関連する任意の適切な情報を含んでもよい。対話データは、対話に関連する任意の適切なデータ(例えば、BLE広告メッセージ、購買および/または事前認証取引など)を含んでもよい。一部の実施形態では、対話データは、アクセスデバイスに関連付けられた識別データ(例えば、アクセスデバイスの一つまたは複数の識別子)、またはユーザデバイスに関連付けられた識別情報(例えば、ユーザデバイスに関連付けられた一つまたは複数の識別子)、または対話値(例えば、取引の事前認証額および/または取引の購入価格などの取引額)、または支払いデータ(例えば、支払いアカウントに関連付けられた支払いアカウント識別子)、またはそれぞれがアクセスデバイスおよび/またはユーザデバイスに関連付けられた一つまたは複数の位置、または任意の適切な情報の任意の適切な組み合わせを含み得る。支払いデータの例として、PAN(プライマリーアカウント番号または「アカウント番号」)、ユーザ名、有効期限、CVV(カード検証値)、dCVV(動的カード検証値)、CVV2(カード検証値2)、CVC3カード検証値などが挙げられ得る。CVV2は、概して、支払いデバイスと関連付けられた静的検証値であると理解されている。CVV2値は、概して、ユーザ(例えば、消費者)の目に見えるが、CVVおよびdCVV値は、通常、メモリまたは認証要求メッセージに埋め込まれ、ユーザには容易に知られない(ただし、発行人および支払いプロセッサには知られている)。支払いデータは、支払いアカウントを識別する、または支払いアカウントに関連付けられる任意の情報であり得る。支払いデータは、支払いアカウントから支払いを行うために提供され得る。支払いデータは、ユーザ名、有効期限、ギフトカード番号またはコード、および任意の他の適切な情報を含むこともできる。
【0015】
「アプリケーション」は、タスクを完了するためにプロセッサによって実行可能なコンピューター可読媒体(例えば、メモリ素子またはセキュア素子)に保存されているコンピューターコードまたはその他のデータであり得る。
【0016】
「ユーザ」とは、個人を含むことができる。一部の実施形態では、ユーザは、一つまたは複数の個人アカウントおよび/またはモバイルデバイスと関連付けられてもよい。ユーザはまた、カード保有者、アカウント保有者または消費者と称され得る。
【0017】
「資源プロバイダー」は、物品、サービス、情報および/またはアクセスなど、資源を提供できる事業体であり得る。資源プロバイダーの例には、小売業者、アクセスデバイス、安全なデータアクセスポイントなどを含む。「小売業者」は通常、取引に携わり、物品もしくはサービスを販売する、または物品もしくはサービスへのアクセスを提供することができる事業体であり得る。
【0018】
「アクワイアラ」は、一般的には、特定の小売業者または他の事業体とビジネス関係を有するビジネス事業体(例えば、商業銀行)とすることができる。一部の事業体は、発行人およびアクワイアラの両方の機能を実行することができる。一部の実施形態は、こうした単一事業体の発行人-アクワイアラを含み得る。アクワイアラは、総称的に「転送コンピューター」とも呼ばれ得る、アクワイアラコンピューターを操作し得る。
【0019】
「認証事業体」は、要求を認証する事業体とすることができる。認証事業体の例は、発行人、政府機関、文書保管所、アクセス管理者などであり得る。「発行人」は通常、ユーザ用のアカウントを保持するビジネス事業体(例えば、銀行)を指し得る。発行人はまた消費者に対して、携帯電話、スマートカード、タブレット、またはラップトップなどのユーザデバイスに保存された支払い証明書を発行することができる。
【0020】
「アクセスデバイス」は、リモートシステムへのアクセスを提供する任意の好適なデバイスであり得る。アクセスデバイスは、ユーザデバイス、資源プロバイダーコンピューター、処理ネットワークコンピューター、認証事業体コンピューター、および/またはいかなる他の好適なシステムとの通信に使用され得る。アクセスデバイスは、概して、小売業者の位置、または別の例として建物のアクセス位置など、任意の好適な位置に配置することができる。アクセスデバイスは、任意の好適な形態であり得る。アクセスデバイスの一部例には、POS、すなわち販売時点情報管理デバイス(例えば、POS端末)、携帯電話、PDA、パーソナルコンピューター(PC)、タブレットPC、手持ち式専用リーダー、セットトップボックス、電子キャッシュレジスタ(ECR)、現金自動預入支払い機(ATM)、仮想キャッシュレジスタ(VCR)、キオスク、セキュリティシステム、アクセスシステムおよび類似のものを含む。アクセスデバイスは、任意の好適な接触または非接触動作モードを使用して、ユーザデバイスとの間でデータ、または該ユーザデバイスに関連付けられたデータの送受信を行うことができる。一部の実施形態では、アクセスデバイスは、Bluetooth(登録商標)および/またはBLEなどの短距離通信プロトコルに少なくとも部分的に基づいて、ユーザデバイスと通信するように構成され得る。一部の実施形態では、アクセスデバイスは、資源プロバイダーコンピューター、処理ネットワークコンピューター、認証事業体コンピューター、および/または任意の他の適切なシステムと通信するための好適な無線および/または有線ネットワークを利用するようにさらに構成され得る。アクセスデバイスがPOS端末を含んでもよい一部の実施形態では、任意の好適なPOS端末を使用でき、該端末はリーダーと、プロセッサと、コンピューター可読媒体とを含むことができる。リーダーは、任意の好適な接触または非接触動作モードを含むことができる。例えば、例示的なカードリーダーは、支払いデバイスおよび/またはモバイルデバイスと対話するために、無線周波数(RF)アンテナ、光学スキャナ、バーコードリーダーまたは磁気ストライプリーダーを含み得る。一部の実施形態では、POS端末として用いられる携帯電話、タブレット、または他の専用無線デバイスは、モバイル販売時点情報管理端末、または「mPOS」端末と称され得る。
【0021】
「認証要求メッセージ」は、取引のための認証を要求する電子メッセージであり得る。一部の実施形態では、メッセージは、取引処理コンピューターおよび/または支払いカードの発行人へ送信され、取引のための認証を要求する。一部の実施形態による認証要求メッセージは、支払いデバイスまたは支払いアカウントを使用するユーザによりなされる支払いと関連付けられる、電子取引情報を交換するシステムの標準である、ISO8583に準拠し得る。認証要求メッセージは、支払いデバイスまたは支払いアカウントと関連付けられてもよい、発行人アカウント識別子を含んでもよい。認証要求メッセージはまた、ほんの例として、サービスコード、CVV(カード検証値)、dCVV(動的カード検証値)、PAN(プライマリーアカウント番号または「アカウント番号」)、支払いトークン、ユーザ名、有効期限などを含む、「識別情報」に対応する追加のデータ要素を含んでもよい。認証要求メッセージはまた、取引額、小売業者識別子、小売業者の位置、アクワイアラ銀行識別番号(BIN)、カードアクセプタID、購入された品目を識別する情報などの、現在の取引と関連付けられるいずれの情報などの「取引情報」、ならびに取引を識別および/または認証するかを決定するのに利用することができる、いかなる他の情報を含んでもよい。
【0022】
「認証応答メッセージ」は、認証要求に応答するメッセージであり得る。場合によっては、メッセージは、発行金融機関または取引処理コンピューターによって生成される、認証要求メッセージへの電子メッセージ返信であり得る。認証応答メッセージは、例としてのみ、一つまたは複数の次の状態指標を含んでもよい。承認―取引が承認された。拒否―取引が承認されなかった。または、コールセンター―応答はより多くの情報を保留中で、小売業者は、フリーダイヤルの認証電話番号に電話する必要がある。認証応答メッセージはまた、クレジットカード発行銀行が認証要求メッセージに応じて、取引の承認を示す小売業者のアクセスデバイス(例えば、POS機器)に、電子メッセージ(直接または取引処理コンピューターを介してのいずれか)で返信するコードであり得る、認証コードを含むことができる。コードは、認証の証明として役割を果たし得る。上述の通り、一部の実施形態では、取引処理コンピューターは、認証応答メッセージを生成してもよく、または小売業者に転送し得る。
【0023】
「サーバーコンピューター」は、強力なコンピューターまたはコンピューターのクラスタを含んでもよい。例えば、サーバーコンピューターは、大型メインフレーム、ミニコンピュータークラスタ、またはユニットとして機能するサーバ群であり得る。一例では、サーバーコンピューターは、ウェブサーバに連結されるデータベースサーバであり得る。サーバーコンピューターは、データベースに連結されてもよく、一つまたは複数のクライアントコンピューターからの要求にサービスを提供する、いずれのハードウェア、ソフトウェア、他のロジックまたは前述の組み合わせを含んでもよい。サーバーコンピューターは、一つまたは複数の計算装置を含んでもよく、一つまたは複数のクライアントコンピューターからの要求にサービスを提供する、さまざまなコンピューター構造、配置およびコンパイルのうちのいずれを使用し得る。
【0024】
図1は、一部の実施形態による例示的なリレー攻撃を示すブロック
図100である。
図1に示す例は、不正行為者が、リレー攻撃を使用してユーザデバイス102とアクセスデバイス104-1との間の対話をどのように危険にさらすかを示す。
図1は、ユーザデバイス102、アクセスデバイス104-1、アクセスデバイス104-2、介入デバイス106-1、および介入デバイス106-2を含むが、任意の適切な数および/またはタイプのデバイスが他の実施形態で利用され得る。非限定的な例として、アクセスデバイス104-1および104-2は、それぞれ、一つまたは複数のガスステーションで、個別の燃料ポンプ装置に位置(および/またはそれぞれの燃料ポンプ装置の一部として動作)することができる。
【0025】
ステップ1では、(例えば、ポンプ1においてガスステーション「SuperGas」に位置する)アクセスデバイス104-1は、(例えば、BLEなどの短距離無線プロトコルを介して)広告メッセージを送信することができる。広告メッセージは、アクセスデバイス104-1に関連する識別データを少なくとも含むことができる。識別データは任意の形態であり得る。例として、識別データは、資源プロバイダーの識別子(例えば、「SuperGas」、「SuperGas at 4th and Broadway, Seattle, WA.」などの小売業者)を含んでもよい。一部の実施形態では、アクセスデバイス104-1に関連する識別データは、デバイス識別子(例えば、「ポンプ1」など)をさらに含んでもよい。ユーザデバイス102は、アクセスデバイス104-1に近づき(例えば、BLEなどの短距離無線通信プロトコルの短距離無線メッセージを受信する範囲内)、アクセスデバイス104-1からの閾値距離を侵入することができる。
【0026】
ステップ2では、第一の不正行為者によって操作される介入デバイス106-1は、広告メッセージを傍受し、メッセージをユーザデバイス102にリレーすることができる。一部の実施形態では、介入デバイス106-1は、ユーザデバイス102にメッセージをリレーする前に、広告メッセージ(例えば、識別データ)を変更することができ、一方で、他の実施形態では、介入デバイス106-1は、広告メッセージを変更されないままにしておいてもよい。
【0027】
ステップ3では、ユーザデバイス102は、アクセスデバイス104-1と接続を確認するために、広告メッセージを受信し、一つまたは複数のユーザインターフェースを表示することができる。例として、ユーザデバイス102は、
図2のユーザインターフェースを提示することができる。
図2は、一部の実施形態によるBLE有効アクセスデバイスへの接続を確立するための例示的なユーザインターフェース200を示す。
図2に示すように、ユーザインターフェース200は、テキスト202を含んでもよい。一部の実施形態では、テキスト202は、特定のアクセスデバイスに接続する意図を示すことができる。非限定的な例として、テキスト202は、
図1のステップ3で受信した識別データの一部を含んでもよい。図示されるように、テキスト202は、ユーザがアクセスデバイス1の端末1と接続を確立することを意図することを示すことができる。例えば、
図1に提供されるように、ユーザインターフェース200は、ユーザが「SuperGas、ポンプ1」と接続を確立することを意図していること示すテキスト202を含んでもよい。ユーザインターフェース200は、確認ボタン204および/またはキャンセルボタン206を含んでもよい。確認ボタン204(またはテキスト202によって示される意図の確認に関連するように構成される任意の適切なユーザインターフェース要素)を選択した時、ユーザデバイス102はさらなる動作を実行するように構成される。ユーザインターフェース200の特定のユーザインターフェース要素および/または形式は変化し得る。
【0028】
図1に戻り、ユーザインターフェース200を提示し、ユーザが「SuperGas、ポンプ1」と接続する意図を確認したことの表示を受信したとき、接続が、介入デバイス106-1とユーザデバイス102との間の適切な短距離無線プロトコル(例えば、BLE)を利用して確立され得る。従って、ステップ2でのメッセージリレーすることに基づいて、不正行為者は、第一の不正非接触型デバイス(介入デバイス106-1)とユーザデバイス102との間のBLE接続を確立することができる。ユーザデバイス102のユーザは、それらが、(例えば、
図2のユーザインターフェース200に提供されるテキスト202に基づいて)アクセスデバイス104-1に接続されていると信じうる。しかしながら、ユーザデバイス102は、実際に不正行為者のデバイス(例えば、介入デバイス106-1)に接続され得る。
【0029】
介入デバイス106-1とユーザデバイス102との間の接続が確立されると、介入デバイス106-1は、ステップ4で、任意の適切な有線および/または無線接続を介して、共犯者の第二の不正デバイス(例えば、介入デバイス106-2)に接続(またはデータを送信)することができる。介入デバイス106-2は、例えば、別のアクセスデバイス(例えば、「ポンプ4」において別のガスステーション「OtherGas」に位置するアクセスデバイス)に位置することができる。介入デバイス106-2は、ステップ5でアクセスデバイス104-2への第二のBLE接続を介して、接続(またはデータを送信)することができる。
【0030】
この不正取引フローでは、介入デバイス106-2は、アクセスデバイス104-2から、対話データ(アクセスデバイス104-2に関連する識別情報、事前認証金額などの対話値、など)を受信することができる。介入デバイス106-2は、ステップ7で介入デバイス106-1に、受信された対話データをリレーすることができる。
【0031】
一部の攻撃では、介入デバイス106-1(および/または介入デバイス106-2)は、アクセスデバイス104-2によって提供される対話データを変更することができる。非限定的な例として、介入デバイス106-1は、アクセスデバイス104-2ではなく、アクセスデバイス104-1によって対話データが提供されたことを示す識別データを変更することができる。より具体的には、介入デバイス106-1および/または106-2は、「OtherGas、ポンプ4」関連する対話データを「SuperGas、ポンプ1」に変更することができる。この変更された対話データは、ステップ9でユーザデバイス102にリレーされ得る。この変更された対話データの受信は、ユーザデバイス104と、アクセスデバイス104-1であるはずの介入デバイス106-1との間の対話を確認するために、ユーザデバイス102が、別のユーザインターフェース(例えば、
図3のユーザインターフェース300など)を提示することを引き起こすことがある。
図3は、一部の実施形態によるBLE有効アクセスデバイスとの対話を確認するための例示的なユーザインターフェース300を示す。非限定的な例として、ユーザインターフェース300は、
図3に示されるように、対話が、「アクセスデバイス1、端末1と動作することを示すテキスト302を含んでもよい。
図1の進行中の例では、テキスト302は、対話がアクセスデバイス104-1(例えば、SuperGas、ポンプ1で、事前認証$99を進める)で生じることを示すことができる。テキスト302は、アクセスデバイス104-2によって提供されるおよび/または介入デバイス106-1および/または106-2によって変更される対話データの任意の適切な部分を含んでもよいことが理解されるべきである。
【0032】
一部の実施形態では、ユーザインターフェース300は、ユーザデバイス102の任意の好適な生体情報入力デバイスを利用して生体情報を受信するように構成され得る。例として、ユーザは、ユーザデバイス102で指紋リーダーを介して指紋をスキャンすることにより、対話(例えば、事前認証など)を実行する意図を示すことができる。対話を実行する意図を示すための好適な機構は、(例えば、
図2の確認ボタン204と類似したボタン、別の適切な生体情報入力デバイス(例えば、カメラ、網膜リーダー、および虹彩スキャナなど)を介して)使用され得る。一部の実施形態では、ユーザインターフェース300は、ユーザがテキスト302に示される対話を実行する意図がないことを示すキャンセルボタン304または同様のインターフェース要素をさらに含んでもよい。
【0033】
図1の進行中の例に戻り、介入デバイス106-1は、それ自体を「SuperGas、ポンプ1」としてユーザデバイス102に以前に提示したので、ユーザは、自分のユーザデバイス102がアクセスデバイス104-1(例えば、ユーザデバイス102の近くにある「SuperGas」ポンプ)と対話していると勘違いして、実際には、介入デバイス106-1および106-2を介して、アクセスデバイス104-2(「OtherGas」ポンプ)と実際に対話しているとき、取引を実行する可能性がある。その結果、ユーザは、実際には、ユーザデバイス102がアクセスデバイス104-1に対してまったく対話していないときに、対話が、SuperGas、ポンプ1とされていると信じて、
図3のテキスト302を読み取ることに基づいて、対話を実行する意図を示し得る。
【0034】
ユーザが対話を実行することを意図する表示を受信したら、ユーザデバイス102は、ステップ10で支払いデータを提供するように構成され得る。例えば、ユーザデバイス102上で動作するアプリケーションは、ステップ11で介入デバイス106-1を介して、介入デバイス106-2にリレーされるチップデータを生成することができる。ステップ12では、介入デバイス106-2は、アクセスデバイス104-2に支払いデータを提供する。
【0035】
これにより、不正行為者の共犯者(例えば、動作している介入デバイス106-2)が、自身のガスタンクを充填することができ、実際のユーザが意図するより大きい量である可能性がある。シンプルなリレー攻撃の状況では、リアルユーザは自分のタンクを埋めるチャンスを得ることすらできない。つまり、介入デバイス106-1は、不正取引を実行するために必要なデータを有するやいなや、ユーザデバイス102とのBLE接続を単に終了することができる。
【0036】
このタイプの攻撃には多くの変化があることが理解されている。上記の説明は一つの例のみである。また、アクセスデバイス104-1(例えば、小売業者「SuperGas」)のプロバイダーは、不正行為者と共謀しないことを理解することができる。アクセスデバイス104-2(例えば、小売業者「OtherGas」)のプロバイダーにとって、介入デバイス106-2は本物のユーザのデバイスとみなされる。その結果、アクセスデバイス104-2のプロバイダーは、知らないうちに、不正取引に対する当事者にされる。
【0037】
上記のリレー攻撃は、ユーザが、対話をしていると信じているアクセスデバイスが、実際の対話が実行されているアクセスデバイスと同じであることを確認ことができないため、可能である。
【0038】
図4は、一部の実施形態によるリレー攻撃を防止するための例示的な方法400を示すブロック図を示す。
図4は、アクセスデバイス(例えば、アクセスデバイス104-2)が秘密鍵を利用して送信されたデータをデジタルで署名する使用例を示す。送信は、介入デバイスがデータを変更する場合、ユーザデバイス102がデジタル署名を公開鍵を使用して検証することによってデータが修正された事実を特定することができるように、対応する公開鍵を含んでもよい。
【0039】
図4に示す例では、ユーザデバイス102は、暗号化データ402で構成され得る。一部の実施形態では、暗号化データ402は、証明機関(図示せず)によって発行された証明書を含んでもよい。一部の実施形態では、証明書は、Europay、Mastercard(登録商標)、Visa(登録商標)(EMV)証明書であることができる。一部の実施形態では、証明書は、証明機関に関連付けられた秘密鍵を利用して、証明機関によってデジタル署名される、ユーザデバイス102に関連付けられた公開鍵を含んでもよい。暗号化データ402は、ユーザデバイス104と関連付けられている、秘密鍵(例えば、証明機関によりデジタル署名された認定された公開鍵に関連する秘密鍵)をさらに含んでもよい。アクセスデバイス104-1および104-2は、それぞれ、暗号化データ404および406を生成するように構成され得る。暗号化データ404および406は、それぞれ、各デバイスに対して認定されていない公開/秘密鍵ペアを含んでもよい。公開/秘密鍵ペアは、Rivest鍵、Shamir鍵、Adelman(RSA)鍵、エリプティック・カーブ暗号化(ECC)鍵、またはその他の適切な暗号化アルゴリズムの鍵など、非対称鍵ペアである。一部の実施形態では、アクセスデバイス104-1および104-2は、ユーザデバイス(例えば、ユーザデバイス102)との潜在的な対話に対して新しい公開/秘密鍵ペアを生成するように構成され得る。他の実施形態では、アクセスデバイス104-1および104-2は、各々のユーザデバイスとさまざまな対話を実行するために、各単一の公開/秘密鍵ペアを再利用するように構成され得る。
【0040】
ステップ1では、(例えば、ポンプ1においてガスステーション「SuperGas」に位置する)アクセスデバイス104-1は、(例えば、BLEなどの短距離無線プロトコルを介して)広告メッセージを送信することができる。広告メッセージは、アクセスデバイス104-1に関連する識別データを少なくとも含むことができる。例として、識別データは、資源プロバイダーの識別子(例えば、「SuperGas」などの小売業者)を含んでもよい。一部の実施形態では、アクセスデバイス104-1に関連する識別情報は、デバイス識別子(例えば、「ポンプ1」など)をさらに含んでもよい。ユーザデバイス102は、アクセスデバイス104-1に近づき(例えば、短距離無線通信プロトコルの短距離無線メッセージを受信する範囲内)、アクセスデバイス104-1からの閾値距離を侵入することができる。
【0041】
ステップ2では、第一の不正行為者によって操作される介入デバイス106-1は、広告メッセージを傍受し、メッセージを変更されていないユーザデバイス102にリレーすることができる。
【0042】
ステップ3では、ユーザデバイス102は、アクセスデバイス104-1と接続を確認するために、広告メッセージを受信し、一つまたは複数のユーザインターフェースを表示することができる。例として、ユーザデバイス102は、
図2のユーザインターフェースを提示することができる。
【0043】
図1に戻り、ユーザインターフェース200を提示し、ユーザが、「SuperGas、ポンプ1」との接続を確立しようと意図しているという確認を受信(例えば、確認ボタン204が選択されたことの表示)したとき、介入デバイス106-1とユーザデバイス102との間に適切な短距離無線プロトコル(例えば、BLE)を使用して接続を確立することができる。ユーザデバイス102のユーザは、それらが、(例えば、
図2のユーザインターフェース200に提供されるテキスト202に基づいて)アクセスデバイス104-1に接続されていると信じうる。しかしながら、ユーザデバイス102は、実際に不正行為者のデバイス(例えば、介入デバイス106-1)に接続され得る。
【0044】
介入デバイス106-1とユーザデバイス102との間の接続が確立されると、介入デバイス106-1は、ステップ4で、任意の適切な有線および/または無線接続を介して、共犯者の第二の不正デバイス(例えば、介入デバイス106-2)に接続(またはデータを送信)することができる。介入デバイス106-2は、例えば、別のアクセスデバイス(例えば、別のガスステーション「OtherGas」に位置するアクセスデバイス)に位置することができる。介入デバイス106-2は、ステップ5でアクセスデバイス104-2への第二のBLE接続を介して、接続(またはデータを送信)することができる。
【0045】
一部の実施形態では、アクセスデバイス104-2は、送信用に対話データ(例えば、アクセスデバイス104-2に関連する識別情報、事前認証金額などの対話値、などを含む)を生成することができる。しかしながら、対話データを送信する前に、アクセスデバイス104-2は、対話データの少なくとも一部を利用してデジタル署名を生成するように構成され得る。
図5は、一部の実施形態によるデジタル署名を生成するための例示的な方法を示す概略
図500を示す。
【0046】
図500は、メッセージデータ502を示す。メッセージデータ502は、接続の確立および/またはアクセスデバイスとユーザデバイス間の対話を実行するためのデータの好適な組み合わせに対応する任意の適切な数のデータフィールドを含んでもよい。例として、メッセージデータ502は、データフィールド502Aを含んでもよい。一部の実施形態では、データフィールド502Aは、アクセスデバイスのプロバイダーに関連付けられた識別子(例えば、
図4の例のような「SuperGas」などの小売業者)を含んでもよい。メッセージデータ502は、さらに、または別の方法でデータフィールド502Bを含んでもよい。一部の実施形態では、データフィールド502Bは、デバイス識別子(例えば、シリアル番号、プロバイダーの特定のデバイスに関連する識別子(例えば、
図4の例の「ポンプ4」など))を含んでもよい。一部の実施形態では、メッセージデータ502はさらに、または別の方法で、データフィールド502Cを含んでもよい。一部の実施形態では、データフィールド502Cは、対話量(例えば、事前認証金額、最終購入価格など)に対応することができる。一部の実施形態では、メッセージデータ502はさらに、または別の方法で、データフィールド502Dを含んでもよい。一部の実施形態では、データフィールド502Dは、位置に対応することができる(例えば、アクセスデバイスに関連する位置)。一部の実施形態では、メッセージデータ502はさらに、または別の方法で、データフィールド502Eを含んでもよい。一部の実施形態では、データフィールド502Eは、公開鍵(例えば、アクセスデバイスに関連する公開鍵など)と対応することができる。データフィールド504の任意の好適な組み合わせは、デジタル署名506を生成するために(例えば、アクセスデバイスによって)利用され得る。メッセージデータ502の順序は、実施形態によって異なることが理解されるべきである。図示されていないが、一部の実施形態(例えば、ユーザデバイスからアクセスデバイスへ送信されるメッセージの場合)では、データフィールドは、支払いデータを送信するためのデータフィールドをさらに含んでもよい。
【0047】
一部の実施形態では、デジタル署名506は、データフィールド504の任意の適切な部分をハッシュすることによって(例えば、アクセスデバイスによって)生成され得る。例として、デジタル署名506は、最初に、ハッシュ値を生成するために、ハッシュアルゴリズムへの入力としてデータフィールド502Aおよび/または502Bを提供することによって生成され得る。生成されたハッシュ値は、デジタル署名506を生成するために、秘密鍵(例えば、アクセスデバイスに関連する秘密鍵)とともに、署名アルゴリズムに入力することができる。デジタル署名506は、デジタル署名を生成するために利用されたデータフィールドが変更されていないことを確認するため、秘密鍵に対応する公開鍵とともに利用され得る。非限定的な例として、メッセージデータ502のレシーバーは、デジタル署名506からハッシュ値を取得するために、公開鍵(例えば、データフィールド502Eに提供される公開鍵など)を利用することができる。その後、レシーバーは、データフィールド504(例えば、データフィールド502Aと502Bなど)の所定の組み合わせからハッシュを生成し、追加のハッシュ値を生成することができる。次に、レシーバーは、デジタル署名506から取得されたハッシュを生成されたハッシュと比較することができる。二つのハッシュ値が一致する場合、レシーバーは、メッセージが有効である(例えば、変更なし)と保証する。二つのハッシュ値が一致しない場合、レシーバーは、メッセージが無効である(例えば、元の送信以降に変更されている)と決定することができる。
図5に提供される例は、例示的であり、本開示の範囲を制限することを意図していないことを理解すべきである。他の実施形態では、データフィールド504の任意の適切な組み合わせ(例えば、データフィールド504の全て、上述のものより多くまたは少ないデータフィールド、など)を利用して、これらのデータが受信時に変更されているかどうかを決定するために利用することができるデジタル署名506を生成することができる。
【0048】
図4に戻ると、アクセスデバイス104-2は、対話データの少なくとも一部を利用するステップ6でデジタル署名を生成することができる。例として、アクセスデバイス104-2は、対話データの識別データ(例えば、小売業者識別子、デバイス識別子など)を利用して、
図5に記載される方法でデジタル署名を生成することができる。一部の実施形態では、デジタル署名は、識別データに加えて、他の対話データ(例えば、位置、対話値など)を使用して生成され得る。アクセスデバイス104-2は、デジタル署名、およびデジタル署名を生成するために使用される秘密鍵に対応する公開鍵をメッセージ内に挿入することができ、およびそのメッセージをユーザデバイス102に送信することができる。
【0049】
介入デバイス106-2は、ステップ7でアクセスデバイス104-2からメッセージを受信し、ステップ8で介入デバイス106-1にメッセージをリレーすることができる。
【0050】
介入デバイス106-1(および/または介入デバイス106-2)は、アクセスデバイス104-2によって提供される対話データを変更することができる。非限定的な例として、介入デバイス106-1は、アクセスデバイス104-2ではなく、アクセスデバイス104-1によって対話データが提供されたことを示す識別データを変更することができる。より具体的には、介入デバイス106-1および/または106-2は、「OtherGas、ポンプ4」関連する対話データを「SuperGas、ポンプ1」に変更することができる。この変更された対話データは、ステップ9でユーザデバイス102にリレーされ得る。
【0051】
ステップ10では、ユーザデバイス102は、メッセージ内で受信されたアクセスデバイス104-2に関連するデジタル署名および公開鍵を利用して受信メッセージを有効化するように構成され得る。例として、受信メッセージに含まれる公開鍵は、メッセージに含まれるデジタル署名のハッシュ値を抽出するために利用され得る。次に、ユーザデバイス102は、次に、データフィールドの所定のセット(例えば、
図5のデータフィールド502Aおよび502Bなど)に基づいて追加のハッシュ値を計算することができる。ユーザデバイス102は、抽出されたハッシュ値を計算されたハッシュ値と比較することができる。
【0052】
ステップ11では、ハッシュ値はデータが変更されることによって一致しないため、ユーザデバイス102は、メッセージが無効である(例えば、変更された、または、データフィールドの少なくとも所定のセットが変更された)と決定し、アクセスデバイス104-2とのさらなる対話を決定するように構成され得る。
【0053】
図6は、一部の実施形態によるリレー攻撃を防止するための別の例示的な方法600を示すブロック図を示す。
図6は、アクセスデバイス(例えば、アクセスデバイス104-2)が送信の前に秘密鍵を利用してデータをデジタルで署名する使用例を示す。秘密鍵に対応する公開鍵は、送信に含めることができる。データが介入デバイスによって変更されないが、単にリレーされている場合は、デジタル署名の検証が、ユーザデバイス102で検証を通過することができる。ただし、メッセージが有効であると決定された場合(例えば、変更なし)でも、メッセージのデータ(例えば、小売業者名/識別子を示す識別データ)の少なくとも一部の追加のチェックが実行される可能性がある。例として、アクセスデバイス104-2から得られたメッセージの識別データは、ユーザデバイスと対話する事業体がユーザデバイス102が接続が承認されたと信じる事業体と同じであることを確認するため、初期接続段階で受信された識別と比較し得る。
【0054】
図6に示される例では、
図4の例に示すように、ユーザデバイス102は、暗号化データ402で構成され得る。
図4に関して上述したように、暗号化データ402は、証明機関(図示せず)によって発行される証明書を含んでもよい。アクセスデバイス104-1および104-2は、それぞれ、それぞれ個別にそれぞれのデバイスに対して認定されていない公開/秘密鍵ペアを含めることができる暗号化データ404および406を生成するように構成され得る。
【0055】
方法600のステップ1~10は、
図4に関連して上述した方法400のステップ1~10の類似の方法で実施することができる。
【0056】
ステップ1では、(例えば、ポンプ1においてガスステーション「SuperGas」に位置する)アクセスデバイス104-1は、(例えば、BLEなどの短距離無線プロトコルを介して)広告メッセージを送信することができる。広告メッセージは、アクセスデバイス104-1に関連する識別データを少なくとも含むことができる。例として、識別データは、資源プロバイダーの識別子(例えば、「SuperGas」などの小売業者)を含んでもよい。一部の実施形態では、アクセスデバイス104-1に関連する識別データは、デバイス識別子(例えば、「ポンプ1」など)をさらに含んでもよい。ユーザデバイス102は、アクセスデバイス104-1に近づき(例えば、短距離無線通信プロトコルの短距離無線メッセージを受信する範囲内)、アクセスデバイス104-1からの閾値距離を侵入することができる。
【0057】
ステップ2では、第一の不正行為者によって操作される介入デバイス106-1は、広告メッセージを傍受し、メッセージを変更されていないユーザデバイス102にリレーすることができる。
【0058】
るために、広告メッセージを受信し、一つまたは複数のユーザインターフェースを表示することができる。例として、ユーザデバイス102は、
図2のユーザインターフェースを提示することができる。
【0059】
ユーザインターフェース200を提示し、ユーザが、「SuperGas、ポンプ1」との接続を確立しようと意図しているという確認を受信(例えば、確認ボタン204が選択されたことの表示)したとき、介入デバイス106-1とユーザデバイス102との間に適切な短距離無線プロトコル(例えば、BLE)を使用して接続を確立することができる。ユーザデバイス102のユーザは、それらが、(例えば、
図2のユーザインターフェース200に提供されるテキスト202に基づいて)アクセスデバイス104-1に接続されていると信じうる。しかしながら、ユーザデバイス102は、実際に不正行為者のデバイス(例えば、介入デバイス106-1)に接続され得る。ユーザデバイス102は、この実施形態において、広告メッセージで受信したデータの少なくとも一部を保存することができる。例として、ユーザデバイス102は、ユーザデバイス102が接続されると言われるデバイスを示すように、識別データ(例えば、「SuperGas」)を保存することができる。
【0060】
介入デバイス106-1とユーザデバイス102との間の接続が確立されると、介入デバイス106-1は、ステップ4で、任意の適切な有線および/または無線接続を介して、共犯者の第二の不正デバイス(例えば、介入デバイス106-2)に接続(またはデータを送信)することができる。介入デバイス106-2は、例えば、別のアクセスデバイス(例えば、別のガスステーション「OtherGas」に位置するアクセスデバイス)に位置することができる。介入デバイス106-2は、ステップ5でアクセスデバイス104-2への第二のBLE接続を介して、接続(またはデータを送信)することができる。
【0061】
一部の実施形態では、アクセスデバイス104-2は、送信用に対話データ(例えば、アクセスデバイス104-2に関連する識別情報、事前認証金額などの対話値、などを含む)を生成することができる。しかしながら、対話データを送信する前に、アクセスデバイス104-2は、
図4および5に関連して上述した方法で対話データの少なくとも一部を利用してデジタル署名を生成するように構成され得る。
【0062】
ステップ6では、アクセスデバイス104-2は、対話データの少なくとも一部を利用してデジタル署名を生成することができる。例として、アクセスデバイス104-2は、対話データの識別データ(例えば、小売業者識別子、デバイス識別子、
図5のデータフィールド504の任意の適切な組み合わせ)を利用して、
図5に記載される方法でデジタル署名を生成することができる。アクセスデバイス104-2は、デジタル署名、およびデジタル署名を生成するために使用される秘密鍵に対応する公開鍵をメッセージ内に挿入することができ、およびそのメッセージをユーザデバイス102に送信することができる。
【0063】
介入デバイス106-2は、ステップ7でアクセスデバイス104-2からメッセージを受信し、ステップ8で介入デバイス106-1にメッセージをリレーすることができる。介入デバイス106-1(および/または介入デバイス106-2)は、ステップ9で、ユーザデバイス102に未変更メッセージをリレーすることができる。進行中の例では、メッセージは「OtherGas」に対応する識別データを依然として示すことが理解されるべきである。
【0064】
ステップ10では、ユーザデバイス102は、メッセージ内で受信されたアクセスデバイス104-2に関連するデジタル署名および公開鍵を利用して受信メッセージを有効化するように構成され得る。例として、受信メッセージに含まれる公開鍵は、メッセージに含まれるデジタル署名のハッシュ値を抽出するために利用され得る。次に、ユーザデバイス102は、次に、データフィールドの所定のセット(例えば、
図5のデータフィールド502Aおよび502Bなど)に基づいて追加のハッシュ値を計算することができる。ユーザデバイス102は、抽出されたハッシュ値を計算されたハッシュ値と比較することができる。
【0065】
ステップ11では、ハッシュ値はメッセージデータが変更されていないために一致し得るので、ユーザデバイス102は、メッセージが有効である(例えば、変更されていない、または少なくともデータフィールドの所定の設定が変更されなかった)と決定するように構成されてよい。
【0066】
ステップ12では、ユーザデバイスは、データフィールドの一部が保存された情報に一致するかどうかを決定するようにさらに構成され得る。例として、ユーザデバイス102は、メッセージ内で受信された識別データ(例えば、「OtherGas」を示す)が、ユーザデバイス102に保存され、ユーザデバイス102がおそらく接続されているアクセスデバイス104-1(例えば、「SuperGas」)と関連する識別データと一致するかどうかを決定することができる。進行中の例では、ユーザデバイス102は、受信された識別データ(例えば、「OtherGas」)が接続デバイスに関連付けられている保存された識別データ(例えば、「SuperGas」)と一致しないと決定することができる。この決定に少なくとも部分的に基づいて、ユーザデバイス102は、アクセスデバイス104-2とのさらなる対話を終了するように構成され得る。
【0067】
図7は、一部の実施形態によるリレー攻撃を防止するための別の例示的な方法700を説明するブロック図を示す。
図7は、アクセスデバイス104-1がユーザデバイス102に送信される接続メッセージにおいてその公開鍵を提供する例に関する。アクセスデバイス104-2から次のメッセージを有効化するために同じ公開鍵を使用することができる。リレー攻撃では、接続しているデバイスの公開鍵は、次のメッセージの公開鍵と一致しないため、このことにより次のメッセージの検証チェックがユーザデバイス102で失敗させることができる。
【0068】
図7に示される例では、
図4および6に関連して上記のように、ユーザデバイス102は、暗号化データ402(例えば、証明書および/または認定された公開/秘密鍵ペア)を用いて構成され得る。アクセスデバイス104-1および104-2は、それぞれ、暗号化データ404および406を生成および/または保存するように構成され得る。暗号化データ404および406は、それぞれ、各デバイスに対して認定されていない公開/秘密鍵ペアを含んでもよい。例として、暗号化データ404は、公開鍵702と関連付けられた公開鍵702および秘密鍵を含んでもよい。
【0069】
ステップ1では、(例えば、ポンプ1においてガスステーション「SuperGas」に位置する)アクセスデバイス104-1は、(例えば、BLEなどの短距離無線プロトコルを介して)広告メッセージを送信することができる。広告メッセージは、アクセスデバイス104-1に関連する識別データを少なくとも含むことができる。例として、識別データは、資源プロバイダーの識別子(例えば、「SuperGas」などの小売業者)を含んでもよい。一部の実施形態では、アクセスデバイス104-1に関連する識別データは、デバイス識別子(例えば、「ポンプ1」など)をさらに含んでもよい。
図7に示す例では、広告メッセージは、暗号化データ404の公開鍵702をさらに含んでもよい。ユーザデバイス102は、アクセスデバイス104-1に近づき(例えば、短距離無線通信プロトコルの短距離無線メッセージを受信する範囲内)、アクセスデバイス104-1からの閾値距離を侵入することができる。
【0070】
ステップ2では、第一の不正行為者によって操作される介入デバイス106-1は、広告メッセージを傍受し、メッセージを変更されていないユーザデバイス102にリレーすることができる。
【0071】
ステップ3では、ユーザデバイス102は、アクセスデバイス104-1と接続を確認するために、広告メッセージを受信し、一つまたは複数のユーザインターフェースを表示することができる。例として、ユーザデバイス102は、
図2のユーザインターフェース200を提示することができる。一部の実施形態では、ユーザデバイス102は、ユーザデバイス102において暗号化データ404の公開鍵702を保存することができる。
【0072】
ユーザインターフェース200を提示し、ユーザが、「SuperGas、ポンプ1」との接続を確立しようと意図しているという確認を受信(例えば、
図2の確認ボタン204が選択されたことの表示)したとき、ユーザデバイス102は、ステップ4で、介入デバイス106-1との適切な短距離無線プロトコル(例えば、BLE)を使用して接続を確立することができる。ユーザデバイス102のユーザは、それらが、(例えば、
図2のユーザインターフェース200に提供されるテキスト202に基づいて)アクセスデバイス104-1に接続されていると信じうる。しかしながら、ユーザデバイス102は、実際に不正行為者のデバイス(例えば、介入デバイス106-1)に接続され得る。
【0073】
介入デバイス106-1とユーザデバイス102との間の接続が確立されると、介入デバイス106-1は、ステップ5で、任意の適切な有線および/または無線接続を介して、共犯者の第二の不正デバイス(例えば、介入デバイス106-2)に接続(またはデータを送信)することができる。介入デバイス106-2は、例えば、別のアクセスデバイス(例えば、別のガスステーション「OtherGas」に位置するアクセスデバイス)に位置することができる。介入デバイス106-2は、ステップ6でアクセスデバイス104-2への第二のBLE接続を介して、接続(またはデータを送信)することができる。
【0074】
一部の実施形態では、アクセスデバイス104-2は、送信用に対話データ(例えば、アクセスデバイス104-2に関連する識別データ、事前認証金額などの対話値、などを含む)を生成することができる。しかしながら、対話データを送信する前に、アクセスデバイス104-2は、
図4~7に関連して上述したように、対話データの少なくとも一部を利用してデジタル署名を生成するように構成され得る。アクセスデバイス104-2は、対話データの少なくとも一部を利用して、ステップ7でデジタル署名を生成することができる。例として、アクセスデバイス104-2は、対話データの適切な部分(例えば、小売業者識別子および/またはデバイス識別子、アクセスデバイスと関連する小売業者識別子/デバイス識別子および位置、または
図5のデータフィールド504の適切な組み合わせ)を使用して、上記の方法でデジタル署名を生成することができる。アクセスデバイス104-2は、メッセージ内にデジタル署名を挿入し、メッセージをユーザデバイス102に送信することができる。一部の実施形態では、アクセスデバイス104-2は、ユーザデバイス102にメッセージを送信する前に、同じメッセージ内でデジタル署名を生成するために使用される公開鍵を挿入し得る(挿入しなくてもよい)。
【0075】
介入デバイス106-2は、ステップ8でアクセスデバイス104-2からメッセージを受信し、ステップ9で介入デバイス106-1にメッセージをリレーすることができる。介入デバイス106-1は、ステップ10でユーザデバイス102に変更されていないまたは変更されたメッセージを転送することができる。一部の実施形態では、介入デバイス106-1および/または106-2は、メッセージの一部を変更することができ、一方で、その他の実施形態では、介入デバイス106-1および106-2はユーザデバイス102に変更されていないメッセージをリレーする。
【0076】
ステップ11では、ユーザデバイス102は、デジタル署名および公開鍵702を使用して受信メッセージを有効化するように構成され得る。例として、接続時に受信した公開鍵702は、ステップ10で受信されたメッセージに含まれるデジタル署名のハッシュ値を抽出するために利用され得る。ユーザデバイス102は、次に、データフィールドの所定のセット(例えば、データフィールド502Aおよび502B、データフィールド502A、502B、および502D、または
図5のデータフィールド504の任意の好適な組み合わせ)に基づいて追加のハッシュ値を計算することができる。ユーザデバイス102は、抽出されたハッシュ値を計算されたハッシュ値と比較することができる。
【0077】
ステップ12では、ハッシュ値が、(例えば、公開鍵702がメッセージを有効化するために使用され、および公開鍵702が、デジタル署名を生成するために使用される秘密鍵に対応していないことに少なくとも部分的に基づいて)一致しないので、ユーザデバイス102は、そのメッセージが無効であると決定することができる。この決定は、メッセージが変更された、または変更されなかったかどうかに関係なく発生することができる。一部の実施形態では、デジタル署名を利用する検証に加え、またはその代わりに、ユーザデバイス102は、公開鍵702を、ステップ10で受信されたメッセージに含まれる公開鍵と比較するように構成され得る。公開鍵が一致しない場合、ユーザデバイス102は、上記のようにデジタル署名およびハッシュ値を使用してメッセージを検証することなく、メッセージが無効であると決定するように構成され得る。
【0078】
ステップ13で、メッセージが無効であると決定したことに応答して、ユーザデバイス102は、アクセスデバイス104-2とのさらなる対話を終了することができる。
【0079】
図8は、一部の実施形態によるリレー攻撃を防止するための別の例示的な方法を説明するブロック図を示す。
図8は、二つの介入デバイスがアクセスデバイスとユーザデバイス間にメッセージを単にリレーする例に関する。メッセージが変更されないため、メッセージの検証チェックは、メッセージが有効である(例えば、変更なし)ことを示し得る。ただし、ユーザは、ユーザが接続したと信じる事業体と、その後追加データ(支払いデータなど)を要求した事業体間の不一致を認識できる通知を提供され得る。ユーザはこの通知を利用して、この不一致による対話をキャンセルすることに進むことができる。
【0080】
図8に示される例では、
図4、6および7に関連して上記のように、ユーザデバイス102は、暗号化データ402(例えば、証明書および/または認定された公開/秘密鍵ペア)を用いて構成され得る。アクセスデバイス104-1および104-2は、それぞれ、暗号化データ404および406を生成および/または保存するように構成され得る。暗号化データ404および406は、それぞれ、各デバイスに対して認定されていない公開/秘密鍵ペアを含んでもよい。
【0081】
ステップ1では、(例えば、ポンプ1においてガスステーション「SuperGas」に位置する)アクセスデバイス104-1は、(例えば、BLEなどの短距離無線プロトコルを介して)広告メッセージを送信することができる。広告メッセージは、アクセスデバイス104-1に関連する識別データを少なくとも含むことができる。例として、識別データは、資源プロバイダーの識別子(例えば、「SuperGas」などの小売業者)を含んでもよい。一部の実施形態では、アクセスデバイス104-1に関連する識別データは、デバイス識別子(例えば、「ポンプ1」など)をさらに含んでもよい。ユーザデバイス102は、アクセスデバイス104-1に近づき(例えば、短距離無線通信プロトコルの短距離無線メッセージを受信する範囲内)、アクセスデバイス104-1からの閾値距離を侵入することができる。
【0082】
ステップ2では、第一の不正行為者によって操作される介入デバイス106-1は、広告メッセージを傍受し、メッセージを変更されていないユーザデバイス102にリレーすることができる。
【0083】
ステップ3では、ユーザデバイス102は、アクセスデバイス104-1と接続を確認するために、広告メッセージを受信し、一つまたは複数のユーザインターフェースを表示することができる。例として、ユーザデバイス102は、
図2のユーザインターフェース200を提示することができる。
【0084】
図8に戻り、ユーザインターフェース200を提示し、ユーザが、「SuperGas、ポンプ1」との接続を確立しようと意図しているという確認を受信(例えば、
図2の確認ボタン204が選択されたことの表示)したとき、介入デバイス106-1とユーザデバイス102との間に適切な短距離無線プロトコル(例えば、BLE)を使用して接続を確立することができる。ユーザデバイス102のユーザは、それらが、(例えば、
図2のユーザインターフェース200に提供されるテキスト202に基づいて)アクセスデバイス104-1に接続されていると信じうる。しかしながら、ユーザデバイス102は、実際に不正行為者のデバイス(例えば、介入デバイス106-1)に接続され得る。
【0085】
介入デバイス106-1とユーザデバイス102との間の接続が確立されると、介入デバイス106-1は、ステップ4で、任意の適切な有線および/または無線接続を介して、共犯者の第二の不正デバイス(例えば、介入デバイス106-2)に接続(またはデータを送信)することができる。介入デバイス106-2は、例えば、別のアクセスデバイス(例えば、別のガスステーション「OtherGas」に位置するアクセスデバイス)に位置することができる。介入デバイス106-2は、ステップ5でアクセスデバイス104-2への第二のBLE接続を介して、接続(またはデータを送信)することができる。
【0086】
一部の実施形態では、アクセスデバイス104-2は、送信用に対話データ(例えば、アクセスデバイス104-2に関連する識別情報、事前認証金額などの対話値、などを含む)を生成することができる。しかしながら、対話データを送信する前に、アクセスデバイス104-2は、
図4~7に関連して上述したように、対話データの少なくとも一部を利用してデジタル署名を生成するように構成され得る。アクセスデバイス104-2は、対話データの少なくとも一部を利用して、ステップ6でデジタル署名を生成することができる。例として、アクセスデバイス104-2は、識別データ(例えば、小売業者識別子、デバイス識別子)、および(一部の場合)アクセスデバイスに関連する位置を利用して、
図5に記載される方法でデジタル署名を生成することができる。アクセスデバイス104-2は、デジタル署名、およびデジタル署名を生成するために使用される秘密鍵に対応する公開鍵をメッセージ内に挿入することができ、およびそのメッセージをユーザデバイス102に送信することができる。
【0087】
介入デバイス106-2は、ステップ7でアクセスデバイス104-2からメッセージを受信し、ステップ8で介入デバイス106-1にメッセージをリレーすることができる。介入デバイス106-1は、ステップ9でユーザデバイス102に変更されていないメッセージを転送することができる。
【0088】
ステップ10では、ユーザデバイス102は、メッセージ内で受信されたアクセスデバイス104-2に関連するデジタル署名および公開鍵を利用して受信メッセージを有効化するように構成され得る。例として、受信メッセージに含まれる公開鍵は、メッセージに含まれるデジタル署名のハッシュ値を抽出するために利用され得る。ユーザデバイス102は、次に、データフィールドの所定のセット(例えば、データフィールド502Aおよび502B、データフィールド502A、502B、および502D、または
図5のデータフィールド504の任意の好適な組み合わせ)に基づいて追加のハッシュ値を計算することができる。ユーザデバイス102は、抽出されたハッシュ値を計算されたハッシュ値と比較することができる。
【0089】
ステップ11では、ハッシュ値はデータが変更されていないために一致するので、ユーザデバイス102は、メッセージが有効である(例えば、変更されていない、または少なくともデータフィールドの所定の設定が変更されなかった)ことを決定するように構成されてよい。この決定の結果、ユーザインターフェース(例えば、
図3のユーザインターフェース300)は、ユーザがアクセスデバイス104-2と対話する意図に関して、ユーザからの不正確認に対しユーザデバイス102で提示することができる。ユーザが情報(例えば「SuperGas」)を接続時に提示されたことによって、ユーザは、現在提示されているデータ(例えば、「OtherGas」)が、接続されていると信じているアクセスデバイス(例えば、アクセスデバイス104-2)と異なるアクセスデバイス(例えば、アクセスデバイス104-1)と関連付けられていることを認識することができる。ユーザは(例えば、
図3のキャンセルボタン304の選択を介して)、アクセスデバイス104-2と対話する意図がないことを示すことができる。
【0090】
ステップ12では、メッセージが有効であることが判明したが、ユーザデバイス102は、ユーザがアクセスデバイス104-2と対話する意図がないという表示を受け取ったことに少なくとも部分的に基づいて、アクセスデバイス104-2とのさらなる対話を終了することができる。
【0091】
図9は、一部の実施形態によるリレー攻撃を防止するためのさらなる例示的な方法900を示すブロック図を示す。
図9は、ユーザデバイス(例えば、ユーザデバイス102)が、接続がアクセスデバイス104-1となされている(例えば「SuperGas」と関連付けられている)と、間違って信じ、通知が提供されているにもかかわらず、ユーザは、いわゆる接続されたアクセスデバイスと次の対話を要求するアクセスデバイスとの不一致に気がつくことができないので、アクセスデバイス104-2(例えば、「OtherGas」)との次の対話を間違って認証する例に関する。この使用例では、ユーザデバイス102は、アクセスデバイス104-2に戻るデータをデジタル署名することができる。受信後、アクセスデバイス104-2は、メッセージの公開鍵(例えば、ユーザデバイスに以前に送信され、ユーザデバイスによってデジタル署名されたアクセスデバイス104-2の公開鍵)を確認することができる。メッセージに含まれる公開鍵が、アクセスデバイス104-2によって保留されていると同じ公開鍵である場合は、対話が有効とみなされ得る。有効な場合、受信されたデータの少なくとも一部は、従来の認証要求プロセスを実行するために、資源プロバイダーに送信され得る。ただし、メッセージが無効な場合、アクセスデバイス104-2は処理を停止するように構成され得る。
【0092】
図9に示す例では、ユーザデバイス102は、暗号化データ402で構成され得る。
図4に関して上述したように、暗号化データ402は、証明機関(図示せず)によって発行される証明書を含んでもよい。アクセスデバイス104-1および104-2は、それぞれ、暗号化データ404および406を生成するように構成され得る。暗号化データ404および406は、それぞれ、各デバイスに対して認定されていない公開/秘密鍵ペアを含んでもよい。
【0093】
ステップ1では、(例えば、ポンプ1においてガスステーション「SuperGas」に位置する)アクセスデバイス104-1は、(例えば、BLEなどの短距離無線プロトコルを介して)広告メッセージを送信することができる。広告メッセージは、アクセスデバイス104-1に関連する識別データを少なくとも含むことができる。例として、識別データは、資源プロバイダーの識別子(例えば、「SuperGas」などの小売業者)を含んでもよい。一部の実施形態では、アクセスデバイス104-1に関連する識別データは、デバイス識別子(例えば、「ポンプ1」など)をさらに含んでもよい。ユーザデバイス102は、アクセスデバイス104-1に近づき(例えば、短距離無線通信プロトコルの短距離無線メッセージを受信する範囲内)、アクセスデバイス104-1からの閾値距離を侵入することができる。
【0094】
ステップ2では、第一の不正行為者によって操作される介入デバイス106-1は、広告メッセージを傍受し、メッセージを変更されていないユーザデバイス102にリレーすることができる。
【0095】
ステップ3では、ユーザデバイス102は、アクセスデバイス104-1と接続を確認するために、広告メッセージを受信し、一つまたは複数のユーザインターフェースを表示することができる。例として、ユーザデバイス102は、
図2のユーザインターフェースを提示することができる。
【0096】
ユーザインターフェース200を提示し、ユーザが、「SuperGas、ポンプ1」との接続を確立しようと意図しているという確認を受信(例えば、確認ボタン204が選択されたことの表示)したとき、介入デバイス106-1とユーザデバイス102との間に適切な短距離無線プロトコル(例えば、BLE)を使用して接続を確立することができる。ユーザデバイス102のユーザは、それらが、(例えば、
図2のユーザインターフェース200に提供されるテキスト202に基づいて)アクセスデバイス104-1に接続されていると信じうる。しかしながら、ユーザデバイス102は、実際に不正行為者のデバイス(例えば、介入デバイス106-1)に接続され得る。
【0097】
介入デバイス106-1とユーザデバイス102との間の接続が確立されると、介入デバイス106-1は、ステップ4で、任意の適切な有線および/または無線接続を介して、共犯者の第二の不正デバイス(例えば、介入デバイス106-2)に接続(またはデータを送信)することができる。介入デバイス106-2は、例えば、別のアクセスデバイス(例えば、別のガスステーション「OtherGas」に位置するアクセスデバイス)に位置することができる。介入デバイス106-2は、ステップ5でアクセスデバイス104-2への第二のBLE接続を介して、接続(またはデータを送信)することができる。
【0098】
一部の実施形態では、アクセスデバイス104-2は、送信用に対話データ(例えば、アクセスデバイス104-2に関連する識別情報、事前認証金額などの対話値、などを含む)を生成することができる。しかしながら、対話データを送信する前に、アクセスデバイス104-2は、
図4~8に関連して上述した方法で対話データの少なくとも一部を利用してデジタル署名を生成するように構成され得る。
【0099】
ステップ6では、アクセスデバイス104-2は、対話データの少なくとも一部を利用してデジタル署名を生成することができる。例として、アクセスデバイス104-2は、対話データの適切な部分(例えば、小売業者識別子、デバイス識別子、
図5のデータフィールド504の任意の適切な組み合わせなど)を使用して、上記の方法でデジタル署名を生成することができる。アクセスデバイス104-2は、デジタル署名、およびデジタル署名を生成するために使用される秘密鍵に対応する公開鍵をメッセージ内に挿入することができ、およびそのメッセージをユーザデバイス102に送信することができる。
【0100】
介入デバイス106-2は、ステップ7でアクセスデバイス104-2からメッセージを受信し、ステップ8で介入デバイス106-1にメッセージをリレーすることができる。介入デバイス106-1(および/または介入デバイス106-2)は、ステップ9で、ユーザデバイス102に未変更メッセージをリレーすることができる。進行中の例では、メッセージは「OtherGas」に対応する識別データを依然として示すことが理解されるべきである。
【0101】
ステップ10では、ユーザデバイス102は、メッセージ内で受信されたアクセスデバイス104-2に関連するデジタル署名および公開鍵を利用して受信メッセージを有効化するように構成され得る。例として、受信メッセージに含まれる公開鍵は、メッセージに含まれるデジタル署名のハッシュ値を抽出するために利用され得る。次に、ユーザデバイス102は、次に、データフィールドの所定のセット(例えば、
図5のデータフィールド502Aおよび502Bなど)に基づいて追加のハッシュ値を計算することができる。ユーザデバイス102は、抽出されたハッシュ値を計算されたハッシュ値と比較することができる。
【0102】
ステップ11では、ハッシュ値はメッセージデータが変更されていないために一致し得るので、ユーザデバイス102は、メッセージが有効である(例えば、変更されていない、または少なくともデータフィールドの所定の設定が変更されなかった)と決定するように構成されてよい。一つまたは複数のユーザインターフェース(例えば、
図3のユーザインターフェース300)は、ユーザデバイスで提供され得る。ユーザは、テキスト302が、ユーザがユーザデバイス102に接続されていると信じるアクセスデバイス(アクセスデバイス104-1)と異なるアクセスデバイス(例えば、アクセスデバイス104-2)との対話を示すことを認識することができない。その結果、ユーザはステップ12で対話を確認することができる。
【0103】
ステップ13では、ユーザがアクセスデバイス104-2と対話を確認したという表示を受信したことに応答して、ユーザデバイス102は、支払いデータおよび暗号化データ402(例えば、図示しない証明機関が発行する証明書)を提供するように構成され得る。一部の実施形態では、ユーザデバイス102によってメッセージに含まれる支払いデータは、トークンおよび/または受信アクセスデバイス104-2によって暗号化可能な暗号化された値の形態であり得る。ユーザデバイス102は、ステップ9で受信されたメッセージ内のアクセスデバイス104-2によって最初に提供された対話データの一部を含んでもよい。例えば、ユーザデバイス102は、アクセスデバイス(例えば、小売業者識別子、および/またはデバイス識別子)に関連付けられた識別データを、ステップ9で受信されたメッセージに提供され、およびアクセスデバイス104-2と関連付けられた公開鍵とともに含んでもよい。一部の実施形態では、ユーザデバイス102は、任意の好適なメッセージデータ(例えば、識別データ、アクセスデバイス104-2と関連する公開鍵、支払いデータ、暗号化データ402、または上述のおよび/または
図5のデータフィールド5024の任意の好適な組み合わせ)を利用して、デジタル署名を生成するように構成され得る。
【0104】
介入デバイス106-1は、ユーザデバイスからメッセージを受信し、ステップ14で介入デバイス106-2にメッセージをリレーすることができる。介入デバイス106-2は、メッセージをアクセスデバイス104-2にリレーすることができる。
【0105】
ステップ16では、アクセスデバイス104-2は、ユーザデバイス102に関連する公開鍵を使用して受信されたメッセージを有効化するように構成され得る。例として、ステップ15で受信されたメッセージに含まれる証明書を発行した証明機関に関連付けられた公開鍵は、アクセスデバイス104-2のローカルメモリから取得することができる。証明機関の公開鍵は、証明書からユーザデバイス102に関連付けられた公開鍵を取得するために利用することができる。アクセスデバイス104-2は、ユーザデバイス102に関連する公開鍵を利用してステップ15で受信されたメッセージを有効化するように構成され得る。
【0106】
例として、アクセスデバイス104-2は、ユーザデバイス102に関連する公開鍵を利用して、ステップ15で受信されたメッセージのデジタル署名からハッシュ値を取得するように構成され得る。アクセスデバイス104-2は、次に、所定のハッシュアルゴリズム、およびステップ15で受信されたメッセージのデータフィールドの所定のセットを利用して追加のハッシュ値を生成することができる。例として、追加のハッシュ値は、メッセージの識別データ、メッセージに含まれる公開鍵、および/またはメッセージに含まれる支払いデータの適切な組み合わせを入力するとき、ハッシュアルゴリズムを提供することによって生成され得る。生成されると、結果のハッシュ値は、デジタル署名から取得されたハッシュ値と比較され得る。ハッシュ値が一致しない場合、アクセスデバイス104-2は、対話を終了し、支払いデータのさらなる処理を行わないように構成され得る。
【0107】
ハッシュ値が一致する場合、一致は、メッセージが変更されなかったばかりでなく、ステップ7で最初に送信されたメッセージを有効化するためにアクセスデバイス104-2に関連付けられた正しい公開鍵が(例えばユーザデバイス102によって)利用されたことを示し得るため、アクセスデバイス104-2は、進むように構成されても良い。一部の実施形態では、アクセスデバイス104-2は、支払い取引を認証する従来のプロセスの一環として、資源プロバイダーコンピューター(例えば、
図12の資源プロバイダーコンピューター1230)に送信され得る認証要求メッセージを生成することによって進めることができる。支払い取引を認証するためのプロセスを説明するフローは、
図12に関して詳細に説明する。認証要求が付与される場合、アクセスデバイス104-2は、ユーザデバイス102に対する物品および/またはサービス(例えば、アクセスデバイス104-2によって管理されるガス)へのアクセスを可能にすることができる。
【0108】
図9に示す例は、開示された技術がリレー攻撃を成功裏に防止できる方法を例示する。ユーザデバイス102とアクセスデバイス104-2との間に伝達されたデータが変更されない場合のみ、成功したリレー攻撃を実施することができる。実際には、ほとんどのユーザは、かれらが位置している小売業者(例えば、SuperGas)とかれらが支払うよう同意を求められている小売業者(例えば、「OtherGas」)の間の不一致を認識するであろう。仮にユーザが不注意に同意する場合でも、アクセスデバイス104-2で署名の検証が失敗する。
【0109】
図10は、本発明の実施形態による例示的なユーザデバイス1002のブロック図を示す。ユーザデバイス1002は、
図1、4、および6~9のユーザデバイス102の例であり得る。一部の実施形態では、ユーザデバイス1002は、電話などの特定のデバイス機能を有効にするために使用される回路を含んでもよい。これらの機能を有効にするための機能要素は、デバイスの機能および動作を実行する命令を実行できるプロセッサ1002Bを含んでもよい。プロセッサ1002Bは、メモリ1002F(または別の適切なデータストレージ領域、または要素)にアクセスし、スクリプトおよびモバイルアプリケーションを供給するなどの命令を実行する際に使用される命令またはデータを取得することができる。キーボードやタッチスクリーンなどのデータ入力/出力要素1002Dは、ユーザがユーザデバイス1002および入力データを操作できるように使用することができる。データ入力/出力要素は、(例えば、デバイスのスピーカーを介して)データを出力するように構成され得る。ディスプレイ1002Cは、ユーザにデータを出力するために使用することもできる。通信要素1002Eは、インターネットまたは他のネットワークへの接続を支援するために、ユーザデバイス1002と有線または無線ネットワーク(例えば、アンテナ1002Gを介して)の間のデータ転送を可能にするために使用され、データ転送機能を可能にする。一部の実施形態では、通信要素1002Eは、短距離無線通信プロトコル(例えば、BLE)を利用することができる。
【0110】
一部の実施形態では、ユーザデバイス1002は、非接触要素(図示せず)とデバイスの他の要素との間にデータ転送を可能にするための非接触要素インターフェースを含んでもよく、非接触要素は、安全なメモリおよび近接場通信データ転送要素(または別の形態の短距離通信技術)を含んでもよい。携帯電話または同様のデバイスは、本発明の実施形態によって使用され得るユーザデバイス1002の例である。しかしながら、その他の形態または種類が、本発明の基礎となる概念から逸脱することなく、使用され得る。例えば、ユーザデバイス1002は、代替的に、支払いカード、キーフォブ、PDA、タブレットコンピューター、ネットブック、ラップトップコンピューター、スマートウォッチ、リモート機能付き自動車などの形態であり得る。
【0111】
メモリ1002Fは、アプリケーション1002Hおよび/または任意の他の好適なモジュールまたはデータを含んでもよい。例えば、一部の実施形態では、メモリ1002Fは、署名モジュール1002I、検証モジュール1002J、および/または暗号化データ1002Kを含んでもよい。ユーザデバイス1002は、メモリ1002Fに取り付けまたは保存される任意の数のモバイルアプリケーションを有することができるが、
図10に示されるものに限定されない。メモリ1002Fは、本明細書において説明される方法を実装するために、プロセッサ1002Bにより実行可能なコードを含んでもよい。
【0112】
アプリケーション1002Hは、任意の好適な形態であり得る。例として、アプリケーション1002Hは、アクセスデバイス(例えば、
図1のアクセスデバイス104-1、
図11のアクセスデバイス1102)と対話するために利用され得るアプリケーションであり得る。一部の実施形態では、アプリケーション1002Hは、任意の適切なユーザインターフェース(例えば、
図2および3のユーザインターフェース200と300)を提供するように構成されるアプリケーション、またはデータを集めおよび/またはユーザデバイス1002とアクセスデバイス間の対話を確認するために構成される任意の好適なユーザインターフェースであり得る。一部の実施形態では、アプリケーション1002Hは、燃料(または別の物品および/またはサービス)を得るためにおよび/またはリソースにアクセスするために(例えば、
図13に関して以下に説明するように建物へのアクセスの場合のように)、アクセスデバイスと、支払いデータおよび/または対話データ(例えば、識別データ、対話値、公開鍵、位置、デバイス情報など)を交換するなどの物品および/またはサービスに対する取引を実施するために、利用することができる。一部の実施形態では、アプリケーション1002H(または別の適切なモジュール)は、プロセッサ1002Bが動作を実行し、および/または一つまたは複数の他のデバイス(例えば、アクセスデバイス、介入デバイスなど)との接続(例えば、BLE接続)を確立するための任意の適切なユーザインターフェースを提示するように構成され得る。アプリケーション1002H(または他の好適なモジュール)は、プロセッサ1002Bが動作を実行し、および/または、一つまたは複数の他のデバイス(例えば、アクセスデバイス、介入デバイスなど)との対話を確認するための任意の好適なインターフェースを提示するように構成され得る。
【0113】
一部の実施形態では、アプリケーション1002Hは、アクセスデバイスおよび/または介入デバイスに対して適切なメッセージを送信および/または受信するように構成され得る。一部の実施形態では、これらのメッセージは、BLEおよび/またはその他の適切な短距離無線通信プロトコルを介して送信および/または受信され得る。アプリケーション1002Hは、プロセッサ1002Bが、メッセージの送信前に、署名モジュール1002Iの機能を刺激し、および/またはメッセージの受信時に、検証モジュール1002Jの機能を刺激するように構成され得る。
【0114】
署名モジュール1002Iは、プロセッサ1002Bによって実行されるとき、プロセッサ1002Bに、デジタル署名を生成し、少なくともデジタル署名を含むメッセージを送信するための任意の好適な動作を実行させることができるコードで構成され得る。例として、署名モジュール1002Iは、プロセッサ1002Bが、ハッシュ値を生成するために、メッセージデータの一つまたは複数のデータフィールド(ユーザデバイス1002に関連付けられた識別データ、アクセスデバイスに関連付けられた識別データ、ユーザデバイス1002、および/またはアクセスデバイスに関連付けられた一つまたは複数の位置、対話値、アクセスデバイスの公開鍵、ユーザデバイス1002の証明書、および/または類似のもの)をハッシュするように構成され得る。一部の実施形態では、署名モジュール1002Iは、プロセッサ1002Bが、ユーザデバイス1002に関連付けられた秘密鍵でハッシュ値をデジタル署名するように構成され得る。生成されると、デジタル署名は、(例えば、ユーザデバイス1002に関連付けられた識別データ、アクセスデバイスに関連付けられた識別データ、ユーザデバイス1002および/またはアクセスデバイスに関連付けられた一つまたは複数の位置、対話値、アクセスデバイスの公開鍵、ユーザデバイス1002の証明書、および/または類似のものなどの一つまたは複数のその他のデータフィールドに沿って)メッセージに挿入され、およびアクセスデバイスに送信され得る。一部の実施形態では、署名モジュール1002Iは、アプリケーション1002Hの一部として動作することができる。
【0115】
検証モジュール1002Jは、プロセッサ1002Bによって実行されるとき、プロセッサ1002Bがメッセージを検証するための任意の好適な動作を実行することができるコードで構成され得る。一部の実施形態では、検証モジュール1002Jは、プロセッサ1002Bがアクセスデバイスの公開鍵を含むメッセージを受信するように構成され得る。検証モジュール1002Jは、一部の実施形態では、その後の使用のため、メモリ1002F内に受信された公開鍵を保存することができる。一部の実施形態では、検証モジュール1002Jは、プロセッサ1002Bがデジタル署名(例えば、アクセスデバイスに関連する秘密鍵を使用してアクセスデバイスによって生成されるデジタル署名)を含むメッセージを受信するように構成され得る。一部の実施形態では、受信メッセージは、アクセスデバイスに関連する公開鍵も含んでもよい。検証モジュール1002Jは、受信メッセージを有効化するために、プロセッサ1002Bが、公開鍵(例えば、デジタル署名を含むメッセージで受信されるか、または前回のメッセージで受信された保存された公開鍵を利用する)を利用し得る。
【0116】
例として、検証モジュール1002Jは、プロセッサ1002Bが、デジタル署名からハッシュ値を取得するために、保存されまたは受信された公開鍵を利用するように構成され得る。検証モジュール1002Jは、プロセッサ1002Bが、追加のハッシュ値を生成するために、受信メッセージの一つまたは複数のデータフィールド(ユーザデバイス1002に関連付けられた識別データ、アクセスデバイスに関連付けられた識別データ、ユーザデバイス1002、および/またはアクセスデバイスに関連付けられた一つまたは複数の位置、対話値、アクセスデバイスの公開鍵、ユーザデバイス1002の証明書、および/または類似のもの)をハッシュするようにさせてもよい。一部の実施形態では、検証モジュール1002Jは、プロセッサ1002Bがデジタル署名から取得されたハッシュ値を計算されたハッシュ値と比較するように構成され得る。ハッシュ値が一致する場合、検証モジュール1002Jは、アプリケーション1002H(または他の適切なモジュール)を刺激し、動作を実行する(例えば、受信メッセージデータの少なくとも一部を含むメッセージを、
図12の資源プロバイダーコンピューター1230などの別のデバイスに送信する)ことができる。
【0117】
一部の実施形態では、ハッシュ値が一致する場合、検証モジュール1002Jはメッセージが有効である(例えば、変更なし)と決定することができる。一部の実施形態では、検証モジュール1002Jは、プロセッサ1002Bが有効なメッセージの位置がユーザデバイス1002に関連付けられた位置の閾値距離内にあるかどうかについて、さらに決定を行うように構成され得る。これらの例では、検証モジュール1002Jは、例えば、1002(例えば、データ入力/出力要素1002Dの例)のグローバル位置決めシステムコンポーネントからユーザデバイス1002と関連する位置を取得することができる。さらなる実施形態では、検証モジュール1002Jは、(例えば、取得されたハッシュと計算されたハッシュの比較に基づいて)メッセージが有効であると決定するとき、ユーザデバイス1002がおそらく接続されているアクセスデバイスと関連した保存された識別子を、送信しているデバイス(例えば、アクセスデバイス)と関連付けられている受信メッセージの識別データと比較する追加の動作を実行する。一部の実施形態では、検証モジュール1002Jは、メッセージが無効である(例えば、取り出されたハッシュおよび計算されたハッシュの比較に少なくとも部分的に基づいて変更された)と決定された場合、および/または位置がお互いの閾値距離内にない場合、および/または保存された識別子が受信メッセージに含まれる識別データと一致しない場合、対話を終了し、送信しているデバイスとのさらなる処理を実行しなくてもよい。一部の実施形態では、検証モジュール1002Jは、アプリケーション1002Hの一部として動作することができる。
【0118】
一部の実施形態では、検証モジュール1002Jは、(例えば、メッセージが有効である、および/または位置が互いに所定の距離内にある、および/または保存された識別子がメッセージに含まれる識別データと一致すると決定すると)アプリケーション1002Hをトリガーして、送信しているデバイス(例えば、メッセージに示されているアクセスデバイス)と対話したいというユーザデバイス1002のユーザからの不正な確認に対し、ディスプレイ1002Cにユーザインターフェースを提示するように構成することができる。確認の表示を受信した時、アプリケーション1002Hは、上述のように署名モジュール1002Iによって生成されるデジタル署名を含むメッセージを送信するために、プロセッサ1002Bが上記の署名モジュール1002Iに関連するコードを実行するように構成され得る。
【0119】
暗号化データ1002Kは、証明機関(例えば、
図12の処理ネットワークコンピューター1250、または任意の適切な認証機関)によって提供される証明書の形態であってよい。暗号化データ1002Kは、証明機関によって発行され、ユーザデバイス1002に供給される公開/秘密鍵をさらに含むことができる。証明書は、一部の実施形態では、証明機関に関連する秘密鍵でデジタル署名され得る。証明機関の公開鍵は、一つまたは複数のアクセスデバイスに分配することができる。一部の実施形態では、証明書は、ユーザデバイス1002に関連する公開鍵および/または任意の適切な識別データを含んでもよい。証明書は、アクセスデバイスに分配された公開鍵が証明書からユーザデバイス1002に関連する公開鍵を取得するために利用されるように、証明機関によってデジタル署名され得る。
【0120】
本発明の実施形態によるアクセスデバイス1102の例を、
図10に示す。アクセスデバイス1102は、
図1のアクセスデバイス104-1および/または104-2の例であり得る。一部の実施形態では、アクセスデバイス1102は、電話などの特定のデバイス機能を有効にするために使用される回路を含んでもよい。これらの機能を有効にするための機能要素は、デバイスの機能および動作を実行する命令を実行できるプロセッサ1102Bを含んでもよい。プロセッサ1102Bは、メモリ1102F(または別の適切なデータストレージ領域、または要素)にアクセスし、スクリプトおよびモバイルアプリケーションを供給するなどの命令を実行する際に使用される命令またはデータを取得することができる。キーボードやタッチスクリーンなどのデータ入力/出力要素1102Dは、ユーザがアクセスデバイス1102および入力データを操作できるように使用することができる。データ入力/出力要素は、(例えば、デバイスのスピーカーを介して)データを出力するように構成され得る。ディスプレイ1102Cは、ユーザにデータを出力するために使用することもできる。通信要素1102Eは、インターネットまたは他のネットワークへの接続を支援するために、アクセスデバイス1102と有線または無線ネットワーク(例えば、アンテナ1102Gを介して)の間のデータ転送を可能にするために使用され、データ転送機能を可能にする。一部の実施形態では、通信要素1102Eは、短距離無線通信プロトコル(例えば、BLE)を利用することができる。
【0121】
一部の実施形態では、アクセスデバイス1102は、非接触要素(図示せず)とデバイスの他の要素との間にデータ転送を可能にするための非接触要素インターフェースを含んでもよく、非接触要素は、安全なメモリおよび近接場通信データ転送要素(または別の形態の短距離通信技術)を含んでもよい。販売時点情報管理端末は、本開示の実施形態によって使用され得るアクセスデバイス1102の例である。しかしながら、その他の形態または種類が、本発明の基礎となる概念から逸脱することなく、使用され得る。
【0122】
メモリ1102Fは、データ処理モジュール1102Hおよび/または任意の他の好適なモジュールまたはデータを含んでもよい。例えば、一部の実施形態では、メモリ1102Fは、署名モジュール1102I、検証モジュール1102J、および/または暗号化データ1102Kをさらに含んでもよい。メモリ1102Fは、本明細書において説明される方法を実装するために、プロセッサ1102Bにより実行可能なコードを含んでもよい。
【0123】
暗号化データ1102Kは、アクセスデバイス1102によって生成される公開/秘密鍵ペアの形態であってよい。公開/秘密鍵ペアは、任意の適切な時間に生成され、その後の使用のためメモリ1102Fに保存され得る。一部の実施形態では、新しい公開/秘密鍵ペアは、固有の公開/秘密鍵ペアが特定のメッセージ交換に対応することができるように、他のデバイス(例えば、ユーザデバイス、介入デバイスなど)との特定の対話に対応するように生成され得る。他の実施形態において、同じ公開/秘密鍵ペアは、任意の好適な交互作用デバイス(例えば、ユーザデバイス、および/または介入デバイス)との任意の好適なメッセージ交換で利用され得る。
【0124】
データ処理モジュール1102Hは、任意の好適な形態であってよい。一部の実施形態では、データ処理モジュール1102Hは、プロセッサ1102Bによって実行されるとき、プロセッサ1102Bがメッセージを(ユーザデバイスおよび/または介入デバイス間で)送信および/または受信するようにさせるコードで構成され得る。一部の実施形態では、データ処理モジュール1102Hは、アクセスデバイス1102の一つまたは複数の識別子などの少なくとも識別データを示すメッセージ(例えば、広告)を送信するように構成され得る。一部の実施形態では、データ処理モジュール1102Hは、プロセッサ1102Bが暗号化データ1102Kから取得されたときアクセスデバイス1102に関連する公開鍵を含むように構成され得る。データ処理モジュール1102Hは、任意の適切なメッセージ送信(例えば、広告メッセージ、対話要求メッセージなど)において公開鍵を含んでもよい。一部の実施形態では、データ処理モジュール1102Hは、送信するメッセージの一つまたは複数のメッセージデータフィールドからデジタル署名を生成するために、署名モジュール1102Iの機能を刺激するように構成され得る。一部の実施形態では、データ処理モジュール1102Hは、デバイス(例えば、ユーザデバイスおよび/または介入デバイス)からメッセージを受信することに少なくとも部分的に基づいて、検証モジュール1102Jの機能を刺激するように構成され得る。
【0125】
一般に、データ処理モジュール1102Hは、アクセスデバイスおよび/または介入デバイスに対して適切なメッセージを送信および/または受信するように構成され得る。一部の実施形態では、これらのメッセージは、BLEおよび/またはその他の適切な短距離無線通信プロトコルを介して送信および/または受信され得る。データ処理モジュール1102Hは、本明細書に記載される方法を実行するために、プロセッサ1102Bが署名モジュール1102Iおよび/または検証モジュール1102Jの任意の好適な機能を刺激するようさらに構成することができる。
【0126】
署名モジュール1102Iは、プロセッサ1102Bによって実行されるとき、プロセッサ1102Bがデジタル署名を生成するため、および生成されたデジタル署名を少なくとも含むメッセージを送信するための任意の好適な動作を実行するようにさせるコードで構成することができる。例として、署名モジュール1102Iは、プロセッサ1102Bがハッシュ値を生成するためにメッセージの一つまたは複数のデータフィールド(例えば、アクセスデバイス1102に関連する識別データ、アクセスデバイス1102に関連する位置、対話値、アクセスデバイスの公開鍵、および/または類似のもの)をハッシュするように構成されてよい。一部の実施形態では、署名モジュール1102Iは、プロセッサ1102Bが、アクセスデバイス1102に関連付けられた秘密鍵でハッシュ値をデジタル署名するように構成され得る。生成されると、デジタル署名が、(例えば、アクセスデバイス1102に関連付けられた識別情報、アクセスデバイスに関連付けられた識別情報、アクセスデバイス1102に関連付けられた位置、取引情報、アクセスデバイス1102の公開鍵および類似のものなどの一つまたは複数の他のデータフィールドとともに)メッセージに挿入され、および別のデバイス(例えば、
図1のユーザデバイス102、
図1の介入デバイス106-1など)に送信され得る。
【0127】
検証モジュール1102Jは、プロセッサ1102Bによって実行されるとき、プロセッサ1102Bが受信メッセージを検証するための任意の好適な動作を実行することができるコードで構成され得る。一部の実施形態では、検証モジュール1102Jは、プロセッサ1102Bが、ユーザデバイスによって生成されたと言われるデジタル署名を含むメッセージを受信するように構成され得る(例えば、ユーザデバイス102に関連する秘密鍵を利用する)。メッセージは、ユーザデバイス102に関連付けられ、証明機関によって発行される証明書をさらに含むことができる。一部の実施形態では、アクセスデバイス1102は、暗号化データ1102K内の証明機関に関連する公開鍵を保存することができる。証明機関の公開鍵を取得時に、検証モジュール1102Jは、受信した証明書からユーザデバイスに関連付けられた公開鍵を取得するため証明機関の公開鍵を利用するように構成される。検証モジュール1002Jは、プロセッサ1002Bがユーザデバイスに関連付けられ、証明書から取得される公開鍵を利用し、受信メッセージのデジタル署名を有効化するようにさせてもよい。
【0128】
例として、検証モジュール1102Jは、プロセッサ1102Bがユーザデバイスの公開鍵を利用して、デジタル署名からハッシュ値を取得するように構成され得る。検証モジュール1102Jは、プロセッサ1102Bが、追加のハッシュ値を生成するために、受信メッセージの一つまたは複数のデータフィールド(例えば、アクセスデバイス1102に関連付けられる識別情報、ユーザデバイス102に関連付けられる識別情報、支払いデータおよび/または取引情報、ユーザデバイス102の証明書、および類似のもの)をハッシュするようにさらにさせてもよい。一部の実施形態では、検証モジュール1102Jは、プロセッサ1102Bがデジタル署名から取得されたハッシュ値を計算されたハッシュ値と比較するように構成され得る。ハッシュ値が一致する場合、検証モジュール1102Jは、データ処理モジュール1102H(または他の適切なモジュール)を刺激し、動作を実行する(例えば、受信メッセージデータの少なくとも一部を含むメッセージを
図12の資源プロバイダーコンピューター1230などの別のデバイスに送信する)ことができる。
【0129】
一部の実施形態では、ハッシュ値が一致する場合、検証モジュール1102Jはメッセージが有効である(例えば、変更なし)と決定することができる。一部の実施形態では、検証モジュール1102Jは、プロセッサ1102Bが、ユーザデバイス(または介入デバイス)から受信されたメッセージから、ユーザデバイス102にメッセージを送信するために使用されるアクセスデバイスの公開鍵を取得するように構成され得る。検証モジュール1102Jは、プロセッサ1102Bが、受信メッセージに含まれるアクセスデバイスの公開鍵が、ユーザデバイスへの過去の送信に使用された暗号化データ1102Kに保存されたアクセスデバイスの公開鍵と一致するかどうかを決定するように構成され得る。公開鍵が一致する場合、検証モジュール1102Jは、プロセッサ1102Bが、メッセージが有効(例えば、変更なし)であり、および受信メッセージの結果となった以前に送信されたメッセージが、正しい公開鍵(例えば、これまで送信されたメッセージに関連付けられた暗号化データ1102Kに保存された公開鍵)を使用して、ユーザデバイス(例えば、ユーザデバイス102)によって、有効化されたと決定するように構成され得る。一部の実施形態では、検証モジュール1102Jは、メッセージが無効であると決定され(例えば、取得されたハッシュおよび計算されたハッシュの比較に少なくとも部分的に基づいて、変更される)、および/または受信メッセージの公開鍵が、暗号化データ1102K内に保存され、ユーザデバイス102への以前のメッセージ送信と関連した公開鍵と一致しない場合、対話を終了し、送信しているデバイスとのさらなる処理を実行しなくてもよい。
【0130】
リレー攻撃を防止するための上記のシステムおよび方法は、任意の適切な取引または対話プロセスで使用できる。例えば、それらは、支払い処理またはアクセス取引で使用することができる。これらの例は、以下の
図12および13に関連して詳細に説明されている。
【0131】
図12は、ユーザデバイス102を使用することができる取引処理システムのブロック
図1200を示す。
図12は、ユーザデバイス1210(例えば、
図1~10のユーザデバイス102、
図10のユーザデバイス1002の例等)を操作できるユーザ1206を示す。ユーザ1206は、ユーザデバイス1210を使用して、小売業者などの資源プロバイダーで物品またはサービスに対して支払うことができる。小売業者は、資源プロバイダーコンピューター1230および/またはアクセスデバイス1220(例えば、
図1~10のアクセスデバイス104-1および/またはアクセスデバイス1102の例)を操作することができる。小売業者は、アクワイアラおよび支払い処理ネットワークなどの処理ネットワーク1250が運用する転送コンピューター1240を介して、発行人によって操作される認証事業体コンピューター1260と通信することができる。
【0132】
支払い処理ネットワークは、データ処理サブシステム、ネットワーク、および認証サービス、例外ファイルサービス、ならびに清算および決済サービスをサポートし配信するのに使用される操作を含んでいてもよい。例示的な支払い処理ネットワークにはVisaNet(登録商標)を含んでもよい。VisaNet(登録商標)などの支払い処理ネットワークは、特にクレジットカード取引、デビットカード取引、およびその他のタイプの商業取引を処理することができる。特に、VisaNet(登録商標)は、精算および決済サービスを実行する認証要求およびベースIIシステムを処理するVIPシステム(Visa統合支払いシステム)を含む。支払い処理ネットワークは、インターネットを含む、任意の好適な有線または無線ネットワークを使用することができる。
【0133】
アクセスデバイス1220(例えば、POS位置)でユーザデバイス1210を使用する典型的な支払い取引フローを、以下のように説明することができる。ユーザ1206は、ユーザデバイス1210をアクセスデバイス1220に提示し、アイテムまたはサービスに対し、支払いをする。ユーザデバイス1210およびアクセスデバイス1220は、BLE通信プロトコルを介して対話することができる。一部の実施形態では、データ(例えば、識別情報、公開鍵、証明書、位置情報、対話データ等)は、ユーザデバイス1210とアクセスデバイス1220との間に交換され得る。アクセスデバイス1220からユーザデバイス1210へ送信されたデータは、アクセスデバイス1220によって上述された方法でデジタル署名され、ユーザデバイス1210によって検証され得る。同様に、ユーザデバイス1210から送信されるデータは、ユーザデバイス1210によって上述された方法でデジタル署名され、アクセスデバイス1220によって検証されることができる。対話が許可されており、デバイス間で交換されたメッセージデータが変更されていないと確認された場合、対話に関するデータ(例えば、アクセスデバイス1220の識別データ、ユーザデバイス1210の識別データ、支払い情報、
図5のメッセージデータ502、または任意の適切なデータ)が資源プロバイダーコンピューター1230に送信され得る。
【0134】
資源プロバイダーンピューター1230は、この情報を外部の通信インターフェースを介してアクセスデバイス1220から受信することができる。資源プロバイダーコンピューター1230は、アクセスデバイス1220から受信した情報を含む認証要求メッセージを生成し、この情報を転送コンピューター1240に電子送信することができる。転送コンピューター1240は、認証要求メッセージを受信し、処理し、および承認のために、処理ネットワーク1250に転送することができる。
【0135】
一般に、クレジットカードまたはデビットカードの取引の発生に先立ち、処理ネットワーク1250は、発行人の取引がどのように承認されるべきかについて、各発行人との確立したプロトコルを有する。取引額が閾値未満であるときなどの場合には、処理ネットワーク1250は、認証要求メッセージを生成して認証事業体コンピューター1260に送信することなしに、ユーザのアカウントに関して保有する情報に基づいて取引を承認するように構成され得る。取引額が閾値より大きいときなどの他の場合では、処理ネットワーク1250は、認証要求メッセージを受信し、ユーザデバイス1210に関連付けられた発行人を決定し、ならびに検証および認証用に取引用の認証要求メッセージを認証事業体コンピューター1260に転送することができる。取引が認証されると、認証事業体コンピューター960は、(取引が承認または拒否されたことを示す認証コードを含み得る)認証応答メッセージを生成し、この電子メッセージを外部の通信インターフェースを介して処理ネットワーク1250に送信することができる。次いで、処理ネットワーク1250は、認証応答メッセージを、転送コンピューター1240に転送することができ、転送コンピューター1240は、認証指示を含む電子メッセージを資源プロバイダーコンピューター1230に、続いてアクセスデバイス1220に送信することができる。アクセスデバイス1220は、認証応答メッセージの受領(例えば、取引が承認されたことを示す認証応答メッセージを受け取る)に少なくとも部分的に基づいて物品および/またはサービスへのアクセスを提供することができる。
【0136】
一日の終わりに、または他の好適な時間間隔で、資源プロバイダーコンピューター1230と、転送コンピューター1240と、処理ネットワーク1250と、認証事業体コンピューター1260との間の清算および決済処理が、取引に対して行われ得る。
【0137】
図13は、建物アクセスシステムのブロック図を示す。
図13は、ユーザ1306が操作するユーザデバイス1310(例えば、
図1のユーザデバイス102)を示す。ユーザデバイス1310は、上記のように証明書が供給され得る。ユーザデバイス1310は、アクセスデバイス1320(例えば、
図1のアクセスデバイス104-1の例など)と対話し、アクセスデバイス1320にアクセスデータを渡すことができる。アクセスデバイス1320は、公開/秘密鍵を生成するように構成され得る。アクセスデバイス1320によって送信される広告および/または任意の好適なメッセージデータ(例えば、アクセスデバイス1320の識別子、アクセスデバイス1320の位置、対話データなど)は、ハッシュされおよび得られたハッシュ値は、秘密鍵を使用して署名することができる。アクセスデバイス1320は、公開鍵およびデジタル署名を、同じメッセージまたは異なるメッセージ内でユーザデバイス1310に提供することができる。ユーザデバイス1310は、メッセージを有効化するために、提供される公開鍵(またはリレー攻撃の場合に別のアクセスデバイスから受信した公開鍵)を利用することができる。メッセージが無効な場合、ユーザデバイス1310はアクセスデバイス1320との対話を終了することができる。メッセージが有効である場合、ユーザデバイス1310は追加のメッセージデータ(例えば、アクセスデバイス1320の位置)を利用して、ユーザデバイス1310の距離がアクセスデバイス1320の位置に対する閾値距離を外れる場合に、距離チェックを実行し、対話を終了することができる。メッセージが有効である場合、ユーザデバイス1310のユーザは、アクセスデバイス1320との対話を確認するオプションを提示され得る。確認された場合、ユーザデバイス1310は、アクセスデバイス1320にメッセージを送信することができる。
【0138】
一部の実施形態では、ユーザデバイス1310によってアクセスデバイス1320に送信されるメッセージのメッセージデータは、ユーザデバイス1310に関連する証明書、アクセスデバイス1320の識別子、および当初受信メッセージを有効化するために使用される公開鍵を含むことができる。一部の実施形態では、アクセスデバイス1320の識別子、および公開鍵は、ハッシュされ、ユーザデバイス1310に関連する秘密鍵を使用してデジタル署名され得る。受信時、または任意の適切な時間において、アクセスデバイス1320は、証明書からユーザデバイス1310の公開鍵を取得するために、証明書を発行する認証機関に関連する公開鍵を利用することができる。取得された公開鍵を利用することにより、アクセスデバイス1320は、ユーザデバイス1310が提供するデジタル署名を利用してメッセージを有効化することができる。検証の一環として、アクセスデバイス1320は、公開鍵がユーザデバイス1310によって利用され、メッセージに提供された公開鍵が変更されなかったと決定する(メッセージのデジタル署名を利用して決定可能である)ことに少なくとも部分的に基づいて、初期に送信されたメッセージを有効化し、提供された公開鍵がアクセスデバイス1320によって保存された公開鍵と一致していることを検証することができる。アクセスデバイス1320がユーザデバイス1310から受信されたメッセージデータが有効であると決定した場合、アクセスデバイス1320は次に、ユーザ1306が建物1330に入るように進めることができる。ただし、アクセスデバイス1320が、検証のためにユーザデバイス1310によって間違った公開鍵が使用された、またはメッセージデータのいずれかが変更されたと決定する(デジタル署名を使用して決定可能)場合、アクセスデバイス1320はユーザデバイス1310との対話を終了することができ、ユーザ1306は建物1330にアクセスできない。
【0139】
技術的利点
本発明の実施形態は、多くの利点を提供する。例えば、開示されたアクセスデバイスを構成することにより、独自の公開/秘密鍵を生成することにより、システムは、証明機関の追加の主要メンテナンス費用がかかることなく、強化された検証機能を提供することができる。本明細書に開示されるさまざまな方法を利用することにより、ユーザデバイス102は、デジタル署名および公開鍵を利用して、対話デバイス(例えば、アクセスデバイス)から対話データを有効化するように構成され得る。この検証を通じて、ユーザデバイス102は、メッセージが変更されたときを決定するように構成され、アクセスデバイスとの対話を自動的に拒否および/または終了するように構成され得る。これらの技術は、ユーザデバイス102が介入デバイスに支払い情報を提供しないことを確実にすることができる。一つまたは複数の介入デバイスがメッセージを傍受し、それらをユーザデバイス102にリレーする場合でも、本明細書に開示される技術は、ユーザが、データが、ユーザが接続を確認するデバイス以外のデバイスから受信されていることを検出することを可能にする。ユーザは、対話をキャンセルおよび/または終了する能力を提供されることができる。ユーザが不一致を認識しない場合でも、ユーザデバイス102は、(例えば、知らないうちに、潜在的に一つまたは複数の介入デバイスを介して)データをアクセスデバイスに送信するときに、対話データ(例えば、支払いデータを含む)を、デジタル署名することができる。次に、受信アクセスデバイスは、ユーザデバイスに関連付けられた公開鍵を利用してメッセージ内のデータを確証することができ、1)メッセージは変更されなかった、および2)アクセスデバイスに関連付けられた正しい公開鍵が、ユーザデバイスに送信された元のメッセージを有効化するために使用された、ということを確実にすることができる。この方法では、データセキュリティは強化されており、不正目的のために、不正行為者が機密情報(支払いデータなど)にアクセスするのを可能にするリレー攻撃および/または中間者攻撃を防止する。
【0140】
上述のように、本発明はモジュラーまたは統合された手法でコンピューターのソフトウェアを使用した制御ロジックの形態で実行可能であり得ることが理解されよう。本明細書に提供した開示および教示に基づいて、当業者ならば、ハードウェアおよびハードウェアとソフトウェアの組み合わせを用いて、本発明を実施する他のやり方および/または方法を知り、評価するであろう。上記の事業体のいずれかは、本明細書に記載される機能を実行するためにプログラムされたコンピューターを操作することができる。
【0141】
本出願に記載のソフトウェアコンポーネント、プロセスまたは機能のいずれかは、例えば、従来の技術またはオブジェクト指向の技術を使った、例えば、Java、C++またはPerlなどの任意の適切なコンピューター言語を使用するプロセッサによって実行されるソフトウェアコードとして実施され得る。ソフトウェアコードは、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、ハードドライブまたはフロッピーディスクなどの磁気媒体、あるいはCD-ROMのような光媒体などのコンピューター可読媒体上の一連の命令またはコマンドとして保存するようにしてよい。そのようなコンピューター可読媒体は、単一の計算装置上またはその内部にあってもよく、システムまたはネットワーク内の異なる計算装置上またはその内部に存在し得る。
【0142】
上記の図面または説明に示されたコンポーネントならびに図示または説明のないコンポーネントおよび工程の別の構成も可能である。同様に、一部の特徴および下位組み合わせは有用であり、他の特徴および下位組み合わせを参照することなく採用することができる。本発明の実施形態は、例示目的のためであって、制限目的のために記載されておらず、代替の実施形態は、本特許の読者には明らかになろう。従って、本発明は、上述に記載または図面に示す実施形態に限定されるものではなく、さまざまな実施形態および変更形態を、以下の特許請求の範囲の範囲から逸脱することなく、行うことができる。