ВУЗ:
Составители:
42
Каждая подпись или шифрование EIGamal требует нового значения k,
и это значение должно быть выбрано случайным образом. Если когда-нибудь
злоумышленник раскроет k, используемое отправителем, он сможет раскрыть
закрытый ключ отправителя х. Если злоумышленник когда-нибудь сможет
получить два сообщения, подписанные или зашифрованные с помощью
одного и того же k, то он сможет раскрыть х, даже не зная значение k.
Рис.43 Подписи EIGamal [17]
Например, выберем p = 11 и g = 2, а закрытый ключ х = 8. Вычислим
у = g
x
modp = 2
8
mod 11=3
Открытым ключом являются у = 3, g = 2 и p = 11. Чтобы подписать М=
5, сначала выберем случайное число k=9. Убеждаемся, что НОД(9, 10)= 1.
Вычисляем
а = g
k
mod p = 2
9
mod 11=6
и с помощью расширенного алгоритма Эвклида находим b:
М= (ха + kb) mod (p - 1)
5 = (8*6 + 9*b) mod 10
Решение: b = 3, а подпись представляет собой пару: а = 6 и b = 3.
Для проверки подписи убедимся, что
y
a
a
b
mod p = g
M
mod p
3
6
6
3
mod 11=2
5
mod 11
Томас Бет (Thomas Beth) изобрел вариант схемы EIGamal, подходящий
для доказательства идентичности. Существуют варианты для проверки под-
линности пароля и для обмена ключами. И еще тысячи и тысячи других.
DSA
DSA представляет собой вариант алгоритма подписи ElGamal.
Алгоритм использует следующие параметры:
р = простое число длиной L битов, где L принимает значение, кратное
Страницы
- « первая
- ‹ предыдущая
- …
- 221
- 222
- 223
- 224
- 225
- …
- следующая ›
- последняя »
