从ATR获取卡类型

时间:2018-04-12 09:40:46

标签: smartcard smartcard-reader contactless-smartcard

当我使用弹簧卡阅读器扫描我的卡时,如果此卡是以下类型之一,我需要获取: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

大浦: 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页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

2 个答案:

答案 0 :(得分:1)

关于" OPT寄存器" - 据我所知,你设置这个寄存器来控制SpringCard模板系统(可选)编码卡片系列的方式进入它的输出。我敢打赌,你根本不想使用他们的模板系统......

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

FF CA F1 00 00

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

  

0x00 - >没有给出的信息
  0x01 - > ISO 14443 A,1级   0x02 - > ISO 14443 A,2级   0x03 - > ISO 14443 A,3级或4级(和Mifare)
  0x05 - > ISO 14443 B,1级   0x06 - > ISO 14443 B,2级   0x07 - > ISO 14443 B,3级或4级   0x09 - > ICODE 1
  0x0B - > ISO 15693

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

  

0x0001 - >恩智浦Mifare标准1k
  0x0002 - >恩智浦Mifare标准4k
  0x0003 - &gt;恩智浦Mifare UltraLight +其他类型2 NFC标签,容量<= 64字节
  0x0006 - &gt; ST MicroElectronics SR176
  0x0007 - &gt; ST MicroElectronics SRI4K,SRIX4K,SRIX512,SRI512,SRT512
  0x000A - &gt; Atmel AT88SC0808CRF
  0x000B - &gt; Atmel AT88SC1616CRF
  0x000C - &gt; Atmel AT88SC3216CRF
  0x000D - &gt; Atmel AT88SC6416CRF
  0x0012 - &gt; Texas Intruments TAG IT
  0x0013 - &gt; ST MicroElectronics LRI512
  0x0014 - &gt;恩智浦ICODE SLI
  0x0016 - &gt;恩智浦ICODE1
  0x0021 - &gt; ST MicroElectronics LRI64
  0x0024 - &gt; ST MicroElectronics LR12
  0x0025 - &gt; ST MicroElectronics LRI128
  0x0026 - &gt;恩智浦Mifare Mini
  0x002F - &gt; Innovision Jewel
  0x0030 - &gt; Innovision Topaz(NFC论坛类型1标签)
  0x0034 - &gt; Atmel AT88RF04C
  0x0035 - &gt;恩智浦ICODE SL2
  0x003A - &gt;恩智浦Mifare UltraLight C +其他类型2 NFC标签,容量&gt; 64字节
  0xFFA0 - &gt;通用/未知14443-A卡
  0xFFA1 - &gt; Kovio RF条形码
  0xFFB0 - &gt;通用/未知14443-B卡
  0xFFB1 - &gt; ASK CTS 256B
  0xFFB2 - &gt; ASK CTS 512B
  0xFFB3 - &gt;预标准ST MicroElectronics SRI 4K
  0xFFB4 - &gt;预标准ST MicroElectronics SRI X512
  0xFFB5 - &gt;预标准ST MicroElectronics SRI 512
  0xFFB6 - &gt;预标准ST MicroElectronics SRT 512
  0xFFB7 - &gt;内置非接触式PICOTAG / PICOPASS
  0xFFB8 - &gt;通用Atmel AT88SC / AT88RF卡
  0xFFC0 - &gt; Calypso卡使用Innovatron协议
  0xFFD0 - &gt;来自未知制造商的通用ISO 15693
  0xFFD1 - &gt;来自EMMarin(或Legic)的通用ISO 15693
  0xFFD2 - &gt; ST MicroElectronics的通用ISO 15693,8位的块编号   0xFFD3 - &gt; ST MicroElectronics的通用ISO 15693,16位的块编号   0xFFFF - &gt;虚拟卡(仅限测试)

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

  

在撰写之日,此列表中的卡未被PC / SC规范引用。如果它们被添加到规范中,   未来的固件版本必须使用新值。因此建议不要在应用程序中检查这些值   它们很可能在将来被删除。

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

  

注意:PIX.NN仅适用于存储卡。即使GET DATA指令允许   即使对于基于微处理器的卡(智能卡),检索PIX.NN,返回的值也是   未指明,不得用于识别卡片。

免责声明:我无法再访问SpringCard阅读器,因此无法使用我的卡进行测试,但考虑到the documentation,它应该以这种方式运行。

过去我处理的是一个非常类似的问题(处理不同的卡片,有点提到here),最有效的方法是(考虑到我的&#34;混合&#34;卡片):

  • 使用ATR值创建&#34;候选列表&#34; (在很多情况下,ATR值导致单一卡计划候选人)

  • 如果有更多候选人考虑以下方法来确认其中一个:

    • 特定技术&#34;目录服务&#34; (例如MAD,获取申请ID,PSE / PPSE,PTSE ......)

    • 试错法应用程序选择(如果候选列表非常短,可能比使用目录服务更快)

    • (作为最不值得的)专有卡方案检测

这种方法假定您知道所用卡的所有可能的ATR值 - 如果不是,您将不得不将其替换/与上述卡技术/家庭检测相结合。

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

祝你好运!

答案 1 :(得分:0)

您可以在这里找到弹簧卡的答案,对不起,但是他们用Frensh语言回答了我,因此,如果有任何不清楚的地方,请在您的评论中注明:

ATR

1-达沃德使节FF CA FA 00: -Avez-vous au moins 14个八位位组,以及8-11个八位位组:A0 00 00 03 06? -> Si oui,al Poussàlogiquecâblée,Il fautrécupérerle PIX.SS和Le PIX.NN(响应时间为8月12日至13日的八位字节),以及第4.1节中的“点菜技术”。 4 et 4.1.5。 Ladétectionde la technologies'arrêtelà。 NUM_PROTOCOL订单清单中的Vous pouvez特使。 -> Si non,alors vousêtessur une“ vraie” carteàpuce。特使司令员NUM_PROTOCOL

NUM_PROTOCOL

2- Envoyer FF CA 00 00,以及分析器noms d'octets dans laréponse: -响应7或11个八位位组:ISO A菜单项强制单,点菜菜单项。 L'algo peuts'arrêterlàsi vous n'avez pas besoin de plus de tail -回复4个八位字节:c'est lenuméro协议。 2种选择: *西维斯·阿韦斯·德·维克特·斯蒂芬·卡洛比·阿莱塔佩·普雷登蒂,阿洛斯·阿尔戈·皮奥·萨雷尔·阿洛斯·阿尔维斯·佩斯·贝索因·德·德泰勒 *报名参加《命令报》,COMPREE_ID -区别八方音乐:在拉古提卡河畔的法斯特大街(ouméméire)上,不要进行技术鉴定。 Laréponse通讯员协议书。 L'algo peuts'arrêterlàsi vous n'avez pas besoin de plus de tail

COMPLETE_ID

3-在“到达”菜单上点菜,然后在“ vraie” puce上点菜(DONC:菜单上的菜单,菜单上的菜单) 特使FF CA F0 00和分析器noms d'octets dans la response: -11或12个八位字节:ISO B的强制要塞-ATQB的价格守旧者-速记法/自定义身份证明书的编号 -差异上的八进制数字:vérifiersi cela对应à3个八进制数字suivi dunuméro协议集Obtenuàla commandeprécédente a)si oui,c'est de l'ISO A-les deux首映八重奏组,l'ATQA等,以及letroisièmeest le SAK(le reste forme l'UID) b)在创新的点菜协议书REPGEN上的其他人(在PUPIaétéobtenuàl'étapeprécédente)。

Avec cela,规范性,可口可乐。