You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:如何用NFC-B卡的Java Card在iPhone打开网站?APDU返回0x6D00

解决NFCRing OMNI发送NDEF网址时APDU返回0x6D00的问题

错误原因明确

0x6D00响应的核心是指令字节(INS)无效,要么是你发送的APDU格式错误,要么是OpenjavacardNDEF小程序未成功安装/选中,导致卡片无法识别这些命令。

分步排查与解决

1. 确认小程序安装状态

先用GlobalPlatformPro检查卡片上的小程序列表,执行命令:

gp -list

如果输出中能看到AID为E104的小程序,说明安装成功;若没有,重新编译并安装:

gp -install <你的OpenjavacardNDEF.cap文件路径>

注意:NFCRing OMNI为Java卡,需确保cap文件与卡片固件版本兼容。

2. 正确选中NDEF小程序

你之前的选中命令格式错误,正确的APDU应为:

00 A4 04 00 02 E1 04 00

参数说明:

  • 00:CLA(指令类)
  • A4:INS(选择小程序指令)
  • 04 00:P1P2(按AID选择模式)
  • 02:AID长度(E104共2字节)
  • E1 04:目标小程序AID
  • 00:Le(期望返回长度)
    发送后若返回9000,则选中成功;若仍返回6D00,需检查AID是否正确或小程序是否安装到位。

3. 按协议发送NDEF写入命令

选中小程序后,将网址封装为NDEF格式(例如https://example.com对应的NDEF数据为D1 01 11 55 02 65 78 61 6D 70 6C 65 2E 63 6F 6D),再发送写入APDU:

00 D6 00 00 10 D1 01 11 55 02 65 78 61 6D 70 6C 65 2E 63 6F 6D

参数说明:

  • 00:CLA
  • D6:INS(NDEF写入指令)
  • 00 00:P1P2(写入起始偏移0)
  • 10:NDEF数据长度(16字节)
  • 后续为NDEF格式的网址数据

4. 修正你之前的错误命令

你尝试的几个命令均存在格式问题:

  • 00000000:无有效指令字节,完全无效
  • 00a4000c:缺少AID长度与具体AID,格式不完整
  • 00a4000c02e10400:P1P2参数错误(000C是选择MF的参数,而非按AID选择)
  • 00b00150:未选中目标小程序就发送读指令,卡片无法识别

验证操作结果

写入完成后,用手机NFC触碰戒指,检查是否能正常弹出网址;也可发送读取APDU验证:

00 B0 00 00 20

若返回包含你写入的NDEF数据的响应,则操作成功。

内容的提问来源于stack exchange,提问作者DragonHuntr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 11:31:02