ic卡id卡钥匙扣卡
一、 主要指标
 容量为8k位eeprom
 分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位
 每个扇区有独立的一组密码及访问控制
 每张卡有唯一序列号,为32位
 具有防冲突机制,支持多卡操作
 无电源,自带天线,内含加密控制逻辑和通讯逻辑电路
 数据保存期为10年,可改写10万次,读无限次
 工作温度:-20℃~50℃(温度为90%)
 工作频率:13.56mhz
 通信速率:106kbps
 读写距离:10mm以内(与读写器有关)
二、 存储结构
1、 m1卡分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,(我们也将16个扇区的64个块按绝对地址编号为0~63,存贮结构如下图所示:
块0 数据块 0
扇区0 块1 数据块 1
块2 数据块 2
块3 密码a 存取控制 密码b 控制块 3
块0 数据块 4
扇区1 块1 数据块 5
块2 数据块 6
块3 密码a 存取控制 密码b 控制块 7
∶
∶
∶
0 数据块 60
扇区15 1 数据块 61
2 数据块 62
3 密码a 存取控制 密码b 控制块 63
2、 第0扇区的块0(即绝对地址0块),它用于存放厂商代码,已经固化,不可更改。
3、 每个扇区的块0、块1、块2为数据块,可用于存贮数据。
数据块可作两种应用:
★ 用作一般的数据保存,可以进行读、写操作。
★ 用作数据值,可以进行初始化值、加值、减值、读值操作。
4、 每个扇区的块3为控制块,包括了密码a、存取控制、密码b。具体结构如下:
密码a(6字节) 存取控制(4字节) 密码b(6字节)
5、 每个扇区的密码和存取控制都是独立的,可以根据实际需要设定各自的密码及存取控制。存取控制为4个字节,共32位,扇区中的每个块(包括数据块和控制块)的存取条件是由密码和存取控制共同决定的,在存取控制中每个块都有相应的三个控制位,定义如下:
块0: c10 c20 c30
块1: c11 c21 c31
块2: c12 c22 c32
块3: c13 c23 c33
三个控制位以正和反两种形式存在于存取控制字节中,决定了该块的访问权限(如
进行减值操作必须验证key a,进行加值操作必须验证key b,等等)。三个控制
位在存取控制字节中的位置,以块0为例:
对块0的控制:
字节6 c20_b c10_b
字节7 c10 c30_b
字节8 c30 c20
字节9
( 注: c10_b表示c10取反 )
存取控制(4字节,其中字节9为备用字节)结构如下所示:
字节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
字节9
( 注: _b表示取反 )
6、数据块(块0、块1、块2)的存取控制如下:
控制位(x=0.1.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=1 0 0时,验证密码a或密码b正确后可读;
验证密码b正确后可写;不能进行加值、减值操作。
7、控制块块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=1 0 0时,表示:
密码a:不可读,验证keya或keyb正确后,可写(更改)。
存取控制:验证keya或keyb正确后,可读、可写。
密码b:验证keya或keyb正确后,可读、可写。
三、 工作原理
卡片的电气部分只由一个天线和asic组成。
天线:卡片的天线是只有几组绕线的线圈,很适于封装到is0卡片中。
asic:卡片的asic由一个高速(106kb波特率)的rf接口,一个控制单元和一个
8k位eeprom组成。
工作原理:读写器向m1卡发一组固定频率的电磁波,卡片内有一个lc串联谐振电路,其频率与读写器发射的频率相同,在电磁波的激励下,lc谐振电路产生共振,从而使电容内有了电荷,在这个电容的另一端,接有一个单向导通的电子泵,将电容内的电荷送到另一个电容内储存,当所积累的电荷达到2v时,此电容可做为电源为其它电路提供工作电压,将卡内数据发射出去或接取读写器的数据。
四、 m1射频卡与读写器的通讯
复位应答(answer to request)
m1射频卡的通讯协议和通讯波特率是定义好的,当有卡片进入读写器的操作范围时,读写器以特定的协议与它通讯,从而确定该卡是否为m1射频卡,即验证卡片的卡型。
防冲突机制 (anticollision loop)
当有多张卡进入读写器操作范围时,防冲突机制会从其中选择一张进行操作,未选中的则处于空闲模式等待下一次选卡,该过程会返回被选卡的序列号。
选择卡片(tag)
选择被选中的卡的序列号,并同时返回卡的容量代码。
三次互相确认(3 pass authentication)
选定要处理的卡片之后,读写器就确定要访问的扇区号,并对该扇区密码进行密码校验,在三次相互认证之后就可以通过加密流进行通讯。(在选择另一扇区时,则必须进行另一扇区密码校验。)
对数据块的操作
读 (read):读一个块;
写 (write):写一个块;
加(increment):对数值块进行加值;
减(decrement):对数值块进行减值;
存储(restore):将块中的内容存到数据寄存器中;
传输(transfer):将数据寄存器中的内容写入块中;
中止(halt):将卡置于暂停工作状态;
非接触式ic卡性能介绍(ml)
一、 概述
mifare light 卡是一种小容量卡,共384位,适合于一卡一用。
二、 主要指标
 容量为384位
 16位的数值计算
 128位的数据区(如果不用钱包文件可达192位)
 用户可自定义控制权限
 唯一的32位序列号
 工作频率:13.56mhz
 通信速率:106kb波特率
 防 冲 突:同一时间可处理多张卡
 读写距离:在10cm以内(与天线有关)
 卡内无需电源
三、 存储结构
ml卡共384位,分为12页,每页为4个字节。存储结构如下:
页号 字节0 字节1 字节2 字节3
0 sernr(0) sernr(1) sernr(2) sernr(3) block 0
1 sernr(4) size code type(0) type(1)
2 data(0) data(1) data(2) data(3) data1
3 data(4) data(5) data(6) data(7)
4 value(0) value(1) value_b(0) value_b(1) value
5 value(0) value(1) value_b(0) value_b(1)
6 keya(0) keya(1) keya(2) keya(3) keya
7 keya(4) keya(5) ac-a ac-a_b
8 keyb(0) keyb(1) keyb(2) keyb(3) keyb
9 keyb(4) keyb(5) ac-b ac-b_b
a data(0) data(1) data(2) data(3) data2
b data(4) data(5) data(6) data(7)
( 注:_b表示取反 )
1) 第0、1页存放着卡的序列号等信息,只可读。
2) 第2、3页及a、b两页数据块,可存贮一般的数据。
3) 和4、5页为数值块,可作为钱包使用,两字节的值以正和反两种形式存贮。只有减
值操作,没有加值操作。如果不做钱包使用,则可以做为普通的数据块使用。
4)第6、7、8、9页存储着密码a(6字节)、密码b(6字节)及存取控制。
5)第7页的2字节、第9页的2字节为存储控制,存储控制以正和反的形式存两次。
bit 7 ---
bit 6 ---
bit 5 data2-write -enable
bit 4 data2-read-enable
bit 3 key+ac-write-enable
bit 2 value-write-enable
bit 1 data1-write-enable
bit 0 data1-read-enable
data1:可读、可写;
value:可写;
ac-a:可写;
data2:可读、可写;
6)一次写一页(4个字节),一次读两页(8个字节)。
msn:gy_326@163.com
深圳市宝安区龙华镇水斗新围村十巷一号