Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Криптоалгоритмы / Алгоритм Эль Гамаля

.htm
Скачиваний:
48
Добавлен:
28.06.2014
Размер:
5.73 Кб
Скачать

6.4.5 Алгоритм Эль Гамаля @font-face { font-family: Arial Unicode MS; } @font-face { font-family: Tahoma; } H1 { FONT-WEIGHT: bold; FONT-SIZE: 14pt; MARGIN: 10pt 0cm 6pt; FONT-FAMILY: Arial } H2 { FONT-WEIGHT: bold; FONT-SIZE: 12pt; MARGIN: 10pt 0cm 6pt; FONT-FAMILY: Arial } P.MsoNormal { FONT-SIZE: 12pt; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 35.45pt; FONT-FAMILY: arial; TEXT-ALIGN: justify; punctuation-wrap: simple } LI.MsoNormal { FONT-SIZE: 12pt; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 35.45pt; FONT-FAMILY: arial; TEXT-ALIGN: justify; punctuation-wrap: simple } DIV.MsoNormal { FONT-SIZE: 12pt; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 35.45pt; FONT-FAMILY: arial; TEXT-ALIGN: justify; punctuation-wrap: simple } P.MsoNormal1 { FONT-SIZE: 12pt; MARGIN: 0cm; FONT-FAMILY: arial; TEXT-ALIGN: left; punctuation-wrap: simple } LI.MsoNormal1 { FONT-SIZE: 12pt; MARGIN: 0cm; FONT-FAMILY: arial; TEXT-ALIGN: left; punctuation-wrap: simple } P.MsoNormal2 { FONT-SIZE: 12pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: arial; TEXT-ALIGN: justify; punctuation-wrap: simple } LI.MsoNormal2 { FONT-SIZE: 12pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: arial; TEXT-ALIGN: justify; punctuation-wrap: simple } TABLE.MsoTableGrid { FONT-SIZE: 12pt; FONT-FAMILY: arial }

Previous: 6.4.4 Безопасная почта PGP    UP: 6.4 Системы шифрования

    Next: 6.4.6 Алгоритм Диффи-Хелмана

6.4.5 Алгоритм Эль Гамаля

Семенов Ю.А. (ГНЦ ИТЭФ)

Алгоритм Эль-Гамаля может использоваться для формирования электронной подписи или для шифрования данных. Он базируется на трудности вычисления дискретного логарифма. Для генерации пары ключей сначала берется простое число p и два случайных числа g и x, каждое из которых меньше p. Затем вычисляется:

y = gx mod p

Общедоступными ключами являются y, g и p, а секретным ключом является х. Для подписи сообщения M выбирается случайное число k, которое является простым по отношению к p-1. После этого вычисляется a = gk mod p. Далее из уравнения M = (xa + kb) mod (p-1) находим b. Электронной подписью для сообщения M будет служить пара a и b. Случайное число k следует хранить в секрете. Для верификации подписи необходимо проверить равенство:

yaab mod p = gM mod p.

Пара a и b представляют собой зашифрованный текст. Следует заметить, что зашифрованный текст имеет размер в два раза больше исходного. Для дешифрования производится вычисление:

M = b/ax mod p

Previous: 6.4.4 Безопасная почта PGP    UP: 6.4 Системы шифрования

    Next: 6.4.6 Алгоритм Диффи-Хелмана