问题标签 [secure-element]

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 回答
1052 浏览

android - Android Open Mobile API 发布难点

我正在使用 SDK 中的“org.simalliance.openmobileapi.jar”文件。我将它复制到我的 libs 文件夹并添加了这样的依赖项

案例#1:工作正常(在调试模式下)

在应用程序 Gradle 文件中,我有:

案例 #2:不工作(在发布模式下 - 没有 minifyEnabled)

在应用程序 Gradle 文件中,我有:

在情况#2我得到以下异常:

(java.lang.SecurityException:访问控制执行器:不允许 APDU 访问!)

什么可能导致问题?

0 投票
1 回答
4334 浏览

android - 在 android 上使用选定的 UID 模拟 nfc 卡

我想问 2 个关于 nfc card emulate 的问题:

  1. 我可以模拟 nfc 卡包括我选择的 uid 吗?

  2. 我阅读了HCE,但不明白 HCE 和带安全元件的卡仿真有什么区别?

安全元件有什么缺点?我无法控制卡数据/uid 和 HCE 我可以吗?

0 投票
1 回答
224 浏览

android - android中的HCE vs SecureElement路由

我正在研究加入 SecureElement 和 HCE (HostCardEmulation) 的功能并处理来自外部源的 APDU 命令的应用程序。

根据 SecureElement 的可用性,我想决定是否所有 APDU 都从 NfcController 处理到 SecureElement(如果 SecureElement 存在,则默认选项),如果不存在,我希望 HCE 负责 APDU 处理。

这是我的问题,这种情况可能吗?

根据https://developer.android.com/guide/topics/connectivity/nfc/hce.html 我认为只有在 SecureElement 和 HCE 的辅助工具不同时才有可能。否则,如果屏幕打开,我将不得不自己选择使用哪个服务(HostApduService 或 OffHostApduService),或者如果屏幕关闭,android 将使用前台服务来处理 APDU。

如果两个频道的 AID 相同怎么办?有人遇到过这种情况吗?

0 投票
1 回答
264 浏览

android - TelephonyManager.iccTransmitApduBasicChannel 数据参数格式

我正在使用 Telephony Manager 将 APDU 命令传输到 SIM。我有 MODIFY_PHONE_STATE 权限。

我正在使用以下功能:

我想知道参数的格式data。它是 int 还是 hex 或其他格式?

0 投票
1 回答
162 浏览

android - 安全硬件存储在哪里?

我一直在搜索有关 android 安全架构的信息,并且我知道新的 android 设备在 TrustZone (TEE) 中使用硬件支持的 keyStore 来存储密钥。问题是这个安全硬件存储在哪里,他们怎么称呼这个安全硬件?

0 投票
1 回答
1672 浏览

android - 了解如何访问嵌入式安全元素

我一直在看这个博客https://nelenkov.blogspot.com/2012/08/accessing-embedded-secure-element-in.html,这真的很好但是我无法理解如何添加 com.android .nfc_extras 到我的项目。此外,etc/nfc_access.xml 文件的工作方式。如果有人可以帮助我突破这个过程,那就太好了,因为我是新手。

0 投票
0 回答
180 浏览

android - 是否可以通过 Android 中的反射来获取系统类?

我对能够在 Android 中与 SIM 卡进行通信很感兴趣。我知道只有具有 MODIFY_PHONE_STATE 权限的系统应用程序或在 API >22 ( https://source.android.com/devices/tech/config/uicc ) 上具有运营商特权的应用程序才能调用 TelephonyManager.iccOpenLogicalChannel() 方法和与 SIM 卡进行进一步的 APDU 交换。然而,有一个很棒的项目可以添加开放接口来与安全元件、SIM 卡等进行通信,称为 SEEK-for-android ( https://github.com/seek-for-android/pool )。最大的问题是您必须自己手动修补操作系统才能使用它。因此,当我调试应用程序时,我在 logcat 输出中看到了这一行:

您可以在堆栈跟踪中看到 org.simalliance.openmobileapi.* 类。所以看来我的设备(三星 Galaxy J2 - SM-G532F)实际上已将此补丁应用于操作系统!现在我的问题是:我能以某种方式使用它们吗?我试图通过调用来实例化它,Class.forName("org.simalliance.openmobileapi.uiccterminal.UiccTerminal") 但我没有成功并收到 ClassNotFoundException。那么是否可以实例化和使用这些类?也许我错过了什么?先感谢您

0 投票
1 回答
298 浏览

android - Android 虚拟设备中的 OMAPI

最近,我阅读了有关智能卡 API(开放移动 API)的信息,并发现并非每个设备都可以使用安全元件,因为智能卡 API 并非在每个设备上都实现。那么,如果我没有物理 SIM 卡,谁能说我是否可以使用 Android Emulator SIM 卡的安全元件?

0 投票
1 回答
1135 浏览

java - 如何在 SEservice 中使用 Executor (Open Mobile API for Android 9.0)

我正在研究 NFC,目前尝试为 Android 9.0 中内置的 Open Mobile API 编写代码,但不了解在 SEService 中传递 Executor 参数的方式。

问题发生在:

第一个和最后一个参数接受了中间一个执行器出现错误!

java.util.concurrent.Executor 这个

如何通过这个?

0 投票
0 回答
475 浏览

android - 有多少 Android 6+ 设备具有 TEE/SE?

Android 6 及更高版本允许您查询密钥是否使用安全硬件(TEE 或 SE)存储。

根据分发仪表板,我看到目前 71% 的设备运行的是 Android 6 或更高版本。但是,我想知道这些设备中有多少确实具有 TEE 或 SE,因此,isInsideSecureHardware在密钥上运行时能够返回 true 吗?