ISO7816(传输协议)

合集下载

7816物理及协议部分知识整理

7816物理及协议部分知识整理

工 程 技 术 文 件题目:7816物理及协议部分知识整理摘要:本文档是针对PBOC 银行卡检测需求对7816物理电气特性和协议传输等相关知识的整合。

归 档 类 签 名 项相 关 项相关人日 期 相 关 项签 名日 期 接 收拟 制 魏晓伟 10年3月3日归 档 课题组长魏晓伟打 字 魏晓伟 登记号校 核 魏晓伟位置/ID 号 WISDOM42 MR 号审 核保管期限 长 期 分类号总 工 刘大力关 键 词当前路径 \\Nt02\fangzhen\IDCARD\设计二部与曹总交互目录\100302_7816物理相关文档\7816物理及协议部分知识整理.doc归档路径工程归类北京多思科技工业园股份有限公司公司机密 第 一 稿 共 9 页7816物理及协议部分知识整理1.物理特性 (4)1.1IC卡的一般特性 (4)1.2变形特性 (4)1.3可燃性 (4)1.4有毒性 (4)1.5耐化学性 (4)1.6温度稳定性 (4)1.7湿度 (4)1.8光 (4)1.9带凸印卡 (4)1.10带有磁条的卡 (4)1.11卡的材料 (4)1.12ID-1型卡的翘曲 (5)1.13表面畸变 (5)1.14污染 (5)1.15紫外线 (5)1.16X—射线 (5)1.17触点的表面断面 (5)1.18机械强度(卡和触点) (5)1.19(触点的)电阻 (5)1.20静电 (6)1.21散热 (6)2附加信息记录的方法 (6)2.1凸印(当IC卡带有凸印时) (6)2.2磁条(当IC卡带有磁条时) (6)3IC卡的尺寸和触点位置 (6)3.1IC卡的尺寸 (6)3.2触点尺寸和位置 (6)4电气特性 (8)4.1总则 (8)4.1.1电路 (8)4.2操作条件 (8)4.2.1操作条件的类别 (8)4.2.2操作类别的选择 (8)4.3电压和电流值 (10)4.3.1测量规定 (10)4.3.2VCC (10)4.3.3I/O (10)4.3.4CLK (11)4.3.5RST (11)4.3.6VPP (12)4.3.7外特性 (13)4.3.8卡操作过程 (16)5ATR容量 (18)6字符间隔测试 (19)6.1T=0 (19)6.2T=1 (19)1.物理特性1.1IC卡的一般特性ISO 7810中规定的各类识别卡的物理特性适用于IC卡,ISO 7813中描述的金融交易卡的全部尺寸要求也应适用于这类卡。

ISO7816协议开发板

ISO7816协议开发板

ISO7816协议学习开发板
交流QQ1900109344
1、常见的CPU卡外观形式,像现在的社保卡、银行卡(原来老的磁条卡除外)、SIM卡、PSAM 卡、SAM等都是采用7816接口模式,卡片有大卡、小卡(如SIM卡等),小卡放在卡托上就是大卡了,为了使用方便而已。

下面是卡片的常用形式,社保卡等只是打印了图片了而已
2、7816接口分为主接口(SCC)即读卡器和从接口(SCD)即卡片,读卡器读取卡片通过7816接口工作。

标准PC/SC读卡器插入卡片
3、7816开发板1
A、当开发板作为读卡器时,开发好读卡器程序,把卡片(如SIM卡)插入SCC接口,通过发
送7816 APDU指令给SIM卡即可读取卡片的数据。

B、当开发板作为卡片时,开发好智能卡程序,把开发板的SCD接口插入读卡器中,可通过
读卡器发送命令到开发板通信验证7816 APDU命令
4、7816开发板2(与1功能一样,开发板的软件有些区别)
开发板作为卡片插入读卡器。

7816开发板的目的:了解学习7816协议,通过实际例程了解整个工作流程,即读卡器是如果工作的,卡片是如果工作的,两者是如何通信的,这就是7616协议了。

开发套件提供:
1、开发板1或开发板2供学习者调试实验使用
2、读卡器(SCC接口)例程,通过串口打印观察读取卡片的数据
3、卡片(SCD接口)例程
4、7816协议资料
5、可提供PC/SC读卡器PC端发送APDU命令工具
开发板联系QQ:1900109344
备注:标准的PS/SC读卡器需要自行准备,如本图上是采用SCR3310读卡器。

智能卡7816协议

智能卡7816协议

智能卡7816协议最近项⽬涉及到了FPGA芯⽚与智能卡控制的系统级调试,记录⼀下关于智能卡的7816协议。

概念⾸先7816-3定义了智能卡(这⾥指的是接触式CPU卡,对于逻辑加密卡以及⾮接触IC卡不在此列)和读写设备之间的通讯协议,说⽩了就是数据位传输的格式。

这⾥提⼀下RS232协议,它属于异步串⾏通讯接⼝(UART),通过RxD、TxD进⾏数据的收发,RS232曾经是PC机的标配,但是⽬前在多数PC上基本不复存在了(当然还可以通过USB-232转换器来扩展)。

对⽐7816-3定义的通讯协议,其实基本上可以说是RS232的翻版并在此基础上进⾏的改进,7816中只有⼀个IO同时兼具数据收发的功能,这点和RS232⽤RxD和TxD进⾏数据收发是不同的。

在RS232中我们有9600波特率、起始位、奇偶校验位、停⽌位这些概念,⽽在7816-3中都完整地保留了下来。

通讯协议说明(字符传输)智能卡的字符传输采⽤的是异步半双⼯模式,这种异步的模式很像个⼈电脑上的RS232通信。

传输⼀个字符时,除了8Bits的数据外,还加了以下⼏个Bits:起始位 -- ⽤于字符帧的同步校验位 -- ⽤于校验检测Guard Time -- 两个字符间的间隔时间智能卡ETU⼀般我们在理解UART通讯协议后,可以将UART协议与7816协议作为对⽐学习。

7816-3中引⼊了etu,没有使⽤bps,但是基本原理是⼀致的。

etu的定义可以更加精确地描述每个数据位在传输过程中收发双⽅的职责和⾓⾊转换。

根据定义在智能卡上电复位的时候 1 etu = 372 / f ,其中f = 读写设备通过CLK管脚提供给智能卡的时钟频率,通常在1--5 MHz之间。

ETU选择0372(默认值)164FD=0x94232FD=0x95316FD=0x96etu的单位是时间单位秒(毫秒、微秒),等同于传输每个数据位所需的时间。

对其取倒数得出来的就是每秒传输的数据位,也就是bps。

ISO7816-4通信协议

ISO7816-4通信协议

/s/blog_67d95f4001011uiv.html标签种类NFC的基本标签类型有四种,以1至4来标识,各有不同的格式与容量。

这些标签类型格式的基础是:ISO 14443的A与B类型、Sony FeliCa,前者是非接触式智能卡的国际标准,而后者符合ISO 18092被动式通讯模式标准。

保持NFC标签尽可能简单的优势是:在很多场合,标签可为一次性使用,例如在海报中寿命较短的场合。

第1类标签(Tag 1 Type):此类型基于ISO14443A标准。

此类标签具有可读、重新写入的能力,用户可将其配置为只读。

存储能力为96字节,用来存网址URL或其他小量数据富富有余。

然而,内存可被扩充到2k字节。

此类NFC标签的通信速度为106 kbit/s。

此类标签简洁,故成本效益较好,适用于许多NFC应用[9]第2类标签(Tag 2 Type):此类标签也是基于ISO14443A,具有可读、重新写入的能力,用户可将其配置为只读。

其基本内存大小为48字节,但可被扩充到2k字节。

通信速度也是106 kbit/s。

第3类标签(Tag 3 Type):此类标签基于Sony FeliCa体系。

具有2k字节内存容量,数据通讯速度为212 kbit/s。

故此类标签较为适合较复杂的应用,尽管成本较高。

第4类标签(Tag 4 Type):此类标签被定义为与ISO14443A、B标准兼容。

制造时被预先设定为可读/可重写、或者只读。

内存容量可达32k字节,通信速度介于106 kbit/s和424 kbit/s之间。

从上述不同标签类型的定义可以看出,前两类与后两类在内存容量、构成方面大不相同。

故它们的应用不太可能有很多重叠。

第1与第2类标签是双态的,可为读/写或只读。

第3与第4类则是只读,数据在生产时写入或者通过特殊的标签写入器来写入。

第二部分行业间交换命令目录1范围............................................................................................................................................. 2参考文件 ..................................................................................................................................... 3定义............................................................................................................................................. 4缩略语和记录 ............................................................................................................................. 5基本组织结构 .............................................................................................................................5.1 数据结构....................................................................................................................................5.2 卡的安全体系结构....................................................................................................................5.3 APDU报文结构.........................................................................................................................5.4 命令首标、数据字段和响应尾标用的编码约定....................................................................5.5 逻辑信道....................................................................................................................................5.6 安全报文交换............................................................................................................................ 6基本的行业间命令 .....................................................................................................................6.1 READ BINARY命令.................................................................................................................6.2 WRITE BINARY命令...............................................................................................................6.3 UPDATE BINARY命令 ............................................................................................................6.4 ERASE BINARY命令...............................................................................................................6.5 READ RECORD命令................................................................................................................6.6 WRITE RECORD命令..............................................................................................................6.7 APPEND RECORD命令...........................................................................................................6.8 UPDATE RECORD命令 ...........................................................................................................6.9 GET DATA 命令.......................................................................................................................6.10 PUT DATA 命令.....................................................................................................................6.11 SELECT FILE 命令................................................................................................................6.12 VERIFY 命令 .........................................................................................................................6.13 INTERNAL AUTHENTICATE 命令 .....................................................................................6.14 EXTERNAL AUTHENTICATE 命令....................................................................................6.15 GET CHALLENGE 命令 .......................................................................................................6.16 MANAGE CHANNEL 命令 .................................................................................................. 7面向传输的行业间命令............................................................................................................7.1 GET RESPONSE 命令...........................................................................................................7.2 ENVELOPE 命令................................................................................................................... 8历史字节 ................................................................................................................................... 9与应用无关的卡服务................................................................................................................ 附录A 通过T=0传输APDU报文..........................................................................................................B 通过T=1传输APDU报文 ...............................................................................................................C 记录指针管理 ...........................................................................................................................D 使用ANS.1基本编码规则................................................................................................................E 卡轮廓的举例............................................................................................................................F 使用的安全报文交换 ...................................................................................................................1范围本规范规定了:——由接口设备至卡以及相反方向所发送的报文、命令和响应的内容;——在复位应答期间卡所发送的历史字节的结构及内容;——当处理交换用的行业间命令时,在接口处所看到的文件和数据的结构;——访问卡内文件和数据的方法;——定义访问卡内文件和数据的权利的安全体系结构;——安全报文交换的方法;——访问卡所处理算法的方法。

ISO7816同步传送协议;

ISO7816同步传送协议;

终端对结点编址的使用是可选的,但IC卡在使用T=1型协议时,必须支持按如下规则的结点编址:
l 若不使用节点地址,终端发往IC卡的第一个数据块的SAD和DAD值均应设为0。
l 若使用节点地址,由终端发给IC卡的第一数据块的SAD和DAD应设定为不同的值(其中之一可以是零)。
3、 T=0的错误检测和校正
当T=0时,这个过程是强制的,但在复位应答时不使用。 如果一个字符没有正确地接收到或接收正确但奇偶位错,则接收方必须在字符起始位的上升沿之后的(10.5±0.2)个etu内,向I/O线发送持续1-2个etu的低电平信号,以指示出了错误。
l 若使用了结点地址,在卡片操作过程中,IC卡收到的第一个有效I块和S块中的NAD,用于建立起整个卡片操作过程中的终端和IC卡的节点地址,在同一个过程中,终端发给IC卡的后续块应使用同一个NAD,如此建立的结点地址适用于所有类型的数据块。
l 在一个用卡过程中,任何由IC卡送向终端的字组,在此过程中必须使用由终端送向IC卡的第一字组确定的结点地址。(注意,从终端送向IC卡的源点和目标地址,在由IC卡送向终端时要分别变为目标和源点地址)。 l 在卡片操作过程中,若IC卡接收到的数据块的NAD和交易开始时所建立的NAD不同,则IC卡应向交易开始时建立的DAD回复一个R块。 协议控制字节(PCB-Protocol Control Byte) 协议控制字节对数据块的类型进行编码,有三种类型的数据块,规定如下: l 用于传送APDU的信息字组(I块) l 用于传达确认(ACK-Acknowlegement)或否认(NAK-Negative Acknowlegement)的接收就绪块(R块)
对于T=0,这些字节和随命令一起发送的数据就构成了命令传输协议数据单元(C-TP-DU)。命令应用协议数据单元C-APDU到C-TPDU的变换在后面讲述。 TTL传送这五个命令头字节给IC卡并等待着一个过程字节。

iso7816协议

iso7816协议

ISO7816协议ISO7816是一种智能卡接口标准,定义了与智能卡进行通信的物理和电气特性,以及指令集和应答规则。

该协议被广泛应用于银行卡、身份证、门禁卡等智能卡领域,为智能卡的应用开发和系统集成提供了标准化的技术基础。

1. 背景智能卡作为一种集成电路卡片,具有存储和运算能力,以及与外部设备进行通信的能力。

为了实现智能卡与读卡设备之间的互操作性,ISO7816协议应运而生。

该协议的制定旨在确保不同厂商生产的智能卡和读卡设备可以互相兼容,从而保证智能卡应用的可移植性和可扩展性。

2. 协议结构ISO7816协议包括物理特性、电气特性、传输特性以及指令集等方面的规定,下面将分别介绍:2.1 物理特性ISO7816规定了智能卡的尺寸、接触式和非接触式两种类型的接口等物理特性。

其中,接触式接口通过卡片与读卡设备之间的接触实现数据传输,非接触式接口则利用无线射频技术进行通信。

2.2 电气特性ISO7816针对接触式和非接触式两种接口,定义了电气特性。

接触式接口使用金属接触点进行信号传递,而非接触式接口则通过无线射频进行通信。

电气特性规定了智能卡和读卡设备之间的电压、时序等参数,以确保可靠的数据传输。

2.3 传输特性ISO7816规定了智能卡和读卡设备之间的传输特性,包括传输速率、传输模式等。

根据传输速率的不同,可以将ISO7816协议分为T=0和T=1两种传输模式。

T=0模式是基于字符传输的协议,适用于低速传输环境;T=1模式是基于块传输的协议,适用于高速传输环境。

2.4 指令集ISO7816定义了与智能卡进行通信的指令集。

指令集包括了与智能卡进行数据交互的各种指令,例如读取卡片信息、写入数据、进行身份验证等。

通过遵循ISO7816定义的指令集,读卡设备可以与智能卡进行有效的通信。

3. 应用领域ISO7816协议作为智能卡领域的标准化协议,在各个应用领域都有广泛的应用。

以下是几个典型的应用领域:3.1 银行卡银行卡是ISO7816协议的主要应用之一。

智能卡ISO7816-4要求规范(中文版)

智能卡ISO7816-4要求规范(中文版)

第二部分行业间交换命令目录1围 (3)2参考文件 (3)3定义 (3)4缩略语和记号 (5)5基本组织结构 (5)5.2 卡的安全体系结构 (9)5.3 APDU报文结构 (11)5.4 命令首标、数据字段和响应尾标用的编码约定 (13)5.5 逻辑信道 (18)5.6 安全报文交换 (19)6基本的行业间命令 (23)6.1 READ BINARY命令 (23)6.2 WRITE BINARY命令 (24)6.3 UPDATE BINARY命令 (25)6.4 ERASE BINARY命令 (26)6.5 READ RECORD命令 (27)6.6 WRITE RECORD命令 (29)6.7 APPEND RECORD命令 (31)6.8 UPDATE RECORD命令 (32)6.9 GET DATA 命令 (33)6.10 PUT DATA 命令 (35)6.11 SELECT FILE 命令 (36)6.12 VERIFY 命令 (38)6.13 INTERNAL AUTHENTICATE 命令 (39)6.14 EXTERNAL AUTHENTICATE 命令 (40)6.15 GET CHALLENGE命令 (42)6.16 MANAGE CHANNEL命令 (42)7面向传输的行业间命令 (43)7.1 GET RESPONSE 命令 (43)7.2 ENVELOPE 命令 (44)8历史字节 (45)9与应用无关的卡服务 (49)通过T=0传输APDU报文 (52)通过T=1传输APDU报文 (57)1围本规规定了:——由接口设备至卡以及相反方向所发送的报文、命令和响应的容;——在复位应答期间卡所发送的历史字节的结构及容;——当处理交换用的行业间命令时,在接口处所看到的文件和数据的结构;——访问卡文件和数据的方法;——定义访问卡文件和数据的权利的安全体系结构;——安全报文交换的方法;——访问卡所处理算法的方法。

ISO7816-4通信协议

ISO7816-4通信协议

第二部分行业间交换命令目录1范围 ............................................................................................................................................. 2参考文件 ..................................................................................................................................... 3定义 ............................................................................................................................................. 4缩略语和记录 ............................................................................................................................. 5基本组织结构 .............................................................................................................................5.1 数据结构 ....................................................................................................................................5.2 卡的安全体系结构 ....................................................................................................................5.3 APDU报文结构 ........................................................................................................................5.4 命令首标、数据字段和响应尾标用的编码约定 ....................................................................5.5 逻辑信道 ....................................................................................................................................5.6 安全报文交换 ............................................................................................................................ 6基本的行业间命令 .....................................................................................................................6.1 READ BINARY命令 ................................................................................................................6.2 WRITE BINARY命令 ..............................................................................................................6.3 UPDATE BINARY命令 ...........................................................................................................6.4 ERASE BINARY命令 ..............................................................................................................6.5 READ RECORD命令 ...............................................................................................................6.6 WRITE RECORD命令 .............................................................................................................6.7 APPEND RECORD命令 ..........................................................................................................6.8 UPDATE RECORD命令 ..........................................................................................................6.9 GET DATA 命令 .......................................................................................................................6.10 PUT DATA 命令 .....................................................................................................................6.11 SELECT FILE 命令 ................................................................................................................6.12 VERIFY 命令 .........................................................................................................................6.13 INTERNAL AUTHENTICATE 命令 .....................................................................................6.14 EXTERNAL AUTHENTICATE 命令 ....................................................................................6.15 GET CHALLENGE 命令 .......................................................................................................6.16 MANAGE CHANNEL 命令 .................................................................................................. 7面向传输的行业间命令 ............................................................................................................7.1 GET RESPONSE 命令 ...........................................................................................................7.2 ENVELOPE 命令 ................................................................................................................... 8历史字节 ................................................................................................................................... 9与应用无关的卡服务 ................................................................................................................ 附录A 通过T=0传输APDU报文 ......................................................................................................B 通过T=1传输APDU报文 ...........................................................................................................C 记录指针管理 ...........................................................................................................................D 使用ANS.1基本编码规则..............................................................................................................E 卡轮廓的举例 ............................................................................................................................F 使用的安全报文交换 ...................................................................................................................1范围本规范规定了:——由接口设备至卡以及相反方向所发送的报文、命令和响应的内容;——在复位应答期间卡所发送的历史字节的结构及内容;——当处理交换用的行业间命令时,在接口处所看到的文件和数据的结构;——访问卡内文件和数据的方法;——定义访问卡内文件和数据的权利的安全体系结构;——安全报文交换的方法;——访问卡所处理算法的方法。

ISO7816(传输协议).

ISO7816(传输协议).

第一部分:卡的电气特性一、卡的触点分配IC卡触点的分配遵循ISO7816-2的规定,如下所示:二、卡的电气特性1、测量约定所有测量均应在IC卡和接口设备(IFD)之间的触点上进行,并以GND为参照。

环境温度范围为0℃~50℃。

所有流入IC卡的电流均为正值。

2、输入/输出(I/O)该触点作为输入端(接收模式)从终端接收数据或者作为输出端(传输模式)向终端传送数据。

在操作过程中,IC卡和终端不能同时处于传输模式,若万一发生此情况,I/O触点的状态(电平)将处于不确定状态,但不应损坏IC卡。

(1)接收模式在接收模式下,当电源电压(VCC)在第6中所规定的范围内时,IC卡应能正确的解释来自终端的信号,其特性如表2所示:表2 接收模式下的I/O的电气特性(2) 传输模式在传输模式下,IC卡向终端传送数据,其特性如表3所示:表3 传输模式下的I/O的电气特性除向终端传送数据外,IC卡应将其I/O信号驱动模式设置为接收模式,且不要求I/O具备任何电流源性能。

3、编程电压(Vpp)IC卡不需要编程电压Vpp。

4、时钟(CLK)当VCC在第6中所规定的范围内时,IC卡将在具有表4所示特性的时钟信号作用下正常工作。

表4 CLK的电气特性当时钟占空因数处于其稳定运行周期的44%~56%之间时,IC卡应能正常工作。

当时钟频率处于1MHZ到5MHZ之间时,IC卡应能正常工作。

注:在卡片操作过程中,频率值将由终端维持在复位应答期间所用频率的±10%之内。

5、复位(RST)当VCC在第6中所规定的范围内时,IC卡应能正确的解释具有表5所示电气特性的复位信号。

表5 RST的电气特性IC卡将利用激活的低复位信号,采用异步方式进行复位应答。

6、电源电压(VCC)在电源电压VCC为5V±0.5V直流电的情况下,IC卡应能正常工作。

此时,时钟频率应在第4中所规定的范围内。

最大电流为50mA。

7、触点电阻在整个生命周期内,IC卡触点电阻(在清洁的IC卡和清洁的标准接口设备触点间测量时)应小于500mΩ。

ISO 7816协议及智能卡驱动介绍

ISO 7816协议及智能卡驱动介绍

receive msg
processing…
Call Event Callback (STSMART_EV_CARD_INSERTED or STSMART_EV_CARD_REMOVED)
SMART_DetectHandler是在stsmart_init注册的PIO中断函数
Page 26
2021/5/6
Page 15 2021/5/6
公司名称全称或去掉此项皆可
第3部分—电气接口和传输协议
5)ATR结构和内容 协议类型 T=0—异步半双工字符传输协议 T=1—异步半双工块传输协议 T=14—Irdeto私有定义传输协议 其余为保留类型
Page 16 2021/5/6
公司名称全称或去掉此项皆可
第3部分—电气接口和传输协议
Page 7 2021/5/6
公司名称全称或去掉此项皆可
第3部分—电气接口和传输协议
3)IC卡操作过程
□ active: VCC、CLK的准备好,RST无效状态 □ 卡复位:RST 有效 40000 clk周期 □ 卡输出ATR:Answer to Reset,将卡和协议信息输出给主设备 □ 数据传输:与卡之间的数据交换 □ deactive: RST、CLK、VCC无效
Page 5 2021/5/6
公司名称全称或去掉此项皆可
第2部分—卡的尺寸和触电位置
最小触点尺寸 触点位置
RFU—Reserved for Futurn Use
Page 6 2021/5/6
公司名称全称或去掉此项皆可
第3部分—电气接口和传输协议
1)信号定义
I/O—串行输入输出
CLK—时钟信号(可选),当卡使用内部时钟时不需要
TCK – 校验字节, T0 to TCK的异或值

智能卡ISO7816-4规范(中文版)

智能卡ISO7816-4规范(中文版)

第二部分行业间交换命令目录1范围 (3)2参考文件 (3)3定义 (3)4缩略语和记号 (5)5基本组织结构 (5)5.2 卡的安全体系结构 (9)5.3 APDU报文结构 (11)5.4 命令首标、数据字段和响应尾标用的编码约定 (13)5.5 逻辑信道 (18)5.6 安全报文交换 (19)6基本的行业间命令 (23)6.1 READ BINARY命令 (23)6.2 WRITE BINARY命令 (24)6.3 UPDATE BINARY命令 (25)6.4 ERASE BINARY命令 (26)6.5 READ RECORD命令 (27)6.6 WRITE RECORD命令 (29)6.7 APPEND RECORD命令 (31)6.8 UPDATE RECORD命令 (32)6.9 GET DATA 命令 (33)6.10 PUT DATA 命令 (35)6.11 SELECT FILE 命令 (36)6.12 VERIFY 命令 (38)6.13 INTERNAL AUTHENTICATE 命令 (39)6.14 EXTERNAL AUTHENTICATE 命令 (40)6.15 GET CHALLENGE命令 (42)6.16 MANAGE CHANNEL命令 (42)7面向传输的行业间命令 (43)7.1 GET RESPONSE 命令 (43)7.2 ENVELOPE 命令 (44)8历史字节 (45)9与应用无关的卡服务 (49)通过T=0传输APDU报文 (52)通过T=1传输APDU报文 (57)1范围本规范规定了:——由接口设备至卡以及相反方向所发送的报文、命令和响应的内容;——在复位应答期间卡所发送的历史字节的结构及内容;——当处理交换用的行业间命令时,在接口处所看到的文件和数据的结构;——访问卡内文件和数据的方法;——定义访问卡内文件和数据的权利的安全体系结构;——安全报文交换的方法;——访问卡所处理算法的方法。

ISO7816-3标准培训

ISO7816-3标准培训

2.2 激活
3.复位应答
举例:
3B 6C 00 00 XX XX XX„„ b7„„b0 初始字符TS: 3B - 00111011(0x3B表示正向传输) 格式字符T0: 6C - 01101100(高半字节定义接口字节,低半字节表示历史字节数) 接口字符TB1:00 接口字符TC1:00 历史字符TK: XX 3B 78 18 00 00 82 10 00 00 00 00 00 35 b7„„b0 初始字符TS: 3B - 00111011 格式字符T0: 78 - 01111010 接口字符TA1:18 - 00011000 接口字符TB1:00 接口字符TC1:00 历史字符TK: 82 10 00 00 00 00 00 35
• • • • •
b5=1时TA(1)存在 b6=1时TB(1)存在 b7=1时TC(1)存在 b8=1时TD(1)存在 K……历史字节的数目,从0到15
3.4 TAi - TDi
• • • • •
• •
• • •
接口字符 接口字符TAi、TBi、TCi、TDi(i=1,2,3…) 这些字符指明了协议参数。 TA1:接口控制参数,给出时钟频率变换因数F和比特率调整因数D的数值。 TB1:接口控制参数,给出最大编程电流因子I和编程电压因子P,它们定义了Vpp的工作 状态。 TC1:接口控制参数,给出了额外保护时间N的值。 TDi指明了协议类型,以及是否存在后继接口字符,参看图8。TDi包括 Yi+1和T两部分, Yi+1为高四位组,分别表示后续接口字符TAi+1、TBi+1、TCi+1、TDi+1是否存在,T为低 四位组,表示后续发送的协议类型。包括如下: T=0:异步半双工字符传输协议; T=1:异步半双工字组传输协议; T=2-15:保留。

ISO7816传输协议详尽中文版

ISO7816传输协议详尽中文版

ISO7816传输协议详尽中文版
首先,ISO7816传输协议采用了全双工通信方式,即智能卡和终端设
备可以同时发送和接收数据。

这样可以提高数据传输的效率,同时也方便
了终端设备对智能卡的管理和控制。

其次,ISO7816传输协议规定了数据传输的时序和时钟同步方式。


能卡和终端设备通过时钟信号来保持通信的同步,在数据传输过程中通过
时序控制来保证数据的可靠传输。

再次,ISO7816传输协议定义了智能卡与终端设备之间的通信指令和
数据交换格式。

智能卡能够根据终端设备发送的指令来执行相应的操作,
并将执行结果返回给终端设备。

同时,ISO7816传输协议还规定了一些特
殊的指令和数据格式,用于智能卡与终端设备之间的安全认证和密钥交换。

最后,ISO7816传输协议定义了智能卡与终端设备之间的错误处理和
异常恢复机制。

在数据传输过程中,如果发生了错误或异常情况,协议规
定了相应的错误码和处理方式,以保证通信的稳定性和可靠性。

综上所述,ISO7816传输协议是智能卡与终端设备之间进行通信和传
输数据的重要协议。

它定义了通信规则、数据交换格式、时钟同步方式以
及错误处理机制等方面的内容,为智能卡的应用提供了稳定可靠的通信环境。

同时,ISO7816传输协议也为智能卡的安全认证和密钥交换等关键功
能提供了支持,保证了智能卡应用的安全性。

因此,在智能卡的开发和应用过程中,对ISO7816传输协议的理解和
掌握是非常重要的。

只有深入了解协议的规范和要求,才能设计和实现出
性能稳定、安全可靠的智能卡产品,提高智能卡的应用范围和使用效果。

一种实现ISO7816-3传输协议的方法

一种实现ISO7816-3传输协议的方法

2020年 / 第8期 物联网技术 45
Copyright©博看网 . All Rights Reserved.
可靠传输 Reliable Transmission
在。TD1 高 4 bit 分 别 代 表 TA2,TB2,TC2,TD2 是 否 存 在,依次类推。bit4 ~ bit1 表示历史字节的个数。第二个字 符 T0(0X7F)为二进制数“01111111”,代表本卡的 TA1, TB1,TC1 字符存在,有 15 个历史字节,而 TD1 不存在, 所以默认为 T=0 异步半双工字符传输类型。第三个字符 TA1 (“0X18”)的 bit8 ~ bit5 是“0001”(F=372),bit4 ~ bit0 是 “1000”(D=120),上位机更新的 etu 时间为 31 个 Psam_clk 周期,极大地缩减了数据交互时间。
图 2 PSAM 复位响应
复位响应的第一个字符 TS(0x3B)代表字符按照小端 传输。T0 字符中 bit5,bit6,bit7,bit8 分别代表 TA1,TB1,
收稿日期:2020-04-08 修回日期:2020-05-07
TC1,TD1 字 符 是 否 存 在, 其 中 1 表 示 存 在,0 表 示 不 存
ISO/IEC 7816 协 议。 软 件 设 计 一 般 参 考 ISO/IEC 7816-3 和
ISO/IEC 7816-4 协议。ISO/IEC 7816-3 规定了智能卡与接口
设备的电信号和传输协议,为半双工协议 ;ISO/IEC 7816-4 规定了智能卡和接口设备的交互命令 。 [5-6]
发送正常。超时、校验失败等错误判断信号发送至中断模块, 中断模块采用共享中断线区分中断号的方法上报给上位机, 上位机根据不同的中断号作出响应。

iso7816学习

iso7816学习

ISO7816的第一、二部分主要讲述了ISO7816规范内容的编排和规范的一些专业术语。

第三部分主要叙述了接口定义,SMARTCARD的电流电压标准,操作方法,以及字符传输格式传输方式等内容。

下面我对第三部分的一些概述。

Smartcard 的引脚分配以及引脚的电气特性省略。

Smartcard分为:A类5V和B类3V两种。

操作流程:一、操作过程1)接口设备激活电路2)卡和接口设备交换信息3)接口释放电路1、接口设备激活电路1)RST置为L状态2)按接口设备所选的条件,VCC加电为A类或B类3)接口设备上的I/O置于接受状态(A类VPP为中止状态,B类VPP保留)4)CLK提供时钟信号(A类:1~5M;B:1~4M)2、复位:冷复位和热复位1)冷复位:VCC和VPP上电后,加CLK,在200个CLK周期以内将I/O置于状态Z,加时钟后置于RST为状态L,并保持400个CLK周期。

然后将RST置为H,在RST置为L结束后的400到40000个CLK周期里CARD将应答复位,否则接口释放电路。

2)热复位:冷复位是在稳定的VCC和CLK期间,将RST置为L 400个CLK周期,在RST的上升沿后的400到4000个CLK周期里接口设备的I/O将受到复位应答,否则接口释放电路。

3、时钟停止将I/O置为状态Z 1860个CLK周期。

时钟周期将停止4、电路释放1)RST置为状态L2)CLK置为状态L3)VPP释放(如果已经激活)4)I/O置为状态A5)VCC释放二、字符场1、字符场由是个时刻组成分别是m1~m10。

1)M1为开始位,为L2)M2~m9为数据编码位3)M10为效验位。

4)两个连续的字符之间有一个至少保持12个ETU的延时接收方应在0.7ETU之前确认开始位,在1.5+-0.2个ETU开始接收m2,在在8.5+-0.2个ETU开始接收m9。

在9.5+-0.2个ETU接收效验位。

2、差错信号和字符重发当字符效验错误时,接收方将发送一个差错信号到I/0电路上。

ISO7816-1修订

ISO7816-1修订

国际标准ISO/IEC7816-1识别卡——接触式集成电路卡第一部分:物理特性目录1. 范围 (1)2. 参考资料 (1)3. 短语和定义 (1)3.1. 集成电路integrated circuit(s) (1)3.2. 集成电路卡integrated circuit(s) card (IC card) (1)3.3. 触电contact (2)4. 物理特性 (2)4.1. 总体特性 (2)4.2. 附加特性 (2)4.2.1. 紫外线 (2)4.2.2. X射线 (2)4.2.3. 触电的表面断面 (2)4.2.4. 机械强度(卡和触点) (2)4.2.5. (触点)电阻 (2)4.2.6. 电磁干扰(磁条和集成电路之间) (3)4.2.7. 静电 (3)4.2.8. 工作温度 (3)4.2.9. 弯曲特性 (3)4.2.10. 扭曲特性 (3)前言:ISO7816由下列部分组成:——第1部分:物理特性——第2部分:触点尺寸和位置——第3部分:电信号和传输协议——第4部分:行业交换命令——第5部分:应用标识符的编号体系和注册流程——第6部分:识别数据元——第7部分:卡片结构化查询语言行业交换命令——第8部分:和安全相关的行业命令——第9部分:附加的行业命令和安全属性——第10部分:同步卡的电信号和复位应答1. 范围本部分规定了接触式集成电路卡的物理特性,可以适用于符合ISO/IEC7811-1到ISO/IEC7811-6标准的有凸印和磁条的ID-1型卡片。

本部分标准适用于和电触电有物理界面的卡片,并不定义卡片内部集成电路的特性、数量和位置。

注意:将来可能开发的其它类型的卡片类型和界面将可能附加到本部分中或者放在其它准备好的国际标准中。

2. 参考资料ISO/IEC 7810:1995,识别卡——物理特性ISO/IEC 7811-1:1995,识别卡——记录技术——部分1:凸印ISO/IEC 7811-2:1995,识别卡——记录技术——部分2:磁条ISO/IEC 7811-3:1995,识别卡——记录技术——部分3:ID-1型卡片上凸印字符的位置ISO/IEC 7811-4:1995,识别卡——记录技术——部分4:只读磁条位置:磁条1和2ISO/IEC 7811-5:1995,识别卡——记录技术——部分5:可读写磁条位置:磁条3ISO/IEC 7811-6:1996,识别卡——记录技术——部分6:磁条——高密度ISO/IEC 7813:1995,识别卡——金融交易卡ISO/IEC 10373:1993,识别卡——测试方法3. 短语和定义以下定义短语和定义适用于本标准3.1. 集成电路integrated circuit(s)设计用于完成处理和/或存储功能的电子器件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一部分:卡的电气特性一、卡的触点分配IC卡触点的分配遵循ISO7816-2的规定,如下所示:二、卡的电气特性1、测量约定所有测量均应在IC卡和接口设备(IFD)之间的触点上进行,并以GND为参照。

环境温度范围为0℃~50℃。

所有流入IC卡的电流均为正值。

2、输入/输出(I/O)该触点作为输入端(接收模式)从终端接收数据或者作为输出端(传输模式)向终端传送数据。

在操作过程中,IC卡和终端不能同时处于传输模式,若万一发生此情况,I/O触点的状态(电平)将处于不确定状态,但不应损坏IC卡。

(1)接收模式在接收模式下,当电源电压(VCC)在第6中所规定的范围内时,IC卡应能正确的解释来自终端的信号,其特性如表2所示:表2 接收模式下的I/O的电气特性(2) 传输模式在传输模式下,IC卡向终端传送数据,其特性如表3所示:表3 传输模式下的I/O的电气特性除向终端传送数据外,IC卡应将其I/O信号驱动模式设置为接收模式,且不要求I/O具备任何电流源性能。

3、编程电压(Vpp)IC卡不需要编程电压Vpp。

4、时钟(CLK)当VCC在第6中所规定的范围内时,IC卡将在具有表4所示特性的时钟信号作用下正常工作。

表4 CLK的电气特性当时钟占空因数处于其稳定运行周期的44%~56%之间时,IC卡应能正常工作。

当时钟频率处于1MHZ到5MHZ之间时,IC卡应能正常工作。

注:在卡片操作过程中,频率值将由终端维持在复位应答期间所用频率的±10%之内。

5、复位(RST)当VCC在第6中所规定的范围内时,IC卡应能正确的解释具有表5所示电气特性的复位信号。

表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所示:表7 传输模式下的I/O的电气特性(2)接收模式在接收模式下,终端应能正确的解释从IC卡发来的具有表8所示特性的信号。

表8 接收模式下的I/O的电气特性3、编程电压(VPP)终端不产生编程电压VPP。

4、时钟(CLK)终端将产生一个具有表9所示特性的时钟信号:表9 CLK的电气特性频率范围在1MHZ~5MHZ之间,且在整个交易期间,其变化范围不超过±1%(见卡的操作过程)。

时钟占空因数应在其稳定运行周期的45%~55%之间。

5、复位(RST)终端产生一个具有表10所示特性的复位信号:表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,但触点还没有进行物理接触时,终端必须确保所有触点都处于低电平状态(V OL值应满足终端电气特性的规定(一般为0~0.4V),而V CC小于或等于0.4V或0.4V 以下)。

当IC卡按插入的方向置入时,IFD应能检测它是否定位在标准的正确位置,即IFD 触点的中心恰好和IC触点的中心相重合的位置,允许误差为±0.5mm。

当IFD检测到IC卡是处在这个范围内时,且所有的触点都已接触上,其激活过程如下(如图1-4所示):1、终端在整个激活过程中始终保持RST(复位Reset)为低电平状态;2、触点物理接通后,应在I/O或CLK(时钟Clock)激活之前给V CC加电;3、终端确认V CC稳定在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卡得到一个复位应答,过程如下:●从T0时刻起,终端施加CLK;●在T0后不超过200个时钟周期内,IC卡必须将其I/O线置为接收方式。

由于终端也必须在这段期限内置其I/O线驱动器为接收方式,所以I/O线在T0后最迟不超过200个时钟周期的时间内置为高电平。

为此,终端的I/O触点应经过一个上拉电阻接到V CC;●终端应从T0开始保持RST端为低电平状态,并在从T 0开始到T 1后的40,000至45,000个时钟周期内将RST置为高电平;●IC卡上I/O的复位应答将在T 1时刻后的400至40,000个时钟周期内开始;●如果IC卡未在这段时间内进行复位应答,则终端必须启动一个触点释放时序。

(2)热复位IC卡对终端的复位应答有着规定的规格和内容(详见后述),如果终端收到的复位应答不符合规定要求时,终端将启动一个热复位并从IC卡获得复位信号。

过程如下:●热复位从时刻T 0‘开始,此时终端置RST为低电平状态;●在整个热复位过程中,终端应保持V CC和CLK稳定并符合上一部分的规定;●在T 0‘之后的最多200周期内,IC卡和终端都必须置I/O为接收方式,即I/O线在T 0‘后最迟不超过200个时钟周期内置为高电平;●终端应从T 0‘开始保持RST为低电平状态,并在T 0‘至T 1‘后的40,000到45,000个时钟周期内将RST端置为高电平状态。

●IC卡上I/O的复位应答将在T 1‘后的400至40,000个时钟周期内开始;●如果IC卡未在这段时间内进行复位应答,则终端必须启动一个触点释放时序。

4、执行交易IC卡的应用选择以及其后在IC卡与终端间的信息交换都是执行一项交易所必不可少的,详情将在以后叙述。

5、触点释放序列作为用卡过程的最后一个步骤,不论交易是正常或异常结束(包括用卡过程中从IFD 取回IC卡),终端必须按以下步骤释放IFD的触点。

●终端以置RST为低电平状态来开始触点释放序列;●在置RST为低电平状态之后且Vcc断电之前,终端将CLK和I/O也置为低电平;●最后,在实际断开触点之前,终端必须先将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区间内被接收。

相关文档
最新文档