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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline mrnuke  
#1 Оставлено : 11 декабря 2014 г. 19:29:09(UTC)
mrnuke

Статус: Участник

Группы: Участники
Зарегистрирован: 03.12.2014(UTC)
Сообщений: 15

Сказал(а) «Спасибо»: 3 раз
Здравствуйте! Хочу подписать файл с помощью CSP, а проверить подпись с помощью JCP. Желательно и в обратную сторону тоже. Не получается.

Сравниваю подписи, полученные при подписи файла с помощью CSP и JCP - они сильно отличаются по размеру.
Формирую подписи так:
Для работы с CSP использую КриптоАРМ. Генерирую самоподписанный сертификат с криптопровайдером CSP, подписываю файл, указав, что подпись нужно хранить отдельно от файла, и хранить подпись в der-кодировке. Получив подпись экспортирую сертификат в хранилище JCP.

Для подписи с JCP использую код
Цитата:
KeyStore ks = KeyStore.getInstance(JCP.HD_STORE_NAME);
ks.load(null, CONTAINER_PASSWORD);
PrivateKey privateKey = (PrivateKey)ks.getKey(CONTAINER_NAME, CONTAINER_PASSWORD);

final Signature signature = Signature.getInstance("CryptoProSignature");
signature.initSign(privateKey);
signature.update(TEXT);
byte[] signedData = dsa.sign();
// запись подписи в файл.

Offline Евгений Афанасьев  
#2 Оставлено : 11 декабря 2014 г. 19:42:59(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 21 раз
Поблагодарили: 714 раз в 674 постах
Здравствуйте.
Может быть, в CSP вы формируете CMS подпись? Пример на Java создает plain-подпись длиной 64 байта.
Offline mrnuke  
#3 Оставлено : 11 декабря 2014 г. 23:05:41(UTC)
mrnuke

Статус: Участник

Группы: Участники
Зарегистрирован: 03.12.2014(UTC)
Сообщений: 15

Сказал(а) «Спасибо»: 3 раз
Я так понимаю, что CMS это когда подпись идет вместе с контентом и сертификатом. Тут же я ставлю галку, что создаваемая подпись должна быть отдельно от контента. Может ли это быть CMS?

Если это не так, то как создать plain-подпись в CSP?

Отредактировано пользователем 11 декабря 2014 г. 23:25:47(UTC)  | Причина: Не указана

Offline mrnuke  
#4 Оставлено : 12 декабря 2014 г. 15:53:58(UTC)
mrnuke

Статус: Участник

Группы: Участники
Зарегистрирован: 03.12.2014(UTC)
Сообщений: 15

Сказал(а) «Спасибо»: 3 раз
Ага, создал подпись в формате CMS через JCP. Использовал пример, описанный в samples-sources\CMS_samples\CMS.java (метод создания detached подписи)

Итак, CSP проверяет подпись JCP, и показывает, что она валидна. Но если подписать с помощью CSP, JCP показывает, что подпись не верна.

Отредактировано пользователем 12 декабря 2014 г. 18:44:27(UTC)  | Причина: Не указана

Offline mrnuke  
#5 Оставлено : 12 декабря 2014 г. 18:44:15(UTC)
mrnuke

Статус: Участник

Группы: Участники
Зарегистрирован: 03.12.2014(UTC)
Сообщений: 15

Сказал(а) «Спасибо»: 3 раз
В метод signature.verify(sign) передается строка длинной 64 байта. Так что длинна подписи хоть и получается разная, она тут не при чем

Отредактировано пользователем 12 декабря 2014 г. 18:45:04(UTC)  | Причина: Не указана

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