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