Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОЗІ / Лекц_ї / все / Методы и средства защиты информации, 2003.pdf
Скачиваний:
830
Добавлен:
05.06.2015
Размер:
8.14 Mб
Скачать

362 Глава 18. Криптографическая защита

Усложненный метод перестановки по таблицам заключается в том, что для записи символов шифруемого текста используется специальная таблица, в которую введены некоторые усложняющие элементы. Таблица представляет собой матрицу, размеры которой могут быть выбраны произвольно (например 10 × 10). В нее, как и в случае простой перестановки, записываются знаки шифруемого текста. Усложнение состоит в том, что определенное число клеток таблицы не используется. Количество и расположение неиспользуемых элементов является дополнительным ключом шифрования. Шифруемый текст блоками по m × n – S элементов записывается в таблицу (m × n — размеры таблицы, S — количество неиспользуемых элементов). Далее процедура шифрования аналогична простой перестановке.

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

Усложненный метод перестановок по маршрутам

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

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

Шифрование с помощью аналитических преобразований

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

||aij|| bj = Cj = Σj aijbj

Анализ основных криптографических методов ЗИ 363

Рис. 18.5. Схема шифрования перестановкой по маршрутам Гамильтона. Открытый текст "КРИПТОГР", зашифрованный текст —

"ТОРКИПРГ" (вверху) и "ТКИПРОРГ" (внизу)

Если матрицу ||aij|| использовать в качестве ключа, а вместо компонента вектора bj подставить символы исходного текста, то компоненты вектора Cj будут представлять собой символы зашифрованного текста.

Используем в качестве примера этого метода квадратную матрицу третьего порядка, которая будет играть роль ключа:

14 8 3

8 5 2

3 2 1

Заменим буквы алфавита цифрами, соответствующими их порядковому номеру в алфавите: А = 0; Б = 1; В = 2 и т.д. Тогда тексту ВАТАЛА (текст произвольный) будет соответствовать последовательность 3, 0, 19, 0, 12, 0. По принятому алгоритму шифрования выполним необходимые действия:

14 8 3

3

99

14 8 3

0

96

 

8 5 2 ×

0 = 62 ,

 

8 5 2 × 12 = 60

 

 

 

 

 

 

3 2 1

 

 

0

 

 

 

3 2 1

 

19

28

 

 

 

 

24

Таким образом, зашифрованный текст будет иметь следующий вид:

99, 62, 28, 96, 60, 24

Расшифровывание осуществляется с использованием того же правила умножения матрицы на вектор, только в качестве основы берется матрица, обратная той, с помощью которой осуществляется закрытие, а в качестве вектора-сомножителя — соответствующее количество символов закрытого текста. Значениями вектора-результата будут цифровые эквиваленты знаков открытого текста.

Шифрование методом гаммирования

364 Глава 18. Криптографическая защита

Суть этого метода состоит в том, что символы шифруемого текста последовательно складываются с символами некоторой специальной последовательности, которая называется гаммой. Иногда такой метод представляют как наложение гаммы на исходный текст, поэтому он получил название “гаммирование”.

Процедуру наложения гаммы на исходный текст можно осуществить двумя способами. В первом способе символы исходного текста и гаммы заменяются цифровыми эквивалентами, которые затем складываются по модулю К, где К — количество символов в алфавите, т.е. tc = (tp + tg) mod К, где tc, tp, tg — символы соответственно зашифрованного текста, исходного текста и гаммы.

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

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

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

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

Комбинированные методы шифрования

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

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

Анализ основных криптографических методов ЗИ 365

Стойкость комбинированного шифрования Sk не ниже произведения стойкости используемых способов S: Sk П Si.

Совершенно очевидно, что если какой-либо способ шифрования при независимом его применении может обеспечить стойкость не ниже Sk (например, гаммирование с бесконечной гаммой), то комбинирование этого способа с другими будет целесообразно лишь при выполнении условия ΣRi < R*, где Ri — ресурсоемкость i-го способа, используемого при комбинированномi шифровании; R* — ресурсоемкость того способа, который обеспечивает стойкость не ниже Sk.

Комбинировать можно любые методы шифрования и в любом количестве, однако на практике наибольшее распространение получили следующие комбинации:

подстановка + гаммирование;

перестановка + гаммирование;

гаммирование + гаммирование;

подстановка + перестановка.

Типичным примером комбинированного шифра является национальный стандарт США криптографического закрытия данных (DES).

Кодирование

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

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

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

При смысловом кодировании основной кодируемой единицы является смысловой элемент текста. Для кодирования составляется специальная таблица кодов, содержащая перечень кодируемых элементов и соответствующих им кодов.