问题标签 [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.

0 投票
2 回答
795 浏览

gsm - 如何识别 ISO7816 通信是 GSM 还是 EMV?

我已阅读 ISO7816、3GPP 和 EMV 数据表,但我不明白如何识别通信是 GSM 还是 EMV 或其他任何东西。

问题是命令是不同的beetwin每个协议,但有时具有相同的INS(GSM FETCH:INS = 12和基本的ISO7816 PERFORM TRANSACTION OPERATION:INS = 12)。

我需要知道以前的命令,如 SELECT 或 READ BINARY,如果通信是在 GSM 或 EMV 或其他东西中建立的。

是否可以 ?CLA与此有关吗?

ETSI 102 221 说 FETCH:CLA = 80;INS = 12 ; ISO7816-7 说 FETCH : INS = 10 ; P2 = 8A;

我真的很困惑,我真的不明白。

谢谢您的帮助。

蒂姆

0 投票
2 回答
39076 浏览

smartcard - APDU 命令读取卡号

我想知道是否可以从智能卡中获取借记卡/信用卡号,我正在尝试使用具有通信协议 PC/SC、CCID 和卡接口 ISO/IEC 7816-1/ 的智能卡读卡器来获取它2/3 智能卡,MicroSD 接口 ISO 7816-4 智能卡。

到目前为止,我只知道插入的卡类型(Visa、Mastercard、Maestro 等)

谢谢!

0 投票
1 回答
2767 浏览

apdu - 生成 ARQC 时 EMV 长度错误 - CDOL1

我正在使用 VISA 信用卡、借记卡和 MC 信用卡成功生成 ARQC,但是当我尝试使用 MC Debit 生成一个时,我得到“6700”命令,这意味着“长度错误”,这是我的 CDOL 和我的命令:

所有数据对象长度的 CDOL1 总和预计为 35 个字节(十六进制 23)

CDOL1 9f02069f03069f1a0295055f2a029a039c019f37049f35019f45029f3403

命令 80AE80002300000000000000000000000004848000008000048413021300550320312100001e0300

有人知道我做错了什么吗?

0 投票
6 回答
25650 浏览

nfc - reading EMV card using PPSE and not PSE

I'm trying to read the data off a contactless Visa Paywave card.

For the Paywave, I have to submit a SELECT using PPSE (2PAY.SYS.DDF01) instead of PSE (1PAY.SYS.DDF01).

The EMV book 1, section 11.3.4, table 43 only describes how to interpret the response for a successful SELECT command using PSE. Does anyone know or can refer me to a source that shows how to process the data returned from a successful SELECT command using PPSE?

Here's my request APDU:

Here's the response:

I understand tag 84, tag 85, tag BF0C from the response. According to the examples for reading PSE, I should be able to just send GET PROCESSION OPTIONS (to get the AIP and AFL) with PDOL = null after this successful response as follows: 80A80000830000.

But request 80A80000830000 returns error code 6985 - Command not allowed; conditions of use not satisfied.

I also tried reading all the files after successfully selecting the PPSE by traversing through every single SFI (0-30) and every single record (0-16) of each SFI. Yes, I also did the 3 bit shift and bitwise-OR the SFI with 0x4. But I got no data.

I'm stuck, any help that would point me into getting some info from my Paywave card would be appreciated!

0 投票
4 回答
8428 浏览

java - EMV TLV Java 函数

我正在寻找一种使用 Java 翻译 EMV 响应的方法,例如使用此在线选项:

http://www.emvlab.org/tlvutils/

您在其中放置类似 EMV 响应的内容:

6f3a8407a0000000031010a52f500b56495341204352454449548701015f2d086573656e707466729f12074352454449544f9f1101019f38039f1a02

它会完美地向您展示一切,我开始自己做一些事情,但后来我意识到也许我们可以有两个 9F38(PDOL) 字符串,而不需要两个相同的标签,因为我知道这是不可能的,但标签的值可能以 9F 结尾并且下一个标签的开头将是 38,这会给我一个错误......现在我提到它,这可能吗?因为这是我停止做自己的功能的主要原因之一。

你们中是否有人已经编写了一个函数来做到这一点?

谢谢!

0 投票
1 回答
1949 浏览

smartcard-reader - 使用 AID 选择 EMV 应用程序

我正在尝试使用以下命令读取 Visa 信用卡:

但我收到了这个回复

我无法理解这个回复,因为 EMV Book 1 说(第 146 页):

关于现在如何进行的任何帮助?我错过了什么?我应该怎么办?

谢谢。

0 投票
2 回答
5647 浏览

credit-card - EMV:从 ICC 获取 CVV 代码?

我正在测试一个 EMV 读卡器,我已经完成了此处此处指示的步骤,但我无法找到一种方法来知道是否有可能获得我可能需要的卡验证值 (CVV) 代码联系商家服务器。

有人有一些链接或解释以获得该价值吗?

PS:我还检查了EMV 规范中的 EMV 书籍,甚至没有 CVV/CVC 字样!

0 投票
3 回答
1852 浏览

emv - 从 emv 卡中获取 IBAN 号码

我在从德国 CashCards(也称为 Geldkarte)读取IBAN号码时遇到了一些问题。我可以与我的卡进行通信,并从中获取一些信息。但我不知道我必须向卡发送哪个命令Apdu,才能获得 IBAN 号码......

该应用程序在 Java 7 上运行,我使用java.smartcardio api Protocoll is T=1

我的 commandApdu 获取日期如下所示:

我得到的信息是:

谁能告诉我获取 IBAN 号码的正确 apdu 吗?

如果我忘记了一些需要的信息,我很抱歉,但这是我在这个板上的第一个问题 :-)

0 投票
1 回答
2390 浏览

nfc - EMV 持卡人姓名与 NFC 扫描信用卡上的姓名不同

我一直在玩 androids NFC 功能并扫描我信用卡上的数据

我从卡中获得的持卡人姓名在表格中

而我实体卡上的名字是这样的

有谁知道是否可以获取卡上的持卡人姓名?用于进行在线支付的一种。带有斜线的名称也可以以这种形式使用吗?

0 投票
1 回答
4681 浏览

android - “获取处理选项”总是 6700(错误的 Lc 或 Le)

我正在尝试通过我的 LG P710 Optimus L7 2 读取智能卡。
我正在关注本教程

我可以选择“1PAY.SYS.DDF01”目录
我可以选择应用程序

但我无法执行“获取处理选项”它总是导致 6700 错误(Lc 或 Le 错误)

这是我的代码

这将返回 APDU 状态字 9000 -> 成功

这将返回 APDU 状态字 9000 -> 成功

而这个正在制造问题:它返回 6700 -> 错误的 Lc 或 Le

函数handleResponse 只是将“responseAPDU”从二进制解析为十六进制并突出显示状态字

谁能告诉我出了什么问题?或者只是帮助我?

PS 对不起英语不好 ;)


作为对我的应用程序选择的回应,我得到:

但我不知道要从 GET PROCESSING OPTIONS 将什么插入到数据字段中。
参考 EMV Book 3,“5.4 使用数据对象列表 (DOL) 的规则”一节中的指南。
那么我只需要设置数据字段 83 03 9F 5C 08
和 Lc = 5 吗?