0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

射频识别技术漫谈(14)——Mifare S50与S70的存取控制

阗笑 来源:魏道志 作者:魏道志 2023-10-13 11:12 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

存取控制指符合什么条件才能对卡片进行操作。

S50和S70的块分为数据块和控制块,对数据块的操作有“读”、“写”、“加值”、“减值(含传输和存储)”四种,对控制块的操作只有“读”和“写”两种。
S50和S70的每个扇区有两组密码KeyA和KeyB,所谓的“条件”就是针对这两组密码而言,包括“验证密码A可以操作(KeyA)”、“验证密码B可以操作(KeyB)”、“验证密码A或密码B都可以操作(KeyA|B)”、“验证哪个密码都不可以操作(Never)”四种条件。
这些“条件”和“操作”的组合被分成8种情况,正好可以用3位二进制数(C1、C2、C3)来表示。
数据块(每个扇区除区尾块之外的块)的存取控制如下表所示:

wKgZomUotUGAE-bsAABJcLedUIs291.png

从表中可以看出,
C1C2C3=000(出厂默认值)时最宽松,验证密码A或密码B后可以进行任何操作;
C1C2C3=111无论验证哪个密码都不能进行任何操作,相当于把对应的块冻结了;
C1C2C3=010和C1C2C3=101都是只读,如果对应的数据块写入的是一些可以给人看但不能改的基本信息,可以设为这两种模式; C1C2C3=001时只能读和减值,电子钱包一般设为这种模式,比如用S50做的公交电子车票,用户只能查询或扣钱,不能加钱,充值的时候先改变控制位使卡片可以充值,充完值再改回来。

控制块(每个扇区的区尾块)的存取控制如下表所示:

wKgZomUotVuAayMnAABNBjk790E728.png

从表中可以看出,
密码A是永远也读不出来的,如果用户的数据块指定了验证密码A却忘了密码A,也就意味着这个数据块作废了,但本扇区其他数据块和其他扇区的数据块不受影响;
存取控制总是可以读出来的,只要别忘了密码A或密码B;
存取控制的写控制在设置时一定要小心,一旦弄成了“Never”,则整个扇区的存取条件再也无法改变,后悔都找不到地方,只能仰天长叹了;
C1C2C3=001(出厂默认值)时最宽松,除了密码A不能读之外,验证了密码A其他读写操作都可以进行;
还有一个有意思的现象是当C1C2C3=000、C1C2C3=010和C1C2C3=001时,所有的操作都不使用密码B,这时候密码B占据的6个字节可以提供给用户作为普通数据存储用,相当于每个扇区增加了6字节的用户可用存储容量。
由于卡片出厂的默认值C1C2C3=001,所以对于新买来的卡片,不要使用密码B进行认证,否则会导致区尾块和数据块都无法进行任何操作。我测试过不同厂家的新卡片,有的验证密码B后确实扇区内的所有块都无法操作,但有的卡片不能操作区尾块,却可以操作数据块,本文以NXP的原装卡为准。当然用户可以放心,新卡不让你验证密码B而你却验证了,不会对卡照成什么伤害,改回用密码A验证,卡片还是可以正常使用的。
S50的每个扇区有4个块,这四个块的存取控制是相互独立的,每个块需要3个bit,四个块共使用12个bit。在保存的时候,为了防止控制位出错,同时保存了这12个bit的反码,这样一个区的存储控制位在保存时共占用24bit的空间,正好是3个字节。我们前面说存取控制字有四个字节(区尾块的Byte6~Byte9),实际上只使用的Byte6、Byte7和Byte8,Byte9没有用,用户可以把Byte9作为普通存储空间使用。各块控制位存储格式如下:

wKgZomUotXGAGPMEAABGG9I3-pI924.png

wKgZomUotYOAWJ7fAAAhbLNIQXg251.png

由于出厂时数据块控制位的默认值是C1C2C3=000,控制块的默认值是C1C2C3=001,而Byte9一般是69H,所以出厂白卡的控制字通常是FF078069H.

S70的前32个数据块结构和S50完全一致。后8个数据块每块有15个普通数据块和一个控制块。显然如果每个数据块块单独控制将需要8字节的控制字,控制块中放不下这么多控制字。解决的办法是这15个数据块分为三组,块0~4为第一组,块5~9为第二组,块10~15为第三组,每组共享三个控制位,也就是说每组控制位C1C2C3控制5个数据块的存取权限,从而与前32个扇区兼容。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 射频识别
    +关注

    关注

    8

    文章

    618

    浏览量

    40208
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    深入解析Cypress S25FL128S/S25FL256S SPI闪存:特性、应用与技术要点

    深入解析Cypress S25FL128S/S25FL256S SPI闪存:特性、应用与技术要点 在当今的电子设计领域,闪存作为一种关键的存储组件,其性能和功能对于系统的稳定性和效率起着至关重要
    的头像 发表于 04-29 17:35 979次阅读

    汽车级32位微控制器SPC570S40Ex与SPC570S50Ex深度剖析

    汽车级32位微控制器SPC570S40Ex与SPC570S50Ex深度剖析 在汽车电子领域,微控制器的性能和稳定性至关重要。SPC570S4
    的头像 发表于 04-16 11:50 252次阅读

    深度解析LPC43S50/S30/S20:32位ARM Cortex-M4/M0微控制器的卓越性能与应用潜力

    深度解析LPC43S50/S30/S20:32位ARM Cortex-M4/M0微控制器的卓越性能与应用潜力 在嵌入式系统设计领域,选择一款合适的微
    的头像 发表于 04-09 09:45 162次阅读

    深入解析LPC18S50/S30/S10:32位ARM Cortex - M3微控制器的卓越之选

    深入解析LPC18S50/S30/S10:32位ARM Cortex - M3微控制器的卓越之选 在当今的电子设计领域,微控制器扮演着至关重
    的头像 发表于 04-09 09:40 202次阅读

    LPC18S50/S30/S10:32 位 ARM Cortex - M3 微控制器的深度解析

    LPC18S50/S30/S10:32 位 ARM Cortex - M3 微控制器的深度解析 在嵌入式系统设计领域,选择一款合适的微控制
    的头像 发表于 04-09 09:30 151次阅读

    AT90S/LS2333和AT90S/LS4433微控制器:技术剖析与应用指南

    AT90S/LS2333和AT90S/LS4433微控制器:技术剖析与应用指南 在嵌入式系统设计领域,AT90S/LS2333和AT90
    的头像 发表于 04-06 12:05 735次阅读

    NXP LPC43S50/S30/S20微控制器:嵌入式应用的强大之选

    NXP LPC43S50/S30/S20微控制器:嵌入式应用的强大之选 在嵌入式系统设计领域,选择一款性能强大、功能丰富且稳定可靠的微控制
    的头像 发表于 03-19 16:35 240次阅读

    Microchip SAM E70/S70/V70/V71 系列芯片勘误与数据手册说明

    Microchip SAM E70/S70/V70/V71 系列芯片勘误与数据手册说明 在电子设计领域,芯片的性能和稳定性至关重要。Microchip 的 SAM E70/
    的头像 发表于 03-17 16:55 522次阅读

    LPC43S50/S30/S20:32 位 ARM Cortex - M4/M0 微控制器的深度剖析

    LPC43S50/S30/S20:32 位 ARM Cortex - M4/M0 微控制器的深度剖析 在嵌入式系统设计领域,选择一款合适的微控制
    的头像 发表于 03-15 17:10 1082次阅读

    50W 28V 0.3-6GHz ALGH60S050CFPS 氮化镓射频功放管

    --- 产品参数 --- 电压:28V 频率:300-6000MHz 功率:50W --- 数据手册 --- ALGH60S050CFP(S)是一种内部预匹配的氮化镓(GaN)高电子迁移率功率管
    发表于 02-24 16:11

    探索Broadcom AFBR - S50 - FEK飞行时间传感器模块评估套件

    探索Broadcom AFBR - S50 - FEK飞行时间传感器模块评估套件 引言 在电子工程领域,飞行时间(ToF)传感器模块的应用日益广泛,从工业自动化到消费电子,都能看到它们的身影
    的头像 发表于 12-30 14:30 420次阅读

    探索AFBR - S50MX85I:高精度飞行时间传感器模块的技术解析与应用指南

    探索AFBR - S50MX85I:高精度飞行时间传感器模块的技术解析与应用指南 在当今的电子技术领域,传感器技术的发展日新月异,尤其是在距离和运动测量方面,飞行时间(ToF)传感器模
    的头像 发表于 12-30 14:05 411次阅读

    TECNO MEGABOOK S14荣登2025年度最佳发明榜单

    》TIME Best Inventions,也是MEGABOOK S14继斩获刚结束的IFA 2025官方全球产品技术创新大奖GPTIA的“高效办公与创意娱乐笔记本金奖”、2025年缪斯设计奖(MUSE Design Awards)“铂金奖”后,再度得到国际专业机构的认可
    的头像 发表于 10-23 15:16 1075次阅读

    【沁恒CH585开发板免费试用体验】NFC近场通信

    公司。Mifare卡分为MF0, MF1, MF2, MF3这么几种类型,MF0不带密码控制,使用很少;最常用的是MF1,这种卡带密码控制,分为S50
    发表于 08-09 23:44

    射频设计入门之S参数

    射频设计是一个复杂而深奥的领域,对于初学者来说,往往不知道从哪里入手。然而,有时候,一个简单的起点就能为我们打开通往知识的大门。今天,我们就来聊聊为什么射频入门可以从S参数开始。
    的头像 发表于 06-13 10:47 2821次阅读
    <b class='flag-5'>射频</b>设计入门之<b class='flag-5'>S</b>参数