Расширенный стандарт шифрования - Advanced Encryption Standard

Расширенный стандарт шифрования
(Rijndael)
AES-SubBytes.svg
В SubBytes step, один из четырех этапов раунда AES
Общий
ДизайнеровВинсент Реймен, Джоан Дэмен
Впервые опубликовано1998
Происходит отКвадрат
ПреемникиАнубис, Гран Крю, Калина
СертификацияAES победитель CRYPTREC, НЕССИ, АНБ
Деталь шифра
Ключевые размеры128, 192 или 256 бит[примечание 1]
Размеры блоков128 бит[заметка 2]
СтруктураСеть подстановки-перестановки
Раундов10, 12 или 14 (в зависимости от размера ключа)
Лучшая публика криптоанализ
Были опубликованы атаки, которые в вычислительном отношении быстрее, чем полная атака грубой силой, хотя по состоянию на 2013 год ни один из них не является вычислительно выполнимым.[1]Для AES-128 ключ может быть восстановлен с вычислительной сложностью 2126.1 с использованием бикликовая атака. Для biclique-атак на AES-192 и AES-256 вычислительная сложность 2189.7 и 2254.4 соответственно применяются. Связанные ключевые атаки может сломать AES-192 и AES-256 со сложностями 299.5 и 2176 как по времени, так и по данным соответственно.[2]

В Расширенный стандарт шифрования (AES), также известный под своим первоначальным названием Rijndael (Голландское произношение: [Rɛindaːl]),[3] это спецификация для шифрование электронных данных, установленных США Национальный институт стандартов и технологий (NIST) в 2001 году.[4]

AES - это подмножество Rijndael блочный шифр[3] разработан двумя бельгийский криптографы, Винсент Реймен и Джоан Дэмен, подавший предложение[5] в NIST во время Процесс выбора AES.[6] Rijndael - это семейство шифров с разными размерами ключей и блоков. Для AES NIST выбрал трех членов семейства Rijndael, каждый с размером блока 128 бит, но с тремя разными длинами ключей: 128, 192 и 256 бит.

AES был принят правительство США и теперь используется во всем мире. Он заменяет Стандарт шифрования данных (DES),[7] который был опубликован в 1977 году. Алгоритм, описанный AES, представляет собой алгоритм с симметричным ключом, то есть один и тот же ключ используется как для шифрования, так и для дешифрования данных.

В США AES был объявлен NIST как U.S. FIPS PUB 197 (FIPS 197) 26 ноября 2001 г.[4] Это объявление последовало за пятилетним процессом стандартизации, в ходе которого были представлены и оценены пятнадцать конкурирующих разработок, прежде чем шифр Rijndael был выбран как наиболее подходящий (см. Стандартный процесс расширенного шифрования Больше подробностей).

AES включен в ISO /IEC 18033-3 стандарт. AES вступил в силу в качестве стандарта федерального правительства США 26 мая 2002 г. после утверждения в США. Министр торговли. AES доступен во многих различных пакетах шифрования и является первым (и единственным) общедоступным шифр одобрено США Национальное Агенство Безопасности (NSA) для совершенно секретно информация при использовании в одобренном NSA криптографическом модуле (см. Безопасность AES, ниже).

Окончательные стандарты

Расширенный стандарт шифрования (AES) определяется в каждом из:

  • FIPS PUB 197: Расширенный стандарт шифрования (AES)[4]
  • ISO / IEC 18033-3: Блочные шифры[8]

Описание шифров

AES основан на принципе проектирования, известном как сеть замещения-перестановки, эффективен как в программном, так и в аппаратном отношении.[9] В отличие от своего предшественника DES, AES не использует Сеть Фейстеля. AES - это вариант Rijndael с фиксированным размер блока из 128 биты, а размер ключа 128, 192 или 256 бит. Напротив, Rijndael как таковой задается с размерами блока и ключа, которые могут быть кратными 32 битам, минимум 128 и максимум 256 бит.

AES работает на 4 × 4 порядок столбцов массив байтов, называемый государственный.[заметка 3] Большинство вычислений AES выполняется в конкретном конечное поле.

Например, 16 байт, представлены как этот двумерный массив:

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

  • 10 раундов для 128-битных ключей.
  • 12 раундов для 192-битных ключей.
  • 14 раундов для 256-битных ключей.

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

Общее описание алгоритма

  1. KeyExpansion - круглые ключи получаются из ключа шифрования с использованием Ключевой график AES. AES требует отдельного 128-битного блока ключей раунда для каждого раунда плюс еще один.
  2. Добавление начального раунда:
    1. AddRoundKey - каждый байт состояния комбинируется с байтом ключа раунда, используя побитовый xor.
  3. 9, 11 или 13 патронов:
    1. SubBytes - а нелинейный шаг замещения, на котором каждый байт заменяется другим в соответствии с Справочная таблица.
    2. ShiftRows - шаг транспонирования, при котором последние три строки состояния циклически сдвигаются на определенное количество шагов.
    3. MixColumns - операция линейного смешивания, которая работает со столбцами состояния, комбинируя четыре байта в каждом столбце.
    4. AddRoundKey
  4. Финальный раунд (всего 10, 12 или 14 раундов):
    1. SubBytes
    2. ShiftRows
    3. AddRoundKey

В SubBytes шаг

в SubBytes шаг, каждый байт в состоянии заменяется его записью в фиксированной 8-битной таблице поиска, S; бij = S (аij).

в SubBytes шаг, каждый байт в государственный массив заменяется на SubByte используя 8-битный коробка замены. Эта операция обеспечивает нелинейность шифр. Используемый S-блок является производным от мультипликативный обратный над GF (28), как известно, обладают хорошими свойствами нелинейности. Чтобы избежать атак, основанных на простых алгебраических свойствах, S-блок строится путем объединения обратной функции с обратимым. аффинное преобразование. S-блок также выбран, чтобы избежать каких-либо неподвижных точек (как и психическое расстройство ), т.е. , а также любые противоположные неподвижные точки, т. е. . При расшифровке InvSubBytes шаг (обратный SubBytes), что требует сначала взять обратное к аффинному преобразованию, а затем найти мультипликативное обратное.

В ShiftRows шаг

в ShiftRows step байты в каждой строке состояния циклически сдвигаются влево. Число мест, на которые смещается каждый байт, для каждой строки различается постепенно.

В ShiftRows step действует на строки состояния; он циклически сдвигает байты в каждой строке на определенный компенсировать. Для AES первая строка оставлена ​​без изменений. Каждый байт второй строки сдвигается на единицу влево. Аналогичным образом третья и четвертая строки сдвигаются на два и три смещения соответственно.[примечание 4] Таким образом, каждый столбец состояния вывода ShiftRows step состоит из байтов из каждого столбца входного состояния. Важность этого шага состоит в том, чтобы избежать независимого шифрования столбцов, и в этом случае AES выродится в четыре независимых блочных шифра.

В MixColumns шаг

в MixColumns шаг, каждый столбец состояния умножается на фиксированный многочлен .

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

Во время этой операции каждый столбец преобразуется с использованием фиксированной матрицы (матрица, умноженная слева на столбец, дает новое значение столбца в состоянии):

Умножение матриц состоит из умножения и сложения записей. Записи рассматриваются как байты как коэффициенты полинома порядка . Сложение - это просто XOR. Умножение производится по модулю неприводимого многочлена . Если обрабатывается побитно, то после сдвига условное XOR с 1B16 должно выполняться, если смещенное значение больше FF16 (переполнение необходимо исправить вычитанием порождающего полинома). Это частные случаи обычного умножения в .

В более общем смысле каждый столбец рассматривается как многочлен от а затем умножается по модулю с фиксированным полиномом . Коэффициенты отображаются в их шестнадцатеричный эквивалент двоичного представления битовых многочленов из . В MixColumns шаг также можно рассматривать как умножение на показанный конкретный Матрица МДС в конечное поле . Этот процесс описан далее в статье Rijndael MixКолонны.

В AddRoundKey шаг

в AddRoundKey шаг, каждый байт состояния объединяется с байтом подключа раунда, используя XOR операция (⊕).

в AddRoundKey На шаге подключ объединяется с состоянием. Для каждого раунда подключ получается из основного ключ с помощью Ключевой график Rijndael; каждый подключ имеет тот же размер, что и состояние. Подключ добавляется путем объединения каждого байта состояния с соответствующим байтом подраздела с помощью побитового XOR.

Оптимизация шифра

В системах с 32-битными или большими словами можно ускорить выполнение этого шифра, объединив SubBytes и ShiftRows шаги с MixColumns шаг за счет преобразования их в последовательность поиска по таблице. Для этого требуются четыре 32-битные таблицы с 256 записями (вместе занимающие 4096 байт). Затем можно выполнить раунд с 16 операциями поиска в таблице и 12 32-битными операциями исключающего ИЛИ, за которыми следуют четыре 32-битных операции исключающего ИЛИ в AddRoundKey шаг.[10] В качестве альтернативы, операция поиска в таблице может выполняться с одной 32-битной таблицей с 256 записями (занимающей 1024 байта) с последующими операциями кругового вращения.

Используя байтовый подход, можно комбинировать SubBytes, ShiftRows, и MixColumns шаги в одну операцию раунда.[11]

Безопасность

В Национальное Агенство Безопасности (NSA) проверило всех финалистов AES, включая Rijndael, и заявило, что все они были достаточно безопасными для несекретных данных правительства США. В июне 2003 года правительство США объявило, что AES может использоваться для защиты классифицированная информация:

Дизайн и надежность всех длин ключей алгоритма AES (т. Е. 128, 192 и 256) достаточны для защиты секретной информации до уровня СЕКРЕТНОСТИ. СОВЕРШЕННО СЕКРЕТНАЯ информация потребует использования ключей длиной 192 или 256. Внедрение AES в продукты, предназначенные для защиты систем национальной безопасности и / или информации, должно быть проверено и сертифицировано NSA до их приобретения и использования.[12]

AES имеет 10 раундов для 128-битных ключей, 12 раундов для 192-битных ключей и 14 раундов для 256-битных ключей.

К 2006 году самые известные атаки были на 7 раундов для 128-битных ключей, 8 раундов для 192-битных ключей и 9 раундов для 256-битных ключей.[13]

Известные атаки

Для криптографов криптографический "перерыв" - это что-нибудь быстрее, чем атака грубой силой - т.е. выполнение одной пробной расшифровки для каждого возможного ключа в последовательности (см. Криптоанализ ). Таким образом, перерыв может включать результаты, которые недостижимы с использованием современных технологий. Несмотря на то, что теоретические исследования непрактичны, иногда они могут дать представление о моделях уязвимости. Самая крупная успешная публично известная атака методом перебора широко распространенного алгоритма блочного шифрования была направлена ​​против 64-битного RC5 ключ от распределенный.net в 2006 году.[14]

Ключевое пространство увеличивается в 2 раза на каждый дополнительный бит длины ключа, и если каждое возможное значение ключа равновероятно, это приводит к удвоению среднего времени поиска ключа методом перебора. Это означает, что усилие перебора увеличивается экспоненциально с увеличением длины ключа. Длина ключа сама по себе не означает защиты от атак, поскольку существуют шифры с очень длинными ключами, которые оказались уязвимыми.

AES имеет довольно простую алгебраическую основу.[15] В 2002 году теоретическая атака "XSL атака ", было объявлено Николя Куртуа и Йозеф Пиепшик, якобы показать слабость в алгоритме AES, частично из-за низкой сложности его нелинейных компонентов.[16] С тех пор другие документы показали, что атака в том виде, в котором она была представлена ​​изначально, неосуществима; видеть XSL-атака на блочные шифры.

В процессе выбора AES разработчики конкурирующих алгоритмов писали об алгоритме Рийндала: «Мы обеспокоены его использованием ... в критически важных для безопасности приложениях».[17] Однако в октябре 2000 г., по окончании процесса отбора AES, Брюс Шнайер, разработчик конкурирующего алгоритма Twofish, написал, что, хотя он думал, что когда-нибудь будут разработаны успешные академические атаки на Rijndael, он «не верил, что кто-либо когда-либо обнаружит атаку, которая позволит кому-то читать трафик Rijndael».[18]

До мая 2009 г. единственными успешными опубликованными атаками на полную версию AES были: атаки по побочным каналам на некоторых конкретных реализациях. В 2009 году новый атака по связанным ключам было обнаружено, что использует простоту ключевого расписания AES и имеет сложность 2119. В декабре 2009 года он был улучшен до 299.5.[2] Это продолжение атаки, обнаруженной ранее в 2009 г. Алексей Бирюков, Дмитрий Ховратович и Ивица Николич со сложностью 296 на одного из каждых 235 ключи.[19] Тем не менее, атаки с использованием связанных ключей не являются проблемой для любого правильно разработанного криптографического протокола, поскольку правильно разработанный протокол (то есть программное обеспечение для реализации) позаботится о том, чтобы не допускать использование связанных ключей, по сути сдерживающий средства злоумышленника для выбора ключей для определения родства.

Еще одна атака была опубликована в блоге Брюса Шнайера.[20]30 июля 2009 г. и выпущен в виде препринта[21]3 августа 2009 г. Это новое нападение со стороны Алекса Бирюкова, Орра Дункельмана, Натана Келлера, Дмитрия Ховратовича и Ади Шамир, против AES-256, который использует только два связанных ключа и 239 время восстановить полный 256-битный ключ 9-раундовой версии, или 245 время для 10-раундовой версии с более сильным типом атаки связанных подключей, или 270 время для 11-раундового варианта. 256-битный AES использует 14 раундов, поэтому эти атаки не эффективны против полного AES.

Была подвергнута критике практичность этих атак с более сильными связанными ключами,[22] Например, в статье об атаках с выбранным ключом в середине на AES-128, написанной Винсентом Рейменом в 2010 году.[23]

В ноябре 2009 г. состоялся первый атака с распознаванием ключа против уменьшенной 8-раундовой версии AES-128 была выпущена в виде препринта.[24]Эта атака с распознаванием известного ключа является улучшением отскока или атаки начала с середины против AES-подобных перестановок, которые рассматривают два последовательных раунда перестановки как применение так называемого Super-S-блока. . Он работает на 8-раундовой версии AES-128 с временной сложностью 248, и сложность памяти 232. 128-битный AES использует 10 раундов, поэтому эта атака не эффективна против полного AES-128.

Первый атаки с восстановлением ключа на полном AES были опубликованы в 2011 году Андреем Богдановым, Дмитрием Ховратовичем и Кристианом Рехбергером.[25] Атака - это бикликовая атака и быстрее грубой силы примерно в четыре раза. Требуется 2126.2 операции по восстановлению ключа AES-128. Для AES-192 и AES-256, 2190.2 и 2254.6 операции нужны соответственно. Этот результат был улучшен до 2126.0 для AES-128, 2189.9 для AES-192 и 2254.3 для AES-256,[26] которые на данный момент являются лучшими результатами атаки восстановления ключа против AES.

Это очень небольшой выигрыш, так как 126-битный ключ (вместо 128-битного) все равно потребует миллиарды лет, чтобы перебрать текущее и ожидаемое оборудование. Кроме того, авторы вычисляют лучшую атаку, используя свою технику на AES со 128-битным ключом, требующим хранения 288 биты данных. Это составляет около 38 триллионов терабайт данных, что больше, чем все данные, хранящиеся на всех компьютерах на планете в 2016 году. Таким образом, нет никаких практических последствий для безопасности AES.[27] Позднее сложность пространства была увеличена до 256 биты[26] что составляет 9007 терабайт.

Согласно Документы Сноудена, АНБ изучает возможность криптографической атаки, основанной на статистика тау может помочь сломать AES.[28]

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

Атаки по побочным каналам

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

В апреле 2005 г. Д.Дж. Бернштейн объявил об атаке тайминга, которую он использовал для взлома настраиваемого сервера, который использовал OpenSSL шифрование AES.[29] Для атаки потребовалось более 200 миллионов выбранных открытых текстов.[30] Пользовательский сервер был разработан так, чтобы выдавать как можно больше информации о времени (сервер сообщает количество машинных циклов, затраченных на операцию шифрования). Однако, как указал Бернштейн, «уменьшение точности временных меток сервера или их исключение из ответов сервера не останавливает атаку: клиент просто использует время приема-передачи, основанное на своих локальных часах, и компенсирует повышенный шум. путем усреднения по большему количеству образцов ".[29]

В октябре 2005 года Даг Арне Освик, Ади Шамир и Эран Тромер представили документ, демонстрирующий несколько атак с синхронизацией кэша против реализаций AES, найденных в OpenSSL и Linux. dm-crypt функция шифрования раздела.[31] Одна атака смогла получить весь ключ AES всего после 800 операций, запускающих шифрование, в общей сложности за 65 миллисекунд. Эта атака требует, чтобы злоумышленник имел возможность запускать программы в той же системе или платформе, на которой выполняется AES.

В декабре 2009 года была опубликована атака на некоторые аппаратные реализации, использующие дифференциальный анализ неисправностей и позволяет восстановить ключ со сложностью 232.[32]

В ноябре 2010 года Эндре Бангертер, Дэвид Гуллаш и Стефан Кренн опубликовали статью, в которой описал практический подход к восстановлению секретных ключей из AES-128 «почти в реальном времени» без необходимости в зашифрованном или открытом тексте. Этот подход также работает с реализациями AES-128, которые используют таблицы сжатия, такие как OpenSSL.[33] Как и некоторые предыдущие атаки, для этой атаки требуется возможность запускать непривилегированный код в системе, выполняющей шифрование AES, что может быть достигнуто путем заражения вредоносным ПО гораздо проще, чем реквизиции учетной записи root.[34]

В марте 2016 года Ашоккумар С., Рави Пракаш Гири и Бернард Менезеш представили атаку по побочному каналу на реализации AES, которая может восстановить полный 128-битный ключ AES всего за 6-7 блоков открытого текста / зашифрованного текста, что является существенным улучшением по сравнению с предыдущие работы, требующие от 100 до миллиона шифрований.[35] Предлагаемая атака требует стандартных прав пользователя, а алгоритмы извлечения ключей выполняются менее чем за минуту.

Многие современные процессоры имеют встроенные аппаратные инструкции для AES, которые защищают от атак по побочным каналам, связанным с синхронизацией.[36][37]

Проверка NIST / CSEC

В Программа проверки криптографических модулей (CMVP) управляется совместно Правительством США Национальный институт стандартов и технологий (NIST) Отдел компьютерной безопасности и Организация безопасности связи (CSE) правительства Канады. Использование криптографических модулей, утвержденных NIST FIPS 140-2 Требуется правительством США для шифрования всех данных, имеющих классификацию «Чувствительные, но несекретные» (SBU) или выше. Из NSTISSP № 11, Национальная политика, регулирующая получение информации: «Продукты шифрования для защиты секретной информации будут сертифицированы NSA, а продукты шифрования, предназначенные для защиты конфиденциальной информации, будут сертифицированы в соответствии с NIST FIPS 140-2».[38]

Правительство Канады также рекомендует использовать FIPS 140 проверенные криптографические модули в несекретных приложениях своих отделов.

Хотя публикация 197 NIST («FIPS 197») является уникальным документом, который охватывает алгоритм AES, поставщики обычно обращаются к CMVP в соответствии с FIPS 140 и просят иметь несколько алгоритмов (например, Тройной DES или же SHA1 ) подтверждены одновременно. Следовательно, редко можно найти криптографические модули, которые однозначно проверены FIPS 197, а сам NIST обычно не тратит время на то, чтобы перечислить проверенные модули FIPS 197 отдельно на своем общедоступном веб-сайте. Вместо этого проверка FIPS 197 обычно просто указывается как нотация «Утверждено FIPS: AES» (с конкретным номером сертификата FIPS 197) в текущем списке проверенных FIPS 140 криптографических модулей.

Программа проверки криптографических алгоритмов (CAVP)[39] позволяет проводить независимую проверку правильности реализации алгоритма AES. Успешная проверка приводит к появлению в списке на странице проверок NIST.[40] Это тестирование является предварительным условием для проверки модуля FIPS 140-2, описанной ниже. Однако успешная проверка CAVP никоим образом не означает, что криптографический модуль, реализующий алгоритм, безопасен. Криптографический модуль без проверки FIPS 140-2 или специального одобрения NSA не считается безопасным правительством США и не может использоваться для защиты государственных данных.[38]

Проверка FIPS 140-2 является сложной задачей как с технической, так и с финансовой точки зрения.[41] Существует стандартная батарея тестов, а также элемент проверки исходного кода, который необходимо пройти в течение нескольких недель. Стоимость проведения этих тестов в утвержденной лаборатории может быть значительной (например, более 30 000 долларов США).[41] и не включает время, необходимое для написания, тестирования, документирования и подготовки модуля для проверки. После проверки модули должны быть повторно представлены и повторно оценены, если они каким-либо образом изменены. Это может варьироваться от простых обновлений документов, если функциональные возможности безопасности не изменились, до более существенного набора повторных проверок, если на функциональные возможности безопасности это изменение повлияло.

Тестовые векторы

Тестовые векторы - это набор известных шифров для данного ввода и ключа. NIST распределяет эталоны тестовых векторов AES как векторы теста с известными ответами AES (KAT).[примечание 5]

Спектакль

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

На Pentium Pro, Шифрование AES требует 18 тактов на байт,[42] эквивалентно пропускной способности около 11 МБ / с для процессора 200 МГц.

На Intel Core i3 /i5 /i7 и AMD Ryzen Процессоры, поддерживающие Набор инструкций AES-NI расширений пропускная способность может составлять несколько ГБ / с (даже более 10 ГБ / с).[43]

Реализации

Смотрите также

Примечания

  1. ^ Размеры ключей 128, 160, 192, 224 и 256 бит поддерживаются алгоритмом Rijndael, но в стандарте AES указаны только размеры ключей 128, 192 и 256 бит.
  2. ^ Размер блока 128, 160, 192, 224 и 256 бит поддерживается алгоритмом Rijndael для каждого размера ключа, но в стандарте AES указан только размер блока 128 бит.
  3. ^ Варианты Rijndael с большими блоками используют массив с дополнительными столбцами, но всегда с четырьмя строками.
  4. ^ Варианты Rijndael с большим размером блока имеют немного другие смещения. Для блоков размером 128 бит и 192 бита схема сдвига одинакова. Ряд сдвинут влево по кругу на байты. Для 256-битного блока первая строка не изменяется, а сдвиг для второй, третьей и четвертой строк составляет 1, 3 и 4 байта соответственно - это изменение применяется только для шифра Rijndael при использовании с 256-битным блоком. , поскольку AES не использует 256-битные блоки.
  5. ^ Векторы теста известных ответов (KAT) AES доступны в формате Zip на сайте NIST. Вот В архиве 2009-10-23 на Wayback Machine

Рекомендации

  1. ^ «Криптоанализ Biclique полного AES» (PDF). Архивировано из оригинал (PDF) 6 марта 2016 г.. Получено 1 мая, 2019.
  2. ^ а б Алексей Бирюков и Дмитрий Ховратович, Криптоанализ связанных ключей полного AES-192 и AES-256, «Архивная копия». Таблица 1. В архиве из оригинала от 28.09.2009. Получено 2010-02-16.CS1 maint: заархивированная копия как заголовок (связь)
  3. ^ а б Дэмен, Джоан; Раймен, Винсент (9 марта 2003 г.). "Предложение AES: Rijndael" (PDF). Национальный институт стандартов и технологий. п. 1. В архиве (PDF) из оригинала 5 марта 2013 г.. Получено 21 февраля 2013.
  4. ^ а б c «Объявление о расширенном стандарте шифрования (AES)» (PDF). Публикация Федеральных стандартов обработки информации 197. Национальный институт стандартов и технологий США (NIST). 26 ноября 2001 г. В архиве (PDF) из оригинала 12 марта 2017 г.. Получено Второе октября, 2012.
  5. ^ Джоан Дэмен и Винсент Риджмен (3 сентября 1999 г.). "Предложение AES: Rijndael" (PDF). Архивировано из оригинал (PDF) 3 февраля 2007 г.
  6. ^ Джон Шварц (3 октября 2000 г.). «США выбирают новую технику шифрования». Нью-Йорк Таймс. В архиве с оригинала 28 марта 2017 года.
  7. ^ Вестлунд, Гарольд Б. (2002). «NIST сообщает об измеримом успехе Advanced Encryption Standard». Журнал исследований Национального института стандартов и технологий. Архивировано из оригинал на 2007-11-03.
  8. ^ «ISO / IEC 18033-3: Информационные технологии - Методы безопасности - Алгоритмы шифрования - Часть 3: Блочные шифры». В архиве из оригинала от 03.12.2013.
  9. ^ Брюс Шнайер; Джон Келси; Дуг Уайтинг; Давид Вагнер; Крис Холл; Нильс Фергюсон; Тадаёши Коно; и другие. (Май 2000 г.). «Последние комментарии команды Twofish по выбору AES» (PDF). В архиве (PDF) из оригинала от 02.01.2010.
  10. ^ «Эффективная программная реализация AES на 32-битных платформах». Конспект лекций по информатике: 2523. 2003 г.
  11. ^ "byte-Oriented-aes - Байт-ориентированная реализация AES на языке C - общественное достояние - Хостинг проектов Google". В архиве из оригинала 20.07.2013. Получено 2012-12-23.
  12. ^ Линн Хэтэуэй (июнь 2003 г.). «Национальная политика по использованию усовершенствованного стандарта шифрования (AES) для защиты систем национальной безопасности и информации о национальной безопасности» (PDF). В архиве (PDF) из оригинала от 06.11.2010. Получено 2011-02-15.
  13. ^ Джон Келси, Стефан Люкс, Брюс Шнайер, Майк Стэй, Давид Вагнер, и Дуг Уайтинг, Улучшенный криптоанализ Rijndael, Быстрое программное шифрование, 2000 стр 213–230 "Academic: Улучшенный криптоанализ Rijndael-Schneier по безопасности". В архиве из оригинала от 23 февраля 2007 г.. Получено 2007-03-06.
  14. ^ Оу, Джордж (30 апреля 2006 г.). "Действительно ли шифрование поддается взлому?". Зифф-Дэвис. В архиве из оригинала от 8 августа 2010 г.. Получено 7 августа, 2010.
  15. ^ "Шон Мерфи". Лондонский университет. В архиве из оригинала 31.01.2009. Получено 2008-11-02.
  16. ^ Брюс Шнайер. "Новости AES, информационный бюллетень Crypto-Gram, 15 сентября 2002 г.". В архиве из оригинала 7 июля 2007 г.. Получено 2007-07-27.
  17. ^ Нильс Фергюсон; Ричард Шрёппель; Дуг Уайтинг (2001). «Простое алгебраическое представление Rijndael». Proceedings of Selected Areas in Cryptography, 2001, Lecture Notes in Computer Science. Springer-Verlag. С. 103–111. CiteSeerX  10.1.1.28.4921. Архивировано из оригинал (PDF /PostScript ) 4 ноября 2006 г.. Получено 2006-10-06.
  18. ^ Брюс Шнайер, Анонсирован AES В архиве 2009-02-01 в Wayback Machine, 15 октября 2000 г.
  19. ^ Николич, Ивица (2009). «Атака с использованием отличительных и связанных ключей на полный AES-256». Достижения в криптологии - CRYPTO 2009. Конспект лекций по информатике. 5677. Springer Berlin / Heidelberg. С. 231–249. Дои:10.1007/978-3-642-03356-8_14. ISBN  978-3-642-03355-1.
  20. ^ Брюс Шнайер (30.07.2009). «Еще одна новая атака AES». Шнайер о безопасности, блог о безопасности и технологиях безопасности. В архиве из оригинала от 05.10.2009. Получено 2010-03-11.
  21. ^ Алексей Бирюков; Орр Дункельман; Натан Келлер; Дмитрий Ховратович; Ади Шамир (19.08.2009). "Атаки восстановления ключа практической сложности на вариантах AES до 10 раундов". В архиве из оригинала 28 января 2010 г.. Получено 2010-03-11.
  22. ^ Агрен, Мартин (2012). О некоторых симметричных облегченных криптографических схемах. Диссертация, Лундский университет. С. 38–39.
  23. ^ Винсент Реймен (2010). «Атака с практическим названием на AES-128 с использованием отношений выделенного текста» (PDF). В архиве (PDF) из оригинала от 02.07.2010. Цитировать журнал требует | журнал = (помощь)
  24. ^ Анри Гилбер; Томас Пейрин (2009-11-09). «Криптоанализ Super-Sbox: улучшенные атаки для AES-подобных перестановок». В архиве из оригинала от 04.06.2010. Получено 2010-03-11.
  25. ^ Андрей Богданов; Дмитрий Ховратович и Кристиан Рехбергер (2011). «Криптоанализ Biclique полного AES» (PDF). Архивировано из оригинал (PDF) на 2012-09-05.
  26. ^ а б Бяошуай Тао и Хунцзюнь Ву (2015). Информационная безопасность и конфиденциальность. Конспект лекций по информатике. 9144. С. 39–56. Дои:10.1007/978-3-319-19962-7_3. ISBN  978-3-319-19961-0.
  27. ^ Джеффри Голдберг (18.08.2011). «Шифрование AES не взломано». Архивировано из оригинал 8 января 2015 г.. Получено 30 декабря 2014.
  28. ^ SPIEGEL ONLINE, Гамбург, Германия (28 декабря 2014 г.). «Изнутри войны АНБ с интернет-безопасностью». SPIEGEL ONLINE. В архиве из оригинала 24 января 2015 г.. Получено 4 сентября 2015.
  29. ^ а б «Указатель официальных научных трудов». Cr.yp.to. В архиве из оригинала 17.09.2008. Получено 2008-11-02.
  30. ^ Брюс Шнайер. "Атака по времени AES". В архиве из оригинала 12 февраля 2007 г.. Получено 2007-03-17.
  31. ^ Даг Арне Освик; Ади Шамир; Эран Тромер (20 ноября 2005 г.). «Кэш-атаки и контрмеры: на примере AES» (PDF). В архиве (PDF) из оригинала 19.06.2006. Получено 2008-11-02. Цитировать журнал требует | журнал = (помощь)
  32. ^ Дхиман Саха; Дебдип Мухопадхьяй; Дипанвита РойЧоудхури. «Диагональная атака с ошибкой на усовершенствованный стандарт шифрования» (PDF). В архиве (PDF) из оригинала 22 декабря 2009 г.. Получено 2009-12-08. Цитировать журнал требует | журнал = (помощь)
  33. ^ Эндре Бангертер; Дэвид Гуллаш и Стефан Кренн (2010). «Игры с кешем - внедрение кеш-атак на основе доступа на AES» (PDF). В архиве (PDF) из оригинала от 14 декабря 2010 г. Цитировать журнал требует | журнал = (помощь)
  34. ^ «Взлом AES-128 в реальном времени, не требуется шифротекст | Hacker News». News.ycombinator.com. В архиве из оригинала от 03.10.2011. Получено 2012-12-23.
  35. ^ Ashokkumar C .; Рави Пракаш Гири; Бернар Менезес (2016). Европейский симпозиум IEEE по безопасности и конфиденциальности 2016 г. (EuroS & P). С. 261–275. Дои:10.1109 / EuroSP.2016.29. ISBN  978-1-5090-1751-5. S2CID  11251391.
  36. ^ «Возможны ли по-прежнему атаки на кэш AES x86 по времени?» (PDF). cseweb.ucsd.edu. В архиве (PDF) из оригинала от 09.08.2017.
  37. ^ «Архивная копия» (PDF). В архиве (PDF) из оригинала 31.03.2013. Получено 2017-07-26.CS1 maint: заархивированная копия как заголовок (связь) Защита предприятия с помощью Intel AES-NI
  38. ^ а б «Архивная копия» (PDF). Архивировано из оригинал (PDF) на 2012-04-21. Получено 2012-05-29.CS1 maint: заархивированная копия как заголовок (связь)
  39. ^ «NIST.gov - Отдел компьютерной безопасности - Ресурсный центр по компьютерной безопасности». Csrc.nist.gov. В архиве из оригинала 02.01.2013. Получено 2012-12-23.
  40. ^ «Проверенные криптографические модули FIPS 140-1 и FIPS 140-2». Архивировано из оригинал на 2014-12-26. Получено 2014-06-26.
  41. ^ а б OpenSSL, [email protected]. «Примечания OpenSSL о сертификации FIPS». Openssl.org. Архивировано из оригинал на 2013-01-02. Получено 2012-12-23.
  42. ^ Шнайер, Брюс; Келси, Джон; Уайтинг, Дуг; Вагнер, Давид; Холл, Крис; Фергюсон, Нильс (1999-02-01). «Сравнение производительности представленных AES» (PDF). В архиве (PDF) из оригинала от 22.06.2011. Получено 2010-12-28.
  43. ^ «Обзор AMD Ryzen 7 1700X».

внешняя ссылка