13.2 Электронды цифрлық қолтаңба RSA алгоритмі
Бұл алгоритмде біріншіден кілттер жұбын генерациялау керек: ашық - e және жасырын – d. Ашық кілт цифрлық қолтаңбаларды тексеру үшін хабарлармен алмасатын партнерлерге беріледі. Жасырын кілт хабарларға қолтаңбаны қою үшін автормен сақталады.
Мысалы, жіберуші М хабарды жіберу алдында оған қолтаңба қойғысы келеді. Әуелі хабар (ақпарат блогы, файл, кесте) хэш-функция көмегімен бүтін m=h(M) санға қысылады. Содан кейін m хэш-мәнімен жасырын d кілтті қолданып, М электронды құжатқа қойылатын S цифрлық қолтаңба есептеледі:
.
(M, S) жұбы алушы партнерге цифрлық S қолтаңба қойылған М электронды құжат ретінде жіберіледі; және де S қолтаңбасы жасырын d кілтінің иесімен жасалды. (M, S) жұп қабылданғаннан кейін алушы М хабардың хэш-мәнін әртүрлі екі жолмен есептейді. Біріншіден ол е ашық кілт көмегімен S қолтанбаға криптографиялық түрлендіруді қолданып, хэш-мәнін қалпына келтіреді:
Сонымен бірге алушы қабылдаған М хабардың хэштеу нәтижесін m=h(M) функциясы көмегімен табады. Егер де есептелген мәндердің теңдігі орындалса, яғни
алушы (M, S) жұпты ақиқат деп есептейді.
Тек қана жасырын d кілттің иесі М құжаты бойынша S цифрлық қолтаңбаны құрастыра алатыны дәлелденген, ал ашық е кілт бойынша жасырын d санын анықтау М модульді көбейткіштерге жіктеуден жеңіл емес.
Алгоритмнің кемшіліктері:
- криптоберіктікті қамтамасыздандыру үшін есептеулерде n, p, q бүтін сандардың әрқайсысының мәндері жуықтап 2512 немесе 10154 кем болмауы керек; бұл жағдай басқа алгоритмдерінің шығындарына қарағанда есептеу шығындарды 20-30% өсіреді;
- алгоритм мультипликативті шабуылға осалдау. Басқа сөзбен айтқанда егер де құжаттың хэштеу нәтижесін алдында қолтаңба қойылған құжаттардың хэштеу нәтижелерінің көбейтіндісі ретінде есептеуге болса, жасырын d кілтін білмей де құжаттарға қолтаңбаны құрастыруға болады.
Достарыңызбен бөлісу: |