stringtranslate.com

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

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

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

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

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

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

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

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

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

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

AES работает с массивом 4 × 4 по столбцам размером 16 байт b 0 , b 1 , ..., b 15 , называемым состоянием : [примечание 5]

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

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

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

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

Шаг суббайтов _

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

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

Шаг ShiftRows _

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

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

Шаг MixColumns _

На этапе MixColumns каждый столбец состояния умножается на фиксированный полином .

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

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

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

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

AddRoundKey _

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

До мая 2009 года единственными успешными опубликованными атаками на полную версию AES были атаки по побочным каналам на некоторые конкретные реализации. В 2009 году была обнаружена новая атака с использованием связанных ключей , которая использует простоту расписания ключей AES и имеет сложность 2 119 . В декабре 2009 года он был улучшен до 2 99,5 . [2] Это продолжение атаки, обнаруженной ранее в 2009 году Алексом Бирюковым , Дмитрием Ховратовичем и Ивицей Николичем, со сложностью 2 96 для одного из каждых 2 35 ключей. [21] Однако атаки с использованием связанных ключей не вызывают беспокойства в любом правильно разработанном криптографическом протоколе, поскольку правильно разработанный протокол (т. е. реализующее программное обеспечение) позаботится о том, чтобы не допустить использования связанных ключей, по существу, ограничивая средства злоумышленника по выбору ключей для родство.

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

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

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

Первые атаки с восстановлением ключей на полный AES были проведены Андреем Богдановым, Дмитрием Ховратовичем и Кристианом Рехбергером и были опубликованы в 2011 году. [27] Атака представляет собой двухстороннюю атаку и быстрее, чем перебор, примерно в четыре раза. Для восстановления ключа AES-128 требуется 2 операции 126,2 . Для AES-192 и AES-256 необходимо 2 190,2 и 2 254,6 операций соответственно. Этот результат был дополнительно улучшен до 2 126,0 для AES-128, 2 189,9 для AES-192 и 2 254,3 для AES-256 [28] , что является лучшим на данный момент результатом в атаке с восстановлением ключа против AES.

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

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

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

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

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

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

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

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

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

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

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

Квантовые атаки

AES-256 считается квантовоустойчивым , поскольку он имеет квантовую устойчивость, аналогичную устойчивости AES-128 к традиционным, неквантовым атакам при уровне безопасности 128 бит . AES-192 и AES-128 не считаются квантовоустойчивыми из-за меньшего размера ключей. Устойчивость AES-192 к квантовым атакам составляет 96 бит, а устойчивость AES-128 к квантовым атакам составляет 64 бита, что делает их оба небезопасными. [40] [41]

Проверка NIST/CSEC

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

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

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

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

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

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

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

Производительность

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

В Pentium Pro шифрование AES требует 18 тактов на байт (cpb), [46] что эквивалентно пропускной способности около 11 МБ/с для процессора с частотой 200 МГц.

На процессорах Intel Core и AMD Ryzen , поддерживающих расширения набора инструкций AES-NI , пропускная способность может составлять несколько ГиБ/с (даже более 15 ГиБ/с на i7-12700k). [47] На процессоре Intel Westmere шифрование AES с использованием AES-NI занимает около 1,3 cpb для AES-128 и 1,8 cpb для AES-256. [48]

Реализации

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

Примечания

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

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

  1. ^ «Бикликовый криптоанализ полного AES» (PDF) . Архивировано из оригинала (PDF) 6 марта 2016 г. Проверено 1 мая 2019 г.
  2. ^ ab Алекс Бирюков и Дмитрий Ховратович, Криптоанализ со связанными ключами полного AES-192 и AES-256 , «Архивная копия». Таблица 1. Архивировано из оригинала 28 сентября 2009 г. Проверено 16 февраля 2010 г.{{cite web}}: CS1 maint: архивная копия в заголовке ( ссылка )
  3. ^ Брюс Шнайер (30 июля 2009 г.). «Еще одна новая атака AES». Schneier on Security, блог, посвященный безопасности и технологиям безопасности . Архивировано из оригинала 5 октября 2009 г. Проверено 11 марта 2010 г.
  4. ^ Алекс Бирюков; Орр Данкельман; Натан Келлер; Дмитрий Ховратович; Ади Шамир (19 августа 2009 г.). «Атаки практической сложности с восстановлением ключей на варианты AES до 10 раундов». Архивировано из оригинала 28 января 2010 года . Проверено 11 марта 2010 г.
  5. ^ аб Дэмен, Джоан; Реймен, Винсент (9 марта 2003 г.). «Предложение AES: Рейндал» (PDF) . Национальный институт стандартов и технологий. п. 1. Архивировано (PDF) из оригинала 5 марта 2013 г. Проверено 21 февраля 2013 г.
  6. ^ abc «Анонсируем РАСШИРЕННЫЙ СТАНДАРТ ШИФРОВАНИЯ (AES)» (PDF) . Публикация федеральных стандартов обработки информации 197 . Национальный институт стандартов и технологий США (NIST). 26 ноября 2001 г. Архивировано (PDF) из оригинала 12 марта 2017 г. . Проверено 2 октября 2012 г.
  7. Джоан Дэмен и Винсент Реймен (3 сентября 1999 г.). «Предложение AES: Рейндал» (PDF) . Архивировано из оригинала (PDF) 3 февраля 2007 г.
  8. Джон Шварц (3 октября 2000 г.). «США выбирают новую технику шифрования». Газета "Нью-Йорк Таймс . Архивировано из оригинала 28 марта 2017 года.
  9. ^ Вестлунд, Гарольд Б. (2002). «NIST сообщает об измеримом успехе Advanced Encryption Standard». Журнал исследований Национального института стандартов и технологий . Архивировано из оригинала 3 ноября 2007 г.
  10. ^ «ISO/IEC 18033-3: Информационные технологии. Методы безопасности. Алгоритмы шифрования. Часть 3. Блочные шифры». Архивировано из оригинала 3 декабря 2013 г.
  11. ^ Брюс Шнайер; Джон Келси; Дуг Уайтинг; Дэвид Вагнер; Крис Холл; Нильс Фергюсон; Тадаёси Коно; и другие. (май 2000 г.). «Заключительные комментарии команды Twofish по выбору AES» (PDF) . Архивировано (PDF) из оригинала 02 января 2010 г.
  12. ^ Бертони, Гвидо; Бревельери, Лука; Фрагнето, Паскуалина; Маккетти, Марко; Марчезин, Стефано (2003). «Эффективная программная реализация AES на 32-битных платформах». Криптографическое оборудование и встраиваемые системы — CHES 2002 . Конспекты лекций по информатике. Том. 2523. стр. 159–171. дои : 10.1007/3-540-36400-5_13. ISBN 978-3-540-00409-7.
  13. ^ «байт-ориентированный-aes - общедоступная байт-ориентированная реализация AES на C - хостинг проектов Google» . Архивировано из оригинала 20 июля 2013 г. Проверено 23 декабря 2012 г.
  14. ^ Линн Хэтэуэй (июнь 2003 г.). «Национальная политика использования расширенного стандарта шифрования (AES) для защиты систем национальной безопасности и информации национальной безопасности» (PDF) . Архивировано (PDF) из оригинала 6 ноября 2010 г. Проверено 15 февраля 2011 г.
  15. ^ Джон Келси , Стефан Лакс , Брюс Шнайер , Майк Стей, Дэвид Вагнер и Дуг Уайтинг, Улучшенный криптоанализ Rijndael , Fast Software Encryption , 2000, стр. 213–230 «Академический: Улучшенный криптоанализ Rijndael - Шнайер о безопасности». Архивировано из оригинала 23 февраля 2007 г. Проверено 6 марта 2007 г.
  16. Оу, Джордж (30 апреля 2006 г.). «Действительно ли шифрование можно взломать?». Зифф-Дэвис. Архивировано из оригинала 8 августа 2010 года . Проверено 7 августа 2010 г.
  17. ^ "Шон Мерфи". Лондонский университет. Архивировано из оригинала 31 января 2009 г. Проверено 2 ноября 2008 г.
  18. ^ Брюс Шнайер. «Новости AES, информационный бюллетень Crypto-Gram, 15 сентября 2002 г.». Архивировано из оригинала 7 июля 2007 года . Проверено 27 июля 2007 г.
  19. ^ Нильс Фергюсон ; Ричард Шреппель ; Дуг Уайтинг (2001). «Простое алгебраическое представление Рейндала». Труды по избранным областям криптографии, 2001 г., Конспекты лекций по информатике . Спрингер-Верлаг . стр. 103–111. CiteSeerX 10.1.1.28.4921 . Архивировано из оригинала (PDF/ PostScript ) 4 ноября 2006 г. Проверено 6 октября 2006 г. 
  20. Брюс Шнайер, Объявлено об AES. Архивировано 1 февраля 2009 г. в Wayback Machine , 15 октября 2000 г.
  21. ^ Николич, Ивица (2009). «Атака по различителю и связанным ключам на полный AES-256». Достижения криптологии — КРИПТО 2009 . Конспекты лекций по информатике. Том. 5677. Шпрингер Берлин/Гейдельберг. стр. 231–249. дои : 10.1007/978-3-642-03356-8_14. ISBN 978-3-642-03355-1.
  22. ^ Брюс Шнайер (30 июля 2009 г.). «Еще одна новая атака AES». Schneier on Security, блог, посвященный безопасности и технологиям безопасности . Архивировано из оригинала 5 октября 2009 г. Проверено 11 марта 2010 г.
  23. ^ Алекс Бирюков; Орр Данкельман; Натан Келлер; Дмитрий Ховратович; Ади Шамир (19 августа 2009 г.). «Атаки практической сложности с восстановлением ключей на варианты AES до 10 раундов». Архивировано из оригинала 28 января 2010 года . Проверено 11 марта 2010 г.
  24. ^ Агрен, Мартин (2012). О некоторых симметричных облегченных криптографических схемах . Диссертация, Лундский университет. стр. 38–39.
  25. ^ Винсент Реймен (2010). «Атака на AES-128 с практическим названием с использованием отношений выбранного текста» (PDF) . Архивировано (PDF) из оригинала 02 июля 2010 г. {{cite journal}}: Требуется цитировать журнал |journal=( помощь )
  26. ^ Анри Жильбер; Томас Пейрин (9 ноября 2009 г.). «Криптоанализ Super-Sbox: улучшенные атаки на AES-подобные перестановки». Архивировано из оригинала 4 июня 2010 г. Проверено 11 марта 2010 г.
  27. ^ Андрей Богданов; Дмитрий Ховратович и Кристиан Рехбергер (2011). «Бикликовый криптоанализ полного AES» (PDF) . Архивировано из оригинала (PDF) 5 сентября 2012 г.
  28. ^ аб Бяошуай Тао и Хунцзюнь Ву (2015). «Улучшение бикликового криптоанализа AES». Информационная безопасность и конфиденциальность . Конспекты лекций по информатике. Том. 9144. стр. 39–56. дои : 10.1007/978-3-319-19962-7_3. ISBN 978-3-319-19961-0.
  29. ^ Джеффри Голдберг (18 августа 2011 г.). «Шифрование AES не взломано». Архивировано из оригинала 8 января 2015 года . Проверено 30 декабря 2014 г.
  30. ^ SPIEGEL ONLINE, Гамбург, Германия (28 декабря 2014 г.). «Внутри войны АНБ с интернет-безопасностью». ШПИГЕЛЬ ОНЛАЙН . Архивировано из оригинала 24 января 2015 года . Проверено 4 сентября 2015 г.
  31. ^ ab «Указатель официальных научных работ». Кр.йп.то. Архивировано из оригинала 17 сентября 2008 г. Проверено 2 ноября 2008 г.
  32. ^ Брюс Шнайер. «Временная атака AES». Архивировано из оригинала 12 февраля 2007 года . Проверено 17 марта 2007 г.
  33. ^ Даг Арне Освик; Ади Шамир; Эран Тромер (20 ноября 2005 г.). «Атаки на кэш и меры противодействия: случай AES» (PDF) . Архивировано (PDF) из оригинала 19 июня 2006 г. Проверено 2 ноября 2008 г. {{cite journal}}: Требуется цитировать журнал |journal=( помощь )
  34. ^ Диман Саха; Дебдип Мукхопадьяй; Дипанвита Рой Чоудхури. «Атака по диагональной ошибке на расширенный стандарт шифрования» (PDF) . Архивировано (PDF) из оригинала 22 декабря 2009 г. Проверено 8 декабря 2009 г. {{cite journal}}: Требуется цитировать журнал |journal=( помощь )
  35. ^ Эндре Бангертер; Дэвид Галлаш и Стефан Кренн (2010). «Игры с кэшем: применение на практике атак на кэш AES на основе доступа» (PDF) . Архивировано (PDF) из оригинала 14 декабря 2010 г. {{cite journal}}: Требуется цитировать журнал |journal=( помощь )
  36. ^ «Взлом AES-128 в реальном времени, зашифрованный текст не требуется» . Хакерские новости. Архивировано из оригинала 3 октября 2011 г. Проверено 23 декабря 2012 г.
  37. ^ Ашоккумар К.; Рави Пракаш Гири; Бернар Менезеш (2016). Европейский симпозиум IEEE по безопасности и конфиденциальности (EuroS&P) , 2016 г. стр. 261–275. дои :10.1109/ЕвроСП.2016.29. ISBN 978-1-5090-1751-5. S2CID  11251391.
  38. ^ «Возможны ли атаки по времени на кэш AES x86?» (PDF) . cseweb.ucsd.edu . Архивировано (PDF) из оригинала 9 августа 2017 г.
  39. ^ «Архивная копия» (PDF) . Архивировано (PDF) из оригинала 31 марта 2013 г. Проверено 26 июля 2017 г.{{cite web}}: CS1 maint: архивная копия в заголовке ( ссылка )Защита предприятия с помощью Intel AES-NI.
  40. ^ Боннетэн, Ксавье; Ная-Пласенсия, Мария; Шроттенлоэр, Андре (6 декабря 2019 г.). «Квантовый анализ безопасности AES». Хэл : 40.
  41. ^ О'Ши, Дэн (26 апреля 2022 г.). «AES-256 присоединяется к квантовому сопротивлению». Жестокая электроника . Проверено 26 сентября 2023 г.
  42. ^ ab «Архивная копия» (PDF) . Архивировано из оригинала (PDF) 21 апреля 2012 г. Проверено 29 мая 2012 г.{{cite web}}: CS1 maint: архивная копия в заголовке ( ссылка )
  43. ^ "NIST.gov - Отдел компьютерной безопасности - Ресурсный центр компьютерной безопасности" . Csrc.nist.gov. Архивировано из оригинала 2 января 2013 г. Проверено 23 декабря 2012 г.
  44. ^ «Проверенные криптографические модули FIPS 140-1 и FIPS 140-2» . Архивировано из оригинала 26 декабря 2014 г. Проверено 26 июня 2014 г.
  45. ^ ab OpenSSL, [email protected]. «Заметки OpenSSL о сертификации FIPS». Openssl.org. Архивировано из оригинала 02 января 2013 г. Проверено 23 декабря 2012 г.
  46. ^ Шнайер, Брюс; Келси, Джон; Уайтинг, Дуг; Вагнер, Дэвид; Холл, Крис; Фергюсон, Нильс (1 февраля 1999 г.). «Сравнение производительности материалов AES» (PDF) . Архивировано (PDF) из оригинала 22 июня 2011 г. Проверено 28 декабря 2010 г.
  47. ^ «Обзор AMD Ryzen 7 1700X» .
  48. ^ «Новый набор инструкций Intel ® Advanced Encryption Standard (AES)» (PDF) . Май 2010.

Внешние ссылки