ByteScope

Certificate Decoder

貼上憑證,讀出裡面的一切 — 並找出憑證鏈為什麼壞掉。

檔案不會離開你的瀏覽器 — 全部在本機處理。

Drop .pem / .crt / .cer / .der / .csr files

parsed locally — nothing is uploaded

關於這個工具

貼上或拖入 PEM、DER、CRT 或 CER 內容 — 單一憑證、整條憑證鏈,或一份 CSR — 每個欄位都會立即解碼:逐一拆解主體與簽發者 DN、附剩餘天數倒數的有效期限(已過期以洋紅色標示,少於 30 天以橘色標示,因為到期通常正是你來這裡要檢查的)、完整的 SAN 清單、金鑰用途與延伸金鑰用途、公鑰類型與長度、簽章演算法、序號,以及 SHA-1/SHA-256 指紋。

把好幾張憑證一起貼上,工具會把它們排成一條憑證鏈、逐環驗證,並用一句話診斷出經典的伺服器設定錯誤:「缺少中繼憑證」。憑證與金鑰的配對器接收一張憑證和一把私鑰,告訴你兩者是不是一組 — 也就是在服務中斷時「這到底是不是正確的金鑰?」這個問題的五秒解答。主機名稱檢查會把你輸入的網域與 SAN 清單比對,弱簽章(SHA-1)和自簽憑證也都會被特別標示出來。

所有解析都透過 WebCrypto 在你的瀏覽器中進行 — 憑證、CSR,尤其是私鑰,絕不會被傳送到任何地方。把私鑰貼進一個來路不明的網站通常是資安上的失誤;在這裡,架構本身讓它是安全的,你甚至可以拔掉網路線來證明這一點。

常見問題

在這裡貼上私鑰安全嗎?
安全 — 一切都用內嵌在頁面裡的 WebCrypto/ASN.1 函式庫在你的瀏覽器本機解析;沒有任何伺服器呼叫,這點你可以在 DevTools 的 Network 分頁驗證(或在貼上前先離線)。話雖如此,仍請把任何貼上的私鑰當作機密看待:用完就關掉分頁。
「缺少中繼憑證」是什麼意思?
瀏覽器信任的是根 CA,但你的伺服器憑證通常是由一個中繼 CA 簽發的。伺服器必須把那張中繼憑證連同自己的憑證一起送出;當它沒這麼做時,有些用戶端會因信任錯誤而失敗,有些卻能正常運作(因為它們快取了那張中繼憑證)— 這正是經典的「在 Chrome 可以、用 curl 卻失敗」症狀。把你的憑證鏈貼進來,工具會精確指出是哪一環缺了。
我要怎麼檢查一張憑證和它的私鑰是否相符?
把兩者都貼進配對器。憑證裡含有公鑰;工具會從你的私鑰推導出對應的公鑰再加以比對。不相符就代表這把金鑰無法搭配這張憑證使用 — 這是診斷 nginx「key values mismatch」錯誤最快的方法。
在把 CSR 送交給 CA 之前,可以先解碼它嗎?
可以 — 貼上 CSR 即可在送出前檢視主體、要求的 SAN 與金鑰細節。在 CSR 裡抓到打錯的網域,遠比重新簽發一張憑證划算得多。
支援哪些格式?
PEM(BEGIN CERTIFICATE/CERTIFICATE REQUEST/PRIVATE KEY 區塊,貼上或拖入皆可)、DER 二進位檔(.crt/.cer/.der),以及含多張憑證的 PEM bundle。PKCS#12(.pfx/.p12)容器目前尚未支援。