2013-11-20 114 views
7

我有一個X.509格式的證書。使用openssl我想將發行者的證書提取到一個文件中,同樣採用X.509格式(這樣我可以在我的web服務中將發行者列入白名單)。如何從其他證書中提取發行者證書

我該怎麼做?以下命令不起作用,它僅以文本形式打印發行者信息。

openssl x509 -in cert.x509 -issuer -out issuer.x509

回答

8
  1. openssl x509 -in cert.x509 -text查找簽名證書的URL。
  2. curl (url) >signer.der將簽名證書下載到文件(在我的情況下爲DER格式)。
  3. openssl x509 -inform der -in signer.der -out signer.pem將簽名證書轉換爲PEM(X.509)格式。
  4. openssl x509 -in signer.pem -text確認您的結果。根據需要重複執行證書鏈中的過程。
+0

有關常見OpenSSL命令的[本文](https://www.sslshopper.com/article-most-common-openssl-commands.html)包含有關這些命令的更多詳細信息。 –

+1

如果裏面沒有頒發者證書URL,該怎麼辦?例如,https://www.digicert.com/digicert-root-certificates.htm中的所有中間證書都由根證書籤名,但其證書頒發機構信息訪問擴展名不包含CA頒發者的證書URI。 –

+0

我想你應該問一個關於這個問題的新問題。瀏覽器必須以某種方式做它。也許瀏覽器從它的根證書列表中識別出根級簽名證書的指紋,而不必通過url檢索它。 – wberry