IC卡通信协议详解(7816-3)
7816-3学习资料
作用:本部分规定了电源、信号结构以及集成电路卡和接口设备(例如终端)之间的信息交换。
本部分还包括信号速率、电压电平、电流数值、奇偶约定、操作规程、传输机制以及与卡的通信。
表示符号:状态H 高状态逻辑电平状态L 低状态逻辑电平状态Z 标记或高状态状态A 空位或低状态触电信号:GND 地,参考电压VCC 电源输入(A类:5V;B类:3V)I/O 串行数据的输入/输出CLK 时钟信号输入RST 复位信号输入VPP 编程电压输入,由卡选用选择类别流程图触点说明VCC:电压和电流值定义条件:环境温度:0~50℃I/O:输出/入接口用作输入(接收模式)或输出(发送模式),有以下两种逻辑状态:——状态Z,如果卡和接口设备处于接收模式或者该状态由发送方强制。
(高状态)——状态A,如果这个状态是由发送方强制。
(低状态)CLK:时钟信号特性:在稳定工作期间,时钟信号占空比应为40%~60%RST:复位该触点用来向卡提供复位信号。
有冷复位和热复位两种方式冷启动热启动VPP:编程电压在A类操作下,向卡提供为了写或擦除内部非易失性存储器所要求的编程电压。
在B类操作下,留待后用。
触点VPP有两种激活状态:暂停状态和编程状态。
除非卡要求编程状态,接口设备应将触点VPP保持在暂停状态。
卡操作规程概述接口设备和卡之间交互应通过下列条款规定的连续操作来进行。
——接口设备激活电路;——卡和接口设备之间的信息交换总是起始于卡对冷复位的应答;——接口设备停活电路。
激活为启动与机械上连接的卡交互,接口设备应按以下所示次序来激活电路:——将RST置为状态L(低状态);——选择操作条件:A类或B类,VCC被加电;——将接口设备上的I/O置于接收模式;——在A类条件下,VPP应置于暂停状态(见4.3.6);在B类条件下,VPP保留待将来使用;——应为CLK提供时钟信号(见4.3.4)。
至少在复位应答期间,时钟的频率f应在以下范围内:●1~5MHz,A类,或●1~4MHz,B类。
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中描述的金融交易卡的全部尺寸要求也应适用于这类卡。
智能卡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协议
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协议的主要应用之一。
IC卡7816协议
1
目
次 3 3 3
1 主要内容 2 参考资料 3 定义 4 缩略语和符号表示 5 物理特性 卡上信息记录方法和物理接口要求 6 电特性 7 卡的操作过程 8 复位应答
6
IFSI 整型信息域尺寸 INF 信息域 LEN 长度 LRC 纵向冗余检验 NAD 节点地址 OSI 开放系统互连 PCB 协议控制字节 R-block 接收准备块 R 接收准备 SAD 源节点地址 S-block 管理块 WTX 扩展等待时间 XOR 异或 APDU 应用协议数据单元 ATR 复位应答 CLA 类字节 DIR 目录 DF 专用文件 EF 基本文件 FCI 文件控制信息 FCP 文件控制参数 FMD 文件管理数据 INS 指令字节 MF 主文件 P1-P2 参数字节 PTS 协议类型选择 RFU 留待将来使用 SM 安全报文处理 SW1-SW2 状态字节 TLV 标记 长度 值
GB/T 16649.3 – 1996 识别卡- 带触点的集成电路卡- 第3部分: 电信号和传输 协议 ISO/IEC 7816 – 4 1995 识别卡- 带触点的集成电路卡- 第4部分: 交换用行业 间指令 ISO/IEC 7816 – 5 199 5 识别卡- 带触点的集成电路卡- 第5 部分: 应用标识符的编号体系和注册程序. 集成电路卡注册管理办法
3
3.10 状态A State A 空位( 如ISO 1177 中定义) 3.11 XY 十六进制记数法, 等于相对于基数16 的XY 3.12 块 block 由起始域 信息域和终止域组成的连续字符 其中起始域和终止域是必需的 信息域是可选的 3.13 目的节点地址 destination node address(DNA) 节点地址子域(DNA) 的一部分, 用于标识一个块的未来接收者 3.14 终止域 epilogue field 块的最后一个域 包括差错检测编码(EDC) 字节 3.15 差错检测编码 error detection code(EDC) 差错检测的方法之一, 检测起始域和信息域的所有字符 它在终止域中被传送 3.16 域 field 定义为起始域 信息域或终止域 3.17 信息块 information block(I-block) 主要用于传输应用层信息的块 3.18 信息域 information field(INF) 含有数据( 一般为应用数据) 的块中的一个域 3.19 长度 length(LEN) 起始域中的一个子域 它指出在块的信息域中被传输的字节个数 3.20 节点地址 node address (NAD) 起始域中的一个子域 它指明某个块的目的和源节点地址以及VPP状态控制 3.21 起始域 prologue field 块的第1 个域 它包含节点地址(NAD)子域 协议控制字节(PCB)和长度(LEN) 3.22 协议控制字节 protocol control byte(PCB) 起始域中的一个子域 它包含传输控制信息 3.23 接收准备块 receive ready block (R-block) 一个包含肯定或否定确认信息的块 它包含预期的信息块(I-block)的块数 3.24 源节点地址 source node address(SAD) 节点地址(NAD) 子域的一部分, 用于指定块的发送方 3.25 子域 subfield 一个域中的一种功能成分 3.26 管理块 supervisory block(S-block) 包含传输控制信息的块 3.27 传输控制 transmission control 控制接口设备(IFD) 和集成电路卡(ICC) 之间进行数据传输 它包含VPP状态控 制 块顺序传输控制 同步以及传输差错的校正 3.28 复位应答文件 Answer-to-Reset file 指示卡操作特性的基本文件 3.29 指令应答对 command- 响应 pair 两种信报的组合, 一个指令跟着一个响应
LTE-ISOIEC78163串行通信协议的FPGA实现
ISO/IEC7816-3串行通信协议的FPGA实现1 引言随着导航定位中数据安全要求的不断提高,导航数据加密越来越普遍,因此用于数据解密运算的SIM卡得以大量应用。
把DSP中解调数据输入到SIM卡中进行解密,就需要转换设备把DSP并行数据转换成符合ISO/IEC7816-3串行通信协议能被SIM正确接收的串行数据,转换没备还需要把SIM卡返回数据转换成并行数据写入DSP进行处理。
另外,随着FPGA在性能资源的不断提高,他在导航方面开始崭露头角。
由于FPGA具有可重构、可综合优化等优点,所以选用FPGA实现DSP到SIM间的数据通信是一个比较理想的方案。
2 ISO/lEC7816-3串行通信协议ISO/IEC7816-3规定了IC卡的电气特性和传输协议。
由接口设备给IC卡提供电源、复位信号和时钟,卡和接口设备间通过I/O端口进行串行通信。
I/O端口共存在两种状态:发送状态和接收状态。
IC卡根据通信协议可分为接触式和非接触式两种。
接触式IC卡主要采用T=0和T=1通信协议。
T=0是异步半双工字符传输协议,T=1是异步半双工块传输协议。
接触式IC卡以图1所示的字符帧方式传输。
串行通信是按位传送的,每位信息宽度定义为基本时间单位ETU(Elementary Time Unit)。
在复位应答期间的信息宽度为“初始ETU”,为372个时钟周期。
复位应答后的信息宽度称为“当前ETU”,计算公式为:其中:F是时钟频率变换因数,D是比特率调整因数,f是时钟频率。
在本方案的设计中,对协议规定字符帧格式的校验位做了调整,在本设计中以“0”为帧起始位,以“1”作为结束位。
从高电平的结束位到低电平的起始位能确保字符帧正确地传输。
3 用FPGA实现DSP与SIM卡间串行通信的方案DSP与SIM卡间串行通信实现原理图如图2所示。
由图2可知,DSP通过I/O控制、并/串转换和串/并转换完成对SIM卡的信息读写。
在此系统中,两个转换起到最主要的作用,他们完成并行信息和符合串行协议的串行信息间的转换。
7816协议标准
7816协议标准7816协议标准,也被称为智能卡通信协议,是用于智能卡与读卡器之间通信的国际标准。
随着智能卡技术的不断发展和应用场景的扩大,7816协议标准成为智能卡领域中的重要参考依据。
本文将详细介绍7816协议标准的基本概念、结构以及其在智能卡领域中的应用。
一、7816协议标准的基本概念7816协议标准是由国际电信联盟(ITU-T)制定的一项通信协议,旨在规范智能卡与读卡器之间的数据交互过程。
它定义了智能卡的物理特性、电气特性、传输协议等方面,为智能卡的设计、制造和应用提供了统一的技术规范。
二、7816协议标准的结构7816协议标准由几个部分组成,包括物理特性、电气特性、传输协议和命令APDU结构。
1.物理特性:规定了智能卡的外观尺寸、接口类型、连接方式等方面的内容。
其中,常用的智能卡接口有ISO/IEC 7816-1规定的ID-1尺寸接口和ISO/IEC 7816-2规定的ID-000尺寸接口。
2.电气特性:定义了智能卡与读卡器之间的电气连接方式、电气特性参数等内容。
这些参数包括供电电压范围、通信电压范围、电流消耗等。
3.传输协议:规定了智能卡与读卡器之间的数据传输方式和协议。
其中,常用的传输协议有T=0协议和T=1协议。
T=0协议是一种异步串行传输协议,每次传输一个字符;T=1协议是一种同步传输协议,将数据划分为块进行传输。
4.命令APDU结构:定义了智能卡与读卡器之间的命令和应答传输格式。
命令APDU由指令头和指令数据组成,用于向智能卡发送命令,并接收智能卡的应答。
三、7816协议标准在智能卡领域中的应用7816协议标准在智能卡领域中得到广泛应用,主要体现在以下几个方面:1.金融领域:智能卡在银行卡、电子钱包和支付领域的应用日益增多。
7816协议标准为安全的金融交易提供了技术支持,确保用户的账户信息和资金安全。
2.电信领域:智能卡作为移动通信和物联网领域中的重要组成部分,扮演着存储用户信息和提供身份认证的角色。
7816-3协议使用说明
内部资料注意保密设计代码名称7816(仅供内部使用)文档作者孙昊日期2008-7-22审核日期批准日期北京中电华大电子设计有限责任公司二○○八年文档修改履历目录1 卡的操作过程 (5)2 复位应答 (6)2.1 概述 (6)2.2 复位应答结构 (8)2.2.1 初始字符和编码约定 (8)2.2.2 格式字节T0 (8)2.2.3 接口字节TA(i) TB(i) TC(i) TD(i) (9)2.2.3.1 TD(i) (9)2.2.3.2 TA(i) TB(i) TC(i) (10)2.2.3.3 历史字节T1, (11)2.2.3.4 校验字节TCK (11)2.2.4 ATR示例 (11)2.3 参数T (12)2.4 异步字符 (12)2.4.1 基本时间单元 (12)2.4.2 字符帧 (12)2.5 错误处理 (13)3 PPS (14)3.1 概述 (14)3.2 PPS结构 (14)3.3 成功的PPS交换 (15)3.4 错误处理 (16)4 T = 0 ,异步半双工字符传输协议 (16)4.1 APDU结构 (16)4.2 过程字节 (18)4.2.1 概述 (18)4.2.2 发送“60” (19)4.2.3 确认字节 (19)4.2.4 状态字节 (19)4.3 错误处理 (20)4.4 APDU示例 (20)5 T=1异步半双工块传输协议 (21)5.1 块帧 (21)5.1.1 概述 (21)5.1.2 起始域 (22)5.1.2.1 节点地址字节 (22)5.1.2.2 协议控制字节 (22)5.1.2.3 长度(LEN) (23)5.1.3 信息域(INF) (24)5.1.4 终止域 (24)5.2 协议参数 (24)5.2.1 T = 1 时的特殊接口字节 (24)5.2.2 信息域尺寸 (24)5.2.2.1 卡的信息域尺寸(IFSC) (24)5.2.2.2 接口设备的信息域尺寸IFSD (24)5.2.2.3 IFSC和IFSD的编码 (24)5.2.3 等待时间 (25)5.2.3.1 字符等待时间CWT (25)5.2.3.2 块等待时间(BWT) (25)5.2.3.3 块保护时间(BGT) (26)5.2.4 错误检测编码 (26)5.3 T=1 ATR的示例和块的示例 (26)5.4 错误处理 (27)5.5 T=0与T=1的比较 (27)1卡的操作过程Array在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的异或值
IC卡7816协议
在等类分类中,仅优先一个给定文件的专用文件 3.40 口令 password
一个应用可能需要的代表卡的用户的数据 3.41 路径 path 没有定界的文件标识符的连接 如果路径以主文件的识别符开始, 它就是一个 路径 3.42 提供者 provider
除文件控制参数(例如:终止数据,应用标签)以外的任何文件信息 3.36 内部基本文件 internal elementary file
用于存储由卡解释的数据的基本文件 3.37 主文件 master file
强制性和唯一被指定的文件,它代表了根目录下的文件结构 3.38 信报 message
COUT 输出电容
BGT 块保护时间
BWI 块等待时间整数值
BWT 块等待时间
CRC 循环冗余检验
CWI 字符等待时间整数值
CWT 字符等待时间
DAD 目的节点地址
以下缩略语适用于本部分
AAC
应用鉴定密码
AC
访问条件
AC
应用加密
ACK
确认
AID
应用标识
APDU
应用协议数据单元
ARQC
授权请求密码
ASC
应用专用指令集
ATC
应用交易序号
ATR
复位应答
BCD
二进制编码的十进制
VIH 高电平输入电压 来自VIL 低电平输入电压
7
5 物理特性 附加信息记录方法和接口要求
符合本规范的集成电路卡应遵守ISO/IEC 7816系列标准中的有关规定
2
1 主要内容 本规范的这一部分规定了 ID-1 型带触点集成电路卡的基本技术要求 主要包括以下
7816协议
7816协议7816协议是指智能卡的物理和通信规范,主要用于描述智能卡与终端设备之间的通信方式和数据交互协议。
该协议的制定旨在确保智能卡可以与各种设备进行兼容性通信,并保护智能卡内的数据安全。
7816协议规定了智能卡与终端设备之间的电气特性和信号传输规范。
智能卡采用金属接触片作为物理接口,与终端设备通过金属接触进行电气连接。
根据协议规定,智能卡的接触片要符合一定的尺寸、排列和电气特性要求,以便与终端设备的读卡器插槽进行互联。
7816协议也规定了智能卡与终端设备之间的通信协议。
智能卡与终端设备之间的通信采用半双工方式进行,即智能卡和终端设备分别使用不同的通信通道进行数据的发送和接收。
协议规定了数据传输的时序、位传输速率和错误检验等方面的要求,确保数据的可靠传输和完整性。
在数据交互方面,7816协议定义了指令和响应的格式。
通常,终端设备向智能卡发送指令,智能卡接收并执行该指令,然后再向终端设备返回执行结果或响应。
指令和响应的格式采用了特定的结构和编码方式,以确保数据的有效传输和正确解析。
在安全性方面,7816协议规定了智能卡与终端设备之间的数据传输和存储的安全性要求。
协议要求智能卡支持数据加密和解密算法,以提供对敏感数据的保护。
协议还规定了对智能卡的访问控制和密钥管理等方面的要求,以确保只有授权用户才能对智能卡进行操作和访问。
总的来说,7816协议是一种使用广泛的智能卡通信和数据交互协议,通过定义智能卡的物理接口、通信方式和数据格式,确保了智能卡与终端设备之间的兼容性和安全性。
该协议在金融、电信、交通等领域得到广泛应用,为智能卡的普及和应用提供了重要的技术支持。
IC卡通信协议详解(7816-3)
目录第一章IC卡通信过程整体归纳 (1)第二章IC卡的电气特性 (3)1.IC卡的触点分配 (3)2.IC卡的电气特性 (3)2.1 VCC (3)2.2 I/O (3)2.3 CLK (3)2.4 RST (3)2.2 VPP (3)第三章IC卡的操作过程 (4)1、IC卡操作的一般过程 (4)2、卡激活 (4)3、冷复位 (4)4、热复位 (5)5、时钟停止 (6)6、去激活 (6)第四章复位应答 (8)1、异步字符 (8)1.1 字符结构 (8)1.2 错误信号和字符副本 (8)2、复位应答 (9)2.1 复位应答的序列配置 (9)2.2 复位应答的结构和内容 (11)第五章协议和参数选择 (14)1.PPS协议 (14)2.PPS请求的结构和内容 (14)3.成功的PPS交换 (14)第六章异步半双工字符传输协议 (16)1、命令的结构和处理 (16)2、过程字节 (16)3、NULL字节 (16)4、确认字节 (16)5、状态字节 (17)第七章异步半双工块传输 (18)1.数据块块帧结构 (18)2.起始域 (18)3.信息域 (18)4.终止域 (19)5.信息域尺寸 (19)6.等待时间 (19)7.数据链路层字符成分 (20)8.数据链路层块成分 (20)9.链接 (20)第一章IC卡通信过程整体归纳根据协议,IC卡的操作信息交互流程大概为(见图1):(1)接口设备能够控制IC卡各IO引脚使其激活。
(2)接口设备给卡发送复位信号使卡复位启动。
(3)卡要向接口设备发送复位应答信号,将通信中必要的相关信息告知接口设备。
(4)接口设备对卡进行一次热复位,卡进行复位应答。
(5)接口设备发起一个PPS交互指令,选择要与卡通信的协议和相关参数。
(6)根据选择的协议(T=0或T=1)进行数据的通信。
以后各章节将根据此流程,对IC卡协议的各部分主要内容进行归纳总结。
第二章IC卡的电气特性1.IC卡的触点分配根据ISO7816-2的规定,IC卡至少应该分配下面的几个引脚:I/O—串行输入输出CLK—时钟信号RST—复位信号VCC—供电电压,5VGND—接地引脚,电压参考点VPP—编程电压输入,可选2.IC卡的电气特性2.1 VCC在A类工作条件下,VCC的取值范围为4.5V—5.5V,最大允许电流为60mA。
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传输协议的理解和
掌握是非常重要的。
只有深入了解协议的规范和要求,才能设计和实现出
性能稳定、安全可靠的智能卡产品,提高智能卡的应用范围和使用效果。
智能IC卡的传输协议
智能IC卡的传输协议IC卡支持两种传输协议:同步传输协议和异步传输协议。
同步传输协议在ISO/IEC7816-10中定义,适用于逻辑加密卡;异步传输协议在ISO/IEC7816-3中定义,适用于内含微处理器的智能卡。
ISO/IEC7816-3标准提供了多种传输协议,这些协议均以“T=序列号”来命名,主要采用两种通信协议:T=0和T=1通信协议。
T=0是异步半双工字符传输协议,T=1是异步半双工块传输协议。
一、卡的复位操作完整的IC卡操作过程包括IC卡插入接口设备、卡和接口设备的信息交换、IC卡从接口设备拔出等所有操作。
一个正常的操作过程按以下步骤完成:1)接口设备连接卡并激活电路。
2)卡的冷复位。
3)卡对复位的应答。
4)卡和接口设备间交换信息。
5)接口设备释放电路。
6)从接口设备中取出IC卡。
IC卡利用激活的复位信号,采用异步方式进行复位应答,其复位方式有两种:冷复位和热复位。
1、冷复位当接口设备激活电路后,RST为L状态,VCC加电,接口设备的I/O口线处于接收方式,提供稳定的CLK,此时IC卡就处于冷复位状态。
在冷复位前IC卡内部状态是未定义的。
冷复位的时序如下图所示:▲冷复位在Ta时刻加CLK信号;I/O口线应在时钟信号加于CLK的200个时钟周期(ta)内被卡置为H状态;时钟信号加于CLK后,RST应至少保持400个时钟周期(tb)的L状态,当RST为L状态时,接口设备会忽略I/O口线上的状态。
在时刻Tb,RST被置为H状态,I/O口线上的应答应出现在RST 信号上升沿后的400~40000个时钟周期(tc)。
当RST处于H状态时,如果应答信号在40000个时钟周期内仍未开始,接口设备将释放电路。
2、热复位当VCC和CLK保持稳定时,接口设备置RST为状态L至少400时钟周期(时间te)后,接口设备启动热复位,如下图所示:▲热复位在时间Td,RST置于H状态。
I/O应答应在RST信号上升沿之后的400~40000个时钟周期(tf)之前开始。
一种实现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]
发送正常。超时、校验失败等错误判断信号发送至中断模块, 中断模块采用共享中断线区分中断号的方法上报给上位机, 上位机根据不同的中断号作出响应。
iso78163协议
竭诚为您提供优质文档/双击可除iso78163协议篇一: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所示特性的时钟信号作用下正常工作。
表4clk的电气特性当时钟占空因数处于其稳定运行周期的44%~56%之间时,ic卡应能正常工作。
当时钟频率处于1mhz到5mhz之间时,ic卡应能正常工作。
注:在卡片操作过程中,频率值将由终端维持在复位应答期间所用频率的±10%之内。
5、复位(Rst)当Vcc在第6中所规定的范围内时,ic卡应能正确的解释具有表5所示电气特性的复位信号。
表5Rst的电气特性ic卡将利用激活的低复位信号,采用异步方式进行复位应答。
6、电源电压(Vcc)在电源电压Vcc为5V±0.5V直流电的情况下,ic卡应能正常工作。
此时,时钟频率应在第4中所规定的范围内。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录第一章IC卡通信过程整体归纳 (1)第二章IC卡的电气特性 (3)1.IC卡的触点分配 (3)2.IC卡的电气特性 (3)2.1 VCC (3)2.2 I/O (3)2.3 CLK (3)2.4 RST (3)2.2 VPP (3)第三章IC卡的操作过程 (4)1、IC卡操作的一般过程 (4)2、卡激活 (4)3、冷复位 (4)4、热复位 (5)5、时钟停止 (6)6、去激活 (6)第四章复位应答 (8)1、异步字符 (8)1.1 字符结构 (8)1.2 错误信号和字符副本 (8)2、复位应答 (9)2.1 复位应答的序列配置 (9)2.2 复位应答的结构和内容 (11)第五章协议和参数选择 (14)1.PPS协议 (14)2.PPS请求的结构和内容 (14)3.成功的PPS交换 (14)第六章异步半双工字符传输协议 (16)1、命令的结构和处理 (16)2、过程字节 (16)3、NULL字节 (16)4、确认字节 (16)5、状态字节 (17)第七章异步半双工块传输 (18)1.数据块块帧结构 (18)2.起始域 (18)3.信息域 (18)4.终止域 (19)5.信息域尺寸 (19)6.等待时间 (19)7.数据链路层字符成分 (20)8.数据链路层块成分 (20)9.链接 (20)第一章IC卡通信过程整体归纳根据协议,IC卡的操作信息交互流程大概为(见图1):(1)接口设备能够控制IC卡各IO引脚使其激活。
(2)接口设备给卡发送复位信号使卡复位启动。
(3)卡要向接口设备发送复位应答信号,将通信中必要的相关信息告知接口设备。
(4)接口设备对卡进行一次热复位,卡进行复位应答。
(5)接口设备发起一个PPS交互指令,选择要与卡通信的协议和相关参数。
(6)根据选择的协议(T=0或T=1)进行数据的通信。
以后各章节将根据此流程,对IC卡协议的各部分主要内容进行归纳总结。
第二章IC卡的电气特性1.IC卡的触点分配根据ISO7816-2的规定,IC卡至少应该分配下面的几个引脚:I/O—串行输入输出CLK—时钟信号RST—复位信号VCC—供电电压,5VGND—接地引脚,电压参考点VPP—编程电压输入,可选2.IC卡的电气特性2.1 VCC在A类工作条件下,VCC的取值范围为4.5V—5.5V,最大允许电流为60mA。
在B类工作条件下,VCC的取值范围为2.7V—3.3V,最大允许电流为50mA。
当时钟信号停止时,电流为0.5mA。
2.2 I/O此引脚有两种逻辑电平状态:state A(低电平)和state Z(高电平)。
State Z——当卡和接口设备都处于接收模式时处于此态,或是由传输方所施加的State A——是由传输方所施加的当卡和接口设备都处于接收模式时,数据线应该保持为Z态;当卡和接口设备处于不匹配模式时,数据线的状态为未知;卡和接口设备不能同时处于发送模式。
2.3 CLK在A类工作条件下,时钟信号频率范围为1-5MHz;在B类工作条件下,时钟信号频率范围为1-4MHz;在稳定操作期间,时钟信号的占空比为40%到60%。
在没有信息交互时,可以改变时钟信号的频率,建议在以下两种时间段改变时钟频率:——复位应答后——在一个成功的PPS交互之后2.4 RST此引脚用于对卡进行复位操作(冷复位和热复位)。
2.2 VPP在B类操作条件下,此引脚不可用。
在A类操作条件下,此引脚被用于提供写和擦出卡内部非易失性存储器的编程电压。
有两种状态:停止状态和编程状态。
除非卡需要编程电压,否则接口设备应该保持此引脚在停止状态。
第三章IC卡的操作过程1、IC卡操作的一般过程当卡的触点物理的连接到接口设备的触点时,电路才能运行。
卡和接口设备之间的交互有一下步骤:——接口设备要激活IC卡——卡和接口设备之间的信息交互由卡的冷复位应答所发起——接口设备对卡去激活,即停用在由接口设备发起的去激活动作结束之后,才能断开卡和接口设备之间的物理连接。
2、卡激活为了与一个已经物理的连接的卡发起交互,接口设备需要通过下面的操作激活卡。
——RST置成L——VCC上电——接口设备上I/O置成接收模式——在A类操作条件下,VPP应该置为停止状态;在B类操作条件下,不接VPP——CLK将要被给一个时钟信号。
3、冷复位图2激活结束后(RST在L状态,VCC上电,接口设备I/O在接收模式,CLK有一个适合的并且稳定的时钟信号),卡已经准备好冷复位。
在冷启动之前,卡的内部状态没有定义。
接口设备将发出一个冷复位信号,并从IC卡得到一个复位应答,过程如下:从T a时刻起,接口设备施加CLK。
●在T a后不超过200个时钟周期内,IC卡必须将其I/O线置为接收方式。
由于接口设备也必须在这段期限内置其I/O线驱动器为接收方式,所以I/O线在T a后最迟不超过200个时钟周期的时间内置为高电平。
为此,接口设备的I/O触点应经过一个上拉电阻接到V CC。
●接口设备应从T a开始保持RST端为低电平状态至少400个时钟周期,并在T b将其置为高电平;●IC卡上I/O的复位应答将在T b时刻后的400至40,000个时钟周期内开始;●如果IC卡在RST被拉高后的40000个时钟周期内没有应答,则RST将被拉低并且卡将被去激活。
4、热复位图3IC卡对终端的复位应答有着规定的规格和内容(详见后述),如果终端收到的复位应答不符合规定要求时,终端将启动一个热复位并从IC卡获得复位信号。
过程如下:●在VCC和CLK信号保持稳定后,接口设备通过拉低RST发起热复位,RST低电平至少要持续400个时钟周期;●在Tc之后的最多200周期内,IC卡和接口设备都必须置I/O为接收方式,即I/O线在Tc后最迟不超过200个时钟周期内置为高电平;●接口设备在RST保持低电平大于400个时钟周期后,将其拉高;●IC卡上I/O的复位应答将在T后的400至40,000个时钟周期内开始;如果IC卡在RST被拉高后的40000个时钟周期内没有应答,RST将被拉低并且卡将被去激活;5、时钟停止图4对于支持时钟停止的卡,当接口设备认为没有来自卡的传输并当I/O已经保持在H至少1860时钟周期(延时tg),在VCC上电并且RST在H时,接口设备可以对于CLK(Te)进行时钟停止。
当时钟停止时(在Te~Tf),根据已被确定好的时钟指示器X ,CLK将要继续保持在在H或是在L。
时钟指示器X的值应在复位应答序列TA(i)当中设置。
在Tf,接口设备重启时钟,在至少700时钟延时后(th),在I/O的信息交换可以继续。
6、去激活图5当信息交换被完成或者被终止(例如卡没有应答,或检测到卡的移动),接口设备将按照下面的序列停用IC卡:——将RST 置L——将CLK置L(除非时钟停止在L状态)——将VPP去激活——将I/O置L——将VCC去激活第四章 复位应答1、异步字符1.1 字符结构在字符传输之前,I/O 应该处于高电平。
一个字符由10个连续的时段组成,每一个时段为高电平或低电平。
图6——第一个时段m1为低电平,为起始时段——中间8个时段(2到9)为要发送的一个字符 ——最后一个时段m10为奇偶校验位每一个时段持续时间为一个etu 。
如果在一个时段mn 的结尾状态改变,那么这个字符的起始边沿到mn 的结束边沿之间的延时为(n ±0.2)etu 。
接受方对I/O 进行定期采样,采样时间不少于0.2etu 。
接收方必须在((n-1)+0.5±0.2)个etu 内确认相应的时段mn 。
两个连续字符的起始边沿之间的延时至少为12etu 。
这包括一个字符的持续时间和保护时间。
在保护时间内卡和接口设备都处于接收模式,即高电平状态。
在复位应答期间,两个被卡发送的连续字符的起始边沿之间的延时不能超过9600etu 。
这个最大值被称为是初始等待时间。
1.2 错误信号和字符副本图7当奇偶校验不正确时,接收方会在接收时间的第(10.5±0.2)etu 通过拉低I/O 线发送错误信号,错误低电平信号会持续1到2个etu 的时间。
然后接收方将等待着这个字符的重发。
发送方会在发送时间的第(11±0.2)etu 检测I/O 状态: ——如果I/O 为高电平,则认为字符已被正确接受——如果I/O 为低电平,则认为接受不正确。
在检测到错误后至少两个etu 的延时后,发送方将重发这个字符。
如果卡中没有可提供的副本,重发将被忽略并且卡不会因为接口设备所发的错误信号而遭到损坏。
接口设H LDelay between consecutive characters备应该发起一个全局的复位。
2、复位应答2.1 复位应答的序列配置IC卡被接口设备复位后,用一串称之为复位应答(A TR-Answer To Resest)的字节序列应答。
这些字节传达给接口设备的信息规定了IC卡和接口设备之间要建立的通讯的某种特性图8每一个成功的复位应答信号都由一个起始字符跟随最多32个字符序列构成:TS——起始字符用于设置其后各字符的解码规则T0——格式字符用于指明接口字符的出现与历史字符的数目TA(i) TB(i) TC(i) TD(i)——接口字符用于设置与接口设备通信的相关参数T1 T2…TK——历史字符用以指示一些通用的信息,如IC卡生产厂商、嵌入的芯片、文件状态等TCK——校验字符用于检测复位应答信号的正确性。
2.2 复位应答的结构和内容下面将对各字符所要表示的内容进行详细归纳:2.2.1 TS——起始字符TS执行两项功能:●向终端提供了一个已知的位组合模型,以便于同步;●提示所用逻辑约定,以便对后继的字符进行解释。
IC卡必须以下列二值之一来回送TS反向约定(H)LHHLLLLLLH,其值为“3F”。
用1表示低电平,m2为最高有效位;正向约定(H)LHHLHHHLLH,其值为“3B”。
用1表示高电平,m2为最低有效位;2.2.2 T0——格式字符T0由两部分组成:——高四位(b5-b8)称之为Y1,用来指示后继字符TA1至TD1是否存在,b5-b8位被置为逻辑“1“状态者,相应地表明TA1至TD1的存在。
——低四位组(b1-b4)称之为K,则表明历史字节存在的数量(0-15)。
2.2.3TAi、TBi、TCi、TDi(i=1、2、3……)——接口字符TAi、TBi、TCi(i=1、2、3……)指明了协议参数。
2.2.3.1TDiTD(i)指明协议类型和是否存在后续接口字符,TDi包括Yi+1和T两部分。
——Yi+1为高四位组,分别表示后续接口字符TAi+1、TBi+1、TCi+1、TDi+1是否存在。
——T为低四位组,表示后续发送的协议类型。
TA1、TB1、TC1、TB2是全局性接口字符,其余的TAi、TBi、和Tci是专用接口字符,它们的解释取决于TDi-1中的T所指明的协议类型。