Метод подстановки (замены)

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

Шифр Цезаря.Самым основным и обычным методом подстановки является шифр Цезаря (шифр простой замены), который заключается в следующих действиях над словами:

1. Задается алфавит сообщения (т.е множество символов составляющих сообщение).

2. Задается ключ - некоторое число N.

3. Каждая буква в слове меняется на отстоящую от нее на N позиций вправо. Если сумма “номера символа по порядку” и N превышает размер алфавита, то отсчет производят от начала алфавита иначе берётся остаток от деления на число букв N в алфавите (mod).

Возьмём алфавит русского языка и пронумеруем каждый символ алфавита.

Получим следующую таблицу:

А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф
 
Х Ц Ч Ш Щ Ь Ы Ъ Э Ю Я  
                                                                 

 

Допустим что необходимо зашифровать слово ПЛОЩАДЬ с ключом равным N = 5. Номер буквы «П» в нашем алфавите 17, значит необходимо к 17 прибавить 5 и получим символ, стоящий под номером 17+5=22 (“Ф”). Для буквы “Ъ” это будет выглядеть как (29+5) mod 33 = 1.

Результат шифрования будет выглядеть следующим образом:

«ПЛОЩАДЬ»

П(17) + 5 = 22 (Ф)

Л(13) + 5 = 18 (Р)

О(16) + 5 = 21 (Т)

Щ(28) +5 = 33 (Я)

А(1) + 5 = 6 (Е)

Д(5) + 5 = 10 (И)

Ь(29) + 5 = 34 mod 33 = 1 (А)

«ФРТЯЕИА»

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

Шифр Вижинера. Этот шифр удобнее всего представлять себе как шифр Цезаря с переменной величиной сдвига. Чтобы знать, на сколько сдвигать очередную букву открытого текста, заранее договариваются о способе запоминания сдвигов. Сам Вижинер предлагал запоминать ключевое слово, каждая буква которого своим номером в алфавите указывает величину сдвига. Ключевое слово повторяется столько раз, сколько нужно для замены всех букв открытого текста. Например, ключевое слово ВАЗА означает следующую последовательность сдвигов букв открытого текста 2 0 7 0 2 0 7 0 2 0 7 0. Например, открытый текст КРИПТОГРАФИЯ при таком способе шифрования преобразуется в шифртекст МРППФОКРВФПЯ.

 








Дата добавления: 2016-03-22; просмотров: 561;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.