【发布时间】:2015-08-07 16:58:30
【问题描述】:
只是想知道是否有人知道方法 isRevoked 从 X509CRL 类背后的逻辑是什么。
Java documentation 中仅表示此方法验证作为参数传递的证书对象是否在列表中,但没有说明它比较的字段(序列号、颁发者 DN 等)。
Certificate cert = CertificateFactory.getInstance("X.509").generateCertificate(new ByteArrayInputStream(rs.getString("x509_certificate").getBytes("utf-8")));
CertificateFactory certFactory = CertificateFactory.getInstance("X.509");
URL crlURL = new URL("http://www.certificadodigital.com.br/repositorio/lcr/serasarfbv2.crl");
InputStream crlStream = crlURL.openStream();
X509CRL crl = (X509CRL) certFactory.generateCRL(crlStream);
System.out.println(crl.getIssuerDN());
if (crl.isRevoked(cert) {
System.out.println("revoked");
}
基本上我要做的是创建一个批处理作业来加载一些 CRL 并检查我在数据库中拥有的证书是否被吊销,然后将它们标记为已吊销。
提前致谢。
【问题讨论】: