C# pdf文件加数字证书,防篡改

C#指定文件夹内新创建pdf文件加签数字证书,代码实现

引用:Spire.Pdf

{
            string[] files = Directory.GetFiles(Config.pdfPath);//需加数字证书pdf存放文件夹地址
             string filesList = "";
             foreach (string file in files)  //循环获取文件夹内pdf文件并加数字证书
             {
                 string exname = file.Substring(file.LastIndexOf(".") + 1);
                 if ("pdf".IndexOf(exname) > -1)
                 {
                   
                     FileInfo fi = new FileInfo(file);
                     string fileName = fi.FullName.Replace(@"\", @"\\");
                     DateTime timeB = DateTime.Now;  //获取当前时间
                     TimeSpan ts = timeB - fi.CreationTime;	//计算文件创建到当前时间的时间差
                     if (ts.TotalSeconds > int.Parse(60))//大于60秒的不加签
                     {
                        continue;
                     }
                     else {
                        PdfDocument pdf = new PdfDocument();
                        pdf.LoadFromFile(fileName);
                        X509Certificate2 x509 = new X509Certificate2("D:\备份\数字证书\XXX.pfx", "XXXX");//入参 (数字证书存放地址,KEY)
                        PdfOrdinarySignatureMaker signatureMaker = new PdfOrdinarySignatureMaker(pdf, x509);
                        signatureMaker.MakeSignature("XXXX"); //KEY
                        pdf.SaveToFile(fileName, FileFormat.PDF); //保存加数字签名后的文件
                        filesList += fileName + ";\r\n";
                        }
                 }
                 else
                 {
                    continue;
                 }
             }
             if (filesList != "") {
                 Log.info(filesList + "已加签数字证书\r\n");
             }
            Log.debug("加签结束");
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

tiegenZ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值