我已经尝试了一个多星期的时间来制作Android手机的Mifare Ultralight C进行身份validation。我已经确认我可以写入标签(通过写入一个不安全的内存页面,然后阅读我写的内容)。 我还可以写入关键页面(44-47),并为所有16个关键字节写入0x00。 当我尝试进行身份validation时,以下是一个交换过程中涉及的数据示例 – 它来自我的应用程序编写的日志。 任何人都可以告诉我,如果我做错了什么? 我处于保密状态,可以访问完整的数据表。 请注意,下面的hexstring显然是发送和接收的数据的人类可读版本,其中代码由字节数组组成。 发送validation命令 Received rndB: 8A5735694D9D7542 Key: 00000000000000000000000000000000 IV: 0000000000000000 Decrypted rndB: EF340C62E1B866D4 rndB': 340C62E1B866D4EF rndA: 6E262630E299F94F rndA+rndB': 6E262630E299F94F340C62E1B866D4EF Key: 00000000000000000000000000000000 IV: 8A5735694D9D7542 ek(RndA+rndB'): E36C6C46FAAC60BA45DDF5F5A0802C79 发送0xAF + E36C6C46FAAC60BA45DDF5F5A0802C79我立即失去与标签的连接。 我已经通过数据表阅读每一个post,我可以在这里find。 我也看了libfreefare代码,我真的不知道我做错了什么。 恩智浦技术支持完全没有响应。 有任何想法吗? 我很茫然。
我试图使用Qt的NFC模块在我的Android手机上阅读NFC标签。 根据这个页面 ,Qt将从5.6版本开始支持Android。 这个版本还没有发布,所以我从源码开始构build,遵循这个页面上的说明,并安装在Qt创build器中。 第一步是让标签/卡检测工作,我卡在那里。 我的testing应用程序实例化一个QNearFieldManager ,检查NFC是否可用,并将插槽连接到信号targetLost和targetLost 。 QNearFieldManager::isAvailable方法报告NFC是可用的(Qt 5.5没有),但是targetLost / targetLost信号永远不会被触发。 以下是我的testing应用程序的代码: #include <QLabel> #include <QVBoxLayout> #include <QNearFieldManager> #include <QNearFieldTarget> #include <QDebug> #include "window.h" Window::Window(QWidget *parent) : QWidget(parent) { nfcLabel_ = new QLabel(this); QVBoxLayout *mainLayout = new QVBoxLayout; mainLayout->addWidget(nfcLabel_, 1); setLayout(mainLayout); setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); setWindowTitle(tr("NFC Test")); nfc_ = new QNearFieldManager(this); if (nfc_->isAvailable()) { nfcLabel_->setText("NFC available"); […]
从我迄今为止所了解的情况来看,NFC手机将充当NFC读取器,从NFC标签读取数据。 现在我的问题是,我们可以切换吗? 我们可以让Android NFC手机performance为NFC读卡器将从中获取数据的标签吗? 感谢你的协助。
现在,苹果刚刚宣布iPhone 6将有一个NFC芯片,有谁知道如果iOS 8将启用阅读/检测iPhone 6设备的RFID标签? 任何人有任何细节可以分享?
Android 4.4引入了基于主机的卡仿真(HCE)。 如您所知,所有NFC卡都带有一个固定的卡号( NfcAdapter.EXTRA_ID )。 我的办公室门禁通常会检测授权的NFC卡ID。 将手机闪烁到KitKat后,我尝试用接入阅读器扫描手机。 但是,每当屏幕closures和再次打开,我得到一个不同的卡ID。 我曾尝试保持电话屏幕,并将模拟卡ID注册到门禁系统。 它设法授予访问开门。 但是在屏幕closures和再次打开之后,这将不起作用。 自从KitKat推出HCE模式以来,我一直在用我的手机来模拟我的门禁卡。 任何想法使电话模拟卡ID固定?
我想开始为Android开发NFC应用程序。 我最近开始使用android,并且发现它是一个非常有趣的开发平台。 在我出去投资一款内置NFC阅读器和购买标签的Android设备之前,我想先了解一下如何为他们编写代码。 我发现Open NFC Android模拟器 ,它似乎是我正在寻找。 我已经下载了:1. Android的Open NFC 2. Open NFC核心版 在创build一个用于Open NFC的avd后,我按照说明操作。 现在我面对的问题是,在模拟器,当我去无线设置,然后我启用NFC,它说,有一个错误。 我已经尝试设置IP到10.0.2.2,也是我从IPCONF获得的IP,但无济于事。 没有我能看到的日志。 另外,我试图在运行时完全禁用防火墙,以防止意外阻塞。 作为一个方面说明,我想提一下,我有连接pipe理器启动之前启动模拟器。 有没有人有与Android的Open NFC的经验,如果有人可以指向我一个更好的指令集,我会非常感激如果有人可以build议另一个模拟器,我可以尝试一些示例代码,并更好地了解NFC 。 adb logcat的输出是 W/KeyCharacterMap( 165): No keyboard for id 0 W/KeyCharacterMap( 165): Using default keymap: /system/usr/keychars/qwerty.kcm.bin D/NfcSettings( 165): onPreferenceChange: Setting NFC key: nfc_cc_ip D/NfcSettings( 165): onPreferenceChange: Setting NFC value: 10.0.2.2 D/NfcSettings( 165): onPreferenceChange: […]
所以NFC标签真的是相互独立的,至less在他们的序列号 ? 我们可以依靠没有2个NFC标签可以有相同的序列号吗? 我对此非常怀疑,因为有NFC标签,而且我不认为有人在控制连续照片。 我问的原因是我正在开发一个使用NFC标签的基于密钥的系统。 我不需要写标签,我基本上只需要他们的序列号。 但我需要他们是真正独特的 。 另外,我想知道是否可以克隆序列号(我知道标签的内容总是可以被读取和克隆,但是可以编程另一个标签以具有完全相同的ID /序列?)
我可以通过蓝牙将两台设备配对,而无需在用户界面中确认此设备,请接受配对这些设备。 我可以通过例如NFC交换一些额外的数据,然后通过蓝牙安全地将这两个设备配对,而无需任何额外的用户操作?