Статус: Активный участник
Группы: Участники
Зарегистрирован: 10.01.2012(UTC) Сообщений: 52 Откуда: Москва
|
Здравствуйте! Пытаюсь подписать pdf из явы с помощью пакета iText. Пока сертификат, которым подписывали был в файловой системе, всё было в порядке. Затем возникла необходимость подписывать сертификатом, который считываю с выданного eToken-а.
KeyStore keyStore = KeyStore.getInstance("OCFStore","JCP"); keyStore.load(null, password.toCharArray()); String alias = (String)keyStore.aliases().nextElement(); PrivateKey key = (PrivateKey)keyStore.getKey(alias, password.toCharArray()); // <<-- Ключ считался, key.getAlgorithm() выдаёт "GOST3410DH" PdfReader reader = new PdfReader(fileToSign); FileOutputStream fout = new FileOutputStream(resultFile); PdfStamper stp = PdfStamper.createSignature(reader, fout, '\0'); PdfSignatureAppearance sap = stp.getSignatureAppearance(); sap.setCrypto(key, chain, null, PdfSignatureAppearance.WINCER_SIGNED); sap.setReason("I'm the author"); sap.setLocation("Lisbon"); stp.close(); // <<------------------------------ Здесь возникает ошибка java.security.NoSuchAlgorithmException: Unknown Key Algorithm GOST3410DH !!!
Вопрос: обязательно ли должен быть установлен провайдер JTLS? Ведь речь не идёт о каком-то защищённом обмене данными? Или мне выдали токен с ключами, неправильно сгенерированными?
Светлые умы, натолкните хоть в каком направлении двигаться? Ну пожалуйста...
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 01.08.2011(UTC) Сообщений: 674 Откуда: Москва
Сказал(а) «Спасибо»: 9 раз Поблагодарили: 38 раз в 36 постах
|
А вы устанавливали модуль поддержки eToken для Крипто Про JCP?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 10.01.2012(UTC) Сообщений: 52 Откуда: Москва
|
Да, конечно. Стоит свежайшая версия. eToken PKI Client PKIClient 5.1_SP1 + eToken для КриптоПро JCP версии 1.0.0.61
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 01.08.2011(UTC) Сообщений: 674 Откуда: Москва
Сказал(а) «Спасибо»: 9 раз Поблагодарили: 38 раз в 36 постах
|
Устанавливали пакет OCF(OpenCard Framework)?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 10.01.2012(UTC) Сообщений: 52 Откуда: Москва
|
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 01.08.2011(UTC) Сообщений: 674 Откуда: Москва
Сказал(а) «Спасибо»: 9 раз Поблагодарили: 38 раз в 36 постах
|
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 10.01.2012(UTC) Сообщений: 52 Откуда: Москва
|
А почему вы считаете, что у меня неправильно установлен Open Cards Framework? в каталоге \jdk1.6.0_25\jre\lib\ext\ лежат оба OCF1.2\lib\base-core.jar и base-opt.jar, а в \jdk1.6.0_25\jre\lib - файл opencard.properties Этого недостаточно? Кстати, если взять OCFbase.rar с http://cryptopro.ru/products/csp/jcp/downloads, ControlPane.bat на закладке OCF выдёт ошибку "java.lang.ClassNotFoundException com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory ... " нужно в opencard.properties прописывать OpenCard.services = \ ru.aladdin.etoken.cryptopro.jcp.eTokenCardServiceFactory \ ru.CryptoPro.JCP.KeyStore.Oscar.ConfigCardServiceFactory OpenCard.terminals = \ ru.aladdin.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory Отредактировано пользователем 12 января 2012 г. 12:21:42(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 01.08.2011(UTC) Сообщений: 674 Откуда: Москва
Сказал(а) «Спасибо»: 9 раз Поблагодарили: 38 раз в 36 постах
|
Поясните пожалуйста, как вы переместили в каталог \jdk1.6.0_25\jre\lib\ext\ OCF1.2\lib\base-core.jar
Какие файлы вы скопировали в каталоги \jdk1.6.0_25\jre\lib\ext\ и \jdk1.6.0_25\jre\lib\?
Какая ОС? Какая версия JCP?
|
|
|
|
Статус: Активный участник
Группы: Участники
Зарегистрирован: 10.01.2012(UTC) Сообщений: 52 Откуда: Москва
|
Как написано в руководстве по установке и настройке "Модуль поддержки eToken для КриптоПро JCP 1.0": В папке, куда вы сохранили OpenCard Framework Base, откройте вложенную папку lib и скопируйте из нее все файлы .jar в папку в Java/jre/lib/ext (или в /Java/jdk/jre/lib/ext, если установлен комплект разработчика JDK). Так что файлы скопированы вручную (обязательно было использовать installOCF?).
в /Java/jdk/jre/lib/ex скопированы вручную файлы base-core.jar, base-opt.jar в /Java/jdk/jre/lib - opencard.properties
ОС: Windows 7 (64-bit) JCP: CryptoPro JCP v.1.0, rel.1.0.52
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 01.08.2011(UTC) Сообщений: 674 Откуда: Москва
Сказал(а) «Спасибо»: 9 раз Поблагодарили: 38 раз в 36 постах
|
В данной установке eToken нужно учитывать последовательность действий. 1. eToken RTE или eToken PKI client для нужной версии ОС (со страницы загрузки файлов) 2. скопировать файлы *.jar из архива OCFbase.rar в ${java.home}/jre/lib/ext. 3. скопировать файл opencard.properties из этого же архива в ${java.home}/jre/lib. 4. модуль поддержки eToken для КриптоПро JCP. При установке обязательно нужно в качестве папки установки выбрать путь к папке с Java Для начала попробуйте скопировать base-core.jar, base-opt.jar и opencard.properties в нужные каталоги, с предлагаемого нашего архива OCFbase.rar. А после переставить модуль поддержки eToken.
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close