2

我有一个 UICC(由 Gemalto 提供),它有一些非常严格的 APDU 访问规则。我想从 Android 应用程序访问 UICC 上的小程序,但这些规则不允许我发送任何 APDU。

所以我需要改变这些规则。

我试过以下:

  1. 将“存储数据 - 存储 AR-DO”命令直接发送到 ARA 小程序 => 我得到状态字“安全状态不满意”

  2. 向颁发者安全域进行身份验证,向颁发者安全域发送 Install For Personalization 命令,然后通过 ISD 发送存储数据。=> 相同的结果,“不满足安全状态”。

难道我做错了什么?任何想法?我是否需要任何额外的身份验证、密码或密钥才能更改访问规则?一旦设置了访问规则,甚至可以更改它们吗?

4

2 回答 2

3

可以更改访问规则,您可以...

1.选择ARA小程序,然后通过SCP02进行身份验证。为此,您应该知道 ARA 小程序的相关安全域,当然还有密钥。

2.通过 install for personalization 命令,您在这种情况下所做的是正确的,但首先检查 ARA 是否与 ISD 或其他一些 SD 相关联。

可以随时更改 ARA 规则。

于 2014-11-28T13:05:23.420 回答
3
  • Security Status Not Satisfied只有在发送 APDU 命令之前,某些先决的认证条件不满足时,才会出现错误代码。

  • 更新 APDU 访问规则(即存储在 ARA 中的访问规则)需要正确authentication,如果不进行正确的身份验证,您将无法更新 ARA 小程序中的 AR,因此仅选择小程序并发送存储数据命令是不够的,您需要进行正确的身份验证,因为在这种情况下,一旦命令从任何终端或服务器路由到UICC(或 UICC 上存在的应用程序),则首先检查身份验证和完整性以验证命令是否来自经过身份验证的服务器或终端。如果身份验证失败,则 APDU 命令将失败并Security Status Not Satisfied出现错误,这在您的情况下正在发生。

  • 访问规则 (AR) 存储在 ARA 中,可以使用standardized Global Platform Secure Messaging或无线更新Remote Applet Management functionality,即您需要在安全通道协议 ( SCP02) 或的安全性下发送 APDU 命令(即存储数据) SCP80。有关这些协议的详细信息,请参阅Global PlatformETSI规范。

  • 正确认证后,发送Install[For Personalisation]命令到安全域,(一般AR小程序是关联的ISD,所以这里的安全域可能是ISD),然后发送Store Data命令改变ARA条目,因为前面的命令是Install[For Personalisation]所以下一个Store Data命令会路由到ARA Applet.

  • 请确保所有这些 APDU 命令都应在建立适当的安全通道后(在 情况下SCP02)或在适当的安全信封内(在情况下SCP80)进行传输。

谢谢,乐于助人。

于 2014-11-30T17:32:26.863 回答