Global Informatics
Покажем теперь, как A передает сообщение m абоненту В. Будем предполагать, как и при описании шифра Шамира, что сообщение представлено в виде числа m < р.
Шаг 1. A формирует случайное число к, 1
к
р-2, вычисляет числа
r=gk mod p, (3.2)=m
dBk mod p, (3.3)
и передает пару чисел (r, е) абоненту В.
Шаг 2. В, получив (r,е), вычисляет
m'=е
rp-1-cb mod р (3.4)
Утверждение (свойства шифра Эль-Гамаля):
) Абонент B получил сообщение, т.е. m'=m;
) противник, зная р, g, dB, r и е, не может вычислить m.
Передадим сообщение m = 7 от A к B. Возьмем р = 61, g = 11. Пусть абонент B выбрал для себя секретное число сB = 47 и вычислил по (3.1) dB= 50.
Абонент A выбирает случайно число k, например k = 23, и вычисляет по (3.2), (3.3):
r = 1123 mod 61 = 50,
е = 7
5023 mod 61 = 16.
Теперь A посылает к B зашифрованное сообщение в виде пары чисел. B вычисляет по (3.4):
' = 16
5061-1-47 mod 61 = 7.
Мы видим, что B смог расшифровать переданное сообщение.
Ясно, что по аналогичной схеме могут передавать сообщения все абоненты в сети. Заметим, что любой абонент, знающий открытый ключ абонента B, может посылать ему сообщения, зашифрованные с помощью открытого ключа dB. Но только абонент B, и никто другой, может расшифровать эти сообщения, используя известный только ему секретный ключ сB. Отметим также, что объем шифра в два раза превышает объем сообщения, но требуется только одна передача данных (при условии, что таблица с открытыми ключами заранее известна всем абонентам).
Передадим сообщение m=9 от B к C. (р = 61, g = 11. Пусть абонент C выбрал для себя секретное число СC = 51 и вычислил по (3.1) dC = 50.
Абонент B выбирает случайно число k, например k = 6, и вычисляет по (3.2), (3.3):
r = 116 mod 61 = 60
е = 9
506 mod 61 = 52.
Теперь B посылает к C зашифрованное сообщение в виде пары чисел. C вычисляет по (3.4):
' = 52
6061-1-51 mod 61 = 9
Мы видим, что C смог расшифровать переданное сообщение.
Передадим сообщение = 11 от C к D. (р = 61, g = 11).
Пусть абонент D выбрал для себя секретное число сD = 29 и вычислил по (3.1) dD=11.
Абонент D выбирает случайно число k, например k = 5, и вычисляет по (3.2), (3.3):
r = 115 mod 61=11,
е = 11
115 mod 61 = 60.
Теперь C посылает к D зашифрованное сообщение в виде пары чисел. D вычисляет по (3.4):
' = 60
1161-1-29 mod 61 = 11.
Мы видим, что D смог расшифровать переданное сообщение.
Передадим сообщение m= 13 от D к E. (р = 61, g = 11). Пусть абонент E выбрал для себя секретное число сE = 11 и вычислил по (3.1) dE=50.
Абонент D выбирает случайно число k, например k = 3, и вычисляет по (3.2), (3.3):
r = 113 mod 61=50,
е = 13
503 mod 61 = 21.
Теперь D посылает к E зашифрованное сообщение в виде пары чисел. E вычисляет по (3.4):
' = 21
5061-1-11 mod 61 = 13.
Мы видим, что E смог расшифровать переданное сообщение. Передадим сообщение m= 3 от E к A. (р = 61, g = 11). Пусть абонент A выбрал для себя секретное число сA = 43 и вычислил по (3.1) dA=50.
Абонент L выбирает случайно число k, например k = 4, и вычисляет по (3.2), (3.3):
r = 114 mod 61=1,
е = 3
504 mod 61 = 3.
Статья в тему
Технические характеристики современных мультиметров
Понятие
"мультиметр" более точно отражает назначение этого
многофункционального прибора. Число имеющихся разновидностей настолько велико,
что каждый инженер может найти прибор, в точности отвечающий его специфическим
требованиям как по виду и диапазону измеряемых величин, т ...