7816APDU四种情况
更新时间:2023-10-19 03:37:01 阅读量: 综合文库 文档下载
APDU
命令信息APDU有四种情况: 1. 无命令数据,无应答数据 2. 无命令数据,有应答数据 3. 有命令数据,无应答数据 4. 有命令数据,有应答数据
Lc :命令体内的数据长度 Data:要发送的数据
Le:期望中的应答APDU命令数据字段的字节数 Le=0 请求送回最大应答数据字节数 Licc:IC卡在响应接收到的情况2或情况4命令时卡内有效或剩余的数据(由IC卡决定)的实际长度
T=0时IC卡返回数据的方式:
当向IC卡发送的命令需要返回结果时即情况二,四,需要两种情况:
1. Le正确时:(Le 2. Le不正确时(Le=?00 (数据长度不是256)或Le>Licc):向卡发命令,卡先返回6CXX,此处XX代表实际应返回的数据的长度,此时再向卡重发该命令,其中Le置为XX,卡最后返回XX长度的数据。 理解机卡通讯的过程。 举例。 ******************************************************************************** >> IDF:80 32 00 00 74 80 30 71 11 02 B2 66 1B 50 84 FD..... ### 我有一个数据0x74 个字节, 属于安全报文,帮忙解一下。 < ### 共解出 0x25 个字节 (即37 字节) >> IDF: 00 C0 00 00 25 ### 那就拿来吧。 << ret:1, wReplyLen:39,reply: 02 B2 84 03 00 01 02 B4 04 00 00 00 00 83 16 9F 66... ### 给你。(之所以是39, 37字节后跟状态字90 00) >> smart card. wCommandLen:12, 00 B2 00 0E 07 00 01 14 00 02 02 B2 ### 我要读当前记录的某某位置。 << ret:1, wReplyLen:2,reply: 61 03 ### 3 个字节 >> smart card. wCommandLen:5, 00 C0 00 00 03 ### 拿来吧 << ret:1, wReplyLen:5,reply: 00 00 09 90 00 ### 给你 -------------------------------------------------------------------------------- >> smart card. wCommandLen:89, 80 32 00 00 54 81 30 51 01 02 B2 E4 32 50 84 FD ### 我有一个数据0x54 个字节, 属于安全报文,帮忙解一下。 << ret:1, wReplyLen:2,reply: 6B 27 ### 出错了, 我不认识 >> smart card. wCommandLen:12, 00 B2 00 0E 07 00 01 14 00 02 02 B2 ### 我要读当前记录的某某位置。 << ret:1, wReplyLen:2,reply: 61 03 ### 3 个字节 >> smart card. wCommandLen:5, 00 C0 00 00 03 ### 拿来吧 << ret:1, wReplyLen:5,reply: 00 00 09 90 00 ### 给你 智能卡的传输协议命令 文章出处:joywyc 发布时间: 2008/11/21 | 1042 次阅读 每天新产品 时刻新体验一站式电子数码采购中心专业PCB打样工厂,24小时加急出货服务器和存储系统的超新互连解决方案多样化的电子和电气元件 原则上,传输协议应构造的完全独立于应用层的数据和命令,这也是OSI层次模型的意图。遗憾地是,在理 论要求和真正的实践中存在着差异。这里有两条命令其目的仅在于允许传输机制可在应用层上使用,名为 GET RESPONSE(获取晌应)和ENVELOPE(包封)。这里还有另一条命令,MANAGE CHANNEL(通道管理),它 的功能不能由应用层单独使用,这三条命令的功能参见表1~表3。 表1 遵照ISO/IEC 7816-4的GET RESPONSE的功能 表2 遵照ISO/IEC 7816-4的ENVELOPE的功能 表3 遵照ISO/IEC 7816-4 MANAGE CHANNEL的功能 在T=0的协议中,不可能在一个命令一响应循环①中,既发送一个数据字组给智能卡雨同时又从智能卡接收一数据字组,因之,这个协议不支持情况4(Case 4)的命令,虽然它们被经常用到。于是,在T=0协议时被迫使用一个工作区,这样就工作在一种简单的方式中。情况4命令被送至卡,如果它是成功的,一特殊的回送代码被发送给终端。它通知终端,命令已产生了数据正等待着提取,终端于是就发送一条GET RESPONSE命令给智能卡并接收数据。这样就结束了对于第1条命令的命令-响应循环。只要除GET RESPONSE命令之外,没有别的命令被送给卡,则响应数据就可以多次被请求。 当命令在保密通信的电文中被完全加密时,T=0协议中有可能发生传输问题,它既需要不加密的指令字节同时还需要不加密的Le字节。ENVELOPE命令用嵌入一个完整的具有其头标和数据部分的APDU到ENVELOPE命令的APDU的数据中的方法避开了这个限制。这样可以不受任何限制的加密,并可用任何协议传送。同样的方法也用于智能卡所产生的响应之中,它也嵌入在ENVELOPE命令的APDU之中。 逻辑通道允许在单独一张卡中有多达四项应用可相互独立地寻址。在类别字节中用两位来使命令与应用相协调。在使用一新的逻辑通道之前,终端必须明显地经 MANAGECHANNEL命令通知智能卡,向卡表示需用另外的通道。通道号可由终端给出,或由卡在其响应中提供一个空闲的通道号。当被打开的新的逻辑通道是标准通道(0通道)时,卡的表现就好像在复位之后面对着新的通道一样,这就是说,MF是被选择了的,并且未曾达到安仝状态。当一个不是0通道的新逻辑通道被打开后,现行选择的DE和安全状态都被保留了下来。当一逻辑通道被关闭后,相关的文件选择和安全状态均被清除 1) Read Binary 功能:此命令用于读取二进制文件部分或全部的内容。 CLA 00 INS B0 P1 见参数说明 P2 从文件中读取的第一字节的偏移地址 Le 期望读出数据的长度 2) Update Binary 功能:此命令使用给定的数据来更新二进制文件部分或全部的内容。 CLA 00 INS D6 P1 见参数说明 P2 要修改的第一字节的偏移地址 Lc 后续数据域的长度 Data 修改用的数据 3) Read Record 功能:此命令用于读取记录文件中指定记录的内容。 CLA 00 INS B2 P1 记录号 P2 见参数说明 Le 期望读出数据的长度 4) Update record 功能:此命令使用给定的数据来更新记录文件中指定记录的内容。当所指定的文件非记录文件时,命令将终止。 CLA 00 INS DC P1 P1= 00 表示当前记录 P1≠ 00 表示指定的记录号 P2 见参数说明 Lc 后续数据域的长度
正在阅读:
7816APDU四种情况10-19
拆除安全技术交底 - 图文03-13
景区服务与管理课程标准201601-07
深度学习在故障诊断领域中的研究现状与挑战06-19
关于港口物流方面的论文05-10
房地产企业如何完善财务管理问题04-23
2013.10德育处工作总结10-26
光电式自行车速度里程表设计,毕业论文04-24
2015脑血管病指南03-21
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 7816APDU
- 情况
- 小学奥数5升6
- Rosslare门禁控制--Axtrax软件功能介绍1
- 舞蹈教师和助教个人简历模板
- 2010级建环传热学复习题(教师用)
- 瓦斯超限停产撤人制度
- 人教版九年级化学6.3金属矿物与冶炼教案
- 南开16秋学期《新闻学概论》在线作业
- 兖煤菏泽能化有限公司万福矿井风井井筒基岩段(-782m~-861m)探水预注浆及防奥灰突水加固施工方案
- 2017-2018学年浙江省诸暨市牌头中学高二下学期期中考试地理试题(Word版) - 图文
- 统计基础知识与统计实务
- 抗拔桩设计计算
- 设计说明书
- 《高分子成型加工》复习题-2018
- 数学:第二章《圆锥曲线与方程》学案(新人教A版选修1-1)
- 二极管三极管场效应管试题
- 战东广场站雨季排水施工方案20100510
- 温州大学化学专业《物理化学(下)》期末考试试卷G
- 开题报告范例
- 2012.01商务沟通与谈判试题及部分答案
- 智能仪器课后习题答案