问题标签 [lib-nfc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2187 浏览

javascript - 从 NFC 阅读器直接读取到桌面 Web 应用程序?

我让 LibNFC 在 Linux 终端上工作,识别我的 ACR122U 阅读器,我想知道是否有一种方法可以通过 Linux 桌面上的 Chrome 工作,因为它与 Android 支持非常相似,所有 NFC 设备处理由libnfc 和浏览器只需要知道这个库,而不是每个类型的 usb 或其他可以执行 NFC 的设备。

我尝试使用 WebNFC API 来连接它:

但我遇到了Error: NFC Permission Request denied

和连接它的 WebUSB API:

但我遇到了Error: ...blocked because it implements a protected interface classie 不支持,所以这是不行的。

有没有办法合并 libusb/libnfc 库或任何其他方法来直接连接 NFC 阅读器以读取到 Web 浏览器/应用程序?

0 投票
1 回答
39 浏览

c# - 在 libnfc 上使用 pinvoke 获取字符串值的无效指针异常

我正在尝试使用 dotnet 核心与树莓派 3 上的 NFC 读取器/写入器通信。

我不得不说我使用的不同的 libnfc 命令行工具都工作正常(也可以读取和轮询我的标签,这方面没有问题)。

这个想法是使用 dotnet core 和 C# 来编排 libnfc 库,它似乎工作正常,除非我调用的函数返回一个字符串,我收到以下错误消息:

NfcTest 当然是我的应用程序的名称。

这是pinvoke定义

请注意,在网上查找后,我确实[return]自己添加了属性,但它并没有改变任何结果。引发相同的错误。

libnfc中nfc_version的代码在这里:https ://github.com/nfc-tools/libnfc/blob/c3f739dea339a71c59d7d53ab6b0ecc477c3ab73/libnfc/nfc.c#L1325

它似乎返回一个“常数”,并且没有任何形式的释放。所以我的猜测是我错误地配置了其中一个属性。

另一个例子是我调用以下代码:

虽然我可以使用指针(pnd 参数)完美地调用其他方法(即 poll),但调用此方法会返回与 Version 方法相同的错误。返回字符串的两种方法都让我想知道问题是否不在 DllImport 中,但我不太确定如何解决这个问题。

链接到该示例的 lib 代码:https ://github.com/nfc-tools/libnfc/blob/c3f739dea339a71c59d7d53ab6b0ecc477c3ab73/libnfc/nfc.c#L1215

任何智慧将不胜感激。

0 投票
1 回答
117 浏览

c - libnfc6 未检测到 Revolut Visa 借记卡

尝试使用 PN532 NFC RFID 模块读取各种支付卡。libnfc6 成功轮询大多数 nfc 卡,甚至检测到移动支付方式,但nfc-poll应用程序没有检测到我的 Revolut 卡。

libnfc 是从libnfc-1.8.0 git tag本地编译的。

我当前的投票设置:

在此处输入图像描述

0 投票
0 回答
173 浏览

nfc - 使用 DESfire EV1/EV2 进行外部身份验证?

对非接触式 Mifare Desfire EV1 或 EV2 执行“外部身份验证”的最直接方法是什么?

我已经libnfc跑在上面PN532PN7150读者身上了。

应用说明MF3ICDx21_41_81说这张卡:

在阅读了有关此操作的信息后,这似乎是我想要做的。https://www.informit.com/articles/article.aspx?p=29265&seqNum=6将其描述为:

External Authenticate 命令由读卡器端应用程序与 Get Challenge 命令(在下一节中描述)一起使用,以允许读卡器端应用程序向卡验证其身份。

但在实践中如何做到这一点?

也许我可以pkcs11-tool从 OpenSC on top of pcsc-liteon top ofifdnfc使用libnfc,但这感觉很笨拙。当然,这必须是可能的libnfc和/或libfreefare?Python、C 或命令行;什么都可以。

0 投票
0 回答
40 浏览

mifare - Mifare 经典 1k

我有一张 mifare 经典 1k 卡。

我检查了 libfreefare 发送的身份验证内容,它发送 (FOR KEY A) 扇区 0: 60 00 FF FF FF FF FF FF 04 94 84 B3

在检查其他论坛主题时,他们正在发送此 FF 86 00 00 05 01 00 00 60 00

两个命令都应该工作还是我错过了什么?

亲切的问候!

0 投票
0 回答
160 浏览

raspberry-pi - 使用 ACR122U 的 libnfc 或 nfcpy 问题

我有一个 Raspberry Pi 和一个 ACR122U-A9 USB NFC 阅读器。我想进行设置,以便我可以读取 NFC 标签并执行一些 Web 请求,并在触摸 NFC 后立即返回结果。我正在努力让 nfcpy 与这个读者一起工作。我设法让 libnfc 1.8.0 工作,如果我运行 sudo nfc-poll 那么我可以扫描卡。但我不确定是否可以使用 libnfc 创建 python 代码,以便我可以一直监听扫描并根据 RFID 标签的 UID 发出 Web 请求。

当我运行以下命令时

它会在第一个实例上找到 NFC 阅读器,但之后它会失败,除非我使用 sudo nfc-list 初始化阅读器

是否有人能够通过使用 libnfc 或 nfcpy 的工作示例来指导我与此阅读器一起工作并连续收听扫描。

其他选择是,有没有办法总是监听扫描,当检测到 nfc 卡时运行命令?

0 投票
1 回答
297 浏览

python - Python nfcpy 显示 acr122u usb 设备但未读取

我在树莓派上安装了 nfcpy,当我运行以下命令时

我看到了 USB NFC 阅读器

然后,我创建了一个名为“test.py”的 python 脚本,并将以下代码放入其中:

当我运行 test.py 脚本时,它显示:

所以nfcpy能够检测到reader没问题。接下来,我尝试使用以下代码读取 NFC 标签,从而将其带入下一阶段:

但是,当我运行此代码时,脚本只是在侦听标签,并且阅读器上的绿灯亮起,但无论我将 NFC 标签触碰阅读器多少次,它都不会读取任何内容,脚本会一直在监听。

有人可以帮忙吗?

0 投票
0 回答
125 浏览

qt - 使用 QNdefMessage 解析 mfd 转储

我有一些问题QtNfc。我不能用这个库读/写卡,所以我至少在尝试处理它的内容。

例如,我使用以下方法读取 Mifare 卡的内容:

现在我想检查数据。我猜想是这样的:

但我得到:

恐怕输出libnfc与预期的输入不兼容QNdefMessage::fromByteArray

您对如何在 Ubuntu 20.04 下读取 Qt 6.2.0 中的记录有什么建议吗?我很确定我不需要手动解码转储的每个字节。

0 投票
0 回答
15 浏览

python - 如何使用树莓派和 ACR122U 读取 NFC 标签数据

我正在开发一个需要从 NFC 标签(特别是 URL)读取数据的 python 项目。

我购买了一个USB NFC 阅读器并正在使用libnfc库。我让我的树莓派正确识别阅读器和标签,它使用 nfc-poll 正确识别标签何时存在。但是,它只提供了有关标签 ID、ATQA 和 SAK 的信息(我不确定最后两个是什么)。它没有给我数据/网址本身。

使用 libnfc 或其他方式读取标签数据时,我们将不胜感激。我在 Python 方面经验丰富,但以前从未做过这样的项目,所以尽可能简单将不胜感激。

我的python代码很简单:

出现标签时的输出如下所示: