问题标签 [acr1252]
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.
java - NFC 阅读器和安卓手机
这是我第一次发布问题,所以请耐心等待。我一直在运行 Android 4.4.2 的三星 Galaxy S4 上开发 NFC 应用程序。手机绝对可以使用基于主机的卡仿真 (HCE),我想用它与处于读/写模式的ACR1252U-A1 NFC 读卡器(高级卡系统)通信。
阅读器连接到 PC,我编写了一个使用 javax.smartcardio 库与阅读器通信的 Java 应用程序。到目前为止,我已经能够从阅读器向手机发送 SELECT 命令,接收手机的响应并在阅读器和手机之间来回发送后续消息。在 Android 端,我从 Android HCE API扩展了HostApduService类。我基本上是在玩硬件,并决定创建一个 Android 应用程序,然后将一些会员卡信息发送到 POS 系统,POS 系统又将收款机号码发送回设备。
但是,设备之间的通信似乎仅在手机锁定时才起作用。如果我解锁手机(主屏幕或其他任何东西),我的电脑会尝试安装所谓的“智能卡”驱动程序,但它会失败(如预期的那样),或者它只是无法连接到手机。基本上,我只希望 Java 应用程序在手机解锁和锁定时工作。
这是我的 Java 应用程序的主要方法:
这是我在 Android 设备上的服务:
您可能还想查看我的aid.xml 文件以查看我的 AID 号码:
这是 Java 应用程序成功连接的输出日志:
这是 Java 应用程序连接不成功的输出日志:
如果我还有什么可以做的,或者我是否遗漏了一些有助于回答我的问题的内容,请告诉我。谢谢!
java - 写入 NFC 标签 (ISO 14443A) 失败
我目前有以下情况:
我正在尝试编写一个简单String
的UPM Racetrack NFC Tag。我javax.smartcardio
为此使用Java。我为此使用 ACR1252 编写器/阅读器,为此我开发了一个简单的 java 应用程序。
关于卡的信息
- ATR: 3B8F8001804F0CA0000003060300030000000068
- 标准:03 -> ISO14443A 第 3 部分
- 卡名:0003 -> MIFARE ULTRALIGHT
到目前为止,这是我的 util 类代码:
问题是响应总是:C003016300
,这意味着没有错误信息存在。由于缺乏错误信息,我完全坚持这一点。所以我的问题是:我该如何调试它,我的命令是否有明显的问题?
任何帮助是极大的赞赏!
nfc - 在 ACS ACR1252U-A1 上模拟 NdefMessage
我正在尝试使用 ACR1252U 模拟包含 NDEF 消息的 NFC Forum Type 2 标签 (Mifare Ultralight),然后使用 Android 设备将其读出。
为了存档,我进入 Mifare Ultralight 的卡模拟模式:
Android 应用程序“Nfc Tools”现在将其识别为 Mifare Ultralight。
然后我使用以下命令将 NDEF 消息写入模拟卡:
不幸的是,Android 设备(Sony Xperia Z1 Compact)无法读取 NDEF 消息。
那么 ACR1252U 是否能够模拟带有 NDEF 消息的 Type 2 标签,还是我只是遗漏了什么?
nfc - 我们怎样才能关闭智能卡读卡器的蜂鸣器?
我是智能卡读卡器的新手。我买了一个 ACR1252u 并被困在禁用蜂鸣器和 led 中。我试过这个代码: https ://the--semicolon.blogspot.it/p/this-is-simple-way-to-restart-your.html?showComment=1468833507200
但是状态给了我 1 而不是 0
c# - 从 ACR1252 向安卓手机发送长 NDEF
我正在尝试从 ACR1252 向 android 应用程序发送一条长 NDEF 消息。我正在使用 C# 开发应用程序。可以发送长度小于 256 字节的消息,并且 android 应用程序也完全接收消息,但对于较大的消息,我使用 PFB 字段中的 MI(多信息)位以片段形式发送消息。我收到每条消息的确认,但 android 应用程序进入 NFC 接收页面,但最后没有收到任何内容。
这是我用来发送消息的代码:
和 depExchange 是:
sendCardControl 使用 SCardControl 发送 apdu。
我使用以下代码创建 NDEF 消息:
这也是日志: 在此处输入图像描述
java - 使用读卡器 - ACR1252U 从模拟卡内容 (Felica) 中读取数据
我正在使用
byte[] command = {(byte)0xE0, 0x00, 0x00, 0x40, 0x03, 0x03, 0x00 , 0x00}
命令使 ACR1252U 模拟 Felica NFC 标签,根据文档第 71 页,一些默认数据被写入模拟标签。
我尝试使用byte[] aid1 = {(byte)0xE0, 0x00, 0x00, 0x60, 0x04, 0x00, 0x03 , 0x00 , 0x12};
命令读取此默认数据,并得到一个响应[B@27bc2616
,我使用它打印以根据文档DatatypeConverter.printHexBinary(response)
给出E1000000121001010009000000000001000000001C0000
与预期输出匹配的响应。
我只有一个问题,如何从这个响应中获取数据E1000000121001010009000000000001000000001C0000
并在 java 中以用户友好的方式打印出来?
android - ACR1252 加载身份验证 FF 82 失败并显示 63 00
我想将身份验证密钥加载到我的 ACR1252 阅读器(可能类似于 ACR122 阅读器)中,但它失败并显示响应代码63 00
。
我正在尝试为 ISO/IEC 14443 卡(特别是 Dutch ePassports)执行此操作。首先我发送命令:
- 选择应用程序:
00 04 04 0C 07 A0 00 00 02 47 10 01
有响应90 00
- 获得挑战:
00 84 00 00 08
有回应[ramdom 8 bytes] 90 00
- 加载键:
FF 82 00 00 06 FF FF FF FF FF FF
有响应63 00 (Operation Failed)
最终密钥的长度将是 40 字节而不是 6,但这只是为了测试目的(40 字节的密钥也给出63 00
)。
我也试过:
没有成功,有人知道吗?我还偶然发现了这个 Stackoverflow 线程:ACR1222L FF 82 Load Authentication Keys failed with 63 00 Operation Failed,这可能与我的情况类似。任何人都有更改安全级别的经验/成功?
如果对如何解决此问题有其他想法,也许我错过了一些关键步骤或其他内容,请告诉我!谢谢!
nfc - Felica(TYPE 3 NFC 卡)NDEF 消息,包括属性块示例 ACR1252U
我希望有人可以提供帮助
我正在尝试将 NDEF URI 消息写入 felica 类型卡以存储指向 Web 资源的链接。我正在使用来自高级卡片系统的 ACR1252U 读卡器。
块 0 用于属性数据块 1 以后是我想存储 ndef 记录的用户数据。
有没有人有一个发送到卡的编码命令示例,即应该在块 0 中写入的内容,以及可能编码为适合的示例 ndef 消息
ie Default:
Block 0 data: {10h, 01h, 01h, 00h, 09h, 00h, 00h, 00h, 00h, 00h, 01h, 00h, 00h, 00h, 00h, 1Ch} 用于属性数据,但我我不确定这对于 NDEF 记录是否正确
然后我写到块 1 D1 01 13 55 01 69 74 64 69 73 63 6F 76 65 72 79 2E 63 6F 6D 2E 61 75
这应该是带有有效负载 itdiscovery.com.au 的 URI (WWW) 类型的 NDEF 记录
当我尝试使用 NFC 工具 (android) 扫描卡时,它会检测到卡类型在此处输入图像描述
但是没有 ndef 消息或记录 - 我不确定我是否必须指定服务类型和位置等。我有点茫然。
nfc - ACR1252 Felica 仿真
我正在使用连接到 Windows 笔记本电脑的 ACR1252 设备并尝试模拟带有 URL 标签的卡。我能够使用 Mifare 仿真模式(@michael-roland 在Accessing card-emulation mode on USB-NFC-Reader中描述的方式)发送标签。但不幸的是,对于 android 设备,标签的读取并不稳定(读取仅发生 15 次尝试)。我决定尝试 Felica 卡仿真。根据 ACR1252 的文档,必须更改命令中 NFCMode 的字节:
写命令指定如下: 写卡仿真数据命令格式
但似乎这还不够,因为 Felica 有不同的内存结构。我的 android 手机读取标签但无法识别 NDEF 消息的内容。有人知道如何更改消息以使其可识别吗?任何建议都将受到高度赞赏。
当我发送
E0 00 00 60 1C 01 03 00 18 E1 10 06 00 03 0F D1 01 0B 55 01 67 6F 6F 67 6C 65 2E 63 6F 6D FE 00 00