初识RFID

一、马拉松芯片计时系统

如今,绝大多数马拉松比赛使用的计时芯片技术是:RFID(RadioFrequency Identification)技术,又称无线射频识别。其工作原理是这样的:射频识别(RFID)是一种无线通信技术,可以通过无线电讯号识别特定目标并读写相关数据。在马拉松比赛中,号码布芯片或者绑在鞋带上的芯片录入跑者的个人信息,当跑者携带号码布芯片通过计时地毯时,计时系统便会识别跑者的信息和记录通过的时间。

芯片计时系统根据工作原理的不同可以分为两个大类:主动式系统和被动式系统。

主动式系统,是计时芯片上带有电池。当靠近读取设备时,计时芯片受到电磁感应主动发出唯一码。读取设备读取到之后记录下时间和对应的唯一码,就这样记录下选手通过的时间。

被动式系统,是计时芯片上没有电池。当靠近读取设备时,通过电磁感应产生电源发出唯一码,供读取设备读取。因为被动式的成本低廉,因此在马拉松这样的场景中得到了普遍应用。

另外根据赛事计时需求的不同,还可以分为低频计时芯片、高频计时芯片、超高频计时芯片。像平时的马拉松比赛,用得最多的是超高频计时芯片,贴在号码布背面。对于一些高速运动项目,如自行车赛、铁人三项等,会用到低频计时芯片,系在鞋带上。

那这三种芯片有什么区别呢?主要体现在读取距离上!

低频计时芯片(使用频段134 kHz)受温度,湿度,人体和金属等干扰很小,但要求计时芯片和计时毯之间的距离很近(读取距离20-30厘米)。所以一般系在鞋带上。

高频计时芯片(使用频段13.56 MHz)读取距离相对大一些(50-100厘米),而且通过算法保证大量计时芯片同时读取时不会受到相互的干扰,但是会受到人体和金属的干扰。目前经常和低频芯片一起做成双频计时芯片。

超高频计时芯片Gen2标准使用频段860 to 960 MHz)读取距离很大(可以达到2-5米),一般放在号码布上面。但是它很容易受到人体的干扰,所以会在芯片背面贴一层泡沫膜,保证和人体的隔离。

如何灵活运用芯片计时系统,还需要找到专门负责赛事计时服务的服务商(爱计时拥有丰富的计时执行经验),进行进一步了解。同时要多多关注芯片生产商,像老牌的MYLAPS B.v.、ChronoTracksystem lnc、Active Network IPICO等。好的芯片生产商能更好地确保计时的准确率,减少漏读、误读的情况。

 

二、nfc与rfid的联系与区别

NFC(Near Field Communication)是一种短距离的高效率无线通信技术,它起源于RFID(Radio Frequency Identification),但在某些方面有所区别。以下是NFC与RFID的主要联系和区别:

  1. 起源:NFC是从RFID技术演变而来的,可以看作是其一种特殊形式或子集。NFC技术在设计上是针对近距离和高效率数据交换的需求,而RFID主要用于远距离识别和跟踪物体上的标签。
    nfc属于RFID吗?
    
    是的,NFC(Near Field Communication)属于RFID(Radio Frequency Identification)技术的一种变体。NFC技术是一种基于RFID技术的短距离通信技术,通过无线电波在两个设备之间传输信息。
    
    NFC技术可以在两个设备非常接近的情况下工作,通常的操作距离不大于4厘米,相比其他RFID技术的工作距离更小。
    
    和传统的RFID技术一样,NFC技术也采用了无线射频电磁波进行数据传输,不过NFC技术的通信速率比传统RFID技术更高,支持双向通信和数据加密。
    此外,NFC技术还能够从接收设备获取电力,不需要电池或电源,可以极大地降低成本和维护成本。 
    所以,NFC技术可以被认为是RFID技术的一种变体,是一种更加高效、安全并且便捷的RFID应用技术。
  1. 集成程度:NFC将非接触读卡器、非接触卡和点对点功能整合进一块单芯片,而rfid必须有阅读器和标签组成。NFC手机内置NFC芯片,组成RFID模块的一部分,可以当作RFID无源标签使用进行支付费用;也可以当作RFID读写器,用作数据交换与采集,还可以进行NFC手机之间的数据通信。
  2. 通信特点:RFID只能实现信息的读取以及判定,而NFC技术则强调的是信息交互。
  3. 工作原理:两者都利用无线电波来实现数据的传输,这包括电磁波形式的能量传递,使得标签或读卡器可以通过接收这些电磁波来获取所需的信息。234
  1. 工作频率:NFC技术通常工作在13.56MHz的固定频率上,而RFID则可能使用不同的频率范围,包括低频(12kHz)、高频(13.56MHz),具体频率取决于应用需求和应用环境。34
  1. 通信距离:NFC技术因其较小的操作距离而得名“近场通信”,通常在几厘米范围内有效,而RFID技术的通信距离可以从几厘米到数米甚至更远,具体取决于所使用的电磁波频率和标签的类型。

  2. 应用领域:尽管NFC和RFID都可以应用于身份验证和物品识别等领域,但它们各自有不同的侧重点和应用场景。NFC技术通常用于近程支付、门禁系统、公交/地铁卡等日常生活场景,而RFID技术则常用于库存管理和物流追踪等工业领域。2

  1. 安全性:NFC技术支持加密和双向认证,提供更高的安全性,而RFID技术在安全性方面的表现相对较弱,需要额外的安全措施来确保数据的安全。

NFC能复制射频卡吗

NFC(Near Field Communication)是一种近场通讯技术,它与射频卡(Radio-Frequency Identification,RFID)在工作原理上有一些相似之处。NFC技术可以读写一种被称为NFC标签或NFC芯片的设备,它们使用高频电磁场来传输数据。 虽然NFC芯片和RFID芯片的工作原理类似,但是两者的标准、协议和加密机制都不同。

在理论上,NFC设备可以复制某些射频卡的数据,但这需要满足多种条件,如访问权限、加密方式、标准等。因此,一般情况下,NFC设备不能复制,但不排除有一些特殊情况下可行。 不管使用哪种通讯技术,复制任何一种射频卡都是不合法的,并可能会违反有关法律法规。

复制卡片会导致信息泄露、财产损失等风险,并对个人和企业造成直接的损失。因此,我们应该遵守法律的规定,并且在使用射频卡的过程中增强安全意识,加强卡片使用的管理和保护。

 
综上所述,NFC与RFID在技术和应用上有许多相似之处,但也存在明显的差异,尤其是在通信距离、工作频率以及在安全和隐私保护等方面的考虑。
 

 

三、NFC与蓝牙的区别

NFC和蓝牙(Bluetooth)都是短程通信技术,而且都被集成到移动电话。但NFC不需要复杂的设置程序。NFC也可以简化蓝牙连接。

NFC略胜蓝牙的地方在于设置程序较短,但无法达到低功率蓝牙(Bluetooth Low Energy)的速度。在两台NFC设备相互连接的设备识别过程中,使用NFC来替代人工设置会使创建连接的速度大大加快:少于十分之一秒。NFC的最大数据传输量 424 kbit/s 远小于 Bluetooth V2.1 (2.1 Mbit/s)。

虽然NFC在传输速度与距离比不上蓝牙 (小于 20 cm),但相应可以减少不必要的干扰。这让NFC特别适用于设备密集而传输变得困难的时候。相对于蓝牙,NFC兼容于现有的被动 RFID (13.56 MHzISO/IEC 18000-3) 设施。NFC的能量需求更低,与蓝牙 V4.0低能协议类似。当NFC在一台无电源供电的设备(比如一台关机的手机,非接触式智能信用卡,或是智能海报)上工作时,NFC的能量消耗会要低于低能蓝牙 V4.0。对于移动电话或是移动消费性电子产品来说,NFC的使用比较方便。NFC的短距离通信特性正是其优点,由于耗电量低、一次只和一台机器链接,拥有较高的保密性与安全性,NFC有利于信用卡交易时避免被盗用。NFC的目标并非是取代蓝牙等其他无线技术,而是在不同的场合、不同的领域起到相互补充的作用。

具体对比如下表:

  NFC 蓝牙 红外
网络类型 点对点 单点对多点 点对点
使用距离 ≤0.1m ≤10m ≤1m
速度 106, 212, 424 kbps
规划速率可达868 kbps
721 kbps 115kbps
2.1 Mbps ~1.0 Mbps
建立时间 < 0.1s 6s 0.5s
安全性 具备,硬件实现 具备,软件实现 不具备,使用IRFM 时除外
通信模式 主动-主动/被动 主动-主动 主动-主动
成本

 

四、RFID破解原理

4-1 最简单的ID卡的破解

常见破解办法

ID卡复制,ID卡除了复制也没有其他研究的了,毕竟太简单了。

基本原理介绍

ID卡属于大家常说的低频卡,一般大部分情况下作为门禁卡或者大部分大学里使用的饭卡,一般为厚一些的卡,是只读的,卡里面只保存有一串唯一的数字序号ID,可以把这串数字理解为你的身份证号,刷卡的时候,读卡器只能读到ID号,然后通过跟后台数据库进行匹配,如果是门禁卡,那么数据库里面就是存在这样的ID号,如果匹配上门就开了,匹配不上门就开不了。
如果是学校的饭卡,刷卡的时候,实际上操作的是你对应ID号相关的数据库中的数据。ID卡本身不存在任何其他数据,所以,学校使用的ID卡饭卡,只能复制卡,刷别人的钱(数据库中的钱),再没有其他办法。

破解方法

通过ID卡读卡器,读取卡内的ID号,然后把这串ID号写入到ID卡空卡中即可,各类工具特别多,需要一个ID卡读卡器。最简单的淘宝有卖的工具,两节7号电池,按读卡按钮读要复制的卡的ID,然后再按写卡按钮,把读到的ID号写入到空白卡中,即完成了卡复制工作,优点就是方便,缺点就是我们看不到整个过程,对我们安全研究来说作用不大。

 

4-2 射频IC卡破解

写在前面的技术铺垫

射频IC卡种类繁多,标准也繁多,这些不在介绍范围内,但是以下攻击介绍的原理类似,下面不特别说明就是指的M1 S50卡,这也是目前广泛使用的,并且大家做测试时最常见的IC卡。

常见的破解方法

跟ID卡一样,复制IC卡的UID号码写入到新的空白IC卡中。
破解IC卡的密码,从而改写IC卡中的数据。
破解IC卡的密码之后,把所有数据导出再写入到一个新的空白IC卡中,也就是 IC卡全卡复制(NFC手机及PM3等设备也支持把自己模拟成一个IC卡,实际上也属于卡复制一类)
IC 卡 (S50) 分为16个扇区(0-15),每个扇区又分为4个区域块(0-63), 每个扇区都有独立的一对密码keyA和keyB(先记着独立两个字,后面要思考问题)负责控制对每个扇区数据的读写操作,keyA和keyB分布在每个扇区的第四块中,第0扇区的第一个数据块,存储着IC卡的UID号(想成身份证号),其他扇区可以存储其他的数据,如钱等数据。
一般IC卡的UID是唯一的也是写死的不能更改,其他块的数据是可以更改的,所以也就有了普通IC空白卡以及UID可写空白卡(可以认为是不遵守规范的商家制作的)

现在我们开始想象破解的几种环境:
  • 读卡器把IC卡当成ID卡一样只识别UID正确即可,不管IC卡内其他数据,这时候,只需要把卡的UID读出来,并使用一个UID可写的空白卡,把UID写入即可。
  • 读卡器首先识别UID是否正确,然后再识别其他扇区的数据,通过keyA或者keyB对数据进行读写操作。这样首先UID得正确,其次,keyA或者keyB得正确(后面为了说的方便,我们就不说keyA或者keyB,直接说IC卡密码)。这样如果知道了IC卡密码,我们也不需要复制新卡,那么就可以更改IC卡中的数据,比如更改饭卡中的钱数。如果我们想复制一张一模一样的卡,那么就把原卡的所有扇区的数据全面导出来,再写入新的UID可写卡中即可。
  • 读卡器不识别UID,只管对扇区的密码进行验证,如果验证成功则允许对卡内数据操作等。(如某“XX快捷酒店”的门卡,就不管UID,只要扇区密码正确即可),那我们可以通过扇区密码更改门卡中的数据,如房号,住宿的时间等,也可以通过一个普通的IC卡(uid不能更改)复制一张门卡(跟原卡UID不同),也可以通过一个UID可写的卡,复制一张跟原卡完全相同的卡(跟原卡UID也相同)

基本上也就是以上几种环境,改写UID、通过扇区密码改写扇区数据、通过把原卡数据导出重新导入到新的IC卡中复制一张卡。
IC卡的UID是不通过密码控制的,可以直接通过读卡器获得,后面讲IC卡的通信过程会说明。那么我们做IC卡破解时,主要的问题就是破解IC卡每个扇区的控制密码,如果密码破解了,那要怎么操作都随便了。

 

4-3 IC卡密码破解的几种方法

使用默认的密码攻击、暴力穷举破解等等。

ffffffffffff
000000000000
a0a1a2a3a4a5
b0b1b2b3b4b5
aabbccddeeff
4d3a99c351dd
1a982c7e459a
d3f7d3f7d3f7
714c5c886e97
587ee5f9350f
a0478cc39091
533cb6c723f6
8fd0a4f256e9
FFzzzzzzzzzz
A0zzzzzzzzzz

常用破解工具说明

mfoc mfocgui 以及目前网络上,淘宝上充斥的各类破解工具都是基于nested authentication攻击原理,就是内置了一些默认密码,首先使用默认密码对每个扇区进行测试,如果某个扇区存在默认密码,然后就是用nested authentication攻击获得其他扇区的密码。
PM3的darkside攻击,Mfcuk等为darkside攻击工具,一个扇区密码都不知道的情况下破解用的,由于破解算法的原理本身就不是100%成功的,所以如果长时间破解不出来,就停了重新换个nt,重新选个时间破解,跟运气也有些关系。
不要别人几个小时,甚至几十分钟就破解成功了,你几天都没有破解出来,还一直傻傻的等,不如暂停换个nt,过一会再试。
Libnfc工具,目前用的比较多的是radiowar的nfcgui,radiowar网站上也说了,就是给nfc-list nfc-mfsetuid nfc-mfclassic 这三个工具写了个gui界面,你也可以使用命令行模式,或者你也可以自己写个gui界面调用这三个程序即可,这些都是操作卡或者读卡数据的工具,国内不同的IC卡读卡器都附带有一些读写卡程序,我用的一个比这个要方便的多。

 

4-4 题外话

不要信任RFID(或从不应该信任)

在万能的中国,你几乎可以找到你需要的一切一切,只要有哩可图就会有存在的价值,所以RFID领域也是如此,曾经所谓的UID唯一性就是因为中国人而失去的,Chinese Magic Card中国人制造而享誉全球的产品,使得MIFARE CLASSIC的UID固化不可修改的神话成为了历史。实际上当越来越多的卡存在兼容模式的情况下,RFID其天然的安全防线就失去了原有意义,利用T55X7复制EM4X系列的ID号、利用MIFARE PLUS卡模拟MIFARE CLASSIC的安全隐患等等。

 

五、M1卡扇区数据分析

5-1 M1卡介绍

这次我们主要介绍的是非接触式IC卡。M1卡就是非接触式IC卡中应用最广泛的卡。M1卡就是Mifare非接触式感应卡,M1卡数据保存期为10年,可改写10万次,读无限次。无电源,自带天线,工作频率为13.56MHZ.M1卡内含加密控制逻辑和通讯逻辑电路。M1卡主要有两种,一种是S50和一种是S70。主要应用:门禁、考勤、会议签到、身份识别、物流、工业自动化、各种会员卡、如售饭、地铁、公交代币卡、俱乐部等电子消费、电子门票、动物识别、目标跟踪、洗衣管理、各种一卡通等等。

5-2 M1卡存储空间

M1卡分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位。每个扇区的块0、块1、块2为数据块,可用于存储数据。而每个扇区的块3为控制块,包括密码keyA,存取控制,密码keyB。存取控制的作用是控制对应扇区记录的读写权限与keyA和keyB的关系。由于每个扇区都有独立的key和存取控制,因此M1卡可以做到一卡多用互不干扰。

每一张M1卡的0扇区0块都称作绝对地址块,这一串是在卡片出厂时厂商赋予的,代表着这张卡独立的身份识别信息。绝对地址块的内容已被固化,无法更改。

5-3 M1卡控制位计算

以下为控制位的结构,前6位为密钥A,中间4位存取控制,后6位密钥B。4位控制位中前3位是真实的控制位,第4位是备用控制位,一般用不上,因此我们可以只分析前3位。

三个控制位以正和反两种形式存在于存取控制字节中,决定了该块的访问权限。1个字节等于8个比特,而一个扇区有4个块,每个块有3个控制位,以下是控制位以比特形式的结构图,_b表示取反存储,这边用红色字体已标出。

 

 

以FF078069默认控制位为例,我们将FF078069的16进制转化为2进制如下:FF=11 1 1 1 1 1 1;07= 0 0 0 0 0 1 1 1;80=1 0 0 0 0 0 0 0 ;69=忽略

将以上的2进制数填入表格:

 

 将取反的数再次取反以获得原来的控制位:

存取控制中每个块都的三个控制位定义如下,同时填入上表数据:

块0,块1,块2控制位均是000,存取控制权限可对应以下表:

块3控制位001,存取控制对应如下表:

可见块0,块1,块2通过密钥A或者密钥B认证后可读,可写,可进行加值和减值操作。块3密钥A不可读,但可通过认证密钥A或B修改。验证密钥A或者密钥B后,可读可改写存取控制。验证密钥A或者密钥B后,可读可改写B密码。

综上,存取控制FF078069极不安全,我们可以自定义存取控制进行修改,只要利用上述步骤将想要的控制位列出逆向推回去即可。

5-4 M1卡认证原理

这里介绍M1卡的认证原理即三轮认证。三轮认证是保障M1卡安全的重要手段,整个过程采用Crypto-1算法加密。以下是三轮认证的过程。

1. 读写器指定要访问的区,向卡发送身份验证请求,并选择密钥A或B。 2. 卡从位块读取密钥和存取控制条件。然后,卡向读写器发送明文4字节随机数Nt。(第一轮) 3. 读写器利用密钥和随机数Nt计算生成一个新随机数Nr,并将两个随机数一起加密为8个字节的数据发送给卡片。(第二轮)。 4. 卡解密得到Nt与Nr,验证Nt,若通过再一次加密Nr并发送给读卡器(第三轮)。 5. 读写器解密得到Nr,验证通过。

三轮认证在其原理上是可靠的,但是外国研究人员发现了该算法伪随机数生成的漏洞,使得加解密所用到的伪随机数可被正确预测,从而逆向计算出了三轮认证中的扇区密钥。该漏洞的利用在后面会讲到。

 

 

六、 各种卡的区别

5-1 M1卡与Ntag卡的区别

该这么说,Ntag才是符合NFC规约的Tag(标签), 它的最基本存储信息形式是NDEF格式。

Mifare卡有很多,你不特别指明的话,我就认为是最常见的Mifare Classic One(俗称M1卡)是一种卡片实体,它有三次认证,之后才可以向内存里写数据

M1卡不符合NFC对Ntag的规约,它实际上算不上NFC标签,这个你用支持NFC的手机,去读M1卡,就知道了。

如果一个读卡器,是M1卡读卡器程序,要想能改成能读nfc标签,那么这个需要改动的地方多吗?
希望可以回答一下,我可以继续提高悬赏,如果您这边也不清楚的话,也麻烦回复一下,我就不等了,直接采纳

追答
作为主机端(Reader/Writer)硬件不需要任何改动,软件的话当然必须要改,至少三次认证的操作你可以省了(NFC标准的4种Tag不需要认证,三次认证是NXP的加密专利)。
你改之前首先要确定你要读的NFC Tag是属于哪种,然后再针对性的去修改你的读头代码。

 5-2 ISO 14443-TypeA与TypeB卡的区别

关于两种类型的卡片的分类

.
├── TypeA卡
│   ├── MifareOne(市面上的卡大部分都是M1卡,广泛应用于公交、地铁、门禁等诸多领域)
│   │   ├── S50 (容量:1K)
│   │   ├── S70 (容量:4K)
│   │   └── ...
│   ├── NTAG
│   │   ├── NTAG213(容量:180Bytes 可读写:144Bytes)
│   │   ├── NTAG215(容量:540Bytes 可读写:504Bytes)
│   │   ├── NTAG216(容量:924Bytes 可读写:888Bytes)
│   │   └── ...
│   ├── UID卡(M1模拟卡,可以随意修改UID)
│   └── ...
└── TypeB卡
    └── CPU卡(如居民二代身份证、部分银行卡等)

 

5-3 IC卡的SAK值区别各种IC卡

SAK是什么呢?SAK是IC卡数据0扇区0块的第6字节,代表着芯片类型,不同SAK对应不同的芯片类型:

电脑端下载Proxmark3、ACR122、PCR532、MIFAREONE TOOL在GUI内点读卡类型

SAK值 芯片类型 重复擦写 功能特性 用户群体
08 M1卡(又叫S50卡、1K卡) 0扇区不可写 天生可过防火墙 物业发卡授权
08 UID卡 全扇区可读写 响应magic指令,遇防火墙失效 个人读写设备复制
08 CUID卡 全扇区可读写 不响座magic指令,遇高級防火墙失效 个人读写设备复制
08 FUID卡 0扇区写入自动固化 自动固化后变成M1卡,可过防火墙 个人读写设备复制
08 UFUID卡 0扇区写入需手动锁定固化 手动固化后变成M1卡,可过防火墙 个人读写设备复制
18 M4卡(又叫S70卡、4K卡) / 内存是4K,平时很少碰到 物业发卡授权
20 CPU卡 / 安全系最高,密码错误最大16次,超过后就锁死卡片,除非知道其cos系统指令,知道卡密码,否则将无解。 银行卡、身份证等等
28 MF1卡,又叫CPU模拟M1卡 / CPU卡加M1卡的复合体 /
  GTU卡 可反复擦写 可以自动复位数据,用于滚动码防复制  
  GDMIC卡 可反复擦写 和GTC功能一致,生产厂商不同

参考文献:

1. RFID马拉松芯片计时系统:https://baijiahao.baidu.com/s?id=1737041965492321755&wfr=spider&for=pc

2. nfc近距离通讯技术原理 nfc,rfid,蓝牙的区别:https://www.elecfans.com/tongxin/rf/202308302229988.html

2. <常见RFID卡片介绍、破解思路 及 Proxmark3简介>:https://blog.51cto.com/xiaoyaoyou10/5856746

4. RFID 破解部分:《RFID破解三两事》 原文链接:https://blog.51cto.com/u_16081772/6214079

5. M1卡扇区数据分析: 《RFID实战应用之常见射频卡扇区数据分析及破解》https://cloud.tencent.com/developer/article/1618002

6. https://blog.csdn.net/fangye945a/article/details/124385651

7. 《RFID第一期——各种IC卡ID卡详解》https://blog.csdn.net/ladeng07/article/details/128872807

8. 《由门禁卡来谈谈IC/ID复制卡的原理和知识》https://zhuanlan.zhihu.com/p/654587508?utm_id=0

posted @ 2024-01-21 20:09  FBshark  阅读(403)  评论(0编辑  收藏  举报