Статус: Участник
Группы: Участники
Зарегистрирован: 30.10.2023(UTC) Сообщений: 11
Сказал(а) «Спасибо»: 1 раз
|
Здравствуйте! Пишу веб-сервис с опцией подписания документа с помощью квалифицированной ЭЦП. Использовал КриптоПро ЭЦП SDK и браузерный плагин в связке для подписания документа. На стороне компьютера csp 5.0. Со стороны sdk использовал асинхронный пример с использованием fileApi из https://docs.cryptopro.ru/cades/plugin/plugin-samples/plugin-samples-fileapi с изменениями для своего проекта, но не касаясь дефолтных констант плагина и sdk. На выходе все работает, sSignedMessage рендерится и срабатывает "Signature verified". Есть следующие вопросы: 1) Как мне узнать, получилась прикрепленная или открепленная подпись и как вообще дать пользователю выбор? Сейчас криптопро просто просит выбрать контейнер и ввести пароль. 2) По комментариям в коде я в принципе догадываюсь, что подпись открепленная. Если это так, как мне выгрузить подписанный pdf файл обратно на сервер, если в oFile переменную я закладываю blob-объект, сделанный из этого самого pdf файла? То есть, в какой переменной хранится подписанная версия pdf файла после непосредственно подписания? 3) В дополнение к первому вопросу, как дать пользователю выбрать алгоритм подписания? Есть ли такой функционал вообще в sdk? Был бы очень признателен, если бы смогли проинструктировать по этим вопросам. Перерыл уже пол форума и всю документацию плагина вдоль и поперек, но вопросы эти все равно остаются
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,712   Сказал «Спасибо»: 574 раз Поблагодарили: 2303 раз в 1804 постах
|
Здравствуйте. В документации есть описание и примеры. SignCadesЦитата: HRESULT SignCades ( VARIANT Signer, CADESCOM_CADES_TYPE CadesType, VARIANT_BOOL bDetached, CAPICOM_ENCODING_TYPE EncodingType, BSTR *pVal ); bDetached Вид подписи: отделенная (true) или совмещенная (false). По умолчанию совмещенная.
Исходный файл и файл ЭП (отсоединенная) - передаются на сервер? Можно, если исходный файл есть на сервере, отправлять только файл ЭП и проверять корректность на сервере. Алгоритм связан с алгоритмом сертификата. Если выбран ГОСТ - то будет ГОСТ, если RSA - то RSA ... или вопрос в чём? Как задать RSA для ГОСТ ключа )? |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 30.10.2023(UTC) Сообщений: 11
Сказал(а) «Спасибо»: 1 раз
|
Автор: Андрей *  Здравствуйте. В документации есть описание и примеры. SignCadesЦитата: HRESULT SignCades ( VARIANT Signer, CADESCOM_CADES_TYPE CadesType, VARIANT_BOOL bDetached, CAPICOM_ENCODING_TYPE EncodingType, BSTR *pVal ); bDetached Вид подписи: отделенная (true) или совмещенная (false). По умолчанию совмещенная.
Исходный файл и файл ЭП (отсоединенная) - передаются на сервер? Можно, если исходный файл есть на сервере, отправлять только файл ЭП и проверять корректность на сервере. Алгоритм связан с алгоритмом сертификата. Если выбран ГОСТ - то будет ГОСТ, если RSA - то RSA ... или вопрос в чём? Как задать RSA для ГОСТ ключа )?
Внесу небольшую поправку, sdk я не использую, оговорился) эцп плагин со стороны браузера и cadesplugin для связи расширения с криптопро csp 1)Насчет переменной bDetached. Ее можно задать и через кадесплагин, получается? data.SignCades(oSigner, CADESCOM_CADES_BES, true), если я правильно понял, то третий параметр здесь - это как раз и есть тип подписи? тогда с этим понятно 2)По второму вопросу, у меня есть небольшое недопонимание в том, не как отправлять и принимать файлы, а что конкретно мне нужно сохранять в случае присоединенной и отсоединенной подписи) Если подпись отсоединенная, то в sSignedMessage просто хеш подписи лежит, тогда мне и файл, и хеш нужно сохранить. В случае присоединенной в sSignedMessage хранится контейнер с файлом и подписью, получается?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 26.07.2011(UTC) Сообщений: 13,712   Сказал «Спасибо»: 574 раз Поблагодарили: 2303 раз в 1804 постах
|
да, только не хеш подписи, а хеш файла + дата\время в подписанных атрибутах.
если Detached - то нужен исходный файл, если Detached=false - то исходный файл внутри закодирован.
Проверки на сервере нет получается? |
|
 1 пользователь поблагодарил Андрей * за этот пост.
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 30.10.2023(UTC) Сообщений: 11
Сказал(а) «Спасибо»: 1 раз
|
Автор: Андрей *  да, только не хеш подписи, а хеш файла + дата\время в подписанных атрибутах.
если Detached - то нужен исходный файл, если Detached=false - то исходный файл внутри закодирован.
Проверки на сервере нет получается? Да, все правильно, на клиентских машинах установлены списки отзывов и корневые сертификаты из цепочки, так что отталкиваемся от процесса непосредственно на клиентской стороне. Пока что все понятно, спасибо за то, что проинструктировали
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close