Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсовая стеган.docx
Скачиваний:
3
Добавлен:
06.09.2019
Размер:
194.61 Кб
Скачать

5. Алгоритм обработки ключа

Алгоритм обработки ключа состоит из двух процедур:

  • Алгоритм расширения ключа

  • Алгоритм выбора раундового ключа (ключа итерации)

5.1. Алгоритм расширения ключа

AES алгоритм, используя процедуру KeyExpansion() и подавая в неё Cipher Key, K, получает ключи для всех раундов. Всего она получает Nb*(Nr + 1) слов: изначально для алгоритма требуется набор из Nb слов, и каждому из Nr раундов требуется Nb ключевых набора данных. Полученный массив ключей для раундов обозначается как, . Алгоритм KeyExpansion() показан в псевдо коде ниже.

Функция SubWord() берет четырёхбайтовое входное слово и применяет S-box к каждому из четырёх байтов то, что получилось подается на выход. На вход RotWord() подается слово [a0, a1, a2, a3] которое она циклически переставляет и возвращает [a1, a2, a3, a0]. Массив слов, слов постоянный для данного раунда, , содержит значения [xi − 1,00,00,00], где x = {02}, а xi − 1 является степенью x в (i начинается с 1).

Из рисунка можно увидеть, что первые Nk слов расширенного ключа заполненны Cipher Key. В каждое последующее слово, w[i], кладётся значение полученное при операции XOR w [i − 1] и , те XOR’а предыдущего и на Nk позиций раньше слов. Для слов, позиция которых кратна Nk, перед XOR’ом к w [i-1] применяется трасформация, за которой следует XOR с константой раунда Rcon[i]. Указанная выше трансформация состоит из циклического сдвига байтов в слове (RotWord()), за которой следует процедура SubWord() – то же самое, что и SubBytes(), только входные и выходные данные будут размером в слово.

Важно заметить, что процедура KeyExpansion() для 256 битного Cipher Key немного отличается от тех, которые применяются для 128 и 192 битных шифроключей. Если Nk = 8 и i − 4 кратно Nk, то SubWord() применяется к w [i − 1] до XOR’а.

KeyExpansion (byte key [4*Nk], word w [Nb*(Nr+1)], Nk)

5.2. Алгоритм выбора раундового ключа

На каждой итерации i раундовый ключ для операции AddRoundKey выбирается из массива начиная с элемента до .

  1. Заключение

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

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

  1. Список использованной литературы

  1. Религии мира. Справочник. – Пер. с англ.: М.: Белфаксиздатгрупп, 1994.

  2. Панасенко С.П. Алгоритмы шифрования. Специальный справочник. – СПб.: БХВ-Петербург, 2009.

  3. Технические средства и методы защиты информации. Учебное пособие для вузов /А.П. Зайцев, А.А. Шелупанов, Р.В. Мещеряков и др.; под ред. А.П. Зайцева и А.А. Шелупанова. – 4-е изд., испр. И доп. – М., 2009.

  4. Прикладная криптография. Брюс Шнайер, 2-е издание

15