我得到了一个字节数组和一个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()
),然后比较字节。
但这个问题毫无意义。如果字节数组是生成证书的证书工厂的输入,则它们不可能不同。