ISO7816智能卡编程:在MF下创建EF时出现6A80错误求助
ISO 7816智能卡创建EF报错6A80的排查与解决
问题背景
已成功通过指令00 A4 00 00 02 3F 00选中MF,但执行创建EF的指令00 E0 00 00 09 62 07 82 01 01 83 02 3F 01时,返回错误6A 80 : Wrong parameter(s) P1-P2. Incorrect parameters in the data field。
指令数据域拆解
先拆解创建EF指令的二进制数据域:
62:FCI模板标签(File Control Information Template)07:模板总长度82 01 01:文件描述符标签+长度+值(值01对应二进制00000001,表示透明结构EF)83 02 3F 01:文件标识符标签+长度+值(文件ID为3F01)
可能的错误点及修正方案
文件标识符
3F01不合法
ISO 7816规范中,3Fxx属于DF/MF的专用标识符范围,EF的ID不能使用该前缀。建议更换为非保留范围的ID,比如0001。文件描述符缺少必要属性
当前文件描述符仅定义了EF类型和结构,但多数卡片创建EF时需要显式指定文件大小。需添加80标签(文件大小)补充参数,比如80 02 00 10表示文件大小为16字节。模板类型不符合卡片要求
部分卡片要求使用64标签(文件参数模板)而非62标签来定义EF属性。
修正后的示例指令
以创建ID为0001、大小16字节的透明EF为例,修正后的APDU指令如下:
00 E0 00 00 0B 64 09 82 01 01 83 02 00 01 80 02 00 10
额外注意事项
- 确认卡片支持
00 E0作为CREATE FILE指令,部分厂商卡片可能使用80 E0作为指令码; - 若仍报错,建议查阅卡片官方规范文档,确认创建EF所需的具体参数格式。
内容的提问来源于stack exchange,提问作者Noor
相关产品推荐
相关产品推荐

