Лекции по Теоретическим основам цифровой связи   

14. Шифрование и дешифрование

14.5.5.1. Использование схемы Меркла-Хэллмана

Предположим, пользователь А желает создать общедоступную и конфиденциальную функции шифрования. Сначала он рассматривает быстровозрастающий вектор а' = (171, 197, 459, 1191, 2410, 4517).

= 8945

Затем он выбирает простое число М, большее 8945, случайное число W, такое, что 1W< М, и вычисляет W-1, при котором WW-1 = 1 по модулю М.

После этого он образует вектор, который оставляет «лазейку» в рюкзаке.

аi = аi2251 по модулю 9109

а = 2343, 6215, 3892, 2895, 5055,2123

Пользователь А делает общедоступным вектор а, который, очевидно, не является быстровозрастающим. Предположим, что пользователь В желает послать сообщение пользователю А.

Если х = 010110 — сообщение, которое нужно передать, то пользователь В создает следующее число.                                                                                                      

S = ах = 14 165 и передает его пользователю А

Пользователь А получает S и превращает его в S'.

S'= а'х = W-1S  по модулю М= 138814 165 по модулю 9109 = 3798

Используя S' = 3798 и быстровозрастающий вектор а', пользователь А легко находит х.

Схема Меркла-Хэллмана сейчас считается взломанной [16], поэтому для реализации криптосистем с открытыми ключами используется алгоритм RSA (равно как и другие рассмотренные позднее).



*****
© Банк лекций Siblec.ru
Формальные, технические, естественные, общественные, гуманитарные, и другие науки.