Здавалка
Главная | Обратная связь

Преобразования Сетью Фейстеля (DES)



Это преобразование над векторами (блоками) представляющими собой левую и правую половины регистра сдвига. В алгоритме DES используются прямое преобразование сетью Фейстеля в шифровании и обратное преобразование сетью Фейстеля в расшифровании.

 

Прямое преобразование сетью Фейстеля

Обратное преобразование сетью Фейстеля

 

 


 

S-блок (S-box)

 

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

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

В общем случае S-блок может иметь несовпадающее число входов/выходов, в этом случае в системе коммутации от каждого выхода дешифратора может идти не строго одно соединение, а 2 или более или не идти вовсе. То же самое справедливо и для входов шифратора.

В электронике можно непосредственно применять приведённую справа схему, в программировании же генерируют таблицы замены. Оба этих подхода являются эквивалентными, то есть файл, зашифрованный на компьютере, можно расшифровать на электронном устройстве и наоборот.

 

Таблица замены для приведённого 3-разрядного S-блока
№ комбинации
Вход
Выход

 

 

Тест Казиски

Назван он в честь Фридриха Казиски, который изобрел этот тест в 1863 году.
Суть теста Казиски заключается в поиске одинаковых фрагментов из нескольких символов в шифротексте. Дело в том, что отстоящие друг от друга на M символов участки открытого текста будут зашифрованы одинаковыми фрагментами гаммы и, следовательно, будут представлять собой одинаковые фрагменты шифротекста. Найдя несколько таких фрагментов в шифротексте, мы можем с некоторой уверенностью сказать, что то расстояние, на которое отстоит друг от друга большинство из них, и является длиной, использованной для зашифрования гаммы. К сожалению, этот метод работает далеко не всегда – ведь не в каждом открытом тексте так уж часто встречаются одинаковые фрагменты – слова.

 

Шифр сдвига

 

Шифр Цезаря, также известный как шифр сдвига, код Цезаря или сдвиг Цезаря — один из самых простых и наиболее широко известных методов шифрования.

Шифр Цезаря — это вид шифра подстановки, в котором каждый символ в открытом тексте заменяется буквой находящейся на некоторое постоянное число позиций левее или правее него в алфавите. Например, в шифре со сдвигом 3, А была бы заменена на Г, Б станет Д, и так далее.

 

Если сопоставить каждому символу алфавита его порядковый номер (нумеруя с 0), то шифрование и дешифрование можно выразить формулами модульной арифметики:

где — символ открытого текста, — символ шифрованного текста, — мощность алфавита, а — ключ.

С точки зрения математики шифр Цезаря является частным случаем аффинного шифра.







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.