Понимание комбинирования элементов шифра при построении конечной реализации шифра.
Режим кодовой книги.
Наиболее очевидное решение задачи закрытия сообщений, состоящих из нескольких блоков, заключается в независимом шифровании каждого блока на одном и том же ключе. Данная классическая схема блочного шифрования (рис. 3.2) известна под названием режима электронной кодовой книги- ЕСВ (Electronic Code Book). В ГОСТ 28147-89 данный режим назван режимом простой замены.
Рис. 3.2. Шифрование в режиме ЕСВ: а - зашифрование; б – расшифрование
Режим имеет 3 существенных недостатка. Так как блоки шифруются независимо друг от друга, при зашифровании двух или более одинаковых блоков получаются одинаковые блоки шифротекста, и наоборот. Данное свойство режима ЕСВ позволяет противнику делать выводы о тождественности тех блоков открытого текста, которым соответствуют одинаковые блоки шифротекста. В тех случаях, когда длина исходного сообщения не кратна n, возникает проблема дополнения последнего блока до нужного размера. Дополнение последнего неполного блока некоей фиксированной комбинацией битов в некоторых случаях может позволить противнику методом перебора определить этот неполный блок. И наконец, данный режим нечувствителен к выпадению или вставке целого числа блоков шифротекста.
|
|
Отмеченные недостатки ограничивают область использования режима ЕСВ только шифрованием ключевой информации, объем которой обычно кратен n, при этом качественные ключи не могут содержать повторяющихся блоков. Применение режима ЕСВ оправдано также в базах данных, когда требуется произвольный доступ для чтения/записи к различным полям.
Все остальные режимы реализуют комбинированные схемы шифрования (см. разд. 1.4) и обеспечивают зависимость каждого блока шифротекста не только от соответствующего блока открытого текста, но и от его номера.
На рис. 3.3. показана схема шифрования в режиме сцепления блоков шифротекста - СВС (Ciphertext Block Chaining).
Уравнения зашифрования и расшифрования в режиме СВС имеют вид: где секретность n-разрядного блока синхропосылки не является обязательной. Отличительными особенностями режима СВС являются зависимость при зашифровании n-го блока шифротекста от всех предшествующих блоков открытого текста и зависимость при расшифровании каждого блока открытого текста только от двух блоков с,_, и с, шифротекста. Первое свойство делает пригодным использование режима для решения задач контроля целостности информации. Второе свойство делает режим самосинхронизирующимся: одиночная ошибка при передаче (ошибка при передаче одного блока) может привести к неправильному расшифрованию только двух блоков. Как будет видно в дальнейшем, этот режим используется и в криптосистемах с открытым ключом в том случае, если размер шифруемого сообщения больше, чем размер блока.