MIFARE Classic:如何找到好的访问字节值 [英] MIFARE Classic: How to find to good Access Byte value

查看:34
本文介绍了MIFARE Classic:如何找到好的访问字节值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的目标是只对密钥 A 进行身份验证并禁用密钥 B(用于存储数据的空间).

我阅读了这些文档:

  • 这里,我只想保留密钥 A(R & 写入数据)并停用密钥 B.我选择了第一条规则:C1=0 C2= C3=0.对吗?

    1. 访问字节规则

    我只想使用密钥 A,以便能够更改密钥 A 的值(写入) - 访问位:读/写密钥 A.所以我选择了 C1=0、C2=0 和 C3=1.这是正确的吗?

    最终结果是Byte 6 = F8, byte 7 = 77 and Byte 8 = 80

    当我将这些值写入 MIFARE 卡时,这是不正确的.

    你能帮我找到合适的价值吗?

    解决方案

    你选择的访问字节解码为 C1=7, C2=0, C3=8, 所以你有

    • 扇区预告片:C13, C23, C33 = 0, 0, 1
    • 数据块:C10,1,2, C20,1,2, C30,1,2 = 1,0, 0

    所以你选择了用密钥 A 可写的扇区尾符和用密钥 A 可读(除了密钥 A 本身).因此没有密钥 B.因此,对于数据块,这意味着它们可以用密钥读取A,但不能写入(由于缺少键 B)、递增等.

    如果您只想使用密钥 A 进行读/写访问,您可以使用如下所示的内容:

    • 扇区预告片:C13, C23, C33 = 0, 0, 1
    • 数据块:C10,1,2, C20,1,2, C30,1,2 = 0,0, 0

    这将导致访问字节 C1=0, C2=0, C3=8:

    FF 07 80

    My aim is to have only KEY A authentification and disable Key B (used space to store data).

    I read these documentations:

    I understand how to calculate the hexadecimal values of these three bytes.

    But I don't understand how to choose the good data block and access byte rules :

    1. Data Block rule

    Here, I want to keep only key A (R & Write data) and deactivate Key B. I choosed the first rule: C1=0 C2= C3=0. Is this right?

    1. Access byte rule

    I would like to use only key A, to be able to change key A value (Write) - Access bits: Read/Write Key A. So I choosed C1=0 C2=0 and C3=1. Is this correct?

    The final results is Byte 6 = F8, byte 7 = 77 and Byte 8 = 80

    When I write these values into a MIFARE card, it's not correct.

    Could you help me to find the good value?

    解决方案

    The access bytes you chose decode to C1=7, C2=0, C3=8, so you have

    • Sector trailer: C13, C23, C33 = 0, 0, 1
    • Data blocks: C10,1,2, C20,1,2, C30,1,2 = 1, 0, 0

    So you chose the sector trailer to be writable with key A and readable (except for key A itself) with key A. Consequently there is not key B. Thus, for the data blocks this means that they can be read with key A, but no writing (due to missing key B), incrementing, etc. is possible.

    If you want read/write access using only key A, you would use soemthing like the following:

    • Sector trailer: C13, C23, C33 = 0, 0, 1
    • Data blocks: C10,1,2, C20,1,2, C30,1,2 = 0, 0, 0

    Which would result in the access bytes C1=0, C2=0, C3=8:

    FF 07 80
    

    这篇关于MIFARE Classic:如何找到好的访问字节值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆