Методы шифрования с симметричным ключом

Методы замены

Сущность методов замены (подстановки) заключается в заме-

не символов исходной информации, записанных в одном алфави-

те, символами из другого алфавита по определенному правилу

. Самым простым является метод прямой замены. Символам

So; исходного алфавита Ао, с помощью которых записывается ис-

ходная информация, однозначно ставятся в соответствие символы

Su шифрующего алфавита Аь В простейшем случае оба алфавита

могут состоять из одного и того же набора символов. Например,

оба алфавита могут содержать буквы русского алфавита.

Задание соответствия между символами обоих алфавитов

осуществляется с помощью преобразования числовых эквивален-

тов символов исходного текста То, длиной - К символов, по опре-

деленному алгоритму.

Алгоритм моноалфавитной замены может быть представлен в

виде последовательности шагов.

Шаг 1. Формирование числового кортежа Lot, путем замены

каждого символа s^ е То (i=l,K), представленного в исходном ал-

фавите Ао размера [lxR], на число hoi(soi), соответствующее по-

рядковому номеру символа soi в алфавите Ао.

Шаг 2. Формирование числового кортежа Lih путем замены

каждого числа кортежа Loh на соответствующее число hn кортежа

Lih, вычисляемое по формуле:

hu = (k,xhoi(soi)+k2)(mod R),

где ki - десятичный коэффициент; k2 - коэффициент сдвига. Вы-

бранные коэффициенты ki, k2 должны обеспечивать однозначное

соответствие чисел ho, и hi,, а при получении hi, = 0 выполнить

замену hi, = R.

Шаг 3. Получение шифртекста Ti путем замены каждого числа

h],(si,) кортежа L]h соответствующим символом Si, e Ti (i=l,K)

алфавита шифрования А] размера [1XR].

Шаг 4. Полученный шифртекст разбивается на блоки фикси-

рованной длины Ь. Если последний блок оказывается неполным,

то в конец блока помещаются специальные символы-заполнители

Матрица Вижинера

Шифрование осуществляется с помощью ключа, состоящего

из М неповторяющихся символов. Из полной матрицы Вижинера

I

выделяется матрица шифрования Тш, размерностью [(M+1),R].

Она включает первую строку и строки, первые элементы которых

совпадают с символами ключа. Если в качестве ключа выбрано

слово <ЗОНД>, то матрица шифрования содержит пять строк

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

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

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

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

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

Алгоритм зашифрования с помощью таблицы Вижинера пред-

ставляет собой следующую последовательность шагов.

Шаг 1. Выбор ключа К длиной М символов.

Шаг 2. Построение матрицы шифрования Тш=(Ьу) размерно-

стью [(M+1),R] для выбранного ключа К.

Шаг 3. Под каждым символом s^ исходного текста длиной I

символов размещается символ ключа km (рис. 20). Ключ повторя-

ется необходимое число раз.

Шаг 4. Символы исходного текста последовательно замеща-

ются символами, выбираемыми из Тш по следующему правилу:

1) определяется символ km ключа К, соответствующий заме-

щаемому символу sor;

2) находится строка i в Тш, для которой выполняется усло-

вие кт=Ьп;

3) определяется столбец j, для которого выполняется условие:

4) символ sor замещается символом Ь^.

Шаг 5. Полученная зашифрованная последовательность раз-

бивается на блоки определенной длины, например, по четыре

символа. Последний блок дополняется, при необходимости, слу-

жебными символами до полного объема.

 

Методы перестановки

Суть методов перестановки заключается в разделении исход-

ного текста на блоки фиксированной длины и последующей пере-

становке символов внутри каждого блока по определенному алго-

ритму[56].

Перестановки получаются за счет разницы путей записи ис-

ходной информации и путей считывания зашифрованной инфор-

мации в пределах геометрической фигуры. Примером простейшей

перестановки является запись блока исходной информации в мат-

рицу по строкам, а считывание - по столбцам. Последователь-

ность заполнения строк матрицы и считывания зашифрованной

информации по столбцам может задаваться ключом. Криптостой-

кость метода зависит от длины блока (размерности матрицы). Так

для блока длиной 64 символа (размерность матрицы 8x8) возмож-

ны 1,6хЮ9 комбинаций ключа. Для блока длиной 256 символов

(матрица размерностью 16x16) число возможных ключей достига-

ет 1,4х1026. Решение задачи перебора ключей в последнем случае

даже для современных ЭВМ представляет существенную слож-

ность.

Перестановки используются также в методе, основанном на

применении маршрутов Гамильтона. Этот метод реализуется пу-

тем выполнения следующих шагов.

Шаг 1. Исходная информация разбивается на блоки. Если

длина шифруемой информации не кратна длине блока, то на сво-

бодные места последнего блока помещаются специальные слу-

жебные символы-заполнители (например, *).

Шаг 2. Символами блока заполняется таблица, в которой для

каждого порядкового номера символа в блоке отводится вполне

определенное место (рис. 19).

Шаг 3. Считывание символов из таблицы осуществляется по

одному из маршрутов. Увеличение числа маршрутов повышает

криптостойкость шифра. Маршруты выбираются либо последова-

тельно, либо их очередность задается ключом К.

Шаг 4. Зашифрованная последовательность символов разбива-

ется на блоки фиксированной длины L. Величина L может отли-

чаться от длины блоков, на которые разбивается исходная инфор-

мация на шаге 1.