gpt4 book ai didi

smartcard - 从 ATR 获取卡类型

转载 作者:行者123 更新时间:2023-12-04 15:39:36 26 4
gpt4 key购买 nike

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

这些是一些 ATR 示例,我得到:

导航 :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
大浦 :3B 8F 80 01 80 5A 0A 01 02 20 03 11 03 53 52 A2 82 90 00 5D
城市卡 :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 页中找到解决方案的一部分 enter image description here
enter image description here
http://files.springcard.com/pub/%5bpma13205-bd%5d_Smart_Readers_and_RFID_Scanners_Template_System.pdf

我仍然需要使用命令来获取 OPT REGISTER

最佳答案

关于“OPT 寄存器”——据我所知,你设置这个寄存器来控制 SpringCard 的模板系统(可选)如何将卡系列编码到其输出中。我敢打赌你根本不想使用他们的模板系统......

要获取有关通用卡技术/系列的信息,请使用以下 GET DATA命令获取 PIX.SS 和 PIX.NN(参见第 2.2.1 章):

FF CA F1 00 00

响应的第一个字节是 PIX.SS(参见第 5.1.4 章):

0x00 -> No information given
0x01 -> ISO 14443 A, level 1
0x02 -> ISO 14443 A, level 2
0x03 -> ISO 14443 A, level 3 or 4 (and Mifare)
0x05 -> ISO 14443 B, level 1
0x06 -> ISO 14443 B, level 2
0x07 -> ISO 14443 B, level 3 or 4
0x09 -> ICODE 1
0x0B -> ISO 15693



以下两个字节包含 PIX.NN(参见第 5.1.5 章):

0x0001 -> NXP Mifare Standard 1k
0x0002 -> NXP Mifare Standard 4k
0x0003 -> NXP Mifare UltraLight + Other Type 2 NFC Tags with a capacity <= 64 bytes
0x0006 -> ST MicroElectronics SR176
0x0007 -> ST MicroElectronics SRI4K, SRIX4K, SRIX512, SRI512, SRT512
0x000A -> Atmel AT88SC0808CRF
0x000B -> Atmel AT88SC1616CRF
0x000C -> Atmel AT88SC3216CRF
0x000D -> Atmel AT88SC6416CRF
0x0012 -> Texas Intruments TAG IT
0x0013 -> ST MicroElectronics LRI512
0x0014 -> NXP ICODE SLI
0x0016 -> NXP ICODE1
0x0021 -> ST MicroElectronics LRI64
0x0024 -> ST MicroElectronics LR12
0x0025 -> ST MicroElectronics LRI128
0x0026 -> NXP Mifare Mini
0x002F -> Innovision Jewel
0x0030 -> Innovision Topaz (NFC Forum type 1 tag)
0x0034 -> Atmel AT88RF04C
0x0035 -> NXP ICODE SL2
0x003A -> NXP Mifare UltraLight C + Other Type 2 NFC Tags with a capacity > 64 bytes
0xFFA0 -> Generic/unknown 14443-A card
0xFFA1 -> Kovio RF barcode
0xFFB0 -> Generic/unknown 14443-B card
0xFFB1 -> ASK CTS 256B
0xFFB2 -> ASK CTS 512B
0xFFB3 -> Pre-standard ST MicroElectronics SRI 4K
0xFFB4 -> Pre-standard ST MicroElectronics SRI X512
0xFFB5 -> Pre-standard ST MicroElectronics SRI 512
0xFFB6 -> Pre-standard ST MicroElectronics SRT 512
0xFFB7 -> Inside Contactless PICOTAG/PICOPASS
0xFFB8 -> Generic Atmel AT88SC / AT88RF card
0xFFC0 -> Calypso card using the Innovatron protocol
0xFFD0 -> Generic ISO 15693 from unknown manufacturer
0xFFD1 -> Generic ISO 15693 from EMMarin (or Legic)
0xFFD2 -> Generic ISO 15693 from ST MicroElectronics, block number on 8 bits
0xFFD3 -> Generic ISO 15693 from ST MicroElectronics, block number on 16 bits
0xFFFF -> Virtual card (test only)



请注意以下有关以 0xFF(SpringCard 专有代码)开头的 PIX.NN 值的注意事项:

The cards in this list are not referenced by PC/SC specification at the date of writing. In case they are added to the specification, the future firmware versions will have to use the new value. It is therefore advised not to check those values in the applications, as they are likely to be removed in the future.



以及关于 PIX.NN 可用性的说明:

Note: PIX.NN is specified for memory cards only. Even if the GET DATA instruction allows to retrieve PIX.NN even for micro-processor based cards (smartcards), the returned value is unspecified and shall not be used to identify the card.



免责声明:我无法再使用 SpringCard 读卡器,所以我无法用我的卡测试它,但给了 the documentation它应该这样工作。

过去我正在处理一个非常相似的问题(处理不同的卡片,有些提到 here ),最有效的方法是(考虑到我的“混合”卡片):
  • 使用 ATR 值创建“候选列表”(在很多情况下 ATR 值导致单卡方案候选)
  • 如果候选人较多,可以考虑以下方式确认其中之一:
  • 特定于技术的“目录服务”(例如 MAD、获取应用程序 ID、PSE/PPSE、PTSE...)
  • 试错应用程序选择(如果候选列表非常短,这可能比使用目录服务更快)
  • (作为最少的手段)专有卡方案检测

  • 这种方法假设您知道已用卡的所有可能的 ATR 值——如果不知道,您将不得不用上述卡技术/系列检测替换/组合它。

    注意:评论中提到的 pcsc-tools ATR 列表可用 herehere (我不确定哪个是规范的)

    祝你好运!

    关于smartcard - 从 ATR 获取卡类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49793188/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com