非接触IC卡片APDU指令系统介绍解析.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
APDU指令介绍APDU指令格式根据7816-4规范,从终端发出的命令和卡片响应的信息必须遵从以下4种格式。情形1:命令 :CLAINSP1P200响应 :SW1SW2情形2:命令:CLAINSP1P2Le响应:Le字节的DATASW1SW2情形3:命令:CLAINSP1P2LcDATA响应 :SW1SW2情形4:命令:CLAINSP1P2LcDATALe响应:Le字节的DATASW1SW2APDU命令格式命令由4字节的命令头和命令体组成,见图1。命令头(必备体)命令体(可选体)CLAINSP1P2LcDATALe图1 APDU命令格式命令头域命令头定义报文的内容如下表所示:表1命令头域代码长度(byte)值(Hex)描述CLA1X0不带安全报文的命令X4带安全报文的命令INS1XX指令代码P11XX参数1P21XX参数2命令体命令体中各项是可选的。Lc命令数据域中DATA的长度,该长度不可超过255字节。Data命令和响应中的数据域。Le响应数据域中期望数据的长度。Le=00,表示需要最大字节数,该长度不可超过255字节。APDU响应数据格式APDU命令的应答由数据和状态字组成,见下图2。数据状态字响应中接收的数据位串SW1SW2图2 APDU响应数据格式返回数据返回数据域是可选项。返回状态字(SW1SW2)SW1 SW2是卡片执行命令的返回代码,任何命令的返回信息都至少由一个状态字组成。状态字SW1SW2意义状态字说明了命令处理的情况,即命令是否被正确执行,如果未被正确执行,原因是什么。状态字由2部分组成:SW1(status word1):表示命令处理状态;SW2(status word2):表示命令处理限定。表2 状态字SW1-SW2SW1SW2Description9000正确执行61XX正确执行XX表示响应数据长度。可用Get Response命令取回响应数据。(仅用于T=0)6281回送的数据可能错误6283选择文件无效,文件或密钥校验错误63CXX表示还可再试次数6400状态标志未改变6581写EEPROM不成功6700错误的长度6900CLA与线路保护要求不匹配6901无效的状态6981命令与文件结构不相容6982不满足安全状态6983密钥被锁死6985使用条件不满足6987无安全报文6988安全报文数据项不正确6A80数据域参数错误6A81功能不支持或卡中无MF或卡片已锁定6A82文件未找到6A83记录未找到6A84文件无足够空间6A86参数P1 P2错误6B00在达到Le/Lc字节之前文件结束,偏移量错误6CXXLe错误6E00无效的CLA6F00数据无效9302MAC错误9303应用已被锁定9401金额不足9403密钥未找到9406所需的MAC不可用注意:当SW1的高半字节为‘9’,且低半字节不为‘0’时,其含义依赖于相关应用。当SW1的高半字节为‘6’,且低半字节不为‘0’时,其含义与应用无关。APDU指令常见APDU指令介绍以下介绍的指令均为交通行业常见指令,涵盖ED/EP应用和电子现金应用,针对非接触卡片。通用指令────SELECT(选择)────READ BINARY(读二进制)────READ RECORD(读记录)────UPDATE BINARY(修改二进制)────UPDATE RECORD(修改记录)────GET RESPONSE(取响应)────GET CHALLENGE(产生随机数)────EXTERNAL AUTHENTICATION(外部认证)────INTERNAL AUTHENTICATION(内部认证)────VERIFY(校验)────PIN CHANGE/UNBLOCK(个人密码修改/解锁)────APPLICATION BLOCK(应用锁定)────APPLICATION UNBLOCK(应用解锁)────CARD BLOCK(卡片锁定)电子钱包\电子存折一般交易相关指令────GET BALANCE(读余额)────GET TRANSACTION PROVE(取交易认证)────CHANGE PIN(修改个人密码)────INITIALIZE FOR LOAD(圈存初始化)────CREDIT FOR LOAD(圈存)────INITIALIZE FOR PURCHASE(消费初始化)────INITIALIZE FOR CASH WITHDRAW(取现初始化)────DEBIT FOR PURCHASE/CASH WITHDRAW(消费/取现)────INITIALIZE FOR UNLOAD(圈提初始化,仅用于电子存折)────DEBIT FOR UNLOAD(圈提,仅用于电子存折)────INITIALIZE FOR UPDATE(修改透支限额初始化,仅

文档评论(0)

xiaofei2001129 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档