首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >沿着证书链纠正CRL和OSCP URI

沿着证书链纠正CRL和OSCP URI
EN

Security用户
提问于 2020-04-05 15:02:34
回答 1查看 1.7K关注 0票数 1

仅仅是由于我自己的网络中的私有兴趣和使用,我正在使用openssl创建一个证书链(根CA→中间CA→服务器证书)。我希望证书链是可追踪的,并且能够撤销证书。

目前,我还不确定在创建证书时应该设置哪些CRL分发点( openssl语音中的crlDistributionPoints)和OSCP (authorityInfoAccess = OCSP;URI: ...authorityInfoAccess = OCSP;caIssuers: ...)。检查一些公共网站的证书,在我看来,以下是一条路。那么,请你检查一下我是否是对的?

根CA证书:

  • CRL:根CA CRL或根本没有
  • OCSP URI:根CA的OCSP URI或根本没有
  • CA颁发者:根CA证书的URI或根本没有

中级CA证书:

  • 根CA CRL
  • OCSP URI:根CA的OCSP URI
  • CA发布者:根CA的URI

服务器证书:

  • 中间CA CRL
  • OCSP URI:中间CA*的OCSP URI
  • CA发布者:中间CA的URI

*一个OCSP响应者似乎可以处理根和中间CA的OSCP请求。如果是这样的话,我也可以使用根CA的OSCP URI,对吗?

因此,每个证书数据都必须指向“一个级别”,到可以检查其自身有效性的位置。对吗?

提前谢谢你!

EN

回答 1

Security用户

回答已采纳

发布于 2020-04-08 05:54:38

所有这些字段对于根证书都没有任何意义,因为应用程序已经知道了,而撤销它的唯一方法就是修改应用程序。没有比根CA更可信的CA来证明根是可信的,或者它不应该再被信任(即撤销)。

所有这些字段都是可选的,基准需求定义了公开信任的证书颁发机构所需的内容,只需要中间CA证书的CRL分发点。

CRL分布点

对于CRL分发点,如果只指定uri,则认为指向由同一颁发机构签名的CRL,如果证书被撤销,CRL将包含对此证书的引用。不需要证书颁发机构颁发的所有证书都具有相同的CRL分发点,您可以分割它们,这样CRLs就不会增长太多(例如,每发出1000份证书,就会更改CRL分发点,而该URL上的CRL只包含对这1000份证书的引用)。

但是,除了CRL分发点中的URL之外,还可以指定一个crlIssuer字段,以指定CRL将由不同的CA签名。因此,您还可以指向叶子证书和中间证书中的相同的CRL,并在叶证书中指定crlIssuer是根证书,尽管这需要使用根证书来撤销叶.

OCSP URI

对于OCSP URI,它应该指向可以为证书提供OCSP响应的OCSP服务器。与CRLs类似,您不需要对由给定CA颁发的所有证书使用相同的服务器,并且可以对其进行分割,尽管这并不常见,因为OCSP的回答不会随着CA颁发的证书数量的增加而增加。您还可以指向与其他证书使用的URL相同的URL。OCSP查询中提供了用于检查OCSP的证书的标识符,因此即使服务器处理多个CA,也可以使用正确的答案进行应答。

CA发行者

如果存在,CA颁发机构必须指向包含颁发证书的证书的url,尽管该url可以包含多个证书,这些证书编码为仅为证书的CMS消息。不过,我不知道这种可能性经常被使用。

参考资料

这在RFC5280 ( CRL分发点的第4.2.1.13节第4.2.2.1节用于权限信息访问,包括OCSP和CA发行者)中都有记录。

票数 2
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/229284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档