非接触式支付:检测移动设备或卡
Posted
技术标签:
【中文标题】非接触式支付:检测移动设备或卡【英文标题】:Contactless Payments: Detect Mobile Device or Card 【发布时间】:2019-01-20 09:55:04 【问题描述】:我正在尝试检测是否使用非接触式智能卡或配备 ApplePay、Google Pay 或 Samsung Pay 的移动设备进行非接触式 EMV 交易。
我一直在通过EMV书籍进行研究,似乎有一个标签9F6E提供了这种数据:
EMV 第 3 册 - 签证
EMV 第 4 册 - 万事达卡
问题:
-
VISA 在字段 9F6E 中提供了一个 4 字节的值,但我在任何地方都找不到可能值及其含义的列表。 EMV 书说“超出范围”。有没有办法可靠地将其转换为已知的外形尺寸?
万事达卡为外形尺寸提供 2 个字节的数据,但我看到的值是我无法理解的 (32 31 ascii = 21)。是否有这些值和含义的列表?
是否有一种简单的方法可以了解 CDCVM 是否已用于给定的非接触式交易,以便我可以将非接触式交易与非接触式交易与 CDCVM 交易区分开来?
【问题讨论】:
【参考方案1】:Google Pay 使用基于云的支付,而 Apple 使用嵌入式安全元素。您可以在 Visa 的 9F6E 外形尺寸上找到此标签。但是,万事达卡或美国运通卡可能会有所不同。
要正确解决此问题,您可能需要检查返回令牌请求者 ID 的 EMV 标签 9F19。检查此规范的 EMV 支付标记化。令牌请求者 ID 如下所示:
万事达卡
50110030273 – APPLE_PAY 50120834693 – android_PAY 50139059239 – SAMSUNG_PAY签证
40010030273 – APPLE_PAY 40010075001 - ANDROID_PAY 40010043095 – SAMSUNG_PAY 40010075196 – MICROSOFT_PAY 40010075338 – VISA_CHECKOUT 40010075449 – 脸书 40010075839 - NETFLIX 40010077056 – FITBIT_PAY 40010069887 – GARMIN_PAY【讨论】:
感谢标记 0x9F19 令牌请求者 ID。你知道“令牌服务提供者代码”和“令牌请求者”列表的任何参考吗?这些令牌请求者 ID 的部分。【参考方案2】:请参阅以下文档。您将需要 Visa Online 和 MasterCard 连接访问权限才能获得这些。
VCPS_2.2 规范
接触式和非接触式规格的 M/Chip 要求
在 9F10 内签入 CVM 和 CVR
【讨论】:
好的。那么这到底有什么帮助呢?这些文件中没有提到 Google Pay 或 Apple Pay。【参考方案3】:我相信还可以通过使用标记 0x82(应用程序交换配置文件)检测交易是否由移动设备执行。我相信这是一种更好的方法,因为无论卡品牌如何,它都是相同的(只要相关卡品牌正确遵循 EMVCo 的规范。
这里是 EMV Co 非接触式图书的链接。
https://www.emvco.com/wp-content/uploads/2017/05/C-4_Kernel_4_v2.6_20160512101635327.pdf
Screenshot Of Desired Table 检查字节 2(最右边的字节)的第 7 位(第二高位)。如果是 1,它来自移动设备。应用程序交换配置文件将始终为 2 字节。
【讨论】:
以上是关于非接触式支付:检测移动设备或卡的主要内容,如果未能解决你的问题,请参考以下文章