Ключевое слово в защите информации
ключевое слово
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Юрич  
#1 Оставлено : 25 июля 2022 г. 12:01:48(UTC)
Юрич

Статус: Новичок

Группы: Участники
Зарегистрирован: 21.07.2022(UTC)
Сообщений: 2
Российская Федерация

Всем доброго дня!
В нашем проекте (web приложение) возникла необходимость отправлять подписанные данные (PDF 1/A) в гос. сервис. Используем для этого Browser plug-in.
Штука заключается в том, что требуется подписать именно двоичный файл. То есть нельзя перевести в base64 и потом подписать - на той стороне проверяют подпись именно оригинального (двоичного) файла.
Искал тут по форуму, нашел такую отсылку : https://cpdn.cryptopro.r...es/content-encoding.html (статья старая, непонятно на сколько ей можно верить, но другой нет) пишут, что вроде как проблематично.
Обратил внимание, что во всех примерах при использовании плагина передают параметр CADESCOM_BASE64_TO_BINARY - так плагин понимает, что входные данные нужно перевести из base64 в бинарные (получается, что на вход нужно подавать именно base64)
Испробовал уже +100500 способов подписания - так или иначе подпись получается не валидная. Последний вариант был такой - запрашиваем с бэка pdf, кладем его в blob и передаем на вход функции SignCades (предварительно отключив CADESCOM_BASE64_TO_BINARY) - получаем ошибку "неверный параметр".

Может кто то сталкивался с подобной задачей - подписать на клиенте двоичный файл (а не его base64 версию) ?
Offline Андрей *  
#2 Оставлено : 25 июля 2022 г. 12:52:49(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,159
Мужчина
Российская Федерация

Сказал «Спасибо»: 618 раз
Поблагодарили: 2389 раз в 1880 постах
Здравствуйте.


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

Приложите исходный (текстовый) pdf и подпись (тестовым сертификатом), которую получаете (в архиве) или пришлите в ЛС.


Цитата:
Штука заключается в том, что требуется подписать именно двоичный файл. То есть нельзя перевести в base64 и потом подписать - на той стороне проверяют подпись именно оригинального (двоичного) файла.


https://docs.cryptopro.r...in-samples-sign-detached

// Значение свойства ContentEncoding должно быть задано до заполнения свойства Content
yield oSignedData.propset_ContentEncoding(CADESCOM_BASE64_TO_BINARY);
yield oSignedData.propset_Content(dataInBase64);

SignCades(oSigner, CADESCOM_CADES_BES, true);
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей *  
#3 Оставлено : 25 июля 2022 г. 12:55:19(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,159
Мужчина
Российская Федерация

Сказал «Спасибо»: 618 раз
Поблагодарили: 2389 раз в 1880 постах
Автор: Юрич Перейти к цитате

Может кто то сталкивался с подобной задачей - подписать на клиенте двоичный файл (а не его base64 версию) ?



https://cryptopro.ru/sit...page/cades_bes_file.html (в примере - присоединенная подпись создается)

https://docs.cryptopro.r...s/plugin-samples-fileapi

https://docs.cryptopro.r...n-samples-fileapi_stream
Техническую поддержку оказываем тут
Наша база знаний
Offline Новожилова Елена  
#4 Оставлено : 25 июля 2022 г. 17:16:57(UTC)
Новожилова Елена

Статус: Сотрудник

Группы: Администраторы, Участники
Зарегистрирован: 10.12.2008(UTC)
Сообщений: 945
Женщина
Откуда: Крипто-Про

Поблагодарили: 117 раз в 106 постах
https://support.cryptopr...etsja-v-kriptoarmcryptcp

Посмотрите пожалуйста, вроде как раз ваш случай описан.
Offline Юрич  
#5 Оставлено : 26 июля 2022 г. 4:25:54(UTC)
Юрич

Статус: Новичок

Группы: Участники
Зарегистрирован: 21.07.2022(UTC)
Сообщений: 2
Российская Федерация

Коллеги, спасибо!
Все получилось. Получаем через AJAX файл (blob объект), загружаем в oFReader, затем содержимое oFReader (base64) отдаем на подпись SignCades. В итоге получаем валидную подпись оригинального PDF файла.
Offline Максим Коллегин  
#6 Оставлено : 26 июля 2022 г. 11:48:51(UTC)
Максим Коллегин

Статус: Сотрудник

Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,444
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 38 раз
Поблагодарили: 743 раз в 638 постах
DSS-Lite еще мог бы помочь.
Знания в базе знаний, поддержка в центре поддержки
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.