- •Теория алгоритмов методические указания для самостоятельной подготовки к контролю знаний
- •«Компьютерные науки»
- •С о д е р ж а н и е
- •Перечень тем
- •Тема 1 Шифры перестановки. Разновидности реализации шифров перестановки Краткие теоретические сведения
- •1 Шифр сцитала
- •2 Шифр вертикальной перестановки
- •3 Шифр поворотной решетки
- •4 Шифры с использованием магичных квадратов
- •5 Перестановка бит
- •Задание
- •Варианты заданий темы 1 для самостоятельной подготовки
- •Вопросы по теории темы 1 для самостоятельной подготовки
- •Тема 2 Шифры простой замены. Разновидности реализации шифров простой замены Краткие теоретические сведения
- •Варианты реализации шифров простой замены
- •1 Система шифрования Цезаря
- •2 Афинная система подстановок
- •3 Лозунговый шифр
- •4 Шифровальный квадрат Полибия
- •5 Шифровальная таблица Трисемуса
- •4Х8 «Сколько волка ни корми, он все в лес глядит »
- •Задание
- •Варианты заданий темы 2 для самостоятельной подготовки
- •Вопросы по теории темы 2 для самостоятельной подготовки
- •Тема 3 Шифры сложной замены. Разновидности реализации шифров сложной замены Краткие теоретические сведения
- •1 Биграммный шифр Плейфейера
- •2 Шифр с использованием омофонов
- •3 Шифр Гронсфельда
- •4 Система шифрования Вижинера
- •5 Шифр «Двойной квадрат Уитстона»
- •Задание
- •Варианты заданий темы 3 для самостоятельной подготовки
- •Вопросы по теории темы 3 для самостоятельной подготовки
- •Приложение
- •Открытое распределение ключей
- •Протокол обмена ключами Диффи–Хеллмана
- •Варианты заданий 2 темы 5 для самостоятельной подготовки
- •Задание 2
- •Решение Алгоритм решения задачи следующий:
- •Варианты заданий 1, 2 темы 6 для самостоятельной подготовки
- •Вопросы по теории темы 6 для самостоятельной подготовки
- •Варианты задания 1 темы 7 для самостоятельной подготовки
- •Литература
Перечень тем
Тема 1 Шифры перестановки. Разновидности реализации шифров перестановки. Построение шифра перестановки вручную и его реализация на примере.
Тема 2 Шифры простой замены. Разновидности реализации шифров простой замены. Построение шифра простой вручную и его реализация на примере.
Тема 3 Шифры сложной замены. Разновидности реализации шифров сложной замены. Построение шифра сложной замены вручную и его реализация на примере.
Тема 4 Симметричное шифрование на примере алгоритма DES Варианты реализации DES. Преимущества, недостатки. Схемы работы отдельных блоков DES. Секретность.
Тема 5 Асимметричное шифрование на примере алгоритма RSA. Протокол получения общего ключа Диффи-Хеллмана. Примеры реализации.
Тема 6 Кодирование информации. Построение кодов с минимальной избыточностью(коды Хаффмана). Примеры построения кодов с минимальной избыточностью с учетом и без учета информации о вероятности появления символов в исходных текстах.
Тема 7 Самокорректирующие коды (коды Хемминга). Примеры построения кодов Хэмминга.
Распределение материала тем по модулям
Модуль 1
1 Построение шифра перестановки вручную и его реализация на примере. (тема 1).
2 Построение шифра простой вручную и его реализация на примере. (тема 2).
3 Построение шифра сложной замены вручную и его реализация на примере. (тема 3).
4 Примеры реализации алгоритма RSA и протокола получения общего ключа Диффи-Хеллмана.
Модуль 2
1 Теория тем 4–7.
2 Примеры построения кодов Хаффмана с учетом и без учета информации о вероятности появления символов в исходных текстах. (тема 6).
3 Примеры построения кодов Хэмминга. (тема 7).
Тема 1 Шифры перестановки. Разновидности реализации шифров перестановки Краткие теоретические сведения
Шифр перестановки(ШП) – преобразование символов исходного текста в соответствии с которым происходит только изменение их порядка без изменения самих символов.
Рассмотрим преобразования с соответствии с ШП, предназначенное для зашифровки исходного текста длиной n символов. Его можно представить с помощью такой таблицы
|
1 |
2 |
… |
k |
… |
n |
|
i1 |
i2 |
… |
ik |
… |
in |
где i1 – номер места шифротекста, на которое попадает первая буква исходного текста;
i2 – номер места шифротекста, на которое попадает вторая буква исходного текста и т.д.
В верхней строке таблицы вписаны числа от 1 до n попорядку, а во второй – эти же числа, но уже в произвольном порядке. Такую таблицу называют перестановкой степени n. Зная перестановку можно осуществить как зашифровку исходного текста, так и расшифровку шифротекста.
Пример: пусть для преобразования используется следующая перестановка
-
1
2
3
4
5
6
6
3
2
5
1
4
Тогда в сответствии с ней слово ДОНЕЦК в шифротексте будет иметь вид КНОЦДЕ.
Существует n! вариантов перестановок степени n (в это число входит и вариант, в котором первая и вторая строка таблицы перестановок полностью совпадают).
Таким образом, ШП предназначен для шифрования исходных текстов длиной n, у которого в качестве множества ключей берется множество всех перестановок степени n. Число ключей этого шифра равно n!. Для использования на практике ШП неудобен в связи с необходимостью при больших значениях n работать с большими таблицами.
Для получения варианта перестановки часто используется некоторая геометрическая фигура, составленная из клеток (чаще всего прямоугольники различных размеров). Шифрование состоит в том, что исходный текст в клетки фигуры вписывают по ходу одного маршрута, а затем для получения шифротекста из заполненной символами фигуры выписывают символы по ходу другого маршрута. Такой шифр называют шифром маршрутной перестановкой. Ключом для такого шифра будет описание фигуры и двух маршрутов (шифрования и дешифрации). Важно чтобы оба маршрута содержали без повторений все клетки фигуры. Геометрическая фигура не обязательно должна быть плоской.
Варианты шифра маршрутной перестановки
