Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

3 Страницы<123>
Опции
К последнему сообщению К первому непрочитанному
Offline Санчир Момолдаев  
#11 Оставлено : 4 декабря 2024 г. 15:32:40(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы готовые для захвата: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,215
Российская Федерация

Сказал(а) «Спасибо»: 101 раз
Поблагодарили: 285 раз в 265 постах
считыватель это то где находится контейнер.
если контейнер на hdimage (диске) то его нужно указать в yml
для JCP это HDImageStore, для JCSP это HDIMAGE

алиас - это имя контейнера.
пароль - это пин от него. если пустой - оставьте пустым.

считытель и имя контейнера можно взять из cptools (из состава CSP)

сам контейнер вы должны получить самостоятельно. либо чтобы вам его кто-то дал либо вы его можете получить на тестовом уц https://www.cryptopro.ru/solutions/test-ca

cacerts - это файл из состава самой Java.
обычно расположен в lib/security/cacerts
установить сертификаты (корневые и промежуточные) можно через keytool или https://keystore-explorer.org
Техническую поддержку оказываем тут
Наша база знаний
Offline Алексей Вдовин  
#12 Оставлено : 4 декабря 2024 г. 17:00:33(UTC)
Алексей Вдовин

Статус: Активный участник

Группы: Участники
Зарегистрирован: 28.12.2021(UTC)
Сообщений: 253
Российская Федерация
Откуда: Новосибирск

Сказал(а) «Спасибо»: 77 раз
Поблагодарили: 1 раз в 1 постах
Цитата:

#./gradlew clean test bootJar

> Task :compileJava FAILED
/home/alex/IdeaProjects/example/src/main/java/ru/cryptopro/support/spring/example/config/KeyManagerConfig.java:9: error: cannot find symbol
import ru.CryptoPro.ssl.JavaTLSCertPathManagerParameters;
^
symbol: class JavaTLSCertPathManagerParameters
location: package ru.CryptoPro.ssl
1 error


не компилируется :(


под этот проект даже java поставилась 21й версии - IDE предложил, я подтвердил

Цитата:

java -version
openjdk version "21.0.5" 2024-10-15
OpenJDK Runtime Environment (build 21.0.5+11-Ubuntu-1ubuntu124.04)
OpenJDK 64-Bit Server VM (build 21.0.5+11-Ubuntu-1ubuntu124.04, mixed mode, sharing)



jar файлики были скопированы из jcp-2.0.41490-A.zip

попробовал скопировать jar из java-csp-5.0.42119-A.zip - ошибка та же

Отредактировано пользователем 4 декабря 2024 г. 17:12:29(UTC)  | Причина: Не указана

Offline Алексей Вдовин  
#13 Оставлено : 4 декабря 2024 г. 17:21:50(UTC)
Алексей Вдовин

Статус: Активный участник

Группы: Участники
Зарегистрирован: 28.12.2021(UTC)
Сообщений: 253
Российская Федерация
Откуда: Новосибирск

Сказал(а) «Спасибо»: 77 раз
Поблагодарили: 1 раз в 1 постах
Цитата:

слишком абстрактный вопрос: как подписывать.
raw подпись, cms, может речь о XmlDsig или pdf.


подскажите, а в примере на php по указанной мною ссылке - там какая подпись?
Offline Санчир Момолдаев  
#14 Оставлено : 4 декабря 2024 г. 18:55:09(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы готовые для захвата: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,215
Российская Федерация

Сказал(а) «Спасибо»: 101 раз
Поблагодарили: 285 раз в 265 постах
cms (cades)

в javadoc есть примеры https://docs.cryptopro.r...javadoc/CAdES/index.html
создания cades подписей

Отредактировано пользователем 4 декабря 2024 г. 18:57:16(UTC)  | Причина: Не указана

Техническую поддержку оказываем тут
Наша база знаний
Offline Алексей Вдовин  
#15 Оставлено : 4 декабря 2024 г. 19:10:19(UTC)
Алексей Вдовин

Статус: Активный участник

Группы: Участники
Зарегистрирован: 28.12.2021(UTC)
Сообщений: 253
Российская Федерация
Откуда: Новосибирск

Сказал(а) «Спасибо»: 77 раз
Поблагодарили: 1 раз в 1 постах
Автор: Санчир Момолдаев Перейти к цитате
cms (cades)

в javadoc есть примеры https://docs.cryptopro.r...javadoc/CAdES/index.html
создания cades подписей


зашел я по этой ссылке ... это издевательство какое-то :(
где там пример создания подписи искать?!
Offline Евгений Афанасьев  
#16 Оставлено : 4 декабря 2024 г. 23:06:02(UTC)
Евгений Афанасьев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,997
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 21 раз
Поблагодарили: 712 раз в 673 постах
https://docs.cryptopro.r...#CAdESSignature-boolean-
В samples-sources.jar в папке CAdES также есть примеры, SignExample_2012_256 (подпись с двумя подписантами)

Отредактировано пользователем 4 декабря 2024 г. 23:08:57(UTC)  | Причина: Не указана

Offline Санчир Момолдаев  
#17 Оставлено : 4 декабря 2024 г. 23:26:51(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы готовые для захвата: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,215
Российская Федерация

Сказал(а) «Спасибо»: 101 раз
Поблагодарили: 285 раз в 265 постах
Автор: GTAlex Перейти к цитате
Автор: Санчир Момолдаев Перейти к цитате
cms (cades)

в javadoc есть примеры https://docs.cryptopro.r...javadoc/CAdES/index.html
создания cades подписей


зашел я по этой ссылке ... это издевательство какое-то :(
где там пример создания подписи искать?!


вот точнее https://docs.cryptopro.r...AdES/CAdESSignature.html
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Санчир Момолдаев за этот пост.
Алексей Вдовин оставлено 05.12.2024(UTC)
Offline Алексей Вдовин  
#18 Оставлено : 5 декабря 2024 г. 8:12:24(UTC)
Алексей Вдовин

Статус: Активный участник

Группы: Участники
Зарегистрирован: 28.12.2021(UTC)
Сообщений: 253
Российская Федерация
Откуда: Новосибирск

Сказал(а) «Спасибо»: 77 раз
Поблагодарили: 1 раз в 1 постах
Цитата:
вот точнее https://docs.cryptopro.r...AdES/CAdESSignature.html


Спасибо, значительно точнее!

Осталось разобраться как получить закрытый ключ и цепочку сертификатов
Код:


 // Закрытый ключ заверителя.
 PrivateKey privateKeyC = ...;
 
 // Цепочка сертификатов заверителя.
 List chainC = ...;


На сколько я понимаю так это делается (где PHP1 - имя контейнера)

Код:

        KeyStore keyStore = KeyStore.getInstance("HDImageStore", "JCP");
        keyStore.load(null, null);

        String alias = "PHP1";
        char[] password = "".toCharArray();

        // Закрытый ключ подписи
        PrivateKey privateKey = (PrivateKey)keyStore.getKey(alias, password);

        // Цепочка сертификатов подписи
        List<Certificate> chainC = Arrays.asList(keyStore.getCertificateChain(alias));

Отредактировано пользователем 5 декабря 2024 г. 8:46:18(UTC)  | Причина: Не указана

Offline Алексей Вдовин  
#19 Оставлено : 5 декабря 2024 г. 9:02:48(UTC)
Алексей Вдовин

Статус: Активный участник

Группы: Участники
Зарегистрирован: 28.12.2021(UTC)
Сообщений: 253
Российская Федерация
Откуда: Новосибирск

Сказал(а) «Спасибо»: 77 раз
Поблагодарили: 1 раз в 1 постах
на этой строчке

Цитата:
CAdESSignature cadesSignature = new CAdESSignature(false);


валится с исключением

Цитата:
java.lang.ClassNotFoundException: org.bouncycastle.cms.CMSException



это пофиксил - файлики bc* из /dependencies не скопировал

Отредактировано пользователем 5 декабря 2024 г. 9:11:50(UTC)  | Причина: Не указана

Offline Алексей Вдовин  
#20 Оставлено : 5 декабря 2024 г. 9:17:57(UTC)
Алексей Вдовин

Статус: Активный участник

Группы: Участники
Зарегистрирован: 28.12.2021(UTC)
Сообщений: 253
Российская Федерация
Откуда: Новосибирск

Сказал(а) «Спасибо»: 77 раз
Поблагодарили: 1 раз в 1 постах
теперь валится на строчке
Код:

cadesSignature.addSigner(...)


Цитата:

Error occurred during building the certification path for the target:
serial: 1200663a2eb824b81054d40fa5000200663a2e
subject: CN=Овина Ирина Анатольевна, SURNAME=Овина, GIVENNAME=Ирина Анатольевна, OID.1.2.643.100.3=#120b3036383735383633323237, OID.1.2.643.3.131.1.1=#120c353430333031393430323437, EMAILADDRESS=renna@gmail.com
issuer: CN=CRYPTO-PRO Test Center 2, O=CRYPTO-PRO LLC, L=Moscow, C=RU, EMAILADDRESS=support@cryptopro.ru
not before: Fri Nov 01 12:50:17 GMT+07:00 2024
not after: Wed Jan 01 13:00:17 GMT+07:00 2025
signature provider: JCP
validation date: null
native implementation: true
: no such provider: RevCheck; error codes: [33] 'PKIX failure: invalid parameters of certificate',


это тестовый сертификат, Издатель CN=CRYPTO-PRO Test Center 2
может поэтому?


или что-то с корневыми и промежуточными в самой java - как это диагностировать?

корневой и промежуточный для тестового нашел где скачать
http://testca2012.cryptopro.ru/cert/rootca.cer
http://testca2012.cryptopro.ru/cert/subca.cer

а где скачать корневые и промежуточные для Минцифры? (на сколько я понимаю они главные)
на сайте Сбера такие ссылки - норм?

https://gu-st.ru/content..._trusted_root_ca_pem.crt
https://gu-st.ru/content...n_trusted_sub_ca_pem.crt

Скачал сертификаты
Из java приложения (чтоб наверняка), посмотрел домашнюю папку
Код:
System.out.println(System.getProperty("java.home"));


добавил /lib/security/cacerts и следующими командами импортировал все сертификаты

Код:

keytool -import -trustcacerts -keystore /home/alex/.jdks/openjdk-23.0.1/lib/security/cacerts -alias rootca -file  russian_trusted_root_ca_pem.crt
keytool -import -trustcacerts -keystore /home/alex/.jdks/openjdk-23.0.1/lib/security/cacerts -alias subca -file russian_trusted_sub_ca_pem.crt

keytool -import -trustcacerts -keystore /home/alex/.jdks/openjdk-23.0.1/lib/security/cacerts -alias testca -file rootca.cer
keytool -import -trustcacerts -keystore /home/alex/.jdks/openjdk-23.0.1/lib/security/cacerts -alias subtest -file subca.cer


результата нет - ошибка та же :(
что не так делаю? куда копать?

хелп

Отредактировано пользователем 5 декабря 2024 г. 10:06:55(UTC)  | Причина: Не указана

RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest (5)
3 Страницы<123>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.