随着磁条卡被银行系统淘汰的消息发布,人们逐渐认识到磁条卡的安全性能在现代科技面前已经形同虚设了,因此大批的商家更换掉原来的磁条会员卡改用IC卡作为会员卡,但由于磁条卡与IC卡有本质的不同不会使用。这篇文章我们介绍s50芯片卡的数据结构。
共16个扇区,每个扇区有4个块,其中第1扇区第0块是卡序列号,是只读的,不能写。
密码存放在每个扇区的块3。
算存储密码块的算法是:x=s*4+3; 其中s表示扇区号(0-15)。
1、M1卡分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,(我们也将16个扇区的64个块按绝对地址编号为0~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,等等)