Циклический сдвиг в ГОСТ 28147


Для чего в ГОСТе используется сдвиг именно на 11 битов?

Комментарии
— unknown (13/09/2014 12:27)   
В принципе, там необязательно использовать именно такое число. Для шифров на чередовании операций вида ADD-ROT (Cyclic shift)-XOR есть специфические методы криптоанализа, основанные на нахождении аппроксимаций этой функции (линеаризации). Поэтому константу циклического сдвига выбирают исходя из некой оптимизации по отношению к этим атакам (обычно это, кстати, простое число). Но в ГОСТ для нелинейной операции есть ещё и табличные S-блоки, что возможно также было как-то учтено его создателями.
— ZAS (16/09/2014 03:57)   
См. как распространяется выход S-бокса из раунда в раунд.
Оптимально, чтобы выход любого из S-боксов из раунда в раунд в первую очередь заметал максимальное количество разных неповторяющихся S-боксов. Чтобы сломать симметрию, сдвиг должен быть близким к половине ширины S-бокса, некратным ширине бокса и ширине функции раунда. Получаются сдвиги 9,11,21,23. Теперь вспомним про перенос при сложении в функции раунда. Сдвиги на 11 и 23 дают больше вариантов. Теперь учтем заметание соседнего старшего S-бокса битом переноса. Получается, что 11 дает наилучший результат.

http://www.zas-comm.ru