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

Уведомление

Icon
Error

3 Страницы<123>
Опции
К последнему сообщению К первому непрочитанному
Offline Евгений Афанасьев  
#11 Оставлено : 8 июля 2026 г. 18:53:11(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 22 раз
Поблагодарили: 750 раз в 707 постах
Автор: kvzakhar Перейти к цитате

как будто настройка SSLContext ctx = SSLContext.getInstance(Provider.ALGORITHM_12) игнорируется...


Здесь

Автор: lexZ86 Перейти к цитате

Этот вариант тоже пробовал, как и TLSv1.1. Приложил логи log_v1.2.txt (47kb) загружен 4 раз(а). log_v1.1.txt (33kb) загружен 1 раз(а).


в логах видны протокол tls 1.2 и гостовые сюиты. Ошибка сразу после Client Hello. Возможно, проблема в отсутствии sni.


Offline kvzakhar  
#12 Оставлено : 9 июля 2026 г. 1:01:17(UTC)
kvzakhar

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

Группы: Участники
Зарегистрирован: 26.04.2017(UTC)
Сообщений: 9
Откуда: russia

Сказал(а) «Спасибо»: 1 раз
получилось через httpclient в 11 джаве:

HttpClient client = HttpClient.newBuilder().sslContext(ctx).build();
HttpRequest request = HttpRequest.newBuilder().uri(URI.create("путь")).header("Accept", "application/xml").GET().build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());

видимо какие особенности самой джавы...
Offline Евгений Афанасьев  
#13 Оставлено : 9 июля 2026 г. 12:28:14(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 22 раз
Поблагодарили: 750 раз в 707 постах
Можете собрать логи и показать, что там? Как логи ранее в посте.
Offline kvzakhar  
#14 Оставлено : 9 июля 2026 г. 12:53:33(UTC)
kvzakhar

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

Группы: Участники
Зарегистрирован: 26.04.2017(UTC)
Сообщений: 9
Откуда: russia

Сказал(а) «Спасибо»: 1 раз
Пробую собрать спрингбутовое приложение, пока вроде локально работает, теперь надо правильно собрать war архив со всеми зависимостями CryptoPro, для доступа к сфр использую WebServiceGatewaySupport с кастомным HttpComponents5MessageSender в котором конфигурирую sslcontext(как в примере кода ниже) и подсовываю его httpclient'у.
logs.txt (26kb) загружен 2 раз(а).
Offline Евгений Афанасьев  
#15 Оставлено : 9 июля 2026 г. 12:58:58(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 22 раз
Поблагодарили: 750 раз в 707 постах
В ClientHello ранее в логах log_v.1.2.txt:
Код:

FINE: *** ClientHello, TLSv1.2
RandomCookie:  GMT: 1783428969 bytes = { 50, 5, 2, 161, 28, 99, 46, 90, 83, 210, 136, 200, 68, 22, 147, 36, 251, 238, 243, 129, 232, 92, 210, 226, 137, 190, 164, 145 }
Session ID:  {}
Cipher Suites: [TLS_GOSTR341112_256_WITH_KUZNYECHIK_CTR_OMAC, TLS_GOSTR341112_256_WITH_MAGMA_CTR_OMAC, TLS_CIPHER_2012_IANA, TLS_CIPHER_2012, TLS_CIPHER_2001]
Compression Methods:  { 0 }
Extension signature_algorithms, signature_algorithms: GOST3411_2012_256withGOST3410_2012_256, GOST3411_2012_512withGOST3410_2012_512, GOST3411withGOST3410EL, GOST3411_2012_512withGOST3410_2012_512, GOST3411_2012_256withGOST3410_2012_256, SHA512withECDSA, SHA512withRSA, SHA384withECDSA, SHA384withRSA, SHA256withECDSA, SHA256withRSA, SHA224withECDSA, SHA224withRSA, SHA1withECDSA, SHA1withRSA, SHA1withDSA
Extension extended_master_secret
Extension session_ticket
Extension renegotiation_info, renegotiated_connection: <empty>
***

В приложенном выше logs.txt:
Код:

12687  12:14:52 [main] DEBUG r.C.s.SSLLogger  - *** ClientHello, TLSv1.2
RandomCookie:  GMT: 1783588236 bytes = { 63, 105, 172, 109, 98, 79, 246, 89, 124, 186, 159, 118, 158, 239, 202, 72, 174, 36, 98, 244, 78, 44, 31, 75, 159, 2, 224, 12 }
Session ID:  {}
Cipher Suites: [TLS_GOSTR341112_256_WITH_KUZNYECHIK_CTR_OMAC, TLS_GOSTR341112_256_WITH_MAGMA_CTR_OMAC, TLS_CIPHER_2012_IANA, TLS_CIPHER_2012, TLS_CIPHER_2001]
Compression Methods:  { 0 }
Extension signature_algorithms, signature_algorithms: GOST3411_2012_256withGOST3410_2012_256, GOST3411_2012_512withGOST3410_2012_512, GOST3411withGOST3410EL, GOST3411_2012_512withGOST3410_2012_512, GOST3411_2012_256withGOST3410_2012_256, SHA512withECDSA, SHA512withRSA, SHA384withECDSA, SHA384withRSA, SHA256withECDSA, SHA256withRSA, SHA224withECDSA, SHA224withRSA, SHA1withECDSA, SHA1withRSA, SHA1withDSA
Extension extended_master_secret
Extension session_ticket
Extension server_name, server_name: [type=host_name (0), value=eln.sfr.gov.ru]
Extension renegotiation_info, renegotiated_connection: <empty>
***


В последнем присутствует расширение server_name.

Если не ошибаюсь, по умолчанию это расширение в дефолтной SSLSocketFactory не добавляется.
Вероятно, сейчас это сделала какая-то обертка над SSLSocketFactory, например, в spring boot.

thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
kvzakhar оставлено 09.07.2026(UTC)
Offline lexZ86  
#16 Оставлено : 9 июля 2026 г. 13:09:41(UTC)
lexZ86

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

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

Сказал(а) «Спасибо»: 3 раз
Для эксперимента снял логи с jre22. Любопытно, но если задать gosttlsv1.2, то ошибка. Hash or Sign ERROR: 0x80090008
С gosttls тоже работает.

log22_v1.1.txt (246kb) загружен 1 раз(а). log22_v1.2.txt (672kb) загружен 1 раз(а).
Offline kvzakhar  
#17 Оставлено : 9 июля 2026 г. 13:18:11(UTC)
kvzakhar

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

Группы: Участники
Зарегистрирован: 26.04.2017(UTC)
Сообщений: 9
Откуда: russia

Сказал(а) «Спасибо»: 1 раз
я положил в хранилище всю цепочку сертификатов, не только корневой минцифры. Потом поэксперементирую, с необходимым минимумом. Еще вопрос, а каких библиотек из jcsp достаточно? Их там больше 20ти, и все засовывать в локальный мавен реп, долго)
Offline lexZ86  
#18 Оставлено : 9 июля 2026 г. 13:38:33(UTC)
lexZ86

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

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

Сказал(а) «Спасибо»: 3 раз
Автор: Евгений Афанасьев Перейти к цитате

В последнем присутствует расширение server_name.

Если не ошибаюсь, по умолчанию это расширение в дефолтной SSLSocketFactory не добавляется.
Вероятно, сейчас это сделала какая-то обертка над SSLSocketFactory, например, в spring boot.



Думаю Вы правы, проблема с SNI. Много где обсуждается. Простое задание System.setProperty("jsse.enableSNIExtension", true); не спасает.
По крайней мере понятно где разбираться.
Offline Евгений Афанасьев  
#19 Оставлено : 9 июля 2026 г. 15:44:27(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 22 раз
Поблагодарили: 750 раз в 707 постах
Автор: lexZ86 Перейти к цитате
Для эксперимента снял логи с jre22. Любопытно, но если задать gosttlsv1.2, то ошибка. Hash or Sign ERROR: 0x80090008
С gosttls тоже работает.

log22_v1.1.txt (246kb) загружен 1 раз(а). log22_v1.2.txt (672kb) загружен 1 раз(а).


По поводу ошибки. Возможно, это
Код:

2024-04-03 КриптоПро JCSP 5.0.45558-7ecee074 (R3)
* jcsp: добавлен вызов KP_PREHASH с передачей PRF-алгоритма для создания мастер-ключа (JCP-2514)

Попробуйте обновить CSP и Java CSP до актуальных с сайта.


thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
lexZ86 оставлено 09.07.2026(UTC)
Offline kvzakhar  
#20 Оставлено : 10 июля 2026 г. 11:02:43(UTC)
kvzakhar

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

Группы: Участники
Зарегистрирован: 26.04.2017(UTC)
Сообщений: 9
Откуда: russia

Сказал(а) «Спасибо»: 1 раз
Можете подсказать, при попытке перенести решение на линукс:
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: Library loading error, attempt #2
at ru.CryptoPro.JCSP.MSCAPI.CAPI.<clinit>(Unknown Source)
... 110 common frames omitted
Caused by: java.lang.RuntimeException: Library loading error, attempt #2
at ru.CryptoPro.JCSP.MSCAPI.CAPI.a(Unknown Source)
... 111 common frames omitted
Caused by: java.lang.UnsatisfiedLinkError: /home/usernaeme/jni--1265723977/jni856607188.tmp: libcapi10.so.4: cannot open shared object file: No such file or directory
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2389)
at java.base/java.lang.Runtime.load0(Runtime.java:755)
at java.base/java.lang.System.load(System.java:1953)
... 112 common frames omitted

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