使用java bouncing castle验证证书链

时间:2014-09-29 09:59:18

标签: java validation certificate x509certificate

我想验证将导入我的应用程序的证书链。我不知道怎么做。

我的同事告诉我,我必须使用Bouncing城堡进行验证。我看了几个例子,但仍然没有任何进展。

我有一个List<X509Certificate>,其中包含从用户界面导入的所有证书,以及PrivateKey

您能否告诉我如何使用Bouncing castle验证证书链。

1 个答案:

答案 0 :(得分:1)

您可以使用java.security.cert.CertificateFactory来验证证书链。

InputStream inStream = ByteArrayInputStream(<data>);
CertificateFactory cf = CertificateFactory.getInstance("X.509");
CertPath cp = cf.generateCertPath(inStream);
List<Certificate> certs = cp.getCertificates();

certs现在包含证书链。 certscerts[0])中的第一个条目包含证书,以下证书是链。

certs中的最后一个条目是根证书,应与应用程序中现有的证书进行比较。

如果无法构建证书路径,则上述代码将抛出CertificateException