【发布时间】:2023-01-05 12:07:16
【问题描述】:
我正在使用 XAMPP 8.1.12 来测试客户端身份验证。只有拥有证书的Android 才能向服务器发送http 请求。
由于 XAMPP 默认启用 https,所以我将 C:\xampp\apache\conf\ssl.crt\server.crt 复制并安装到 Android 并使用此代码获取我的证书,我可以找到很多证书,但没有一个是我安装的证书。
val ks: KeyStore = KeyStore.getInstance("AndroidCAStore")
//val ks: KeyStore = KeyStore.getInstance("PKCS12") //no cert found
//val ks: KeyStore = KeyStore.getInstance("crt") //no cert found
//val ks: KeyStore = KeyStore.getInstance("cer") //no cert found
//val ks: KeyStore = KeyStore.getInstance("cert") //no cert found
//val ks: KeyStore = KeyStore.getInstance(KeyStore.getDefaultType()) //no cert found
ks.load(null, null)
val aliases: Enumeration<String> = ks.aliases()
while (aliases.hasMoreElements()) {
val alias = aliases.nextElement() as String
val cert = ks.getCertificate(alias) as X509Certificate
Log.v("listhere", cert.issuerDN.name)
}
如何获取已安装的证书并在 okhttp 中使用它进行客户端身份验证?
【问题讨论】:
标签: android ssl ssl-certificate certificate okhttp