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

Уведомление

Icon
Error

2 Страницы<12
Опции
К последнему сообщению К первому непрочитанному
Offline SerPenTeHoK  
#11 Оставлено : 15 ноября 2019 г. 8:39:06(UTC)
SerPenTeHoK

Статус: Новичок

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

Добрый день!

Подписываем на JS через плагин браузера в отсоединённую подпись, файл с данными берём частями по 20 МБ. Параметры:
Код:
CryptoProConfig: {
 CADESCOM_CADES_BES: 1,
 CAPICOM_CURRENT_USER_STORE: 2,
 CAPICOM_MY_STORE: 'My',
 CAPICOM_STORE_OPEN_MAXIMUM_ALLOWED: 2,
 CAPICOM_CERTIFICATE_FIND_SUBJECT_NAME: 1,
 CADESCOM_BASE64_TO_BINARY: 1,
 CADESCOM_HASH_ALGORITHM_CP_GOST_3411_2012_256: 101
}


Подскажите, пожалуйста, проверка этой отсоединённой подписи может выглядит так или что-то упускаю? (java)
Код:
MessageDigest digest = MessageDigest.getInstance("GOST3411_2012_256");
digest.update(data);
byte[] digestData = digest.digest();

Signature signature = Signature.getInstance(algorithmName);
PublicKey publicKey = certificate.getPublicKey();
signature.initVerify(publicKey);
signature.update(digestData);
result = signature.verify(sign);

Вопрос возник, т.к. проверка отрицательная.

В формуляре (ЖТЯИ.00091-02 33 01-01. КриптоПро JCP. Руководство программиста.) указывается:
Код:
OID digestOid = new OID("1.2.643.2.2.30.1");
GostDigest gostDigest = (GostDigest)digest;
gostDigest.reset(digestOid);


Но преобразование к GostDigest ругается, что нельзя привести, подскажите, пожалуйста, как это "приготовить"?

Отредактировано пользователем 15 ноября 2019 г. 8:48:41(UTC)  | Причина: Не указана

Offline Санчир Момолдаев  
#12 Оставлено : 15 ноября 2019 г. 13:21:59(UTC)
Санчир Момолдаев

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

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

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 223 раз в 211 постах
Что у вас в algorithmName
Где проверяете? В csp?
Возможно вам необходимо переворачивать байты подписи или использовать raw_ алгоритмы подписи
Техническую поддержку оказываем тут
Наша база знаний
Offline Евгений Афанасьев  
#13 Оставлено : 15 ноября 2019 г. 16:13:57(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 685 раз в 646 постах
Плагин создает, скорее всего, CAdES подпись, а вы проверяете plain (голую подпись). Надо либо использовать CAdES.jar (см. примеры CAdES в samples-sources.jar), либо CMSVerify (там же, в пакете CMS).
Offline Санчир Момолдаев  
#14 Оставлено : 16 ноября 2019 г. 18:53:22(UTC)
Санчир Момолдаев

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

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

Сказал(а) «Спасибо»: 88 раз
Поблагодарили: 223 раз в 211 постах
действительно, проглядел плагин.
судя по конфигурации вы получили CADESCOM_CADES_BES: 1
и проверять его необходимо как описано выше
Техническую поддержку оказываем тут
Наша база знаний
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
2 Страницы<12
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.