Билет 17
1. Евклидтің ең үлкен ортақ бөлгішті табу алгоритмі.
2. Хэш функциясын қалыптастырудың жалпыланған схемасын құрыңыз.
Хэштеу функциясы Нi = ЕMi (Нi-1) Нi-1
Жауаптары
Сұрақ
Евклид алгоритмі-екі бүтін санның ең үлкен ортақ бөлгішін (немесе екі сегменттің жалпы өлшемін) табудың тиімді алгоритмі. Алгоритм грек математигі Евклидтің (б.з. д. III ғасыр) есімімен аталады, ол оны алғаш рет VIIжәне X"бастау"кітаптарында сипаттаған. Бұл қазіргі уақытта қолданылатын ең көне сандық алгоритмдердің бірі.
Қарапайым жағдайда Евклид алгоритмі оң бүтін сандар жұбына қолданылады және кіші саннан және үлкен мен кіші Сан арасындағы айырмашылықтан тұратын жаңа жұп құрайды. Процесс сандар тең болғанша қайталанады. Табылған Сан бастапқы жұптың ең үлкен ортақ бөлгіші болып табылады. Евклид тек натурал сандар мен геометриялық шамалар (ұзындықтар, аудандар, көлемдер) үшін алгоритм ұсынды. Алайда, XIX ғасырда ол математикалық объектілердің басқа түрлеріне, соның ішінде Гаусс бүтін сандарына және бір айнымалыдан көпмүшелерге жалпыланды. Бұл қазіргі жалпы алгебрада Евклид сақинасы сияқты ұғымның пайда болуына әкелді. Кейінірек Евклид алгоритмі түйіндер мен көп өлшемді көпмүшелер сияқты басқа математикалық құрылымдарға жалпыланды.
Бұл алгоритм үшін көптеген теориялық және практикалық қосымшалар бар. Атап айтқанда, бұл электрондық коммерцияда кең таралған RSA ашық кілтті криптографиялық алгоритмнің негізі болып табылады. Сондай-ақ, алгоритм сызықтық диофанттық теңдеулерді шешуде, үздіксіз бөлшектерді құруда, шабуыл әдісінде қолданылады. Евклид алгоритмі қазіргі сандар теориясындағы теоремаларды дәлелдеудің негізгі құралы болып табылады, мысалы Лагранж теоремасы төрт квадраттың қосындысы туралыжәне арифметиканың негізгі теоремасы.
2 сұрақ
Билет 18
Кілттерді басқару.
Кері сандарды есептеу әдістері.
Жауаптары
сұрақ
ИС-ға сәйкес келетін криптографиялық жүйе, негізгі мәселе – кілттермен басқару. Криптожүйенің қаншалықты сенімді және қиын болуы, ол кілттерді қолдануға байланысты. Егер конфиденциалды ақпаратты ауыстыруда екі қолданушы арасында кілттер алмасу тривиален қаматамасыз етілсе, онда ИС-да, қолданушылар саны он шақты және жүздеген кілттермен басқару – маңызды мәселе болып табылады. Кілттік ақпаратта барлық ИС кілттерінің әсер ететін жиындары түсіндіріледі. Егер ақпаратпен басқару кілті жеткілікті сенімді қамтамасыз етпесе, бұзушылар ақпаратқа шектеусіз қатынас алады. Кілттермен басқару – ақпараттық процес, өзіне үш элемент қосады:
Кілттердің генерациясы;
Кілттердің жинақталуы;
Кілттердің үлестірілуі;
Қарастырайық, олардың ИС-дағы кілттік ақпаратты қаншалықты қамтамасыз ететіндігін.
сұрақ
Кері модуль a бүтін саны x бүтін саны болып табылады, осылайша ax туындысы 1 модуль m [1]-ге сәйкес келеді. Стандартты модульдік арифметикалық белгілерде бұл эквиваленттілік былай жазылады:
Бұл m ax − 1 мәнін (қалдықсыз) бөлетінін айтудың стенографиялық жолы, немесе басқаша айтқанда, ax m бүтін санына бөлген кездегі қалдық 1 болады. Егер а-ның кері модулі m болса, онда осы модуль үшін қалдық класын құрайтын осы эквиваленттік шешімдердің шексіз саны бар. Оның үстіне, а-ға эквивалентті кез келген бүтін сан (яғни, а эквиваленттік класынан) х эквиваленттік класының кез келген элементіне кері ретінде ие болады. Белгілеуді қолдану бар эквиваленттік сынып үшін
w, жоғарыдағы мәлімдемені келесідей жазуға болады: кері элемент модуль бойынша эквиваленттілік класы
эквиваленттік класс
осылайша символ эквиваленттік кластарының көбейтіндісін білдіреді. Егер сандарды эквиваленттік кластармен ауыстырып, екілік амалдарды дұрыс анықтайтын болсақ, мұндай белгілеу рационал немесе нақты сандар жиынындағы кері санның әдеттегі ұғымының аналогын білдіреді.
Бұл операцияның негізгі қолданылуы форманың сызықтық эквиваленттігін шешу болып табылады:
Модульдік кері табудың криптография саласында ашық кілтті криптожүйе және RSA алгоритмі сияқты практикалық қосымшалары бар [3][4][5]. Бұл қолданбаларды жүзеге асырудың артықшылығы - модульдік кері мәндерді есептеу үшін қолданылатын өте жылдам алгоритм (кеңейтілген Евклид алгоритмі) бар.
Достарыңызбен бөлісу: |