7816的报文结构APDU

命令APDU 包括头和主体(这可以在上面的图中看到)。头包括CLA,INS,P1 和P2 域。同T0 协议一样,CLA 和INS 说明了应用的分类和指令。P1 和P2 用来详细说明具体指令,并由每一条[CLA,INS]指令给出具体定义。APDU 的主体的长度可以改变,它可以作为命令的一部分传送数据到卡的APDU处理器上,也可以用于传达一个从卡到阅读器的响应。Lc 域说明了作为指令一部分的传送到卡上的字节数。也就是数据域的长度。数据域包括一定要传送到卡上的信息。该信息允许APDU 处理器执行APDU 中说明的命令。Le 域以响应APDU 形式说明了返回到阅读器的字节数量。
APDU 的主体以四种形式存在:
情况1:没有数据发送或从卡上接收,所以APDU 只包括头。
情况2:没有数据传送到卡上,但有数据从卡上返回。APDU 的主体上只包含非空Le 域。
情况3:数据传送到卡上,但没有数据从卡上返回。APDU 的主体包括Lc 和数据域。
情况4:数据传送到卡上,同时有数据作为命令的结果从卡上返回。APDU 的主体包括Lc,数据和Le域。

响应APDU 的结构比命令APDU 的结构简单的多。它包括主体和尾部。主体可以是null 也可以包括数据域--------决定于具体命令。数据域的长度由相应的命令APDU 的Le 域决定。尾部包括两个状态信息域,分别为SW1 和SW2。这些域返回状态码,一个字节用来说明错误种类。另一个字节用来说明具体的命令状态或错误标志。
各个字段的详细含义可参见7816协议。
7816的报文结构APDU的更多相关文章
- 7816的报文结构——APDU
命令APDU 包括头和主体(这可以在上面的图中看到).头包括CLA,INS,P1 和P2 域.同T0 协议一样,CLA 和INS 说明了应用的分类和指令.P1 和P2 用来详细说明具体指令,并由每一条 ...
- HTTP协议报文结构及示例
HTTP基本架构 下面我们用一张简单的流程图来展示HTTP协议基本架构,以便大家先有个基本的了解. 9.png Web Client可以是浏览器.搜索引擎.机器人等等一切基于HTTP协议发起http请 ...
- modbus tcp数据报文结构
modbus tcp数据报文结构 请求:00 00 00 00 00 06 09 03 00 00 00 01 响应:00 00 00 00 00 05 09 03 02 12 34 一次modbus ...
- 《图解HTTP》读书笔记(五:HTTP报文结构)
用于 HTTP 协议交互的信息被称为 HTTP 报文. 请求端(客户端) 的HTTP 报文叫做请求报文, 响应端(服务器端) 的叫做响应报文.HTTP 报文本身是由多行(用 CR+LF 作换行符) 数 ...
- HTTP 协议基础概念和报文结构
基础概念 1.WWW(World Wide Web,万维网)构建技术有3项: (1)把SGML(Standard Generalized Markup Language,标准通用标记语言)作为页面的文 ...
- HTTP 请求/响应报文结构
请求报文和响应报文都是由以下4部分组成: 1.请求行/响应行 2.请求头/响应头 3.空行 4.消息主体(请求体/响应体) 请求报文结构 请求行 格式为:Method Request-URI HTTP ...
- http的报文结构和状态码的含义
HTTP响应报文解剖 响应报文结构 HTTP的响应报文也由三部分组成(响应行+响应头+响应体): 以下是一个实际的HTTP响应报文: ①报文协议及版本: ②状态码及状态描述: ③响应报文头,也是由多个 ...
- HTTP协议图--HTTP 协议报文结构
1.HTTP 报文 用于 HTTP 协议交互的信息被称为 HTTP 报文.请求端(客户端)的 HTTP 报文叫做请求报文:响应端(服务器端)的叫做响应报文.HTTP 报文本身是由多行(用 CR[car ...
- 网络应用(6):http报文结构与curl的使用
http是一个协议,协议就是约定.规定,先不管为什么这么约定有什么高深的东西,为了解决具体问题,我们先要能使用协议,理解协议中对我们有用的那部分数据,是的,我们不是研究生,更不是纯研究,所有的研究都要 ...
随机推荐
- EntityFramework 使用Linq处理内连接(inner join)、外链接(left/right outer join)、多表查询
场景:在实际的项目中使用EntityFramework都会遇到使用Ef处理连接查询的问题,这里做一些小例子如何通过Linq语法处理内连接(inner join).外连接(left/right oute ...
- Android 网络框架---Volley
/** * Volley 可以同时请求多个,允许高并发 * 特性: * 1.JSON.图片等的异步下载 * 2.网络请求的排序(Scheduling) * 3.网络请求的优先级处理 * 4.缓存 * ...
- Android URI简单介绍
就Android平台而言,URI主要分三个部分:scheme, authority and path.当中authority又分为host和port.格式例如以下: scheme://host:por ...
- strus2与spring3 mvc的差别
比较了一下strus2与spring3 mvc的差别: spring3 mvc是方法级别的拦截,拦截到方法后根据参数上的注解,把request数据注入进去,在spring3mvc中,一个方法对应一个r ...
- [AWS] Install the AWS cli
On Windows, just download the installer and install it. Configure: aws configure In your aws console ...
- Qt 学习之路:存储容器
存储容器(containers)有时候也被称为集合(collections),是能够在内存中存储其它特定类型的对象,通常是一些常用的数据结构,一般是通用模板类的形式.C++ 提供了一套完整的解决方案, ...
- is not in the sudoers file.This incident will be reported
解决方法如下: 1>.进入超级用户模式.也就是输入"su -",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式. 2>.添加文件的写权限.也就是输入命令&q ...
- java多态 -- 猫狗案列
我们用猫狗案例来表明在java中使用多态的好处: class Animal{ public Animal(){} public void eat(){ System.out.println(" ...
- Python | 基础系列 · Python为什么没有switch/case语句?
与我之前使用的所有语言都不同,Python没有switch/case语句.为了达到这种分支语句的效果,一般方法是使用字典映射: def numbers_to_strings(argument): sw ...
- python环境准备
一.环境准备. 1.安装python3.5.2(勾选环境变量),python2.7.12 2.设置环境变量 (要求命令行输入python,进入python2命令行,打python3时,进入python ...