Aspose.PDF 签名 for .NET
Aspose.PDF Signature for .NET 允许开发人员在 PDF 文档中编程应用、验证和管理数字签名. 支持多种证书格式、签名的外观自定义、时间调整和转数据访问,该插件确保文件的真实性、完整性和非重复性。
开始使用
安装和设置
- 安装
Aspose.PDF
从 NuGet 或下载集直接。
dotnet add package Aspose.PDF
- 在Startup上设置测量许可证(参见 计量许可 ).
特点与功能
创建数字签名
- 使用 X.509 证书(PFX、P12)、PKCS#7、CMS 或外部供应商登记。
- 支持RSA和ECDSA加密算法。
- 将分开或包围的签名应用到整个文件或特定字段。
签名验证
- 检查并验证现有签名。
- 检查证书的完整性和检测变更。
- 以理由恢复签名状态(有效、无效、未知)。
证书管理
- 从文件、字符串或小印存储中加载证书。
- 使用密码保护的密钥。
- 管理证书链和信任商店动态。
签名 外观 定制
- 将文本、徽标、标签或QR代码添加到签名显示中。
- 控制字体、颜色、调整和旋转。
- 在字段或坐标上准确地放置签名。
签名字段和形式集成
- 编程创建新的签名字段或使用现有 AcroForm 字幕。
- 支持多签名工作流。
- 执行字段属性(需要,签名后锁定)。
时间支持
- 從 TSA 伺服器中連接 RFC 3161 時鐘。
- 确认现有时间表。
- 设置 TSA URL、认证和政策。
签名审计与报告
- 提取签名细节(姓名、原因、地点、联系人)。
- 获取创建和修改日期。
- 创建审计记录或遵守报告。
代码示例: PDF 文件签名
// Define input and output files
var inputPath = Path.Combine(@"C:\Samples\", "sample.pdf");
var certPath = Path.Combine(@"C:\Samples\", "certificate.pfx");
var outputPath = Path.Combine(@"C:\Samples\", "signed.pdf");
// Create signature instance
var signer = new Signature();
// Configure signature options
var options = new SignOptions
{
CertificateFile = certPath,
CertificatePassword = "password",
Reason = "Document Approval",
Location = "Head Office",
Contact = "info@example.com"
};
// Add input and output
options.AddInput(new FileDataSource(inputPath));
options.AddOutput(new FileDataSource(outputPath));
// Process signing
var resultContainer = signer.Process(options);
// Retrieve result
var result = resultContainer.ResultCollection[0];
Console.WriteLine($"Signed PDF saved: {result}");
提示和最佳实践
- 在签名之前,始终检查证书链和信任轴承。
- 在高容量工作流中重复使用证书示例,以减少I/O。
- 预设计签名外观模板一致性。
- 与长期有效的分离签名相结合。
- 签名后锁定或粘贴字段,以防止未经授权的编辑。
- 记录验证结果与审计轨道的错误原因。
经常提出的问题
**什么是 .NET 的 Aspose.PDF 签名?**它允许在 .NET 应用程序内在 PDF 文件中签名、验证和管理数字签名的内容。
**哪些证书格式支持?**它支持X.509(PFX,P12),PKCS#7,CMS,以及外部签名提供商。
**我可以自定义数字签名的外观吗?**是的,您可以添加文本、图像、QR代码,并定义字体、颜色和配置。
**支持时间停留吗?**是的,通过 TSA 服务器支持 RFC 3161 时间停机。
**多份签名可以适用于文件吗?**是的,它支持使用 AcroForm 字段使用多签名工作流。