Програмна реалізація шифру заміни та його дешифрування
Зміст
Теоретичні відомості
Шифр ​​Подстать ? вки
Шифри простої заміни
Приклади шифрів простої заміни
Безпека шифрів простої заміни
Частотний аналіз
Частотні характеристики текстових повідомлень
Код програми
Експериментальні дані
Висновок
Теоретичні відомості
Шифр ​​підстановки
Шифр ​​підстановки кожен символ відкритого тексту замінює на деякий інший. У класичній криптографії розрізняють чотири типи шифру підстановки:
Одноалфавітний шифр підстановки (шифр простої заміни) - шифр, при якому кожен символ відкритого тексту замінюється на деякий, фіксований при цьому ключі символ того ж алфавіту.
Однозвучний шифр підстановки схожий на одноалфавітний за винятком того, що символ відкритого тексту може бути замінений однією з декількох можливих символів.
поліграмному шифр підстановки замінює не один символ, а цілу групу. Приклади: шифр Плейфера, шифр Хілла. p align="justify"> многоалфавитной шифр підстановки складається з декількох шифрів простої заміни. Приклади: шифр Віженер, шифр Бофора, одноразовий блокнот. p align="justify"> Найбільш відомими і часто використовуваними шифрами є шифри заміни. Вони характеризуються тим, що окремі частини повідомлення (літери, слова, ...) замінюються на які-небудь інші літери, числа, символи і т.д. При цьому заміна здійснюється так, щоб потім по шифрованому повідомленням можна було однозначно відновити передане повідомлення. p align="justify"> Нехай, наприклад, зашифрована повідомлення російською мовою і при цьому заміну підлягає кожна буква повідомлення. Формально в цьому випадку шифр заміни можна описати таким чином. Для кожної букви вихідного алфавіту будується деякий безліч символів так, що множини і попарно не перетинаються при , тобто будь-які два різні безлічі не містять однакових елементів. Безліч називається безліччю шіфробозначеній для букви .
Таблиця
(1)
є ключем шифру заміни. Знаючи її, можна здійснити як зашифрование, так і розшифрування. p> При шифруванні кожна буква відкритого повідомлення, починаючи з першої, замінюється будь-яким символом з безлічі. Якщо в повідомленні міститься кілька букв, то кожна з них замінюється на будь-який символ з. За рахунок цього за допомогою одного ключа ( <# "justify"> 21 37 14 22 01 24 62 73 46 23 12 08 27 53 35 04 40 26 63 47 31 83 88 30 02 91 72 32 77 68 60 44 10 03 71 82 15 70 11 55 90 69 38 61 54 09 84 45 з т у ф х ц ч ш щ ь и ь е ю я 20 13 59 25 75 43 19 29 06 65 74 48 36 28 16 52 39 07 49 33 85 58 80 50 34 17 56 78 64 41 89 67 93 76 18 51 87 66 81 92 42 79 86 05 57
то повідомлення `` я знайомий з шифрами заміни'' може бути зашифровано, наприклад, будь-яким з наступних трьох способів:
165554106909618929904944100802732132835474 415577102368082066907644216190552161835442 573027109168322080024945403246554008832742
Так як безлічі , , , ..., попарно не перетинаються, то по кожному символу шифрованого повідомлення можна однозначно визначити, якому безлічі він належить, і, отже, яку букву відкритого повідомлення він замінює. Тому розшифрування можливо і відкрите повідомлення визначається єдиним чином.
Шифри простої заміни
У шифри простої заміни заміна проводиться тільки над одним єдиним символом. Для наочної демонстрації шифру простої заміни досить виписати під заданим алфавітом той же алфавіт але в іншому порядку або наприклад зі зміщенням. Записаний таким чином алфавіт називають алфавітом заміни. p align="justify"> Приклади шифрів простої заміни
Шифр ​​Атбаш
Шифр ​​простої заміни, використаний для єврейського алфавіту і отримав звідти свою назву. Шифрування відбувається заміною першої літери алфавіту на останню, другий на передостанню (алеф (перша буква) замінюється на тав (останню), бет (друга) замінюється на шин (передостання); з цих поєднань шифр і отримав свою назву). Шифр Атбаш ...