Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
1
Добавлен:
27.11.2024
Размер:
157.12 Кб
Скачать

Лабораторная работа 1.1 Изучение классических шифров замены

Задание

Изучить процедуры шифрования и расшифрования в шифрах Цезаря и Виженера.

Технология выполнения задания

Задание 1. Зашифровать слово с помощью шифра Цезаря.

1. В приложении MS Excel создать книгу, содержащую пронумерованные символы русского алфавита: в первом столбце ввести номера от 0 до 32, во втором — символы алфавита по порядку, в третьем — снова нумерацию от 0 до 32. В книгу отформатировать (уменьшить) ширину столбцов для удобного введения в них текста побуквенно (рис. 1), для облегчения данной задачи можно использовать копирование форматов.

2. Выбрать значение ключа равным номеру варианта (от 1 до 32).

3. Зашифровать слово «семена» с помощью шифра Цезаря с выбранным ключом:

• ввести шифруемое слово побуквенно в ячейки первой строки отформатированной области; важно, чтобы символы алфавита в таблице и символы вводимого слова были набраны в одном регистре;

Рис. 1. Пример содержания и форматирования книги «Алфавит»

• строкой ниже получить числовой код символов шифруемого слова с помощью функции ВПР:

— первым параметром (Искомое _значение) функции назначить ссылку на ячейку с текущим символом шифруемого слова,

— вторым параметром (Таблица) функции назначить ссылку на таблицу с алфавитом, начиная со второго столбца (столбцы 2 и 3), ссылку на таблицу сделать абсолютной, нажав кнопку F4,

— значение третьего параметра (Номер столбца) задать равным 2,

— в качестве значения четвертого параметра (Интервальный_просмотр) ввести слово «ложь», например =ВПР(П;$В$1:$С$33;2;ЛОЖЬ), скопировать функцию для всех символов шифруемого слова (рис. 2);

Рис. 2. Пример вычисления числового кода символа

• строкой ниже получить код символа криптограммы, сложив по модулю 33 полученный код текущего символа со значением ключа:

— ввести значение ключа,

— во второй строке под текущим символом шифруемого слова вставить функцию ОСТАТ,

— в качестве значения первого параметра (Число) функции указать сумму ячейки с кодом шифруемого символа и ячейки со значением ключа (ссылку на значение ключа сделать абсолютной),

— второй параметр (Делитель) задать равным 33, например OCTAT(F2+$E$3;33), скопировать сформированную функцию ОСТАТ для всех символов шифруемого слова (рис. 3);

Рис.3. Пример вычисления кода криптограммы, ключ равен 15

• строкой ниже с помощью функции ВПР перевести полученный код криптограммы в символьный вид:

— в качестве значения первого параметра функции назначить ссылку на ячейку с текущим кодом криптограммы,

— в качестве значения второго параметра функции назначить ссылку на таблицу с алфавитом начиная с первого столбца (столбцы 1 и 2), сделать ссылку на таблицу абсолютной,

— значение третьего параметра (Номер_столбца) задать равным 2,

— в качестве значения четвертого параметра (Интервальный_просмотр) ввести слово «ложь», например, =ВПР(РЗ;$А$1:$В$33;2;ЛОЖЬ), скопировать функцию для всех символов шифруемого слова (рис. 4) — криптограмма получена.

Рис. 4. Пример текста, зашифрованного шифром Цезаря

4. Проверить результат шифрования с помощью онлайн-калькулятора http://planetcalc.ru/1434/.

5. Проанализировать полученный текст криптограммы, обратив внимание на повторяющиеся символы.

Задание 2. Расшифровать криптограмму, полученную с помощью шифра Цезаря.

6. Выбрать значение ключа шифрования и криптограмму из табл. 1 в соответствии с номером варианта (от 1 до 32).

Таблица 1 - Варианты задания

Номер варианта

Ключ

Криптограмма

Номер варианта

Ключ

Криптограмма

1

31

пжйжимл

17

14

яцабндцм

2

29

жьибзеы

18

13

юхъыъхщ

3

28

ёазкдию

19

2

йвгвдв

4

27

еъкнляёц

20

И

тклщэк

5

26

пюжжзклх

21

10

фйцоъй

6

25

йлижйкжв

22

9

ъцехчу

7

24

жёгёйсё

23

3

ъзоссзн

8

23

зящдцв

24

7

охтхщх

9

22

еъёъщхмх

25

6

чкцкжцф

10

21

егжфкэу

26

30

пэюрнвп

11

20

ыугьеюу

27

32

ётиябкы

12

19

фбгбучь

28

5

цжйьпе

13

18

эъгъзс

29

12

чяцънфвл

14

17

схухэяг

30

4

цифирто

15

16

яюышёшо

31

8

трщмуд

16

15

ачньчу

32

1

лбвбшпл

7. Расшифровать криптограмму выбранным ключом:

• ввести побуквенно текст криптограммы в ячейки строки отформатированной области; важно, чтобы символы алфавита в таблице и символы вводимого слова были набраны в одном регистре;

• строкой ниже получить числовой код символов шифруемого слова с помощью функции ВПР;

• строкой ниже получить код символов расшифрованного теста, вычтя но модулю 33 значение ключа из полученного кода текущего символа криптограммы, используя функцию ОСТАТ (рис. 5);

Рис. 5. Пример вычисления кода открытого текста шифра Цезаря

• строкой ниже с помощью функции ВПР перевести полученный код криптограммы в символьный вид. Критерием правильности расшифрования является получение осмысленного слова.

Задание 3. Зашифровать слово с помощью шифра Виженера.

8. Выбрать значение ключа шифрования из табл. 2 в соответствии с номером варианта (от 1 до 26).

Таблица 2 - Варианты задания

Номер

варианта

Ключ

Криптограмма

Номер

варианта

Ключ

Криптограмма

1

слон

гфьацючше

14

стул

хбеюевбъгеп

2

клин

хфйтыщнауци

15

флаг

фцтцфчьргэгя

3

смех

юмчъюмчюьм

16

дрель

хтурюфхсрйсяцюш

4

звон

зтчвфжбцтв

17

цена

буюрыпанецаь

5

приз

мюнштхырър

18

парус

биэацврщкяюсгп

6

лист

юнэчшидгфз

19

скунс

юшвращшуеяаьёй

7

свет

ьрсяеннэсшнс

20

кот

чэащюбцчс

8

вой

фухжртёучку

21

право

ухлрюаяийрюфефрю

9

мир

юкхячфхчф

22

куча

оввучшетщвшоывй

10

час

ангйаэгязая

23

мост

ыралсрацюбуб

И

кол

кюрцъкбчк

24

окно

хупэбшьрэоябрщ

12

слово

ьъьцчхрьшчечкиэгюк

25

глаз

п щоксуал гг н цф ю ь

13

клуб

бряпьюбпьюп

26

труд

вхдидядцыжу

9. Зашифровать слово «алфавит» с помощью шифра Виженера с выбранным ключом:

• ввести побуквенно шифруемое слово в ячейки строки отформатированной области; важно, чтобы символы алфавита в таблице и символы вводимого слова были набраны в одном регистре;

• строкой ниже получить числовой код символов шифруемого слова с помощью функции ВПР;

• строкой ниже ввести побуквенно ключ шифра Виженера, циклически повторяя его, пока не будет достигнут конец шифруемого слова (рис. 6);

Рис. 6. Пример создания ключевой строки шифра Вижеиера, ключевое слово «сыр»

• строкой ниже получить числовой код символов ключевой строки с помощью функции ВПР;

• строкой ниже получить код символа криптограммы, сложив по модулю 33 полученный код текущего символа шифруемого слова с кодом текущего символа ключевой строки, используя функцию ОСТАТ (рис. 7);

Рис. 7. Пример вычисления кода криптограммы шифра Виженера

• строкой ниже с помощью функции ВПР перевести полученный код криптограммы в символьный вид.

10. Проверить результат шифрования с помощью онлайн-калькулятора http://planetcalc.ru/2468/.

Задание 4. Расшифровать криптограмму, полученную с помощью шифра Виженера.

11. Выбрать значение ключа шифрования и криптограмму из табл. 2 в соответствии с номером варианта (от 1 до 26).

12. Расшифровать криптограмму выбранным ключом:

• ввести текст криптограммы побуквенно в ячейки строки отформатированной области; важно, чтобы символы алфавита в таблице и символы вводимого слова были набраны в одном регистре;

• строкой ниже получить числовой код символов шифруемого слова с помощью функции ВПР;

• строкой ниже сформировать ключевую строку;

• строкой ниже получить числовой код символов ключевой строки с помощью функции ВПР;

• строкой ниже получить код символа открытого текста, вычтя по модулю 33 код текущего символа ключевой строки из кода текущего символа криптограммы, используя функцию ОСТАТ (рис. 8);

• строкой ниже с помощью функции ВПР перевести полученный код криптограммы в символьный вид. Критерием правильности расшифрования является получение осмысленного слова.

Рис. 8. Пример вычисления кода открытого текста шифра Виженера

Соседние файлы в папке Лабы