33636

Advanced Encryption Standard (AES) - Алгоритм Rijndael

Доклад

Информатика, кибернетика и программирование

dvnced Encryption Stndrd ES Алгоритм Rijndel Инициатива в разработке ES принадлежит национальному институту стандартов США NIST. Основная цель состояла в создании федерального стандарта США который бы описывал алгоритм шифрования используемый для защиты информации как в государственном так и в частном секторе. В результате длительного процесса оценки был выбрал алгоритм Rijndel в качестве алгоритма в стандарте ES. Алгоритм Rijndel представляет собой симметричный алгоритм блочного шифрования с переменной длиной блока и переменной...

Русский

2013-09-06

317.5 KB

109 чел.

55. Advanced Encryption Standard (AES) - Алгоритм Rijndael

Инициатива в разработке AES принадлежит национальному институту стандартов США - NIST. Основная цель состояла в создании федерального стандарта США, который бы описывал алгоритм шифрования, используемый для защиты информации как в государственном, так и в частном секторе. В результате длительного процесса оценки был выбрал алгоритм Rijndael в качестве алгоритма в стандарте AES.

Алгоритм Rijndael представляет собой симметричный алгоритм блочного шифрования с переменной длиной блока и переменной длиной ключа. Длина блока и длина ключа могут быть независимо установлены в 128, 192 или 256 бит. Алгоритм использует линейно-подстановочные преобразования и состоит из 10, 12 или 14 раундов в зависимости от длины ключа. Блок данных, обрабатываемый с использованием алгоритма Rijndael, делится на массивы байтов, и каждая операция шифрования является байт-ориентированной.

Преобразование раунда алгоритма Rijndael не имеет структуру сети Фейстеля, а использует структуру типа SP-сеть (Substitution-Permutation network, подстановочно-перестановочная сеть) — разновидность блочного шифра, предложенная в 1971 году Хорстом Фейстелем. Ппреобразование каждого раунда состоит из четырех различных преобразований, называемых слоями. Каждый слой разрабатывался с учетом противодействия линейному и дифференциальному криптоанализу. В основу каждого слоя положена своя собственная функция.

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

Алгоритм Rijndael может применяться в качестве алгоритма МАС. Для этого следует использовать блочный алгоритм в режиме СВС-МАС. Также существует много способов, с помощью которых алгоритм Rijndael можно использовать в качестве генератора псевдослучайных чисел.

Advanced Encryption Standard (AES), также известный как Rijndael – симметричный алгоритм блочного шифрования (размер блока 128 бит, ключ 128 бит), принятый в качестве стандарта шифрования правительством США по результатам конкурса AES.

Алгоритм представляет каждый блок кодируемых данных в виде двумерного массива байт размером 4х4 в зависимости от установленной длины блока. Далее на соответствующих этапах производятся преобразования либо над независимыми столбцами, либо над независимыми строками, либо вообще над отдельными байтами в таблице.

Алгоритм AES имеет следующую структуру:

В начале шифрования input (входной блок данных) копируется в массив State по определенному правилу (формула 1.1) для    и  , где  – число столбцов (32-х битных слов), составляющих State. Для AES  .

                                                         (1.1)

После этого к State применяется процедура AddRoundKey() и затем State проходит через процедуры трансформации (раунды). В итоге, после завершения последнего раунда трансформации, State копируется в output (выходной блок данных) по правилу (формула 1.2) для    и  .

                                                                                             (1.2)

Алгоритм состоит из некоторого количества раундов (для стандарта AES – 10 раундов), в которых последовательно выполняются следующие операции:

  1.  SubBytes – табличная подстановка (рис.5) – процедура, обрабатывающая каждый байт состояния, независимо производя нелинейную замену байтов, используя таблицу замен (S-box – нелинейная таблица замен, использующаяся в нескольких трансформациях замены байт). Такая операция обеспечивает нелинейность алгоритма шифрования. Таким образом, каждый байт в State заменяется соответствующим элементом в фиксированной 8-битной таблице поиска S.


Рис. 5 – Выполнение процедуры SubByte
s

  1.  ShiftRows – сдвиг строк в двумерном массиве на различные смещения (рис.6). При этой трансформации строки состояния циклически сдвигаются на  байт по горизонтали, в зависимости от номера строки. Для нулевой строки , для первой строки  и т.д. Таким образом, каждая колонка выходного состояния после применения процедуры ShiftRows состоит из байтов из каждой колонки начального состояния.


Рис. 6 – Выполнение процедуры ShiftRow
s

  1.  MixColumns – математическое преобразование, перемешивающее данные внутри столбца (рис.7). Четыре байта каждой колонки State смешиваются, используя для этого обратимую линейную трансформацию.


Рис. 7 – Выполнение процедуры MixColumn
s

  1.  AddRoundKey – добавление материала ключа операцией XOR (рис.8). RoundKey (ключ, генерируемый с помощью секретного ключа – CipherKey) каждого раунда объединяется со State. Для каждого раунда RoundKey  получается из CipherKey, используя процедуру KeyExpansion (каждый RoundKey такого же размера, что и State). Процедура производит побитовый XOR каждого байта State с каждым байтом RoundKey.

Рис. 8 – Выполнение процедуры AddRoundKey

В последнем раунде операция перемешивания столбцов отсутствует, что делает всю последовательность операций симметричной.

Так как алгоритм симметричный, при расшифровании производятся преобразования, обратные тем, что производятся при шифровании.


 

А также другие работы, которые могут Вас заинтересовать

6308. Государство Древней Индии. Судебная система в Индии 51 KB
  Государство Древней Индии образовалось в устьях рек Инде, пять притоков которого образуют Пенджаб (Пятиречье) и Ганге, где были наиболее благоприятные условия для занятия скотоводством и земледелием. Очень рано в этих районах вследствие недостатка в...
6309. Механизм административно-правового регулирования 164 KB
  Механизм административно-правового регулирования. Понятие, сущность, структура механизма административно-правового регулирования Механизм административно-правового регулирования (МАПР) - упорядоченная по стадиям регулирования совокупность админис...
6310. Предмет и метод статистики 510.5 KB
  МОДУЛЬ № 1 Предмет и метод статистики Статистика – отрасль общественных наук, которая изучает количественную сторону качественно определенных массовых социально–экономических явлений и процессов, их структуру и распределение, размещение в ...
6311. Основные законы гидродинамики 350 KB
  Основные законы гидродинамики 1. Уравнение неразрывности Рассмотрим установившийся поток жидкости между живыми сечениями 1 и 2(рис.1). За единицу времени через живое сечение 1 втекает в рассматриваемую часть 1-2 объем жидкости Рис.1 Q1...
6312. Организационные структуры управления (ОСУ) 510.5 KB
  Организационные структуры управления (ОСУ) ОСУ - понятие, структура и элементы, принципы построения Бюрократические структуры управления Адаптивные структуры управления Под организационной структурой управления необходимо пони...
6313. Комплексирование в вычислительных системах 66 KB
  Комплексирование в вычислительных системах Для построения вычислительных систем необходимо, чтобы элементы или модули, комплексируемые в систему, были совместимы. Понятие совместимости имеет три аспекта: аппаратурный (технический), программный...
6314. Программная реализация средствами ОС Windows 130.5 KB
  Введение Операции с файлами - это то, что рано или поздно приходится делать практически во всех программах, и всегда это вызывает массу проблем. Должно ли приложение просто открыть файл, считать и закрыть его, или открыть, считать фрагмент в бу...
6315. Экономическая оценка эффективности природоохранных мероприятий 655 KB
  Экономическая оценка эффективности природоохранных мероприятий При экономическом обосновании природоохранных мероприятий экономические результаты сопоставляются с затратами на их осуществление. При необходимости, учитывается фактор времени. Поэтому ...
6316. Основы генетики. Основные положения хромосомной теории наследования 181.5 KB
  Основы генетики. Генетика - наука о закономерностях наследственности и изменчивости. Основоположник науки - Грегор Мендель (1822-1884), труд «Опыты над растительными гибридами» (1865 г.). Официальная дата рождения генетики - 1900 г.,...