确定智能卡上基本文件的大小

时间:2013-07-08 12:07:26

标签: smartcard

Iam尝试在EG Nr.1360-2002(第120页)中记录的数字行车记录仪智能卡上读取Events_Data文件。它的大小可以从864到1728字节不等。现在我试图找出测试卡上的确切大小。我尝试按照this SO文章中描述的步骤进行操作,但是这些卡片的SELECT命令似乎只能用于P2 = 0C(没有预期的响应)。有没有其他方法来找出这些文件的大小?

1 个答案:

答案 0 :(得分:1)

根据我对规范的理解:

  

但这些卡片的SELECT命令似乎只适用于   P2 = 0C(无预期响应)

我同意。第36页声明它支持标准ISO 7816,但第105页声明选择文件APDU是有限的(不能有响应数据,只有SW = 9000或错误)

  

它的大小可以从864到1728字节不等。

基本上,有6个CardEventRecords,每个都由n1(6到12)CardEventRecord(24字节)组成。因此,此文件中有36到72个CardEventRecord。

  

我尝试按照this SO文章

中描述的步骤进行操作

在这种情况下,您可以读取前864个字节(加速只发送4个APDU以读取首先255个字节,接下来的255个字节,接下来的255个字节和接下来的99个字节)。 然后,循环读取每24个字节的剩余字节数(CardEventRecord),如果收到SW 6B00或6700则停止。

注意:您也可以为所有字节块读取255个字节,当您收到错误6CXX时,使用XX指示的短长度重新发送读取APDU。这应该更快,但卡可能会发送SW 6700而不是6CXX这是不方便的(取决于卡的实现)。