Блоктік шифрлеу



Қызіргі кезде қолданылатын симметриялы блоктік шифрлеу алгоритмі «Файстельдің блоктік шыфры» атты структурасында негізделген. Соған байланысты Файстель шифрі құрылған принциптерді түсіну маңызды. Біз потоктік және блоктік шифрді салыстырып, Файстель шифрінің құрылуын қарастырамыз. Ал содан кейін сәйкес алгоритмді практикалық іске асына да тоқталамыз.
Потоктік және блоктік шифрлеу

Потоктік шифрлер деп цифрлік берілгендер кезекпен, яғни биттен кейін бит немесе байттан кейін байт шифрленетін шифр түрін айтамыз. Классикалық потоктік шифрлерге Виженер (кілтті автоматты таңдаумен) және Вернам шифрлері мысал болады.
Блоктік шифр деп шифрлеудің логикалық бірлігі ашық текстің кейбір блогы болатын шифрді айтамыз. Оны қайта қалпына келтіру кезінде дәл сол ұзындықты шифрленген текст блогы алынады. Әдетте өлшемі 64 битті блоктар қолданылады. Шифрлеудің кейбір режимдерінде потоктік сияқты эффективті болады.
Блоктік шифрлер жақсы зерттелген. Потоктік шифрлерге қарағанда олар көп қолданылады. Традиционды шифрлеу схемасы қолданылатын көптеген желілік қосымшаларда блоктік шифрлер қолданылады.

Файстель шифрін құру подстановкасы

Блоктік шифр ашық текстің n-биттік блогының сондай-ақ өлшемді шифрленген текст блогына түрленуі мүмкін.
Түрлі блоктардың саны 2 n-не тең, және шифрлеу қайтарымды (яғни дешифрленетін) болуы үшін сондай блоктардың әрқайсысы өзінің шифрленген текстің уникалды блогына түрлендіріледі. Бұндай түрлендіру қайтарымды немесе сингулярлы емес деп аталады. n=2 үшін сингулярлы және сингулярлы емес түрлендірулерге мысал.
Көрсетілген мысалда қайтарылмайтын көрініс жағдайында 01 шифрленген тексті ашық текстің 2 түрлі блогына сәйкес келеді. Егер тек қайтарылатын көріністермен шектелсек, түрлі мүмкін түрлендірулер саны 2 n ! –ге тең болады.
3.4. суретінде n=4 үшін подстановтік шифрдің жалпы схемасы көрсетілген. Кіріске түсетін 4-биттік мәндер 16 мүмкін болатын бастапқы жағдайдың біреуін анықтайды. Бұл жағдай 16 уникалды соңғы жағдайдың біреуіне подстановтік шифр ретінде көрінеді. Уникалды соңғы жағдайдың әрқайсысы шифрленген текстің 4-биттік мағынасын білдіреді. Шифрлеу және дешифрлеу схемасын таблица түрінде көрсетуге болады (3.1). бұл блоктік шифрлеу процесінің жалпы схемасы және ол кез келген ашық және шифрленген тексті өңдеу үшін қолданылады.

Блоктік шифрлеу

Қызіргі кезде қолданылатын симметриялы блоктік шифрлеу алгоритмі
Файстельдің блоктік шыфры атты структурасында негізделген. Соған
байланысты Файстель шифрі құрылған принциптерді түсіну маңызды. Біз
потоктік және блоктік шифрді салыстырып, Файстель шифрінің құрылуын
қарастырамыз. Ал содан кейін сәйкес алгоритмді практикалық іске асына да
тоқталамыз.
Потоктік және блоктік шифрлеу

Потоктік шифрлер деп цифрлік берілгендер кезекпен, яғни биттен кейін
бит немесе байттан кейін байт шифрленетін шифр түрін айтамыз. Классикалық
потоктік шифрлерге Виженер (кілтті автоматты таңдаумен) және Вернам
шифрлері мысал болады.
Блоктік шифр деп шифрлеудің логикалық бірлігі ашық текстің кейбір
блогы болатын шифрді айтамыз. Оны қайта қалпына келтіру кезінде дәл сол
ұзындықты шифрленген текст блогы алынады. Әдетте өлшемі 64 битті блоктар
қолданылады. Шифрлеудің кейбір режимдерінде потоктік сияқты эффективті
болады.
Блоктік шифрлер жақсы зерттелген. Потоктік шифрлерге қарағанда олар
көп қолданылады. Традиционды шифрлеу схемасы қолданылатын көптеген желілік
қосымшаларда блоктік шифрлер қолданылады.

Файстель шифрін құру подстановкасы

Блоктік шифр ашық текстің n-биттік блогының сондай-ақ өлшемді
шифрленген текст блогына түрленуі мүмкін.
Түрлі блоктардың саны 2 n-не тең, және шифрлеу қайтарымды (яғни
дешифрленетін) болуы үшін сондай блоктардың әрқайсысы өзінің шифрленген
текстің уникалды блогына түрлендіріледі. Бұндай түрлендіру қайтарымды
немесе сингулярлы емес деп аталады. n=2 үшін сингулярлы және сингулярлы
емес түрлендірулерге мысал.

Көрінетін көрініс Көрінбейтін
көрініс
Ашық текст Шифрленген текст Ашық текст Шифрленген
текст

_____________________
___________________________
00 11
00 11
01 10
01 10
10 00
10 01
11 01
11 01
_____________________
___________________________

Көрсетілген мысалда қайтарылмайтын көрініс жағдайында 01 шифрленген
тексті ашық текстің 2 түрлі блогына сәйкес келеді. Егер тек қайтарылатын
көріністермен шектелсек, түрлі мүмкін түрлендірулер саны 2 n ! –ге тең
болады.
3.4. суретінде n=4 үшін подстановтік шифрдің жалпы схемасы
көрсетілген. Кіріске түсетін 4-биттік мәндер 16 мүмкін болатын бастапқы
жағдайдың біреуін анықтайды. Бұл жағдай 16 уникалды соңғы жағдайдың
біреуіне подстановтік шифр ретінде көрінеді. Уникалды соңғы жағдайдың
әрқайсысы шифрленген текстің 4-биттік мағынасын білдіреді. Шифрлеу және
дешифрлеу схемасын таблица түрінде көрсетуге болады (3.1). бұл блоктік
шифрлеу процесінің жалпы схемасы және ол кез келген ашық және шифрленген
тексті өңдеу үшін қолданылады.

4-биттік енгізу

4-биттік енгізу
3.4.сурет (n=4 жағдайындағы) n – биттік блоктардың блоктік подстановкасының
жалпы схемасы

Таблица 3.1. 3.4. суретінде көрсетілген подстановтік шифр үшін шифрлеу және
дешифрлеу таблицасы
Ашық текст Шифрленген текст Ашық текст Шифрленген
текст
_____________________
___________________________
0000 1110
0000 1110
0001 0100
0001 0011
0010 1101
0010 0100
0011 0001
0011 1000
0100 0010
0100 0001
0101 1111
0101 1100
0110 1011
0110 1010
0111 1000
0111 1111
1000 0011
1000 0111
1001 1010
1001 1101
1010 0110
1010 1001
1011 1100
1011 0110
1100 0101
1100 1011
1101 1001
1101 0010
1110 0000
1110 0000
1111 0111
1111 0101
____________________________
_____________________________

Алайда берілген подходты практикалық іске асыру кезінде келесі
проблема туындайды.егер үлкен емес өлшемді блокті қолдансақ, мысалы n=4,
жүйе классикалық подстановтік шифрге эквивалентті болады. Біз көргендей,
бұндай жүйелер осал және ашық текстің сатистикалық анализі арқылы ашылуы
мүмкін. Бұл жетіспеушілік қайтарылатын шифрден емес, қысқа блоктарды
қолданудан туындайды. n–ның үлкен мәндерінде және ашықтексті шифрленгенге
келтіретін алғашқы ашық текстің статистикалық характеристикасы жақсы
әшкерленуі соншалықты, бұндай түрлі криптоанализ қажетсіз болады.
Алайда үлкен өлшемді блокті кез келген қайтарылатын подстановкалардың
мүмкіндігі алгоритмді іске асыруда және сәйкес қосымшаның орындалу
жылдамдығы тұрғысында тұрақсыз. Бұндай түрлендіру үшін кілт ол көрініс
болады. Қайтадан ашық текст кеңістігінің нақты қайтарылатын көрінісін n=4
үшін шифрленген кеңістікте анықталуын көрсететін 3.1 кестесіне назар
аударсақ. Көріністі сәйкес ашық текст мәндері үшін шифрленген текст мәндері
көрсетілген кестенің 2-ші бағанындағы элементтермен беруге болады. Бұл
негізінен берілген нақты көріністі барлық басқа мүмкін болатын
көріністерден ерекшелейтін кілт болып табылады. Біздің жағдайда кілт
ұзындығы 64-ке тең. әдетте n биттік подстановтік блоктік шифр үшін кілт
өлшемі n x 2 n –ге тең. Егер блок 64-биттік өлшемді болса (бұндай өлшемді
шифр статистикалық анализ көмегімен жүргізілетін бұзуларға жақсы қарсы тұра
алды), онда кілт өлшемі 64х264=270=1021 битке тең.
Бар проблемены зерттей отырып, Файстель үлкен n үшін бұндай блоктік
шифрлеудің идеалды жүйесін іске асыратын жай компоненттер жиынтығымен
[FEIS75] аппроксимациялауды ұсынды. Файстельдің ұсынысын талқылаудан бұрын,
назарларыңызды келесіге аударсақ. Біз блоктік подстановтік шифрдің жалпы
түрімен жұмыс істей алмаймыз, бірақ, сәйкес алгоритмді программалық
методпен іске асыру үшін, барлық 2 n ! мүмкін болатын көріністер орнына
кейбір тар подмножестваларды қарастыруға болады. Мысалға, біздің көріністер
сызықты теңестіру жүйесімен беріледі. n=4 үшін біз мынаны аламыз.

Y1=k11x1+k12x2+k13x3+k14x4
Y2=k21x1+k22x2+k23x3+k24x4
Y3=k31x1+k32x2+k33x3+k34x4
Y4=k41x1+k42x2+k43x3+k44x4

Бұндағы xi -ашық текст блогының төрт екілік цифрын,yi - шифрленген текст
блогының төрт екілік цифрін, kij- екілік коэффиценттер, ал барлық
арифметикалық операциялар 2 модулі бойынша орындалады. Кілт ұзындығы n2 –ге
тең, және берілген жағдайда ол барлығы 16 бит. Мәселенің қауіптілігі
формулалардың көріністерінде, егер бұндай алгоритм құрылымы
криптоаналитикке белгілі болған жағдайда, жүйе осал болуы мүмкін. Берілген
мысалда шифрлеу жүйесі негізінен Хилл шифріне эквивалентті, бірақ текстік
символдарға емес, екілік мәліметтерге қолданылады.

Файстель шифры

Файстель өзінің [FEIS73] жұмысында подстановкалы шифрді кем дегенде екі
базалық шифрдің реттік қолданыста құрылатын, алынған нәтиже осы базалық
шифрлердің әрқайсысымен салыстырғанда қатаң болатын продукционды шифрлермен
аппроксимациялауды ұсынды. Әдетте, Файстель кезек кезекпен орындалатын
подстановка да, перестановка да қолданылатын шифрді ұсынды. Осы ұсыныс
Клод Шеннонның (Claude Shannon) диффузия мен конфузия функциялары кезекпен
қолданылатын продукционды шифрді құру идеясының практикалық қолданысы болып
табылады. Ең алдымен диффузия мен конфузия ұғымдарына тоқталып кетейік, ал
кейінірек Файстель шифріне тағы да тоқталамыз. Бірақ, ескере кететін бір
факт: 1945ж. айтылып кеткен Шеннонның идеясына негізделген ширек ғасыр
бұрын құрылған Файстель шифрінің структурасы қазіргі таңда осы структура
негізінде құрылған бүкіл блоктік шифрлеудің симметриялы схемалары болып
табылады.
Файстель шифрінің структурасы

3.5.суретте Файстель ұсынған шифрдің структурасы көрсетілген. Шифрлеу
алгоритмінің кірісіне ұзындығы 2w битті және K кілтті ашық тексттің блогы
беріледі. Ашық тексттің блогы обработканың n раундтары арқылы кезекпен
өтетін, кейін тиісті ұзындықтағы шифрленген тексттің блогын қайта алу
үшін қолданылатын екі бірдей бөлікке бөлінеді: L және R. Өткен
раундтың шығысында алынған i раунды үшін кіріс ақпараты ретінде L
және R жалпы К кілті арқылы есептелген және құрамды кілт
қызмет атқарады. Ереже бойынша, ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
DES алгоритмі
RC алгоритмдері
Файстель шифры
Ақпараттық қауіпсіздік жайлы
Ақпарат және ақпараттық қауіпсіздік
Ақпаратты қорғаудың әдістері.
Ашық кілтті жүйе
Криптография туралы мәліметтер
Компьютерлік анықтамалы-ақпараттық жүйелер
Ақпаратты қорғау және криптографияның математикалық негіздері
Пәндер