Таќырып 10 Симметриялыќ криптож

Таќырып 10 Симметриялыќ криптожџйелер

Маќсаты: Криптографиялыќ ѕдістермен жѕне ќђралдарымен танысу.

Жоспар:

Симметриялы криптожџйелерді шолу. Орын ауыстыру. Гаммалау. Кездейсоќ сандар датчиктері. Блокпен шифрлау стандартьмен танысу.

Теориялыќ материал:

Ежелден бері ќђпия саќтау тѕсілі болып келген криптография бџгінде адамзат љмірініњ барлыќ дерлік салаларында кењінен ќолданылып отыр.

Криптография дегеніміз ежелгі гректердіњ Кriptos - ќђпия, жасырын жѕне grарhо - жазу сљздерінен ќђралѓан тек ќана шартты тђлѓаларѓа ѓана мѕлім ќђпия жазу тѕсілі немесе ќђпия жазу. Криптография терминініњ авторы Д. Валлис болып табылады. Криптография, яки ќђпия жазу тѕсілі, ежелгі дџниедегі ѕйгілі Рим тарихшысы Плутархтыњ айтуына ќараѓанда, Элладада б.з.д. V-VІ ѓасырларда белгілі бір интеллектуалды ортада кењінен ќолданылѓан екен. Плутархтыњ мѕліметіне жџгінсек, Эллада ђлдары (гректер) арнайы шифрлаушы ќђралдыњ кљмегіне сџйенген, аталмыш ќђрал ђзындыѓы мен жуандыѓы бірдей екі таяќтан тђрады. Біреуін љзіне ќалдырып, екіншісін кететін адамѓа берген. Бђл таяќшалар сцитал деп аталынѓан. Грециядаѓы Аттиканыњ немесе Пелопоннестіњ билеушілері аса ќђпия тџрде хабар жібергісі келсе, елдік тѕрізді тілімделіп кесілген љте жђќа ѕрі шамадан тыс ђзын Папирусты жоѓарыдаѓы сциталѓа, араларына ешбір сањылау ќалдырмай, мейлінше тарта отырып, ораѓан. Сљйтіп, таяќшаныњ (сциталдыњ) бетіндегі ешбір жерді бос ќалдырмай тџгелдей папируспен ќђндаќтаѓан. Мђнан соњ папирустыњ осы оралѓан ќалпыныњ џстіне ќажетті мѕліметті мђќияттап жазѓан. Ал соњында орамдалѓан ќолаќты таяќшадан сыпырып, жаушыны немесе хабаршыны мѕліметті кџтіп отырѓан адресатќа таяќшасыз жіберген. Ондаѓы ѕріптердіњ ешќандай жџйесіз, бей-берекет ѕрі оќылуы ќиын болѓанына байланысты ќђпия хабар кџтуші оны оќу џшін бірден - бір амалѓа жџгініп отырѓан. Яѓни, ќђпия аќпаратты љз сциталына орау арќылы. Алайда "асќанѓа тосќан" демекші сол кезењде де мђндай ќђпияны тиісінше љз жолымен шешушілер (шифр ашушылар) табылѓан.

Гронсфельд шифры

Гронсфельд шифры деп аталатын бђл кџрделі ауыстыру шифры Цезарь шифрыныњ љзгертілген бір тџрі болып табылады. Ол џшін негізгі хабар ѕріптерініњ астына сандар тџріндегі кілттіњ цифрлары жазылады. Егер кілт хабардан ќысќа (аз) болса, онда кілттіњ цифрлары ќайталана береді. Мысалы, кілт ретінде 2718 санын ќолдана отырып ¥ЛЫ ЖІБЕК ЖОЛЫ хабары џшін келесі шифрмѕтін алынады:

Хабар Ђ Л Ы Ж І Б Е К Ж О Л Ы

Кілт 2 7 1 8 2 7 1 8 2 7 1 8

Шифрмѕтін Ф Р І Н Э З Ж П И Ђ М Б

Хабардыњ бірінші Ђ ѕрпін шифрлау џшін кілттіњ бірінші цифры 2 екеніњ ескере отырып алфавиттегі Ђ ѕрпінен бастап екінші ѕріпті (Џ, Ф), яѓни Ф ѕрпін тањдап алу керек. Ѕрі ќарай шифрлау осылайша жалѓаса береді.

Вижинер шифрлау жџйесі

Вижинер жџйесі Цезарь шифрлау жџйесіне ђќсайды. Шифрлау кестесі Вижинер кестесі деп аталады. Вижинер кестесі n2 элементтен тђратын квадраттыќ матрица болып табылады. Бђл жерде n - ќолданылатын ѕліпби символдарыныњ саны. Бірінші ќатарда ѕліпбидіњ барлыќ ѕріптері жазылады. Ѕрбір келесі ќатарда бір ѕріпке ыѓыстырылады. Осындай ѕрекетті аяѓына дейін ќайталаудыњ нѕтижесінде ќатар саны баѓанныњ (ѕліпбидіњ ѕріптерініњ) санына тењ квадрат кесте ќђрылады. Кестеніњ екі кірісі бар: негізгі ашыќ мѕтінніњ ѕрпін аныќтайтын жоѓарѓы ќатардыњ символдары жѕне кілттіњ сол жаќтаѓы шеткі баѓаны.

Шифрлау (жѕне кері шифрлау) џшін Вижинер кестесін ќолдануѓа болады. Шифрлауды орындау џшін ѕріптерден тђратын кілт тањдап алынады. Шифрлау былайша жџргізіледі. Толыќ кестеден бірінші ќатар жѕне бірінші ѕріптері кілттіњ ѕріптеріне сѕйкес келетін ќатарлар іріктеліп алынады.

Шифрлау былайша жџзеге асырылады: шифрланатын мѕтінніњ ѕрбір ѕрпініњ астына кілттіњ ѕріптері жазылады; кестеніњ жоѓарѓы ќатарынан ашыќ мѕтінніњ кезекті ѕрпімен оныњ астында орналасќан кілттіњ ѕрпін байланыстыратын сызыќтардыњ ќиылысќан жерінде тђрѓан кестеніњ ѕрпі табылады; шифрланатын мѕтінніњ ѕрпі кестеніњ осы ѕрпімен ауыстырылады. Осылайша шифрмѕтінніњ келесі ѕрпі табылады.

Жалпы "шифр" да алгебра сияќты љзініњ шыѓу тђрќысынан араб сљзі. XV ѓасырдыњ басында арабтар "Шѕубе - Ѕл - Аща" атты энциклопедия жазып шыѓарды. Бђл ѕмбебап кітапта шифрларѓа лайыќталѓан арнайы бљлім бар. Ол мѕтіндегі ѕріптердіњ ќайталану жџйесініњ кџрделілігін реттеу маќсатында ќолданылады. Наќ осы бљлімде ќђранныњ мѕтініњ зерттеп оќуѓа негізделген ќайталау реті бойынша келтірілген ѕріптер тізімі бар. Салыстыру џшін: мѕселен, орыс мѕтінінде ењ кљп кездесетін ѕріп - "О", ал одан кейін жиі ђшырасатындары - "Е", "И" жѕне "А" ѕріптері. Дѕлірек айтсаќ, 1000 ѕріптен тђратын орыс мѕтінінде орташа есеппен 90 "О" ѕрпі, 72 "Е" ѕрпі ( немесе "Ё") жѕне шамамен 60 - тан "И" мен "А" ѕріптері келеді.

Орайы келіп тђрѓанда криптограммаѓа ќатысты ќайсыбір тџсініктерді де шолып љтелік.

Шифрды ашу (бђзу) дегеніміз - ќолданылѓан шифрды білмей-аќ шифрланѓан мѕліметтен (хабарламадан) ќорѓалынѓан мѕліметті (хабарламаны) алу џрдісі. жоѓарыда айтып љткеніміздей, тарихта "Сцитала", "Цезарь шифры" сияќты шифрларды білеміз. Олардыњ ѕрќайсысыныњ љзіндік ерекшеліктері бар. Мѕселен, "Сцитала" шифрын "алмастыру" яки "ќайта ќою" шифры деп те атайды.

Криптографиядаѓы кілт тџсінігі - наќты бір хабарды (мѕліметті) шифрлау барысында ќолданылатын шифрдыњ ауыспалы элементіне ќатысты ђѓым.

Шифрѓа шабуыл (орысша - атака) деп шифрды ашу ѕрекетін айтамыз. Ал шифрдыњ тџрлі шабуылдардан ќорѓану ќабілетін шифр беріктігі (стойкость шифра) деуге ќђќыѓымыз бар.

Гост-28147-89 криптоалгоритмі

Алгоритмге сипаттама.

ГОСТ 28147-89 алгоритмі - 256 биттік кілт ќолданатын 64 биттік блокты алгоритм. Алгоритм жђмысында тљрт режим ќарастырылѓан: ќарапайым ауыстыру, гаммалау, кері байланысты гаммалау, имитоставка. Біздердіњ ќарастыратынымыз ќарапайым ауыстыру режимі.

Алгоритмніњ жђмыс процессі 32 этаптан тђрады. Ѕр этапта ќарапайым шифрлеу алгоритмдері ќайталанып орындалады. Шифрленетін текст алдын ала 64 биттік блоктарѓа бљледі. Ѕрбір блок 32 биттік екі жартыѓа бљлінеді, мђнда сол немесе џлкен биттер(L), оњ немесе кішкентай биттер(R) деп белгіленеді. ГОСТ алгоритмніњ i-ші этапыныњ орындалуы тљменде кљрсетілген:

Li = Ri-1

Ri = Li Å f(Ri-1,Ki)

Мђндаѓы Å - екі модулі бойынша ќосу(XOR операциясы), ал f шифрлеу функциясы, Ki – кілт(кілттерді тџрлендіру туралы тљменде жеке тџсіндіріледі). Алгоритмніњ і-ші этапыныњ орындалу схемасы 1-суретте кљрсетілген.

f - шифрлеу функциясы(i- ші этап): алдымен оњ жартысы(Ri-1) мен Ki кілт 232 модулі бойынша ќосылады([+] -232 модулі бойынша екі 32 разрядтыќ екілік сандарды ќосу операциясы). Сосын нѕтижесі 4-биттік сегіз бљлікке бљлініп, содан кейін S- ауыстыру блоктарында алмастырылады. ГОСТ-та ѕр тџрлі сегіз S-ауыстыру блоктары(кесте -1) ќолданылады, алѓашќы 4 бит бірінші S-блокта алмастырылады, екінші 4 бит екінші S-блокта жѕне т.с.с. Ѕрбір S- блок 0 –ден 15-ке дейінгі орынауыстырылѓан сандардан тђрады. S- ауыстыру блоктары ќђпия саќталады, яѓни ќђпия кілт болып есептеледі. Кездейсоќ сандар генераторыныњ кљмегімен, жасаушы S – ауыстыру блоктарыњ љз бетінше ќђрастырады.

Мысалы S1-блоктыњ жђмысын ќарастырайыќ:

S1 | 4 | 10 | 9 | 2 | 13 | 8 | 0 | 14 | 6 | 11 | 1 | 12 | 7 | 15 | 5 | 3

Кірісіндегі 0101 бит шыѓысында 1101 битке алмастырылѓан.

Мђнда 01012 = 5, ал бесінші реттегі 13 элемент= 1101 болады.

Осылайша S-ауыстыру блоктардан шыќќан 32 бит бірігіп, 11 битке циклді солѓа жылжытылады. Сонында, ќозѓалыстыњ нѕтижесі мен сол жаќ жартысы(L) XOR операциясыныњ кљмегімен ќосылып жања оњ жаќты (Ri) береді, ал, тџрлендірілмеген ќалпында оњ жаќ(Ri-1) жања сол жаќќа(Li) ауыстырылады(1-сурет назар аударыњыз).

Бђл ѕрекеттер ѕрбір 64 биттік блок џшін 32 рет ќайталанады.

Кесте 1 - S блоктар

S - Блок | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15
S1 | 4 | 10 | 9 | 2 | 13 | 8 | 0 | 14 | 6 | 11 | 1 | 12 | 7 | 15 | 5 | 3
S2 | 14 | 11 | 4 | 12 | 6 | 13 | 15 | 10 | 2 | 3 | 8 | 1 | 0 | 7 | 5 | 9
S3 | 5 | 8 | 1 | 13 | 10 | 3 | 4 | 2 | 14 | 15 | 12 | 7 | 6 | 0 | 9 | 11
S4 | 7 | 13 | 10 | 1 | 0 | 8 | 9 | 15 | 14 | 4 | 6 | 12 | 11 | 2 | 5 | 3
S5 | 6 | 12 | 7 | 1 | 5 | 15 | 13 | 8 | 4 | 10 | 9 | 14 | 0 | 3 | 11 | 2
S6 | 4 | 11 | 10 | 0 | 7 | 2 | 1 | 13 | 3 | 6 | 8 | 5 | 9 | 12 | 15 | 14
S7 | 13 | 11 | 4 | 1 | 3 | 15 | 5 | 9 | 0 | 10 | 14 | 7 | 6 | 8 | 2 | 12
S8 | 1 | 15 | 13 | 0 | 5 | 7 | 10 | 4 | 9 | 2 | 3 | 14 | 6 | 11 | 8 | 12

Кілттерді тџрлендіру.

256-биттік кілт 32-биттен сегіз блокќа бљлінеді: K1, K2 , K3 , ... K8 . Ѕр этапта ќолданылатын кілттердіњ реті 2 кестеде кљрсетілген. Дешифрлеу џшін де осы алгоритм ќолданылады, біраќ кілттер реті инвертирленеді.

Кесте 2 - ГОСТ-іњ ѕр этапында пайдаланылатын кілттер.

Этап | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16
Кілт – Kі | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
Этап | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32
Кілт – Kі | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1

Есептеу технологиясыныњ дамуына, есептеу техникасы арќылы љњделетін аќпарат саныныњ ђлѓаюына байланысты оны ќорѓау жабдыќтары мен ѕдістерін жањарту талабы кџн тѕртібінен тџскен емес. Міне осы маќсатта DES –стандартыныныњ орнына AES – Advanced Encryption Standard криптографиялыќ ќорѓаудыњ американдыќ стандарты дџниеге келді.

AES моральдыќ жаѓынан тозѓан болып саналатын DES – ті (ѕлемдегі ењ кењінен таралѓан криптоалгроитм болып саналады) ауыстырып отыр.

Басќаша сљздермен айтќанда, AES тѕжірбиелік жџзеге асу кљзќарасы тарапынан елеулі тџрде аса тиімді болуы тиіс (бірінші кезекте шифрлау жылдамдыѓы мен кілттерді ќалыптастыру), TripleDES-ке ќараѓанда, оѓан тђраќтылыќты жол бермей, беріктіліктіњ џлкен ќорына ие болуы тиіс.

Ѕдебиет: 1, стр. 10-40; 2, стр. 15-47

Баќылау сђраќтары:

1 Аќпарат ќорѓаудыњ криптографиялыќ ѕдістері жѕне ќђралдары дегеніміз не?

2 Криптография тарихына шолу жасањыз

3 Шифрлеудіњ негізгі ѕдістері ќандай?

4 Криптоалгоритмдер классификациясы дегеніміз не?

5 Симметриялыќ криптожџйелер дегеніміз не?

6 Стандартты алгоритмдер -DES, ГОСТ туралы не айта аласыз?