如何使用 Chrome 的 CRL 集(或某些主 CRL 清單)作為 CRL 檔案?

如何使用 Chrome 的 CRL 集(或某些主 CRL 清單)作為 CRL 檔案?

我正在尋找主 CRL 清單。我發現的最接近的是 Chromium 項目的CLS集。我用了crlset工具取得 crlset ( crlset fetch > crl-set),然後轉儲序號 ( crlset dump crl-set),所以我看到類似這樣的內容:

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

我希望能夠將包含所有不良連續劇主列表的 CRL 檔案傳遞給 openssl 或curl(使用 openssl)。例如,我不只是傳遞 verisign 的 crl,而是希望傳遞所有內容。我嘗試過openssl crl -inform DER -text -in crl-set,但它說:

unable to load CRL
5532:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:
1319:
5532:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:ta
sn_dec.c:381:Type=X509_CRL

如果有人對如何做我正在談論的事情有任何想法或有任何創造性的方法,請告訴我。謝謝

答案1

這可能是不可能的,至少以您想要的形式是不可能的。

考慮到在 Chrome 的 CRL 集中,(可能)有多個已撤銷的憑證多種的CA。包含證書的單一 CRL 文件多種的CA 稱為「間接 CRL」。間接 CRL 的支持很差;看這裡這裡; OpenSSL 可能無法做到這一點。

此外,正如 @bentek 所提到的,CRLsets 格式似乎不相容。具體來說,CRLsets 格式不包含所有必需的 CRL 欄位;看RFC 5280,第 5.1 節。 CRLsets 包含(根據其文件)頒發憑證的主題公鑰資訊的 SHA-256 雜湊值,以及從該頒發憑證撤銷的憑證的憑證序號。沒有足夠的資訊來重建直接的證書撤銷清單(IE遺憾的是,如果我們願意的話,每個 CA 一個 CRL 檔案。恕我直言,最大的缺乏/遺漏是姓名(DN) 已撤銷憑證的核發者。 CRLsets 為我們提供了一個「指紋」(SHA-256 SPKI 雜湊值),但考慮到網路的範圍,將該指紋映射到相關憑證的 DN 並不是一件容易的事。

相關內容