Усечённый дифференциальный криптоанализ
Усечённый дифференциальный криптоанализ — это метод криптоанализа, основанный на изучении не полных, а частичных (усечённых) разностей между парами открытых и шифрованных текстов. В отличие от классического дифференциального криптоанализа, который требует точного знания разностей на всех раундах шифрования, усечённый метод оперирует предсказаниями только о некоторых битах или группах битов разности, что позволяет снизить требования к объёму данных и вычислительным ресурсам. Метод был впервые предложен Ларсом Кнудсеном в 1994 году как обобщение дифференциального криптоанализа для анализа блочных шифров с нелинейными преобразованиями.
История
Усечённый дифференциальный криптоанализ возник как развитие классического дифференциального криптоанализа, разработанного Эли Бихамом и Ади Шамиром в конце 1980-х годов. В 1994 году Ларс Кнудсен на конференции Fast Software Encryption (FSE) представил концепцию усечённых дифференциалов, продемонстрировав их применение к шифру SAFER. Идея заключалась в том, что для многих шифров точное предсказание разностей на всех раундах избыточно: достаточно знать, что разность принадлежит некоторому множеству возможных значений, а не является конкретным числом. Это позволило атаковать шифры, устойчивые к классическому дифференциальному анализу, например, за счёт использования нелинейных S-блоков с низкой вероятностью точных дифференциалов.
В 1995 году Кнудсен и Вагнер применили усечённый метод к шифру DES, показав, что он может быть эффективнее полного перебора для некоторых ключей. В 2000-х годах метод был адаптирован для анализа современных шифров, таких как AES, Serpent и Twofish. В 2010-х годах появились варианты усечённого анализа, интегрированные с линейным криптоанализом и методами на основе невозможных дифференциалов.
Основные понятия
Дифференциал и разность
В дифференциальном криптоанализе рассматривается пара открытых текстов \(P\) и \(P'\) с разностью \(\Delta P = P \oplus P'\) (где \(\oplus\) — операция XOR). После шифрования получаются шифротексты \(C\) и \(C'\) с разностью \(\Delta C = C \oplus C'\). Дифференциалом называется пара \((\Delta P, \Delta C)\), а его вероятность — доля пар, для которых при случайном ключе выполняется данное соотношение.
Усечённый дифференциал
В отличие от классического подхода, усечённый дифференциал задаёт не точное значение разности, а её частичное описание. Например, для 128-битного блока усечённый дифференциал может указывать, что разность в первых 32 битах равна нулю, а остальные биты произвольны. Формально, усечённый дифференциал — это множество пар разностей, удовлетворяющих определённому шаблону (маске). Такой подход позволяет агрегировать множество возможных точных дифференциалов, увеличивая вероятность обнаружения статистической аномалии.
Характеристики
В усечённом анализе используются усечённые дифференциальные характеристики — последовательности усечённых разностей на каждом раунде шифрования. Вероятность характеристики оценивается как произведение вероятностей отдельных раундовых переходов, но с учётом того, что на каждом шаге разность может принадлежать целому классу значений.
Методология
Построение усечённых характеристик
- Выбор начальной разности: Определяется шаблон разности на входе, например, ненулевая разность только в одном байте.
- Анализ S-блоков: Для каждого нелинейного преобразования (S-блока) вычисляются возможные выходные разности при заданном входном шаблоне. Если S-блок имеет низкую дифференциальную равномерность, то усечённая характеристика может иметь высокую вероятность.
- Распространение через линейные слои: Линейные преобразования (например, перестановки, смешивание) распространяют усечённые разности, сохраняя или изменяя шаблон.
- Оценка вероятности: Суммарная вероятность характеристики вычисляется как произведение вероятностей для каждого раунда, но часто используется приближённая оценка через среднее по всем возможным точным разностям.
Атака
- Сбор данных: Злоумышленник получает множество пар открытых текстов с заданной начальной разностью и соответствующие шифротексты.
- Фильтрация: Отбираются пары, у которых шифротексты удовлетворяют усечённому дифференциалу на последнем раунде (или на нескольких раундах).
- Угадывание ключа: Для отфильтрованных пар перебираются возможные значения ключа последнего раунда (или части ключа), и проверяется, соответствует ли разность после дешифрования предсказанной характеристике. Ключ, дающий наибольшее совпадение, считается истинным.
Отличие от классического метода
- Точность: Классический метод требует точного совпадения разностей, усечённый — только частичного.
- Объём данных: Усечённый метод часто требует меньше пар текстов, так как вероятность усечённого дифференциала выше.
- Сложность: Вычислительная сложность может быть выше из-за необходимости перебора большего числа кандидатов на ключ.
Применение
Шифр DES
Усечённый дифференциальный криптоанализ был применён к DES для сокращения числа раундов, необходимых для атаки. Для 16-раундового DES классический дифференциальный анализ требует \(2^{47}\) пар, а усечённый — около \(2^{40}\) пар при определённых условиях. Однако полная атака на 16-раундовый DES с помощью усечённого метода не была реализована на практике из-за высокой сложности, но метод показал принципиальную возможность атаки на редуцированные версии.
Шифр AES
Для AES (Rijndael) усечённый анализ применялся к версиям с уменьшенным числом раундов (например, 4–6 раундов). В 2000 году Кнудсен и Вагнер показали, что для 4-раундового AES усечённая атака требует около \(2^{20}\) пар, что значительно меньше, чем \(2^{128}\) для полного перебора. Для 6-раундового AES сложность возрастает до \(2^{50}\) пар, что всё ещё ниже экспоненциальной оценки для полного шифра. Полный 10-раундовый AES-128 устойчив к усечённому анализу, так как вероятность усечённых характеристик становится пренебрежимо малой.
Другие шифры
- Serpent: Усечённый анализ показал уязвимость редуцированных версий (до 8–10 раундов из 32), но полный шифр считается стойким.
- Twofish: Атаки на 6–8 раундов из 16 были успешными, но потребовали \(2^{60}\) пар.
- SAFER: Для SAFER K-64 усечённый метод позволил взломать 6 раундов из 8.
Преимущества и ограничения
Преимущества
- Универсальность: Применим к шифрам с нелинейными преобразованиями, где точные дифференциалы имеют низкую вероятность.
- Эффективность: Может требовать меньше данных, чем классический метод, особенно для шифров с большим числом раундов.
- Гибкость: Позволяет комбинировать с другими методами (например, с линейным анализом).
Ограничения
- Сложность оценки: Вероятность усечённых характеристик трудно вычислить точно, часто используются приближения.
- Зависимость от структуры: Метод эффективен только для шифров с определённой структурой (например, с байт-ориентированными S-блоками).
- Вычислительная нагрузка: Перебор кандидатов на ключ может быть значительным, особенно при большом числе усечённых битов.
Критика и развитие
Усечённый дифференциальный криптоанализ критикуется за то, что его практическая применимость ограничена редуцированными версиями шифров. Для современных стандартов, таких как AES-256 или ГОСТ 28147-89, полные версии остаются устойчивыми. Однако метод стимулировал развитие других подходов, включая невозможный дифференциальный криптоанализ и интегральный криптоанализ. В 2000-х годах были предложены гибридные методы, объединяющие усечённые дифференциалы с линейными аппроксимациями, что позволило атаковать шифры с большим числом раундов.
Интересные факты
- Усечённые дифференциалы сыграли ключевую роль в анализе шифра SAFER, который изначально считался устойчивым к классическому дифференциальному анализу.
- В 1998 году Кнудсен использовал усечённый метод для демонстрации атаки на 6-раундовый DES на персональном компьютере за несколько часов.
- Идея усечённых разностей была позже адаптирована для анализа хеш-функций, таких как SHA-1 и SHA-2.
Источники
- Knudsen, L. R. (1994). "Truncated and Higher Order Differentials". Fast Software Encryption (FSE).
- Biham, E., & Shamir, A. (1991). "Differential Cryptanalysis of DES-like Cryptosystems". Journal of Cryptology.
- Daemen, J., & Rijmen, V. (2002). "The Design of Rijndael: AES — The Advanced Encryption Standard". Springer.
- Вагнер, Д., & Кнудсен, Л. (1995). "Truncated Differentials and DES". Proceedings of CRYPTO.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →