數字簽名 是一種眾所周知且常用的保護數字文檔的方法。它可以更輕鬆地驗證文檔中內容的真實性。因此,您可以確定是否有人試圖篡改文檔。 MS PowerPoint 還允許您使用數字簽名對 PPTPPTX 演示文稿進行簽名。為了以編程方式自動執行此功能,本文介紹瞭如何使用 Python 將數字簽名添加到 PowerPoint PPT 文件。

用於對 PowerPoint PPT 進行數字簽名的 Python 庫

要在 PowerPoint 演示文稿中添加數字簽名,我們將使用 Aspose.Slides for Python via .NET。它是一個功能強大的 Python 庫,使您無需編寫複雜的代碼即可創建和操作 PowerPoint 演示文稿。您可以使用以下 pip 命令從 PyPI 安裝庫。

> pip install aspose.slides 

用Python給PPT添加數字簽名

要使用數字簽名簽署文檔,您首先需要從被稱為證書頒發機構的授權組織/個人獲得證書。該證書用於唯一標識擁有它的人。

獲得數字證書後,您可以按照以下步驟在 Python 中為 PowerPoint PPT 添加數字簽名。

以下代碼示例展示瞭如何使用 Python 向 PowerPoint PPT 添加數字簽名。

import aspose.slides as slides

# 負載演示
with slides.Presentation("presentation.pptx") as pres:
    # 使用 PFX 文件和 PFX 密碼創建 DigitalSignature 對象 
    signature = slides.DigitalSignature("certificate.pfx", "password")

    # 評論新的數字簽名
    signature.comments = "Signing with Aspose.Slides"

    # 向演示文稿添加數字簽名
    pres.digital_signatures.add(signature)

    # 保存演示文稿
    pres.save("SignedPPT.pptx", slides.export.SaveFormat.PPTX)

在 Python 中驗證數字簽名的 PPT

Aspose.Slides 還允許您驗證數字簽名的 PPT 是否被修改。以下是使用 Python 驗證 PowerPoint 演示文稿中的數字簽名的步驟。

  • 首先,使用 Presentation 類打開 PPT/PPTX。
  • 然後,檢查 PPT 是否經過數字簽名。
  • 對於 Presentation.digitalsignatures 集合中的每個數字簽名,執行以下步驟。
    • 使用 DigitalSignature.isvalid 來驗證簽名。
    • 如果它返回 false,則表示會被修改,否則不會。

以下代碼示例顯示瞭如何使用 Python 驗證 PowerPoint PPT 中的數字簽名。

import aspose.slides as slides

# 負載演示
with slides.Presentation("presentation.pptx") as pres:
    if len(pres.digital_signatures) > 0:
        allSignaturesAreValid = True
        print("Signatures used to sign the presentation: ")

        # 檢查所有數字簽名是否有效
       for signature in pres.digital_signatures :
            print(signature.certificate.subject_name.name + ", "
                    + signature.sign_time.strftime("yyyy-MM-dd HH:mm") + " -- " + "VALID" if signature.is_valid else "INVALID")
            allSignaturesAreValid = allSignaturesAreValid and signature.is_valid

        if allSignaturesAreValid:
            print("Presentation is original, all signatures are valid.")
        else:
            print("Presentation has been modified.")

獲得免費許可證

您可以獲得免費臨時許可證,通過 .NET 使用 Aspose.Slides for Python,沒有評估限制。

結論

在本文中,您了解瞭如何使用 Python 為 PowerPoint PPT 或 PPTX 文件添加數字簽名。此外,您還了解瞭如何驗證數字簽名以檢查演示文稿是否被修改。您可以使用 文檔 探索 Aspose.Slides for Python 的其他功能。此外,您可以在我們的 論壇 上提問。

也可以看看