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

Уведомление

Icon
Error

2 Страницы<12
Опции
К последнему сообщению К первому непрочитанному
Offline mtv06  
#11 Оставлено : 7 декабря 2017 г. 9:36:36(UTC)
mtv06

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

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

Доброе утро! Столкнулся опять с проблемой, моя задача заключается - при отправки soap сообщения, шифровать данные и затем подписывать. Так вот шифрование данных не хочет работать с xmlsec-1.5.2.jar, требуется xmlsec-1.4.5.jar. Выдает ошибку:
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.xml.security.keys.KeyInfo.init()V

Но с xmlsec-1.4.5.jar не работает подписание - sig.sign(signContext), выдает ошибку:
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.xml.security.utils.resolver.ResourceResolver.getInstance(Lorg/w3c/dom/Attr;Ljava/lang/String;Z)Lorg/apache/xml/security/utils/resolver/ResourceResolver;

Как их подружить? Чтобы и шифрование и подписание работало вместе?
Offline Евгений Афанасьев  
#12 Оставлено : 7 декабря 2017 г. 11:30:48(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 688 раз в 649 постах
Здравствуйте. Версии xmlsec 1.4.x и 1.5.x имеют заметные отличия, библиотеки JCPxml и XMLDSigRI в составе JCP собираются с xmlsec-1.5.0, но различные сторонние приложения могут использовать версии xmlsec, отличные от этой.

Отредактировано пользователем 7 декабря 2017 г. 11:31:30(UTC)  | Причина: Не указана

Offline mtv06  
#13 Оставлено : 7 декабря 2017 г. 11:59:08(UTC)
mtv06

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

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

c xmlsec-1.5.0 все равно выдает ошибку:
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.xml.security.keys.KeyInfo.init()V
Offline Евгений Афанасьев  
#14 Оставлено : 7 декабря 2017 г. 12:35:40(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 688 раз в 649 постах
Автор: mtv06 Перейти к цитате
java.lang.NoSuchMethodError: org.apache.xml.security.keys.KeyInfo.init()V

Этот метод, видимо, было только в версии xmlsec-1.4 (https://www.cryptopro.ru/forum2/default.aspx?g=posts&m=34686#post34686).
Offline mtv06  
#15 Оставлено : 7 декабря 2017 г. 12:50:37(UTC)
mtv06

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

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

в 1.5.0 есть аналог этого метода? Как теперь тогда XmlInit.init() выполнить?
Offline Евгений Афанасьев  
#16 Оставлено : 7 декабря 2017 г. 14:45:12(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 688 раз в 649 постах
Автор: mtv06 Перейти к цитате
в 1.5.0 есть аналог этого метода?

Автор: afev Перейти к цитате
Версии xmlsec 1.4.x и 1.5.x имеют заметные отличия

Нет, там его может не быть.

Offline Oleg Frolov  
#17 Оставлено : 26 июня 2020 г. 17:40:19(UTC)
Oleg Frolov

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

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

Сказал(а) «Спасибо»: 6 раз
Добрый день!

Столкнулся с аналогичной проблемой при шифровании:
В строке:
XMLCipher keyCipher = XMLCipher.getInstance(Consts.URI_GOST_TRANSPORT);
Ошибка:
org.apache.xml.security.c14n.InvalidCanonicalizerException: Unknown canonicalizer. No handler installed for URI http://santuario.apache.org/c14n/physical

CryptoPro CSP 5.0.11732
Крипто Про JCP v2.0, rel.2.0.40502
Java 1.8.0_171
Windows Server 2016 Datacenter

В jre/lib/ext установил все библиотеки из jcp-2.0.40502/dependencies.
Также пробовал добавить в код com.sun.org.apache.xml.internal.security.Init.init(); - не помогло.

На других Windows и Linux машинах этот же код работает без проблем.

Подскажите, в чем еще может быть причина ошибки?
Offline Евгений Афанасьев  
#18 Оставлено : 26 июня 2020 г. 18:54:33(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 688 раз в 649 постах
Здравствуйте.
Судя по ошибке
Код:

org.apache.xml.security.c14n.InvalidCanonicalizerException: Unknown canonicalizer.

задействован какой-то неизвестный алгоритм каноникализации данных, а не шифрования.
Попробуйте собрать логи JCP и xmlsec.
Включение логирования JCP описано тут: https://support.cryptopr...nlirovnija-kriptopro-jcp
Включение логирования xmlsec можно поискать или попробовать задать так -Djava.util.logging.config.file=log.properties, где log.properties примерно с таким содержимым:
Код:

org.apache.commons.logging.Log=org.apache.commons.logging.impl.Jdk14Logger
handlers=java.util.logging.ConsoleHandler
.level=ALL
java.util.logging.ConsoleHandler.level = ALL
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
Oleg Frolov оставлено 29.06.2020(UTC)
Offline Oleg Frolov  
#19 Оставлено : 29 июня 2020 г. 12:32:02(UTC)
Oleg Frolov

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

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

Сказал(а) «Спасибо»: 6 раз
Проблема решена. В моем случае в jre/lib/ext лежал jar, в котором были классы org.apache.xml.security* - видимо они подтягивались вместо классов из xmlsec-1.5.0.jar
Удалив этот jar все работает как и должно.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
2 Страницы<12
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.