logo
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline legioner052019  
#1 Оставлено : 15 мая 2019 г. 8:32:13(UTC)
legioner052019

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

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

По примеру https://zoltanaltfatter....tificate-authentication/ реализовал сервис SOAP с доступом по HTTPS.

Хочу переделать на использование ГОСТ алгоритмов через JCP с контейнером типа HDImageStore.
Установил JCP, выпустил сертификаты через тестовый удостоверяющий центр https://testca2.cryptopro.ru ГОСТ Р 34.11/34.10-2001. Скопировал в хранилище JCP в c:\\Users\\dim\\AppData\\Local\\Crypto Pro\\

в настройках приложения:
server.ssl.protocol = TLS
server.ssl.client-auth = need
server.ssl.enabled = true
server.ssl.key-store=c:\\Users\\dim\\AppData\\Local\\Crypto Pro\\
server.ssl.key-store-provider=JCP
server.ssl.key-store-password=pass123
server.ssl.key-alias=server
server.ssl.key-store-type=HDImageStore

server.ssl.trust-store=classpath:keys/truststore.jks
server.ssl.trust-store-password=pass789


Ошибка
Caused by: java.io.IOException: Неверный формат хранилища.
at ru.CryptoPro.JCP.KeyStore.TrustStore.engineLoad(Unknown Source) ~[JCP.jar:40035]
at ru.CryptoPro.JCP.KeyStore.JCPKeyStore.engineLoad(Unknown Source) ~[JCP.jar:40035]
at java.security.KeyStore.load(KeyStore.java:1445) ~[na:1.8.0_91]
at org.apache.tomcat.util.security.KeyStoreUtil.load(KeyStoreUtil.java:66) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SSLUtilBase.getStore(SSLUtilBase.java:209) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SSLHostConfigCertificate.getCertificateKeystore(SSLHostConfigCertificate.java:206) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SSLUtilBase.getKeyManagers(SSLUtilBase.java:272) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SSLUtilBase.createSSLContext(SSLUtilBase.java:239) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:97) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
... 20 common frames omitted


Прошу помощи. В какую сторону искать.
Offline legioner052019  
#2 Оставлено : 15 мая 2019 г. 14:21:11(UTC)
legioner052019

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

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

Для работы хранилищем контейнеров HDImageStore создал в хранилище сертификатов хранилище и добавил туда сертификат

Поменял в настройках
server.ssl.protocol = GostTLS
server.ssl.client-auth = need
server.ssl.enabled = true

server.ssl.key-store=c:\store.store
server.ssl.key-store-provider: JCP
server.ssl.key-store-password=pass123
server.ssl.key-alias=server
server.ssl.key-store-type=HDImageStore


server.ssl.trust-store=c:\trust.store
server.ssl.trust-store-password=pass123

теперь ошибка такая

java.lang.IllegalArgumentException: Unsupported ciphersuite TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
at ru.CryptoPro.ssl.cl_8.a(Unknown Source) ~[cpSSL.jar:40035]
at ru.CryptoPro.ssl.cl_13.<init>(Unknown Source) ~[cpSSL.jar:40035]
at ru.CryptoPro.ssl.SSLEngineImpl.setEnabledCipherSuites(Unknown Source) ~[cpSSL.jar:40035]
at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLEngine(AbstractJsseEndpoint.java:134) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SecureNioChannel.processSNI(SecureNioChannel.java:329) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SecureNioChannel.handshake(SecureNioChannel.java:175) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1392) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-9.0.17.jar:9.0.17]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_91]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_91]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-9.0.17.jar:9.0.17]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_91]

Отредактировано пользователем 15 мая 2019 г. 14:22:53(UTC)  | Причина: Не указана

Offline Евгений Афанасьев  
#3 Оставлено : 15 мая 2019 г. 15:03:35(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 12 раз
Поблагодарили: 365 раз в 361 постах
Здравствуйте.
Нужен еще параметр для задания сайферсюит TLS_CIPHER_2012 и TLS_CIPHER_2001 (возможно, server.ssl.ciphers=TLS_CIPHER_2012,TLS_CIPHER_2001), т.к. в ru.CryptoPro.ssl.SSLEngineImpl.setEnabledCipherSuites(), полагаю, подается незнакомый набор.

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

Техническую поддержку оказываем тут
Наша база знаний
Offline legioner052019  
#4 Оставлено : 15 мая 2019 г. 15:58:45(UTC)
legioner052019

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

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

добавил server.ssl.ciphers=TLS_CIPHER_2012,TLS_CIPHER_2001

Caused by: java.lang.IllegalArgumentException: None of the [ciphers] specified are supported by the SSL engine : [[]]
at org.apache.tomcat.util.net.SSLUtilBase.getEnabled(SSLUtilBase.java:143) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SSLUtilBase.<init>(SSLUtilBase.java:117) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.jsse.JSSEUtil.<init>(JSSEUtil.java:114) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.jsse.JSSEUtil.<init>(JSSEUtil.java:109) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.jsse.JSSEImplementation.getSSLUtil(JSSEImplementation.java:50) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:88) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.AbstractJsseEndpoint.initialiseSsl(AbstractJsseEndpoint.java:71) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:224) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1103) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1189) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:568) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.catalina.connector.Connector.startInternal(Connector.java:1005) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
... 14 common frames omitted

Offline Евгений Афанасьев  
#5 Оставлено : 15 мая 2019 г. 19:37:02(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 12 раз
Поблагодарили: 365 раз в 361 постах
А тут уже не нравятся наши сюиты. Вероятно, производится какая-нибудь проверка на наличие их в некоем списке внутри tomcat. Для интеграции cpssl в tomcat выше 8.5 потребовалось добавить свой адаптер с jsse implementation с передачей его в коннектор томката. Возможно, и тут требуется что-то такое. Об адаптере и он сам есть в папке webserverintegration в дистрибутиве, в папке tomcat9.
Техническую поддержку оказываем тут
Наша база знаний
Offline legioner052019  
#6 Оставлено : 16 мая 2019 г. 11:01:55(UTC)
legioner052019

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

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

Написал
Код:
@Bean
fun servletContainer(): ServletWebServerFactory {
    val tomcat = TomcatServletWebServerFactory()
    tomcat.addAdditionalTomcatConnectors(createSslConnector())
    return tomcat
}

private fun createSslConnector(): Connector {
    val keystore = FileSystemResource(keystorePath).file
    val truststore = FileSystemResource(truststorePath).file

    val connector = Connector("org.apache.coyote.http11.Http11NioProtocol")
    connector.setEnableLookups(false)
    connector.setScheme("https")
    connector.setSecure(true)
    connector.setPort(8002)

    val protocol = connector.getProtocolHandler() as Http11NioProtocol

    protocol.setAlgorithm("GostX509");
    protocol.setTruststoreAlgorithm("GostX509");
    protocol.setSSLEnabled(true);

    protocol.setKeystoreType(keyStoreType);
    protocol.setKeystoreFile(keystore.absolutePath)
    protocol.setKeystorePass(keystorePass)
    protocol.setKeyAlias(keysAlias)
    protocol.setKeystoreProvider(KeyStoreProvider)

    protocol.setTruststoreType(keyStoreType);
    protocol.setTruststoreFile(truststore.absolutePath)
    protocol.setTruststorePass(truststorePass)
    protocol.setTruststoreProvider(KeyStoreProvider)

    protocol.setSSLProtocol("GostTLS");
    protocol.setCiphers("TLS_CIPHER_2001,TLS_CIPHER_2012");
    protocol.setSslEnabledProtocols("GostTLS,GostTLSv1.1,GostTLSv1.2");
    return connector
}


Ошибка
Код:
Caused by: java.lang.IllegalArgumentException: None of the [protocols] specified are supported by the SSL engine : [[GostTLS, GostTLSv1.2, GostTLSv1.1]]
	at org.apache.tomcat.util.net.SSLUtilBase.getEnabled(SSLUtilBase.java:143) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	at org.apache.tomcat.util.net.SSLUtilBase.<init>(SSLUtilBase.java:101) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	at org.apache.tomcat.util.net.jsse.JSSEUtil.<init>(JSSEUtil.java:114) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	at org.apache.tomcat.util.net.jsse.JSSEUtil.<init>(JSSEUtil.java:109) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	at org.apache.tomcat.util.net.jsse.JSSEImplementation.getSSLUtil(JSSEImplementation.java:50) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:88) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	at org.apache.tomcat.util.net.AbstractJsseEndpoint.initialiseSsl(AbstractJsseEndpoint.java:71) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	at org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:224) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1103) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:1189) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:568) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	at org.apache.catalina.connector.Connector.startInternal(Connector.java:1005) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
	... 14 common frames omitted

Offline Евгений Афанасьев  
#7 Оставлено : 16 мая 2019 г. 14:21:34(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 12 раз
Поблагодарили: 365 раз в 361 постах
Попробуйте указать в алгоритмах вместо
protocol.setSSLProtocol("GostTLS");
protocol.setSslEnabledProtocols("GostTLS,GostTLSv1.1,GostTLSv1.2");
так
protocol.setSSLProtocol("TLSv1");
protocol.setSslEnabledProtocols("TLSv1,TLSv1.1,TLSv1.2");
Техническую поддержку оказываем тут
Наша база знаний
Offline legioner052019  
#8 Оставлено : 16 мая 2019 г. 14:42:53(UTC)
legioner052019

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

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

смотрите
если заккоментировать setCiphers то запускается
Код:

protocol.setSSLProtocol("GostTLS")
// protocol.setCiphers("TLS_CIPHER_2001,TLS_CIPHER_2012")
protocol.setSslEnabledProtocols("all,GostTLS,GostTLSv1.1,GostTLSv1.2")

логи
Код:
2019-05-16 14:33:28.244  INFO 7272 --- [           main] ru.ksbsoft.server.ApplicationKt          : Starting ApplicationKt on KSB-002 with PID 7272 (C:\dim4\kotlin\blz\server\target\classes started by ivanov-d in C:\dim4\kotlin\blz)
2019-05-16 14:33:28.246  INFO 7272 --- [           main] ru.ksbsoft.server.ApplicationKt          : No active profile set, falling back to default profiles: default
2019-05-16 14:33:29.433  INFO 7272 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'soapServiceConfig' of type [ru.ksbsoft.server.SoapServiceConfig$$EnhancerBySpringCGLIB$$c252ee65] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-05-16 14:33:29.440  INFO 7272 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'tomcatConfig' of type [ru.ksbsoft.server.config.TomcatConfig$$EnhancerBySpringCGLIB$$c58b672b] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-05-16 14:33:29.443  INFO 7272 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.ws.config.annotation.DelegatingWsConfiguration' of type [org.springframework.ws.config.annotation.DelegatingWsConfiguration$$EnhancerBySpringCGLIB$$d8c12e9] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-05-16 14:33:29.491  INFO 7272 --- [           main] .w.s.a.s.AnnotationActionEndpointMapping : Supporting [WS-Addressing August 2004, WS-Addressing 1.0]
2019-05-16 14:33:29.664  WARN 7272 --- [           main] o.apache.tomcat.util.net.SSLHostConfig   : The protocol [GostTLS] was added to the list of protocols on the SSLHostConfig named [_default_]. Check if a +/- prefix is missing.
2019-05-16 14:33:29.664  WARN 7272 --- [           main] o.apache.tomcat.util.net.SSLHostConfig   : The protocol [GostTLSv1.1] was added to the list of protocols on the SSLHostConfig named [_default_]. Check if a +/- prefix is missing.
2019-05-16 14:33:29.664  WARN 7272 --- [           main] o.apache.tomcat.util.net.SSLHostConfig   : The protocol [GostTLSv1.2] was added to the list of protocols on the SSLHostConfig named [_default_]. Check if a +/- prefix is missing.
2019-05-16 14:33:30.332  INFO 7272 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8000 (http) 8002 (https)
2019-05-16 14:33:30.634  INFO 7272 --- [           main] ru.CryptoPro.ssl.SSLLogger               : trustStore is :  No File Available, using empty keystore.
2019-05-16 14:33:30.634  INFO 7272 --- [           main] ru.CryptoPro.ssl.SSLLogger               : trustStore type is :  HDImageStore
2019-05-16 14:33:30.634  INFO 7272 --- [           main] ru.CryptoPro.ssl.SSLLogger               : trustStore provider is :  
2019-05-16 14:33:30.634  INFO 7272 --- [           main] ru.CryptoPro.ssl.SSLLogger               : init truststore
2019-05-16 14:33:31.300  INFO 7272 --- [           main] ru.CryptoPro.JCP.tools.JCPLogger         : Loading JCP 2.0.40035
2019-05-16 14:33:31.339  INFO 7272 --- [           main] ru.CryptoPro.JCP.tools.JCPLogger         : JCP loaded.
2019-05-16 14:33:31.478  WARN 7272 --- [           main] o.apache.tomcat.util.net.jsse.JSSEUtil   : Some of the specified [protocols] are not supported by the SSL engine and have been skipped: [[GostTLS, GostTLSv1.2, GostTLSv1.1]]
2019-05-16 14:33:31.588  INFO 7272 --- [           main] ru.CryptoPro.ssl.SSLLogger               : %% adding as private keys %%
2019-05-16 14:33:31.658  INFO 7272 --- [           main] ru.CryptoPro.ssl.SSLLogger               : %% adding as private keys %%
2019-05-16 14:33:31.721  INFO 7272 --- [           main] ru.CryptoPro.ssl.SSLLogger               : %% adding as private keys %%
2019-05-16 14:33:31.824  INFO 7272 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2019-05-16 14:33:31.825  INFO 7272 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.17]
2019-05-16 14:33:31.986  INFO 7272 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2019-05-16 14:33:31.986  INFO 7272 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 3680 ms
2019-05-16 14:33:32.570  INFO 7272 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2019-05-16 14:33:32.799  INFO 7272 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8000 (http) 8002 (https) with context path ''
2019-05-16 14:33:32.802  INFO 7272 --- [           main] ru.ksbsoft.server.ApplicationKt          : Started ApplicationKt in 5.076 seconds (JVM running for 5.598)


как видно o.apache.tomcat.util.net.SSLHostConfig пишет The protocol [GostTLS] was added to the list of protocols on the SSLHostConfig named [_default_]. Check if a +/- prefix is missing
вот тут https://svn.apache.org/v...ion&revision=1681779 пишут что Openssl требует. Получается что у меня не работает GostTLS?

если же я указываею в настройках
Код:
protocol.setSSLProtocol("GostTLS")
//        protocol.setCiphers("TLS_CIPHER_2001,TLS_CIPHER_2012")
protocol.setSslEnabledProtocols("all,+GostTLS,+GostTLSv1.1,+GostTLSv1.2")

выводится
Код:
2019-05-16 14:39:05.649  INFO 9260 --- [           main] ru.ksbsoft.server.ApplicationKt          : Starting ApplicationKt on KSB-002 with PID 9260 (C:\dim4\kotlin\blz\server\target\classes started by ivanov-d in C:\dim4\kotlin\blz)
2019-05-16 14:39:05.653  INFO 9260 --- [           main] ru.ksbsoft.server.ApplicationKt          : No active profile set, falling back to default profiles: default
2019-05-16 14:39:06.810  INFO 9260 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'soapServiceConfig' of type [ru.ksbsoft.server.SoapServiceConfig$$EnhancerBySpringCGLIB$$585ceea1] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-05-16 14:39:06.816  INFO 9260 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'tomcatConfig' of type [ru.ksbsoft.server.config.TomcatConfig$$EnhancerBySpringCGLIB$$5b956767] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-05-16 14:39:06.819  INFO 9260 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.ws.config.annotation.DelegatingWsConfiguration' of type [org.springframework.ws.config.annotation.DelegatingWsConfiguration$$EnhancerBySpringCGLIB$$a3961325] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-05-16 14:39:06.907  INFO 9260 --- [           main] .w.s.a.s.AnnotationActionEndpointMapping : Supporting [WS-Addressing August 2004, WS-Addressing 1.0]
2019-05-16 14:39:07.722  INFO 9260 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8000 (http) 8002 (https)
2019-05-16 14:39:08.117  INFO 9260 --- [           main] ru.CryptoPro.ssl.SSLLogger               : trustStore is :  No File Available, using empty keystore.
2019-05-16 14:39:08.118  INFO 9260 --- [           main] ru.CryptoPro.ssl.SSLLogger               : trustStore type is :  HDImageStore
2019-05-16 14:39:08.118  INFO 9260 --- [           main] ru.CryptoPro.ssl.SSLLogger               : trustStore provider is :  
2019-05-16 14:39:08.118  INFO 9260 --- [           main] ru.CryptoPro.ssl.SSLLogger               : init truststore
2019-05-16 14:39:08.846  INFO 9260 --- [           main] ru.CryptoPro.JCP.tools.JCPLogger         : Loading JCP 2.0.40035
2019-05-16 14:39:08.881  INFO 9260 --- [           main] ru.CryptoPro.JCP.tools.JCPLogger         : JCP loaded.
2019-05-16 14:39:08.991  WARN 9260 --- [           main] o.apache.tomcat.util.net.jsse.JSSEUtil   : Some of the specified [protocols] are not supported by the SSL engine and have been skipped: [[GostTLS, GostTLSv1.2, GostTLSv1.1]]
2019-05-16 14:39:09.104  INFO 9260 --- [           main] ru.CryptoPro.ssl.SSLLogger               : %% adding as private keys %%
2019-05-16 14:39:09.183  INFO 9260 --- [           main] ru.CryptoPro.ssl.SSLLogger               : %% adding as private keys %%
2019-05-16 14:39:09.258  INFO 9260 --- [           main] ru.CryptoPro.ssl.SSLLogger               : %% adding as private keys %%
2019-05-16 14:39:09.355  INFO 9260 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2019-05-16 14:39:09.355  INFO 9260 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.17]
2019-05-16 14:39:09.534  INFO 9260 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2019-05-16 14:39:09.534  INFO 9260 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 3822 ms
2019-05-16 14:39:10.049  INFO 9260 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2019-05-16 14:39:10.308  INFO 9260 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8000 (http) 8002 (https) with context path ''
2019-05-16 14:39:10.311  INFO 9260 --- [           main] ru.ksbsoft.server.ApplicationKt          : Started ApplicationKt in 5.111 seconds (JVM running for 5.651)


o.apache.tomcat.util.net.jsse.JSSEUtil : Some of the specified [protocols] are not supported by the SSL engine and have been skipped: [[GostTLS, GostTLSv1.2, GostTLSv1.1]]

в java.security есть
Код:
ssl.SocketFactory.provider=ru.CryptoPro.ssl.SSLSocketFactoryImpl
ssl.ServerSocketFactory.provider=ru.CryptoPro.ssl.SSLServerSocketFactoryImpl



после запуска сервера проверяем
Код:
c:\Program Files\Crypto Pro\CSP>csptest -tlsc -server 127.0.0.1 -port 8002 -nosave -exchange 3 -prot
o 6 -v
8 algorithms supported:
     Aglid  Class  OID
[00] 0x661e 0x6000 1.2.643.2.2.21 (ГОСТ 28147-89)
[01] 0x801e 0x8000 1.2.643.2.2.3 (ГОСТ Р 34.11/34.10-2001)
[02] 0x8021 0x8000 1.2.643.7.1.1.2.2 (ГОСТ Р 34.11-2012 256 бит)
[03] 0x801f 0x8000
[04] 0x2e1e 0x2000 1.2.643.2.2.20 (ГОСТ Р 34.10-94)
[05] 0x2e23 0x2000 1.2.643.2.2.19 (ГОСТ Р 34.10-2001)
[06] 0x2e49 0x2000 1.2.643.7.1.1.1.1 (ГОСТ Р 34.10-2012 256 бит)
[07] 0x2e3d 0x2000 1.2.643.7.1.1.1.2 (ГОСТ Р 34.10-2012 512 бит)
Cipher strengths: 256..256
Supported protocols: 0xa80:
    Transport Layer Security 1.0 client side
    Transport Layer Security 1.1 client side
    Transport Layer Security 1.2 client side
dwProtocolMask: 0x800a0aaa
Protocol version: 3.3
ClientHello: RecordLayer: TLS, Len: 88
Cipher Suites: (ff 85) (00 81)
93 bytes of handshake data sent
7 bytes of handshake data received
**** Error 0x80090304 returned by InitializeSecurityContext (2)
An error occurred in running the program.
WebClient.c:623:Error performing handshake.
Error number 0x80090304 (-2146893052).
Не удается установить связь с локальным администратором безопасности

Total: SYS: 0,016 sec USR: 0,000 sec UTC: 0,040 sec
[ErrorCode: 0x80090304]

c:\Program Files\Crypto Pro\CSP>

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

Offline legioner052019  
#9 Оставлено : 16 мая 2019 г. 15:20:47(UTC)
legioner052019

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

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

Автор: Евгений Афанасьев Перейти к цитате
Попробуйте указать в алгоритмах вместо
protocol.setSSLProtocol("GostTLS");
protocol.setSslEnabledProtocols("GostTLS,GostTLSv1.1,GostTLSv1.2");
так
protocol.setSSLProtocol("TLSv1");
protocol.setSslEnabledProtocols("TLSv1,TLSv1.1,TLSv1.2");


Код:
protocol.setSSLProtocol("TLSv1")
        protocol.setSslEnabledProtocols("TLSv1,TLSv1.1,TLSv1.2")
//        protocol.ciphers = "TLS_CIPHER_2001,TLS_CIPHER_2012"


тестируем
Код:
c:\Program Files\Crypto Pro\CSP>csptest -tlsc -server 127.0.0.1 -port 8002 -nosave -exchange 3 -prot
o 6 -v
8 algorithms supported:
     Aglid  Class  OID
[00] 0x661e 0x6000 1.2.643.2.2.21 (ГОСТ 28147-89)
[01] 0x801e 0x8000 1.2.643.2.2.3 (ГОСТ Р 34.11/34.10-2001)
[02] 0x8021 0x8000 1.2.643.7.1.1.2.2 (ГОСТ Р 34.11-2012 256 бит)
[03] 0x801f 0x8000
[04] 0x2e1e 0x2000 1.2.643.2.2.20 (ГОСТ Р 34.10-94)
[05] 0x2e23 0x2000 1.2.643.2.2.19 (ГОСТ Р 34.10-2001)
[06] 0x2e49 0x2000 1.2.643.7.1.1.1.1 (ГОСТ Р 34.10-2012 256 бит)
[07] 0x2e3d 0x2000 1.2.643.7.1.1.1.2 (ГОСТ Р 34.10-2012 512 бит)
Cipher strengths: 256..256
Supported protocols: 0xa80:
    Transport Layer Security 1.0 client side
    Transport Layer Security 1.1 client side
    Transport Layer Security 1.2 client side
dwProtocolMask: 0x800a0aaa
Protocol version: 3.3
ClientHello: RecordLayer: TLS, Len: 88
Cipher Suites: (ff 85) (00 81)
93 bytes of handshake data sent
7 bytes of handshake data received
**** Error 0x80090304 returned by InitializeSecurityContext (2)
An error occurred in running the program.
WebClient.c:623:Error performing handshake.
Error number 0x80090304 (-2146893052).
Не удается установить связь с локальным администратором безопасности

Total: SYS: 0,000 sec USR: 0,000 sec UTC: 0,042 sec
[ErrorCode: 0x80090304]

Offline legioner052019  
#10 Оставлено : 17 мая 2019 г. 11:19:49(UTC)
legioner052019

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

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

По документации от jcp для tomcat9 How_to_set_gost_tls_tomcat9.docx указано что необходимо добавить
Код:
sslImplementationName=ru.CryptoPro.ssl.tomcat.jsse.JCPJSSEImplementation
для этого я положил готовую библиотеку JCPTomcatAdapter рядом с tomcat
в tomcat 9 некоторые атрибуты для конфигурации изменились см. https://tomcat.apache.or...9.0-doc/config/http.html
теперь код выглядит вот так
Код:
 protocol.setSslImplementationName("ru.CryptoPro.ssl.tomcat.jsse.JCPJSSEImplementation")
protocol.setAlgorithm("GostX509")
protocol.setTruststoreAlgorithm("GostX509")
protocol.setSSLEnabled(true);
protocol.setUseServerCipherSuitesOrder(true)

protocol.setKeystoreType("HDImageStore")
protocol.setKeystoreFile(keystore.absolutePath)
protocol.setKeystorePass("pass123")
protocol.setKeyAlias("server")
protocol.setKeystoreProvider("JCP")

protocol.setTruststoreType("CertStore");
protocol.setTruststoreFile(truststore.absolutePath)
protocol.setTruststorePass("pass123")
protocol.setTruststoreProvider("JCP")

protocol.setSSLProtocol("GostTLS")
protocol.setSslEnabledProtocols("TLSv1")
protocol.ciphers = "TLS_CIPHER_2001,TLS_CIPHER_2012"


сервер стартует но при обращении к нему выходит ошибка
Код:
java.lang.IllegalStateException: SSLContextImpl is not initialized
at sun.security.ssl.SSLContextImpl.engineCreateSSLEngine(SSLContextImpl.java:196) ~[na:1.8.0_211]
at javax.net.ssl.SSLContext.createSSLEngine(SSLContext.java:329) ~[na:1.8.0_211]
at ru.CryptoPro.ssl.tomcat.jsse.JCPSSLContext.createSSLEngine(JCPSSLContext.java:35) ~[JCPTomcatAdapter-1.0-SNAPSHOT.jar:na]
at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLEngine(AbstractJsseEndpoint.java:119) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SecureNioChannel.processSNI(SecureNioChannel.java:329) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SecureNioChannel.handshake(SecureNioChannel.java:175) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1392) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-9.0.17.jar:9.0.17]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_211]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_211]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-9.0.17.jar:9.0.17]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_211]


хотя при старте пишет что ru.CryptoPro.ssl.SSLLogger : SSLContextImpl initialized.

Код:
2019-05-17 14:16:17.907  INFO 11364 --- [           main] ru.ksbsoft.server.ApplicationKt          : Starting ApplicationKt on KSB-002 with PID 11364 (C:\dim4\kotlin\blz\server\target\classes started by ivanov-d in C:\dim4\kotlin\blz)
2019-05-17 14:16:17.910  INFO 11364 --- [           main] ru.ksbsoft.server.ApplicationKt          : No active profile set, falling back to default profiles: default
2019-05-17 14:16:19.600  INFO 11364 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'soapServiceConfig' of type [ru.ksbsoft.server.SoapServiceConfig$$EnhancerBySpringCGLIB$$4c1363d8] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-05-17 14:16:19.609  INFO 11364 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'tomcatConfig' of type [ru.ksbsoft.server.config.TomcatConfig$$EnhancerBySpringCGLIB$$4f4bdc9e] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-05-17 14:16:19.613  INFO 11364 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'tomcatTConfig' of type [ru.ksbsoft.server.config.TomcatTConfig$$EnhancerBySpringCGLIB$$84a06b3e] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-05-17 14:16:19.617  INFO 11364 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.ws.config.annotation.DelegatingWsConfiguration' of type [org.springframework.ws.config.annotation.DelegatingWsConfiguration$$EnhancerBySpringCGLIB$$974c885c] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-05-17 14:16:19.658  INFO 11364 --- [           main] .w.s.a.s.AnnotationActionEndpointMapping : Supporting [WS-Addressing August 2004, WS-Addressing 1.0]
2019-05-17 14:16:20.181  INFO 11364 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8000 (http) 8002 (https)
2019-05-17 14:16:20.410  INFO 11364 --- [           main] ru.CryptoPro.ssl.SSLLogger               : SSLContextImpl init.
2019-05-17 14:16:20.413  INFO 11364 --- [           main] ru.CryptoPro.ssl.SSLLogger               : trustStore is :  No File Available, using empty keystore.
2019-05-17 14:16:20.414  INFO 11364 --- [           main] ru.CryptoPro.ssl.SSLLogger               : trustStore type is :  HDImageStore
2019-05-17 14:16:20.414  INFO 11364 --- [           main] ru.CryptoPro.ssl.SSLLogger               : trustStore provider is :  
2019-05-17 14:16:20.414  INFO 11364 --- [           main] ru.CryptoPro.ssl.SSLLogger               : init truststore
2019-05-17 14:16:20.971  INFO 11364 --- [           main] ru.CryptoPro.JCP.tools.JCPLogger         : Loading JCP 2.0.40035
2019-05-17 14:16:21.004  INFO 11364 --- [           main] ru.CryptoPro.JCP.tools.JCPLogger         : JCP loaded.
2019-05-17 14:16:21.061  INFO 11364 --- [           main] ru.CryptoPro.ssl.SSLLogger               : trigger seeding of SecureRandom
2019-05-17 14:16:21.061  INFO 11364 --- [           main] ru.CryptoPro.ssl.SSLLogger               : done seeding SecureRandom
2019-05-17 14:16:21.061  INFO 11364 --- [           main] ru.CryptoPro.ssl.SSLLogger               : SSLContextImpl initialized.
2019-05-17 14:16:21.279  INFO 11364 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2019-05-17 14:16:21.279  INFO 11364 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.17]
2019-05-17 14:16:21.440  INFO 11364 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2019-05-17 14:16:21.440  INFO 11364 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 3453 ms
2019-05-17 14:16:21.909  INFO 11364 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2019-05-17 14:16:22.103  INFO 11364 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8000 (http) 8002 (https) with context path ''
2019-05-17 14:16:22.105  INFO 11364 --- [           main] ru.ksbsoft.server.ApplicationKt          : Started ApplicationKt in 4.732 seconds (JVM running for 5.296)
2019-05-17 14:16:29.069 ERROR 11364 --- [nio-8002-exec-1] org.apache.tomcat.util.net.NioEndpoint   : Error running socket processor

Отредактировано пользователем 17 мая 2019 г. 14:17:59(UTC)  | Причина: Не указана

Offline legioner052019  
#11 Оставлено : 20 мая 2019 г. 10:05:00(UTC)
legioner052019

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

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

Добрый день

при старте видно что SSLContextImpl инициализируется

мая 20, 2019 9:57:13 AM ru.CryptoPro.ssl.SSLContextImpl engineInit
INFO: trigger seeding of SecureRandom

2019-05-20 09:57:13.296 INFO 10248 --- [ main] ru.CryptoPro.ssl.SSLLogger : trigger seeding of SecureRandom
мая 20, 2019 9:57:13 AM ru.CryptoPro.ssl.SSLContextImpl engineInit
INFO: done seeding SecureRandom
2019-05-20 09:57:13.297 INFO 10248 --- [ main] ru.CryptoPro.ssl.SSLLogger : done seeding SecureRandom
2019-05-20 09:57:13.297 INFO 10248 --- [ main] ru.CryptoPro.ssl.SSLLogger : SSLContextImpl initialized.
мая 20, 2019 9:57:13 AM ru.CryptoPro.ssl.SSLContextImpl engineInit
INFO: SSLContextImpl initialized.
мая 20, 2019 9:57:13 AM ru.CryptoPro.ssl.cl_96 <init>
FINE: %% Initialized: [Session-1, SSL_NULL_WITH_NULL_NULL]

2019-05-20 09:57:13.331 INFO 10248 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2019-05-20 09:57:13.331 INFO 10248 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.17]
2019-05-20 09:57:13.500 INFO 10248 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2019-05-20 09:57:13.501 INFO 10248 --- [ main] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 3239 ms
мая 20, 2019 9:57:13 AM ru.CryptoPro.ssl.cl_97 close
FINE: Finalizer called close()
мая 20, 2019 9:57:13 AM ru.CryptoPro.ssl.cl_97 d
FINE: Finalizer, called closeInternal(true)
мая 20, 2019 9:57:13 AM ru.CryptoPro.ssl.cl_97 c
FINE: Finalizer , called closeSocket(selfInitiated)

2019-05-20 09:57:14.053 INFO 10248 --- [ main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor'
2019-05-20 09:57:14.282 INFO 10248 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8000 (http) 8002 (https) with context path ''
2019-05-20 09:57:14.285 INFO 10248 --- [ main] ru.ksbsoft.server.ApplicationKt : Started ApplicationKt in 4.568 seconds (JVM running for 5.136)

при обращении показывает ошибку SSLContextImpl is not initialized

2019-05-20 10:03:12.078 ERROR 10248 --- [nio-8002-exec-1] org.apache.tomcat.util.net.NioEndpoint : Error running socket processor

java.lang.IllegalStateException: SSLContextImpl is not initialized
at ru.CryptoPro.ssl.SSLContextImpl.engineCreateSSLEngine(Unknown Source) ~[cpSSL.jar:40035]
at javax.net.ssl.SSLContext.createSSLEngine(SSLContext.java:329) ~[na:1.8.0_211]
at ru.CryptoPro.ssl.tomcat.jsse.JCPSSLContext.createSSLEngine(JCPSSLContext.java:35) ~[JCPTomcatAdapter-1.0-SNAPSHOT.jar:na]
at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLEngine(AbstractJsseEndpoint.java:119) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SecureNioChannel.processSNI(SecureNioChannel.java:329) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SecureNioChannel.handshake(SecureNioChannel.java:175) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1392) ~[tomcat-embed-core-9.0.17.jar:9.0.17]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-embed-core-9.0.17.jar:9.0.17]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_211]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_211]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-embed-core-9.0.17.jar:9.0.17]
at java.lang.Thread.run(Thread.java:748) [na:1.8.0_211]

подскажите в какую сторону копать?
Offline Евгений Афанасьев  
#12 Оставлено : 20 мая 2019 г. 10:18:55(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 12 раз
Поблагодарили: 365 раз в 361 постах
Нужно
1) включить логирование для SSLLogger с уровнем ALL (описано в портале техподдержки, раздел JCP). Может, выведется что-то еще.
2) В отладке посмотреть в JCPTomcatAdapter (он все-таки больше предназначался для коннектора), какие параметры используются для создания контекста.
P.S. Несколько инициализаций, скорее всего, как обычно - та, что создается вами + какая-то по умолчанию (SSLContext.getDefault() где-то в коде tomcat).

Отредактировано пользователем 20 мая 2019 г. 10:20:13(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline legioner052019  
#13 Оставлено : 20 мая 2019 г. 11:32:36(UTC)
legioner052019

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

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

Во время создания контекста ssl у tomcat createSSLContext

видим что при получении sslUtil в нашем случае это JCPJSSEUtil
создается контекст JCPJSSEUtil.class:82
Код:
context = new JCPSSLContext("GostTLS");
context.init((KeyManager[])null, (TrustManager[])null, (SecureRandom)null);


у которого contextSpi правильно инициализирован, так как при инициализации в SSLContextImpl для переменной d выставляется true
Код:
SSLLogger.trace("SSLContextImpl initialized.");
this.d = true;

что и наблюдаем после инициализации контекста d=true

дальше вызывается sslUtil.createSSLContext в нашем случае JCPJSSEUtil.createSSLContext в котором уже this.d = false
то есть после вызова createSSLContext контекст не проинициализирован.

почему в static создается и инициализируется JCPSSLContext
а в createSSLContext только создается, не инициализируется

Отредактировано пользователем 20 мая 2019 г. 11:37:09(UTC)  | Причина: Не указана

Offline Евгений Афанасьев  
#14 Оставлено : 20 мая 2019 г. 11:35:54(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 12 раз
Поблагодарили: 365 раз в 361 постах
context.init((KeyManager[])null, (TrustManager[])null, (SecureRandom)null); - действительно такая строка? Нет ни одного менеджера? Они должны быть, как минимум, TrustManager.
Техническую поддержку оказываем тут
Наша база знаний
Offline legioner052019  
#15 Оставлено : 20 мая 2019 г. 11:39:38(UTC)
legioner052019

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

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

Автор: Евгений Афанасьев Перейти к цитате
context.init((KeyManager[])null, (TrustManager[])null, (SecureRandom)null); - действительно такая строка? Нет ни одного менеджера? Они должны быть, как минимум, TrustManager.


это в коде так. в файле JCPJSSEUtil.java в блоке static
Offline Евгений Афанасьев  
#16 Оставлено : 20 мая 2019 г. 11:50:22(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 12 раз
Поблагодарили: 365 раз в 361 постах
Если не ошибаюсь, в static блоке происходит сбор информации. Нужно посмотреть остальные классы вроде JCPSSLUtilBase, где есть какие-то проверки, и JCPSSLContext, где создается контекст.
Техническую поддержку оказываем тут
Наша база знаний
Offline legioner052019  
#17 Оставлено : 20 мая 2019 г. 11:58:05(UTC)
legioner052019

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

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

Автор: Евгений Афанасьев Перейти к цитате
Если не ошибаюсь, в static блоке происходит сбор информации. Нужно посмотреть остальные классы вроде JCPSSLUtilBase, где есть какие-то проверки, и JCPSSLContext, где создается контекст.


да в JCPJSSEUtil в блоке статик создается JCPSSLContext и явно для него вызывается init вот кусок кода
Код:

JCPSSLContext context;
try {
    context = new JCPSSLContext("GostTLS");
    context.init((KeyManager[])null, (TrustManager[])null, (SecureRandom)null);
} catch (NoSuchAlgorithmException var19) {
    throw new IllegalArgumentException(var19);
} catch (KeyManagementException var20) {
    throw new IllegalArgumentException(var20);
}


но там же JCPJSSEUtil при вызове createSSLContext создается новый контекст без явного вызова init. вот кусок
Код:

public SSLContext createSSLContext(List<String> negotiableProtocols) throws Exception {
        return new JCPSSLContext(this.sslHostConfig.getSslProtocol());
}


Offline Евгений Афанасьев  
#18 Оставлено : 20 мая 2019 г. 11:59:24(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 12 раз
Поблагодарили: 365 раз в 361 постах
У него есть init в JCPSSLContext, который, вероятно, позовется позднее.
Техническую поддержку оказываем тут
Наша база знаний
Offline legioner052019  
#19 Оставлено : 20 мая 2019 г. 12:07:21(UTC)
legioner052019

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

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

Автор: Евгений Афанасьев Перейти к цитате
У него есть init в JCPSSLContext, который, вероятно, позовется позднее.


нет. не вызывается. только в блоке ststic
Offline Евгений Афанасьев  
#20 Оставлено : 20 мая 2019 г. 12:13:46(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 12 раз
Поблагодарили: 365 раз в 361 постах
А new JCPSSLContext из вышеуказанного метода вызывается? После него ошибок нет, просто init не зовется даже после попыток подключений?
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
2 Страницы12>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.