Статус: Активный участник
Группы: Участники
Зарегистрирован: 16.02.2016(UTC) Сообщений: 60
Сказал(а) «Спасибо»: 18 раз Поблагодарили: 2 раз в 2 постах
|
Выполняю команду : Код:/opt/cprocsp/bin/cryptcp -creatrqst requestFile -dn "e=test@test.ru, C=RU" -both -provtype 81 -cont '\\.\HDIMAGE\test_cnt8.cont' -hashAlg 1.2.643.7.1.1.2.3
Успешно получаю файл запроса сертификата. Что нужно сделать чтобы повторно получить файл csr на этом же контейнере ? Выполняю : Код:/opt/cprocsp/bin/cryptcp -creatrqst requestFile -dn "e=test@test.ru, C=RU" -provtype 81 -nokeygen -hashAlg 1.2.643.7.1.1.2.3
Из полученного списка выбираю "test_cnt8.cont" и получаю : Код:
Error: Keyset does not exist/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/Enroll.cpp:450: 0x80090016
[ErrorCode: 0x80090016]
Я правильно понимаю, что первый раз генерится ключевая пара и публичка вместе с подписью приложена к самому csr файлу ? С помощью jcp посмотрел что лежит в контейнере, и там только сгенерированная приватка CryptoPro Gost PrivateKey (GOST3410DH_2012_512) with parameters: 1.2.643.7.1.1.6.2. Как использовать контейнер для генерации csr снова ?
|
|
|
|
Статус: Эксперт
Группы: Участники
Зарегистрирован: 05.03.2015(UTC) Сообщений: 1,602  Откуда: Иркутская область Сказал(а) «Спасибо»: 110 раз Поблагодарили: 396 раз в 366 постах
|
Цитата:Я правильно понимаю, что первый раз генерится ключевая пара и публичка вместе с подписью приложена к самому csr файлу ? Добрый день. Совершенно верно, обобщенно csr состоит из имени субъекта, открытого ключа, списка желаемых расширений сертификата (например, информация о СКЗИ для квалифицированных сертификатов) и подписи всего этого закрытым ключом. УЦ все это проверяет, убирает подпись клиента, при необходимости правит несоответствующие имя и расширения, добавляет свои расширения, присваивает номер и подписывает. Цитата:С помощью jcp посмотрел что лежит в контейнере, и там только сгенерированная приватка CryptoPro Gost PrivateKey (GOST3410DH_2012_512) with parameters: 1.2.643.7.1.1.6.2. В контейнере КриптоПро хранится как закрытая часть (зашифрованная по частям в primary/masks/primary2/masks2), так и открытая часть ключевой пары (незашифрованная полностью в header). При тестировании контейнера, например, проверяется соответствие открытой и закрытой части в контейнере.
Аналогично при установке сертификата автопоиск идет сравнением открытой части в сертификате и в контейнере, выбор проверяется сответствием открытой части в сертификате и закрытой в контейнере. Если генерировать запрос через связку openssl 1.1.x+gostengy+КриптоПро CSP 4/5 не возникает никаких проблем в использовании существующего контейнера (точнее такая связка требует сгенерированного контейнера, так как генерация нового контейнера невозможна), открытая часть в запрос на сертификат берется из контейнера.
Цитата:Как использовать контейнер для генерации csr снова ? Судя по ошибке предположу, что при повторном запросе еще надо задать какой ключ в контейнере использовать и указать пароль контейнера.
Не вдаваясь в подробности в контейнере в большинстве случаев может быть 2 ключа - exchange (разрешено больше операций) и signature (разрешено меньше операций), обычно присутствует только один из них, но теоретически возможно совместить оба в одном контейнере. Как правило генерируются ключи exchange, для использования закрытого ключа кроме имени контейнера нужно еще и уточнить exchange или signature использовать. Замечу, что большинство утилит создания запроса на сертификат написаны так чтобы генерировать ключ каждый раз.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 16.02.2016(UTC) Сообщений: 60
Сказал(а) «Спасибо»: 18 раз Поблагодарили: 2 раз в 2 постах
|
Добавил -pin и пароль: Код:/opt/cprocsp/bin/cryptcp -creatrqst requestFile -dn "e=test@test.ru, C=RU" -provtype 81 -nokeygen -hashAlg 1.2.643.7.1.1.2.3 -pin 123456
Ошибка та же самая. В JCP: Код:
HDImageStore.setDir("path_to_key_folder");
KeyStore hdImageStore = KeyStore.getInstance("HDImageStore");
hdImageStore.load(null, null);
Enumeration<String> aliases = hdImageStore.aliases();
while (aliases.hasMoreElements()) {
System.out.println(aliases.nextElement());
}
Показывает только один алиас, по нему вытаскивается приватка.
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 16.02.2016(UTC) Сообщений: 60
Сказал(а) «Спасибо»: 18 раз Поблагодарили: 2 раз в 2 постах
|
Цитата:Судя по ошибке предположу, что при повторном запросе еще надо задать какой ключ в контейнере использовать и указать пароль контейнера. При таком варианте команды (как выше) он выдает список алиасов в HDIMAGE, и я выбираю нужный При задании конкретного контейнера : Код:/opt/cprocsp/bin/cryptcp -creatrqst requestFile -dn "e=test@test.ru, C=RU" -provtype 81 -nokeygen -hashAlg 1.2.643.7.1.1.2.3 -pin 123456 -cont "\\.\HDIMAGE\test_cntct8.cont"
Ошибка Код:
Error: The Keyset parameter is invalid./dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/Enroll.cpp:441: 0x8009001F
[ErrorCode: 0x8009001f]
Отредактировано пользователем 31 октября 2019 г. 8:59:33(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 16.04.2008(UTC) Сообщений: 1,503
Сказал(а) «Спасибо»: 42 раз Поблагодарили: 609 раз в 421 постах
|
Вы ошиблись с кавычками: для двойных нужно экранирование бэкслешей, а для одинарных - нет. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 16.02.2016(UTC) Сообщений: 60
Сказал(а) «Спасибо»: 18 раз Поблагодарили: 2 раз в 2 постах
|
Автор: Андрей Русев  Вы ошиблись с кавычками: для двойных нужно экранирование бэкслешей, а для одинарных - нет. Точно, поправил, получил старую ошибку Код:CryptCP 4.0 (c) "Crypto-Pro", 2002-2017.
Command prompt Utility for file signature and encryption.
Error: Keyset does not exist/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/CPCrypt/Enroll.cpp:450: 0x80090016
Вот кстати содержимое контейнера показываемое в ControlPane 
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 16.04.2008(UTC) Сообщений: 1,503
Сказал(а) «Спасибо»: 42 раз Поблагодарили: 609 раз в 421 постах
|
А что выдаёт Код:/opt/cprocsp/bin/csptest -keyset -info -container '\\.\HDIMAGE\test_cnt8.cont'
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 16.02.2016(UTC) Сообщений: 60
Сказал(а) «Спасибо»: 18 раз Поблагодарили: 2 раз в 2 постах
|
Код:Antons-iMac:bin antram$ /opt/cprocsp/bin/csptest -keyset -info -container '\\.\HDIMAGE\test_cnt8.cont'
CSP (Type:80) v4.0.9017 KC1 Release Ver:4.0.9944 OS:MacOS CPU:AMD64 FastCode:READY:AVX.
An error occurred in running the program.
/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/csptest/ctkey.c:993:AcquireContext("\\.\HDIMAGE\test_cnt8.cont")
Error number 0x80090019 (2148073497).
The keyset is not defined.
Total: SYS: 0.020 sec USR: 0.250 sec UTC: 0.320 sec
[ErrorCode: 0x80090019]
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 16.04.2008(UTC) Сообщений: 1,503
Сказал(а) «Спасибо»: 42 раз Поблагодарили: 609 раз в 421 постах
|
Это значит, что у вас нет такого контейнера. А ещё вы используете очень старую версию КриптоПро CSP, что чревато столкновением с уже исправленными ошибками. Последняя сертифицированная версия 4.0 - 2018-11-23 КриптоПро CSP 4.0.9963 Abel. Актуальная - 2019-09-24 КриптоПро CSP 4.0.9971 Copernicus. Тема про актуальные версии КриптоПро CSP 4.0. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 16.02.2016(UTC) Сообщений: 60
Сказал(а) «Спасибо»: 18 раз Поблагодарили: 2 раз в 2 постах
|
Может намудрил с именами контейнера, вот команда: Код:/opt/cprocsp/bin/csptest -keyset -info -container '\\.\HDIMAGE\testrcnt.005'
Вот путь HDIMAGE :  Вот результат : Код:CSP (Type:80) v4.0.9017 KC1 Release Ver:4.0.9944 OS:MacOS CPU:AMD64 FastCode:READY:AVX.
An error occurred in running the program.
/dailybuildsbranches/CSP_4_0/CSPbuild/CSP/samples/csptest/ctkey.c:993:AcquireContext("\\.\HDIMAGE\testrcnt.005")
Error number 0x80090019 (2148073497).
The keyset is not defined.
Total: SYS: 0.010 sec USR: 0.240 sec UTC: 0.310 sec
[ErrorCode: 0x80090019]
Все правильно делаю ? Почему он не требует пароль ? Отредактировано пользователем 31 октября 2019 г. 13:50:29(UTC)
| Причина: Не указана
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close