Статус: Участник
Группы: Участники
Зарегистрирован: 13.05.2013(UTC) Сообщений: 14 Откуда: Москва Сказал(а) «Спасибо»: 6 раз
|
Спасибо! Не подскажете, что можно использовать для проверки "хеш-подписи" на сервере (для java)? Какие-то классы, методы.. В какую сторону искать?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,963 Откуда: Крипто-Про Сказал(а) «Спасибо»: 20 раз Поблагодарили: 704 раз в 665 постах
|
Посмотрите примеры CMSSign и CMSVerify в пакете CMS_samples в samples-sources.jar (лучше взять из дистрибутива JCP 2.0). В CMSSign в ф. createHashCMSEx есть возможность сформировать подпись, имея хеш, а не данные. Соответственно, в CMSVerify в ф. CMSVerifyEx можно внести изменения, чтобы также проверить по хешу, а не по данным: в коде функции CMSVerifyEx используется переменная text, которая должна содержать исходные данные (либо подаваемые в функцию, либо извлекаемые из подписи, если она совмещенная), она передается в функцию verifyOnCert, далее формируется хеш по этим данным и сверяется со значением соответствующего атрибута (digest). Это место можно доработать. Отредактировано пользователем 24 апреля 2014 г. 17:21:33(UTC)
| Причина: Не указана |
|
1 пользователь поблагодарил Евгений Афанасьев за этот пост.
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 10.12.2008(UTC) Сообщений: 924 Откуда: Крипто-Про Поблагодарили: 99 раз в 95 постах
|
Автор: Анастасия Чижикова Но я ведь спросила не об этом.
Ситуация 1. Мы подписали некий файл А.txt через браузерный плагин с помощью signCades. Ситуация 2. Мы сгенерировали для того же самого исходного файла А.txt хеш при помощи алгоритма ГОСТ Р 34.10 (один единственный раз). И этот хеш подписали в браузерном плагине с помощью signHash.
В 1 и 2 ситуации у нас получились 2 разные подписи. Первая из них проверяется вышеприведенным кодом, а вторая нет. Вопрос состоит из двух частей:
1. Действительно ли подписи из ситуаций 1 и 2 должны быть разными. Если верить ответу Андрея, ответ: ДА, ОНИ РАЗНЫЕ. 2. Можно ли, используя CAdESSignature работать с подписью, полученной во 2м случае - проверять и извлекать данные о подписантах 1. Разными подписи должны быть в том смысле, что таково свойство алгоритма ГОСТ Р 34.10. Подписи по нему ВСЕГДА разные. Если имелось в виду, можно ли такие подписи проверить одним и тем же способом, то да, можно. В этом смысле подписи "одинаковые". 2. Да, можно. Но для проверки подписи нужны исходные данные, а не только хэш-значение. Если вторая подпись не проверяется, значит что-то было сделано неправильно. Первое, что следует проверить - кодировка данных при создании подписи и при вычислении хэш-значения должны совпадать. Подписи в обоих случаях отделенные?
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close