Ошибка при подписании новыми библиотеками на JAVA 7

При попытке подписать новыми ключами, используя последнюю версию библиотеки (kalkancrypt-0.7) получаю ошибку: error constructing MAC: java.lang.SecurityException: JCE cannot authenticate the provider KALKAN. С версией kalkancrypt-0.4 можно подписывать только ключами старого образца.

Или JAVA 7 уже не поддерживается?

Библиотеки собираются на восьмой Java. Точную версию JDK можно посмотреть в Manifest файле.

Библиотека добавляется в fat-jar?

Библиотека добавляется в war. Запускается на сервере. А сервер (glassfish) работает под Java 7. Обновить Java на сервере критично, а без этого подпись ЭЦП не работает.

Криптопровайдер поддерживает JRE начиная от 1.5. А такая ошибка выходит только при сборке библиотеки в составе другого приложения. Попробуйте положить провайдер в папку GLASSFISH_HOME/domains/DOMAIN_DIR/lib/ext/, а из WAR убрать. При перезапуске библиотека подтянется сервером приложений.

Попробовал. Библиотека подтянулась сервером. Но ошибка не исчезла. Почему-то только подписание не работает.

Кажется, понял в чём проблема. У вас JRE 7 далеко не с последними апдейтами, полагаю. Какого года? Какой выпуск?
Скорее всего, ваша версия устарела и не содержит свежего корневого сертификата для верификации подписи провайдера. Такая проверка работает только в Oracle JRE.

Стоит версия 1.7.0_80. Вроде ранее писали что поддерживает начиная с 1.5. Подскажите, какую версию нужно установить?

Дело не в версии конкретно самого языка, а в сборке Oracle JRE.
Вот у вас последнее публичное обновление от 2015-04-14, но до настоящего времени выходят платные обновления, последнее 1.7.0_341-b08 от 2022-04-19.
В Oracle JRE требуется, чтобы криптопровайдер подписывался ключом, имеющим сертификат JCE CodeSigning. А корневой сертификат текущего сертификата подписи не содержится в вашей сборке JRE. Потому что он был добавлен в сборке 1.7.0_121-b15 от 2016-10-18. Поэтому JRE не может проверить подпись.
Вам либо нужно достать откуда-то свежую сборку JRE 7, либо перейти на JRE 8 от любого вендора. У нас Glassfish 4 работал на JRE 8 без проблем.