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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline miser  
#1 Оставлено : 10 февраля 2016 г. 16:12:06(UTC)
miser

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

Группы: Участники
Зарегистрирован: 14.03.2011(UTC)
Сообщений: 153
Мужчина
Откуда: Санкт-Петербург

Сказал «Спасибо»: 1 раз
Поблагодарили: 7 раз в 5 постах
На Linux машине стоит
1) Oracle JDK 1.6 + JCP 1.0.54 + JTLS 1.0.54
2) Oracle JDK 1.7 + JCP 2.0.38481 + JTLS 2.0.38481
3) Oracle JDK 1.8 + JCP 2.0.38481 + JTLS 2.0.38481
Везде стоят официальные серверные лицензии без ограничений. ControlPanel в 1.0 показывает установленные лицензии. В 2.0 показывает установленные лицензии.
Работает Java 1.6
Цитата:
$ java -version
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06)

И тем не менее, при выполнении JUnit теста падает ошибка
Цитата:

Провайдер JCP class: JCP version 1.0
[JCP] Provider.id info: CryptoPro Java Provider
[JCP] Provider.id version: 1.0
Провайдер JTLS class: JTLS version 1.0
[JTLS] Provider.id info: CryptoPro JTLS provider(GostX509 key/trust factories, SSLv3, TLSv1)
[JTLS] Provider.id version: 1.0


java.security.ProviderException
at ru.CryptoPro.JCP.KeyStore.t.f(Unknown Source)
at ru.CryptoPro.JCP.KeyStore.t.b(Unknown Source)
at ru.CryptoPro.JCP.KeyStore.ContainerStore.engineGetKey(Unknown Source)
at ru.CryptoPro.JCP.KeyStore.JCPKeyStore.engineGetKey(Unknown Source)
at java.security.KeyStore.getKey(KeyStore.java:763)
at ru.CryptoPro.ssl.n.<init>(Unknown Source)
at ru.CryptoPro.ssl.KeyManagerFactoryImpl.engineInit(Unknown Source)
at javax.net.ssl.KeyManagerFactory.init(KeyManagerFactory.java:239)
...
Caused by: java.io.IOException: java.lang.IllegalArgumentException: length not equals serial length
at ru.CryptoPro.JCP.tools.AbstractLicense.<init>(Unknown Source)
at ru.CryptoPro.JCP.tools.License.<init>(Unknown Source)
at ru.CryptoPro.JCP.KeyStore.f.run(Unknown Source)
... 50 more
Caused by: java.lang.IllegalArgumentException: length not equals serial length
at ru.CryptoPro.JCP.tools.AbstractLicense.delSeparators(Unknown Source)
at ru.CryptoPro.JCP.tools.AbstractLicense.a(Unknown Source)
... 53 more

В чем моя ошибка?

Решил проделать эксперимент на Windows 7.
Цитата:
> java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) Client VM (build 17.1-b03, mixed mode)

Получаю ошибку другого вида:
Цитата:
java.security.NoSuchAlgorithmException: class configured for KeyManagerFactory: ru.CryptoPro.ssl.KeyManagerFactoryImpl not a KeyManagerFactory
at sun.security.jca.GetInstance.checkSuperClass(GetInstance.java:242)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:221)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:190)
at javax.net.ssl.KeyManagerFactory.getInstance(KeyManagerFactory.java:164)

Отредактировано пользователем 10 февраля 2016 г. 16:58:49(UTC)  | Причина: Не указана

Offline Евгений Афанасьев  
#2 Оставлено : 11 февраля 2016 г. 10:00:10(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 21 раз
Поблагодарили: 714 раз в 674 постах
1) Что происходит в JUnit тесте?
2) Возможно, проблема в использовании java 1.6.0_22.
Offline miser  
#3 Оставлено : 12 февраля 2016 г. 10:26:56(UTC)
miser

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

Группы: Участники
Зарегистрирован: 14.03.2011(UTC)
Сообщений: 153
Мужчина
Откуда: Санкт-Петербург

Сказал «Спасибо»: 1 раз
Поблагодарили: 7 раз в 5 постах
Вчера пробовал эксперименты. Похоже, что система работает нестабильно при использовании PowerMock.
Код:

@RunWith(PowerMockRunner.class)
@PrepareForTest({ Session.class, Log.class })
public class TestJTLS {...}

PowerMock позволяет переопределять static методы.
Не все ведь люди пишут красивый и правильный код. Вот и приходится в JUnit тестах переопределять статику.

Выделил тест, где не используется PowerMock. Система заработала в привычном режиме.

Для поднятия SSLContext использую SSLContextParameters из проекта Apache Camel (camel-core).

Отредактировано пользователем 12 февраля 2016 г. 10:32:18(UTC)  | Причина: Не указана

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