• 指令回复错误描述
  • 常用指令作用及解析


指令回复错误描述

  • 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

发卡方代码

2

BCD

03-04

城市代码

2

BCD

05-06

行业代码

2

BCD

07-08

预留

2

HEX

不同城市有不用的含义,视情况解析

09-16

应用序列号

8

2:城市代码BCD

1:卡主类型BCD

1:卡子类型BCD

4:发行流水HEX

17

卡主类型

1

BCD

18

卡子类型

1

BCD

19-22

发行日期

4

BCD

YYYYMMDD

23-28

发行设备信息

6

BCD

29-30

应用版本号

2

BCD


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

  • 读取15文件
    00b0950000
    响应报文如下:

字节

数据元

长度

格式

说明

1-2

发卡方代码

2

BCD

3-4

城市代码

2

BCD

5-6

行业代码

2

BCD

7-8

押金

2

BCD

9

应用类型标识(启用标志)

1

BCD

00:未启用

01

启用

10

应用版本

1

BCD

11-12

互联互通标识(参与互通城市的标识)

2

BCD

13-20

应用序列号

8

BCD

2:城市代码 BCD

1:卡主类型 BCD

1:卡子类型 BCD

4:发行流水HEX

21-24

应用启动日期

4

BCD

YYYYMMDD启用时更新

25-28

应用有效日期

4

BCD

YYYYMMDD启用时更新

29

卡主类型

1

BCD

30

卡子类型

1

BCD

31-34

业务位图数据

4

HEX


  • 读取余额
    805c000204
    响应报文如下:

字节

数据元

长度

格式

说明

01-04

余额

4

HEX


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

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

  • xx标识读取的第几条记录
    01:第一条
    02:第二条
    ….
    0a:第10条
    响应报文如下:

字节

数据元

长度

格式

说明

01-02

电子钱包消费、充值交易序号

HEX

2

03-05

透支限额

HEX

3

06-09

交易金额

HEX

4

10-10

交易类型

BCD

1

11-16

交易终端编号

BCD

6

17-20

交易日期

BCD

4

YYYYMMDD

21-23

交易时间

BCD

3

HHMMSS


  • 验证PIN
    命令解析:

数据

描述

CLA

00

INS

20

P1

00

P2

00

LC

PIN的长度

PIN

PIN码

LE


0020000003123456
回包9000即为成功

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


  • 初始化圈存交易
    命令解析:

数据

描述

CLA

80

INS

50

P1

00

P2

01:ED圈存

02:EP圈存

LC

0B

DATA

见下表

LE

10

DATA

数据

长度(字节)

密钥索引

1

交易金额

4

终端机编号

6

805000020B0100000001112233445566

响应报文:

字节

数据元

长度

格式

说明

01-04

ED或EP余额

4

05-06

ED或EP联机交易序号

2

07

密钥版本号(DLK)

1

08

算法标识(DLK)

1

09-12伪随机数(IC卡)

4

13-16

MAC1

4


  • 充值确认
    命令格式:

数据

描述

CLA

80

INS

52

P1

00

P2

00

LC

0B

DATA

见下表

LE

04

DATA:

数据

长度(字节)

交易日期(主机)

4

交易时间(主机)

3

MAC2

4

响应报文:

字节

数据元

长度

格式

说明

01-04

TAC

4

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