在Java中比较两个X509证书

6

我收到了一个字节数组和一个X509证书。使用以下代码,我可以从字节数组生成X509证书。

CertificateFactory certificatefactory = CertificateFactory.getInstance("X.509");
InputStream in = new ByteArrayInputStream(bytes);
X509Certificate cert = (X509Certificate)certificatefactory.generateCertificate(in);

请指导我如何验证生成的X509证书与提供给我的证书相匹配。

如果你在Wikipedia上查找X.509,他们会向你展示如何验证它。 - azurefrog
2个回答

8

只需使用 certificate.equals(otherCertificate)equals() 方法将正确比较它们,每个证书子类都有特定的实现。

请参见javadoc


4
把证书转换成字节(X509Certificate.getEncoded()),然后比较这些字节,就能达到相同的效果。但这个问题本身是没有意义的。如果字节数组是用于生成证书的证书工厂的输入,它们不可能不同。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接