ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

门禁卡分不清?IC卡、ID卡、M1卡、CPU卡原理与区别一文讲透

门禁卡分不清?IC卡、ID卡、M1卡、CPU卡原理与区别一文讲透 别再被各种门禁卡、电梯卡、考勤卡搞糊涂了。IC卡、ID卡、M1卡、CPU卡听起来都像一家的实际用起来却经常栽跟头。掏出手机想用NFC复制门禁卡结果物业说不行小区换了电梯卡旧卡白送都没人要网上买的读卡器回来怎么都读不出数据。这些都是因为你没搞懂手里的卡到底是哪一类。这篇文章我直接把这四类卡片掰开揉碎讲清楚用最直观的对照把它们的原理、适用场景、安全性一次说明白顺便聊聊现在很火的电梯卡解码、扇区加密这类操作背后的逻辑是什么。不管你是普通用户想弄明白自家门禁卡还是物业、工程人员日常维护门禁系统都能从里面找到能直接用上的东西。1. IC卡和ID卡先把最基础的底层概念捋清楚很多人上来就分IC卡和ID卡其实这两个词本身就不是一个维度的分类。IC卡是集成电路卡的统称ID卡是只读身份识别卡它们最大的区别在物理层的工作频率和数据读取方式上。1.1 非接触式IC卡的核心特征先搞清楚一个常见误区IC卡其实分成接触式和非接触式两大类。我们平时说的银行卡、社保卡很多是接触式IC卡需要插进读卡器里。而门禁、电梯里用的IC卡几乎全部是非接触式射频卡通过无线电波跟读卡器通信。非接触式IC卡的工作频率通常是13.56MHz这个频率决定了它跟读卡器的通信距离一般在5到10厘米左右。刷卡的时候把卡贴近读卡器就能感应到不需要物理接触。卡里面有一颗芯片和一组天线线圈读卡器通过射频场给卡片供电同时进行双向数据传输。这就是为什么刷卡瞬间你能听到“嘀”的一声那是读卡器完成了一次读写交互。1.2 ID卡只有一串固定编号的工作证ID卡属于低频卡工作频率是125kHz里面的芯片功能极其简单出场时就写死了一串全球唯一的编号比如十位十进制数字。对外部来说这张卡只有“我是谁”这一个信息能读出来没有存储区不能往里写入任何业务数据也没有加密能力。用个类比ID卡就像单位门口的登记簿保安看一眼你的工牌编号就放行而IC卡更像一张可以反复改写的电子表格里面可以记录余额、楼层权限、有效期等一堆信息。换句话说ID卡只能做“身份识别”这一件事IC卡可以做身份识别之外的逻辑运算和数据存储。2. M1卡的系统架构详析扇区与密钥机制一次说透M1卡是IC卡里最常见的代表全称是Mifare Classic 1K由恩智浦半导体的Mifare系列演化而来。市面上绝大多数门禁卡、电梯卡、校园一卡通用的都是M1卡。2.1 卡内数据布局为什么M1卡有16个扇区M1卡内部有1KB的EEPROM存储空间按块和扇区划分。1KB一共被分成16个扇区每个扇区又包含4个块每个块是16个字节。第0扇区的第0块比较特殊存放的是厂商代码和卡片唯一序列号UID这部分的第0块在生产时锁定不能修改。其他扇区的每个块都可以由软件自由读写但每个扇区都配有一个独立的密钥对KeyA和KeyB用来控制数据读写权限。正是这种“扇区密钥”的结构让M1卡既能存数据又带点初级保护所以才能如此广泛地应用在门禁、预付费水表、公交卡等场景。一个常见疑问是为什么M1卡能被破解因为M1卡采用的加密算法是私有的Crypto-1流密码算法这个算法在2008年前后被安全研究人员逆向分析并公开。算法本身强度有限加上很多门禁系统出厂时根本没改默认密钥导致M1卡的数据保护形同虚设。典型的出厂常见密钥就是全F也就是FFFF FFFFFF另外像A0A1A2A3A4A5这类规则密钥也大量存在。2.2 密钥认证与读写控制M1卡常用的两类密钥每张M1卡在访问某个扇区前读卡器必须先通过该扇区的密钥认证。认证通过后根据扇区控制位定义的权限才能执行读、写、加值、减值等操作。常用的密钥分两种KeyA和KeyB。KeyA偏重于控制读操作KeyB可以灵活配置读写权限两者都是6字节长度。物业发卡时用的授权软件通常持有所有扇区的KeyA和KeyB所以能自由写入楼层、有效期等数据。普通手持机想读卡如果没有对应扇区的密钥基本什么都读不出来。这就出现了一个很现实的问题很多小区的门禁系统从交房到现在都没改过密钥只要拿一张空白M1卡用通用密钥套一遍就能复制。这也是电梯卡解码、复制卡这类需求能存在的前提条件。3. CPU卡如何实现更高安全性与M1卡差在哪CPU卡和M1卡都属于IC卡但CPU卡其实是更加高级的存在。简单说M1卡是一个“带密码锁的大仓库”而CPU卡是一个“带独立处理器的安全小电脑”。3.1 CPU卡内部结构CPU卡内部除了存储单元还有一颗微处理器芯片以及卡操作系统COSChip Operating System。读卡器发给卡片的数据不是直接对存储区操作而是先由COS进行指令解析、算法校验再由CPU决定是否执行。内部采用金融级的加密算法常见的包括DES、3DES、AES、RSA、SM1/SM2/SM4等国产密码算法。因为运算在卡内芯片里完成密钥永远不会以明文形式出现在外部通信链路上所以极难被旁路截获。金融IC卡、社保卡、部分一二线城市的公共交通卡用的就是CPU卡。这类卡的成本比M1卡高不少一片可能在几块钱到十几块钱而M1卡批发只要几毛钱到一元出头。3.2 算法差异M1使用固定流密码CPU使用动态协商会话M1卡认证通过后后续每次通信使用的加密流是可以通过已知明文攻击来推导的。因为我只要掌握了一次通信的明文和密文理论上就能算出密钥流再配合数据库碰撞破解整个密钥只是时间问题。而CPU卡每次会话都会动态生成随机数通过对称或非对称算法协商出临时会话密钥即使截获了本次通信下一次的密钥也完全不同。这种动态协商机制决定了CPU卡的安全等级和应用范围M1卡完全没法比。4. 一张对照表讲明白四大卡片的区别一目了然标题里说过“一张图给你讲明白”这里我用一张对照表直接把四类卡片的核心区别铺开看清这一张表以后遇到任何门禁卡你都能直接判断出它是什么类型。对比维度ID卡M1卡IC卡代表CPU卡工作频率125kHz低频13.56MHz高频13.56MHz高频存储空间基本无只读UID1KB/4KB EEPROM8KB至64KB不等含COS数据写入出厂固化扇区级读写指令级读写加密能力无加密Crypto-1流密码DES/3DES/AES/RSA/国密算法安全性极低仿造容易中等可被破解且密钥常默认高防克隆防篡改常见应用老式门禁、考勤、会员卡小区门禁、电梯卡、校园卡、停车卡银行卡、社保卡、部分城市通卡成本最低几毛钱低几毛到一元高几元到十几元不等4.1 为什么我把M1卡归到IC卡里很多人问M1卡是IC卡吗严格来说M1卡是IC卡的一种全称“非接触式IC卡Mifare Classic型”。所以当你听到“IC卡”这个称呼时大概率指的就是M1卡但也有可能是CPU卡需要看具体制造商提供的规格说明。行业里习惯把“IC卡”跟“ID卡”对立起来谈这里的IC卡往往默认就是指M1卡这种可读写的13.56MHz非接触卡。4.2 场景化选型建议如果你在帮单位做门禁选型预算吃紧且安全要求不高比如普通办公室考勤用M1卡就够了如果涉及收费、充值、高安全区域进出直接上CPU卡别省那几块钱。ID卡虽然便宜但安全性和扩展性都太差新项目基本不建议碰老系统如果还在用后续也该考虑逐步升级。5. 实操干货快速识别手里的卡片是哪一种现在你手里可能有门禁卡、电梯卡想判断是ID卡还是IC卡除了问物业最简单的方法是用手机NFC配合相关App测试。目前市面上常见的NFC读取工具例如麦田IC卡助手兼容13.56MHz的M1卡和CPU卡读取但对125kHz的ID卡基本无能为力因为你手机NFC本身就不支持125kHz。这个特性反而可以用来区分手机能读到的RFID卡一般可以判定为IC卡M1或CPU手机根本无响应的大概率是ID卡。另一个办法是看卡的物理形态。老式的厚卡约2mm很多是ID卡薄卡约0.9mm则多为IC卡。但这不是绝对标准现在也有专门仿IC卡外形的ID卡以及ID/IC复合卡判断时还是以读卡器识别结果为准。5.1 如何区分M1卡和CPU卡手机能读到IC卡之后如何进一步判断是M1还是CPU可以看数据读取结果。M1卡的UID通常以04开头4字节而CPU卡返回的是更长的历史记录或者多个文件结构。麦田IC卡助手这类工具在读取时界面会显示卡类型同时你还可以尝试对扇区做一次“全扇区读取”如果能直接列出16个扇区数据说明这张卡很可能是M1卡因为CPU卡通常不允许直接读取底层扇区。如果手头有专业的门禁发卡器就更直观了发卡器软件会显示卡片的ATQA应答和SAK选择确认值M1 Classic卡的SAK通常是08而CPU卡的SAK可能是20或28。这些参数虽然看起来复杂但在实际操作中软件会直接翻译成“M1卡”“CPU卡”等名称。5.2 手机NFC能复制M1卡吗能不能模拟CPU卡手机NFC模拟功能包括系统自带钱包和第三方App在模拟M1卡时存在一个致命限制绝大多数手机只能模拟“UID卡”无法模拟带完整数据区的M1卡更不可能模拟CPU卡内部的COS和密钥。所以网上很多教程里“手机直接复制门禁卡”的做法通常只适用于那些不检验扇区数据的简易门禁一旦门禁系统会读取并校验扇区数据或者加密扇区手机模拟基本就失效了。正因如此想完整复制一张M1卡还是得靠支持全扇区读写的PN532、ACR122U这类设备外加一套完整读卡软件。需要提醒一句复制卡只能用于你自己合法持有的卡片和权限用在他人设备上属于违规操作这一点务必遵守法律法规。6. 关于电梯卡解码、扇区加密的认知与正确姿势最近“ic电梯卡解码软件”“ic卡扇区加密最简单三个步骤”这类词搜索热度很高我在这里专门讲讲背后的机制帮大家建立正确认知。6.1 电梯卡解码到底在解什么电梯卡本质上是把楼层权限写入M1卡少数高端梯控用CPU卡。解码这个说法其实就是用软件读取M1卡所有扇区数据分析出某一层的权限字节再把这个数据改到另一张卡上。这个过程靠的是M1卡密钥的公开性和已知通用密钥。市面上很火的“电梯卡解码软件”底层大多只是封装了“读取扇区数据 按楼层规则修改数据 写回”这三个动作。因为很多梯控系统在发卡时确实没有重置默认密钥所以这种操作才能频频成功。需要强调的是必须在你合法拥有管理权限的情况下才能对梯控卡进行这类修改。物业或者住户对自己名下的卡做测试是没问题的但未经授权操作他人门禁、用卡破解门禁权限是明确的违法行为。6.2 IC卡扇区加密的最简单三个步骤从技术角度讲给M1卡新生成的子卡加密防止被别人随意破解核心就三步第一步用发卡软件读取母卡全部扇区数据确认哪些扇区有数据、哪些是空的记录下每个扇区的密钥。第二步在软件中修改指定扇区的KeyA和KeyB换成自己随机生成的新密钥例如11 22 33 44 55 66同时把扇区控制位同步更新保证读写权限符合业务需求。第三步把修改后的数据导入到新卡UID卡或其他空白M1卡并校验写入结果。这样新卡就使用了独立密钥原先的默认全F密钥不再生效。6.3 麦田IC卡助手这类工具的用途定位这类App本质上是一个NFC卡片分析工具主要功能是读取卡片UID、扫描扇区密钥、查看扇区数据。我实测下来它读取M1卡的速度和成功率都比较稳定对一些全F密钥的卡可以直接读取遇到未知密钥的卡会提示需要专用设备进行嗅探或字典攻击。它的定位应该是“分析学习工具”而不是“破解工具”——用来了解自己手头的卡、排查门禁系统是否存在弱密钥、检验加密措施是否到位才是正确用途。7. 常见问题与避坑经验7.1 为什么有的卡被手机识别但刷不进单位门禁这种情况非常多见。手机能识别说明它是13.56MHz的IC卡但门禁系统校验了扇区数据。例如门禁不仅看UID还要看某个扇区内是否写入了员工编号和权限位而手机模拟卡只有UID扇区数据缺失自然刷不开。解决方法是别指望手机原生模拟用支持全扇区模拟的设备或者干脆用物业发的原卡。7.2 空白卡买回来到底选IC还是ID先搞清楚原门禁系统用的是哪种卡。如果原系统是ID卡你买IC空白卡是没用的因为读卡器根本读不出IC卡编号。反过来原系统是IC卡买ID卡同样白搭。手头没有读卡器时直接拿一张原卡去物业或者卖卡商家那边测试最保险。7.3 我尝试对M1卡加密后原来的卡还能用吗很多人在加密新卡后发现旧卡失效了。这不一定是你操作错了很可能是门禁系统支持“一卡一密”也就是系统在发卡时给每张卡分配了不同的扇区密钥。你改动了新卡密钥后系统端没有同步更新校验自然失败。所以加密前必须确认门禁系统的密钥管理机制最好是系统端由物业统一管理不要自己随手改。7.4 电梯卡到手多久后需要重新激活部分新的梯控制系统引入了“定期密钥更新”和“滚动码”技术。也就是说即使你成功复制了当前数据系统每隔一段时间比如30天、90天就会自动更换一批卡片的权限密钥旧复制卡会失效。这种设计大大提升了梯控安全性也是为什么网上很多复制教程试用时有效、过一阵子就翻车的原因。8. 一点实际操作后的心得这套系统东西看起来杂但核心逻辑就一条卡片的存储结构决定了数据写入方式加密强度决定了破解难度和应用层级。普通用户只要记住ID卡是一串死编号、M1卡是可读写的低价多扇区IC卡、CPU卡是带处理器的安全卡就够了。我自己动手测试过不少M1卡和CPU卡卡样最深刻的体会是M1卡的性能上限和安全隐患是绑在一起的对门禁这种场景够用但对收费交易绝对不合格。给正在选型的朋友一个实操建议多花一点预算上CPU卡能省掉后续一大堆“卡被复制”“电梯卡被仿冒”的售后麻烦。你省下的那点差价还不够一次安全整改的人工成本。
返回列表