440 likes | 553 Views
第 9 章 IC 卡的接口设备. 本章主要内容. 9.1 IC 卡接口设备的组成 9.2 IC 卡适配插座( IC 卡座) 9.3 IC 卡的接口电路和读写控制 9.4 IC 卡的应用设备 9.5 读写器(接口设备)规范. 9.1 IC 卡接口设备的组成. IC 卡接口设备(又称读写器 / 读写机具),是连接 IC 卡和应用系统的桥梁。. 9.1.1 IC 卡接口设备的基本功能. IC 卡插入 / 退出的识别与控制(接触式卡) IC 卡进 / 出 RF 区的识别和控制(非接触式卡)
E N D
本章主要内容 9.1 IC卡接口设备的组成 9.2 IC卡适配插座(IC卡座) 9.3 IC卡的接口电路和读写控制 9.4 IC卡的应用设备 9.5 读写器(接口设备)规范
9.1 IC卡接口设备的组成 IC卡接口设备(又称读写器/读写机具),是连接IC卡和应用系统的桥梁。 9.1.1IC卡接口设备的基本功能 • IC卡插入/退出的识别与控制(接触式卡) • IC卡进/出RF区的识别和控制(非接触式卡) • 向IC卡提供电源与时钟 • 与IC卡交换数据,并提供控制信号 • 提供加/解密处理与密钥管理机制 • 与上级设备交换数据,并提供控制信号
IC卡接口电路 IC卡适配插座 与主机信息交换的接口单元 IC卡协议实现单元 微处理器+ROM+RAM 密码运算处理单元 +EEPROM IC卡接口设备 9.1.2IC卡接口设备的组成 控制与读写单元 主机 接触式IC卡接口设备总体结构框图
输 入 输 出 微处理器 射 频 模 块 天 线 读写器 专用芯片 SHC1501 非接触式IC卡 SHC1101 读卡器 计算机 非接触式IC卡接口设备总体结构框图
9.2 IC卡适配插座(IC卡座) 接触式IC卡的适配插座是构成IC卡和IC卡接口设备间的物理连接部件。 9.2.1 IC卡适配插座的结构形式 1、触点的接触方式 滑触式结构:IC卡插入或退出时, 滑过不相关的位置,滑接在固定的位置上。 着陆式结构:IC卡插入时,触点与卡同步运动,逐 步下压,稳定在最终位置。
2、卡的进退形式 • 推入-拉出结构 • 推入-推入弹出结构 • 压入-弹出结构 • 压入-电磁弹出结构 • 电动式入出卡控制结构
9.2.2 选择IC卡适配插座的重要指标 • 触点的电气性能 • IC卡座的拔插寿命 • 对卡的磨损程度
9.3 IC卡的接口电路和读写控制 9.3.1 接触式IC卡的接口电路 IC卡的接口电路是连接IC卡和读写机具的通路,由它实现对IC卡的供电,并满足不带电拔插的要求。 1、IC卡的接口电路 • 保证IC卡不带电拔插; • 但是逻辑电路的输出“1”和“0”,都是带电的,故要有专门的接口电路。
工作原理: 1、电路采用OC开路输出和二极管保护式输入结构; IC卡数据接口电路 2、当IC卡处于供电时,OC门通过上拉电阻R与电源连通,IC卡处于上电状态; 3、当IC卡处于下电时,OC门的上拉电阻R与电源断开,IC卡不带电。
电路特点: • OC门电路可以与CMOS、TTL电路兼容; • 上升沿阻尼大; • 作为CPU卡的时钟驱动电路时,由于时钟频率通常为3.57MHz,有可能丢失时钟;
解决方案: • 通过减小时钟驱动端的上拉电阻,减小上升时间来解决; • 采用互补驱动方式来进行时钟驱动,电路中R是去耦电阻,可有效地抑制上升和下降沿的抖动现象。
原理分析: CLK=‘0’ Ud=UDD+0.7 CLK=‘1’ Ud=-0.7
2、IC卡接口设备的供电电路 IC卡接口设备中的IC卡供电电路是一个相对独立于其他回路,并提供完善的过流保护措施的稳压电路,当卡插入时,接口设备开始向IC卡提供所需的电力。
100mA 短路保护150~200mA
9.3.2 接触式IC卡的控制与读写技术 IC卡的控制和读写技术是IC卡接口设备的核心部分,也称为IC卡协议实现单元。 1、IC卡的插入/退出的识别和控制技术 对于手动式拔插的IC卡适配器,IC卡的插入/退出的识别是通过IC卡适配插座上的感应开关来识别的。
卡已插到位,IC卡适配插座就会给出一个开关 接通(或断开)的信号。 • 卡离开该位置,适配器就会发出相反的信号。 • 插入的识别过程必须加入消颤处理。 消颤控制程序: JNB IC_SW, Recog ;若无卡插入,等待 LCALL Delay-5ms ;延迟5ms JNB IC_SW , Recog ;再次判断,若无卡输入等待 RET
2、IC卡的上电/下电的控制 IC卡的供电控制是一个直接涉及是否能安全可靠地操作IC卡的过程。必须严格遵循ISO 7816-3规定的操作顺序。 (1)IC卡的激活(上电过程): -RST处于L状态 -UCC供电 -接口设备处于接收方式 -UPP上升为空闲状态 -CLK 由相应稳定的时钟提供
(2)IC卡的去激活(下电过程): -RST处于L状态 -UCC关闭 -I/O为状态A -UPP不起作用 -CLK 为状态L 同步卡和异步卡时钟加载过程不同,靠程序来进行识别。见书P255。
Q2 Q1 异步IC卡的接口电路
fCP=14.31 MHz fQ1=7.155 MHz fQ2=3. 57 MHz
3、IC卡的读写技术 IC卡的读写方式或数据协议方式是不同的,ISO 7816标准对异步型IC卡的读写协议作了充分的定义,而对于同步型IC卡,则定义了复位响应过程的协议标准,好在许多IC卡都以ISO 7816同步复位响应协议作为IC卡的数据读协议方式。 (1)同步IC卡读操作的实现 数据的读出过程分为三个基本过程:复位、数据字段的定位和数据的读出。
复位过程 • 对符合ISO 7816同步协议标准的IC卡,其复位方式也与ISO 7816标准是相容的,因而该部分程序可描述为: SYNRST: SETB DATOUT ;使能数据线 SETB RST ;复位使能 LCALL Delay_10μs;延迟10 μs SETB CLK ;置同步复位时钟H LCALL Delay_10μs ;延迟10 μs CLR CLK ; 时钟为L LCALL Delay_10μs ;延迟10 μs CLR RST ; 复位结束 RET
数据字段的定位 • 数据字段的定位是以复位后的时钟数目来定标的,设R2,R3为所定位的位地址数,R2为高位字节。则定位子程序: SYNPOS: LCALL SYSRST ;IC卡复位 SP1: CJNE R3, #00H,SP3 ;判低位 CJNE R2, #00H,SP2 ;判高位 RET SP2: DEC R2 ;高位减1 SP3: DEC R3; 低位减1 SETB CLK ; 开始建立一个时钟脉冲 LCALL Delay_10μs ;延迟10 μs CLR CLK ; LCALL Delay_10μs ;时钟脉冲结束 JMP SP1 ;继续下一次
数据的读出过程 • 设R2,R3为被读的起始地址,R4为数据字节数。读出的数据被保存在R0的起始地址,递增若干个字节。
SYNREAD: LCALL SYSPOS ;定位到起始地址 SETB DATAIN ;使能数据输入线 SR1: MOV R5, #08H ;置移位次数为8次(一个字节) SR2: RLC A; A寄存器循环左移,C的内容进入A最低位 LCALL Delay_10μs ;延迟10 μs CLR CLK; LCALL Delay_10μs ;延迟10 μs DJNZ R5,SR2; 判断是否接收完一字节,若是继续,否则转到SR2, MOV ◎R0,A ; 将字节内容送R0单元 INC R0;地址加1 DJNZ R4,SR1 ; 判断是否接收完R4个字节,若是继续, 否则 转到SR1,继续接收 RET ;
(2)异步型IC卡的协议实现 • 异步型IC卡的操作相对简单得多。大多带有微处理器,对卡的操作只有ATR过程和COS命令的传递和应答过程,其通信协议方式严格符合ISO7816-3标准。 • ISO7816标准中异步通信标准的格式与计算机的异步通信格式基本相同,标准上规定的卡在3.57MHz时钟频率下的初始速率为9600bps,该速率符合现行的异步通信速率标准。 • 为方便读写,将IC卡的数据端口与IC卡接口设备的异步通信接口构成相应的半双工异步通信逻辑通路。
异步通信接口的初始化设置为: • 通信速率初始设置为9600bps。 • 1个起始位 • 8个数据位 • 1个奇偶校验位 • 2个停止位
异步型IC卡大多拥有微处理器,在MCS-51或MC68系列微处理器,设置有异步通信与I/O的复用功能,利用这功能,配合相应的程序,可完整实现IC卡的接口数据协议。异步型IC卡大多拥有微处理器,在MCS-51或MC68系列微处理器,设置有异步通信与I/O的复用功能,利用这功能,配合相应的程序,可完整实现IC卡的接口数据协议。
9.3.3 非接触式IC卡读写机具的现状 非接触式IC卡读写机具内设置有RF电路和天线,市场出现较晚,供应商不多。 1、Type A型非接触式卡及其读写机具源于Philips公司,是专利产品,数据加密是保密的,因此使用Mifare卡还要用Philips的读写器。 2、 Type B型非接触式卡产品较多。以色列OTI公司对非接触式卡系统的发射和接收部分有深入的研究。
9.4 IC卡的应用设备 IC卡的应用设备主要完成两方面的工作: • 面向应用需求,实现应用所需的功能操作; • 完成与IC卡的数据交换。 IC卡的应用设备的分类: • 应用的IC卡数据结构明确,用户只需建立IC卡发行管理体系;即IC卡专用设备 • 用户在购买IC卡设备后,需进行二次开发才能使用的设备;即IC卡通用设备
9.4.1 专用的IC卡应用设备 IC卡水、电、煤气表; IC卡电话; IC卡自动售货机; IC卡POS机; IC卡读写器;
9.4.2 通用型的IC卡应用设备 • 通用型IC卡应用设备与专用型IC卡应用设备的区别: • 专用IC卡设备可以直接安装使用,可内装与应用有关的其他设备; • 通用型IC卡应用设备一般只具备读写功能,与其他设备的连接则以标准数据接口方式提供; • 通用型IC卡应用设备支持的卡种类多; • 通用型IC卡应用设备提供开发平台,供二次开发使用;
9.5 读写器(接口设备)规范 IC卡的应用设备主要用来运行应用程序的。可以是计算机或是其他设备。 所以,读写器(接口设备)是应用设备与IC卡之间的设备,其作用: • 将应用设备发出的命令传递给IC卡; • IC卡将处理结果通过读写器发回给应用。
IC卡读写器的标准应包括三个方面: • 应用与读写器的接口标准; • 读写器本身的标准; • 读写器与IC卡之间的标准;
9.5.1 IC卡读写机通用规范简介-接触式IC卡 1、对读写机的功能要求: • 具有识别IC卡真伪的能力,相互确认时间不应超过一定值; • 显示:具有显示数字、英文和汉字的能力; • 设置必要的工作键; • 电源:读写机能提供IC卡所需的电压和电流; • 存储器:容量合理配置、信息能保存10年以上; • 通信接口:至少能与符合RS-232串行接口标准的计算机相连;
手持读写机具有脱机工作能力; 2、对读写机外观与结构的要求: 3、环境要求: • 气候环境:规定了工作温度、相对湿度; • 机械环境:对振动、冲击、碰撞有具体的规定; 4、设备安全:符合GB-95信息技术设备的安全 5、可靠性机寿命 6、电磁兼容性 7、数据安全 8、测试方法
应用程序 接口设备程序处理 应用设备APD (PC) 基本应用编程接口API 物理接口 RS-232 / USB 接口设备 IC卡 IC卡 9.5.2 应用设备与读写器的接口标准 1、IC卡应用系统的层次结构
2、基本应用编程接口的信息格式 应用设备APD和接口设备IFD之间的通信永远是由APD提出的,IFD返回应答。 该格式基本与T=1传输协议的命令分组相同。
3、基本应用编程接口的命令集 基本命令集可分为三类: • 由接口设备IFD完成的; • 异步卡(CPU卡)命令集; • 同步卡(逻辑加密卡)命令集; (1)接口设备命令集: 由接口设备完成,不再发送到IC卡,如复位接口设备命令、上电命令、下电命令、查询接口设备状态和下载命令、上载命令(交易数据)等。
(2)异步卡命令集: 可采用ISO/IEC 7816规定的行业间交换用命令集。 (3)同步卡命令集: 有读卡命令、写卡命令、验证密码命令和修改密码用命令集。
思考与复习 1、IC卡接口设备有哪些类型? 2、IC卡卡座有哪2种? 3、IC卡的电源是由哪个设备提供?与电源有关的保护措施有哪些? 4、掌握同步卡和异步卡的接口电路(特点、上电、下电过程及其控制程序)