05.48 Стандарты ЭЦП. ГОСТ 34.10-2001
Прислано GMan1990 March 15 2015 15:53:24

Раздел 5. Вопрос 48. Стандарты ЭЦП. ГОСТ 34.10-2001

Алгоритмы ЭЦП

ГОСТ Р 34.10-2012 и ГОСТ Р 34.10-2001 основаны на эллиптических кривых. Стойкость этих алгоритмов основывается на сложности вычисления дискретного логарифма в группе точек эллиптической кривой, а также на стойкости хэш-функции.

Стандарт ГОСТ Р 34.10-2012 использует ту же схему формирования электронной цифровой подписи, что и ГОСТ Р 34.10-2001. Новый стандарт отличается наличием дополнительного варианта параметров схем (соответствующего длине секретного ключа порядка 512 бит) и требованием использования функций хэширования ГОСТ Р 34.11-2012: первый вариант требований к параметрам (такой же, как в ГОСТ Р 34.10-2001, соответствующий длине секретного ключа порядка 256 бит) предусматривает использование хэш-функции с длиной хэш-кода 256 бит, дополнительный вариант требований к параметрам предусматривает использование хэш-функции с длиной хэш-кода 512 бит.

После подписывания сообщения М к нему дописывается цифровая подпись размером 512 или 1024 бит и текстовое поле. В текстовом поле могут содержаться, например, дата и время отправки или различные данные об отправителе:

| Сообщение М |    +    | Цифровая подпись | Текст |

Данный алгоритм не описывает механизм генерации параметров, необходимых для формирования подписи, а только определяет, каким образом на основании таких параметров получить цифровую подпись. Механизм генерации параметров определяется на месте в зависимости от разрабатываемой системы.

Формирование цифровой подписи

1)                 Вычисление хэш-функции от сообщения М:  

2)                 Вычисление e = z(mod q), и если e = 0, положить e = 1. Где z — целое число соответствующее

3)                 Генерация случайного числа k, такого что 0 < k < q

4)                 Вычисление точки эллиптической кривой C = kP, и по ней нахождение r = xc(mod q) (xc — координата x кривой C). Если r = 0, возвращаемся к предыдущему шагу.

5)                 Нахождение s = rd + ke (mod q). Если s = 0, возвращаемся к шагу 3.

6)                 Формирование цифровой подписи , где и — векторы, соответствующие r и s.

 

Проверка цифровой подписи

1)                 Вычисление по цифровой подписи ξ чисел r и s, учитывая, что , где r и s — числа, соответствующие векторам и . Если хотя бы одно из неравенств r < q и s < q неверно, то подпись неправильная.

2)                 Вычисление хэш-функции от сообщения М:

3)                 Вычисление e = z(mod q), и если e = 0, положить e = 1. Где z — целое число соотвествующее

4)                 Вычисление ν = e − 1(mod q).

5)                 Вычисление z1 = sν(mod q) и z2 = − rν(mod q).

6)                 Вычисление точки эллиптической кривой C = z1P + z2Q. И определение R = xc(mod q), где xc — координата x кривой C. В случае равенства R = r подпись правильная, иначе — неправильная.

 

Цифровая подпись предназначена для аутентификации лица, подписавшего электронное сообщение. Кроме того, использование ЭЦП предоставляет возможность обеспечить следующие свойства при передаче в системе подписанного сообщения:

- осуществить контроль целостности передаваемого подписанного сообщения,

- доказательно подтвердить авторство лица, подписавшего сообщение,

- защитить сообщение от возможной подделки.

Функция хэширования.

Для ГОСТ Р 34.10-2012 используется хэш-функция по ГОСТ Р 34.11-2012 Информационная технология. Криптографическая защита информации. Функция хэширования. Для ГОСТ Р 34.10-2001 - ГОСТ Р 34.11-94.

Схема формирования цифровой подписи.

 

Схема проверки цифровой подписи