前段时间学习M1卡操作,对于密钥控制字专门研究了一番,这里做下总结,免得以后忘记。
M1卡分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,前3个块是数据区,第4块是密钥区。每个块都能存储16个字节的数据,密钥区的16个字节数据是有特殊含义的:
6个字节的密码A + 4个字节密钥控制位 + 6个字节的密码B
其中密钥控制位决定这个扇区的读写规则,对于M1卡密钥控制位及控制规则的说明,这篇文章里面讲述得很清楚了:
https://wenku.baidu.com/view/76afde36312b3169a451a4e6.html
这里只是给没有耐心看文章朋友提炼一下,控制字的组合方式虽然多,但实际用得比较多的方案自认为无外乎四种:

  1. 默认方式 控制位为“FF 07 80 69”
    这种方式下密钥A或密钥B都可以读写数据区,密钥A可写密钥区,优点是密钥控制字无需重新计算,读写方便,缺点是安全性能差,密钥A容易泄露。

  2. 密钥B写方式 控制位为“7F 07 88 69”
    这种方式下密钥A或密钥B都可以读写数据区,而对于密钥区只能由密钥B来写。优点是密钥B权限最高,只要知道密钥B,无论密钥A写成什么都可以改写,由最高管理员掌握密钥B,可下发多种密钥A的一般管理员,一般不会废卡的。缺点是密钥B很重要,一旦忘记,卡就不能再改写密钥了。

  3. A读B写方式 控制位为“08 77 8F 69”
    这种方式下由密钥A读密钥B来写,可以说是上面一种方式的变体,对于密钥B有更强的保护。

  4. 只读不写方式 控制位为“FF 00 F0 69”
    这种方式下密钥A或密钥B都可以读数据区,但都不能写数据区(数值可减少,不能增加),密钥A可以改写密钥区。这种方式对于数据是极大的保护,尤其是定额卡,里面的钱只能减少而不能增加。

以上是常用的几种控制方式,更多的组合方式可以利用“S50_Access.exe”工具来生成,我已经上传CSDN了:
https://download.csdn.net/download/xinxin_2011/10847468

对于M1卡密钥控制字设置的总结相关推荐

  1. M1卡区块控制位详解

    M1卡区块控制位详解 Mifare 1S50/Mifare 1S70 每个扇区的密码和存取控制都是独立的,可以根据实际需要设定各自的密码及存取 控制.存取控制为4个字节,共32位,扇区中的每个块(包括 ...

  2. AD9851调试过程----相位设置、频率计算、控制字设置

    AD9851是ADI公司的一款DDS频率合成器,输出频率和相位可编程控制,内置10位DAC高速比较器,180MHz的时钟频率,8位并行数据接口,并行串行均可传输数据.下图是从Datasheet上截下来 ...

  3. 用ARDUNO自制RFID读写器、复旦M1卡初探

    1. 为什么要用Arduino 一提到,我们可能会想到ACR122.Proxmark3这些设备,还有Radiowar出售的专业级RFID设备,实际上我们完全可以自己使用arduino单片机和RC522 ...

  4. Mifare S50读写卡的笔记(RC522源码(待整理)、Mifare控制字等、Mifare卡片结构等)

    近期有比较多的使用了RC522的mifare读写卡操作,写点东西小结下. 1. Mifare卡 百度百科 2. Mifare卡片结构 这里先安利一个软件,是NXP的 TagInfo,在有NFC的安卓手 ...

  5. M1卡的简介与操作命令

    目录 一.M1卡的简单介绍(S50/S70) 二.M1卡的数据块.数值块 三.M1卡的控制块_存取控制 3.1 数据块的存取控制 3.2 控制块的存取控制 3.3 存取控制的一个小工具 四.读写器与S ...

  6. 关于IC卡密钥理解和修改(简易篇)

    关于IC卡密钥理解和修改(简易篇) 常用的IC卡由于结构简单,使用方便,价格低,越来越受到普通应用的欢迎.本文主要描述普通IC卡的密钥相关的知识. 关于IC卡的读写,必须使用IC卡读写器, 我们推荐使 ...

  7. 关于IC卡密钥理解(中级篇)

    关于普通IC卡密钥,简易篇已经讲述了简单的使用密钥的方式.这种加密方式简单, 也不需要过多的逻辑,使用方便.对于普通使用场合够用了.此篇我们来说说密钥密钥的高级设置,如何配置密钥控制字. IC卡读写器 ...

  8. RFID标签EPC物品编码区PC协议控制字编码解析

    RFID标签物品编码区(EPC区)由CRC-16.PC(协议控制).EPC三部分组成. PC协议控制字包含标签物理层的信息,标签在每一次盘存操作中通过它的物品编码区EPC返回这些信息.PC协议控制一共 ...

  9. M1卡修改各区块控制位值和数据

    (一),以常用设置"08 77 8F 69"控制条件为例,先搞清楚它――具有的访问权限. 1.对"08 77 8F 69"值进行计算,该值定位于各区块3的6,7 ...

最新文章

  1. android studio 去掉标题栏的简单方法
  2. 点分治问题 ----------- P2993 [FJOI2014]最短路径树问题 [最短路径树+点分治+采坑]
  3. 获取元素到页面顶部的距离_jQuery 操作元素综合案例
  4. 表决器c语言课程设计,项目二:玩转RGB点阵屏——表情表决器
  5. 实战3--设计管理模块,整合!!!
  6. java springcloud版b2b2c社交电商spring cloud分布式微服务-docker-feign(四)
  7. why my filter by titleID does not work
  8. 记录一下使用vue/vuex+SSR框架遇到的bug
  9. 4 读写文件_WEB安全之SQL注入(4)——读写文件
  10. 每日学习笔记(17)
  11. matlab iir滤波器参数,[Matlab]IIR滤波器参数
  12. Spring学习资料
  13. 机器学习与数据挖掘 编程实现k均值算法
  14. Java版战棋(SLG)游戏AI及寻径处理入门
  15. runOnUiThread简单应用
  16. 学Python需要安装什么软件?Python软件工具大全
  17. Socket 套接字原理详解
  18. git初步使用(登录和创建仓库)
  19. 2020寒假集训排位赛 Cow Gymnastics 题解(思维)
  20. 让你永远赢得Popcap bookworm

热门文章

  1. 常见的比较二进制工具有哪些
  2. 直拨电话和ip电话区别_IP电话的基础
  3. 大数据与云计算学习(1)
  4. Android 获取app启动来源(是被谁启动的、被哪个第三方app启动?)
  5. 2.4 矩阵的特征值与特征向量
  6. 打印机显示扫描到当前计算机不可用,打印时显示当前打印机不可用
  7. qt 判断ctrl键被按下_直播 | 当世界被按下暂停键,幸有阅读可慰藉
  8. 1、Linux中的socket与TCP通信
  9. Revit中添加了标高看不见原来轴网解决方法及轴网转化
  10. 红旗linux如何硬盘安装教程,硬盘安装红旗Linux教程