А. Ж. Асамбаев криптография негіздері


Кесте 2.4. Екі әріпті тіркестерді ауыстыру кестесінің мысалы  Ашық мәтін



Pdf көрінісі
бет4/19
Дата15.03.2017
өлшемі2,01 Mb.
#9839
1   2   3   4   5   6   7   8   9   ...   19

Кесте 2.4. Екі әріпті тіркестерді ауыстыру кестесінің мысалы 
Ашық мәтін 
Шифрланған  
мәтін 
Ашық мәтін 
Шифрланған  
мәтін 
аа 
кх 
бб 
пш 
аб 
пу 
бв 
вь 
ав 
жа 
... 
... 
... 
... 
яэ 
сы 
ая 
ис 
яю 
ек 
ба 
цу 
яя 
рт 
 
Осындай  ауыстыру  кестесінің  мөлшерін  бағалайық.  Егер  бастапқы  алфавитта  N 
символ  болса,  онда  биграммалық  шифры  үшін  ауыстыру  векторында  
2
  «ашық  мәтін  - 
шифрланған  мәтін»  жұптар  болу  керек.  Осындай  шифры  үшін  ауыстыру  кестесін  басқа 
түрде  де  жазуға  болады:  бағандардың  атаулары  биграмманың  бірінші  әрпіне  сәйкес,  ал 
жолдардың  атаулары  –  екіншіге,  мұнда  кестенің  ұяшықтары  орнына  қойылатын 
символдармен толтырылған. Бұл кестеде N жол және N баған болады (2.5 кесте).  
 
Кесте 2.5. Биграммалық шифры үшін ауыстыру кестесінің басқа варианты 
 
а 
б 
... 
я 
а 
кх 
цу 
... 
... 
б 
пу 
пш  ... 
... 
в 
жа 
вь 
... 
... 
... 
... 
... 
... 
... 

 
30 
ю 
... 
... 
... 
ек 
я 
ис 
... 
... 
рт 
 
Үшграммалы  және  n–граммалы  шифрдың  пайдалану  варианттары  да  мүмкін. 
Сондай  шифрлардың  криптоберіктігі  үлкенірек  болады,  бірақ  олар  жүзеге  асыру  үшін 
күрделі және кілтті ақпараттың (ауыстыру кестенің үлкен көлемін) көп саның талап етеді. 
Барлық n–граммалы шифрлар жиілік криптоталдау көмегімен ашылу мүмкін, тек кездесу 
статистикасы жеке символдардың емес,  n символдан тұратын тіркестерден пайдаланады. 
 
Пропорционал шифрлар 
Біралфавитты  орнына  қою  әдістеріне  пропорционал  немесе  монофониялық 
шифрлар  жатады,  оларда  жиілік  талдау  көмегімен  ашудан  қорғау  үшін  шифрланған 
белгілердің  кездесу  жиілігі  теңестіріледі.  Жиі  кездесетін  белгілер  үшін  мүмкін  болатын 
баламалар  пайдаланады.  Аса  көп  пайдаланбайтың  бастапқы  белгілер  үшін  бір  не  екі 
балама жеткілікті. Шифрлау кезінде ашық мәтіннің символы үшін орнына қою кездейсоқ 
немесе  белгілі  түрде  (мысалы,  рет-ретімен)  таңдалады.  Символдарды  ауыстыру  үшін 
пропорционал  шифрды  пайдалану  кезінде  әдетте  сандар  таңдап  алынады.  Мысалы,  2.6 
кестеде көрсетілгендей орыс тілдің әріптеріне үштаңбалы сандарды қояйық.  
 
Кесте 2.6. Пропорционал шифры үшін ауыстыру кестесі 
Символ  Ауыстыру варианты  Символ  Ауыстыру варианты 
А 
760  128  350  201   
С 
800  767  105   
 
 
Б 
101   
 
 
 
Т 
759  135  214   
 
 
В 
210  106   
 
 
У 
544   
 
 
 
 
Г 
351   
 
 
 
Ф 
560   
 
 
 
 
Д 
129   
 
 
 
Х 
768   
 
 
 
 
Е 
761  130  802  352   
Ц 
545   
 
 
 
 
Ж 
102   
 
 
 
Ч 
215   
 
 
 
 
З 
753   
 
 
 
Ш 
103   
 
 
 
 
И 
762  211  131   
 
Щ 
752   
 
 
 
 
К 
754  764   
 
 
Ъ 
561   
 
 
 
 
Л 
132  354   
 
 
Ы 
136   
 
 
 
 
М 
755  742   
 
 
Ь 
562   
 
 
 
 
Н 
763  756  212   
 
Э 
750   
 
 
 
 
О 
757  213  765  133  353  Ю 
570   
 
 
 
 
П 
743  766   
 
 
Я 
216  104   
 
 
 
Р 
134  532   
 
 
Бос орын  751  769  758  801  849  035… 
 
Бұл жағдайда хабар 
БОЛЬШОЙ СЕКРЕТ 
келесі түрде шифрлану мүмкін: 
101757132562103213762751800761754134130759 
Берілген  мысалда  қайталанатын  әріптер  үшін  (мысалы,  «О»)  ауыстыру 
варианттары рет-ретімен таңдалды. 
Пропорционал  шифрлар  қарапайым  біралфавитты  орнына  қою  шифрларға 
қарағанда ашу үшін күрделірек. Бірақ,  «ашық мәтін – шифрланған мәтін» бір жұбы ғана 

 
31 
бар  болса,  ашуы  қиын  емес.  Егер  де  тек  шифрланған  мәтіндер  қолда  болса,  онда  кілтті 
ашу,  яғни  ауыстыру  кестесін  табу,  күрделі  болса  да,  бірақ  сонда  да  жүзеге  асырылу 
мүмкін. 
 
Көп алфавитты орнына қоюлар 
Бастапқы тілдің табиғи жиілік статистикасын жасыру үшін көп алфавитты орнына 
қою  қолданады,  ол  да  бірнеше  түрлі  болады.  Көп  алфавитты  орнына  қоюларда 
бастапқы  мәтіннің  символдарын  ауыстыру  үшін  бір  емес,  бірнеше  әліпби  пайдаланады. 
Әдетте  ауыстыру  үшін  алфавиттер  бастапқы  алфавиттың  басқа  ретімен  жазылған 
символынан жасалынады. 
Көп  алфавитты  орнына  қоюдың  мысалы  Вижинер  кестесін  пайдалануына 
негізделген  схемасы  болып  табылады.  Бұл  әдісті  француз  Блез  Вижинер  1585  жылы 
шыққан «Шифрлар туралы трактатта» жазып шығарған.  
Осы  әдісте  шифрлау  үшін  NxN  элементі  бар  квадратты  матрица  тәріздес  кесте 
пайдаланады,  мұнда  N  –  алфавиттағы  символдар  саны  (2.7  кесте).  Матрицаның  бірінші 
жолында  бастапқы  алфавиттегідей  рет-ретімен  әріптер  жазылады,  екінші  жолында  –  сол 
әріптердің  тізбегі,  бірақ  сол  жаққа  бір  орынға  циклдық  ығысумен,  үшінші  жолда  –  екі 
орынға ығысуымен және т.б.   
 
Кесте 2.7. Шифрлау кестені дайындау 
АБВГДЕ........  ..........ЭЮЯ 
БВГДЕЖ........  ..........ЮЯА 
ВГДЕЖЗ........  ..........ЯАБ 
ГДЕЖЗИ.........  ..........АБВ 
ДЕЖЭИК.........  ..........БВГ 
ЕЖЗИКЛ.........  ..........ВГД 
........... 
.......... 
ЯАБВГД.........  ..........ЬЭЮ 
 
Мәтінді  шифрлау  үшін  бастапқы  алфавиттың  кейбір  сөзі  немесе  символдар 
жиынтығы  болатын  кілтті  таңдайды.  Сосын  толық  матрицадан  бірінші  жолынан  және 
бастапқы  әріптері  рет-ретімен  кілт  әріптері  болатын  жолдарынан  бағыныңқы  шифрлау 
матрицаны жазып шығарады (мысалы, егер «весна» кілтті таңдасақ, онда шифрлау кестесі 
2.8 кестегідей болады). 
 
Кесте 2.8. Шифрлаудың бірінші кезеңі – шифрлаудың бағыныңқы матрицасын құру 
АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ 
ВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯАБ 
ЕЖЗИКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯАБВГД 
НОПРСТУФХЦЧШЩЪЫЬЭЮЯАБВГДЕЖЗИКЛМ 
СТУФХЦЧШЩЪЫЬЭЮЯАБВГДЕЖЗИКЛМНОПР 
 
Шифрлау  барысында  (сур.  2.4)  шифрланатын  мәтіннің  әрбір  әріптерінің  астында, 
кілтті  қажетті  рет  қайталайтын,  кілттің  әріптерін  жазады,  сосын  шифрланатын  мәтінді 
шифрлау кестесі (2.8 кесте) арқылы ауыстырады. Ол үшін кестенінің бірінші жолындағы 
әріптерді  және  оның  астында  тұратын  кілт  әріптерінің  сызықтар  қиылысында  тұратын 
әріптермен ауыстырады.  

 
32 
Мысалы,  бастапқы  мәтіннің  бірінші  «М»  әріптің  астында  кілттің  «В»  әрпі 
жазылған. Кодтау кестеде «М»-нан басталатын бағанды және «В»-нан басталатын жолды 
табамыз.  Олардың  қиылысында  «О»  әрпі  тұр.  Бұл  әріп  шифрланған  хабардың  бірінші 
символы  болады  (2.4  суретте  бұл  әріп  төртбұрышпен  белгіленген).  Бастапқы  хабардың 
келесі әрпі – «Е», кілт символы – «Е». «Е» дан басталатын жол мен бағанның қиылысын 
табамыз. Бұл әріп «Л» - шифрланған хабардың екінші символы.  
 
 
Сурет 2.4. Көп алфавитты орнына қою шифрлаудың механизмы 
 
Вижинер  әдісі  бойынша  хабарды  ашып  оқу  мысалын  қарастырайық.  ВЕСНА  кілт 
көмегімен  шифрланған  КЕКХТВОЭЦОТССВИЛ  хабар  болсын  (шифрлау  кезінде  ақ 
жерлері еске алынбаған). Мәтіннің дешифрлауы келесі ретпен орындалады (2.9 кесте): 
 
шифрланған мәтін әріптерінің үстінен рет-ретімен кілттің әріптері жазылады және 
қажетті рет кілт қайталанады; 
 
Вижинер кестесінің бағыныңқы матрица жолында әрбір кілт әрпі үшін шифрланған 
мәтін белгісіне сәйкес әріп іздеп табылады. Оның үстінде тұратын бірінші жолдын 
әрпі ашылған мәтіннің белгісі болып табылады; 
 
алынған мәтін мағынасы бойынша топтастырылады. 
 
Кесте 2.9. Дешифрлау механизмы 
КІЛТ 
ВЕСНАВЕСНАВЕСНАВ 
ШИФРЛАНҒАН МӘТІН 
КЕКХТВОЭЦОТССВИЛ 
АШЫП АЛЫНҒАН МӘТІН   ЗАЩИТАИНФОРМАЦИИ 
БАСТАПҚЫ МӘТІН 
ЗАЩИТА ИНФОРМАЦИИ 
 
Бір  алфавитты  орнына  қою  әдісі  сияқты  Вижинер  шифрын  ашуға  мүмкін  емес, 
өйткені ашық мәтіннің бірдей символдары шифрланған мәтіннің әртүрлі символдарымен 
ауыстырылу  мүмкін.  Басқа  жақтан,  ашық  мәтіннің  әртүрлі  әріптерінің  орнына 
шифрланған мәтіннің бірдей белгілері қойылу мүмкін.  
Берілген  көп  алфавитты  орнына  қою  әдістің  ерекшелігі  мұндай  –  кілт 
символдарының  әрбіреуі  бастапқы  хабардың  бір  символын  шифрлау  үшін  пайдаланады. 
Кілт  символдарының  барлығын  пайдаланғаннан  кейін,  олар  сол  ретімен  қайталанады. 
Егер он әріптен тұратын кілт пайдаланса, онда хабардың әрбір оныншы әрпі кілттің бірдей 
символымен шифрланады. Осы параметр шифр периоды деп аталады. Егер шифрлау кілті 
бір символдан тұрса, онда шифрлау кезінде Вижинер кестесінің бір жолы пайдаланылады, 
сондықтан бұл жағдайда біз моноалфавитты орнына қоюды аламыз, яғни Цезарь шифрын. 
Мәтін шифрлауның сенімділігін күшейту үшін екі немесе одан көп Вижинер әдісі 
бойынша  (әртүрлі  кілтпен)  қатар  шифрлауды  пайдалануға  болады  (Вижинер  құрама 
шифры).  

 
33 
Тәжірибеде  Вижинер  әдісінен  басқа  оның  әртүрлі  өзгертулері  пайдаланған. 
Мысалы, бір рет араластырылған Вижинер шифры. Бұл жағдайда хабарды ашып оқу үшін 
алушы кілтті білгеннен басқа, шифрлау кестедегі символдардың ретін білу қажет.  
Көп алфавитты орнына қоюдың тағы бір мысалы – жүгіру кілті бар шифр немесе 
кітап  шифры.  Бұл  әдісте  мәтінді  шифрлау  үшін  басқа  мәтін  кілт  ретінде  пайдаланады. 
 
«Компьютерге» дейін заманда криптографияда жүгіру кілті бар шифры үшін жуан 
кітапты таңдап алатын (осыдан шифрдың екінші атауы шықты). Осындай шифрлау әдістің 
периоды - кілт ретінде таңдап алынған шығарманын ұзындығы болып табылады. 
Көп  алфавитты  орнына  қою  әдістері,  соның  қатарында  Вижинер  әдісі,  «қол» 
криптоталдауға  қиын  беріледі.  Көп  алфавитты  орнына  қою  әдістерді  ашу  үшін  арнайы, 
күрделі  алгоритмдер  жасалынған.  Компьютердің  пайдалануымен  көп  алфавитты  орнына 
қою әдістердің ашуын тез уақытта жүзеге асыруға болады.  
ХХ  ғасырдың  бірінші  жартысында  көп  алфавитты  орнына  қою  процесті 
автоматтандыру  үшін  роторлық  шифрлау  машиналарды  кең  қолдана  бастады.  Осындай 
құрылғыдағы  басты  элементі  роторлар  –  орнына  қоюды  орындау  үшін  пайдаланатын 
механикалық  дөңгелектер. Роторлық  шифрлау  машинада әдетте пернетақтасы мен ротор 
жиынтығы  болатын.  Әрбір  роторда  символдар  жиынтығы  (алфавиттегі  саны  бойынша) 
болатын,  олар  кез  келген  ретімен  орналасатын  және  ротор  қарапайым  орнына  қоюды 
орындайтын. Бірінші ауыстыруды орындағаннан кейін хабар символдары екінші ротормен 
өңделетін  және  әрі  қарай.  Роторларды  ығыстырып  шифрлау  кілтті  тапсыруға  болатын. 
Кейбір  роторлық  машиналар  шифрлау  барысында  символдардың  орнын  да  ауыстыра 
алатын.  Осындай  типке  жататын  ең  танымал  құрылғы  неміс  шифрлау  роторлық  машина 
Энигма (лат. enigma — жұмбақ), ол Екінші Дүниежүзілік соғыс кезінде пайдаланған еді. 
Энигманың түрлі роторлар саны бар бірнеше моделі шығарылған болатын. Үш роторы бар 
Энигма шифрлау машинада 16900 әртүрлі алфавитты пайдалануға болатын.  
 
Гаммалау әдісі 
Көп  алфавитты  орнына  қоюдың  тағы  бір  жиі  кездесетін  жағдайы  гаммалау.  Бұл 
әдісте  шифрлау  бастапқы  мәтіннің  символдарын  және  модулі  бойынша  алфавиттың 
әріптер санына тең кілтпен қосу арқылы орындалады. Егер бастапқы алфавитте, мысалы, 
33 символ, онда қосы 33 модулі бойынша орындалады. Осындай бастапқы мәтіннің және 
кілттің қосу процесі криптографияда гамманы салу деп аталады.  
Бастапқы алфавиттың символдарына 0 (А) ден 32 (Я) дейін сандар сәйкес болсын. 
Егер  бастапқы  символға  сәйкес  санды  х  деп,  ал  кілт  символын  -  k  деп  белгілесек,  онда 
гаммалау ережесін былай жазуға болады:    
z = x + (mod N), 
мұнда  z – кодталған символ; N - алфавиттың әріптер саны, ал N модулі бойынша қосу – 
кәдімгі  қосуға  сәйкес  операция  (оның  айырмашылығы  –  кәдімгі  қосудың  нәтижесі  N–ға 
тең  немесе  одан  артық,  ал  модулі  бойынша  қосудың  нәтижесі  N–ға  бөлудін  қалдығы). 
Мысалы, 33 модулі бойынша Г (3) мен Ю (31) символдарды қосайық: 
3 + 31 (mod 33) = 1, 
яғни нәтижесінде аламыз 1 санға сәйкес Б символын. 
Тәжірибеде  ең  жиі  кездеседі  екілік  гаммалау.  Мұнда  екілік  алфавит  пайдаланады, 
ал қосу 2 модулі  бойынша орындалады. 2 модулі  бойынша қосу операцияны көбінесе   
деп белгілейді, сонда жазуға болады: 
z = x + (mod 2) = x   k
Екі  модулі  бойынша  қосу  операциясы  логика  алгебрасында  «шығарып  тастайтын 
ИЛИ» немесе ағылшынша XOR деп аталады. 
Мысал қарастырайық. Бізге 14 ондық санды 12 кілтті пайдаланып гаммалау әдіспен 
шифрлау  керек.  Ол  үшін  алдымен  бастапқы  санды  және  кілтті  (гамманы)  екілік  түрге 
түрлендіру керек:  
14
(10) 
= 1110
(2)
,   12
(10) 
= 1100
(2)


 
34 
Сосын  алынған  екілік  сандарды  бір  бірінің  астында  жазу  керек  және  әрбір  қос 
символдарды  екі  модулі  бойынша  қосу  керек.  Екі  екілік  белгіні  қосқан  кезде  0  аламыз, 
егер бастапқы екілік символдар бірдей болса, және 1 аламыз, егер цифрлар әртүрлі: 
0   0 = 0; 
0   1 = 1; 
 
1   0 = 1; 
1   1 = 0. 
Екі модулі бойынша екі екілік санды 1110 және 1100 қосайық:
 
Бастапқы сан
  1 1 1 0 
Гамма   
           1 1 0 0 
Нәтижесі
          0 0 1 0 
Қосу  нәтижесінде  біз  алдық  екілік  сан  0010.  Егер  оны  ондық  түрге  ауыстырсақ, 
аламыз 2. Сонымен, 14 санға 12 кілті бар гаммалауды қолдап, нәтижесінде алдық 2 санды.  
Дешифрлауды қалай орындаймыз? Шифрланған сан 2 екілік түрде жазылады және 
қайтадан екі модулі бойынша кілтпен қосу жүргізіледі: 
Шифрланған сан  0 0 1 0
 
Гамма              
     1 1 0 0 
Нәтижесі               1 1 1 0
 
Алынған  екілік  мәнінің  1110  ондық  түрге  ауыстырамыз  және  аламыз  14,  яғни  бұл 
бастапқы сан. 
Сонымен, 2 модулі бойынша гаммалау кезінде шифрлау үшін да дешифрлау үшін 
да  бірдей  операцияны  пайдалану  керек.  Бұл  бірдей  алгоритмды  және  оған  сәйкес 
программалық жүзеге асыруда бірдей программаны пайдалануға мүмкіндік береді. 
Екі  модулі  бойынша  қосу  операциясы  компьютерде  өте  тез  орындалады  (басқа 
арифметикалық операцияларға қарағанда), сондықтан тіпті үлкен ашық мәтінге гамманың 
салуы лезде жасалынады. Сол себептен, қазіргі техникалық жүйелерде гаммалау әдісі кең 
қолданылады. 
Жалпы  жағдайда  екі  модулі  бойынша  гаммалау  қалай  орындалатының 
тұжырымдайық: 
 
бастапқы  мәтіннің  символдары  мен  гамма  екілік  кодта  беріледі  және  бір  бірінің 
астында  орналасады,  бұл  кезде  кілт  (гамма)  неше  рет  қажет  болса  сол  рет 
жазылады;  
 
екілік белгілердің әрбір жұбы екі модулі бойынша қосылады
 
алынған  екілік  белгілердің  тізбегі  таңдалған  коды  бойынша  алфавит 
символдарымен кодталады. 
2.5  суретте  орыс  символдарынан  тұратын  мәтінге  гаммалаудың  қолдануы 
көрсетілген.  Қабылданған  кодтауға  сәйкес  символдар  кодталады,  ал  сосын  екі  модулі 
бойынша қосу орындалады. 
Гаммалау  әдісті  пайдаланғанда  қосуды  орындайтын  тізбек  -  гамма  кілт  болып 
табылады. Егер гамма шифрлауға арналған хабардан қысқа болса, онда гамма қажетті рет 
қайталанады.  Мысалы,  2.5  суретте  бастапқы  хабардын  ұзындығы  12  байтқа  тең,  ал  кілт 
ұзындығы – 5 байт. Сондықтан, шифрлау үшін гамма екі рет толық қайталану керек және 
бір рет жартылай.  
Кілт  негұрлым  ұзын  болса,  соғұрлым  гаммалау  шифрлау  әдісінің  сенімділігі 
жоғары.  Тәжірибеде  кілт  ұзындығы  деректер  алмасу  аппаратураның  және  есептеуіш 
техниканың  мүмкіндігімен  шектелген.  Яғни  кілтке  бөлінген  жад  көлемімен,  хабарды 
өңдеу  уақытымен,  және  кілттер  тізбегін  дайындау  мен  жазу  аппаратураның 
мүмкіншілігімен. Одан басқа, кілтті пайдалану үшін, алдымен кейбір сенімді жолмен оны 
хабарлармен  алмасатын  екі  жаққа  жеткізу  қажет.  Бұл  кілттерді  үлестіру  проблемасына 
әкеледі,  оның  шешу  күрделігі  кілттің  ұзындығының  және  абонентер  санының  өсуімен 
көбейеді. 

 
35 
 
 
Сурет 2.5. Гаммалау механизмы 
 
2.3 Орын ауыстыру әдістер 
 
Орын  ауыстыру  шифрларын  пайдалану  кезінде  бастапқы  мәтіннің  кіріс  ағыны 
блоктарға  бөлінеді,  олардың  әрбіреуінде  символдардың  орын  ауыстыруы  орындалады. 
Классикалық  «компьютерге»  дейін  криптографияда,  орын  ауыстыру  геометриялық 
пішіннің  түрлі  жолдары  бойынша  бастапқы  мәтінді  жазу  және  шифрланған  мәтінді  оқу 
нәтижесінде алынатын.  
Орын ауыстырудың қарапайым мысалы - тіркелген периоды бар орын ауыстыру. 
Бұл  әдісте  хабар  d  символы  бар  блоктарға  бөлінеді  және  әрбір  блокта  бірдей  орын 
ауыстыру  жүргізіледі.  Орын  ауыстыруды  орындайтын  ереже  кілт  болып  табылады  және 
бірінші  d  натурал  сандардың  кейбір  орын  ауыстыруымен  берілу  мүмкін.  Нәтижесінде 
хабардың әріптері өзгермейді, бірақ басқа ретімен беріледі.  
Мысалы, d=6 үшін орын ауыстыру кілтін 436215 деп алуға болады. Бұл көрсетеді: 6 
символдан  тұратын  әрбір  блокта  төртінші  символ  бірінші  орынға  қойылады,  үшінші 
символ – екінші орынға, алтыншы – үшіншіге және т.с.с. Мынадай мәтінді шифрлау керек 
болсын: 
ЭТО_ТЕКСТ_ДЛЯ_ШИФРОВАНИЯ 
Бастапқы  хабарда  символдар  саны  24,  сондықтан  хабарды  4  блокқа  бөлу  керек. 
Орын ауыстыру 436215 көмегімен шифрлаудың нәтижесі мұндай хабар болады 
_ОЕТЭТ_ТЛСКДИШР_ЯФНАЯВОИ 
Теорияда,  егер  блок  d  символдан  тұратын  болса,  онда  мүмкін  болатын  орын 
ауыстырулар саны    
d! = 1*2*...*(d-1)*d. 

 
36 
Соңғы мысалда d=6, сондықтан орын ауыстырудың саны   
6! = 1*2*3*4*5*6 = 720. 
Сонымен,  егер  қарсылас  шифрланған  хабарды  қолына  ұстап  алса,  онда  оған  бастапқы 
хабарды  (блок  мөлшері  белгілі  болса)  ашып  оқу  үшін  720  артық  емес  әрекет  қажет 
болады.  
Криптоберіктікті  күшейту  үшін  шифрланатын  хабарға  екі  не  одан  көп  түрлі 
периоды бар орын ауыстыруларды қолдауға болады.  
Орын ауыстырулардың басқа мысалы - кесте бойынша орын ауыстыру. Бұл әдісте 
бастапқы  мәтін  кейбір  кестенің  жолдары  бойынша  жазылады  және  ол  сол  кестенің 
бағандары бойынша оқылады. Жолдарды толтыру және бағандарды оқу реті әртүрлі болу 
мүмкін және кілт арқылы беріледі.  
Мысал  қарастырайық.  Кодтау  кестеде  4  баған  мен  3  жолы  болсын  (блок  мөлшері 
тең 3*4=12 символ). Мына мәтінді шифрлайық: 
ЭТО ТЕКСТ ДЛЯ ШИФРОВАНИЯ 
Бастапқы  хабарда  символдар  саны  24,  сондықтан  хабарды  2  блокқа  бөлу  керек. 
Әрбір блокты өзінің кестесіне жолдар бойынша жазайық (2.10 кесте). 
 
Кесте 2.10. Кесте бойынша орын ауыстыру әдісімен шифрлау 
1 блок 
Э 
Т 
О 
 
Т 
Е 
К 
С 
Т 
 
Д 
Л 
2 блок 
Я 
 
Ш 
И 
Ф 
Р 
О 
В 
А 
Н 
И 
Я 
Сосын әрбір блокты кестеден бағандар бойынша оқып отырамыз: 
ЭТТТЕ ОКД СЛЯФА РНШОИИВЯ 
Бағандарды  рет-ретімен  емес  те  оқуға  болады,  мысалы  былай:  үшінші,  екінші, 
бірінші, төртінші: 
ОКДТЕ ЭТТ СЛШОИ РНЯФАИВЯ 
Бұл жағдайда бағандарды оқу реті кілт болып табылады. 
Егер  хабар  ұзындығы  блок  мөлшеріне  еселі  болмаса,  онда  хабарды  мағынасын 
бұзбайтын кейбір символдармен толтыруға болады, мысалы ақ жерілермен. Бірақ, былай 
істеуге болмайды, өйткені қарсылас криптограмманы ұстап алса, онда пайдаланатың орын 
ауыстыру  кестенің  мөлшерін  (блок  ұзындығын)  біліп  қояды.  Блок  ұзындығын 
анықтағаннан кейін қарсылас блок ұзындығының бөлгіштерінің арасында кілт ұзындығын 
да (кестенің бағандар санын) табалады.  
Орын ауыстыру кестенің мөлшеріне ұзындығы еселі емес хабарды қалай шифрлап 
дешифрлауға болатының қарап шығайық. Мына сөзді шифрлайық 
ПЕРЕМЕНКА 
Бастапқы  хабарда  символдар  саны  9.  Хабарды  кестеге  жолдар  бойынша  жазайық 
(2.11 кесте), ал соңғы үш ұяшықты бос қалдырамыз.  
 
Кесте 2.11. Кесте бойынша орын ауыстыру әдісімен толық емес блокты шифрлау 
П 
Е 
Р 
Е 
М 
Е 
Н 
К 
А 
 
 
 

 
37 
 
Сосын кестеден баған бойынша рет-ретімен оқып отырамыз: 
ПМАЕЕРНЕК 
Ашып  оқу  үшін  алдымен  толық  бағандар  санын  анықтайды,  яғни  соңғы  жолдағы 
символдар саның. Ол үшін хабар  мөлшерін (біздің мысалда - 9) бағандар санына немесе 
кілт мөлшеріне (мысалда - 4) бөледі. Бөлудің қалдығы толық бағандар санына тең болады: 
9  mod  4  =  1.  Сондықтан,  біздің  мысалымызда  бір  толық  баған  және  үш  қысқа  болатын. 
Енді  хабар  әріптерің  өзінің  орнына  қоюға  және  хабарды  ашып  оқуға  болады.  Шифрлау 
кезінде  кілт  болып  1234  саны  болғандықтан  (бағандар  рет-ретімен  оқылды),  онда 
дешифрлау  кезінде  алғашқы  үш  символ  (ПМА)  ауыстыру  кестенің  бірінші  бағанына 
жазылады,  келесі  екеуі  (ЕЕ)  –  екінші  бағанға,  келесі  екеуі  (РН)  –  үшіншіге,  және  соңғы 
екеуі  (ЕК)  –  төртіншіге.  Кестені  толтырғаннан  кейін  жолдарды  оқыймыз  және  бастапқы 
хабарды ПЕРЕМЕНКА аламыз. 
Орын  ауыстырудың  басқа  да  тәсілдері  бар,  оларды  бағдарламалық  және 
аппараттық  жолмен  жүзеге  асурыға  болады.  Мысалы,  екілік  түрде  жазылған  деректерді 
беру  кезінде,  аппараттық  блокты  қолдануға  ыңғайлы.  Бұл  блок,  сәйкес  электр  схема 
көмегімен,  белгілі  бір  түрде  бастапқы  n–разрядты  хабардың  биттерін  араластырады. 
Былай, егер блок мөлшерін сегіз бит деп алсақ, онда, мысалы, осындай ауыстыру блокты 
2.6 суретте көрсетілгендей пайдалануға болады.  
 
 
 

Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   19




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет