原创 读取卡内余额(GET BALANCE)命令

2008-10-20 14:08 5638 6 6 分类: 软件与OS
 1、读取卡内余额(GET BALANCE)命令功能描述

    该命令用于读取卡内基本医疗保险个人账户(CIA)余额、年度个人自付累计金额(SPIP)和年度统筹基金支付累计金额(SPFP)。

    一般的,在执行本命令前需要先成功校验个人密码PIN。

  2、命令报文格式

    命令的APDU内容如下表所示:

       代码                 值

       CLA                 0xB0
       INS                 0x26
       P1                  0x00
       P2                  余额类别
       Lc                  不存在
       Data                不存在
       Le                  余额长度

    其中:
    * P2为0x01表示读取CIA的余额,这时返回数据长度Le值为0x04。
    * P2为0x02表示读取SPIP的余额,这时返回数据长度Le值为0x06。
    * P2为0x03表示读取SPFP的余额,这时返回数据长度Le值为0x06。

  3、响应报文数据

    如果命令执行成功,卡片返回数据域格式如下表所示:

            说明                 长度

    CIA余额或SPIP余额或SPFP余额    4
    支付年度(P2=0x02或0x03时)    2

  4、响应报文状态码

    此命令执行成功的状态码为0x9000。对于异常情况,IC卡可能回送的错误码见如下表所示:

        SW1      SW2         含义
       
       0x65     0x81        存储区写错误,导致卡锁定
       0x67     0x00        Lc错误
       0x69     0x01        命令不接收(卡片处于无效状态)
       0x69     0x82        安全条件不满足
       0x69     0x85        使用条件不满足
       0x6A     0x81        功能不被支持
       0x6A     0x86        参数P1、P2不正确
       0x6D     0x00        命令不存在
       0x6E     0x00        命令类型错
       0x93     0x03        应用被永久锁定




文章评论0条评论)

登录后参与讨论
我要评论
0
6
关闭 站长推荐上一条 /2 下一条