Следует отметить, что схема выработки цифровой подписи по ГОСТ Р 34.10-94 во многом напоминает подпись по алгоритму RSA.
Для ее вычисления используются заранее известные (общедоступные) два больших простых числа p и q и дополнительное целое число a. Они должны удовлетворять следующим условиям:
р : 2509 < р < 2512 или 21020 < р < 21024;
q: простой делитель числа (р-1), который удовлетворяет условию:
2254 < q < 2256;
а: 1 < а < р-1, аq modp = 1.
Секретный ключ Х случайно выбирается из диапазона [1; q] и должен хранится в тайне.
Открытый ключ вычисляется по формуле: y = aX modp.
Процесс генерации подписи происходит по следующему алгоритму:
1. Вычисляется хэш-функция подписываемого сообщения m: h = H(m) (по ГОСТ Р 34.11-94).
2. Из диапазона [1; q] случайным образом выбирается значение К.
3. Вычисляется выражение:
r = (aК modp), r1 = r modq,
если r1 = 0, следует вернуться к п.2 и выработать другое значение К.
4. Вычисляется выражение:
S = (Х*r1 + К*h(m)) modp, S1 = S modq,
если S1 = 0, то вернуться к п.2.
5. Полученные значения r1 и S1 являются подписью сообщения m и передаются вместе с ним по каналам связи.
Проверка ЭЦП происходит по следующей схеме:
1. Проверяется выполнение условий 0<r<q, 0<S<q, и если хотя бы одно из условий нарушено, подпись отвергается.
2. Вычисляется хэш-функция проверяемого сообщения m: h = H(m) (по ГОСТ Р 34.11-94).
3. Вычисляются значения:
V = h(m)q-2 modp;
Z1 = S1 * V modp; Z2 = (q-Z1)*V modp;
U = ((aZ1 * yZ2) modp)) modq
4. Проверяется равенство: U = r1. Если оно выполняется, то подпись принимается.
Государственный стандарт РФ "Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи" (ГОСТ Р 34.10-2001) содержит описание процессов формирования и проверки ЭЦП, реализуемой с использованием операций группы точек эллиптической кривой, определенной над конечным простым полем.
Этот ГОСТ разработан вместо ГОСТ Р 34.10-94 и обеспечивает повышенную стойкость ЭЦП к несанкционированным изменениям. Стойкость ЭЦП основывается на сложности вычисления дискретного логарифма в группе точек эллиптической кривой, а также на стойкости используемой хэш-функции по ГОСТ Р 34.11-2001.
Стандарт рекомендуется к использованию в новых системах обработки информации, а также при модернизации действующих систем.