Как стать автором
Обновить

Комментарии 19

Возможно, мы сталкиваемся с разными сферами применения ЭЦП, но везде, где мне требовалось заверять оной документы, требовалась отсоединённая подпись в отдельном файле, а не встроенная в PDF. Что, соглашусь, неудобно, но вот так.

Да, пока чаще используют отсоединенную подпись. Возможно так сложилось исторически, не было достаточного количества продуктов и сервисов для использования встроенной в pdf?

При отсоединенной подписи часто присылают пользователям копию pdf с картинкой, что документ подписан. Немало людей воспринимают этот красивый штампик как факт, хранят потом эти документы (без файла подписи), рассчитывая на юридическую значимость. При встроенной в pdf эта проблема решается сама собой

При отсоединенной подписи часто присылают пользователям копию pdf с картинкой, что документ подписан.

Выславшую такое организацию - бить бы. За введение в заблуждение и выдачу картики за официальный документ. Зачем вообще этот штампик туда вставлять?

Это всё фигня. Просто печатают документ на бумагу и потом сканируют в pdf.
За примерами далеко ходить не надо https://sozd.duma.gov.ru/search

Пхаха у ПИК так:) файлик и протокол проверки от контур крипто. ( Tessa)

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

Да, это печально, но так. Рассказывал тут:
Документ что электронный, что бумажный должен быть не отделим от его подписи (подписей), неужели это не является логичным? При отсоединенной (открепленной) подписи можно складывать отдельные подписи в отдельные файлики и потом принести документ и отдельно «мешок» подписей к нему. Точнее два «мешка»: мешок документов и «мешок» файлов подписей, где одному документу соответствует много подписей (в том числе разных подписей одного подписанта). Это нормально? 
И заодно: Формат МинЦифры №472

В заголовке статьи массовое подписание PDF, а 90% статьи не по теме.

Недавно проходили что-то подобное.

1 Отсоединенная или присоединенная ЭЦП.

Если использовать присоединенную подпись и встроить ее в pdf файл, то как-бы да AdobeReader и многие другие приложения при открытии такого файла будут рисовать печать с зеленой галочкой с надписью "подписан ЭЦП" и возможность просмотра еще например ФИО подписанта.
Но есть ньюанс: Если подписать файл ЭЦП по ГОСТУ(а другая у нас недействительна), то чтобы вся эта красота проявилась нужно на компьютер где открываешь этот файл установить специальный плагин от компании КриптоПро - на момент изучения вопроса работал только с адобом.
А если плагина нет то адоб ридер рисует печать с красными предупреждающими знаками и надписью "Ошибка подписи!".
Мы так прикинули что из 40тыс наших клиентов этот плагин скорее всего установлен ни у кого.

Поэтому отправляли отсоединенную отдельным файлом и сопровождали текстом с описанием того как можно проверить и ссылкой на сервис проверки госуслуг.

2 Обезличенная ЭЦП.

Такая ЭЦП доступна далеко не всем организациям. Вернее только некоторым - в статье как раз перечислены. А все остальные оформляют ЭЦП на сотрудника, который имеет право подписи нужных документов и подписывают файлы этой ЭЦП.

Готовые библиотеки есть на многих языках, пишешь несложный код, закидываешь ЭЦП на сервер и погнали...

-но нужно периодически менять ЭЦП на сервере (обычно каждый год)

- в более менее крупных организация есть регламент использования ЭЦП запрещающий ее передачу кому-либо, а тем более установку на сервере.

3 Массовое подписание

Массовое это когда много - десятки сотни тысяч в короткий промежуток, у нас была задача 20тыс за 6 часов.
Эцп на сервер не передавать

Использовали крипто браузер плагин от все того же КриптоПро, который позволяет воткнуть токен с ЭЦП в свой ПК и подписывать файлы в веб приложениях.

И тут тоже столкнулись с проблемой - медленно. Если очень грубо то подписание файла состоит из двух этапов: 1 Расчет хэша по спец алгоритму 2 Формирование подписи файла хэш* ЭЦП. Так вот расчет хэша на порядки ресурсозатратнее формирования подписи.

Для расчета хэша ЭЦП не нужна, поэтому реализовали этот этап на сервере, в браузер передавали только хэш и уже на клиентском месте формировали подпись


Спасибо, что поделились опытом. Те же сомнения были по распространенности КриптоПро. Остановимся на отдельном файле.

Посмотрите еще на сервисы по проверке (те что с поддержкой pades). Их можно развернуть в своей инфраструктуре и реализовать проверку подписи у себя (вызовами REST API). Это повышает лояльность клиентов (и не возникает переживаний, что файлы передают третей стороне).

А тем, кто чуть более параноик и хочет перепроверить подпись локально, можно предлагать desktop приложения (например тот же КриптоПро PDF с Adobe Reader или КриптоАРМ, покупать лицензию для проверки подписи там не надо).

Но отдельный файл, тоже вариант конечно. Хотя и не всегда удобен.

Спасибо, хорошая мысль.

Интересный опыт, спасибо за описание кейса

" 20тыс за 6 часов " - в итоге остановились на подписании браузерным плагином и ЭП сотрудника из за требований по типу документов? Или возникли сложности с получением сертификата обезличенного? Если второе, то для его получения у ФНС из требований это приказ о создании информационной системы, или подтверждение что вы оператор ИС, что вполне реализуемо. В этой статье коллеги из Контура приложили шаблоны для заявки.

Такие объемы файлов (предположу, что шаблонных) подписывать автоматически обезличенной ЭП на сервере было бы удобнее, чем прогонять их через сотрудника.

Был случай, когда получил штраф за превышение скорости, подписанный ЭП. Удалось опротестовать штраф, т.к. владелец ЭП была в момент подписания в отпуске. Интересно, они сейчас учли этот момент?

Вообще согласно 63-ФЗ должны выполняться следующие условия:

  1. Она соответствует требованиям 63-ФЗ (запрашивайте сам сертификат, сверяйте с отпечатком в PDF, проверяйте сроки действия и цепочки)

  2. Владелец ключа подписи явно разрешил её использование (запрашивайте доказательства с правильными датами)

  3. Обеспечена защита ключей подписи и контроль доступа (здесь вам скорее всего информацию не предоставят, ссылаясь на закрытость данной информации)

  4. В случае использования КЭП, она создана с применением сертификатов, выданных аккредитованным удостоверяющим центром (можно отследить по цепочке)

Удалось опротестовать штраф, т.к. владелец ЭП была в момент подписания в отпуске

обычно обжалования по ЭП затягиваются чуть ли не на годы, как вам удалось ускорить (или не удалось?)

Обычно затягиваются. Но старался также формально, как они с нами:

  1. Я задавал вопросы, на которые нельзя было дать неоднозначные ответы

  2. Всегда уточнял, что необходимо соблюдать сроки ответа

  3. Ставил в копию регуляторов (в шапке пишется "Копия:", но можно не отправлять :) с указанием проведения проверок. Регуляторы - это Минцифра (про достоверность ЭП, сроки, её квалифицированность) и ФСБ (про состав сертификата, который только картинка в PDF и т.п. технические детали по его составу).

В результате решение по мне было принято ~ за 2,5 месяца с момента отправки первого письма.

Хорошая статья, спасибо. Жаль не появилась тогда, когда нужно было с этим всем разбираться. В целом все верно, кроме того,что в linearized pdf чуток подругому выглядит trailer и т. п. , но это уже детали.

Спасибо автору. Было полезно.

Пара вопросов в тему, можно?:

  1. А есть такое же (trusted-pdf) только с перламутровыми пуговицами на питоне (вариант просто звать csptest из fastapi и возвращать результат я знаю. Вдруг что красивее есть)?

  2. Можно как-то сделать массовое подписания без использования платного КриптоПро (юридические нюансы оставим за скобками)? Мне попадалось про openssl с ГОСТ, но что-то я в нем утонул :-(.

вариант просто звать csptest из fastapi и возвращать результат я знаю. Вдруг что красивее есть

У коллег из КриптоПро есть красивое решение - расширение для Python3. Исходный код открыт

В исследовательских целях можно найти примеры реализации ГОСТ криптографии под любой язык. Но для коммерческого использования разумнее воспользоваться готовым решением, от любого вендора.

Можно пальцем ткнуть в "готовое решение от любого вендора" для массового подписания документов? Я вот кроме КриптоАрм (который в автоматический режим не умеет) ничего готового не знаю. Только SDK от того же КриптоАрм да расширение от КриптоПро, которые надо допиливать и встраивать и которые требует тот же платный КриптоПро для работы.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации