Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро CSP 5.0
»
Caused by: java.security.NoSuchAlgorithmException: no such algorithm: HDImageStore for provider JCSP
Статус: Новичок
Группы: Участники
Зарегистрирован: 21.03.2024(UTC) Сообщений: 1
|
Здравствуйте, уважаемая служба поддержки. Столкнулся со следующей ошибкой: Код:
java.security.KeyStoreException: HDImageStore not found
at java.security.KeyStore.getInstance(KeyStore.java:899)
at com.example.demo.service.SignService.test(SignService.java:35)
at com.example.demo.DemoApplication.main(DemoApplication.java:14)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:108)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88)
Caused by: java.security.NoSuchAlgorithmException: no such algorithm: HDImageStore for provider JCSP
at sun.security.jca.GetInstance.getService(GetInstance.java:87)
at sun.security.jca.GetInstance.getInstance(GetInstance.java:206)
at java.security.Security.getImpl(Security.java:698)
at java.security.KeyStore.getInstance(KeyStore.java:896)
... 10 more
Исходные данные: Имеется скачанный java-csp-5.0.41975.zip. В распакованном архиве в директории Doc\docker\jcsp взял Dockerfile за образец, добавив туда еще копирование контейнера с ключами с другого компа и jar своего приложения. В итоге имею: Код:
FROM ubuntu:latest
LABEL Description="This image is used to install & check Java CSP"
# Дистрибутив версии JAVA_CSP_VERSION должен находиться в одной папке с Dockerfile.
# Запуск производится с помощью команды, например, для Java CSP версии 5.0.40714 для
# пользователя с логином LOGIN и паролем PASSWORD, зарегистрированными на сайте cryptopro.ru:
# docker build --no-cache -t java-csp-inst --build-arg JAVA_CSP_VERSION=5.0.40714 --build-arg LOGIN=<your_login> --build-arg PASSWORD=<your_password> .
RUN locale -a
RUN locale
# Переданная извне версия Java CSP.
ARG JAVA_CSP_VERSION
# Переданный извне логин.
ARG LOGIN
# Переданный извне пароль.
ARG PASSWORD
ENV LANG C.UTF-8
ENV LC_ALL C.UTF-8
ENV LC_CTYPE C.UTF-8
RUN ls -las
# Копирование дистрибутива Java CSP из контекста в папку distrib.
RUN mkdir -p /distrib
COPY /java-csp-$JAVA_CSP_VERSION.zip /distrib/
WORKDIR /distrib
RUN ls -las
# Установка дополнительного ПО: wget и gnupg2.
RUN locale
RUN apt-get update
RUN apt-get --assume-yes install wget
RUN apt-get --assume-yes install gnupg2
# Установка CSP 5.0 KC1 из deb-репозитория:
# https://www.cryptopro.ru/forum2/default.aspx?g=posts&m=90351#post90351
RUN sh -c 'echo "deb https://$LOGIN:$PASSWORD@cryptopro.ru/repo/deb 5.0-unstable main" >/etc/apt/sources.list.d/cprocsp.list'
RUN wget --quiet https://www.cryptopro.ru/sites/default/files/products/csp/cryptopro_key.pub
RUN apt-key add cryptopro_key.pub
RUN apt-get update
RUN apt-get --assume-yes install lsb-cprocsp-base lsb-cprocsp-kc1-64 lsb-cprocsp-ca-certs cprocsp-curl-64 lsb-cprocsp-rdr-64 lsb-cprocsp-capilite-64
# Копирование контейнера
COPY --chmod=777 09d18b59.000 /var/opt/cprocsp/keys/root/09d18b59.000
# Проверка установки.
RUN /opt/cprocsp/sbin/amd64/cpconfig -license -view
# Установка дополнительного ПО: zip и java.
RUN apt-get --assume-yes install zip unzip
RUN apt-get --assume-yes install openjdk-8-jdk
RUN java -version
# Распаковка дистрибутива Java CSP.
RUN unzip -q java-csp-$JAVA_CSP_VERSION.zip
WORKDIR java-csp-$JAVA_CSP_VERSION
# Установка JCP и Java CSP из дистрибутива.
# Java CSP задан провайдером по умолчанию
# (-default_provider 1).
RUN java -cp .:*: ru.CryptoPro.Installer.InstallerConsole -force -install -jcp -jcsp -default_provider 1
# Проверка установки.
RUN echo "#!/bin/sh" > ./test.sh && echo "" >> ./test.sh && echo "java ru.CryptoPro.JCSP.JCSPLicense -required" >> ./test.sh && echo "java ru.CryptoPro.JCP.tools.Check -all" >> ./test.sh && chmod +x ./test.sh
# Копирование приложения
COPY --chmod=777 /demo-0.0.1-SNAPSHOT.jar /distrib/java-csp-$JAVA_CSP_VERSION/
CMD ["./test.sh"]
Образ успешно билдится и запускается. Запустив контейнер и стартую в нем свое приложение: Код:
docker run --publish=8080:8080 --rm -it --entrypoint bash java-csp-inst
Код:
java -jar ./demo-0.0.1-SNAPSHOT.jar
На выходе получаю ошибку, которую привел в начале. В приложении выполняется следующий код: Код:
public class SignService {
static {
System.setProperty("com.sun.security.enableCRLDP", "true");
System.setProperty("com.ibm.security.enableCRLDP", "true");
Security.setProperty("ocsp.enable", "true");
Provider[] providers = Security.getProviders();
System.out.println("Providers: " + Arrays.toString(providers));
}
public static void test() {
try {
KeyStore keyStore = KeyStore.getInstance(JCP.HD_STORE_NAME, "JCSP");
keyStore.load(null, null);
Enumeration<String> aliases = keyStore.aliases();
System.out.println(aliases);
} catch (Exception exc) {
exc.printStackTrace();
}
}
}
Если попробовать вместо HDImageStore получить REGISTRY, то валится с той же ошибкой: Caused by: java.security.NoSuchAlgorithmException: no such algorithm: REGISTRY for provider JCSP. Подскажите, пожалуйста, в чем может быть проблема. Также прикладываю файл диагностики:  checkAll.txt (10kb) загружен 0 раз(а).Отредактировано пользователем 21 марта 2024 г. 9:17:13(UTC)
| Причина: Не указана
|
|
|
|
Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро CSP 5.0
»
Caused by: java.security.NoSuchAlgorithmException: no such algorithm: HDImageStore for provider JCSP
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close