通常情況下,作為檔案形式存在的證書一般有三種格式:
- 第一種:帶有私鑰的證書,由Public Key Cryptography Standards #12,PKCS#12標準定義,包含了公鑰和私鑰的二進位制格式的證書形式,以.pfx作為證書檔案字尾名。
- 第二種:DER Encoded Binary (.cer) 二進位制編碼的證書,證書中沒有私鑰,DER 編碼二進位制格式的證書檔案,以.cer作為證書檔案字尾名。
- 第三種:Base64 Encoded(.cer),Base64編碼的證書,證書中沒有私鑰,BASE64 編碼格式的證書檔案,也是以.cer作為證書檔案字尾名。
由定義可以看出,只有pfx格式的數字證書是包含有私鑰的,cer格式的數字證書裡面只有公鑰沒有私鑰。
Cer證書只包含公鑰資訊,如果客戶端與網站通訊時需要用到私鑰(基本所有需要數字證書的網站都會用到私鑰),則cer證書是無法正常訪問網站的,網站會提示“該頁要求客戶證書”。由於cer證書只包含公鑰資訊,一般只能用於解密使用(解密該公鑰對應的私鑰加密的資料)。在申請證書的機器上儲存了私鑰資訊,因此,可以把CER證書匯入為PFX證書,並可以把PFX證書匯出,這樣其他機器就可以安裝PFX證書了。
Pfx證書既可以匯出為pfx證書,也可以匯出為cer證書。Pfx證書匯出時,會提示是否匯出私鑰,匯出私鑰即pfx證書,不匯出私鑰就是cer證書。如果選擇匯出私鑰,出於安全性考慮,需要指定一個密碼來保護該私鑰,後續再次匯入該pfx證書時,需要提供保護該私鑰密碼,才能在機器上安裝證書。
一,證書描述
證書釋出之後,申請者可以看到證書的詳細內容,注意:申請者在下載cer證書之後,需要在申請證書的機器上匯入證書,原因是申請證書的機器上包含金鑰。
證書給出了一個黃色的注意事項:您可能正在一個臺計機器上下載證書,這臺計算機與您請求證書的機器不同。但是,該證書僅在生成請求的機器上起作用。如果需要把證書安裝在另一臺伺服器上,請首先將其安裝在最初建立請求的機器上,然後使用其私鑰匯出證書。 然後,在需要時,可以把其匯入到目標計算機或多臺計算機上的本地計算機儲存中。
由於申請證書的機器上儲存私鑰,因此,可以把CER證書匯入為PFX證書,並可以把PFX證書匯出,這樣其他機器就可以安裝PFX證書了。
二,匯入證書
注意,第一次匯入證書,只能把證書匯入到申請證書的機器上。
step1:下載DER Encoded Binary (.cer)格式的證書
step2:開啟Microsoft Management Console
點選“Windows + R”,輸入mmc,開啟MMC控制檯。
step3:新增證書管理單元(snap-ins)
點選MMC的File選單,選擇“Add or Remove Snap-ins”,選擇Certificates,點選“Add >”,選擇 computer account,
下一步選擇“Local computer: (the computer this consoled is running on)”,點選Finish按鈕,
完成之後,在“Add or Remove Snap-ins”對話方塊上點選OK,返回到MMC介面。
step4:匯入證書
在Console Root列表種選擇"Certificates(Local Computer)",右擊Personal,導航到 All Tasks -> Import,開啟“Certificate Import Wizard”
點選Next,進入到“File to Import”介面,在File name中開啟已下載到本地的DER Encoded Binary (.cer)格式的證書
Step5,選擇證書儲存
點選Next,進入到“Certificate Store”介面,選擇Place certificates in the following store,把Personal作為 certificate store。
通常匯入PFX的證書,預設的證書儲存都是在Personal下,Cer證書只能匯入導Other選項卡下,無法匯入到Personal選項卡下。
Step6,檢查證書匯入的配置
點選Next,檢查證書的配置,點選Finish完成證書的第一次匯入:
三,匯出.pfx證書
把.cer 證書匯入到機器上之後,可以匯出.pfx證書。在MMC的Certificates列表中,找到剛才匯入的證書:
step1,開啟"Certificate Export Wizard"
選中匯入的證書,右擊彈出快捷選單,導航 All Tasks-> Export,開啟"Certificate Export Wizard":
step2: 匯出私鑰
私鑰是用密碼保護,如果想要把私鑰匯出,那麼必須用密碼來保護私鑰。預設是不會匯出私鑰,但是如果需要在其他機器上安裝證書,那麼就必須匯出私鑰,勾選“Yes, export the private key”:
step3:設定匯出檔案的格式
把匯出檔案的格式設定為.PFX,在“Personal Information Exchange-PKCS #12 (.PFX)”中,勾選“Include all certificates in the certification path if possible” 和 “Enable certificate privacy”。
Step4:安全設定
為了保護私鑰, 可以把私鑰授權給特定的group或user,並使用密碼對私鑰進行加密,使用者只有同時獲得pfx檔案和密碼,才可以獲得私鑰和證書。
Encryption列表中列出了對私鑰進行加密的兩種演算法,選擇任意一個加密演算法都可以:
如果匯出私鑰(pfx)是需要輸入密碼的,這個密碼就是對私鑰再次加密,這樣就保證了私鑰的安全,別人即使拿到了你的證書備份(pfx),如果不知道加密私鑰的密碼,那麼無法匯入證書。相反,如果只是匯入/匯出cer格式的證書,是不會提示你輸入密碼的。因為公鑰一般來說是對外公開的,不用加密。
Step5,設定匯出的檔案
把PFX檔案匯出到特定的檔案中,需要設定pfx證書儲存的檔名和路徑:
Step6:檢查證書匯出嚮導的設定
檢查無誤後,點選Finish,匯出pfx證書。
參考文件: