我有不同的標籤:閱讀NFCA MifareClassic NFC標籤
- 亞馬遜標籤:NFCA http://www.amazon.de/gp/product/B00AESJ3B0/ref=oh_details_o00_s00_i00
- 我的鑰匙:NFCA
- 一些廣告標籤:NFCA,NDEF,MifareUltraLight
我想讀出我的密鑰。 UID是20 66 be 52
,在ATQA是00 40
的SAK是00 08
(ATQA和SAK是一樣的,從亞馬遜的關鍵,所以我想這也是MIFARE經典1KB)
每當我試着transceive(byte[])
我趕上TagLostException
。滑稽的事實:廣告標籤效果更好,但仍然拋出IOException: Transceive failed
試圖標籤(我的鑰匙)解析到IsoDep
或MifareClassic
拋出一個Nullpointer
。只有NfcA
有效,但我無法從標籤讀取任何數據。
有人可以提供我的有效命令或任何其他方式來讀取Android的內容。
MifareClassic mfc = MifareClassic.get(tagFromIntent);
mfc.connect(); //Nullpointer
編輯:。好像這個問題可能是我的Nexus 4(主要是買給NFC東西:()好像不支持MIFARE經典標籤,但如果仍然有想法寫下來
沒錯。它不支持它並不是因爲它不符合NFC論壇,而是因爲它使用了Broadcom和Google不想許可的專有加密算法(Crypto 1)。在使用恩智浦NFC控制器(Nexus S,Galaxy Nexus等)的設備上,您可以免費獲得該設備,因爲硬件支持它。通常,您需要檢查結果'SomeNfcTech.get()'爲null,因爲並不是所有的都被支持。 –
此外,Crypto 1算法已完全破解,對於新項目使用Classic沒有任何藉口。 –
我不會支付完全損壞的crypo的許可費用。 Mifare Classic消失對於NFC技術來說是件好事。 –