2

我想在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
4

1 回答 1

1

我找到了答案,但我不会删除它以供其他人使用。

我找不到问题的原因,但我找到了一个新的解决方案。

CertificateFactory factory = CertificateFactory.getInstance("X.509");
X509Certificate x509Server;
ByteArrayInputStream bias = new ByteArrayInputStream(certBytes);
x509Server= (X509Certificate) factory.generateCertificate(bias);
于 2013-07-07T04:11:49.490 回答