一般來說,主流的Web服務軟體,通常都基於OpenSSL和Java兩種基礎密碼庫。

  • Tomcat、Weblogic、JBoss等Web服務軟體,一般使用Java提供的密碼庫。通過Java Development Kit (JDK)工具包中的Keytool工具,產生Java Keystore(JKS)格式的認證檔案。
  • Apache、Nginx等Web服務軟體,一般使用OpenSSL工具提供的密碼庫,產生PEM、KEY、CRT等格式的認證檔案。
  • IBM的Web服務供應項目,如Websphere、IBM Http Server(IHS)等,一般使用IBM產品內建的iKeyman工具,產生KDB格式的認證檔案。
  • 微軟Windows Server中的Internet Information Services(IIS)服務,使用Windows內建的認證庫產生PFX格式的認證檔案。

如何判斷認證檔案是文字格式設定還是二進位格式?

您可以使用以下方法簡單區分帶有尾碼副檔名的認證檔案:

  • *.DER或*.CER檔案: 這樣的認證檔案是二進位格式,只含有認證資訊,不包含私密金鑰。
  • *.CRT檔案: 這樣的認證檔案可以是二進位格式,也可以是文字格式設定,一般均為文字格式設定,功能與 *.DER及*.CER認證檔案相同。
  • *.PEM檔案: 這樣的認證檔案一般是文字格式設定,可以存放認證或私密金鑰,或者兩者都包含。 *.PEM 檔案如果只包含私密金鑰,一般用*.KEY檔案代替。
  • *.PFX或*.P12檔案: 這樣的認證檔案是二進位格式,同時包含認證和私密金鑰,且一般有密碼保護。
您也可以使用記事本直接開啟認證檔案。如果顯示的是規則的數字字母,例如:

—–BEGIN CERTIFICATE—–
MIIE5zCCA8+gAwIBAgIQN+whYc2BgzAogau0dc3PtzANBgkqh......
—–END CERTIFICATE—–

那麼,該認證檔案是文字格式設定的。

  • 如果存在——BEGIN CERTIFICATE——,則說明這是一個認證檔案。
  • 如果存在—–BEGIN RSA PRIVATE KEY—–,則說明這是一個私密金鑰檔案。

認證格式轉換

以下認證格式之間是可以互相轉換的。

您可使用以下方式實現認證格式之間的轉換:
说明 雲盾認證服務統一使用 PEM 格式的數位憑證檔案。
  • 將JKS格式認證轉換成PFX格式
    您可以使用JDK中內建的Keytool工具,將JKS格式認證檔案轉換成PFX格式。例如,您可以執行以下命令將 server.jks認證檔案轉換成 server.pfx認證檔案:
    keytool -importkeystore -srckeystore D:\server.jks -destkeystore D:\server.pfx
            -srcstoretype JKS -deststoretype PKCS12
  • 將PFX格式認證轉換為JKS格式
    您可以使用JDK中內建的Keytool工具,將PFX格式認證檔案轉換成JKS格式。例如,您可以執行以下命令將 server.pfx認證檔案轉換成 server.jks認證檔案:
    keytool -importkeystore -srckeystore D:\server.pfx -destkeystore D:\server.jks
            -srcstoretype PKCS12 -deststoretype JKS
  • 將PEM/KEY/CRT格式認證轉換為PFX格式
    您可以使用 OpenSSL工具,將KEY格式密鑰檔案和CRT格式公開金鑰檔案轉換成PFX格式認證檔案。例如,將您的KEY格式密鑰檔案(server.key)和CRT格式公開金鑰檔案(server.crt)拷貝至OpenSSL工具安裝目錄,使用OpenSSL工具執行以下命令將認證轉換成 server.pfx認證檔案:
    openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt
  • 將PFX轉換為PEM/KEY/CRT

    您可以使用 OpenSSL工具,將PFX格式認證檔案轉化為KEY格式密鑰檔案和CRT格式公開金鑰檔案。例如,將您的PFX格式認證檔案拷貝至OpenSSL安裝目錄,使用OpenSSL工具執行以下命令將認證轉換成server.pem認證檔案KEY格式密鑰檔案(server.key)和CRT格式公開金鑰檔案(server.crt):

    • openssl pkcs12 -in server.pfx -nodes -out server.pem
    • openssl rsa -in server.pem -out server.key
    • openssl x509 -in server.pem -out server.crt
    说明 此轉換步驟是專用於通過Keytool工具產生私密金鑰和CSR申請認證檔案的,並且通過此方法您可以在擷取到PEM格式認證公開金鑰的情況下分離私密金鑰。在您實際部署數位憑證時,請使用通過此轉換步驟分離出來的私密金鑰和您申請得到的密鑰憑證匹配進行部署。