如何使用Chrome的CRL集(或某些主CRL列表)作为CRL文件?

Modified on: Fri, 29 Mar 2019 19:20:02 +0800

我正在寻找一个主CRL列表。我发现最接近的是Chromium项目的CRLSets。我使用crlset-tools来获取crlset(crlset fetch > crl-set)然后转储序列号(crlset dump crl-set),所以我看到这样的东西:

f24196ae94078667348f02e8e37458a3a6e6aad1e0b0dc610118cce721427bfc 03fb3b4d35074e 03fbf94a0e6c39 04097214d6c97c 0442c6b3face55 ....

我希望能够传递给openssl或curl(使用openssl)一个CRL文件,其中包含所有不良连续出版物的主列表。例如,我不想仅传递verisign的crl,而是希望所有内容都传入。我认为我可以使用crlset执行此操作,但我不认为格式是兼容的。我尝试了openssl crl -inform DER -text -in crl-set,但它说:

f24196ae94078667348f02e8e37458a3a6e6aad1e0b0dc610118cce721427bfc
  03fb3b4d35074e
  03fbf94a0e6c39
  04097214d6c97c
  0442c6b3face55
  ....

如果有人对如何做我正在谈论的事情有任何想法或有任何创造性的方法,请告诉我。感谢

作者:test

最佳答案

这可能是不可能的,至少以你想要的形式。

考虑到在Chrome的CRLsets中,(可能)有来自多个 CA的多个撤销证书。包含来自多个 CA的证书的单个CRL文件称为“间接CRL”。间接CRL支持不足;请参阅此处here; OpenSSL可能无法做到这一点。

此外,正如@bentek所提到的,看起来CRLsets格式不兼容。具体来说,CRLsets格式不包含所有必需的CRL字段;请参阅RFC 5280,第5.1节。 CRLsets(根据其文档)包含颁发证书的主题公钥信息的SHA-256哈希值,以及来自该颁发证书的已撤销证书的证书序列号。没有足够的信息来重建直接 CRL(每个CA的一个CRL文件),遗憾的是,如果我们想要的话。恕我直言,最大的缺失/遗漏是撤销证书颁发者的名称(DN)。 CRLsets为我们提供了“指纹”(SHA-256 SPKI哈希),但考虑到互联网的范围,将指纹映射到相关证书的DN并不是一件容易的事。


相关问答

添加新评论