欢迎您访问郑州兴邦电子股份有限公司官方网站!
阿里巴巴诚信通企业
全国咨询热线:40000-63966
兴邦电子,中国水控机第一品牌

联系兴邦电子

全国咨询热线:40000-63966

售后:0371-55132951/55132952

工厂:河南省 郑州市 高新区莲花街电子电器产业园

智能卡复位应答-字符定义

文章出处:http://www.singbon.com 作者: 人气: 发表时间:2012年05月06日

[文章内容简介]:在符合基本ATR的情况下,一个字符是否存在,以及允许的取值范围(如果存在)由其“基本应答”信息指明。基本应答描述和可能存在的其它扩展情况之间不冲突。如果终端不支持IC卡支持的其它传输协议以及传输参数值,IC卡应该有能力用基本ATR定义的模式和终端进行交互。

    在符合基本ATR的情况下,一个字符是否存在,以及允许的取值范围(如果存在)由其“基本应答”信息指明。基本应答描述和可能存在的其它扩展情况之间不冲突。例如,如果IC卡支持多个传输协议和多种传输参数值,它可以回送附加字符,但是,只有在IC卡返回一个基本ATR,或者返回一个满足最低功能需求的终端支持的ATR,才能够保证接下来字符的正确交换。

    如果终端不支持IC卡支持的其它传输协议以及传输参数值,IC卡应该有能力用基本ATR定义的模式和终端进行交互。

    复位应答中回送字符的最大个数(包括历史字符,但不包括TS)为32个。

    终端如果无法满足IC卡回送ATR中定义的传输模式,将发送一个热复位信号,或将IC卡置为静止状态以结束卡片操作过程。

    1、TS--初始字符

    起始字符TS具有两个功能:一是向终端提供一个便于位同步的已知位模式,二是指定解释后续字符的逻辑约定。

    使用反向逻辑约定时,I/O的低电平状态等效逻辑1,并且该数据字节的最低位在起始位之后发送,第一个半字节LHHL用于位同步(其中L表示低电平,H表示高电平)。

    基本响应:IC卡将回送的TS为以下两个值之一。
    * (H)LHHLLLLLLH表示反向约定,值为0x3F。
    * (H)LHHLHHHLLH表示正向约定,值为0x3B。

    终端一般都支持正向约定和反射约定,并接收IC卡回送的0x3F和0x3B中的任何一个,对于其他值将拒绝。目前反向约定模式的卡片使用越来越少,在以后的卡片规范和应用规范版本中可能淘汰,所以在我们的设计中,建议大家使用0x3B,即正向约定。

    2、T0--格式字符

    格式字符T0由两个部分组成,高半字节(b5~b8)表示后续字符TA1到TD1是否存在,b5-b8位设置为逻辑“1”表示TA1到TD1存在,相应的,低半字节(b1~b4)表明可选历史字符的数目(0~15),如下所示:

    [b]T0的基本响应代码[/b]
    [b] b8 b7 b6 b5 b4 b3 b2 b1 [/b]
    T=0 0 1 1 0 x x x x
    T=1 1 1 1 0 x x x x

    基本响应:
    * 选择T=0时,IC卡应回送T0=0x6X,表示字符TB1和TC1存在。
    * 选择T=1时,IC卡应回送T0=0xEX,表示字符TB1、TC1和TD1存在。

    其中X表示历史字符的数目。
    兼容终端能够接收满足以上条件的所有值。

    3、TA1~TC3--接口字符

    在复位应答后的终端与IC卡信息交换期间,TA1到TC3表示控制参数F、D、I、P、N、IFSC、BW1和CW1的值。这些参数都用于T=1协议,TA1到TC1和TC2传送的信息将用于后续数据交换且与所使用的协议类型无关。这些参数的具体意义在下面给出。

    (1)TA1

    TA1传送FI和DI的值,其中:

    * FI用于确定F的值。F为时钟速率转换因子,用于修改复位应答以后终端提供的时钟频率。
    * DI用于确定D的值。D为比特速率调节因子。用于调整复位应答之后所使用的位持续时间。

    在复位应答期间发送ATR时所使用的默认值FI=1、DI=1,分别表示F=372、D=1。

    基本响应:如果IC卡不回送TA1值,则表示IC卡使用默认参数,在整个后续信息交换过程中继续使用默认值F=372和D=1。

    兼容终端接收默认的TA1值(0x11)

    为提高终端与IC卡之间的数据传送速率,某些IC卡在终端支持的情况下可以选择使用其他的TA1值协商使用高速模式。

    (2)TB1

    TB1传送PI1和II值,其中:

    * PI1在b1~b5位中定义,用于确定IC卡所需的编程电压P值,PI1=0表示IC卡不需要编程电压VPP。
    * II在b6~b7位定义,用于确定IC卡所需的最大编程电流I值。PI1=0时不使用这一参数。
    * b8位不使用,设置位逻辑0。

    基本响应:在目前使用的大多数IC卡芯片都不要编程电压的支持,所以,IC卡回送TB1=0x00,表示IC卡不使用VPP。

    终端接受满足上述定义的任何TB1,如果不需要VPP的话,终端将在卡片使用过程中保持VPP为静止状态。

    (3)TC1

    TC1传送N值,N用于表示增加到最小持续时间的额外保护时间,此处的最小持续时间表示从终端发送到IC卡的、作为后续信息交换的两个连续字符的起始位上升沿之间的时间。N在TC1的b1~b8位为二进制编码,其值作为额外保护时间表示增加的etu数目,其值可在0到255之间任选。N=255具有特殊含义,表示在使用T=0协议时,两个连续字符的起始位上升沿之间的最小延迟时间可减少到12个etu,而在使用T=1协议时可减少到11个etu。

    TC1的值定义的参数只适用于终端向IC卡发送的两个连续字符之间的间隔时段,不适用于IC卡向终端发送字符的情况,也不适用于两个反方向发送字符的情况。

    如果TC1值在0x00到0xFE之间,增加到字符间最少持续时间的额外保护时间为0~254个etu,对于后续传输,意味着其额外保护时间将在12~266个etu之间。

    如果TC1值为0xFF,则后续传输的字符最小持续时间在使用T=0协议时为12个etu,使用T=1协议时为11个etu。

    基本响应:根据芯片内I/O的处理情况,IC卡回送0x00~0xFF之间的任何值。
    终端能够接收满足以上条件的任何TC1值。

    在实现过程中,我们可以计算出特定芯片可接收的最小持续时间,建议TC1设置为这个最小时间,否则TC1如果过大可能造成终端与IC卡之间的通信缓慢,延长交易时间,如果TC1过小的话芯片无法及时处理I/O端口到来的数据,会造成数据丢失。

第1页第2页

本文关键词:复位应答,ATR,智能卡,IC卡
回到顶部