Криптографическая защита информации. Яковлев А.В - 68 стр.

UptoLike

3) Вычисляет k
-1
(mod п).
4) Вычисляет е = SHA(m). Выбор варианта функции хэширования
осуществляется в зависимости от используемого поля.
5) Вычисляет
1
()mod
s
kedr n
=+
. Если s = 0, то перейти к шагу 1.
6) Подписью сообщения т является пара (r, s).
3. Верификация ЭЦП.
Для проверки подписи получатель сообщения выполняет следующие
действия:
1) Проверяет, что r и s лежат на интервале (0, п).
2) Вычисляет е = SHA(m).
3) Вычисляет w = s
-l
mod n.
4) Вычисляет u
1
= ew mod п и w
2
= rw mod n.
5) Вычисляет Х = u
1
G + u
2
Q. Если Х = , то подпись отвергается,
иначе, вычислить v = x
1
mod n, где Х = (х
1
, у
1
).
6) Принять подпись, если и только если v = г.
4.2.3. СТАНДАРТ ЦИФРОВОЙ ПОДПИСИ ГОСТ Р 34.10–94
Российский стандарт ЭЦП разрабатывался позже первоначального ва-
рианта американского, поэтому параметры этого алгоритма выбраны с уче-
том возросших возможностей потенциального противника по вскрытию
криптосистем. В частности, увеличена длина значения хэш-функции, что
снижает вероятность столкновений, и, соответственно, порядок элемента-
генератора, что делает более сложным решение задачи дискретного лога-
рифма для восстановления секретного ключа. При описании алгоритма будут
использоваться следующие обозначения:
В
*
множество всех конечных слов в алфавите В = {0,1};
|A|длина слова А;
V
k
(2) – множество всех двоичных слов длины k;
А||Вконкатенация слов А и В, также обозначается как АВ;
A
k
конкатенация k экземпляров слова А;
<N>kслово длины k, содержащее запись N(mod 2
k
), где N
неотрицательное целое;
побитовое сложение слов по модулю 2;
[+] – сложение по правилу А [+] В = <A + B >
k
(k = |А| = |В|);
тпередаваемое сообщение;
т
1
полученное сообщение;
hхэш-функция, отображающая последовательность т в слово h(m)
V
256
(2) ;
рпростое число, 2
509
<р < 2
512
, либо 2
1020
< р < 2
1024
;
q – простое число, 2
254
< q < 2
256
и q является делителем для (p – 1) ;
ацелое число, 1 < а < р1, при этом a
q
(mod p) = 1;
k – целое число, 0 < k < q;
хсекретный ключ пользователя для формирования подписи, 0 < х <
q;
уоткрытый ключ для проверки подписи у = a
x
(mod p).
Система ЭЦП включает в себя процедуры выработки и проверки под-
писи под данным сообщением.
Цифровая подпись, состоящая из двух целых чисел, вычисляется с по-
мощью определенного набора правил, изложенных в стандарте.
Числа p, q и а, являющиеся параметрами системы, не являются сек-
ретными. Конкретный набор их значений может быть общим для группы
пользователей. Целое число k, которое генерируется в процедуре подписи
сообщения, должно быть секретным и должно быть уничтожено сразу по-
сле выработки подписи. Число k снимается с физического датчика случай-
ных чисел или вырабатывается псевдослучайным методом с использовани-
ем секретных параметров.
Процедура выработки подписи включает в себя следующие шаги:
1. Вычислить h(m) – значение хэш-функции h от сообщения т. Если
h(m)(mod q) = 0, то присвоить h(m) значение 0
255
1.
2. Выработать целое число k, 0 < k < q.
3. Вычислить два значения: r' = d
k
(mod p) и r = r' (mod q). Если r = 0,
то перейти к шагу 2 и выработать другое значение числа k.
4. С использованием секретного ключа х пользователя вычислить