我想编写一个Java卡小程序,它响应NFC阅读器,就像它是一个普通的MIFARE Ultralight或NTAG NFC标签一样。
我知道MIFARE协议是专有的,可能有点困难,但我肯定能够实现NTAG协议的仿真。
如果我匹配NTAG规范并响应正确的APDU,那么我肯定可以模拟NTAG?
更新到原始问题
我想我问错了我原来的问题。我不希望每个sé都模拟一个特定的标签。我实际上正在尝试使用Java Card powered card,以便能够使用新的核心NFC API向Android或苹果iPhone等智能手机提供动态信息。注意,据说这个API支持类型1到5的标签。我希望能够编写一个Java Card applet,它可以在非接触式智能卡上运行,并允许与智能手机进行(单工)通信。
我想我的问题是:如何确定来自核心 NFC API 的 APDU 流,以便我可以编写一个能够适当响应的小程序?
虽然NTAG 2xx是不可行的,正如迈克尔·罗兰上面解释的那样,人们可以编写一个小程序。T4T。然而,不确定这是否值得努力,因为NTAG 2xx以及DesFire或NTAG 413脱氧核糖核酸可能都便宜得多。当然,作为一个技术挑战,这可能是值得做的。
不,这是不可能的。MIFARE Ultralight,NTAG和其他NFC Forum Type 2标签在ISO/IEC 14443-3A(也称为NFC-A)中定义的防冲突和成帧协议之上运行。
Java Card 小程序(通常)使用 APDU 命令(ISO/IEC 7816-4 中定义的协议层)进行通信。Java Card 运行时环境仅将 APDU 命令传递给小程序。非接触式智能卡在 ISO-DEP 半双工传输协议(如 ISO/IEC 14443-4 中指定)之上交换这些 APDU 命令。反过来,该传输协议位于 ISO/IEC 14443-3(也称为 NFC-A 和 NFC-B)中定义的成帧协议之一之上。
+-------------------------+ +-------------------------+ | MIFARE Ultralight/NTAG | | Contactless Java Card | +-------------------------+ +-------------------------+ +-------------------------+ | Commands: APDUs | | (ISO/IEC 7816-4) | +-------------------------+ +-------------------------+ | Commands: Proprietary | | ISO-DEP | | or NFC Forum Type 2ary | | (ISO/IEC 14443-4) | +-------------------------+ +-------------------------+ | Framing: NFC-A | | Framing: NFC-A or NFC-B | | (ISO/IEC 14443-3 A) | | (ISO/IEC 14443-3 A/B) | +-------------------------+ +-------------------------+ | ... | | ... | +-------------------------+ +-------------------------+
因此,虽然这两种技术共享共同的协议层,但Java卡小程序只能交换APDU命令,不能直接控制许多较低的协议层。
编辑(基于ErikM的评论):
虽然不可能在Java卡上模拟NFC Forum Type 2标签(除非您的智能卡平台上有专用硬件支持——而且我认为目前不存在这种情况),但您可以在任何Java卡非接触式智能卡上轻松模拟NFC论坛Type 4标签。因此,如果你的目标是模拟一个NFC标签,它向智能手机等呈现NDEF消息,那么你可以遵循这种方法。甚至有这样的小程序的开源实现,例如。
Apple刚刚向公众宣布了新的NFC Core API。 这是他们说的。 核心NFC 借助 Core NFC 框架,您的应用现在可以支持标记写入,包括写入 NDEF 格式的标记。该框架还支持使用本机协议(如 ISO 7816、MIFARE、ISO 15693 和 FeliCa)读取和写入标签。有关详细信息,请参阅核心 NFC 框架文档。 https://developer.apple.com/io
问题内容: 我在HTML页面上有几个具有相同类的元素-但是它们是不同的元素类型。我想在遍历元素时找出元素的标签名称-但是.attr不会使用“标签”或“标签名称”。 这就是我的意思。考虑页面上的以下元素: 现在,我想运行类似的代码,以确保所有元素都具有一个ID(如果尚未定义): 我想要的结果是H2和H4元素的ID为 分别。 关于如何发现“ this”表示的元素的标签名称的任何想法? 问题答案: 应该
Volar 相关的插件我都安装了 但是 <template> 中的内容,都没有智能提示,也没有办法按 ctrl+鼠标左键跳转 比如我把鼠标悬停在 a-range-picker 的 @change 上,也没有办法给我任何提示,比如返回值类型等等 是 vscode 以及相关插件没有这个功能吗?
问题内容: 想象一下,当从控制台调用NodeJS模块时,它会输出一些介绍性消息,然后等待用户输入(单击enter或esc)。该模块已经具备并完成了我们所需的一切,除了- 等待用户输入提示。因此,我们想知道(我个人对NodeJS还是很陌生的)是否有可能以编程方式执行控制台模块并触发其上的输入事件,以便它不等待并立即进行工作? 问题答案: 您可以为此使用RobotJS。 示例代码:
首先,感谢您之前的所有建议。 我遇到了一个相当棘手的小问题。 我有一个字符串,我想显示到一个标签中,通常没有问题,但字符串比标签允许的要长。然而,使用swt awt hybrid解决了文本框的类似问题。我想做的是用标签复制这个。 有办法解决这个问题吗?或者,解决方法是让文本区域将text设置为所需的文本,然后将text enable设置为false,使其为灰色文本。 有人能给点建议吗?
我们正在使用MIP SDK来保护我们的文件(使用模板和特殊配置进行加密)。经过长时间的搜索,我没有找到创建新模板或天堂标签的方法。你知道这是否可能,或者微软在路线图中是否具备这一能力吗?