Вопрос:

Ярослава Норкина

SHARK — Нелинейный слой (блоки подстановок)


Ответ:

Александр Кузьмин

Нелинейные S-блоки обеспечивают защиту от линейного и дифференциального криптоанализов. Одним из важных численных характеристик безопасности шифра служит матрица эксклюзивных ИЛИ (англ. exor table) отображения , элементы которой определяются по формуле , где  — обозначает число удовлетворяющих условию элементов,  — элементы поля . Большие значения элементов матрицы могут привести к восприимчивости шифра к дифференциальной атаке.

Авторами были выбраны S-блоки, основанные на отображении над полем . В этом случае при четном матрица обладает следующими свойствами:

  • Дифференциальная 4-стабильность — все элементы матрицы не превосходят 4. В действительности, в каждой строке такой матрицы присутствует ровно один элемент, равный 4, а остальные равны 2 либо 0.
  • Минимальное расстояние аффинной функции равно .
  • Нелинейный порядок любой линейной комбинации выходных битов равен .

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

Источник: Википедия


Связанные вопросы (SHARK):

История SHARK

Дизайн алгоритма

Слой диффузии

Расписание ключей

Exor

Affine Transformation

Генерация подключей

Заметки по реализации

Таблицы замещений

Матрица MDS-кода

Дешифрование

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