《IC卡技术及应用电子教案8.pptx》由会员分享,可在线阅读,更多相关《IC卡技术及应用电子教案8.pptx(50页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第8章章 IC卡及其芯片卡及其芯片l l存储器芯片存储器芯片l l逻辑加密芯片逻辑加密芯片l lCPU芯片(内含芯片(内含COS)本章主要内容本章主要内容2021/9/121return第第8章章 IC卡及其芯片卡及其芯片8.1 IC卡的存储器芯片卡的存储器芯片8.2 接触式接触式IC卡的逻辑加密卡卡的逻辑加密卡8.3 非接触式非接触式IC卡卡 (Mifare卡)卡)8.4 COS (Chip Operating System)2021/9/12return引引 言言 IC卡按使用芯片不同,可分成存储卡、卡按使用芯片不同,可分成存储卡、逻辑加密卡和智能卡。逻辑加密卡和智能卡。2021/9/1
2、2return8.1 IC卡的存储器芯片卡的存储器芯片存储固定信息和消费信息(可修改);存储固定信息和消费信息(可修改);存储固定信息和消费信息(可修改);存储固定信息和消费信息(可修改);只有与读写器接触时才取得能量;只有与读写器接触时才取得能量;只有与读写器接触时才取得能量;只有与读写器接触时才取得能量;存储器的性能:存储器的性能:存储器的类型:存储器的类型:EEPROM;有有8个引出端、其中一个为数据个引出端、其中一个为数据I/O端;端;信息传送以串行方式进行;信息传送以串行方式进行;2021/9/12return美国美国ATMEL公司的公司的AT24C01A/02/04/08/16为例
3、:为例:1.芯片特点芯片特点l 低电压低电压l 内部组成内部组成C01A(1K)、)、l 双线串行接口(时钟双线串行接口(时钟SCL,串行数,串行数据据SDAl 支持支持ISO/IEC 781610 同步协议同步协议l 高可靠性:高可靠性:10万次、万次、100年年2021/9/12return2.芯片封装芯片封装C1C5C2C6C3C7VCCNCSCLGNDNCSDA芯片的触点芯片的触点引出端名引出端名功能功能C1C2C3C5C6C7VCCNCSCL(CLK)GNDNCSDA/(I/O)工作电压工作电压未连接未连接串行时钟串行时钟地地未连接未连接串行数据(串行数据(I/O)2021/9/12
4、return3.逻辑图逻辑图图图8.2 为为EEPROM逻辑图逻辑图Q:EEPROM如何读写如何读写?2021/9/12returnSCL(串行时钟):(串行时钟):SCL上升沿将数据输上升沿将数据输入到入到EEPROM芯片,下降沿将芯片,下降沿将EEPROM中的数据读出。中的数据读出。SDA(串行数据):双向串行数据传送端,(串行数据):双向串行数据传送端,采用漏极开路驱动,可以进行?采用漏极开路驱动,可以进行?2021/9/12return4.器件操作器件操作数据和时钟传送:数据和时钟传送:SCL和和SDA通常各自通常各自通过一个电阻上拉到高电平。通过一个电阻上拉到高电平。SDA上的数据仅
5、在和上的数据仅在和SCL为高电平时有为高电平时有效,低电平时允许数据变化。效,低电平时允许数据变化。l 当当SCL高电平时,如数据变化,则将高电平时,如数据变化,则将形成形成“开始开始”或或“停止停止”两种状态。两种状态。2021/9/12return5.器件寻址器件寻址1K、2K、4K、8K和和16K EEPROM在开在开始状态之后紧跟始状态之后紧跟8位器件地址,使芯片能位器件地址,使芯片能执行读执行读/写操作。写操作。1010A2A1A0R/W1K/2KMSBLSBlA2、A1、A0为器件地址,与硬布线输入为器件地址,与硬布线输入端相比较。端相比较。lR/W是读是读/写操作选择位,高电平为
6、读,写操作选择位,高电平为读,低电平为写。低电平为写。2021/9/12return8.2 接触式接触式IC卡的逻辑加密卡卡的逻辑加密卡逻辑加密卡主要由逻辑加密卡主要由EEPROM单元阵列和密单元阵列和密码控制逻辑电路构成;码控制逻辑电路构成;功能介于存储卡和功能介于存储卡和CPU卡之间;卡之间;适用于需要保密,但对保密功能要求不高适用于需要保密,但对保密功能要求不高的场合;的场合;2021/9/12return名词定义名词定义名词定义名词定义 1 1)写入:向)写入:向)写入:向)写入:向EEPROMEEPROM写入写入写入写入“0”“0”2 2)擦除:向)擦除:向)擦除:向)擦除:向EEP
7、ROMEEPROM写入写入写入写入“1”“1”3 3)熔断:对)熔断:对)熔断:对)熔断:对EEPROMEEPROM单元进行一次写入操作单元进行一次写入操作单元进行一次写入操作单元进行一次写入操作 4 4)个人化:发行商将)个人化:发行商将)个人化:发行商将)个人化:发行商将ICIC卡发行给个人时,写入发卡发行给个人时,写入发卡发行给个人时,写入发卡发行给个人时,写入发行商代码、用户密码、用户身份标识,并擦除其行商代码、用户密码、用户身份标识,并擦除其行商代码、用户密码、用户身份标识,并擦除其行商代码、用户密码、用户身份标识,并擦除其余应用区余应用区余应用区余应用区EEPROMEEPROM的过
8、程。的过程。的过程。的过程。5 5)密码错误计数:)密码错误计数:)密码错误计数:)密码错误计数:4 4次密码输入错误,次密码输入错误,次密码输入错误,次密码输入错误,ICIC卡自锁。卡自锁。卡自锁。卡自锁。8.2.1 名词定义名词定义2021/9/12return8.2.2 逻辑加密卡的功能框图逻辑加密卡的功能框图逻辑加密卡芯片从功能上分两个部分:逻辑加密卡芯片从功能上分两个部分:EEPROM单元阵列单元阵列保密逻辑部分保密逻辑部分地址计数器地址计数器地址译码器地址译码器密码比较电路密码比较电路内部寄存器内部寄存器2021/9/12returnRST信号将地址计数器置全信号将地址计数器置全0
9、。行行/字驱动器与列字驱动器与列/位选择器位选择器地址计数器地址计数器地址译码器地址译码器密码比较器密码比较器内部寄存器内部寄存器2021/9/12return制造代号区制造代号区发行代号区发行代号区用户密码区用户密码区密码比较计数区密码比较计数区用户个人区用户个人区应用区应用区擦除密码擦除密码擦除计数擦除计数8.2.3 芯片内部存储区域芯片内部存储区域2021/9/12return ATMEL 公司公司 AT88SC102芯片芯片具有具有1K位的位的EEPRON低功耗低功耗CMOS技术技术2个个512位可用存储分区位可用存储分区5伏工作电压、自升压电路伏工作电压、自升压电路允许擦除次数允许擦
10、除次数10万以上万以上数据保存年限数据保存年限100年年8.2.4 逻辑加密卡芯片示例逻辑加密卡芯片示例2021/9/12return1.触点(芯片触点(芯片/卡片)卡片)(1)VCC、RST、CLK、GND、I/O 遵从遵从ISO/IEC 7816-10的同步协议的同步协议(2)FUS 熔断信号熔断信号(3)PGM 编程信号编程信号2021/9/12return见表见表8-5 地址计数器为地址计数器为11位,范围:位,范围:0-2047 实际使用区间:实际使用区间:0-1567 用户使用区间:用户使用区间:0-14232.存储区域分配存储区域分配2021/9/12return(1)内部使用的
11、内部使用的EEPROM单元:单元:FUSE1、FUSE2和和EZ1的控制位的控制位(2)两个供特殊控制用的地址两个供特殊控制用的地址(3)FUSE1:制造商用:制造商用(4)FUSE2:发行商用:发行商用(5)EZ1:对:对APP1擦除时用擦除时用(6)全片擦除的控制全片擦除的控制2021/9/12return3.访问控制访问控制表表8.6 访问控制类型(由访问控制类型(由C4电压和熔电压和熔丝丝FUSE1和和FUSE2共同控制)共同控制)表表8.7 个人化时的访问控制条件个人化时的访问控制条件表表8.8 个人化后用户使用时的访问控制个人化后用户使用时的访问控制条件条件2021/9/12ret
12、urn4.操作模式操作模式 由由PGM、RST、CLK信号和内部地址计信号和内部地址计数器决定四种操作模式数器决定四种操作模式(内部内部)。图图 8.17所示所示*RESET*INC(INC/READ)*CMP(INC/CMP)*WRITE,WERIFY2021/9/12return1.上电复位:上电复位:芯片内部寄存器复位芯片内部寄存器复位8.2.4 典型电路分析典型电路分析2.密码比较:形成密码比较:形成SC与与EZ其作用是验证持卡人和发行商的身份,是其作用是验证持卡人和发行商的身份,是整个电路的核心。整个电路的核心。删除密码比较电路删除密码比较电路用户密码比较电路用户密码比较电路2021
13、/9/12returnCOMPTDATATINI/O(1)删除密码比较电路)删除密码比较电路外部数据外部数据由由EEPROM读出数据读出数据011原原态态100图图8.32 删除密码比较电路删除密码比较电路2021/9/12returnCOMP为密码比较结果触发器,取为密码比较结果触发器,取EZCOMP。当当EZ1,表示密码比较正确。,表示密码比较正确。电路设计原则:电路设计原则:初态初态EZ1,如密码比较相等,如密码比较相等,EZ仍然为仍然为1;如密码比较不正确,则如密码比较不正确,则EZ0,即,即COMP1,然后,然后COMP保持保持1,EZ保持保持0。2021/9/12return电路工
14、作原理:电路工作原理:当地址为当地址为0时,时,ADR0有效,触发器清有效,触发器清零,零,COMP0,EZ1;当地址未到密码区时,当地址未到密码区时,COMP的的D端为端为0,因此,因此COMP保持保持0,EZ1;当地址在密码区时,由当地址在密码区时,由EEPROM读出的数据读出的数据DATA经锁存为经锁存为TDATA;外部数据;外部数据I/O输入触输入触发器后为发器后为TIN。二者经异或门进行比较:。二者经异或门进行比较:2021/9/12return如比较结果相等,则如比较结果相等,则D端为端为0,COMP保持保持0,即,即EZ保持保持1;如比较结果不等,则如比较结果不等,则D端为端为1
15、,COMP跳变为跳变为1,然后依靠,然后依靠Q输输出到出到D端的连线,使它保持端的连线,使它保持1,因此因此EZ保持为保持为0。TIN在在CLK的上升沿时形成,的上升沿时形成,TDATA在在TCLK为为1时锁存,而比较结果时锁存,而比较结果在在CLK的下降沿时形成。的下降沿时形成。即时钟上升沿保存要比较的数据,在时即时钟上升沿保存要比较的数据,在时钟下降沿进行比较。钟下降沿进行比较。2021/9/12return(2)用户密码比较电路用户密码比较电路 对于对于SC来说,由于有比较次数的限制,来说,由于有比较次数的限制,因此即使比较结果正确,但超过了四次的因此即使比较结果正确,但超过了四次的限制
16、,仍然无效。因此在图限制,仍然无效。因此在图8.32的基础上,的基础上,需增加图需增加图8.33锁存电路。锁存电路。其中其中ESC1,才表示用户密码正确。,才表示用户密码正确。2021/9/12return3.熔丝电路熔丝电路 FUSE1 生产商掌控生产商掌控 FUSE2 发行商掌控发行商掌控 熔丝的作用是控制特殊的读写操作,熔丝的作用是控制特殊的读写操作,但熔丝熔断后,读写操作就无法进行,从但熔丝熔断后,读写操作就无法进行,从而达到保密的目的。而达到保密的目的。2021/9/12return FUSE1 和和 FUSE2 的实现有三种方式:的实现有三种方式:(1)采用)采用2个物理熔丝分别代
17、表个物理熔丝分别代表FUSI和和FUS2,都采用外加电流的方式熔断。图,都采用外加电流的方式熔断。图8.34(2)采用一个物理熔丝,而用)采用一个物理熔丝,而用2个个EEPROM单元代表单元代表FUSE1和和FUSE2,用,用物理熔丝来控制物理熔丝来控制FUSE1和和FUSE2的读写的读写操作。操作。(3)利用芯片出厂的切片操作来代替熔)利用芯片出厂的切片操作来代替熔断物理熔丝,图断物理熔丝,图8.35。2021/9/12return8.3 非接触式非接触式IC卡卡 (Mifare卡)卡)Mifare Standard 逻辑加密卡逻辑加密卡Mifare Light 逻辑加密卡逻辑加密卡Mifa
18、re PLUS 双界面双界面CPU卡卡Mifare PRO 双界面双界面CPU卡卡2021/9/12return非非接接触触式式接接口口硬硬布布线线逻逻辑辑EEPROM接触式接口微处理器8051核心硬硬布布线线逻逻辑辑非非接接触触式式接接口口共共享享EEPROM接触式接口微处理器8051核心EEPROM非接触式接口Mifare StandardMifare StandardMifare PLUSMifare PLUSMifare proMifare pro1994199419971997199819982021/9/12return符合符合ISO/IEC 14443 读卡距离?读卡距离?工作频
19、率?工作频率?数据传输率?数据传输率?交易时间?交易时间?防冲突功能?防冲突功能?8.3.1 Mifare Standard1.概概 述述2021/9/12return2.Mifare Standard逻辑图逻辑图调制调制/解解调器调器电压电压调节器调节器RF接口接口鉴别和访问鉴别和访问控制控制ATR防冲突防冲突选择应用选择应用密码计密码计算单元算单元 控制和算术控制和算术运算单元运算单元数字部分数字部分EEPROM接口接口EEPROM2021/9/12return3.IFD与与ICC的交易流程的交易流程 IFD发发Request给所有在场的给所有在场的IC卡,通过防冲突循环,得到一张卡的卡,
20、通过防冲突循环,得到一张卡的序列号,选择此卡进行鉴别,通过后序列号,选择此卡进行鉴别,通过后对存储器进行操作。对存储器进行操作。2021/9/12return4.Mifare 卡的访问存储器命令卡的访问存储器命令Read 读存储器的一个分组读存储器的一个分组 2.5msWrite 写存储器的一个分组写存储器的一个分组 6.0msDecrement 减少分组内容,将结果存入数据寄存器减少分组内容,将结果存入数据寄存器Increment 增加分组内容,将结果存入数据寄存器增加分组内容,将结果存入数据寄存器Transfer 将数据寄存器内容写入将数据寄存器内容写入EEPROM一个分组一个分组Rest
21、ore 将分组内容存入数据寄存器将分组内容存入数据寄存器2021/9/12return5.存储器组织与访问条件存储器组织与访问条件16区区4分组分组16字节字节 Block 0 制造商代码(制造商代码(0区)区)/数据数据 Block 3 本区密钥本区密钥/访问条件访问条件 Block 02 数据分组数据分组数据分组数据分组读写分组读写分组价值分组价值分组2021/9/12return0123012301230123Block 0 Block 0 制造商代码(制造商代码(制造商代码(制造商代码(0 0区)区)区)区)数据分组数据分组数据分组数据分组区尾部区尾部区尾部区尾部Block 3 Blo
22、ck 3 012152021/9/12returnKey A访问条件访问条件Key B区尾部区尾部Block 3的组成的组成01234567891011121314157 6 5 4 3 2 1 0访问条件的每一位用原访问条件的每一位用原码和反码存储;码和反码存储;访问条件的最后一个字访问条件的最后一个字节(节(BX0BX7)用来)用来存放特定的应用数据。存放特定的应用数据。2021/9/12return在在MF1 IC 卡中,有两类数据分组:卡中,有两类数据分组:(1)读)读/写分组写分组用于读用于读/写(写(Read/Write)一般)一般的的16字节数据。字节数据。(2)价值分组()价值
23、分组(Value block)用于电子钱包功能(用于电子钱包功能(Read、Increment、Decrement、Transfer和和Restore)。)。2021/9/12returnValue的长度为的长度为4个字节,每个个字节,每个Value存入存入3次,以提高错误检测和纠错能力。次,以提高错误检测和纠错能力。AAAAValueValueValueA和和A为地址字节,同一地址存入为地址字节,同一地址存入4次。次。Value block中的内容第一次由中的内容第一次由Write命令写入命令写入到所要求的地址中,以后用到所要求的地址中,以后用Decrement/Increment/Rest
24、ore命令修改内容。命令修改内容。计算结果暂存入计算结果暂存入DATA寄存器,再用寄存器,再用Transfer命令写入存储器。命令写入存储器。2021/9/12return IFD用随机数、卡的序列号和密钥进行加用随机数、卡的序列号和密钥进行加密。密。采用采用3pass鉴别法。鉴别法。6.安安 全全l l密钥在卡内是受保护的,但可修改,因此密钥在卡内是受保护的,但可修改,因此知道了运输密钥后,可以写入自己的秘密知道了运输密钥后,可以写入自己的秘密密钥;密钥;l l每个区有两个密钥,可进行不同的目的;每个区有两个密钥,可进行不同的目的;l l在通过在通过3pass鉴别后,发送器自动加密,鉴别后,
25、发送器自动加密,接收器自动解密。接收器自动解密。2021/9/12return随机数随机数随机数随机数RBRB Token AB=EK Token AB=EKAB AB(RARBBText2)(RARBBText2)Token BA=EK Token BA=EKAB AB(RBRAText4)(RBRAText4)AB(A)RB(B)TokenAB(D)TokenBAIFDICC(C)对报)对报文文TokenAB解密,验证解密,验证一致性一致性(C)对报)对报文文TokenBA解密,验证解密,验证一致性一致性2021/9/12return8 8位单片机位单片机位单片机位单片机片上操作系统片上操
26、作系统片上操作系统片上操作系统COSCOS存在存在存在存在ROMROM内。内。内。内。RAMRAM存放中间处理结果与作为中间缓存器。存放中间处理结果与作为中间缓存器。存放中间处理结果与作为中间缓存器。存放中间处理结果与作为中间缓存器。E E2 2PRONPRON供用户访问的存储区:信息、密码、供用户访问的存储区:信息、密码、供用户访问的存储区:信息、密码、供用户访问的存储区:信息、密码、密钥、应用文件。密钥、应用文件。密钥、应用文件。密钥、应用文件。8.4 CPU卡的硬件环境与芯片卡的硬件环境与芯片2021/9/12return8.4 COS (Chip Operating System)IC
27、卡的专用系统:卡的专用系统:控制控制IC卡和外界的信息交换,管理卡和外界的信息交换,管理IC卡内的存储器,完成各种命令的处理。卡内的存储器,完成各种命令的处理。符合符合ISO/IEC7816-4。COS所遵循的信息交换协议目前两类:所遵循的信息交换协议目前两类:异步字符传输的异步字符传输的T0协议;协议;异步分组传输的异步分组传输的T1协议。协议。2021/9/12return传送管理传送管理安全体系安全体系应用管理应用管理文件管理文件管理8.4.1 COS 的体系结构的体系结构2021/9/12return传送管理传送管理 按照信息传输协议,接收按照信息传输协议,接收IFDIFD的命令,的命
28、令,发送对命令的响应。发送对命令的响应。安全体系安全体系 安全状态:安全状态:ICIC卡当前满足规定的条件。卡当前满足规定的条件。安全属性:定义执行某条命令所需的安全属性:定义执行某条命令所需的条件,达到安全控制的目的。条件,达到安全控制的目的。安全机制:安全状态实现转移的方法安全机制:安全状态实现转移的方法与手段。(密码鉴别、数据鉴别、数据与手段。(密码鉴别、数据鉴别、数据加密等)加密等)2021/9/12return安全体系安全体系 鉴别与核实的区别鉴别与核实的区别 鉴别鉴别 Authentication Authentication 核实核实 Verify Verify 密钥管理:密钥管
29、理:COSCOS通过对文件访问的安全控通过对文件访问的安全控制机制来保证密钥文件的安全。制机制来保证密钥文件的安全。2021/9/12return应用管理应用管理 COS对对IC卡接收的命令的可执行性进行卡接收的命令的可执行性进行判断。判断。文件管理文件管理 文件的基本结构文件的基本结构 MF DF EF 文件的分类:文件的分类:COS file 保存有基本的应用数据。保存有基本的应用数据。key file 存储进行数据加密用的密钥。存储进行数据加密用的密钥。purses file 存储有价数据。存储有价数据。COS对文件的操作均应符合对文件的操作均应符合ISO/IEC 7816-4的规定。的规定。2021/9/12returnICIC卡进行处理时,系统所采用的是命令卡进行处理时,系统所采用的是命令应答方式。图应答方式。图8.558.55(COSCOS处理机制)。处理机制)。p228p2288.4.2 COS 的命令系统的命令系统8.4.3 智能卡举例(智能卡举例(MC68HC05SC)2021/9/12returnJava 智能卡是采用标准智能卡是采用标准Java语言子集的语言子集的的的CPU卡,其应用开发需要通过转化才卡,其应用开发需要通过转化才能在卡上实现。能在卡上实现。8.4.4 关于关于Java 智能卡智能卡2021/9/12