Android开发如何获取系统默认Trust Store(信任存储)
获取Android系统默认Trust Store的实现方式
你可以通过Android平台专属的AndroidCAStore类型KeyStore直接加载系统默认信任存储,核心代码如下:
public KeyStore getSystemDefaultTrustStore() throws Exception { // 指定Android系统信任存储的专有类型 KeyStore systemTrustStore = KeyStore.getInstance("AndroidCAStore"); // 传入null作为参数即可加载系统预置+用户安装的所有可信CA证书 systemTrustStore.load(null); return systemTrustStore; }
拿到返回的systemTrustStore对象后,直接传入你现有代码中的getCATrustManager方法即可完成CRL校验逻辑的对接。
补充说明
- 该方案适配Android 4.0(API 14)及以上版本,覆盖目前市面上所有主流活跃设备
- 加载的默认信任存储同时包含系统预装CA证书和用户手动安装的可信CA证书,如果你需要仅信任系统预置证书,可以遍历KeyStore的条目过滤别名:系统CA的别名前缀为
system:,用户安装CA的别名前缀为user:,筛选保留前缀为system:的条目即可
内容的提问来源于stack exchange,提问作者muilpp
相关产品推荐
相关产品推荐

