版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
FM1208非接触CPU卡读写系统的开发与研制张建军包国峰马一兵(ZHANGJian-jun,ShandongInstituteofInformationEngineeringDepartmentofTransport,Jinan,ShanDong,250001)(BAOGuo-feng,ShandongUniversitysubsidiaryProvincialHospitalComputerInformationCenter,Jinan5ShanDong,250001)(MAYi-bing,ShanhaiJIN-AN-TEAUTOIDR&DCenter,Jinan,ShanDong,250001)概要:本文在对非接触逻辑加密卡Mifare和非接触CPU卡比较的基础上,介绍了我国自主研发的复旦FM1208非接触CPU卡的特点及性能,并给出了读写FM1208卡的硬件系统的配置及选型,以及软件设计的参考流程。为已经大量使用的Mifare卡的门禁、考勤、通道管理、消费以及公用事业等应用领域提供了良好的升级解决方案。Abstract:Inthispaper,thelogicofcontactlessandnon-encryptedMifarecardaccesstoCPUcardbasedonthecomparison,onChina'sself-developednon-contactFM1208FudanCPUcardfeaturesandperformance,andFM1208aregivencardstoreadandwritetheconfigurationofthehardwaresystemandSelection,aswellasreferencesoftwaredesignprocess・HasbeenwidelyusedfortheMifarecardaccesscontrol,time,channelmanagement,andconsumerapplicationsaswellaspublicutilities,suchastheupgradeprovidesagoodsolution.关键字:逻辑加密卡;CPU卡;MIFARE;读写基站;COSKeyword:non-encryptedcard;CPUcard;Mifare;Read&Writebasestation;COS1引言近年来,非接触IC卡广泛应用于各个领域,给我们的生活、1:作以及管理带来了诸多方便以及益处。早期投入应用的非接触IC卡技术多为逻辑加密卡,其低廉的成本,简明的交易流程,较简单的系统架构,迅速得到了用户的青睐,并得到了快速的应用和发展。据不完全统讣,截至去年年底,国内各领域非接触逻辑加密卡的发卡量已经达到数亿张。比如最为著名的Philips公司(现NXP)的MifareI卡片。其在非接触卡应用领域占有全球80%的市场份额,是口前非接触智能卡的工业标准,也成为ISO14443-A的工作草案。随着非接触逻辑加密卡不断应用的过程,非接触逻辑加密卡技术的不足之处也日益暴露,难以满足更高的安全性和更复杂的多应用的需求。
2008年,互联网上公布了破解MIFARECLASSICIC芯片(即Ml芯片)密码的方法。德国研究员亨里克•普洛茨(HenrykPlotz)和弗吉尼亚大学计算机科学在读博士卡尔斯滕•诺尔(KarstenNohl)成功地破解了恩智浦半导体的Mifare经典芯片的安全算法。德国Virginia大学和荷兰Radboud大学两个独立硏究小组分别证实了MIFARE芯片的易受攻击性,并发表了破解芯片加密算术的论文以及演示了实际操作芯片的破解过程。破解事件公开后,荷兰内务部大臣特霍斯特在接受媒体采访时表示,全球多达10亿张安全卡中所使用的一项技术可轻易破解。此次破解风波经过国内媒体的转载报道后,在我国引起了轩然大波,城市公用事业IC卡应用作为非接触式逻辑加密卡的应用大户,不得不让我们静下心来认真思考城市公用事业IC卡系统的安全问题及未来走向。如果掌握了破解技术,不法分子可以很低的经济成本对采用该芯片的各类“一卡通”、门禁卡进行非法充值或复制,带来很大的社会安全隐患。因此,非接触CPU卡智能卡技术正成为一种技术上更新换代的选择,用CPU卡替换逻辑加密卡的时代已到来。2非接触逻辑加密卡Mifare卡的安全性问题Mifare的安全认证依赖于每个扇区独立的KEYA和KEYB的校验,可以通过扇区控制字对KEYA和KEYB的不同安全组合,实现扇区数据的读写安全控制。其个人化也比较简单,主要包括数据和各扇区KEYA、KEYB的更新,在期间所有敏感数据包括KEYA和KEYB都是直接以明文的形式更新。山于KEYA和KEYB的校验机制,只能解决卡片对终端的认证,而无法解决终端对卡片的认证,即我们俗称的“伪卡”的风险。Mifare的密钥就是一个预先设定的固定密码,无论用什么方法计算密钥,最后就一定要和原先写入的固定密码一致,就可以对被保护的数据进行读写操作。因此无论是一卡一密的系统还是统一密码的系统,经过破解就可以实现对非接触逻辑加密卡的解密。有种观点认为只要是采用了一卡一密、实时在线系统或非接触逻辑加密卡的ID号就能避免密钥被解密,其实,非接触逻辑加密卡被解密就意味着Ml卡可以被复制,使用在线系统尽可以避免被非法充值,但是不能保证非法消费,即复制一张一样ID号的Ml卡,就可以进行非法消费。现在的技术使用FPGA就可以完全复制。基于这个原理,Mifare的门禁卡也是不安全的。3非接触CPU卡的特点与优势3.1概念非接触CPU卡,也称智能卡,卡内的集成电路中带有微处理器CPU、存储单元(包括随机存储器RAM、程序存储器ROM(FLASH).用户数据存储器EEPROM)以及芯片操作系统COSo装有COS的CPU卡相、打于一台微型计算机,不仅具有数据存储功能,同时具有命令处理和数据安全保护等功能。特点非接触CPU卡智能卡与非接触逻辑加密卡相比
•芯片和cos的安全技术为CPU卡提供了双重的安全保证•拥有独立的CPU处理器和芯片操作系统•对计算机网络系统要求较低,可实现脱机操作,可实现真正意义上的一卡多应用,每个应用之间相互独立,并受控于各自的密钥管理系统交易中自动保证数据的完整性(防拔)•可以更灵活的支持各种不同的应用需求,更安全的设计交易流程。独立的保密模块-使用相应的实体SAM卡密钥实现加密、解密以及交易处理,从而完成与用户卡之间的安全认证。3.3优势3.3.1先进性。CPU卡可以作为银行的金融卡使用,代表、前IC卡应用的最高安全等级,正成为IC卡应用中的主流产品。3.3.2规范性。支持符合ISO7816-3标准的T=0、T=1通讯协议,符合《中国金融集成电路(IC)卡规范》、《中国金融集成电路(IC)卡应用规范》,支持符合银行规范的电子钱包、电子存折功能。3.3.3兼容性。山于有中国人民银行的统一规范及严格检测,CPU卡具有很好的兼容性。安全性。芯片和COS的安全技术为CPU卡提供了双重的安全保证。支持DES、TripleDES等加密算法,支持线路加密、线路保密功能,防止通信数据被非法窃取或篡改,使用过程密钥实现加密、解密。3.3.4可扩展性。卡片支持多种容量选择,如2K、4K、8K、16K、32K字节的EEPROM空间。CPU卡从卡结构到卡容量可以很容易扩展到多应用,可以与银行联合,实现真正意义上的一卡多用。3.3.5安全性与逻辑加密卡相比,山于智能卡内部具有CPU芯片,在具有数据判断能力的同时,也具备了数据分析处理能力,因此智能卡可以随时区分合法和非法读写设备,并且山于有了CPU芯片,具备数据运算能力,还可以对数据进行加密解密处理,因此具备非常高的安全性。CPU卡是在将EEPROM芯片封装在卡片上的同时,将微处理器芯片(CPU)也封装在里面。这样,EEPROM的数据接口在任何情况下都不会与IC卡的对外数据线相连接。外部读写设备只能通过CPU与IC卡内的EEPROM进行数据交换,在任何情况下都不能再访问到EEPROM中的任何一个单元。外部读写设备在与智能卡进行数据交换时,首先必须发指令给CPU,IIICPU根据其内部的ROM中存储的卡片操作系统(COS)对指令进行解释,并进行分析判断,在确认读写设备的合法性后,允许外部读写设备与智能卡建立连接,之后的数据操作仍然要山外部读写设备发出相应的指令,并用CPU对指令进行正
确解释后,允许外部读写设备和智能卡中的数据存储区(RAM)进行数据交换,数据交换成功后,在CPU的控制下,利用智能卡中的内部数据总线,再将内部RAM中的数据与EEPROM中的数据进行交换。这样就实现了对智能卡EEPROM中数据的安全保护,因此具备非常高的安全性。3.4 认证机制与密匙系统非接触CPU卡智能卡可以通过内外部认证的机制,例如像建设部定义的电子钱包的交易流程,高可黑的满足不同的业务流程对安全和密钥管理的需求。对电子钱包圈存可以使用圈存密钥,消费可以使用消费密钥,清算可以使用TAC密钥,更新数据可以使用卡片应用维护密钥,卡片个人化过程中可以使用卡片传输密钥、卡片主控密钥、应用主控密钥等,真正做到一钥一用。非接触CPU卡加密算法和随机数发生器与安装在读写设备中的密钥认证卡(SAM卡)相互发送认证的随机数,可以实现以下功能:通过终端设备上SAM卡实现对卡的认证。•非接触CPU卡与终端设备上的SAM卡的相互认证,实现对卡终端的认证。•通过ISAM卡对非接触CPU卡进行充值操作,实现安全的储值。•通过PSAM卡对非接触CPU卡进行减值操作,实现安全的扣款。•在终端设备与非接触CPU卡中传输的数据是加密传输。通过对非接触CPU卡发送给SAM卡的随机数MACHSAM卡发送给非接触CPU的随机数MAC2和山非接触CPU卡返回的随机数TAC,可以实现数据传输验证的计算。而MACKMAC2和TAC就是同一张非接触CPU卡每次传输的过程中都是不同的,因此无法使用空中接收的办法来破解非接触CPU卡的密钥。但同时,与非接触逻辑加密卡系统相比,非接触CPU卡智能卡的系统显得更为复杂,需要进行更多的系统改造,比如密钥管理、交易流程、PSAM卡以及卡片个人化等。密钥通常分为充值密钥(ISAM卡),减值密钥(PSAM卡),身份认证密钥(SAM卡)。4非接触CPU卡FM1208的特点与性能FM1208是复旦微电子股份有限公司设计的单界面非接触CPU卡芯片,产品支持ISO14443-A协议,硬件DES协处理器,内置8Kbvte的EEPROMoFM1208的特色是能够兼容现有广泛使用的非接触逻辑加密卡,将现在广泛使用的非接触逻辑加密卡(Mifare算法)和符合银行标准的接触式CPU卡的功能合二为一。4.1特点通信协议:ISO14443-AMCU指令兼容8051•支持106Kbps数据传输速率Triple-DES协处理器程序存储器32Kx8bitROM
数据存储器8Kx8bitEEPROM256x8bitiRAM384x8bitxRAM•低压检测复位•高低频检测复位EEPROM满足10万次擦写指标EEPROM满足10年数据保存指标3ms(包括复位应答和防冲突)2.4ms3ms(包括复位应答和防冲突)2.4ms<350ms•识别一张卡•EEPROM擦写时间•典型交易过程FM1208的安全机制•有反电源分析模块•有高低频检测复位模块,芯片匸作频率超出检测范围自动复位•ROM反逆向提取,存储器数据加密4.4功能框图数据区EEPROMMMUrandom323DES权限控制複口转换xRAMEEPROM擦写控制iRAM51corecontrolsignalbus寄存器组复位控制时钟控般摸式控制主控制主控模块(MCM)IN2◄复位控制MIFARE模块逻辑控制模拟模块4.4功能框图数据区EEPROMMMUrandom323DES权限控制複口转换xRAMEEPROM擦写控制iRAM51corecontrolsignalbus寄存器组复位控制时钟控般摸式控制主控制主控模块(MCM)IN2◄复位控制MIFARE模块逻辑控制模拟模块高低频检测解码CRCPARITY校脸防冲突编码encryptrandomregulator5非接触CPU卡FM1208的COS5.1FMC0S简介山于CPU卡具有很高的安全性及一张卡支持多种应用的特点,所以IC卡家族中的CPU卡的使用范围正日益扩大。类似一台讣算机,CPU卡内也有CPU、存储器和输入、输出接口,所以在应用中CPU卡也必然需要操作系统。上海复旦微电子股份有限公司成功地开发了自主版权的CPU卡操作系统-FMCOS(FMSHCardOperatingSystem),该操作系统符合ISO7816系列标准及《中国金融集成电路(IC)卡规范》,适用于保险、医疗保健、社会保障、公共事业收费、安全控制、证件、交通运输等诸多应用领域,特别是在金融领域。FMCOS详细规定了电子钱包、电子存折和磁条卡功能(EasyEntry)三种基本应用。6.6.3 IS014443-3IS014443-42FMCOS特点支持SingleDES.TripleDES算法:可自动根据密钥的长度选择SingleDES、TripleDES算法•支持线路加密、线路保护功能:防止通信数据被非法窃取或篡改支持在一张卡上实现多个不同的应用:可建立三级录•支持电子钱包功能:钱包大小可由用户自行设定•支持多种文件类型:包括二进制文件、定长记录文件、变长记录文件、循环文件、钱包文件支持ISO7816-3:T=0(字符传送)通讯协议•满足银行标准:符合《中国金融集成电路(IC)卡规范》•防插拔功能:交易处理过程中非正常拔出的卡片自动恢复3功能模块FMCOS山传输管理、文件管理、安全体系、命令解释四个功能模块组成。传输管理:按ISO7816-3标准监督卡与终端之间的通信,保证数据正确地传输,防止卡与终端之间通讯数据被非法窃取和篡改•文件管理:将用户数据以文件形式存储在EEPROM中,保证访问文件时快速性和数据安全性•安全体系:安全体系是FMCOS的核心部分,它涉及到卡的鉴别与核实,对文件访问时的权限控制机制•命令解释:根据接收到的命令检查各项参数是否正确,执行相应的操作6系统开发基础及芯片选型6.1射频基站芯片的选择和使用基站芯片用于非接触射频卡与中央处理器之间的信息通讯。以下芯片均可以实现对FM1208等符合ISO14443TYPA标准的CPU卡的读写,设il•人员可以参考相关文档。本文主要以卡片为主,所以对于基站芯片的具体应用,设计人员可以参考相关文档。Philips系列芯片:RC500、RC522、RC531、RC632•复旦系列芯片:FM1702N.FM1702SL、FM1715N、FM1725NTI公司的基站芯片:RI-R6C-001A、TRF7960EM公司基站芯片:EM4094、EM42942单片机的选择和使用对于非接触射频卡的信息处理,根据功能和速度的要求,设讣人员可以选择不同的方案,各种CPU芯片各有优缺点。51单片机:价格低廉,入门简单,货源充足,AVR单片机:价格适中,速度快,外设丰富ARM:功能强大,速度快,可运行RTOS这2部分是学习和操作非接触CPU卡的核心ISO/IEC14443-3的这一部分规定了邻近卡(PICCs)进入邻近耦合设备(PCDs)时的轮寻,通信初始化阶段的字符格式,帧结构,时序信息。REQ和ATQ命令内容,从多卡中选取其中的一张的方法,初始化阶段的其它必须的参数。这部分规定同时适用于A型PICCs和B型PICCsISO/IEC14443-4的这一部分规定了非接触的半双功的块传输协议并定义了激活和停止协议的步骤。这部分传输协议同时适用于A型卡和B型卡。IS07816-4这一部分是学习和操作SAM的基础,其中规定了:•山接口设备至卡以及相反方向所发送的报文、命令和响应的内容•在复位应答期间卡所发送的历史字节的结构及内容、”I处理交换用的行业间命令时,在接口处所看到的文件和数据的结构•访问卡内文件和数据的方法•定义访问卡内文件和数据的权利的安全体系结构•安全报文交换的方法•访问卡所处理算法的方法。本标准不描述这些算法5FMC0S2.0—FM1208内置C0SFMCOS2.0是FM1208内置的COS,里面详细的说明了各种命令的使用方法。PB0C2.0—建设部IC卡应用规范本标准规定了建设事业CPU卡机电特性、逻辑接口与传输协议、文件和命令、应用选择、安全机制及安全要求、电子存折/电子钱包应用和相应的定义符号等。本标准适用于与建设事业IC卡应用相关的卡片和终端设计、制造、管理、发行以及应用系统的研制、开发、集成、维护和监理的部门(单位)。EMV2000/2004一中国金融集成电路(IC)卡规范2・0》7SAM卡在系统中的应用根据应用方式可分为•硬密钥:即在终端机具中安装SAM卡座,所有的认证都是山安装在SAM卡座中的SAM卡进行运算的,这样在终端机具维修时,只要取出SAM卡座中的SAM卡,这台终端机具就是空的了。所以所有的银行设备都采用SAM卡的认证模式。•软密钥:终端机具中没有SAM卡座,这个密钥的运算实际上是山终端机具完成的,这样客户的密钥就等于存在终端机具中,厂家拿回终端机具维修时,极易造成密钥流失。8硬件最小系统框图通讯接口9软件设计流程9.1卡片激活流程图开始开始开始开始发送REQA9.2 卡片激活程序主要步骤9.2.1第一步:按照IS011443-3TYPEA中的时序进行询卡操作〃寻卡//input:req_code=寻卡方式// req_code=0x52:寻天线区内所有符合A标准的卡// req_code=0x26:只寻未进入休眠状态的卡charPcdRequest(unsignedcharreq_code,unsignedchar*atq)9.2.2第二步:按照IS011443-3TYPEA中的时序进行防冲突操作〃防冲撞//input:g_cSNR=存放序列号(4bytc)的内存单元首地址//output:status=MI_OK:成功// 得到的序列号放入指定单元charPcdAnticoll(unsignedcharpicccmd,unsignedchar*snr)9.2.3第三步:按照IS011443-3TYPEA中的时序逬行选择操作〃选定一张卡//input:g_cSNR.=序列号charPcdSelect(unsignedcharpicccmd,unsignedchar*snr.unsignedchar*_size)9.2.4第四步:按照IS011443-4TYPEA中的时序逬行选择应答请求操作〃复位//input:parameter=PCDBUFERRSIZE//output:pLen=复位信息长度// pData=复位信息charMifareProRst(unsignedcharparametenunsignedchar*pLen,unsignedchar*pData)9.2.5第五步:按照IS011443-4TYPEA中的时序进行1协议和参数选择响应〃协议和参数选择响应//input:pData二参数charMifareProPPS(unsignedchar*pData)9.2.6第六步:按照IS011443-4TYPEA中的时序逬入半双工憐协议〃向ISO14443-4卡发送COS命令//input:CID_NAD=是否包含CID或NAD//timeout=FWI//pLen=命令长度// pCommand=COS命令//ouput:pLen=返回数据长度// pCommand=返回数据charMifareProCom(unsignedcharCID_NAD,unsignedchartimeout,unsignedchar*pLzen,unsignedchar*pCommand)
9.3FM1208CPU卡发卡命令举例9.3.1卡片上电#执行Request,Anticoll,Select操作执行RATS进入CPU卡流程发送:接收:E0511078809002209000FFFFFFFFFFFFFFFF9.3.2j^MF:00A4000000发送:接收:0A0100A40000000A016F15840E315041592E5359532E4444463031A50388010190009.3.3夕卜部认证命令:第一步:发送取随机数命令发送:0B010084000004接收:0B01XXXXXXXX9000第二步:使用外部认证密钥对随机数进行计算后发出发送:0A010082000008(8字节加密后数据,加密数据为<XXXXXXXX+00000000>)返回:0A0190009.3.4擦除MF下数据:800E000000发送:接收:发送:0B01800E000000FA0101FA0101对于发送和接收的数据格式,请参考ISO14443-4中相关的信息。10结束语Mifare算法的破解,给城市公用事业IC卡系统安全敲响了警钟。在科技化、信息化飞速发展的、彳今时代,我们只有不断创新、不断提高城市公用事业IC卡系统的安全系数及技术水平,才能需求更高、更远的发展,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 米面主食制作工操作管理测试考核试卷含答案
- 2026年医院行风建设专题培训课件
- 2026年针刺伤防护与职业暴露处置课件(含案例分析)
- 水路危险货物运输员岗前测试验证考核试卷含答案
- 真空电子器件金属零件制造工创新意识评优考核试卷含答案
- 2026年临床药师工作规范课件(学习辅导版)
- 味精原料粉碎工岗位专业能力考核试卷含答案
- 仲钼酸铵制备工岗位规划考核试卷含答案
- 实验测试员安全实操模拟考核试卷含答案
- 护工岗前工作规范考核试卷含答案
- FDE模式行业观察与实践
- HL1ST601-2023 钢结构焊接连接节点通 用图B册 (Q355钢)
- APQC跨行业流程分类框架 (8.0 版)( 中文版-2026年4月)
- 2025年劳动人事争议仲裁员培训考试试题及答案
- TB-T 3356-2021铁路隧道锚杆-PDF解密
- 农药生产经营使用检查表
- 母婴初级理论知识考核试卷
- 母婴护理理论知识考核试卷
- 《幼儿园课程概论》课件-第一章 幼儿园课程概述
- 膀胱阴道瘘修补术后护理查房
- 工程伦理第2章工程中的风险、安全与责任
评论
0/150
提交评论