在 Java 中比较 2 个 x509 证书



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

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

请指导我如何验证生成的 X509 与提供给我的 X509 一样。

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

请参阅javadoc。

反其道而行之。将证书转换为字节(X509Certificate.getEncoded()),然后比较字节。

但这个问题毫无意义。如果字节数组是生成证书的证书工厂的输入,则它们不可能不同。

最新更新