我有一个UICC(由Gemalto提供),它有一些非常严格的APDU访问规则。我想从Android应用程序访问UICC上的applet,但这些规则不允许我发送任何APDU。
所以我需要改变这些规则。
我试过以下:
发送"存储数据 - 存储AR-DO"命令直接指向ARA applet =>我得到状态字"安全状态不满意"
向Issuer Security Domain进行身份验证,将Install For Personalization命令发送到Issuer Security Domain,然后通过ISD发送Store Data。 =>同样的结果,"安全状态不满足"。
我做错了吗?任何的想法?我是否需要任何额外的身份验证,密码或密钥才能更改访问规则?一旦设置完成后,甚至可以更改访问规则吗?
答案 0 :(得分:2)
您可以更改访问规则...
1.发送ARA小程序选择,然后通过SCP02进行身份验证,您应该知道ARA小程序的关联安全域,并且当然不知道密钥。
2.Via install for personalization命令你在这种情况下所做的是正确的,但首先检查天气ARA与ISD或其他SD相关联。
可以随时更改ARA规则。
答案 1 :(得分:2)
Security Status Not Satisfied
错误代码。
更新APDU访问规则(即存储在ARA中的访问规则)需要正确的authentication
,如果不进行正确的身份验证,则无法更新ARA applet中的AR,因此只选择applet和发送store data命令是还不够,您需要进行适当的身份验证,因为在这种情况下,一旦命令从任何终端或服务器路由到UICC
(或UICC上存在应用程序),就会检查第一次身份验证和完整性以验证命令来自经过身份验证的服务器或终端。如果身份验证失败,则APDU命令将失败,并出现Security Status Not Satisfied
错误,这种情况正在发生。
访问规则(AR)存储在ARA中,可以通过standardized Global Platform Secure Messaging
或Remote Applet Management functionality
进行无线更新,即您需要发送APDU命令(即存储数据)在安全通道协议(SCP02
)或SCP80
的安全性下。有关这些协议的详细信息,请参阅Global Platform
和ETSI
规范。
经过适当的身份验证后,将Install[For Personalisation]
命令发送到安全域,
(通常AR小程序与ISD
相关联,因此安全域可能是ISD),然后发送Store Data
命令来更改ARA条目,因为前面的命令是Install[For Personalisation]
所以next Store Data
命令将路由到ARA Applet
。
请确保在建立适当的安全通道(在SCP02
的情况下)或在适当的安全包络内(在SCP80
的情况下)所有这些APDU命令都应该传输。< / p>
谢谢,乐意为您服务。