Государственный стандарт РФ ГОСТ Р 34.10-2001 "Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи" (принят постановлением Госстандарта РФ от 12 сентября 2001 г. N 380-ст) стр. 4

Шаг 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]).
А.5 функция цифровой подписи (signature function): Функция в процессе формирования подписи, определяемая ключом подписи и параметрами схемы ЭЦП. Эта функция в качестве исходных данных получает часть исходных данных и, возможно, формирователь последовательности псевдослучайных чисел (рандомизатор), а в результате выдает вторую часть цифровой подписи.
Приложение Б
(справочное)

Контрольный пример

Данное приложение носит справочный характер и не является частью стандарта. Приводимые ниже значения параметров р, a, b, m, q, P, а также значения ключей подписи и проверки d и Q рекомендуется использовать только для проверки корректной работы конкретной реализации алгоритмов, описанных в настоящем стандарте.
Все числовые значения приведены в десятичной и шестнадцатеричной записи. Нижний индекс в записи числа обозначает основание системы счисления. Символ "\\" обозначает перенос числа на новую строку. Например, запись
представляет целое число 1234567890, соответственно, в десятичной и шестнадцатеричной системах счисления.
Б.1 Параметры схемы цифровой подписи
Для формирования и проверки цифровой подписи должны быть использованы следующие параметры (см. 5.2).
Б.1.1 Модуль эллиптической кривой