
Крипто / Билет №3
.docxБилет №3
Понятие о блочном шифре
Основные режимы блочных шифров
-
ECB – Electronic Code Book
(Электронная кодировочная книга)
(ГОСТ – режим простой замены)
-
CBC – Cipher Block Chaining
(Сцепление блоков шифротекста)
(ГОСТ – режим гаммирования)
-
CFB – Cipher Feedback
(Обратная связь по шифротексту)
(ГОСТ – режим гаммирования с ОС)
-
OFB – Output Feedback
(Обратная связь по выходу)
ECB – Electronic Code Book
Каждый блок исходного текста шифруется независимо от других
CBC – Cipher Block Chaining
Каждый блок исходного текста складывается поразрядно по модулю 2 с предыдущим, а затем шифруется. Для старта используется синхропосылка
CFB – Cipher Feedback
Предыдущий блок шифротекста шифруется ещё раз, и для получения очередного блока шифротекста складывается поразрядно по модулю 2 с блоком исходного текста
OFB – Output Feedback
В отличие от CFB величины, складываемые по модулю 2 с блоками исходного текста, генерируются независимо от исходного или шифротекста.
OFB обладает преимуществом перед CFB в том смысле, что любые битовые ошибки, возникшие при передаче, не влияют на расшифрование последующих блоков. Однако, возможна манипуляция исходным текстом путём изменения шифротекста.
DES (Data Encryption Standart) - разработан в середине 70-x годов. Это блочный алгоритм шифрования с симметричным ключом. Ключ состоит из 64 битов, но лишь 56 из них применяются непосредственно при шифровании. Оставшиеся 8 предназначены для контроля четности: они устанавливаются так, чтобы каждый из 8 байтов ключа имел нечетное значение.
Такая длина ключа соответствует комбинаций, что недостаточно для современного уровеня безопасности.
Шифруемая информация обрабатывается блоками по 64 бита, причем каждый блок модифицируется с помощью ключа в итерационной процедуре, включающей 16 циклов.
Благодаря DES появились целые направления криптоанализа, такие как:
- линейный криптоанализ – анализ зависимостей между открытым текстом и шифртекстом;
- дифференциальный криптоанализ – анализ зависимостей между соотношениями двух или более открытых текстов и соответствующих им шифртекстов;
- криптоанализ на связанных ключах – поиск и анализ зависимостей между шифртекстами, полученными на искомом ключе и ключах, связанных предполагаемым соотношением с искомым ключом; Доказано, что DES неуязвим к данному виду атак благодаря тому, что в описанной выше процедуре расширения ключа циклический сдвиг выполняется на различное число бит в разных раундах.
Сеть Фе́йстеля (конструкция Фейстеля) — один из методов построения блочных шифров. Сеть представляет собой определённую многократно повторяющуюся (итерированную) структуру, называющуюся ячейкой Фейстеля. При переходе от одной ячейки к другой меняется ключ, причём выбор ключа зависит от конкретного алгоритма.
-
Вся информация разбивается на блоки фиксированной длины. В случае, если длина входного блока меньше, чем размер, который шифруется заданным алгоритмом, то блок удлиняется каким-либо способом. Как правило длина блока является степенью двойки, например : 64 бита, 128 бит. Далее будем рассматривать операции происходящие только с одним блоком, так как с другими в процессе шифрования выполняются те же самые операции.
-
Выбранный блок делится на два равных подблока — «левый» (L0) и «правый» (R0).
-
«Левый блок» L0 видоизменяется функцией f(L0,K1) в зависимости от ключа K1, после чего он складывается по модулю 2 с «правым блоком» R0.
-
Результат сложения присваивается новому левому подблоку L1, который будет половиной входных данных для следующего раунда, а «левый блок» L0 присваивается без изменений новому правому подблокуR1(см. схему), который будет другой половиной.
-
После чего операция повторяется N-1 раз, при этом при переходе от i-го к i+1-му этапу могут меняться ключи(Ki на Ki + 1) по какому-либо правилу, где N — количество раундов в заданном алгоритме.
-
Расшифровка информации происходит так же, как и шифрование, с тем лишь исключением, что ключи идут в обратном порядке, т.е не от первого к N-ному, а от N-го к первому.