Типи класичних шифрів
Вступ
Література.
Час – 2 год.
Навчальні питання
1.... Типи класичних шифрів. 1
2.... Шифр Цезаря. 3
3.... Шифр простої заміни. 4
4.... Шифр Віженера. 6
5.... Шифри Вернама, Плейфера, перестановок, машини Хагеліна і "Енігма". 11
1. Тилборг ван Х.К. Основы криптологии. Профессиональное руководство и интерактивный учебник. — М.: Мир, 2006, с. 10 - 19
2. Henk C.A. van Tilborg, FUNDAMENTALS OF CRYPTOLOGY. A Professional Reference and Interactive Tutorial. Eindhoven University of Technology. The Netherlands. KLUWER ACADEMIC PUBLISHERS, Boston/Dordrecht/London.
3. Брюс Шнайер. Прикладная криптография. Протоколы, алгоритмы и исходные тексты на языке С. – М.: Издательство ТРИУМФ, 2003.
До появления компьютеров криптография состояла из алгоритмов на символьной основе. Различные криптографические алгоритмы либо заменяли одни символы другими, либо переставляли символы. Лучшие алгоритмы делали и то, и другое, и по много раз.
Сегодня все значительно сложнее, но философия остается прежней. Первое изменение заключается в том, что алгоритмы стали работать с битами, а не символами. Это важно хотя бы с точки зрения размера алфавита ‑ с 26 элементов до двух. Большинство хороших криптографических алгоритмов до сих пор комбинирует подстановки и перестановки.
Подстановочные шифры
Подстановочным шифромназывается шифр, который каждый символ открытого текста в шифротексте заменяет другим символом. Получатель инвертирует подстановку шифротекста, восстанавливая открытый текст. В классической криптографии существует четыре типа подстановочных шифров.
– Простой подстановочный шифр,или моноалфавитный шифр,- это шифр, который каждый символ открытого текста заменяет соответствующим символом шифротекста.
– Однозвучный подстановочный шифрпохож на простую подстановочную криптосистему за исключением того, что один символ открытого текста отображается на несколько символов шифротекста. Например, "А" может соответствовать 5, 13, 25 или 56, "В" - 7, 19, 31 или 42 и так далее.
– Полиграммный подстановочный шифр- это шифр, который блоки символов шифрует по группам. Например, "ABA" может соответствовать "RTQ", "ABB" может соответствовать "SLL" и так далее.
– Полиалфавитный подстановочный шифрсостоит из нескольких простых подстановочных шифров. Например, могут быть использованы пять различных простых подстановочных фильтров; каждый символ открытого текста заменяется с использованием одного конкретного шифра.
Знаменитый шифр Цезаря,в котором каждый символ открытого текста заменяется символом, находящимся на три позиции правее по модулю 26 ("А" заменяется на "D," "В" - на "Е", ... "W" - на " Z ", "X" - на "А", "Y" - на "В", "Z" - на "С"), представляет собой простой подстановочный фильтр. Он действительно очень прост, так как алфавит шифротекста представляет собой смещенный, а не случайно распределенный алфавит открытого текста.
Простые подстановочные шифры легко раскрываются, так как шифр не прячет частоты использования различных символов в открытом тексте. Чтобы восстановить открытый текст, хорошему криптоаналитику требуется только знать 26 символов английского алфавита.
Однозвучные подстановочные шифры более сложны для вскрытия, чем простые подстановочные шифры, хотя и они не скрывают всех статистических свойств языка открытого текста. При помощи вскрытия с известным открытым текстом эти шифры раскрываются тривиально. Вскрытие с использованием только шифротекста более трудоемко, но и оно занимает на компьютере лишь несколько секунд.
Полиграммные подстановочные шифры - это шифры, которые кодируют сразу группы символов. Шифр Play-fair ("Честная игра"), изобретенный в 1854 году, использовался англичанами в Первой мировой войне. Он шифрует пары символов. Другим примером полиграммного подстановочного шифра является шифр Хилла (Hill). Иногда можно видеть, как вместо шифра используется кодирование по Хаффману (Huffman), это небезопасный полиграммный подстановочный шифр.
Полиалфавитные подстановочные шифры были изобретены Лином Баттистой (Lean Battista) в 1568 году.Они использовались армией Соединенных Штатов в ходе Гражданской войны в Америке. Несмотря на то, что они легко могут быть взломаны (особенно с помощью компьютеров), многие коммерческие продукты компьютерной безопасности используют такие шифры.
У полиалфавитных подстановочных шифров множественные однобуквенные ключи, каждый из которых используется для шифрования одного символа открытого текста. Первым ключом шифруется первый символ открытого текста, вторым ключом - второй символ, и так далее. После использования всех ключей они повторяются циклически. Если применяется 20 однобуквенных ключей, то каждая двадцатая буква шифруется тем же ключом. Этот параметр называется периодомшифра. В классической криптографии шифры с длинным периодом было труднее раскрыть, чем шифры с коротким периодом. Использование компьютеров позволяет легко раскрыть подстановочные шифры с очень длинным периодом.
Шифр с бегущим ключом(иногда называемый книжным шифром), использующий один текст для шифрования другого текста, представляет собой другой пример подобного шифра. И хотя период этого шифра равен длине текста, он также может быть легко взломан.