当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘 要:提出一种可以排斥复制卡的125 kHz ID卡读卡器设计方案。以51单片机为控制核心,HTRC110作为射频接口芯片,配以适当的天线电路、串口通讯电路和声光指示电路组成读卡器硬件,软件通过控制HTRC110天线的开闭实现对射频场中的卡片复位,然后打开读卡通道限时接收,利用复制卡进入磁场后开始发送卡号信息的时间滞后于原版卡的特性,实现读卡器对复制卡的排斥抑制。实际测试效果良好,证明方案设计合理可行。

潘春伟,罗明华,姚庆梅

(1.山东建筑大学 信息与电气工程学院,山东 济南 250101;2.山东省智能建筑技术重点实验室,山东 济南 250101)

引 言

125kHzID 卡结构简单,40位的卡片序列号包含在卡内一个 64 位的卡号信息中,与读卡器使用TTF(TagTalkFirst) 方式通讯,广泛应用于考勤、门禁、微金额支付等系统中。由于卡片向读写器传送数据时使用了非加密的明码方式,使得复制、伪造卡片十分容易且成本低廉。

根据常见复制卡的特点,本文设计了一种新型 125 kHz 防复制ID 卡读卡器,可以对使用Temic、Hitags、EM 系列等可读写卡复制的ID 卡进行屏蔽排斥,从而有效保护用户系统的安全。

1 理论分析

原版的ID 卡功能单一,出厂时已将 64 位的卡号信息固化在卡片的非易失性存储器内。卡片进入125 kHz 的射频场后得电复位,立即主动将 64 位卡号信息持续循环向读卡器发送。原版卡的上电复位时间极短,我们以 EM4100 卡片为例[1],其说明书中虽然没有给出准确的卡片复位时间,但经大量实际测试表明该值小于1 ms。

具有防复制卡功能的ID卡读卡器设计与实现

最常见的有 Temic、Hitags、EM 系列可读写卡片。相对于原版的ID 卡,这些卡片的共同特点是,一方面可读写卡片比同类型只读卡片的电路结构复杂,相同情况下电路复位比只读卡需要更的时间 ;另一方面,这些可读写卡由于既可以工作在RTF(Reader Talk First)模式,又可以工作在 TTF 模式,通

常还可以设定通讯的数据编码和速率,故卡片电路复位完成后还要读出配置信息,以便决定进入哪种工作模式,执行何种通讯数据编码和通讯速率。因此,从进入射频场,到开始向读写器发送数据,复制的ID 卡所用的时间要远远大于原版的ID 卡。


上述三种常用于复制的卡片,从其数据说明书中可以查得准确的卡片从进入磁场到开始以TTF 模式发送数据的时间[2-4],与原版卡对比可以得到表 1。

普通125 kHz ID 卡工作时数据传输速率是 2 Kb/s,传送1 位的时间是 512 μs,传送 64 位的卡号信息共需 32.768 ms。根据表 1 中数据可以得出结论,若原版卡和复制卡同时进入射频场,复制卡开始主动发送数据的时间至少比原版卡滞后2 ms,即滞后约 4 个数据位(512 μs×4 ≈ 2 ms)。根据这一差别,设计读卡器时如果在打开射频场后延时 1 ms 开始读取数据, 则在之后的 32.768 ms 时间内可读到原版卡的全部 64 位卡号信息,而复制ID 卡只能读取约 60 位。利用这一特性,就可以设计出屏蔽复制卡的ID 卡读卡器。

2 硬件设计

从前述理论分析可看出,屏蔽复制卡的机制主要在于软件,硬件方面没特殊要求。如图 1 所示,整个系统以普通的 51 单片机STC89C52 为核心,外围电路包括 HTRC110 接收模块、串行口通讯模块、声光指示模块及电源模块等。STC89C52 控制HTRC110 芯片实现卡片信息读取,读到的 64 位卡号信息经解码后得到 40 位有效卡号通过串口输出,并驱动声光电路动作。此外串口还可以实现单片机的ISP 功能,电源电路实现对整个系统稳定可靠供电。

2.1 主控芯片电路

主控芯片完成系统各模块的软件初始化、读卡解码、串行通信及声光控制等功能,其中除读卡解码外其他任务都比较简单。读卡解码虽然工作量较大,但在普通ID 卡 2 Kb/s 的通讯速率下,技术成熟、物美价廉的 51 系列单片机就可以满足设计要求。

具有防复制卡功能的ID卡读卡器设计与实现

系统选用宏晶科技STC89C52RC 单片机作为主控芯片[5],STC89C52RC的最高时钟频率可达 80MHz,内部自带 8KBFLASH程序存储器和 512字节数据存储器,有 3个定时器和1 个串口,并可通过串口实现ISP 程序下载与更新。

STC89C52RC 外围配以简单的阻容复位电路,为获得较为准确的定时时间和串行通讯波特率,使用 22.118 4 MHz 晶振。

2.2 HTRC110模块电路

卡 号 信 息 接 收 模 块 选 用 125 kHz 射 频 接口 芯片HTRC110[6]。HTRC110 支持所有工作频率为 125 kHz, 使用AM 写数据、AM/PM 读数据的射频卡片(标签),可以对数据实现调制与解调,根据系统或卡片(标签)的需要设置芯片增益、带宽等参数,并可通过软件打开或关闭天线。110 芯片通过三线串行通讯与CPU 连接。

HTRC110 模块电路如图 2 所示。芯片时钟选用 4 MHz 晶振,SCLK、DOUT、DIN 加上拉电阻后与微处理器的I/O 口相连接,ANT 插座用于外接天线。

具有防复制卡功能的ID卡读卡器设计与实现

2.2 通讯及声光指示电路

通讯电路实现有效卡片序列号的输出,并实现 ISP 程序下载功能。系统中选用一片MAX232 实现串口通讯,其电路采用经典的 4 电容接法。声光指示电路用于读卡信息指示,当读到有效卡号时,LED 闪烁并伴蜂鸣器动作。

3 软件设计

防复制ID 卡读卡器的软件主要由系统初始化程序、卡片信息接收、卡片信息解码、数据输出与状态指示等部分组成。

系统软件总框图如图 3所示,开机初始化完成后即进入无限循环读卡,每次先复位射频场中的卡片,接着在限定时间内持续接收 64位卡号信息,如果接收成功则从接收的卡片信息中解码卡片序列号,并将卡片序列号从串口输出,同时驱动声光指示。

具有防复制卡功能的ID卡读卡器设计与实现

3.1 HTRC110初始化配置程序

HTRC110 初始化在开机后的系统初始化阶段进行,其流程图见图 4。首先通过 HTRC110 的 4 个配置页设置芯片相关工作参数, 包括:通过配置页 0, 设置通频带为160 Hz ~3 kHz,设置放大器增益为 500 ;通过向配置页 1 写入0 打开天线 ;向配置页 3 写入0 设置HTRC110 的外部晶振为 4 MHz。之后的AST 设置和通用设置都是HTRC110 厂家指定必须执行的序列[6]。经过上述步骤,HTRC110 初始化设置完成,开始准备从天线射频场中接收卡片信息。

3.2 卡号信息接收程序

卡号信息接收程序用来接收 64 位卡号信息,其流程如图5 所示。首先通过设置配置页 1 的 TXDIS 位关闭天线,射频场中的所有卡片因为失去能量来源而全部断电,5 ms 后清除TXDIS 位打开天线,射频场内的所有卡片得电复位,原版卡直接进入TTF 模式循环发送 64 位卡号信息,复制卡读取配置页数据,根据配置参数开始进入TTF 模式循环发送 64 位卡号信息。

HTRC110在打开天线后立即设置为数据接收模式,然后延时 1ms以等待原版卡复位,之后开始限时接收数据。接收64位卡号信息需要 32.768ms,为增加接收的可靠性,接收时间设置为接收 65位数据的时间,即 512μs×65=33.28ms, 在此时间内 CPU 循环查询 HTRC110的 DOUT引脚。64位ID卡的数据采用曼彻斯特编码,上升沿表示数据“1”,下降沿表示数据“0”,发送连续的“0”或“1”时,两个数据沿之间增加一个状态转换沿[7]。在DOUT端,捕捉到数据沿则立即将数据移位进入数据缓冲区,如果是状态转换沿则继续监测DOUT端的下一个电平跳变。如果在 33.28ms时间内接收到 64 个有效数据位则转去解码程序,否则继续进行下一次复位天线接收数据的循环。根据前述理论分析,只有原版卡可以在 33.28 ms 的时间内送出完整的 64 位卡号信息,复制卡无法全部送出,从而实现了对复制卡的屏蔽抑制。

样接收到的数据可能并不是以 9 个“1”开头,因此第一步先找出缓存中 64 位卡号数据的头部,方法是将 64 位卡号数据

具有防复制卡功能的ID卡读卡器设计与实现

3.3卡片序列号解码程序

卡片序列号解码程序实现从接收的 64 位卡号信息中提取40位有效的卡片序列号并校验其正确性。卡片内卡号信息的结构如表 2所示,其中 9个“1”的头部用于识别卡序列号的开始,之后是 50位的卡序列号及其校验位(卡序列号 5字节共 40位,每 4位增加一个行偶校验位),最后是 4位列偶检验及1位停止位“0”。

具有防复制卡功能的ID卡读卡器设计与实现

卡号解码程序的流程图如图 6 所示。通常的ID 卡接收程序中一般先识别接收 9 个“1”的卡片信息头部,然后接收其余部分。这种方法的好处是解码简单,而且可以边接收边解码,缺点是由于要先识别卡号信息的头部,导致接收时间变长。本设计由于要利用复制卡发送卡号信息起始时间的滞后性实现对复制卡的抑制,允许接收的时间严格控制为 33.28 ms, 故不能先识别头部,而是有数据就接收,先存储后解码。这样接收到的数据可能并不是以 9 个“1”开头,因此第一步先找出缓存中 64 位卡号数据的头部,方法是将 64 位卡号数据做大循环右移,每移 1 位立即检查开始的 9 位是不是 9 个“1”且第 64 位是不是结束位“0”,不是则继续移位直至找到头部。如果移位 64 次后都没有找到头部则说明接收的数据有误,返回接收程序继续接收。

具有防复制卡功能的ID卡读卡器设计与实现


找到数据的头部后,从头部的下一位(第 10位)开始到第 59位,每 5位正好对应半个字节卡序列号数据及1位偶校验位,因此可以每 5位提取作为一个字节,50位共提取 10个字节。第 60位到 64位是列校验位和停止位,此 5位提取作为第 11 个字节。

数据提取完成后先对前 10个字节作行偶校验,再将前10个字节与第 11字节进行列偶校验,校验通过说明接收到正确的卡号,将前 10 个字节中除校验位之外的数据提取组合为5 个字节,即为最后有效的 16 进制卡片序列号。

4 实验测试

使用EM4100、HITAGS32、EM4205、TEMIC5567 四种典型卡片各 200 张进行测试,所有的EM4100 原版卡片均可正常读取卡号,其他三种复制卡片全部被屏蔽,证明本文讨论的方法是正确可行的。

结 语

本文讨论了根据复制卡在进入磁场后发送卡片信息的时间滞后于原版卡的特性实现读卡器屏蔽复制卡的方法和主要技术。系统硬件结构简单,软件实现容易。随着技术的发展, 复位时间更短的复制卡,本系统可能会发生误读,另外使用更快的CPU 代替 51 单片机可以大大提高系统性能。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

本文中,小编将对nfc标签读卡器予以介绍,如果你想对nfc标签读卡器的详细情况有所认识,或者想要增进对nfc标签读卡器的了解程度,不妨请看以下内容哦。

关键字: NFC 读卡器

RFID现在越来越广泛地应用于各种工业场合包括各类汽车厂、服装厂、鞋厂以及相关的物流仓储行业中。同时IO-Link接口在智能化工厂中广泛应用,由于其接口的通用性和双向数据的智能化需求越来越多,意法半导体自动化技术创新中心...

关键字: RFID 读卡器 传感器

据日本经济产业省计算,在应对新冠疫情期间,非现金支付占居民消费支出的比例大幅增加,2022年的支付总额首次突破100万亿日元。在实体店,支付方式也正在从接触式(现金或插卡支付)向非接触式信用卡、预付式和后付式电子支付等支...

关键字: 读卡器 电子货币 磁条卡

为增进大家对读卡器的认识,本文将对读卡器、读卡器的常见问题予以介绍。

关键字: 读卡器 指数 IC

尼得科株式会社的集团公司尼得科仪器株式会社(旧日本电产三协)推出了符合国际安全标准PCI PTS POI(Payment Card Industry PIN Transaction Security Point Of I...

关键字: 读卡器 POS系统

Holtek推出新一代Arm® Cortex®-M0+智能卡读卡器单片机,HT32F61141。最高运行速度为48MHz,工作电压为2.5V~5.5V,并符合-40℃~85℃工业温度范围。HT32F61141内建2个智能...

关键字: HOLTEK 读卡器 MCU

深圳2022年5月23日 /美通社/ -- 近日,Visa公司为新国都(代码:300130)全资子公司嘉联支付颁发了2021年"收单业务卓越新合作伙伴奖",充分肯定了嘉联支付在推动外币卡收单服务领域的...

关键字: VI 数字化 代码 读卡器

摘 要:研究了基于互联网的广东省交通一^通充值系统,分析了如何实现对交通一^通的在线充值、余额查询以及交易 记录查询等功能。给出了用户通过网上交易终端进行充值,充值终端生成充值请求后以在线方式发送到广东省交通一^通充 值...

关键字: 读卡器 互联网 交通一卡通 充值系统

摘要:近日美国有专家得出这样一个结论:美国的创新模式正在原地打转,要想重振创新发展,必须借用德国创新的经验。而俄罗斯通信网CNEWS专家在整理德国ICT产业创新发展政策时承认,对德国的创新模式,俄罗斯以前确实知之甚少。

关键字: 关键词

摘要:在互联网发展的基础上,物联网可将信息的交流与沟通扩展到任何物体与物体之间,故其将成为新媒体时代改变人类生活的新变量。在探索智能化信息交互与设计的过程中,文章紧跟物联网的发展趋势,不断思索物联网的崛起给新媒体时代的文...

关键字: 关键词
关闭
关闭