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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline a_shlych  
#1 Оставлено : 22 апреля 2020 г. 10:38:27(UTC)
a_shlych

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

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

Здравствуйте,
Создаюся 2 KeyStore:

KeyStore keyStore1 = KeyStore.getInstance("HDImageStore", "JCP");
KeyStore keyStore2 = KeyStore.getInstance("HDImageStore", "JCP");

после load(...) в один из KeyStore добавляется ключ:

keyStore1.setKeyEntry(alias, keyPair.getPrivate(), keyStorePass, chain);

после этого метод keyStore2.getCertificate(alias) возвращает сертификат ключевой пары, которая не была туда добавлена
Вопрос: можно ли сделать так, чтобы для каждого ключа был бы свой KeyStore из которого не видны остальные ключи?
Offline Евгений Афанасьев  
#2 Оставлено : 22 апреля 2020 г. 13:15:04(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 21 раз
Поблагодарили: 715 раз в 675 постах
Здравствуйте.
HDImageStore - это хранилище на диске, работает со всеми контейнерами сразу. Поэтому сделать так, как вы хотите, не получится.
Но, если у вас долговременные ключи, можно попробовать использовать примерно так:
KeyStore keyStore = KeyStore.getInstance("HDImageStore", "JCP");
keyStore.load(new StoreInputStream(key_alias), null);
StoreInputStream есть в рук-ве программиста, это класс для передачи в keyStore конкретного одного алиаса контейнера (key_alias). В этом случае keyStore будет содержать только его (key_alias).
Если на самом деле не обязательно, чтобы ключи были долговременные (чтобы хранились на диске), то можно использовать "MemoryStore" (с нумерацией - 1, 2, 3), это тип временного хранилища (не на диске), тоже есть в рук-ве программиста. Вместо HDImageStore использовать MemoryStore, тогда setKeyEntry запишет в MemoryStore, но не на диск.

Отредактировано пользователем 22 апреля 2020 г. 13:16:45(UTC)  | Причина: Не указана

thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
Санчир Момолдаев оставлено 22.04.2020(UTC)
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.