Android中央密钥库

Android中央密钥库,第1张

Android中央密钥

不支持此功能,可能会在将来的版本中破坏等等,但是这里是获取受信任证书列表的方法。您不能添加没有root访问权限的新服务器,因为/
system是只读安装的。但是,如果您确实具有root用户访问权限,则可以使用常规

KeyStore
API添加证书。

KeyStore ks = KeyStore.getInstance("BKS");InputStream is = new FileInputStream("/etc/security/cacerts.bks");ks.load(is, "changeit".toCharArray());List<X509Certificate> certs = new ArrayList<X509Certificate>();Enumeration<String> aliases = ks.aliases();while (aliases.hasMoreElements()) {  String alias = aliases.nextElement();  X509Certificate cert = (X509Certificate) ks.getCertificate(alias);  certs.add(cert);}

编辑:这应该与需要硬编码密钥库的路径一起工作:

TrustManagerFactory tmf = TrustManagerFactory         .getInstance(TrustManagerFactory.getDefaultAlgorithm());tmf.init((KeyStore) null);X509TrustManager xtm = (X509TrustManager) tmf.getTrustManagers()[0];for (X509Certificate cert : xtm.getAcceptedIssuers()) {    String certStr = "S:" + cert.getSubjectDN().getName() + "nI:"  + cert.getIssuerDN().getName();    Log.d(TAG, certStr);}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5501447.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-12
下一篇2022-12-13

发表评论

登录后才能评论

评论列表(0条)

    保存