Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро JCP, JavaTLS
»
jcp-2.0.40450-A проверка CAdESSignature unable to find valid certification path
Статус: Участник
Группы: Участники
Зарегистрирован: 06.04.2020(UTC) Сообщений: 15  Сказал(а) «Спасибо»: 2 раз
|
Добрый день, Установил jcp-2.0.40450-A согласно инструкциям на JDK 11. И пробую проверить отделенную подпись по гост2012, код идентичен тому что в примерах, с подключением автозагрузки сертификатов и отозванных:
System.setProperty("ru.CryptoPro.reprov.enableCRLDP", "true"); System.setProperty("com.sun.security.enableCRLDP", "true"); System.setProperty("com.ibm.security.enableCRLDP", "true"); System.setProperty("com.sun.security.enableAIAcaIssuers", "true"); System.setProperty("ru.CryptoPro.reprov.enableAIAcaIssuers", "true"); JCPInit.initProviders(false);
Проверка (метод verify) падает с ошибкой Error building certification path for the target (sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path (33)) Я так понимаю, что я что-то упустил в процессе настройки/установки, но что? Нужно ли импортировать сертификаты УЦ в доверенные? И если да, то как это можно сделать программно (так чтобы не добавлять по одному)? лог:  jcp.log (124kb) загружен 7 раз(а).Отредактировано пользователем 6 апреля 2020 г. 21:21:47(UTC)
| Причина: Не указана
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.04.2020(UTC) Сообщений: 15  Сказал(а) «Спасибо»: 2 раз
|
|
|
|
|
Статус: Сотрудник
Группы: Модератор, Участники Зарегистрирован: 03.12.2018(UTC) Сообщений: 1,215  Сказал(а) «Спасибо»: 101 раз Поблагодарили: 285 раз в 265 постах
|
Добрый день! Автор: ks123  Я так понимаю, что я что-то упустил в процессе настройки/установки, но что? Нужно ли импортировать сертификаты УЦ в доверенные? И если да, то как это можно сделать программно (так чтобы не добавлять по одному)?
нужно импортировать корневые в доверенные. Если вы работаете с квалифицированными сертификатами, то достаточно установить корневые Минкомсвязи. Но некоторые УЦ не указывают или указывают криво ссылки на свои сертификаты (AIA) в выданных пользователям сертификатах. их придется добавлять вручную. вручную можно импортировать в cacerts через keytool. программно как-то так: Код:String pathToKeyStore = System.getProperty("java.home") + File.separatorChar + "lib" + File.separatorChar + "security" + File.separatorChar + "cacerts";
char[] keyStorePassword = "changeit".toCharArray();
KeyStore keyStore = KeyStore.getInstance("JKS");
keyStore.load(new FileInputStream(pathToKeyStore), keyStorePassword);
keyStore.setCertificateEntry(alias,certificate);
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,006  Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 715 раз в 675 постах
|
Добрый день. Корневые сертификаты нужно добавить в cacerts, как описано выше, возможно, нужны промежуточные, их рекомендуется подавать в verify. Иногда цепочка сертификатов может быть в самой подписи. На enableAIAcaIssuers не следует сильно полагаться, т.к. это сработает, если в проверяемом сертификате есть ссылка (http) на сертификат издателя для скачивания, и бывает, что таких ссылок нет. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.04.2020(UTC) Сообщений: 15  Сказал(а) «Спасибо»: 2 раз
|
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.04.2020(UTC) Сообщений: 15  Сказал(а) «Спасибо»: 2 раз
|
Есть предположения чего ему может не хватать? Из лога не понятно пытается ли он вообще загрузить сертификаты из сети, куда копать тоже не понятно...
|
|
|
|
Статус: Сотрудник
Группы: Модератор, Участники Зарегистрирован: 03.12.2018(UTC) Сообщений: 1,215  Сказал(а) «Спасибо»: 101 раз Поблагодарили: 285 раз в 265 постах
|
направьте в лс или прикепите тут cacerts и сертификат подписанта. |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.04.2020(UTC) Сообщений: 15  Сказал(а) «Спасибо»: 2 раз
|
|
|
|
|
Статус: Сотрудник
Группы: Модератор, Участники Зарегистрирован: 03.12.2018(UTC) Сообщений: 1,215  Сказал(а) «Спасибо»: 101 раз Поблагодарили: 285 раз в 265 постах
|
в cacerts нет сертификатов по гост. поставьте хоты бы этот корневой по гост-2012 Минкомсвязи подпись detached cades-bes сертификат подписанта истек в феврале 2020. такую подпись уже не проверить. если хотите проверять долгосрочные подписи, то необходимо обратить внимание на x long type 1 как вы устанавливали сертификаты? если программно использовали ли вы метод store()? |
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 06.04.2020(UTC) Сообщений: 15  Сказал(а) «Спасибо»: 2 раз
|
Сертификаты в хранилище добавляются при каждом запуске. На всякий случай сделал с сохранением: keyStore.store(new FileOutputStream(pathToKeyStore), keyStorePassword); результат не изменился.. Цитата:сертификат подписанта истек в феврале 2020. такую подпись уже не проверить. если хотите проверять долгосрочные подписи, то необходимо обратить внимание на x long type 1 означает ли это что для сертификата с истекшим сроком и подписи без метки времени будет ошибка вида: "Error building certification path for the target" ?
|
|
|
|
Форум КриптоПро
»
Средства криптографической защиты информации
»
КриптоПро JCP, JavaTLS
»
jcp-2.0.40450-A проверка CAdESSignature unable to find valid certification path
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close