问题标签 [hce]
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.
android - 从另一个上下文向 HostApduService 传递信息
之前有人问过这个问题,但没有回应,所以我会尝试用不同的方式来表达这个问题。Service
在无法绑定或自己启动的情况下,将某些数据传递给 Android 的各种方法是什么?
这是问题所在 - 我有一个HostApduService
由操作系统在每次 NFC 卡交易时启动的。它需要权限android.permission.BIND_NFC_SERVICE
,这是一个系统权限,所以我的应用程序无法绑定到它。我不想让数据保持静止,所以任何写入磁盘的东西都是不行的。我想到了一些可能的解决方案,但它们要么混乱要么不安全:
- 将数据放入我们应用的 SharedPreferences 中。这提出了一个 DAR 问题。
- 将信息广播到
Service
. 在HostApduService
卡交易期间运行,因此我无法在广播开始工作之前可靠地确定广播到达服务的时间。 - 将我想要传递的信息放入某个
static
字段中。这很混乱,可能会导致并发问题,但这是我目前正在使用的。
还有其他想法吗?提前致谢。
android - 使用 NFC 设备作为 NFC 标签
我希望我的 android 设备充当 NFC 标签。是否可以使用 NFC 设备作为 NFC 标签?我怎样才能做到这一点?我已经完成了设备之间的读/写标签,光束数据。
android - 安卓 HCE 服务
我有一个 HCE 服务,可以向 NFC 阅读器发送数据,但我想知道是否可以指定我的服务的启动设置。我想指定只有在应用程序正在运行时才能调用我的服务。如果应用程序关闭,则不应调用该服务。这是可能的还是打算总是可以调用该服务?
tags - 如何检查我的 NFC TAG ID (UID)?
当我们习惯于 APK & TAG 每部手机时,就可以知道其他人的 NFC TAG ID。例如,电话 A 和 B 尝试标记。然后电话 A 可以知道电话 B 的 NFC TAG ID(4 字节 - HEX)。但我想知道如何知道我手机上的 NFC TAG ID。没用过其他手机。如果您知道任何其他信息,请给我您的建议。
android - 主机卡仿真中的加密逻辑通道
HCE 实现仅支持单个逻辑通道,默认情况下未加密。
有谁知道,是否可以在 HCE 中建立加密逻辑通道或任何其他方式使主机卡仿真更安全。
谢谢
android - 访问 MIFARE DESFire 卡
如何使用 Android 手机作为 NFC 读卡器访问 MIFARE DESFire 卡?我打算在安卓手机上开发一个安卓应用程序(用于支付)。
我想使用 Android 手机执行的 DESFire 操作(身份验证、读取和写入)需要 SAM 卡,我想我可以使用 HCE 在手机中模拟该 SAM 卡。
android - 我可以防止选择 AID 触发 Host Card Emulation 服务吗?
我有一个 Android 应用程序,该应用程序具有注册到 Android Beam 的服务和注册到主机卡仿真的服务。我想决定何时在代码中启用/禁用 HCE 服务。清单中的 HCE 服务如下所示 -
实际上,当智能手机接收到选择 AID 命令(带有服务 AID)时,会触发服务并执行服务的 onCreate() 函数,并在事务完成后调用函数 onDestroy()。
因此,当我从主要活动中执行 startService() 和 stopService() 时,它没有任何效果。
我可以控制是否调用服务吗?
nfc - NFC Beam 从手机到桌面
我需要将 .doc 文件从我的 Nexus 5 手机发送到 Windows 8 桌面(连接了 ACR122U-A9 NFC 阅读器)。我发现的类似项目使用 LLCP/SNEP 协议(例如可以在此链接中找到的 Android Beam:https ://code.google.com/p/java-android-beam-api/ )。由于有基于主机的卡模拟的新功能,我想知道我是否可以使用HCE而不是LLCP/SNEP来建立Android和ACR122U之间的通信?
android - 是否可以从 Android 用户区向 HCE 服务发送 APDU?
如果我的问题听起来很愚蠢,我提前道歉,我不是开发人员,答案可能很明显(但至少对我来说不是......)。
我对 Android Kit-Kat 中引入的相对较新的主机卡仿真的可能性感兴趣。
使用以前基于安全元件的 NFC 应用程序,可以通过 NFC 控制器或“接触”接口(芯片和电话之间的插座)与 SE 中托管的小程序交换 APDU。
后者支持 SE 和运行在 Android 用户空间中的应用程序之间的通信(可以充当远程服务器的代理)。应用程序与小程序通信的授权是基于必须事先在 SE 中“注入”的应用程序的某种散列授予的——据我所知,这种安全机制是全球平台规范的一部分。
由于我在 Google 文档中阅读了此部分,因此我对 HCE 的类似可能性存有疑问:
HCE 架构本身提供了一项核心安全性:因为您的服务受到 BIND_NFC_SERVICE 系统权限的保护,所以只有操作系统可以绑定到您的服务并与之通信。
这让我认为用户级应用程序不可能与 HCE 服务交换 APDU——它只能通过 NFC 控制器从“外部”发生。如果我错了,该怎么做?是否有任何安全机制来控制哪个用户级应用程序可以与 HCE 服务通信?
我问这些问题是因为我想知道是否有可能开发一个能够显示通过 HCE 模拟的卡的内容并在远程服务器(充当 NFC 读取器)和 HCE 服务之间发起交易的 Android 应用程序。
谢谢你的时间!
nfc - 在 ACR122U 上模拟 NFC 标签时 RFID 和 NFC 的主要区别
我对 NFC 标准的概述有一些问题。
我所知道的是:
ISO/IEC 14443
是感应卡的标准,使用 RFID 作为通信协议;ISO/IEC 18092
(NFCIP-1) 是 NFC 标准,基于ISO/IEC 14443
;- NFC 论坛建立在标准之上
ISO/IEC 18092
,包括 NFC 论坛类型标签 (ISO/IEC 18092 tags
) 和 LLCP; ACR122U
是一种阅读器,除其他外,它可以阅读ISO/IEC18092
和ISO/IEC 14443
;- 模拟
ACR122U
在NFC Forum Type 4 Tag
ISO-DEP (ISO/IEC 7816-4
) 之上的ISO/IEC 14443-A
;
我有两个问题:
RFID 或 NFC 标签
我不明白为什么仿真标签是 NFC 标签。如果模拟标签基于ISO/IEC 14443-A
它是感应卡,并且据我了解感应卡的技术是 RFID。那么为什么这是 NFC 标签而不是 RFID 标签呢?技术上的区别是什么?
通信过程中的RFID和NFC部分在哪里
NFC 与 RFID (13.56 MHz) 兼容。我猜当标签被扫描时,ACR122U
它将确定它是 RFID 还是 NFC 标签。这可能会通过识别一些标志和/或初始化过程来完成。如果是 NFC 标签,它将使用ISO/IEC 18092
标准进行通信,如果是 RFID 标签,它将使用ISO/IEC 14443
.
但是如果仿真标签是建立在上面的NFC标签,ISO/IEC 14443
它就是NFC标签(ISO/IEC 18092
),但需要根据ISO/IEC 14443
标准进行控制。在初始化和通信过程中,什么是 RFID 部分(ISO/IEC 14443
),什么是 NFC 部分(ISO/IEC 18092
)?
我不知道我是否正确,但这让我感到困惑。
欢迎任何相关信息。
谢谢。