Mifare l 射频卡初始值及其相关说明
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
0 0 0
KeyA|B
KeyA|B KeyA|B
KeyA|B
C3xy=000 时(厂商预设的
0 1 0
KeyA|B
Never
Never
Never
初始值,见阴影区),验证密
1 0 0
KeyA|B
KeyB
Never
Never
1
各扇区数据块 0~块 2 的三个控制位以正反两种形式存在于块 3 的存取控制字节中,它决定了该块的访问权限
(例如进行减值及初始化值操作必须验证 KEY A,进行加值操作必须验证 KEY B,等等)。三个控制位在存取控制字
节(6~9 字节)中的权限如下(阴影区的存取控制为厂商初始值;字节 9 为备用字节,默认值为 69):
2 1- 1- 0 CXx2
1 1- 1- 0 CXx1
0 1- 1- 0 CXx0
如果用户要读到块 1 的内容,对照表 4 和查对表 3 可知,当存取控制 C1x1,C2x1,C3x1=000 时,必需正确校验
KEY A 或 KEY B 后才可允许读取块 1 的内容,否则,MF1 读写器会因校验某区密码出错而无法读取和传送数据!以
字节号: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 各区控制块 3 结构: 控制值: FF FF FF FF FF FF FF 07 80 69 FF FF FF FF FF FF
说明: 密码 A(0~5 字节) 存取控制(6~9 字节) 密码 B(10~15 字节)
字节 8 C3x3 C3x2 C3x1 C3x0 C2x3 C2x2 C2x1 C2x0
表示取反)
字节 9 BX7
BX6
BX5
BX4
BX3
BX2
BX1
BX0
所属块 块 3 控制位 块 2 控制位 块 1 控制位 块 0 控制位 块 3 控制位 块 2 控制位 块 1 控制位 块 0 控制位
块3 块2 块1 块0 块3 块2 块1 块0
4、对以上 6、7、8 字节的存取/控制二进制已取反值,依照表 2、表 4 块位转换为各块控制值,如下表:
块 3 位 字节 7、字节 6、字节 8 = C13、C23、C33 = C1Y、C2Y、C3Y = 0 1 1
块 2 位 字节 7、字节 6、字节 8 = C12、C22、C32 = C1Y、C2Y、C3Y = 1 1 0
控制属性:
每个扇区的用户密码和存取控制条件都是独立设置的,可以根据实际需要设定各自的密码及存取控制。在存取 控制中,每个块都有三个控制位相对应,用以决定某数据块或控制块的读写条件,定义为:“CXxy”,见表 1 所示。
其中 CXà代表每块控制位号(C1~C3),xà代表某块所属扇区号(0~15), yà代表该扇区内某块号。例如 C1x2 即为 x 扇区内块 2 的第 1 控制位,余此类推。 注:控制位的设置存放在存取控制字节中,见表 2 所示。
块 1 位 字节 7、字节 6、字节 8 = C11、C21、C31 = C1Y、C2Y、C3Y = 1 1 0
此类推,用户要进行其它操作时,可根据存取条件,对照表 2~4 来决定其操作权限。
表 5 列出了飞利浦公司对 MF1 卡的 8 种控制位设置值所对应的存取控制权限表,供发卡商及用户设置 MF1 卡使
用权限时参考,其释义如下: 表 5:块 3 的存取控制权限(供发卡商及用户设置权限时参考)
控制位设置值
● 数据保存期为 10 年,可改写 10 万次,读不限次。
工作原理:
卡片由一个卷绕天线和特定用途集成电路模块组成。其中,模块由一个高速(106KB 波特率)的 RF 接口、一个 控制单元和一个 8K 位 E2PROM 组成。读写器向 MF1 卡发出一组固定频率(13.56MHZ)的电磁波,卡片内有一个 LC 串联谐振电路,其频率与读写器发射的频率相同,在电磁波的激励下,LC 谐振电路产生共振,从而使谐振电容内有 了电荷,在这个电容的另一端,接有一个单向导通的电子泵,将电容内的电荷送到模块存储电容内储存,当所积累 的电荷达到 2V 以上时,此电容可作为电源向模块电路提供工作电压,将卡内数据发射出去或接收读写器的数据。
Never
制卡和发卡商检测心片功
1 0 1
KeyB
Never
Never
Never
能使用,确认所有读写/加
1 1 1
Never
Never
Never
Never
密功能均正常(存取控制初
始值“ff078069”,请参考“步骤举例”自行验算)后,再依据使用需要和参照表4表 5 设置新的存取控制权限值,
字 节号 字节 6 字节 7 字节 8
对应二进制值 0 0 0 0 1 0 0 0 0 1 1 1 0 1 1 1 1 0 0 0 1 1 1 1
所 属 块 位
位置 高 4 位 位置 低 4 位 C2Y 1 1 1 1 C1Y 0 1 1 1 C1Y 0 1 1 1 C3Y 1 0 0 0 C3Y 1 0 0 0 C2Y 1 1 1 1
MF1 卡修改各区块控制位值和数据——举例
(一)、以常用设置“08 77 8F 69”控制条件为例,先搞清楚它――具有的访问权限。
1、对“08 77 8F 69”值进行计算,该值定位于各区块 3 的 6、7、8、9 四个字节内,字节 6=08,字节 7=77,
字节 8=8F,字节 9=69(默认值,不予计算源自文库。
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 正确后,可
KeyB
1 1 0 Never Never KeyA|B Never Never Never
0 0 1 Never KeyA
KeyA
KeyA
KeyA
KeyA
0 1 1 Never KeyB KeyA|B KeyB Never
KeyB
表 1:控制位定义“CXxy” 块 0 C1x0 C2x0 C3x0 用户数据块,(0 区 0 块除外) 块 1 C1x1 C2x1 C3x1 用户数据块 块 2 C1x2 C2x2 C3x2 用户数据块 块 3 C1x3 C2x3 C3x3 密匙存取控制块
注释:表 3 中,KeyA|B 表示密码 A 或密码 B,Never 表示没有条件实现。
表 3:数据块的存取控制权限(x=0~15 扇区; y=块 0,块 1,块 2)
例如,某区块的 3 个存
C1xy C2xy C3xy
读
写
加值
减值,初始化 取 控 制 位 C1xy 、 C2xy 、
表 2:三个控制位在存取控制字节中的位置
位号 字节号
bit 7
6
5
4
3
2
1
0
字节 6 C2x3_b C2x2_b C2x1_b C2x0_b C1x3_b C1x2_b C1x1_b C1x0_b
字节 7 C1x3 C1x2 C1x1 C1x0 C3x3_b C3x2_b C3x1_b C3x0_b (注:“ _b”
密码 A 权限
存取控制权限
密码 B 权限
C1x3 C2x3 C3x3 读
写
读
写
读
写
0 0 0 Never KeyA
KeyA Never KeyA
KeyA
0 1 0 Never Never
KeyA Never KeyA
Never
1 0 0 Never KeyB KeyA|B Never Never
码 A 或密码 B 正确后可读出
1 0 0
KeyA|B
KeyB
KeyB
KeyA|B
/可写入/可加值/减值及初
0 0 1
KeyA|B
Never
Never
KeyA|B
始化操作。该初始值主要供
0 1 1
KeyB
KeyB
Never
2、例如:字节 6=08,对应其二进制值=00001000, 则对 6、7、8 这三个字节进行二进制转换结果见下表:
字节 6 = 0 0 0 0 1 0 0 0 字节 7 = 0 1 1 1 0 1 1 1 字节 8 = 1 0 0 0 1 1 1 1
3、参照表 2 及表 4 算法,字节 6 的全部二进制值取反,字节 7 的低四位二进制值取反,字节 8 不变,得到:
2
写(或更改);存取控制:验证 KEYA 或 KEYB 正确后,可读不可写(写保护);密码 B:不可读,验证 KEYB 正确后可写。 又如:当块 3 的存取控制位 C13 C23 C33 = 110 或者 111 时,除存取控制值需要在验证 KEYA 或 KEYB 正确
后仅仅可读外,其它如存取控制值的改写、密码 A、密码 B 的读写权限均被锁死而无法访问!
Mifare l 射频卡初始值及其相关说明
【本说明是 Mifare 1 卡订货合同不可缺少的技术性文档附件】 ≡≡≡ 达华电子公司 ≡≡≡
电气特性:
l 容量为 8K 位 EEPrOM; l 分为 16 个扇区,每个扇区为 4 块,每块 16 个字节,以块为存取单位; l 每个扇区有独立的一组密码及访问控制; l 每张卡有唯一序列号,为 32 位; l 具有防冲突机制,支持多卡操作; l 无电源,自带天线,内含加密控制逻辑和通讯逻辑电路; l 工作温度:-20℃~50℃; l 工作频率:13.56MHZ; l 通信速率:106KBPS; l 读写距离:可达 10mm(与读写器以及卡天线尺寸有关);
存储结构:
MF1 卡分为 16 个扇区,每区有 4 块(块 0~块 3),共 64 块,按块号编址为 0~63。第 0 扇区的块 0(即绝对地 址块 0)用于存放芯片商、卡商相关代码,已经固化不可更改。其他各扇区的块 0、块 1、块 2 为数据块,用于存贮 用户数据;块 3 为各扇区控制块,用于存放密码 A、存取控制条件设置、密码 B。各区控制块结构相同,如下所示:
值(由厂商提供,通常为:ffffffffffff)。那么块 3 中,厂商初始的存取控制值如下表所示:
表 4: 块 3 中厂商初始存取控制值(-号表示需要取反)
Bit#
7
6
5
4
3
字节 6
1-
1-
1-
1-
1-
字节 7
0
0
0
0
0-
字节 8
1
0
0
0
0
CXx3 CXx2 CXx1 CXx0 CXx3
进行用户数据操作和修改新的用户密码。
再如当某区块 0 的存取控制位 C10、C20、C30 的设置均=100 时,验证密码 A 或密码 B 正确后可读出其数据;只 有验证密码 B 正确后才可允许改写数据;不能进行加值、减值等操作。
以 厂 商 初 始 值 “ FF 07 80 69” 为 例 , 说 明 存 取 控 制 条 件 对 数 据 块 的 影 响 。 初 始 存 取 控 制 默 认 值 (C1x0,C2x0,C3x0=000;C1x1,C2x1,C3x1=000;C1x2,C2x2,C3x2=000;C1x3,C2x3,C3x3=001)和 KeyA、KeyB 默认