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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline long76  
#1 Оставлено : 21 апреля 2021 г. 16:28:24(UTC)
long76

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

Группы: Участники
Зарегистрирован: 16.03.2021(UTC)
Сообщений: 8
Российская Федерация

Сказал(а) «Спасибо»: 3 раз
Есть два приложения:

1) Консольное(тестовое) приложение, где только КриптоПРО есть
2) Рабочее приложение(WildFly 8.21), в котором где-то как-то используется BC

При попытке отправки данных на первом приложении всё в порядке.

На втором во время отправки возникает ошибка java.security.cert.CertificateException: Invalid public key algorithm ECGOST3410-2012 in the certificate.

Как я понял КриптоПРО ожидает GOST3410-2012, а ECGOST3410-2012 чисто штука BC. Как отключить в коде BC, чтобы остался только КриптоПРО?
Пробовал
Код:
Security.removeProvider("BC");

не помогло. Заранее спасибо.

Версия JCP 2.0.41789

Отредактировано пользователем 22 апреля 2021 г. 12:48:30(UTC)  | Причина: Не указана

Offline Евгений Афанасьев  
#2 Оставлено : 22 апреля 2021 г. 17:48:03(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 17 раз
Поблагодарили: 564 раз в 538 постах
Здравствуйте.
Может, у вас где-то перестраивается список провайдеров с помощью Security.addProvider и в итоге BC может оказаться наверху?
Вряд ли WildFly будет использовать Security.insertProviderAt, чтобы вынести BC вперед, обычно используется Security.addProvider для добавления в конец списка.
Offline long76  
#3 Оставлено : 23 апреля 2021 г. 9:05:13(UTC)
long76

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

Группы: Участники
Зарегистрирован: 16.03.2021(UTC)
Сообщений: 8
Российская Федерация

Сказал(а) «Спасибо»: 3 раз
Автор: Евгений Афанасьев Перейти к цитате
Здравствуйте.
Может, у вас где-то перестраивается список провайдеров с помощью Security.addProvider и в итоге BC может оказаться наверху?
Вряд ли WildFly будет использовать Security.insertProviderAt, чтобы вынести BC вперед, обычно используется Security.addProvider для добавления в конец списка.


Здравствуйте, судя по списку напечатанному с помощью
Код:
try {
    Provider[] providers = Security.getProviders();
    for (Provider provider : providers) {
        System.out.println(provider);
        for (Object key : provider.keySet())
            System.out.println("\t" + key);
    }
} catch (Exception e) {
    System.out.println(e.getMessage());
}

BC не в начале списка. Или вы имеете ввиду, что JCP оказывается после BC?
Offline Евгений Афанасьев  
#4 Оставлено : 23 апреля 2021 г. 9:31:38(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 17 раз
Поблагодарили: 564 раз в 538 постах
Да. Маловероятно, что wildfly перестраивает список или добавляет bc в начало. Скорее, где-то в вашем коде происходит удаление/добавление jcp, в результате чего bc оказывается сверху (главнее), над jcp.

Отредактировано пользователем 23 апреля 2021 г. 9:32:11(UTC)  | Причина: Не указана

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