我想阅读android中的证书。
我使用下面的代码和代码在PC中工作。
try {
PEMParser pp = new PEMParser(new InputStreamReader(
new FileInputStream("C:\\Certs\\mmdt.crt")));
Object o = pp.readObject();
X509CertificateHolder mmdtCert = (X509CertificateHolder) o;
pp.close();
System.out.println(mmdtCert.getSubjectPublicKeyInfo() + " Here");
} catch (Exception e) {
e.printStackTrace();
}
但在android中我得到以下错误:
07-06 16:24:20.989: W/System.err(2949): java.lang.ClassCastException: org.bouncycastle.util.io.pem.PemObject
答案 0 :(得分:1)
我找到了答案,但我不删除这个以供其他人使用。
我找不到问题的原因,但我找到了一个新的解决方案。
CertificateFactory factory = CertificateFactory.getInstance("X.509");
X509Certificate x509Server;
ByteArrayInputStream bias = new ByteArrayInputStream(certBytes);
x509Server= (X509Certificate) factory.generateCertificate(bias);