Подпись pDF файла отсоединенной подписью используя только КРИПТО ПРО

Задача – есть ключ подписи, им надо подписать какой то файл .pdf

Это можно сделать через Acrobat Reader + Крипто Про Pdf Plugin, либо с помощью программы КриптоАРМ. НО! Можно и консольной утилитой КриптоПРО без какого то доп софта, только КриптоПРО.

Шаг 1. Узнать отпечаток (thumbprint) сертификата

  • Через certmgr.exe из состава КриптоПро CSP: команда certmgr -list выведет все личные сертификаты с полем «SHA1 отпечаток». Через PS:
& "C:\Program Files\Crypto Pro\CSP\certmgr.exe" -list
  • Либо в «Инструментах КриптоПро» → Сертификаты → открыть сертификат → поле «Отпечаток»
  • Либо в Windows: certmgr.msc → Личное → Сертификаты → двойной клик → вкладка «Состав» → «Отпечаток».

Скопированный отпечаток нужно очистить от пробелов: bb1a...c43f — сплошная строка из 40 hex-символов.

Шаг 2. Создать отсоединённую подпись

Качаем cryptcp x64, лицензия на неё входит в лицензию CSP

Подписываем:

cryptcp -sign -detached -thumbprint <отпечаток> файл.pdf файл.pdf.sig

Шаг 3. Проверка подписи

cryptcp -vsignf -thumbprint bb1a...c43f "C:\docs\договор.pdf"

Автоматизация: пакетная подпись папки

Пример bat-файла, подписывающего все PDF в папке:

@echo off
set TP=bb1a...c43f
for %%f in ("C:\docs\*.pdf") do (
    cryptcp -signf -thumbprint %TP% -der "%%f"
)

Сryptcp это утилита самой КриптоПро, и она работают через криптопровайдер КриптоПро CSP, то есть подпись формируется именно российскими ГОСТ-алгоритмами.

Оставить ответ

Ваш адрес email не будет опубликован.

÷ 9 = 1