Рейтинг:1

Можно ли использовать слова битов в качестве записей в S-блоках размером более 4/8 бит и достичь аналогичной безопасности/скорости в блочных шифрах SPN?

флаг pf

иглобрюх разбивает 32-битное слово на 4 набора по 8 бит (1 байт) и использует их в качестве записей в своих S-блоках.

Кузнечик разбивает два 64-битных слова на множество полубайтов (4-битных фрагментов), использует их в качестве записей в своих S-блоках и XOR каждого модифицированного полубайта со следующим полубайтом в их последовательности.

Калина делает то же самое, что и Кузнечик, но использует целые байты вместо полубайтов.

Мой вопрос:

Можно ли использовать целые слова (32 или 64 бита) в качестве записей в наборе S-Box, а также 1 байт или полубайт, сохраняя при этом некоторую безопасность?

А что касается скорости шифра, созданного таким образом, будут ли целые слова, введенные как записи в S-блоках, обрабатываться с той же скоростью, что и 1 байт или один бит?

fgrieu avatar
флаг ng
Подсказка: какой объем памяти потребуется для произвольного S-блока с 64-битным входом и, скажем, 4-битным выходом?
Рейтинг:3
флаг ru

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

Если мы имеем в виду общую справочную таблицу, то есть примеры шифров, использующих в качестве записей 32-битные слова. Хороший пример МАРС который использует 512-длинную таблицу 32-битных значений.MARS был одним из финалистов AES и поэтому привлек внимание криптоаналитиков, но, насколько мне известно, не было обнаружено никаких значительных уязвимостей в системе безопасности. Если я правильно помню, MARS был не так эффективен, как AES.

Если мы имеем в виду функцию биективной подстановки, как комментирует @fgrieu, ограничения памяти означают, что большие таблицы поиска невозможны. Однако в недавнем конкурсе блочных шифров Китайской ассоциации криптографических исследований одна из заявок ВЕСНА аппаратно реализовал биективную 32-битную функцию как компонент блочного шифра, и этот компонент был описан как S-блок, несмотря на то, что он не был реализован как таблица поиска. Я не знаю, сколько анализов было сделано для SPRING, но я не знаю ни о каких неполных атаках. Что касается производительности, то авторы SPRING утверждают, что их конструкция особенно подходит для аппаратной реализации и дает конкурентоспособные временные данные.

Аргументом против больших S-блоков является то, что их труднее анализировать, чем типичные 4-битные и 8-битные S-блоки. Криптографы требуют, чтобы S-блоки обладали сильными нелинейными свойствами, чтобы противостоять линейному и разностному криптоанализу, и эти свойства можно было тщательно протестировать для заданного 4-битного или 8-битного S-блока (действительно Сааринен по существу исчерпал все возможные 4-битные S-блоки, чтобы найти те, которые обладают лучшими свойствами). Такое исчерпывающее тестирование очень дорого для больших S-блоков, а вычисления для нахождения хорошего большого S-блока могут быть непомерно высокими.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.