Моноалфавитные подстановки
Скачать 73.5 Kb.
|
РАБОТА 1. МОНОАЛФАВИТНЫЕ ПОДСТАНОВКИ.
Шифр моноалфавитной подстановки. Шифр моноалфавитной подстановки - это один из самых древних шифров на Земле. Частным случаем этого шифра для шифровки секретных сообщений пользовался еще Гай Юлий Цезарь. Первая лабораторная работа посвящена изучению моноалфавитных подстановок и их криптоанализа. Рассмотрим, как используют этот шифр. Прежде всего выбирается нормативный алфавит, т.е. набор символов, которые будут использоваться при составлении сообщений, требующих зашифровки. Допустим, это будут прописные буквы руского алфавита (исключая буквы “Ё” и “Ъ”) и пробел. Таким образом, наш нормативный алфавит состоит из 32 символов. Затем выбирается алфавит шифрования и устанавливается взаимно однозначное соответствие между символами нормативного алфавита и символами алфавита шифрования. Алфавит шифрования может состоять из произвольных символов, в том числе и из символов нормативного алфавита. Чтобы зашифровать исходное сообщение, каждый символ открытого текста заменяется на соответствующий ему символ алфавита шифрования. Таблица 1.1
Зашифруем, например, слово “звезда”. Если использовать алфавиты, приведенные в таблице 1.1, то получится следующее :
Метод моноалфавитной подстановки можно представить как числовые преобразования символов исходного текста. Для этого каждой букве нормативного алфавита ставится в соответствие некоторое число, называемое числовым эквивалентом этой буквы. Например, для букв русского алфавита и пробела это выглядит так : Таблица 1.2
Таблица 1.2 ( продолжение ).
Моноалфавитные подстановки можно описать выражением : Ei = ( Mi + Si ) mod L , где ( 1.1 ) Ei , Mi - числовые эквиваленты символов алфавита шифрования и нормативного алфавита соответственно, Si - коэффициент сдвига, L - мощность алфавита. Шифр Цезаря. Простейшим примером моноалфавитных подстановок является шифр Цезаря. В этом шифре каждый символ открытого текста заменяется третьим после него символом в алфавите, замкнутом в кольцо, т.е. после пробела следует буква “А”. Таким образом, шифр Цезаря описывается так : Ei = ( Mi + S ) mod L , где ( 1.2 ) S - коэффициент сдвига, одинаковый для всех символов. Цезарь использовал величину сдвига S=3, но, конечно, можно использовать любое целое S : 1 S (L-1). Зашифруем, например, текст “ШИФР_ЦЕЗАРЯ” , использовав коэффициент сдвига S = 2.
Частотный анализ. Все естественные языки имеют характерное частотное распределение символов. Например, буква “О” - встречается в русском языке чаще других, а буква “Ф” - самая редкая (см. Таблицу 1.3 ). Моноалфавитные подстановки обладают важным свойством : они не нарушают частот появления символов, характерных для данного языка. Это позволяет криптоаналитику легко получить открытый текст при помощи частотного анализа. Для этого нужно сопоставить частоты появления символов шифра с вероятностями появления букв используемого алфавита ( в данном случае русского ). После этого наиболее частые символы криптограммы заменяются на наиболее вероятные символы алфавита, остальные замены производятся на основе вероятных слов и знания синтаксических правил используемого языка. Таблица 1.3 Вероятности встречаемости букв русского языка
Для отчета необходимо представить номер Вашего варианта; расшифрованный исходный текст; ключ ( в данном случае ключом является таблица замен ); краткий протокол криптоанализа (см. Приложение 1 ) |