问题标签 [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.
nfc - 读取EMV卡时不包含持卡人姓名
我已经成功地从非接触式借记卡/信用卡中检索到卡号和有效期。但是,持卡人姓名不会在 READ RECORD 命令响应中返回。我错过了什么吗?
smartcard - EMV - 无法从 CDOL1 生成 AC 命令
我已成功检索到 CDOL1,即
如何基于此 CDOL1 创建 Generate AC 命令?
smartcard - 生成 AC 命令在 AMEX 卡上不起作用
我有 CDOL1,我已经成功生成 AC 命令,它在 Visa 卡上工作,我得到成功代码,但它在 AMEX 卡上不起作用,尽管 AMEX 有相同的 CDOL1 命令。
CDOL1
生成交流命令
smartcard - 如何解释来自 GET PROCESSING OPTIONS 的响应?
我正在通过 ACR 读卡器与 Visa Electron 借记卡通信,并从GET PROCESSING OPTIONS
命令中得到以下响应:
当其中没有 AFL(应用程序文件定位器)或任何 AIP(应用程序交换配置文件)时,我应该如何解释此响应?这是完整的通信日志:
非常感谢!
emv - 具体来说,EMV 设备如何与发卡机构通信?
在进行 EMV 在线交易 (ARQC) 时,EMV 设备需要与发行者(或网关)通信以获得批准/拒绝。我正在写 POS 软件,需要支持 EMV,所以我需要支持这种交互。我似乎无法回答的是,它是 EMV 设备通过 Internet 直接与发行者通信的 EMV 规范的一部分吗?还是我需要在设备的 API 中寻找某种发送功能?
我知道这个问题可能针对硬件制造商的设计,但我已经阅读了一些针对不同 EMV 设备的 API,但似乎没有一个详细说明了这种通信。他们中的大多数都有一个函数来初始化 EMV 功能(使用交易金额),然后在交易完成时进行回调/事件。这让我相信,我需要提供的只是与设备的良好互联网连接,奇迹就会发生。
作为后续行动,我看到一些设备具有 USB 通信(而不是以太网)。这些设备(显然)无法直接与外部网络对话。假设这些设备将离线执行每个 EMV 交易是否安全?还是我错过了什么?
smartcard - 通过 AID 命令选择不起作用
我想重新开发新的桌面应用程序以从 EMV 智能卡读取信息,并且我有来自以前(工作)应用程序的日志。
假设 EMV 智能卡中有一个 AID = 44 44 44 44 44 44 44 44 (DDDDDDDD) 的应用程序。
我正在发送 APDU 命令:00 A4 04 00 08 44 44 44 44 44 44 44 44 00 并收到超时异常(超时 = 60 秒)。
我尝试发送 APDU 命令:00 A4 04 00 08 44 44 44 44 44 44 44 44 并得到响应代码 = 61 37。
我尝试选择文件 1PAY.SYS.DDF01,立即得到 response = 6a82(它是正确的)。
smartcard - MasterCard EMV 标签 9F7E 的数据源 - 应用程序生命周期数据
我正在为 M/Chip Select 4 版本 1.1a 上的 MasterCard EMV 卡编写配置文件,我需要一些帮助来理解9F7E(应用程序生命周期数据)标签值的数据元素。不幸的是,万事达卡手册并没有很好地解释这个标签的用途,也没有很好地解释相应的数据元素。
我从手册中了解到,第一个字节是版本号 - 很简单。但是,其他 47 个字节代表我不熟悉的数据元素,例如“Type Approval ID”、“Application Issuer ID”和“Application Code ID”。
这些数据值是在交易处理过程中生成的,还是卡上的静态值?
android - EMV - 生成 AC - 验证代码
我正在使用 ISO 14443 卡在 Android 上开发移动 POS 应用程序,我面临一个相当重要的问题。
目前,我可以通过发送所有正确的 APDU 命令来读取卡中的所有公共数据IsoDep.transceive
我目前必须处理CDOL1
,特别是Data Authenticate Code
以下是我从测试卡中收集的三个 CDOL:
EMV 书 2 说:
为了获得表 7 中指定的恢复数据,使用发行者公钥结合相应的算法,对签名静态应用数据应用附件 A2.1 中指定的恢复函数。如果 Recovered Data Trailer 不等于“BC”,则 SDA 失败。
我知道解密恢复数据之前的第一步是获取颁发者公钥(带有 RID、AID 的前五个字节和证书颁发机构公钥索引),然后将其与恢复功能一起使用来解密签名的应用程序数据.
所以我的问题是:
如何获得带有 RID 和公钥索引的颁发者公钥?
任何人都可以帮助我理解这个恢复功能以便开发一个功能,或者 Java 中是否有任何现有的功能可以做到这一点?
PS:在现有功能的情况下,如果可能的话,我还想解释一下^^
android - 如何实现NFC支付?
我想将 NFC 支付添加到我正在开发的 Android 应用程序中,以允许用户直接向 POS 付款。我有兴趣支持尽可能多的 POS。
我想知道这是否真的可能,或者它取决于专有协议/硬件。
我找到了有关阅读非接触式卡信息的信息(和代码示例),但我找不到任何有关付款本身的库或代码。
我知道 EMV 规范,但它看起来很长而且技术性很强,我想在深入研究之前知道它是否真的可行。
我们不能使用 Google 电子钱包,因为我不在美国。
smartcard - 无法生成正确的应用程序密码
我成功获得了生成命令响应
命令是
成功响应
一切都很好,但是每当我在测试环境中执行事务时,我都会得到
应用程序密码不正确。
任何帮助,将不胜感激。