Эль-Гамаль алгоритмі туралы қазақша реферат
Бұл қолтаңбаны реттеу үшін р жай саны және бинарлы тізбекті жай жолды Zp элементтеріне айналдыратын хэш функциясы қажет.
Эль-Гамаль алгоритмінің протоколын көрсетейік.
1) Кілтті генерациялау;
— Кездейсоқ үлкен р жай санын генерациялаймыз және Zp мультипликативті тобынан қандай да бір туынды g элементін аламыз;
— Кездейсоқ а (1<a<p-1) санын таңдаймыз. а саны ұзақ уақытты кілт рөлін атқарады;
— табамыз;
— Ашық кілт болып – p,g,y табылады, ал құпия кілт – а.
2) Қолтаңба алгоритмі.
Қолтаңбамен қамтамасыз етуге қажет m – туынды ұзындықты бинарлы тізбек plaintext түрінде берілген болсын.
— Кез келген ең үлкен ортақ бөлгіші 1-ге тең болатын к (0<k<p-1) санын таңдаймыз. к саны маска рөлін атқарады және бір-ақ рет қолданылады. Жаңа қолтаңба үшін жаңа к саны таңдалады;
— к санына кері 1 саны есептелінеді. . 1 саны шифрді бұзғанда масканы шешуге мүмкіндік береді;
— формуласынан r саны табылады;
— формуласынан s саны табылады;
— m үшін қол болып r және s жұбы табылады.
3) Қолтаңба тексеру алгоритмі.
— табылады;
— және табылады;
— теңдігі орындалған жағдайда ғана қолтаңба қабылданады.
Бұл қолтаңбаға мысал келтірейік. p = 2357 саны және g = 2 – Zp тобының туынды элементі берілсін. a = 1751, y = 21751 = 1185 (mod p) болсын. Ашық кілт – (2357, 2, 1751).
Жай сан үшін деп алайық. к = 1529 деп таңдаймыз, сонда r = 1490, 1=245, s = 245*(1463-1751*1490) = 1777 (mod 2356) болады. Қолтаңба – r=1490, s=1777 болмақ.
Дұрыстығын тексереміз: = 11851490 14901777 = 1072 (mod 2356); =21463=1072 (mod 2357). Қолтаңба қабылданды.