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

Уведомление

Icon
Error

3 Страницы<123
Опции
К последнему сообщению К первому непрочитанному
Offline barshay  
#21 Оставлено : 19 ноября 2014 г. 12:16:39(UTC)
barshay

Статус: Активный участник

Группы: Участники
Зарегистрирован: 10.01.2012(UTC)
Сообщений: 52
Женщина
Откуда: Москва

Что это может означать?

dumpasn1.exe "comp.pfx"

0 3622: SEQUENCE {
4 1: INTEGER 3
7 3554: SEQUENCE {
11 9: OBJECT IDENTIFIER data (1 2 840 113549 1 7 1)
22 3539: [0] {
26 3535: OCTET STRING, encapsulates {
30 3531: SEQUENCE {
34 3527: SEQUENCE {
38 9: OBJECT IDENTIFIER encryptedData (1 2 840 113549 1 7 6)
49 3512: [0] {
53 3508: SEQUENCE {
57 1: INTEGER 0
60 3501: SEQUENCE {
64 9: OBJECT IDENTIFIER data (1 2 840 113549 1 7 1)
75 28: SEQUENCE {
77 10: OBJECT IDENTIFIER
: pbeWithSHAAnd40BitRC2-CBC (1 2 840 113549 1 12 1 6)
89 14: SEQUENCE {
91 8: OCTET STRING 96 70 26 64 5D 6C E0 7E
101 2: INTEGER 2000
: }
: }
105 3456: [0]
: 89 2B AA AA 1E 2E 31 9A AE 5C BD 12 B4 56 70 C9
: F6 ED 4E FE C0 29 1D 36 D1 AE AD 9F 23 D8 C5 D5
: 67 B2 86 4E 88 15 28 46 91 11 7E F8 22 B1 73 C6
: 69 B7 D2 8F 30 E9 72 A1 D3 97 EC E0 81 27 47 6B
: 2F A2 4C 0C 1D E4 6B B6 5B 31 4B 26 ED 1E 58 25
: 1D C6 D7 39 E7 BD FC 8B 5C 63 F1 AC 55 A9 9C 22
: 04 AE 36 2C 50 0F 4C A5 0C 29 E5 11 B0 00 46 18
: 92 A8 C2 09 68 BA 4E AA 35 0C 44 67 51 77 7D DB
: [ Another 3328 bytes skipped ]
: }
: }
: }
: }
: }
: }
: }
: }
3565 59: SEQUENCE {
3567 31: SEQUENCE {
3569 7: SEQUENCE {
3571 5: OBJECT IDENTIFIER sha1 (1 3 14 3 2 26)
: }
3578 20: OCTET STRING
: 0B DE 99 57 7E 92 BC 1A C3 25 07 FC C1 C4 B9 47
: 17 0F 8F D9
: }
3600 20: OCTET STRING
: 62 CA 0B 05 48 0D E8 C9 FE D3 C7 3E 02 7F 80 5F
: D2 5B DC 96
3622 2: INTEGER 2000
: }
: }
Offline azorinmsu  
#22 Оставлено : 27 марта 2017 г. 2:20:13(UTC)
azorinmsu

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

Группы: Участники
Зарегистрирован: 09.01.2017(UTC)
Сообщений: 5

Поблагодарили: 1 раз в 1 постах
Автор: afev Перейти к цитате
Автор: barshay Перейти к цитате
Нет, в этом случпе CSP запрашивает носитель С которого копировать, а мне нужно КУДА скопировать.
Можно сначала? У меня есть .pfx. Это не контейнер, это просто архив с закрытым ключом и сертификатом. Запускаю программу КриптоПро - Сертификаты. Действие - Все задачи - Импопрт. Выбираю мой .pfx. Импортируется, в "Личном - Реестр - сертификаты" теперь два сертификата: мой и УЦ. Всё.
Дальше вы советуете сразу скопировать на USB. Какой-то кусок пропущен.
CSP хочет выбрать контейнер С которого копировать. А откуда ему взяться?
При выборе моего сертификата из списка, носитель типа "реестр" в списке отсутствует. Что я делаю не так?


После установки pfx нужно запустить панель CSP, на вкладке "Сервис" нажать кнопку "Скопировать...", скопировать контейнер из реестра (найти по имени или в "Обзор") с новым именем на диск (USB). Контейнер будет сохранен на диск (USB) в виде папки с файлами. Затем переместить папку с файлами в C:\Users\<username>\AppData\Local\Crypto Pro (/var/opt/cprocsp/keys/<username>/).


я проделал все эти манипуляции, как вы и сказали, но все равно не могу из кода по alias обратиться к этому сертификату.
я получил alias из файла .pfx следующей командой keytool -v -list -storetype pkcs12 -keystore azorin1.pfx. Вывод данной команды:

Keystore type: PKCS12
Keystore provider: SunJSSE

Your keystore contains 1 entry

Alias name: hdimagestore
Creation date: 27.03.2017
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:


в папку (AppData\Local\Crypto Pro) скопировал все что было на флешке после выгрузки на нее сертификата в итоге получилась следющая структура
- def9f790.000
-- header.key
-- masks.key
-- masks2.key
-- name.key
-- primary.key
-- primary2.key

И теперь когда я пытаюсь в коде получить сертификат и закрытый ключ, то получаю NullPointerException

Код:

Merlin m = new Merlin(getSigProps());
certificate = m.getCertificates("hdimagestore")[0] //Вылетает NullPointerException;
privateKey = m.getPrivateKey("hdimagestore", "changeit");



В чем может быть? что я сделал не так?

Отредактировано пользователем 27 марта 2017 г. 2:21:59(UTC)  | Причина: Не указана

Offline Евгений Афанасьев  
#23 Оставлено : 27 марта 2017 г. 9:28:21(UTC)
Евгений Афанасьев

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

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,910
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Здравствуйте.
1) Приведите полный код создания KeyStore.
2) NPE, т.к. список, возвращаемый getCertificates, пуст. В контейнере есть сертификаты (какой размер файла header.key)?
3) Попробуйте в отладке посомтреть в коде Merlin, почему список пуст.
Offline azorinmsu  
#24 Оставлено : 28 марта 2017 г. 10:21:38(UTC)
azorinmsu

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

Группы: Участники
Зарегистрирован: 09.01.2017(UTC)
Сообщений: 5

Поблагодарили: 1 раз в 1 постах
Автор: afev Перейти к цитате
Здравствуйте.
1) Приведите полный код создания KeyStore.
2) NPE, т.к. список, возвращаемый getCertificates, пуст. В контейнере есть сертификаты (какой размер файла header.key)?
3) Попробуйте в отладке посомтреть в коде Merlin, почему список пуст.


1.
Код:
KeyStore ks = KeyStore.getInstance("HDImageStore");
ks.load(null);

2. Размер файла 78 байт
3. А куда смотреть? я пытался получить список всех алиасов в keystore, но не смог получить полезную информацию.

Кстати, когда я загружаю сертификат в jks keystore (%jdk_home%\jre\lib\security\cacerts), то его удается подцепить в коде, только приватный ключ все равно не доступен. Но это и логично, ведь я могу выгрузить в хранилище ключей только открытый ключ (.cer).


3. Посмотрел в дебаге
Snimok.PNG (27kb) загружен 6 раз(а).

Я думал все ключи лежат в другой папке C:\Users\Aleksandr\AppData\Local\Crypto Pro

Отредактировано пользователем 28 марта 2017 г. 12:41:31(UTC)  | Причина: Не указана

Offline Евгений Афанасьев  
#25 Оставлено : 28 марта 2017 г. 14:00:44(UTC)
Евгений Афанасьев

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

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,910
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Автор: azorinmsu Перейти к цитате
Автор: afev Перейти к цитате
Здравствуйте.
1) Приведите полный код создания KeyStore.
2) NPE, т.к. список, возвращаемый getCertificates, пуст. В контейнере есть сертификаты (какой размер файла header.key)?
3) Попробуйте в отладке посомтреть в коде Merlin, почему список пуст.


1.
Код:
KeyStore ks = KeyStore.getInstance("HDImageStore");
ks.load(null);

2. Размер файла 78 байт
3. А куда смотреть? я пытался получить список всех алиасов в keystore, но не смог получить полезную информацию.

Кстати, когда я загружаю сертификат в jks keystore (%jdk_home%\jre\lib\security\cacerts), то его удается подцепить в коде, только приватный ключ все равно не доступен. Но это и логично, ведь я могу выгрузить в хранилище ключей только открытый ключ (.cer).


3. Посмотрел в дебаге
Snimok.PNG (27kb) загружен 6 раз(а).

Я думал все ключи лежат в другой папке C:\Users\Aleksandr\AppData\Local\Crypto Pro


2.
Автор: azorinmsu Перейти к цитате
2. Размер файла 78 байт

Значит, сертификатов в контейнере нет: getCertificates извлекает их из контейнера, точнее, из header.key.

3. Скачать исходники wss4j, кажется, Merlin оттуда. Все верно, C:\Users\Aleksandr\AppData\Local\Crypto Pro - папка с контейнерами.

Отредактировано пользователем 28 марта 2017 г. 14:01:22(UTC)  | Причина: Не указана

Offline azorinmsu  
#26 Оставлено : 28 марта 2017 г. 16:09:09(UTC)
azorinmsu

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

Группы: Участники
Зарегистрирован: 09.01.2017(UTC)
Сообщений: 5

Поблагодарили: 1 раз в 1 постах
Победил ошибку. Конечный алгоритм следующий.
1. Сгенерировал сертификат, на странице заявки на сертификат установил флаг "выгрузить закрытый ключ"
2. В КриптоПро CVP скопировал на флешку потом перенес в контейнер AppData\Local\Crypto Pro.
3. Дальше запустил ControlePane.bat и скопировал контейнер с новым именнем, по которому потом в коде получил закрытый ключ m.getPrivateKey("alias", "changeit");

thanks 1 пользователь поблагодарил azorinmsu за этот пост.
egor.polyakov оставлено 06.03.2018(UTC)
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
3 Страницы<123
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.