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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Даниил Швед  
#1 Оставлено : 7 июля 2008 г. 17:53:42(UTC)
Даниил Швед

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

Группы: Участники
Зарегистрирован: 03.07.2008(UTC)
Сообщений: 3
Откуда: Челябинск, ИВЦ-1

Предположим, я хочу установить TLS-соединение из клиента, написанного на Java, при помощи JTLS, с сервером, который тоже использует Крипто-Про. На клиентской системе в носителе ключей HDImageStore лежит одновременно несколько закрытых ключей (и соответствующих им сертификатов проверки подлинности клиента).

Есть ли какой-нибудь механизм задания одного из этих сертификатов (при открытии соединения), или я никак не могу повлиять на то, какой из них будет выбран? Может быть, в классах Крипто-Про есть какая-нибудь мощная фабрика сокетов, в которой это конфигурируется? Или же в Java есть стандартный способ для задания клиентского сертификата (в этом случае, работает ли этот способ с jtls)?

Спасибо.
Offline Ольга  
#2 Оставлено : 7 июля 2008 г. 19:05:00(UTC)
Ольга

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

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

Поблагодарили: 3 раз в 3 постах
сертификат выбирается по назначению и паролю.
пароль на контейнер задается системным свойством:
System.setProperty("javax.net.ssl.keyStorePassword","password");
см. документацию
Offline Даниил Швед  
#3 Оставлено : 8 июля 2008 г. 12:12:15(UTC)
Даниил Швед

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

Группы: Участники
Зарегистрирован: 03.07.2008(UTC)
Сообщений: 3
Откуда: Челябинск, ИВЦ-1

мм... да, о таком способе я уже подумал. А вдруг два пароля (чисто случайно) совпадают? У нас такая ситуация теоретически возможна. Нельзя ли все-таки как-то явно задать сертификат?

Если бы я пользовался стандартным SSL, я бы создал SSLContext и задал ему KeyManager, который всегда выбирал бы нужный мне alias. Нельзя ли аналогично поступить с Крипто-Про JTLS? Если нельзя, что ж, придется делать по паролю, но хотелось бы все-таки этого избежать.

Добавление: собственно, мне уже удалось это сделать. Я написал свой простой KeyManager, затем создал SSLContext (SSLContext.getInstance("GostTLS")), проинициализировал его своим KeyManager-ом и TrustManager'ами, сгенерированными фабрикой TrustmanagerFactory.getInstance("GostX509")). Потом у этого SSLContext я получаю SSLSocketFactory (метод getSocketFactory()), и им создаю сокет. В итоге - клиент использует тот сертификат, чей алиас возвращают методы моего KeyManager'а. Вопрос же по сути в следующем: можно быть уверенным, что это будет работать и в последующих версиях Крипто-Про? Такая работа с SSLContext предусмотрена или все-таки считается вашей "внутренней кухней"? Спасибо.

Отредактировано пользователем 8 июля 2008 г. 13:29:00(UTC)  | Причина: Не указана

RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.