Повтор блока
Более серьезной проблемой режима ЕСВ является то, что враг может изменить шифрованные сообщения, не зная ключа или даже алгоритма, чтобы обмануть предполагаемого получателя.
Для иллюстрации этой проблемы рассмотрим систему передачи денег, которая переводит деньги из банка в банк. Чтобы облегчить жизнь банковских компьютеров, банки согласовали примерно следующий стандартный формат сообщения для передачи денег:
Блок соответствует 8-байтному блоку шифрования. Сообщения шифруются с помощью некоторого блочного алгоритма в режиме ЕСВ.
Мэллори, который подслушивает линию связи между банками, банком Алисы и банком Боба, может использовать эту информацию для обогащения. Сначала, он программирует свой компьютер для записи всех шифрованных сообщений из банка Алисы в банк Боба. Затем, он переводит $100 из банка Алисы на свой счет в банк Боба. Позже, он повторяет эту операцию еще раз. С помощью своего компьютера он проверяет записанные с сообщения, разыскивая пару идентичных сообщений. Этими сообщениями являются те сообщения, которыми он переводит $100 на свой счет. Если он находит несколько пар одинаковых сообщений (что больше похоже на реальную жизнь), он делает еще один денежный перевод и записывает результат. В конце концов он сможет выделить сообщение, которым был проведен именно его перевод.
Теперь он может отправить это сообщение по каналу связи, когда захочет . Каждое сообщение приведет к з а-числению на его счет в банке Боба еще $100. Когда оба банка сверят свои переводы (возможно в конце дня), они обнаружат переводы-призраки, но если Мэллори достаточно умен, он уже сбежит в какую-нибудь банан о-вую республику без договора об экстрадиции, прихватив с собой деньги. И скорее всего он использует суммы несколько больше $100 и провернет операцию сразу для нескольких банков.
На первый взгляд банки могут легко пресечь это, добавляя метки времени к своим сообщениям .
В такой системе два идентичных сообщения будут легко обнаружены . Тем не менее, с помощью метода, называемого повтором блока, Мэллори все же сможет обогатиться. На 7-й показано, что Мэллори может собрать восемь блоков шифротекста, соответствующих его имени и номеру счета : блоки с 5 по 12. В этот момент уместно дьявольски рассмеяться, ведь Мэллори уже в полной готовности .
РисБлоки шифрования в записи приведенного примера.
Он перехватывает сообщения из банка Алисы в банк Боба и заменяет блоки с 5 по 12 сообщения байтами , соответствующими его имени и номеру счета. Затем он посылает измененные сообщения в банк Боба. Ему не нужно знать, кто был отправителем денег, ему даже не нужно знать переводимую сумму (хотя он может связать подправленное сообщение с соответствующим увеличением своего счета и определить блоки, соответствующие определенным денежным суммам). Он просто изменяет имя и номер счета на свои собственные и следит за ро с-том своих доходов. (Я помню, что Мэллори надо быть осторожным, чтобы не модифицировать сообщение о снятии денег, но предположим на минутку, что у этих сообщений другая длина или иной отличительный пр и-знак.)
Для обнаружения такого способа банкам одного дня не хватит. Когда они сверят свои переводы в конце дня, все суммы совпадут. Возможно, пока настоящий вкладчик не заметит, что его вклады не зачисляются на счет , или пока кто-нибудь не обратит внимание на неожиданную активизацию работы со счетом Мэллори, банки не смогут заметить никаких следов. Мэллори не глуп и к этому времени закроет свой счет, изменит имя и купит виллу в Аргентине.
Банки могут минимизировать эту проблему, часто меняя свои ключи, но это означает только, что Мэллори придется действовать побыстрее. Однако, добавление MAC также решит проблему. Несмотря на это рассматриваемая проблема фундаментальна для режима ЕСВ. Мэллори удалять, повторять или заменять блоки по своему усмотрению. Решением является способ, называемый сцеплением.
Режим сцепления блоков шифра
Сцепление добавляет к блочному шифру механизм обратной связи: результаты шифрования предыдущих блоков влияют на шифрование текущего блока. Другими словами, каждый блок используется для изменения шифрования следующего блока. Каждый блок шифротекста зависит не только от шифруемого блока открытого текста, но и от всех предыдущих блоков открытого текста.
В режиме сцепления блоков шифра (cipher block chaining, CBC) перед шифрованием над открытым текстом и предыдущим блоком шифротекста выполняется операция XOR. На 6-й (а) показано шифрование СВС в действии. ,Когда блок открытого текста зашифрован, полученный шифротекст сохраняется в регистре обратной связи. Прежде чем будет зашифрован следующий блок открытого текста, он подвергается операции XOR вместе
с содержимым регистра обратной связи. Таким образом создаются входные данные для следующего этапа пр о-цедуры шифрования. Полученный шифротекст снова сохраняется в регистре обратной связи, чтобы подвер г-нуться операции XOR вместе со следующим блоком открытого текста, и так до конца сообщения . Шифрование каждого блока зависит от всех предыдущих блоков.
Дешифрирование является обратной операцией. Блок шифротекста расшифровывается как обычно, но сохраняется в регистре обратной связи. Затем следующий блок дешифрируется и подвергается операции XOR вместе с содержимым регистра обратной связи. Теперь следующий блок шифротекста сохраняется в регистре обратной связи, и так далее, до конца сообщения .
Математически это выглядит следующим о бразом:
Yandex.RTB R-A-252273-3
- Информационная безопасность
- Отправитель и получатель
- Сообщения и шифрование
- Проверка подлинности, целостность и неотрицание авторства
- Алгоритмы и ключи
- Симметричные алгоритмы
- Алгоритмы с открытым ключом
- Криптоанализ
- Безопасность алгоритмов
- Стеганография
- Подстановочные и перестановочные шифры
- Подстановочные шифры
- Перестановочные шифры
- Простое xor
- Одноразовые блокноты
- Ipklpsfhgq
- Элементы протоколов
- Смысл протоколов
- Персонажи
- Протоколы с посредником
- Арбитражные протоколы
- Самодостаточные протоколы
- Попытки вскрытия протоколов
- Передача информации с использованием симметричной криптографии
- Однонаправленные функции
- Однонаправленные хэш-функции
- Коды проверки подлинности сообщения
- Передача информации с использованием криптографии с открытыми ключами
- Смешанные криптосистемы
- Головоломки Меркла
- Цифровые подписи
- Подпись документа с помощью симметричных криптосистем и посредника
- Деревья цифровых подписей
- Подпись документа с помощью криптографии с открытыми ключами
- Подпись документа и метки времени
- Подпись документа с помощью криптографии с открытыми ключами и однонаправленных хэш-функций
- Алгоритмы и терминология
- Несколько подписей
- Невозможность отказаться от цифровой подписи
- Использование цифровых подписей
- Цифровые подписи и шифрование
- Возвращение сообщения при приеме
- Обнаружение вскрытия, основанного на возвращении сообщения
- Вскрытия криптографии с открытыми ключами
- Генерация случайных и псевдослучайных последовательностей
- Псевдослучайные последовательности
- Криптографически безопасные псевдослучайные последовательности
- Настоящие случайные последовательности
- Типы алгоритмов и криптографические режимы
- Режим электронной шифровальной книги
- Набивка
- Повтор блока
- Режим сцепления блоков шифра.
- Потоковые шифры
- Устройство генератора потока ключей.
- Идентификация и авторизация
- Аутентификация
- Парольная аутентификация
- Электронные смарт-карты
- Использование других уникальных предметов
- Методы биометрической аутентификации
- Идентификация по отпечаткам пальцев
- Идентификация по Сетчатке и радужной оболочке глаза
- Голосовая идентификация
- Распознавание по форме лица, руки или ладони
- Распознавание по рукописному почерку.
- Клавиатурный почерк
- Задачи аудита
- Применяемые методики
- Результаты аудита
- Классификация угроз Digital Security (Digital Security Classification of Threats)
- Технологические угрозы информационной безопасности
- Организационные угрозы информационной безопасности
- Социальная инженерия
- Компьютерные вирусы
- Файловые вирусы
- «Троянские кони» («трояны»)
- Сетевые черви
- Загрузочные вирусы
- Мобильные («встроенные») вирусы
- Полиморфизм вирусов
- Противодействие вирусам
- Места наиболее вероятного внедрения вирусов