由于对Michael Roland's answer的反对,我在更换Mifare Classic 4K卡的钥匙方面遇到了问题。我想使用NFC读卡器ACR122U对NFC卡进行个性化设置。
我已按照本答案中定义的步骤操作,并成功读取和写入扇区尾部块11(通过读取我获得了2个访问字节和1个通用字节),如
00 00 00 00 00 7F 07 88 40 00 00 00 00 00
使用这些访问字节和新密钥KeyA(D6 DF 20 AE AE BC
)和KeyB(D6 DF 20 AE AE BC
),我生成16字节(D6 DF 20 AE AE BC ...
),以及访问字节以更改扇区密钥。即用以下16个字节写入块11:
D6 DF 20 AE AE BC 7F 07 88 40 D6 DF 20 AE AE BC
写命令因此变为
FF D6 00 11 10 D6 DF 20 AE AE BC 7F 07 88 40 D6 DF 20 AE AE BC
命令执行成功但是当我通过密钥B(0x61)和密钥(1或0)验证了块8(同一扇区的第一个块)时,验证失败并返回0x63。这意味着第2部分无法访问。
此后读取和写入该扇区失败。
同样Android App NFCTagInfo显示以下
数据(US-ASCII),显示扇区2:读取失败!
访问条件:扇区2(无法读取访问条件!)