Статус: Участник
Группы: Участники
Зарегистрирован: 30.07.2019(UTC) Сообщений: 17
Сказал(а) «Спасибо»: 1 раз
|
Здравствуйте!
Имеется следующая задача: подписать сервером запрос, который чуть ранее был создан и подписан клиентом в браузере, чтобы затем передать его в УЦ. Насколько я понял, результирующий запрос должен иметь 2 уровня вложенности. Просьба подсказать, как можно это сделать. Возможно есть примеры среди билда Крипто Про jcp?
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 30.07.2019(UTC) Сообщений: 17
Сказал(а) «Спасибо»: 1 раз
|
Уточню проблему. В старой версии УЦ1.5 можно было сервером просто передать запрос клиента, который был подписан только клиентом. С переходом на УЦ2.0 такой вариант отпал и требуется подписание еще и сервером. Неужели нет никакого примера, как нужную структуру выстроить?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,006  Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 715 раз в 675 постах
|
Здравствуйте. О каком запросе речь, какой формат подписи? Скорее всего, надо еще раз подписать, при этом данными для подписи должна служить первая подпись, например: 1 подпись => cms1 = sign_request_attached(data = request, key = key1, cert = cert1); 2 подпись => cms2 = sign_request_attached(data = cms1, key = key2, cert = cert2); Пример есть в CA20StepByStepExample (пакет userSamples/ca20 в samples-sources.jar) в ф. generateAndSendCertificateRequest, там создается CAdES-подпись, затем сообщение может быть еще раз подписано (фактически, подписывается предыдущая подпись). Отредактировано пользователем 31 июля 2019 г. 10:45:12(UTC)
| Причина: Не указана |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 30.07.2019(UTC) Сообщений: 17
Сказал(а) «Спасибо»: 1 раз
|
Большое спасибо! Буду разбираться.
Еще раз процесс по порядку: 1. Клиент создает запрос в браузере посредством cades-plugin и подписывает его своим временным сертификатом. 2. Сертификат приходит на сервер приложения. 3. Сервер еще раз подписывает запрос и отправляет в УЦ.
Для УЦ1.5 сервер мог не подписывать ничего. В версии 2.0 требуется еще подпись сервера. Была попытка использовать пример из поставки Крипто Про с методом createCMSEx, все сработало, но УЦ посчитал, что это запрос не пользователя-человека, а запрос сервера, положив его в соответствующий каталог. Были еще попытки использования примеров из поставки Крипто Про, но они приводили к ошибке с неверной структурой подписей. В связи с чем и был задан вопрос. Собственно на текущий момент, пока еще не ознакомился с примерами в CA20StepByStepExample, ничего годного для понимания не встретил.
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 30.07.2019(UTC) Сообщений: 17
Сказал(а) «Спасибо»: 1 раз
|
Так и не удалось разобраться. Еще уточнение: Запрос формируется и подписывается пользователем через cades-plugin в браузере. Сам запрос имеет формат PKCS#10, а после подписания клиентом на сервер приходит PKCS#7.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,006  Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 715 раз в 675 постах
|
Задайте вопрос по поводу формата подписи в разделе про УЦ, после можно будет вернуться к созданию подписи. |
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close