Помощь в написании студенческих работ
Антистрессовый сервис

Обзор алгоритмов. 
Алгоритм AES

РефератПомощь в написанииУзнать стоимостьмоей работы

Twofish является сетью Фейштеля с 16 раундами. Сеть Фейштеля не-значительно модифицирована с использованием однобитных ротаций. Функция раунда влияет на 32-битные слова, используя четыре зависящих от ключа S-box, за которыми следуют фиксированные максимально удаленные отдельные матрицы в GF (28), преобразование псевдо-Адамара и добавление ключа. Twofish был предложен BruceSchneier, JohnKelsey… Читать ещё >

Обзор алгоритмов. Алгоритм AES (реферат, курсовая, диплом, контрольная)

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

Первое и последнее преобразования могут отличаться от преобразования остальных раундов. Такие операции, используемые на начальном шаге первого раунда и заключительном шаге последнего раунда, называются preи post-забеливанием (whitening) и могут быть определены отдельно.

Рассмотрим основные особенности алгоритмов. В четырех алгоритмах существуют таблицы подстановки, называемые S-box: A x B-битный S-box преобразует, А входных битов в В выходных битов. Три алгоритма основаны на сети Фейштеля. В классической сети Фейштеля в каждом раунде преобразуется только одна половина блока данных, затем половины блока меняются местами. Два алгоритма не используют сеть Фейштеля, в результате этого в каждом раунде обрабатывается весь блок данных, используя различные подстановки и преобразования.

MARS выполняет последовательность преобразований в следующем порядке: сложение с ключом в качестве pre-whitening, 8 раундов прямого перемешивания без использования ключа, 8 раундов прямого преобразова-ния с использованием ключа, 8 раундов обратного преобразования с использованием ключа, 8 раундов обратного перемешивания без использования ключа и вычитание ключа в качестве post-whitening. 16 раундов с использованием ключа называются криптографическим ядром. Раунды без ключа используют два 8X16- битных S-box и операции сложения и XOR. В дополнение к этим элементам раунды с ключом используют 32-битное умножение ключа, зависимые от данных циклические сдвиги и добавление ключа. Как раунды перемешивания, так и раунды ядра являются раундами модифицированной сети Фейштеля, в которых четверть блока данных используется для изменения остальных трех четвертей блока данных. MARS был предложен корпорацией IBM.

RC6 является параметризуемым семейством алгоритмов шифрования, основанных на сети Фейштеля; в качестве AES было предложено использовать 20 раундов. Функция раунда в алгоритме RC6использует переменные циклические сдвиги, которые определяются квадратичной функцией от данных. Каждый раунд также включает умножение по модулю 32, сложение, XOR и сложение с ключом. Сложение с ключом также используется для preи pos-whitening. RC6 был предложен лабораторией RSA.

Rijndael представляет собой алгоритм, использующий линейно-подстановочные преобразования и состоящий из 10, 12 или 14 раундов в зависимости от длины ключа. Блок данных, обрабатываемый алгоритмом Rijndael, представляется в виде последовательности байтов, и в этом смысле каждое преобразование является байт-ориентированным. Функция раунда Rijndael состоит из четырех слоев. В первом слое для каждого байта применяется S-box размерностью 8×8 бит. Второй и третий слои являются линейными перемешиваниями, в которых строки рассматриваются в качестве сдвигаемых массивов и столбцы перемешиваются. В четвертом слое выполняется операция XOR байтов подключа и массива. В последнем раунде перемешивание столбцов опущено. Rijndael предложен JoanDaemen (ProtonWorldInternational) и VincentRijmen (KatholiekeUniversiteitLeuven).

Serpent является алгоритмом, использующим линейно-подстановочные преобразования и состоящим из 32 раундов. Serpent также определяет не криптографические начальную и заключительную перестановки, которые облегчают альтернативный режим реализации, называемый bitslice. Функция раунда состоит из трех слоев: операция XOR с ключом, 32-х параллельное применение одного из восьми фиксированных S-box и линейное преобразование. В последнем раунде слой операции XOR с ключом заменен на линейное преобразование. Serpent предложен Ross Anderson (University of Cambridge), Eli Biham (Technion) и Lars Knudsen (University of California San Diego).

Twofish является сетью Фейштеля с 16 раундами. Сеть Фейштеля не-значительно модифицирована с использованием однобитных ротаций. Функция раунда влияет на 32-битные слова, используя четыре зависящих от ключа S-box, за которыми следуют фиксированные максимально удаленные отдельные матрицы в GF (28), преобразование псевдо-Адамара и добавление ключа. Twofish был предложен BruceSchneier, JohnKelsey и NielsFerguson (CounterpaneInternetSecurity, Inc.), DougWhiting (Hi/fn, Inc.), DavidWagner (UniversityofCaliforniaBerkley) и ChrisHall (PrincetonUniversity).

Показать весь текст
Заполнить форму текущей работой