電子證書 DER vs. CRT vs. CER vs. PEM

 

一直對電子證書的文件後綴比較頭大,搞不清這些後綴的關係,終於在網上搜到一個比較簡明的文章,試着翻譯一下:)


證書與編碼

本至上,X.509證書是一個數字文檔,這個文檔根據RFC 5280來編碼並/或簽發。

實際上,“X.509證書”經常被用來指代IETF的PKIX(Public Key Infrastructure)證書和X.509 v3 證書標準中的CRL(Certificate Revocation List)。


X509 文件擴展名

首先我們要理解文件的擴展名代表什麼。DER、PEM、CRT和CER這些擴展名經常令人困惑。很多人錯誤地認爲這些擴展名可以互相代替。儘管的確有時候有些擴展名是可以互換的,但是最好你能確定證書是如何編碼的,進而正確地標識它們。正確地標識證書有助於證書的管理。


編碼 (也用於擴展名)

  • .DER = 擴展名DER用於二進制DER編碼的證書。這些證書也可以用CER或者CRT作爲擴展名。比較合適的說法是“我有一個DER編碼的證書”,而不是“我有一個DER證書”。
  • .PEM = 擴展名PEM用於ASCII(Base64)編碼的各種X.509 v3 證書。文件開始由一行"—– BEGIN …“開始。

常用的擴展名

  • .CRT = 擴展名CRT用於證書。證書可以是DER編碼,也可以是PEM編碼。擴展名CER和CRT幾乎是同義詞。這種情況在各種unix/linux系統中很常見。
  • CER = CRT證書的微軟型式。可以用微軟的工具把CRT文件轉換爲CER文件(CRT和CER必須是相同編碼的,DER或者PEM)。擴展名爲CER的文件可以被IE識別並作爲命令調用微軟的cryptoAPI(具體點就是rudll32.exe cryptext.dll, CyrptExtOpenCER),進而彈出一個對話框來導入並/或查看證書內容。
  • .KEY = 擴展名KEY用於PCSK#8的公鑰和私鑰。這些公鑰和私鑰可以是DER編碼或者PEM編碼。

CRT文件和CER文件只有在使用相同編碼的時候纔可以安全地相互替代。


後面是一些openssl的常用操作,就省略了吧:)

發佈了11 篇原創文章 · 獲贊 5 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章