我试图通过非接触式Visa Paywave卡读取数据。
对于Paywave,我必须使用PPSE(2PAY.SYS.DDF01)而不是PSE(1PAY.SYS.DDF01)提交SELECT。
EMV书1,第11.3.4节,表43仅描述了如何使用PSE解释成功SELECT命令的响应。有没有人知道或者可以将我介绍给一个显示如何使用PPSE处理从成功的SELECT命令返回的数据的源?
这是我的请求APDU:
00A404000e325041592e5359532e444446303100
以下是回复:
6F2F840E325041592E5359532E4444463031A51DBF0C1A61184F07A0000000031010500A564953412044454249548701019000
我理解来自回复的代码84
,代码85
,代码BF0C
。根据读取PSE的示例,我应该能够在成功响应之后发送GET PROCESSION OPTIONS(获取AIP和AFL)PDOL = null,如下所示:80A80000830000
。
但请求80A80000830000
返回错误代码6985
- 不允许命令;使用条件不满意。
我还尝试通过遍历每个SFI(0-30)和每个SFI的每个记录(0-16)成功选择PPSE来读取所有文件。是的,我也进行了3位移位,并使用0x4
对SFI进行按位或运算。但我没有数据。
我被卡住了,任何帮助我从我的Paywave卡中获取一些信息的帮助都将不胜感激!
答案 0 :(得分:7)
答案 1 :(得分:2)
你似乎有点混乱,你想:
发送1PAY或2PAY,对我测试的所有卡片实际上并不重要。这将返回卡上可用的AID列表。或者你可以直接选择一个AID,如果你知道它在那里,但好的做法是先检查。
获取响应1PAY / 2PAY返回的AID列表,在PayWave的情况下,如果您发送2PAY,这可能是A0000000031010,但如果您发送1PAY,可能会获得更多。
选择一个已发回的AID(或您已经知道的AID)。
然后遍历SFI并记录发送读取记录命令以获取数据。
在发送“读取记录”命令之前,您不必发送“获取处理选项”,即使现在这是正常的事务流程。
答案 2 :(得分:0)
我认为您正在寻找的信息可从this VISA website获得。但只有您是VISA的注册和/或许可合作伙伴。
编辑:查看BF0C
下的结果TLV结构:
tag=0xBF0C, length=0x1A
tag=0x61, length=0x18
tag=0x4F, length=0x07, value=0xA0000000031010 // looks like an AID to me
tag=0x50, length=0x0A, value="VISA DEBIT"
tag=0x87, length=0x01, value=0x01
我猜你需要先获得A0000000031010
才能获得处理选项。
答案 3 :(得分:0)
我正在选择应用程序2PAY.SYS.DDF01。什么时候我应该选择AID = 0xA0000000031010。看起来应用程序2PAY.SYS.DDF01下没有记录。
但申请表0xA0000000031010下有1条记录。在我拿到这个应用程序后,我执行了READ RECORD,第一条记录给了我PAN和我想要的所有信用卡信息。
感谢所有人的欢呼声。
答案 4 :(得分:0)
如果您对MasterCard感兴趣,可以使用triangle.io的API来执行此操作。它是免费的,可以为您阅读MasterCard和Visa非接触式卡,这是您想要的。
请注意,直接从卡上读取所有文件,虽然它会为您提供所需的数据,但并不是真正遵循EMV数据流。选择应用程序后,您应该执行“获取处理选项”,然后构建PDOL和剩下的魔法。
免责声明:我为triangle.io工作
答案 5 :(得分:0)
2PAY.SYS.DDF01用于非接触式(例如NFC)卡,而1PAY.SYS.DDF01用于接触卡。
成功(SW1 SW2 = 90 00)读取PSE后,您应该只搜索SFI(标签88),它是返回的FCI模板中的必填字段。
使用SFI作为起始索引,您必须从起始索引开始读取记录,直到获得6A83(RECORD_NOT_FOUND)。例如。如果您的SFI是1,您将使用record_number = 1执行readRecord。那可能会成功。然后你将record_number增加到2并再次执行readRecord。增加到3 ....重复它直到你得到6A83作为你的状态。
读取的记录将是ADF(至少为1)。然后,您必须将读取的ADF名称与终端支持以及ASI(应用程序选择指示符)进行比较。最后,您将获得可能的ADF列表(候选列表)
所有上述步骤(1-3)都记录在EMV规范的第12.3.2章Book1 v4.3中。
您必须做出最终选择(第12.4章Book1)
阅读规格书1第12.3 - 12.4节,了解所有详细步骤。