Шифрование по алгоритму Шамира

схема обмена ключами в системе Шамира

Рисунок 2 - схема обмена ключами в системе Шамира

Зашифровать сообщение по алгоритму Шамира, взяв значение сообщения m и значение p по варианту.

mA = 22, p = 53

Пусть А хочет передать В сообщение mA = 22. А выбирает p = 53, cA = 11 и вычисляет dA = 19. Аналогично, В выбирает параметры сB = 17 и dB= 49.

Секретные числа cA,dAB,dB должны быть выбраны таким образом, чтобы выполнялось равенство

cA*dAmod (p - 1) = 1

cB*dBmod (p - 1) = 1

cAB выбираем так, чтобы они были взаимно простые с (р - 1), а dA,dBвычисляем по формуле.

Проверим выбранные нами cA,dAB,dB

11*19mod (53-1) = 1

17*49mod (53-1 )= 1

Переходим к протоколу Шамира

Шаг 1. X1 = 2211mod53 = 26

Шаг 2. X2 = 2617mod53 = 35

Шаг 3. X3 = 3519mod53 = 14

Шаг 4. X4 = 1449mod53 = 22

2. Пусть B хочет передать сообщение mB = 24. B выбирает p = 53, сB = 17 и вычисляет dB= 49. Аналогично, C выбирает параметры сC = 23 и dC=43.

Секретные числа cB,dBC,dC должны быть выбраны таким образом, чтобы выполнялось равенство

cB*dB mod (p - 1) = 1

cC*dCmod (p - 1) = 1

cBC выбираем так, чтобы они были взаимно простые с (р - 1), а dB,dCвычисляем по формуле.

Проверим выбранные нами сB,dBC,dC

17*49 mod (53-1) = 1

23*43mod(53-1) = 1

Переходим к протоколу Шамира

Шаг 1. X1 = 2417mod53 = 49

Шаг 2. X2 = 4923mod53 = 24

Шаг 3. X3 = 2449mod53 = 47

Шаг 4. X4 = 4743mod53 = 24

3. Пусть C хочет передать сообщение mC = 26. C выбирает p = 53, сC = 23 и вычисляет dC= 43. Аналогично, A выбирает параметры сA = 11 и dA=19.

Переходим к протоколу Шамира

Шаг 1. X1 = 2623mod53 = 8

Шаг 2. X2 = 811mod53 = 31

Шаг 3. X3 = 3143mod53 = 14

Шаг 4. X4 = 1419mod53 = 26

Шифрование по методу Эль-Гамаля

схема обмена ключами в системе Эль-Гамаля

Рисунок 3 - схема обмена ключами в системе Эль-Гамаля

По варианту выбрать числа p и g и провести шифрование по методу Эль-Гамаля для 5 абонентов.

p = 173, g = 2, m1=3, m2=15, m3=11, m4=15, m5=13.

Каждый абонент группы выбирает свое секретное число ci, 1<ci<p-1 и вычисляет соответствующее ему открытое число di

di= g ci mod p

cA=47, dA= 2 47 mod 73 = 4

cB=51, dB = 2 51 mod 73 =64

cC=29, dC= 2 29 mod 73 = 4

cD=11, dD= 2 11 mod 73 = 4

cE=13, dE= 2 13 mod 73 = 16

Абонент

Секретный ключ

Открытый ключ

A=3

cA=47

dA= 4

B=15

cB=51

dB = 64

C=11

cC=29

dC= 4

D=15

cD=11

dD= 4

E=13

cE=13

dE= 16

1) Сообщение m1 = 3.

Шаг 1. А формирует случайное число к, 1? к ? р-2, вычисляет числа

k = 3

r = gkmod p = 23 mod 73 = 8

e = m*dAk mod p = 3*43 mod 73 = 46

и передает пару чисел (r,e) абоненту В.

Шаг 2. В, получив (r,e) вычисляет

m' = e*rp-1-cA mod p = 46*873-1-47 mod 73 = 3.

2) Сообщение m2 = 15.

Шаг 1. Сообщение m2 = 15. B формирует случайное число к, 1? к ? р-2, вычисляет числа

k = 3

r = gkmod p = 23 mod 73 = 8

e = m*dbk mod p = 15*643 mod 73 = 15

и передает пару чисел (r,e) абоненту C.

Шаг 2.C, получив (r,e) вычисляет

m' = e*rp-1-cb mod p = 15*873-1-51 mod 73 = 15

3) Сообщение m3 = 11.

Шаг 1. Сообщение m3 = 11. C формирует случайное число к, 1? к ? р-2, вычисляет числа

k = 3

r = gkmod p = 23 mod 73 = 8

e = m*dck mod p = 11*43 mod 73 = 47

и передает пару чисел (r,e) абоненту D.

Шаг 2.D, получив (r,e) вычисляет

m' = e*rp-1-cc mod p = 47*873-1-29 mod 73 = 11

4) Сообщение m4 = 15.

Шаг 1. Сообщение m4 = 15. D формирует случайное число к, 1? к ? р-2, вычисляет числа

r = gkmod p = 23 mod 73 = 8

e = m*ddk mod p = 15*43 mod 73 = 11

и передает пару чисел (r,e) абоненту E.

Шаг 2.E, получив (r,e) вычисляет

m' = e*rp-1-cd mod p = 11*873-1-11 mod 73 = 15

5) Сообщение m5 = 13.

Шаг 1. Сообщение m5 = 13. E формирует случайное число к, 1? к ? р-2, вычисляет числа

r = gkmod p = 23 mod 73 = 8

e = m*dek mod p = 13*163 mod 73 = 31

и передает пару чисел (r,e) абоненту A.

Шаг 2.A, получив (r,e) вычисляет

m' = e*rp-1-ce mod p = 31*873-1-13 mod 73 = 13

 
< Пред   СОДЕРЖАНИЕ   Скачать   След >