我正在编写一些代码来验证和覆盖rfid芯片上的一些数据。 我使用的是javax.smartcardio,读者是ACR122U。 现在,如果我尝试发送一个APDU命令,如:ff860000050100066100a0a1a2a3a4a5(在扇区2用标准密钥验证),我得到错误。但我确信我有正确的钥匙。我在acr122utools测试过它。问题是什么?请帮忙。
答案 0 :(得分:1)
通过acr122u对卡进行身份验证的方式有点不同。 首先,您必须将密钥加载到阅读器内存(例如:ff 82 00 00 06 a0 a1 a2 a3 a4 a5)。 然后你必须告诉你,你将使用内存中的密钥进行身份验证:(例如ff 86 00 00 00 50 10 00 66 10)。它应该以这种方式完成,因为身份验证是一种“挑战”。只有密钥的部分将用随机数加密,并在卡和读卡器之间传输。我认为,challange响应的实现并不是你想要的方式。