Отечественный стандарт цифровой подписи

Отечественный стандарт цифровой подписи обозначается как ГОСТ P 34.10-94 [40]. Алгоритм цифровой подписи, определяемый этим стандартом, концептуально близок к алгоритму DSA. В нем используются следующие параметры:

p – большое простое число длиной от 509 до 512 бит либо от 1020 до 1024 бит;

q – простой сомножитель числа (p –1), имеющий длину 254…256 бит.

a – любое число, меньшее (p –1), причем такое, что aq mod p=1;

x – некоторое число, меньшее q;

y = aх mod p.

Кроме того, этот алгоритм использует однонаправленную хэш-функцию H(x). Стандарт ГОСТ Р 34.11-94 определяет хэш-функцию, основанную на использовании стандартного симметричного алгоритма ГОСТ 28147-89.

Первые три параметра p, q и a являются открытыми и могут быть общими для всех пользователей сети. Число x является секретным ключом. Число y является открытым ключом.

Чтобы подписать некоторое сообщение m, а затем проверить подпись, выполняются следующие шаги.

1. Пользователь A генерирует случайное число k, причем k < q.

2. Пользователь А вычисляет значения

r = (ak mod p) mod q,

s = (x * r + k (H(m))) mod q.

Если H(m) mod q=0, то значение H(m) mod q принимают равным единице. Если r=0, то выбирают другое значение k и начина-ют снова.

Цифровая подпись представляет собой два числа:

r mod 2256 и s mod 2256.

Пользователь А отправляет эти числа пользователю В.

3. Пользователь В проверяет полученную подпись,

вычисляя

v = H(m)q–2 mod q,

z1 = (s * v) mod q,

z2 = ((q – r) * v) mod q,

u = ( mod p) mod q.

Если u = r, то подпись считается верной.

Различие между этим алгоритмом и алгоритмом DSA заключается в том, что в DSA

s = (k–1 (x * r + (H(m)))) mod q,

что приводит к другому уравнению верификации.

Следует также отметить, что в отечественном стандарте ЭЦП параметр q имеет длину 256 бит. Западных криптографов вполне устраивает q длиной примерно 160 бит. Различие в значениях параметра q является отражением стремления разработчиков отечественного стандарта к получению более безопасной подписи.

Этот стандарт вступил в действие с начала 1995 г.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: