2013-04-25 129 views
2

我試圖使用DESfire EV1卡進行身份驗證,但卡沒有回覆。在嘗試進行身份驗證之前,我只是格式化了卡並創建了一個新應用程序,選擇了新的應用程序並需要在創建文件之前進行身份驗證。DESfire EV1 AES身份驗證無回覆

下面是格式的各項通訊失敗:

Format card to start over 
bsp_mifare --> 0b 01 90 fc 00 00 00 (tranceive, 56 bits) 
bsp_mifare <-- fa 01 01 (24 bits) 
bsp_mifare --> fa 01 01 (tranceive, 24 bits) 
bsp_mifare <-- fa 01 01 (24 bits) 
bsp_mifare --> fa 01 01 (tranceive, 24 bits) 
bsp_mifare <-- fa 01 01 (24 bits) 
bsp_mifare --> fa 01 01 (tranceive, 24 bits) 
bsp_mifare <-- fa 01 01 (24 bits) 
bsp_mifare --> fa 01 01 (tranceive, 24 bits) 
bsp_mifare <-- fa 01 01 (24 bits) 
bsp_mifare --> fa 01 01 (tranceive, 24 bits) 
bsp_mifare <-- 0b 01 91 00 (32 bits) 
bsp_mifare --> 0a 01 90 0a 00 00 01 00 00 (tranceive, 72 bits) 
bsp_mifare <-- 0a 01 ad 51 73 29 dc 6e 33 cf 91 af (96 bits) 
bsp_mifare --> 0b 01 90 af 00 00 10 2e 4a 13 9c a9 d4 23 61 25 28 48 ce 2c 73 2c 70 00 (tranceive, 192 bits) 
bsp_mifare <-- 0b 01 fc 25 2e 4f 00 c3 86 e8 91 00 (96 bits) 
Create application with default AES key 
bsp_mifare --> 0a 01 90 ca 00 00 05 33 22 11 0b 84 00 (tranceive, 104 bits) 
bsp_mifare <-- 0a 01 91 00 (32 bits) 
Select application... 
bsp_mifare --> 0b 01 90 5a 00 00 03 33 22 11 00 (tranceive, 88 bits) 
bsp_mifare <-- 0b 01 91 00 (32 bits) 
Authenticate... 
bsp_mifare --> 0a 01 90 aa 00 00 01 00 00 (tranceive, 72 bits) 
bsp_mifare <-- (0 bits) 
bsp_mifare --> 0a 01 90 aa 00 00 01 00 00 (tranceive, 72 bits) 
bsp_mifare <-- (0 bits) 
Failed to authenticate with null AES key: 0x00 

如果我嘗試用無效鍵數字認證(如6時num_keys爲4),我得到一個「沒有這樣的鑰匙」的答覆,所以該卡至少部分理解了我的請求。

所以我的問題是,什麼是錯與此命令「認證的開始」:

bsp_mifare --> 0a 01 90 aa 00 00 01 00 00 (tranceive, 72 bits) 

(顯示的數據是原始數據,包括包裝的實際本地命令是「AA 00」)。

回答

0

原來這是一個硬件故障:AES指令比DES/Crypto1需要更多的功率(50%以上),這是天線在我測試的讀取範圍內無法提供的。將卡靠近以解決問題。