憑證、CSR 或金鑰
貼上 X.509 憑證、憑證簽署要求 (CSR)、金鑰或 PEM 格式的完整憑證鏈,或載入 .crt、.cer、.der、.p7b、.pfx 或 .p12 檔案。您會看到主體、SAN、有效期間、擴充功能與指紋,以及憑證鏈的順序與簽章是否正確、私鑰是否與憑證相符。所有資料都不會離開您的瀏覽器。
可以一次貼上多個區塊(憑證、中繼憑證與金鑰),或將檔案拖曳到這裡

運作方式

X.509 憑證是一份經過簽署的文件,將公鑰與一個名稱(網域、個人或組織)綁定在一起。在伺服器之間與檔案中傳遞的是它的二進位形式 (DER),而複製貼上的則是以 Base64 編碼、位於 BEGIN CERTIFICATE 與 END CERTIFICATE 兩行之間的相同結構,也就是 PEM 格式。其中包含主體、簽發者、有效期間、公鑰,以及說明其用途和撤銷狀態查詢位置的擴充功能。

本工具可辨識憑證、PKCS#10 憑證簽署要求 (CSR)、PKCS#8、PKCS#1 與 SEC1 私鑰、公鑰、PKCS#7 套件 (.p7b) 以及 PKCS#12 檔案 (.pfx、.p12)。如果一次貼上多個區塊,它會依照從終端實體憑證到根憑證的順序排列憑證鏈,以簽發者的金鑰驗證每個簽章,並將私鑰與每張憑證及每個 CSR 比對,告訴您哪個對應哪個。

它也能在格式之間轉換,從憑證與金鑰建立 IIS 與 Azure 所要求的 .pfx,並產生新的 CSR 及其私鑰,或供測試用的自我簽署憑證。所有處理都透過瀏覽器的密碼學 API 完成:憑證與金鑰都不會傳送到伺服器。

範例

ISRG Root X1 · SHA-25696:BC:EC:06:26:49:76:F3:74:60:77:9A:CF:28:C5:A7:CF:E8:A3:C0:AA:E1:1A:8F:FC:EE:05:C0:BD:DF:08:C6Let's Encrypt 根憑證的 SHA-256 指紋。這是憑證授權單位與信任存放區公布的值:如果您手上檔案的指紋與之相符,就是這張憑證本身。
ISRG Root X1 · pin SPKIC5+lpZ7tcVwmwQIMcRtPbsQtWLABXhQzejna0wHFr8M=以 Base64 表示的公鑰 SHA-256。這是 Android 網路安全性設定中的 pin-sha256 或應用程式 certificate pinning 所使用的值;如果更新憑證時沿用同一把金鑰,這個值不會改變。
root.crt + intermediate.crt + server.crtserver.crt + intermediate.crt + root.crtnginx 與 HAProxy 會將檔案中的第一張憑證視為伺服器憑證。如果憑證鏈順序顛倒,nginx 會將私鑰與根憑證比對,並以 key values mismatch 錯誤失敗。
openssl pkcs12 -in viejo.pfx -legacy -nodes | openssl pkcs12 -export -out nuevo.pfxPBES2 · AES-256-CBC · MAC SHA-256舊版 Windows 或 OpenSSL 1.x 匯出的 .pfx 使用 RC2 與 3DES 加密,而瀏覽器並未實作這些演算法。此命令會改用 AES(OpenSSL 3 的預設格式)重新加密。

使用情境

  • 在安裝憑證授權單位寄來的憑證之前,確認它涵蓋所有網域 (SAN),且到期日符合預期。
  • 不必用 OpenSSL 比對模數,就能找出伺服器上留下的私鑰各自對應哪張憑證。
  • 找出用戶端不信任您網站的原因:缺少中繼憑證、憑證鏈順序錯亂,或憑證以 SHA-1 簽署。
  • 產生購買或更新憑證所需的 CSR,金鑰在您自己的電腦上建立,並附上對應的 OpenSSL 命令,方便您改在伺服器上操作。
  • 將 .crt 及其 .key 轉換為 IIS、Azure App Service 或 Java 金鑰庫使用的 .pfx,或從 .pfx 擷取憑證與金鑰供 nginx 使用。
  • 取得憑證的指紋或 SPKI Pin,用於在行動應用程式中設定 certificate pinning 或驗證用戶端憑證。

常見問題

在這裡貼上私鑰安全嗎?

金鑰會在您的瀏覽器中透過 Web Crypto API 處理,不會傳送到任何伺服器;您可以在開發人員工具的「網路」分頁中確認。儘管如此,最佳做法仍是把任何正式環境的金鑰都當作機密:只貼到您信任的工具中,並在完成後關閉分頁。

PEM、DER、CRT、CER、P7B 與 PFX 有什麼不同?

DER 是二進位形式的憑證,PEM 則是同一份二進位資料經 Base64 編碼後放在 BEGIN 與 END 兩行之間。.crt 與 .cer 副檔名並不代表格式:兩者都可能是其中任一種。.p7b 是包含多張憑證但不含金鑰的 PKCS#7 套件。.pfx 或 .p12 是 PKCS#12:將憑證、中繼憑證與私鑰一起保存,並以密碼加密。

如何得知我的伺服器是否缺少中繼憑證?

貼上伺服器上設定的內容。如果憑證鏈結束於一張非自我簽署的憑證,就表示缺少一環:該憑證的 Authority Information Access 擴充功能通常會在 CA Issuers 中提供下載簽發者憑證的網址。桌上型瀏覽器有時會自動取得,但 Android、curl 與大多數程式庫不會,因此錯誤只會出現在部分用戶端。

公開 TLS 憑證的效期最長可以多久?

自 2020 年 9 月起,瀏覽器會拒絕效期超過 398 天的憑證。CA/Browser Forum 於 2025 年通過分階段縮短上限:2026 年 3 月 15 日起簽發的憑證為 200 天,2027 年 3 月起為 100 天,2029 年 3 月起為 47 天。因此建議使用 ACME 自動更新。企業內部 CA 不受此限制。

CSR 該用 RSA 還是 ECDSA?

ECDSA P-256 能以小得多的金鑰與簽章提供與 3072 位元 RSA 相當的安全性,伺服器完成交握也更快。目前所有的瀏覽器與系統都支援它。如果您有非常舊的用戶端、嵌入式裝置或只接受 RSA 的系統,RSA 2048 仍是穩妥的選擇。

只把網域填在一般名稱 (CN) 中就夠了嗎?

不夠。自 2017 年的 Chrome 58 起,瀏覽器只看主體別名 (SAN),CN 會被忽略。憑證要使用的每個網域(包括 CN 中的網域)都必須列在 SAN 清單中。像 *.example.com 這樣的萬用字元只涵蓋一層:適用於 www.example.com,但不適用於 example.com 或 a.b.example.com。