【问题标题】:Is it possible to revoke a valid SSL certificate是否可以吊销有效的 SSL 证书
【发布时间】:2016-05-31 21:05:32
【问题描述】:

我们的客户要求我们迁移一系列面向内部的 Java 项目,以使用 SSL 进行可能敏感的 REST 调用。他们计划在内部生成和签署证书。

我担心万一证书被泄露,应用程序可能希望撤销其证书。

是否可以在不更改主节点的情况下以编程方式撤销证书?看起来哈希签名一旦建立,就没有办法撤销了,但是像威瑞信这样的机构是怎么做的呢?

【问题讨论】:

  • 所有这些证书都是自签名证书,还是您正在创建内部 CA 并使用它们来签署最终实体证书?另外,您熟悉 CRL 吗? en.wikipedia.org/wiki/Revocation_list
  • @Rahul 我们正在创建一个内部 CA 和 master,用于生成和签名

标签: ssl tls1.2


【解决方案1】:

证书包括作为其信息的一部分如何检查吊销,通常是 CRL(证书吊销列表)或在线服务 OCSP(在线证书状态协议)

证书服务提供商通过将证书包含在 CRL 及其 OCSP 服务中来撤销证书。当客户想要检查证书的吊销时,下载 CRL 以检查或执行 OCSP 请求

要做到这一点,您需要: 1) 拥有 OCSP 服务和/或 CRL 2) 在自行生成的证书中包含 OCSP/CRL 的 URL。 3) 撤销证书,包括它们在您的撤销服务列表中

例如,对于安全的 HTTPS 网站,浏览器负责执行撤销检查。不过Google decided in 2012 to default Chrome not to check for certificate revocation on non-EV certificates

因此,请注意,控制撤销是客户的责任,不能这样做

【讨论】:

    【解决方案2】:

    在不删除签署该证书的证书颁发机构的情况下撤销证书是使用证书的基础之一。

    如上所述,有两种方法可以检查证书是否被吊销:检查专用服务器 (OCSP) 或检查您经常下载的静态文件 (CRL)。

    您可以使用 openssl 轻松设置测试 OCSP 服务器。 您还可以使用 openssl 生成 CRL 文件。 CRL 文件看起来有点像证书或 csr(通常保存在 base 64 中)。您可以在此处使用在线 CRL 解码器: http://developerutils.com/CRLDecoder.php

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-13
      • 2012-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多