Методы и средства защиты компьютерной информации. Хамидуллин Р.Р - 117 стр.

UptoLike

qпростое числомножитель p - 1, длиной от 254 до 256 битов;
aлюбое число, меньшее p – 1, для которого a
q
mod p = 1;
K
c
число, меньше q;
K
o
= a
K
c
mod p.
Этот алгоритм использует также однонаправленную хэш-
функцию H(x). Стандарт ГОСТ З 34.11-94 определяет хэш-
функцию, основанную на симметричном алгоритме ГОСТ 28147-
89.
Первые три параметра p, q, a открыты и могут совместно
использоваться всеми пользователями сети. Число K
c
является
секретным ключом, число K
o
открытым ключом.
Чтобы подписать сообщение m, а потом проверить подпись,
необходимо предпринять следующие шаги:
- отправитель генерирует случайное число k, причём k < q и
вычисляет значения
r = (a
k
mod p) mod q,
s = (K
c
r + k (H(m))) mod q.
Если H(m) mod q = 0, то его принимают равным 1. Если r = 0, то
выбирают другое значение k и начинают снова. Подписью служат
два числа r mod 2
256
и s mod 2
256
.
Затем получатель проверяет полученную подпись,
вычисляя
v = H (m)
q-2
mod q,
Z
1
= (s v) mod q,
Z
2
= (( qr) v) mod q,
U = (( a
Z
1
K
o
Z
2
) mod p) mod q.
Если u = r, то подпись считается подлинной.
Этот алгоритм отличается от DSA уравнением для подсчёта s, в
DSA значение s = (K
c
r + k
-1
(H (m))) mod q, что дает другое
уравнение проверки.
119