这真的让我头疼... 我正在寻找一个NFC/RFID标签,它需要满足以下要求:
实现对发送到标签的数据进行加密和/或加密签名,以便读者可以验证标签。我不在意标签是否尝试验证读者,
被Android手机和标准的NFC库广泛支持,
以安全方式存储密码(在配置保险丝被烧断后,读取将是不可能的)。
我不在乎标签上存储的数据类型,也不需要使用NDEF消息。我不关心所使用的加密是对称的还是非对称的。我想做的只是向标签发送一些数据,并希望它使用共享密钥对该数据进行加密或签名,并将其发送回手机。然后我的代码将执行相同的功能,并将结果与标签的响应进行比较,以验证标签。
我拥有Atmel CryptoRF *标签的样品,虽然它们可能可以做到我需要的大部分功能,但它们无法被我唯一拥有的Android手机正确识别。使用适当的技术列表条目过滤“android.nfc.action.TECH_DISCOVERED”,手机会响铃,但没有任何反应。Atmel的技术支持不仅没用(因为我浪费了时间去问他们从未回答过的问题),而且还更糟糕。Logcat看起来像:
- 09-04 21:03:53.474 1012-1012/? D/NativeNfcTag: Connect Failed - status = 146
- 09-04 21:03:53.474 1012-1012/? E/NFCJNI: doDisconnect() - Target already disconnected
我没有看到任何先前的条目表明Android曾经识别过标签。
这似乎是一种非常简单,明显和必需的标签类型,它必须存在于某个地方。
NFCGuy或其他人有什么想法吗?
谢谢!
* Atmel CryptoRF数据表中提到以下内容,这可能对确定这些东西是否能够被Android手机读取有所帮助:
- ISO/IEC 14443-2:2001 Type B符合
- ISO/IEC 14443-3:2001 Type B Compliant防冲突协议