ssl - DefaultCertCheckMode 有什么用?

标签 ssl winapi https

HTTP_SERVICE_CONFIG_SSL_PARAM 结构定义了一个名为 DefaultCertCheckModeDWORD 字段。由于我对 SSL 证书只有一点背景,我想了解该特定字段有什么影响……什么是客户端证书吊销检查?在以编程方式为某些 URL 预留注册 SSL 端口绑定(bind)时,我可以安全地忽略该字段吗?

最佳答案

在验证证书的过程中,除了验证签名、日期和父证书之外,您可以做的一件事是检查证书是否已被吊销。你会这样做的方式是:

  • 每个证书都应该嵌入一个指向其证书撤销列表 (CRL) 的 URL
  • 您将从 URL 获取此 CRL 或:
  • 您将访问 CRL 的缓存副本
  • 然后您将在 CRL 中查找证书的序列号。如果找到,则证书已被吊销,必须作废。

关于DefaultCertCheckMode ,它的可能值是:

  • 0:执行上述吊销检查。
  • 1:不执行吊销检查。
  • 2:根据缓存的 CRL 执行撤销检查。
  • 4:执行吊销检查并使用 DefaultRevocationFreshnessTime 刷新缓存(这表示检查更新的 CRL 之前的秒数)。
  • 0x10000:不执行使用检查。

是否要使用此设置取决于您的服务器配置、CRL 的可用性、它们是否实际维护等。

关于ssl - DefaultCertCheckMode 有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48623617/

相关文章:

c - 创建 ListView 时的奇怪效果

javascript - 即使使用 HTTPS,WebRTC 屏幕捕获仍然不安全

iphone - 无法信任 iphone 上的自签名证书

ssl - 使用 Letsencrypt 为 bip(IRC 代理)生成 SSL 证书

objective-c - ObjCMongoDB 是否支持 SSL 连接?

Azure 应用服务无法验证 .pfx 文件 : Certificate failed validation because it could not be loaded

windows - 如何显示带有选定文件的资源管理器?

python - Twisted Python 和 TLS - 客户端代码需要什么来握手? (我以为只是公钥!)

winapi - 禁用 GPU 加速

Django SSL 仅适用于某些页面