Создание электронного обучающего средства по криптографии

Автор работы: Пользователь скрыл имя, 18 Апреля 2011 в 11:13, дипломная работа

Краткое описание

Цель работы – исследовать теоретические основы криптографии и создать электронное обучающее средство на основе исследованного материала.

Проблема защиты информации путем ее преобразования, исключающего ее прочтение посторонним лицом, волновала человеческий ум с давних времен. История криптографии − ровесница истории человеческого языка. Более того, первоначально письменность сама по себе была своеобразной криптографической системой, так как в древних обществах ею владели только избранные. Священные книги древнего Египта, древней Индии тому примеры.

Содержание работы

Введение 2
Глава 1. Теоретическая часть 4
1.1. Шифры замены 4
1.1.1. Шифры простой замены 4
1.1.2. Частотный анализ 5
1.1.3. Гомофонный шифр замены 7
1.1.4. Полиграммный шифр 8
1.1.5. Полиалфавитные шифры 9
1.1.6. Математическая модель шифра замены 10
1.1.7. Классификация шифров замены 12
1.1.8. Поточные шифры простой замены 15
1.1.9. Блочные шифры простой замены 17
1.1.10. Многоалфавитные шифры замены 20
1.2. Шифры перестановки 21
1.2.1. Шифры обхода 21
1.2.2. Шифр Кардано 21
1.2.3.Общая схема шифра перестановки 23
1.2.4. Маршрутные перестановки 24
1.2.5. Криптоанализ шифров перестановки 25
1.3. Аффинные шифры 27
1.3.1. Шифр сдвига 27
1.3.2. Линейный шифр 28
1.3.3. Аффинный шифр 29
1.3.4. Аффинные шифры высших порядков 30
1.3.5. Криптоанализ аффинных шифров 34
1.4. Цифровые криптоалгоритмы 36
1.4.1. Шифр одноразового блокнота 36
Глава 2. Программная реализация 39
2.1. Структура программы 39
2.1.1. Вводная часть 39
2.1.2. Структура обучающего средства 40
2.2. Представленные примеры криптоалгоритмов 41
2.2.1. Шифр Цезаря 41
2.2.2. Шифр сдвига 42
2.2.3. Шифр Виженера 42
2.2.4. Маршрутные перестановки 43
2.2.5. Аффинный шифр 44
2.2.6. Шифр одноразового блокнота 44
Заключение 45
Используемая литература 47

Содержимое работы - 1 файл

Диплом.doc

— 1.10 Мб (Скачать файл)

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

     Пример (шифра Плейфера):

     Пусть шифр использует прямоугольник размером 5 × 6 , в который записан систематически перемешанный русский 30-буквенный алфавит на основе ключевого слова командир:

к о м а н д
и р б в г е
ж з л п с т
у ф х ц ч ш
щ ь ы э ю я
 

     Зашифруем фразу «автором метода является Уитстон». В качестве «пустышки» будем использовать редкую букву ф. Представим фразу в виде последовательности биграмм:

     АВ  ТО РО МФ ME ТО ДА ЯВ ЛЯ ЕТ ТЯ УИ ТС ТО НФ

     (Нам  пришлось дважды вставить "пустышку".)

     В соответствии со сформулированными  правилами получаем шифртекст:

     ВП  ЗД ЗР ОХ ДБ ЗД КН ЭЕ ТЫ ТШ ШД ЩЖ ЖТ ЗД ОЧ

или без пробелов

впздзрохдбздкнэетытшшдщжжтздоч

     Криптоанализ  шифра Плейфера опирается на частотный  анализ биграмм, триграмм и четырехграмм шифртекста и особенности замены шифрвеличин на шифробозначения, связанные с расположением алфавита в прямоугольнике. При этом существенную информацию о заменах дает знание того, что используется систематически перемешанный алфавит.

     Шифрвеличинами  для другого широко известного блочного шифра – шифра Хилла (названного по имени Лестора Хилла) – являются n-граммы открытого текста (n ≥ 2), представленного некоторым числовым кодом (так что алфавитом открытого текста служит кольцо вычетов по модулю мощности алфавита Zm).

     Правило зашифрования представляет собой линейное преобразование кольца Zm: если х = (х1,...,хn) – n-грамма открытого текста, k = (kij) – некоторая обратимая матрица над Zm (ключ) и y = (y1,…,yn) – n-грамма шифртекста, то y= Ek(x) = k · x. Соответственно   x = Dk(y) = k-1 · y, где k-1 – матрица, обратная к матрице для k.

     Замечание. Из соображений удобства в применении получили широкое распространение шифры, для которых правила зашифрования и расшифрования идентичны. Такие шифры называются обратимыми. Шифр Хилла является обратимым в том и только том случае, когда k-1 = k , или иначе: k2 = Е, где Е – единичная матрица. Матрица, удовлетворяющая этому свойству, называется инволютивной.

     Заметим, что правило зашифрования ЕM (с матрицей Мn×n) в шифрсистеме Хилла является обратимым линейным преобразованием n-мерного модуля . Такая функция является лишь одним из примеров простого задания обратимого преобразования , являющегося, очевидно, биекцией на . Любая же такая биекция потенциально может рассматриваться как правило зашифрования блочного шифра простой замены (если n – размер блока), выбираемого некоторым ключом.

      1.1.10. Многоалфавитные шифры замены

     Напомним, что правило зашифрования многоалфавитного шифра однозначной замены определяется следующим образом. Пусть x = (x1,…,xl) – открытый текст, представленный последовательностью шифрвеличин , i = , и k – произвольный ключ. Тогда

     Ek(x) = (π1(x1),…,πl(xl)),

где πi, i = – некоторые подстановки на множестве всех шифрвеличин, однозначно определяемые данным ключом. При этом здесь и далее мы ограничимся рассмотрением случая, когда множества шифрвеличин и шифробозначений совпадают друг с другом (U = V ).

     Заметим, что в рассматриваемых условиях любой многоалфавитный шифр представляет собой совокупность шифров простой замены, каждая из которых используется для зашифрования очередной шифрвеличины в соответствии с вспомогательной последовательностью ψ(k,l) (распределителем), определяемой выбранными ключом и открытым текстом по формуле ψ(k, l) = , Nr, j = . Принципиально один многоалфавитный шифр отличается от другого лишь способом образования распределителя.

     На  практике используются в основном поточные многоалфавитные шифры, среди которых  выделяются два больших подкласса  – шифры, реализуемые дисковыми шифраторами, и шифры гаммирования. В литературе можно найти упоминание и о других примерах поточных многоалфавитных замен. В подобных шифрсистемах в Ek(x) потенциально могут использоваться все возможные подстановки π данного алфавита. Они строятся с помощью произведений определенного вида из небольшого числа исходных подстановок.

     1.2. Шифры перестановки

      1.2.1. Шифры обхода

     Шифром  перестановки называют шифр, который  сохраняет все буквы данного  текста, но размещает их в криптотексте в ином порядке. Примерами шифров перестановки, которые нам уже встречались, являются шифры частокола и Скитала. Это представители широкого подкласса шифров перестановки, которые называются шифрами обхода. Сообщение записывается рядами в виде прямоугольной матрицы в измененном порядке, а именно, столбцами. При этом последовательность, в которой считываются столбцы определяется ключом. Распространенным было задание ключа в виде легко запоминающегося ключевого слова. Порядок считывания столбцов сохраняется с алфавитным порядком букв ключевого слова.

     Пример:

     Пусть требуется зашифровать сообщение  «ВОРОНА СЕЛА НА ВОРОТА». Пусть дано ключевое слово «ДОМ». Тогда шифрование выглядит следующим образом:

     Д О М

     1 3 2

     В О Р

     О Н А

     С Е Л

     А Н А

     В О Р

     О Т А

получаем  криптотекст: ВОСАВОРАЛАРАОНЕНОТ.

      1.2.2. Шифр Кардано

     В качестве еще одного примера шифра  перестановки приведем довольно известный в популярной математике шифр Кардано. Это блоковый шифр с периодом l = к2, где к четное число. Ключом является вырезанный из бумаги в клетку квадрат размером к на к, что дает к2 клеток, четвертая часть которых, то есть к2/4, прорезают.

     

     Пусть требуется зашифровать блок сообщения, в котором к2 букв. Криптотекст записывают на клетчатую бумагу в квадраты к на к. Процедура займет четыре шага. На первом шаге на лист, на котором будет писаться криптотекст, накладывают ключ и вписывают первую к2/4 букву сообщения в прорезанной клетке, начиная с верхнего ряда. На втором шаге ключ поворачивают на 90 градусов по часовой стрелке относительно центра квадрата и в прорезанные клетки вписывают следующие к2/4 буквы сообщения. Подобным образом выполняют третий и четвертый шаги – каждый раз ключ поворачивают на 90 градусов и в новой позиции прорезанных клеток вписывают очередные к2/4 буквы сообщения. Ключ должен быть изготовлен таким образом, чтобы при повороте прорезанные в ключе клетки попали на свободные клетки листа, и ни в коем случае не накладывались на клетки уже заполненные на предыдущих шагах. В результате после четвертого шага все к2 буквы блока сообщения оказываются размещенными в некотором порядке в квадрате к на к. Считывая их рядами, получаем криптотекст.

     Пример:

     Пусть требуется зашифровать сообщение  «МАМА МЫЛА РАМУ РАНО». Воспользуемся шифром Кардано. Тогда шифрование выглядит следующим образом:

     

 

     В результате получили криптотекст: РМРМЫАААММЛНУАОА

     Шифр  Кардано – это шифр перестановки специального вида, в котором правило перестановки букв в блоки удобно для реализации на бумаге с помощью ножниц и карандаша.

      1.2.3.Общая схема шифра перестановки

     Общий шифр перестановки с периодом l передставляет l букв в произвольном порядке, который определяется ключом. Ключ удобно задавать с помощью перестановки  

1 2 l
i1 i2 il
 

     которая показывает, что первая буква блока открытого текста занимает позицию i1 в соответствующем блоке криптотекста. Вторая буква перемещается на позицию i2 и т.д. Например, при l = 4 шифр перестановки с ключом

1 2 3 4
4 3 2 1
 

преобразует открытый текст МАМАМЫЛАРАМУРАНО в криптотекст АМАМАЛЫМУМАРОНАР. Шифр Кардано с представленным ключом описывается перестановкой 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
4 7 9 14 2 5 11 16 3 8 10 13 1 6 12 15
 

    Теорема. Шифр перестановки с периодом l имеет l! различных ключей. 

     Если  l невелико по сравнению с длиной текста, то шифр перестановки раскрывается соответствующим образом организованным анализом частот биграмм.

Информация о работе Создание электронного обучающего средства по криптографии