0
我正在嘗試驗證MIFARE經典卡的任何部分。我正在使用twinlinx mymax貼紙(這使得幾乎所有的藍牙設備NFC都可以使用)。它將命令發送到連接的NFC標籤。我已經建立了連接,並使用Ultralight C標籤發送和接收數據,但到目前爲止,我沒有成功訪問過Mifare Classic。以下是我的驗證碼:MIFARE CLASSIC沒有迴應
private boolean authenticate(int sector, byte[] key, boolean keyA) {
byte[] cmd = new byte[12];
// First byte is the command
if (keyA) {
cmd[0] = 0x60; // phHal_eMifareAuthentA
} else {
cmd[0] = 0x61; // phHal_eMifareAuthentB
}
// Second byte is block address
cmd[1] = (byte) 0x03;
// Next 6 bytes are the key
System.arraycopy(key, 0, cmd, 2, 6);
// Next 4 bytes is the UID
System.arraycopy(Answer, 3, cmd, 8,4);
byte[] test = null;
//this makes a connection to the NFC tag (and this works)
TR.ConnectToExternalCard(AUTH, (byte)0x00);
//checking if the tag is still connected
if (TR.isCardPresent() == true){
//sending command to authenticate
test = TR.SendCommandPropAndWaitResponse(cmd, (byte) 0x00);
}
try {
if (test != null) {
return true;
}
}
我使用的是標準MIFARE Classic鍵,標籤是從工廠新鮮出來的。完整的命令(以字節爲單位),其被髮送到標籤是:
[0x60的,0x3,0xff的,0xff的,0xff的,0xff的,0xff的,0xff的,0xf3,0xF4中,0xa9,0xFB的才能]
任何想法?該標籤似乎沒有響應...嘗試訪問其他經典標籤,但也沒有成功。謝謝!