Статус: Активный участник
Группы: Участники
Зарегистрирован: 04.10.2011(UTC) Сообщений: 74 Откуда: Moscow
Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
Здравствуйте, коллегам админам потребовалось перенести файл cacerts(ранее расположенный по дефолту в /jre/lib/security) в другой каталог ФС. Это потребовало доработки приложения создающего ЭЦП. Попробовал поиграть с KeyStore указав путь к хранилищу сертификатов - не получилось. Пишет: Цитата:java.io.FileNotFoundException: /usr/lib/jvm/jdk1.6.0_31-jcp/jre/lib/security/cacerts (No such file or directory) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(FileInputStream.java:120) at java.io.FileInputStream.<init>(FileInputStream.java:79) at ru.CryptoPro.CAdES.b.d.a.a(Unknown Source) at ru.CryptoPro.CAdES.b.d.a.<clinit>(Unknown Source) at ru.CryptoPro.CAdES.CAdESSignature.addSigner(Unknown Source) at ru.CryptoPro.CAdES.CAdESSignature.addSigner(Unknown Source) а потом: Цитата:Exception in thread "main" ru.CryptoPro.CAdES.exception.CAdESException: Error verifying the certificate CN=Leader, O=Earth, C=UN: java.security.InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty at ru.CryptoPro.CAdES.b.d.b.a(Unknown Source) at ru.CryptoPro.CAdES.b.d.b.a(Unknown Source) at ru.CryptoPro.CAdES.b.d.a.<init>(Unknown Source) at ru.CryptoPro.CAdES.b.d.a.<init>(Unknown Source) at ru.CryptoPro.CAdES.CAdESSignature.addSigner(Unknown Source) at ru.CryptoPro.CAdES.CAdESSignature.addSigner(Unknown Source) С помощью ControlPane я строю цепочку для используемого сертификата подписи - все ок. Также передавал параметры jvm: -Djavax.net.ssl.trustStore, тоже не помогло. Использовал код: Цитата:public class SimpleTest {
public static void main(String[] args) throws Exception { KeyStore keyStore = KeyStore.getInstance("HDImageStore", "JCP"); keyStore.load(new FileInputStream(System.getProperty("cryptopro.trustStore")), "changeit".toCharArray());
PrivateKey key = (PrivateKey) keyStore.getKey("leadZeroTest", "qwerty".toCharArray()); List<X509Certificate> chain = new ArrayList<X509Certificate>(); chain.add((X509Certificate) keyStore.getCertificate("leadZeroTest"));
CAdESSignature signature = new CAdESSignature(true); signature.addSigner(key, chain, CAdESType.CAdES_X_Long_Type_1, "http://www.cryptopro.ru/tsp/tsp.srf"); signature.sign("test".getBytes()); } } параметры: -Dcryptopro.trustStore=cryptoproOnlyTrustStore -Djavax.net.ssl.trustStore=trustStore ключи и хранилища приаттачил. Подскажите пожалуйста, что не так? Вложение(я): trustStore (3kb) загружен 4 раз(а). cryptoproOnlyTrustStore (1kb) загружен 2 раз(а). leadZero.000.zip (3kb) загружен 2 раз(а).У Вас нет прав для просмотра или загрузки вложений. Попробуйте зарегистрироваться.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,984 Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 710 раз в 671 постах
|
Здравствуйте. Путь к доверенному хранилищу cacerts и пароль к нему зашиты в коде, и список доверенных сертификатов берется именно по этому пути (см. при включенном уровне логирования FINE). Попробуйте сделать символьную ссылку на перемещенный cacerts. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 04.10.2011(UTC) Сообщений: 74 Откуда: Moscow
Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
Автор: afev Здравствуйте. Путь к доверенному хранилищу cacerts и пароль к нему зашиты в коде, и список доверенных сертификатов берется именно по этому пути (см. при включенном уровне логирования FINE). Попробуйте сделать символьную ссылку на перемещенный cacerts. Спасибо, использовать симлинки я уже предлагал и по некоторым причинам этот вариант оставили как крайний. Тем не менее на мой взгляд хардкодить путь к хранилищу доверенных сертификатов негибко. Планируется ли изменить этот функционал(допустим, введя параметр для jvm)?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 04.10.2011(UTC) Сообщений: 74 Откуда: Moscow
Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 04.10.2011(UTC) Сообщений: 74 Откуда: Moscow
Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,984 Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 710 раз в 671 постах
|
Автор: pls Планируется ли изменить этот функционал(допустим, введя параметр для jvm)? Пока нет. |
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 04.10.2011(UTC) Сообщений: 74 Откуда: Moscow
Сказал(а) «Спасибо»: 1 раз Поблагодарили: 1 раз в 1 постах
|
можно оставить request for feature и если да то где?
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close