




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于一卡通应用的CPU卡安全性分析刘善勇 何维(工程师 沈阳地铁集团有限公司,辽宁 沈阳 110011)摘要:本文通过对密钥管理、存储结构、数据控制、交易流程等各方面分析,对比非接触式CPU卡和逻辑加密卡(M1)的技术特点,分析了CPU卡在城市一卡通应用方面的安全性高的优势,对CPU卡的规划、开发、使用有一定的借鉴作用。关键词:CPU卡 逻辑加密卡 一卡通 Security analysis based on the application of the smart CPU cardLiu Shanyong(Engineer Shenyang Metro Group Co., Ltd, Liaoning Shenyang 110011 )Abstract: By analyzing key management, storage structure, data control, transaction process and other aspects, this paper contrast contactless CPU card and logic encryption card ( M1 ) technical characteristics to show the advantages of high security in the smart card using field. It also can give some references about the planning, developing and using of the CPU card. Keywords: Central Processing Unit Card Logic encryption card Smart card一、概述近年来 ,随着非接触IC卡技术在国内的逐步推广,非接触应用以其快捷方便的操作方式,开始逐步替代传统现金的支付方式,成为公共交通、城市通卡建设的首选技术。然而随着IC卡应用在小额消费领域的迅猛发展,IC卡交易的安全性越来越受到人们的关注,特别是2008年10月M1卡加密算法被破解,加快了普通逻辑加密卡向CPU卡转换的进程,本文通过密钥管理、存储结构、数据控制、交易流程等各方面的分析,对比分析CPU卡较M1卡安全的技术优势。二、M1卡与CPU卡对比2.1 CPU卡与M1卡加密系统比较(1)逻辑加密存储卡(M1):加密逻辑卡通过校验密码方式来保护卡内的数据对于外部访问是否开放,但只是低层次的安全保护,无法防范恶意性的攻击。M1卡的密钥就是一个预先设定的固定密码,一卡一密本质上是将SAM卡内的主密钥通过对M1卡的卡号分散后得到M1卡的子密钥,但是这个子密钥仍然要通过终端单片机明文传送给射频芯片完成对M1卡的认证。更为严重的是SAM卡送出的是M1卡的明文密码,黑客只要获得一张SAM卡,就能够通过它获得所有卡片的密码,就可以对被保护的数据进行读写操作。因此无论是一卡一密的系统还是统一密码的系统,经过破解就可以实现对非接触逻辑加密卡的解密。(2)非接触CPU卡:也称智能卡,卡内的集成电路中带有微处理器CPU、存储单元(包括随机存储器RAM、程序存储器ROM(FLASH)、用户数据存储器EEPROM)以及芯片操作系统COS。装有COS的CPU卡相当于一台微型计算机,不仅具有数据存储功能,同时具有命令处理和数据安全保护等功能。1)可实现真正意义上的一卡多应用,每个应用之间相互独立,并受控于各自的密钥管理系统。存储容量大,可提供1K-64K字节的数据存储。2)独立的保密模块-使用相应的实体安全认证模块(SAM)实现加密、解密以及交易处理,从而完成与用户卡之间的安全认证。3)非接触CPU卡智能卡与非接触逻辑加密卡相比,拥有独立的CPU处理器和芯片操作系统,所以可以更灵活的支持各种不同的应用需求,更安全的设计交易流程。2.2 存储结构比较通常来说M1卡采用分扇区存储结构,总体分为16个扇区,每个扇区4块(块03),共64块。 按块号编址为063。第0扇区的块0(即绝对地址0块)用于存放厂商代码,已经固化,不可更改。其他各扇区的块0、块1、块2为数据块,用于存贮数据;块3为控制块,存放密码A、存取控制、密码B。 其结构如图1所示。块0 扇区0 块1数据块0块2数据块1块3密码A 存取控制 密码B数据块2 块0控制块3扇区1块1数据块4块2数据块5块3密码A 存取控制 密码B数据块6 控制块7 0扇区15 1数据块60 2数据块61 3密码A 存取控制 密码B数据块62控制块63图1 M1卡存储结构CPU卡更像一台微型计算机,存储以文件的形式存在,文件类型分为主文件(MF,相当于DOS文件系统的根目录)、专用文件(DF,相当于DOS文件系统的目录,可以有多层)、基本文件(EF,相当于DOS文件系统的文件)。图2为沈阳地铁储值票CPU卡文件结构。图2 沈阳地铁储值票CPU卡文件结构从数据存储结构上可以看出较M1卡固定的存储结构,CPU卡的文件管理,可以灵活设计,可根据具体业务应用,可为定长记录,也可为变长记录。存储空间自由划分,存储结构更为方便、快捷且安全性、保密性更高。2.3 数据控制2.3.1 M1卡的数据存取控制M1卡每个扇区的密码和存取控制都是独立的,可以根据实际需要设定各自的密码及存取控制。每个扇区的块3为控制块,包括了密码A、存取控制、密码B。具体结构如图3所示:A0 A1 A2 A3 A4 A5 FF 07 80 69 B0 B1 B2 B3 B4 B5 密码A(6字节) 存取控制(4字节) 密码B(6字节) 图3 M1卡数据存储结构每个扇区的密码和存取控制都是独立的,可以根据实际需要设定各自的密码及存取控制。存取控制为4个字节,共32位,扇区中的每个块(包括数据块和控制块)的存取条件是由密码和存取控制共同决定的,在存取控制中每个块都有相应的三个控制位,定义如表1所示: 块0:C10C20C30块1:C11C21C31块2:C12C22C32块3:C13C23C33表1 M1卡数据储存控制位定义 三个控制位以正和反两种形式存在于存取控制字节中,决定了该块的访问权限(如 进行减值操作必须验证Key A,进行加值操作必须验证Key B,等等)。数据块(块0、块1、块2)的存取控制如表2所示下: 控制位(X=0.2), 访 问 条 件 (对数据块 0、1、2)C1XC2XC3X Read Write IncrementDecrement, transfer,Restore000KeyA|BKeyA|BKeyA|BKeyA|B010KeyA|BNeverNeverNever100KeyA|BKeyBNeverNever110KeyA|BKeyBKeyBKeyA|B001KeyA|BNeverNeverKeyA|B011KeyBKeyBNeverNever101KeyBNeverNeverNever111NeverNeverNeverNever表2 M1卡数据块储存控制(KeyA|B 表示密码A或密码B,Never表示任何条件下不能实现)如:当块0的存取控制位C10 C20 C30=1 0 0时,验证密码A或密码B正确后可读; 验证密码B正确后可写;不能进行加值、减值操作。 2.3.2 CPU卡的存取控制CPU卡的核心是卡片操作系统(COS),COS是一个比较小的非常完整严密的系统管理着卡片的一举一动,外界对CPU卡发布的所有命令都需要通过COS才能对卡起作用, COS控制CPU卡和外界的信息交换、管理CPU卡内的存储器并在卡内部完成各种命令的处理。CPU卡主要通过COS实现对卡内不同类型文件的操作,具体文件结构根据应用方不同需求可以自由设计,一般COS符合ISO/IEC 7816和PBOC2.0电子存折、电子钱包规范,通常提供以下几种文件类型供操作,文件读写都必须满足相应条件,文件读写可以选择性采用加密和带安全报文的方式,以增加安全性,详见表3。文件类型提供操作主要应用二进制文件读、写存储各种数据定长记录读、写存储几组类似数据变长记录读、写目录文件等循环记录读、写存储交易记录等数据电子存折圈存、圈提、修改透支限额、消费、取现PBOC电子存折电子钱包圈存、消费PBOC电子钱包表3 CPU卡数据控制从以上分析中,可以了解M1卡只能对不同扇区的只读/只写/读写/加/减,CPU卡可以对不同文件类型灵活设计认证方式读写;M1卡采用6字节密码,分扇区控制,CPU卡16字节密钥,可多级多个密钥组合控制;M1卡专用不公开硬件逻辑算法(已被破解);CPU卡通用公开软件或硬件加速算法(金融标准),破解的可能性很小。2.4 交易流程M1卡读写/安全算法内置密钥外送,认证方式为卡片与专用基站芯片认证(认证通讯协议已破解);CPU卡采用通用读写模块透明传输,配合SAM密钥算法,认证在双方卡内部进行,传输中为加密后的随机数; M1卡交易流程简单不规范,需自定义防拔流程;CPU卡有银行及住建部标准规范(CJ/T 304-2008 建设事业CPU卡操作系统技术要求、CJ/T 333-2010 城市公用事业互联互通卡密钥及安全技术要求),也可由用户灵活设计。芯片和COS的安全技术为CPU卡提供了双重的安全保证,自带操作系统的CPU卡对计算机网络系统要求较低,可实现脱机操作,可实现真正意义上的一卡多应用,每个应用之间相互独立,并受控于各自的密钥管理系统, 交易中自动保证数据的完整性(防拔),应用层命令有标准可循,容易统一。M1卡、CPU卡交易流程样例见图4,图5。 M1卡 读写器(A)RB(E) (B)TOKEN AB (C) (D)TOKEN BA图4 M1卡交易认证令牌环图注:A、B、C、D、E为令牌环中的各交易处理环;RB为卡向读写器发送的随机数;TOKEN AB、TOKENBA为卡与读写器直接发送的令牌数据。图 5 CPU卡交易流程分析M1卡和CPU卡交易流程可以看出, M1卡存取密码需要通过卡与极具多次交互验证,只要了解到M1卡的存储结构,很容易截获M1卡的控制密码。非接触CPU卡智能卡可以通过内外部认证的机制,可以满足不同的业务流程对安全和密钥管理的需求。对电子钱包圈存可以使用圈存密钥,消费可以使用消费密钥,清算可以使用交易验证码(TAC)密钥,更新数据可以使用卡片应用维护密钥,卡片个人化过程中可以使用卡片传输密钥、卡片主控密钥、应用主控密钥等,真正做到一钥一用。CPU卡加密算法和随机数发生器与安装在读写设备中的密钥认证卡(SAM卡)相互发送认证的随机数,可以实现以下功能: (1) 通过终端设备上SAM卡实现对卡的认证。 (2) CPU卡与终端设备上的SAM卡的相互认证,实现对卡终端的认证。 (3) 通过充值安全认证模块(ISAM)卡对CPU卡进行充值操作,实现安全的储值。 (4) 通过减值安全认证模块(PSAM)卡对CPU卡进行减值操作,实现安全的扣款。 (5) 在终端设备与CPU卡中传输的数据是加密传输。 (6) 通过对CPU卡发送给SAM卡的信息验证码(MAC)1,SAM卡发送给CPU的MAC2和由CPU卡返回的TAC,可以实现数据传输验证的计算。而MAC1、MAC2和TAC就是同一张CPU卡每次传输的过程中都是不同的,因此无法使用空中截取的办法来破解CPU卡的密钥。三、总结CPU卡通过COS实现卡内不同类型应用文件操作,每个应用之间相互独立,并授控于各自的密钥管理系统,做到每一张卡的每个应用都有各自独立的密钥,且每个应用的密钥为128位。其具有三种认证方式,持卡者合法性认证PIN校验,卡合法性认证内部认证,系统合法性认证外部认证,对交易的各个单元(持卡人、卡片、终端设备)进行相互认证,保证交易介质的合法性,从而确保杜绝伪造卡、伪造终端、伪造交易等。到目前为止CPU卡的安全性可以说是最高的,同时由于有硬件协理器及COS管理,数据信息交换过程十分稳定,不存在临界状态丢失数据的现象,因此可靠性也非常高。只是目前CPU卡的卡片成本相对较高,相信随着应用量的加大,以及CPU卡安全性和可靠性高等独特优势,在今后各个应用领域取代M1卡将
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年军供站医护人员招聘笔试答题技巧与案例分析
- 2025年中职英语专业的教师资格证面试模拟题及答案
- 2025年抽纱刺绣工艺品项目发展计划
- 2025年液压气压刹车系统项目建议书
- 2025-2026学年北师大版(2024)小学数学三年级上册《捐书》教学设计
- 吉林省长春市榆树市2025-2026学年九年级上学期开学五校联考语文试卷(含答案)
- 第二章 有理数及其运算 单元测试 培优卷(含答案) 2025-2026北师大版八上
- 2025年江西省吉安市吉州区中考数学一模试卷(含部分答案)
- 教育学与教学法基础知识试题及答案
- 古琴等级考试试题及答案
- 小红书离婚协议书模板
- 激光焊接安全措施试题及答案
- 农村租地种植合同样本
- 典型故障波形分析-典型故障下录波图的分析(电力系统故障分析)
- 2025高考政治命题纲要解读
- 万科物业管理服务方案
- 2025年精密光学器件行业深度研究分析报告
- 合伙人股权分配协议书范本
- 中国糖尿病行为与生活方式干预指南(2024版)解读课件
- 《对外汉语比字句》课件
- 《中华人民共和国职业分类大典》(2022年版)各行业职业表格统计版(含数字职业)
评论
0/150
提交评论