Читать «Безопасность информационных систем. Учебное пособие» онлайн - страница 90

Дина Алексеевна Погонышева

4. Функция раунда F – чем она сложнее, тем труднее криптоанализ шифра.

5. Алгоритм вычисления промежуточных ключей Ki.

Алгоритм DES

Ранее самым популярным алгоритмом симметричного шифрования являлся DES (Data Encrypting Standart), принятый в 1977 г. Этот алгоритм базируется на структуре шифра Файстеля с размером блока 64 бита и 56-битным ключом. Функция раунда F использует набор из восьми так называемых S-матриц. Каждая матрица состоит из 4 строк, причем каждая строка представляет собой перестановку чисел от 0 до 15 (16 столбцов). Матрицы жестко заданы. Каждая матрица получает на вход шесть бит и выдает четырехбитовый результат. Первый и последний бит входного значения задают строку матрицы, а четыре остальных – столбец. Двоичное представление числа, находящегося на их пересечении, и будет результатом преобразования. Преобразование F заключается в следующем:

1. 32-битовый блок Ri расширяется до 48 битов с помощью специальной таблицы путем дублирования некоторых 16 битов.

2. Полученный результат складывается с 48-битным подключом Ki операцией XOR.

3. Результат сложения разбивается на восемь шестибитовых блоков и каждый из них преобразуется с помощью соответствующей S-матрицы.

4. Получившийся в итоге 32-битный блок подвергается жестко заданной в алгоритме перестановке.

Долгое время DES являлся федеральным стандартом шифрования США. Этот алгоритм показывает хороший лавинный эффект, т. е. изменение одного бита открытого текста или ключа приводит к изменению многих битов зашифрованного текста. DES успешно противостоял многолетним попыткам взлома. Однако длина ключа в 56 битов при возросшей производительности ЭВМ сделала шифр потенциально уязвимым к перебору ключей, поэтому в 1997 г. был объявлен конкурс на новый алгоритм.

Алгоритм AES

Победитель конкурса был определен в 2000 г. – им стал бельгийский шифр RIJNDAEL, который был переименован в AES (Advanced

Encryption Standard). Он является нетрадиционным блочным шифром, поскольку не использует сеть Фейштеля. Каждый блок входных данных представляется в виде двумерного массива байт: 4 × 4, 4 × 6 или 4 × 8 в зависимости от размера блока, который может варьироваться. В зависимости от размера блока и длины ключа алгоритм содержит от 10 до 14 раундов, в каждом из которых проводится ряд преобразований – либо над независимыми столбцами, либо над независимыми строками, либо над отдельными байтами в таблице.

Среди других современных алгоритмов симметричного шифрования шифры IDEA, Blowfish, RC5, CAST-128.

Российский стандарт цифровой подписи

Отечественный стандарт цифровой подписи (ГОСТ Р 34.10–94) вступил в силу в 1995 г. Алгоритм цифровой подписи, определяемый этим стандартом, концептуально близок американскому алгоритму DSA (Digital Signature Algorithm), который был предложен в 1991 г. Национальным институтом стандартов и технологий США для использования в стандарте цифровой подписи DSS (Digital Signature Standard). Алгоритм DSA является развитием алгоритмов цифровой подписи Эль Гамаля и К. Шнорра.