Статус: Участник
Группы: Участники
Зарегистрирован: 19.03.2015(UTC) Сообщений: 26
|
Подскажите пожалуйста. Смотрю пример: package CAdES; public class SignExample_2012_256 { Пробую добавить корневые(доверенные) сертификаты через .getChain(), но получаю сообщение с примерным текстом "Сертификат не является доверенным" (trust). Как мне добавить корневые(доверенные) сертификаты программно в процессе подписи?System.setProperty("com.sun.security.enableAIAcaIssuers", "true"); -- не помогает (нужен протокол https, стоит http) WARNING: Exception fetching certificates: java.io.FileNotFoundException: http://ххх.ххххххх.ru/si.../xxxx_cryptopro_2020.cer (ошибка при построении цепочки сертификатов) Добавлять на все компы корневые(доверенные) сертификаты в cacerts очень проблематично. Код:
CertificateFactory cf = CertificateFactory.getInstance("X.509");
Certificate user2 = cf.generateCertificate(new FileInputStream(PATH + "xxxx_cryptopro_2020.cer"));
Certificate root = cf.generateCertificate(new FileInputStream(PATH + "GUC_gost2012.cer"));
configAttached.getChain().add(user2);
configAttached.getChain().add(root);
/*TrustAnchor trustAnchorRoot = new TrustAnchor((X509Certificate) root, null);
TrustAnchor trustAnchorRUC = new TrustAnchor((X509Certificate) RUC, null);
configAttached.getChain().add(trustAnchorRoot.getTrustedCert());
configAttached.getChain().add(trustAnchorRUC.getTrustedCert());*/
|
|
|
|
Статус: Сотрудник
Группы: Модератор, Участники Зарегистрирован: 03.12.2018(UTC) Сообщений: 1,198 Сказал(а) «Спасибо»: 100 раз Поблагодарили: 275 раз в 255 постах
|
Добрый день! именно добавление в cacerts примерно так Код:String cacertsFileName = System.getProperty("java.home") + "/lib/security/cacerts".replace('/', File.separatorChar);
FileInputStream fis = new FileInputStream(cacertsFileName);
KeyStore trustStore = KeyStore.getInstance("JKS");
trustStore.load(fis,"changeit".toCharArray());
...
Certificate cert = CertificateFactory
.getInstance("X509")
.generateCertificate(new FileInputStream(certFileName));
trustStore.setCertificateEntry(certFileName,cert);
...
trustStore.store(fileOutputStream,"changeit".toCharArray())
|
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 19.03.2015(UTC) Сообщений: 26
|
мне в любом случае необходимо добавить сертификат в cacerts, другого способа нет?
|
|
|
|
Статус: Сотрудник
Группы: Модератор, Участники Зарегистрирован: 03.12.2018(UTC) Сообщений: 1,198 Сказал(а) «Спасибо»: 100 раз Поблагодарили: 275 раз в 255 постах
|
Для кадес в любом случае. |
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close