Проверка подписи в PDF-файле

Проверка, подписан ли PDF-файл с использованием подписи

Чтобы проверить, подписан ли PDF-файл с использованием определенной подписи, используйте метод VerifySigned класса PdfFileSignature. Этот метод требует имени подписи и возвращает true, если PDF подписан с использованием этого имени подписи. Также возможно проверить, что PDF подписан, без проверки, какой именно подписью он подписан.

Проверка, что PDF подписан с заданной подписью

Следующий пример кода показывает, как проверить, подписан ли PDF с использованием заданной подписи.

public static void IsPdfSigned()
        {
            PdfFileSignature pdfSign = new PdfFileSignature();
            pdfSign.BindPdf(_dataDir + "DigitallySign.pdf");
            if (pdfSign.ContainsSignature())
                Console.WriteLine("Document Signed");
            pdfSign.Close();
        }

Проверка, что PDF подписан

Чтобы определить, подписан ли файл, без предоставления имени подписи, используйте следующий код.

 public static void IsPdfSignedWithGivenSignature()
        {
            PdfFileSignature pdfSign = new PdfFileSignature();
            pdfSign.BindPdf(_dataDir + "DigitallySign.pdf");
            if (pdfSign.VerifySigned("Signature1"))
            {
                Console.WriteLine("PDF Signed");
            }
            //if (pdfSign.VerifySigned("Signature2"))
            //{
            //    Console.WriteLine("PDF Signed");
            //}
        }

Проверка действительности подписи

Метод VerifySignature класса PdfFileSignature позволяет вам проверить конкретную подпись. Этот метод требует имя подписи в качестве входных данных и возвращает true, если подпись действительна. Следующий фрагмент кода показывает, как проверить подпись.

public static void IsPdfSignatureValid()
        {
            PdfFileSignature pdfSign = new PdfFileSignature();
            pdfSign.BindPdf(_dataDir + "DigitallySign.pdf");
            if (pdfSign.VerifySignature("Signature1"))
            {
                Console.WriteLine("Signature Verified");
            }
        }