260 likes | 453 Views
智能卡网吧收费机设计(一) —— 逻辑加密卡的存储结构 与安全特性. 电子与信息工程学院. 教学目标. 接触式逻辑加密卡的 芯片逻辑组成与安全特性 按位操作逻辑加密卡的存储结构与安全特性 多存储器结构逻辑加密卡存储结构与安全特性 多分区逻辑加密卡的存储结构与安全特性. 产品开发 —— 智能卡网吧收费机. 智能卡网吧收费系统构成: 1 、网吧卡(小额电子钱包) 2 、网吧收费机 3 、 PC 机网吧管理软件 开发任务:设计智能卡网吧收费机 1 、判断卡的合法性 2 、上网计时收费. 产品开发之第一步:卡型选择. 智能卡网吧收费系统卡型需求分析
E N D
智能卡网吧收费机设计(一)——逻辑加密卡的存储结构与安全特性智能卡网吧收费机设计(一)——逻辑加密卡的存储结构与安全特性 电子与信息工程学院
教学目标 • 接触式逻辑加密卡的芯片逻辑组成与安全特性 • 按位操作逻辑加密卡的存储结构与安全特性 • 多存储器结构逻辑加密卡存储结构与安全特性 • 多分区逻辑加密卡的存储结构与安全特性
产品开发——智能卡网吧收费机 • 智能卡网吧收费系统构成: 1、网吧卡(小额电子钱包) 2、网吧收费机 3、PC机网吧管理软件 • 开发任务:设计智能卡网吧收费机 1、判断卡的合法性 2、上网计时收费
产品开发之第一步:卡型选择 • 智能卡网吧收费系统卡型需求分析 • 小额电子钱包功能,脱机消费(无需与银行联网消费) • 定额收费 • 防伪造,防非法充值 • 低成本
网吧卡选型——存储卡 • AT24C**系列存储卡是否适合用于网吧收费收费系统?为什么? 否! 存储卡无任何安全措施 易被伪造、非法充值
网吧卡选型——CPU卡 • 在逻辑加密卡和CPU卡中,哪类卡适宜作为网吧卡?为什么? CPU卡安全性高 但卡及系统的成本较高 较难实施 结论 宜选用逻辑加密卡作为网吧卡
接触式逻辑加密卡逻辑组成 Security Memory Card
逻辑加密卡特性 • 组成:非易失性存储器+硬件加密逻辑; • 芯片:专门为IC卡设计的芯片(ASIC); • 安全性:具有安全控制逻辑,安全性能较好; • 多种安全措施:PIN、EC、FUSE、TC、多存储器(ROM、PROM、EEPROM并存)、多分区存储结构。 • 通信协议:支持ISO7816国际标准。 • 适用场合:有一定安全要求的场合,如IC卡电话、网吧卡、加油卡、保险卡、驾驶卡、借书卡、小额电子钱包等。
网吧卡选型——逻辑加密卡产品系列 • 目前市场上主要的逻辑加密卡系列有哪些?各有什么特点? 计数型(按位操作):AT88SC06、SLE4406 多存储器结构(按字节操作):SLE4442 单存储器多分区结构(按字节操作):AT88SC1604
按位操作的逻辑加密卡—SLE4406 • 一次性使用,带加密逻辑,按位操作 • 计数卡(Token Memory Card),以一次性的计数方式,从写满的计数器中减“1”,直至存储单元全减为“0”为止 • 104位容量 ,最大可提供20 480计数单位 • 3字节传输密码,1位发行标志保护 • 常用于具有定额定价的消费系统中,如公用电话卡、预付费加油卡、停车计费卡、游乐园消费卡等
SLE4406存储分布图和计数规则 • 计数规则 发行后,用户区进入计数状态,为5位8进制计数器,但第5位计数器只有4位可用,因此最大计数值为20480。 说明: 计数区按位写0,按字节 借位擦除,如: 11111111 00000000 擦成: 11111110 11111111
SLE4406操作方式 • 检查发行标志位是否为1,是则可以校验传输密码 • 先将密码计数器-1,然后比较密码,校验正确则密码计数器恢复,允许写入发行商代码,将控制位写为0(发行)。允许初始化计数器(擦除第2-5字节并重新写入),此操作将撕毁传输密码并不可恢复。 • 一旦控制位为0,表示已发行,将不能再更改发行商代码。第2-5字节成为5位计数器,只能写0及借位擦除。
多存储器逻辑加密卡—SLE4442 • 按字节操作,可反复应用 • 多存储器结构 • 256 *8位 EEPROM型主存储器。 • 32 *1位 PROM型保护存储器。 • 4 * 8位 EEPROM型加密存储器 • 安全性:用户密码(3字节)+密码错误计数(3次)+PROM保护 • 2线串行连接协议,满足 ISO7816同步传送协议
SLE4442存储器分配(一) • 主存储器(main memory):EEPROM型,256B 按字节操作,字节地址0~255(00H~FFH), 所有单元可任意读取。 • 主存储器可分为两个数据区: • 保护数据区:00H-1FH,用户密码+熔丝保护(擦除、写 当校验用户密码正确且熔丝未熔断时允许进行擦除和写入操作,否则不允许 熔丝:保护存储器中第n位(n=0~31)对应主存储器中第n个字节,1——未熔断,0——熔断。 • 应用数据区 :20H-FFH。用户密码保护(擦除、写)
SLE4442存储器分配(二) • 保护存储器(protection memory):PROM型,32bits 按位操作,位地址0~31 每位相当于主存储器保护数据区对应字节单元的控制熔丝(FUSE),相应位为1时该字节可擦写,为0时不可 • 保护存储器可任意读出,但需校验密码正确方能写入,一经写入(从1变为0)不可再擦除,可理解为FUSE一经熔断不可再恢复。
SLE4442存储器分配(三) • 加密存储器(security memory): EEPROM型,4B • 按字节操作,字节地址0~3 • 字节0:EC(Erroe Counter),低3位有效, 可任意读、写, 用户密码校验成功方可擦除。 • 字节1,2,3:3字节 PSC(可编程加密代码) PSC校验成功前不可读,只能进行比较操作; 密码“比较”成功后才可以进行读出、写入和擦除。
多分区逻辑加密卡—AT88SC1608 • 按字节操作,可反复应用 • 存储容量:16Kbits • 安全性:三重密码+熔丝+读写控制位 • 单存储器、多存储分区结构 • 标志数据区:制造商、发行商代码。 • 控制数据区:SC(2字节)、EC、Erase key。 • 应用数据区:4个、各自独立 • 2线串行连接协议,满足 ISO7816同步传送协议
SC1 一区密码
AT88SC1608存储器分配(一) 标志数据区:验证卡片真伪的重要标识 • 制造商代码区FZ (Fabrication Zone ),2B 记录卡芯片生产商的特定信息(例如:生产批号、日期、特别制定的特征代码) FUSE1熔断前,可读,可更改 FUSE1熔断后,只读,不可更改 • 发行商代码区IZ (Issuer Zone),8B 用于记录卡片发行商的特定信息(例如:发行批号、日期、地区范围编号、特定用户编号等特征代码) FUSE2熔断前,可读,可更改 FUSE2熔断后,只读,不可更改
AT88SC1608存储器分配(二) 控制数据区:三重密码+密码错误计数 • 用户密码SC(Security Code),2B 用户密码错误计数SCAC(Security Code Attempts Counter ),1B(8次) • 应用区密码 SC1~ SC4,2B 应用区密码错误计数SCAC1~ SCAC4,8次 • 应用区擦除密码EZ1~4(Erase key ),2B 应用区擦除密码错误计数EnAC(Erase key Attempts Counter ,n=1,2,3,4), 8次
AT88SC1608存储器分配(三) 应用数据区:1~4,各自独立,特性相同 • 存储用户的相关数据记录 。 • 第1位为写保护位(P1) ;第2位为读保护位(R1),均为1有效(可读/写)
实训 接触式逻辑加密卡读写操作 准备: • 确认电源正、负极,按标志正确连接接触式IC卡读写器的电源线及串口线,注意电源+5V与地不可接反。 • 打开接触式IC卡读写器读写操作软件DEMO,确认通信正常。 • 将实验白卡插入接触式IC卡读写器插卡槽,自动测卡进入卡操作界面。 • SLE4442卡密码:FFFFFFH AT88SC1608卡密码:F0F0H或A5A5H
SLE4442读写操作 • 读卡:记录卡密码、卡错误计数值,主存储器存储结构(各区域名称、地址范围、字节数)、存储内容和读出条件。 • 写卡:对主存储器各区域进行写入/擦除操作,记录操作结果,总结各区域写入/擦除条件。 • 密码操作: (1)修改密码:在未通过和已通过密码校验二种情况下分别修改密码,记录操作结果,总结修改密码的条件。 (2)恶意猜测密码:在未通过密码校验的情况下输入错误密码,记录此时的读卡、写卡结果。 注意: 修改密码后必须及时还原密码为FFFFFFH。 猜测密码错误次数不得超过2次!以免锁卡!
AT88SC1604读写操作 • 读卡:在未通过和已通过密码校验二种情况下记录存储器存储结构(各区域名称、地址范围、字节数)、存储内容和读出条件。 • 写卡:在未通过和已通过密码校验二种情况下对存储器各区域进行写入/擦除操作,记录操作结果,总结各区域写入/擦除条件。 • 熔丝操作:模拟熔断,对存储器各区域进行写入/擦除操作,记录操作结果,总结熔断操作对各区域的保护作用。 注意: 修改密码后必须及时还原密码。 猜测密码错误次数不得超过8次!以免锁卡! 只允许模拟熔断,不可熔断,否则将无法恢复。