ПОЛИАЛФАВИТНАЯ ЗАМЕНА.

 

Для повышения стойкости шифра используют ПОЛИАЛФАВИТНЫЕ ПОДСТАНОВКИ, в которых для замены символов исходного текста используются символы нескольких алфавитов (наборов).

 

3.9.1. ШИФР ВИЖИНЕРА

 

ТАБЛИЦА ВИЖИНЕРА представляет собой квадратную матрицу с n2 элементами, где n число символов используемого алфавита (приложение № 28.). Каждая строка получена циклическим сдвигом алфавита на 1 символ.

В отличие от приложения № 24 , где только 2 варианта ключа, таблица вижинера имеет 31 ключ (алфавит, набор): ключ «Б» - вторая строка (со сдвигом на один знак), начинающаяся с буквы «Б»; ключ «В» - третья строка, начинающаяся с буквы «В», сдвинута относительно первой строки на две буквы и т. д. до ключа «Я» (алфавит сдвинут на 31 символ). Ключ «А» - верхняя строка – алфавит открытого текста, сдвиг равен нулю. Каждая отдельная строка Таблицы Вижинера представляет собой шифр Ю. Цезаря со своим вариантом ключа (с различным сдвигом алфавита).

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

С помощью таблицы Вижинера можно передавать сообщение каждому адресату в своем ключе (адресату «Б» - в ключе «Б», адресату «В» - в ключе «В» и т. д.) или менять ключ по временному графику, например, сегодня работаем в ключе «Б», завтра - в ключе «В» и т.д.

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

 

При МНОГОАЛФАВИТНОЙ ОДНОКОНТУРНОЙ ОБЫКНОВЕННОЙ подстановке смена aлфавитов осуществляется последовательно и циклически, т. е. первый символ открытого текста заменяется соответствующим символом первого алфавита, второй - символом второго алфавита и т. д. до тех пор, пока ни будут использованы все выбранные алфавиты. После этого использование алфавитов повторяется.

Аналогом этому является таблица Вижинера. Для шифрования выбирается буквенный ключ, например, «ХВАЛЫНСК». Из полной таблицы выбираются первая строка (алфавит открытого текста) и те строки, первые буквы которых соответствуют буквам ключа ( в порядке следования этих букв в ключе).

Процесс шифрования осуществляется следующим образом. Например, требуется зашифровать текст: «ЧЕРЕЗ ЭТИ ШТУКОВИНЫ ВСЁ, ЧТО ПЕЧАТАЛОСЬ В ПОСОЛЬСТВЕ, ПЕРЕДАВАЛОСЬ ПОДСЛУШИВАЮЩЕМУ ПОСТУ КГБ В ДОМЕ НАПРОТИВ».

При необходимости знаки препинания и цифры писать прописью (словами): ТЧК (точка), ЗПТ (запятая), ВОПР ЗНАК (вопросительный знак) … Под каждой буквой шифруемого текста записываются буквы ключа. Ключ повторяется необходимое число раз. Получаем:

 

ЧЕ Р Е З ЭТИ ШТУКОВИНЫ ВСЁ, ЧТО ПЕЧАТА…

 

ХВАЛЫ НСК XBAЛЫHCKX ВАЛ ЫНС КХВАЛЫ…

 

Каждая буква шифруемого текста заменяется буквами, находящимися на пересечении линий, соединяющих буквы шифруемого текста в первой строке и находящихся под ними букв ключа. Берем первую букву открытого текста (Ч) и соответствующую ей букву ключа (Х). По букве шифруемого текста (Ч) выбираем под нею букву, расположенную в строке соответствующей букве ключа (Х) - в нашем примере такой буквой является «М». Вторая буква исходного текста - «Е». Ей соответствует буква ключа - «В». Под буквой «Е» (в первой строке) в строке, начинающейся с буквы «В», расположена буква «З», и т.д. Получим:

ОТ- Ч Е Р Е З Э Т И Ш Т У К О В И Н Ы В С Ё …

К - Х В А Л Ы Н С К Х В А Л Ы Н С К Х В А Л …

ШТ - М З Р Р В К Г Т Н Ф У Х Й П Щ Ч Р Д С Р …

 

ОТ - открытый текст, К - ключ, ШТ - шифрованный текст.

Чтобы нарушить группировку по словам (по смыслу), полученный шифрованный текст может разбиваться на группы по несколько знаков: МЗРРВ КГТНФ УХЙПЩ ЧРДСР ТЯЯЩЪ ЩАЭЫШ … или записываться подряд без пробелов.

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

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

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

Для обеспечения гарантированной стойкости многоалфавитного шифра необходимо использовать перетасованные алфавиты (наборы), т.е. последовательности символов расположенные хаотично, а не в алфавитной очерёдности.

 

ПОЛИАЛФАВИТНАЯ МНОГОКОНТУРНАЯ замена заключается в том, что для шифрования используются несколько наборов (контуров) алфавитов используемых циклически, причем каждый контур имеет свой индивидуальный период применения. Этот период исчисляется количеством знаков, после зашифровки которых меняется контур алфавитов. Частным случаем многоконтурной полиалфавитной подстановки является замена по таблице Вижинера, если для шифрования используется несколько ключей, каждый из которых имеет свой период применения.