问题标签 [contactless-smartcard]
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.
android - 避免在完成我的交易后重新发现非接触式卡
这个问题的背景是在实施这个问题的非常有用的答案中描述的解决方案时开始的。我最终为 Android 4.4 的手机编写了不同的代码(使用enableReaderMode
和早期版本(使用enableForegroundDispatch
)。
在我的应用程序完成与卡片的交互后,我观察到两种不同的行为:
- 使用enableForegroundDispatch时,手机和卡片之间不会发生 NFC 交互,直到用户从手机中取出卡片并再次将其关闭。
- 使用enableReaderMode时,只要我编写电话卡交互的 Activity 完成,手机就会尝试再次读取卡片:其他应用程序启动(如果它已订阅 NFC 事件)或手机播放恼人的声音(NFC检测到卡但没有应用程序正在侦听该事件)。这是非常不可取的,降低了用户体验 - 在他/她有时间移除卡之前,正在发生其他事情。
有没有办法enableReaderMode
让手机表现得像enableForegroundDispatch
?
contactless-smartcard - 如何替换 EMV 非接触式轨道数据中的 CVC3、ATC 和不可预测的数字?
我正在尝试在给定 CVC3 和一堆位置参数的情况下组装正确的轨道数据。但是 EMV C-2 Kernel 的书和你想象的一样迟钝(包括一个例子会害死人吗!?!)。任何人都可以帮助处理这个例子:
成功生成校验和后:
假设任意数据字段以全 0 开始,它是如何结束的?规范是这样说的:
将二进制编码的 CVC3 (Track2) 转换为以 10 为基数表示的相应数字的 BCD 编码。将 BCD 编码的 CVC3 (Track2) 的 q 个最低有效位复制到 Track 2 数据中“任意数据”的合格位置。符合条件的位置由 PCVC3(Track2) 中的 q 个非零位指示。
我读为:CVC3 = 0x609B = 24731(所以复制731?BCD与此有什么关系?或者他们只是说“将731作为bcd编码复制到字节数组”?)
rfid - 奇怪的 DesFire EV1 结果
我从一家位于香港的公司购买了一些 DesFire EV1,用于我正在进行的项目。一些本应在出厂时为空的卡上有许多应用程序。阅读卡片属性似乎将它们识别为:
“Reiner LoginCard”(或“OWOK”,他们如何命名,https: //cardlogin.reiner-sct.com/ )-它们已由德国计算机杂志(“Computer BILD”)分发”......
问题如下:命令和应用程序返回奇怪的结果,例如:Max Nb Keys = 0 no settings some applications have a max number of keys = 133 ...
这是卡片内容的屏幕截图。关于是什么原因的任何想法?这是否意味着 DesFire EV1 安全和防篡改机制启动并返回错误数据?
java - 如何使用 Android NFC API 获取智能卡 ATR?
有谁知道如何使用 NFC API 获取 Android 应用程序的智能卡 ATR?我使用的卡是非接触式卡。我有这个代码
但它null
作为响应返回。
smartcard - Desfire EV1卡有如下数据1A3D803DC0,但输出的是3D803DC0。这是什么格式?
Desfire EV1 卡通过 weigand 输出以下数据。3D803DC0。然而,当我查看 Desfire Card 时,我可以看到文件中的数据是 1A3D803DC0。这是长度字节后跟数据。我假设它类似于 HID Corp 1000 格式,但看起来 Corp 1000 只有一个带有卡号的设施代码/公司 ID。卡中的数据格式如下。
有问题的格式示例:
设施代码:123 卡号:123
26 位卡数据:十六进制 (3D803DC0) 二进制 (0011 1101 1000 0000 0011 1101 11),去除尾随 0
问题中的格式:1A3D803DC0(1A = 数据长度,即 26)
我想知道这种格式的名称。我搜索了很多地方,但在这方面找不到任何东西。
rfid - Mifare卡内存空间?
考虑到密钥和访问位每个扇区占用 16 个字节,并且每个卡的唯一 ID (UID) 和制造商数据占用 16 个字节,MIFARE Classic 1K 卡中剩余的净内存空间是多少?
nfc - Mifare 1K 写入块但无法读取值块
在过去的三天里,我一直在寻找 Mifare 1K 的块和价值块。
例如,我成功写入数据 1. 用这个 APDU 阻塞:
然后我可以阅读如下 APDU:
但是当我尝试读取值块时,它给出了这个错误。
所以我的问题是有什么区别?当我写数据时,我应该使用二进制块还是值块。哪一个更好?
nfc - NFC 读卡器和卡上匹配 (MOC) 兼容性
这个问题与编程无关,而是一个关于通用 NFC 阅读器和卡上匹配 (MOC) 技术的可能兼容性的理论问题。
Match on Card 技术允许验证用户/所有者的生物特征数据与存储在智能卡上的生物特征数据,而无需从卡中提取数据,因为比较是由卡直接在卡上完成的(智能卡包括一个微处理器)。
这是更多信息 http://www.e-xpertsolutions.com/images/pdf/moc/3_BiometricMOC.pdf
我很难找到明确说明 MOC 兼容性的 NFC 阅读器,所以我的问题是:每个 NFC 阅读器都能够使用 MOC 技术吗?
我倾向于相信,如果 NFC 读/写器可以将数据传输到卡上,那么它在物理上应该能够做 MOC 的事情,但我不确定,我不想购买无法工作的设备。
android - 当 NFC 阅读器不发送“SELECT AID”APDU 时在 Android 上模拟智能卡
我已阅读有关 NFC 的 Android 文档,发现它可以模拟 NFC 标签。但是,它要求您注册您所服务的 AID。
如果 NFC 阅读器不发送“SELECT AID”APDU,是否可以创建处理通信的应用程序?通过创建清单文件中的 AID 为空的应用程序,或创建某种默认应用程序。
我不介意应用程序是否必须在前台,如果这有任何帮助的话。
先感谢您。
smartcard - 智能卡读卡器是否执行任何加密功能?
据我们所知,智能卡使用相互身份验证方法来阐明卡和读卡器之间的安全性。
我想知道,密码操作在哪里完成?(除了在卡中)在读卡器还是在计算机中?
我的意思是,读者是否会做任何密码学操作?还是只是将 USB / COM 协议转换为卡用于传输数据的协议?
换句话说,我可以使用读卡器连接的计算机 USB 端口上的嗅探器检索卡和读卡器之间传输的 [加密] 数据吗?(确实,我需要从我在嗅探中看到的头部和尾部删除一些字节。但我还需要做任何加密功能吗?)
请注意,我需要在卡和读卡器之间传输的相同数据。而且我不想解密数据。