
- •1 Қазіргі замандағы ақпаратты криптографиялық қорғау әдістеріне талдау жүргізу
- •1.1 Ақпаратты криптографиялық қорғау
- •1.2 Криптоанализ
- •1.3 Криптографияның математикалық негіздері
- •1.3.1 Ақпарат теориясы
- •1.3.2 Күрделілік теориясы
- •1.3.3 Сандар теориясы
- •1.4 Криптографияның негізгі шифрлеу алгоритмдері
- •Симметриялық шифрлеу алгоритмі
- •Ашық кілтті криптография
- •1.5 Кездейсоқ сандардың криптографиялық генераторлары
- •1.6 Компьютерлік желілердегі ақпаратты қорғау
- •1.2 Детерминделген хаос
- •1.2.1 Криптография және хаос
- •1) Динамикалық жүйе. Параметрлерге тәуелді үздіксіз күйдің және үздіксіз уақыттың динамикалық жүйесі дифференциалдық теңдеумен берілуі мүмкін
- •1.2.2 Криптография мен хаостық динамиканың өзара байланысы
- •1.2.4 Толқымалы үтірі бар математика негізіндегі псевдохаос
- •2 Компьютерлік криптографиядағы детерминделген хаос жүйесін басқаруды іске асыру
- •2.1 Лоренцтің сызықсыз дифференциалдық теңдеулер жүйесін теориялық зерттеу
- •2.1.1 Теориялық зерттеудің қорытындысы
- •2.2 Жасап шығарылған жүйені тәжірибелік іске асыру
- •2.2.1 Бағдарламалық ортаны таңдау негіздемесі
- •2.2.2 Итерациялық криптографиялық алгоритмді іске асыру
- •2.2.3 Программаның графикалық интерфейсі
- •2.2.4 Программаның модульдерін сипаттау
- •Сурет 26- Жүрістер тесті
- •2.3.2 Шифрленген бейнекөріністерге талдау жасау
- •3 “Компьютерлік желілердегі ақпаратты хаостық криптографиялық қорғау жүйесі ” программалық қосымшасын құрудың экономикалық негізделуі
- •3.1 Программалық өнімді құруға кететін шығынды анықтау
- •3.2 Ақпаратты криптографиялық қорғау программасын қолданудың экономикалық тиімділігі
- •3.2.1 Программалық қосымшаны енгізуге кететін шығындар
- •3.2.2 Ақпаратты қорғаудың программалық қосымшасын қолданудың тиімділігі
- •4 Еңбекті қорғау
- •4.1 Еңбекті қорғауды ұйымдастыру мәселелері
- •4.2.1 Микроклиматқа қойылатын санитарлық-гигиеналық талаптар
- •4.2.2 Жарықтандыруға қойылатын санитарлық-гигиеналық талаптар
- •4.2.3 Шуға қойылатын санитарлық-гигиеаналық талаптар
- •4.2.4 Зиянды сәулелерден және электромагниттік өрістерден қорғану
- •4.4 Өрт қауіпсіздігі. Электр қауіпсіздігі
1.3.2 Күрделілік теориясы
Алгоритмнің күрделілігі оны орындауға қажет есептеу қуаттарымен анықталады. Алгоритмді есептеу күрделілігі екі параметрмен өлшенеді: Т (уақыт күрделілігі) және S (кеңістіктік күрделілік, не жадыға қойылатын талап). T да, S та әдетте n-ге байланысты функция ретінде беріледі, мұндағы n – кіріс мәліметтердің өлшемі.
Әдетте есептеу күрделілігі “Үлкен О” нотациясы арқылы көрсетіледі, яғни есептеу күрделілігі дәрежесінің шамасымен [2]. Бұл жай ғана көпмүшелікке жіктелген және n өскен сайын шапшаң өсетін күрделілік функциясының мүшесі, төменгі ретті барлық мүшелер ескерілмейді. Мысалға, егер берілген алгоритмнің уақыттық күрделілігі 4n2 + 7n + 12, онда O(n2) түрінде жазылатын есептеу күрделілігі n2-қа тең.
Берілген тәсілмен өлшенетін уақыттық күрделілік оның іске асу жолына тәуелді емес. Әр түрлі инструкцияларды орындаудың дәл уақытын да, биттердің санын да, процессордың жылдамдығын да біліп керек емес. Бұл нотация кіріс мәліметтердің көлемі уақыт пен жадыға қойылатын талаптарға қалай әсер ететінін көрсетеді. Мысалға, егер T=O(n), онда кіріс мәліметтердің екі еселенуі алгоритмді орындау уақытын да екі еселейді. Егер T=O(2n), кіріс мәліметке бір биттің қосылуы алгоритмді орындау уақытын екі есе көбейтеді.
Алгоритмдерді олардың уақыттық және кеңістіктік күрделілігіне байланысты жіктейді. Егер алгоритмнің күрделілігі n-нен тәуелсіз болса, онда оны тұрақты дейді: O(1). Егер алгоритмнің күрделілігі O(n) болса, онда оны сызықты дейді. Алгоритмдер квадратталған, кубталған және т.б. бола алады. Бұл алгоритмдердің барлығы – полиноминалды, олардың күрделілігі – O(nm), мұнда m – тұрақты сан. Егер алгоритмнің күрделілігі O(tf(n)) болса, онда оны экспоненциалды дейді, мұнда t – бірден үлкен тұрақты сан, f(n) – n-ге байланысты қандай да бір полиноминалды функция. Экспоненциалды алгоритмдердің күрделілігі O(cf(n)) болса, онда оны суперполиноминалды дейді, мұндағы с – тұрақты, ал f(n) тұрақты санға қарағанда шапшаң, сызықты функцияға қарағанда баяу өсетін функция.
Шифрлеу алгоритмін тура шабуыл арқылы бұзу мәселесін қарастырайық. Мұндай шабуылдың уақыттық күрделілігі мүмкін болатын кілттер санына пропорционал, ал кілт өз кезегінде оның ұзындығына экспоненциалды тәуелді. Егер n – кілттің ұзындығы, онда тура шабуылмен бұзудың күрделілігі O(2n).
Күрделілік теориясы нақты бір алгоритмнің проблеманы шешу күрделілігімен қоса, проблемалардың өздерін күрделілік бойынша жіктейді. Күрделлілік теориясы проблеманың ең күрделі нұсқауын Тьюринг машинасы деген атпен белгілі теориялық компьютерде шешуге кететін минималды уақыт пен жадыны қарастырады. Тьюринг машинасы оқу-жазу үшін берілген шексіз ленталы жадысы бар шекті автомат түріндегі есептеудің шынайы моделі болып табылады.
Ең төменде орналасқан P классы полиноминалды уақытта шешуге болатын барлық проблемалардан тұрады. NP классы – полиноминалды уақытта тек Тьюрингтің детерминделген машинасында шешуге болатын проблемалардан тұрады (болжам жасай алатын Тьюрингтің қарапайым нұсқасы). Машина не “сәтті болжам” арқылы, не параллельді түрде барлық болжамдарды полиноминалды уақытта қоя отырып және полиноминалды уақытта өзінің болжамдарын тексере келе, проблеманың шешімін қарастырады [2].
NP-нің криптографиядағы маңызы келесіде: көптеген симметриялық және ашық кілтті алгоритмдер детерминделген полиноминалды уақытта бұзып ашылуы мүмкін. Берілген С шифрленген мәтін үшін криптоаналитик жай Х ашық мәтіні мен К кілтін болжайды, және полиноминалды уақытта Х пен К кіріс мәндері үшін шифрлеу алгоритмдерін орындап, нәтижесі С-мен салыстырылады. Бұның үлкен теориялық маңызы бар, себебі ол бұл алгоритмдердің криптоанализ жасау күрделілігінің жоғарға шекарасын анықтайды.
Күрделілік теориясы әр түрлі әдістер мен алгоритмдерді есептеу күрделілігіне талдау жүргізудің методологиясын қамтамасыз етеді. Ол криптографиялық әдістер мен алгоритмдерді салыстырады және олардың қауіпсіздігін анықтайды.