Ошибка при загрузке KeyStore: JCE cannot authenticate the provider KALKAN

Добрый день!

Пытаемся обновить kalkancrypt в Java проекте до версии 0.7 и kalkancrypt-xmldsig до версии 0.4

При запуске из IDE проект работает корректно, но при запуске собранного JAR файла выпадает ошибка:
Error constructing MAC: java.lang.SecurityException: JCE cannot authenticate the provider KALKAN

Ошибка выпадает при попытке загрузить KeyStore:
image

  • Первое, что пришло в голову - неправильная сборка JAR, однако тот же самый проект при тех же настройках сборки, но с kalkancrypt 0.6.1 - билдится и работает без ошибок;

  • Далее были испробованы различные версии Java. Экспериментировали с восьмой, одиннадцатой, семнадцатой, и от openjdk, и от Oracle;

  • Даже из интереса запускали на маке;

  • Также пробовали запускать как с новыми сертификатами из последней SDK, так и со старыми.

Во всех случаях исход один - локально работает, после сборки нет.

Изолировали код, выпадающий в ошибку, в отдельный проект, единственная задача которого - загружать KeyStore, дабы исключить все другие факторы. Результат аналогичный.
Kalkan успешно добавляется в список провайдеров.
Могу приложить код, если необходимо, там буквально 50 строчек :slight_smile:

Помогите пожалуйста разобраться с проблемой!
Возможно ли, что жарник 0.7 калкана банально не предназначен для полноценной сборки проекта в силу того, что это тестовая библиотека?

Здравствуйте.
Это релизная версия. Без разницы на чем собирать локально, но в среде запуска у вас, если у вас Oracle JRE, то должна быть сборка не ниже
1.8.0_111-b14
1.7.0_121-b15
1.6.0_131-b14
Или любая другая сборка на основе OpenJDK 8 и выше.
Возможно у вас на сервере установлен устаревший Oracle JRE, который не содержит свежего корневого сертификата для проверки подписи криптопровайдера.

Видел на форуме ранее сообщения про версию JRE, но у меня итак стояла Java 1.8.0_241, думал с этим все нормально, под условия подходит
Поменял сейчас на OpenJDK версию, теперь работает, спасибо за помощь!

1 Симпатия

Здравствуйте, у меня мак м1, ранее мог легко заходить на порталы с ЭЦП, но сейчас такая ошибка вышла, хотя на старом ноуте виндовс все работает исправно.
возможно ли что это после обновления на Mac OS Monterey на 12.6 или же, после удаления лишних файлов на браузере.
Сейчас у меня стоит 1.8.0_341-b10, с предыдущего ответа я не понял вообще, где именно на сервере может быть устаревший Oracle JRE.
пытался установить OpenJDK8 но опять же непонятно, какие -то коды

вы писали что поменяли на OpenJDK версию, подскажите пожалуйста как сделали и где

прошу помочь

Здравствуйте, у меня мак м1, ранее мог легко заходить на порталы с ЭЦП, но сейчас такая ошибка вышла, хотя на старом ноуте виндовс все работает исправно.
возможно ли что это после обновления на Mac OS Monterey на 12.6 или же, после удаления лишних файлов на браузере.
Сейчас у меня стоит 1.8.0_341-b10, с предыдущего ответа я не понял вообще, где именно на сервере может быть устаревший Oracle JRE.
пытался установить OpenJDK8 но опять же непонятно, какие -то коды

вы писали что поменять на OpenJDK версию, подскажите пожалуйста как сделали и где

прошу помочь

вообщем переустановил nclayer все заработало, странно, вроде ничего и не менялось