Проверка подписи Pdf для Adobe Sign

#c# #.net #adobe #digital-signature #abcpdf

#c# #.net #adobe #цифровая подпись #abcpdf

Вопрос:

У меня есть файл PDF, который подписывается Adobe Sign. Однако я не могу проверить / валидировать подпись с помощью ABCpdf. Думаю, для этого мне не хватает корневого сертификата. Как я могу найти корневой сертификат для Adobe Sign. У меня есть корневой сертификат для всех других поставщиков, таких как Digicert, Global sign. Кроме того, все другие поставщики подписи работают нормально.

 if ((signature.Validate(collection)) amp;amp; (!signature.IsModified))
        {
            isValid = true;
        }
        try
        {
            isValid = signature.Validate();
        }
        catch (WebSupergoo.ABCpdf11.Internal.PDFException)
        {
            return ESignedStatus.SignedTempered;
        }

        var certs = signature.GetCertificates();

        if (!signature.IsTrusted)
            return ESignedStatus.SignedUnverified;
        else if (!isValid)
            return ESignedStatus.SignedTempered;
  

Ответ №1:

Я полагаю, что ваш ответ здесь:https://www.websupergoo.com/helppdfnet/source/6-abcpdf.objects/signature/1-methods/validate.htm

Как Adobe Reader проверяет документ PDF без файлов сертификатов?

Вы можете обнаружить, что Adobe Reader не нуждается в списке файлов сертификатов для проверки документов PDF. Это связано с тем, что Adobe Reader может использовать несколько встроенных иерархий инфраструктуры открытых ключей для сертификации документов PDF:

Службы сертифицированных документов (CDS) — это иерархия доверия, которая подключается к корневому центру сертификации Adobe (Adobe Root CA). Список доверия, одобренный Adobe (AATL), представляет собой дополнительный список сертификатов CA, которые Adobe Reader может периодически загружать из Adobe (для Adobe Reader / Acrobat 9 или более поздней версии). Хранилище сертификатов Windows. Это верно только в том случае, если в Acrobat включена интеграция с цифровой подписью Windows, которая не используется по умолчанию с Acrobat 9. Для проверки PDF-документа тем же способом, что и Adobe Reader, вам необходимо использовать те же сертификаты, что и он. Этого можно легко достичь, экспортировав доверенные идентификаторы из Adobe Reader в файлы сертификатов формата .cer. (Примечание: сертификаты CDS и AATL обычно отсутствуют в вашем хранилище сертификатов Windows по умолчанию.).

Затем их необходимо поместить в хранилище сертификатов Windows. Чтобы им можно было доверять, они должны находиться в одной из папок Trusted — Доверенные люди или доверенные корневые центры сертификации. Излишне говорить, что добавление элементов в эти папки, особенно в последнюю, имеет большое значение, и вы должны быть очень осторожны, чтобы убедиться, что вы знаете, что делаете.

Доступ к хранилищу сертификатов Windows можно получить с помощью System.Безопасность.Cryptography.X509Certificates.X509Store (примеры ниже).

Для экспорта из Acrobat / Acrobat Reader: Показать свойства подписи

Показать сертификаты подписавшего

Экспорт