gpt4 book ai didi

java - 如何使用 DSS 获取 X509 证书的吊销状态?

转载 作者:行者123 更新时间:2023-12-02 03:28:04 26 4
gpt4 key购买 nike

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

我正在使用这段代码通过 CRL 和 OCSP 验证证书。我想查明 toValidateToken 是否已被撤销。

CertificateToken 类具有 isSignatureValidisExpiredisValidOn 等方法,但没有与吊销相关的方法。

我在其他论坛中找到了 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();

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

最佳答案

Whatever the DSS framework is ...这是一篇如何使用 CRL 和 OCSP 检查有效性的文章:How do I check if an X509 certificate has been revoked in Java?

下面的标准是 PKCS#7,定义于 RFC2315 。加密消息语法定义了所谓的属性,这些属性可以是经过散列处理并随后进行签名的数据(已签名),也可以位于签名旁边(未签名)。

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

        commonCertificateVerifier.setCrlSource(new OnlineCRLSource());
commonCertificateVerifier.setOcspSource(new OnlineOCSPSource());

关于java - 如何使用 DSS 获取 X509 证书的吊销状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56899571/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com