c# - 签署 PDF 文档

标签 c# key itext pki pkcs#12

目前我正在升级我的旧应用程序,这是使用 itextsharp 5.0.0 到 5.4.5(最新)完成的...但是我在获取等效代码时遇到问题

PdfSignatureAppearance.SetCrypto(this.myCert.Akp, this.myCert.Chain, null, PdfSignatureAppearance.SELF_SIGNED);

有人可以帮我解决这个问题吗?

提前致谢...

最佳答案

我使用 5.5 版本的 iTextSharp 签署 PDF 文档。 下面是示例代码。

        // Set the reader (PdfReader) and output (Stream) first
        PdfStamper stamper = PdfStamper.CreateSignature(reader, output, '\0');

        PdfSignatureAppearance signatureAppearance = stamper.SignatureAppearance;
        signatureAppearance.SignatureRenderingMode = PdfSignatureAppearance.RenderingMode.GRAPHIC_AND_DESCRIPTION;
        signatureAppearance.Reason = "I love signing";
        signatureAppearance.LocationCaption = "";
        signatureAppearance.SignatureGraphic = Image.GetInstance(this.imageFolderPath + "sign.png");

        signatureAppearance.SetVisibleSignature(
            new Rectangle(100, 100, 300, 200), 
            reader.NumberOfPages, 
            "Signature");

        // Get certificate from store, here I am reading file
        X509Certificate2 cert = new X509Certificate2(certFile, certPassword);
        var keyPair = DotNetUtils.GetKeyPair(cert.PrivateKey).Private;
        BcX509.X509Certificate bcCert = DotNetUtils.FromX509Certificate(cert);
        var chain = new List<BcX509.X509Certificate> { bcCert };
        IExternalSignature signature = new PrivateKeySignature(keyPair, "SHA-256");

        MakeSignature.SignDetached(signatureAppearance, signature, chain, null, null, null, 0, CryptoStandard.CMS);

        stamper.Close();

关于c# - 签署 PDF 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21474649/

相关文章:

c# - MonoDevelop 调试器崩溃,没有错误消息,使用 Dijkstra 算法和二维数组

c# - 将隐式类型的局部变量初始化为 IList

mysql - 当重复项是不同的唯一列时,如何防止 MySQL 在使用 ON DUPLICATE KEY UPDATE 时自动递增主键?

c# - WPF Key 是数字或数字

c# - 如何在我只想旋转这些页面的特殊页面中设置页面大小!

java - iText 页面换行 - 更改元素的顺序

c# - Image.FromFile 为无效图像格式抛出 OutOfMemoryException 是否有原因?

c# - 如何在 c#.net windows 应用程序中检查 gridview 的行是否被选中

JavaScript 符号类型 : (non-string object keys)

java - 为什么我找不到 iText 文档的引用?