Шифр Эль Гамаля
Шифровальщики регулярно производили поиски наиболее эффективных систем
открытого кодирования, и в 1985 году Эль Гамаль изобрел такую
схему на основе возведения в степень по модулю большого простого
числа. Для этого берется большое простое число Р. Сообщения
представляются в виде целых числами S из промежутка (1, Р). Оригинальный
способ трансляции сообщения S выглядит в исполнении Шамира, одного
из создателей RSA, таким образом:
- Адресант А и респондент b знают только Р.
A берет случайное число Х из промежутка
(1,Р) и B тоже берет случайное число Y из
такого же промежутка.
- A кодирует сообщение S1=S**X MOD Р и высылает B.
- B кодирует его своим ключом S2=S1**Y MOD Р и пересылает S2 к A.
- A снимает свой шифр S3=S2**(-X) MOD Р и передает S3 к B.
- Респондент В дешифрует сообщение:
S=S3**(-Y) MOD Р.
Подобный протокол возможно применить, к примеру, для таких интересных целей, как игра в азартные карточные игры по телефону.
Крупье кодирует карты своим ключом и транчлирует их игроку. Игрок
выбирает карту наугад, кодирует карты своим ключом и передает их крупье. Крупье снимает с выбранной карты свой шифр и пересылает ее игроку. Убрав с этой карты свой шифр игрок выясняет ее номинал и делает решение: пасовать, вытягивать еще или вскрываться.
После, хотя колода и находится у крупье, он не в состоянии ее раскрыть, поскольку карты закодированы ключом игрока.
Крупье берет свою карту точно так же как и игрок.
|