使用 APDU 命令以线性固定结构写入记录

Posted

技术标签:

【中文标题】使用 APDU 命令以线性固定结构写入记录【英文标题】:Write record in linear fixed structure by using APDU Command 【发布时间】:2016-02-05 05:44:47 【问题描述】:

我已经通过使用以下 APDU 命令在 SCOSTA 智能卡中成功创建了线性固定文件结构 EF 文件

00 E0 00 00 1B 62 19 82 05 03 41 00 25 05 83 02 60 01 8A 01 01 88 01 48 8C 06 6E FF FF 22 25 25

我也尝试使用此 APDU 命令编写面向记录的文件。

00 DC 00 04 12 (Data=41 73 70 65 72 67 69 6C 6C 69 75 73 3A 6E 6E 6E 6E 6E)

但我收到错误 (6A85) LC 与 TLV 结构不一致。我需要编写面向智能卡 EF 记录的文件的解决方案。请指导我。

【问题讨论】:

【参考方案1】:

您正尝试在创建后直接发送 UPDATE RECORD 命令。此时可能还没有可用的记录(某些操作系统会使用空记录初始化文件,但这不是 ISO 要求)。

第一个建议是,改为使用 Append Record 如果失败,请验证所创建文件的记录大小是否与您的数据匹配。我在文件控制信息中找不到任何12,所以可能有不匹配的地方。如果我正确阅读了 SCOSTA 规范,则指定的记录大小为 0x25。在这种情况下,您必须自己填充数据,以达到正确的记录大小。

【讨论】:

以上是关于使用 APDU 命令以线性固定结构写入记录的主要内容,如果未能解决你的问题,请参考以下文章

APDU 命令将更改的 PIN 写入卡

用于超轻型 C 的 Omnikey 5X21 APDU 写入命令

mifare 经典上的 APDU 写入块命令

使用回车行终止符读取/写入固定长度的文本记录

APDU 命令读取二进制命令与文件结构不兼容

编码 APDU 命令以验证 PIN 的问题