Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро JCP, JavaTLS
»
JCP + cacerts. О том как нам получить сертификаты с токена и где искать корневые сертификаты.
Статус: Участник
Группы: Участники
Зарегистрирован: 27.02.2023(UTC) Сообщений: 16
Сказал(а) «Спасибо»: 6 раз Поблагодарили: 7 раз в 2 постах
|
Добрый день. У меня всего два вопроса. Вводные: Spring Boot, Java 1.8_311, установленная последняя версия (не бета) JCP jcp-2.0.41789 от крипто про. 1. Инициализация. Суть такова, хочу с рутокена прочитать сертификат. Один или несколько не важно. И тут два сценария происходят: - Приложение выключено. Я вставляю токен в USB разъем, запускаю свое приложение и читаю сертификаты в хвост и гриву. Все работает как мне надо.
- Приложение включено. Я вставляю токен и что бы я не делал, ну ни как не видит токен.
Собственно вопрос. А как бы мне читать токен при уже запущенном приложении, как описано во втором сценарии? Я понять не могу, то ли в контекст токен сразу инициализируется, то ли как-то иначе это работает. Может Вы подскажете, что я не доглядел? 2. Файл cacerts. Панель Крипто про JCP не работает с этим файлом. Либо ругается, что контейнер поврежден, либо нечто подобное. При этом Java при работе с подписями все равно пытается найти корневые сертификаты именно в этом хранилище. Мне то все равно, но Java упорно делает именно так. Конечно я добавил сертификаты туда ручками при помощи утилиты KeyStore Explorer. Но хотелось бы при помощи JCP под капотом это делать. Цель: при копировании ЭЦП пользователя в HD_ImageStore мне нужна цепочка в cacerts. Чтобы все работало. Столкнулся с этим недавно. И хочется создавать меньше проблем конечному пользователю при копировании ЭЦП, чтобы не было всех этих ручных извлечений и копирований. Отредактировано пользователем 8 декабря 2023 г. 12:38:53(UTC)
| Причина: Не указана
|
1 пользователь поблагодарил gluberg за этот пост.
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 27.02.2023(UTC) Сообщений: 16
Сказал(а) «Спасибо»: 6 раз Поблагодарили: 7 раз в 2 постах
|
Первый вопрос снимается. Оказалось это решается вот таким вот способом: БылоКод:KeyStore keyStore;
try {
switch (storage) {
case "RutokenStore": {
keyStore = KeyStore.getInstance("RutokenStore");
break;
}
case "J6CFStore": {
keyStore = KeyStore.getInstance("J6CFStore");
break;
}
default: {
keyStore = KeyStore.getInstance("HDImageStore");
break;
}
}
}
СталоМожет кому это будет полезно. Все заработало как надо. На счет второго вопроса - я выяснил, что по документации о копировании сертификата нам надо вызывать метод setKeyEntry(); и туда четвертым параметром передается Certificate[] chain. Получаем мы эту цепочку методом getCertificateChain(alias);. Но сюда попадает только мой сертификат и не более. В связи с этим новый вопрос. А как мне получить в этот массив цепочки все сертификаты из пути сертификации моего конечного сертификата. В моем случае мне надо получить сертификат Контур и Минцифры. Как руками экспортировать я знаю, любой амин это умеет. Но мне надо это сделать на этом этапе, где я получаю "цепочку" P.S. Немного грустно общаться здесь с самим собой.
|
6 пользователей поблагодарили gluberg за этот пост.
|
|
|
Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро JCP, JavaTLS
»
JCP + cacerts. О том как нам получить сертификаты с токена и где искать корневые сертификаты.
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close