Режим сцепления блоков шифротекста (англ. Cipher Block Chaining, CBC) — один из режимов шифрования для симметричного блочного шифра с использованием механизма обратной связи. Каждый блок открытого текста (кроме первого) побитово складывается по модулю 2 (операция XOR) с предыдущим результатом шифрования.
Шифрование может быть описано следующим образом:
где — номера блоков, — вектор инициализации (синхропосылка), и — блоки зашифрованного и открытого текстов соответственно, а — функция блочного шифрования. Расшифровка:
![](http://upload.wikimedia.org/wikipedia/commons/thumb/7/76/CBC_Encryption_ru.svg/600px-CBC_Encryption_ru.svg.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/d/de/CBC_Decryption_ru.svg/600px-CBC_Decryption_ru.svg.png)
Особенности:
- Наличие механизма распространения ошибки: если при передаче произойдёт изменение одного бита шифротекста, данная ошибка распространится и на следующий блок. Однако на последующие блоки (через один) ошибка не распространится, поэтому режим CBC также называют самовосстанавливающимся[1].
- Неустойчив к ошибкам, связанным с потерей или вставкой битов, если не используется дополнительный механизм выравнивания блоков.
- Злоумышленник имеет возможность добавить блоки к концу зашифрованного сообщения, дополняя тем самым открытый текст (однако без ключа получается мусор. А с использованием Hash функции для подтверждения целостности сообщения, сводит этот тип атаки на нет.)
- Для очень крупных сообщений (32 Гбайта при длине блока 64 бита) всё-таки возможно применение атак, основанных на структурных особенностях открытого текста (следствие парадокса дней рождения).
- Требует дополнения сообщений до длины кратной длине блока.
- Уязвим для атаки оракула дополнений (англ: Padding Oracle). В случае, если атакующий может отправлять зашифрованные сообщения на расшифрование неограниченное количество раз, он может, изменяя определенные байты, угадать корректное дополнение. Это приводит к возможности расшифровать сообщение за исключением первого блока, создать корректное произвольное зашифрованное сообщение за исключением первого блока без знания ключа.
Энциклопедичный YouTube
-
1/3Просмотров:10 2663235 913
-
Защита информации. Блочные шифры
-
Симметричное шифрование
-
Защита информации. Генераторы случайных последовательностей
Субтитры
Примечания
- ↑ Олег Зензин — Режимы шифрования, раздел Накопление ошибок в различных режимах шифрования . Дата обращения: 3 августа 2011. Архивировано 20 августа 2011 года.
Литература
- Шнайер Б. 9.3. Режим сцепления блоков шифротекста // Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си = Applied Cryptography. Protocols, Algorithms and Source Code in C. — М.: Триумф, 2002. — С. 225—229. — 816 с. — 3000 экз. — ISBN 5-89392-055-4.
![](/s/i/modif.png)
Обычно почти сразу, изредка в течении часа.