デジタル署名は、署名やスタンプ (手書き) と同様に、電子文書の信頼性と完全性を検証します。ただし、デジタル署名は手書きの署名よりもはるかに安全です。

この記事を読み終える頃には、Java を使用して PowerPoint プレゼンテーションにデジタル署名を追加する方法を習得しているでしょう。

PowerPoint PPT にデジタル署名を追加する Java API

わずか数行の Java コードを使用して PPT プレゼンテーションにデジタル署名を追加したい場合は、以下が必要です。

  • Java 用 Aspose.Slides, a powerful PowerPoint library used to create, edit, and manipulate PPT and PPTX presentations. For instructions on installing Aspose.Slides, see this Installation guide.
  • 署名証明書: デジタル署名を作成する前に、まず署名証明書が必要です。このような証明書は通常、既知の証明機関 (CA) によって発行されますが、独自の証明書を作成することもできます。

デジタル署名は次の基準を満たしている必要があります。有効な署名を使用すること、それに関連付けられた証明書が最新のもの (有効期限が切れていないこと)、(理想的には) 信頼できるまたはよく知られている認証局からのものであること、署名者または署名組織が次の条件を満たす必要があります。信頼されてください。

PPT にデジタル署名を追加する Java コード

デジタル証明書を用意し、Aspose.Slides がシステムにインストールされている場合は、次の手順に従って Java で PowerPoint プレゼンテーションにデジタル署名を追加する必要があります。

  1. プレゼンテーション クラスを使用して、関連する PowerPoint ファイルを読み込みます。
  2. デジタル署名オブジェクトを作成し、それにデジタル署名 PFX ファイルとパスワードを渡します。
  3. デジタル署名を追加します。
  4. 変更したプレゼンテーションを保存します。

この Java コードは、PowerPoint にデジタル署名を追加する方法を示しています。

// プレゼンテーションファイルを開きます
Presentation pres = new Presentation();
try {
    // PFX ファイルと PFX パスワードを使用して DigitalSignature オブジェクトを作成します 
    DigitalSignature signature = new DigitalSignature("testsignature1.pfx", "testpass1");

    // コメントの新しいデジタル署名
    signature.setComments("Aspose.Slides digital signing test.");

    // プレゼンテーションにデジタル署名を追加します
    pres.getDigitalSignatures().add(signature);

    // プレゼンテーションを保存します
    pres.save("SomePresentationSigned.pptx", SaveFormat.Pptx);
} finally {
    pres.dispose();
}

デジタル署名された PowerPoint PPT を検証する

デジタル署名付きの PowerPoint を受け取った場合は、検証操作を実行して、手元にあるファイルが署名後に変更されていないことを確認します。このプロセスは基本的に、PPT または PPTX プレゼンテーションの信頼性と完全性をテストするものです。

デジタル署名で署名された PowerPoint を確認するには、次の手順に従ってください。

  1. プレゼンテーション クラスを使用して、関連する PowerPoint ファイルを読み込みます。
  2. PowerPoint が署名されているかどうかを確認します。
  3. (プレゼンテーションの署名に使用された) 署名が有効かどうかを確認します。

次の Java コードを実行して、デジタル署名された PowerPoint ドキュメントを検証します。

// プレゼンテーションを開きます
Presentation pres = new Presentation("SomePresentationSigned.pptx");
try {
    if (pres.getDigitalSignatures().size() > 0)
    {
        boolean allSignaturesAreValid = true;

        System.out.println("Signatures used to sign the presentation: ");

        // すべてのデジタル署名が有効かどうかを確認します
       for (IDigitalSignature signature : pres.getDigitalSignatures())
        {
            System.out.println(signature.getComments() + ", "
                    + signature.getSignTime().toString() + " -- " + (signature.isValid() ? "VALID" : "INVALID"));
            allSignaturesAreValid &= signature.isValid();
        }

        if (allSignaturesAreValid)
            System.out.println("Presentation is genuine. All signatures are valid.");
        else
            System.out.println("Presentation has been modified since signing.");
    }
} finally {
    if (pres != null) pres.dispose();
}

無料ライセンスを取得する

Aspose.Slides の機能を制限なしで試したい場合は、無料の一時ライセンス を取得することをお勧めします。

結論

Java を使用して PowerPoint プレゼンテーションにデジタル署名を追加する方法は理解できたと思います。 PowerPoint のパスワード保護 プレゼンテーションに関する記事など、セキュリティをテーマにしたその他の記事が役立つ場合があります。

Aspose.Slides 機能 の詳細については、ドキュメント を参照してください。/)。ご質問がある場合は、フォーラム に投稿してください。