Вопрос:

Алина Федорова

SQUARE — Описание Square-атаки


Ответ:

Марат Ибрагимов

Прежде всего, введем несколько определений,

Определение 1: Пусть -множество — набор из 256 16-байтовых состояний, каждое из которых отличается от других в некоторых байтах, которые назовём активными, и совпадают в некоторых байтах, которые будем называть пассивными. Далее,  — это набор индексов активных байтов. Имеем:

.

Определение 2: Если применение операции исключающего «или» ко всем байтам на одной позиции в -множестве даёт 0, то эта позиция называется уравновешенной по -множеству.

Применение преобразований и к -множеству даёт -множество с тем же . Применение преобразования даёт -множество, в котором активные байты транспонированы(относительно активных байтов в исходном -множестве). Также, применение к -множеству необязательно вернёт -множество, однако, так как каждый выходной байт является линейной комбинацией четырёх входных байт в той же строке, то, подавая строку с всего одним активным байтом, на выходе получим строку состоящую только из активных байт. Рассмотрим -множество, в котором только один байт является активным и проследим, как изменяется позиция активного байта в течение трех раундов (здесь предварительный раунд объединён с первым: , который в итоге записывается как ). Так как первый раунд не содержит , то к началу второго раунда остается один активный байт. Во втором раунде преобразует в строку активных байтов, которые преобразует в столбец активных байт. в третьем раунде переводит результат в -множество, состоящее только из активных байт. Значения байт на выходе третьего раунда пробегают все возможные значения, следовательно, уравновешены по множеству , имеем

значит байты на выходе в четвёртом раунде уравновешены по -множеству. Эта уравновещенность нарушается последующим применением . Выходные байты четвёртого раунда могут быть выражены с помощью функции от промежуточного состояния : . Предполагая значение , значение для всех элементов -множества могут быть вычислены из шифротекстов. Если значение этого байта оказалось неуравновешенным по , то предположенное значение ключа является ложным. Этот метод криптоанализа позволил взломать 6-раундовый вариант шифра с использованием блоков открытого текста и соответствующих им блоков шифротекста и выполнением операций шифрования.

В 2010 году была представлена атака на связанных ключах методом бумеранга. Ранее подобная атака применялась к шифрам KASUMI, COCONUT98, IDEA и AES-192/256. Это была первая атака на полнораундовый SQUARE. В 2011 году был проведён криптоанализ полнораундового варианта SQUARE с помощью полного двудольного графа. Данный тип атаки позволил взломать шифр с использованием одного ключа, открытых текстов и проведения операций шифрования.

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


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

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

Преобразования в раунде шифрования

Линейное преобразование θ {\displaystyle \theta }

Байтовая перестановка π {\displaystyle \pi }

Сложение с ключом раунда σ [ K i ] {\displaystyle \sigma [K_{i}]}

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

Шифрование

Расшифрование

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

Исследование криптостойкости создателями алгоритма

Особенности шифра