Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.IO;
- using System.Text;
- using System.Security.Cryptography.X509Certificates;
- using iTextSharp.text;
- using iTextSharp.text.pdf;
- using iTextSharp.text.pdf.security;
- namespace Test
- {
- class Program
- {
- static void Main(string[] args)
- {
- System.IO.Stream stream = new MemoryStream();
- Document document = new Document();
- document.SetPageSize(PageSize.A4);
- PdfWriter writer = PdfWriter.GetInstance(document, stream);
- writer.CloseStream = false;
- document.Open();
- document.Add(new Paragraph("Hello World"));
- document.Close();
- writer.Close();
- string destPdfFileName = @"D:out.pdf";
- string pfxFileName = @"D:cert.pfx";
- string pfxPassword = "password";
- var cert = new X509Certificate2(pfxFileName, pfxPassword);
- stream.Position = 0;
- Org.BouncyCastle.X509.X509CertificateParser cp = new Org.BouncyCastle.X509.X509CertificateParser();
- Org.BouncyCastle.X509.X509Certificate[] chain = new Org.BouncyCastle.X509.X509Certificate[] { cp.ReadCertificate(cert.RawData) };
- IExternalSignature externalSignature = new X509Certificate2Signature(cert, "SHA-1");
- PdfReader pdfReader = new PdfReader(stream);
- FileStream signedPdf = new FileStream(destPdfFileName, FileMode.Create); // the output pdf file
- PdfStamper pdfStamper = PdfStamper.CreateSignature(pdfReader, signedPdf, '