Fetch the repository succeeded.
===============主要章节==============
第3部分
第5部分
第6部分
第7部分
第16部分
===============第3部分=================
1)终端和IC卡之间的物理传输
1、数据通过I/O在终端和IC卡之间以异步半双工方式进行双向传输
2、数据在I/O上以如下所述的字符帧方式传输。采用的约定由IC卡在复位应答时发送的初始字符(TS)确定
3、字符帧:适用于IC卡与终端之间所有的报文交换
@ 代表传输的一个字符
@ 组成10个连续位:1个低电平状态的起始位 + 数据字节的8个数据位 + 1个奇偶校验位
@ 字符中的逻辑1的数目必须是偶数,8个数据位和校验位自身均参加校验计算,但起始位不参加校验计算
4、在终端传输层(TTL),数据总是采用高字节先送方式(m.s.)在I/O上传输
5、一个字节内部二进制位的传输顺序(即低位先送还是高位先送)由复位应答回送的TS字符确定
2)IC卡在传输数据前的复位应答回送字符
1、T=0协议,字符传输协议
字符 值 备注
TS 3B/3F 指明正向或反向约定
T0 6x TB1和TC1存在,x表示历史字节的存在个数
TB1 00 不使用VPP(编程电压)
TC1 00~FF 指明所需额外保护时间的数量
2、T=1协议,块传输协议
字符 值 备注
TS 3B/3F 指明正向或反向约定
T0 Ex TB1和TD1存在,x表示历史字节的存在个数
TB1 00 不使用VPP(编程电压)
TC1 00~FF 指明所需额外保护时间的数量
TD1 81 TA2到TC2不存在,TD2存在;使用T=1协议
TD2 31 TA3和TB3存在,TC3和TD3不存在;使用T=1协议
TA3 10~FE 返回IFSI(信息域大小整数),表示IC卡信息域大小的初始值且具有16~254字节的IFSC(IC卡信息域大小)
TB3 高半字节0~4 BWI=0到4,块等待时间整数
低半字节0~5 CWI=0到5,字符等待时间整数
TCK 校验字符
3、字符解释
TS 初始字符 3B-正向约定,高电平代表逻辑1;3F-反向约定,低电平代表逻辑1
T0 格式字符 高半字节(b8~b5)表示后续TD1~TA1是否存在
TA1 传送FI和DI的值。高半字节FI确定F的值;低半字节DI确定D的值
TB1 传送PI1和II的值。PI1定义在b1~b5;II定义在b6和b7;b8不使用,置为逻辑0
TC1 传送N值,用于表示增加到最小持续时间的额外保护时间
TD1 表示是否还要发送更多的接口字节以及后续传输所使用的协议类型。高半字节(b5~b8)用于表示字符TA2到TD2是否存在;低半字节用于表示后续信息交换所使用的协议类型
TA2 表示IC卡是以特定模式还是以协商模式工作。b8表明IC卡是否有能力改变它的操作模式;b7~b6预留,置为00;b5表明在复位应答后是按接口字节提供的传输参数进行,还是按终端默认的传输参数进行;b4~b1表明特定模式下所采用的协议
TB2 传送PI2,PI2用于确定IC卡所需的编程电压P的值。
TC2 专用于T=0协议,传输工作等待时间整数(WI),WI用来确定由IC卡发送的任意一个字符起始位下降沿与IC卡或终端发送的前一个字符起始位下降沿之间的最大时间间隔
TD2 表示是否还要发送更多的接口字节以及后续传输所使用的协议类型。高半字节(b5~b8)用于表示字符TA3到TD3是否存在;低半字节用于表示后续信息交换所使用的协议类型
TA3 TA3(如果TD2中指明T=1)回送IC卡的信息域大小整数(IFSI),IFSI决定了IFSC,并指明了卡片可接收的块信息域的最大长度(INF)。TA3以字节形式表示IFSC的长度,其取值范围从01到FE。00和FF预留(RFU)
TB3 TB3(如果TD2中指明T=1)表明了用来计算CWT和BWT的CWI和BWI值,TB3由两部分组成。低半字节(b1-b4)用于表明CWI值,而高半字节(b5-b8)用于表明BWI值
TC3 TC3(如果TD2中指明T=1)指明了所用的块错误校验码的类型,所用代码类型用b1位表示,b2到b8位未使用
TCK TCK具有一个检验复位应答期间所发送数据完整性的值。TCK的值应使从T0到包括TCK在内的所有字节进行异或运算的结果为零
3)终端和IC卡间的传输协议
1、协议层次
----> 物理层:定义了位交换,是两个协议的公共部分
----> 数据链路层:
@ 字符帧,定义了字符交换,是两个协议的公共部分
@ T=0,定义了 T=0 时的字符交换
@ 对 T=0 的检错与纠错
@ T=1,定义了 T=1 时的块交换
@ 对 T=1 的检错与纠错
----> 传输层:定义了针对每个协议的面向应用的报文传输
----> 应用层:根据相同的应用协议,定义报文交换的内容
2、物理层
T=0与T=1协议均使用了物理层和前面介绍的字符帧
3、数据链路层
#~# 命令头:命令均由终端应用层(TAL)发出,它用5个字节组成的命令头通过TTL向IC卡发送指令。
命令头由5个连续字节CLA、INS、P1、P2和P3组成
----> CLA : 命令类别
----> INS : 指令代码
----> P1和P2 :附加参数
----> P3 : 根据不同的 INS,P3 指明发送给 IC 卡的命令中数据的字节长度或期待 IC 卡响应的最大数据长度。
对于T=0,这些字节和通过命令发送的数据一起构成命令传输协议数据单元(C-TPDU)
#~# T=1块传输协议
----> 块结构如下组成
| 头域(必备) | 信息域(可选) | 尾域(必备) |
| 节点地址(NAD) | 协议控制字节(PCB) | 长度(LEN) | APDU或控制信息(INF) | 错误校验码(EDC) |
| 1字节 | 1字节 | 1字节 | 0~254字节 | 1字节 |
----> 结构说明
NAD :b1~b3表明块的源节点地址(SAD);b5~b7表明块的目的地址(DAD);b4和b8不用,设为0
PCB :分三种类型
@ I块(用于传送APDU):b8置为0;b7表示序列号;b6表示链接(更多的数据,0=最后一块,1=后面还有后续块);b1~b5预留(RFU)
@ R块(用于传送确认的接收准备块):b8置为1;b6~b7置为0;b5表示序列号;b1~b4(0=无错,1=EDC或校验出错,2=其他错误,其他值预留)
@ S块(用于交换控制信息的管理块):b8~b7置为1;b6(0=请求,1=应答);b5~b1(0=再同步请求,1=信息域大小请求,2=放弃请求,3=BWT 扩展请求,4=Vpp 错误,其他值预留)
LEN :指明块的INF长度
INF :出现在I块中时,传送的是应用数据;出现在S块中时,传送的是控制信息;R块不包含INF。
EDC :包含所传送块的EDC,奇偶校验出错和/或EDC出错时,块无效。JR/T 0025仅支持LRC作为EDC。
LRC长度为一个字节,其值由以NAD开始到INF(如果存在的话)的全部字节作异或运算得到。
注:TCi(i>2)指明要使用的错误校验码类型,参见字符解释。
----> C-APDU包含在I块的INF域中,从TTL传送到IC卡。如果一个C-APDU因太长而不能放在一个数据块中时,可通过如下的方法用几个链接块传送
4、终端传输层
#~# T=0协议下APDU的传送
----> 情况1:C-APDU头映射到T=0命令头的前四个字节,T=0命令头的P3置为00
----> 情况2:C-APDU头映射到T=0命令头的前四个字节,长度字节Le从C-APDU的条件体映射到T=0命令头的P3。
在应用选择中发出的读记录(READ RECORED)命令和按JR/T 0025发出的所有情况2的命令的Le都必须为00
----> 情况3:C-APDU头映射到T=0命令头的前四个字节,C-APDU条件体的长度字节Lc映射到T=0命令头的P3
----> 情况4:C-APDU头映射到T=0命令头的前四个字节,C-APDU条件体的长度字节Lc映射到T=0命令头的P3。
应用选择中发出的选择(SELECT)命令和JR/T 0025规定的所有情况4命令的Le都必须为00
#~# T=1协议下APDU的传送
C-APDU从TAL传送到TTL,TTL将其不加变化地映射到C-APDU的一个I块的INF域中,然后把这个I块发送到IC卡。
5、应用层
#~# 应用协议由TAL和TTL之间一组有序的数据交换组成。
#~# C-APDU结构:包含一个必备的连续四字节的命令头,用CLA、INS、P1和P2表示,同时包括一个可变长度的条件体
情况 C-APDU的结构 命令数据 响应数据
1 CLA INS P1 P2 无 无
2 CLA INS P1 P2 Lc 无 有
3 CLA INS P1 P2 Lc Data 有 无
4 CLA INS P1 P2 Lc Data Le 有 有
----> CLA : 指令类型,除‘FF’外可赋任何值
----> INS : 指令类型的指令码。只有在最低位为‘0’,且高半字节既不是‘6’也不是‘9’时,INS才有效。
----> P1/P2 : 完成INS的参数字节。
----> 条件体包括如下字节串:
Lc : 一个字节,定义了在C-APDU中发送数据的字节数。
Data ; 待发送的数据,字节数由Lc定义。
Le :一个字节,指出R-APDU中期望返回的最大字节数。如果Le=0,表明期望返回最大长度为256.
#~# R-APDU结构:一串字节,这一串字节由一个条件体以及必备的两字节状态字SW1 SW2组成。
条件体是一串数据字节,其最大长度在C-APDU中的Le中定义。
4)文件
IC卡中每个应用都包括一系列信息项(通常以文件形式存在),终端成功地完成应用选择后就可以访问这些信息。
一个信息项称为一个数据元,数据元是信息的最小单位,它是可以用名称、逻辑内容描述、格式及代码来标识的最小信息单元。
从终端的角度来看,IC卡上的文件是一种树形结构。树的每一个分支是一个应用定义文件(ADF)或一个目录定义文件(DDF)。一个ADF是一个或者多个应用基本文件(AEF)的入口点。一个ADF及其相关的数据文件处于树的同一分支上。一个DDF是其他ADF或者DDF的入口点。
从终端的角度看,ADF是一个只包含封装在其文件控制信息(FCI)中的数据对象的文件
5)应用选择
应用选择是触点激活/卡片复位之后、在第一个应用功能之前执行的处理过程
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。