數位簽章驗證簡介
需要檢查文件的簽章是否真實嗎?數位簽章就像電子指紋,幫助證明誰簽署了文件並顯示簽署後是否有人更改過。與紙質簽章不同,數位簽章使用特殊的加密技術,使其更加安全。
本指南將向您展示如何使用 Python 和 GroupDocs.Signature 庫驗證文件中的不同類型簽章。無論您需要檢查 PDF、Word 或 Excel 文件中的數位簽章、條碼或 QR 碼,我們都提供簡單、可直接使用的代碼示例。
什麼是數位簽章?
數位簽章就像高科技版的手寫簽章,但具有額外的安全功能。以下是它們的特點:
- 證明身份 - 它們顯示誰真正簽署了文件
- 保護內容 - 它們顯示簽署後是否有人更改了文件
- 不可否認 - 簽署者無法聲稱他們沒有簽署
當某人數位簽署文件時,他們使用只有他們擁有的私鑰。任何人都可以使用公鑰檢查簽章,以確保其真實性。這個檢查過程就是我們在本指南中將學習的內容。
將數位簽章視為一個特殊的鎖,只有一人可以關閉,但任何人都可以驗證它是否正確鎖定。
如何驗證數位簽章
數位簽章驗證是確保文件真實性和完整性的關鍵過程。當您驗證文件中的數位簽章時,實際上是在檢查兩個主要問題:簽章是否真實,以及文件是否在簽署後被修改。
了解數位簽章驗證過程
數位簽章驗證過程涉及幾個關鍵步驟,這些步驟共同工作以驗證電子簽章:
證書鏈驗證:每個數位簽章都包含一個識別簽署者的證書。在驗證過程中,系統檢查此證書是否有效、未過期並由受信任的證書授權機構(CA)發出。這一步確保了聲稱簽署文件的人實際上有權這樣做。
密碼哈希驗證:數位簽章使用密碼哈希函數在簽署時創建文件的唯一指紋。在驗證簽章時,系統重新計算此哈希並與原始哈希進行比較。如果匹配,則文件未被篡改。
時間戳驗證:許多電子簽章包含時間戳,證明文件何時簽署。這個時間戳驗證有助於建立簽署順序,並確保簽章是在證書仍然有效時創建的。
數位簽章驗證的重要性
文件簽章驗證在現代商業工作流程中具有多種關鍵用途:
法律合規:許多行業需要驗證電子簽章以符合法規標準。正確的簽章驗證確保您的文件在法律程序中有效並符合法律,如歐洲的 eIDAS 或美國的 ESIGN 法案。
安全保障:驗證數位簽章可以防止文件偽造和未經授權的修改。這對於合同、財務文件和敏感的商業協議特別重要。
工作流程完整性:在自動化文件處理系統中,簽章驗證確保只有正確簽署的文件通過您的商業流程,防止錯誤並維持質量控制。
您可以驗證的簽章類型
現代文件簽名解決方案支持各種簽章類型,每種簽章類型都有不同的用例:
基於 PKI 的數位簽章:這些使用公鑰基礎設施並是最安全的選項。它們適合高價值交易、法律文件和需要不可否認性的情況。
生物特徵簽章:這些捕捉唯一的生物特徵,如書寫模式或指紋。它們適合需要證明簽署者實際存在的情況。
簡單電子簽章:這些包括基本的電子郵件確認、勾選框接受或打字名稱。雖然不太安全,但適合低風險協議和內部工作流程。
✅ 驗證條碼簽章
條碼可以在文件中存儲簽章信息。以下是如何檢查條碼簽章是否有效:
- 獲取正確的工具:導入 GroupDocs.Signature 模塊
- 設置您的文件:告訴程序檢查哪個文件
- 檢查條碼:使用特殊選項驗證條碼
- 獲取結果:查看簽章是否有效
以下是執行所有這些操作的代碼:
import groupdocs.signature as gs
import groupdocs.signature.options as gso
import groupdocs.signature.domain as gsd
import os
def run():
# 您簽署文件的路徑
file_path = "sample.pdf"
# 打開要檢查的文件
with gs.Signature(file_path) as signature:
options = gso.BarcodeVerifyOptions()
options.all_pages = True # 檢查所有頁面
options.text = "12345"
options.match_type = gsd.TextMatchType.CONTAINS
# 驗證簽章
result = signature.verify(options)
if result.is_valid:
print(f"\n文件 {file_path} 簽章有效!")
else:
print(f"\n文件 {file_path} 簽章檢查失敗。")
if __name__ == "__main__":
run()
✅ 驗證數位簽章
數位簽章是最安全的類型,因為它們使用特殊的證書。以下是如何驗證它們:
- 獲取正確的工具:導入所需的模塊
- 設置您的文件:指向您的簽署文件
- 設置驗證選項:告訴程序檢查什麼
- 運行檢查:驗證簽章
- 查看結果:查看是否通過測試
以下是執行這些操作的代碼:
import groupdocs.signature as gs
import groupdocs.signature.options as gso
import os
def run():
# 您簽署文件的路徑
file_path = "sample.pdf"
certificate_pfx = "path to certificate"
# 打開要檢查的文件
with gs.Signature(file_path) as signature:
options = gso.DigitalVerifyOptions(certificate_pfx)
options.contact = "Mr.Smith"
options.password = "1234567890"
# 驗證簽章
result = signature.verify(options)
if result.is_valid:
print(f"\n文件 {file_path} 簽章有效!")
for item in result.succeeded:
print(f"\n找到一個有效簽章。")
else:
print(f"\n文件 {file_path} 簽章檢查失敗。")
if __name__ == "__main__":
run()
✅ 驗證 QR 碼簽章
QR 碼是您可以用手機掃描的正方形圖案。它們也可以存儲簽章信息。以下是如何檢查它們:
- 準備您的工具:導入所需的模塊
- 選擇您的文件:設置文件路徑
- 設置 QR 驗證:創建正確的選項
- 檢查 QR 碼:運行驗證
- 查看是否通過:檢查結果
以下是執行這些操作的代碼:
import groupdocs.signature as gs
import groupdocs.signature.options as gso
import groupdocs.signature.domain as gsd
import os
def run():
# 您簽署文件的路徑
file_path = "sample.pdf"
# 打開要檢查的文件
with gs.Signature(file_path) as signature:
options = gso.QrCodeVerifyOptions()
options.all_pages = True # 檢查所有頁面
options.text = "John"
options.match_type = gsd.TextMatchType.CONTAINS
# 驗證簽章
result = signature.verify(options)
if result.is_valid:
print(f"\n文件 {file_path} 簽章有效!")
else:
print(f"\n文件 {file_path} 簽章檢查失敗。")
if __name__ == "__main__":
run()
📝 結論
在今天的數位世界中,驗證數位簽章對於確保文件安全至關重要。使用 GroupDocs.Signature for Python via .NET,您可以輕鬆檢查文件中的不同類型簽章:
- ✔️ 條碼簽章用於追蹤和自動化系統
- ✔️ 基於證書的數位簽章
- ✔️ 適合移動友好的 QR 碼簽章
本指南中的代碼示例展示了將簽章驗證添加到 Python 應用程序的簡單性。通過實施這些驗證方法,您可以:
- 確保文件未被篡改
- 驗證文件簽署者的身份
- 創建更安全的文件工作流程
- 建立對數位文件流程的信任
立即開始實施數位簽章驗證,將您的文件安全提升到新的高度!
获取免费试用
想親自試用這些簽章驗證功能嗎?您可以從 releases.groupdocs.com 下載 GroupDocs.Signature for Python via .NET 的免費試用版。您還可以在 https://purchase.groupdocs.com/temporary-license/ 获取臨時許可證,以在沒有限制的情況下測試所有功能。