列出Android手机中所有证书的别名

3

我希望我的安卓应用程序能够列出手机上安装的证书。如果手机中存在某个证书,我想允许访问特定资源。但是AndroidKeyStore没有给我任何别名(0个条目)。这是否可能实现?是否有类似keytool的工具可以列出安卓应用程序中的证书? 谢谢您的帮助。

1个回答

2

可以使用AndroidCAStore来列出系统和用户证书。

KeyStore ks = KeyStore.getInstance("AndroidCAStore");
ks.load(null, null);
Enumeration<String> aliases = ks.aliases();

但是如果你想访问证书并像我一样使用他们的私钥,可以使用

KeyChain.choosePrivateKeyAlias(...)

这个超棒的链接会给你答案。


你如何保证所有证书都在AndroidCAStore中?它们不可能在其他KeyStores中吗?另外,你提供的链接已经失效了。 - Matt

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接