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

Уведомление

Icon
Error

5 Страницы123>»
Опции
К последнему сообщению К первому непрочитанному
Offline SAndrusReg@mail.ru  
#1 Оставлено : 15 августа 2019 г. 11:08:10(UTC)
SAndrusReg@mail.ru

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

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

Сказал(а) «Спасибо»: 2 раз
Здравствуйте,
не понял, что случилось но теперь при подключении получаю ошибку:




Приложение изменилось немного:


Проверенные сертификаты взяты из пакета ГИС ЖКХ_Интеграция_v.12.2.3.12,
ключ директора с сертифиактом в KeyStore до следующего года, сертификат до 33 года
выдан Минкомсвязь России ООО "ИМЦ". Почему появилась ошибка, что случилось не пойму.
Спасибо.
Offline SAndrusReg@mail.ru  
#2 Оставлено : 18 августа 2019 г. 22:27:32(UTC)
SAndrusReg@mail.ru

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

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

Сказал(а) «Спасибо»: 2 раз
Всем привет,
похоже никто помочь не может,
к сведению. Проверил сертификаты в проектах
примеров userSamples.Certificates.certificateChain()
и userSamples.CRLValidateCert.
Сертификаты пересланные мне в ГИС ЖКХ_Интеграция_v.12.2.3.12
в файле CA-PPAK.pem. Его я преобразовал на сайте https://www.sslshopper.com/ssl-converter.html
в формат "der", затем открыл средствами Windows, сохранил сертификат родителя с формате "crt".
Эти два сертификата я и загружал в вышеуказанные примеры.
Оба завершились удачно, почему приведенный в первом посте проект завершается ошибкой:
javax.net.ssl.SSLHandshakeException: ru.CryptoPro.ssl.pc_4.cl_5: PKIX path building failed: ru.CryptoPro.reprov.certpath.JCPCertPathBuilderException: unable to find valid certification path to requested target

Кстати пример userSamples.Certificates.certificateChain() завершался ошибкой:
sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
пока я не добавил:
Код:

        System.setProperty("com.sun.security.enableCRLDP", "true"); // для проверки по CRL DP
        System.setProperty("com.sun.security.enableAIAcaIssuers", "true"); // для агрузки сертификатов по AIA из сети
        System.setProperty("ru.CryptoPro.reprov.enableAIAcaIssuers", "true"); // для загрузки сертификатов по AIA из сети

Что можно еще добавить, чтобы не было ошибки.
Принимаю все варианты, в "cacerts" оба сертификата добавлял, не помогло.
Спасибо.
Offline SAndrusReg@mail.ru  
#3 Оставлено : 23 августа 2019 г. 14:57:35(UTC)
SAndrusReg@mail.ru

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

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

Сказал(а) «Спасибо»: 2 раз
Включил настройки логирования:
java.util.logging.ConsoleHandler.level = FINE
ru.CryptoPro.JCP.tools.JCPLogger = FINE
Привожу лог работы программы, может поможет:
log.txt (51kb) загружен 16 раз(а).
Эксперты, сотрудники и просто знающие люди, помогите пожалуйста!!!
Offline Санчир Момолдаев  
#4 Оставлено : 24 августа 2019 г. 11:05:53(UTC)
Санчир Момолдаев

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

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

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 223 раз в 211 постах
Добрый день!
возникло подозрение, что не работает из-за следующего:
в сертификате веб-сервера https://api.dom.gosuslug...ices/HomeManagementAsync
имеется
[1]Доступ к сведениям центра сертификации
Метод доступа=Поставщик центра сертификации (1.3.6.1.5.5.7.48.2)
Дополнительное имя:
URL=ldap://vca.caotus.ru/cn=ca-DDD195D669374970BB1750099EE28202D310FBA9,o=caotus,l=centre,st=post,c=ru
и
[1]Точка распределения списка отзыва (CRL)
Имя точки распространения:
Полное имя:
URL=ldap://vca.caotus.ru/cn=ca-DDD195D669374970BB1750099EE28202D310FBA9,o=caotus,l=centre,st=post,c=ru

попробуйте в хранилище добавить сертификат промежуточного УЦ помимо сертификата Минкомсвязи
http://fc.russianpost.ru...50099EE28202D310FBA9.crt
ну и еще у них СКЗИ "Валидата CSP"

для тестов попробуйте поподключаться к нашим сайтам

public static String urlToConnect = "https://q.cryptopro.ru/qcasub.p7b"; //односторонний
public static String urlToConnect = "https://testgost2012st.cryptopro.ru/gost2st.txt"; //двухсторонний для него корень лежит тут http://testgost2012.cryp.../CertEnroll/root2018.crt

Отредактировано пользователем 24 августа 2019 г. 16:39:24(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Санчир Момолдаев  
#5 Оставлено : 24 августа 2019 г. 11:23:47(UTC)
Санчир Момолдаев

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

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

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 223 раз в 211 постах
Автор: Санчир Момолдаев Перейти к цитате
Добрый день!

[1]Точка распределения списка отзыва (CRL)
Имя точки распространения:
Полное имя:
URL=ldap://vca.caotus.ru/cn=ca-DDD195D669374970BB1750099EE28202D310FBA9,o=caotus,l=centre,st=post,c=ru

попробуйте в хранилище добавить сертификат промежуточного УЦ помимо сертификата Минкомсвязи
http://fc.russianpost.ru...50099EE28202D310FBA9.crt
ну и еще у них СКЗИ "Валидата CSP"


на своем стенде добавил в cacerts возвращается

Отредактировано пользователем 24 августа 2019 г. 18:47:16(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Евгений Афанасьев  
#6 Оставлено : 24 августа 2019 г. 11:40:42(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Здравствуйте.
1.
Отметил стрелками справа:
Код:

String tmfAlgorithm = TrustManagerFactory.getDefaultAlgorithm();
TrustManagerFactory tmf = TrustManagerFactory.getInstance(tmfAlgorithm); <--- надо алгоритм GostX509
...
keyStore.load(new FileInputStream("D:\\Work\\HDImageStore\\new_2012_256.keystore"), "password".toCharArray()); <--- надо keyStore.load(null, null);
KeyManagerFactory kmf = KeyManagerFactory.getInstance("PKIX"); <--- надо алгоритм GostX509

См. рук-во разработчика JTLS.
2.
Да, оптимально использовать http, а не ldap, с ним масса сложностей. Но в логе видно, что есть http://fc.russianpost.ru и др., то есть если ссылки рабочие, то CRL'и загрузятся, если включен
System.setProperty("com.sun.security.enableCRLDP", "true");
а он выключен.
3.
Ошибка в проверке цепочки сертификатов сервера. Рекомендуется включить полный лог для SSLLogger с уровнем ALL и приложить лог.
Смущает строка "HTTP/1.1 302 Found : Moved Temporarily".
Ошибка "FINE: main, SEND TLSv1 ALERT: fatal, description = certificate_unknown" и PKIX path building failed означает, что цепочка сервера не построена/проверена.
Выполните сначала п.1 на счет алгоритмов GostX509, потом приложите лог с уровнем ALL.

Отредактировано пользователем 24 августа 2019 г. 11:41:25(UTC)  | Причина: Не указана

Offline SAndrusReg@mail.ru  
#7 Оставлено : 24 августа 2019 г. 15:51:13(UTC)
SAndrusReg@mail.ru

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

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

Сказал(а) «Спасибо»: 2 раз
Спасибо за ответ, очень испугало молчание.
Евгений Афанасьев:
По п.1, про GostX509 понял, просмотрел, поправил.
По п.2, не понял как использовать
Цитата:
http, а не ldap
, если это связано с
Цитата:
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());

по другому не получится кусок используется в spring, довольно сложном.
Цитата:
что есть http://fc.russianpost.ru и др., то есть если ссылки рабочие
ссылки рабочие, проверил.
Не понятно выключена загрузка ссылок если в проекте
Цитата:
System.setProperty("com.sun.security.enableCRLDP", "true");
, как его включать иначе?
По п.3 А точно не проходят проверку трастСторе. Понимаю, но не понятно, почему при проверке при
помощи примеров
Код:
userSamples.Certificates,certificateChain()
все сертификаты строются и
проверяются и объект проверки создается без ошибок.
Лог после исправления по п.1 и с включением
Цитата:
SSLLogger с уровнем ALL
log1.txt (121kb) загружен 4 раз(а)..
По прежнему путь сертификата построить не может,
Цитата:
Смущает строка "HTTP/1.1 302 Found : Moved Temporarily".
Ошибка "FINE: main, SEND TLSv1 ALERT: fatal, description = certificate_unknown" и PKIX path building failed
остались.

Санчир Момолдаев:
Ваши рекомендации попробую позже, отпишу.
Огромное спасибо за участие.
Offline SAndrusReg@mail.ru  
#8 Оставлено : 26 августа 2019 г. 9:27:02(UTC)
SAndrusReg@mail.ru

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

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

Сказал(а) «Спасибо»: 2 раз
Здравствуйте,
извиняюсь, в прошлом логе с кодировками напутал выкладываю заново: log1.txt (143kb) загружен 5 раз(а)..
Санчир Момолдаев:
какие сертификаты нужно добавить в cacerts, я прошелся по ссылкам в логе, там на один и тот же сертификат "guc_gost12.crt" - минкомсвязь и "ca-DDD195D669374970BB1750099EE28202D310FBA9.crt" - это ФГУП-ПочтаРоссии, оба добавлены, толку нет, ошибка та же.
Offline Евгений Афанасьев  
#9 Оставлено : 26 августа 2019 г. 10:42:17(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Проверим вашу цепочку сертификатов.
Offline Евгений Афанасьев  
#10 Оставлено : 26 августа 2019 г. 13:54:00(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
К сожалению, скорее всего, подключиться не выйдет с включенной проверкой на отзыв.
Дело в том, что ссылка на CRL http://fc.russianpost.ru/DownLoad/For_Site/Uslugi/NormDoc/ca-DDD195D669374970BB1750099EE28202D310FBA9.crl в сертификате ведет на https://fc.russianpost.ru/DownLoad/For_Site/Uslugi/NormDoc/ca-DDD195D669374970BB1750099EE28202D310FBA9.crl (с кодом 302), это само по себе странно, по данному адресу используется TLS с иностранными алгоритмами (сюита TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P256: 0xC014, не ГОСТ), подобная работа не поддерживается.
Чтобы работало, нужно
* либо положить CRL (и обновлять по истечению его срока) в папку и указать ее в панели управления в настройках сервера (там есть поле для ввода с галкой - использовать CRL из файлов),
* либо программно передавать CRL (и обновлять по истечению его срока) в контекст SSLContext - ориентировочно, так: https://www.cryptopro.ru...osts&t=15572&p=4
* либо отключить проверку (там же в панели в настройках сервера ).

Отредактировано пользователем 26 августа 2019 г. 15:16:05(UTC)  | Причина: Не указана

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