全部產品
Search
文件中心

CDN:認證格式說明

更新時間:May 27, 2026

CDN只支援上傳PEM格式的認證和私密金鑰,針對不同憑證授權單位的認證,對認證內容的上傳有不同的要求。

Root CA機構頒發的認證

Root CA機構可以頒發多個認證,這些認證可以用於Apache、IIS、Nginx和Tomcat等Web伺服器。阿里雲CDN使用的認證格式與Nginx相容,包含尾碼為.crt(認證)和尾碼為.key(私密金鑰)的這兩個檔案。

您可以進入Nginx檔案夾,使用文字編輯器開啟.crt檔案。

PEM格式認證

  • 以“-----BEGIN CERTIFICATE-----”開頭,以“-----END CERTIFICATE-----”結尾。

  • 每行64個字元,最後一行可以不足64個字元。

認證上傳要求

  • 請將以“-----BEGIN CERTIFICATE-----”開頭和以“-----END CERTIFICATE-----”結尾的內容一併上傳。

  • 每行64個字元,最後一行可以不足64個字元。

中級機構頒發的認證

配置HTTPS時,您需要將伺服器憑證與中間認證拼接成一份完整的認證後再上傳。

憑證鏈結格式

中級機構頒發的憑證鏈結格式如下:

-----BEGIN CERTIFICATE-----

-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----

-----END CERTIFICATE-----

拼接規則

  • 通過文字編輯器開啟所有*.PEM格式的認證檔案。

  • 將伺服器憑證放在第一位,中間認證放在第二位,認證之間不能有空行。

RSA私密金鑰格式要求

私密金鑰副檔名一般為.pem.key

私密金鑰PEM格式

  • 以“-----BEGIN RSA PRIVATE KEY-----”開頭,“-----END RSA PRIVATE KEY-----”結尾。

  • 每行64個字元,最後一行可以不足64個字元。

私密金鑰上傳要求

上傳RSA私密金鑰之前,您需要通過openssl genrsa -out privateKey.pem 2048在本地先產生私密金鑰,privateKey.pem為您的私密金鑰檔案。

  • 請將以“-----BEGIN RSA PRIVATE KEY-----”開頭和以“-----END RSA PRIVATE KEY-----”結尾的內容一併上傳。

  • 每行64個字元,最後一行可以不足64個字元。

如果您得到的是以“-----BEGIN PRIVATE KEY-----”開頭,以“-----END PRIVATE KEY-----”結尾的私密金鑰,您需要使用OpenSSL工具執行以下命令進行轉換,然後將new_server_key.pem的內容與認證一起上傳。

openssl rsa -in old_server_key.pem -out new_server_key.pem

密鑰長度要求

  • 最小密鑰長度:建議不低於 2048 位。低於 2048 位的 RSA 密鑰(如 1024 位)安全性不足,上傳時可能被後端校正拒絕。

  • 推薦密鑰長度:2048 位或 4096 位。可使用 openssl genrsa -out privateKey.pem 2048openssl genrsa -out privateKey.pem 4096 產生。

  • ECC 認證:CDN 也支援 ECC(橢圓曲線)認證。常見的 ECC 曲線類型包括 prime256v1(即 secp256r1)和 secp384r1。產生 ECC 私密金鑰的樣本命令:

    openssl ecparam -genkey -name prime256v1 -out ecc_key.pem
說明

具體的密鑰長度上限和 ECC 曲線支援清單以 CDN 後端 API 實際校正為準。如果上傳時遇到密鑰相關的格式錯誤,建議使用標準 2048 位 RSA 或 prime256v1 ECC 密鑰重建。

認證格式轉換方式

HTTPS配置只支援PEM格式的認證,其他格式的認證需要轉換成PEM格式,建議通過OpenSSL工具進行轉換。下面是幾種主流的認證格式轉換為PEM格式的方法。

說明
  • CRT檔案可能是PEM或DER編碼格式,轉換前請確認您的認證格式。

  • PEM一般為文字格式設定,以 “-----BEGIN ***-----”開頭,以 “-----END ***-----”結尾,中間的內容是Base64編碼。PEM格式的私密金鑰尾碼一般為.key

  • DER轉換為PEM

    DER格式一般出現在Java平台中。

    • 認證轉換:

      openssl x509 -inform der -in certificate.cer -out certificate.pem
    • 私密金鑰轉換:

      openssl rsa -inform DER -outform pem -in privatekey.der -out privatekey.pem
  • P7B轉換為PEM

    P7B格式一般出現在Windows Server和Tomcat中。

    • 認證轉換:

      openssl pkcs7 -print_certs -in incertificat.p7b -out outcertificate.cer

      擷取outcertificate.cer中的-----BEGIN CERTIFICATE-----和-----END CERTIFICATE-----內容作為認證進行上傳。

    • 私密金鑰轉換:

      P7B認證無私密金鑰,您只需在CDN控制台填寫認證部分,私密金鑰無需填寫。

  • PFX轉換為PEM

    PFX格式一般出現在Windows Server中。

    • 認證轉換:

      openssl pkcs12 -in certname.pfx -nokeys -out cert.pem
    • 私密金鑰轉換:

      openssl pkcs12 -in certname.pfx -nocerts -out key.pem -nodes

簽名演算法支援說明

CDN 支援的認證簽名演算法取決於後端 API 的校正規則。以下是常見簽名演算法的相容性參考:

推薦使用的簽名演算法

  • SHA-256 with RSA(sha256WithRSAEncryption)

  • SHA-384 with RSA

  • SHA-512 with RSA

  • ECDSA with SHA-256(適用於 ECC 認證)

不建議使用

  • SHA-1 with RSA:SHA-1 已被主流瀏覽器標記為不安全,部分後端校正可能拒絕 SHA-1 簽名的認證。

說明

CDN 控制台在前端不對簽名演算法做任何校正,簽名演算法的相容性由後端 API 決定。如果上傳的認證使用了不常見的簽名演算法並收到錯誤提示,建議使用 SHA-256 with RSA 或更安全的演算法重新簽發認證。

您可以通過以下命令檢查認證的簽名演算法:

openssl x509 -in your_cert.pem -noout -text | grep "Signature Algorithm"

輸出結果類似 Signature Algorithm: sha256WithRSAEncryption