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

Уведомление

Icon
Error

3 Страницы123>
Опции
К последнему сообщению К первому непрочитанному
Offline Abter  
#1 Оставлено : 29 августа 2017 г. 7:48:41(UTC)
Abter

Статус: Участник

Группы: Участники
Зарегистрирован: 25.08.2017(UTC)
Сообщений: 15
Казахстан
Откуда: Алматы

Сказал(а) «Спасибо»: 7 раз
Всем привет!

Пытаюсь вызвать апи росреестра: https://test-api?wsdl

Получил 2 сертификата root.cer и client.cer

Создал keystore импортнув туда эти сертификаты:

keytool -import -alias root_cert -noprompt -provider ru.CryptoPro.JCP.JCP -storepass 123456 -storetype CertStore -keystore my.keystore -file root.cer

keytool -import -alias my_cert -noprompt -provider ru.CryptoPro.JCP.JCP -storepass 123456 -storetype CertStore -keystore my.keystore -file client.cer

Далее в java гружу свой keystore:

URL url = new URL(soapEndpointUrl);
httpsConnection = (HttpsURLConnection)url.openConnection();



Security.setProperty("ssl.SocketFactory.provider", "ru.CryptoPro.ssl.SSLSocketFactoryImpl");
System.setProperty("com.sun.security.enableCRLDP", "true");
System.setProperty("com.ibm.security.enableCRLDP", "true");


// В прикреплении сертификаты
String keystore = Settings.getString("keystore");
String password = Settings.getString("keystore_password");

System.setProperty("javax.net.ssl.trustStoreType", JCP.CERT_STORE_NAME);
System.setProperty("javax.net.ssl.keyStoreProvider", JCP.PROVIDER_NAME);
System.setProperty("javax.net.ssl.trustStoreProvider", JCP.PROVIDER_NAME);
System.setProperty("javax.net.ssl.trustStore", keystore);
System.setProperty("javax.net.ssl.trustStorePassword", password);

KeyStore trustStore = KeyStore.getInstance(JCP.CERT_STORE_NAME, JCP.PROVIDER_NAME);

trustStore.load(new FileInputStream(keystore), password.toCharArray()); // хранилище корневых сертификатов
TrustManagerFactory tmf = TrustManagerFactory.getInstance("GostX509");
tmf.init(trustStore);

SSLContext sslCtx = SSLContext.getInstance("GostTLS"); // Защищенный контекст
sslCtx.init(null, tmf.getTrustManagers(), null);
SSLSocketFactory sf1 = sslCtx.getSocketFactory();

httpsConnection.setSSLSocketFactory(sf1);

// Connect
httpsConnection.connect();


при попытке сделать connect получаю ошибку:

Message: ru.CryptoPro.ssl.pc_4.cl_5: PKIX path validation failed: java.security.cert.CertPathValidatorException: timestamp check failed


Помогите пож-та разобраться что не так?

Отредактировано пользователем 29 августа 2017 г. 8:12:07(UTC)  | Причина: Не указана

Offline Евгений Афанасьев  
#2 Оставлено : 29 августа 2017 г. 10:37:34(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Здравствуйте.
Ошибка, вероятно, при проверке срока действия сертификата (одна из базовых проверок).
1) включите логирование для JCPLogger и SSLLogger (https://support.cryptopro.ru/index.php?/Knowledgebase/Article/View/45/6/vkljuchenie-zhurnlirovnija-kriptopro-jcp и https://support.cryptopr...lirovnija-kriptopro-jtls с уровнем ALL)и соберите лог, приложите его;
2) приложите сертификаты client.cer, root.cer и сертификат сервера (https://test-api);
3) проверьте системную дату.
thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
Abter оставлено 31.08.2017(UTC)
Offline Abter  
#3 Оставлено : 29 августа 2017 г. 15:14:19(UTC)
Abter

Статус: Участник

Группы: Участники
Зарегистрирован: 25.08.2017(UTC)
Сообщений: 15
Казахстан
Откуда: Алматы

Сказал(а) «Спасибо»: 7 раз
Автор: afev Перейти к цитате
Здравствуйте.
Ошибка, вероятно, при проверке срока действия сертификата (одна из базовых проверок).
1) включите логирование для JCPLogger и SSLLogger (https://support.cryptopro.ru/index.php?/Knowledgebase/Article/View/45/6/vkljuchenie-zhurnlirovnija-kriptopro-jcp и https://support.cryptopr...lirovnija-kriptopro-jtls с уровнем ALL)и соберите лог, приложите его;
2) приложите сертификаты client.cer, root.cer и сертификат сервера (https://test-api);
3) проверьте системную дату.



Спасибо за ответ, на сервере действительно был проссрочен сертификат: они обновили сейчас стало выходить такая ошибка:

ru.CryptoPro.ssl.pc_4.cl_5: PKIX path validation failed: java.security.cert.CertPathValidatorException: Could not determine revocation status
Offline Евгений Афанасьев  
#4 Оставлено : 29 августа 2017 г. 15:25:03(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Эта ошибка возможна, когда не удается проверить статус сертификата: возможно, недоступны CRL. Можно:
1) открыть сертификат сервера, в "Составе" найти точки распределения CRL, проверить их доступность (в браузере);
2) включить логирование для JCPLogger (https://support.cryptopro.ru/index.php?/Knowledgebase/Article/View/45/6/vkljuchenie-zhurnlirovnija-kriptopro-jcp с уровнем ALL)и собрать лог для анализа;
3) отключить проверку цепочки сертификатов:
Код:

System.setProperty("com.sun.security.enableCRLDP", "false"); // -Dcom.sun.security.enableCRLDP=false
System.setProperty("com.ibm.security.enableCRLDP", "false"); // -Dcom.ibm.security.enableCRLDP=false
thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
Abter оставлено 31.08.2017(UTC)
Offline Abter  
#5 Оставлено : 29 августа 2017 г. 15:46:19(UTC)
Abter

Статус: Участник

Группы: Участники
Зарегистрирован: 25.08.2017(UTC)
Сообщений: 15
Казахстан
Откуда: Алматы

Сказал(а) «Спасибо»: 7 раз
Автор: afev Перейти к цитате
Эта ошибка возможна, когда не удается проверить статус сертификата: возможно, недоступны CRL. Можно:
1) открыть сертификат сервера, в "Составе" найти точки распределения CRL, проверить их доступность (в браузере);
2) включить логирование для JCPLogger (https://support.cryptopro.ru/index.php?/Knowledgebase/Article/View/45/6/vkljuchenie-zhurnlirovnija-kriptopro-jcp с уровнем ALL)и собрать лог для анализа;
3) отключить проверку цепочки сертификатов:
Код:

System.setProperty("com.sun.security.enableCRLDP", "false"); // -Dcom.sun.security.enableCRLDP=false
System.setProperty("com.ibm.security.enableCRLDP", "false"); // -Dcom.ibm.security.enableCRLDP=false


при отключении проверки цепочки сертификатов выходит ошибка:

javax.net.ssl.SSLHandshakeException: ru.CryptoPro.ssl.pc_4.cl_5: PKIX path validation failed: java.security.GeneralSecurityException: Online certificate verification enabled but com.sun.security.enableCRLDP = false (Sun), com.ibm.security.enableCRLDP = false (Ibm)
Offline Abter  
#6 Оставлено : 29 августа 2017 г. 17:36:11(UTC)
Abter

Статус: Участник

Группы: Участники
Зарегистрирован: 25.08.2017(UTC)
Сообщений: 15
Казахстан
Откуда: Алматы

Сказал(а) «Спасибо»: 7 раз
Автор: Abter Перейти к цитате
Автор: afev Перейти к цитате
Эта ошибка возможна, когда не удается проверить статус сертификата: возможно, недоступны CRL. Можно:
1) открыть сертификат сервера, в "Составе" найти точки распределения CRL, проверить их доступность (в браузере);
2) включить логирование для JCPLogger (https://support.cryptopro.ru/index.php?/Knowledgebase/Article/View/45/6/vkljuchenie-zhurnlirovnija-kriptopro-jcp с уровнем ALL)и собрать лог для анализа;
3) отключить проверку цепочки сертификатов:
Код:

System.setProperty("com.sun.security.enableCRLDP", "false"); // -Dcom.sun.security.enableCRLDP=false
System.setProperty("com.ibm.security.enableCRLDP", "false"); // -Dcom.ibm.security.enableCRLDP=false


при отключении проверки цепочки сертификатов выходит ошибка:

javax.net.ssl.SSLHandshakeException: ru.CryptoPro.ssl.pc_4.cl_5: PKIX path validation failed: java.security.GeneralSecurityException: Online certificate verification enabled but com.sun.security.enableCRLDP = false (Sun), com.ibm.security.enableCRLDP = false (Ibm)


был не доступен crl я добавил в винду хосты crl стал доступен, теперь выходит другая ошибка: Message: java.lang.RuntimeException: Invalid key exchange
Offline Евгений Афанасьев  
#7 Оставлено : 29 августа 2017 г. 18:57:11(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Снимите ограничения нв экспорт, ссылка есть в портале техподдержки на главной странице сайта.
thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
Abter оставлено 31.08.2017(UTC)
Offline Abter  
#8 Оставлено : 30 августа 2017 г. 8:26:37(UTC)
Abter

Статус: Участник

Группы: Участники
Зарегистрирован: 25.08.2017(UTC)
Сообщений: 15
Казахстан
Откуда: Алматы

Сказал(а) «Спасибо»: 7 раз
Автор: afev Перейти к цитате
Снимите ограничения нв экспорт, ссылка есть в портале техподдержки на главной странице сайта.


спасибо! ограничения снял, теперь ошибка: Received fatal alert: handshake_failure
Offline Евгений Афанасьев  
#9 Оставлено : 30 августа 2017 г. 9:59:12(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Приложите лог.
Offline Abter  
#10 Оставлено : 30 августа 2017 г. 10:23:30(UTC)
Abter

Статус: Участник

Группы: Участники
Зарегистрирован: 25.08.2017(UTC)
Сообщений: 15
Казахстан
Откуда: Алматы

Сказал(а) «Спасибо»: 7 раз
Автор: afev Перейти к цитате
Приложите лог.


Прикладываю файл лога:

log_forum.txt (54kb) загружен 6 раз(а).

Отредактировано пользователем 30 августа 2017 г. 13:21:12(UTC)  | Причина: Не указана

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