在Android ICS手机上,我导入了包含私钥和证书的PKCS#12文件。 然后我跑
KeyChain.choosePrivateKeyAlias(this, this, new String[] { "RSA" }, null, null, -1, null);
在证书选择对话框中,我选择刚安装的那个。
在'alias'回调中,我执行以下操作:
public void alias(final String alias) {
...
protected Boolean[] doInBackground(Void... arg0) {
...
PrivateKey pk = KeyChain.getPrivateKey(ctx, alias);
Log.d(TAG, "EncodedPrivateKey: " + pk.toString());
它为我提供了私钥的全部内容。
这是否意味着用户(在证书选择对话框中)允许的任何应用程序都可以读取从.pfx文件安装的任何私钥?
以下方案是否可以通过标准Android手段 - “管理员”安装.pfx文件和cert。+私钥,并且读取它的权限仅限于一个特定的应用程序?