Добавил:
t.me Инфо для ГУАП студентов от меня: https://kafaka.notion.site/99e6d9b70ca74f7baef3daea17839e5a Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЛР1 / Задание_1._Шифр_одноалфавитной_замены

.doc
Скачиваний:
2
Добавлен:
18.06.2024
Размер:
68.1 Кб
Скачать

Задание №1. "Шифр одноалфавитной замены"

  1. Выбираем произвольный текст, написанный на русском языке, примерно на 1000 знаков. Он будет тем открытым сообщением, которое надо зашифровать. Те, кто совершенно не умеют программировать, для выполнения данного задания (в крайнем случае) могут воспользоваться редактором Word. Ниже этот простейший вариант реализации ЛР подробно рассмотрен.

  2. Переводим весь исходный текст на верхний регистр.

  3. Буквы Ё, Й, Ъ заменяем на буквы Е, И, Ь соответственно. То есть оставляем в тексте только 30 букв русского алфавита. Из текста исключаем все цифры, любые другие знаки и символы, не относящиеся к алфавиту русского языка, удаляем все знаки препинания и пробелы между словами. Получаем слитный текст, содержащий только буквы русского алфавита.

  4. Выбираем алфавит шифрования. Он также должен состоять из 30-и символов алфавита русского языка (секретный ключ) и зашифровываем с его помощью весь текст. Делаем это с учетом регистра (зашифрованный текст-сообщение ДОЛЖЕН БЫТЬ переведен на нижний регистр).

  5. Проверяем правильность шифрования сообщения. Для этого расшифровываем его (с учетом регистра) и сравниваем результат с сообщением, ранее полученным в п.2. Тексты должны ПОЛНОСТЬЮ совпасть.

  6. Только после проверки совпадения можно будет обменяться зашифрованными сообщениями ("перехваченными" шифрограммами) с одним из студентов группы. Секретный ключ ему НЕ ПЕРЕДАВАТЬ!!!

  7. Теперь переходим непосредственно к "взлому" перехваченного "чужого" зашифрованного сообщения, то есть это надо выполнить без знания секретного ключа. Для решения этой задачи понадобится осредненная статистика повторяемости букв в русском языке (она приведена ниже). Надо проанализировать ее на предмет выявления характерных частот повторения всех букв в русском языке.

  8. Подсчитываем (например, с помощью того же редактора Word) повторяемость букв в "перехваченной" шифрограмме. Внимательно сравниваем ее с осредненной статистикой повторяемости букв в русском языке.

  9. На основе этого сравнения последовательно начинаем делать замены букв в шифрограмме. Замену букв обязательно надо делать с учетом регистра. В процессе выполнения замен может оказаться, что какая-то замена была выполнена неверно. Тогда надо (с учетом регистра) вернуться "назад" и сделать другую замену и т.д. Поэтому для общего ускорения процесса "взлома", а также для того, чтобы не запутаться в выполняемых заменах, все выполняемые замены обязательно надо отдельно и последовательно записывать.

  10. ВАЖНО, что исходный текст уже начинает довольно заметно проявляться, если в зашифрованном сообщении правильно определены 4 - 5 наиболее часто повторяющихся букв русского языка (О, А, Е, И, Н). После этого подбирать замены уже и не требуется, поскольку в разных частях взламываемого сообщения "автоматически" станут понятны, например, недостающие окончания некоторых слов, предлоги т.д. То есть далее надо действовать согласно смыслу проявляющегося текста и правилам русского языка.

  11. При выполнении данной работы надо ОБЯЗАТЕЛЬНО продемонстрировать преподавателю (на компьютере) именно весь процесс последовательного взлома сообщения (постепенное преобразование «чужого» зашифрованного "нечитаемого" сообщения в осмысленное открытое сообщение), с указанием, какие именно (и почему) при этом делались последовательные замены букв (а не просто предъявить в качестве результата работы неизвестно откуда взявшийся и каким образом полученный полностью расшифрованный текст).

  12. Умеющие программировать, могут существенно упростить себе задачу выполнения данной ЛР, написав соответствующую программу на том или ином языке программирования.

  13. Написать отчет о всей проделанной работе. В нем надо отразить последовательность ее выполнения, полученные результаты и выводы в целом по работе.

Таблица («осреднённая статистика») повторяемости букв в русском языке (рассчитано примерно на 1000 знаков текста)

Буква, другой символ

Сколько раз буква встретилась в перехваченном тексте

Среднее

Чаще всего встретились буквы

Частота встречаемости в русском языке

А

 

 

 

62

Б

 

 

 

14

В

 

 

 

38

Г

 

 

 

13

Д

 

 

 

25

Е, Ё

 

 

 

72

Ж

 

 

 

7

3

 

 

 

16

И

 

 

 

62

Й

 

 

 

10

К

 

 

 

28

Л

 

 

 

35

М

 

 

 

26

Н

 

 

 

53

О

 

 

 

90

П

 

 

 

23

Р

 

 

 

40

С

 

 

 

45

Т

 

 

 

53

У

 

 

 

21

Ф

 

 

 

2

Х

 

 

 

9

Ц

 

 

 

4

Ч

 

 

 

4

Ш

 

 

 

6

Щ

 

 

 

3

Ы

 

 

 

16

Ь, Ъ

 

 

 

14

Э

 

 

 

3

Ю

 

 

 

16

Я

 

 

 

18

Другие символы

 

 

 

182