我有一张Felica卡。第一个问题是这张卡实际上是什么?它是智能卡还是简单的存储卡?它是Java卡的一种,我可以在其中加载.cap文件吗?还是它具有专有的固定内容,并且我不能加载任何applet?是GlobalPlatform标准投诉吗?

我读here:

索尼专有的FeliCa是一种智能卡技术,类似于
ISO / IEC
14443. FeliCa的文件系统类似于ISO / IEC 7816-4中定义的文件系统。文件系统和用于访问文件系统的命令是
在JIS X 6319-4 [28]中标准化。此外,FeliCa系统还具有
专有的加密和安全功能。

之后,我尝试向其发送一些APDU命令。第一步是对阅读器进行一些配置更改。因为我的阅读器配置为读取ISO14443 A型和B型卡,而不是Felica卡。

由于Felica和ISO / IEC 14443卡都使用13.56 MHz的频率作为载波,因此我认为这些类型之间的区别仅在于协议层。我对吗?如果是这样,Felica卡传输协议的名称是什么? (对于ISO / IEC 14443卡,我们有T = 1和T = CL协议)。

配置阅读器后,我尝试将命令发送到card:

Connect successful.
Send: 00 A4 04 00 00
Recv: 6A 81
Time used: 31.000 ms

Send: 00 C0 00 00 00
Recv: 6A 81
Time used: 28.000 ms

Send: 00 CA 00 00 00
Recv: 6A 81
Time used: 35.000 ms

如您在上方看到的,我仅收到0x6A81状态字。

我还搜索了很多ACS读卡器数据表,一些NXP应用说明以及确定的JIS X 6319-4标准,以获取此类卡的命令列表。但是我发现没有什么适用的。

因此,问题是:
  • Felica到底是什么? (智能?内存?)
  • Felica卡和ISO / IEC14443卡有什么区别?与NFC有关吗?
  • 如何与此卡通信并传输数据?

  • 更新:

    我的卡的ATR为:3b 8f 80 01 80 4f 0c a0 00 00 03 06 11 00 3b 00 00 00 00 42

    最佳答案

    Felica到底是什么? (智能?内存?)

    在功能方面,它更像是存储卡,而不是智能卡。读取数据块通常是存储卡的典型功能,并且该卡除了基于对称密码学的基本身份验证外,功能非常有限。

    在实现似乎带有multi-purpose CPU的意义上,您可能会争辩说它是智能卡(请参阅附录B)。

    然而,似乎无法像您一样更改智能卡的行为。在全球平台Java卡中。因此,我将其归类为具有专有协议的存储卡。

    Felica卡和ISO / IEC14443卡有什么区别?与NFC有关吗?

    它使用专有的通信协议,该协议既包括数据链接层(您在此处询问),又包括命令/响应层。

    如何与此卡通讯并传输数据?

    您正在发送APDU而不是FeliCa专有的命令/响应对的事实表明您正在使用转换层。此翻译层可能位于阅读器/阅读器驱动程序中。此转换层的API可能在PCSC 2.01 specifications中指定(第3.2.2.1节“存储卡功能支持”,使用CLA字节0xFF)。

    您可能还需要读者的用户手册,即使只是想知道将所需密钥存储在哪个位置。

    关于nfc - 如何与Felica内存/智能卡通信?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35718553/

    10-13 04:18