问题标签 [emv]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
smartcard - EMV VERIFY 命令返回 69 85
我正在尝试使用我的智能卡读卡器与卡进行通信,我正在使用 Jaccal 以便从我的 Java SE 应用程序中执行此操作。我遇到的问题是,即使我很确定我的 VERIFY 命令是正确的(离线 PIN),我仍然不断收到状态字 = 69 85(不满足使用条件)。所以我的命令看起来像这样。
验证命令:
00 20 00 80 08 24 94 94 FF FF FF FF FF
PIN 码是 9494,因为这是一张测试卡,我不介意公开 PIN 码。
问候维克
emv - EMV 应用程序开发问题
我是 EMV 新手,目前我有一个紧急 EMV 应用程序开发项目,任何人都可以帮助我回答以下问题:
什么是 EMV L2 应用内核?是 API 还是只是可执行的 EMV 应用程序?
在 EMV 支付交易中,需要从 Chip&Pin 卡中获取什么样的数据(消息)信息,以便提交给银行发卡机构进行授权。支付交易数据应适用的 ISO 规范。
EMV终端和收单方之间的连接方式是什么?IP还是串口?
任何用于 EMV 应用程序开发的测试工具?如收单主机模拟。
5.一个EMV应用开发需要多少时间?
android - 发送 SELECT PPSE 命令时出现 TagLostException
使用标签的收发方法发送 SELECT PPSE 命令时出现标签丢失异常。
意图被传递给readTag
并且该方法正在从意图中获取标签,但是为 SELECT PPSE 命令 APDU 调用收发方法会导致标签丢失异常,而不是获取响应 APDU 消息:
android - 通过 HCE 模拟信用卡
我正在尝试开发一个在 Android(4.4)上通过 HCE 模拟信用卡的应用程序。我有一个可以从 NFC 贴纸读取的目标应用程序,现在我希望通过在我的设备上模拟 NFC 来实现相同的结果。该应用程序支持读取 ISO 14443-4 Type A/IsoDep,这很好,因为这是我正在模拟的。据我了解,应用程序读取的格式是:“B5105105105105100^CARDDATA^121222200000181000000,5105105105105100=121222200000181000000”(在此示例中,我使用 MC 测试卡编号)。目标是让目标应用程序接收我以正确格式发送的数据,但我还没有实现这一点。我试图检查其他示例,但很难找到它们,而且我的知识在这一点上有些有限。
我已经在我的 apduservice.xml 中设置了目标应用程序所需的 AID
现在的问题是如何将正确的数据发送到目标应用程序?我想同时发送 track1 "B5105105105105100^CARDDATA^121222200000181000000" 和 track2 "5105105105105100=121222200000181000000" 我是否需要通过 AID/PPSE 验证 apdu 部分而不是通过 apduservice 文件?
我试过以下没有成功:
代码:
我错过了什么?感谢您的任何建议。
android - 现有 NFC 读取器基础设施的应用程序 ID
我通读了 Android 文档,其中说现有 NFC 读取器基础设施(如 VISA 和 MASTERCARD)的应用程序 ID(AID)是公开的并已注册,但我在网络上的任何地方都找不到它们。
如果有人找到它们,您能否分享这些公开的 NFC 阅读器的应用程序 ID?
我希望模拟一张可以在 NFC 终端上为 VISA、MASTERCARD 轻拍的卡。
java - 无法使用 EMV 非接触式 (Interac Flash) 从借记卡读取 PAN
尝试在支持 NFC Interac Flash 的卡上使用标准 EMV 协议读取借记卡号。
这是我的交易顺序:
Request1:00A404000E325041592E5359532E444446303100(选择2PAY.SYS.DDF01获取PSE目录)
响应 1:6F2C840E325041592E5359532E4444463031A51ABF0C1761154F07A00000027710105007496E74657261638701019000(发现 AID A0000002771010,Interac)
请求 2:00A4040007A000000277101000(选择 AID A0000002771010)
响应 2:6F348407A0000002771010A5295007496E74657261638701015F2D02656E9F38159F59039F5A019F02069F1A025F2A029F37049F58016285(选定 AID,响应包括下图。
http://i.stack.imgur.com/c9FjM.png
请求3:80A800001583130000990000000000000001240124000001230000(获取处理选项,基于上述结构)
响应 3: 6985 (不允许命令;不满足使用条件。)
我无法通过 6985 错误;经过 2 天的规范阅读和反复试验。
从借记卡(Interac)读取卡号的任何提示/想法/成功示例?正在测试的卡是一张带有 Interac Flash 非接触式功能的 TD 借记卡。
非常感谢!
--- 注意:我可以在没有 GET PROCESSING OPTION 的情况下从 Visa 和 MasterCard 读取卡号。但是由于我一直在没有 GPO 的情况下获得 6985,所以我尝试这样做,但失败了。我真的不需要做GPO,只需要获取卡号和到期日期。---
c++ - EMV开发
我是 EMV 开发的新手。如果有人可以提供一些指导如何与基于 EMV 的卡(例如,读取卡所有者、到期日期等)最好使用 C++ 进行通信,我将不胜感激?欢迎提供任何信息(样本、在线链接参考等)如何做到这一点。
smartcard - 读取EMV卡的公共数据
假设我想阅读EMV 卡的公共元素。我将列出一些我认为涉及的步骤。
现在,假设我使用上述两种方法之一成功选择了应用程序。
我的问题是:我必须采取哪些步骤来进一步阅读 EMV 卡的公共元素?更准确地说:我是否需要提供带有 PDOL 的卡并使用 GET PROCESSING OPTIONS获取 AIP 和 AFL ( http://www.openscdp.org/scripts/tutorial/emv/initiateapplicationprocess.html ),然后读出记录?
或者像我最初提到的那样选择应用程序后,我可以直接进行这样的事情(读取记录): 链接到源?
android - Android isoDep.transceive on Generate AC 命令总是返回 6D00 unsupported
我正在尝试模拟 PoS、销售点 :)、系统并使用在 2013 Nexus 7(无安全元件)v4.4.2 上运行的 Google 钱包完成交易。
我的 PoS 原型也在 2013 Nexus 7 v4.4.2 上运行。
我能够从 2PAY_SYS_DDF01 请求中获得 NFC 响应。我可以选择 MasterCard 应用程序 ID。我能够获得处理选项。当我阅读记录时,看起来 Google 钱包并没有返回所有必需的 EMV 字段。最后,当我请求 Generate AC 命令时,它总是返回 6D00 unsupported。
有问题的代码区域:
我正在关注 Tim Beckers 的视频 https://www.youtube.com/watch?v=qqobg1-HrfY 大约。46 分钟和 Tim Beckers 代码示例: https ://github.com/a2800276/29c3/blob/master/smartshell.rb
更新:
对 GPO 命令 ( 80 a8 00 00 02 83 00 00
) 的响应是
更新:
我试过了:
希望至少得到一个错误,指出错误的不可预测的数字,但我得到了 6700 不正确的长度返回。
早些时候,我收到了对 Read Record 00 B2 01 0C 00 的响应,该响应的一部分是卡身份验证相关数据 [9F69]:数据(二进制):XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX fDDA 版本号: 9F(卡)莫测数:6A 04 9F 7E
所以我尝试了那个不可预测的数字
但我仍然得到 6700 错误的长度
更新:
对 READ RECORD (Record = 1, SFI = 1) 命令 (00 B2 01 0C 00) 的响应是: