实验5HF ISO14443A操作.docx
《实验5HF ISO14443A操作.docx》由会员分享,可在线阅读,更多相关《实验5HF ISO14443A操作.docx(13页珍藏版)》请在冰豆网上搜索。
实验5HFISO14443A操作
实验五高频标签ISO14443A操作
一、实验目的
1、了解和设置读写器参数。
掌握数据块读取和修改,加减值的方法。
2、理解ISO14443A卡密钥的作用,学会修改和使用密钥。
3、理解halt操作,掌握读取多张卡片的方法。
二、实验器材
RFID读写器基础实验箱、实验用ISO14443A白卡、计算机一台。
三、实验内容
1、读写器认知:
了解高频读写器的基本设置,熟悉超高频读写器的设置与使用。
了解标签参数的含义和设置方法。
读取和修改标签数据块数据,对数据块进行加减操作。
2、密钥修改:
密钥是卡的重要组成部分,只有输入正确的密钥才能读到卡中的信息,密钥会经常变更。
对ISO14443A协议中的ISO14443A卡进行密钥修改。
了解ISO14443A卡的工作原理,认识到ISO14443A卡的数据组成。
3、对多个ISO14443A卡进行数据读写,观察halt操作对其读取状态的影响,理解ISO14443A协议的对标签的读取的定义。
四、实验步骤
1.1、正确连接本设备,确保本设备上的USB连接线连接实验箱和电脑,插上电源适配器,启动本设备。
1.2、启动本设备的应用软件
1.3、进入主界面,点击主菜单“control”,
1.4、选择下拉菜单中“AddHFReader”,
或右键点击主界面空白处,
选择菜单中“addHFReader”,
1.5、选择串口(弹出的显示值即对应串口),点击ok,加载HF高频读写器模块
1.6、如模块加载成功,则主界面会生成一个HF高频读写器模块
1.7、选中HF高频读写器模块,右键点击,获得右键菜单,菜单功能说明如下
HF超高频读写器参数设置
ISO15693模式
ISO14443A模式
ISO14443B模式
开始扫描
移除读写器模块
1.8、选中“ReaderSettingsandDiagnostics”,进入HF高频读写器参数设置界面,按图设置后关闭窗口。
知识学习
A、高频HF的射频识别设备(高频读写器)工作于13.56MHz频段,系统通过天线线圈电感耦合来传输能量,通过电感耦合的方式磁场能量下降较快。
磁场信号具有明显的读取区域边界。
主要应用于1米以内的人员或物品的识别。
主要遵循两种协议:
ISO/IEC14443(A、B)协议,ISO/IEC15693协议。
B、在通信领域,波特率(Baudrate)即调制速率,指的是信号被调制以后在单位时间内的变化,即单位时间内载波参数变化的次数。
它是对符号传输速率的一种度量,1波特即指每秒传输1个符号。
C、ISO14443A卡存储区结构:
ISO/IEC14443A协议的高频RFID无源IC卡,其天线线圈和芯片嵌入到塑料卡中被广泛应用于交通一卡通、电子门票等。
ISO14443A卡存储区有1kBytes。
分为16个扇区,每个扇区有4个块,每块16个字节。
其中第1扇区第0块是卡序列号,是只读的,不能写。
密钥存放在每个扇区的块3。
ISO14443A卡分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,16个扇区的64个块按绝对地址编号为0~63,存储密钥块线性扇区号的算法是:
x=s*4+3;其中s表示扇区号(0-15)。
控制块的具体结构见下图:
扇区0
块0
数据块
0
块1
数据块
1
块2
数据块
2
块3
密码A存取控制密码B
控制块
3
扇区1
块0
数据块
4
块1
数据块
5
块2
数据块
6
块3
密码A存取控制密码B
控制块
7
∶
∶
∶
扇区15
0
数据块
60
1
数据块
61
2
数据块
62
3
密码A存取控制密码B
控制块
63
第0扇区的块0(即绝对地址0块),它用于存放厂商代码,已经固化,不可更改。
每个扇区的块0、块1、块2为数据块,可用于存贮数据。
数据块可作两种应用:
用作一般的数据保存,可以进行读、写操作。
用作数据值,可以进行初始化值、加值、减值、读值操作。
每个扇区的块3为控制块,包括了密码A、存取控制、密码B。
具体结构如下:
A0A1A2A3A4A5FF078069B0B1B2B3B4B5
密码A(6字节)存取控制(4字节)密码B(6字节)
部分厂商设计当keyB可读时keyB无效(不能用keyB做任何操作),本实验箱的14443A的卡就是这样的。
1.9、选择高频读写模块,点击右键,获得右键菜单,
1.10、选择ProtocolISO14443A,
1.11、进入ISO14443A实验界面,
该界面由六个部分组成:
Anti-collectionscan(扫描标签)、ReadBlock(读标签块)、WriteBlock(写标签块)、SecurityBlock(安全操作)、Initial/Increment/Decrement(初始化、加值、减值)、和BasicOperation区。
对标签的不同操作就在相应的区中进行。
1.12、拿起一张实验用高频ISO14443A白卡,置于高频天线感应区,进入操作界面。
注意C13C23C33是否需要改为011,改后有什么不同.
1.13、读取操作
读操作的操作都在ReadBlock页完成,
a)选择Sector模式,第7扇区(Sector),第0块(Block),BlockNum为1。
b)选择卡选择模式,Idle或All
c)默认验证KeyA,输入对应密钥(FF-FF-FF-FF-FF-FF默认)。
d)点击ReadBlock按钮,读到的就是这个块的数据
e)输入KeyA密钥(非FF-FF-FF-FF-FF-FF)看读取能否成功。
f)输入KeyB密钥(FF-FF-FF-FF-FF-FF)看读取能否成功。
1.14、写入操作
写操作的操作都在WriteBlock页完成,
(禁止直接写各个扇区的块3,也就是控制块。
否者该扇区报废。
)
a)选择Sector模式,第7扇区,第0块,
b)选择卡选择模式,Idle或All
c)默认验证KeyA,输入对应密钥(FF-FF-FF-FF-FF-FF默认)。
d)在BlocktoWrite中输入新的数据
e)点击WriteBlock按钮,写入新的数据。
f)读第7扇区,第0块,看看写入的新的值是否已经存入卡中。
g)在写入操作时,输入KeyA密钥(非FF-FF-FF-FF-FF-FF)看写入能否成功。
h)输入KeyB密钥(FF-FF-FF-FF-FF-FF)看write能否成功。
1.15、读取第7扇区,第3块控制块,分析该数据的结构和含义。
(初始值应为00-00-00-00-00-00-FF-07-80-69-FF-FF-FF-FF-FF-FF)
1.16、加减值操作的操作都在Initial/Increment/Decrement页完成,
1.17、初始化操作
输入扇区号7,选取扇区和卡片的状态:
Idle或者All,输入四个字节的初始值,输入密钥对卡片初始化。
1.18、加值操作
选取步骤7的扇区,选择卡片的状态,输入四个字节的数据,输入密钥对卡片进行加值。
1.19、选取步骤7的扇区,选择卡片的状态,输入四个字节的数据,输入密钥对卡片进行减值。
思考题:
第0个扇区的第0块数据是否可以修改?
第四扇区控制块的绝对块地址号是什么?
2.1、修改密钥的操作都在SecurityBlock页完成,
2.2、读取密钥
14443A卡中,一共有16个扇区,每个扇区拥有独立的密钥,分为密钥A和密钥B,其长度均为6bytes,此外还有4bytes的存储控制位,控制密钥A和密钥B的访问条件等信息。
读取的操作步骤如下:
a)选择需要读取的Sector,第7扇区,
b)选择输入密钥A或是密钥B进行验证操作
c)输入正确的密钥A或是密钥B(默认的密钥A和密钥B都是FF-FF-FF-FF-FF-FF)
d)点击Read,可以读出密钥A,密钥B和控制位(在如图中的控制位情况时,密钥A为不可见,所以显示为全0,但实际上密钥A的值是FF-FF-FF-FF-FF-FF)
2.3、修改密钥
修改操作步骤如下
a)选择需要修改的Sector
b)选择输入密钥A或是密钥B进行验证操作
c)输入正确的密钥A或是密钥B(默认的密钥A和密钥B都是FF-FF-FF-FF-FF-FF)
d)在下面的KeyA或KeyB里输入想修改的密钥值
e)点击Write,可以修改KeyA或KeyB的密钥值
f)读取密钥,查看改写是否成功。
10、修改第8扇区的密钥,进行初始化加值减值,写出修改前后的变化。
知识点:
Idle表示读取空闲状态的卡,所谓空闲状态的卡是指卡没有被挂起来,即没有执行Halt操作(挂起操作),All表示读取所有的卡,不管是否被挂起。
3.1、拿起一张实验用高频ISO14443A白卡,置于高频天线感应区,
3.2、选择卡的状态,
a)选择Idle和nohalt,点击读卡按钮读取一张卡。
b)再次点击读卡号。
c)选择All和nohalt,点击读卡按钮读取一张卡。
d)再次点击读卡号。
e)选择Idle和halt,点击读卡按钮读取一张卡。
f)再次点击读卡号,能读出来吗?
为什么?
g)选择All和halt,点击读卡按钮读取一张卡。
h)再次点击读卡号。
能读出来吗?
为什么?
3.3、取2张卡,选择卡的状态:
a)选择Idle和nohalt,点击两次读卡按钮读取2张卡。
b)多次点击按钮读卡号。
读取结果如何?
c)选择All和nohalt,点击两次读卡按钮读取2张卡。
d)多次点击按钮读卡号。
读取结果如何?
e)选择Idle和halt,点击两次读卡按钮读取2张卡。
f)多次点击按钮读卡号。
读取结果如何?
g)选择All和halt,点击两次读卡按钮读取2张卡。
h)多次点击按钮读卡号。
读取结果如何?
。
4、分析读取结果。
总结多次读取的操作该如何操作,如公交车卡的读取该如何操作?
思考题:
读取多张卡片的数据与卡片的摆放顺序有无关系?
为什么?
【下载本文档,可以自由复制内容或自由编辑修改内容,更多精彩文章,期待你的好评和关注,我将一如既往为您服务】