logo Обзор КриптоПро NGate для защищённого доступа к корпоративным ресурсам
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

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

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

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

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




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


Проверенные сертификаты взяты из пакета ГИС ЖКХ_Интеграция_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)
Сообщений: 33

Сказал(а) «Спасибо»: 1 раз
Всем привет,
похоже никто помочь не может,
к сведению. Проверил сертификаты в проектах
примеров 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)
Сообщений: 33

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

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

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

Сказал(а) «Спасибо»: 4 раз
Поблагодарили: 15 раз в 15 постах
Добрый день!
возникло подозрение, что не работает из-за следующего:
в сертификате веб-сервера 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)
Сообщений: 135
Российская Федерация

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

[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)
Сообщений: 2,762
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 13 раз
Поблагодарили: 393 раз в 387 постах
Здравствуйте.
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)
Сообщений: 33

Сказал(а) «Спасибо»: 1 раз
Спасибо за ответ, очень испугало молчание.
Евгений Афанасьев:
По п.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) загружен 3 раз(а)..
По прежнему путь сертификата построить не может,
Цитата:
Смущает строка "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)
Сообщений: 33

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

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

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

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

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

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

Сказал(а) «Спасибо»: 13 раз
Поблагодарили: 393 раз в 387 постах
К сожалению, скорее всего, подключиться не выйдет с включенной проверкой на отзыв.
Дело в том, что ссылка на 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)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline SAndrusReg@mail.ru  
#11 Оставлено : 26 августа 2019 г. 15:41:15(UTC)
SAndrusReg@mail.ru

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

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

Сказал(а) «Спасибо»: 1 раз
Спасибо,
объясните поподробнее как:
Цитата:
указать ее в панели управления в настройках сервера (там есть поле для ввода с галкой - использовать CRL из файлов)

это на вкладке "Настройки TLS" там поле, галка только текст "Загружать CRL из папки", только получается
первые две галки обе снимают эту третью и как сделать чтоб не было проверки.
Offline SAndrusReg@mail.ru  
#12 Оставлено : 26 августа 2019 г. 15:47:41(UTC)
SAndrusReg@mail.ru

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

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

Сказал(а) «Спасибо»: 1 раз
А если я отключаю проверку сертификатов выдает
Код:
WARNING: default context init failed: 
java.security.KeyManagementException: Certificate validation is disabled but required. The check can be turned off using -Dtls_prohibit_disabled_validation=false or SetPrefs (see the programmer's guide) or TLSSettings.

Я пробовал уже, подскажите пожалуйста как правильно это отключить и дать ему проверенный crt, спасибо.
Offline Евгений Афанасьев  
#13 Оставлено : 26 августа 2019 г. 16:11:12(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 13 раз
Поблагодарили: 393 раз в 387 постах
Техническую поддержку оказываем тут
Наша база знаний
Offline SAndrusReg@mail.ru  
#14 Оставлено : 26 августа 2019 г. 18:40:52(UTC)
SAndrusReg@mail.ru

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

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

Сказал(а) «Спасибо»: 1 раз
Я так отключаю:
Цитата:
System.setProperty("tls_prohibit_disabled_validation", "false")

получаю ошибку:
Цитата:
Certificate validation is disabled but required. The check can be turned off using -Dtls_prohibit_disabled_validation=false or SetPrefs (see the programmer's guide) or TLSSettings

Я думаю, что это говорит о том что проверка выключена?
Я скачал сертификат ca-DDD195D669374970BB1750099EE28202D310FBA9.crl, положил его в папку, которую указал
в строчке "Загружать CRL из папки".
А как сделать что-бы пакет не пытался проверять сертификаты.
Offline SAndrusReg@mail.ru  
#15 Оставлено : 27 августа 2019 г. 8:39:47(UTC)
SAndrusReg@mail.ru

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

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

Сказал(а) «Спасибо»: 1 раз
На данный момент проект выглядит так:

Согласно инструкции ЖТЯИ.00091-02 91 02-02. Инструкция по использованию (JTLS).pdf пункта "3. Настройка параметров провайдера с помощью Preferences" настроил папку сертификатов, отключил проверку сертификатов по сети, включил оффлайн проверку сертификатов из папки.
В папке "C:\\Work\\Work\\certs" все сертификаты есть.
Результаты выполнения log2.txt (72kb) загружен 2 раз(а)..
Если задаю TLSSettings.setDefaultEnableRevocation(false); получаю: log3.txt (41kb) загружен 1 раз(а).
Изменение tls_prohibit_disabled_validation ничего не дало.
Пожалуйста подскажите как правильно выключить проверку.
Санчир Момолдаев:
Добавил в cacerts все сертификаты которые были, положение не спасло, ошибка та-же.
Всем спасибо.

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

Offline Евгений Афанасьев  
#16 Оставлено : 27 августа 2019 г. 10:52:34(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 13 раз
Поблагодарили: 393 раз в 387 постах
Попробуйте так:
Код:

Под управлением администратора, если JCP 2.0:
<JRE>/bin/java ru.CryptoPro.JCP.Util.SetPrefs -system -node ru/CryptoPro/ssl/util -key tls_prohibit_disabled_validation -value false
Техническую поддержку оказываем тут
Наша база знаний
Offline SAndrusReg@mail.ru  
#17 Оставлено : 27 августа 2019 г. 11:47:51(UTC)
SAndrusReg@mail.ru

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

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

Сказал(а) «Спасибо»: 1 раз
Выполнил это:
Код:

C:\Windows\system32>"C:\Program Files\Java\jdk1.8.0_221\jre\bin\java.exe" ru.CryptoPro.JCP.Util.SetPrefs -system -node ru/CryptoPro/ssl/util -key tls_prohibit_disabled_validation -value false
C:\Windows\system32>


Результат не изменился.
Offline Евгений Афанасьев  
#18 Оставлено : 27 августа 2019 г. 13:28:59(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 13 раз
Поблагодарили: 393 раз в 387 постах
java одна (jdk1.8.0_221) установлена/используется?
Техническую поддержку оказываем тут
Наша база знаний
Offline SAndrusReg@mail.ru  
#19 Оставлено : 27 августа 2019 г. 15:06:00(UTC)
SAndrusReg@mail.ru

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

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

Сказал(а) «Спасибо»: 1 раз
Это точно я несколько раз проверил, вот:
Код:

C:\Work\Work\jcp_GKH\dist>"C:\Program Files\Java\jdk1.8.0_221\jre\bin\java.exe" ru.CryptoPro.JCP.Util.SetPrefs -system -node ru/CryptoPro/ssl/util -key tls_prohibit_disabled_validation -value false

C:\Work\Work\jcp_GKH\dist>"C:\Program Files\Java\jdk1.8.0_221\jre\bin\java.exe" -jar jcp_GKH.jar
рту 27, 2019 4:04:25 PM ru.CryptoPro.JCP.tools.Starter check
INFO: Loading JCP 2.0.40424
рту 27, 2019 4:04:25 PM ru.CryptoPro.JCP.tools.Starter check
INFO: JCP loaded.
рту 27, 2019 4:04:26 PM ru.CryptoPro.ssl.cl_38 <init>
INFO: %% adding as private keys %%
рту 27, 2019 4:04:26 PM ru.CryptoPro.ssl.SSLContextImpl engineInit
INFO: SSLContextImpl init.
рту 27, 2019 4:04:26 PM ru.CryptoPro.ssl.SSLContextImpl engineInit
INFO: trigger seeding of SecureRandom
рту 27, 2019 4:04:27 PM ru.CryptoPro.ssl.SSLContextImpl engineInit
INFO: done seeding SecureRandom
рту 27, 2019 4:04:27 PM jcp_gkh.Jcp_GKH start
SEVERE: null
java.security.KeyManagementException: Certificate validation is disabled but required. The check can be turned off using -Dtls_prohibit_disabled_validation=false or SetPrefs (see the programmer's guid
e) or TLSSettings.
        at ru.CryptoPro.ssl.SSLContextImpl.engineInit(Unknown Source)
        at javax.net.ssl.SSLContext.init(SSLContext.java:282)
        at jcp_gkh.Jcp_GKH.start(Jcp_GKH.java:90)
        at jcp_gkh.Jcp_GKH.main(Jcp_GKH.java:46)


C:\Work\Work\jcp_GKH\dist>

Offline Евгений Афанасьев  
#20 Оставлено : 27 августа 2019 г. 16:35:30(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 13 раз
Поблагодарили: 393 раз в 387 постах
Если так запустить "C:\Program Files\Java\jdk1.8.0_221\jre\bin\java.exe" -Dtls_prohibit_disabled_validation=false -jar jcp_GKH.jar
что-нибудь изменится?
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
3 Страницы123>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.