コード例 #1
0
        public ActionResult <string> SignTextFile(string fileName)
        {
            FilesController.CheckFileNameArgument(fileName);

            var file = FileProvider.GetFileInfo($"{FileService.FILES_DIRECTORY}/{fileName}");

            Console.WriteLine($"Encontrou o arquivo {file.PhysicalPath}");

            var destinyPDF = Server.Services.iTextSharp.PDFCreator.CreateFromText(file.PhysicalPath);

            Console.WriteLine($"Gerou o PDF {destinyPDF}");

            using (var signer = new Server.Services.iTextSharp.PDFSigner(destinyPDF, "Mateus"))
            {
                var hash = signer.GenerateHash();
                Console.WriteLine($"Gerou o Hash do arquivo {hash}");

                var signBytes = signer.SignHash(hash, "");
                Console.WriteLine($"Gerou a assinatura {signBytes.Length}");

                var destinyPDFSigned = $"{destinyPDF}.signed.pdf";
                signer.SignPDFToNewFile(signBytes, destinyPDFSigned);
                Console.WriteLine($"Gerou o arquivo assinado em disco {destinyPDFSigned}");

                return(file.Name);
            }
        }
コード例 #2
0
        public ActionResult <string> IsValid(string fileName)
        {
            FilesController.CheckFileNameArgument(fileName);

            var file = FileProvider.GetFileInfo($"{FileService.FILES_DIRECTORY}/{fileName}");

            Console.WriteLine($"Encontrou o arquivo {file.PhysicalPath}");

            using (var signer = new Server.Services.iTextSharp.PDFSigner(file.PhysicalPath, "Mateus"))
            {
                return(signer.IsValid(file.PhysicalPath).ToString());
            }
        }