Mifare1射频卡操作原理(编程)
浅析Mifare l工作原理教学
Mifare 1是符合ISO/IEC 14443A 的非接触智能卡。
其通讯层(Mifare RF 接口)符合ISO/IEC 14443A 标准的第2和第3部分。
其安全层支持域检验的CRYPTO1数据流加密。
2内部功能结构Mifare 1集成电路芯片内含1Kbyte EEPROM 、RF 接口和数在教学过程中,教师首先给学生介绍下与IC 卡相关的基本知识,展示几张不同的IC 卡。
学生这样可以非常真实的认识经常接触但是又非常陌生的IC 卡。
接下来从其内部结构开始展开,通过对其相关的各种特性的分析,达到对其进行熟练设置与操作等。
1概述IC 卡(Integrated Circuit Card ,集成电路卡),IC 卡是继磁卡之后出现的又一种新型信息工具。
IC 卡是指集成电路卡,一般用的公交车卡就是IC 卡的一种,一般常见的IC 卡采用射频技术与IC 卡的读卡器进行通讯。
IC 卡与磁卡是有区别的,IC 卡是通过卡里的集成电路存储信息,而磁卡是通过卡内的磁力记录信息。
IC 卡的成本一般比磁卡高,但保密性更好。
非接触式IC 卡又称射频卡,成功地解决了无源(卡中无电源)和免接触这一难题,是电子器件领域的一大突破。
由于其简单的数据读写过程,目前被各方面广泛采用,主要用于公交、轮渡、地铁的自动收费系统,也应用在门禁管理、身份证明和电子钱包;应用于低成本的城市轨道交通、各类计费支付卡和数据采集系统等领域。
然而在职业教育中也相继出现其应用与设计,目前市场上主要产品有荷兰飞利浦公司Mifare 1非接触IC 卡。
那么射频卡的工作原理、安全性和可靠性是如何保证的?下面就以在教学当中最常用的Mifare 1射频卡为例进行分析研究。
在Mifare 1卡中,芯片连接到一个几匝的天线线圈上,并嵌入塑料中,形成了一个无源的非接触卡。
不需要电池。
当卡接近读写器天线时,高速的RF 通讯接口将以106kBit/s 的速率传输数据。
浅析Mifare 1工作原理教学姻文/(1.湖南省水利水电职业技术学院,湖南长沙410131;2.湖南省邮电设计规划院湖南长沙410000)本文通过结合Mifare 1射频卡的特性分析,突出在教学过程当中所进行了多方面的详细分析与研究。
MIFARE1卡读写控制
汇报人:XX
目录
添加目录标题
01
MIFARE1卡读写控制 技术
04
MIFARE1卡简介
02
MIFARE1卡读写原理
03
MIFARE1卡的安全性
05
MIFARE1卡的应用案 例
06
添加章节标题
MIFARE1卡简 是 一 种 非 接 触 式 智 能 卡 , 采 用 射 频 技 术 进 行 数 据 传 输 。 M I FA R E 1 卡 具 有 较 高 的 安 全 性 , 采 用 了 加 密 算 法 对 数 据 进 行 保 护 。 M I FA R E 1 卡 具 有 多 种 应 用 场 景 , 如 门 禁 控 制 、 公 交 刷 卡 等 。 M I FA R E 1 卡 读 写 速 度 快 , 操 作 方 便 , 可 广 泛 应 用 于 各 种 智 能 卡 管 理 系 统 中 。
卡片数据结构
存 储 结 构 : M I FA R E 1 卡 采 用 多 层 加密的方式对数据进行保护,包括 卡片编号、密钥、数据块等。
数据传输方式:采用无线电波的方 式进行数据传输,传输速率高,稳 定性好。
添加标题
添加标题
添加标题
添加标题
加密算法:采用先进的加密算法对 数据进行加密,确保数据的安全性。
应用领域
公共交通:用于公交、地铁、出租 车等支付
物流管理:追踪物品和信息,提高 效率
添加标题
添加标题
添加标题
添加标题
门禁系统:作为身份识别和权限控 制
金融服务:用于银行卡、电子钱包 等
安全机制
加密算法:采用国际标准的加密算 法保护数据安全
数据完整性:采用校验机制确保数 据在传输过程中不被篡改
MIFARE 1卡读写控制
Value Operate 值操作
MIFARE卡专门为公交/地铁等行业的定额 收费系统设有值操作命令,包括 INCREAMENT/DECREAMENT/ TRANSFER/RESTORE 对某块进行值操作的前提是该块已被初始 化为“值块”(Value Block)并且Access Bits允许值操作。
内
核 特 殊 寄
0AH 10 0BH 11 0CH 12 0DH 13 0EH 14 0FH 15
存
器Hale Waihona Puke RC1SmartCard
MIFARE卡的读写操作步骤
激活MCM MCM软复位 向MCM下载密码(LOAD KEY),校验传输密码正确 后可向MCM的KEY-RAM写入用户自己设定的密码, 以上操作与卡无关。 请求应答(ANSWER TO REQUEST):寻卡 防冲突(ANTICOLLISION):选择唯一一张卡 选择标记(SELECT):激活所选择的卡 认证 (AUTHENTICATION):安全性 读写操作(读、写、加值、减值):交换数据 (READ/WRITE/INCREAMENT/DECREMENT) 停止(HALT):置卡为停止模式,防止重复操作。
SmartCard
M C M 基 本
指
令
指令代码(hex)
相关的出错标志
接收卡片上数据
Answer to Request (Request 的应答) Request std Request all AntiCollision (防重叠) Select Tag (选卡片) Authentication (认证) Auth_1a Auth_1b Load KEY(存取密码) Read Write Increment Restore Transfer Halt (读) (写) (增值) (重储) (传送) (停机) 60 61 / 30 A0 C1 C0 C2 B0 50 26 52 93 93
Mifare1系列射频卡读卡器的开发
Mifare1系列射频卡读卡器的开发本文内容简介:Mifare1系列射频卡具有高度安全、高可靠性及分区存储结构等特点,其应用范围越来越广.文中提出了一种基于AT89S52和MF RC500实现的Mifare1射频卡读卡器的设计方法.先介绍了系统的组成及工作原理,然后给出了系统的硬件设计,最后给出了软件设计流程和相应程序.近几年来,由于非接触式IC智能射频卡的高度安全保密性,使之在IC智能卡领域中异军突起,成为当今IC智能卡中的流行宠物,应用前景十分广阔.非接触式智能卡读写系统是射频技术中的重要组成部分,其实现原理为:由读写器向Mifare1卡,也就是射频卡发射特定频率的无线电磁波,当射频卡靠近读写器时,受读写器发射的电磁波激励,卡片内的IC谐振电路产生共振并且接收电磁波能量.当射频卡接收到足够的能量时,就将卡内存储的识别资料以及其他数据以无线电波的方式传输到读写器并且接受读写器对卡内数据的进一步操作。
文中提出了一种Mifare1射频卡读卡器系统的设计,此系统是针对煤矿考勤而研制,目前已投人使用.该系统采用AT89S52单片机实现对射频芯片MF RC500的控制,完成对Mifare1卡卡号的读取以及数据的无线交换.下面首先给出系统的总体结构以及工作原理,然后从硬件和软件设计2个方面对系统进行详细讨论和说明.1 系统总体结构及工作原理该读卡器由AT89S52单片机、MF RC500芯片和外围电路组成,与Mifare1卡的数据交换都是通过2者之间的射频场来完成.系统结构如图1所示.系统的工作原理主要是由AT89S52对MF RC500进行控制与通信,MF RC500驱动外同电路对Mifare1卡进行读写操作.具体说来,AT89S52通过串行口接收PC机的指令,完成对卡的操作和整个读写器的管理.MF RCS00负责信号的编码、解码,信号的调制、解调;匹配电路建立读写器同射频卡之间的联系,此部分的设计直接影响到射频功率的大小以及系统的抗干扰能力;Mifare1卡是系统的应用终端.接收读写器的指令并返回指令执行结果。
Mifare卡的算法破解和应用---刘欣凯
智能卡技术学习报告——Mifare卡的算法破解和应用姓名:刘欣凯专业:信息安全2班学号:指导老师:杨帆目录一、论文摘要 (3)二、Mifare卡的简单介绍 (4)三、Mifare卡的构造及其功能模块 (6)四、Mifare卡的破解 (12)五、确保Mifare卡安全应用的新方案 (18)六、Mifare的应用 (22)七、参考文献 (24)一、论文摘要Mifare是近年来被广泛应用的一种智能卡。
但是随着其广泛应用以及人们对其研究的加深,一度被认为非常安全的mifare卡也存在被破解的危险。
针对此现象,我们对mifare 的构造进行了深入的了解,并提出了mifare卡安全应用的新的方法,使其能够安全的继续应用在各种领域。
关键词:mifare卡、算法破解、安全应用、SM7国密算法一、AbstractMifarecardhasbeenusedinmanyfrontier.Withthedevelopmen tofthemifarecard,peoplehaveafurtherresearchonitthanbefore.The mifarecardwasconsideredsafeinsomeyearsyet.Butinnowadays,ith asbeencracked.Aimingatthephenomenon,wehaveastudyonthecon structofthemifarecard.Andatthesametime,weputforwardanewmet hodtoinsureitssafety.Inthisway,themifarecardcanstillbeusedinma nyfrontierinsafe.Keywords:Mifarecard、Algorithmcrack、Securityapplications、SM7algorithm二、Mifare卡的简单介绍1、Mifare1卡领导了非接触式IC卡的革命Mifare1非接触式IC卡是1994年由荷兰NXP半导体公司(简称NXP公司)发明。
射频卡的工作原理
射频卡的工作原理
射频卡是一种无接触式卡片,它采用射频识别技术进行通信和数据传输。
射频卡的工作原理如下:
1. 射频信号传输:射频卡内置一个小型的无线电天线,它可以通过接收和发送射频信号与读卡器进行通信。
读卡器会发射电磁场信号,激活射频卡的天线。
2. 电力传输:当读卡器的电磁场信号激活射频卡后,读卡器会传输一定的电能给射频卡,作为其供电。
射频卡不需要内置电池,它能够利用读卡器的电磁场能量进行工作。
3. 数据传输:一旦射频卡被激活并获得电能供应,它可以通过射频信号与读卡器进行数据传输。
射频卡的内部芯片存储了卡片的相关信息,如个人身份、账户余额、门禁权限等等。
读卡器可以读取这些信息,并进行相应的处理和验证。
4. 安全性:射频卡通常采用加密技术来确保数据的安全传输。
通过利用一些加密算法和协议,射频卡和读卡器之间的通信可以被加密,防止信息被非法获取和篡改。
总体而言,射频卡的工作原理就是通过无线射频信号的传输实现与读卡器的通信和数据交换,同时利用读卡器的电磁场能量来供电。
这种无接触式的工作方式使得射频卡在各种应用领域中具有了广泛的应用前景。
MiFare_one卡介绍
MiFare one卡介绍一、Mifare one IC S50 主要指标●容量为8K位EEPROM● 分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位●每个扇区有独立的一组密码及访问控制●每张卡有唯一序列号,为32位●具有防冲突机制,支持多卡操作●无电源,自带天线,内含加密控制逻辑和通讯逻辑电路●数据保存期为10年,可改写10万次,读无限次●工作温度:-20℃~50℃(湿度为90%)●工作频率:13.56MHZ●通信速率:106 KBPS●读写距离:10 cm以内(与读写器有关)二、Mifare one IC S70 主要指标●容量为32K位EEPROM●分为40个扇区,其中32个扇区中每个扇区存储容量为64个字节,分为4块,每块16个字节;8个扇区中每个扇区存储容量为256个字节,分为16块,每块16个字节;以块为存取单位●每个扇区有独立的一组密码及访问控制●每张卡有唯一序列号,为32位●具有防冲突机制,支持多卡操作●无电源,自带天线,内含加密控制逻辑和通讯逻辑电路●数据保存期为10年,可改写10万次,读无限次●工作温度:-20℃~50℃(湿度为90%)●工作频率:13.56MHZ●通信速率:106 KBPS●读写距离:10 cm以内(与读写器有关)三、M1射频卡与读写器的通讯见下图示:四、工作原理卡片的电气部分只由一个天线和ASIC组成。
天线:卡片的天线是只有几组绕线的线圈,很适于封装到IS0卡片中。
ASIC:卡片的ASIC由一个高速(106KB波特率)的RF接口,一个控制单元和一个8K位EEPROM组成。
工作原理:读写器向M1卡发一组固定频率的电磁波,卡片内有一个LC串联谐振电路,其频率与讯写器发射的频率相同,在电磁波的激励下,LC谐振电路产生共振,从而使电容内有了电荷,在这个电容的另一端,接有一个单向导通的电子泵,将电容内的电荷送到另一个电容内储存,当所积累的电荷达到2V时,此电容可做为电源为其它电路提供工作电压,将卡内数据发射出去或接取读写器的数据。
Mifare1技术说明(M1卡说明文档)
Mifare 1非接触IC卡技术说明1 特性1.1 MIFARE RF 接口(ISO/IEC 14443 A)∙非接触数据传输并提供能源(不需电池)∙工作距离:可达100mm (取决于天线尺寸结构)∙工作频率:13.56 MHz∙ 快速数据传输:106 kbit/s∙高度数据完整性保护:16 Bit CRC,奇偶校验,位编码,位计数∙真正的防冲突∙典型票务交易:< 100 ms (包括备份管理)1.2 EEPROM∙ 1 Kbyte,分为16个区,每区4个块,每块16字节。
∙用户可定义内存块的读写条件∙数据耐久性10年∙写入耐久性100.000次1.3 安全性∙相互三轮认证(ISO/IEC DIS9798-2)∙带重现攻击保护的射频通道数据加密∙每区(每应用)两个密钥,支持密钥分级的多应用场合∙每卡一个唯一序列号∙在运输过程中以传输密钥保护对EEPROM的访问权2 概述MIFARE MF1是符合ISO/IEC 14443A的非接触智能卡。
其通讯层(MIFARE RF 接口)符合ISO/IEC 14443A标准的第2和第3部分。
其安全层支持域检验的CRYPTO1数据流加密。
2.1 非接触能源和数据传递在MIFARE卡中,芯片连接到一个几匝的天线线圈上,并嵌入塑料中,形成了一个无源的非接触卡。
不需要电池。
当卡接近读写器天线时,高速的RF通讯接口将以106 kBit/s 的速率传输数据。
卡4匝线圈读卡器嵌入的芯片模块天线能量数据2.2 防冲突智能的防冲突功能可以同时操作读写范围内的多张卡。
防冲突算法逐一选定每张卡,保证与选定的卡执行交易,不会导致与读写范围内其他卡的数据冲突。
2.3 用户便捷性MIFARE 是针对用户便捷性优化的。
例如,高速数据传输使得完整的票务交易在不到100 ms 内处理完毕。
因此用户不必在读写器天线处停留,形成高的通过率,减少了公共汽车的登车时间。
在交易时,MIFARE 卡可以留在钱包里,甚至钱包里有硬币也不受影响。
MiFareone卡介绍
MiFare one卡介绍一卡通2007-12-03 14:58:06 阅读8 评论0 字号:大中小订阅一、Mifare one IC S50 主要指标●容量为8K位EEPROM● 分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位●每个扇区有独立的一组密码及访问控制●每张卡有唯一序列号,为32位●具有防冲突机制,支持多卡操作●无电源,自带天线,内含加密控制逻辑和通讯逻辑电路●数据保存期为10年,可改写10万次,读无限次●工作温度:-20℃~50℃(湿度为90%)●工作频率:13.56MHZ●通信速率:106 KBPS●读写距离:10 cm以内(与读写器有关)二、Mifare one IC S70 主要指标●容量为32K位EEPROM●分为40个扇区,其中32个扇区中每个扇区存储容量为64个字节,分为4块,每块16个字节;8个扇区中每个扇区存储容量为256个字节,分为16块,每块16个字节;以块为存取单位●每个扇区有独立的一组密码及访问控制●每张卡有唯一序列号,为32位●具有防冲突机制,支持多卡操作●无电源,自带天线,内含加密控制逻辑和通讯逻辑电路●数据保存期为10年,可改写10万次,读无限次●工作温度:-20℃~50℃(湿度为90%)●工作频率:13.56MHZ●通信速率:106 KBPS●读写距离:10 cm以内(与读写器有关)三、M1射频卡与读写器的通讯见下图示:四、工作原理卡片的电气部分只由一个天线和ASIC组成。
天线:卡片的天线是只有几组绕线的线圈,很适于封装到IS0卡片中。
ASIC:卡片的ASIC由一个高速(106KB波特率)的RF接口,一个控制单元和一个8K位EEPROM组成。
工作原理:读写器向M1卡发一组固定频率的电磁波,卡片内有一个LC串联谐振电路,其频率与讯写器发射的频率相同,在电磁波的激励下,LC谐振电路产生共振,从而使电容内有了电荷,在这个电容的另一端,接有一个单向导通的电子泵,将电容内的电荷送到另一个电容内储存,当所积累的电荷达到2V时,此电容可做为电源为其它电路提供工作电压,将卡内数据发射出去或接取读写器的数据。
Mifare卡的值操作与值块结构
1、实训平台
实训准备
连接电源及USB通信线缆、JTAG通信线。
2、读写器端软件 将嵌入式软件TYPEA工程,编译后下载运行。
3、PC机应用软件 打开RFID应用软件,设定波特率为9600,选择设备所使用的 串口(如COM3\4),点击“连接设备”。
连接成功:显示软件版本号。 连接失败:请检查串口设置、波特率设置。
做一做:MIFARE 1卡的值操作
• 值操作
–对扇区1块0进行初始化值操作,并读值测试 –对扇区1块0进行减值操作,并读值测试 –对扇区1块0进行加值操作,并读值测试
• 数据块查看操作
–在数据操作界面,查看扇区1块0的数据,并 分析其值块格式
Mifare 1卡片的存储结构
• 存储容量:102 块1 块2 块3(密码A+存取控制+密码B)
块功能详解
2)数据块(块0~2)
• 每块16字节。可由区尾块中的存取控制位(access bits)配 置为 读写块 用作一般的数据操作,可用读/写命令直接读/写整个块
值块
用作定值操作,可以进行加值/减值(INC/DEC)的运算 • 数据块数据的读/写/加值/减值条件
扇 区
0
• 存储介质:EEPROM
• 分为16个扇区(扇区0
扇
~15)
区
1
• 每个扇区有4个块
(Block)块0、块1、块2
. .
和块3。
.
.
• 每个块有16个字节。
.
.
• 一个扇区共有 16
. .
Byte×4 = 64 Byte
• 1)厂商块:扇区0块0
扇 区
Mifare1技术说明(M1卡说明文档)Word版
Mifare 1非接触IC卡技术说明1 特性1.1 MIFARE RF 接口 (ISO/IEC 14443 A)•非接触数据传输并提供能源(不需电池)•工作距离:可达100mm (取决于天线尺寸结构)•工作频率:13.56 MHz•快速数据传输:106 kbit/s•高度数据完整性保护:16 Bit CRC,奇偶校验,位编码,位计数•真正的防冲突•典型票务交易: < 100 ms (包括备份管理)1.2 EEPROM• 1 Kbyte,分为16个区,每区4个块,每块16字节。
•用户可定义内存块的读写条件•数据耐久性10年•写入耐久性100.000次1.3 安全性•相互三轮认证(ISO/IEC DIS9798-2)•带重现攻击保护的射频通道数据加密•每区(每应用)两个密钥,支持密钥分级的多应用场合•每卡一个唯一序列号•在运输过程中以传输密钥保护对EEPROM的访问权2 概述MIFARE MF1是符合ISO/IEC 14443A的非接触智能卡。
其通讯层(MIFARE RF 接口)符合ISO/IEC 14443A标准的第2和第3部分。
其安全层支持域检验的CRYPTO1数据流加密。
2.1 非接触能源和数据传递在MIFARE卡中,芯片连接到一个几匝的天线线圈上,并嵌入塑料中,形成了一个无源的非接触卡。
不需要电池。
当卡接近读写器天线时,高速的RF通讯接口将以106 kBit/s 的速率传输数据。
卡4匝线圈读卡器嵌入的芯片模块天线能量数据2.2 防冲突智能的防冲突功能可以同时操作读写范围内的多张卡。
防冲突算法逐一选定每张卡,保证与选定的卡执行交易,不会导致与读写范围内其他卡的数据冲突。
2.3 用户便捷性MIFARE 是针对用户便捷性优化的。
例如,高速数据传输使得完整的票务交易在不到100 ms 内处理完毕。
因此用户不必在读写器天线处停留,形成高的通过率,减少了公共汽车的登车时间。
在交易时,MIFARE 卡可以留在钱包里,甚至钱包里有硬币也不受影响。
射频卡的原理
射频卡的原理射频卡,又称为无线射频识别卡,是一种利用无线射频技术进行数据传输和识别的智能卡。
它在现代社会被广泛应用于门禁系统、公交卡、身份识别等领域。
那么,射频卡的原理是什么呢?接下来,我们将深入探讨射频卡的工作原理。
首先,射频卡的核心部件是芯片。
这个芯片内置了一个微型天线和存储器,能够接收和发送射频信号,并存储相关的信息。
当射频卡靠近读卡器时,读卡器会向射频卡发送一个激活信号,激活射频卡内的芯片。
接着,射频卡的芯片会回传存储在其中的信息,如卡号、用户身份等。
读卡器接收到这些信息后,就可以进行相应的识别和处理。
其次,射频卡的工作原理涉及到射频技术。
射频技术是一种利用无线电波进行通信的技术,它可以实现远距离的数据传输和识别。
射频卡利用射频技术,能够在不接触读卡器的情况下进行数据传输,极大地方便了用户的操作。
同时,射频技术也能够实现多卡同时识别,提高了系统的效率和安全性。
此外,射频卡的原理还涉及到电磁感应。
当射频卡靠近读卡器时,读卡器会产生一个电磁场,激活射频卡内的芯片。
射频卡的芯片受到电磁场的影响,产生感应电流,从而实现数据的传输和识别。
这种电磁感应的原理,使得射频卡不需要电池,而且具有较长的使用寿命。
总的来说,射频卡的原理是利用内置芯片接收和发送射频信号,通过射频技术实现远距离的数据传输和识别,同时利用电磁感应实现与读卡器的交互。
这种原理使得射频卡成为一种便捷、高效、安全的身份识别工具,为现代社会的智能化建设提供了重要支持。
在实际应用中,射频卡的原理为各种智能系统的建设和运行提供了技术支持,如门禁系统的安全管理、公交卡的乘车支付、物流管理中的货物追踪等。
随着科技的不断发展,射频卡的原理也在不断完善和创新,为人们的生活带来更多便利和安全保障。
综上所述,射频卡的原理是基于芯片技术、射频技术和电磁感应技术,实现远距离的数据传输和识别。
这种原理使得射频卡成为一种重要的智能识别工具,为现代社会的智能化建设发挥着重要作用。
Mifare系列射频卡读写器的工作原理
厦门顶尖电子有限公司国内最大电子秤、收银机生产厂家Mifare系列射频卡读写器的工作原理Mifare卡是一种智能卡(smart card),内建有中央微处理机(MCU)和ASIC等,使卡在安全保密性、认证逻辑、算术运算等微操作控制有序进行。
Mifare卡读写器的设计一般用PHILIPS公司生产的读写模块MCM200或MCM500。
随着技术的进步,PHILIPS公司现在生产了功能及性能更好的读卡芯片,我们就是以这种芯片为基础来设计和开发Mifare射频卡读写器。
目前我国引进的射频IC卡主要有PHILIPS公司的Mifare卡和A TMEL公司的Temic卡[1]。
而PHILIPS公司的Mifare卡现在是市场的主流产品,应用越来越广。
其典型型号为Mifare1 S50,它有1K字节E2PROM用于存放数据,分成16个区,每个区都有自己独立的密码,完善的安全机制使之具有一卡多用的特性。
射频IC卡读写器以射频识别技术为核心,读写器内主要使用了1片Mifare 卡专用的读写处理芯片(MF RC500)。
它是一个小型的最大操作距离达100mm的Mifare读/写设备的核心器件,其功能包括调制、解调、产生射频信号、安全管理和防碰撞机制。
内部结构分为射频区和接口区:射频区内含调制解调器和电源供电电路,直接与天线连接;接口区有与单片机相连的端口,还具有与射频区相连的收/发器、64字节的数据缓冲器、存放3套寄存器初始化文件的E2PROM、存放16套密钥的只写存储器以及进行三次证实和数据加密的密码机、防碰撞处理的防碰撞模块和控制单元。
这是与射频卡实现无线通信的核心模块,也是读写器读写Mifare卡的关键接口芯片。
读写器工作时,与Mifare卡专用的读卡芯片(MF RC500)相连的天线线圈[3]不断地向外发出一组固定频率的电磁波(13.56MHz),当有卡靠近时,卡片内有一个LC串联谐振电路,其频率与读写器的发射频率相同,这样在电磁波的激励下,LC谐振电路产生共振,从而使电容充电有了电荷。
射频卡设计原理及实现简介
射频卡设计原理及实现简介
射频卡设计原理及实现
非接触式IC卡又称射频卡,是世界上最近几年发展起来的一项新技术,它成功地将射频识别技术和IC卡技术结合起来,解决了无源(卡中无电源)和免接触这一难题。
MIFARE 1型射频卡内部的功能模块及原理见下图1
MIFARE 1型射频卡含有l024&TImes;8bitEEPROM组织,分为16个区,每区4个块,其中射频接口模块主要完成以下几个功能:
由于卡本身无电源,需通过其中的电源产生电路以整流、滤波、稳压后为芯。
芯片电路的数字部分中各块的功能是:复位响应电路-在读写器对IC卡进行上电复位时自动将卡的有关信息传递给读写器,以便使读写器正确识别Ic卡的类型,并对其进行相应的操作。
防冲突电路一当有多张卡在读写器的工作范围时,读写器先从众多卡片中选择一张作为下步处理的对象,将未选中的卡置于暂停工作状态以等待下一次被选择。
应用选择电路一MIFARE l 可一卡多用,它负责从存储区中选择所需应用。
认证与存取控制电路一验证密码和访问权限以控制对EEPROM的访问。
控制与算术单元一对卡片系统进行配置、控制和对卡内数据进行加减运算。
加密单元一对通讯数据进行加密解密等。
EEPROM接口电路一对EEPROM进行译码和读写擦等操作。
EEPROM-存储数据。
Mifare ONE命令说明
1 . “Answer to Request” (“Request”应答)指令 Request 指令将通知MCM在天线有效的工作范围(距离)内寻找MIFARE 1卡片。
如果有MIFARE 1卡片存在,这一指令将分别与MIFARE 1进行通信,读取MIFARE 1卡片上的卡片类型号TAGTYPE(2个字节),由MCM传递给MCU,进行识别处理。
程序员可以根据TAGTYPE来区别卡片的不同类型。
对于MIFARE 1卡片来说,返回卡片的TAGTYPE(2个字节)可能为0004h。
从一个指定的卡片开始,后续的卡片可以根据TAGTYPE而被选择。
当使用“Request std“指令来寻卡时,只有那些卡片上没有被设置成“HALT_MODE ”(停机模式)的卡片将响应这一指令。
Request all指令的使用是很重要的,它可以防止MCM选择同一卡片好几次。
当某一张卡片在MCM之天线的有效的工作范围(距离)内,Request all指令在成功地读取这一张卡片之后,将一直等待卡片的使用者拿走这一张卡片,直到有新一张的卡片进入MCM之天线的有效的工作范围(距离)内。
当然,这里的“新一张的卡片”亦可以是刚刚拿开的那张卡片。
Request all指令是非连续性的读卡指令。
只读一次。
但有个例外,当某一次Request all 指令读卡片失败时,例如,卡片没能通过密码认证或其他原因而出错时,Request all指令将连续地读卡,直到读卡成功才进入非连续性的读卡模式。
Request all指令适用于那些需要有人工干预的场合。
Request std指令的使用和Request all指令刚巧相反,Request std指令是连续性的读卡指令。
当某一张卡片在MCM之天线的有效的工作范围(距离)内,Request std指令在成功地读取这一张卡片之后,进入MCM对卡片的其他操作。
如果其他操作完成之后,程序员又将MCM进入Request std指令操作,则Request std指令将连续性地再次进行读卡操作,而不管这张卡片是否被拿走。
远距离MIFARE 1卡读卡器射频前端的设计
l 引言
随 着 射频 技 术 的 推广 , MI F AR E 1卡 已 经广 泛 应 用 于 公 共交 通 终端 、 手 持终 端 、 板上 单 元 、 非接 触 式 P C终 端 等各 个 非接触 式通 信场 合 。 非 接触 式智 能卡 读写 系统 是 射频 技 术 中的 一个 重要 组 成部 分 ,可 完成 指令 分 析 、 数据 采集 等诸 多功 能 。
【K e v w o r d s】 m i f a r e ; m a i n c h a a r c t e r i s t i c s ; w o r k i n g p d n d p l e ; l o n g - r a n g e ; ar c d - r e a d e r
P h i l i p s 公 司 的 MI F A R E 1 射 频卡 的主 要 特点 和工 作 原理 ,提 出 了一 种 由单 片机 控 制 ,用分 离 元 件 实现 的远 距 离 MI F A R E 1 卡 读卡 器 射频 前端硬 件 电路 系统 的设计 。 解决 了运 用 常规读 写模 块设 计 的读卡 器对 MI F A R E 1 卡 操作 距 离 不足 的问题 , 也 同 时解决 了读 卡器 设计 广泛 采 用专 用 R F I D芯 片 而涉及 国外 相 关知识 产权 的 问题 , 已经投 入实 用 。 【 关键词 】 MI F A R E ; 主要特 点 ; 工作 原理 ; 远距 离 ; 读卡 器
A p p l i c a t i o n R e s u l t s・应 用 成 果
远 距 离 MI F A R E 1 卡读 卡 器 射 频 前 端 的设 计
徐 益敏
( 上海 交通 大 学信 息 安全 工程 学 院 上 海 2 0 0 2 4 0 )
Mifare 1 非接触式IC智能
Mifare 1 非接触式IC智能(射频)卡一.Mifare 1非接触式IC智能射频卡特点Mifare 1 IC智能(射频)卡的核心是Philips 公司的Mifare 1 IC S50(-01,-02,-03,-04)系列微模块(微晶片)。
它确定了卡片的特性以及卡片读写器的诸多性能。
Mifare 1 IC智能(射频)卡采用先进的芯片制造工艺制作。
内建有高速的CMOS EEPROM,MCU等。
卡片上除了IC微晶片及一副高效率天线外,无任何其他元件。
卡片上无源(无任何电池),工作时的电源能量由卡片读写器天线发送无线电载波信号耦合到卡片上天线而产生电能,一般可达2V以上,供卡片上IC工作。
工作频率13.56MHZ。
Mifare 1射频卡所具有的独特的MIFARE RF(射频)非接触式接口标准已被制定为国际标准:ISO/IEC 14443 TYPE A 标准。
射频卡标准操作距离为100mm(由MCM500 作为读写器核心模块)和25 mm (由MCM200 作为读写器核心模块)。
与卡片读写器的通信速率高达106Kbit/s。
Mifare 1 IC智能(射频)卡上具有先进的数据通信加密并双向验证密码系统;且具有防重叠功能:能在同一时间处理重叠在卡片读写器天线的有效工作距离内的多张重叠的卡片。
Mifare 1 IC智能(射频)卡与读写器通信使用握手式半双工通信协议;卡片上有高速的CRC 协处理器,符合CCITT标准。
卡片制造时具有唯一的卡片系列号,没有重复的相同的两张MIFARE 卡片。
卡片上内建8K(bit)EEPROM存储容量并划分为16个扇区,每个扇区划分为4个数据存储块,每个扇区可由多种方式的密码管理。
卡片上还内建有增值/减值的专项的数学运算电路,非常适合公交/地铁等行业的检票/收费系统。
典型的检票交易时间最长不超过100ms(0.1秒)(包括卡片的认证,6个扇区的读(768bit,2个扇区的认证),2个扇区的写操作(256bit))。
Mifare1电路板ID酒店门锁操作方法
Mifare1电路板ID酒店门锁操作方法一、初始化:用机械钥匙连续开5次门,每次开门蜂鸣器“嘀”一短声。
间隔时间不能超过2秒钟。
蜂鸣器“嘀”一长声表示初始化成功。
初始化后所有卡被清空。
二、配置“母卡”:读卡,蜂鸣器‘嘀’一长声,表示母卡配置成功。
初始化后配置的第一张卡即为‘母卡’。
三、配置“子卡”:读‘母卡’,电机正转(开门),绿灯闪烁,表示进入配置“子卡”状态,读卡,蜂鸣器“嘀”一声表示成功,蜂鸣器“嘀、嘀”两声表示该卡已经配置过,可以连续配卡,5秒钟不读卡自动退出或读“母卡”立即退出,电机反转(关门)。
每个锁最多可以配置15张“子卡”。
四、删除“子卡”:1、删除全部子卡:连续读“母卡”5次,红绿灯同时亮,蜂鸣器“嘀、嘀、嘀”三长声,清除所有子卡。
2、删除指定子卡:读任意一张“母卡”,电机正转(开门),再读两下“母卡”,红灯快速闪烁,表示已进入删卡状态,读需要被删除卡的上一张卡,红绿灯同时亮,蜂鸣器“嘀”一长声。
如果需要删除第一张卡,请用最后一张卡。
五、开门:1、“母卡”开门:读任意一张“母卡”,开门, 5秒钟后关门。
2、子卡开门:读任意一张“子卡”,开门,转动手柄后电机反转(关门),或者5秒钟后自动关门。
六、技术参数:1、卡片类型:EM41002、感应距离:0—3cm3、工作电流:直流6V,四节碱性电池,可正常使用一年以上4、功耗:静态电流:≤15微安;读卡电流:≤20毫安;开锁电流:300毫安左右(持续0.3秒左右)5、工作环境:温度:0~+70℃,湿度:≤95%RH6、没有低压提示(这款电路板电压过低没有提示)7、理论上工作电流:直流6V,四节碱性电池,可正常使用一年以上。
8、实际上依据两个指标决定电池的使用时间:<1>电池品牌如:金霸王、南孚、原装进口品牌、555品牌等品牌碱性AAA系列电池。
<2>注意事项:一定要碱性AAA品牌5号电池,不得使用小厂家或者其他类型的电池,否则使用时间极端,严重影响使用效果:<3>在选用正规碱性电池的前提下,依据开门次数的不同,一般外大门使用时间在10-12个月更换一次电池;室内门一般在8-10个月更换一次为宜;办公室或者人流量较多的地方,一般在3-4个月更换一次电池;<4>检测门锁电池使用情况一般采取以下方式:A:当刷卡的时候听声音,如果声音低于平时刷卡的声音,说明电池电量快使用完毕,这个时候就需及时更换电池了。
MIFARE 1 卡的存取控制
存储结构M1卡分为16个扇区,每个扇区4块(块0~3),共64块,按块号编址为0~63。
第0扇区的块0(即绝对地址0块)用于存放厂商代码,已经固化,不可更改。
其他各扇区的块0、块1、块2为数据块,用于存贮数据;块3为控制块,存放密码A、存取控制、密码B,其结构如下:A0A1A2A3A4A5 FF 07 80 69 B0B1B2B3B4B5密码A(6字节) 存取控制(4字节) 密码B(6字节)控制属性每个扇区的密码和存取控制都是独立的,可以根据实际需要设定各自的密码及存取控制。
在存取控制中每个块都有相应的三个控制位,定义如下:块0: C10 C20 C30块1: C11 C21 C31块2: C12 C22 C32块3: C13 C23 C33三个控制位以正和反两种形式存在于存取控制字节中,决定了该块的访问权限(如进行减值操作必须验证KEY A,进行加值操作必须验证KEY B,等等)。
三个控制位在存取控制字节中的位置如下(字节9为备用字节,默认值为0x69):(注: _b表示取反)其中,白色区控制块3 ,蓝色区控制块2 ,绿色区控制块1 ,红色区控制块0 。
数据块(块0、块1、块2)的存取控制如下:(KeyA|B 表示密码A或密码B,Never表示任何条件下不能实现)例如:当块0的存取控制位C10 C20 C30=100时,验证密码A或密码B正确后可读;验证密码B正确后可写;不能进行加值、减值操作。
控制块(块3)的存取控制与数据块(块0、1、2)不同,它的存取控制如下:例如:当块3的存取控制位C13 C23 C33=100时,表示:密码A:不可读,验证KEYB正确后,可写(更改)。
存取控制:验证KEYA或KEYB正确后,可读不可写。
密码B:不可读,验证KEYB正确后,可写。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Mifare1卡及其读写器ASIC模块之“密码操作”研究与其应用程序开发关键字:非接触式智能卡 ASIC模块1、序言非接触式智能卡已经广泛地应用于各类门禁控制系统,公共交通支付系统,e-purse系统,高速公路不停车收费系统,IBMS(智能大楼管理系统),海关过境身份识别,以及医疗保险系统等等。
非接触式智能卡以其高度安全保密性,通信高速性,使用方便性,成本日渐低廉等而受到广泛使用,给我们的生活质量带来了很大的提高。
因此,如何认识、理解智能卡,特别是带有非常神秘色彩的非接触式智能卡,已引起很多智能卡的使用者,包括智能卡专业研发的IT科研人员的极大的兴趣和爱好。
笔者在此很愿意将自己多年来在智能卡(接触式智能卡及非接触式智能卡)方面的研究及其软硬件应用开发的经验与大家一同交流和分享,以取得我国金卡工程事业的更进一步的发展。
在此,笔者将以符合ISO/IEC14443TYPEA标准的Mifare1S50系列非接触式智能卡及其读写设备专用IC(ASIC)RC150/170模块为对象,与大家一起就“关于非接触式智能卡及其读写器ASIC模块之‘密码操作’”作一些研究与探讨,并将用标准的Intel-51系列微处理器汇编语言进行实际的应用程序的开发。
在笔者曾设计和开发的众多智能卡项目中,本文所给出的应用程序都有着良好的运行效果。
2、非接触式智能卡及其读写器ASIC模块RC150/170Mifare1S50非接触式智能卡片有着16个Sector(扇区);每个Sector包含4个Block(块);每个Block具有16个byte的存储容量。
Sector被定义为Sector0至Sector15;Block被分为Block0至Block3;整个Mifare1S50非接触式智能卡共有64个Block。
Sector0中的Block0记录了该张智能卡的序列号(SerialNumber)以及生产厂商的标志信息等,这些信息已在卡片出厂时固化,不能更改。
因此该Block不能再复用为应用数据块。
每个Sector中的Block3被特别用来存放对该Sector中应用块Block0,1,2及其本身Block3进行数据存取的密码及存取权限。
整个Mifare1S50非接触式智能卡共有16个Block3。
根据绝对地址编址,他们可被编为Block3(在Sector0中),Block7(在Sector1中),Block11(在Sector2中),以及Block63(在Sector15中)等等。
对于某一Sector中的Block3的绝对地址编址可以由下列公式计算得到:Block X=(N+1)*4-1其中:X:绝对地址编址的Block块号N:Sector扇号,0至15通常每个扇区的Block0,1,2都存放着非常保密的数据,例如坐公交车/出租车前在公交公司指定地点已购买的车资钱款,智能大厦/智能小区进出时所需的控制信息,股票交易时持有股票交易智能卡片者必须对已存放在智能卡中的交易密码数据(例如帐户、存款信息、已买进股票数量/品种等等)进行确认,才能得以股票交易,等等。
由于每一个Block3中包含了该扇区的密码字节以及对该扇区中其余Block0,1,2进行数据处理的存取控制权限字节,因此如何操作处理Block3将是很重要的内容。
以下将展开对每个扇区的Block3进行研究。
Block3有16个byte组成。
前6个字节是密码A(KEYA),KEYA的缺省值可能为“A0A1A2A3A4A5”;最后6个字节是密码B(KEYB),KEYB的缺省值可能为“B0B1B2B3B4B5”;中间4个字节是控制字节,缺省值可能为“FFH07H80H69H”;利用KEYA或KEYB并遵守早已定义在4个控制字节中的存取条件,我们便能对该密码(KEYA或KEYB)所对应的Sector内的应用块Block0,1,2进行数据读/写/更新等操作。
由于非接触式智能卡的操作,包括数据流的传递等都是以“非接触”方式来完成的,因此在MCU与非接触式智能卡之间必须有一个传递密码(或数据流)的中间媒体,即ASIC模块。
RC150/170就是这样一种ASIC模块。
它担负着非接触式智能卡与MCU(微处理机)之间所有的密码/数据相互传递的重要任务。
对非接触式智能卡进行密码操作,变成对RC150/170ASIC模块进行密码操作。
RC150/170ASIC模块与非接触式智能卡之间的信息传递(包括密码等)对用户来说是透明的,会自动传递并完成。
因此如何对非接触式智能卡进行“密码操作”(对Block3的操作)变成如何对RC150/170ASIC模块进行密码操作。
Philips公司的MCM200模块,MCM500模块或SB201,SB601(Uni-VisionEngineeringLtd.的产品)模块中都包含有RC150/170ASIC模块,因此本文所讨论的内容,包括下面设计的程序等,也适用于这些模块。
RC170是RC150的新一代ASIC模块,速度较快。
现在我们广泛使用的非接触式智能卡读写设备中大都包含有以上所列的ASIC模块之一。
图1显示了在用户(MCU)与非接触式智能卡之间基本的密码传输关系,并请特别注意ASIC 模块RC150/170的作用等等。
图1ASIC模块密码传输关系图在研究ASIC模块RC150/170的时候,我们必须关注所有与“密码操作”有关的寄存器/存储器的情况。
●密码数据寄存器KeyDataRegister(寄存器地址:0x0A);●密码地址寄存器KeyAddressRegister(寄存器地址:0x0C);●密码状态/控制寄存器KeyStatus&ControlRegister(KEYSTACON)(寄存器地址:0x0B);●其他相关寄存器。
所有这些与“密码操作”相关的寄存器都是“只可写不可读”的,即WOM(Write-Only-Memory)。
因此不要试图去读取这些寄存器的内容。
3、“密码操作”的研究及其应用程序开发通常,对非接触式智能卡的“密码操作”有两个主要步骤。
每一个主要步骤又有若干个小的步骤有序并且必须是连续地完成。
“密码操作”的两个主要步骤是:●“LOAD_KEY”密码存取●“AUTHENTICATION”密码认证3.1“LOAD_KEY”密码存取“LOAD_KEY”密码存取必须由以下步骤有序并连续地完成:●设置新的密码值●设置密码状态/控制寄存器KeyStatus&ControlRegister(KEYSTACON)●设置密码地址寄存器KeyAddressRegister(寄存器地址:0x0C)●设置密码数据寄存器KeyDataRegister(寄存器地址:0x0A)●校验STACON寄存器,以确定这次的“LOAD_KEY”密码存取是否有效以下将按照上述的次序进行具体的程序设计,所有的程序都使用标准的Intel-51MCU指令,以利于读者在LOW-LEVEL级上移植到其相应的应用项目中。
3.1.1设置新的密码值新的密码值为6个bytes,在如下的程序设计中被依次存放在MCU内部RAM的72H~77H的6个单元中;程序员亦可自定义其他的存储单元作为新的密码值存放的缓冲区;R1寄存器为新密码缓存首地址指针。
如下所设置新的密码值为:“AAAAAAAAAAAA”SETUP_NEW_KEY_VALUE:;MOV R7,#06H;密码长度为6bytesMOV R1,#72H;R1为新密码缓存首地址指针MOV @R1,#0AAH;设置新密码值MOV 73H,#0AAHMOV 74H,#0AAHMOV 75H,#0AAHMOV 76H,#0AAHMOV 77H,#0AAH良好的经验告诉我们,为了确保整个智能卡系统的高度安全保密,我们有必要在程序设计中,在完成了“密码操作”之后,立即清除存放新的密码值的缓冲区,简单的方法如下:CLEAR_NEW_KEY_BUFFER:MOV R7,#06H;密码长度为6bytesMOV R1,#72H;R1为新密码缓存首地址指针CLEAR_LOOP:MOV @R1,#00H;清除新密码值所在缓冲区INC R1DJNZ R7,CLEAR_LOOP3.1.2设置密码状态/控制寄存器KeyStatus&ControlRegister(KEYSTACON)KEYSTACON寄存器是一个只可读不可写的寄存器(存储器),它指示出“密码操作”时所处的状态和要控制的ASIC内部“密码存储器RAM”的选择。
这里所指的“状态”是指本次“密码操作”两个主要步骤中的一个。
KEYSTACON寄存器是一个8-bit的存储器,其中有用的位(bit)只有3位。
其具体内容为:其中,MSB(“A/L”位)若被设置为“0”,则意味着当前“密码操作”的“状态”是“LOAD_KEY(密码存取)”;若被设置为“1”,则当前“密码操作”的“状态”是“AUTHENTICATION(密码认证)”。
最后 2个bit:KS0KS1是密码集keyset的选择。
在ASIC中共有3套密码集(keyset)和一个传输密码(TransportKey)可被选择。
设置KS0、KS1的值实际上是在选择(寻址)ASIC模块内部存放密码的不同的存储器单元(密码箱)。
如果“LOAD_KEY”(密码存取)时使用了keyset0,则“AUTHENTICATION”(密码认证)时只能使用keyset0,而不能使用keyset1或keyset2或其他,因为在ASIC模块内,keyset0指定的密码存储器地址单元与keyset1或keyset2所指定的密码存储器地址单元是不同的单元。
这就好比去超级市场购物,入超市前您把您的包裹寄存在超市门前包裹箱A中,并得到打印有开起包裹箱A的(开箱)密码纸条;当您欲取回包裹时,拿着包裹箱A的(开箱)密码纸条而去开包裹箱B或C的箱门,当然不能打开,因为您的地址(箱号)不对,当然您的包裹也不能拿到。
这是密码的认证出错。
在ASIC中有相同之处。
如果“LOAD_KEY”(密码存取)时使用了keyset0,并存放上密码,而在“AUTHENTICATION”(密码认证)时却使用keyset1或keyset2或其他而来验证刚才存放的密码,当然会得到ASIC模块返回的认证出错(“AE=1”)。
当KS1KS0=“00”时,选择使用keyset0;当KS1KS0=“01”时,选择使用keyset1;当KS1KS0=“10”时,选择使用keyset2;当KS1KS0=“11”时,选择使用传输密码(TransportKey)。
以下是设置密码状态/控制寄存器KeyStatus&ControlRegister(KEYSTACON)的程序:SETUP_KEYSTACON:MOV 7EH,#00000000B;选择使用keyset0,并指明是“LOAD_KEY”MOV A,7EH ;7EH单元存放了设置KEYSTACON的值MOV R0,#0BH ;KEYSTACON寄存器地址为0BhOVX @R0,A ;设置KEYSTACON寄存器如果我们要选择使用keyset2,则相应可以设置7EH单元为#00000010b(0x02),即: MOV 7EH,#00000010B3.1.3设置密码地址寄存器KeyAddressRegister(寄存器地址:0x0C)在成功地完成了对密码状态/控制寄存器(KEYSTACON)的设置之后,必须立即对密码地址寄存器KeyAddressRegister进行设置,而不能对密码数据寄存器KeyDataRegister进行设置或做其他设置,否则将出错。