El-Gamal shifrlash algoritmi


Download 36.56 Kb.
Sana20.12.2022
Hajmi36.56 Kb.
#1036240
Bog'liq
El-Gamal shifrlash algoritm


5-amalish ish
Mavzu: El-Gamal ochiq kalitli shifrlash algoritmi

  1. El-Gamal shifrlash algoritmi

  2. El-Gamal shifrlash algorimi xavfsizligi va unga boʼladigan xujumlar

El-Gamal shifrlash algoritmi. Ushbu ochiq kalitli shifrlash algoritmi diskert logarifmlash muammosiga asoslangan boʼlib, kalitlar uzunligi teng boʼlgan holda bardoshligi RSA algoritmi bardoshligiga teng.
Калит генератори. El-Gamal algoritmida kalit generatori quyidagi bosqichlardan iborat:
p – katta tub son tanlanadi;

  • g
    shartni qanoatlantiruvchi g butun son tanlanadi;

  • maxfiy kalit sifatida a
    shartni qanoatlantiruvchi butun son tanlanadi;

  • ochiq kalit sifatida  hisoblanadi;

  • ochiq kalitlar jufti (y,g,p) ma’lumotni shifrlovchi tomonlarga yoki ixtiyorov odamlarga tarqatiladi.

Ochiq matnni shifrlash. Shifrlanishi kerak boʼlgan М ochiq matn va ochiq kalitlar juftiga egi foydalanuvchi quyidagi ketma – ketlikdagi amallarni bajaradi:
р sonidan kichik boʼlgan va  shartni bajaruvchi k - sonini tanlab olinadi;

  • k son asosida  hisoblanadi;

  • ochiq matnning har bir belgisi uchun  tenglikni hisoblash orqali shifrmatn olinadi;

  • shifrlash amalga oshirilgach, k son o’chirib tashlanadi va qabul qiluvchiga (r, c) juftlik yuboriladi.

Шифрматнни дешифрлаш. Shifrmatn va maxfiy kalitga ega foydalanuvchi quyidagi ketma – ketliklarni bajarish orqali ochiq matnga ega boʼladi:
qabul qilingan maʼlumotlar asosida  ochiq matn hisoblanadi.
Ushbu algoritm asosida sodda misol quyida keltirilgan:
А tomon oʼzining maxfiy kaliti asosida ochiq kalit juftini hosil qiladi va uni B tomonda yuboradi. Olingan qiymatlar quyidagilar:
g=3; p=31; a=4; =(3^4)mod31=19. Бу ерда (p,g,y) – ochiq kalitlar jufti va a maxfiy kalit.
Shifrlash. Bu bosqich А tomonning ochiq kalitlariga esa B tomondan amalga oshiriladi. Ochiq maʼlumot sifatida M=CDEF (2,3,4,5 – alfavitdani oʼrni) olinib, ЭКУБ( , ) =1 shartni qanoatlantiruvchi k=7 tanlandi. Shundan soʼng quyidagilar hisoblanadi:
 =(3^7)mod31=17;
C1= =2*(19^7)mod31=14;
C2= =3*(19^7)mod31=21;
C3= =4*(19^7)mod31=28;
C4= =5*(19^7)mod31=4;
Shundan soʼng C1,C2,C3,C4 lardan iborat C va  А tomonga yuboriladi.
Deshifrlash. Bu jarayon maxfiy kalitga ega boʼlgan А tomondan amalga oshiriladi va ochiq matn olinadi:
M1=
M2=
M3=
M4=
Bu yerda diskert logarifmlash muammosi sifatida ochiq kalitlar jufti berilganda  tenglamadan a maxfiy kalitni topish mumkin, hozirda ushbu muammoning optimal usuli mavjud emas.

Download 36.56 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling