7得票2回答
万事达卡 PIN 修改发行方脚本失败,使用 Thales HSM 生成 MAC。EMV

我使用的是Thales Payshield 9000 HSM。到目前为止,所有命令都能正常工作,并且已经达到了我想要的结果。 现在的问题是,在尝试更改ATM密码时出现了问题。生成的密码更改脚本格式看起来很好,当检查MasterCard文档时也没问题。 我们的密码更改脚本看起来像这样:861...

15得票5回答
如何读取基于EMV技术的智能VISA卡信息

我试图从VISA信用卡读取数据,但无法成功。在互联网资源中,我发现对于MASTER卡,我们可以使用1PAY.SYS.DDF01文件选择PSE目录,然后读取记录。但是对于VISA来说并不是强制性的,当我使用以下文件使用SELECT命令获取PSE目录时,我得到的响应是“6A82”。这意味着该文件系...

7得票2回答
从CVM列表中解析EMV的CV规则

我已成功从EMV卡中检索出CVM列表。 0000 0000 0000 0000 4103 4203 1E03 1F02 从EMV规范书3中,前4个字节和后4个字节是金额,剩下的是CV规则,将它们作为CV规则4103 4203 1E03 1F02 该书还展示了如何解析CV规则,如下所示:...

10得票2回答
如何在Android上安全地存储模数、公共指数和私有指数?

我已经获得了模数、公共指数和私有指数,并需要在安卓设备上安全地存储这些值。我该如何实现? 许多示例是在不获取n、d、e参数的情况下创建公钥和私钥。但我已经获得了这些n、e、d值,并希望安全地存储它们,然后使用这些值创建我的ICC公钥证书,以及签署我的动态数据。 我该如何实现?

7得票1回答
在EMV交易中解析GET PROCESSING OPTIONS命令的PDOL

我正在尝试构建一个正确格式的GET PROCESSING OPTIONS命令,以发送到非接触式EMV卡。这篇文章非常有帮助,但我需要更多细节。在解析PDOL时,可以安全地假设每个标签的长度为2个字节,后跟期望返回的数据大小吗?例如,PDOL 9F66049F02069F37049F1A02 分...

13得票2回答
EMV应用程序开发问题

我对EMV不太了解,目前我有一个紧急EMV应用程序开发项目,希望有人能回答以下问题: 什么是EMV L2应用内核?它是API还是可执行的EMV应用程序? 在EMV支付交易过程中,需要从芯片和PIN卡中捕获哪种数据(消息)信息,以便将其提交给银行卡发行人进行授权。支付交易数据应遵循哪个ISO...

7得票5回答
为什么EMV卡中的数据会被复制?

我正在从事EMV卡的工作,我的新任务是比较磁条数据和芯片数据。 磁条和芯片中应该共同存在的数据包括:PAN、持卡人姓名和到期日期。但有以下不明白的地方: 单个数据(如PAN)存在于多个位置中: 它存在于磁道1; 它存在于磁道2; 它存在于5A EMV标签; 它存在于57 (磁道2等效数据) ...

17得票2回答
如何实现NFC支付?

我想在我正在开发的安卓应用程序中添加NFC支付功能,使用户可以直接向POS机进行支付。我希望支持尽可能多的POS机。 我想知道是否真正可行,或者它取决于专有的协议/硬件。 我已经找到了有关读取非接触式卡片信息的信息(和代码示例),但我找不到任何关于支付本身的库或代码。 我知道EMV规范,...

9得票5回答
使用PPSE而非PSE读取EMV卡

我正在尝试读取非接触式Visa Paywave卡上的数据。 对于Paywave,我必须使用PPSE(2PAY.SYS.DDF01)提交SELECT,而不是PSE(1PAY.SYS.DDF01)。 EMV书1的第11.3.4节,表43仅描述了如何解释使用PSE的成功SELECT命令的响应。请...

12得票1回答
通过PDOL为EMV卡(APDU)生成"GET PROCESSING OPTIONS"(GPO)。

GPO命令被定义为APDU命令: CLA INS P1 P2 Lc Data Le 80 A8 00 00 Lc Data 00 那么缺失的部分是 Lc 和 Data,我们需要从PDOL中计算它们(如果提供了)。如果没有提供,我们可以使用: 80 A8 00 00 02 8300 ...