1.1.1 激活

为了触发一个已经通过机械方式连接的卡片,接口设备需要激活电路通过一类操作状态:A,B或者C。

——RST将要被置成 L。

——VCC将要上电。

——接口设备上I/O将要被置成“接入”模式,并且在激活期间接口设备不考虑I/O的状态。

——CLK将要被给一个时钟信号。

注意1:在VCC上电,设置I/O口和设置时钟信号的延时是没有明确的。

注意2:如果发生短路,接口设备可以执行“去激活”作用。

1.1.2 冷复位

到激活前为止(RST在L状态,VCC上电,接口设备I/O在接收模式),

CLK有一个适合的并且稳定的时钟信号),卡已经准备好冷复位。在冷启动之前,卡的内部状态没有定义。

根据图表1,在时间Ta时,时钟信号开始。卡将要在时钟信号用于CLK (Ta+ta)之后,在200个周期内(延时ta)设置I/O口的状态是H。CLK(Ta+tb)信号计时之后,冷复位开始,并且RST保持在L状态至少400个时钟周期(延时tb)。当RST置L时,接口设备不考虑I/O状态。

在Tb时,RST置成H状态。在RST(Tb+tc)上升沿信号后,I/O的应答将要在400~40000时钟周期内开始(延时tc)。如果RST在H状态时,应答没有在40000时钟周期内开始,接口设备将要允许“去激活”作用。

1.1.3 热复位

热复位的应答可以不同于以前的复位应答,接口设备可以在任何时候热复位卡片甚至可在复位应答期间,但不能在强制字符TS和T0接入以前。热复位不能在字符T0的“前沿”少于4464(=12*372)个时钟周期的情况下开启。

警告:如果热启动在复位应答期间进行的话,可能损坏旧协议 (ISO/IEC 7816-3:1997)版本的卡片。

根据图表2,当VCC保持上电状态并且CLK有一个适合且稳定的时钟信号,置RST为L状态在至少400时钟周期(延时te)。

在200时钟周期内,卡片在RST(Tc+td)置L之后设置I/O为H。在Td时,RST置成H状态。在RST(Td+tf)上升沿信号后,

I/O的应答将要在400~40000时钟周期内开始(延时tc)。如果RST在H状态时,应答没有在40000时钟周期内开始,接口设备将要允许“去激活”作用

1.1.4 类选择

图表3 阐述了操作状态的类选择原理。但是这个图表是不全面的。

——如果带有指示器的复位应答能指示出正在被应用的类,正常的操作就可以继续。要么,接口设备可以在延时至少10ms后进行一个“去激活”作用,然后用于另一个卡支持的类。

——如果是不带有指示器的复位应答,接口设备将于保持当前的类。如果复位应答完成后,卡不进行操作,接口设备将要在至少10ms后进一个“去激活”作用,然后可以用于其它类。

——如果卡不进行复位应答,接口设备将要进行一个“去激活”作用并且

●或是在一个至少10ms延时后,用于另一个类。

●或是终止类选择过程。

一个类选择过程终止后,接口设备可以开启另一个类选择。

一旦选择,类将要不能在正常操作期间更换。如果要更换类,接口设备将要进行一个“去激活”作用并且在至少10ms延时后可以用于另一个类。

1.1.5 信息交换

传输参数和协议的选择

复位应答完成后,卡需要等待来自接口设备的字符:传输参数控制传输;而协议复杂解释说明。图表4说明了传输参数和协议的选择原理。

——如果当前TA2处于复位应答(卡在特定模式),接口设备也将用特定的传输参数值开启特定的传输协议。

——如果卡处于可选择的模式,对于传输参数而言,在复位应答期间(传输参数的缺省值)的参数值应该继续适用于下列情况。

●如果第一个被收到的字符的值是“FF”,接口设备将要开启一个PPS(协议和参数选择)交换;在接口设备用经过商定后的传输参数值启动经过商定后的传输协议之后,传输参数的缺省值将要继续适用直到一个成功的PPS交换完成。

●另一种情况,当卡仅仅给定 当卡仅仅给定一个传输协议和一个传输参数缺省值时,接口设备将要开启“第一个被给定的传输协议”。这种情况的卡不需要支持PPS交换。

注意1:PPS的值是无效的对于类字节和节点地址字节来说。

注意2:在一个多协议卡T=0可选择模式下,仅有T=0能被选择。

注意3:一个接口设备连接一个在可选择状态下的卡片并且既不支持PPS交换也不支持“第一个被给定传输协议”,这样的卡片能执行或是热复位或是一个“去激活”。

注意4:当卡发送字符TA2到接口设备,并且接口设备不考虑特有模式的存在时,不能依靠热复位改变模式。 注意5:接口设备如果到检测到字符 TA2,那么不应该在接口设备检测到——或是接收到的字符中不被支持的值,或是一个等待时间超之前开启热复位。

1.1.6时钟停止

对于支持时钟停止的卡,当接口设备认为没有来自卡的传输并当I/O已经保持在H至少1860时钟周期(延时tg),

根据图表5,在VCC上电并且RST在H时,接口设备可以对于CLK(Te)进行时钟停止。

当时钟停止时(在Te~Tf),CLK将要继续保持或是在H或是在L根据已被确定好的时钟指示器X。

在Tf,接口设备重启时钟,在至少700时钟延时后(Tf+th),在I/O的信息交换可以继续。

1.1.7去激活

当信息交换被完成或者被终止(例如,例如卡没有应答,或检测过程中卡被移走,)接口设备将使电路停按照下列规

则停止工作。

——RST 将要置L

——CLK 将要置L(除非时钟在L状态停止)

——I/O 将要置L

——VCC 将要置“去激活”

1.1.8参数选择
接口设备可以发送协议和参数选择指令(PPS),选择要和IC卡进行通信的协议和相关的参数。

(1) PPS协议

——>IFD发送一个PPS请求给ICC

——>如果ICC收到一个错误的请求,则不响应。

——>如果ICC受到一个正确的请求,则返回一个PPS响应,否则将超过初始等待时间

——>如果ICC超出初始等待时间,则IFD复位或者拒绝ICC

——>如果IFD收到一个错误的应答,则复位或者拒绝ICC

——>如果PPS交换失败,则IFD复位或者拒绝ICC

(2) PPS请求的结构和内容

PPS 请求和响应分别包括一个初始字节 PPSS 后随格式字节 PPS0 三个可选参数字节 PPS1 PPS2 和 PPS3 以及一个检测字节 PCK。

PPS 识别 PPS 请求或响应并等于 FF。

PPS0 通过位 b5 b6 b7 分别指明可选字节 PPS1 PPS2 PPS3 的存在 位 b4 到b1 传输参数 T 的值以提出协议 位 b8 留作未来使用并设定为 0。

PPS1 允许 IFD 对卡提出 F 和 D 的值 。

PPS请求和应答的结构如下:

如果IFD不发送PPS1,它应该继续使用Fd和Dd。ICC通过响应PPS1确认这两个值(此时使用的Fn和Dn),或者不响应PPS1而继续使用默认值Fd和Dd。 PPS2和PPS3保留将来使用。 PCK的值应使从PPSS至PCK(包括PCK)的所有字节的异或操作结果为0。

EMV Level1(7816)学习(Smart Cart智能卡)-2相关推荐

  1. EMV Level1(7816)学习(Smart Cart智能卡)-3

    2.1字符传输: Smart Card的字符传输采用的是异步半双工模式,这种异步的模式很像个人电脑上的RS232通信.传输一个字符时,除了8Bits的数据外,还加了以下几个Bits: 起始位:用于字符 ...

  2. EMV L1(7816)学习(Smart Cart智能卡)-1

    ISO/IEC 7816-3中规定的触点分配至少支持下列电路 -C1:电源输入 -C2:复位信号输入 -C3:时钟信号输入 -C5:接地 -C6:标准/自定义的用法 -C7:输入/输出串行数据 根据定 ...

  3. Open Smart Card Shell Test on doemv.js - EMV DDA Test

    文章目录 Summary Authentication procedure Retrieval of ICC Public Key Dynamic Data Authentication Refere ...

  4. IC卡(智能卡)基础知识简介

    目录 IC卡(智能卡)基础知识简介 1.何为IC卡(智能卡) 2.IC卡的相关规范 3.智能卡如何管理其存储器 4.智能卡如何对信息存取过程进行控制 IC卡(智能卡)基础知识简介 IC卡(智能卡)基础 ...

  5. MBO目标管理与SMART原则

    MBO是指管理层收购(management buyout),企业收购:或者目标管理(management by objectives),企业管理学之一,我们今天谈的就是 目标管理(management ...

  6. 集成学习(XGBoost,LightGBM,CatBoost)

    决策树 由根节点跟许多决策节点和叶子节点组成的树形结构 eg. 分类树 1.信息熵 信息熵是用来衡量休息不确定性的指数,不确定性是一个事件出现不同结果的可能性.计算方法如图所示: H(X)=−∑i=1 ...

  7. 接触式IC卡 - STM32(Smart Card)

    目录 1.复位 1.1.冷复位 1.2.热复位 2.Smart Card功能 2.1.初始配置 2.2.波特率计算 2.3.IO收发代码 2.4.IC通讯测试 接触IC的硬件通讯其实不难理解,上层逻辑 ...

  8. smart Client开发

    经过设计,智能客户端应用程序可以将胖客户端应用程序的优点与瘦客户端应用程序的部署和可管理性优点结合起来,然而,要完全实现智能客户端应用程序的优点,需要考虑许多体系结构和设计问题. 智能客户端高级开发系 ...

  9. RPA认证 Developer UIPath Certificate,细说uipath认证学习,Online Quiz和Practical Exam项目详解

    UIPath,RPA里算是比较简单易操作的一款软件了,因为公司业务的需要,代理uipath以及部署业务,所以接触到了uipath.从开始到最终做到企业项目部署,大概用了两个月的时间,收获不少.自己之前 ...

  10. 如何学习可编程逻辑控制器(PLC)?

    如何学习可编程逻辑控制器(PLC)? 学习西门子PLC没有想象中那么难,一句话可以总结为:对初学者来说,600多块的SR20就足够用了,组态软件免费,西门子官方网站还有免费的视频教程. 如若详细展开, ...

最新文章

  1. BIG DATA 大数据时代来临
  2. 日记 [2008年01月21日]
  3. print python 如何加锁_Python 进阶(一):多线程
  4. 记录一个在线压缩和还原压缩js代码的工具
  5. 机器学习(二十二)——推荐算法中的常用排序算法, Tri-training
  6. springBoot AOP环绕增强、自定义注解、log4j2、MDC
  7. Python学习笔记:模块与包
  8. Java如何封装参数_java规范(一)------方法设计---返回多参数的方法怎么封装
  9. 使用scroll实现Elasticsearch数据遍历和深度分页
  10. c语言的单片机delay延时函数详解
  11. 7-4 华氏度转摄氏度 (5分) java
  12. TensorFlow入门操作
  13. 开源项目zheng学习
  14. 基于无线网络的环境监测系统
  15. PageAdmin CMS仿站教程,自己建网站就是如此简单
  16. Failed to ignore SIGHUP: No error
  17. 基于微信小程序的宠物医院诊所小程序源码
  18. Linux kernel log与调试
  19. Matlab中meshgrid的用法
  20. webpack配置及热更新原理

热门文章

  1. Pytorch问题及解决:‘lengths‘ argument should be a 1D CPU int64 tensor, but got 1D cuda:0 Long tensor
  2. 谢烟客---------Linux之find查找
  3. jmeter+PerfMon Metrics Collector监控(ServerAgent)
  4. 纯CSS3 3D图片向上翻转渐隐消失动画DEMO演示
  5. php 转义反绡线,PHP汉字转拼音
  6. 大数据工程师面临哪些行业机遇与挑战?
  7. Axure下载安装汉化
  8. 常用邮箱的 IMAP/POP3/SMTP 设置
  9. 间断点怎么求?——6个例子来详细解析较难的间断点的求法
  10. 如何获取网易云音频地址