Дискретная математика. Математические вопросы криптографии. Ерош И.Л. - 41 стр.

UptoLike

Составители: 

41
4.3. Проверка подлинности авторства
передаваемых документов
В некоторых случаях, сделка, совершенная по сети, должна быть
юридически признаваемой, чтобы ни один из партнеров не мог отка-
заться от авторства переданного сообщения. Для этого существует спе-
циальный прием, называемый “цифровой подписью”. В принципе, про-
токол, рассмотренный в предыдущем разделе, также позволяет банки-
ру проверить авторство присланного сообщения и может рассматри-
ваться как процедура “цифровой подписи”. Известно несколько разно-
видностей цифровых подписей. Рассмотрим протокол, предложенный
Шнором и называемый протоколом аутентификации (доказательство
того, что автор сообщения владеет секретным ключом).
Пусть p и q – простые числа, причем q делит p – 1. Например, p = 23,
q = 11, или p = 59, q = 29. Пусть выбрано g такое, что g
q
1 mod p. Для
первого примера g = 2, так как 2
11
1 mod 23, для второго примера g = 4,
так как 4
29
1 mod 59.
Обычно протоколы описываются, как обмен информацией между
двумя абонентами, например, Алисой и Бобом. Алиса выбирает неко-
торое случайное число x из диапазона чисел: {0, 1, 2, …q–1} и вычисля-
ет ключ y = g
–x
mod p, который открыто публикует.
Далее Алиса выбирает случайное число k из множества {0, 1, 2, …q–1},
вычисляет r = g
k
mod p и r отправляет к Бобу.
Боб выбирает некоторый случайный запрос e из множества
{0, 1, 2, …2
t
–1},
где t – некоторое целое и посылает e к Алисе.
Алиса вычисляет s = k + xe mod q и посылает s к Бобу на проверку.
Боб проверяет соотношение: r = g
s
y
e
mod p и, если оно выполняется,
принимает доказательство Алисы, что она владеет секретным ключом,
в противном случае доказательство отвергается.
Пример.
Пусть p = 59, q = 29, тогда можно взять g = 4. Случайное число x,
выбираемое Алисой, x = 9, тогда y = 4
–9
17 mod 59. Число 17 является
открытым ключом Алисы.
Далее Алиса выбирает k например, k = 12, вычисляет r = 4
12
35
mod 59 и число r = 35 посылается к Бобу. Пусть случайный запрос Боба
e = 10, который он посылает к Алисе. Алиса вычисляет: s = 12 + 910
mod 29 15 mod 29. Число s = 15 посылается к Бобу.