跳至內容

驗證簽章 ​

上傳已簽署的 PDF,此工具會擷取每個數位簽章、識別簽署者、檢查憑證有效性,並回報文件在簽署後是否遭到修改。您也可以提供受信任的憑證來驗證簽章鏈。

運作方式 ​

  1. 上傳已簽署的 PDF 檔案。驗證會自動開始。
  2. 工具會顯示摘要:找到的簽章數量,以及其中有幾個有效。
  3. 每個簽章都有一張詳細資訊卡,顯示簽署者名稱、簽發者、日期與狀態。
  4. 可選擇上傳受信任的憑證(.pem、.crt、.cer、.der),以特定信任錨點驗證簽章。重新驗證會自動執行。

檢查項目 ​

簽章解析 ​

此工具會從 PDF 擷取 PKCS#7 簽章物件、解碼 ASN.1 結構,並取出簽署者的 X.509 憑證以及簽章中內嵌的任何憑證鏈。

憑證有效性 ​

  • 到期:憑證目前是否在有效日期範圍內?
  • 自簽偵測:憑證是否由其自身簽發?
  • 信任鏈:提供受信任憑證時,簽署者的憑證鏈是否能追溯到該憑證?

密碼學驗證 ​

  • 此工具會重建簽章 /ByteRange 涵蓋的位元組,以簽署者宣告的演算法計算雜湊,並將結果與簽章內的 messageDigest 屬性比對。
  • 接著將已簽署屬性重新序列化為 DER SET,並以簽署者憑證的公鑰驗證簽章。
  • 只有在上述所有檢查都通過時,簽章才會被回報為有效。 如果 PDF 位元組在簽署後遭到修改,或內嵌簽章與簽署者的金鑰不符,狀態會顯示「無效:密碼學驗證失敗」並附上具體原因。

支援的簽章演算法 ​

演算法驗證方式
RSA (PKCS#1 v1.5)node-forge publicKey.verify,並以 Web Crypto 作為備援
RSA-PSS (RSASSA-PSS)Web Crypto verify({name: 'RSA-PSS', saltLength})
ECDSA P-256/P-384/P-521將 DER 簽章轉換為 IEEE P1363 格式後,使用 Web Crypto verify({name: 'ECDSA', hash})

如果簽章使用此清單以外的演算法(例如 Ed25519、SM2,或使用罕見摘要 OID 的 RSA),資訊卡會以黃色顯示 「未驗證:不支援的簽章演算法」,並附上具體的 OID 或原因。這是刻意設計的三種狀態區分:

  • 有效:簽章已透過簽署者的公鑰完成密碼學驗證。
  • 無效:驗證已執行且結果為否定(位元組已變更、金鑰不符)。
  • 未驗證:此工具無法針對該演算法執行驗證。憑證中繼資料仍會顯示,但您應將該簽章視為「未知」,並使用 Adobe Acrobat 或 openssl cms -verify 進行驗證。

不安全的摘要演算法 ​

  • 使用 MD5 或 SHA-1 的簽章會被判定為無效,並標示為「不安全的摘要演算法」狀態。這兩種演算法都已有公開的碰撞攻擊,因此對 SHA-1 或 MD5 雜湊所做的簽章無法保證完整性。
  • SHA-224、SHA-256、SHA-384 與 SHA-512 皆可接受。

文件涵蓋範圍 ​

  • 完整涵蓋:簽章涵蓋整個 PDF 檔案,表示簽署後沒有新增或變更任何位元組。
  • 部分涵蓋:簽章只涵蓋檔案的一部分。這可能表示簽署後有過修改(不一定是惡意的,增量儲存也會產生部分涵蓋)。

簽章詳細資訊 ​

每張簽章資訊卡會顯示:

  • 簽署者:簽署者憑證中的一般名稱、組織與電子郵件
  • 簽發者:簽發簽署者憑證的憑證授權單位
  • 簽署時間:簽章中內嵌的時間戳記
  • 有效期起 / 有效期至:憑證的有效期間
  • 原因:簽署文件的原因(若有提供)
  • 地點:簽署的地點(若有提供)
  • 涵蓋狀態:完整或部分
  • 信任標章:受信任或不在信任鏈中(僅在提供自訂憑證時顯示)

技術細節 ​

展開技術細節區塊可查看:

  • 簽署者憑證的序號
  • 摘要演算法(SHA-256、SHA-512 等)
  • 簽章演算法(RSA with SHA-256、ECDSA with SHA-256 等)
  • 無效簽章的錯誤訊息

使用情境 ​

  • 在會簽前驗證已數位簽署的合約
  • 稽核已簽署的文件,確認未遭竄改
  • 檢查憑證在文件簽署後是否已過期
  • 以您組織的根憑證驗證簽章
  • 檢視政府或法律文件的簽署詳細資訊

提示 ​

  • 自簽憑證並不代表簽章無效,而是表示無法透過受信任的第三方驗證簽署者身分。這在內部文件中很常見。
  • 部分涵蓋不一定代表遭到竄改。許多 PDF 工作流程會加入增量更新(例如第二個簽章),因而產生部分涵蓋。
  • 將您組織的根憑證或中繼憑證上傳為受信任的憑證,即可進行信任鏈驗證。

相關工具 ​

以 AGPL-3.0 與商業授權雙重授權。