GroupDocs.Signature for Java でデジタル署名の読み込みと署名を実装する方法

導入

今日のデジタル時代において、金融、法務、医療など、様々な分野で文書の真正性と完全性を確保することは極めて重要です。オンラインで契約書に署名する場合でも、機密データを管理する場合でも、デジタル署名を使用することで、セキュリティを確保しながらプロセスを効率化できます。このチュートリアルでは、GroupDocs.Signature for Javaを使用してデジタル署名の読み込みとドキュメントへの署名を実装する方法を説明します。

学習内容:

  • 証明書ストアからデジタル署名を読み込みます。
  • 読み込まれた証明書を使用してドキュメントにデジタル署名します。
  • GroupDocs.Signature を統合して Java アプリケーションを最適化します。

始めるために必要な前提条件について詳しく見ていきましょう。

前提条件

このチュートリアルで説明した機能を実装する前に、次のものを用意してください。

  • 必要なライブラリとバージョン:

    • GroupDocs.Signature (Java バージョン 23.12 以上)。
  • 環境設定要件:

    • 開発環境に JDK (Java Development Kit) がインストールされていることをご確認ください。
  • 知識の前提条件:

    • Java プログラミングに関する知識。
    • デジタル証明書とセキュリティにおけるその役割についての基本的な理解。

Java 用 GroupDocs.Signature の設定

まず、GroupDocs.Signatureをプロジェクトに統合する必要があります。これはMavenまたはGradleを使用するか、ライブラリを直接ダウンロードすることで行うことができます。

Mavenの使用

次の依存関係を pom.xml ファイル:

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-signature</artifactId>
    <version>23.12</version>
</dependency>

Gradleの使用

これをあなたの build.gradle ファイル:

implementation 'com.groupdocs:groupdocs-signature:23.12'

直接ダウンロード

または、最新バージョンを以下からダウンロードしてください。 GroupDocs.Signature for Java リリース.

ライセンス取得手順

  • 無料トライアル: まずは無料トライアルで機能をご確認ください。
  • 一時ライセンス: 拡張テスト機能が必要な場合は、一時ライセンスを取得してください。
  • 購入: 長期使用の場合はライセンスの購入を検討してください。

基本的な初期化とセットアップ

GroupDocs.Signatureを初期化するには、 Signature クラス:

import com.groupdocs.signature.Signature;

// ドキュメントパスで署名オブジェクトを初期化します
Signature signature = new Signature("path/to/your/document.pdf");

実装ガイド

実装を、デジタル署名の読み込みとドキュメントの署名という 2 つの主な機能に分けて考えてみましょう。

機能1: 証明書ストアからデジタル署名を読み込む

この機能は、GroupDocs.Signature for Java を使用して証明書ストアからデジタル署名を読み込む方法を示します。

ステップバイステップの実装

1. 必要なクラスをインポートする

まず必要なクラスをインポートします。

import com.groupdocs.signature.domain.signatures.DigitalSignature;
import java.util.ArrayList;
import java.util.List;

2. LoadDigitalSignaturesクラスを作成する

証明書ストアからデジタル署名を読み込むメソッドを実装します。

public class LoadDigitalSignatures {
    public List<DigitalSignature> run() {
        List<DigitalSignature> signatures = new ArrayList<>();
        try {
            // 「My」証明書ストアからデジタル署名を読み込みます。
            List<DigitalSignature> signaturesFromStore = DigitalSignature.loadDigitalSignatures(StoreName.My);
            signatures.addAll(signaturesFromStore);
        } catch (Exception e) {
            System.out.println("Error loading certificates: " + e.getMessage());
        }
        return signatures;
    }
}

3. 説明

  • パラメータ: StoreName.My 使用する証明書ストアを指定します。
  • 戻り値: 読み込まれたデジタル署名のリスト。

機能2: デジタル署名で文書に署名する

デジタル署名を取得したら、これらの証明書を使用してドキュメントに署名することができます。

ステップバイステップの実装

1. 必要なクラスをインポートする

import com.groupdocs.signature.Signature;
import com.groupdocs.signature.domain.signatures.DigitalSignature;
import com.groupdocs.signature.options.sign.DigitalSignOptions;
import java.io.File;
import java.security.KeyStore;

2. SignDocumentWithDigitalクラスを作成する

デジタル署名を使用してドキュメントに署名する方法を実装します。

public class SignDocumentWithDigital {
    public void run(String documentPath) {
        // デジタル署名を読み込みます。
        List<DigitalSignature> signatures = new LoadDigitalSignatures().run();
        
        int signatureNumber = 0;
        for (DigitalSignature digitalSignature : signatures) {
            signatureNumber++;
            String outputFilePath = new File("YOUR_OUTPUT_DIRECTORY\