/sign_PDF_pycades

Модуль реализации подписания PDF-файла ЭЦП (Электронной цифровой подписью) | CryptoPro (КриптоПро)

Primary LanguagePythonMIT LicenseMIT

sign_PDF_pycades

Модуль реализации подписания PDF-файла. PDF-файл подписывается ЭЦП (Электронной цифровой подписью) по ГОСТу криптопровайдером КриптоПро. Доступно расподписание файла и верификация на предмет того, был ли файл подписан именно необходимым сертификатом КриптоПро. Pycades - Расширение Python|КриптоПро.

Распаковка проекта

  • Установите и активируйте виртуальное окружение:
python -m venv venv
source venv/Scripts/activate
  • Установите зависимости из файла requirements.txt:
pip install -r requirements.txt

Технологии

Python 3.11.0, FastAPI 0.95.2, КриптоПро

Авторы

В разработке

  • Проработать схему установки сертификатов в хранилище сервиса консольной утилитой crtmgr (способ подстановки пинкода для сертификатов из контейнероа pfx);
  • Через отдельный эндпоинт реализовать подписание хэша, пришедшего строкой в запросе от внешнего клиента, или хэшировать файл на месте алгоритмом из pycades;
  • Доработать исключение по pin-у;
  • Создать тестовый пример внешнего клиента.
  • Создать .Dockerfile для упаковки сервиса в контейнер.
  • Подпись внутри PDF.