如何使用PEM格式的字符串创建java.security.cert.X509Certificate
实例? PEM格式的字符串是HTTP请求“SSL_CLIENT_CERT” header 值。
答案:
根据mgaert的回答,这是我在Scala中写的内容:
val cert = factory.generateCertificate(
new ByteArrayInputStream(
Base64.decodeBase64(
cert.stripPrefix("-----BEGIN CERTIFICATE-----").stripSuffix("-----END CERTIFICATE-----")
)
).asInstanceOf[X509Certificate]
最佳答案
将Base64解码为二进制,并用一些InputStream读取它,然后尝试
CertificateFactory cf = CertificateFactory.getInstance("X.509");
Certificate cert = cf.generateCertificate(is);