Раунд (криптография)
В криптографии раунд — или функция раунда это базовое преобразование, которое повторяется ( итерируется ) несколько раз внутри алгоритма. Разделение большой алгоритмической функции на раунды упрощает как реализацию, так и криптоанализ . [1]
Например, шифрование с использованием упрощенного трехраундового шифра можно записать как , где C — зашифрованный текст , а P — открытый текст . Обычно раунды реализуются с помощью одной и той же функции, параметризованной константой раунда и, для блочных шифров , ключом раунда из расписания ключей . Параметризация необходима для уменьшения самоподобия шифра, что может привести к атакам со скольжением . [1]
Увеличение количества раундов «почти всегда» [2] защищает от дифференциального и линейного криптоанализа , поскольку для этих инструментов усилия растут экспоненциально с количеством раундов. Однако увеличение количества раундов не всегда превращает слабые шифры в сильные, поскольку некоторые атаки не зависят от количества раундов. [3]
Идея итеративного шифра , использующего повторное применение простых некоммутирующих операций, вызывающих диффузию и путаницу, возникла еще в 1945 году, в тогда еще секретной версии К. Э. Шеннона работы « Теория связи секретных систем »; [4] Шеннон был вдохновлен смешивающими преобразованиями, используемыми в области теории динамических систем (ср. Подковообразная карта ). Большинство современных шифров используют итеративный дизайн с числом раундов, обычно выбираемым от 8 до 32 (при этом в криптографических хешах используется 64 и даже 80 ). [5]
В некоторых описаниях шифров типа Фейстеля , особенно в описании RC5 , термин « полукруглый » используется для определения преобразования части данных (отличительная особенность конструкции Фейстеля). Эта операция соответствует полному раунду в традиционных описаниях шифров Фейстеля (например, DES ). [6]
Круглые константы [ править ]
Вставка констант, зависящих от раунда, в процесс шифрования нарушает симметрию между раундами и, таким образом, предотвращает наиболее очевидные атаки скольжения. [3] Этот метод является стандартной функцией большинства современных блочных шифров. Однако плохой выбор раундовых констант или непреднамеренные взаимосвязи между константами и другими компонентами шифрования все равно могут привести к скользящим атакам (например, атаке на первоначальную версию режима шифрования с сохранением формата FF3). [7]
Многие облегченные шифры используют очень простое планирование ключей: раундовые ключи получаются в результате добавления раундовых констант к ключу шифрования . Неправильный выбор раундовых констант в этом случае может сделать шифр уязвимым для инвариантных атак ; шифры, взломанные таким образом, включают SCREAM и Midori64 . [8]
Оптимизация [ править ]
Дэмен и Реймен утверждают, что одной из целей оптимизации шифра является снижение общей рабочей нагрузки, произведения сложности раунда и количества раундов. Существует два подхода к достижению этой цели: [2]
- локальная оптимизация улучшает худшее поведение одного раунда (два раунда для шифров Фейстеля);
- глобальная оптимизация оптимизирует худшее поведение более чем одного раунда, позволяя использовать менее сложные компоненты.
Шифры с уменьшенным циклом [ править ]
Методы криптоанализа включают использование версий шифров с меньшим количеством раундов, чем указано их разработчиками. Поскольку один раунд обычно криптографически слаб, многие атаки, которые не работают против полной версии шифров, будут работать и над такими вариантами сокращенного раунда . Результат такой атаки предоставляет ценную информацию о силе алгоритма. [9] Типичный взлом полного шифра начинается как успешный взлом сокращенного шифра. [10]
Ссылки [ править ]
- ↑ Перейти обратно: Перейти обратно: а б Аумассон 2017 , с. 56.
- ↑ Перейти обратно: Перейти обратно: а б Даемен и Реймен 2013 , с. 74.
- ↑ Перейти обратно: Перейти обратно: а б Biryukov & Wagner 1999 .
- ^ Шеннон, Клод (1 сентября 1945 г.). «Математическая теория криптографии» (PDF) . п. 97.
- ^ Biryukov 2005 .
- ^ Калиски и Инь 1995 , стр. 173.
- ^ Данкельман и др. 2020 , с. 252.
- ^ Байерле и др. 2017 .
- ^ Робшоу 1995 , с. 23.
- ^ Шнайер 2000 , с. 2.
Источники [ править ]
- Омассон, Жан-Филипп (6 ноября 2017 г.). Серьезная криптография: практическое введение в современное шифрование . Нет крахмального пресса. стр. 56–57. ISBN 978-1-59327-826-7 . OCLC 1012843116 .
- Бирюков, Алекс; Вагнер, Дэвид (1999). «Скользящие атаки» . Быстрое программное шифрование . Конспекты лекций по информатике. Том. 1636. Шпрингер Берлин Гейдельберг. стр. 245–259. дои : 10.1007/3-540-48519-8_18 . ISBN 978-3-540-66226-6 . ISSN 0302-9743 .
- Данкельман, Орр; Келлер, Натан; Ласри, Ноам; Шамир, Ади (2020). «Новые скользящие атаки на почти самоподобные шифры» . Достижения в криптологии – EUROCRYPT 2020 . Конспекты лекций по информатике. Том. 12105. Международное издательство Springer. стр. 250–279. дои : 10.1007/978-3-030-45721-1_10 . eISSN 1611-3349 . ISBN 978-3-030-45720-4 . ISSN 0302-9743 .
- Байерле, Кристоф; Канто, Энн; Леандер, Грегор; Ротелла, Янн (2017). «Доказательство устойчивости к инвариантным атакам: как выбрать константы раунда» (PDF) . Достижения криптологии – CRYPTO 2017 . Конспекты лекций по информатике. Том. 10402. Международное издательство Springer. стр. 647–678. дои : 10.1007/978-3-319-63715-0_22 . eISSN 1611-3349 . ISBN 978-3-319-63714-3 . ISSN 0302-9743 .
- Бирюков, Алексей (2005). «Шифр продукта, супершифрование». Энциклопедия криптографии и безопасности . Спрингер США. стр. 480–481. дои : 10.1007/0-387-23483-7_320 .
- Робшоу, MJB (2 августа 1995 г.). Блочные шифры (PDF) (изд. версии 2.0). Редвуд-Сити, Калифорния: RSA Laboratories .
- Шнайер, Брюс (январь 2000 г.). «Курс самообучения по криптоанализу с блочными шифрами» (PDF) . Криптология . 24 (1): 18–34. дои : 10.1080/0161-110091888754 . S2CID 53307028 .
- Калиски, Бертон С.; Инь, Ицюнь Лиза (1995). «О дифференциальном и линейном криптоанализе алгоритма шифрования RC5» (PDF) . Достижения в криптологии – CRYPT0' 95 . Шпрингер Берлин Гейдельберг. стр. 171–184. дои : 10.1007/3-540-44750-4_14 . ISSN 0302-9743 .
- Дэмен, Джоан; Реймен, Винсент (9 марта 2013 г.). Конструкция Rijndael: AES — расширенный стандарт шифрования (PDF) . Springer Science & Business Media. ISBN 978-3-662-04722-4 . OCLC 1259405449 .