Здавалка
Главная | Обратная связь

Симметричная криптосистема



Симметри́чные криптосисте́мы — способ шифрования, в котором для шифрования и расшифровывания применяется один и тот же криптографический ключ. Ключ алгоритма должен сохраняться в секрете обеими сторонами. Алгоритм шифрования выбирается сторонами до начала обмена сообщениями.

В настоящее время симметричные шифры — это:

§ блочные шифры. Обрабатывают информацию блоками определённой длины (обычно 64, 128 бит), применяя к блоку ключ в установленном порядке, как правило, несколькими циклами перемешивания и подстановки, называемыми раундами. Результатом повторения раундов является лавинный эффект — нарастающая потеря соответствия битов между блоками открытых и зашифрованных данных.

§ поточные шифры, в которых шифрование проводится над каждым битом либо байтом исходного (открытого) текста с использованием гаммирования. Поточный шифр может быть легко создан на основе блочного (например, ГОСТ 28147-89 в режиме гаммирования), запущенного в специальном режиме.

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

Типичным способом построения алгоритмов симметричного шифрования является сеть Фейстеля. Алгоритм строит схему шифрования на основе функции F(D, K), где D — порция данных, размером вдвое меньше блока шифрования, а K — «ключ прохода» для данного прохода. От функции не требуется обратимость — обратная ей функция может быть неизвестна. Достоинства сети Фейстеля — почти полное совпадение дешифровки с шифрованием (единственное отличие — обратный порядок «ключей прохода» в расписании), что сильно облегчает аппаратную реализацию.

Операция перестановки перемешивает биты сообщения по некоему закону. В аппаратных реализациях она тривиально реализуется как перепутывание проводников. Именно операции перестановки дают возможность достижения «эффекта лавины».

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

Виды симметричных шифров:

1. DES - алгоритм

В 1973 году Национальное Бюро Стандартов США начало работы по созданию стандарта шифрования данных на ЭВМ. Был объявлен конкурс, который выиграла фирма IBM, представившая алгоритм шифрования, сейчас

известный как DES-алгоритм (Data Encryption Standard).

Рассмотрим работу DES-алгоритма в простейшем (базовом) режиме ЕСВ - электронной кодовой книги. Алгоритм работы показан на рисунке 1.5.

Входные 64-битовые векторы, называемые блоками открытого текста, преобразуются в выходные 64-битовые векторы, называемые блоками шифртекста, с помощью 56-битового ключа К (число различных ключей равно 256=7*106)

Алгоритм реализуется в 16 аналогичных циклах шифрования, где в i-ом цикле используется цикловой ключ Ki, предоставляющий собой выборку 48 битов из 56 битов ключа К.

 
 

 

 


 

 

… … …

 

 

Рис. 1.5. Схема шифрования алгоритма DES

Режим электронной кодовой книги (ЕСВ) используется в основном для шифрования коротких сообщений служебного содержания - паролей, ключей и т.п. Наиболее общий режим - режим сцепления блоков (СВС), (Cifer Block Chaining) схема которого показана на рисунке 1.7. Здесь каждый входной блок зависит от всех предыдущих. Начальный вектор bo (случайный начальный вектор) вырабатывается для каждого сообщения и может передаваться в линию связи, как в открытом, так и в шифрованном виде, что препятствует атакам на шифротекст, основанным на наличии стандартов в начале сообщения.

 
 

 

 


Рис. 1.7. Реализация DES-алгоритма в режиме сцепления блоков

DES алгоритм является первым примером широкого производства и внедрения технических средств в область защиты информации. К настоящему времени выпускается несколько десятков устройств аппаратно - программной реализации DES-алгоритма. Достигнута высокая скорость шифрования. По некоторым сообщениям, в одном из устройств на основе специализированной микросхемы она составляет около 45 Мбит/сек.

Основные области применения DES-алгоритма:

- хранение данных в ЭВМ (шифрование файлов, паролей);

- электронная система платежей (между клиентом и банком);

- электронный обмен коммерческой информацией (между покупателем и продавцом).

 

2. Российский стандарт шифрования

В 1989 году был разработан блочный шифр для использования в качестве государственного стандарта шифрования (зарегистрирован как ГОСТ 28147-89). В основном алгоритм применяется в банковской системе, судя по публикациям – несколько медлителен, но обладает весьма высокой стойкостью.

Его общая схема близка к схеме DES-алгоритма, лишь отсутствует на­чальная перестановка и число циклов шифрования равно 32 (вместо 16 в DES-ал­го­ритме). Ключом считается набор из 8 элементарных 32-битовых ключей X1, X2,...,X8(общее число ключей 2256). В циклах шифрования трижды исполь­зуется прямая последовательность элементарных ключей и один раз - обратная: X8, X7,...,X1.

ГОСТ 28147-89, предусматривает различные режимы использования и только базовый (режим простой замены) совпадает, по сути, с базовым режимом DES-алгоритма, остальные - в той или иной мере отличаются.

Известна специальная реализация алгоритма шифрования ГОСТ 28147-89 аппаратная плата шифрования данных «Криптон-3» для IBM PC, ее производительность - 50 Кбит/сек.

 

3. Шифр гаммирования

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

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

Можно сформулировать 3 основных требования к криптографически стойкому генератору псевдослучайной последовательности или гаммы:

1. Период гаммы должен быть достаточно большим для шифрования сообщений различной длины.

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

3. Генерирование гаммы не должно быть связано с большими техническими и организационными трудностями.

 







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.