ISO 7816-4: GET RESPONSE and ENVELOPE command
http://www.cardwerk.com/smartcards/smartcard_standard_ISO7816-4_7_transmission_interindustry_commands.aspx
7. Transmission-oriented Interindustry Commands
7.1 GET RESPONSE command
7.2 ENVELOPE command
It shall not be mandatory for all cards complying to this part of ISO/IEC 7816 to support all the described commands or all the options of a supported command.
When international interchange is required, a set of card system services and related commands and options shall be used as defined in clause 9.
Table 11 provides a summary of the commands defined in this part of ISO/IEC 7816.
The impact of secure messaging (see 5.6) on the message structure is not described in this clause.
The list of error and warning conditions given in each clause 7.X.5 is not exhaustive (see 5.4.5).
7.1 GET RESPONSE command
7.1.1 Definition and scope
7.1.2 Conditional usage and security
7.1.3 Command message
7.1.4 Reponse message (nominal case)
7.1.5 Status conditions
7.1.1 Definition and scope
The GET RESPONSE command is used to transmit from the card to the interface device APDU(s) (or part of the APDUs) which otherwise could not be transmitted by the available protocols.
7.1.2 Conditional usage and security
No condition.
7.1.3 Command message
Table 74 - GET RESPONSE command APDU
| CLA | As defined in 5.4.1 |
| INS | 'C0' |
| P1-P2 | '0000' (other values are RFU) |
| Lc field | Empty |
| Data field | Empty |
| Le field | Maximum length of data expected in response |
7.1.4 Response message (nominal case)
Table 75 - GET RESPONSE response APDU
| Data field | (Part of) APDU according to Le |
| SW1-SW2 | Status bytes |
7.1.5 Status conditions
The following specific normal processing may occur :
SW1='61' with SW2
- 'XX': Normal processing: more data bytes are available ('XX' indicates a number of extra data bytes still available by subsequent GET RESPONSE).
The following specific warning condition may occur :SW1='62' with SW2=
- '81': Part of returned data may be corrupted
The following specific error conditions may occur.
SW1='67' with SW2=
- '00': Wrong length (the Lc field is incorrect)
SW1='6A' with SW2=
- '86': Incorrect parameters P1-P2
SW1='6C' with SW2=
- 'XX': Wrong length (wrong Le field, 'XX' indicates the exact length)
7.2 ENVELOPE command
7.2.1 Definition and scope
7.2.2 Conditional usage and security
7.2.3 Command message
7.2.4 Reponse message (nominal case)
7.2.5 Status conditions
7.2.1 Definition and scope
The ENVELOPE command is used to transmit APDU(s) or part of APDUs or any data string which otherwise could not be transmitted by the available protocols.
NOTE - The usage of ENVELOPE for SM is shown in annex F .
7.2.2 Conditional usage and security
No condition.
7.2.3 Command message
Table 76 - ENVELOPE command APDU
| CLA | As defined in 5.4.1 |
| INS | 'C2' |
| P1-P2 | '0000' (other values are RFU) |
| Lc field | Length of the subsequent data field |
| Data field | (Part of) APDU |
| Le field | Empty of length of expected data |
When the ENVELOPE command is used under T=0 for transmitting data strings, an empty data field in an ENVELOPE command APDU means end of data string.
7.1.4 Response message (nominal case)
Table 77 - ENVELOPE response APDU
| Data field | Empty or (part of) APDU according to Le |
| SW1-SW2 | Status bytes |
NOTE - The status bytes belong to the ENVELOPE command. Status bytes of a command transmitted in the data field of the ENVELOPE command may be found in the data field of the ENVELOPE response.
7.2.5 Status conditions
The following specific error conditions may occur.
SW1='67' with SW2=
- '00': Wrong length (the Lc field is incorrect)
ISO 7816-4: GET RESPONSE and ENVELOPE command的更多相关文章
- ISO 7816-4: Interindustry Commands for Interchange
5. Basic Organizations 5.1 Data structures5.2 Security architecture of the card 5.3 APDU message str ...
- ISO 7810 协议小结
ISO 7816规定了Smart Card的传输协议分为 T=0 异步半双工字符传输协议 T=1 异步半双工块传输协议 T=0命令介绍 命令总是由接口设备启动,他以一个5字节的报头通知卡要做什么,然后 ...
- ISO 7816-4: Annex A: Transportation of APDU messages by T=0
http://www.cardwerk.com/smartcards/smartcard_standard_ISO7816-4_annex-a.aspx Annex A: Transportation ...
- request和response简介
Tomcat收到客户端的http请求,会针对每一次请求,分别创建一个代表请求的request对象.和代表响应的response对象. 既然request对象代表http请求,那么我们获取浏览器提交过来 ...
- 在Android中访问内置SE和基于SE的卡模拟(一)
2013-10-10 编写 前言 在“十问Android NFC手机上的卡模拟”文中仅仅简单的介绍了一下相关的概念,如果需要了解基于SE的卡模拟的更多细节,也就是,究竟在Android的NFC手机上, ...
- 智能卡 APTU命令
一条命令APDU含有一个头标和一个本体.本体可有不同长度,或者在相关数据字段为空时,整个可以不存 在. 头标由四个数据元组成,它们是类CLA(ClAss)字节,命令INS(INStructic,n)字 ...
- 基于Codeigniter框架实现的APNS批量推送—叮咚,查水表
最近兼职公司已经众筹成功的无线门铃的消息推送出现了问题,导致有些用户接收不到推送的消息,真是吓死宝宝了,毕竟自己一手包办的后台服务,影响公司信誉是多么的尴尬,容我简单介绍一下我们的需求:公司开发的是一 ...
- 使用WCF的Trace与Message Log功能
原创地址:http://www.cnblogs.com/jfzhu/p/4030008.html 转载请注明出处 前面介绍过如何创建一个WCF Service http://www.cnblo ...
- C#邮件接收系统核心代码(接收POP3邮件IMAP邮件)
/* * Created by SharpDevelop. * User: Administrator * Date: 2013/11/18 * Time: 20:55 * * To change t ...
随机推荐
- Python人工智能之图片识别,Python3一行代码实现图片文字识别
1.Python人工智能之图片识别,Python3一行代码实现图片文字识别 2.tesseract-ocr安装包和中文语言包 注意:
- C语言清空输入缓冲区的N种方法对比【转】
转自:http://www.cnblogs.com/codingmylife/archive/2010/04/18/1714954.html C语言中有几个基本输入函数: //获取字符系列 int f ...
- HttpClient使用之下载远程服务器中的文件(注意目录遍历漏洞)
参考文献: http://bbs.csdn.net/topics/390952011 http://blog.csdn.net/ljj_9/article/details/53306468 1.下载地 ...
- 数据库索引和SQL语句使用经验
1.如果检索数据量超过30%的表中记录数,使用索引将没有显著的效率提高 2.在特定情况下,使用索引也许会比全表扫描慢,但这是同一个数量级上的差距:而通常情况下,使用索引比全表扫描要快几倍乃至几千倍! ...
- react-native 报错
报错信息: java.lang.RuntimeException: Unable to load script from assets 'index.android.bundle'. Make sur ...
- 11 Go 1.11 Release Notes
Go 1.11 Release Notes Introduction to Go 1.11 Changes to the language Ports WebAssembly RISC-V GOARC ...
- Python外部脚本调用Django项目Model表
在实际生产中有时候会出现这种情况,原本运行了一个Django项目,后面又需要一些外部脚本进行辅助,而这些脚本又不希望集成到项目当中,但是又需要用到Django项目的Model,这时候是无法像在项目当中 ...
- 2018-2019-2 网络对抗技术 20165301 Exp3 免杀原理与实践
2018-2019-2 网络对抗技术 20165301 Exp3 免杀原理与实践 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,自己利用 ...
- SQL语句导致性能问题
前阵子,突然收到服务器的报警信息,于是上服务器找问题,我擦,top看到mysql占的%cpu高得把我吓尿了 从以上的信息看,相信大家已经可以定位到底是那个程序导致服务器CPU负载过高了,但我们要做的是 ...
- Delphi中使用ActiveX的一些心得
使用方法分为两种:一.直接把可视化的ActiveX控件放到程序中:二.运行时根据需要实时建立. 如果是直接使用,则应用程序在初始化的过程中会自动寻找.创建所需的ActiveX控件,如果控件没有注册, ...