第一部分:卡的电气特性
一、卡的触点分配
IC遵循卡触点的分配ISO7816-2的规定,如下所示:
C1 |
电源电压(Vcc) |
C5 |
地(GND) |
C2 |
复位信号(RST) |
C6 |
不使用 |
C3 |
时钟信号(CLK) |
C7 |
输入/输出(I/0) |
二、卡的电气特性
1、测量约定
所有的测量都应该是IC卡及接口设备(IFD)它们之间的的触点上进行GND为参考。环境温度范围为0℃~50℃。
所有流入IC卡的电流为正值。
2、输入/输出(I/O)
该接触点作为输入端(接收模式)从终端接收数据或作为输出端(传输模式)传输传输到终端。IC如果发生这种情况,卡和终端不能同时处于传输模式,I/O接触状态(电平)不确定,但不应损坏IC卡。
(1)接收模式
在接收模式下,当电源电压(VCC)在第6在规定的范围内,IC卡应能够正确解释终端的信号,其特征如表所示2所示:
符号 |
最小值 |
最大值 |
单位 |
VIH |
0.7×Vcc |
Vcc |
V |
VIL |
0 |
0.8 |
V |
tR和tF |
---- |
1.0 |
μs |
表2在接收模式下I/O的电气特性
(2)传输模式
在传输模式下,IC卡将数据传输到终端,其特性如表所示3所示:
符号 |
条件 |
最小值 |
最大值 |
单 位 |
VoH |
-20μA<IoH<0,Vcc=min. |
0.7×Vcc |
Vcc |
V |
VoL |
0 <IOL<1mA,Vcc=min. |
0 |
0.4 |
V |
tR 和 tF |
CIN(terminal)=30pF max. |
----- |
1.0 |
μs |
表3 传输模式下的I/O的电气特性
除向终端传送数据外,IC卡应将其I/O信号驱动模式设置为接收模式,且不要求I/O具备任何电流源性能。
3、 编程电压(Vpp)
IC卡不需要编程电压Vpp。
4、 时钟(CLK)
当VCC在第6中所规定的范围内时,IC卡将在具有表4所示特性的时钟信号作用下正常工作。
符 号 |
条 件 |
最小值 |
最大值 |
单 位 |
VIH |
|
Vcc-0.7 |
Vcc |
V |
VIL |
|
0 |
0.5 |
V |
tR 和 tF |
Vcc=min. To max. |
----- |
9%的时钟周期 |
μs |
表4 CLK的电气特性
当时钟占空因数处于其稳定运行周期的44%~56%之间时,IC卡应能正常工作。
当时钟频率处于1MHZ到5MHZ之间时,IC卡应能正常工作。
注:在卡片操作过程中,频率值将由终端维持在复位应答期间所用频率的±10%之内。
5、 复位(RST)
当VCC在第6中所规定的范围内时,IC卡应能正确的解释具有表5所示电气特性的复位信号。
符 号 |
条 件 |
最小值 |
最大值 |
单 位 |
VIH |
|
Vcc-0.7 |
Vcc |
V |
VIL |
|
0 |
0.6 |
V |
tR 和 tF |
Vcc=min. To max. |
----- |
1.0 |
μs |
表5 RST的电气特性
IC卡将利用激活的低复位信号,采用异步方式进行复位应答。
6、 电源电压(VCC)
在电源电压VCC为5V±0.5V直流电的情况下,IC卡应能正常工作。此时,时钟频率应在
第4中所规定的范围内。最大电流为50mA。
7、 触点电阻
在整个生命周期内,IC卡触点电阻(在清洁的IC卡和清洁的标准接口设备触点间测量时)应小于500mΩ。
三、终端的电气特性
1、 测量约定
同卡片。
2、 输入/输出(I/O)
该触点作为输出端(传输模式)向IC卡传送数据,作为输入端(接收模式)从IC卡接收数据。在操作过程中,终端和IC卡不能同时处于传输模式,若万一发生此情况,I/O触点的状态(电平)将处于不确定状态,但不应损坏终端。
当终端和IC卡都处于接收模式时,触点将处于高电平状态。为了达到这种状态,终端应在VCC上或其它装置上连接一个上拉电阻。除非VCC加电并稳定在第6中允许的范围内,终端不应将I/O置于高电平状态。见卡操作过程中有关触点激活的内容。
在任何情况下,均应将流入或流出I/O触点的电流限定在±5mA以内。
(1) 传输模式
在传输模式下,终端向IC卡传送数据,其特性如表7所示:
符 号 |
条 件 |
最小值 |
最大值 |
单 位 |
VoH |
-20μA<IoH<20μA,Vcc=min. |
0.8×Vcc |
Vcc |
V |
VoL |
- 1mA <IOL<0,Vcc=min. |
0 |
0.4 |
V |
tR 和 tF |
CIN(ICC)=30pF max. |
----- |
1.0 |
Μs |
正负脉冲峰值 |
|
-0.25 |
Vcc+0.25 |
V |
表7 传输模式下的I/O的电气特性
(2) 接收模式
在接收模式下,终端应能正确的解释从IC卡发来的具有表8所示特性的信号。
符 号 |
最小值 |
最大值 |
单 位 |
VIH |
0.7×Vcc |
Vcc |
V |
VIL |
0 |
0.8 |
V |
tR 和 tF |
---- |
1.0 |
Μs |
表8 接收模式下的I/O的电气特性
3、 编程电压(VPP)
终端不产生编程电压VPP。
4、 时钟(CLK)
终端将产生一个具有表9所示特性的时钟信号:
符 号 |
条 件 |
最小值 |
最大值 |
单 位 |
VoH |
0<IoH<50μA, Vcc=min. |
Vcc-0.5 |
Vcc |
V |
VoL |
- 50μA <IOL<0, Vcc=min. |
0 |
0.4 |
V |
tR 和 tF |
CIN(ICC)=30pF max. |
----- |
8%的时钟周期 |
Μs |
正负脉冲峰值 |
|
-0.25 |
Vcc+0.25 |
V |
表9 CLK的电气特性
频率范围在1MHZ~5MHZ之间,且在整个交易期间,其变化范围不超过±1%(见卡的操作过程)。时钟占空因数应在其稳定运行周期的45%~55%之间。
5、 复位(RST)
终端产生一个具有表10所示特性的复位信号:
符 号 |
条 件 |
最小值 |
最大值 |
单 位 |
VoH |
0<IoH<50μA, Vcc=min. |
Vcc-0.5 |
Vcc |
V |
VoL |
- 50μA <IOL<0, Vcc=min. |
0 |
0.4 |
V |
tR 和 tF |
CIN(ICC)=30pF max. |
----- |
0.8 |
Μs |
正负脉冲峰值 |
|
-0.25 |
Vcc+0.25 |
V |
表10 RST的电气特性
6、 电源电压(VCC)
终端提供一个5V±0.4V的直流电压,并能稳定输出0~55mA的电流。终端应带有保护电路以防止在误操作如对地或VCC短路时所造成的损坏。误操作既可能来源于内部,也可能来自外部接口如电源干扰、通讯链路故障等。
在IC卡的正常操作中,电流脉冲可在IC卡触点上引起VCC波动。电源应能中和小于40nAs且持续时间不超过400ns的电源波动。并能承受IC卡上100mA的电流消耗。
7、 触点电阻
在终端的整个设计寿命期间,触点电阻(在清洁的接口设备和清洁的标准IC卡触点间测量时)应小于500mΩ。
8、 短路保护
当任何两个触点之间发生短路时,无论时间长短,终端都不应被损坏或功能失常。
9、 插入IC卡后,当对终端进行加电或断电
插入IC卡后,当对终端进行加电或断电时,触点的接口界面不应出现杂乱信号或电源干扰,触点激活和释放的时序见用卡过程。
第二部分:IC卡的用卡过程
以下用卡过程是按照《EMV规范》(即《支付系统集成电路卡规范》)的规定来叙述的。对于其它应用的IC卡,只要符合ISO-7816标准的规定,其用卡过程也大体相同。
一、 用卡过程
(一) 正常的用卡过程
这里所说的正常用卡过程,是指IC卡所插入的终端设备将其触点断电后,持卡人才拔出IC卡而结束的用卡过程。
1、用卡过程可划分为如下几个阶段:
1) 把IC卡插入IFD(接口设备Interface Device)并接通各触点。
2) 使IC卡复位并在终端和IC卡间建立通讯。
3) 执行交易
4) 释放触点并取出IC卡。所谓释放触点。
2、IC卡插入和触点接通序列
IC卡插入IFD,但触点还没有进行物理接触时,终端必须确保所有触点都处于低电平状态(VOL值应满足终端电气特性的规定(一般为0~0.4V),而VCC小于或等于0.4V或0.4V以 下)。当IC卡按插入的方向置入时,IFD应能检测它是否定位在标准的正确位置,即IFD触点的中心恰好和IC触点的中心相重合的位置,允许误差为±0.5mm。 当IFD检测到IC卡是处在这个范围内时,且所有的触点都已接触上,其激活过程如下(如图1-4所示):
1、终端在整个激活过程中始终保持RST(复位Reset)为低电平状态;
2、触点物理接通后,应在I/O或CLK(时钟Clock)激活之前给VCC加电;
3、终端确认VCC稳定在5V±0.4V(状态H)的范围内后,终端将I/O线置为接收方式,并提供一个(5。1。4。4)规定的稳定而适用的时钟,终端将其I/O置于接收方式可以在时钟启动之前,最迟不得超过时钟启动后的200个时钟周期。
注:根据设计,终端可以给VCC一个足够的等待时间使之稳定,待稳定后再通过测量或其它方式检查它的状态。终端将其I/O置为接收模式后,其I/O状态取决于IC卡上I/O的状态。
3、 IC卡的复位
(1) 冷复位
触点接通后,终端将发出一个冷复位信号,并从IC卡得到一个复位应答,过程如下:
l 从T0时刻起,终端施加CLK;
l 在T0后不超过200个时钟周期内,IC卡必须将其I/O线置为接收方式。由于终端也必须在这段期限内置其I/O线驱动器为接收方式,所以I/O线在T0后最迟不超过200个时钟周期的时间内置为高电平。为此,终端的I/O触点应经过一个上拉电阻接到V CC;
l 终端应从T0开始保持RST端为低电平状态,并在从T 0 开始到T 1后的40,000至45,000个时钟周期内将RST置为高电平;
l IC卡上I/O的复位应答将在T 1时刻后的400至40,000个时钟周期内开始;
l 如果IC卡未在这段时间内进行复位应答,则终端必须启动一个触点释放时序。
(2) 热复位
IC卡对终端的复位应答有着规定的规格和内容(详见后述),如果终端收到的复位应答不符合规定要求时,终端将启动一个热复位并从IC卡获得复位信号。过程如下:
l 热复位从时刻T 0 ‘开始,此时终端置RST为低电平状态;
l 在整个热复位过程中,终端应保持V CC和CLK稳定并符合上一部分的规定;
l 在T 0 ‘之后的最多200周期内,IC卡和终端都必须置I/O为接收方式,即I/O线在T 0 ‘后最迟不超过200个时钟周期内置为高电平;
l 终端应从T 0 ‘开始保持RST为低电平状态,并在T 0 ‘至T 1 ‘后的40,000到45,000个时钟周期内将RST端置为高电平状态。
l IC卡上I/O的复位应答将在T 1 ‘后的400至40,000个时钟周期内开始;
l 如果IC卡未在这段时间内进行复位应答,则终端必须启动一个触点释放时序。
4、 执行交易
IC卡的应用选择以及其后在IC卡与终端间的信息交换都是执行一项交易所必不可少的,详情将在以后叙述。
5、 触点释放序列
作为用卡过程的最后一个步骤,不论交易是正常或异常结束(包括用卡过程中从IFD取回IC卡),终端必须按以下步骤释放IFD的触点。
l 终端以置RST为低电平状态来开始触点释放序列;
l 在置RST为低电平状态之后且Vcc断电之前,终端将CLK和I/O也置为低电平;
l
最后,在实际断开触点之前,终端必须先将V CC去电,V CC在IFD触点实际断开之前必须为0.4V或更低些。
(二)交易过程的非正常结束
如果在执行一项交易的过程中,过早地把IC卡从终端以高达1m/S的速度取出时,终端必须能够觉察出IC卡的运动,并按照上述触点释放序列,并在相对位移达到1mm之前,释放所有的IFD的触点。在这种情况下不得对IC卡产生任何电气的或机械的损伤。
二、字符的物理传送
交易过程中,数据以异步半双工方式经I/O线在终端和IC卡双向传送。由终端向IC卡提供时钟信号,并以此来控制交易的时序。信息交换时的数据位和字符的规定如下所述,它适用于复位应答,以及现行的符合ISO7816标准规定的T=0和T=1两种传输协议。
(一)位持续时间
I/O线上所用的位持续时间被确定为基本时间单位(etu-elementary time uint),它和时钟频率间存在着线性关系。终端给出时钟信号的IC卡被称为外时钟卡。
复位应答时的位持续时间称为初始etu,并由正式算出
初始etu=372/f 秒
式中 f 的单位为Hz,表示复位响应时的初始频率。
复位应答(以及全局参数F与D的设立,见后述)之后的持续时间,称为当前etu,其计算公式为:
当前etu=F/Df 秒
式中f 的单位为Hz,表示后续传送时的当前工作频率。
注:《EMV卡规范》约定当前仅F=372、D=1之值受到支持,因而,初始的和当前的etu是一样的,均由372/f算出。今后,除非特别说明,凡提到etu指的都是当前etu。
在卡的整个交易过程中,f的值应在1~5MHZ之间。
(二)字符帧
数据在I/O线上以字符帧传送,所用约定在IC卡复位应答传送的起始字符TS中予以规定(参见后述)。
字符传送之前,I/O线置为高电平状态。
一个字符帧包含着10个相连的数位:
——1个状态为L的起始
——8数位组成的数据字节
——1位偶校验位
起始位由接收端周期性地对I/O线采样检测。采样时间小于或等于0.2etu.
在一个字符帧中的逻辑‘1’的数量必须为偶数,8个数据位和奇偶位本身都包括在此校验中,但起始位不作校验计算。
起始时间固定地从最后一个检测到的高电平至第一个检测到的低电平的中间算起`,起始位的存在必须在0.7etu之内确定,相继的的各位必须在(n+0.5±0.2)etu区间内被接收。(n为各数位之秩),起始位为位1。
在一个字符帧内,从它的起始位的前沿起到第n位的后沿间的时间是(n±0.2)etu.
相连两字符的起始位前沿之间的区间包括了字符宽度(10±0.2)etu,加上保护时间,在保护时间内,IC卡和终端二者都处于接收方式(I/O线处于高电平状态)。当T=0时,如果IC卡或终端作为接收方对刚收到的字符检测出奇偶错误,则I/O将被置为低电平状态,以向发送方表明出现错误。
三 、复位应答
IC卡被终端复位后,用一串称之为复位应答(ATR-Answer To Resest)的字节应答。这些字节传达给终端的信息规定了IC卡和终端之间要建立的通讯的某种特性。
我们规定一个字符的最高位为b8位,最低位为b1位,其代码用括在引号的16进制数表示,如“3F”。
(一)复位应答期间回送字符的物理传输
复位应答期间,相连二字符的起始位上升沿之间的最小间隔为12初始etu,而最大间隔为9600初始etu。
在复位应答期间(热的或冷的),IC卡应在19,200个初始etu之内发送完所有要回送的字符。发送时间应从第一字符(TS)起始位的上升沿开始,到最后一个字符的起始位上升沿后的12个初始etu之间。
(二)复位应答时回送的字符
IC卡在复位应答时回送的字符的数量和编码随传输协议和所支持的传输控制参数之值而定。本节描述两各种基本的复位应答:一种是IC卡支持T=0,另一种是IC卡支持T=1,它规定了回送的字符,以及所容许的传输控制参数的数值范围。
表1 T=0的复位应答回送的字符
字符 |
值 |
备注 |
TS |
“3B“或“3F” |
表示正向或反向约定 |
T0 |
“6X” |
TB和TC1出现,X表示历史字节的存在个数 |
TB1 |
“00” |
不使用Vpp |
TC1 |
“00”到“FF” |
表示需要额外保护时间,数据“FF”有特殊含义 |
表2 T=1的复位应答回送的字符
字符 |
值 |
备注 |
TS |
“3B”或 “3F” |
表示正向或反向约定 |
T0 |
“EX” |
TB1和TD1出现,X表示历史字节存在的个数 |
TB1 |
“00” |
不需要Vpp |
TC1 |
“00”到“FF” |
表示所需额外保护时间的数量,数据“FF”有特殊含义。 |
TD1 |
“81” |
使用T=1协议,TA2至TC2不存在,TD2存在 |
TD2 |
“31” |
使用T=1协议,TA3至TB3存在,TC3和 TD3不存在 |
TA3 |
“10”至“FE” |
回送IFSI,表示IC卡信息域大小的初始值,其初始值为16-254字节 |
TB3 |
高四位组“0”至“4 低四位组“0“至”5 |
BWI=0至4 CWI=0至5 |
TCK |
参看4。3。3。5 |
校验字符 |
三、字符定义
以下将对复位应答中可能回送的字符做具体的说明。如果复位应答符合基本ATR(复位应答)二者之一,则一个字符是否出现,以及其容许的数值范围(如果出现的话),由说明每个字符的“基本响应”来表示。
复位应答中回送字符的最大个数(包括历史字符,但不包括TS)为32个。
《EMV》规范只要求(最低限度)终端支持这里所说的基本的ATR,以及在“终端反应”中所指定的任何附加要求。
以下的说明中,如果指出一个终端必须拒绝IC卡,这就意味着终端必须发出一个热复位或释放IC卡的触点以结束用卡过程。
1、 TS——起始字符
TS执行两项功能:
l 向终端提供了一个已知的位组合模型,以便于同步;
l 提示所用逻辑约定,以便对后继的字符进行解释。
基本响应:IC卡必须以下列二值之一来回送TS
反向约定 (H)