跳转到内容

MIFARE

本页使用了标题或全文手工转换
维基百科,自由的百科全书
MIFARE Logo

MIFARE恩智浦半导体公司(NXP Semiconductors)拥有的一系列非接触式智慧卡近傍型卡技术的注册商标。

MIFARE包括一系列依循ISO/IEC 14443-A规格,利用无线射频识别(频率为13.56MHz)的多种非接触式智慧卡专有解决方案。这项技术是最早是1994年由米克朗英语Mikron集团(Mikron Group)开发,在1998年转售给飞利浦电子公司(2006年拆分成为恩智浦半导体公司)。近年来MIFARE已经普遍在日常生活当中使用,如大众运输系统付费、商店小额消费、门禁安全系统、借书证等。

发展历史

MIFARE 1K
  • 1994 — MIFARE Classic 1K,非接触式读取技术开发成功。
  • 1996 — 韩国首尔市地铁成为首个采用MIFARE的商转系统。
  • 1997 — MIFARE Pro,兼容接触与非接触式的智慧卡,并采用了3DES协同处理器(coprocessor)机制。
  • 1999 — MIFARE Pro X,开发完成公开密钥基础建设(PKI)机制。
  • 2001 — MIFARE UltraLight规格开发成功。
  • 2002 — MIFARE DESFire,开发以微处理器(microprocessor)为基础的产品。
  • 2004 — MIFARE DESFire SAM,增强了MIFARE DESFire的安全基础架构连接。
  • 2006 — MIFARE DESFire EV1,第一个支持128bit 高级加密标准(AES)的产品。
  • 2008 — MIFARE Plus,替换MIFARE Classic使用的128bit AES。
  • 2008 — MIFARE Ultralight C,内建有三重数据加密算法验证的纸质票证IC(Paperticket IC)。
  • 2010 — MIFARE SAM AV2,加入可读取高级加密标准(AES)、三重数据加密算法(3DS)、公开密钥基础架构(PKI)等安全密钥的验证机制。
  • 2012 — MIFARE Ultralight EV1,与MIFARE Ultralight相同的规格但是取消了加密功能。
  • 2013 — MIFARE DESFire EV2,更好的性能、保密性并且支持多种加密程序。
  • 2016 - MIFARE SDK改名为TapLinx,并改进产品支持。
  • 2020 - MIFARE DESFire EV3 推出
  • 2022 - MIFARE Ultralight AES 推出

MIFARE的名字由来是米克朗车资收费系统( MIkron FARE-collection System)组合而来,飞利浦电子公司在1998年收购了这项技术。

1994年,米克朗公司授权英飞凌 科技在MIFARE现有的基础上开发新的机制。[1]。当时英飞凌获取的样本规格是1K的存储器容量 ,8、16、32位的虚拟微处理器和USIM用的NFC装置[2]

摩托罗拉公司曾经尝试开发与MIFARE功能类似的接触式晶片,原本该公司预估每个月有1百万次的使用量,但是最后只有10万次。以致最后放弃了这个产品 [3]

1998年飞利浦将MIFARE Classic技术授权给了日立制作所[4],该公司在1999年至2006为日本电信电话(NTT)开发了非接触式智慧卡的解决方案。另外为NTT开发的电话卡项目有3个合作伙伴(分别是:Tokin-Tamura-Siemens、日立制作所、电装公司),原本规划以MIFARE Classic授权为基础进而开发出两种大小不同容量的接触式产品,但是最后只有完成大容量的产品。

2008年,NXP为日立制作所提供了包含MIFARE Plus及MIFARE DESFire2项技术,日立制作所的半导体部门也更名为瑞萨电子 [5]

2010年,NXP把MIFARE授权给金雅拓公司(Gemalto),2011年NPX授权法国欧贝特科技使用在SIM卡上。这些授权都是用来开发NFC领域的产品。

硬件架构及工作原理

MIFARE Ultralight MIFARE Classic MIFARE Plus MIFARE DESFire
MIFARE Ultralight EV1 MIFARE Ultralight C MIFARE Classic EV1 MIFARE Plus (S/X) MIFARE Plus SE MIFARE DESFire EV1 MIFARE DESFire EV2 MIFARE DESFire EV3
射频接口 ISO/IEC 14443-2,TYPE A
通讯协议 ISO/IEC 14443-3 ISO/IEC 14443-3&4 ISO/IEC 14443-4
UID码 UID:7字节 UID:7字节,RID:4位组(无UID) UID:7字节,RID:4位组(无UID)
通讯速度 106Kbps 106Kbps-848Kbps
资料存储容量 48bytes 128bytes 144bytes 1K、4Kbytes 2K、4Kbytes 256、2K、4K、8Kbytes 2K、4K、8Kbytes
验证密钥种类 TDES Crypto-1 Crypto-1AES TDESAES
机卡验证类型 密码 三重认证
机卡通讯加密类型 Encrypted Plain,Encrypted以及CMACed
共同判据认证类型
(Common Criteria Certification)
EAL4+ EAL4+ EAL5+

UID:唯一标识符(Unique Identifier), RID:安全随机标识符(Random Security Identifier)

资料存储区块示意图
区段 区块 0 区块 1 区块 2 区块 3
0 制造商代码 资料区 资料区 密钥、存取权限
1 资料区 资料区 资料区 密钥、存取权限
2 资料区 资料区 资料区 密钥、存取权限
: : : : :
14 资料区 资料区 资料区 密钥、存取权限
15 资料区 资料区 资料区 密钥、存取权限
  • 卡片架构:卡片上面有一组唯一标识符、通讯接口(包含天线及调制解调器)以及一个ASIC里面包含了通讯逻辑电路、加密控制逻辑电路与资料存储区( EEPROM),可以作为电子钱包或其它门禁、差勤考核、借书证等用途。
    • 资料存储区块:可分16个区段(sector 0-15), 每个区段由4个区块(block 0-3)组成,而每个区块都是独立的单元,每1个区块的容量有16Byte。而每个区段的最后一个区块则用来存放2组密钥(KeyA、KeyB),以及密钥对应各自的存取权限(Access bit)。
    • 每张卡片第一区段的第一区块(sector 0,block 0)只能读取无法写入资料,称为制造商代码(Manufacturer Code), 第1-4byte为UID。第5byte为比特计数检查码(bit count check),其余的存放卡片制造商的资料。所以每张卡片实际能使用的只有15个区段,即便如此也可用于15个不同的应用。
  • 读写卡机架构:读卡器包含CPU、电源模块、读(写)模块、记忆模块、控制模块等,有些还有显示模块、定时模块等其他模块。
  • 工作流程:当卡片接近读写卡机进入通讯天线的感应范围(约2.5公分至10公分)之后,读写卡机便会提供微量电力(约达2伏特之后)驱动卡片上的电路。此时卡、机各以曼彻斯特编码MANCHESTER Encoding)及米勒编码英语Miller encodingMiller encoding)加密通讯内容后再以振幅偏移调制(Amplitude Shift Keying,ASK)透过调制解调器收发无线电波信号互相验证是否为正确卡片,如果验证结果正确读写卡机就会确认要存取的资料存储区块,并对该区块进行密码校验,在卡、 机三重认证无误之后,就可以透过加密进行实际工作通讯。这个过程大约只需要0.1秒就可以完成。如果同时有多张卡片进入读写卡机感应范围,读写卡机会将卡 片编号并选定1张卡片进行验证直到完成所有卡片验证(称为防碰撞机制)或是离开感应范围为止。
    • 卡 机三重认证步骤:1.卡片产生一个随机数RB发送到读卡器。2.读卡器会将接收到的随机数RB依公式加密编码后的TokenAB数值并发送回卡片。3.卡片接 收到TokenAB后,会把加密部分解译出来然后比对参数B、随机数RB。同时并依据收到的随机数RA,引用公式编码后产生TokenBA发送回读卡器。4. 读卡器接收到TokenBA后,又把加密过的部分解译,比较随机数RB,RA与TokenBA中解出之RB、RA是否相符,正确的就可以完成指令(扣款、打 开门锁或是登记其他事项)。

攻击事件

2007年12月,在骚乱交流大会上Henryk Plötz和Karsten Nohl[6]发表了部分用于MIFARE晶片算法上的反向工程技术[7]

2008年3月,在荷兰的奈梅亨大学(Radboud University Nijmegen)数字安全研究群里发表了利用反向工程克隆并且修改采用MIFARE Classic技术的电子票证OV卡(ov-chipkaart)上的余额[8]。 奈梅亨大学发表了下列三篇关于MIFARE Classic的文件:

恩智浦半导体曾经尝试在荷兰的法庭提出诉讼以阻止这些文件发表,但是法官认为这属于言论自由,便否决NXP公司所提[9][10]

2008年8月在第17届高等计算系统协会(USENIX)中有另外一份讲述如何利用反向工程的程序发表[11]

台大电机教授示范窜改悠游卡:2010年7月,台湾大学电机系教授郑振牟团队使用改进过的监听数据包(Sniffer-Based)的攻击手法攻击Mifare卡。将1张正常使用中的悠游卡,将余额从正100多元,更改成为负五百多元[12]

资安顾问窜改悠游卡:2011年7月,某科技公司一名24岁资安顾问,宣称在美国网站购买读写卡机,再下载美国学生破解波士顿地铁查理卡(Charlie Card)的文章后花了四个月的时间撰写程序,破解悠游卡防护系统,以自制读写卡机为悠游卡窜改加值成功并盗刷六次[13]

相关条目

参考

  1. ^ SIEMENS AND MIKRON AGREE LICENSING DEAL. telecompaper. 1994-04-07 [2015-10-26]. (原始内容存档于2019-06-11). 
  2. ^ Infineon Adds Security and Convenience to SIM Cards for NFC Applications. Infineon. 2007-11-13 [2015-10-26]. (原始内容存档于2016-06-28). 
  3. ^ Motorola sets smart card targets. Cnet. 2002-01-02 [2015-10-26]. (原始内容存档于2019-06-29). 
  4. ^ SMART CARD NEWS-Banksys Offers Stakas in Proton Purse Technolgy (PDF). Cnet. 1998-02-01 [2015-10-26]. (原始内容存档 (PDF)于2013-11-02). 
  5. ^ Renesas and NXP announce licensing agreement on MIFARE contactless technology. NXP Semiconductors. 2008-11-03 [2015-10-26]. (原始内容存档于2015-09-30). 
  6. ^ Karsten Nohl的個人網頁. [2015-10-26]. (原始内容存档于2020-02-04). 
  7. ^ Nohl, Karsten; Henryk Plötz. Mifare: Little Security, Despite Obscurity. Chaos Communication Congress. [2015-10-26]. (原始内容存档于2018-11-26). 
  8. ^ Digital Security Group publisher=Radboud University Nijmegen. Security Flaw in Mifare Classic (PDF). 2008-03-12 [2015-10-26]. (原始内容存档 (PDF)于2016-12-23). 
  9. ^ Arnhem Court Judge Services. Pronunciation, Primary Claim. Rechtbank Arnhem. 2008-07-18 [2015-10-26]. (原始内容存档于2012-02-15). 
  10. ^ Judge denies NXP's injunction against security researchers. The Standard. 2008-07-18 [2015-10-26]. (原始内容存档于2009-01-05). 
  11. ^ Nohl, Karsten; David Evans. Reverse-Engineering a Cryptographic RFID Tag. Proceedings of the 17th USENIX Security Symposium. 2008-08-01 [2015-10-26]. (原始内容存档于2011-06-08). 
  12. ^ 臺大電機教授示範無線竄改悠遊卡金額. iThome. 2010-09-01 [2015-10-26]. (原始内容存档于2019-06-13). 
  13. ^ 天才駭客破解悠遊卡 盜刷39元. 苹果日报. 2011-09-28 [2015-10-26]. (原始内容存档于2017-09-14). 

外部链接