
- •Современные симметричные криптосистемы
- •Стандарт шифрования данных (des)
- •Общая характеристика шифра
- •Общая схема процесса шифрования des
- •Надежность des
- •Структура раунда des
- •Применение s-матриц вDes
- •Вычисление подключей в des
- •Отечественный стандарт шифрования данных
- •Общая характеристика шифра
- •Процедура шифрования данных
- •Режимы работы блочных шифров
- •Общая характеристика режимов
- •Режим электронной шифровальной книги
- •Режим сцепления шифрованных блоков
- •Режим шифрованной обратной связи
- •Режим обратной связи по выходу
- •Характеристики современных симметричных блочных шифров
- •Развитие схемы Файстеля и des
Современные симметричные криптосистемы
Стандарт шифрования данных (des)
Общая характеристика шифра
Самая популярная современная схема шифрования базируется на стандарте DES (Data Encryption Standard — стандарт шифрования данных), принятом в 1977 году Национальным бюро стандартов (NBS) США, теперь называемым Национальным институтом стандартов и технологии (NIST).
В соответствии с этим стандартом данные шифруются 64-битовыми блоками с использованием 56-битового ключа. Многошаговый алгоритм преобразует поступающие на вход 64-битовые блоки в 64-битовые блоки шифрованного текста. Тот же алгоритм с тем же ключом служит для обратного преобразования шифрованного текста в открытый.
Общая схема процесса шифрования des
Общая схема процесса шифрования DES показана на рис. 3.7. Как и в случае любой схемы шифрования, здесь на вход функции шифрования подается два типа данных — открытый текст, который требуется зашифровать, и ключ. В данном случае длина открытого текста предполагается равной 64 битам, а длина ключа — 56 битам. (На самом деле функция требует ввода 64-битового ключа, но в качестве ключа шифрования используется только 56 битов. Остальные 8 битов могут быть битами четности или вообще какими-то произвольными.)
Рис. 1.
Процесс преобразования открытого текста состоит из трех этапов. Сначала 64-битовый блок открытого текста поступает для обработки на вход начальной перестановки (IP), в результате чего получаются переставленные входные данные. Затем следует этап, состоящий из 16 раундов применения одной и той же функции, в которой используются как операции перестановки, так и подстановки. На выходе последнего (16-го) раунда получаются 64-битовая последовательность, являющаяся некоторой функцией открытого текста и ключа. Левая и правая половины полученной последовательности данных меняются местами, образуя предрезультат (preoutput). Наконец, этот предрезультат проходит через перестановку IP-1, обратную начальной, в результате чего получается 64-битовый блок шифрованного текста. Если исключить начальную и конечную перестановки, структура DES окажется идентичной структуре шифра Файстеля.
Подключи генерируются следующим образом. Сначала к ключу тоже применяется функция перестановки. Затем с помощью циклического сдвига влево и некоторой перестановки из полученного результата для каждого из 16 раундов генерируется подключ (Кi). Функция перестановки одна и та же для всех раундов, но генерируемые подключи оказываются разными из-за того, что в результате циклического сдвига на ее вход поступают разные биты ключа.
Надежность des
По длине ключа.
По исследованию Винера (1993 г) разработанная им архитектура ЭВМ позволит осуществить перебор ключей для DES за следующее время:
$100000 – 35 час
$1000000 – 3,5 час
$10000000 – 21 мин
В 1997 Винер уменьшил соотношение время/стоимость в 6 раз. Успешный взлом DES был зафиксирован в ходе реализации конкурса RSA Labs в 1997 году за 96 дней (internet-проект).
Противопоставить попыткам взлома DES с помощью перебора ключей можно затруднение распознания открытого текста.
По внутренней структуре
Существует теоретическая возможность для криптоаналитика использовать внутреннюю структуру DES, в частности S-матрицы. Это связано с тем, что критерии, по которым были сформированы эти матрицы, не публиковались. Практически же недостатки алгоритма в этом направлении найдены не были.