我有一个MIFARE 1K标签。一些数据块可以使用身份验证密钥A写入/读取,而其他数据块可以使用身份验证密钥B写入。为什么?如何更改所有要写入/读取的块,例如,使用密钥A?
例如,我可以使用密钥A编写密钥块07,也可以更改该密钥块的密钥A,但不能使用密钥B在其上写入,也不能更改该密钥块的密钥B。
为什么要使用密钥A而不是密钥B进行写/读?有什么关系呢?
发布于 2015-01-21 01:11:08
MIFARE Classic卡的每个扇区都有两个认证密钥:密钥A和密钥B。这两个密钥连同访问条件一起存储在每个扇区的最后一个块(所谓的扇区尾部)中。地段预告片如下所示:
+-----------------------------+--------------+----+-----------------------------+
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
+-----------------------------+--------------+----+-----------------------------+
| Key A | Access Conditions | Key B |
| (6 bytes) | (4 bytes) | (6 bytes) |
+-----------------------------+--------------+----+-----------------------------+访问条件定义了如何访问地段中的块:
典型场景包括:
密钥A的
您可以在MIFARE datasheet中找到可能的访问条件的完整描述。
https://stackoverflow.com/questions/28050718
复制相似问题