0


PDF控件Spire.PDF for .NET【安全】演示:使用时间戳服务器对 PDF 进行数字签名

Spire.PDF for .NET 是一款独立 PDF 控件,用于 .NET 程序中创建、编辑和操作 PDF 文档。使用 Spire.PDF 类库,开发人员可以新建一个 PDF 文档或者对现有的 PDF 文档进行处理,且无需安装 Adobe Acrobat。

E-iceblue 功能类库Spire 系列文档处理组件均由中国本土团队研发,不依赖第三方软件,不受其他国家的技术或法律法规限制,同时适配国产操作系统如中科方德、中标麒麟等,兼容国产文档处理软件 WPS(如 .wps/.et/.dps 等格式

Spire.PDF for.net下载 Spire.PDF for java下载

数字时间戳用时间和日期标记 PDF 签名,作为完整性证明。时间戳表明文档的内容在某个时间点存在且未更改。本文将介绍如何使用 Spire.PDF 通过时间戳服务器对 PDF 文档进行数字签名。

代码片段

[C#]

  1. using Spire.Pdf;
  2. using Spire.Pdf.Graphics;
  3. using Spire.Pdf.Security;
  4. using System.Drawing;
  5. namespace SignPDFwithTimestamp
  6. {
  7. class Program
  8. {
  9. static void Main(string[] args)
  10. {
  11. //create a PdfDocument object and load a PDF file
  12. PdfDocument doc = new PdfDocument();
  13. doc.LoadFromFile(@"C:\Users\Administrator\Desktop\Example.pdf");
  14. //load the certificate .pfx file
  15. PdfCertificate cert = new PdfCertificate(@"C:\Users\Administrator\Desktop\gary.pfx", "e-iceblue");
  16. //add a signature to the specified position
  17. PdfSignature signature = new PdfSignature(doc, doc.Pages[0], cert, "signature");
  18. signature.Bounds = new RectangleF(new PointF(350, 700), new SizeF(180, 90));
  19. //set the signature content
  20. signature.NameLabel = "Digitally signed by:Gary";
  21. signature.LocationInfoLabel = "Location:";
  22. signature.LocationInfo = "CN";
  23. signature.ReasonLabel = "Reason: ";
  24. signature.Reason = "Ensure authenticity";
  25. signature.ContactInfoLabel = "Contact Number: ";
  26. signature.ContactInfo = "028-81705109";
  27. signature.DocumentPermissions = PdfCertificationFlags.AllowFormFill | PdfCertificationFlags.ForbidChanges;
  28. signature.GraphicsMode = GraphicMode.SignImageAndSignDetail;
  29. signature.SignImageSource = PdfImage.FromFile(@"C:\Users\Administrator\Desktop\company-logo.jpg");
  30. //configure a timestamp server
  31. string url = "http://timestamp.wosign.com/rfc3161";
  32. signature.ConfigureTimestamp(url);
  33. //save to file
  34. doc.SaveToFile("output.pdf");
  35. }
  36. }
  37. }

[VB.NET]

  1. Imports Spire.Pdf
  2. Imports Spire.Pdf.Graphics
  3. Imports Spire.Pdf.Security
  4. Imports System.Drawing
  5. Namespace SignPDFwithTimestamp
  6. Class Program
  7. Private Shared Sub Main(args As String())
  8. 'create a PdfDocument object and load a PDF file
  9. Dim doc As PdfDocument = New PdfDocument()
  10. doc.LoadFromFile("C:\Users\Administrator\Desktop\Example.pdf")
  11. 'load the certificate .pfx file
  12. Dim cert As PdfCertificate = New PdfCertificate("C:\Users\Administrator\Desktop\gary.pfx","e-iceblue")
  13. 'add a signature to the specified position
  14. Dim signature As PdfSignature = New PdfSignature(doc,doc.Pages(0),cert,"signature")
  15. signature.Bounds = New RectangleF(New PointF(350, 700), New SizeF(180, 90))
  16. 'set the signature content
  17. signature.NameLabel = "Digitally signed by:Gary"
  18. signature.LocationInfoLabel = "Location:"
  19. signature.LocationInfo = "CN"
  20. signature.ReasonLabel = "Reason: "
  21. signature.Reason = "Ensure authenticity"
  22. signature.ContactInfoLabel = "Contact Number: "
  23. signature.ContactInfo = "028-81705109"
  24. signature.DocumentPermissions = PdfCertificationFlags.AllowFormFill | PdfCertificationFlags.ForbidChanges
  25. signature.GraphicsMode = GraphicMode.SignImageAndSignDetail
  26. signature.SignImageSource = PdfImage.FromFile("C:\Users\Administrator\Desktop\company-logo.jpg")
  27. 'configure a timestamp server
  28. Dim url As String = "http://timestamp.wosign.com/rfc3161"
  29. signature.ConfigureTimestamp(url)
  30. 'save to file
  31. doc.SaveToFile("output.pdf")
  32. End Sub
  33. End Class
  34. End Namespace

如何使用 C#、VB.NET 中的时间戳服务器对 PDF 进行数字签名

以上便是如何用时间戳服务器对 PDF 进行数字签名,如果您有其他问题也可以继续浏览本系列文章,获取相关教程~

标签: pdf .net 安全

本文转载自: https://blog.csdn.net/m0_67129275/article/details/136557120
版权归原作者 慧都小妮子 所有, 如有侵权,请联系我们删除。

“PDF控件Spire.PDF for .NET【安全】演示:使用时间戳服务器对 PDF 进行数字签名”的评论:

还没有评论