№ 3 зертханалық жұмыс. Симметриялы криптожүйелер (6 сағат)
Жұмыстың мақсаты: симметриялы криптоалгоритмдерді қолданып, шифрлеу арқылы программалық қамтуды рұқсат етілмеген енуден қорғау бойынша тәжірибе алу.
Есептеменің мазмұны
Жұмыстың мақсаты және аталуы;
Программалаудың кез-келген тілінде нұсқаға сәйкес дербес тапсырма; программаның қысқаша сипаттамасын және авторын көрсетіңіз. Программаның аса қызықты бөліктеріне түсіндірме берілуі иіс.
Орындалған дербес тапсырмалардың нәтижелері;
Бақылау сұрақтарына жауап.
Әдістемелік нұсқаулар
Алмастыру (подстановка) әдісі бойынша шифрлеу.
Ең қарапайым әдіс шифрлеу. Шифрленетін тексттің символдары бір (бір алфавитті алмастыру) немесе бірнеше (бірнеше алфавитті алмастыру) алфавитттің символдарымен алмастырылады.
Бір алфавитті алмастыру
Қарапайым алмастыру– шифрленетін хбарламаның символдары сол немесе басқа алфавиттің әріптерімен алмастырылады.
Алмастыру кестелерінің мысалы:
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я
М Л Д О Т В А Ч К Е Ж Х Щ Ф Ц Э Г Б Я Ъ Ш Ы З И Ь Н Ю У П С Р Й
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я
Q W E R T Y U I O P [ ] A S D F G H J K L Z X C V B N M <> @ %
Цезарь шифрі
Цезарь шифрі бойынша әр әріп, сол алфавиттен, өзінен белгіленген қандайда бір санға қалып отыратын әріппен алмастырылады. Вижинер кестесі
Орыс алфавиті үшін Вижинер кестесі:
|
А
|
Б
|
В
|
Г
|
Д
|
Е
|
…
|
А
|
А
|
Б
|
В
|
Г
|
Д
|
Е
|
…
|
Б
|
Я
|
А
|
Б
|
В
|
Г
|
Д
|
…
|
В
|
Ю
|
Я
|
А
|
Б
|
И
|
Г
|
…
|
Г
|
Э
|
Ю
|
Я
|
А
|
Б
|
В
|
…
|
Д
|
Ь
|
Э
|
Ю
|
Я
|
А
|
Б
|
…
|
Е
|
Ы
|
Ь
|
Э
|
Ю
|
Я
|
А
|
…
|
…
|
…
|
…
|
…
|
…
|
…
|
…
|
…
|
Шифрлеу үшін кілт беру керек– қайталанбайтын символдардан тұратын сөз. Алмастыру кестесін былай алады: «шифрленетін тексттің символдарын» Вижинер матрицасының бірінші жолынан құрайды, ал «Алмастыратын символдар» бөлігінін жолын Вижинер матрицасының жолынан құрайды. Соңғысының бірінші символдары өзекті (ключевой) сөздің символдарымен сәйкес келеді.
Бьюфорт квадраты: оның жолы– вижнер кестесінің кері ретпен жазылған жолы.
|
Я
|
Ю
|
Э
|
Ь
|
Ы
|
Ъ
|
…
|
Я
|
Я
|
Ю
|
Э
|
Ь
|
Ы
|
Ъ
|
…
|
Ю
|
А
|
Я
|
Ю
|
Э
|
Ь
|
Ы
|
…
|
Э
|
Б
|
А
|
Я
|
Ю
|
Э
|
Ь
|
…
|
Ь
|
В
|
Б
|
А
|
Я
|
Ю
|
Э
|
…
|
Ы
|
Г
|
В
|
Б
|
А
|
Я
|
Ю
|
…
|
Ъ
|
Д
|
Г
|
В
|
Б
|
А
|
Я
|
…
|
…
|
…
|
…
|
…
|
…
|
…
|
…
|
…
|
Кілттің бағаны
Полибий квадраты.
Орыс алфавитіндегі әріптердің саны грек алфавитінікінен ерекшеленеді. Сондықтан кестенің өлшемі де өзгеше (6х6). Полибий квадратындағы символдардың орналасу реті құпия болып табылады. кілт деп құпия ақпаратты айтады. Ол ашық текстте шифрлеудің қандай түрленуі өтетіндігін анықтайды.
|
1
|
2
|
3
|
4
|
5
|
6
|
1
|
А
|
Б
|
В
|
Г
|
Д
|
Е
|
2
|
Ё
|
Ж
|
З
|
И
|
Й
|
К
|
3
|
Л
|
М
|
Н
|
О
|
П
|
Р
|
4
|
С
|
Т
|
У
|
Ф
|
Х
|
Ц
|
5
|
Ч
|
Ш
|
Щ
|
Ъ
|
Ы
|
Ь
|
6
|
Э
|
Ю
|
Я
|
.
|
,
|
|
Ашық тексттің әр әрпі екі мәнді санмен шифрленеді. Бірінші сан– әріп орналасқан жолдың номері, ал екіншісі– бағанның номері.
Плейфер жүйесі
Көп алфавитті алмастырудың тағы бір шифрі плейфер жүйесі болып табылады. Бұл жүйенің негізгі идеясын қарастырайық.
Ұлттық алфавитке сәйкес әріптер ерікті түрде орналастырылған квадраттың көмегімен шифрлеу жүргізіледі. Әріптерді енгізу реті және кестенің конфигурациясы құпия кілтті құрайды. Анықтылық үшін өлшемі 4х8тікбұрышты кестені, ал әріптер алфавиті ретінде кирилицаны алып, әріптерді алфавиттік реттілікпен орналастырамыз. Орыс әріптерінің саны 33, ал торлардың саны 32 болғандықтан, кестеден Ё алып тастаймыз.
А
|
Б
|
В
|
Г
|
Д
|
Е
|
Ж
|
З
|
И
|
Й
|
К
|
Л
|
М
|
Н
|
О
|
П
|
Р
|
С
|
Т
|
У
|
Ф
|
Х
|
Ц
|
Ч
|
Ш
|
Щ
|
Ъ
|
Ы
|
Ь
|
Э
|
Ю
|
Я
|
Мысалы, «КРИПТОГРАФИЯ» шифрлайық.
Шифрлеу ережесін қарастырайық.
Ашық текст екі әріптен блоктарға бөлінеді. Текстегі әріптердің саны жұп болуы тиіс. Бір блоктағы әріптер бірдей болмау керек. Сөзді бөлейік: КР-ИП-ТО-ГР-АФ-ИЯ.
Егер жұпқа кіретін әріптер әртүрлі жол және бағанда орналасса, онда тікбұрыштың бұрыштарында орналасқан әріптермен алмастырылады. Мысалы, КР блогі ИТ символымен алмастырылады.
Егер ашық тексттің әріптер жұбы бір жолда жатса, онда оң жаққа бір торға циклді қозғалыс арқылы шифрограмма орындалады. Мысалы, ИП блогі ЙИ алмастырылады, ал КН блогі –ЛО.
Егер екі әріп те бір бағанда болса, онда төмен қарай бір торға циклді қозғалыс арқылы шифрлеу орындалады. Мысалы, ЖЦ блогі ОЮ символымен, ал ТЬ блогі– ЪВ символына алмастырылады.
Келтірілген ережеге сәйкес «КРИПТОГРАФИЯ» сөзі ИТЙИЦКАУДРПШ криптограммасына түрленеді.
Егер ашық тексттің блоктары екі бірдей әріптерден тұратын болса, онда криптограмма да екі бірдей әріптерден құралады. Бірақ, бұл шифрді модификациялағанда көпалфавитті жүйеге айналады. Бұл үшін Плейфейердің бірнеше кестелері қолданылып, бірнеше шифрлеу жүргізіледі.
АФИНАЛЫҚ КРИПТОЖҮЙЕЛЕР
Криптотұрақтылық дегеніміз кілтсіз дешифрлеуге тұрақтылығын анықтайтын шифрдің сипаттамасы.
Цезарь шифрімен салыстырғанда афиндік криптожүйелердің криптотұрақтылығы жоғары. Ашық текстті математикалық түрлендірулердің салдарынан, олар ретсіз араластырылған.
Алфавиттің әріптері сандармен нөмірленеді, мысалы, 0-ден 32-ге дейін. Содан кейін, ашық текстегі әріптер, сызықтық теңдеу бойынша алфавиттегі реттік номері анықталған әріппен алмастырылады.
Афиндік криптожүйе екі санның көмегімен тағайындалады: a және b. Орыс алфавиті үшін бұл сандар a0, b32 шартынан алынады. Бірақ a және =33 сандары өзара қарапайым болуы тиіс. Егер бұл шарттар орындалмаса, екі әртүрлі әріптер бір әріппен суреттелуі мүмкін. Криптограмма әрпінің әр коды (алфавиттегі номері) келесі ереже бойына ашық текстінің әрпінің коды арқылы анықталады. Бастапқыда = a +b саны есептеліп, a санын =33 санына бөлу операциясы орындалады. Математикалық түрде былай жазылады: mod()). Бұл мынаны білдіреді: дегеніміз a-ны-ға бөлгендегі қалдық сан. саны шифрограмма әрпінің коды ретінде қолданылады.
Нақтылық үшін мынадай сандарды аламыз: a =5 және b=3.
Криптограмма әріптерінің реттік номерлерін есептеу фрагменті және олардың өзара сәйкестігі кестеде келтірілген:
Ашық тексттің әріптері
| А |
Б
|
В
|
Г
|
Д
|
Е
|
…
|
Я
|
Ашық текст әрпінің коды
|
0
|
1
|
2
|
3
|
4
|
5
|
…
|
32
|
Шифрограмма әрпінің коды
|
3
|
8
|
13
|
18
|
23
|
28
|
…
|
31
|
Шифрограмма әрпі
|
Г
|
З
|
М
|
С
|
Ц
|
Ы
|
…
|
Ю
|
Мысалы, «ГДЕ АББА» хабарламасын шифрлейік. Нәтижесінде мынаны аламыз:
Ашық текст |
Г
|
Д
|
Е
|
А
|
Б
|
Б
|
А
|
Шифрограмма
|
С
|
Ц
|
Ы
|
Г
|
З
|
З
|
Г
|
Достарыңызбен бөлісу: |