CPU卡相关资料收集总结

指令回复错误描述

  • 6200 “警告 信息未提供”
  • 6281 “警告 回送数据可能”
  • 6282 “警告 文件长度小于Le”
  • 6283 “警告 选中的文件无效”
  • 6284 “警告 FCI格式与P2指定的不符”
  • 6300 “警告 鉴别失败”
  • 63Cx “警告 校验失败(x-允许重试次数)”
  • 6400 “状态标志位没有变”
  • 6581 “内存失败”
  • 6700 “长度错误”
  • 6882 “不支持安全报文”
  • 6981 “命令与文件结构不相容,当前文件非所需文件”
  • 6982 “操作条件(AC)不满足,没有校验PIN”
  • 6983 “您的卡已被锁定”
  • 6984 “随机数无效,引用的数据无效”
  • 6985 “使用条件不满足”
  • 6986 “不满足命令执行条件(不允许的命令,INS有错)”
  • 6987 “MAC丢失”
  • 6988 “MAC不正确”
  • 698D “保留”
  • 6A80 “数据域参数不正确”
  • 6A81 “功能不支持;创建不允许;目录无效;应用锁定”
  • 6A82 “该文件未找到”
  • 6A83 “该记录未找到”
  • 6A84 “文件预留空间不足”
  • 6A86 “P1或P2不正确”
  • 6A88 “引用数据未找到”
  • 6B00 “参数错误”
  • 6Cxx “Le长度错误,实际长度是xx”
  • 6E00 “不支持的类:CLA有错”
  • 6F00 “数据无效”
  • 6F01 “连接中断”
  • 6D00 “不支持的指令代码”
  • 9301 “您的卡余额不足”
  • 9302 “MAC2错误”
  • 9303 “应用被永久锁定”
  • 9401 “您的卡余额不足”
  • 9402 “交易计数器达到最大值”
  • 9403 “密钥索引不支持”
  • 9406 “所需MAC不可用”
  • 6900 “不能处理”
  • 6901 “命令不接受(无效状态)”
  • 61xx “正常 需发GET RESPONSE命令” 读取指令00C00000xx
  • 6600 “接收通讯超时”
  • 6601 “接收字符奇偶错”
  • 6602 “校验和不对”
  • 6603 “警告 当前DF文件无FCI”
  • 6604 “警告 当前DF下无SF或KF”
  • 6E81 “卡片已离开”

常用指令作用及解析

以下为cpu卡充值流程

  • 选择主文件
    00a40000023f00(住建部卡主文件一般都是这条指令)

  • 读取05文件
    00b0850000

    响应报文如下:

    字节数据元长度格式说明
    01-02发卡方代码2BCD
    03-04城市代码2BCD
    05-06行业代码2BCD
    07-08预留2HEX不同城市有不用的含义,视情况解析
    09-16应用序列号82:城市代码BCD
    1:卡主类型BCD
    1:卡子类型BCD
    4:发行流水HEX
    17卡主类型1BCD
    18卡子类型1BCD
    19-22发行日期4BCDYYYYMMDD
    23-28发行设备信息6BCD
    29-30应用版本号2BCD

  • 选择文件标识
    00a40000023f01
    00a4000002df01
    00a4000002df04
    00a4040009a00000000386980701
    ….
    根据不同的城市,所处的文件可能有所不同

  • 读取15文件
    00b0950000

    响应报文如下:

    字节数据元长度格式说明
    1-2发卡方代码2BCD
    3-4城市代码2BCD
    5-6行业代码2BCD
    7-8押金2BCD
    9应用类型标识(启用标志)1BCD00:未启用
    01启用
    10应用版本1BCD
    11-12互联互通标识(参与互通城市的标识)2BCD
    13-20应用序列号8BCD2:城市代码 BCD
    1:卡主类型 BCD
    1:卡子类型 BCD
    4:发行流水HEX
    21-24应用启动日期4BCDYYYYMMDD启用时更新
    25-28应用有效日期4BCDYYYYMMDD启用时更新
    29卡主类型1BCD
    30卡子类型1BCD
    31-34业务位图数据4HEX

  • 读取余额
    805c000204

    响应报文如下:

    字节数据元长度格式说明
    01-04余额4HEX

  • 电子钱包交易记录
    00b2xxc400(18号文件)
    00b2xxd400(1a号文件)

    根据不同城市不同的卡类型去读取

    xx标识读取的第几条记录
    01:第一条
    02:第二条
    ….
    0a:第10条

    响应报文如下:

    字节数据元长度格式说明
    01-02电子钱包消费、充值交易序号HEX2
    03-05透支限额HEX3
    06-09交易金额HEX4
    10-10交易类型BCD1
    11-16交易终端编号BCD6
    17-20交易日期BCD4YYYYMMDD
    21-23交易时间BCD3HHMMSS

  • 验证PIN

    命令解析:

    数据描述
    CLA00
    INS20
    P100
    P200
    LCPIN的长度
    PINPIN码
    LE

    0020000003123456
    回包9000即为成功

    务必要注意,一般卡只有3次尝试机会,如果3次pin验证都失败,会将卡片锁定
    部分城市的卡片需要在文件选中之后就验证pin,才能进行余额查询及交易记录查询


  • 初始化圈存交易

    命令解析:

    数据描述
    CLA80
    INS50
    P100
    P201:ED圈存
    02:EP圈存
    LC0B
    DATA见下表
    LE10

    DATA

    数据长度(字节)
    密钥索引1
    交易金额4
    终端机编号6

    805000020B0100000001112233445566

    响应报文:

    字节数据元长度格式说明
    01-04ED或EP余额4
    05-06ED或EP联机交易序号2
    07密钥版本号(DLK)1
    08算法标识(DLK)1
    09-12伪随机数(IC卡)4
    13-16MAC14

  • 充值确认
    命令格式:

    数据描述
    CLA80
    INS52
    P100
    P200
    LC0B
    DATA见下表
    LE04

    DATA:

    数据长度(字节)
    交易日期(主机)4
    交易时间(主机)3
    MAC24

    响应报文:

    字节数据元长度格式说明
    01-04TAC4

以上的各个指令,各种情况仅供参考,均需要根据不同的城市不同的卡进行调整,住建部的卡大的规范是一样的,但因为不同城市的cos不太一样会导致在操作上也会存在一些差异,需要酌情进行调整。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一行Java

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值