Mifare l卡特性简介
电气特性
l 容量为8K位EEPrOM
l 分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位
l 每个扇区有独立的一组密码及访问控制
l 每张卡有唯一序列号,为32位
l 具有防冲突机制,支持多卡操作
l 无电源,自带天线,内含加密控制逻辑和通讯逻辑电路
l 工作温度:-20℃~50℃
l 工作频率:13.56MHZ
l 通信速率:106KBPS
l 读写距离:10mm以内(与读写器有关)
l 数据保存期为10年,可改写10万次,读不限次
存储结构
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):
|
bit 7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
|
字节6 |
C23_b |
C22_b |
C21_b |
C20_b |
C13_b |
C12_b |
C11_b |
C10_b |
|
字节7 |
C13 |
C12 |
C11 |
C10 |
C33_b |
C32_b |
C31_b |
C30_b |
|
字节8 |
C33 |
C32 |
C31 |
C30 |
C23 |
C22 |
C21 |
C20 |
(注: _b表示取反)
其中,黑色区控制块3,蓝色区控制块2,绿色区控制块1,红色区控制块0。
数据块(块0、块1、块2)的存取控制如下:
|
控制位(X=0..2) |
访 问 条 件 (对块0、1、2) |
|||||
|
C1X |
C2X |
C3X |
Read |
Write |
Increment |
Decrement transfer restore |
|
0 |
0 |
0 |
KeyA|B |
KeyA|B |
KeyA|B |
KeyA|B |
|
0 |
1 |
0 |
KeyA|B |
Never |
Never |
Never |
|
1 |
0 |
0 |
KeyA|B |
KeyB |
Never |
Never |
|
1 |
1 |
0 |
KeyA|B |
KeyB |
KeyB |
KeyA|B |
|
0 |
0 |
1 |
KeyA|B |
Never |
Never |
KeyA|B |
|
0 |
1 |
1 |
KeyB |
KeyB |
Never |
Never |
|
1 |
0 |
1 |
KeyB |
Never |
Never |
Never |
|
1 |
1 |
1 |
Never |
Never |
Never |
Never |
(KeyA|B 表示密码A或密码B,Never表示任何条件下不能实现)
例如:当块0的存取控制位C10 C20 C30=100时,验证密码A或密码B正确后可读;验证密码B正确后可写;不能进行加值、减值操作。
控制块(块3)的存取控制与数据块(块0、1、2)不同,它的存取控制如下:
|
控制位 |
密码A |
存取控制 |
密码B |
|||||
|
C13 |
C23 |
C33 |
Read |
Write |
Read |
Write |
Read |
Write |
|
0 |
0 |
0 |
Never |
KeyA|B |
KeyA|B |
Never |
KeyA|B |
KeyA|B |
|
0 |
1 |
0 |
Never |
Never |
KeyA|B |
Never |
KeyA|B |
Never |
|
1 |
0 |
0 |
Never |
KeyB |
KeyA|B |
Never |
Never |
KeyB |
|
1 |
1 |
0 |
Never |
Never |
KeyA|B |
Never |
Never |
Never |
|
0 |
0 |
1 |
Never |
KeyA|B |
KeyA|B |
KeyA|B |
KeyA|B |
KeyA|B |
|
0 |
1 |
1 |
Never |
KeyB |
KeyA|B |
KeyB |
Never |
KeyB |
|
1 |
0 |
1 |
Never |
Never |
KeyA|B |
KeyB |
Never |
Never |
|
1 |
1 |
1 |
Never |
Never |
KeyA|B |
Never |
Never |
Never |
例如:当块3的存取控制位C13 C23 C33=100时,表示:
密码A: 不可读,验证KEYB正确后,可写(更改)。
存取控制:验证KEYA或KEYB正确后,可读不可写。
密码B: 不可读,验证KEYB正确后,可写。
工作原理
卡片的电气部分只由一个天线和 ASIC 组成。
天线:卡片的天线是只有几组绕线的线圈,很适于封装到 IS0 卡片中。
ASIC:卡片的 ASIC 由一个高速(106KB波特率)的 RF 接口,一个控制单元和一个8K位EEPROM组成。
读写器向 M1 卡发一组固定频率的电磁波,卡片内有一个 LC 串联谐振电路,其频率与讯写器发射的频率相同,在电磁波的激励下,LC 谐振电路产生共振,从而使电容内有了电荷,在这个电容的另一端,接有一个单向导通的电子泵,将电容内的电荷送到另一个电容内储存,当所积累的电荷达到 2V 时,此电容可做为电源为其它电路提供工作电压,将卡内数据发射出去或接取读写器的数据。
Mifare l卡特性简介的更多相关文章
- 由Mifare 1卡破解带来的危险以及应对方法
今年年初以来,一个消息的传出震惊了整个IC卡行业.最近,德国和美国的研究人员成功地破解了NXP的Mifare1芯片的安全算法.Mifare1芯片主要用于门禁系统访问控制卡,以及一些小额支付卡,应用范围 ...
- 使用Proxmark3进行MIFARE Classic卡的安全测试
使用Proxmark3进行MIFARE Classic卡的安全测试 Proxmark3的MIFARE安全测试是很多朋友都非常重视的一部分,所以我们特地以这个部分进行介绍,告诉大家如何当你完成前期操 ...
- 破解简单Mifare射频卡密钥杂记
先要了解一点大学城浴卡用的是什么卡,经查证是Mifare S50卡,也有叫ISO14443A的(协议名).本来想看看大学城浴卡有没有安全漏洞,没想到浴卡公司在安全性上几乎是蔑视我们大学生的智商,虽然被 ...
- ES6新特性简介
ES6新特性简介 环境安装 npm install -g babel npm install -g babel-node //提供基于node的REPL环境 //创建 .babelrc 文件 {&qu ...
- SpartanBrowser产品和安全特性简介
v:* { } o:* { } w:* { } .shape { }p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-botto ...
- AsyncLocal 与 ThreadLocal ThreadStatic特性简介
AsyncLocal 与 ThreadLocal [.NET深呼吸]基于异步上下文的本地变量(AsyncLocal) https://www.cnblogs.com/tcjiaan/p/5007737 ...
- [转帖]sql server版本特性简介、版本介绍简介
sql server版本特性简介.版本介绍简介 https://www.cnblogs.com/gered/p/10986240.html 目录 1.1.sql server的版本信息 1.2.版本重 ...
- ECMAScript 6新特性简介
目录 简介 ECMAScript和JavaScript的关系 let和const 解构赋值 数组的扩展 函数的扩展 简介 ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言 ...
- 射频识别技术漫谈(11)——Mifare系列卡的共性【worldsing笔记】
Mifare是NXP公司生产的一系列遵守ISO14443A标准的射频卡,包Mifare S50.Mifare S70.Mifare UltraLight.Mifare Pro.Mifare Desfi ...
随机推荐
- R语言-混合型数据聚类
利用聚类分析,我们可以很容易地看清数据集中样本的分布情况.以往介绍聚类分析的文章中通常只介绍如何处理连续型变量,这些文字并没有过多地介绍如何处理混合型数据(如同时包含连续型变量.名义型变量和顺序型变量 ...
- Spring自动化装配bean
1. 场景 用CD(Compact disc)和CD播放器(CDPlayer)阐述DI(依赖注入). 如果不将CD插入(注入)到CDPlayer中,那么CDPlayer其实没有太大的用处,所以,可以这 ...
- ReactNative学习之css样式使用
前言: 前面学习了html,今天学习一下css的基本使用,看下html与css之间是如何结合来编写前端网页的. CSS 是什么? CSS 是 Cascading Style Sheets(级联样式表) ...
- MQL语句大全
mysql sql语句大全 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql se ...
- 排序算法 - 插入排序(Insertion sort)
插入排序对于少量元素的排序是很高效的,而且这个排序的手法在每个人生活中也是有的哦. 你可能没有意识到,当你打牌的时候,就是用的插入排序. 概念 从桌上的牌堆摸牌,牌堆内是杂乱无序的,但是我们摸上牌的时 ...
- JavaBean自动生成get和set方法
用Myeclipse开发java web程序,写javabean的时候,如果字段很多的话,写get和set方法是一件很无语和浪费时间的事情,所以Myeclipse提供了一个自动生成这些方法的功能. ...
- 进程控制fork与vfork
1. 进程标识符 在前面进程描述一章节里已经介绍过进程的两个基本标识符pid和ppid,现在将详细介绍进程的其他标识符. 每个进程都有非负的整形表示唯一的进程ID.一个进程终止后,其进程ID就可以再次 ...
- Ubuntu下Tomcat初始配置
1.下载tomcat安装包 从tomcat官方网站http://tomcat.apache.org下载安装包,然后解压到某个目录,比如: ~/opt/apache-tomcat-7.0.63官方文档中 ...
- Angular JS的Placeholder功能在IE8/9浏览器中不可用
附上如下代码可正常工作: .directive('placeholder', function($timeout){ var i = document.createElement('input'); ...
- Nignx入门location、root配置
nginx的配置.首当其冲的就是location配置了,下面是笔记参考的博文链接 http://www.cnblogs.com/sunkeydev/p/5225051.html location匹 ...