# IC卡扇区数据格式

# 普通注册授权卡

第1个扇区的第0块

位置 代称 说明
0 Year 减2000后的值,BCD码
1 Month BCD码
2 Day BCD码
3 Hour BCD码
4 Minute BCD码
5-6 内部使用
7 CardType 0 固定 表示授权卡
8 CardLevel 0普通卡1无限制卡2无有效期
9 Rand 随机数,每次写卡产生,表示卡片被重写
10 FunMast bit0全部楼层,bit2使用次数限制
11 CardTimesH 有效次数 高位
12 CardTimesL 有效次数 低位
13-15 3字节卡片编号,从0开始;高位在前(15是个位数)

无限制卡

不受门、有效次数、电梯地址、电梯楼层、有效期的限制,都可以开。

第1个扇区的第1块

位置 代称 说明
0-15 Bit128 表示可以开启128个门

第1个扇区的第2块

位置 代称 说明
0 A 第1个电梯的地址
1 B 第2个电梯的地址
2 C 第3个电梯的地址
3 D 第4个电梯的地址
4 E 第5个电梯的地址
5 F 第6个电梯的地址
6-15 第(22-31)*8bit个门 地址从176到248 (未用)

表示总共可以最多选择6个电梯

第2扇区第0-2块 :用来存储6个电梯每个楼层的权限

位置 代称 说明
0 0-7 Bit 64 第1个电梯的64层
0 8-15 Bit 64 第2个电梯的64层
1 0-7 Bit 64 第3个电梯的64层
1 8-15 Bit 64 第4个电梯的64层
2 0-7 Bit 64 第5个电梯的64层
2 8-15 Bit 64 第6个电梯的64层

# 母卡

母卡用来存储普通注册卡的密码,以及开始使用的扇区的第一个扇区号码。 只固定使用第3扇区,也就是2扇区第0块,结构如下

位置 代称 说明
0 0 备用
0 1 备用
0 2 SectorNumber IC卡数据第1个扇区号 1-14,即前面注册卡锁使用的2个连续扇区的第一个扇区的号码
0 3-14 Password IC卡验证密码,A模式
0 15 XOR 前面15个数字的校验,异或

密码由6位字符组成,存储为12个字节。转换算法如下

void DoKey6_12(unsigned char *key,unsigned char *buff)
{
    unsigned char i;
    for(i=0;i<6;i++){
        key[i*2]   = ((~buff[i])& 0xF0) |(buff[i]>>4);
        key[i*2+1] = (((~buff[i])<<4)& 0xF0) |(buff[i]&0x0F);
    }
}

例子

000004C378C378C378C378C378C37804,表示密码为888888,加密用户卡扇区4和5。