鉴于您拥有IClass卡的UID,可以在卡上读取卡号

时间:2015-09-16 14:06:05

标签: java smartcard hid smartcard-reader

我有HID类读卡器USB Device 5427 CK。我已成功读取该卡的ATR和UID。问题是卡上印有一个数字。

即2x01966 21093771-1

我在使用java API读取卡时获得的输出。

SELECT DISTINCT likes.drinker FROM likes WHERE likes.drinker NOT IN (
SELECT likes.drinker FROM (
SELECT * FROM sells WHERE sells.bar = 'Caravan') AS caravanbeer 
  RIGHT OUTER JOIN likes ON likes.beer = caravanbeer.beer 
WHERE caravanbeer.bar IS NULL)

如何从UID获得相同的号码

2 个答案:

答案 0 :(得分:2)

请参阅OMNIKEY Contactless Smart Card Readers Developer Guide可用here。它讲述了如何在第9章和第10章中与iClass卡进行通信。

Select Page的命令P2=0x04(请求8字节卡序列号)可能有效(第38页)。

编辑>

首先阅读上述手册。

下载适用于OMNIKEY非接触式智能卡读卡器的"同步API"可用here(如第6章所述)。

安装下载的软件包,并在" C:\ Program Files \ HID Global \ Sync-API" 下研究提供的示例 iClassExplorer

如果你坚持从java调用它,你可能会发现JNA很有用。

由于您需要使用javax.smartcardio(第9.1章)中的SCardCLICCTransmit函数,scardsyn.dll方法可能无法正常工作。

答案 1 :(得分:0)

SCardCLICCTransmit()是驻留在OMNIKEY同步API DLL中的专有API调用。 与此读取器一起使用本机CCID驱动程序,并通过FFCA0000访问UID。如果没有其他包装,这应该工作得很好。该APDU可用于所有PC / SC第3部分兼容的非接触式智能卡读卡器。