如何在证书中获得子根证书?

时间:2013-12-11 22:44:34

标签: java x509certificate

我正在使用以下方法阅读证书文件:

 File certFile = new File("E:/mycert.cer");
 InputStream stream = new FileInputStream(certFile);
 CertificateFactory factory = CertificateFactory.getInstance("X509");
 X509Certificate certificate = (X509Certificate) factory.generateCertificate(stream);

如何使用java编程获取证书的根证书。?

1 个答案:

答案 0 :(得分:1)

  

如何在证书中获取子根证书?

你做不到。他们不在证书中。你需要:

  1. 拥有包含证书的流,而不仅仅是单个证书,
  2. 致电generateCertificates()而不是generateCertificate(),,以获得Collection<? extends Certificate>
  3. 致电generateCertPath(),以获得一个CertPath,,其中包含List Certificate的有序{{1}},您可以从中获取根,叶和中间体。