Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро JCP, JavaTLS
»
ошибка при подписании - unable to find valid certification path to requested target
Статус: Активный участник
Группы: Участники
Зарегистрирован: 28.12.2021(UTC) Сообщений: 248 Откуда: Новосибирск Сказал(а) «Спасибо»: 75 раз Поблагодарили: 1 раз в 1 постах
|
при попытке подписать JCP тестовым сертификатом получаю ошибку Цитата: Error occurred during building the certification path for the target: serial: 120067131348d71c3c48a5edf4000200671313 subject: .... issuer: CN=CRYPTO-PRO Test Center 2, O=CRYPTO-PRO LLC, L=Moscow, C=RU, EMAILADDRESS=support@cryptopro.ru not before: Wed Dec 25 21:35:49 NOVT 2024 not after: Tue Feb 25 21:45:49 NOVT 2025 signature provider: JCP validation date: null native implementation: true : unable to find valid certification path to requested target
дебаг показывает, что вылетает на добавлении подписанта cadesSignature.addSigner(...) Код:
KeyStore keyStore = KeyStore.getInstance(certKeyStore, "JCP");
keyStore.load(null, null);
PrivateKey privateKey = (PrivateKey) keyStore.getKey(alias, password);
List<java.security.cert.Certificate> lChain = Arrays.asList(keyStore.getCertificateChain(alias));
CAdESSignature cadesSignature = new CAdESSignature(isDetached);
Collection<X509CertificateHolder> certificateHolders = new ArrayList<>();
certificateHolders.add(new X509CertificateHolder(keyStore.getCertificate(alias).getEncoded()));
CollectionStore<X509CertificateHolder> store = new CollectionStore<>(certificateHolders);
cadesSignature.setCertificateStore(store);
cadesSignature.addSigner(
JCP.PROVIDER_NAME,
JCP.GOST_DIGEST_OID,
JCP.GOST_EL_KEY_OID,
privateKey,
lChain,
CAdESType.CAdES_BES,
null,
false
);
я так понимаю либо сам сертификат найти не может, либо проблема с цепочкой, но как точно диагностировать в чём проблема не пойму предварительно скачал вот эти сертификаты http://testca2012.cryptopro.ru/cert/rootca.cerhttp://testca2012.cryptopro.ru/cert/subca.cerи установил в cacerts Цитата: JAVA_HOME="/home/alex/.jdks/corretto-21.0.5" keytool -import -trustcacerts -keystore "$JAVA_HOME/lib/security/cacerts" -alias testrootca -file ./testca/rootca.cer keytool -import -trustcacerts -keystore "$JAVA_HOME/lib/security/cacerts" -alias testsubca -file ./testca/subca.cer
в GUI посмотрел данные сертификата - там в цепочке только сам сертификат и сертификат издателя CRYPTO-PRO Test Center 2 в cacerts добавленные альясы присутствуют Код:
keytool -list -keystore /home/alex/.jdks/corretto-21.0.5/lib/security/cacerts | grep test
Цитата: testrootca, 27 янв. 2025 г., trustedCertEntry, testsubca, 27 янв. 2025 г., trustedCertEntry,
PS сами ключ рабочий - c GUI подпись создаётся Отредактировано пользователем 27 января 2025 г. 11:08:19(UTC)
| Причина: Не указана
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 28.12.2021(UTC) Сообщений: 248 Откуда: Новосибирск Сказал(а) «Спасибо»: 75 раз Поблагодарили: 1 раз в 1 постах
|
я так понял ещё нужен сам сертификат ЦС и цепочка https://www.cryptopro.ru/certsrv/certcarc.aspкачнул отсюда certnew.cer и certnew.p7b certnew.cer в cacerts импортировал, а вот certnew.p7b не хочет "keytool error: java.lang.Exception: Input not an X.509 certificate"
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 28.12.2021(UTC) Сообщений: 248 Откуда: Новосибирск Сказал(а) «Спасибо»: 75 раз Поблагодарили: 1 раз в 1 постах
|
млин ... комп ребутнул и заработало :( похоже после телодвижений с keytool надо какие то службы рестартить ?! (работаю в Ubunu) PS вернул всё обратно и проверил ещё раз - достаточно полностью остановить приложение и запустить заново (я делал restart debug), после чего приложение использует актуальное состояние keystore итого, вопрос решился добавлением сертификата тестового УЦ (цепочка похоже не нужна, т.к. я её так и не смог импортировать) Отредактировано пользователем 27 января 2025 г. 12:56:12(UTC)
| Причина: Не указана
|
|
|
|
Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро JCP, JavaTLS
»
ошибка при подписании - unable to find valid certification path to requested target
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close