zoukankan      html  css  js  c++  java
  • APDU命令与响应格式【转】

    本文转载自:http://map.im/apduintroduce

    APDU命令由命令头和命令体组成: CLA | INS | P1 | P2 | Lc | DATA | Le
    命令头: CLA | INS | P1 | P2 
    命令体: Lc | DATA | Le

    命令各字段含义

    CLA:命令报文的类别字节
    P1: 参数 1
    P2:参数 2
    Lc:Data的长度(含4字节mac)
    Data:在命令的数据字段中发送的字节串
    Le:在向命令响应的数据字段中期望的字节最大数

    Case1 | CLA INS P1 P2
    Case2 | CLA INS P1 P2 Le
    Case3 | CLA INS P1 P2 Lc Data
    Case4 | CLA INS P1 P2 Lc Data Le

    Case1

    这种情况时,命令中没有数据送到卡( Lc)中,也没有数据从卡中返回( Le)。
    不含安全报文的命令: CLA | INS | P1 | P2 
    含安全报文的命令: CLA | INS | P1 | P2 | Lc | MAC
    注: Lc = MAC 的长度, 4 字节。

    Case2

    这种情况时,命令中没有数据送到卡( Lc)中,有数据从卡中返回( Le)。
    不含安全报文的命令: CLA | INS | P1 | P2 | Le
    含安全报文的命令: CLA | INS | P1 | P2 | Lc | MAC | Le
    注: Lc = MAC 的长度, 4 字节。

    Case3

    这种情况时,命令中有数据送到卡( Lc)中,没有数据从卡中返回( Le)。
    不含安全报文的命令: CLA | INS | P1 | P2 | Lc | Data
    含安全报文的命令: CLA | INS | P1 | P2 | Lc | Data+MAC
    注: Lc = 数据的长度 + MAC 的长度( 4 字节)。

    Case4

    这种情况时,命令中既有数据送到卡( Lc)中,也有数据从卡中返回( Le)。
    不含安全报文的命令: CLA | INS | P1 | P2 | Lc | Data | Le
    含安全报文的命令: CLA | INS | P1 | P2 | Lc | Data+MAC | Le
    注: Lc = 数据的长度 + MAC 的长度( 4 字节)。

    格式1

    | Data | SW1 SW2 |

    格式2

    | SW1 SW2 |

    响应各字段含义

    Data:在响应的数据字段中收到的字节串
    SW1:状态字 1
    SW2:状态字 2

  • 相关阅读:
    bug终结者 团队作业第二周
    dropdownlist绑定数据
    virtual与vmware
    后台控制输出table(有数据库)
    label 绑定数据
    flash不能显示中文
    dataset 多表查询
    MVC3 Razor视图引擎基础语法 [转]
    CreateAlias()与setFetchMode() [转 李丽芬]
    Linq Like [转 韩天伟]
  • 原文地址:https://www.cnblogs.com/xdouby/p/8418040.html
Copyright © 2011-2022 走看看