Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
pszi_otvety_dlya_ekzamena-2.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.47 Mб
Скачать
  1. Сравнение алгоритмов гост и des.

  1. Алгоритм шифрования aes: общий алгоритм.

AES (Rijndael) представляет собой итеративный блочный шифр, имеющий переменную длину блоков и различные длины ключей. Длина ключа и длина блока могут быть независимо друг от друга 128, 192 или 256 бит (стандарт AES использует длину блока только 128 бит).

  1. Алгоритм шифрования aes: преобразование замена байт (SubBytes).

Блоки замен в шифре AES играют важную роль. Согласно основополагающим принципам, сформулированным еще К. Шенноном, преобразования данных, используемые в шифре, должны придавать последнему два основных свойства – рассеивание и перемешивание. Преобразование SubBytes представляет собой нелинейную замену байт, выполняемую независимо с каждым байтом состояния. Таблицы замены (или S-блоки) являются инвертируемыми и построены из композиции двух преобразований.

Важно отметить, что процедура действует на каждый байт состояния.

  1. Алгоритм шифрования aes: преобразования сдвига строк (ShiftRows) и добавление раундового ключа (AddRoundKey).

  1. Алгоритм шифрования aes: преобразование замешивания столбцов (MixColumns).

Правила умножения: если умножаем элемент на 01 - оставляем его без изменений.

Если на 02 - смотрим, если элемент >= (80)16, то умножаем его на 2 и XOR с 11B, чтобы избежать переполнения. Иначе, если <80, просто умножаем элемент на 2.

Если на 03 - раскладываем умножение на две части. В первой части умножаем на 02 (смотри умножение на 02), а потом обязательно XOR с этим же самым числом. Т.е., FF*03 = (FF*02) XOR (FF).

  1. Алгоритм шифрования aes: алгоритм выработки ключей (Key Schedule).

Цикловые ключи получаются из ключа шифрования посредством алгоритма выработки ключей. Он содержит два компонента: расширение ключа (Key Expansion) и выбор циклового ключа (Round Key Selection). Основополагающие принципы алгоритма выглядят следующим образом:

1. Общее число бит цикловых ключей равно длине блока, умноженной на число циклов плюс 1 (например, для длины блока 128 бит и 10 циклов требуется 1408 бит циклового ключа).

2. Ключ шифрования расширяется в расширенный ключ (Expanded Key).

3. Цикловые ключи берутся из расширенного ключа следующим образом: первый цикловой ключ содержит первые Nb слов, второй – следующие Nb слов, и т.д.

  1. Вычисления в поле Галуа.

Поле Галуа есть поле разложения всякого неприводимого многочлена степени над полем .

Арифметика поля Галуа широко используется в криптографии. Данное поле содержит только числа конечного размера, при делении отсутствуют ошибки округления. Многие криптосистемы основаны на , где – большое простое число.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]