如何使用 GroupDocs.Signature for Java 实现数字签名加载和签名
介绍
在当今的数字时代,确保文档的真实性和完整性对于金融、法律和医疗保健等各个领域都至关重要。无论您是在线签署合同还是管理敏感数据,使用数字签名都可以简化流程并确保安全。本教程将指导您使用 GroupDocs.Signature for Java 实现数字签名加载和文档签名。
您将学到什么:
- 从证书存储区加载数字签名。
- 使用已加载的证书对文档进行数字签名。
- 通过集成 GroupDocs.Signature 优化您的 Java 应用程序。
让我们深入了解开始所需的先决条件!
先决条件
在实现本教程中讨论的功能之前,请确保您具备以下条件:
所需的库和版本:
- GroupDocs.Signature 适用于 Java 版本 23.12 或更高版本。
环境设置要求:
- 确保您的开发环境已安装 JDK(Java 开发工具包)。
知识前提:
- 熟悉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 Java 版本.
许可证获取步骤
- 免费试用: 从免费试用开始探索功能。
- 临时执照: 如果您需要扩展测试能力,请获取临时许可证。
- 购买: 考虑购买长期使用的许可证。
基本初始化和设置
要初始化 GroupDocs.Signature,请创建一个实例 Signature
班级:
import com.groupdocs.signature.Signature;
// 使用文档路径初始化签名对象
Signature signature = new Signature("path/to/your/document.pdf");
实施指南
让我们将实现分解为两个主要功能:加载数字签名和签署文档。
功能 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 {
// 从“我的”证书存储区加载数字签名。
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\