logo
Информационная безопасность / Информационная безопасность2006

Шифры взбивания

Стойкость шифра можно значительно увеличить, если использовать линейное преобразование — шифрование с помощью алгебры матриц (раздел 5.3)

где теперь элементами случайной матрицы [L] являются 0 и 1, а, следовательно,. Поэтому можно использовать только такие случайные матрицы [L], детерминант которых равен 1 (т.е.невырожденныематрицы).

Шифры на основе этого преобразования называют скремблерами или взбивалками (как повара омлет).

Однако доля невырожденных матриц среди случайных очень быстро убывает с увеличением их размера.

Для того чтобы матрица [L] была и случайной, и невырожденной, и при расшифровке не надо было бы производить много вычислений, американскими криптографами был предложен алгоритм, сутьодного шагакоторого можно представить следующей схемой.

Входной блок текста битового потока делится пополам на левую L' и правуюR' части. Выходной массив формируется так, что его левая частьL'' как суммаL' иR' операцийXOR, а праваяR'' представлена левой частьюL'. Далее идет перестановка с заменой.

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

После нескольких взбиваний можно считать, что каждый бит шифровки может зависеть от каждого бита исходного текста.

Эта схема легла в основу национального стандарта шифрования США — DES.