Форум КриптоПро
»
КриптоПро УЦ
»
КриптоПро УЦ 1.5
»
SubmitFirstCertRequest тестовый УЦ 1.5
Статус: Активный участник
Группы: Участники
Зарегистрирован: 31.05.2016(UTC) Сообщений: 33 Сказал(а) «Спасибо»: 4 раз Поблагодарили: 2 раз в 2 постах
|
Добрый день. Отправляю SOAP запрос на выпуск сертификата в тестовый УЦ крипто ПРО 1.5 https://cryptopro.ru:5555/ra/ra.asp Код:
String reqCertId = serviceRequest.submitFirstCertRequest(userId, pkcs, new BooleanHolder(), new StringHolder(""));
System.out.println("First Req Cert Id :" + reqCertId);
Перед этим проставляю свойства Код:
System.setProperty("com.sun.security.enableCRLDP", "true");
System.setProperty("com.ibm.security.enableCRLDP", "true");
System.setProperty("javax.net.ssl.supportGVO","true");
System.setProperty("javax.net.ssl.requireClientAuth", "true");
System.setProperty("javax.net.ssl.trustStoreType", JCP.CERT_STORE_NAME);
System.setProperty("javax.net.ssl.trustStore", "M:\\cryptopro\\client.store");
System.setProperty("javax.net.ssl.trustStorePassword", "Qwer1234");
System.setProperty("javax.net.ssl.keyStoreType", JCP.HD_STORE_NAME);
System.setProperty("javax.net.ssl.keyStorePassword", "1");
В HDImageStore лежит сертификат оператора УЦ, полученный через ТП Крипто ПРО. Получаю ошибку Код:Эта операция не может быть выполнена на этом сертификате. : ALL
Код -2147220991
Нужен сертификат администратора?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,732 Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
Здравствуйте. На тестовом УЦ запрещен выпуск сертификатов без расширения "Улучшенный ключ". В запрос нужно добавить это расширение с каким-нибудь допустимым значением, например "Защищенная электронная почта". |
|
1 пользователь поблагодарил Кирилл Соболев за этот пост.
|
MaximZ оставлено 16.06.2016(UTC)
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 31.05.2016(UTC) Сообщений: 33 Сказал(а) «Спасибо»: 4 раз Поблагодарили: 2 раз в 2 постах
|
Спасибо, продвинулся дальше, теперь запрос появился в УЦ со статусом "Обработка", я так понимаю, что далее мне нужно вызвать метод CertRequestSoapPort.AcceptFirstRequest. Этот метод принимает на вход requestID и request в формате PKCS7. C requestID всё понятно, а где теперь взять request PKCS7?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,732 Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
Нужно подписать pkcs из предыдущего вызова. В подписи обязательно должен присутствовать сертификат. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 31.05.2016(UTC) Сообщений: 33 Сказал(а) «Спасибо»: 4 раз Поблагодарили: 2 раз в 2 постах
|
Я получаю pkcs10 на клиенте, через Browser plugin, используя интерфейс CertEnroll. Могу ли я подписать pkcs10 не на клиенте, используя сертификат оператора УЦ? Ведь по идее это запрос на первый сертификат, следовательно у клиента еще подписывать нечем. Если да, то правильно ли я понимаю, что JCP такую возможность предоставляет?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,732 Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
Да, конечно. pkcs10 подписывается тем же сертификатом, на котором происходит вызов AcceptRequest. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 31.05.2016(UTC) Сообщений: 33 Сказал(а) «Спасибо»: 4 раз Поблагодарили: 2 раз в 2 постах
|
Пытаюсь подписать pkcs10 сертификатом оператора УЦ, код беру из примеров CMS_samples CMS.java Создаю detached подпись. (Метод CMSSign идентичен методу из CMS.java, только алиас и пароль на хранилище свои подставляю) pkcs10 это строка в Base64 Код:
final byte[] signedPKCS = CMSSign( Base64.decodeBase64(pkcs10), privateKey, x509Certificate, true);
Далее кодирую её в Base64 и передаю в метод Код:
serviceRequest.acceptFirstRequest(requestId, Base64.encodeBase64String(signedPKCS));
Получаю ответ от УЦ: Код:
Неправильная подпись.
Код: -2146893818
Пробовал проверить подпись на этом сервисе https://dss.cryptopro.ru/Verify/Verify/Похожий ответ, хотя пишет, что подпись действительна? Код:
Подпись 1
Результат проверки
Подпись действительна
Дополнительная информация
Не удалось проверкить подпись формата CMS. Ошибка: [Неправильная подпись]. Код: [0x80090006].
Информация о сертификате
Субъект
CN=Zolotov Maxim, C=RU
Издатель
CN="Тестовый УЦ ООО ""КРИПТО-ПРО""", O="ООО ""КРИПТО-ПРО""", C=RU, E=info@cryptopro.ru, L=Москва, S=77 г. Москва, STREET="ул. Сущёвский вал, д. 18", ИНН=007717107991, ОГРН=1037700085444
Серийный номер
42D0253200030002E0CE
Срок действия
08.06.2016 08:12:00 - 08.09.2017 08:22:00
Отпечаток сертификата
90915524616A86DC34309F7FF37908ACAA482A77
В чём может быть проблема?
|
|
|
|
Форум КриптоПро
»
КриптоПро УЦ
»
КриптоПро УЦ 1.5
»
SubmitFirstCertRequest тестовый УЦ 1.5
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close