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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline Uvg  
#1 Оставлено : 7 октября 2016 г. 17:09:38(UTC)
Uvg

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

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

Сказал(а) «Спасибо»: 1 раз
Доброе время суток.
Криптографией не занимался и не интересовался, вообще. поэтому не ругайте за пару дилетантских вопросов.
Пытаюсь подписать хэш, кодом почти из примера к Crypto Pro .Net SDK (c#)

Код:

byte[] GetSign(byte[] HashValue)
        {
            CspParameters par = new CspParameters(75);
            par.KeyContainerName = "11111";

            Gost3410CryptoServiceProvider Gost = new Gost3410CryptoServiceProvider(par);
            GostSignatureFormatter GostFormatter = new GostSignatureFormatter(Gost);
            GostSignatureDeformatter GostDeformatter = new GostSignatureDeformatter(Gost);

            byte[] SignedHashValue = GostFormatter.CreateSignature(HashValue);
            if (GostDeformatter.VerifySignature(HashValue, SignedHashValue))
                        return  SignedHashValue
            else 
                throw ......


Озадачило, что при нескольких вызовах подряд GetSign с одинаковым значением HashValue результат SignedHashValue разный. Я не смотрел сам алгоритм подписи и не разбирался с ним.
Так и должно быть при одинаковом ключе?

Сертификат был получен тестовый с закрытым ключом.


И второй вопрос. Почему в примерах используется для подписи хэша метод CreateSignature , класса GostSignatureFormatter, а не метод SignHash класса Gost3410CryptoServiceProvider?
Эти методы отличается?

Отредактировано пользователем 7 октября 2016 г. 17:14:33(UTC)  | Причина: Не указана

Offline Андрей Писарев  
#2 Оставлено : 7 октября 2016 г. 21:31:24(UTC)
Андрей *

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

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

Сказал «Спасибо»: 550 раз
Поблагодарили: 2214 раз в 1728 постах
Автор: Uvg Перейти к цитате


Озадачило, что при нескольких вызовах подряд GetSign с одинаковым значением HashValue результат SignedHashValue разный. Я не смотрел сам алгоритм подписи и не разбирался с ним.
Так и должно быть при одинаковом ключе?


Здравствуйте.
Да, так и должно быть.
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Андрей * за этот пост.
Uvg оставлено 10.10.2016(UTC)
Offline Uvg  
#3 Оставлено : 10 октября 2016 г. 15:35:03(UTC)
Uvg

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

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

Сказал(а) «Спасибо»: 1 раз
Спасибо.

А по поводу различия в методах:
CreateSignature, класса GostSignatureFormatter и SignHash, класса Gost3410CryptoServiceProvider , можете что-нибудь сказать?
Online Максим Коллегин  
#4 Оставлено : 14 октября 2016 г. 10:26:13(UTC)
Максим Коллегин

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

Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,393
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 37 раз
Поблагодарили: 717 раз в 621 постах
Методы одинаковые.
Знания в базе знаний, поддержка в техподдержке
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.