0

我正在尝试使用 DSS 框架根据其吊销状态验证 X509 证书,您在哪里找到它?

我正在使用这段代码来验证带有 CRL 和 OCSP 的证书。我想知道是否toValidateToken已被撤销。

CertificateToken类有类似isSignatureValid, isExpired,的方法isValidOn,但没有与撤销相关的方法。

isRevoked()在其他论坛找到了一个方法,但我没有。我确定我已经安装了所有依赖项。

CommonCertificateSource adjunctCertificateSource = new CommonCertificateSource();

// Firstly, we load the certificate to be validated
CertificateToken toValidate = getCertificateFromSignature(documentPath);
CertificateToken toValidateToken = adjunctCertificateSource.addCertificate(toValidate);

//Configure the certificate verifier using the trust store and the intermediate certificates
//OnlineOCSPSource and OnlineCRLSource will invoke the OCSP service and CRL
//distribution point extracting the URL  from the certificate
CertificateVerifier certificateVerifier = new CommonCertificateVerifier();
certificateVerifier.setAdjunctCertSource(adjunctCertificateSource);
certificateVerifier.setCrlSource(new OnlineCRLSource());
certificateVerifier.setOcspSource(new OnlineOCSPSource());

//Perform validation
CertificatePool validationPool = certificateVerifier.createValidationPool();
SignatureValidationContext validationContext = new SignatureValidationContext(validationPool);

validationContext.addCertificateTokenForVerification(toValidateToken);
validationContext.validate();

结果,我只需要一个简单的真/假。

4

1 回答 1

0

无论 DSS 框架是什么......这是一篇如何使用 CRL 和 OCSP 检查有效性的文章:如何检查 X509 证书是否已在 Java 中被吊销?

下面的标准是 PKCS#7,在RFC2315中定义。加密消息语法定义了所谓的属性,这些属性可以是数据(签名),经过散列,然后对其进行签名,或者位于签名旁边(未签名)。

发布的附加问题似乎包含添加证书验证数据(OCSP 和 CRL):

        commonCertificateVerifier.setCrlSource(new OnlineCRLSource());
        commonCertificateVerifier.setOcspSource(new OnlineOCSPSource());
于 2019-07-13T18:35:43.727 回答