Абвгдежзийклмнопрстуфхцчшщьыэюя
Затверджено
Начальник кафедри
полковник міліції
В.В. Тулупов
___________________________
«____»____________ 201__ р.
ЛАБОРАТОРНА РОБОТА № 1
Дисципліна: Основи криптографії
Тема: Класичні шифри
Мета: розробити комп’ютерну програму з реалізацією класичних шифрів
Автор: Манжай О.В.
Час: 4 год.
Обговорено
на засіданні кафедри
“____”__________201_ р.
Протокол №___________
Харків 2012
Классические криптографические системы
Шифр Цезаря
У I ст. н.е. Ю.Цезарь во время войны с галлами, переписываясь со своими друзьями в Риме, заменял в сообщении первую букву латинского алфавита (А) на четвертую (D), вторую (B) - на пятую (E), наконец последнюю - на третью:
ABCDEFGHIJKLMNOPQRSTUVWXYZ YHQL YLGL YLFL
DEFGHIJKLMNOPQRSTUVWXYZABC Veni vidi vici -“Пришел, увидел,
победил”
Ю.Цезарь Донесение Сенату о победе над понтийским царем
Вот что об этом сообщает Гай Светоний: "Существуют и его письма к Цицерону и письма к близким о домашних делах: в них, если нужно было сообщить что-нибудь негласно, он пользовался тайнописью, то есть менял буквы так, чтобы из них не складывалось ни одного слова. Чтобы разобрать и прочитать их, нужно читать всякий раз четвертую букву вместо первой, например, D вместо А и так далее".
С современной точки зрения, в шифре Цезаря каждая буква замещается на букву, находящуюся k символами правее по модулю равному количеству букв в алфавите.
Ck(j)=(j+k)(mod n), (1.1)
где n — количество букв в алфавите (мощность алфавита).
Очевидно, что обратной подстановкой является
Ck-1(j)=Сn-k=(j+n-k)(mod n) (1.2)
Шифр Цезаря с ключевым словом
В данной разновидности шифра Цезаря ключ задается числом k(0<=k<=n-1) и коротким ключевым словом или предложением. Выписывается алфавит, а под ним, начиная с k-й позиции, ключевое слово. Оставшиеся буквы записываются в алфавитном порядке после ключевого слова. В итоге мы получаем подстановку для каждой буквы. Требование, чтобы все буквы ключевого слова были различными не обязательно — можно записывать ключевое слово без повторения одинаковых букв.
Исходное сообщение: РИМ
Шифротекст: ЗЧГ
Аффинная криптосистема
Обобщением системы Цезаря является аффинная криптосистема. Она определяется двум числами a и b, где 0<=a,b<=n-1 и n —является мощностью алфавита. Числа a и n должны быть взаимно простыми.
Соответствующими заменами являются:
Aa,b(j)=(a*j+b)(mod n), (1.3)
A-1a,b(j)=(j-b)*a-1(mod n) (1.4)
Обратную замену также можно получить, просто поменяв местами строки в таблице замен.
Взаимная простота a и n необходима для однозначности отображения, в противном случае возможны отображения различных символов в один и неоднозначность дешифрирования.
Квадрат Полибия
Система Цезаря не является старейшей. Возможно, что наиболее древней из известных является система греческого историка Полибия, умершего за 30 лет до рождения Цезаря. В Древней Греции (II в. до н.э.) был известен шифр, называемый “квадрат Полибия”[1] . Это устройство представляло собой квадрат 5*5, столбцы и строки которого нумеровали цифрами от 1 до 5. В каждую клетку записывалась одна буква (в греческом варианте одна клетка оказывалась пустой, а в латинском - в одну клетку помещали две буквы I,J). В результате каждой букве отвечала пара чисел по номеру строки и столбца.
A B C D E 13 34 22 24 44 34 15 42 22 34 43 45 32
F G H I,J K
L M N O P Cogito ergo sum -лат. “Я мыслю, следовательно, существую”
Q R S T UР.Декарт
V W X Y Z
Решетка Кардано
Широко известны шифры, принадлежащие к классу “перестановка”, в частности “решетка Кардано”2. Это прямоугольная карточка с отверстиями, чаще всего квадратная, которая при наложении на лист бумаги оставляет открытими лишь некоторые его части. Число строк и столбцов на карточке четно. Карточка сделана так, что при последовательном ее поворачивании каждая клетка лежащего под ней листа окажется занятой. Карточку поворачивают сначала вдоль вертикальной оси симметрии на 180°, а затем вдоль горизонтально оси также на 180°. И вновь повторяют ту же процедуру.
Таблица Виженера
Неудобство рассмотренных выше шрифтов очевидно, т.к. в случае использования стандартного алфавита таблица частот встречаемости букв алфавита позволяет определить один или несколько символов, а этого иногда достаточно для вскрытия шифра (“Плящущие человечки” Конан Дойля или “Золотой жук ” Эдгара По). Поэтому использовались различные приемы для того чтобы затруднить дешифрование, например использование “таблицы Виженера”, которая представляет собой квадратную таблицу с числом строк и столбцов равным количеству букв алфавита. Чтобы зашифровать какое-либо сообщение выбирают слово - лозунг (например, “монастырь”) и надписывают его над сообщением с необходимым повторением.
Чтобы получить шифрованный текст, находят очередной знак лозунга, начиная с первого в вертикальном алфавите, а ему соответствующий знак сообщения в горизонтальном алфавите. На пересечении выделенных столбца и строки находим первую букву шифра. Очевидно, что ключом к такому шифру является используемый лозунг.
Лозунг: м о н а с т ы р ь м о н а с т ы р ь м о н
Исходный текст: р а с к и н у л о с ь м о р е ш и р о к о
Шифротекст:э о я к щ а п ы й ю й щ о в ч ф ш л ь ш ы
Таблица Виженера3
АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЭЮЯ