M1卡介绍
M1卡及CPU卡的区别
1.1 M1卡所谓的M1卡,为逻辑加密卡,卡内的集成电路具有加密逻辑和EEPROM(电可擦除可编程只读存储器)。
其成功地解决了无源(卡中无电源)和免接触这一难题,是电子器件领域的一大突破。
主要用于公交、轮渡、地铁的自动收费系统,也应用在门禁管理、身份证明和电子钱包。
目前M1卡被证实可以在认证过程中,获取通信数据,经过40毫秒的计算,仅消耗8M的存储单元,就可以得到认证密码。
10年的历程,M1卡扮演了重要的较色,目前全国156个城市使用的是M1卡作为其用户卡,发卡总量达到1亿余张。
这种安全性较差的IC卡是目前我们行业应用的主要卡种。
随着应用领域的扩展和深入,M1卡难以满足更高的安全性和更复杂的多应用需求,尤其是在M1卡的安全被攻破的情况下,对IC卡的安全性显得尤为重要和紧迫。
原有M1卡被破解使得用户信息的安全性得不到保障,几乎卡片都可以被完整复制,充值和消费交易无保障,冒名交易导致持卡人权益受侵害,限制了目前一卡通的拓展应用。
因此,发展非接触CPU卡技术正成为非接触IC卡技术更新换代的重要趋势。
1.2 CPU卡特性CPU卡,简单来说就是具有CPU的智能卡,卡内具有中央处理器(CPU)、随机存储器(RAM)、程序存储器(ROM)、数据存储器(EEPROM)以及片内操作系统(COS)、随机数发生器、3DES协处理器。
CPU卡虽小,却是五脏俱全,相当于一台微型计算机。
有的卡内芯片还集成了加密运算协处理器以提高安全性和工作速度,使其技术指标远远高于逻辑加密M1卡。
CPU卡不仅具有M1卡的所有功能,更具有逻辑加密卡所不具备的高安全性、灵活性以及支持与应用扩展等优良性能,也是今后IC卡发展的主要趋势和方向。
CPU卡具备以下特点:●先进性CPU卡可以作为银行的金融卡使用,代表当前IC卡应用的最高安全等级,正成为IC卡应用中的主流产品。
●规范性支持符合ISO7816-3标准的T=0、T=1通讯协议,符合《中国金融集成电路(IC)卡规范》、《中国金融集成电路(IC)卡应用规范》,支持符合银行规范的电子钱包、电子存折功能。
M1卡介绍...
M1卡介绍...M1卡是指菲利浦下属子公司恩智浦出品的芯片缩写,全称为NXP Mifare1系列,常用的有S50及S70两种型号,目前都有国产芯片与其兼容,属于非接触式IC卡。
最为重要的优点是可读可写并且安全性高的多功能卡。
这些优点与其自身的结构密不可分。
主要指标•容量为8K位EEPROM(Electrically Erasable Programmable Read-Only Memory,带电可擦可编程只读存储器)•分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位•每个扇区有独立的一组密码及访问控制•每张卡有唯一序列号,为32位•具有防冲突机制,支持多卡操作•无电源,自带天线,内含加密控制逻辑和通讯逻辑电路•数据保存期为10年,可改写10万次,读无限次•工作温度:-20℃~50℃(温度为90%)•工作频率:13.56MHZ•通信速率:106KBPS•读写距离:10mm以内(与读写器有关)存储结构1、M1卡分为16个扇区,每个扇区4块(块0~3),共64块,按块号编址为0~63。
第0扇区的块0(即绝对地址0块)用于存放厂商代码,已经固化,不可更改。
其他各扇区的块0、块1、块2为数据块,用于存贮数据;块3为控制块,存放密码A、存取控制、密码B。
每个扇区的密码和存取控制都是独立的,可以根据实际需要设定各自的密码及存取控制。
存贮结构如下表所示:2、第0扇区的块0(即绝对地址0块),它用于存放厂商代码,已经固化,不可更改。
3、每个扇区的块0、块1、块2为数据块,可用于存贮数据。
数据块可作两种应用:用作一般的数据保存,可以进行读、写操作。
用作数据值,可以进行初始化值、加值、减值、读值操作。
4、每个扇区的块3为控制块,包括了密码A、存取控制、密码B。
具体结构如下:各区控制块3结构字节号0 1 2 3 4 5 6 7 8 910 11 12 13 14 15控制值FF FF FF FF FFFFFF 07 8069FF FF FF FF FF FF说明密码A(0~5字节)存取控制(6~9字节)密码B(10~15字节)密码A(6字节)存取控制(4字节)密码B(6字节)5、每个扇区的密码和存取控制都是独立的,可以根据实际需要设定各自的密码及存取控制。
M1卡的工作原理和保密性
深圳市联合智能卡有限公司
M1卡的工作原理和保密性
本文由联合智能卡编辑M1卡是是指菲利浦下属子公司恩智浦出品的芯片缩写,全称为NXP Mifare1系列,M1卡常用的芯片有S50及S70两种型号。
卡片的电气部分只由一个天线和ASIC(专用集成电路)组成,没有其它外部器件。
天线:卡片的天线是只有几组绕线的线圈,很适于封装到ISO卡片中。
ASIC:卡片的ASIC由一个高速(106KB波特率)的RF 接口,一个控制单元和一个8K位EEPROM组成。
M1卡的工作原理是:读写器向M1卡发一组固定频率的电磁波,卡片内有一个 LC串联谐振电路,其频率与读写器发射的频率相同,在电磁波的激励下,LC谐振电路产生共振,从而使电容内有了电荷,在这个电容的另一端,接有一个单向导通的电子泵,将电容内的电荷送到另一个电容内储存,当所积累的电荷达到2V时,此电容可做为电源为其它电路提供工作电压,将卡内数据发射出去或接取读写器的数据。
M1卡的保密性高而受欢迎,M1卡的保密性能很好是由于:读写前的三次确认、独一无二的卡片序列号、传递数据加密、传输密码和访问密码的保护。
卡片中的密码是受保护、不可读的,只有知道密码的用户才能修改它。
卡中的EEPROM 存储区分为16个扇区,每个扇区都有自己的访问密码,用户可根据扇区的不同应用设定不同的密码(一卡多用)。
扇区的访问密码分为KEY A和KEY B两组不同密码,根据访问条件,在校验KEY A和KEY B之后才可以对存储器进行访问。
例如:KEY A用于保护减操作,KEY B用于保护加操作。
深圳市联合智能卡有限公司。
M1卡技术手册(nfc)
非接触式IC卡性能简介(M1卡)一、主要指标●容量为8K位EEPROM●分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位●每个扇区有独立的一组密码及访问控制●每张卡有唯一序列号,为32位●具有防冲突机制,支持多卡操作●无电源,自带天线,内含加密控制逻辑和通讯逻辑电路●数据保存期为10年,可改写10万次,读无限次●工作温度:-20℃~50℃(湿度为90%)●工作频率:13.56MHZ●通信速率:106 KBPS●读写距离:10 cm以内(与读写器有关)二、存储结构1、M1卡分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,(我们也将16个扇区的64个块按绝对地址编号为0~63,存贮结构如下图所示:数据块0数据块 1数据块 2控制块 3数据块 4数据块 5数据块 6控制块7数据块60数据块61数据块62控制块632、第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 ,等等)。
M1卡详细介绍
M1卡详细介绍M1卡是非接触式感应卡,数据保存期为10年,可改写10万次,读无限次。
无电源,自带天线,工作频率为13.56MHZ.内含加密控制逻辑和通讯逻辑电路。
一般主要有两种,S50和S70。
M1卡的结构:S50容量1Kbyte,16个扇区(Sector),每个扇区4块(Block)(块0~3),共64块,按块号编址为0~63。
每个扇区有独立的一组密码及访问控制。
第0扇区的块0(即绝对地址0块)用于存放厂商代码,已经固化,不可更改。
其他各扇区的块0、块1、块2为数据块,用于存贮数据;块3为控制块,存放密码A、存取控制、密码B。
另一种是S70,4K byte(字节)的存储容量,即32Kbit(位)的存储容量。
S70卡和 S50卡在协议和命令上是完全兼容的,唯一不同的就是两种卡的容量,S70 卡一共有40个扇区,前面32个扇区(0 ~ 31)和 S50卡一模一样。
后面8个扇区(32 ~ 39),每个扇区都是16个块,同样每个块16个字节,并且同样是最后一块是该扇区的密码控制块。
M1卡的运作机理:连接读写器→寻卡→识别卡(获取卡序列号)→从多卡中选一张卡→向卡中缓冲区装载密码→验证密码→进行读写→关闭连接即:(代码说明)Open_USB→rf_request→rf_anticoll→rf_select→rf_load_key→rf_authentication→(/a_hex)→rf_read/rf_write→(hex_a)→Close_USB 如果概括来说的话,主要也就四部分:开关连接、寻卡、验证密码、读取。
(至于详细程序代码,相信看过dll说明文档后,会明白的)M1卡的功能模式:一.寻卡模式寻卡模式分三种情况:IDLE模式、ALL模式及指定卡模式(0,1,2 均是int类型,是方法参数,下同)。
0——表示IDLE模式,一次只对一张卡操作;1——表示ALL模式,一次可对多张卡操作;2——表示指定卡模式,只对序列号等于snr的卡操作(高级函数才有)【不常用】也就是说,我们一次也可以同时操作多张卡。
非接触式IC卡性能简介(M1)
非接触式IC卡性能简介(M1)一、主要指标●容量为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数据块 1数据块 2控制块 3数据块 4数据块 5数据块 6控制块7数据块60数据块61数据块62控制块632、第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 ,等等)。
M1卡使用说明书
S50非接触式IC卡性能简介(M1)一、主要指标●容量为8K位EEPROM●分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位●每个扇区有独立的一组密码及访问控制●每张卡有唯一序列号,为32位●具有防冲突机制,支持多卡操作●无电源,自带天线,内含加密控制逻辑和通讯逻辑电路●数据保存期为10年,可改写10万次,读无限次●工作温度:-20℃~50℃(湿度为90%)●工作频率:13.56MHZ●通信速率:106 KBPS●读写距离:10 cm以内(与读写器有关)二、存储结构1、M1卡分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,(我们也将16个扇区的64个块按绝对地址编号为0~63,存贮结构如下图所示:数据块0数据块 1数据块 2控制块 3数据块 4数据块 5数据块 6控制块7数据块60数据块61数据块62控制块632、第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的控制:字节7字节8字节9( 注:C10_b表示C10取反)存取控制(4字节,其中字节9为备用字节)结构如下所示:字节6字节7字节8字节9( 注:_b表示取反)6、数据块(块0、块1、块2)的存取控制如下:例如:当块0的存取控制位C10 C20 C30=1 0 0时,验证密码A或密码B正确后可读;验证密码B正确后可写;不能进行加值、减值操作。
m1卡0扇区数据规则
m1卡0扇区数据规则M1卡是一种非接触式智能卡,被广泛应用于门禁、公交、地铁等领域。
其中,0扇区是M1卡中的第一个扇区,其数据规则具有重要意义。
下面将为您详细介绍M1卡0扇区数据规则,希望能对您有所帮助。
首先,0扇区是M1卡中的关键扇区,存储着一些重要的卡片信息,如卡片的序列号、卡片类型等。
这些信息对于卡片的识别与辨别起着至关重要的作用。
因此,在M1卡的应用中,我们必须严格遵守0扇区数据规则,确保卡片能够正常工作。
在0扇区中,数据规则有以下几个方面的要求。
首先,0扇区的第一个块必须存储卡片的序列号。
卡片的序列号由厂家预先写入,具有唯一性,用于标识不同的卡片。
其次,0扇区的第二个块用于存储卡片的类型信息,如门禁卡、公交卡等。
这样的设计可以方便读卡设备对卡片进行分类判断。
此外,根据应用需求,0扇区还可以存储其他一些关键信息。
比如,在门禁系统中,可以将用户的姓名、部门等信息存储在0扇区的其他块中。
这样,在刷卡开门时,可以通过读取0扇区的这些信息来验证卡片的有效性。
值得注意的是,在使用M1卡的过程中,我们需要牢记以下几点。
首先,0扇区是唯一一个可以写入的扇区,其他扇区只能读取。
因此,在编程时,我们应该注意不要随意修改0扇区的数据,以免引发不必要的问题。
其次,虽然0扇区可以存储多个块的数据,但每个块的存储能力有限。
所以,在实际使用中,我们需要根据需要合理规划存储空间,避免数据溢出或者空间浪费。
综上所述,M1卡0扇区数据规则对于卡片的正常应用具有重要意义。
合理遵守0扇区数据规则,可以保证卡片的正常识别与工作,提高系统的稳定性与安全性。
同时,对于开发者来说,理解0扇区数据规则也有助于更好地进行M1卡应用的开发与优化。
希望本文能为您对M1卡0扇区数据规则有更全面的了解提供帮助。
M1卡技术参数
芯片类型:
Philips Mifare 1 IC S50
存储容量:
8Kbit,16个分区,每分区两组密码
工作频率:
13.56 MHz
通讯速率:
106KBoud
读写距离:
2.5~10cm
读写时间:
1~2ms
工作温度:
-20℃~55℃
擦写寿命:
>100,000次
数据保存:
>10年
外形尺寸:
ISO标准卡85.6x54x0.82
封装材料:
PVC、PET、PETG、0.13mm铜线
封装工艺:
超声波自动植线/自动碰焊
执行标准:
ISO14443A
由深圳市联合智能卡有公司提供
M1卡技术参数
M1卡是菲利浦下属子公司恩智浦出品的芯片缩写,全称为NXP Mifare1系列,常用的有S50及S70两种型号,目前都有国产芯片与其兼容,利用PVC封装M1芯片、感应天线,然后压制成型后而制作的卡即是智能卡行业所说的M1卡,属于非接触式IC卡。非接触式IC卡又称射频卡,成功地解决了无源(卡中无电源)和免接触这一难题,是电子器件领域的一大突破。这大大减少人们排队的时间,提高企业的服务质量和人们的财产安全性。主要用于公交、轮渡、地铁的自动收费系统,也应用在门禁管理、身份证明和电子钱包。
M1和CPU卡简介与比较
状态字SW1、SW2的意义(部分)
SW1 SW2
90 00 62 81 62 83 63 CX 64 00 65 81 67 00 69 00 69 01 69 81 69 82
意 义
正确执行 回送的数据可能错误 选择文件无效,文件或密钥校验错误 X表示还可再试次数 状态标志未改变 写EEPROM不成功 错误的长度 CLA与线路保护要求不匹配 无效的状态 命令与文件结构不相容 不满足安全状态
及存取控制。在存取控制 中每个块都有相应的三个 控制位,定义如下:
2
3
块2
块3
C12
C13
C22
C23
C32
C33
Mifare One卡存取控制 (2)
三个控制位以正和反两种形式存在于存取控制字节中,决定了该块的访 问权限 如进行减值操作必须验证KEY A,进行加值操作必须验证KEY B,等等。 三个控制位在存取控制字节中的位置如下(字节9为备用字节,默认值 为0x69):
圈存、圈提、修 改透支限额、消 费、取现
COS 符合ISO/IEC 7816和PBOC 2.0 电子存折、电子钱包规范,提供以下 几种文件类型供操作
文件读写都必须满足相应条件
文件读写可以选择性采用加密和带安 全报文的方式,以增加安全性
电子钱包
圈存、消费
PBOC电子钱包
CPU卡典型应用的结构
MF
控制位 C13 0 0 1 1 0 0 1 1 C23 0 1 0 1 0 1 0 1 C33 0 0 0 0 1 1 1 1 密码A Read Never Never Never Never Never Never Never Never Write KeyA|B Never KeyB Never KeyA|B KeyB Never Never 存取控制 Read KeyA|B KeyA|B KeyA|B KeyA|B KeyA|B KeyA|B KeyA|B KeyA|B Write Never Never Never Never KeyA|B KeyB KeyB Never 密码B Read KeyA|B KeyA|B Never Never KeyA|B Never Never Never Write KeyA|B Never KeyB Never KeyA|B KeyB Never Never
酒店房卡M1芯片卡介绍
酒店房卡M1芯片卡介绍
M1芯片,是指菲利浦下属子公司恩智浦出品的芯片缩写,全称为NXP Mifare1系列,常用的有S50及S70两种型号,截止到2013年11月4日,已经有国产芯片与其兼容,利用PVC 封装M1芯片、感应天线,然后压制成型后而制作的卡即是智能卡行业所说的M1卡,属于非接触式IC卡。
非接触式IC卡又称射频卡,成功地解决了无源(卡中无电源)和免接触这一难题,是电子器件领域的一大突破。
酒店房卡M1卡片特点:
1、可选择LF、HF、UHF各频段芯片封装
2、读写卡可提供不同的访问密码或逻辑加密的版本,产品安全性高
3、多频卡:多频合一,双频卡、三频卡由二至三种频段的芯片巧妙组合而成,一张标签卡可以实现二、三个不同频段的RFID操作,能满足一部分有特殊需求的客户在不同环境下使用,并可个性化印刷
4、CPU卡:
在一个智能卡芯片上,同时实现ISO/IEC 14443和ISO/IEC 7816两个(无触点/有触点)集成电路IC卡国际标准的双界面,也可仅支持ISO/IEC 14443标准的纯非接触CPU卡安全性更高,芯片和COS的安全技术为CPU卡提供了双重的安全保证可实现真正意义上的一卡多应用,每个应用之间相互独立,并受控于各自的密钥管理系统
可同时实现接触与非接触双界面存储容量大
M1芯片应用范围:
广泛应用于城市一卡通、公交、地铁、轻轨、考勤门禁系统、企业一卡通系统、智能交通、会员管理、商业零售、保险医疗、卫生健康、学校、公安等射频识别领域。
深圳宏卡智能科技公司专业生产酒店门禁卡,国内领先智能卡制作厂家,十年老品牌制卡公司,专业生产酒店门禁卡,宾馆门禁卡,社区门禁卡,写字楼门禁卡,酒店停车场门禁卡,企业门禁卡,商场停车场门禁卡、酒店客房门禁卡、宾馆接触式4442房卡。
M1卡介绍
4
块1
数据块
5
块2
数据块
6
块3
密码A 存取控制 密码B 数据块
7
:
:
:
块0
数据块
60
块1
数据块
61
块2
数据块
62
块3
密码A 存取控制 密码B 数据块
63
存储结构
第0扇区
第0扇区的块0(即绝对地址0块),它用于存放厂 商代码,已经固化,不可更改。
数据块
每个扇区的块0、块1、块2为数据块,可用于存贮 数据。
17
对数据块的操作
读 (Read):读一个块; 写(Write ):写一个块; 加(Increment):对数值块进行加值; 减(Decrement):对数值块进行减值; 存储(Restore):将块中的内容存到数据寄存器中; 传输(Transfer):将数据寄存器中的内容写入块中; 中止(Halt ):将卡置于暂停工作状态;
与读卡器的通讯
复位应答(Answer to request)
M1射频卡的通讯协议和通讯波特率是定义好的, 当有卡片进入读写器的操作范围时,读写器以特定 的协议与它通讯,从而确定该卡是否为M1射频卡, 即验证卡片的卡型。
防冲突机制 (Anticollision Loop)
当有多张卡进入读写器操作范围时,防冲突机制会 从其中选择一张进行操作,未选中的则处于空闲模 式等待下一次选卡,该过程会返回被选卡的序列号。
块为存取单位 每个扇区有独立的一组密码及访问控制 每张卡有唯一序列号,为32位 具有防冲突机制,支持多卡操作 无电源,自带天线,内含加密控制逻辑和通讯逻辑
电路
4
主要指标
主要指标
m1卡认证算法
m1卡认证算法M1卡是一种非接触式IC卡,广泛应用于门禁系统、考勤系统、停车场管理系统等领域。
为了保证M1卡的安全性和可靠性,需要对其进行认证算法的设计。
本文将介绍一种基于AES加密算法的M1卡认证方法。
一、M1卡认证原理M1卡认证主要是通过读取卡片中的数据,然后与预先存储在读卡器或系统中的数据进行比对,如果数据一致,则认证成功,否则认证失败。
M1卡认证过程中涉及到的关键数据包括卡片序列号、扇区密码等。
为了保证数据的安全性,需要对这些关键数据进行加密处理。
二、AES加密算法简介AES(Advanced Encryption Standard,高级加密标准)是一种对称加密算法,具有安全性高、执行速度快、易于实现等特点。
AES加密算法的核心思想是将明文分成若干个固定长度的数据块(通常为128位),然后对每个数据块进行加密处理。
AES加密算法的密钥长度可以是128位、192位或256位,不同的密钥长度对应不同的加密轮数。
三、M1卡认证流程1. 读卡:读卡器通过射频信号与M1卡进行通信,获取卡片中的数据。
2. 解密:读卡器使用预先存储的密钥对卡片中的数据进行解密处理,得到解密后的数据。
3. 认证:读卡器将解密后的数据与预先存储在读卡器或系统中的数据进行比对,如果数据一致,则认证成功,否则认证失败。
四、M1卡认证算法设计1. 密钥生成:为了确保M1卡的安全性,需要为每个M1卡生成一个唯一的密钥。
密钥生成过程可以使用随机数生成器或者硬件安全模块(HSM)来实现。
2. 数据加密:在M1卡中存储关键数据时,需要使用密钥对其进行加密处理。
加密过程可以分为以下几个步骤:a) 将关键数据分割成若干个固定长度的数据块;b) 对每个数据块进行初始轮加密处理;c) 对每个数据块进行后续轮加密处理;d) 将加密后的数据块拼接成密文。
3. 数据解密:在读卡器中对M1卡中的数据进行解密处理时,需要使用相同的密钥和加密算法。
解密过程可以分为以下几个步骤:a) 将密文分割成若干个固定长度的数据块;b) 对每个数据块进行初始轮解密处理;c) 对每个数据块进行后续轮解密处理;d) 将解密后的数据块拼接成明文。
卡片系列介绍之——M1_S50、S70_卡片
卡片系列介绍之——M1(S50、S70)卡片卡片简介S50、S70属于NXP 的MF1系列卡片,是NXP 公司生产的一种大容量逻辑存储标签芯片。
该系列标签存储容量有1K 和4K 两种,且卡片有密码保护功能,所以较M0系列卡片而言安全性更高。
存储结构S50卡内部为1Kbtyes 存储空间,而S70卡则为4Kbytes 。
其中S50卡的存储结构如图 1所示卡片内部以扇区为单位,卡片共有16个扇区,每个扇区共有4个块,每块有16字节。
所以卡片共有16x4x16=1024字节,总容量1K 。
S70卡则与S50卡略微有些不同,在S70卡中,共有40个扇区,其中前32个扇区与S50卡的结构完全相同都是一个扇区4块,而后8个扇区则是每个扇区16个块,所以S70卡的总容量为32x4x16+8x16x16=4096(4Kbytes )。
如图 2所示每个扇区都有一个独立的访问密钥,在对扇区的块进行读写前需要先验证密钥,验证通过后才能开启读写权限。
图 2 扇区结构图 1 S50卡片结构扇区0是卡片中最特殊的一个扇区,因为此扇区的第0块是卡片厂商固化的一些信息,不可更改,其中就包括了卡片的UID,如图3所示SN0~SN3则为卡片的4字节ID号。
依据ISO/IEC14443-3, 其校验位BCC 计算如下:BCC=SN0 ⊕SN1 ⊕SN2⊕SN3 。
图 3 厂商块定义应用实例M1卡因为其容量大、价格便宜的特点在市场中有着广泛的应用,如门禁、考勤、物流、校园卡、会员卡、公交卡、电子门票等多种场合。
卡片操作流程以我公司ZLG600SP/T为例操作S50卡的流程如下:数据读写操作:1、发送:08 02 4D 02 00 26 9C 03(卡激活命令)模块回应:0E 02 00 08 04 00 08 04 1C1C DD A6 88 03解释:参看ZLG600SP/T模块用户手册对该命令的说明可知卡片返回的ATQ=0x0004;而SAK=0x08,卡片的UID=0xA6DD1C1C。
Mifare1技术说明(M1卡说明文档)
Mifare 1非接触IC卡技术说明1 特性1.1 MIFARE RF 接口(ISO/IEC 14443 A)∙非接触数据传输并提供能源(不需电池)∙工作距离:可达100mm (取决于天线尺寸结构)∙工作频率:13.56 MHz∙ 快速数据传输:106 kbit/s∙高度数据完整性保护:16 Bit CRC,奇偶校验,位编码,位计数∙真正的防冲突∙典型票务交易:< 100 ms (包括备份管理)1.2 EEPROM∙ 1 Kbyte,分为16个区,每区4个块,每块16字节。
∙用户可定义内存块的读写条件∙数据耐久性10年∙写入耐久性100.000次1.3 安全性∙相互三轮认证(ISO/IEC DIS9798-2)∙带重现攻击保护的射频通道数据加密∙每区(每应用)两个密钥,支持密钥分级的多应用场合∙每卡一个唯一序列号∙在运输过程中以传输密钥保护对EEPROM的访问权2 概述MIFARE MF1是符合ISO/IEC 14443A的非接触智能卡。
其通讯层(MIFARE RF 接口)符合ISO/IEC 14443A标准的第2和第3部分。
其安全层支持域检验的CRYPTO1数据流加密。
2.1 非接触能源和数据传递在MIFARE卡中,芯片连接到一个几匝的天线线圈上,并嵌入塑料中,形成了一个无源的非接触卡。
不需要电池。
当卡接近读写器天线时,高速的RF通讯接口将以106 kBit/s 的速率传输数据。
卡4匝线圈读卡器嵌入的芯片模块天线能量数据2.2 防冲突智能的防冲突功能可以同时操作读写范围内的多张卡。
防冲突算法逐一选定每张卡,保证与选定的卡执行交易,不会导致与读写范围内其他卡的数据冲突。
2.3 用户便捷性MIFARE 是针对用户便捷性优化的。
例如,高速数据传输使得完整的票务交易在不到100 ms 内处理完毕。
因此用户不必在读写器天线处停留,形成高的通过率,减少了公共汽车的登车时间。
在交易时,MIFARE 卡可以留在钱包里,甚至钱包里有硬币也不受影响。
01智能卡基础知识M1卡
四、M1卡认证与指令
KeyA、KeyB的认证
三次互相确认(3 Pass Authentication): PCD PICC Auth(6x xx) —> <— RNG(B) TOKEN(AB) —> <— TOKEN(BA) android.nfc.tech.MifareClassic类中封装为: authenticateSectorWithKeyA() authenticateSectorWithKeyB()
控制字节介绍
每个块都有相应的三个控制位,定义如下: 块0: C10 C20 C30 块1: C11 C21 C31 块2: C12 C22 C32 块3: C13 C23 C33
控制字节介绍
控制位(X=0..2) C1X C2X C3X 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 0 1 1 1 1 访 问 条 件 (对数据块 0、1、2) Increment Decrement, Read Write transfer,Restore KeyA|B KeyA|B KeyA|B KeyA|B KeyA|B Never Never Never KeyA|B KeyB Never Never KeyA|B KeyB KeyB KeyA|B KeyA|B Never Never KeyA|B KeyB KeyB Never Never KeyB Never Never Never Never Never Never Never 密码A Write KeyA|B Never KeyB Never KeyA|B KeyB Never Never 存取控制 Read Write KeyA|B Never KeyA|B Never KeyA|B Never KeyA|B Never KeyA|B KeyA|B KeyA|B KeyB KeyA|B KeyB KeyA|B Never 密码B Read Write KeyA|B KeyA|B KeyA|B Never KeyB Never Never Never KeyA|B KeyA|B KeyB Never Never Never Never Never
M1和CPU卡简介与比较
CPU卡的操作方式
CPU卡主要通过COS实现对卡内不 同类型文件的操作
具体文件结构根据应用方不同需求可 以自由设计
文件类型
提供操作
主要应用
存储各种数据
存储几组类似数 据 目录文件等…… 存储交易记录等 数据 PBOC电子存折
二进制文件
定长记录 变长记录 循环记录 电子存折
读、写
读、写 读、写 读、写
操作
读 读一个块
描述
写一个块
认证某一扇区 增加某一块的内容并将结果保存到寄存器中 减少某一块的内容并将结果保存到寄存器中 将内部寄存器中的值写到一个块内 将一个块内的值读取到内部寄存器中
有效块
Block 0,1,2,3
写
认证 增值 减值 传送 恢复
Block 0,1,2,3
Block 0,1,2,3 Block 0,1,2 Block 0,1,2 Block 0,1,2 Block 0,1,2
状态字SW1、SW2的意义(部分)
SW1 SW2
90 00 62 81 62 83 63 CX 64 00 65 81 67 00 69 00 69 01 69 81 69 82
意 义
正确执行 回送的数据可能错误 选择文件无效,文件或密钥校验错误 X表示还可再试次数 状态标志未改变 写EEPROM不成功 错误的长度 CLA与线路保护要求不匹配 无效的状态 命令与文件结构不相容 不满足安全状态
INS
P1
SW1
P2
SW2
Le
Le字节DATA
INS SW2 INS
P1
P2
Lc
DATA
P1 SW1
P2 SW2
MIFARE 1 卡的存取控制
存储结构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):(注: _b表示取反)其中,白色区控制块3 ,蓝色区控制块2 ,绿色区控制块1 ,红色区控制块0 。
数据块(块0、块1、块2)的存取控制如下:(KeyA|B 表示密码A或密码B,Never表示任何条件下不能实现)例如:当块0的存取控制位C10 C20 C30=100时,验证密码A或密码B正确后可读;验证密码B正确后可写;不能进行加值、减值操作。
控制块(块3)的存取控制与数据块(块0、1、2)不同,它的存取控制如下:例如:当块3的存取控制位C13 C23 C33=100时,表示:密码A:不可读,验证KEYB正确后,可写(更改)。
存取控制:验证KEYA或KEYB正确后,可读不可写。
密码B:不可读,验证KEYB正确后,可写。
M1卡的存储结构
M1卡的存储结构1、M1卡分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,(我们也将16个扇区的64个块按绝对地址编号为0~63,存贮结构如下图所示:数据块 0 数据块 1 数据块 2 控制块 3 数据块 4 数据块 5 数据块 6 控制块 7数据块 60 数据块61 数据块 62 控制块632、第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字节7字节8字节9( 注:C10_b表示C10取反)存取控制(4字节,其中字节9为备用字节)结构如下所示:字节6字节7字节8字节9( 注:_b表示取反)6、数据块(块0、块1、块2)的存取控制如下:(KeyA|B 表示密码A或密码B,Never表示任何条件下不能实现)例如:当块0的存取控制位C10 C20 C30=1 0 0时,验证密码A或密码B正确后可读;验证密码B正确后可写;不能进行加值、减值操作。
M1卡与ID卡的工作原理
M1卡与ID卡的工作原理一、MF1卡MF1射频卡又称MF1非接触式IC卡,它成功地解决了无源(卡中无电源)和免接触这一难题,是电子器件领域的一大突破。
主要用于公交、轮渡、地铁的自动收费系统,也应用在门禁管理、身份证明和电子钱包。
1)主要指标容量为8K位EEPROM分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位每个扇区有独立的一组密码及访问控制每张卡有唯一序列号,为32位具有防冲突机制,支持多卡操作无电源,自带天线,内含加密控制逻辑和通讯逻辑电路数据保存期为10年,可改写10万次,读无限次工作温度:-20℃~50℃(温度为90%)工作频率:13.56MHZ通信速率:106KBPS读写距离:10mm以内(与读写器有关)2)工作原理卡片的电气部分只由一个天线和ASIC组成。
天线:卡片的天线是只有几组绕线的线圈,很适于封装到IS0卡片中。
ASIC:卡片的ASIC由一个高速(106KB波特率)的RF接口,一个控制单元和一个8K位EEPROM组成。
工作原理:读写器向M1卡发一组固定频率的电磁波,卡片内有一个LC串联谐振电路,其频率与读写器发射的频率相同,在电磁波的激励下,LC谐振电路产生共振,从而使电容内有了电荷,在这个电容的另一端,接有一个单向导通的电子泵,将电容内的电荷送到另一个电容内储存,当所积累的电荷达到2V 时,此电容可做为电源为其它电路提供工作电压,将卡内数据发射出去或接取读写器的数据。
3)M1射频卡与读写器的通讯复位应答(Answer to request)M1射频卡的通讯协议和通讯波特率是定义好的,当有卡片进入读写器的操作范围时,读写器以特定的协议与它通讯,从而确定该卡是否为M1射频卡,即验证卡片的卡型。
防冲突机制(Anticollision Loop)当有多张卡进入读写器操作范围时,防冲突机制会从其中选择一张进行操作,未选中的则处于空闲模式等待下一次选卡,该过程会返回被选卡的序列号。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
6
存储结构
第0扇区 扇区
第0扇区的块0(即绝对地址0块),它用于存放厂 商代码,已经固化,不可更改。
数据块
每个扇区的块0、块1、块2为数据块,可用于存贮 数据。 数据块可作两种应用:
用作一般的数据保存,可以进行读、写操作。 用作数据值,可以进行初始化值、加值、减值、读 值操作。
7
存储结构
控制块
每个扇区的块3为控制块 控制块,包括了密码A、存取控 控制块 制、密码B。具体结构如下:
16
与读卡器的通讯
选择卡片(Select Tag) 选择卡片
选择被选中的卡的序列号,并同时返回卡的容量代 码。
三次互相确认(3 三次互相确认 Pass Authentication)
选定要处理的卡片之后,读写器就确定要访问的扇 区号,并对该扇区密码进行密码校验,在三次相互 认证之后就可以通过加密流进行通讯。(在选择另 一扇区时,则必须进行另一扇区密码校验。)
13
工作原理
工作原理
读写器向M1卡发一组固定频率的电磁波,卡片内 有一个LC串联谐振电路,其频率与讯写器发射的频 率相同,在电磁波的激励下,LC谐振电路产生共振, 从而使电容内有了电荷,在这个电容的另一端,接 有一个单向导通的电子泵,将电容内的电荷送到另 一个电容内储存,当所积累的电荷达到2V时,此电 容可做为电源为其它电路提供工作电压,将卡内数 据发射出去或接取读写器的数据。
12
1
1
Never
Never
KeyA|B
Never
Never
工作原理
卡片的电气部分只由一个天线和ASIC组成。 组成。 卡片的电气部分只由一个天线和 组成
天线:卡片的天线是只有几组绕线的线圈,很适于 封装到IS0卡片中。 ASIC:卡片的ASIC由一个高速(106KB波特率)的 RF接口,一个控制单元和一个8K位EEPROM组成。
扇 区 0 块0 块1 块2 块3 块0 扇 区 1 块1 2 块2 块3 密码A 存取控制 密码B : : : 块0 扇 区 15 块1 块2 块3 密码A 存取控制 密码B 数据块 数据块 数据块 数据块 60 61 62 63 密码A 存取控制 密码B 数据块 数据块 数据块 数据块 数据块 数据块 数据块 数据块 0 1 2 3 4 5 6 7
1 1 0 KeyA|B KeyB KeyA|B 例如:当块0的存取控制位C10 C20 C30=1 0 KeyB 0时,验证密码A或密码B 正确后可读;验证密码B正确后可写;不能进行加值、减值操作。 0 0 1 KeyA|B Never Never KeyA|B 0 1 1
11
1 0 1
1 1 1
1 1 0 Never Never KeyA|B Never Never 例如:当块0的存取控制位C10 C20 C30=1 0 0时, 0 0 1 Never KeyA|B KeyA|B KeyA|B KeyA|B 密码A:不可读,验证KEYB正确后,可写(更改)。 存取控制:验证KEYA或KEYB正确后,可读不可写。 0 1 1 Never KeyB KeyA|B KeyB Never 密码B:不可读,验证KEYB正确后,可写。 1 0 1 Never Never KeyA|B Keቤተ መጻሕፍቲ ባይዱB Never 1
8
存储结构
控制块
存取控制中每个块都有相应的三个控制位 存取控制 三个控制位,定义如 三个控制位 下: 块0: C10 C20 C30 块1: C11 C21 C31 块2: C12 C22 C32 块3: C13 C23 C33 三个控制位以正和反两种形式存在于存取控制字节 中,决定了该块的访问权限(如进行减值操作必须 验证KEY A,进行加值操作必须验证KEY B,等等)。
复位应答( 复位应答(Answer to request) )
M1射频卡的通讯协议和通讯波特率是定义好的, 当有卡片进入读写器的操作范围时,读写器以特定 的协议与它通讯,从而确定该卡是否为M1射频卡, 即验证卡片的卡型。
防冲突机制 (Anticollision Loop)
当有多张卡进入读写器操作范围时,防冲突机制会 从其中选择一张进行操作,未选中的则处于空闲模 式等待下一次选卡,该过程会返回被选卡的序列号。
17
对数据块的操作
读 (Read):读一个块; 写(Write ):写一个块; 加(Increment):对数值块进行加值; 减(Decrement):对数值块进行减值; 存储(Restore):将块中的内容存到数据寄存器中; 存储 传输(Transfer):将数据寄存器中的内容写入块中; 传输 中止(Halt ):将卡置于暂停工作状态; 中止
单片机实训
执行校长
李 伟
单片机实训( 单片机实训(第一讲上 )
教学内容
主要指标 存储结构 工作原理 与读写器的通信
2
重点、 重点、难点
重点
存储结构 工作原理
难点
与读卡器的通信
3
主要指标
主要指标
容量为8K位EEPROM (1K字节) 分为16个扇区,每个扇区为4块,每块16个字节,以 块为存取单位 每个扇区有独立的一组密码及访问控制 每张卡有唯一序列号,为32位 具有防冲突机制,支持多卡操作 无电源,自带天线,内含加密控制逻辑和通讯逻辑 电路
18
19
9
控制块
存取控制(4字节,其中字节9为备用字节)结构如 下所示:
bit 7 字节6 C23_b 字节 字节7 C13 字节 字节8 字节 C33 字节9 字节 注:_b 表示取反 bit 6 C22_b C12 C32 bit 5 C21_b C11 C31 bit 4 C20_b C10 C30 bit 3 C13_b C33_b C23 bit 2 C12_b C32_b C22 bit 1 C11_b C31_b C21 bit 0 C10_b C30_b C20
4
主要指标
主要指标
数据保存期为10年,可改写10万次,读无限次 工作温度:-20℃~50℃ 工作频率:13.56MHZ 通信速率:106KBPS 读写距离:10mm以内(与读写器有关)
5
存储结构
存储结构划分
M1卡分为16个 扇区,每个扇 区由4块(块0、 块1、块2、块 3)组成,(我 们也将16个扇 区的64个块按 绝对地址编号 为0~63,)存 贮结构如右表 所示:
A1 A2 A3 A4 A5 密码A(6字节) FF 07 80 69 存取控制(4字节) B0 B1 B2 B3 B4 B5 密码B(6字节)
每个扇区的密码和存取控制都是独立的,可以根据 实际需要设定各自的密码及存取控制。 存取控制为4个字节,共32位,扇区中的每个块 (包括数据块和控制块)的存取条件是由密码和存 取控制共同决定的 。
14
与读卡器的通讯
流程图
复位应答 Request
防冲突机制 Anti collision Loop
改变扇区
选择卡片 Select Tag
三次相互验证 Authentication
不改变扇区
读块
Read
写块
Write
block
加值
increment
减值
decrement
中止
Halt
15
与读卡器的通讯
KeyB KeyB Never
KeyB Never Never Never
Never Never Never
Never Never Never
KeyA|B 表示密码A或密码B
表示什么条件下都不能实现
存储结构
控制块
控制块块3的存取控制与数据块(块0、1、2)不 同,它的存取控制如下:
密码A C1X C2X C3X 0 0 1 0 1 0 0 0 0 Read Never Never Never Write KeyA|B Never KeyB 存取控制 Read KeyA|B KeyA|B KeyA|B Write Never Never Never 密码B Read KeyA|B KeyA|B Never Write KeyA|B Never KeyB Never KeyA|B KeyB Never Never
10
存储结构
控制块
数据块(块0、块1、块2)的存取控制如下:
控制位(X=0,1,2) C1X 0 0 1 C2X 0 1 0 C3X 0 0 0 Read KeyA|B KeyA|B KeyA|B 合并条件(对数据块0、1、2) Write KeyA|B Never KeyB Inc KeyA|B Never Never Dec,Transfer,Re store KeyA|B Never Never