Дәріс 3. Ақпаратты қорғау әдістері және құрал-жабдықтары. Ақпаратты қорғау жүйесінің комплексті бағалануы. Бағдарламалық қамтыманы тестілеу
Дәріс мақсаты: гаммалау әдiсi бойынша деректерді шифрлау.
Гаммалау деп белгiлi бiр заң бойынша ашық деректер үстiне шифрдың гаммасын беттестiру (қосу) процесiн түсiнемiз. Шифрдың гаммасы дегенiмiз - ол белгiлi бiр алгоритм бойынша ашық деректердi шифрлауға және шифрланған деректердi ашуға арналып жасалған жалған кездейсоқ тiзбек.
Шифрлау процесiнiң мәнi мынада: шифрдың гаммасын генерациялау және алынған гамманы бастапқы мәтiнге, қайтадан керi аударуға болатындай етiп, мысалы модуль 2 бойынша қосу операциясын пайдалану арқылы беттестiру.
Мына жағдайды атап өтуiмiз керек.
Шифрлау алдында ашық деректердi, ұзындығы бiрдей, әдетте 64 биттен, Т0(i) блоктарына бөледi. Шифрдың гаммасы осыған ұқсас, ұзындығы Гш(i) блоктарынан тұратын тiзбектер түрiнде құрылады.
Шифрлау теңдеуi мына түрде болады:
Тш(i) = Гш(i) + Т0(i) , i=1 … M,
мұндағы Тш(i) - мәтiн-шифрдың i-шi блогы,
Гш(i) - гамма-шифрдың i- шi блогы,
Т0(i) - ашық мәтiннiң i-шi блогы,
М - ашық мәтiн блоктарының саны.
Шифрды ашу процесi шифр гаммасын қайтадан генерациялау және осы гамманы шифрланған деректер үстiне беттестiруден тұрады.
Шифрды ашу теңдеуi мына түрде болады:
Т0(i) = Гш(i) Å Тш(i).
Осындай әдiспен алынған мәтiн-шифр, ашуға қиындық тудырады, өйткенi оның кiлтi айнымалы шама. Шын мәнiнде шифр гаммасы әр шифрланған блок үшiн кездейсоқ түрде өзгерiп тұруы қажет. Егер гамма периоды барлық шифрланған мәтiн ұзындығынан көп болса және шифрды бұзушыға бастапқы мәтiннiң ешқандай бөлiгi белгiлi болмаса, онда мұндай шифрды тек кiлттердiң барлық варианттарын түгел тiкелей қарап шығу (перебор) арқылы ғана ашуға болады. Бұл жағдайда шифрдың криптограммалық тұрақтылығы (криптостойкость) кiлт ұзындығымен анықталады.
Жалғанкездейсоқ сандар тізбегін генерациялау әдістері. Гаммалау әдісімен шифрлағанда кілт есебінде биттердің кездейсоқ қатары пайдаланылады. Бұл қатар екілік түрде берілген (мысалы А=00000, В=00001, С=00010 және т.с.с) ашық мәтінмен қосылады. Бұл қосылу екі модулі бойынша биттерді өзара қосу арқылы жүзеге асырылады. Нәтижесінде шифрланған мәтін пайда болады. Күні бұрын болжауға болмайтын ұзындығы үлкен екілік тізбектерді генерациялау классикалық криптографиядағы маңызды проблемалар қатарына жатады. Бұл проблеманы шешу үшін екілік жалғанкездейсоқты тізбектер генераторлары пайдаланылады.
Жалғанкездейсоқ бүтін сандар тізбегін генерациялайтын белгілі процедуралар ішінде ең жиі қолданылатыны сызықты конгруэнтті генератор. Бұл генератор У1 , У2 , ..., Уi-1,Уі, ... жалғанкездейсоқ сандар тізбегін келесі қатынасты пайдалана отырып құрастырады:
Уi=(a*Ei-1+b)mod m,
мұнда Уі- тізбектің і-ші (ағымдағы) саны; Уі-1 тізбектің алдыңғы саны;
а, b және m – тұрақтылар;
m – модулі;
а – еселік (коэффицент), b - өсімше;
Уі – тудырушы сан (алғашқы мәні).
Бұл теңдеу таңдап алынған а, b, m – параметрлеріне байланысты және m мәніне жете алатын қайталау периодымен жалғанкездейсоқ сандарды генерациялайды. m модулінің мәні 2n тең деп немесе қарапайым санға тең деп алынады. b - өсімі m - санымен өзара қарапайым, ал а - коэффиценті тақ сан болуы керек.
Тізбектердің мұндай түрі компьютерде оңай іске асырылады. Сонымен қатар егер барлық және - GF(2) өрісінде тек 0 және 1 деген мағынада болса іске асыру тіпті оңай болады.
Мысалы ретінде қызықты кері байланысы бар үш разрядтты ығысу регистрін қарастырайық. Ол қарапайым көпмүшеге сәйкес құрылған: һ(х)=х3+х2+1. Мұндағы коэффиценттер мәні һ3=1һ1=0 һ0=1.
Кілттің мәні 101 болсын. Регистр осы күйден жұмыс істей бастайды. Регистрдің күй-жайы суретте көрсетілген. Регистр өзінің барлық 7 нөл емес күйі арқылы өтіп, қайтадан өзінің 101 қалпына келеді. Бұл – сызықтық кері байланысы бар регистрдің ең ұзын периоды. Мұндай тізбек ығысу регистрінің ең үлкен тізбегі деп аталады. (Maximal Length Shift Register Sequence – MLSRS).
Питерсон мен Уэлдон зерттеуі бойынша кез келген m-бүтін саны үшін периоды (2m-1)-ге тең m биттік MLSRS – тізбегі болады. Мысалы, егер m=100 болса, онда тізбектің периоды 2100-1 болады да, оны 1Мбит/с жылдамдықпен байланыс жолдарымен жібергенде ол 1016 жыл өткенше қайталанбайды.
Біздің мысалымыздағы ығысу регистрінің шығу тізбегі Гш (шифр гаммасы) 1010011 тізбегі болып табылады. Ол циклді түрде қайталанып отырады. Бұл тізбекте 4 бірлік пен 3 нөл бар.
3 сурет - Кері байланысы бар үшразрядты ығысу регистрі