移动卡APDU指令错误详解与参考
![](https://csdnimg.cn/release/wenkucmsfe/public/img/starY.0159711c.png)
"APDU指令错误收集"
APDU(Application Protocol Data Unit)是智能卡通信协议ISO 7816中定义的一种数据包格式,用于智能卡与读卡器之间的通信。这个错误集包含了在使用APDU指令进行移动卡片开发时可能会遇到的各种错误情况,这些错误代码有助于开发者识别和解决问题。
1. 成功执行: "9000" - 表示APDU命令成功执行,没有出现任何问题。
2. 警告信息:
- "6200" - 警告信息未提供,可能意味着某些信息未被返回。
- "6281" - 警告回送数据可能出错,回送的数据可能不完整或格式有误。
- "6282" - 警告文件长度小于Le,表示请求的数据量超过了文件的实际长度。
- "6283" - 警告选中的文件无效,可能是文件不存在或者已损坏。
- "6284" - 警告FCI(File Control Information)格式与P2指定的不符,表明文件控制信息与预期不符。
3. 校验错误:
- "6300" - 鉴别失败,可能是指令执行过程中身份验证未通过。
- "63Cx" - 校验失败,x代表允许的重试次数,意味着校验和不正确。
4. 错误状态:
- "6400" - 出错状态标志位没有变,表示卡片状态没有更新。
- "6581" - 内存失败,表明卡片内部存储出现问题。
- "6700" - 长度错误,指APDU的长度字段不正确。
5. 不支持的功能:
- "6881" - 不支持逻辑通道,卡片不支持多通道通信。
- "6882" - 不支持安全报文,可能卡片不支持特定的安全机制。
- "6884" - 不支持命令链,表示卡片不支持连续发送多个命令。
6. 命令拒绝或条件不满足:
- "6901" - 命令不接受(无效状态),例如卡片被锁定或主文件未建立。
- "6981" - 命令与文件结构不相容,当前文件不是所需文件。
- "6982" - 操作条件不满足,如未输入正确的PIN。
- "6983" - 认证方法锁定,PIN已被锁定。
- "6984" - 随机数无效,引用的数据无效。
- "6985" - 使用条件不满足,可能是时间限制或其他条件未达成。
- "6986" - 不满足命令执行条件,如不适当的命令或INS错误。
- "6987" - MAC丢失,指缺少必要的消息认证码。
- "6988" - MAC不正确,表明消息认证码校验失败。
- "698D" - 保留,可能用于未来的错误定义。
7. 数据错误:
- "6A80" - 数据域参数不正确,表明输入的数据格式或值有误。
- "6A81" - 功能不支持,如创建文件不允许,目录无效或应用被锁定。
- "6A82" - 文件未找到,可能是因为文件不存在。
- "6A83" - 记录未找到,可能是指定的记录不存在。
- "6A84" - 文件预留空间不足,不足以完成操作。
- "6A86" - P1或P2不正确,指APDU的参数错误。
- "6A88" - 引用数据未找到,可能是数据丢失或被删除。
8. 参数错误:
- "6B00" - 参数错误,表明APDU中的某个参数不正确。
9. 类或指令代码错误:
- "6Cxx" - Le长度错误,实际长度是xx,表示期望的响应长度与实际长度不符。
- "6E00" - 不支持的类(CLA),表示使用的命令类别不受卡片支持。
- "6F00" - 数据无效,表明接收的数据无法解析或理解。
- "6D00" - 不支持的指令代码(INS),表明卡片不支持特定的命令。
10. 特殊错误:
- "9301" - 资金不足,通常出现在金融交易中。
- "9302" - MAC无效,可能是因为消息认证码计算错误。
- "9303" - 应用被永久锁定,可能是因为多次尝试失败导致的。
- "9401" - 交易金额不足,表示交易金额低于最小限额。
- "9402" - 交易计数器达到最大值,可能是指定操作的次数超出限制。
- "9403" - 密钥索引不支持,表明使用的密钥索引无效。
- "9406" - 所需MAC不可用,可能是因为密钥管理问题。
11. 其他错误:
- "6900" - 不能处理,一般表示卡片无法执行接收到的命令。
- "6600" - 接收通讯超时,通信过程中没有在规定时间内收到响应。
- "6601" - 接收字符奇偶错,表明接收的数据奇偶校验失败。
- "6602" - 校验和不对,可能是数据传输过程中发生错误。
- "6603" - 警告当前DF文件无FCI,表示选择的文件没有文件控制信息。
- "6604" - 警告当前DF下无SF或KFR-APDU,表明所选文件下没有子文件或预期的APDU格式不正确。
了解这些错误代码及其含义对于调试APDU指令至关重要,可以帮助开发者快速定位问题并修复,从而提高开发效率和卡片应用的稳定性。
2774 浏览量
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
qq_28716819
- 粉丝: 0
最新资源
- D语言编程指南:面向对象的DMD1.022详解
- 图书仓库管理系统:Delphi6与Access 2000应用详解
- Java平台J2EE开发深度解析:从正则到分布式应用
- C++性能优化与实战技巧
- iBATIS in Action实战指南:专家团队详解
- GNU C 库参考手册:版2.7详细文档
- Ibatis框架入门与优势解析
- 软件设计规范详解与实践指南
- 优化WebService传输:压缩与二进制数据处理
- SQL入门:基础操作与SELECT INTO详解
- C语言基础习题集:解谜与矩阵填充
- 汤子瀛《计算机操作系统》习题答案详解:多道批处理系统与实时系统特点
- Carbide.c++ FAQ: Nokia Developer Guide
- ASP.NET 2.0 Web站点设计与开发入门
- GCC中文手册:C与C++编译器指南
- ASP.NET 2.0入门与数据库应用探索