JavaCard——APDU的结构分析
2015-07-24 15:25
274 查看
APDU的全称为Application Protocol Data Unit,应用协议数据单元,用于IC智能卡的通讯协议。
命令APDU如上图所示,包含头和主体两个部分。头部包括CLA、INS、P1、P2。CLA和INS说明了应用的分类和指令,P1、P2作为指令的具体描述。APDU的主体长度是可变的,它可以作为命令的一部分从读卡器传送数据到卡片内,Lc说明了作为数据传送到卡片上的数据的长度,Data
Field是作为数据域。Le是期望卡片返回的指令的长度。
APDU的可以有以下结构:
1. CLA-INS-P1-P2 没有数据要发送至卡片,没有数据从卡片上返回。
2. CLA-INS-P1-P2-Le 没有数据要发送至卡片,有数据从卡片上返回。
3. CLA-INS-P1-P2-Lc-Data Field 有数据要发送至卡片,没有数据从卡片上返回。
4. CLA-INS-P1-P2-Lc-Data
Field-Le 有数据要发送至卡片,有数据从卡片上返回。
响应APDU如上图所示,包含主体和尾部两个部分。主体为Data
Field,主体可以为空,也可以包含数据域,数据域的长度由命令APDU的Le决定。尾部包括两个部分SW1、SW2,此为返回状态吗,一个字节用来说明错误类型,另一个字节 用来说明具体的命令状态或错误标识。
命令APDU如上图所示,包含头和主体两个部分。头部包括CLA、INS、P1、P2。CLA和INS说明了应用的分类和指令,P1、P2作为指令的具体描述。APDU的主体长度是可变的,它可以作为命令的一部分从读卡器传送数据到卡片内,Lc说明了作为数据传送到卡片上的数据的长度,Data
Field是作为数据域。Le是期望卡片返回的指令的长度。
APDU的可以有以下结构:
1. CLA-INS-P1-P2 没有数据要发送至卡片,没有数据从卡片上返回。
2. CLA-INS-P1-P2-Le 没有数据要发送至卡片,有数据从卡片上返回。
3. CLA-INS-P1-P2-Lc-Data Field 有数据要发送至卡片,没有数据从卡片上返回。
4. CLA-INS-P1-P2-Lc-Data
Field-Le 有数据要发送至卡片,有数据从卡片上返回。
响应APDU如上图所示,包含主体和尾部两个部分。主体为Data
Field,主体可以为空,也可以包含数据域,数据域的长度由命令APDU的Le决定。尾部包括两个部分SW1、SW2,此为返回状态吗,一个字节用来说明错误类型,另一个字节 用来说明具体的命令状态或错误标识。
相关文章推荐
- JCOP Shell常用指令
- APDU指令返回码及其代表含义
- javacard 临时对象 永久对象
- Java Card介绍
- OpenEMV Javacard applet test
- JavaCard free memory detect (how much memory left)
- javacard 开发环境的搭建
- Java智能卡学习(1)--开发环境配置
- Java基础--常用正则匹配符号(必背,必须背,死都要背)
- 精选30道Java笔试题解答
- spring mvc 源码小解
- Java Heap sapce 与 Java PermGen space
- Java IO流
- spring.net aop 讲解
- JAVA的类名与文件名必须一致
- java 1.5 并发流程控制CountDownLatch,CyclicBarrier,Semaphore
- 怎么解决eclipse报PermGen space异常的问题
- 【MySQL】Java对SQL时间类型的操作(获得当前、昨天、前年。。时间)
- jvm调优
- Jersery——RESTful Web Services in Java,RESTful服务,Jersey+Spring实现REST服务调用