b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

CPU卡的接口特性,传输协议和读写程序设计

电脑杂谈  发布时间:2020-08-18 21:17:00  来源:网络整理

ic 卡 cpu卡_cpu卡程序_cpu卡与ic卡

IC卡的概念是在1970年代提出的. 法国BULL公司率先推出了IC卡产品,并将该技术应用于金融,运输,医疗,身份认证等方面. IC卡的核心是集成电路芯片,通常使用3μm以下的半导体技术制造. IC卡具有写入数据和存储数据的能力. 该IC可以存储内容,并且可以有条件地从外部读取,或者根据需要用于内部信息处理或验证.

本文引文地址:

根据各种集成电路的不同,IC卡可以分为以下三类: 存储卡,逻辑加密卡和CPU卡. 其中,存储卡仅具有数据存储容量,没有安全措施. 逻辑加密卡只有几个字节的密码,并且该卡中有一个错误计数器. 如果指定数量的验证密码失败,则卡中的数据将自动锁定. 卡数据无法再更改;在这三种类型的IC卡中,CPU卡是最高级的卡. 通常,存在三种类型的存储器: ROM,RAM和EEPROM. 该程序存储在ROM中,该程序是专门为IC卡的CPU设计的,用于解释读取器终端发送的命令. IC卡应用系统根据应用需要,从终端向CPU卡发送一系列命令. 通过更改命令的内容和命令的顺序可以满足不同的需求,因此具有更高的灵活性. 同时,由于CPU具有计算功能和存储容量大,因此可以执行更复杂的加密/解密操作,从而大大提高了安全性. EEPROM主要用于存储一些应用程序数据. 它的容量大于逻辑加密卡的容量. 它可以实现多种用途的一张卡. 这是目前最安全的卡类型. 因此,CPU卡是目前IC卡的重要发展方向之一.

1 CPU卡的接口特征

1.1联系人定义

接触的定义遵循ISO7816-2的要求,如图1所示. 表1中列出了符号说明.

图1 CPU卡的触点

表1符号说明

1.2字符框

数据以字符帧模式在I / O上传输,如图2所示.

图2字符帧传输方法

每个位的宽度为1 etu,etu = 372 / f. 在这里,f = 3.57 MHz.

起始位是通过在接收端对I / O周期进行采样而获得的,采样周期应小于0.2 etu. 两个连续字符的起始位的上升沿之间的间隔时间等于(10±0.2)etu加1个保护时间(至少2 etu). 在保护时间内,卡和终端都应处于接收模式(I / O为高电平). 如果卡或终端作为接收方检测到奇偶校验错误,则I / O设置为低电平以向发送方指示发生了错误.

cpu卡程序_cpu卡与ic卡_ic 卡 cpu卡

1.3卡操作

卡的操作步骤如下:

①将卡插入终端接口设备,连接两个触点并激活触点;

②重置卡以建立卡与终端之间的通信;

③执行操作;

④释放触点,然后从接口设备中卸下卡.

以下是除步骤③(执行操作)以外每个步骤的时序要求.

(1)激活联系人

序列如图3所示.

图3联系人激活时间

(2)重置卡

卡使用低级复位来完成异步复位响应. 激活触点后,终端将执行冷重置并从卡获得重置响应. 冷复位的顺序如图4所示.

图4冷重置顺序

冷复位后,如果收到的复位信号响应不符合标准要求,终端将启动热复位,并从卡中获得复位响应. 热重置序列如图5所示.

ic 卡 cpu卡_cpu卡程序_cpu卡与ic卡

620)this.width = 620;' alt =''/>

图5热重置顺序

在实际程序设计中,reset子例程可实现触点激活和卡重置.

(3)联系人释放时间

接触释放顺序过程如图6所示.

图6联系人释放时间

2传输协议和卡命令处理程序

ISO7816-4和中国金融集成电路(IC)卡规范中指定的异步半双工传输协议是关于终端发出的用于传输控制和特殊控制的命令的结构和处理,包括以下两个协议: 字符传输协议(T = 0)和块传输协议(T = 1). 本文重点介绍字符传输协议(T = 0)协议,这是IC卡推荐的通信协议.

2.1命令

The

命令包含一个连续的4字节命令头,由CLA,INS,P1和P2表示,以及一个可变长度的条件主体.

命令头定义如下:

◇CLA: 指令类别,“ FF”以外的任何值;

◇INS: 在指令类别的指令代码中,当最低位为“ 0”且高半字节既不是“ 6”也不是“ 9”时,INS有效;

◇P1和P2完成INS的参数字节.

条件主体定义如下:

◇Lc(发送数据的长度)占1个字节,定义为命令中发送数据的字节数,取值范围为1〜255.

cpu卡程序_ic 卡 cpu卡_cpu卡与ic卡

◇数据是要发送的命令数据字段,字节数由Lc定义.

◇Le(接收的数据长度)占1个字节,表示命令响应中期望的最大数据字节数. Le的取值范围是0〜255. 如果Le = 0,则预期数据字节的最大长度为256.

表2列出了四种可能的命令结构定义方案.

表2

命令全部由终端应用程序层(TAL)发起. 它通过终端传输层(TTL)向卡发送5字节的命令头,并等待处理字节.

2.2处理字节

卡收到命令后,立即向TTL返回一个处理字节,以指示下一步要做什么,如表3所示.

表3

在情况(1)和(2)中,TTL将在完成操作后等待另一个处理字节. 对于(3),在收到第二个处理字节或状态码(SW2)之后,TTL将执行以下操作:

◇如果处理字节为“ 61”,则TTL将向卡发送最大长度(P3)为“ XX”的响应命令(GET RESPONSE),而“ XX”为SW2的值. GET RESPONSE命令仅适用于T = 0协议. 表4列出了命令消息的结构.

表4

◇如果处理字节为“ 6C”,则TTL将立即将前一个命令的命令头重新传输到卡,并且其P3值将替换为“ XX”. “ XX”是SW2的值.

◇如果处理字节为“ 6X”(“ 60”,“ 61”和“ 6C”除外)或“ 9X”,这与前两次TTL处理本身不同,则TTL将通过以下方式返回状态代码: 命令响应对由TAL处理的上层终端应用程序层(TAL),并等待下一个命令.

cpu卡与ic卡_ic 卡 cpu卡_cpu卡程序

2.3卡命令处理程序流程图

图7是卡命令处理程序,即终端与卡之间的信息交互过程的流程图. 有关具体步骤,请访问该期刊的网站.

图7卡命令处理程序流程图

以下是引脚说明.

ECPU: 确定卡的CLK触点上是否有CLK信号引脚;

ICVCC: 端子与卡的Vcc触点接触的引脚;

ICIO: 用于将端子与卡的I / O触点接触的引脚;

ICCLK: 端子与卡的CLK触点接触的引脚;

ICRST: 端子与卡的RST触点接触的引脚.

以下是程序中功能的介绍.

◇void isr_timer1(void)中断3: 定时器1中断子程序,用于逐位发送和接收数据;

◇void Snd(void): 发送数据子程序,由定时器1实现;

◇void Rcv(BYTE bytenr,BYTE * Buffer): 接收数据子程序(参数含义为: 接收到的数据字节数,接收到的数据的存储位置),由定时器1实现;

◇功能1无效复位(BYTE * len,BYTE * resp): 复位子程序(参数的含义为: 返回复位响应数据的长度,复位响应数据);

◇功能2 void Power_off(void): 接触释放子程序;

◇功能3 WORD CPUC_Cmd(BYTE len,BYTE * comm,BYTE * lenr,BYTE * resp): CPU卡命令子例程(参数含义为: 发送命令长度,发送命令,返回字节数,返回数据),该函数返回状态字节SW1SW2.

参考

1个国家标准化技术委员会. 中国金融集成电路(IC)卡规范(V1.0). 北京: 中国金融出版社

2中国华达集成电路设计中心. CIU9102智能卡接口特性和通信程序

有关尘埃计数器的文章: 尘埃计数器的原理


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shoujiruanjian/article-301812-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      每日福利
      热点图片
      拼命载入中...