Асимметричные криптосистемы


5. Схема шифрования Эль Гамаля

Схема Эль Гамаля, предложенная в 1985 г., может быть использована как для шифрования, так и для цифровых подписей. Безопасность схемы Эль Гамаля обусловлена сложностью вычисления дискретных логарифмов в конечном поле.

Для того чтобы генерировать пару ключей (открытый ключ - секретный ключ), сначала выбирают некоторое большое простое число Р и большое целое число G, причем G < Р. Числа Р и G могут быть распространены среди группы пользователей.

Затем выбирают случайное целое число X, причем Х<Р. Число Х является секретным ключом и должно храниться в секрете.

Далее вычисляют Y = GX mod P. Число Y является открытым ключом.

Для того чтобы зашифровать сообщение М, выбирают случайное целое число К, 1<К<Р -1, такое, что числа К и (Р-1) являются взаимно простыми.

Затем вычисляют числа

a=GKmodP,

b = YK М mod P.

Пара чисел (а,Ь) является шифртекстом. Заметим, что длина шифртекста вдвое больше длины исходного открытого текста М.

Для того чтобы расшифровать шифртекст (а,b), вычисляют

М = b/aXmod Р. (*)

Поскольку

b/aXєYKM/aX єGKXM/GKX єM(mod P),

то соотношение (*) справедливо.

Пример. Выберем Р = 11, G = 2, секретный ключ X = 8. Вычисляем

Y = GXmodP = 28 mod 11 =256 mod 11=3.

Итак, открытый ключ Y = 3.

Пусть сообщение М = 5. Выберем некоторое случайное число К = 9. Убедимся, что НОД (К,Р-1)=1. Действительно, НОД (9,10)=1. Вычисляем пару чисел а и Ь:

a = GXmodP = 29 mod 11 =512 mod 11=6.

b = YXMmodP = 39 mod 11 =19683 *5 mod 11=9.

Получим шифртекст (а, b) = (6, 9).

Выполним расшифрование этого шифртекста. Вычисляем сообщение М, используя секретный ключ X:

M=b/aXmodP=9/б8mod11.

Выражение М = 9/б8mod11 можно представить в виде

68*М є 9 mod 11

или

1679616 * M є 9 mod 11.

Решая данное сравнение, находим М = 5.

В реальных схемах шифрования необходимо использовать в качестве модуля Р большое целое простое число, имеющее в двоичном представлении длину 512... 1024 бит.

При программной реализации схемы Эль Гамаля скорость ее работы (на SPARC-II) в режимах шифрования и рас-шифрования при 160-битовом показателе степени для различных длин модуля Р определяется значениями, приведенными в табл.2.

Таблица 2 Скорости работы схемы Эль Гамаля

Режим работы

Длина модуля, бит

 

512

768

1024

Шифрование

0,33с

0,80с

1,09с

Расшифрование

0,24с

0,58с

0,77с


[Предыдущий раздел][Содержание][Следующий раздел]

Hosted by uCoz