是否可以使用ATR来确定我是否拥有ISO14443A或ISO14443B类型的卡?如果是,怎么办?

最佳答案

由于mictter正确为explained,因此仅对ISO 7816联系人卡存在真实的ATR。我可以接受这样的论点,即等效于ISO 14443的可能是ATQA/ATQB,因为这是激活后从标签中获得的第一个答案,尽管我宁愿说ATR的等效物是ATQA + SAK + ATS的组合( A型)和ATQB + ATTRIB答案的组合(B型)。

关于您看到的ATR,根据PC/SC specification,我认为这是PC/SC模拟的ATR。

对于智能卡(ISO 14443-4传输协议(protocol)),此ATR的格式为

3B 8n 80 01 T[1]..T[n] xx

T[1]T[n]
  • ISO 14443 Type A或
  • 的ATS历史字节
  • 由ATQB应用程序数据(T[1] T[2] T[3] T[4]),ATQB协议(protocol)信息字段(T[5] T[6] T[7])和ATTRIB MBLI字段(T[8])组成。

  • 因此,您可以进行某种形式的匹配,以猜测它是A型还是B型智能卡。 IE。如果n == 8,并且T[1]T[n]中的参数与B型卡的这些字段所期望的匹配。我仍然怀疑您将获得任意卡的可靠结果。

    对于非接触式存储卡,情况肯定会更好。对于这些卡,模拟的ATR如下所示:
    3B 8n 80 01 T[1]..T[n] xx
    

    使用T[1]T[n]包含应用程序标识符存在指示符(标记4F)。因此,T[1]T[n]通常看起来像这样:
    80 4F yy A000000306 ss nnnn 00000000
    

    使用ss识别卡的协议(protocol):
    0x01: ISO 14443-1 Type A
    0x02: ISO 14443-2 Type A
    0x03: ISO 14443-3 Type A
    0x05: ISO 14443-1 Type B
    0x06: ISO 14443-2 Type B
    0x07: ISO 14443-3 Type B
    

    和识别卡名称的nnnn(有关完整列表,请参见PC/SC specifications)。

    关于nfc - 从ATR确定卡类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23404314/

    10-11 22:41