知识背景:
Mifare S50每个块(包括数据块和控制块)的存取条件是由密钥和访问控制条件共同决定的,访问控制条件四个字节(其中字节9为备用字节)所表示的含义如表格所示(注:_b表示取反)其中,在存取控制中每个块都有相应的三个控制位,定义如下。
块0:C10 C20 C30 块1:C11 C21 C31
块2:C12 C22 C32 块3:C13 C23 C33
数据块(块0、块1、块2)的存取控制如下:
由上面的知识可得下图: 存取控制位为 FF 08 70 69 对应的二进制
Bit 7 6 5 4 3 2 1 0
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 |
0 | 1 | 1 | 0 | 1 | 0 | 0 | 1 |
块0:001
块1:001
块2:001
块3:000
查询访问控制规则得 :
块0为001,验证密钥A或密钥B正确后可读;不可写;不可加值;验证密钥A或密钥B正确后可进行Decrement、Transfer、Restore操作。
块1为001,验证密钥A或密钥B正确后可读;不可写;不可加值;验证密钥A或密钥B正确后可进行Decrement、Transfer、Restore操作。
块2为001,验证密钥A或密钥B正确后可读;不可写;不可加值;验证密钥A或密钥B正确后可进行Decrement、Transfer、Restore操作。
块3为000,验证密钥A或密钥B正确后可读;可写;可加值;验证密钥A或密钥B正确后可进行Decrement、Transfer、Restore操作。
字节6 |
C23_b |
C22_b |
C21_b |
C20_b |
C13_b |
C12_b |
C11_b |
C10_b |
字节7 |
C13 |
C12 |
C11 |
C10 |
C33_b |
C32_b |
C31_b |
C30_b |
字节8 |
C33 |
C32 |
C31 |
C30 |
C23 |
C22 |
C21 |
C20 |
字节9 |
|
|
|
|
|
|
|