(Действующий) Государственный стандарт РФ ГОСТ Р 34.10-2001 "Информационная...

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

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

6 Основные процессы

В данном разделе определены процессы формирования и проверки цифровой подписи под сообщением пользователя.
Для реализации данных процессов необходимо, чтобы всем пользователям были известны параметры схемы цифровой подписи, удовлетворяющие требованиям 5.2.
Кроме того, каждый пользователь должен иметь ключ подписи d и ключ проверки подписи , которые также должны удовлетворять требованиям 5.2.
6.1 Формирование цифровой подписи
Для получения цифровой подписи под сообщением необходимо выполнить следующие действия (шаги) по алгоритму I.
Шаг 1 - вычислить хэш-код сообщения
. (14)
Шаг 2 - вычислить целое число , двоичным представлением которого является вектор , и определить
. (15)
Если е = 0, то определить е = 1.
Шаг 3 - сгенерировать случайное (псевдослучайное) целое число k, удовлетворяющее неравенству
. (16)
Шаг 4 - вычислить точку эллиптической кривой C = kP и определить
, (17)
где - х-координата точки С. Если r=0, то вернуться к шагу 3.
Шаг 5 - вычислить значение
. (18)
Если s = 0, то вернуться к шагу 3.
Шаг 6 - вычислить двоичные векторы и , соответствующие r и s, и определить цифровую подпись как конкатенацию двух двоичных векторов.
Исходными данными этого процесса являются ключ подписи d и подписываемое сообщение М, а выходным результатом - цифровая подпись .
Схематическое представление процесса формирования цифровой подписи приведено на рисунке 2.
6.2 Проверка цифровой подписи
Для проверки цифровой подписи под полученным сообщением М необходимо выполнить следующие действия (шаги) по алгоритму II.
Шаг 1 - по полученной подписи вычислить целые числа r и s. Если выполнены неравенства , то перейти к следующему шагу. В противном случае подпись неверна.
Шаг 2 - вычислить хэш-код полученного сообщения М
. (19)
Шаг 3 - вычислить целое число , двоичным представлением которого является вектор , и определить
. (20)
Если е = 0, то определить е = 1.
Шаг 4 - вычислить значение
. (21)
Шаг 5 - вычислить значения
. (22)
Шаг 6 - вычислить точку эллиптической кривой и определить
, (23)
где - х-координата точки С.
Шаг 7 - если выполнено равенство R = r, то подпись принимается, в противном случае, подпись неверна.
Исходными данными этого процесса являются подписанное сообщение М, цифровая подпись и ключ проверки Q, а выходным результатом - свидетельство о достоверности или ошибочности данной подписи.
Схематическое представление процесса проверки цифровой подписи приведено на рисунке 3.
Приложение А
(справочное)

Дополнительные термины в области ЭЦП

В настоящем приложении приведены дополнительные международные термины, применяемые в рассматриваемой и смежных областях.
А.1 заполнение (padding): Дополнение строки данных лишними битами (ИСО/МЭК 10118-1 [6]).
А.2 идентификационные данные (identification data): Последовательность элементов данных, включая отличительный идентификатор объекта, принадлежащая объекту и используемая для его обозначения (ИСО/МЭК 148881-1 [3]).
А.3 уравнение цифровой подписи (signature equation): Уравнение, определяемое функцией цифровой подписи (ИСО/МЭК 148881-1 [3]).
А.4 функция проверки (verification function): Функция процесса проверки, определяемая ключом проверки, выдающая в качестве результата вычисленное значение свидетельства о достоверности подписи (ИСО/МЭК 148881-1 [3]).