标签: smartcard-reader

使用SCL010获取Mifare Ultralight的UID

我想获得Mifare Ultralight NFC标签的UID.在Java中我有这个代码:

TerminalFactory factory = TerminalFactory.getDefault();
List<CardTerminal> terminals = factory.terminals().list();
System.out.println("Terminals: " + terminals);

CardTerminal terminal = terminals.get(0);

Card card = terminal.connect("*");
System.out.println("card: " + card);
CardChannel channel = card.getBasicChannel();

ResponseAPDU answer = channel.transmit(new CommandAPDU(0xFF, 0xCA, 0x00, 0x00, 0x00));
byte[] uid = answer.getBytes();
Run Code Online (Sandbox Code Playgroud)

问题是我收到两个字节而不是UID.有什么问题?APDU是否正确?

java apdu nfc smartcard-reader mifare

7
推荐指数
2
解决办法
7400
查看次数

CCID RDR_to_PC_DataBlock 错误问题 0xFE ICC_MUTE - Java 智能卡读取

我是一名初级程序员,在 Android 移动设备上通过 USB 主机向智能卡发送 CCID 命令时遇到问题。这次我发送了 PC_to_RDR_IccPowerOn CCID 命令 PC_to_RDR_IccPowerOn 来激活卡并收到了 ATR 响应。

接下来的过程中,我将 PC_to_RDR_XfrBlock CCID 命令发送到卡以选择 Applet,但我收到了错误响应。

CCID 响应:80 00 00 00 00 00 00 40 FE 00 - 0xFE 含义 与 ICC 讨论错误代码时 CCID 超时参考文档 DWG 设备智能卡集成电路设备第 6.2.6 节。

我找到了解决这个问题的信息,但没有找到解决的方法。如何解决此问题并使 APDU 响应返回 90 00?

更多信息
#1 This Byte array is the ATR value (answer to reset) that I get from RDR_to_PC_DataBlock answer is
ATR response: 3B 68 00 00 54 48 20 4E 49 44 20 …
Run Code Online (Sandbox Code Playgroud)

java android apdu smartcard smartcard-reader

7
推荐指数
0
解决办法
970
查看次数

如何与Java中的智能卡交互?

是否有Java库(API),我可以使用它与智能卡进行交互?与WinSCard库类似.

我需要能够连接智能卡并从中读取数据.我需要在Java中实现它,以便我可以在任何操作系统(Linux,Mac,Windows)下使用它.因为,WinSCard库只能在Windows下运行,因为它使用DLL(WinSCard.dll).

在Java中有没有像WinSCard一样好的东西?

java smartcard smartcard-reader

6
推荐指数
1
解决办法
1万
查看次数

从简单的USB HID磁卡读卡器获取跟踪数据的最简单方法是什么?

我需要从磁卡上获取Track 1和Track 2数据,并通过网络将它们发送到等待的服务器.从USB HID磁卡读卡器获取轨道数据的简便方法是什么?

如果它有帮助,我有一个MAGTEK迷你刷磁条读卡器(部件号21040140)

我是操作系统不可知的 - Windows,Mac或Linux的解决方案会很棒.最好不要使用.NET,但如果这是我最简单的方法.

你们都觉得怎么样?

谢谢!

usb credit-card hid smartcard-reader

6
推荐指数
1
解决办法
2万
查看次数

编程PC/SC读卡器时的ATR命令

我已经检查了MIFARE Ultralight和TOPAZ/Jewel IC标签的编程接口.API很好地描述了如何在卡上保存字节,如何寻址存储器块,如何进行所有操作,如读取,读取,使用OTP(一次性可编程)功能,如何读取ROM字节,如何从空闲切换到就绪状态(REQA,WUPA命令),它表示命令是否受CRC保护,如何访问标签UID等.

当我开始编程NFC阅读器(ACR122U或SCL010)时,我发现PCD(阅读器)和PICC(标签)之间的所有通信都是从ATR(应答复位)命令开始的,这是在Internet上所描述的命令PCD发送给PICC用于识别目的.

但是没有一个标签文档提到ATR命令 - 所有与标签通信时的通信(PQR)都以REQA,WUPA命令开始,以便将卡切换到就绪模式.

我的理解是ATR是由PC/SC基于读卡器与之通信的NFC卡构建的.一旦读者检测到基于它的标签是什么类型的技术,就会创建ATR.另外根据文档,针对不同NFC读取器的ATR对于相同的NFC标签是不同的.

我对吗?PC/SC是否构建了ATR?

BR STeN

smartcard nfc pcsc smartcard-reader mifare

6
推荐指数
1
解决办法
2万
查看次数

APDU级别的智能卡读卡器T0 T1通信

我很难理解我必须使用什么协议来与卡T0或T1通信?所以,如果我错了,请纠正我,但如果卡支持两者,读者实际上决定用什么协议与卡通信.

所以我现在的逻辑是:

// if ATR(T1) -> set_params(T1 structure) -> T1 APDU communication
// if ATR(T0) -> set_params(T0 structure) -> T0 APDU communication
Run Code Online (Sandbox Code Playgroud)

但事实证明,逻辑是错误的,它对大多数读者来说都是偶然的.我刚刚发现即使卡ATR返回T1,也希望T0通信的读卡器.

问:确定使用什么协议的逻辑是什么?如果背后有规格,请你指点一下.

编辑:我忘了在操作系统之前提到我的代码处于预启动环境(UEFI).所以我没有(使用)任何API.我的代码处于字节流APDU级别,并使用UEFI UsbIo通信直接与硬件对话.

谢谢大家!

祝一切顺利,

亚历克斯

apdu smartcard smartcard-reader

6
推荐指数
1
解决办法
1万
查看次数

Mifare卡:区分4字节和7字节UID

我有一个始终报告 64 位的读卡器,并且可以读取具有 4 或 7 字节 UID 的卡。

作为一个例子,我看到它可以报告:

  • 04-18-c5-82-00-00-00-00- 形式为 4 字节的 UIDuid0-uid1-uid2-uid3-00-00-00-00
  • 04-18-c5-82-f1-3b-81-00- 形式为 7 字节的 UIDuid0-uid1-uid2-uid3-uid4-uid5-uid6-00

是什么阻止 7 字节 UID 将 uid4、uid5 和 uid6 设置为零?这是否包含在规范中?如果有,哪个规格?

rfid uniqueidentifier smartcard-reader mifare contactless-smartcard

6
推荐指数
1
解决办法
2万
查看次数

通过HID OMNIKEY 5427 CK向卡发送APDU命令

我试图通过HID OMNIKEY 5427 CK通过APDUs命令来操作MIFARE卡即.Ultralight C卡,在使用WinSCard.dll的Windows 10 x64 OS环境中.(我在NXP NDA下并且可以完全访问他们的文件)

我试图在网上找到信息好几天了.除了2pages手册之外,似乎没有该模型的已发布文档.

像GetUID(FFCA000000)这样的简单命令是可以的,我可以取回实际的卡UID.

但对于"使用卡进行身份验证",来自HID 5421模型的参考文档说我应该从OpenGenericSession(FFA0000703010001)开始,我试过了,读者总是用6D00h回复(错误)

我试过直接发送验证命令'1Ah + 00h'(FFA00005080100F30000641A0000),读者也总是回复错误代码.

我对HID 5421型号有经验,而且很直接,不知道为什么这款5427不像它的兄弟.

是的,我联系了HID支持.没运气.我没有从他们那里获得有用的信息.

如果有任何想法或有5427软件开发指南请帮忙.我现在已经把头发拉了近一个星期.

hid pcsc smartcard-reader mifare contactless-smartcard

6
推荐指数
1
解决办法
1439
查看次数

从CVM列表解析EV的CV规则

我已经成功从EMV卡中检索了CVM列表。

0000 0000 0000 0000 4103 4203 1E03 1F02
Run Code Online (Sandbox Code Playgroud)

从EMV规格书3开始,前4个字节和后4个字节为数量,其余为CV规则。使这些成为简历规则4103 4203 1E03 1F02

该书还显示了如何解析CV规则,如下所示: 在此处输入图片说明

我假设我需要将CV规则中的前两个字节转换为二进制并与上表匹配?但是,为什么上表的单元格为空?也有人可以用简单的伪代码算法来解释吗?

apdu smartcard emv smartcard-reader

6
推荐指数
1
解决办法
1178
查看次数

从ATR获取卡类型

当我使用springcard读卡器扫描我的卡时,我需要知道这张卡是否是以下类型之一:CTS或CD_97或ISO_A或ISO_B或FRD如何从ATR获取这些类型?

这些是ATR的一些例子,我得到了:

Navigo:3B 88 80 01 00 00 00 00 00 71 81 00 F9

Técély:3B 8F 80 01 80 5A 0A 01 01 20 03 11 10 1D 86 BC 82 90 00 C9

Oura:3B 8F 80 01 80 5A 0A 01 02 20 03 11 03 53 52 A2 82 90 00 5D

Citycard:3B 8F 80 01 80 4F 0C A0 00 00 03 06 03 00 02 00 00 00 00 69

我们是如何从ATR获得这些类型的详细解释?

我正在使用SpringCard读卡:http://files.springcard.com/pub/pmd841p-fa.pdf

我能够在第27页和第28页找到解决方案的一部分 …

smartcard smartcard-reader contactless-smartcard

6
推荐指数
1
解决办法
1489
查看次数