以下代码是获取安卓系统自带CA证书,可以用于Https通信
//将目标证书序列号转为BigInteger,方便判断
val serialNumber: BigInteger = BigInteger("目标证书序列号(serialNumber),16进制字符串", 16)
val keyStore: KeyStore = KeyStore.getInstance("AndroidCAStore")
keyStore.load(null, null)
val keyAliases: Enumeration<String> = keyStore.aliases()
while (keyAliases.hasMoreElements()) {
val alias = keyAliases.nextElement()
val cert2: X509Certificate = keyStore.getCertificate(alias) as X509Certificate
//循环判断证书是否为目标证书
if (serialNumber == cert2.serialNumber) {
//找到了对应序列号的证书,打印结果
Log.i("AndroidCAStore", "${cert2.issuerDN}")
}
}