问题标签 [certificate-revocation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ssl - 使tomcat中的“crlFile”属性动态化
为了在服务器端执行客户端证书身份验证(SSL)以进行撤销,我们可以在 tomcat 连接器中添加属性 crlFile。但是这个过程是静态的,这意味着如果该位置的 crlFile 更新,tomcat 不会选择新的 CRL,它仍然绑定到旧的 CRL 文件。Tomcat 需要重新启动才能选择 CRL 文件中的新更改。
我这里有两个问题,
1)如何使上述过程动态化(如果该路径中的 CRL 文件已更新,则无需重新启动即可选择更改)?
2)如何及时从CA获取更新的CRL文件以及在tomcat中配置CDP(CRL分发点)的位置,以便如果CA更新CRL文件,它将文件(有一些到期时间)下载到本地机器(服务器)?
c# - 在 C# 的 BouncyCastle 库中通过 x509Crl.IsRevoked() 方法检查证书?
我正在尝试使用其吊销列表(crl 文件)检查证书。在 BouncyCustle 库中有一个方法x509Crl.IsRevoked()
,应该用于此目的。关键是它获取x509Certificate
对象作为参数,但我不明白如何创建这个x509Certificate
对象。我用于DotNetUtilities.FromX509Certificate()
从System.Security.Cryptography.X509Certificates.x509Certificate2
对象转换为Org.BouncyCastle.X509.X509Certificate
对象,但我遇到了问题 - 方法IsRevoked()
总是返回true
- 对于我测试的所有 crl。
问题:如何Org.BouncyCastle.X509.X509Certificate
直接从二进制创建对象而不转换 from System.Security.Cryptography.X509Certificates.x509Certificate2
?
我用它的 crl 文件检查证书的代码:
ssl - 将 CRL(证书撤销列表)url 添加到证书
我正在使用以下命令生成根 CA:
然后我使用以下命令创建签名用户证书(不使用中间证书):
1)为用户生成密钥
2) 创建企业社会责任
3) 使用根证书签署密钥
4)生成.p12文件
注意 - 我已将 crlDistributionPoints = URI: http://localhost:8000/crl/distripoint.crl.pem 添加到 openssl.cnf 以及以下选项:
注意-我使用本教程生成了 distribution.crl.pem
windows - Windows LDAP 客户端 - 通过 CRL 启用撤销
我正在使用 Windows LDAP 客户端 DLL (wldap32.dll) 连接到远程 LDAP 服务器。连接通过 TLS(端口 636 上的 LDAPS 协议)完成。
我的问题是启用 CRL 撤销。我发现可以使用以下方法为 LDAP 会话设置 schannel 选项:
ldap_set_option(LDAP_OPT_SCH_FLAGS, &uLong);
所以我尝试将 SCH_CRED_REVOCATION_CHECK_CHAIN 选项传递给上述调用(当然是在 ldap_bind_s 之前),但是在检查了 wireshark 流量之后,我看到效果是客户端正在从服务器请求 OCSP 状态,这似乎失败了( TLS 握手被中止,因为没有返回 OCSP 状态)但是,服务器证书确实包含 CDP,我希望客户端使用它通过指定的 CRL 执行吊销检查,而不是通过 OCSP。
这只是 schannel 的限制还是我做错了什么?
谢谢
阿米特
python-3.x - 将证书吊销列表 (CRL) 文件从 .crl 转换为 .pem 扩展名 - Python 3
我正在开发一个 Python 3.4 应用程序组件,它检查 URL 的证书是否存在于其 CA 提供的 CRL 中。我正在使用加密包来加载证书以及 CRL。以下是代码部分;
该代码从站点“crlURL”下载一个 CRL 文件并将其作为 crlFile 存储在本地。该文件具有 .crl 扩展名。该文件必须转换为 PEM 格式(并分配给 pem_crl_data)才能获得 crl 对象“crl”。如何进行转换(甚至不将文件保存在本地)?
openssl - openssl CLI - 验证整个认证链的 CRL
我正在使用 OpenSSL 来验证自定义 PKI 中的签名代码。如何验证证书层次结构的每个节点的 CRL。
我的层次结构是:RootCA -> SubCA1 -> SubCA2 -> EndUser。我可以验证一个深度链的 CRL:
但是,当我尝试使用多个 subCA 实现相同的目标时,CRL 验证失败:
是否有可能实现 CRL 的这种多深度验证?我也尝试过使用-check_crl_all,但它给出了同样的错误。
android - Android:我应该在哪里查找证书吊销列表?
我想获取在 Android 设备上下载的所有已撤销证书列表的列表?我知道这个类允许您检查证书是否被吊销,但我想获得吊销证书的整个列表。可能吗?Android 是存储这样的列表还是使用 OCSP 来检查证书?
c# - C# X509Certificate2.Verify 无撤销测试
我尝试使用 X509Certificate2.Verify() 函数来检查证书链是否有效。验证函数返回 false,ChainElementStatus 返回“RevocationStatusUnknown”。
有没有办法在不检查 RevocationStatus 的情况下使用验证功能?没有互联网连接就无法检查 RevocationStatus?是否有其他功能可以在没有 RevocationStatus 的情况下检查链和证书?
一个肮脏的解决方案是检查 RevocationStatus 是否是 element.ChainElementStatus 中的唯一元素。
我已经使用了 X509RevocationMode.Offline 和 IgnoreCertificateAuthorityRevocationUnknown。
来自:X509Certificate2.Verify() 方法的代码始终为有效证书返回 false
结果:
链信息 链撤销标志:ExcludeRoot 链撤销模式:离线 链验证标志:IgnoreCertificateAuthorityRevocationUnknown 链验证时间:19.11.2018 07:53:31 链状态长度:1 链应用策略计数:0 链证书策略计数:0
链元信息 链元数:2 链元同步?错误的
元素颁发者名称:CN=TestRootCA 元素证书有效期至:01.01.2019 00:00:00 元素证书有效:False 元素错误状态长度:1 元素信息:元素扩展数:5
RevocationStatusUnknown Die Sperrfunktion konnte keine Sperrprüfung für das Zertifikat durchführen。
元素颁发者名称:CN=TestRootCA 元素证书有效期至:01.01.2019 00:00:00 元素证书有效:True 元素错误状态长度:0 元素信息:元素扩展数:2
ssl - 如何将条目插入证书吊销列表
我有一个现有的 CRL,我想通过 SSLCARevocationPath 指令与我的 apache 实例一起使用。为了测试它并确保它正常工作,我想在 CRL 中为我自己的 PIV 证书信息添加一个条目。此条目将如下所示:
我拥有的 CRL 文件本质上是一个这样的条目列表。但是,我似乎找不到一种方法来使用 openssl 之类的东西将我的条目插入到文件中,并且无法直接在 Notepad++ 中编辑该文件。有没有办法在不需要生成新的 CRL 的情况下做到这一点?
spring-boot - spring boot 不接 custmize trustManager
我基于spring boot 2.0.3在webApi上工作,并且已经通过application.properties启用了带有自签名证书的ssl,我添加了一个新功能来验证本地CRL和自定义的trustManager,但是spring boot没有选择代码。
你能帮忙找出问题所在吗?如果有人可以展示如何检查本地 CRL 文件,那也很有帮助。
像这样配置属性。
像这样注入定制的信任管理器: